1
C# 클래스에서 dll 가져 오기와 함께 사용되는 값 중 하나가 상수 값 IOCTL_STORAGE_GET_MEDIA_SERIAL_NUMBER에 있습니까? 상수가 WinIoCtl.h에 있다고 들었지만 아무 것도 발견되지 않았습니다.DIO 제어 코드가 필요함
누군가가 제공 할 수 있다면 크게 좋아할 것입니다. 윈도우 SDK의 5.0 함께 제공 WinIoCtl.h에서
C# 클래스에서 dll 가져 오기와 함께 사용되는 값 중 하나가 상수 값 IOCTL_STORAGE_GET_MEDIA_SERIAL_NUMBER에 있습니까? 상수가 WinIoCtl.h에 있다고 들었지만 아무 것도 발견되지 않았습니다.DIO 제어 코드가 필요함
누군가가 제공 할 수 있다면 크게 좋아할 것입니다. 윈도우 SDK의 5.0 함께 제공 WinIoCtl.h에서
:
#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)
는 그래서 2,952,208 또는 0x2d0c10입니다.
감사! 그러나 나는 그것을 작동시킬 수 없다. 내 코드에 문제가 있다고 생각한다. http://pastie.org/1321798 디스크 기하 구조를 사용하기 때문에 값을 반환 할 수있는 유일한 방법이기 때문이다. 종종 구조체의 임의의 필드가됩니다. – Eaton
@Eaton : 그건 다른 질문입니다 :-) 나는 단지 제어 코드의 가치를 도울 수 있습니다. – dtb
하하하. 내가 일할 수있어,하지만 그것은 Win32 예외를 기반으로 작업이 지원되지 않습니다 나타납니다 .. 음 .. – Eaton