2024年4月11日发(作者:)
C++获取硬盘序列号
#include
#include
#include
#pragma argsused
#define DFP_GET_VERSION 0x00074080
#define DFP_SEND_DRIVE_COMMAND 0x0007c084
#define DFP_RECEIVE_DRIVE_DATA 0x0007c088
//#pragma pack(1)
typedef struct _GETVERSIONOUTPARAMS {
BYTE bVersion; //Binary driver version.
BYTE bRevision; //Binary driver revision.
BYTE bReserved; //Not used.
BYTE bIDEDeviceMap; //Bit map of IDE devices.
DWORD fCapabilities; //Bit mask of driver capabilities.
DWORD dwReserved[4]; //For future use.
} GETVERSIONOUTPARAMS, *PGETVERSIONOUTPARAMS, *LPGETVERSI
ONOUTPARAMS;
typedef struct _IDEREGS {
BYTE bFeaturesReg; //Used for specifying SMART "commands".
BYTE bSectorCountReg; //IDE sector count register
BYTE bSectorNumberReg; //IDE sector number register
BYTE bCylLowReg; // IDE low order cylinder value
BYTE bCylHighReg; // IDE high order cylinder value
BYTE bDriveHeadReg; // IDE drive/head register
BYTE bCommandReg; // Actual IDE command.
BYTE bReserved; // reserved for future use. Must be zero.


发布评论