一些求磁盘信息的操作

本文介绍wchar类型的使用及如何通过GetLogicalDrives和GetDriveType函数获取计算机中的磁盘信息及其类型。wchar可以存储UTF-8字符,用于保存路径等信息。GetLogicalDrives函数返回一个32位整数,表示系统中存在的磁盘驱动器,通过二进制位判断具体存在哪些磁盘。GetDriveType函数接收一个指向wchar字符串的指针,返回磁盘类型。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

wchar:wchar是可以保存utf-8字符的字符串

头文件:wchar.h

初始化:WCHAR Driver_Path[4]=TEXT("C:\\");

 

GetLogicalDrives:这个是看计算机中有哪些磁盘

返回值:32位整数 DWORD

如何看:将返回值变成2进制,比如返回值是0011那么就表示电脑中有A盘和B盘

例子:

DWORD allDisk = GetLogicalDrives();  //返回一个32位整数,将他转换成二进制后,表示磁盘,最低位为A盘  比如返回00011就表示有a盘和b盘
WCHAR Driver_Path[4]=TEXT("C:\\");

  if (allDisk != 0)
  {
    for (int i = 1;i<11;i++) //假定最多有10个磁盘
    {
      if ((allDisk & 1) == 1) //如果有磁盘i
      {
        Driver_Path[0] = 'C' + i - 3;

      }

    allDisk = allDisk >> 1;
    }
  }

每一个的Driver_Path就保存了这个磁盘的路径

 

GetDriveType:求磁盘类型

参数:LPCWSTR,其实这个就是指向WCHAR字符串的指针

返回值:

Return code/valueDescription
DRIVE_UNKNOWN0

The drive type cannot be determined.

DRIVE_NO_ROOT_DIR1

The root path is invalid; for example, there is no volume mounted at the specified path.

DRIVE_REMOVABLE2

The drive has removable media; for example, a floppy drive, thumb drive, or flash card reader.

DRIVE_FIXED3

The drive has fixed media; for example, a hard disk drive or flash drive.

DRIVE_REMOTE4

The drive is a remote (network) drive.

DRIVE_CDROM5

The drive is a CD-ROM drive.

DRIVE_RAMDISK6

The drive is a RAM disk.

例子:

WCHAR Driver_Path[4]=TEXT("C:\\");
GetDriveType(Driver_Path);

 

转载于:https://www.cnblogs.com/shensobaolibin/p/8318575.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值