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)

相关推荐
别动哪条鱼1 小时前
MP4转AAC转换器C++
c++·ffmpeg·音视频·aac
2301_807997381 小时前
代码随想录-day47
数据结构·c++·算法·leetcode
李日灐1 小时前
手搓简单 string 库:了解C++ 字符串底层
开发语言·c++
Elias不吃糖1 小时前
LeetCode每日一练(3)
c++·算法·leetcode
小龙报2 小时前
《算法通关指南数据结构和算法篇(2)--- 链表专题》
c语言·数据结构·c++·算法·链表·学习方法·visual studio
mjhcsp2 小时前
C++ 动态规划(Dynamic Programming)详解:从理论到实战
c++·动态规划·1024程序员节
随意起个昵称2 小时前
【二分】洛谷P2920,P2985做题小记
c++·算法
望眼欲穿的程序猿3 小时前
Win系统Vscode+CoNan+Cmake实现调试与构建
c语言·c++·后端
lzh200409193 小时前
【C++STL】List详解
开发语言·c++
luoyayun3613 小时前
Qt/C++ 线程池TaskPool与 Worker 框架实践
c++·qt·线程池·taskpool