GetVolumeInformation函数使用记录

函数原型

BOOL GetVolumeInformationA(

in, optional\] LPCSTR lpRootPathName, \[out, optional\] LPSTR lpVolumeNameBuffer, \[in\] DWORD nVolumeNameSize, \[out, optional\] LPDWORD lpVolumeSerialNumber, \[out, optional\] LPDWORD lpMaximumComponentLength, \[out, optional\] LPDWORD lpFileSystemFlags, \[out, optional\] LPSTR lpFileSystemNameBuffer, \[in\] DWORD nFileSystemNameSize ); ### 在windows中有两种 普通:GetVolumeInformationA 宽字符版:GetVolumeInformationW 这里我以**普通**GetVolumeInformationA为例; ## **先看官方文档解释** 官方文档:[GetVolumeInformationA 函数 (fileapi.h) - Win32 apps \| Microsoft Learn](https://learn.microsoft.com/zh-cn/windows/win32/api/fileapi/nf-fileapi-getvolumeinformationa "GetVolumeInformationA 函数 (fileapi.h) - Win32 apps | Microsoft Learn") ![](https://i-blog.csdnimg.cn/direct/0b408b7fe6044d849895d6cf2fbda47e.png) 文档不短,其大概意思就是根据传入的盘符路径,获取盘符的各种信息; 接下来就是测试这个函数的功能; 直接上代码: 环境:vsstudio2019 ```cpp #include #include int main() { char volumeName[MAX_PATH]; char fileSystemName[MAX_PATH]; DWORD serialNumber; DWORD maxComponentLength; DWORD fileSystemFlags; // 获取F盘的信息(注意:其中的F填你自己要查询的盘符) if (!GetVolumeInformationA("F:\\", volumeName, MAX_PATH, &serialNumber, &maxComponentLength, &fileSystemFlags, fileSystemName, MAX_PATH)) { printf("获取F盘信息失败,错误码:%d\n", GetLastError()); return 1; } // 输出F盘的相关信息 printf("盘符F的卷标名称:%s\n", volumeName); printf("盘符F的序列号:%lu\n", serialNumber); printf("盘符F的文件系统名称:%s\n", fileSystemName); printf("盘符F的最大组件长度:%lu\n", maxComponentLength); printf("盘符F的文件系统标志:%lu\n", fileSystemFlags); return 0; } ``` 输出如下: ![](https://i-blog.csdnimg.cn/direct/8d7d987f0c544b599e98f0b1dce591df.png)

相关推荐
X***07885 分钟前
C语言在嵌入式系统开发中的应用与挑战
c++
小芒果_0117 分钟前
整理归并排序
c++·算法·排序算法·信息学奥赛
玖剹30 分钟前
队列+宽搜(bfs)
数据结构·c++·算法·leetcode·宽度优先
oioihoii34 分钟前
构建高并发AI服务网关:C++与gRPC的工程实践
开发语言·c++·人工智能
春日见1 小时前
控制算法:PP(纯跟踪)算法
linux·人工智能·驱动开发·算法·机器学习
智者知已应修善业1 小时前
【编写函数求表达式的值】2024-4-3
c语言·c++·经验分享·笔记·算法
田里的水稻1 小时前
C++_python_相互之间的包含调用方法
c++·chrome·python
取个名字太难了a1 小时前
初始化APC
windows
HABuo2 小时前
【Linux进程(四)】进程切换&环境变量深入剖析
linux·运维·服务器·c语言·c++·ubuntu·centos