コード: 全て選択
#define IOCTL_DISK_GET_DRIVE_GEOMETRY CTL_CODE(IOCTL_DISK_BASE, 0x0000, METHOD_BUFFERED, FILE_ANY_ACCESS)
コード: 全て選択
Public Const IOCTL_DISK_GET_DRIVE_GEOMETRY As Long = &H70000
DDK(DriverDevelopmentKit)に含まれる情報でMS社から情報入手となると
面倒なことになりそうな案内。そこで探してcygwinのw32apiパッケージ
に、ストレージ・USBデバイスを含めた#define情報がありました。
Index of /pub/cygwin/release/w32api
http://ftp.yz.yamagata-u.ac.jp/pub/cygw ... se/w32api/
そして
コード: 全て選択
#define CTL_CODE(t,f,m,a) (((t)<<16)|((a)<<14)|((f)<<2)|(m))
#define IOCTL_STORAGE_BASE FILE_DEVICE_MASS_STORAGE (0x0000002d)
#define IOCTL_DISK_GET_DRIVE_GEOMETRY CTL_CODE(IOCTL_DISK_BASE,0,METHOD_BUFFERED, FILE_ANY_ACCESS)
となり、よく知られた&H70000と不一致になります。この&H70000はいったい
どのようにして得られる定数なのでしょうか? または必要な環境など
教えていただけないでしょうか?