工控编程吧
标题:
上位机MFC如何获得驱动器的序列号
[打印本页]
作者:
qq263946146
时间:
2019-8-17 11:00
标题:
上位机MFC如何获得驱动器的序列号
可以参考下面的代码。
GetLogicalDrives获得驱动器。
GetVolumeInformation获得驱动器信息。
void CDemoDlg::OnTest()
{
CListCtrl* pList = (CListCtrl*)GetDlgItem(IDC_LIST);
pList->DeleteAllItems();
//获得驱动器位掩码
DWORD dwBitMask = ::GetLogicalDrives();
if (dwBitMask != 0)
{
int n = 0;
TCHAR ch = 'A';
while (dwBitMask > 0)
{
if (dwBitMask % 2 == 1)
{
//驱动器名
CString strDiriveName = _T("");
strDiriveName.Format(_T("%c:\"), ch);
pList->InsertItem(n, strDiriveName);
//获得驱动器序列号
DWORD dwSerialNumber = 0;
CString strVolumeName = _T("");
GetVolumeInformation(strDiriveName, NULL,
0, &dwSerialNumber, NULL, NULL, NULL, 0);
CString strSerialNumber = _T("");
strSerialNumber.Format(_T("%04X-%04X"),
HIWORD(dwSerialNumber), LOWORD(dwSerialNumber));
pList->SetItemText(n, 1, strSerialNumber);
n++;
}
dwBitMask /= 2;
ch++;
}
}
}
复制代码
欢迎光临 工控编程吧 (https://www.gkbc8.com/)
Powered by Discuz! X3.4