2
我在說的是物理磁盤驅動器,而不是卷/分區/邏輯驅動器。所以通常建議的GetVolumeInformation
函數不適用於我的情況。如何使用Windows API檢索HD供應商/序列號
確切地說:我直接使用尚未分區的磁盤。 我通過CreateFile
功能打開它的句柄:
hDisk = CreateFile(
_T("\\\\.\\PHYSICALDRIVE0"),
GENERIC_READ|GENERIC_WRITE,
FILE_SHARE_READ|FILE_SHARE_WRITE,
NULL,
OPEN_EXISTING,
FILE_FLAG_OVERLAPPED|FILE_FLAG_NO_BUFFERING,
NULL);
我可以直接讀取/使用這個手柄寫到磁盤上。還可以使用DeviceIoControl
函數來查詢各種磁盤屬性。但是我找不到查詢設備管理器中可見的磁盤供應商/串行屬性的方法。
只是猜測:你想要創建某種授權系統嗎? – ereOn 2010-08-03 12:05:22
使用WMI,Win32_DiskDrive類 – 2010-08-03 12:07:13
ereOn:不,我正在爲HD驅動器構建壓力測試工具。 – valdo 2010-08-03 12:35:07