• 学习c++一点一滴获取所有本地磁盘信息


    GetLogicalDriveStrings - 获取系统中存在的逻辑驱动器字符串

    GetLogicalDriveStrings(
      nBufferLength: DWORD; {缓冲区大小}
      lpBuffer: PAnsiChar   {缓冲区}
    ): DWORD;

    获取磁盘名称填充到lpbuffer.

    GetVolumeInformation - 读取文件系统信息

    GetVolumeInformation(
      lpRootPathName: PChar;               {磁盘驱动器代码字符串}
      lpVolumeNameBuffer: PChar;           {磁盘驱动器卷标名称}
      nVolumeNameSize: DWORD;              {磁盘驱动器卷标名称长度}
      lpVolumeSerialNumber: PDWORD;        {磁盘驱动器卷标序列号}
      var lpMaximumComponentLength: DWORD; {系统允许的最大文件名长度}
      var lpFileSystemFlags: DWORD;        {文件系统标识}
      lpFileSystemNameBuffer: PChar;       {文件操作系统名称}
      nFileSystemNameSize: DWORD           {文件操作系统名称长度}
    ): BOOL;

    GetDiskFreeSpaceEx - 获取磁盘容量信息

    BOOL GetDiskFreeSpace(
      LPCTSTR lpRootPathName,   
    LPDWORD lpSectorsPerCluster, LPDWORD lpBytesPerSector, LPDWORD lpNumberOfFreeClusters, LPDWORD lpTotalNumberOfClusters );
    demo自己看看吧,其实也没多少难点,难点就在于api的参数。继续理解中。。
    Code

    demo中有点小错误,还没改,会改的提出下

  • 相关阅读:
    [skill][c][ld][gcc] 明确指定gcc在链接时明确使用静态库
    [administrative][lvm] lvm 分区修改
    [administrative] windows 下制作USB启动盘的工具
    [administrative][archlinux][netctl][wpa_supplicant] 查看WIFI链接信息
    [skill][makefile] makefile 常用内容记录
    [security] security engine things
    [administrative][CentOS] 新装系统时如何正确精准的选择基础环境和软件包
    [filesystem][archlinux][disk encryption][btrfs] btrfs
    [cipher][archlinux][disk encryption][btrfs] 磁盘分区加密 + btrfs
    [administrative][archlinux][clonezilla][disk cloning] 一块 windows 10 硬盘的备份
  • 原文地址:https://www.cnblogs.com/baiye/p/1522613.html
Copyright © 2020-2023  润新知