/// Device type is virtual harddisk partition
#define IMDISK_DEVICE_TYPE_HD 0x00000010
/// Device type is virtual floppy drive
#define IMDISK_DEVICE_TYPE_FD 0x00000020
/// Device type is virtual CD/DVD-ROM drive
#define IMDISK_DEVICE_TYPE_CD 0x00000030
/// Extracts the IMDISK_DEVICE_TYPE_xxx from flags
#define IMDISK_DEVICE_TYPE(x) ((ULONG)(x) & 0x000000F0)
/// Virtual disk is backed by image file
#define IMDISK_TYPE_FILE 0x00000100
/// Virtual disk is backed by virtual memory
#define IMDISK_TYPE_VM 0x00000200
/// Virtual disk is backed by proxy connection
#define IMDISK_TYPE_PROXY 0x00000300
/// Extracts the IMDISK_TYPE_xxx from flags
#define IMDISK_TYPE(x) ((ULONG)(x) & 0x00000F00)
/// Proxy connection is direct-type
#define IMDISK_PROXY_TYPE_DIRECT 0x00000000
/// Proxy connection is over serial line
#define IMDISK_PROXY_TYPE_COMM 0x00001000
/// Proxy connection is over TCP/IP
#define IMDISK_PROXY_TYPE_TCP 0x00002000
/// Proxy connection uses shared memory
#define IMDISK_PROXY_TYPE_SHM 0x00003000
/// Extracts the IMDISK_PROXY_TYPE_xxx from flags
#define IMDISK_PROXY_TYPE(x) ((ULONG)(x) & 0x0000F000)
/// Extracts the IMDISK_PROXY_TYPE_xxx from flags
#define IMDISK_IMAGE_MODIFIED 0x00010000
/// Specify as device number to automatically select first free.
#define IMDISK_AUTO_DEVICE_NUMBER ((ULONG)-1)