Требуется контрольный код DIO - PullRequest
1 голос
/ 24 ноября 2010

Имеет ли кто-либо постоянное значение IOCTL_STORAGE_GET_MEDIA_SERIAL_NUMBER для использования с импортом dll в классе C #?Мне сказали, что константы находятся в WinIoCtl.h, но их нигде нет.

Если бы кто-то мог это предоставить, это было бы очень признательно.

1 Ответ

1 голос
/ 24 ноября 2010

Из WinIoCtl.h, который поставляется с Windows SDK v5.0:

#define CTL_CODE( DeviceType, Function, Method, Access ) (                 \
    ((DeviceType) << 16) | ((Access) << 14) | ((Function) << 2) | (Method) \
)

#define METHOD_BUFFERED                 0

#define FILE_ANY_ACCESS                 0

#define FILE_DEVICE_MASS_STORAGE        0x0000002d

#define IOCTL_STORAGE_BASE FILE_DEVICE_MASS_STORAGE

#define IOCTL_STORAGE_GET_MEDIA_SERIAL_NUMBER CTL_CODE(IOCTL_STORAGE_BASE, 0x0304, METHOD_BUFFERED, FILE_ANY_ACCESS)

Так что это 2952208 или 0x2d0c10.

...