admin管理员组

文章数量:1532362

2024年5月1日发(作者:)

读取U盘sd卡驱动器序列号

/**********************************************************

**

//函数名称:GetDriverInfomation

//函数功能:得到驱动器的信息

//参数1:bAlpha - BYTE型,驱动器的代号A-Z(a-z)

//参数2:iGTI_TYPE - int,将要获取的驱动器信息类型

// GDI_VOLUMENAME 得到驱动器名字

// GDI_VOLUMESERIALNUMBER 得到驱动器序列号

// GDI_VOLUMETYPE 得到驱动器类型

// GDI_VOLUMEFILESYSTEM 得到驱动器文件系统

// GDI_VOLUMESIZE 得到驱动器总大小

// GDI_VOLUMEFREESIZE 得到驱动器剩余大小

//返回值:CString型,所要得到的驱动器信息的字符串表达

//例子:得到C盘的名字GetDriverInfomation('C',GDI_VOLUMENAME)

***********************************************************

*/

#define GDI_VOLUMENAME 0

#define GDI_VOLUMESERIALNUMBER 1

#define GDI_VOLUMEFILESYSTEM 2

#define GDI_VOLUMETYPE 3

#define GDI_VOLUMESIZE 4

#define GDI_VOLUMEFREESIZE 5

iGTI_TYPE)

{

CString CCPUIDDlg::GetDriverInfomation(BYTE bAlpha,int

CString strResult = _T("");

if(!::IsCharAlpha((TCHAR)bAlpha))

{

strResult = _T("驱动器参数无效!");

return strResult;

}

{

else

/**********获取驱动器名字、序列号和文件系统部分**********/

CString strRootPathName;

(_T("%c:"),bAlpha);

LPCTSTR lpRootPathName = strRootPathName;

LPTSTR lpVolumeNameBuffer = new char[_MAX_FNAME];

DWORD nVolumeNameSize = _MAX_FNAME;

DWORD nVolumeSerialNumber = 0;//便于驱动器无效时做判断

DWORD nMaximumComponentLength;

DWORD nFileSystemFlags;

LPTSTR lpFileSystemNameBuffer = new char[20];//文件系统

(NTFS,FAT)多大有定义好的宏吗

GetVolumeInformation(

lpRootPathName,

lpVolumeNameBuffer,

nVolumeNameSize,

DWORD nFileSystemNameSize = 20;

&nVolumeSerialNumber,

&nFileSystemFlags,

&nMaximumComponentLength,

lpFileSystemNameBuffer,

本文标签: 驱动器得到序列号信息名字