用GetVolumeInformation 获取卷标 的疑惑

大脸猫脸大 大脸猫脸大 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
//对话框程序
void CMyColorDlg::OnButton1()
{
char szLabel[64];
char szFSName[64];
DWORD dwSerialNumber;
DWORD dwMaxLength;
DWORD dwFlags;

memset(szLabel,0,64);

if ( !GetVolumeInformation("C:",szLabel,64,&dwSerialNumber,&dwMaxLength,
&dwFlags,szFSName,64) )
Beep(1000,100); //调用失败则响铃提醒
SetDlgItemText(IDC_STATUS,szLabel); //将卷标显示在文本标签
}


//Win32API程序
.........
LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam)
{
........

char szLabel[64];
char szFSName[64];
char szTemp[32];
DWORD dwSerialNumber;
DWORD dwMaxLength;
DWORD dwFlags;

memset(szLabel,0,64);
memset(szFSName,0,64);
memset(szTemp,0,32);
switch (message)
{
case WM_COMMAND:
break;
case WM_PAINT:
hdc = BeginPaint(hWnd,&ps);
GetVolumeInformation("C:\\",szLabel,64,&dwSerialNumber,
&dwMaxLength,&dwFlags,szFSName,64);

TextOut(hdc,0,10,"卷标名称",strlen("卷标名称"));
TextOut(hdc,130,10,szLabel,strlen(szLabel));

EndPaint(hWnd,&ps);

break;
........
default:
return DefWindowProc(hWnd, message, wParam, lParam);
}
return 0;
}
-------------------------------------------------------------------------
我的windowsXP 装在C盘 卷标是 本地磁盘,(装好系统未修改过C盘卷标)
问题1:
调用上面对话框程序("C:\\") , ,
若 装好系统未修改过C盘卷标,文本标签没动静,换成其他盘符,显示正常,
然后我手动对C盘重命名一个卷标,调用上面对话框程序,显示正常了。这很奇怪!


问题2:

Win32API程序 中 将第一个参数改为"D:" [not "D:\\"] ,显示正常
但在 对话框 就会 失败,不知为什么?
...全文

相关推荐

如何获取硬盘卷标、序列号和文件系统类型?

获取硬盘卷标硬盘卷标通常是用户为磁盘分区设置的一个名称标识,方便识别不同的分区。在Windows操作系统中,可以使用`GetVolumeInformation`函数来获取卷标。

tianlongbang

精彩编程与编程技巧-获得驱动器的卷标...

#### 二、API函数GetVolumeInformation介绍`GetVolumeInformation`是Windows操作系统提供的一个API函数,用于获取指定驱动器的卷标、卷序列号、文件系统标志以及文件系统名等信息

求伯乐

精彩编程与编程技巧-如何获取硬盘卷标、序列号和文件系统类型?...

### 如何获取硬盘卷标、序列号和文件系统类型?在计算机编程中,有时我们需要获取当前硬盘或磁盘分区的一些基本信息,例如卷标(即通常所说的盘符名称)、序列号以及所使用的文件系统类型等。

求伯乐

VB 枚举系统驱动器,并设置磁盘卷标源代码.rar

该项目使用VB6或VBA调用Windows API函数实现枚举系统驱动器,并通过SetVolumeLabel设置磁盘卷标,结合GetVolumeInformation获取磁盘信息。核心功能集中在API

weixin_39841848

VB硬盘信息显示与卷标设定

摘要:VB源码,系统相关,硬盘,卷标  VB编写的一个与硬盘属性信息读取的小程序,硬盘信息的显示与卷标的设定,调用GetVolumeInformation函数,获得所选盘符的卷标、分区格式信息,变量i

weixin_38643307
评论 4
收藏 已收藏
分享
返回顶部
大脸猫脸大
VC/MFC 16,550 成员 421,606 内容