当前位置: 首页 > article >正文

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

文档不短,其大概意思就是根据传入的盘符路径,获取盘符的各种信息;

接下来就是测试这个函数的功能;

直接上代码:

环境:vsstudio2019

#include <windows.h>
#include <stdio.h>

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;
}

输出如下:


http://www.kler.cn/a/403362.html

相关文章:

  • 【数据库入门】关系型数据库入门及SQL语句的编写
  • 合法三元数量计算
  • Easyexcel(4-模板文件)
  • Vue3 -- mock数据完整配置并调试【项目集成6】
  • 基于CVE安全公告号,全面修复麒麟ARM系统OpenSSH漏洞
  • conda 创建环境失败故障解决记录
  • Flutter:TweenAnimationBuilder自定义隐式动画
  • Telegram bot Mini-App开发实践---Telegram简单介绍与初始化小程序获取window.Telegram.WebApp对象并解析
  • 解读缓存问题的技术旅程
  • 利用Python爬虫获取淘宝店铺详情
  • windows 操作系统下载 Android源码教程
  • k8s error uploading crisocket处理过程
  • 从机器人到高速线,线缆行业如何提升竞争力
  • 提取repo的仓库和工作树(无效)
  • [Unity]游戏开发基础2- 从草图到最小可用产品:视频游戏创作阶段详解
  • .gitignore文件
  • AWTK-WIDGET-WEB-VIEW 实现笔记 (4) - Ubuntu
  • 一学就废|Python基础碎片,列表(List)
  • 【Tealscale + Headscale + 自建服务器】异地组网笔记
  • ESP32-S3模组上跑通esp32-camera(21)
  • 2024/11/17周报
  • 网络属性及相关配置常用命令-下篇
  • 腾讯:将LLM排序能力迁移至BERT
  • cesium for unity的使用
  • Flink整合Hudi及使用
  • 视频修复技术和实时在线处理