Mercurial > games > semicongine
view semicongine/thirdparty/winim/winim/inc/winioctl.nim @ 1123:657bb0b2af45
add: thirdparty libraries into repo
author | sam <sam@basx.dev> |
---|---|
date | Sat, 27 Apr 2024 22:04:30 +0700 |
parents | |
children |
line wrap: on
line source
#==================================================================== # # Winim - Windows API, COM, and CLR Module for Nim # Copyright (c) Chen Kai-Hung, Ward # #==================================================================== import winimbase import windef #include <winioctl.h> type STORAGE_MEDIA_TYPE* = int32 PSTORAGE_MEDIA_TYPE* = ptr int32 STORAGE_BUS_TYPE* = int32 PSTORAGE_BUS_TYPE* = ptr int32 MEDIA_TYPE* = int32 PMEDIA_TYPE* = ptr int32 PARTITION_STYLE* = int32 DETECTION_TYPE* = int32 DISK_CACHE_RETENTION_PRIORITY* = int32 BIN_TYPES* = int32 ELEMENT_TYPE* = int32 PELEMENT_TYPE* = ptr int32 CHANGER_DEVICE_PROBLEM_TYPE* = int32 PCHANGER_DEVICE_PROBLEM_TYPE* = ptr int32 STORAGE_PROPERTY_ID* = int32 PSTORAGE_PROPERTY_ID* = ptr int32 STORAGE_QUERY_TYPE* = int32 PSTORAGE_QUERY_TYPE* = ptr int32 SHRINK_VOLUME_REQUEST_TYPES* = int32 WRITE_CACHE_TYPE* = int32 WRITE_CACHE_ENABLE* = int32 WRITE_CACHE_CHANGE* = int32 WRITE_THROUGH* = int32 STORAGE_PORT_CODE_SET* = int32 PSTORAGE_PORT_CODE_SET* = ptr int32 DEVICE_DATA_MANAGEMENT_SET_ACTION* = DWORD BAD_TRACK_NUMBER* = WORD PBAD_TRACK_NUMBER* = ptr WORD STORAGE_READ_CAPACITY* {.pure.} = object Version*: ULONG Size*: ULONG BlockLength*: ULONG NumberOfBlocks*: LARGE_INTEGER DiskLength*: LARGE_INTEGER PSTORAGE_READ_CAPACITY* = ptr STORAGE_READ_CAPACITY DEVICE_MANAGE_DATA_SET_ATTRIBUTES* {.pure.} = object Size*: DWORD Action*: DEVICE_DATA_MANAGEMENT_SET_ACTION Flags*: DWORD ParameterBlockOffset*: DWORD ParameterBlockLength*: DWORD DataSetRangesOffset*: DWORD DataSetRangesLength*: DWORD PDEVICE_MANAGE_DATA_SET_ATTRIBUTES* = ptr DEVICE_MANAGE_DATA_SET_ATTRIBUTES DEVICE_DATA_SET_RANGE* {.pure.} = object StartingOffset*: LONGLONG LengthInBytes*: DWORDLONG PDEVICE_DATA_SET_RANGE* = ptr DEVICE_DATA_SET_RANGE STORAGE_HOTPLUG_INFO* {.pure.} = object Size*: DWORD MediaRemovable*: BOOLEAN MediaHotplug*: BOOLEAN DeviceHotplug*: BOOLEAN WriteCacheEnableOverride*: BOOLEAN PSTORAGE_HOTPLUG_INFO* = ptr STORAGE_HOTPLUG_INFO STORAGE_DEVICE_NUMBER* {.pure.} = object DeviceType*: DEVICE_TYPE DeviceNumber*: DWORD PartitionNumber*: DWORD PSTORAGE_DEVICE_NUMBER* = ptr STORAGE_DEVICE_NUMBER STORAGE_BUS_RESET_REQUEST* {.pure.} = object PathId*: BYTE PSTORAGE_BUS_RESET_REQUEST* = ptr STORAGE_BUS_RESET_REQUEST STORAGE_BREAK_RESERVATION_REQUEST* {.pure.} = object Length*: DWORD unused*: BYTE PathId*: BYTE TargetId*: BYTE Lun*: BYTE PSTORAGE_BREAK_RESERVATION_REQUEST* = ptr STORAGE_BREAK_RESERVATION_REQUEST PREVENT_MEDIA_REMOVAL* {.pure.} = object PreventMediaRemoval*: BOOLEAN PPREVENT_MEDIA_REMOVAL* = ptr PREVENT_MEDIA_REMOVAL CLASS_MEDIA_CHANGE_CONTEXT* {.pure.} = object MediaChangeCount*: DWORD NewState*: DWORD PCLASS_MEDIA_CHANGE_CONTEXT* = ptr CLASS_MEDIA_CHANGE_CONTEXT TAPE_STATISTICS* {.pure.} = object Version*: DWORD Flags*: DWORD RecoveredWrites*: LARGE_INTEGER UnrecoveredWrites*: LARGE_INTEGER RecoveredReads*: LARGE_INTEGER UnrecoveredReads*: LARGE_INTEGER CompressionRatioReads*: BYTE CompressionRatioWrites*: BYTE PTAPE_STATISTICS* = ptr TAPE_STATISTICS TAPE_GET_STATISTICS* {.pure.} = object Operation*: DWORD PTAPE_GET_STATISTICS* = ptr TAPE_GET_STATISTICS DEVICE_MEDIA_INFO_DeviceSpecific_DiskInfo* {.pure.} = object Cylinders*: LARGE_INTEGER MediaType*: STORAGE_MEDIA_TYPE TracksPerCylinder*: DWORD SectorsPerTrack*: DWORD BytesPerSector*: DWORD NumberMediaSides*: DWORD MediaCharacteristics*: DWORD DEVICE_MEDIA_INFO_DeviceSpecific_RemovableDiskInfo* {.pure.} = object Cylinders*: LARGE_INTEGER MediaType*: STORAGE_MEDIA_TYPE TracksPerCylinder*: DWORD SectorsPerTrack*: DWORD BytesPerSector*: DWORD NumberMediaSides*: DWORD MediaCharacteristics*: DWORD DEVICE_MEDIA_INFO_DeviceSpecific_TapeInfo_BusSpecificData_ScsiInformation* {.pure.} = object MediumType*: BYTE DensityCode*: BYTE DEVICE_MEDIA_INFO_DeviceSpecific_TapeInfo_BusSpecificData* {.pure, union.} = object ScsiInformation*: DEVICE_MEDIA_INFO_DeviceSpecific_TapeInfo_BusSpecificData_ScsiInformation DEVICE_MEDIA_INFO_DeviceSpecific_TapeInfo* {.pure.} = object MediaType*: STORAGE_MEDIA_TYPE MediaCharacteristics*: DWORD CurrentBlockSize*: DWORD BusType*: STORAGE_BUS_TYPE BusSpecificData*: DEVICE_MEDIA_INFO_DeviceSpecific_TapeInfo_BusSpecificData DEVICE_MEDIA_INFO_DeviceSpecific* {.pure, union.} = object DiskInfo*: DEVICE_MEDIA_INFO_DeviceSpecific_DiskInfo RemovableDiskInfo*: DEVICE_MEDIA_INFO_DeviceSpecific_RemovableDiskInfo TapeInfo*: DEVICE_MEDIA_INFO_DeviceSpecific_TapeInfo DEVICE_MEDIA_INFO* {.pure.} = object DeviceSpecific*: DEVICE_MEDIA_INFO_DeviceSpecific PDEVICE_MEDIA_INFO* = ptr DEVICE_MEDIA_INFO GET_MEDIA_TYPES* {.pure.} = object DeviceType*: DWORD MediaInfoCount*: DWORD MediaInfo*: array[1, DEVICE_MEDIA_INFO] PGET_MEDIA_TYPES* = ptr GET_MEDIA_TYPES STORAGE_PREDICT_FAILURE* {.pure.} = object PredictFailure*: DWORD VendorSpecific*: array[512, BYTE] PSTORAGE_PREDICT_FAILURE* = ptr STORAGE_PREDICT_FAILURE FORMAT_PARAMETERS* {.pure.} = object MediaType*: MEDIA_TYPE StartCylinderNumber*: DWORD EndCylinderNumber*: DWORD StartHeadNumber*: DWORD EndHeadNumber*: DWORD PFORMAT_PARAMETERS* = ptr FORMAT_PARAMETERS FORMAT_EX_PARAMETERS* {.pure.} = object MediaType*: MEDIA_TYPE StartCylinderNumber*: DWORD EndCylinderNumber*: DWORD StartHeadNumber*: DWORD EndHeadNumber*: DWORD FormatGapLength*: WORD SectorsPerTrack*: WORD SectorNumber*: array[1, WORD] PFORMAT_EX_PARAMETERS* = ptr FORMAT_EX_PARAMETERS DISK_GEOMETRY* {.pure.} = object Cylinders*: LARGE_INTEGER MediaType*: MEDIA_TYPE TracksPerCylinder*: DWORD SectorsPerTrack*: DWORD BytesPerSector*: DWORD PDISK_GEOMETRY* = ptr DISK_GEOMETRY PARTITION_INFORMATION* {.pure.} = object StartingOffset*: LARGE_INTEGER PartitionLength*: LARGE_INTEGER HiddenSectors*: DWORD PartitionNumber*: DWORD PartitionType*: BYTE BootIndicator*: BOOLEAN RecognizedPartition*: BOOLEAN RewritePartition*: BOOLEAN PPARTITION_INFORMATION* = ptr PARTITION_INFORMATION SET_PARTITION_INFORMATION* {.pure.} = object PartitionType*: BYTE PSET_PARTITION_INFORMATION* = ptr SET_PARTITION_INFORMATION DRIVE_LAYOUT_INFORMATION* {.pure.} = object PartitionCount*: DWORD Signature*: DWORD PartitionEntry*: array[1, PARTITION_INFORMATION] PDRIVE_LAYOUT_INFORMATION* = ptr DRIVE_LAYOUT_INFORMATION VERIFY_INFORMATION* {.pure.} = object StartingOffset*: LARGE_INTEGER Length*: DWORD PVERIFY_INFORMATION* = ptr VERIFY_INFORMATION REASSIGN_BLOCKS* {.pure.} = object Reserved*: WORD Count*: WORD BlockNumber*: array[1, DWORD] PREASSIGN_BLOCKS* = ptr REASSIGN_BLOCKS REASSIGN_BLOCKS_EX* {.pure, packed.} = object Reserved*: WORD Count*: WORD BlockNumber*: array[1, LARGE_INTEGER] PREASSIGN_BLOCKS_EX* = ptr REASSIGN_BLOCKS_EX PARTITION_INFORMATION_GPT* {.pure.} = object PartitionType*: GUID PartitionId*: GUID Attributes*: DWORD64 Name*: array[36, WCHAR] PPARTITION_INFORMATION_GPT* = ptr PARTITION_INFORMATION_GPT PARTITION_INFORMATION_MBR* {.pure.} = object PartitionType*: BYTE BootIndicator*: BOOLEAN RecognizedPartition*: BOOLEAN HiddenSectors*: DWORD PPARTITION_INFORMATION_MBR* = ptr PARTITION_INFORMATION_MBR SET_PARTITION_INFORMATION_MBR* = SET_PARTITION_INFORMATION SET_PARTITION_INFORMATION_GPT* = PARTITION_INFORMATION_GPT SET_PARTITION_INFORMATION_EX_UNION1* {.pure, union.} = object Mbr*: SET_PARTITION_INFORMATION_MBR Gpt*: SET_PARTITION_INFORMATION_GPT SET_PARTITION_INFORMATION_EX* {.pure.} = object PartitionStyle*: PARTITION_STYLE union1*: SET_PARTITION_INFORMATION_EX_UNION1 PSET_PARTITION_INFORMATION_EX* = ptr SET_PARTITION_INFORMATION_EX CREATE_DISK_GPT* {.pure.} = object DiskId*: GUID MaxPartitionCount*: DWORD PCREATE_DISK_GPT* = ptr CREATE_DISK_GPT CREATE_DISK_MBR* {.pure.} = object Signature*: DWORD PCREATE_DISK_MBR* = ptr CREATE_DISK_MBR CREATE_DISK_UNION1* {.pure, union.} = object Mbr*: CREATE_DISK_MBR Gpt*: CREATE_DISK_GPT CREATE_DISK* {.pure.} = object PartitionStyle*: PARTITION_STYLE union1*: CREATE_DISK_UNION1 PCREATE_DISK* = ptr CREATE_DISK GET_LENGTH_INFORMATION* {.pure.} = object Length*: LARGE_INTEGER PGET_LENGTH_INFORMATION* = ptr GET_LENGTH_INFORMATION PARTITION_INFORMATION_EX_UNION1* {.pure, union.} = object Mbr*: PARTITION_INFORMATION_MBR Gpt*: PARTITION_INFORMATION_GPT PARTITION_INFORMATION_EX* {.pure.} = object PartitionStyle*: PARTITION_STYLE StartingOffset*: LARGE_INTEGER PartitionLength*: LARGE_INTEGER PartitionNumber*: DWORD RewritePartition*: BOOLEAN union1*: PARTITION_INFORMATION_EX_UNION1 PPARTITION_INFORMATION_EX* = ptr PARTITION_INFORMATION_EX DRIVE_LAYOUT_INFORMATION_GPT* {.pure.} = object DiskId*: GUID StartingUsableOffset*: LARGE_INTEGER UsableLength*: LARGE_INTEGER MaxPartitionCount*: DWORD PDRIVE_LAYOUT_INFORMATION_GPT* = ptr DRIVE_LAYOUT_INFORMATION_GPT DRIVE_LAYOUT_INFORMATION_MBR* {.pure.} = object Signature*: DWORD PDRIVE_LAYOUT_INFORMATION_MBR* = ptr DRIVE_LAYOUT_INFORMATION_MBR DRIVE_LAYOUT_INFORMATION_EX_UNION1* {.pure, union.} = object Mbr*: DRIVE_LAYOUT_INFORMATION_MBR Gpt*: DRIVE_LAYOUT_INFORMATION_GPT DRIVE_LAYOUT_INFORMATION_EX* {.pure.} = object PartitionStyle*: DWORD PartitionCount*: DWORD union1*: DRIVE_LAYOUT_INFORMATION_EX_UNION1 PartitionEntry*: array[1, PARTITION_INFORMATION_EX] PDRIVE_LAYOUT_INFORMATION_EX* = ptr DRIVE_LAYOUT_INFORMATION_EX DISK_INT13_INFO* {.pure.} = object DriveSelect*: WORD MaxCylinders*: DWORD SectorsPerTrack*: WORD MaxHeads*: WORD NumberDrives*: WORD PDISK_INT13_INFO* = ptr DISK_INT13_INFO DISK_EX_INT13_INFO* {.pure.} = object ExBufferSize*: WORD ExFlags*: WORD ExCylinders*: DWORD ExHeads*: DWORD ExSectorsPerTrack*: DWORD ExSectorsPerDrive*: DWORD64 ExSectorSize*: WORD ExReserved*: WORD PDISK_EX_INT13_INFO* = ptr DISK_EX_INT13_INFO DISK_DETECTION_INFO_UNION1_STRUCT1* {.pure.} = object Int13*: DISK_INT13_INFO ExInt13*: DISK_EX_INT13_INFO DISK_DETECTION_INFO_UNION1* {.pure, union.} = object struct1*: DISK_DETECTION_INFO_UNION1_STRUCT1 DISK_DETECTION_INFO* {.pure.} = object SizeOfDetectInfo*: DWORD DetectionType*: DETECTION_TYPE union1*: DISK_DETECTION_INFO_UNION1 PDISK_DETECTION_INFO* = ptr DISK_DETECTION_INFO DISK_PARTITION_INFO_UNION1_Mbr* {.pure.} = object Signature*: DWORD CheckSum*: DWORD DISK_PARTITION_INFO_UNION1_Gpt* {.pure.} = object DiskId*: GUID DISK_PARTITION_INFO_UNION1* {.pure, union.} = object Mbr*: DISK_PARTITION_INFO_UNION1_Mbr Gpt*: DISK_PARTITION_INFO_UNION1_Gpt DISK_PARTITION_INFO* {.pure.} = object SizeOfPartitionInfo*: DWORD PartitionStyle*: PARTITION_STYLE union1*: DISK_PARTITION_INFO_UNION1 PDISK_PARTITION_INFO* = ptr DISK_PARTITION_INFO DISK_GEOMETRY_EX* {.pure.} = object Geometry*: DISK_GEOMETRY DiskSize*: LARGE_INTEGER Data*: array[1, BYTE] PDISK_GEOMETRY_EX* = ptr DISK_GEOMETRY_EX DISK_CONTROLLER_NUMBER* {.pure.} = object ControllerNumber*: DWORD DiskNumber*: DWORD PDISK_CONTROLLER_NUMBER* = ptr DISK_CONTROLLER_NUMBER DISK_CACHE_INFORMATION_UNION1_ScalarPrefetch* {.pure.} = object Minimum*: WORD Maximum*: WORD MaximumBlocks*: WORD DISK_CACHE_INFORMATION_UNION1_BlockPrefetch* {.pure.} = object Minimum*: WORD Maximum*: WORD DISK_CACHE_INFORMATION_UNION1* {.pure, union.} = object ScalarPrefetch*: DISK_CACHE_INFORMATION_UNION1_ScalarPrefetch BlockPrefetch*: DISK_CACHE_INFORMATION_UNION1_BlockPrefetch DISK_CACHE_INFORMATION* {.pure.} = object ParametersSavable*: BOOLEAN ReadCacheEnabled*: BOOLEAN WriteCacheEnabled*: BOOLEAN ReadRetentionPriority*: DISK_CACHE_RETENTION_PRIORITY WriteRetentionPriority*: DISK_CACHE_RETENTION_PRIORITY DisablePrefetchTransferLength*: WORD PrefetchScalar*: BOOLEAN union1*: DISK_CACHE_INFORMATION_UNION1 PDISK_CACHE_INFORMATION* = ptr DISK_CACHE_INFORMATION DISK_GROW_PARTITION* {.pure.} = object PartitionNumber*: DWORD BytesToGrow*: LARGE_INTEGER PDISK_GROW_PARTITION* = ptr DISK_GROW_PARTITION HISTOGRAM_BUCKET* {.pure.} = object Reads*: DWORD Writes*: DWORD PHISTOGRAM_BUCKET* = ptr HISTOGRAM_BUCKET DISK_HISTOGRAM* {.pure.} = object DiskSize*: LARGE_INTEGER Start*: LARGE_INTEGER End*: LARGE_INTEGER Average*: LARGE_INTEGER AverageRead*: LARGE_INTEGER AverageWrite*: LARGE_INTEGER Granularity*: DWORD Size*: DWORD ReadCount*: DWORD WriteCount*: DWORD Histogram*: PHISTOGRAM_BUCKET PDISK_HISTOGRAM* = ptr DISK_HISTOGRAM DISK_PERFORMANCE* {.pure.} = object BytesRead*: LARGE_INTEGER BytesWritten*: LARGE_INTEGER ReadTime*: LARGE_INTEGER WriteTime*: LARGE_INTEGER IdleTime*: LARGE_INTEGER ReadCount*: DWORD WriteCount*: DWORD QueueDepth*: DWORD SplitCount*: DWORD QueryTime*: LARGE_INTEGER StorageDeviceNumber*: DWORD StorageManagerName*: array[8, WCHAR] PDISK_PERFORMANCE* = ptr DISK_PERFORMANCE DISK_RECORD* {.pure.} = object ByteOffset*: LARGE_INTEGER StartTime*: LARGE_INTEGER EndTime*: LARGE_INTEGER VirtualAddress*: PVOID NumberOfBytes*: DWORD DeviceNumber*: BYTE ReadRequest*: BOOLEAN PDISK_RECORD* = ptr DISK_RECORD DISK_LOGGING* {.pure.} = object Function*: BYTE BufferAddress*: PVOID BufferSize*: DWORD PDISK_LOGGING* = ptr DISK_LOGGING BIN_RANGE* {.pure.} = object StartValue*: LARGE_INTEGER Length*: LARGE_INTEGER PBIN_RANGE* = ptr BIN_RANGE PERF_BIN* {.pure.} = object NumberOfBins*: DWORD TypeOfBin*: DWORD BinsRanges*: array[1, BIN_RANGE] PPERF_BIN* = ptr PERF_BIN BIN_COUNT* {.pure.} = object BinRange*: BIN_RANGE BinCount*: DWORD PBIN_COUNT* = ptr BIN_COUNT BIN_RESULTS* {.pure.} = object NumberOfBins*: DWORD BinCounts*: array[1, BIN_COUNT] PBIN_RESULTS* = ptr BIN_RESULTS GETVERSIONINPARAMS* {.pure.} = object bVersion*: BYTE bRevision*: BYTE bReserved*: BYTE bIDEDeviceMap*: BYTE fCapabilities*: DWORD dwReserved*: array[4, DWORD] PGETVERSIONINPARAMS* = ptr GETVERSIONINPARAMS LPGETVERSIONINPARAMS* = ptr GETVERSIONINPARAMS IDEREGS* {.pure.} = object bFeaturesReg*: BYTE bSectorCountReg*: BYTE bSectorNumberReg*: BYTE bCylLowReg*: BYTE bCylHighReg*: BYTE bDriveHeadReg*: BYTE bCommandReg*: BYTE bReserved*: BYTE PIDEREGS* = ptr IDEREGS LPIDEREGS* = ptr IDEREGS SENDCMDINPARAMS* {.pure, packed.} = object cBufferSize*: DWORD irDriveRegs*: IDEREGS bDriveNumber*: BYTE bReserved*: array[3, BYTE] dwReserved*: array[4, DWORD] bBuffer*: array[1, BYTE] PSENDCMDINPARAMS* = ptr SENDCMDINPARAMS LPSENDCMDINPARAMS* = ptr SENDCMDINPARAMS DRIVERSTATUS* {.pure.} = object bDriverError*: BYTE bIDEError*: BYTE bReserved*: array[2, BYTE] dwReserved*: array[2, DWORD] PDRIVERSTATUS* = ptr DRIVERSTATUS LPDRIVERSTATUS* = ptr DRIVERSTATUS SENDCMDOUTPARAMS* {.pure, packed.} = object cBufferSize*: DWORD DriverStatus*: DRIVERSTATUS bBuffer*: array[1, BYTE] PSENDCMDOUTPARAMS* = ptr SENDCMDOUTPARAMS LPSENDCMDOUTPARAMS* = ptr SENDCMDOUTPARAMS CHANGER_ELEMENT* {.pure.} = object ElementType*: ELEMENT_TYPE ElementAddress*: DWORD PCHANGER_ELEMENT* = ptr CHANGER_ELEMENT CHANGER_ELEMENT_LIST* {.pure.} = object Element*: CHANGER_ELEMENT NumberOfElements*: DWORD PCHANGER_ELEMENT_LIST* = ptr CHANGER_ELEMENT_LIST GET_CHANGER_PARAMETERS* {.pure.} = object Size*: DWORD NumberTransportElements*: WORD NumberStorageElements*: WORD NumberCleanerSlots*: WORD NumberIEElements*: WORD NumberDataTransferElements*: WORD NumberOfDoors*: WORD FirstSlotNumber*: WORD FirstDriveNumber*: WORD FirstTransportNumber*: WORD FirstIEPortNumber*: WORD FirstCleanerSlotAddress*: WORD MagazineSize*: WORD DriveCleanTimeout*: DWORD Features0*: DWORD Features1*: DWORD MoveFromTransport*: BYTE MoveFromSlot*: BYTE MoveFromIePort*: BYTE MoveFromDrive*: BYTE ExchangeFromTransport*: BYTE ExchangeFromSlot*: BYTE ExchangeFromIePort*: BYTE ExchangeFromDrive*: BYTE LockUnlockCapabilities*: BYTE PositionCapabilities*: BYTE Reserved1*: array[2, BYTE] Reserved2*: array[2, DWORD] PGET_CHANGER_PARAMETERS* = ptr GET_CHANGER_PARAMETERS const VENDOR_ID_LENGTH* = 8 PRODUCT_ID_LENGTH* = 16 REVISION_LENGTH* = 4 SERIAL_NUMBER_LENGTH* = 32 type CHANGER_PRODUCT_DATA* {.pure.} = object VendorId*: array[VENDOR_ID_LENGTH, BYTE] ProductId*: array[PRODUCT_ID_LENGTH, BYTE] Revision*: array[REVISION_LENGTH, BYTE] SerialNumber*: array[SERIAL_NUMBER_LENGTH, BYTE] DeviceType*: BYTE PCHANGER_PRODUCT_DATA* = ptr CHANGER_PRODUCT_DATA CHANGER_SET_ACCESS* {.pure.} = object Element*: CHANGER_ELEMENT Control*: DWORD PCHANGER_SET_ACCESS* = ptr CHANGER_SET_ACCESS CHANGER_READ_ELEMENT_STATUS* {.pure.} = object ElementList*: CHANGER_ELEMENT_LIST VolumeTagInfo*: BOOLEAN PCHANGER_READ_ELEMENT_STATUS* = ptr CHANGER_READ_ELEMENT_STATUS const MAX_VOLUME_ID_SIZE* = 36 type CHANGER_ELEMENT_STATUS* {.pure.} = object Element*: CHANGER_ELEMENT SrcElementAddress*: CHANGER_ELEMENT Flags*: DWORD ExceptionCode*: DWORD TargetId*: BYTE Lun*: BYTE Reserved*: WORD PrimaryVolumeID*: array[MAX_VOLUME_ID_SIZE, BYTE] AlternateVolumeID*: array[MAX_VOLUME_ID_SIZE, BYTE] PCHANGER_ELEMENT_STATUS* = ptr CHANGER_ELEMENT_STATUS CHANGER_ELEMENT_STATUS_EX* {.pure.} = object Element*: CHANGER_ELEMENT SrcElementAddress*: CHANGER_ELEMENT Flags*: DWORD ExceptionCode*: DWORD TargetId*: BYTE Lun*: BYTE Reserved*: WORD PrimaryVolumeID*: array[MAX_VOLUME_ID_SIZE, BYTE] AlternateVolumeID*: array[MAX_VOLUME_ID_SIZE, BYTE] VendorIdentification*: array[VENDOR_ID_LENGTH, BYTE] ProductIdentification*: array[PRODUCT_ID_LENGTH, BYTE] SerialNumber*: array[SERIAL_NUMBER_LENGTH, BYTE] PCHANGER_ELEMENT_STATUS_EX* = ptr CHANGER_ELEMENT_STATUS_EX CHANGER_INITIALIZE_ELEMENT_STATUS* {.pure.} = object ElementList*: CHANGER_ELEMENT_LIST BarCodeScan*: BOOLEAN PCHANGER_INITIALIZE_ELEMENT_STATUS* = ptr CHANGER_INITIALIZE_ELEMENT_STATUS CHANGER_SET_POSITION* {.pure.} = object Transport*: CHANGER_ELEMENT Destination*: CHANGER_ELEMENT Flip*: BOOLEAN PCHANGER_SET_POSITION* = ptr CHANGER_SET_POSITION CHANGER_EXCHANGE_MEDIUM* {.pure.} = object Transport*: CHANGER_ELEMENT Source*: CHANGER_ELEMENT Destination1*: CHANGER_ELEMENT Destination2*: CHANGER_ELEMENT Flip1*: BOOLEAN Flip2*: BOOLEAN PCHANGER_EXCHANGE_MEDIUM* = ptr CHANGER_EXCHANGE_MEDIUM CHANGER_MOVE_MEDIUM* {.pure.} = object Transport*: CHANGER_ELEMENT Source*: CHANGER_ELEMENT Destination*: CHANGER_ELEMENT Flip*: BOOLEAN PCHANGER_MOVE_MEDIUM* = ptr CHANGER_MOVE_MEDIUM const MAX_VOLUME_TEMPLATE_SIZE* = 40 type CHANGER_SEND_VOLUME_TAG_INFORMATION* {.pure.} = object StartingElement*: CHANGER_ELEMENT ActionCode*: DWORD VolumeIDTemplate*: array[MAX_VOLUME_TEMPLATE_SIZE, BYTE] PCHANGER_SEND_VOLUME_TAG_INFORMATION* = ptr CHANGER_SEND_VOLUME_TAG_INFORMATION READ_ELEMENT_ADDRESS_INFO* {.pure.} = object NumberOfElements*: DWORD ElementStatus*: array[1, CHANGER_ELEMENT_STATUS] PREAD_ELEMENT_ADDRESS_INFO* = ptr READ_ELEMENT_ADDRESS_INFO PATHNAME_BUFFER* {.pure.} = object PathNameLength*: DWORD Name*: array[1, WCHAR] PPATHNAME_BUFFER* = ptr PATHNAME_BUFFER FSCTL_QUERY_FAT_BPB_BUFFER* {.pure.} = object First0x24BytesOfBootSector*: array[0x24, BYTE] PFSCTL_QUERY_FAT_BPB_BUFFER* = ptr FSCTL_QUERY_FAT_BPB_BUFFER NTFS_VOLUME_DATA_BUFFER* {.pure.} = object VolumeSerialNumber*: LARGE_INTEGER NumberSectors*: LARGE_INTEGER TotalClusters*: LARGE_INTEGER FreeClusters*: LARGE_INTEGER TotalReserved*: LARGE_INTEGER BytesPerSector*: DWORD BytesPerCluster*: DWORD BytesPerFileRecordSegment*: DWORD ClustersPerFileRecordSegment*: DWORD MftValidDataLength*: LARGE_INTEGER MftStartLcn*: LARGE_INTEGER Mft2StartLcn*: LARGE_INTEGER MftZoneStart*: LARGE_INTEGER MftZoneEnd*: LARGE_INTEGER PNTFS_VOLUME_DATA_BUFFER* = ptr NTFS_VOLUME_DATA_BUFFER NTFS_EXTENDED_VOLUME_DATA* {.pure.} = object ByteCount*: DWORD MajorVersion*: WORD MinorVersion*: WORD PNTFS_EXTENDED_VOLUME_DATA* = ptr NTFS_EXTENDED_VOLUME_DATA STARTING_LCN_INPUT_BUFFER* {.pure.} = object StartingLcn*: LARGE_INTEGER PSTARTING_LCN_INPUT_BUFFER* = ptr STARTING_LCN_INPUT_BUFFER VOLUME_BITMAP_BUFFER* {.pure.} = object StartingLcn*: LARGE_INTEGER BitmapSize*: LARGE_INTEGER Buffer*: array[1, BYTE] PVOLUME_BITMAP_BUFFER* = ptr VOLUME_BITMAP_BUFFER STARTING_VCN_INPUT_BUFFER* {.pure.} = object StartingVcn*: LARGE_INTEGER PSTARTING_VCN_INPUT_BUFFER* = ptr STARTING_VCN_INPUT_BUFFER RETRIEVAL_POINTERS_BUFFER_Extents* {.pure.} = object NextVcn*: LARGE_INTEGER Lcn*: LARGE_INTEGER RETRIEVAL_POINTERS_BUFFER* {.pure.} = object ExtentCount*: DWORD StartingVcn*: LARGE_INTEGER Extents*: array[1, RETRIEVAL_POINTERS_BUFFER_Extents] PRETRIEVAL_POINTERS_BUFFER* = ptr RETRIEVAL_POINTERS_BUFFER NTFS_FILE_RECORD_INPUT_BUFFER* {.pure.} = object FileReferenceNumber*: LARGE_INTEGER PNTFS_FILE_RECORD_INPUT_BUFFER* = ptr NTFS_FILE_RECORD_INPUT_BUFFER NTFS_FILE_RECORD_OUTPUT_BUFFER* {.pure.} = object FileReferenceNumber*: LARGE_INTEGER FileRecordLength*: DWORD FileRecordBuffer*: array[1, BYTE] PNTFS_FILE_RECORD_OUTPUT_BUFFER* = ptr NTFS_FILE_RECORD_OUTPUT_BUFFER MOVE_FILE_DATA* {.pure.} = object FileHandle*: HANDLE StartingVcn*: LARGE_INTEGER StartingLcn*: LARGE_INTEGER ClusterCount*: DWORD PMOVE_FILE_DATA* = ptr MOVE_FILE_DATA FIND_BY_SID_DATA* {.pure.} = object Restart*: DWORD Sid*: SID PFIND_BY_SID_DATA* = ptr FIND_BY_SID_DATA FIND_BY_SID_OUTPUT* {.pure.} = object NextEntryOffset*: DWORD FileIndex*: DWORD FileNameLength*: DWORD FileName*: array[1, WCHAR] PFIND_BY_SID_OUTPUT* = ptr FIND_BY_SID_OUTPUT MFT_ENUM_DATA* {.pure.} = object StartFileReferenceNumber*: DWORDLONG LowUsn*: USN HighUsn*: USN PMFT_ENUM_DATA* = ptr MFT_ENUM_DATA CREATE_USN_JOURNAL_DATA* {.pure.} = object MaximumSize*: DWORDLONG AllocationDelta*: DWORDLONG PCREATE_USN_JOURNAL_DATA* = ptr CREATE_USN_JOURNAL_DATA READ_USN_JOURNAL_DATA* {.pure.} = object StartUsn*: USN ReasonMask*: DWORD ReturnOnlyOnClose*: DWORD Timeout*: DWORDLONG BytesToWaitFor*: DWORDLONG UsnJournalID*: DWORDLONG PREAD_USN_JOURNAL_DATA* = ptr READ_USN_JOURNAL_DATA USN_RECORD* {.pure.} = object RecordLength*: DWORD MajorVersion*: WORD MinorVersion*: WORD FileReferenceNumber*: DWORDLONG ParentFileReferenceNumber*: DWORDLONG Usn*: USN TimeStamp*: LARGE_INTEGER Reason*: DWORD SourceInfo*: DWORD SecurityId*: DWORD FileAttributes*: DWORD FileNameLength*: WORD FileNameOffset*: WORD FileName*: array[1, WCHAR] PUSN_RECORD* = ptr USN_RECORD USN_JOURNAL_DATA* {.pure.} = object UsnJournalID*: DWORDLONG FirstUsn*: USN NextUsn*: USN LowestValidUsn*: USN MaxUsn*: USN MaximumSize*: DWORDLONG AllocationDelta*: DWORDLONG PUSN_JOURNAL_DATA* = ptr USN_JOURNAL_DATA DELETE_USN_JOURNAL_DATA* {.pure.} = object UsnJournalID*: DWORDLONG DeleteFlags*: DWORD PDELETE_USN_JOURNAL_DATA* = ptr DELETE_USN_JOURNAL_DATA MARK_HANDLE_INFO* {.pure.} = object UsnSourceInfo*: DWORD VolumeHandle*: HANDLE HandleInfo*: DWORD PMARK_HANDLE_INFO* = ptr MARK_HANDLE_INFO BULK_SECURITY_TEST_DATA* {.pure.} = object DesiredAccess*: ACCESS_MASK SecurityIds*: array[1, DWORD] PBULK_SECURITY_TEST_DATA* = ptr BULK_SECURITY_TEST_DATA FILE_PREFETCH* {.pure.} = object Type*: DWORD Count*: DWORD Prefetch*: array[1, DWORDLONG] PFILE_PREFETCH* = ptr FILE_PREFETCH FILESYSTEM_STATISTICS* {.pure.} = object FileSystemType*: WORD Version*: WORD SizeOfCompleteStructure*: DWORD UserFileReads*: DWORD UserFileReadBytes*: DWORD UserDiskReads*: DWORD UserFileWrites*: DWORD UserFileWriteBytes*: DWORD UserDiskWrites*: DWORD MetaDataReads*: DWORD MetaDataReadBytes*: DWORD MetaDataDiskReads*: DWORD MetaDataWrites*: DWORD MetaDataWriteBytes*: DWORD MetaDataDiskWrites*: DWORD PFILESYSTEM_STATISTICS* = ptr FILESYSTEM_STATISTICS FAT_STATISTICS* {.pure.} = object CreateHits*: DWORD SuccessfulCreates*: DWORD FailedCreates*: DWORD NonCachedReads*: DWORD NonCachedReadBytes*: DWORD NonCachedWrites*: DWORD NonCachedWriteBytes*: DWORD NonCachedDiskReads*: DWORD NonCachedDiskWrites*: DWORD PFAT_STATISTICS* = ptr FAT_STATISTICS EXFAT_STATISTICS* {.pure.} = object CreateHits*: DWORD SuccessfulCreates*: DWORD FailedCreates*: DWORD NonCachedReads*: DWORD NonCachedReadBytes*: DWORD NonCachedWrites*: DWORD NonCachedWriteBytes*: DWORD NonCachedDiskReads*: DWORD NonCachedDiskWrites*: DWORD PEXFAT_STATISTICS* = ptr EXFAT_STATISTICS NTFS_STATISTICS_MftWritesUserLevel* {.pure.} = object Write*: WORD Create*: WORD SetInfo*: WORD Flush*: WORD NTFS_STATISTICS_Mft2WritesUserLevel* {.pure.} = object Write*: WORD Create*: WORD SetInfo*: WORD Flush*: WORD NTFS_STATISTICS_BitmapWritesUserLevel* {.pure.} = object Write*: WORD Create*: WORD SetInfo*: WORD NTFS_STATISTICS_MftBitmapWritesUserLevel* {.pure.} = object Write*: WORD Create*: WORD SetInfo*: WORD Flush*: WORD NTFS_STATISTICS_Allocate* {.pure.} = object Calls*: DWORD Clusters*: DWORD Hints*: DWORD RunsReturned*: DWORD HintsHonored*: DWORD HintsClusters*: DWORD Cache*: DWORD CacheClusters*: DWORD CacheMiss*: DWORD CacheMissClusters*: DWORD NTFS_STATISTICS* {.pure.} = object LogFileFullExceptions*: DWORD OtherExceptions*: DWORD MftReads*: DWORD MftReadBytes*: DWORD MftWrites*: DWORD MftWriteBytes*: DWORD MftWritesUserLevel*: NTFS_STATISTICS_MftWritesUserLevel MftWritesFlushForLogFileFull*: WORD MftWritesLazyWriter*: WORD MftWritesUserRequest*: WORD Mft2Writes*: DWORD Mft2WriteBytes*: DWORD Mft2WritesUserLevel*: NTFS_STATISTICS_Mft2WritesUserLevel Mft2WritesFlushForLogFileFull*: WORD Mft2WritesLazyWriter*: WORD Mft2WritesUserRequest*: WORD RootIndexReads*: DWORD RootIndexReadBytes*: DWORD RootIndexWrites*: DWORD RootIndexWriteBytes*: DWORD BitmapReads*: DWORD BitmapReadBytes*: DWORD BitmapWrites*: DWORD BitmapWriteBytes*: DWORD BitmapWritesFlushForLogFileFull*: WORD BitmapWritesLazyWriter*: WORD BitmapWritesUserRequest*: WORD BitmapWritesUserLevel*: NTFS_STATISTICS_BitmapWritesUserLevel MftBitmapReads*: DWORD MftBitmapReadBytes*: DWORD MftBitmapWrites*: DWORD MftBitmapWriteBytes*: DWORD MftBitmapWritesFlushForLogFileFull*: WORD MftBitmapWritesLazyWriter*: WORD MftBitmapWritesUserRequest*: WORD MftBitmapWritesUserLevel*: NTFS_STATISTICS_MftBitmapWritesUserLevel UserIndexReads*: DWORD UserIndexReadBytes*: DWORD UserIndexWrites*: DWORD UserIndexWriteBytes*: DWORD LogFileReads*: DWORD LogFileReadBytes*: DWORD LogFileWrites*: DWORD LogFileWriteBytes*: DWORD Allocate*: NTFS_STATISTICS_Allocate PNTFS_STATISTICS* = ptr NTFS_STATISTICS FILE_OBJECTID_BUFFER_UNION1_STRUCT1* {.pure.} = object BirthVolumeId*: array[16, BYTE] BirthObjectId*: array[16, BYTE] DomainId*: array[16, BYTE] FILE_OBJECTID_BUFFER_UNION1* {.pure, union.} = object struct1*: FILE_OBJECTID_BUFFER_UNION1_STRUCT1 ExtendedInfo*: array[48, BYTE] FILE_OBJECTID_BUFFER* {.pure.} = object ObjectId*: array[16, BYTE] union1*: FILE_OBJECTID_BUFFER_UNION1 PFILE_OBJECTID_BUFFER* = ptr FILE_OBJECTID_BUFFER FILE_SET_SPARSE_BUFFER* {.pure.} = object SetSparse*: BOOLEAN PFILE_SET_SPARSE_BUFFER* = ptr FILE_SET_SPARSE_BUFFER FILE_ZERO_DATA_INFORMATION* {.pure.} = object FileOffset*: LARGE_INTEGER BeyondFinalZero*: LARGE_INTEGER PFILE_ZERO_DATA_INFORMATION* = ptr FILE_ZERO_DATA_INFORMATION FILE_ALLOCATED_RANGE_BUFFER* {.pure.} = object FileOffset*: LARGE_INTEGER Length*: LARGE_INTEGER PFILE_ALLOCATED_RANGE_BUFFER* = ptr FILE_ALLOCATED_RANGE_BUFFER ENCRYPTION_BUFFER* {.pure.} = object EncryptionOperation*: DWORD Private*: array[1, BYTE] PENCRYPTION_BUFFER* = ptr ENCRYPTION_BUFFER DECRYPTION_STATUS_BUFFER* {.pure.} = object NoEncryptedStreams*: BOOLEAN PDECRYPTION_STATUS_BUFFER* = ptr DECRYPTION_STATUS_BUFFER REQUEST_RAW_ENCRYPTED_DATA* {.pure.} = object FileOffset*: LONGLONG Length*: DWORD PREQUEST_RAW_ENCRYPTED_DATA* = ptr REQUEST_RAW_ENCRYPTED_DATA ENCRYPTED_DATA_INFO* {.pure.} = object StartingFileOffset*: DWORDLONG OutputBufferOffset*: DWORD BytesWithinFileSize*: DWORD BytesWithinValidDataLength*: DWORD CompressionFormat*: WORD DataUnitShift*: BYTE ChunkShift*: BYTE ClusterShift*: BYTE EncryptionFormat*: BYTE NumberOfDataBlocks*: WORD DataBlockSize*: array[ANYSIZE_ARRAY, DWORD] PENCRYPTED_DATA_INFO* = ptr ENCRYPTED_DATA_INFO PLEX_READ_DATA_REQUEST* {.pure.} = object ByteOffset*: LARGE_INTEGER ByteLength*: DWORD PlexNumber*: DWORD PPLEX_READ_DATA_REQUEST* = ptr PLEX_READ_DATA_REQUEST SI_COPYFILE* {.pure.} = object SourceFileNameLength*: DWORD DestinationFileNameLength*: DWORD Flags*: DWORD FileNameBuffer*: array[1, WCHAR] PSI_COPYFILE* = ptr SI_COPYFILE STORAGE_DESCRIPTOR_HEADER* {.pure.} = object Version*: DWORD Size*: DWORD PSTORAGE_DESCRIPTOR_HEADER* = ptr STORAGE_DESCRIPTOR_HEADER STORAGE_PROPERTY_QUERY* {.pure.} = object PropertyId*: STORAGE_PROPERTY_ID QueryType*: STORAGE_QUERY_TYPE AdditionalParameters*: array[1, BYTE] PSTORAGE_PROPERTY_QUERY* = ptr STORAGE_PROPERTY_QUERY STORAGE_DEVICE_DESCRIPTOR* {.pure.} = object Version*: DWORD Size*: DWORD DeviceType*: BYTE DeviceTypeModifier*: BYTE RemovableMedia*: BOOLEAN CommandQueueing*: BOOLEAN VendorIdOffset*: DWORD ProductIdOffset*: DWORD ProductRevisionOffset*: DWORD SerialNumberOffset*: DWORD BusType*: STORAGE_BUS_TYPE RawPropertiesLength*: DWORD RawDeviceProperties*: array[1, BYTE] PSTORAGE_DEVICE_DESCRIPTOR* = ptr STORAGE_DEVICE_DESCRIPTOR STORAGE_ADAPTER_DESCRIPTOR* {.pure.} = object Version*: DWORD Size*: DWORD MaximumTransferLength*: DWORD MaximumPhysicalPages*: DWORD AlignmentMask*: DWORD AdapterUsesPio*: BOOLEAN AdapterScansDown*: BOOLEAN CommandQueueing*: BOOLEAN AcceleratedTransfer*: BOOLEAN BusType*: BYTE BusMajorVersion*: WORD BusMinorVersion*: WORD PSTORAGE_ADAPTER_DESCRIPTOR* = ptr STORAGE_ADAPTER_DESCRIPTOR STORAGE_DEVICE_ID_DESCRIPTOR* {.pure.} = object Version*: DWORD Size*: DWORD NumberOfIdentifiers*: DWORD Identifiers*: array[1, BYTE] PSTORAGE_DEVICE_ID_DESCRIPTOR* = ptr STORAGE_DEVICE_ID_DESCRIPTOR VOLUME_GET_GPT_ATTRIBUTES_INFORMATION* {.pure.} = object GptAttributes*: ULONGLONG PVOLUME_GET_GPT_ATTRIBUTES_INFORMATION* = ptr VOLUME_GET_GPT_ATTRIBUTES_INFORMATION FILE_MAKE_COMPATIBLE_BUFFER* {.pure.} = object CloseDisc*: BOOLEAN PFILE_MAKE_COMPATIBLE_BUFFER* = ptr FILE_MAKE_COMPATIBLE_BUFFER FILE_SET_DEFECT_MGMT_BUFFER* {.pure.} = object Disable*: BOOLEAN PFILE_SET_DEFECT_MGMT_BUFFER* = ptr FILE_SET_DEFECT_MGMT_BUFFER FILE_QUERY_SPARING_BUFFER* {.pure.} = object SparingUnitBytes*: ULONG SoftwareSparing*: BOOLEAN TotalSpareBlocks*: ULONG FreeSpareBlocks*: ULONG PFILE_QUERY_SPARING_BUFFER* = ptr FILE_QUERY_SPARING_BUFFER FILE_QUERY_ON_DISK_VOL_INFO_BUFFER* {.pure.} = object DirectoryCount*: LARGE_INTEGER FileCount*: LARGE_INTEGER FsFormatMajVersion*: WORD FsFormatMinVersion*: WORD FsFormatName*: array[12, WCHAR] FormatTime*: LARGE_INTEGER LastUpdateTime*: LARGE_INTEGER CopyrightInfo*: array[34, WCHAR] AbstractInfo*: array[34, WCHAR] FormattingImplementationInfo*: array[34, WCHAR] LastModifyingImplementationInfo*: array[34, WCHAR] PFILE_QUERY_ON_DISK_VOL_INFO_BUFFER* = ptr FILE_QUERY_ON_DISK_VOL_INFO_BUFFER SHRINK_VOLUME_INFORMATION* {.pure.} = object ShrinkRequestType*: SHRINK_VOLUME_REQUEST_TYPES Flags*: DWORDLONG NewNumberOfSectors*: LONGLONG PSHRINK_VOLUME_INFORMATION* = ptr SHRINK_VOLUME_INFORMATION TXFS_MODIFY_RM* {.pure.} = object Flags*: ULONG LogContainerCountMax*: ULONG LogContainerCountMin*: ULONG LogContainerCount*: ULONG LogGrowthIncrement*: ULONG LogAutoShrinkPercentage*: ULONG Reserved*: ULONGLONG LoggingMode*: USHORT PTXFS_MODIFY_RM* = ptr TXFS_MODIFY_RM TXFS_QUERY_RM_INFORMATION* {.pure.} = object BytesRequired*: ULONG TailLsn*: ULONGLONG CurrentLsn*: ULONGLONG ArchiveTailLsn*: ULONGLONG LogContainerSize*: ULONGLONG HighestVirtualClock*: LARGE_INTEGER LogContainerCount*: ULONG LogContainerCountMax*: ULONG LogContainerCountMin*: ULONG LogGrowthIncrement*: ULONG LogAutoShrinkPercentage*: ULONG Flags*: ULONG LoggingMode*: USHORT Reserved*: USHORT RmState*: ULONG LogCapacity*: ULONGLONG LogFree*: ULONGLONG TopsSize*: ULONGLONG TopsUsed*: ULONGLONG TransactionCount*: ULONGLONG OnePCCount*: ULONGLONG TwoPCCount*: ULONGLONG NumberLogFileFull*: ULONGLONG OldestTransactionAge*: ULONGLONG RMName*: GUID TmLogPathOffset*: ULONG PTXFS_QUERY_RM_INFORMATION* = ptr TXFS_QUERY_RM_INFORMATION TXFS_ROLLFORWARD_REDO_INFORMATION* {.pure.} = object LastVirtualClock*: LARGE_INTEGER LastRedoLsn*: ULONGLONG HighestRecoveryLsn*: ULONGLONG Flags*: ULONG PTXFS_ROLLFORWARD_REDO_INFORMATION* = ptr TXFS_ROLLFORWARD_REDO_INFORMATION TXFS_START_RM_INFORMATION* {.pure.} = object Flags*: ULONG LogContainerSize*: ULONGLONG LogContainerCountMin*: ULONG LogContainerCountMax*: ULONG LogGrowthIncrement*: ULONG LogAutoShrinkPercentage*: ULONG TmLogPathOffset*: ULONG TmLogPathLength*: USHORT LoggingMode*: USHORT LogPathLength*: USHORT Reserved*: USHORT LogPath*: array[1, WCHAR] PTXFS_START_RM_INFORMATION* = ptr TXFS_START_RM_INFORMATION TXFS_GET_METADATA_INFO_OUT_TxfFileId* {.pure.} = object LowPart*: LONGLONG HighPart*: LONGLONG TXFS_GET_METADATA_INFO_OUT* {.pure.} = object TxfFileId*: TXFS_GET_METADATA_INFO_OUT_TxfFileId LockingTransaction*: GUID LastLsn*: ULONGLONG TransactionState*: ULONG PTXFS_GET_METADATA_INFO_OUT* = ptr TXFS_GET_METADATA_INFO_OUT TXFS_LIST_TRANSACTION_LOCKED_FILES_ENTRY* {.pure.} = object Offset*: ULONGLONG NameFlags*: ULONG FileId*: LONGLONG Reserved1*: ULONG Reserved2*: ULONG Reserved3*: LONGLONG FileName*: array[1, WCHAR] PTXFS_LIST_TRANSACTION_LOCKED_FILES_ENTRY* = ptr TXFS_LIST_TRANSACTION_LOCKED_FILES_ENTRY TXFS_LIST_TRANSACTION_LOCKED_FILES* {.pure.} = object KtmTransaction*: GUID NumberOfFiles*: ULONGLONG BufferSizeRequired*: ULONGLONG Offset*: ULONGLONG PTXFS_LIST_TRANSACTION_LOCKED_FILES* = ptr TXFS_LIST_TRANSACTION_LOCKED_FILES TXFS_LIST_TRANSACTIONS_ENTRY* {.pure.} = object TransactionId*: GUID TransactionState*: ULONG Reserved1*: ULONG Reserved2*: ULONG Reserved3*: LONGLONG PTXFS_LIST_TRANSACTIONS_ENTRY* = ptr TXFS_LIST_TRANSACTIONS_ENTRY TXFS_LIST_TRANSACTIONS* {.pure.} = object NumberOfTransactions*: ULONGLONG BufferSizeRequired*: ULONGLONG PTXFS_LIST_TRANSACTIONS* = ptr TXFS_LIST_TRANSACTIONS TXFS_READ_BACKUP_INFORMATION_OUT_UNION1* {.pure, union.} = object BufferLength*: ULONG Buffer*: UCHAR TXFS_READ_BACKUP_INFORMATION_OUT* {.pure.} = object union1*: TXFS_READ_BACKUP_INFORMATION_OUT_UNION1 PTXFS_READ_BACKUP_INFORMATION_OUT* = ptr TXFS_READ_BACKUP_INFORMATION_OUT TXFS_WRITE_BACKUP_INFORMATION* {.pure.} = object Buffer*: UCHAR PTXFS_WRITE_BACKUP_INFORMATION* = ptr TXFS_WRITE_BACKUP_INFORMATION TXFS_GET_TRANSACTED_VERSION* {.pure.} = object ThisBaseVersion*: ULONG LatestVersion*: ULONG ThisMiniVersion*: USHORT FirstMiniVersion*: USHORT LatestMiniVersion*: USHORT PTXFS_GET_TRANSACTED_VERSION* = ptr TXFS_GET_TRANSACTED_VERSION TXFS_SAVEPOINT_INFORMATION* {.pure.} = object KtmTransaction*: HANDLE ActionCode*: ULONG SavepointId*: ULONG PTXFS_SAVEPOINT_INFORMATION* = ptr TXFS_SAVEPOINT_INFORMATION TXFS_CREATE_MINIVERSION_INFO* {.pure.} = object StructureVersion*: USHORT StructureLength*: USHORT BaseVersion*: ULONG MiniVersion*: USHORT PTXFS_CREATE_MINIVERSION_INFO* = ptr TXFS_CREATE_MINIVERSION_INFO TXFS_TRANSACTION_ACTIVE_INFO* {.pure.} = object TransactionsActiveAtSnapshot*: WINBOOL PTXFS_TRANSACTION_ACTIVE_INFO* = ptr TXFS_TRANSACTION_ACTIVE_INFO STORAGE_WRITE_CACHE_PROPERTY* {.pure.} = object Version*: DWORD Size*: DWORD WriteCacheType*: WRITE_CACHE_TYPE WriteCacheEnabled*: WRITE_CACHE_ENABLE WriteCacheChangeable*: WRITE_CACHE_CHANGE WriteThroughSupported*: WRITE_THROUGH FlushCacheSupported*: BOOLEAN UserDefinedPowerProtection*: BOOLEAN NVCacheEnabled*: BOOLEAN PSTORAGE_WRITE_CACHE_PROPERTY* = ptr STORAGE_WRITE_CACHE_PROPERTY STORAGE_MINIPORT_DESCRIPTOR* {.pure.} = object Version*: DWORD Size*: DWORD Portdriver*: STORAGE_PORT_CODE_SET LUNResetSupported*: BOOLEAN TargetResetSupported*: BOOLEAN PSTORAGE_MINIPORT_DESCRIPTOR* = ptr STORAGE_MINIPORT_DESCRIPTOR STORAGE_ACCESS_ALIGNMENT_DESCRIPTOR* {.pure.} = object Version*: DWORD Size*: DWORD BytesPerCacheLine*: DWORD BytesOffsetForCacheAlignment*: DWORD BytesPerLogicalSector*: DWORD BytesPerPhysicalSector*: DWORD BytesOffsetForSectorAlignment*: DWORD PSTORAGE_ACCESS_ALIGNMENT_DESCRIPTOR* = ptr STORAGE_ACCESS_ALIGNMENT_DESCRIPTOR DEVICE_SEEK_PENALTY_DESCRIPTOR* {.pure.} = object Version*: DWORD Size*: DWORD IncursSeekPenalty*: BOOLEAN PDEVICE_SEEK_PENALTY_DESCRIPTOR* = ptr DEVICE_SEEK_PENALTY_DESCRIPTOR DEVICE_TRIM_DESCRIPTOR* {.pure.} = object Version*: DWORD Size*: DWORD TrimEnabled*: BOOLEAN PDEVICE_TRIM_DESCRIPTOR* = ptr DEVICE_TRIM_DESCRIPTOR REQUEST_OPLOCK_INPUT_BUFFER* {.pure.} = object StructureVersion*: WORD StructureLength*: WORD RequestedOplockLevel*: DWORD Flags*: DWORD PREQUEST_OPLOCK_INPUT_BUFFER* = ptr REQUEST_OPLOCK_INPUT_BUFFER REQUEST_OPLOCK_OUTPUT_BUFFER* {.pure.} = object StructureVersion*: WORD StructureLength*: WORD OriginalOplockLevel*: DWORD NewOplockLevel*: DWORD Flags*: DWORD AccessMode*: ACCESS_MASK ShareMode*: WORD PREQUEST_OPLOCK_OUTPUT_BUFFER* = ptr REQUEST_OPLOCK_OUTPUT_BUFFER BOOT_AREA_INFO_BootSectors* {.pure.} = object Offset*: LARGE_INTEGER BOOT_AREA_INFO* {.pure.} = object BootSectorCount*: ULONG BootSectors*: array[2, BOOT_AREA_INFO_BootSectors] PBOOT_AREA_INFO* = ptr BOOT_AREA_INFO RETRIEVAL_POINTER_BASE* {.pure.} = object FileAreaOffset*: LARGE_INTEGER PRETRIEVAL_POINTER_BASE* = ptr RETRIEVAL_POINTER_BASE FILE_SYSTEM_RECOGNITION_INFORMATION* {.pure.} = object FileSystem*: array[9, CHAR] PFILE_SYSTEM_RECOGNITION_INFORMATION* = ptr FILE_SYSTEM_RECOGNITION_INFORMATION LOOKUP_STREAM_FROM_CLUSTER_INPUT* {.pure.} = object Flags*: DWORD NumberOfClusters*: DWORD Cluster*: array[1, LARGE_INTEGER] PLOOKUP_STREAM_FROM_CLUSTER_INPUT* = ptr LOOKUP_STREAM_FROM_CLUSTER_INPUT LOOKUP_STREAM_FROM_CLUSTER_OUTPUT* {.pure.} = object Offset*: DWORD NumberOfMatches*: DWORD BufferSizeRequired*: DWORD PLOOKUP_STREAM_FROM_CLUSTER_OUTPUT* = ptr LOOKUP_STREAM_FROM_CLUSTER_OUTPUT LOOKUP_STREAM_FROM_CLUSTER_ENTRY* {.pure.} = object OffsetToNext*: DWORD Flags*: DWORD Reserved*: LARGE_INTEGER Cluster*: LARGE_INTEGER FileName*: array[1, WCHAR] PLOOKUP_STREAM_FROM_CLUSTER_ENTRY* = ptr LOOKUP_STREAM_FROM_CLUSTER_ENTRY DISK_EXTENT* {.pure.} = object DiskNumber*: DWORD StartingOffset*: LARGE_INTEGER ExtentLength*: LARGE_INTEGER PDISK_EXTENT* = ptr DISK_EXTENT VOLUME_DISK_EXTENTS* {.pure.} = object NumberOfDiskExtents*: DWORD Extents*: array[1, DISK_EXTENT] PVOLUME_DISK_EXTENTS* = ptr VOLUME_DISK_EXTENTS const GUID_DEVINTERFACE_DISK* = DEFINE_GUID("53f56307-b6bf-11d0-94f2-00a0c91efb8b") GUID_DEVINTERFACE_CDROM* = DEFINE_GUID("53f56308-b6bf-11d0-94f2-00a0c91efb8b") GUID_DEVINTERFACE_PARTITION* = DEFINE_GUID("53f5630a-b6bf-11d0-94f2-00a0c91efb8b") GUID_DEVINTERFACE_TAPE* = DEFINE_GUID("53f5630b-b6bf-11d0-94f2-00a0c91efb8b") GUID_DEVINTERFACE_WRITEONCEDISK* = DEFINE_GUID("53f5630c-b6bf-11d0-94f2-00a0c91efb8b") GUID_DEVINTERFACE_VOLUME* = DEFINE_GUID("53f5630d-b6bf-11d0-94f2-00a0c91efb8b") GUID_DEVINTERFACE_MEDIUMCHANGER* = DEFINE_GUID("53f56310-b6bf-11d0-94f2-00a0c91efb8b") GUID_DEVINTERFACE_FLOPPY* = DEFINE_GUID("53f56311-b6bf-11d0-94f2-00a0c91efb8b") GUID_DEVINTERFACE_CDCHANGER* = DEFINE_GUID("53f56312-b6bf-11d0-94f2-00a0c91efb8b") GUID_DEVINTERFACE_STORAGEPORT* = DEFINE_GUID("2accfe60-c130-11d2-b082-00a0c91efb8b") GUID_DEVINTERFACE_COMPORT* = DEFINE_GUID("86e0d1e0-8089-11d0-9ce4-08003e301f73") GUID_DEVINTERFACE_SERENUM_BUS_ENUMERATOR* = DEFINE_GUID("4d36e978-e325-11ce-bfc1-08002be10318") diskClassGuid* = GUID_DEVINTERFACE_DISK cdRomClassGuid* = GUID_DEVINTERFACE_CDROM partitionClassGuid* = GUID_DEVINTERFACE_PARTITION tapeClassGuid* = GUID_DEVINTERFACE_TAPE writeOnceDiskClassGuid* = GUID_DEVINTERFACE_WRITEONCEDISK volumeClassGuid* = GUID_DEVINTERFACE_VOLUME mediumChangerClassGuid* = GUID_DEVINTERFACE_MEDIUMCHANGER floppyClassGuid* = GUID_DEVINTERFACE_FLOPPY cdChangerClassGuid* = GUID_DEVINTERFACE_CDCHANGER storagePortClassGuid* = GUID_DEVINTERFACE_STORAGEPORT GUID_CLASS_COMPORT* = GUID_DEVINTERFACE_COMPORT GUID_SERENUM_BUS_ENUMERATOR* = GUID_DEVINTERFACE_SERENUM_BUS_ENUMERATOR FILE_DEVICE_BEEP* = 0x00000001 FILE_DEVICE_CD_ROM* = 0x00000002 FILE_DEVICE_CD_ROM_FILE_SYSTEM* = 0x00000003 FILE_DEVICE_CONTROLLER* = 0x00000004 FILE_DEVICE_DATALINK* = 0x00000005 FILE_DEVICE_DFS* = 0x00000006 FILE_DEVICE_DISK* = 0x00000007 FILE_DEVICE_DISK_FILE_SYSTEM* = 0x00000008 FILE_DEVICE_FILE_SYSTEM* = 0x00000009 FILE_DEVICE_INPORT_PORT* = 0x0000000a FILE_DEVICE_KEYBOARD* = 0x0000000b FILE_DEVICE_MAILSLOT* = 0x0000000c FILE_DEVICE_MIDI_IN* = 0x0000000d FILE_DEVICE_MIDI_OUT* = 0x0000000e FILE_DEVICE_MOUSE* = 0x0000000f FILE_DEVICE_MULTI_UNC_PROVIDER* = 0x00000010 FILE_DEVICE_NAMED_PIPE* = 0x00000011 FILE_DEVICE_NETWORK* = 0x00000012 FILE_DEVICE_NETWORK_BROWSER* = 0x00000013 FILE_DEVICE_NETWORK_FILE_SYSTEM* = 0x00000014 FILE_DEVICE_NULL* = 0x00000015 FILE_DEVICE_PARALLEL_PORT* = 0x00000016 FILE_DEVICE_PHYSICAL_NETCARD* = 0x00000017 FILE_DEVICE_PRINTER* = 0x00000018 FILE_DEVICE_SCANNER* = 0x00000019 FILE_DEVICE_SERIAL_MOUSE_PORT* = 0x0000001a FILE_DEVICE_SERIAL_PORT* = 0x0000001b FILE_DEVICE_SCREEN* = 0x0000001c FILE_DEVICE_SOUND* = 0x0000001d FILE_DEVICE_STREAMS* = 0x0000001e FILE_DEVICE_TAPE* = 0x0000001f FILE_DEVICE_TAPE_FILE_SYSTEM* = 0x00000020 FILE_DEVICE_TRANSPORT* = 0x00000021 FILE_DEVICE_UNKNOWN* = 0x00000022 FILE_DEVICE_VIDEO* = 0x00000023 FILE_DEVICE_VIRTUAL_DISK* = 0x00000024 FILE_DEVICE_WAVE_IN* = 0x00000025 FILE_DEVICE_WAVE_OUT* = 0x00000026 FILE_DEVICE_8042_PORT* = 0x00000027 FILE_DEVICE_NETWORK_REDIRECTOR* = 0x00000028 FILE_DEVICE_BATTERY* = 0x00000029 FILE_DEVICE_BUS_EXTENDER* = 0x0000002a FILE_DEVICE_MODEM* = 0x0000002b FILE_DEVICE_VDM* = 0x0000002c FILE_DEVICE_MASS_STORAGE* = 0x0000002d FILE_DEVICE_SMB* = 0x0000002e FILE_DEVICE_KS* = 0x0000002f FILE_DEVICE_CHANGER* = 0x00000030 FILE_DEVICE_SMARTCARD* = 0x00000031 FILE_DEVICE_ACPI* = 0x00000032 FILE_DEVICE_DVD* = 0x00000033 FILE_DEVICE_FULLSCREEN_VIDEO* = 0x00000034 FILE_DEVICE_DFS_FILE_SYSTEM* = 0x00000035 FILE_DEVICE_DFS_VOLUME* = 0x00000036 FILE_DEVICE_SERENUM* = 0x00000037 FILE_DEVICE_TERMSRV* = 0x00000038 FILE_DEVICE_KSEC* = 0x00000039 FILE_DEVICE_FIPS* = 0x0000003A FILE_DEVICE_INFINIBAND* = 0x0000003B METHOD_BUFFERED* = 0 METHOD_IN_DIRECT* = 1 METHOD_OUT_DIRECT* = 2 METHOD_NEITHER* = 3 METHOD_DIRECT_TO_HARDWARE* = METHOD_IN_DIRECT METHOD_DIRECT_FROM_HARDWARE* = METHOD_OUT_DIRECT FILE_ANY_ACCESS* = 0 FILE_SPECIAL_ACCESS* = FILE_ANY_ACCESS FILE_READ_ACCESS* = 0x0001 FILE_WRITE_ACCESS* = 0x0002 IOCTL_STORAGE_BASE* = FILE_DEVICE_MASS_STORAGE template CTL_CODE*(t: untyped, f: untyped, m: untyped, a:untyped): untyped = (t shl 16) or (a shl 14) or (f shl 2) or m const IOCTL_STORAGE_CHECK_VERIFY* = CTL_CODE(IOCTL_STORAGE_BASE,0x0200,METHOD_BUFFERED,FILE_READ_ACCESS) IOCTL_STORAGE_CHECK_VERIFY2* = CTL_CODE(IOCTL_STORAGE_BASE,0x0200,METHOD_BUFFERED,FILE_ANY_ACCESS) IOCTL_STORAGE_MEDIA_REMOVAL* = CTL_CODE(IOCTL_STORAGE_BASE,0x0201,METHOD_BUFFERED,FILE_READ_ACCESS) IOCTL_STORAGE_EJECT_MEDIA* = CTL_CODE(IOCTL_STORAGE_BASE,0x0202,METHOD_BUFFERED,FILE_READ_ACCESS) IOCTL_STORAGE_LOAD_MEDIA* = CTL_CODE(IOCTL_STORAGE_BASE,0x0203,METHOD_BUFFERED,FILE_READ_ACCESS) IOCTL_STORAGE_LOAD_MEDIA2* = CTL_CODE(IOCTL_STORAGE_BASE,0x0203,METHOD_BUFFERED,FILE_ANY_ACCESS) IOCTL_STORAGE_RESERVE* = CTL_CODE(IOCTL_STORAGE_BASE,0x0204,METHOD_BUFFERED,FILE_READ_ACCESS) IOCTL_STORAGE_RELEASE* = CTL_CODE(IOCTL_STORAGE_BASE,0x0205,METHOD_BUFFERED,FILE_READ_ACCESS) IOCTL_STORAGE_FIND_NEW_DEVICES* = CTL_CODE(IOCTL_STORAGE_BASE,0x0206,METHOD_BUFFERED,FILE_READ_ACCESS) IOCTL_STORAGE_EJECTION_CONTROL* = CTL_CODE(IOCTL_STORAGE_BASE,0x0250,METHOD_BUFFERED,FILE_ANY_ACCESS) IOCTL_STORAGE_MCN_CONTROL* = CTL_CODE(IOCTL_STORAGE_BASE,0x0251,METHOD_BUFFERED,FILE_ANY_ACCESS) IOCTL_STORAGE_GET_MEDIA_TYPES* = CTL_CODE(IOCTL_STORAGE_BASE,0x0300,METHOD_BUFFERED,FILE_ANY_ACCESS) IOCTL_STORAGE_GET_MEDIA_TYPES_EX* = CTL_CODE(IOCTL_STORAGE_BASE,0x0301,METHOD_BUFFERED,FILE_ANY_ACCESS) IOCTL_STORAGE_GET_MEDIA_SERIAL_NUMBER* = CTL_CODE(IOCTL_STORAGE_BASE,0x0304,METHOD_BUFFERED,FILE_ANY_ACCESS) IOCTL_STORAGE_GET_HOTPLUG_INFO* = CTL_CODE(IOCTL_STORAGE_BASE,0x0305,METHOD_BUFFERED,FILE_ANY_ACCESS) IOCTL_STORAGE_SET_HOTPLUG_INFO* = CTL_CODE(IOCTL_STORAGE_BASE,0x0306,METHOD_BUFFERED,FILE_READ_ACCESS or FILE_WRITE_ACCESS) IOCTL_STORAGE_RESET_BUS* = CTL_CODE(IOCTL_STORAGE_BASE,0x0400,METHOD_BUFFERED,FILE_READ_ACCESS) IOCTL_STORAGE_RESET_DEVICE* = CTL_CODE(IOCTL_STORAGE_BASE,0x0401,METHOD_BUFFERED,FILE_READ_ACCESS) IOCTL_STORAGE_BREAK_RESERVATION* = CTL_CODE(IOCTL_STORAGE_BASE,0x0405,METHOD_BUFFERED,FILE_READ_ACCESS) IOCTL_STORAGE_GET_DEVICE_NUMBER* = CTL_CODE(IOCTL_STORAGE_BASE,0x0420,METHOD_BUFFERED,FILE_ANY_ACCESS) IOCTL_STORAGE_PREDICT_FAILURE* = CTL_CODE(IOCTL_STORAGE_BASE,0x0440,METHOD_BUFFERED,FILE_ANY_ACCESS) IOCTL_STORAGE_READ_CAPACITY* = CTL_CODE(IOCTL_STORAGE_BASE,0x0450,METHOD_BUFFERED,FILE_READ_ACCESS) OBSOLETE_IOCTL_STORAGE_RESET_BUS* = CTL_CODE(IOCTL_STORAGE_BASE,0x0400,METHOD_BUFFERED,FILE_READ_ACCESS or FILE_WRITE_ACCESS) OBSOLETE_IOCTL_STORAGE_RESET_DEVICE* = CTL_CODE(IOCTL_STORAGE_BASE,0x0401,METHOD_BUFFERED,FILE_READ_ACCESS or FILE_WRITE_ACCESS) IOCTL_STORAGE_MANAGE_DATA_SET_ATTRIBUTES* = CTL_CODE(IOCTL_STORAGE_BASE, 0x0501, METHOD_BUFFERED, FILE_WRITE_ACCESS) DeviceDsmActionFlag_NonDestructive* = 0x80000000'i32 DeviceDsmAction_None* = 0 DeviceDsmAction_Trim* = 1 DeviceDsmAction_Notification* = 2 or DeviceDsmActionFlag_NonDestructive DEVICE_DSM_FLAG_ENTIRE_DATA_SET_RANGE* = 0x00000001 RECOVERED_WRITES_VALID* = 0x00000001 UNRECOVERED_WRITES_VALID* = 0x00000002 RECOVERED_READS_VALID* = 0x00000004 UNRECOVERED_READS_VALID* = 0x00000008 WRITE_COMPRESSION_INFO_VALID* = 0x00000010 READ_COMPRESSION_INFO_VALID* = 0x00000020 TAPE_RETURN_STATISTICS* = 0 TAPE_RETURN_ENV_INFO* = 1 TAPE_RESET_STATISTICS* = 2 DDS_4mm* = 0x20 miniQic* = 0x21 travan* = 0x22 QIC* = 0x23 MP_8mm* = 0x24 AME_8mm* = 0x25 AIT1_8mm* = 0x26 DLT* = 0x27 NCTP* = 0x28 IBM_3480* = 0x29 IBM_3490E* = 0x2A IBM_Magstar_3590* = 0x2B IBM_Magstar_MP* = 0x2C STK_DATA_D3* = 0x2D SONY_DTF* = 0x2E DV_6mm* = 0x2F DMI* = 0x3 SONY_D2* = 0x4 CLEANER_CARTRIDGE* = 0x5 CD_ROM* = 0x6 CD_R* = 0x7 CD_RW* = 0x8 DVD_ROM* = 0x9 DVD_R* = 0xA DVD_RW* = 0xB MO_3_RW* = 0xC MO_5_WO* = 0xD MO_5_RW* = 0xE MO_5_LIMDOW* = 0xF PC_5_WO* = 0x1 PC_5_RW* = 0x2 PD_5_RW* = 0x3 ABL_5_WO* = 0x4 PINNACLE_APEX_5_RW* = 0x5 SONY_12_WO* = 0x6 PHILIPS_12_WO* = 0x7 HITACHI_12_WO* = 0x8 CYGNET_12_WO* = 0x9 KODAK_14_WO* = 0xA MO_NFR_525* = 0xB NIKON_12_RW* = 0xC IOMEGA_ZIP* = 0xD IOMEGA_JAZ* = 0xE SYQUEST_EZ135* = 0xF SYQUEST_EZFLYER* = 0x1 SYQUEST_SYJET* = 0x2 AVATAR_F2* = 0x3 MP2_8mm* = 0x4 DST_S* = 0x5 DST_M* = 0x6 DST_L* = 0x7 VXATape_1* = 0x8 VXATape_2* = 0x9 STK_9840* = 0xA LTO_Ultrium* = 0xB LTO_Accelis* = 0xC DVD_RAM* = 0xD AIT_8mm* = 0xE ADR_1* = 0xF ADR_2* = 0x1 STK_9940* = 0x2 SAIT* = 0x3 vXATape* = 0x4 MEDIA_ERASEABLE* = 0x00000001 MEDIA_WRITE_ONCE* = 0x00000002 MEDIA_READ_ONLY* = 0x00000004 MEDIA_READ_WRITE* = 0x00000008 MEDIA_WRITE_PROTECTED* = 0x00000100 MEDIA_CURRENTLY_MOUNTED* = 0x80000000'i32 busTypeUnknown* = 0x00 busTypeScsi* = 0x1 busTypeAtapi* = 0x2 busTypeAta* = 0x3 busType1394* = 0x4 busTypeSsa* = 0x5 busTypeFibre* = 0x6 busTypeUsb* = 0x7 busTypeRAID* = 0x8 busTypeiScsi* = 0x9 busTypeSas* = 0xA busTypeSata* = 0xB busTypeSd* = 0xC busTypeMmc* = 0xD busTypeVirtual* = 0xE busTypeFileBackedVirtual* = 0xF busTypeMax* = 0x1 busTypeMaxReserved* = 0x7F IOCTL_DISK_BASE* = FILE_DEVICE_DISK IOCTL_DISK_GET_DRIVE_GEOMETRY* = CTL_CODE(IOCTL_DISK_BASE,0x0000,METHOD_BUFFERED,FILE_ANY_ACCESS) IOCTL_DISK_GET_PARTITION_INFO* = CTL_CODE(IOCTL_DISK_BASE,0x0001,METHOD_BUFFERED,FILE_READ_ACCESS) IOCTL_DISK_SET_PARTITION_INFO* = CTL_CODE(IOCTL_DISK_BASE,0x0002,METHOD_BUFFERED,FILE_READ_ACCESS or FILE_WRITE_ACCESS) IOCTL_DISK_GET_DRIVE_LAYOUT* = CTL_CODE(IOCTL_DISK_BASE,0x0003,METHOD_BUFFERED,FILE_READ_ACCESS) IOCTL_DISK_SET_DRIVE_LAYOUT* = CTL_CODE(IOCTL_DISK_BASE,0x0004,METHOD_BUFFERED,FILE_READ_ACCESS or FILE_WRITE_ACCESS) IOCTL_DISK_VERIFY* = CTL_CODE(IOCTL_DISK_BASE,0x0005,METHOD_BUFFERED,FILE_ANY_ACCESS) IOCTL_DISK_FORMAT_TRACKS* = CTL_CODE(IOCTL_DISK_BASE,0x0006,METHOD_BUFFERED,FILE_READ_ACCESS or FILE_WRITE_ACCESS) IOCTL_DISK_REASSIGN_BLOCKS* = CTL_CODE(IOCTL_DISK_BASE,0x0007,METHOD_BUFFERED,FILE_READ_ACCESS or FILE_WRITE_ACCESS) IOCTL_DISK_PERFORMANCE* = CTL_CODE(IOCTL_DISK_BASE,0x0008,METHOD_BUFFERED,FILE_ANY_ACCESS) IOCTL_DISK_IS_WRITABLE* = CTL_CODE(IOCTL_DISK_BASE,0x0009,METHOD_BUFFERED,FILE_ANY_ACCESS) IOCTL_DISK_LOGGING* = CTL_CODE(IOCTL_DISK_BASE,0x000a,METHOD_BUFFERED,FILE_ANY_ACCESS) IOCTL_DISK_FORMAT_TRACKS_EX* = CTL_CODE(IOCTL_DISK_BASE,0x000b,METHOD_BUFFERED,FILE_READ_ACCESS or FILE_WRITE_ACCESS) IOCTL_DISK_HISTOGRAM_STRUCTURE* = CTL_CODE(IOCTL_DISK_BASE,0x000c,METHOD_BUFFERED,FILE_ANY_ACCESS) IOCTL_DISK_HISTOGRAM_DATA* = CTL_CODE(IOCTL_DISK_BASE,0x000d,METHOD_BUFFERED,FILE_ANY_ACCESS) IOCTL_DISK_HISTOGRAM_RESET* = CTL_CODE(IOCTL_DISK_BASE,0x000e,METHOD_BUFFERED,FILE_ANY_ACCESS) IOCTL_DISK_REQUEST_STRUCTURE* = CTL_CODE(IOCTL_DISK_BASE,0x000f,METHOD_BUFFERED,FILE_ANY_ACCESS) IOCTL_DISK_REQUEST_DATA* = CTL_CODE(IOCTL_DISK_BASE,0x0010,METHOD_BUFFERED,FILE_ANY_ACCESS) IOCTL_DISK_PERFORMANCE_OFF* = CTL_CODE(IOCTL_DISK_BASE,0x0018,METHOD_BUFFERED,FILE_ANY_ACCESS) IOCTL_DISK_CONTROLLER_NUMBER* = CTL_CODE(IOCTL_DISK_BASE,0x0011,METHOD_BUFFERED,FILE_ANY_ACCESS) SMART_GET_VERSION* = CTL_CODE(IOCTL_DISK_BASE,0x0020,METHOD_BUFFERED,FILE_READ_ACCESS) SMART_SEND_DRIVE_COMMAND* = CTL_CODE(IOCTL_DISK_BASE,0x0021,METHOD_BUFFERED,FILE_READ_ACCESS or FILE_WRITE_ACCESS) SMART_RCV_DRIVE_DATA* = CTL_CODE(IOCTL_DISK_BASE,0x0022,METHOD_BUFFERED,FILE_READ_ACCESS or FILE_WRITE_ACCESS) IOCTL_DISK_GET_PARTITION_INFO_EX* = CTL_CODE(IOCTL_DISK_BASE,0x0012,METHOD_BUFFERED,FILE_ANY_ACCESS) IOCTL_DISK_SET_PARTITION_INFO_EX* = CTL_CODE(IOCTL_DISK_BASE,0x0013,METHOD_BUFFERED,FILE_READ_ACCESS or FILE_WRITE_ACCESS) IOCTL_DISK_GET_DRIVE_LAYOUT_EX* = CTL_CODE(IOCTL_DISK_BASE,0x0014,METHOD_BUFFERED,FILE_ANY_ACCESS) IOCTL_DISK_SET_DRIVE_LAYOUT_EX* = CTL_CODE(IOCTL_DISK_BASE,0x0015,METHOD_BUFFERED,FILE_READ_ACCESS or FILE_WRITE_ACCESS) IOCTL_DISK_CREATE_DISK* = CTL_CODE(IOCTL_DISK_BASE,0x0016,METHOD_BUFFERED,FILE_READ_ACCESS or FILE_WRITE_ACCESS) IOCTL_DISK_GET_LENGTH_INFO* = CTL_CODE(IOCTL_DISK_BASE,0x0017,METHOD_BUFFERED,FILE_READ_ACCESS) IOCTL_DISK_GET_DRIVE_GEOMETRY_EX* = CTL_CODE(IOCTL_DISK_BASE,0x0028,METHOD_BUFFERED,FILE_ANY_ACCESS) IOCTL_DISK_REASSIGN_BLOCKS_EX* = CTL_CODE(IOCTL_DISK_BASE,0x0029,METHOD_BUFFERED,FILE_READ_ACCESS or FILE_WRITE_ACCESS) IOCTL_DISK_UPDATE_DRIVE_SIZE* = CTL_CODE(IOCTL_DISK_BASE,0x0032,METHOD_BUFFERED,FILE_READ_ACCESS or FILE_WRITE_ACCESS) IOCTL_DISK_GROW_PARTITION* = CTL_CODE(IOCTL_DISK_BASE,0x0034,METHOD_BUFFERED,FILE_READ_ACCESS or FILE_WRITE_ACCESS) IOCTL_DISK_GET_CACHE_INFORMATION* = CTL_CODE(IOCTL_DISK_BASE,0x0035,METHOD_BUFFERED,FILE_READ_ACCESS) IOCTL_DISK_SET_CACHE_INFORMATION* = CTL_CODE(IOCTL_DISK_BASE,0x0036,METHOD_BUFFERED,FILE_READ_ACCESS or FILE_WRITE_ACCESS) OBSOLETE_DISK_GET_WRITE_CACHE_STATE* = CTL_CODE(IOCTL_DISK_BASE,0x0037,METHOD_BUFFERED,FILE_READ_ACCESS) IOCTL_DISK_DELETE_DRIVE_LAYOUT* = CTL_CODE(IOCTL_DISK_BASE,0x0040,METHOD_BUFFERED,FILE_READ_ACCESS or FILE_WRITE_ACCESS) IOCTL_DISK_UPDATE_PROPERTIES* = CTL_CODE(IOCTL_DISK_BASE,0x0050,METHOD_BUFFERED,FILE_ANY_ACCESS) IOCTL_DISK_RESET_SNAPSHOT_INFO* = CTL_CODE(IOCTL_DISK_BASE,0x0084,METHOD_BUFFERED,FILE_READ_ACCESS or FILE_WRITE_ACCESS) IOCTL_DISK_FORMAT_DRIVE* = CTL_CODE(IOCTL_DISK_BASE,0x00f3,METHOD_BUFFERED,FILE_READ_ACCESS or FILE_WRITE_ACCESS) IOCTL_DISK_SENSE_DEVICE* = CTL_CODE(IOCTL_DISK_BASE,0x00f8,METHOD_BUFFERED,FILE_ANY_ACCESS) IOCTL_DISK_CHECK_VERIFY* = CTL_CODE(IOCTL_DISK_BASE,0x0200,METHOD_BUFFERED,FILE_READ_ACCESS) IOCTL_DISK_MEDIA_REMOVAL* = CTL_CODE(IOCTL_DISK_BASE,0x0201,METHOD_BUFFERED,FILE_READ_ACCESS) IOCTL_DISK_EJECT_MEDIA* = CTL_CODE(IOCTL_DISK_BASE,0x0202,METHOD_BUFFERED,FILE_READ_ACCESS) IOCTL_DISK_LOAD_MEDIA* = CTL_CODE(IOCTL_DISK_BASE,0x0203,METHOD_BUFFERED,FILE_READ_ACCESS) IOCTL_DISK_RESERVE* = CTL_CODE(IOCTL_DISK_BASE,0x0204,METHOD_BUFFERED,FILE_READ_ACCESS) IOCTL_DISK_RELEASE* = CTL_CODE(IOCTL_DISK_BASE,0x0205,METHOD_BUFFERED,FILE_READ_ACCESS) IOCTL_DISK_FIND_NEW_DEVICES* = CTL_CODE(IOCTL_DISK_BASE,0x0206,METHOD_BUFFERED,FILE_READ_ACCESS) IOCTL_DISK_GET_MEDIA_TYPES* = CTL_CODE(IOCTL_DISK_BASE,0x0300,METHOD_BUFFERED,FILE_ANY_ACCESS) IOCTL_STORAGE_QUERY_PROPERTY* = CTL_CODE(IOCTL_STORAGE_BASE, 0x0500, METHOD_BUFFERED, FILE_ANY_ACCESS) PARTITION_ENTRY_UNUSED* = 0x00 PARTITION_FAT_12* = 0x01 PARTITION_XENIX_1* = 0x02 PARTITION_XENIX_2* = 0x03 PARTITION_FAT_16* = 0x04 PARTITION_EXTENDED* = 0x05 PARTITION_HUGE* = 0x06 PARTITION_IFS* = 0x07 PARTITION_OS2BOOTMGR* = 0x0A PARTITION_FAT32* = 0x0B PARTITION_FAT32_XINT13* = 0x0C PARTITION_XINT13* = 0x0E PARTITION_XINT13_EXTENDED* = 0x0F PARTITION_PREP* = 0x41 PARTITION_LDM* = 0x42 PARTITION_UNIX* = 0x63 VALID_NTFT* = 0xC0 PARTITION_NTFT* = 0x80 unknown* = 0 F5_1Pt2_512* = 1 F3_1Pt44_512* = 2 F3_2Pt88_512* = 3 F3_20Pt8_512* = 4 F3_720_512* = 5 F5_360_512* = 6 F5_320_512* = 7 F5_320_1024* = 8 F5_180_512* = 9 F5_160_512* = 10 removableMedia* = 11 fixedMedia* = 12 F3_120M_512* = 13 F3_640_512* = 14 F5_640_512* = 15 F5_720_512* = 16 F3_1Pt2_512* = 17 F3_1Pt23_1024* = 18 F5_1Pt23_1024* = 19 F3_128Mb_512* = 20 F3_230Mb_512* = 21 F8_256_128* = 22 F3_200Mb_512* = 23 F3_240M_512* = 24 F3_32M_512* = 25 WMI_DISK_GEOMETRY_GUID* = DEFINE_GUID("25007f51-57c2-11d1-a528-00a0c9062910") PARTITION_STYLE_MBR* = 0 PARTITION_STYLE_GPT* = 1 PARTITION_STYLE_RAW* = 2 GPT_ATTRIBUTE_PLATFORM_REQUIRED* = 0x0000000000000001 GPT_BASIC_DATA_ATTRIBUTE_NO_DRIVE_LETTER* = 0x8000000000000000 GPT_BASIC_DATA_ATTRIBUTE_HIDDEN* = 0x4000000000000000 GPT_BASIC_DATA_ATTRIBUTE_SHADOW_COPY* = 0x2000000000000000 GPT_BASIC_DATA_ATTRIBUTE_READ_ONLY* = 0x1000000000000000 detectNone* = 0 detectInt13* = 1 detectExInt13* = 2 equalPriority* = 0 keepPrefetchedData* = 1 keepReadData* = 2 HIST_NO_OF_BUCKETS* = 24 DISK_LOGGING_START* = 0 DISK_LOGGING_STOP* = 1 DISK_LOGGING_DUMP* = 2 DISK_BINNING* = 3 requestSize* = 0 requestLocation* = 1 CAP_ATA_ID_CMD* = 1 CAP_ATAPI_ID_CMD* = 2 CAP_SMART_CMD* = 4 ATAPI_ID_CMD* = 0xA1 ID_CMD* = 0xEC SMART_CMD* = 0xB0 SMART_CYL_LOW* = 0x4F SMART_CYL_HI* = 0xC2 SMART_NO_ERROR* = 0 SMART_IDE_ERROR* = 1 SMART_INVALID_FLAG* = 2 SMART_INVALID_COMMAND* = 3 SMART_INVALID_BUFFER* = 4 SMART_INVALID_DRIVE* = 5 SMART_INVALID_IOCTL* = 6 SMART_ERROR_NO_MEM* = 7 SMART_INVALID_REGISTER* = 8 SMART_NOT_SUPPORTED* = 9 SMART_NO_IDE_DEVICE* = 10 SMART_OFFLINE_ROUTINE_OFFLINE* = 0 SMART_SHORT_SELFTEST_OFFLINE* = 1 SMART_EXTENDED_SELFTEST_OFFLINE* = 2 SMART_ABORT_OFFLINE_SELFTEST* = 127 SMART_SHORT_SELFTEST_CAPTIVE* = 129 SMART_EXTENDED_SELFTEST_CAPTIVE* = 130 READ_ATTRIBUTE_BUFFER_SIZE* = 512 IDENTIFY_BUFFER_SIZE* = 512 READ_THRESHOLD_BUFFER_SIZE* = 512 SMART_LOG_SECTOR_SIZE* = 512 READ_ATTRIBUTES* = 0xD0 READ_THRESHOLDS* = 0xD1 ENABLE_DISABLE_AUTOSAVE* = 0xD2 SAVE_ATTRIBUTE_VALUES* = 0xD3 EXECUTE_OFFLINE_DIAGS* = 0xD4 SMART_READ_LOG* = 0xD5 SMART_WRITE_LOG* = 0xd6 ENABLE_SMART* = 0xD8 DISABLE_SMART* = 0xD9 RETURN_SMART_STATUS* = 0xDA ENABLE_DISABLE_AUTO_OFFLINE* = 0xDB IOCTL_CHANGER_BASE* = FILE_DEVICE_CHANGER IOCTL_CHANGER_GET_PARAMETERS* = CTL_CODE(IOCTL_CHANGER_BASE,0x0000,METHOD_BUFFERED,FILE_READ_ACCESS) IOCTL_CHANGER_GET_STATUS* = CTL_CODE(IOCTL_CHANGER_BASE,0x0001,METHOD_BUFFERED,FILE_READ_ACCESS) IOCTL_CHANGER_GET_PRODUCT_DATA* = CTL_CODE(IOCTL_CHANGER_BASE,0x0002,METHOD_BUFFERED,FILE_READ_ACCESS) IOCTL_CHANGER_SET_ACCESS* = CTL_CODE(IOCTL_CHANGER_BASE,0x0004,METHOD_BUFFERED,FILE_READ_ACCESS or FILE_WRITE_ACCESS) IOCTL_CHANGER_GET_ELEMENT_STATUS* = CTL_CODE(IOCTL_CHANGER_BASE,0x0005,METHOD_BUFFERED,FILE_READ_ACCESS or FILE_WRITE_ACCESS) IOCTL_CHANGER_INITIALIZE_ELEMENT_STATUS* = CTL_CODE(IOCTL_CHANGER_BASE,0x0006,METHOD_BUFFERED,FILE_READ_ACCESS) IOCTL_CHANGER_SET_POSITION* = CTL_CODE(IOCTL_CHANGER_BASE,0x0007,METHOD_BUFFERED,FILE_READ_ACCESS) IOCTL_CHANGER_EXCHANGE_MEDIUM* = CTL_CODE(IOCTL_CHANGER_BASE,0x0008,METHOD_BUFFERED,FILE_READ_ACCESS) IOCTL_CHANGER_MOVE_MEDIUM* = CTL_CODE(IOCTL_CHANGER_BASE,0x0009,METHOD_BUFFERED,FILE_READ_ACCESS) IOCTL_CHANGER_REINITIALIZE_TRANSPORT* = CTL_CODE(IOCTL_CHANGER_BASE,0x000A,METHOD_BUFFERED,FILE_READ_ACCESS) IOCTL_CHANGER_QUERY_VOLUME_TAGS* = CTL_CODE(IOCTL_CHANGER_BASE,0x000B,METHOD_BUFFERED,FILE_READ_ACCESS or FILE_WRITE_ACCESS) allElements* = 0 changerTransport* = 1 changerSlot* = 2 changerIEPort* = 3 changerDrive* = 4 changerDoor* = 5 changerKeypad* = 6 changerMaxElement* = 7 CHANGER_BAR_CODE_SCANNER_INSTALLED* = 0x00000001 CHANGER_INIT_ELEM_STAT_WITH_RANGE* = 0x00000002 CHANGER_CLOSE_IEPORT* = 0x00000004 CHANGER_OPEN_IEPORT* = 0x00000008 CHANGER_STATUS_NON_VOLATILE* = 0x00000010 CHANGER_EXCHANGE_MEDIA* = 0x00000020 CHANGER_CLEANER_SLOT* = 0x00000040 CHANGER_LOCK_UNLOCK* = 0x00000080 CHANGER_CARTRIDGE_MAGAZINE* = 0x00000100 CHANGER_MEDIUM_FLIP* = 0x00000200 CHANGER_POSITION_TO_ELEMENT* = 0x00000400 CHANGER_REPORT_IEPORT_STATE* = 0x00000800 CHANGER_STORAGE_DRIVE* = 0x00001000 CHANGER_STORAGE_IEPORT* = 0x00002000 CHANGER_STORAGE_SLOT* = 0x00004000 CHANGER_STORAGE_TRANSPORT* = 0x00008000 CHANGER_DRIVE_CLEANING_REQUIRED* = 0x00010000 CHANGER_PREDISMOUNT_EJECT_REQUIRED* = 0x00020000 CHANGER_CLEANER_ACCESS_NOT_VALID* = 0x00040000 CHANGER_PREMOUNT_EJECT_REQUIRED* = 0x00080000 CHANGER_VOLUME_IDENTIFICATION* = 0x00100000 CHANGER_VOLUME_SEARCH* = 0x00200000 CHANGER_VOLUME_ASSERT* = 0x00400000 CHANGER_VOLUME_REPLACE* = 0x00800000 CHANGER_VOLUME_UNDEFINE* = 0x01000000 CHANGER_SERIAL_NUMBER_VALID* = 0x04000000 CHANGER_DEVICE_REINITIALIZE_CAPABLE* = 0x08000000 CHANGER_KEYPAD_ENABLE_DISABLE* = 0x10000000 CHANGER_DRIVE_EMPTY_ON_DOOR_ACCESS* = 0x20000000 CHANGER_RESERVED_BIT* = 0x80000000'i32 CHANGER_PREDISMOUNT_ALIGN_TO_SLOT* = 0x80000001'i32 CHANGER_PREDISMOUNT_ALIGN_TO_DRIVE* = 0x80000002'i32 CHANGER_CLEANER_AUTODISMOUNT* = 0x80000004'i32 CHANGER_TRUE_EXCHANGE_CAPABLE* = 0x80000008'i32 CHANGER_SLOTS_USE_TRAYS* = 0x80000010'i32 CHANGER_RTN_MEDIA_TO_ORIGINAL_ADDR* = 0x80000020'i32 CHANGER_CLEANER_OPS_NOT_SUPPORTED* = 0x80000040'i32 CHANGER_IEPORT_USER_CONTROL_OPEN* = 0x80000080'i32 CHANGER_IEPORT_USER_CONTROL_CLOSE* = 0x80000100'i32 CHANGER_MOVE_EXTENDS_IEPORT* = 0x80000200'i32 CHANGER_MOVE_RETRACTS_IEPORT* = 0x80000400'i32 CHANGER_TO_TRANSPORT* = 0x01 CHANGER_TO_SLOT* = 0x02 CHANGER_TO_IEPORT* = 0x04 CHANGER_TO_DRIVE* = 0x08 LOCK_UNLOCK_IEPORT* = 0x01 LOCK_UNLOCK_DOOR* = 0x02 LOCK_UNLOCK_KEYPAD* = 0x04 LOCK_ELEMENT* = 0 UNLOCK_ELEMENT* = 1 EXTEND_IEPORT* = 2 RETRACT_IEPORT* = 3 ELEMENT_STATUS_FULL* = 0x00000001 ELEMENT_STATUS_IMPEXP* = 0x00000002 ELEMENT_STATUS_EXCEPT* = 0x00000004 ELEMENT_STATUS_ACCESS* = 0x00000008 ELEMENT_STATUS_EXENAB* = 0x00000010 ELEMENT_STATUS_INENAB* = 0x00000020 ELEMENT_STATUS_PRODUCT_DATA* = 0x00000040 ELEMENT_STATUS_LUN_VALID* = 0x00001000 ELEMENT_STATUS_ID_VALID* = 0x00002000 ELEMENT_STATUS_NOT_BUS* = 0x00008000 ELEMENT_STATUS_INVERT* = 0x00400000 ELEMENT_STATUS_SVALID* = 0x00800000 ELEMENT_STATUS_PVOLTAG* = 0x10000000 ELEMENT_STATUS_AVOLTAG* = 0x20000000 ERROR_LABEL_UNREADABLE* = 0x00000001 ERROR_LABEL_QUESTIONABLE* = 0x00000002 ERROR_SLOT_NOT_PRESENT* = 0x00000004 ERROR_DRIVE_NOT_INSTALLED* = 0x00000008 ERROR_TRAY_MALFUNCTION* = 0x00000010 ERROR_INIT_STATUS_NEEDED* = 0x00000011 ERROR_UNHANDLED_ERROR* = 0xFFFFFFFF'i32 SEARCH_ALL* = 0x0 SEARCH_PRIMARY* = 0x1 SEARCH_ALTERNATE* = 0x2 SEARCH_ALL_NO_SEQ* = 0x4 SEARCH_PRI_NO_SEQ* = 0x5 SEARCH_ALT_NO_SEQ* = 0x6 ASSERT_PRIMARY* = 0x8 ASSERT_ALTERNATE* = 0x9 REPLACE_PRIMARY* = 0xA REPLACE_ALTERNATE* = 0xB UNDEFINE_PRIMARY* = 0xC UNDEFINE_ALTERNATE* = 0xD deviceProblemNone* = 0 deviceProblemHardware* = 1 deviceProblemCHMError* = 2 deviceProblemDoorOpen* = 3 deviceProblemCalibrationError* = 4 deviceProblemTargetFailure* = 5 deviceProblemCHMMoveError* = 6 deviceProblemCHMZeroError* = 7 deviceProblemCartridgeInsertError* = 8 deviceProblemPositionError* = 9 deviceProblemSensorError* = 10 deviceProblemCartridgeEjectError* = 11 deviceProblemGripperError* = 12 deviceProblemDriveError* = 13 IOCTL_SERIAL_LSRMST_INSERT* = CTL_CODE(FILE_DEVICE_SERIAL_PORT,31,METHOD_BUFFERED,FILE_ANY_ACCESS) IOCTL_SERENUM_EXPOSE_HARDWARE* = CTL_CODE(FILE_DEVICE_SERENUM,128,METHOD_BUFFERED,FILE_ANY_ACCESS) IOCTL_SERENUM_REMOVE_HARDWARE* = CTL_CODE(FILE_DEVICE_SERENUM,129,METHOD_BUFFERED,FILE_ANY_ACCESS) IOCTL_SERENUM_PORT_DESC* = CTL_CODE(FILE_DEVICE_SERENUM,130,METHOD_BUFFERED,FILE_ANY_ACCESS) IOCTL_SERENUM_GET_PORT_NAME* = CTL_CODE(FILE_DEVICE_SERENUM,131,METHOD_BUFFERED,FILE_ANY_ACCESS) SERIAL_LSRMST_ESCAPE* = BYTE 0x00 SERIAL_LSRMST_LSR_DATA* = BYTE 0x01 SERIAL_LSRMST_LSR_NODATA* = BYTE 0x02 SERIAL_LSRMST_MST* = BYTE 0x03 SERIAL_IOC_FCR_FIFO_ENABLE* = DWORD 0x00000001 SERIAL_IOC_FCR_RCVR_RESET* = DWORD 0x00000002 SERIAL_IOC_FCR_XMIT_RESET* = DWORD 0x00000004 SERIAL_IOC_FCR_DMA_MODE* = DWORD 0x00000008 SERIAL_IOC_FCR_RES1* = DWORD 0x00000010 SERIAL_IOC_FCR_RES2* = DWORD 0x00000020 SERIAL_IOC_FCR_RCVR_TRIGGER_LSB* = DWORD 0x00000040 SERIAL_IOC_FCR_RCVR_TRIGGER_MSB* = DWORD 0x00000080 SERIAL_IOC_MCR_DTR* = DWORD 0x00000001 SERIAL_IOC_MCR_RTS* = DWORD 0x00000002 SERIAL_IOC_MCR_OUT1* = DWORD 0x00000004 SERIAL_IOC_MCR_OUT2* = DWORD 0x00000008 SERIAL_IOC_MCR_LOOP* = DWORD 0x00000010 FSCTL_REQUEST_OPLOCK_LEVEL_1* = CTL_CODE(FILE_DEVICE_FILE_SYSTEM,0,METHOD_BUFFERED,FILE_ANY_ACCESS) FSCTL_REQUEST_OPLOCK_LEVEL_2* = CTL_CODE(FILE_DEVICE_FILE_SYSTEM,1,METHOD_BUFFERED,FILE_ANY_ACCESS) FSCTL_REQUEST_BATCH_OPLOCK* = CTL_CODE(FILE_DEVICE_FILE_SYSTEM,2,METHOD_BUFFERED,FILE_ANY_ACCESS) FSCTL_OPLOCK_BREAK_ACKNOWLEDGE* = CTL_CODE(FILE_DEVICE_FILE_SYSTEM,3,METHOD_BUFFERED,FILE_ANY_ACCESS) FSCTL_OPBATCH_ACK_CLOSE_PENDING* = CTL_CODE(FILE_DEVICE_FILE_SYSTEM,4,METHOD_BUFFERED,FILE_ANY_ACCESS) FSCTL_OPLOCK_BREAK_NOTIFY* = CTL_CODE(FILE_DEVICE_FILE_SYSTEM,5,METHOD_BUFFERED,FILE_ANY_ACCESS) FSCTL_LOCK_VOLUME* = CTL_CODE(FILE_DEVICE_FILE_SYSTEM,6,METHOD_BUFFERED,FILE_ANY_ACCESS) FSCTL_UNLOCK_VOLUME* = CTL_CODE(FILE_DEVICE_FILE_SYSTEM,7,METHOD_BUFFERED,FILE_ANY_ACCESS) FSCTL_DISMOUNT_VOLUME* = CTL_CODE(FILE_DEVICE_FILE_SYSTEM,8,METHOD_BUFFERED,FILE_ANY_ACCESS) FSCTL_IS_VOLUME_MOUNTED* = CTL_CODE(FILE_DEVICE_FILE_SYSTEM,10,METHOD_BUFFERED,FILE_ANY_ACCESS) FSCTL_IS_PATHNAME_VALID* = CTL_CODE(FILE_DEVICE_FILE_SYSTEM,11,METHOD_BUFFERED,FILE_ANY_ACCESS) FSCTL_MARK_VOLUME_DIRTY* = CTL_CODE(FILE_DEVICE_FILE_SYSTEM,12,METHOD_BUFFERED,FILE_ANY_ACCESS) FSCTL_QUERY_RETRIEVAL_POINTERS* = CTL_CODE(FILE_DEVICE_FILE_SYSTEM,14,METHOD_NEITHER,FILE_ANY_ACCESS) FSCTL_GET_COMPRESSION* = CTL_CODE(FILE_DEVICE_FILE_SYSTEM,15,METHOD_BUFFERED,FILE_ANY_ACCESS) FSCTL_SET_COMPRESSION* = CTL_CODE(FILE_DEVICE_FILE_SYSTEM,16,METHOD_BUFFERED,FILE_READ_DATA or FILE_WRITE_DATA) FSCTL_MARK_AS_SYSTEM_HIVE* = CTL_CODE(FILE_DEVICE_FILE_SYSTEM,19,METHOD_NEITHER,FILE_ANY_ACCESS) FSCTL_OPLOCK_BREAK_ACK_NO_2* = CTL_CODE(FILE_DEVICE_FILE_SYSTEM,20,METHOD_BUFFERED,FILE_ANY_ACCESS) FSCTL_INVALIDATE_VOLUMES* = CTL_CODE(FILE_DEVICE_FILE_SYSTEM,21,METHOD_BUFFERED,FILE_ANY_ACCESS) FSCTL_QUERY_FAT_BPB* = CTL_CODE(FILE_DEVICE_FILE_SYSTEM,22,METHOD_BUFFERED,FILE_ANY_ACCESS) FSCTL_REQUEST_FILTER_OPLOCK* = CTL_CODE(FILE_DEVICE_FILE_SYSTEM,23,METHOD_BUFFERED,FILE_ANY_ACCESS) FSCTL_FILESYSTEM_GET_STATISTICS* = CTL_CODE(FILE_DEVICE_FILE_SYSTEM,24,METHOD_BUFFERED,FILE_ANY_ACCESS) FSCTL_GET_NTFS_VOLUME_DATA* = CTL_CODE(FILE_DEVICE_FILE_SYSTEM,25,METHOD_BUFFERED,FILE_ANY_ACCESS) FSCTL_GET_NTFS_FILE_RECORD* = CTL_CODE(FILE_DEVICE_FILE_SYSTEM,26,METHOD_BUFFERED,FILE_ANY_ACCESS) FSCTL_GET_VOLUME_BITMAP* = CTL_CODE(FILE_DEVICE_FILE_SYSTEM,27,METHOD_NEITHER,FILE_ANY_ACCESS) FSCTL_GET_RETRIEVAL_POINTERS* = CTL_CODE(FILE_DEVICE_FILE_SYSTEM,28,METHOD_NEITHER,FILE_ANY_ACCESS) FSCTL_MOVE_FILE* = CTL_CODE(FILE_DEVICE_FILE_SYSTEM,29,METHOD_BUFFERED,FILE_SPECIAL_ACCESS) FSCTL_IS_VOLUME_DIRTY* = CTL_CODE(FILE_DEVICE_FILE_SYSTEM,30,METHOD_BUFFERED,FILE_ANY_ACCESS) FSCTL_ALLOW_EXTENDED_DASD_IO* = CTL_CODE(FILE_DEVICE_FILE_SYSTEM,32,METHOD_NEITHER,FILE_ANY_ACCESS) FSCTL_FIND_FILES_BY_SID* = CTL_CODE(FILE_DEVICE_FILE_SYSTEM,35,METHOD_NEITHER,FILE_ANY_ACCESS) FSCTL_SET_OBJECT_ID* = CTL_CODE(FILE_DEVICE_FILE_SYSTEM,38,METHOD_BUFFERED,FILE_SPECIAL_ACCESS) FSCTL_GET_OBJECT_ID* = CTL_CODE(FILE_DEVICE_FILE_SYSTEM,39,METHOD_BUFFERED,FILE_ANY_ACCESS) FSCTL_DELETE_OBJECT_ID* = CTL_CODE(FILE_DEVICE_FILE_SYSTEM,40,METHOD_BUFFERED,FILE_SPECIAL_ACCESS) FSCTL_SET_REPARSE_POINT* = CTL_CODE(FILE_DEVICE_FILE_SYSTEM,41,METHOD_BUFFERED,FILE_SPECIAL_ACCESS) FSCTL_GET_REPARSE_POINT* = CTL_CODE(FILE_DEVICE_FILE_SYSTEM,42,METHOD_BUFFERED,FILE_ANY_ACCESS) FSCTL_DELETE_REPARSE_POINT* = CTL_CODE(FILE_DEVICE_FILE_SYSTEM,43,METHOD_BUFFERED,FILE_SPECIAL_ACCESS) FSCTL_ENUM_USN_DATA* = CTL_CODE(FILE_DEVICE_FILE_SYSTEM,44,METHOD_NEITHER,FILE_ANY_ACCESS) FSCTL_SECURITY_ID_CHECK* = CTL_CODE(FILE_DEVICE_FILE_SYSTEM,45,METHOD_NEITHER,FILE_READ_DATA) FSCTL_READ_USN_JOURNAL* = CTL_CODE(FILE_DEVICE_FILE_SYSTEM,46,METHOD_NEITHER,FILE_ANY_ACCESS) FSCTL_SET_OBJECT_ID_EXTENDED* = CTL_CODE(FILE_DEVICE_FILE_SYSTEM,47,METHOD_BUFFERED,FILE_SPECIAL_ACCESS) FSCTL_CREATE_OR_GET_OBJECT_ID* = CTL_CODE(FILE_DEVICE_FILE_SYSTEM,48,METHOD_BUFFERED,FILE_ANY_ACCESS) FSCTL_SET_SPARSE* = CTL_CODE(FILE_DEVICE_FILE_SYSTEM,49,METHOD_BUFFERED,FILE_SPECIAL_ACCESS) FSCTL_SET_ZERO_DATA* = CTL_CODE(FILE_DEVICE_FILE_SYSTEM,50,METHOD_BUFFERED,FILE_WRITE_DATA) FSCTL_QUERY_ALLOCATED_RANGES* = CTL_CODE(FILE_DEVICE_FILE_SYSTEM,51,METHOD_NEITHER,FILE_READ_DATA) FSCTL_SET_ENCRYPTION* = CTL_CODE(FILE_DEVICE_FILE_SYSTEM,53,METHOD_NEITHER,FILE_ANY_ACCESS) FSCTL_ENCRYPTION_FSCTL_IO* = CTL_CODE(FILE_DEVICE_FILE_SYSTEM,54,METHOD_NEITHER,FILE_ANY_ACCESS) FSCTL_WRITE_RAW_ENCRYPTED* = CTL_CODE(FILE_DEVICE_FILE_SYSTEM,55,METHOD_NEITHER,FILE_SPECIAL_ACCESS) FSCTL_READ_RAW_ENCRYPTED* = CTL_CODE(FILE_DEVICE_FILE_SYSTEM,56,METHOD_NEITHER,FILE_SPECIAL_ACCESS) FSCTL_CREATE_USN_JOURNAL* = CTL_CODE(FILE_DEVICE_FILE_SYSTEM,57,METHOD_NEITHER,FILE_ANY_ACCESS) FSCTL_READ_FILE_USN_DATA* = CTL_CODE(FILE_DEVICE_FILE_SYSTEM,58,METHOD_NEITHER,FILE_ANY_ACCESS) FSCTL_WRITE_USN_CLOSE_RECORD* = CTL_CODE(FILE_DEVICE_FILE_SYSTEM,59,METHOD_NEITHER,FILE_ANY_ACCESS) FSCTL_EXTEND_VOLUME* = CTL_CODE(FILE_DEVICE_FILE_SYSTEM,60,METHOD_BUFFERED,FILE_ANY_ACCESS) FSCTL_QUERY_USN_JOURNAL* = CTL_CODE(FILE_DEVICE_FILE_SYSTEM,61,METHOD_BUFFERED,FILE_ANY_ACCESS) FSCTL_DELETE_USN_JOURNAL* = CTL_CODE(FILE_DEVICE_FILE_SYSTEM,62,METHOD_BUFFERED,FILE_ANY_ACCESS) FSCTL_MARK_HANDLE* = CTL_CODE(FILE_DEVICE_FILE_SYSTEM,63,METHOD_BUFFERED,FILE_ANY_ACCESS) FSCTL_SIS_COPYFILE* = CTL_CODE(FILE_DEVICE_FILE_SYSTEM,64,METHOD_BUFFERED,FILE_ANY_ACCESS) FSCTL_SIS_LINK_FILES* = CTL_CODE(FILE_DEVICE_FILE_SYSTEM,65,METHOD_BUFFERED,FILE_READ_DATA or FILE_WRITE_DATA) FSCTL_HSM_MSG* = CTL_CODE(FILE_DEVICE_FILE_SYSTEM,66,METHOD_BUFFERED,FILE_READ_DATA or FILE_WRITE_DATA) FSCTL_HSM_DATA* = CTL_CODE(FILE_DEVICE_FILE_SYSTEM,68,METHOD_NEITHER,FILE_READ_DATA or FILE_WRITE_DATA) FSCTL_RECALL_FILE* = CTL_CODE(FILE_DEVICE_FILE_SYSTEM,69,METHOD_NEITHER,FILE_ANY_ACCESS) FSCTL_READ_FROM_PLEX* = CTL_CODE(FILE_DEVICE_FILE_SYSTEM,71,METHOD_OUT_DIRECT,FILE_READ_DATA) FSCTL_FILE_PREFETCH* = CTL_CODE(FILE_DEVICE_FILE_SYSTEM,72,METHOD_BUFFERED,FILE_SPECIAL_ACCESS) USN_PAGE_SIZE* = 0x1000 USN_REASON_DATA_OVERWRITE* = 0x00000001 USN_REASON_DATA_EXTEND* = 0x00000002 USN_REASON_DATA_TRUNCATION* = 0x00000004 USN_REASON_NAMED_DATA_OVERWRITE* = 0x00000010 USN_REASON_NAMED_DATA_EXTEND* = 0x00000020 USN_REASON_NAMED_DATA_TRUNCATION* = 0x00000040 USN_REASON_FILE_CREATE* = 0x00000100 USN_REASON_FILE_DELETE* = 0x00000200 USN_REASON_EA_CHANGE* = 0x00000400 USN_REASON_SECURITY_CHANGE* = 0x00000800 USN_REASON_RENAME_OLD_NAME* = 0x00001000 USN_REASON_RENAME_NEW_NAME* = 0x00002000 USN_REASON_INDEXABLE_CHANGE* = 0x00004000 USN_REASON_BASIC_INFO_CHANGE* = 0x00008000 USN_REASON_HARD_LINK_CHANGE* = 0x00010000 USN_REASON_COMPRESSION_CHANGE* = 0x00020000 USN_REASON_ENCRYPTION_CHANGE* = 0x00040000 USN_REASON_OBJECT_ID_CHANGE* = 0x00080000 USN_REASON_REPARSE_POINT_CHANGE* = 0x00100000 USN_REASON_STREAM_CHANGE* = 0x00200000 USN_REASON_CLOSE* = 0x80000000'i32 USN_DELETE_FLAG_DELETE* = 0x00000001 USN_DELETE_FLAG_NOTIFY* = 0x00000002 USN_DELETE_VALID_FLAGS* = 0x00000003 USN_SOURCE_DATA_MANAGEMENT* = 0x00000001 USN_SOURCE_AUXILIARY_DATA* = 0x00000002 USN_SOURCE_REPLICATION_MANAGEMENT* = 0x00000004 MARK_HANDLE_PROTECT_CLUSTERS* = 0x00000001 MARK_HANDLE_TXF_SYSTEM_LOG* = 0x00000004 MARK_HANDLE_NOT_TXF_SYSTEM_LOG* = 0x00000008 MARK_HANDLE_REALTIME* = 0x00000020 MARK_HANDLE_NOT_REALTIME* = 0x00000040 VOLUME_IS_DIRTY* = 0x00000001 VOLUME_UPGRADE_SCHEDULED* = 0x00000002 FILE_PREFETCH_TYPE_FOR_CREATE* = 0x1 FILESYSTEM_STATISTICS_TYPE_NTFS* = 1 FILESYSTEM_STATISTICS_TYPE_FAT* = 2 FILE_SET_ENCRYPTION* = 0x00000001 FILE_CLEAR_ENCRYPTION* = 0x00000002 STREAM_SET_ENCRYPTION* = 0x00000003 STREAM_CLEAR_ENCRYPTION* = 0x00000004 MAXIMUM_ENCRYPTION_VALUE* = 0x00000004 ENCRYPTION_FORMAT_DEFAULT* = 0x01 COMPRESSION_FORMAT_SPARSE* = 0x4000 COPYFILE_SIS_LINK* = 0x0001 COPYFILE_SIS_REPLACE* = 0x0002 COPYFILE_SIS_FLAGS* = 0x0003 storageDeviceProperty* = 0 storageAdapterProperty* = 1 storageDeviceIdProperty* = 2 storageDeviceUniqueIdProperty* = 3 storageDeviceWriteCacheProperty* = 4 storageMiniportProperty* = 5 storageAccessAlignmentProperty* = 6 storageDeviceSeekPenaltyProperty* = 7 storageDeviceTrimProperty* = 8 propertyStandardQuery* = 0 propertyExistsQuery* = 1 propertyMaskQuery* = 2 propertyQueryMaxDefined* = 3 FSCTL_MAKE_MEDIA_COMPATIBLE* = CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 76, METHOD_BUFFERED, FILE_WRITE_DATA) FSCTL_SET_DEFECT_MANAGEMENT* = CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 77, METHOD_BUFFERED, FILE_WRITE_DATA) FSCTL_QUERY_SPARING_INFO* = CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 78, METHOD_BUFFERED, FILE_ANY_ACCESS) FSCTL_QUERY_ON_DISK_VOLUME_INFO* = CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 79, METHOD_BUFFERED, FILE_ANY_ACCESS) FSCTL_SET_VOLUME_COMPRESSION_STATE* = CTL_CODE(FILE_DEVICE_FILE_SYSTEM,80, METHOD_BUFFERED, FILE_SPECIAL_ACCESS) FSCTL_TXFS_MODIFY_RM* = CTL_CODE(FILE_DEVICE_FILE_SYSTEM,81, METHOD_BUFFERED, FILE_WRITE_DATA) FSCTL_TXFS_QUERY_RM_INFORMATION* = CTL_CODE(FILE_DEVICE_FILE_SYSTEM,82, METHOD_BUFFERED, FILE_READ_DATA) FSCTL_TXFS_ROLLFORWARD_REDO* = CTL_CODE(FILE_DEVICE_FILE_SYSTEM,84, METHOD_BUFFERED, FILE_WRITE_DATA) FSCTL_TXFS_ROLLFORWARD_UNDO* = CTL_CODE(FILE_DEVICE_FILE_SYSTEM,85, METHOD_BUFFERED, FILE_WRITE_DATA) FSCTL_TXFS_START_RM* = CTL_CODE(FILE_DEVICE_FILE_SYSTEM,86, METHOD_BUFFERED, FILE_WRITE_DATA) FSCTL_TXFS_SHUTDOWN_RM* = CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 87, METHOD_BUFFERED, FILE_WRITE_DATA) FSCTL_TXFS_READ_BACKUP_INFORMATION* = CTL_CODE(FILE_DEVICE_FILE_SYSTEM,88, METHOD_BUFFERED, FILE_READ_DATA) FSCTL_TXFS_WRITE_BACKUP_INFORMATION* = CTL_CODE(FILE_DEVICE_FILE_SYSTEM,89, METHOD_BUFFERED, FILE_WRITE_DATA) FSCTL_TXFS_CREATE_SECONDARY_RM* = CTL_CODE(FILE_DEVICE_FILE_SYSTEM,90,METHOD_BUFFERED, FILE_WRITE_DATA) FSCTL_TXFS_GET_METADATA_INFO* = CTL_CODE(FILE_DEVICE_FILE_SYSTEM,91, METHOD_BUFFERED, FILE_READ_DATA) FSCTL_TXFS_GET_TRANSACTED_VERSION* = CTL_CODE(FILE_DEVICE_FILE_SYSTEM,92, METHOD_BUFFERED, FILE_READ_DATA) FSCTL_TXFS_SAVEPOINT_INFORMATION* = CTL_CODE(FILE_DEVICE_FILE_SYSTEM,94, METHOD_BUFFERED, FILE_WRITE_DATA) FSCTL_TXFS_CREATE_MINIVERSION* = CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 95, METHOD_BUFFERED, FILE_WRITE_DATA) FSCTL_TXFS_TRANSACTION_ACTIVE* = CTL_CODE(FILE_DEVICE_FILE_SYSTEM,99, METHOD_BUFFERED, FILE_READ_DATA) FSCTL_SET_ZERO_ON_DEALLOCATION* = CTL_CODE(FILE_DEVICE_FILE_SYSTEM,101, METHOD_BUFFERED, FILE_SPECIAL_ACCESS) FSCTL_SET_REPAIR* = CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 102, METHOD_BUFFERED, FILE_ANY_ACCESS) FSCTL_GET_REPAIR* = CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 103, METHOD_BUFFERED, FILE_ANY_ACCESS) FSCTL_WAIT_FOR_REPAIR* = CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 104, METHOD_BUFFERED, FILE_ANY_ACCESS) FSCTL_INITIATE_REPAIR* = CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 106, METHOD_BUFFERED, FILE_ANY_ACCESS) FSCTL_CSC_INTERNAL* = CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 107, METHOD_NEITHER, FILE_ANY_ACCESS) FSCTL_SHRINK_VOLUME* = CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 108, METHOD_BUFFERED, FILE_SPECIAL_ACCESS) FSCTL_SET_SHORT_NAME_BEHAVIOR* = CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 109, METHOD_BUFFERED, FILE_ANY_ACCESS) FSCTL_DFSR_SET_GHOST_HANDLE_STATE* = CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 110, METHOD_BUFFERED, FILE_ANY_ACCESS) FSCTL_TXFS_LIST_TRANSACTION_LOCKED_FILES* = CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 120, METHOD_BUFFERED, FILE_READ_DATA) FSCTL_TXFS_LIST_TRANSACTIONS* = CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 121, METHOD_BUFFERED, FILE_READ_DATA) FSCTL_QUERY_PAGEFILE_ENCRYPTION* = CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 122, METHOD_BUFFERED, FILE_ANY_ACCESS) FSCTL_RESET_VOLUME_ALLOCATION_HINTS* = CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 123, METHOD_BUFFERED, FILE_ANY_ACCESS) FSCTL_TXFS_READ_BACKUP_INFORMATION2* = CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 126, METHOD_BUFFERED, FILE_ANY_ACCESS) SET_REPAIR_ENABLED* = 0x00000001 SET_REPAIR_VOLUME_BITMAP_SCAN* = 0x00000002 SET_REPAIR_DELETE_CROSSLINK* = 0x00000004 SET_REPAIR_WARN_ABOUT_DATA_LOSS* = 0x00000008 SET_REPAIR_DISABLED_AND_BUGCHECK_ON_CORRUPT* = 0x00000010 SET_REPAIR_VALID_MASK* = 0x0000001F shrinkPrepare* = 0 shrinkCommit* = 1 shrinkAbort* = 2 TXFS_RM_FLAG_LOGGING_MODE* = 0x00000001 TXFS_RM_FLAG_RENAME_RM* = 0x00000002 TXFS_RM_FLAG_LOG_CONTAINER_COUNT_MAX* = 0x00000004 TXFS_RM_FLAG_LOG_CONTAINER_COUNT_MIN* = 0x00000008 TXFS_RM_FLAG_LOG_GROWTH_INCREMENT_NUM_CONTAINERS* = 0x00000010 TXFS_RM_FLAG_LOG_GROWTH_INCREMENT_PERCENT* = 0x00000020 TXFS_RM_FLAG_LOG_AUTO_SHRINK_PERCENTAGE* = 0x00000040 TXFS_RM_FLAG_LOG_NO_CONTAINER_COUNT_MAX* = 0x00000080 TXFS_RM_FLAG_LOG_NO_CONTAINER_COUNT_MIN* = 0x00000100 TXFS_RM_FLAG_GROW_LOG* = 0x00000400 TXFS_RM_FLAG_SHRINK_LOG* = 0x00000800 TXFS_RM_FLAG_ENFORCE_MINIMUM_SIZE* = 0x00001000 TXFS_RM_FLAG_PRESERVE_CHANGES* = 0x00002000 TXFS_RM_FLAG_RESET_RM_AT_NEXT_START* = 0x00004000 TXFS_RM_FLAG_DO_NOT_RESET_RM_AT_NEXT_START* = 0x00008000 TXFS_RM_FLAG_PREFER_CONSISTENCY* = 0x00010000 TXFS_RM_FLAG_PREFER_AVAILABILITY* = 0x00020000 TXFS_LOGGING_MODE_SIMPLE* = 1 TXFS_LOGGING_MODE_FULL* = 2 TXFS_TRANSACTION_STATE_NONE* = 0 TXFS_TRANSACTION_STATE_ACTIVE* = 1 TXFS_TRANSACTION_STATE_PREPARED* = 2 TXFS_TRANSACTION_STATE_NOTACTIVE* = 3 TXFS_MODIFY_RM_VALID_FLAGS* = TXFS_RM_FLAG_LOGGING_MODE or TXFS_RM_FLAG_RENAME_RM or TXFS_RM_FLAG_LOG_CONTAINER_COUNT_MAX or TXFS_RM_FLAG_LOG_CONTAINER_COUNT_MIN or TXFS_RM_FLAG_LOG_GROWTH_INCREMENT_NUM_CONTAINERS or TXFS_RM_FLAG_LOG_GROWTH_INCREMENT_PERCENT or TXFS_RM_FLAG_LOG_AUTO_SHRINK_PERCENTAGE or TXFS_RM_FLAG_LOG_NO_CONTAINER_COUNT_MAX or TXFS_RM_FLAG_LOG_NO_CONTAINER_COUNT_MIN or TXFS_RM_FLAG_SHRINK_LOG or TXFS_RM_FLAG_GROW_LOG or TXFS_RM_FLAG_ENFORCE_MINIMUM_SIZE or TXFS_RM_FLAG_PRESERVE_CHANGES or TXFS_RM_FLAG_RESET_RM_AT_NEXT_START or TXFS_RM_FLAG_DO_NOT_RESET_RM_AT_NEXT_START or TXFS_RM_FLAG_PREFER_CONSISTENCY or TXFS_RM_FLAG_PREFER_AVAILABILITY TXFS_RM_STATE_NOT_STARTED* = 0 TXFS_RM_STATE_STARTING* = 1 TXFS_RM_STATE_ACTIVE* = 3 TXFS_RM_STATE_SHUTTING_DOWN* = 4 TXFS_QUERY_RM_INFORMATION_VALID_FLAGS* = TXFS_RM_FLAG_LOG_GROWTH_INCREMENT_NUM_CONTAINERS or TXFS_RM_FLAG_LOG_GROWTH_INCREMENT_PERCENT or TXFS_RM_FLAG_LOG_NO_CONTAINER_COUNT_MAX or TXFS_RM_FLAG_LOG_NO_CONTAINER_COUNT_MIN or TXFS_RM_FLAG_RESET_RM_AT_NEXT_START or TXFS_RM_FLAG_DO_NOT_RESET_RM_AT_NEXT_START or TXFS_RM_FLAG_PREFER_CONSISTENCY or TXFS_RM_FLAG_PREFER_AVAILABILITY TXFS_ROLLFORWARD_REDO_FLAG_USE_LAST_REDO_LSN* = 0x01 TXFS_ROLLFORWARD_REDO_FLAG_USE_LAST_VIRTUAL_CLOCK* = 0x02 TXFS_ROLLFORWARD_REDO_VALID_FLAGS* = TXFS_ROLLFORWARD_REDO_FLAG_USE_LAST_REDO_LSN or TXFS_ROLLFORWARD_REDO_FLAG_USE_LAST_VIRTUAL_CLOCK TXFS_START_RM_FLAG_LOG_CONTAINER_COUNT_MAX* = 0x00000001 TXFS_START_RM_FLAG_LOG_CONTAINER_COUNT_MIN* = 0x00000002 TXFS_START_RM_FLAG_LOG_CONTAINER_SIZE* = 0x00000004 TXFS_START_RM_FLAG_LOG_GROWTH_INCREMENT_NUM_CONTAINERS* = 0x00000008 TXFS_START_RM_FLAG_LOG_GROWTH_INCREMENT_PERCENT* = 0x00000010 TXFS_START_RM_FLAG_LOG_AUTO_SHRINK_PERCENTAGE* = 0x00000020 TXFS_START_RM_FLAG_LOG_NO_CONTAINER_COUNT_MAX* = 0x00000040 TXFS_START_RM_FLAG_LOG_NO_CONTAINER_COUNT_MIN* = 0x00000080 TXFS_START_RM_FLAG_RECOVER_BEST_EFFORT* = 0x00000200 TXFS_START_RM_FLAG_LOGGING_MODE* = 0x00000400 TXFS_START_RM_FLAG_PRESERVE_CHANGES* = 0x00000800 TXFS_START_RM_FLAG_PREFER_CONSISTENCY* = 0x00001000 TXFS_START_RM_FLAG_PREFER_AVAILABILITY* = 0x00002000 TXFS_START_RM_VALID_FLAGS* = TXFS_START_RM_FLAG_LOG_CONTAINER_COUNT_MAX or TXFS_START_RM_FLAG_LOG_CONTAINER_COUNT_MIN or TXFS_START_RM_FLAG_LOG_CONTAINER_SIZE or TXFS_START_RM_FLAG_LOG_GROWTH_INCREMENT_NUM_CONTAINERS or TXFS_START_RM_FLAG_LOG_GROWTH_INCREMENT_PERCENT or TXFS_START_RM_FLAG_LOG_AUTO_SHRINK_PERCENTAGE or TXFS_START_RM_FLAG_RECOVER_BEST_EFFORT or TXFS_START_RM_FLAG_LOG_NO_CONTAINER_COUNT_MAX or TXFS_START_RM_FLAG_LOGGING_MODE or TXFS_START_RM_FLAG_PRESERVE_CHANGES or TXFS_START_RM_FLAG_PREFER_CONSISTENCY or TXFS_START_RM_FLAG_PREFER_AVAILABILITY TXFS_LIST_TRANSACTION_LOCKED_FILES_ENTRY_FLAG_CREATED* = 0x00000001 TXFS_LIST_TRANSACTION_LOCKED_FILES_ENTRY_FLAG_DELETED* = 0x000000012 TXFS_TRANSACTED_VERSION_NONTRANSACTED* = 0xFFFFFFFE'i32 TXFS_TRANSACTED_VERSION_UNCOMMITTED* = 0xFFFFFFFF'i32 TXFS_SAVEPOINT_SET* = 1 TXFS_SAVEPOINT_ROLLBACK* = 2 TXFS_SAVEPOINT_CLEAR* = 4 TXFS_SAVEPOINT_CLEAR_ALL* = 16 writeCacheTypeUnknown* = 0 writeCacheTypeNone* = 1 writeCacheTypeWriteBack* = 2 writeCacheTypeWriteThrough* = 3 writeCacheEnableUnknown* = 0 writeCacheDisabled* = 1 writeCacheEnabled* = 2 writeCacheChangeUnknown* = 0 writeCacheNotChangeable* = 1 writeCacheChangeable* = 2 writeThroughUnknown* = 0 writeThroughNotSupported* = 1 writeThroughSupported* = 2 storagePortCodeSetReserved* = 0 storagePortCodeSetStorport* = 1 storagePortCodeSetSCSIport* = 2 LOOKUP_STREAM_FROM_CLUSTER_ENTRY_ATTRIBUTE_MASK* = 0xff000000'i32 LOOKUP_STREAM_FROM_CLUSTER_ENTRY_FLAG_PAGE_FILE* = 0x00000001 LOOKUP_STREAM_FROM_CLUSTER_ENTRY_FLAG_DENY_DEFRAG_SET* = 0x00000002 LOOKUP_STREAM_FROM_CLUSTER_ENTRY_FLAG_FS_SYSTEM_FILE* = 0x00000004 LOOKUP_STREAM_FROM_CLUSTER_ENTRY_FLAG_TXF_SYSTEM_FILE* = 0x00000008 LOOKUP_STREAM_FROM_CLUSTER_ENTRY_ATTRIBUTE_DATA* = 0x01000000 LOOKUP_STREAM_FROM_CLUSTER_ENTRY_ATTRIBUTE_INDEX* = 0x02000000 LOOKUP_STREAM_FROM_CLUSTER_ENTRY_ATTRIBUTE_SYSTEM* = 0x03000000 FSCTL_QUERY_DEPENDENT_VOLUME* = CTL_CODE(FILE_DEVICE_FILE_SYSTEM,124, METHOD_BUFFERED, FILE_ANY_ACCESS) FSCTL_SD_GLOBAL_CHANGE* = CTL_CODE(FILE_DEVICE_FILE_SYSTEM,125, METHOD_BUFFERED, FILE_ANY_ACCESS) FSCTL_LOOKUP_STREAM_FROM_CLUSTER* = CTL_CODE(FILE_DEVICE_FILE_SYSTEM,127, METHOD_BUFFERED, FILE_ANY_ACCESS) FSCTL_TXFS_WRITE_BACKUP_INFORMATION2* = CTL_CODE(FILE_DEVICE_FILE_SYSTEM,128, METHOD_BUFFERED, FILE_ANY_ACCESS) FSCTL_FILE_TYPE_NOTIFICATION* = CTL_CODE(FILE_DEVICE_FILE_SYSTEM,129, METHOD_BUFFERED, FILE_ANY_ACCESS) FSCTL_GET_BOOT_AREA_INFO* = CTL_CODE(FILE_DEVICE_FILE_SYSTEM,140, METHOD_BUFFERED, FILE_ANY_ACCESS) FSCTL_GET_RETRIEVAL_POINTER_BASE* = CTL_CODE(FILE_DEVICE_FILE_SYSTEM,141, METHOD_BUFFERED, FILE_ANY_ACCESS) FSCTL_SET_PERSISTENT_VOLUME_STATE* = CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 142, METHOD_BUFFERED, FILE_ANY_ACCESS) FSCTL_QUERY_PERSISTENT_VOLUME_STATE* = CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 143, METHOD_BUFFERED, FILE_ANY_ACCESS) FSCTL_REQUEST_OPLOCK* = CTL_CODE(FILE_DEVICE_FILE_SYSTEM,144,METHOD_BUFFERED,FILE_ANY_ACCESS) FSCTL_CSV_TUNNEL_REQUEST* = CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 145, METHOD_BUFFERED, FILE_ANY_ACCESS) FSCTL_IS_CSV_FILE* = CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 146, METHOD_BUFFERED, FILE_ANY_ACCESS) FSCTL_QUERY_FILE_SYSTEM_RECOGNITION* = CTL_CODE(FILE_DEVICE_FILE_SYSTEM,147, METHOD_BUFFERED, FILE_ANY_ACCESS) FSCTL_CSV_GET_VOLUME_PATH_NAME* = CTL_CODE(FILE_DEVICE_FILE_SYSTEM,148, METHOD_BUFFERED, FILE_ANY_ACCESS) FSCTL_CSV_GET_VOLUME_NAME_FOR_VOLUME_MOUNT_POINT* = CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 149, METHOD_BUFFERED, FILE_ANY_ACCESS) FSCTL_CSV_GET_VOLUME_PATH_NAMES_FOR_VOLUME_NAME* = CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 150, METHOD_BUFFERED, FILE_ANY_ACCESS) FSCTL_IS_FILE_ON_CSV_VOLUME* = CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 151, METHOD_BUFFERED, FILE_ANY_ACCESS) IOCTL_VOLUME_BASE* = (DWORD) 'V' IOCTL_VOLUME_GET_VOLUME_DISK_EXTENTS* = CTL_CODE(IOCTL_VOLUME_BASE,0,METHOD_BUFFERED,FILE_ANY_ACCESS) IOCTL_VOLUME_SUPPORTS_ONLINE_OFFLINE* = CTL_CODE(IOCTL_VOLUME_BASE,1,METHOD_BUFFERED,FILE_ANY_ACCESS) IOCTL_VOLUME_ONLINE* = CTL_CODE(IOCTL_VOLUME_BASE,2,METHOD_BUFFERED,FILE_READ_ACCESS or FILE_WRITE_ACCESS) IOCTL_VOLUME_OFFLINE* = CTL_CODE(IOCTL_VOLUME_BASE,3,METHOD_BUFFERED,FILE_READ_ACCESS or FILE_WRITE_ACCESS) IOCTL_VOLUME_IS_OFFLINE* = CTL_CODE(IOCTL_VOLUME_BASE,4,METHOD_BUFFERED, FILE_ANY_ACCESS) IOCTL_VOLUME_IS_IO_CAPABLE* = CTL_CODE(IOCTL_VOLUME_BASE,5,METHOD_BUFFERED,FILE_ANY_ACCESS) IOCTL_VOLUME_QUERY_FAILOVER_SET* = CTL_CODE(IOCTL_VOLUME_BASE,6,METHOD_BUFFERED,FILE_ANY_ACCESS) IOCTL_VOLUME_QUERY_VOLUME_NUMBER* = CTL_CODE(IOCTL_VOLUME_BASE,7,METHOD_BUFFERED,FILE_ANY_ACCESS) IOCTL_VOLUME_LOGICAL_TO_PHYSICAL* = CTL_CODE(IOCTL_VOLUME_BASE,8,METHOD_BUFFERED,FILE_ANY_ACCESS) IOCTL_VOLUME_PHYSICAL_TO_LOGICAL* = CTL_CODE(IOCTL_VOLUME_BASE,9,METHOD_BUFFERED,FILE_ANY_ACCESS) IOCTL_VOLUME_IS_CLUSTERED* = CTL_CODE(IOCTL_VOLUME_BASE,12,METHOD_BUFFERED,FILE_ANY_ACCESS) IOCTL_VOLUME_GET_GPT_ATTRIBUTES* = CTL_CODE(IOCTL_VOLUME_BASE,14,METHOD_BUFFERED,FILE_ANY_ACCESS) HISTOGRAM_BUCKET_SIZE* = 0x00000008 DISK_HISTOGRAM_SIZE* = 0x00000048 type FILE_SYSTEM_RECOGNITION_STRUCTURE* {.pure.} = object Jmp*: array[3, UCHAR] FsName*: array[8, UCHAR] MustBeZero*: array[5, UCHAR] Identifier*: ULONG Length*: USHORT Checksum*: USHORT proc `Mbr=`*(self: var SET_PARTITION_INFORMATION_EX, x: SET_PARTITION_INFORMATION_MBR) {.inline.} = self.union1.Mbr = x proc Mbr*(self: SET_PARTITION_INFORMATION_EX): SET_PARTITION_INFORMATION_MBR {.inline.} = self.union1.Mbr proc Mbr*(self: var SET_PARTITION_INFORMATION_EX): var SET_PARTITION_INFORMATION_MBR {.inline.} = self.union1.Mbr proc `Gpt=`*(self: var SET_PARTITION_INFORMATION_EX, x: SET_PARTITION_INFORMATION_GPT) {.inline.} = self.union1.Gpt = x proc Gpt*(self: SET_PARTITION_INFORMATION_EX): SET_PARTITION_INFORMATION_GPT {.inline.} = self.union1.Gpt proc Gpt*(self: var SET_PARTITION_INFORMATION_EX): var SET_PARTITION_INFORMATION_GPT {.inline.} = self.union1.Gpt proc `Mbr=`*(self: var CREATE_DISK, x: CREATE_DISK_MBR) {.inline.} = self.union1.Mbr = x proc Mbr*(self: CREATE_DISK): CREATE_DISK_MBR {.inline.} = self.union1.Mbr proc Mbr*(self: var CREATE_DISK): var CREATE_DISK_MBR {.inline.} = self.union1.Mbr proc `Gpt=`*(self: var CREATE_DISK, x: CREATE_DISK_GPT) {.inline.} = self.union1.Gpt = x proc Gpt*(self: CREATE_DISK): CREATE_DISK_GPT {.inline.} = self.union1.Gpt proc Gpt*(self: var CREATE_DISK): var CREATE_DISK_GPT {.inline.} = self.union1.Gpt proc `Mbr=`*(self: var PARTITION_INFORMATION_EX, x: PARTITION_INFORMATION_MBR) {.inline.} = self.union1.Mbr = x proc Mbr*(self: PARTITION_INFORMATION_EX): PARTITION_INFORMATION_MBR {.inline.} = self.union1.Mbr proc Mbr*(self: var PARTITION_INFORMATION_EX): var PARTITION_INFORMATION_MBR {.inline.} = self.union1.Mbr proc `Gpt=`*(self: var PARTITION_INFORMATION_EX, x: PARTITION_INFORMATION_GPT) {.inline.} = self.union1.Gpt = x proc Gpt*(self: PARTITION_INFORMATION_EX): PARTITION_INFORMATION_GPT {.inline.} = self.union1.Gpt proc Gpt*(self: var PARTITION_INFORMATION_EX): var PARTITION_INFORMATION_GPT {.inline.} = self.union1.Gpt proc `Mbr=`*(self: var DRIVE_LAYOUT_INFORMATION_EX, x: DRIVE_LAYOUT_INFORMATION_MBR) {.inline.} = self.union1.Mbr = x proc Mbr*(self: DRIVE_LAYOUT_INFORMATION_EX): DRIVE_LAYOUT_INFORMATION_MBR {.inline.} = self.union1.Mbr proc Mbr*(self: var DRIVE_LAYOUT_INFORMATION_EX): var DRIVE_LAYOUT_INFORMATION_MBR {.inline.} = self.union1.Mbr proc `Gpt=`*(self: var DRIVE_LAYOUT_INFORMATION_EX, x: DRIVE_LAYOUT_INFORMATION_GPT) {.inline.} = self.union1.Gpt = x proc Gpt*(self: DRIVE_LAYOUT_INFORMATION_EX): DRIVE_LAYOUT_INFORMATION_GPT {.inline.} = self.union1.Gpt proc Gpt*(self: var DRIVE_LAYOUT_INFORMATION_EX): var DRIVE_LAYOUT_INFORMATION_GPT {.inline.} = self.union1.Gpt proc `Int13=`*(self: var DISK_DETECTION_INFO, x: DISK_INT13_INFO) {.inline.} = self.union1.struct1.Int13 = x proc Int13*(self: DISK_DETECTION_INFO): DISK_INT13_INFO {.inline.} = self.union1.struct1.Int13 proc Int13*(self: var DISK_DETECTION_INFO): var DISK_INT13_INFO {.inline.} = self.union1.struct1.Int13 proc `ExInt13=`*(self: var DISK_DETECTION_INFO, x: DISK_EX_INT13_INFO) {.inline.} = self.union1.struct1.ExInt13 = x proc ExInt13*(self: DISK_DETECTION_INFO): DISK_EX_INT13_INFO {.inline.} = self.union1.struct1.ExInt13 proc ExInt13*(self: var DISK_DETECTION_INFO): var DISK_EX_INT13_INFO {.inline.} = self.union1.struct1.ExInt13 proc `Mbr=`*(self: var DISK_PARTITION_INFO, x: DISK_PARTITION_INFO_UNION1_Mbr) {.inline.} = self.union1.Mbr = x proc Mbr*(self: DISK_PARTITION_INFO): DISK_PARTITION_INFO_UNION1_Mbr {.inline.} = self.union1.Mbr proc Mbr*(self: var DISK_PARTITION_INFO): var DISK_PARTITION_INFO_UNION1_Mbr {.inline.} = self.union1.Mbr proc `Gpt=`*(self: var DISK_PARTITION_INFO, x: DISK_PARTITION_INFO_UNION1_Gpt) {.inline.} = self.union1.Gpt = x proc Gpt*(self: DISK_PARTITION_INFO): DISK_PARTITION_INFO_UNION1_Gpt {.inline.} = self.union1.Gpt proc Gpt*(self: var DISK_PARTITION_INFO): var DISK_PARTITION_INFO_UNION1_Gpt {.inline.} = self.union1.Gpt proc `ScalarPrefetch=`*(self: var DISK_CACHE_INFORMATION, x: DISK_CACHE_INFORMATION_UNION1_ScalarPrefetch) {.inline.} = self.union1.ScalarPrefetch = x proc ScalarPrefetch*(self: DISK_CACHE_INFORMATION): DISK_CACHE_INFORMATION_UNION1_ScalarPrefetch {.inline.} = self.union1.ScalarPrefetch proc ScalarPrefetch*(self: var DISK_CACHE_INFORMATION): var DISK_CACHE_INFORMATION_UNION1_ScalarPrefetch {.inline.} = self.union1.ScalarPrefetch proc `BlockPrefetch=`*(self: var DISK_CACHE_INFORMATION, x: DISK_CACHE_INFORMATION_UNION1_BlockPrefetch) {.inline.} = self.union1.BlockPrefetch = x proc BlockPrefetch*(self: DISK_CACHE_INFORMATION): DISK_CACHE_INFORMATION_UNION1_BlockPrefetch {.inline.} = self.union1.BlockPrefetch proc BlockPrefetch*(self: var DISK_CACHE_INFORMATION): var DISK_CACHE_INFORMATION_UNION1_BlockPrefetch {.inline.} = self.union1.BlockPrefetch proc `BirthVolumeId=`*(self: var FILE_OBJECTID_BUFFER, x: array[16, BYTE]) {.inline.} = self.union1.struct1.BirthVolumeId = x proc BirthVolumeId*(self: FILE_OBJECTID_BUFFER): array[16, BYTE] {.inline.} = self.union1.struct1.BirthVolumeId proc BirthVolumeId*(self: var FILE_OBJECTID_BUFFER): var array[16, BYTE] {.inline.} = self.union1.struct1.BirthVolumeId proc `BirthObjectId=`*(self: var FILE_OBJECTID_BUFFER, x: array[16, BYTE]) {.inline.} = self.union1.struct1.BirthObjectId = x proc BirthObjectId*(self: FILE_OBJECTID_BUFFER): array[16, BYTE] {.inline.} = self.union1.struct1.BirthObjectId proc BirthObjectId*(self: var FILE_OBJECTID_BUFFER): var array[16, BYTE] {.inline.} = self.union1.struct1.BirthObjectId proc `DomainId=`*(self: var FILE_OBJECTID_BUFFER, x: array[16, BYTE]) {.inline.} = self.union1.struct1.DomainId = x proc DomainId*(self: FILE_OBJECTID_BUFFER): array[16, BYTE] {.inline.} = self.union1.struct1.DomainId proc DomainId*(self: var FILE_OBJECTID_BUFFER): var array[16, BYTE] {.inline.} = self.union1.struct1.DomainId proc `ExtendedInfo=`*(self: var FILE_OBJECTID_BUFFER, x: array[48, BYTE]) {.inline.} = self.union1.ExtendedInfo = x proc ExtendedInfo*(self: FILE_OBJECTID_BUFFER): array[48, BYTE] {.inline.} = self.union1.ExtendedInfo proc ExtendedInfo*(self: var FILE_OBJECTID_BUFFER): var array[48, BYTE] {.inline.} = self.union1.ExtendedInfo proc `BufferLength=`*(self: var TXFS_READ_BACKUP_INFORMATION_OUT, x: ULONG) {.inline.} = self.union1.BufferLength = x proc BufferLength*(self: TXFS_READ_BACKUP_INFORMATION_OUT): ULONG {.inline.} = self.union1.BufferLength proc BufferLength*(self: var TXFS_READ_BACKUP_INFORMATION_OUT): var ULONG {.inline.} = self.union1.BufferLength proc `Buffer=`*(self: var TXFS_READ_BACKUP_INFORMATION_OUT, x: UCHAR) {.inline.} = self.union1.Buffer = x proc Buffer*(self: TXFS_READ_BACKUP_INFORMATION_OUT): UCHAR {.inline.} = self.union1.Buffer proc Buffer*(self: var TXFS_READ_BACKUP_INFORMATION_OUT): var UCHAR {.inline.} = self.union1.Buffer when winimCpu64: type MOVE_FILE_DATA32* {.pure.} = object FileHandle*: UINT32 StartingVcn*: LARGE_INTEGER StartingLcn*: LARGE_INTEGER ClusterCount*: DWORD PMOVE_FILE_DATA32* = ptr MOVE_FILE_DATA32 MARK_HANDLE_INFO32* {.pure.} = object UsnSourceInfo*: DWORD VolumeHandle*: UINT32 HandleInfo*: DWORD PMARK_HANDLE_INFO32* = ptr MARK_HANDLE_INFO32