void CVolSerialNumDlg::OnVolserial()
{
// TODO: Add your control notification handler code here
CString strRootPath="";//带根目录标记的磁盘符号
char chVolName[20];//卷标的缓冲区
DWORD dwLength=20;//卷标缓冲区的大小
DWORD dwVolSerialNum=0;//磁盘序列号
DWORD dwMaxLength=255;//最大文件名的长度
char chFileSysName[20];//文件系统名称缓冲区
DWORD dwFileSysLength=20;//文件系统名称缓冲区大小
strRootPath="e:\\";
GetVolumeInformation(strRootPath,chVolName,dwLength,&dwVolSerialNum,&dwMaxLength,
0,chFileSysName,dwFileSysLength);//获取卷标信息
m_dwSerial=dwVolSerialNum;
UpdateData(FALSE);//更新对话框控件数据
}
1、GetVolumeInformation函数声明
BOOL GetVolumeInformation(LPCTSTR lpRootPathName,LPTSTR lpVolumeNameBuffer,DWORD nVolumeNameSize,LPDWORD lpVolumeSerialNumber,LPDWORD lpMaximum ComponentLength,LPDWORD lpFileSystemFlags,LPTSTR lpFileSystemNameBuffer,DWORD nFileSystemNameSize)
lpRootPathName:带根目录标记之磁盘符号。
lpVolumeNameBuffer:卷标名缓冲区。
nVolumeNameSize:卷标名缓冲区大小。
lpVolumeSerialNumber:磁盘序列号。
lpMaximum ComponentLength:最长文件名长度。
lpFileSystemFlags:压缩盘标记。
lpFileSystemNameBuffer:文件系统名缓冲区。
nFileSystemNameSize:文件系统名缓冲区大小。
功能:获取磁盘卷标相关信息。成功则返回TRUE;失败则返回FALSE。