Mercurial > games > semicongine
comparison fuhtark_test/include/winapi/ntmsapi.h @ 1500:91c8c3b7cbf0
add: futhark tests for generating vulkan api
| author | sam <sam@basx.dev> |
|---|---|
| date | Wed, 26 Nov 2025 21:36:48 +0700 |
| parents | |
| children |
comparison
equal
deleted
inserted
replaced
| 1499:1f58458b7ef7 | 1500:91c8c3b7cbf0 |
|---|---|
| 1 /** | |
| 2 * This file has no copyright assigned and is placed in the Public Domain. | |
| 3 * This file is part of the w64 mingw-runtime package. | |
| 4 * No warranty is given; refer to the file DISCLAIMER within this package. | |
| 5 */ | |
| 6 #ifndef _INCL_NTMSAPI_H_ | |
| 7 #define _INCL_NTMSAPI_H_ | |
| 8 | |
| 9 #pragma pack(8) | |
| 10 | |
| 11 #ifdef __cplusplus | |
| 12 extern "C" { | |
| 13 #endif | |
| 14 | |
| 15 typedef GUID NTMS_GUID; | |
| 16 typedef GUID *LPNTMS_GUID; | |
| 17 | |
| 18 #define NTMS_NULLGUID {0,0,0,{0,0,0,0,0,0,0,0}} | |
| 19 #define NTMS_IS_NULLGUID(id) ((id.Data1==0)&&(id.Data2==0)&&(id.Data3==0)&& (id.Data4[0]==0)&&(id.Data4[1]==0)&&(id.Data4[2]==0)&& (id.Data4[3]==0)&&(id.Data4[4]==0)&&(id.Data4[5]==0)&& (id.Data4[6]==0)&&(id.Data4[7]==0)) | |
| 20 | |
| 21 #ifdef UNICODE | |
| 22 #define OpenNtmsSession OpenNtmsSessionW | |
| 23 #define GetNtmsDeviceName GetNtmsDeviceNameW | |
| 24 #define GetNtmsObjectInformation GetNtmsObjectInformationW | |
| 25 #define SetNtmsObjectInformation SetNtmsObjectInformationW | |
| 26 #define CreateNtmsMediaPool CreateNtmsMediaPoolW | |
| 27 #define GetNtmsMediaPoolName GetNtmsMediaPoolNameW | |
| 28 #define GetNtmsObjectAttribute GetNtmsObjectAttributeW | |
| 29 #define SetNtmsObjectAttribute SetNtmsObjectAttributeW | |
| 30 #define GetNtmsUIOptions GetNtmsUIOptionsW | |
| 31 #define SetNtmsUIOptions SetNtmsUIOptionsW | |
| 32 #define SubmitNtmsOperatorRequest SubmitNtmsOperatorRequestW | |
| 33 #define CreateNtmsMedia CreateNtmsMediaW | |
| 34 #define EjectDiskFromSADrive EjectDiskFromSADriveW | |
| 35 #define GetVolumesFromDrive GetVolumesFromDriveW | |
| 36 #else | |
| 37 #define OpenNtmsSession OpenNtmsSessionA | |
| 38 #define GetNtmsDeviceName GetNtmsDeviceNameA | |
| 39 #define GetNtmsObjectInformation GetNtmsObjectInformationA | |
| 40 #define SetNtmsObjectInformation SetNtmsObjectInformationA | |
| 41 #define CreateNtmsMediaPool CreateNtmsMediaPoolA | |
| 42 #define GetNtmsMediaPoolName GetNtmsMediaPoolNameA | |
| 43 #define GetNtmsObjectAttribute GetNtmsObjectAttributeA | |
| 44 #define SetNtmsObjectAttribute SetNtmsObjectAttributeA | |
| 45 #define GetNtmsUIOptions GetNtmsUIOptionsA | |
| 46 #define SetNtmsUIOptions SetNtmsUIOptionsA | |
| 47 #define SubmitNtmsOperatorRequest SubmitNtmsOperatorRequestA | |
| 48 #define CreateNtmsMedia CreateNtmsMediaA | |
| 49 #define EjectDiskFromSADrive EjectDiskFromSADriveA | |
| 50 #define GetVolumesFromDrive GetVolumesFromDriveA | |
| 51 #endif | |
| 52 | |
| 53 #ifndef NTMS_NOREDEF | |
| 54 | |
| 55 enum NtmsObjectsTypes { | |
| 56 NTMS_UNKNOWN = 0,NTMS_OBJECT,NTMS_CHANGER,NTMS_CHANGER_TYPE,NTMS_COMPUTER,NTMS_DRIVE,NTMS_DRIVE_TYPE,NTMS_IEDOOR,NTMS_IEPORT,NTMS_LIBRARY, | |
| 57 NTMS_LIBREQUEST,NTMS_LOGICAL_MEDIA,NTMS_MEDIA_POOL,NTMS_MEDIA_TYPE,NTMS_PARTITION,NTMS_PHYSICAL_MEDIA,NTMS_STORAGESLOT,NTMS_OPREQUEST, | |
| 58 NTMS_UI_DESTINATION,NTMS_NUMBER_OF_OBJECT_TYPES | |
| 59 }; | |
| 60 | |
| 61 typedef struct _NTMS_ASYNC_IO { | |
| 62 NTMS_GUID OperationId; | |
| 63 NTMS_GUID EventId; | |
| 64 DWORD dwOperationType; | |
| 65 DWORD dwResult; | |
| 66 DWORD dwAsyncState; | |
| 67 HANDLE hEvent; | |
| 68 WINBOOL bOnStateChange; | |
| 69 } NTMS_ASYNC_IO,*LPNTMS_ASYNC_IO; | |
| 70 | |
| 71 enum NtmsAsyncStatus { | |
| 72 NTMS_ASYNCSTATE_QUEUED = 0,NTMS_ASYNCSTATE_WAIT_RESOURCE,NTMS_ASYNCSTATE_WAIT_OPERATOR,NTMS_ASYNCSTATE_INPROCESS,NTMS_ASYNCSTATE_COMPLETE | |
| 73 }; | |
| 74 | |
| 75 enum NtmsAsyncOperations { | |
| 76 NTMS_ASYNCOP_MOUNT = 1 | |
| 77 }; | |
| 78 #endif | |
| 79 | |
| 80 enum NtmsSessionOptions { | |
| 81 NTMS_SESSION_QUERYEXPEDITE = 0x1 | |
| 82 }; | |
| 83 | |
| 84 HANDLE WINAPI OpenNtmsSessionW(LPCWSTR lpServer,LPCWSTR lpApplication,DWORD dwOptions); | |
| 85 HANDLE WINAPI OpenNtmsSessionA(LPCSTR lpServer,LPCSTR lpApplication,DWORD dwOptions); | |
| 86 DWORD WINAPI CloseNtmsSession(HANDLE hSession); | |
| 87 | |
| 88 #ifndef NTMS_NOREDEF | |
| 89 | |
| 90 enum NtmsMountOptions { | |
| 91 NTMS_MOUNT_READ = 0x0001,NTMS_MOUNT_WRITE = 0x0002,NTMS_MOUNT_ERROR_NOT_AVAILABLE = 0x0004,NTMS_MOUNT_ERROR_IF_UNAVAILABLE = 0x0004, | |
| 92 NTMS_MOUNT_ERROR_OFFLINE = 0x0008,NTMS_MOUNT_ERROR_IF_OFFLINE = 0x0008,NTMS_MOUNT_SPECIFIC_DRIVE = 0x0010,NTMS_MOUNT_NOWAIT = 0x0020 | |
| 93 }; | |
| 94 | |
| 95 enum NtmsDismountOptions { | |
| 96 NTMS_DISMOUNT_DEFERRED = 0x0001,NTMS_DISMOUNT_IMMEDIATE = 0x0002 | |
| 97 }; | |
| 98 | |
| 99 enum NtmsMountPriority { | |
| 100 NTMS_PRIORITY_DEFAULT = 0,NTMS_PRIORITY_HIGHEST = 15,NTMS_PRIORITY_HIGH = 7,NTMS_PRIORITY_NORMAL = 0,NTMS_PRIORITY_LOW = -7, | |
| 101 NTMS_PRIORITY_LOWEST = -15 | |
| 102 }; | |
| 103 | |
| 104 typedef struct _NTMS_MOUNT_INFORMATION { | |
| 105 DWORD dwSize; | |
| 106 LPVOID lpReserved; | |
| 107 } NTMS_MOUNT_INFORMATION,*LPNTMS_MOUNT_INFORMATION; | |
| 108 #endif | |
| 109 | |
| 110 DWORD WINAPI MountNtmsMedia(HANDLE hSession,LPNTMS_GUID lpMediaId,LPNTMS_GUID lpDriveId,DWORD dwCount,DWORD dwOptions,int dwPriority,DWORD dwTimeout,LPNTMS_MOUNT_INFORMATION lpMountInformation); | |
| 111 DWORD WINAPI DismountNtmsMedia(HANDLE hSession,LPNTMS_GUID lpMediaId,DWORD dwCount,DWORD dwOptions); | |
| 112 | |
| 113 #ifndef NTMS_NOREDEF | |
| 114 enum NtmsAllocateOptions { | |
| 115 NTMS_ALLOCATE_NEW = 0x0001,NTMS_ALLOCATE_NEXT = 0x0002,NTMS_ALLOCATE_ERROR_IF_UNAVAILABLE = 0x0004 | |
| 116 }; | |
| 117 | |
| 118 typedef struct _NTMS_ALLOCATION_INFORMATION { | |
| 119 DWORD dwSize; | |
| 120 LPVOID lpReserved; | |
| 121 NTMS_GUID AllocatedFrom; | |
| 122 } NTMS_ALLOCATION_INFORMATION,*LPNTMS_ALLOCATION_INFORMATION; | |
| 123 #endif | |
| 124 | |
| 125 DWORD WINAPI AllocateNtmsMedia(HANDLE hSession,LPNTMS_GUID lpMediaPool,LPNTMS_GUID lpPartition,LPNTMS_GUID lpMediaId,DWORD dwOptions,DWORD dwTimeout,LPNTMS_ALLOCATION_INFORMATION lpAllocateInformation); | |
| 126 DWORD WINAPI DeallocateNtmsMedia(HANDLE hSession,LPNTMS_GUID lpMediaId,DWORD dwOptions); | |
| 127 DWORD WINAPI SwapNtmsMedia(HANDLE hSession,LPNTMS_GUID lpMediaId1,LPNTMS_GUID lpMediaId2); | |
| 128 DWORD WINAPI AddNtmsMediaType(HANDLE hSession,LPNTMS_GUID lpMediaTypeId,LPNTMS_GUID lpLibId); | |
| 129 DWORD WINAPI DeleteNtmsMediaType(HANDLE hSession,LPNTMS_GUID lpMediaTypeId,LPNTMS_GUID lpLibId); | |
| 130 DWORD WINAPI ChangeNtmsMediaType(HANDLE hSession,LPNTMS_GUID lpMediaId,LPNTMS_GUID lpPoolId); | |
| 131 DWORD WINAPI DecommissionNtmsMedia(HANDLE hSession,LPNTMS_GUID lpMediaId); | |
| 132 DWORD WINAPI SetNtmsMediaComplete(HANDLE hSession,LPNTMS_GUID lpMediaId); | |
| 133 DWORD WINAPI DeleteNtmsMedia(HANDLE hSession,LPNTMS_GUID lpMediaId); | |
| 134 | |
| 135 #ifndef NTMS_NOREDEF | |
| 136 enum NtmsCreateOptions { | |
| 137 NTMS_OPEN_EXISTING = 0x0001,NTMS_CREATE_NEW = 0x0002,NTMS_OPEN_ALWAYS = 0x0003 | |
| 138 }; | |
| 139 #endif | |
| 140 | |
| 141 #ifdef PRE_SEVIL | |
| 142 DWORD WINAPI CreateNtmsMediaPool(HANDLE hSession,LPCTSTR lpPoolName,LPNTMS_GUID lpMediaType,DWORD dwAction,LPSECURITY_ATTRIBUTES lpSecurityAttributes,LPNTMS_GUID lpPoolId); | |
| 143 #endif | |
| 144 DWORD WINAPI CreateNtmsMediaPoolA(HANDLE hSession,LPCSTR lpPoolName,LPNTMS_GUID lpMediaType,DWORD dwAction,LPSECURITY_ATTRIBUTES lpSecurityAttributes,LPNTMS_GUID lpPoolId); | |
| 145 DWORD WINAPI CreateNtmsMediaPoolW(HANDLE hSession,LPCWSTR lpPoolName,LPNTMS_GUID lpMediaType,DWORD dwAction,LPSECURITY_ATTRIBUTES lpSecurityAttributes,LPNTMS_GUID lpPoolId); | |
| 146 DWORD WINAPI GetNtmsMediaPoolNameA(HANDLE hSession,LPNTMS_GUID lpPoolId,LPSTR lpNameBuf,LPDWORD lpdwBufSize); | |
| 147 DWORD WINAPI GetNtmsMediaPoolNameW(HANDLE hSession,LPNTMS_GUID lpPoolId,LPWSTR lpNameBuf,LPDWORD lpdwBufSize); | |
| 148 DWORD WINAPI MoveToNtmsMediaPool(HANDLE hSession,LPNTMS_GUID lpMediaId,LPNTMS_GUID lpPoolId); | |
| 149 DWORD WINAPI DeleteNtmsMediaPool(HANDLE hSession,LPNTMS_GUID lpPoolId); | |
| 150 DWORD WINAPI DeleteNtmsLibrary(HANDLE hSession,LPNTMS_GUID lpLibraryId); | |
| 151 DWORD WINAPI DeleteNtmsDrive(HANDLE hSession,LPNTMS_GUID lpDriveId); | |
| 152 | |
| 153 #define NTMS_OBJECTNAME_LENGTH 64 | |
| 154 #define NTMS_DESCRIPTION_LENGTH 127 | |
| 155 #define NTMS_DEVICENAME_LENGTH 64 | |
| 156 #define NTMS_SERIALNUMBER_LENGTH 32 | |
| 157 #define NTMS_REVISION_LENGTH 32 | |
| 158 #define NTMS_BARCODE_LENGTH 64 | |
| 159 #define NTMS_SEQUENCE_LENGTH 32 | |
| 160 #define NTMS_VENDORNAME_LENGTH 128 | |
| 161 #define NTMS_PRODUCTNAME_LENGTH 128 | |
| 162 #define NTMS_USERNAME_LENGTH 64 | |
| 163 #define NTMS_APPLICATIONNAME_LENGTH 64 | |
| 164 #define NTMS_COMPUTERNAME_LENGTH 64 | |
| 165 #define NTMS_I1_MESSAGE_LENGTH 127 | |
| 166 #define NTMS_MESSAGE_LENGTH 256 | |
| 167 #define NTMS_POOLHIERARCHY_LENGTH 512 | |
| 168 #define NTMS_OMIDLABELID_LENGTH 255 | |
| 169 #define NTMS_OMIDLABELTYPE_LENGTH 64 | |
| 170 #define NTMS_OMIDLABELINFO_LENGTH 256 | |
| 171 | |
| 172 #ifndef NTMS_NOREDEF | |
| 173 | |
| 174 enum NtmsDriveState { | |
| 175 NTMS_DRIVESTATE_DISMOUNTED = 0,NTMS_DRIVESTATE_MOUNTED = 1,NTMS_DRIVESTATE_LOADED = 2,NTMS_DRIVESTATE_UNLOADED = 5, | |
| 176 NTMS_DRIVESTATE_BEING_CLEANED = 6,NTMS_DRIVESTATE_DISMOUNTABLE = 7 | |
| 177 }; | |
| 178 | |
| 179 #ifdef UNICODE | |
| 180 #define _NTMS_DRIVEINFORMATION _NTMS_DRIVEINFORMATIONW | |
| 181 #define NTMS_DRIVEINFORMATION NTMS_DRIVEINFORMATIONW | |
| 182 #else | |
| 183 #define _NTMS_DRIVEINFORMATION _NTMS_DRIVEINFORMATIONA | |
| 184 #define NTMS_DRIVEINFORMATION NTMS_DRIVEINFORMATIONA | |
| 185 #endif | |
| 186 | |
| 187 typedef struct _NTMS_DRIVEINFORMATIONA { | |
| 188 DWORD Number; | |
| 189 DWORD State; | |
| 190 NTMS_GUID DriveType; | |
| 191 CHAR szDeviceName[NTMS_DEVICENAME_LENGTH]; | |
| 192 CHAR szSerialNumber[NTMS_SERIALNUMBER_LENGTH]; | |
| 193 CHAR szRevision[NTMS_REVISION_LENGTH]; | |
| 194 WORD ScsiPort; | |
| 195 WORD ScsiBus; | |
| 196 WORD ScsiTarget; | |
| 197 WORD ScsiLun; | |
| 198 DWORD dwMountCount; | |
| 199 SYSTEMTIME LastCleanedTs; | |
| 200 NTMS_GUID SavedPartitionId; | |
| 201 NTMS_GUID Library; | |
| 202 GUID Reserved; | |
| 203 DWORD dwDeferDismountDelay; | |
| 204 } NTMS_DRIVEINFORMATIONA; | |
| 205 | |
| 206 typedef struct _NTMS_DRIVEINFORMATIONW { | |
| 207 DWORD Number; | |
| 208 DWORD State; | |
| 209 NTMS_GUID DriveType; | |
| 210 WCHAR szDeviceName[NTMS_DEVICENAME_LENGTH]; | |
| 211 WCHAR szSerialNumber[NTMS_SERIALNUMBER_LENGTH]; | |
| 212 WCHAR szRevision[NTMS_REVISION_LENGTH]; | |
| 213 WORD ScsiPort; | |
| 214 WORD ScsiBus; | |
| 215 WORD ScsiTarget; | |
| 216 WORD ScsiLun; | |
| 217 DWORD dwMountCount; | |
| 218 SYSTEMTIME LastCleanedTs; | |
| 219 NTMS_GUID SavedPartitionId; | |
| 220 NTMS_GUID Library; | |
| 221 GUID Reserved; | |
| 222 DWORD dwDeferDismountDelay; | |
| 223 } NTMS_DRIVEINFORMATIONW; | |
| 224 | |
| 225 enum NtmsLibraryType { | |
| 226 NTMS_LIBRARYTYPE_UNKNOWN = 0,NTMS_LIBRARYTYPE_OFFLINE = 1,NTMS_LIBRARYTYPE_ONLINE = 2,NTMS_LIBRARYTYPE_STANDALONE = 3 | |
| 227 }; | |
| 228 | |
| 229 enum NtmsLibraryFlags { | |
| 230 NTMS_LIBRARYFLAG_FIXEDOFFLINE = 0x01,NTMS_LIBRARYFLAG_CLEANERPRESENT = 0x02,NTMS_LIBRARYFLAG_AUTODETECTCHANGE = 0x04, | |
| 231 NTMS_LIBRARYFLAG_IGNORECLEANERUSESREMAINING = 0x08,NTMS_LIBRARYFLAG_RECOGNIZECLEANERBARCODE = 0x10 | |
| 232 }; | |
| 233 | |
| 234 enum NtmsInventoryMethod { | |
| 235 NTMS_INVENTORY_NONE = 0,NTMS_INVENTORY_FAST = 1,NTMS_INVENTORY_OMID = 2,NTMS_INVENTORY_DEFAULT = 3,NTMS_INVENTORY_SLOT = 4, | |
| 236 NTMS_INVENTORY_STOP = 5,NTMS_INVENTORY_MAX | |
| 237 }; | |
| 238 | |
| 239 typedef struct _NTMS_LIBRARYINFORMATION { | |
| 240 DWORD LibraryType; | |
| 241 NTMS_GUID CleanerSlot; | |
| 242 NTMS_GUID CleanerSlotDefault; | |
| 243 WINBOOL LibrarySupportsDriveCleaning; | |
| 244 WINBOOL BarCodeReaderInstalled; | |
| 245 DWORD InventoryMethod; | |
| 246 DWORD dwCleanerUsesRemaining; | |
| 247 DWORD FirstDriveNumber; | |
| 248 DWORD dwNumberOfDrives; | |
| 249 DWORD FirstSlotNumber; | |
| 250 DWORD dwNumberOfSlots; | |
| 251 DWORD FirstDoorNumber; | |
| 252 DWORD dwNumberOfDoors; | |
| 253 DWORD FirstPortNumber; | |
| 254 DWORD dwNumberOfPorts; | |
| 255 DWORD FirstChangerNumber; | |
| 256 DWORD dwNumberOfChangers; | |
| 257 DWORD dwNumberOfMedia; | |
| 258 DWORD dwNumberOfMediaTypes; | |
| 259 DWORD dwNumberOfLibRequests; | |
| 260 GUID Reserved; | |
| 261 WINBOOL AutoRecovery; | |
| 262 DWORD dwFlags; | |
| 263 } NTMS_LIBRARYINFORMATION; | |
| 264 | |
| 265 #ifdef UNICODE | |
| 266 #define _NTMS_CHANGERINFORMATION _NTMS_CHANGERINFORMATIONW | |
| 267 #define NTMS_CHANGERINFORMATION NTMS_CHANGERINFORMATIONW | |
| 268 #else | |
| 269 #define _NTMS_CHANGERINFORMATION _NTMS_CHANGERINFORMATIONA | |
| 270 #define NTMS_CHANGERINFORMATION NTMS_CHANGERINFORMATIONA | |
| 271 #endif | |
| 272 | |
| 273 typedef struct _NTMS_CHANGERINFORMATIONA { | |
| 274 DWORD Number; | |
| 275 NTMS_GUID ChangerType; | |
| 276 CHAR szSerialNumber[NTMS_SERIALNUMBER_LENGTH]; | |
| 277 CHAR szRevision[NTMS_REVISION_LENGTH]; | |
| 278 CHAR szDeviceName[NTMS_DEVICENAME_LENGTH]; | |
| 279 WORD ScsiPort; | |
| 280 WORD ScsiBus; | |
| 281 WORD ScsiTarget; | |
| 282 WORD ScsiLun; | |
| 283 NTMS_GUID Library; | |
| 284 } NTMS_CHANGERINFORMATIONA; | |
| 285 | |
| 286 typedef struct _NTMS_CHANGERINFORMATIONW { | |
| 287 DWORD Number; | |
| 288 NTMS_GUID ChangerType; | |
| 289 WCHAR szSerialNumber[NTMS_SERIALNUMBER_LENGTH]; | |
| 290 WCHAR szRevision[NTMS_REVISION_LENGTH]; | |
| 291 WCHAR szDeviceName[NTMS_DEVICENAME_LENGTH]; | |
| 292 WORD ScsiPort; | |
| 293 WORD ScsiBus; | |
| 294 WORD ScsiTarget; | |
| 295 WORD ScsiLun; | |
| 296 NTMS_GUID Library; | |
| 297 } NTMS_CHANGERINFORMATIONW; | |
| 298 | |
| 299 enum NtmsSlotState { | |
| 300 NTMS_SLOTSTATE_UNKNOWN = 0,NTMS_SLOTSTATE_FULL = 1,NTMS_SLOTSTATE_EMPTY = 2,NTMS_SLOTSTATE_NOTPRESENT = 3,NTMS_SLOTSTATE_NEEDSINVENTORY = 4 | |
| 301 }; | |
| 302 | |
| 303 typedef struct _NTMS_STORAGESLOTINFORMATION { | |
| 304 DWORD Number; | |
| 305 DWORD State; | |
| 306 NTMS_GUID Library; | |
| 307 } NTMS_STORAGESLOTINFORMATION; | |
| 308 | |
| 309 enum NtmsDoorState { | |
| 310 NTMS_DOORSTATE_UNKNOWN = 0,NTMS_DOORSTATE_CLOSED = 1,NTMS_DOORSTATE_OPEN = 2 | |
| 311 }; | |
| 312 | |
| 313 typedef struct _NTMS_IEDOORINFORMATION { | |
| 314 DWORD Number; | |
| 315 DWORD State; | |
| 316 WORD MaxOpenSecs; | |
| 317 NTMS_GUID Library; | |
| 318 } NTMS_IEDOORINFORMATION; | |
| 319 | |
| 320 enum NtmsPortPosition { | |
| 321 NTMS_PORTPOSITION_UNKNOWN = 0,NTMS_PORTPOSITION_EXTENDED = 1,NTMS_PORTPOSITION_RETRACTED = 2 | |
| 322 }; | |
| 323 | |
| 324 enum NtmsPortContent { | |
| 325 NTMS_PORTCONTENT_UNKNOWN = 0,NTMS_PORTCONTENT_FULL = 1,NTMS_PORTCONTENT_EMPTY = 2 | |
| 326 }; | |
| 327 | |
| 328 typedef struct _NTMS_IEPORTINFORMATION { | |
| 329 DWORD Number; | |
| 330 DWORD Content; | |
| 331 DWORD Position; | |
| 332 WORD MaxExtendSecs; | |
| 333 NTMS_GUID Library; | |
| 334 } NTMS_IEPORTINFORMATION; | |
| 335 | |
| 336 enum NtmsBarCodeState { | |
| 337 NTMS_BARCODESTATE_OK = 1,NTMS_BARCODESTATE_UNREADABLE = 2 | |
| 338 }; | |
| 339 | |
| 340 enum NtmsMediaState { | |
| 341 NTMS_MEDIASTATE_IDLE = 0,NTMS_MEDIASTATE_INUSE = 1,NTMS_MEDIASTATE_MOUNTED = 2,NTMS_MEDIASTATE_LOADED = 3,NTMS_MEDIASTATE_UNLOADED = 4, | |
| 342 NTMS_MEDIASTATE_OPERROR = 5,NTMS_MEDIASTATE_OPREQ = 6 | |
| 343 }; | |
| 344 | |
| 345 #ifdef UNICODE | |
| 346 #define _NTMS_PMIDINFORMATION _NTMS_PMIDINFORMATIONW | |
| 347 #define NTMS_PMIDINFORMATION NTMS_PMIDINFORMATIONW | |
| 348 #else | |
| 349 #define _NTMS_PMIDINFORMATION _NTMS_PMIDINFORMATIONA | |
| 350 #define NTMS_PMIDINFORMATION NTMS_PMIDINFORMATIONA | |
| 351 #endif | |
| 352 | |
| 353 typedef struct _NTMS_PMIDINFORMATIONA { | |
| 354 NTMS_GUID CurrentLibrary; | |
| 355 NTMS_GUID MediaPool; | |
| 356 NTMS_GUID Location; | |
| 357 DWORD LocationType; | |
| 358 NTMS_GUID MediaType; | |
| 359 NTMS_GUID HomeSlot; | |
| 360 CHAR szBarCode[NTMS_BARCODE_LENGTH]; | |
| 361 DWORD BarCodeState; | |
| 362 CHAR szSequenceNumber[NTMS_SEQUENCE_LENGTH]; | |
| 363 DWORD MediaState; | |
| 364 DWORD dwNumberOfPartitions; | |
| 365 DWORD dwMediaTypeCode; | |
| 366 DWORD dwDensityCode; | |
| 367 NTMS_GUID MountedPartition; | |
| 368 } NTMS_PMIDINFORMATIONA; | |
| 369 | |
| 370 typedef struct _NTMS_PMIDINFORMATIONW { | |
| 371 NTMS_GUID CurrentLibrary; | |
| 372 NTMS_GUID MediaPool; | |
| 373 NTMS_GUID Location; | |
| 374 DWORD LocationType; | |
| 375 NTMS_GUID MediaType; | |
| 376 NTMS_GUID HomeSlot; | |
| 377 WCHAR szBarCode[NTMS_BARCODE_LENGTH]; | |
| 378 DWORD BarCodeState; | |
| 379 WCHAR szSequenceNumber[NTMS_SEQUENCE_LENGTH]; | |
| 380 DWORD MediaState; | |
| 381 DWORD dwNumberOfPartitions; | |
| 382 DWORD dwMediaTypeCode; | |
| 383 DWORD dwDensityCode; | |
| 384 NTMS_GUID MountedPartition; | |
| 385 } NTMS_PMIDINFORMATIONW; | |
| 386 | |
| 387 typedef struct _NTMS_LMIDINFORMATION { | |
| 388 NTMS_GUID MediaPool; | |
| 389 DWORD dwNumberOfPartitions; | |
| 390 } NTMS_LMIDINFORMATION; | |
| 391 | |
| 392 enum NtmsPartitionState { | |
| 393 NTMS_PARTSTATE_UNKNOWN = 0,NTMS_PARTSTATE_UNPREPARED = 1,NTMS_PARTSTATE_INCOMPATIBLE = 2,NTMS_PARTSTATE_DECOMMISSIONED = 3, | |
| 394 NTMS_PARTSTATE_AVAILABLE = 4,NTMS_PARTSTATE_ALLOCATED = 5,NTMS_PARTSTATE_COMPLETE = 6,NTMS_PARTSTATE_FOREIGN = 7,NTMS_PARTSTATE_IMPORT = 8, | |
| 395 NTMS_PARTSTATE_RESERVED = 9 | |
| 396 }; | |
| 397 | |
| 398 #define NTMS_PARTSTATE_NEW NTMS_PARTSTATE_UNKNOWN | |
| 399 | |
| 400 #ifdef UNICODE | |
| 401 #define _NTMS_PARTITIONINFORMATION _NTMS_PARTITIONINFORMATIONW | |
| 402 #define NTMS_PARTITIONINFORMATION NTMS_PARTITIONINFORMATIONW | |
| 403 #else | |
| 404 #define _NTMS_PARTITIONINFORMATION _NTMS_PARTITIONINFORMATIONA | |
| 405 #define NTMS_PARTITIONINFORMATION NTMS_PARTITIONINFORMATIONA | |
| 406 #endif | |
| 407 | |
| 408 typedef struct _NTMS_PARTITIONINFORMATIONA { | |
| 409 NTMS_GUID PhysicalMedia; | |
| 410 NTMS_GUID LogicalMedia; | |
| 411 DWORD State; | |
| 412 WORD Side; | |
| 413 DWORD dwOmidLabelIdLength; | |
| 414 BYTE OmidLabelId[NTMS_OMIDLABELID_LENGTH]; | |
| 415 CHAR szOmidLabelType[NTMS_OMIDLABELTYPE_LENGTH]; | |
| 416 CHAR szOmidLabelInfo[NTMS_OMIDLABELINFO_LENGTH]; | |
| 417 DWORD dwMountCount; | |
| 418 DWORD dwAllocateCount; | |
| 419 LARGE_INTEGER Capacity; | |
| 420 } NTMS_PARTITIONINFORMATIONA; | |
| 421 | |
| 422 typedef struct _NTMS_PARTITIONINFORMATIONW { | |
| 423 NTMS_GUID PhysicalMedia; | |
| 424 NTMS_GUID LogicalMedia; | |
| 425 DWORD State; | |
| 426 WORD Side; | |
| 427 DWORD dwOmidLabelIdLength; | |
| 428 BYTE OmidLabelId[NTMS_OMIDLABELID_LENGTH]; | |
| 429 WCHAR szOmidLabelType[NTMS_OMIDLABELTYPE_LENGTH]; | |
| 430 WCHAR szOmidLabelInfo[NTMS_OMIDLABELINFO_LENGTH]; | |
| 431 DWORD dwMountCount; | |
| 432 DWORD dwAllocateCount; | |
| 433 LARGE_INTEGER Capacity; | |
| 434 } NTMS_PARTITIONINFORMATIONW; | |
| 435 | |
| 436 enum NtmsPoolType { | |
| 437 NTMS_POOLTYPE_UNKNOWN = 0,NTMS_POOLTYPE_SCRATCH = 1,NTMS_POOLTYPE_FOREIGN = 2,NTMS_POOLTYPE_IMPORT = 3,NTMS_POOLTYPE_APPLICATION = 1000 | |
| 438 }; | |
| 439 | |
| 440 enum NtmsAllocationPolicy { | |
| 441 NTMS_ALLOCATE_FROMSCRATCH = 1 | |
| 442 }; | |
| 443 | |
| 444 enum NtmsDeallocationPolicy { | |
| 445 NTMS_DEALLOCATE_TOSCRATCH = 1 | |
| 446 }; | |
| 447 | |
| 448 typedef struct _NTMS_MEDIAPOOLINFORMATION { | |
| 449 DWORD PoolType; | |
| 450 NTMS_GUID MediaType; | |
| 451 NTMS_GUID Parent; | |
| 452 DWORD AllocationPolicy; | |
| 453 DWORD DeallocationPolicy; | |
| 454 DWORD dwMaxAllocates; | |
| 455 DWORD dwNumberOfPhysicalMedia; | |
| 456 DWORD dwNumberOfLogicalMedia; | |
| 457 DWORD dwNumberOfMediaPools; | |
| 458 } NTMS_MEDIAPOOLINFORMATION; | |
| 459 | |
| 460 enum NtmsReadWriteCharacteristics { | |
| 461 NTMS_MEDIARW_UNKNOWN = 0,NTMS_MEDIARW_REWRITABLE = 1,NTMS_MEDIARW_WRITEONCE = 2,NTMS_MEDIARW_READONLY = 3 | |
| 462 }; | |
| 463 | |
| 464 typedef struct _NTMS_MEDIATYPEINFORMATION { | |
| 465 DWORD MediaType; | |
| 466 DWORD NumberOfSides; | |
| 467 DWORD ReadWriteCharacteristics; | |
| 468 DWORD DeviceType; | |
| 469 } NTMS_MEDIATYPEINFORMATION; | |
| 470 | |
| 471 #ifdef UNICODE | |
| 472 #define _NTMS_DRIVETYPEINFORMATION _NTMS_DRIVETYPEINFORMATIONW | |
| 473 #define NTMS_DRIVETYPEINFORMATION NTMS_DRIVETYPEINFORMATIONW | |
| 474 #else | |
| 475 #define _NTMS_DRIVETYPEINFORMATION _NTMS_DRIVETYPEINFORMATIONA | |
| 476 #define NTMS_DRIVETYPEINFORMATION NTMS_DRIVETYPEINFORMATIONA | |
| 477 #endif | |
| 478 | |
| 479 typedef struct _NTMS_DRIVETYPEINFORMATIONA { | |
| 480 CHAR szVendor[NTMS_VENDORNAME_LENGTH]; | |
| 481 CHAR szProduct[NTMS_PRODUCTNAME_LENGTH]; | |
| 482 DWORD NumberOfHeads; | |
| 483 DWORD DeviceType; | |
| 484 } NTMS_DRIVETYPEINFORMATIONA; | |
| 485 | |
| 486 typedef struct _NTMS_DRIVETYPEINFORMATIONW { | |
| 487 WCHAR szVendor[NTMS_VENDORNAME_LENGTH]; | |
| 488 WCHAR szProduct[NTMS_PRODUCTNAME_LENGTH]; | |
| 489 DWORD NumberOfHeads; | |
| 490 DWORD DeviceType; | |
| 491 } NTMS_DRIVETYPEINFORMATIONW; | |
| 492 | |
| 493 #ifdef UNICODE | |
| 494 #define _NTMS_CHANGERTYPEINFORMATION _NTMS_CHANGERTYPEINFORMATIONW | |
| 495 #define NTMS_CHANGERTYPEINFORMATION NTMS_CHANGERTYPEINFORMATIONW | |
| 496 #else | |
| 497 #define _NTMS_CHANGERTYPEINFORMATION _NTMS_CHANGERTYPEINFORMATIONA | |
| 498 #define NTMS_CHANGERTYPEINFORMATION NTMS_CHANGERTYPEINFORMATIONA | |
| 499 #endif | |
| 500 | |
| 501 typedef struct _NTMS_CHANGERTYPEINFORMATIONA { | |
| 502 CHAR szVendor[NTMS_VENDORNAME_LENGTH]; | |
| 503 CHAR szProduct[NTMS_PRODUCTNAME_LENGTH]; | |
| 504 DWORD DeviceType; | |
| 505 } NTMS_CHANGERTYPEINFORMATIONA; | |
| 506 | |
| 507 typedef struct _NTMS_CHANGERTYPEINFORMATIONW { | |
| 508 WCHAR szVendor[NTMS_VENDORNAME_LENGTH]; | |
| 509 WCHAR szProduct[NTMS_PRODUCTNAME_LENGTH]; | |
| 510 DWORD DeviceType; | |
| 511 } NTMS_CHANGERTYPEINFORMATIONW; | |
| 512 | |
| 513 enum NtmsLmOperation { | |
| 514 NTMS_LM_REMOVE = 0,NTMS_LM_DISABLECHANGER = 1,NTMS_LM_DISABLELIBRARY = 1,NTMS_LM_ENABLECHANGER = 2,NTMS_LM_ENABLELIBRARY = 2, | |
| 515 NTMS_LM_DISABLEDRIVE = 3,NTMS_LM_ENABLEDRIVE = 4,NTMS_LM_DISABLEMEDIA = 5,NTMS_LM_ENABLEMEDIA = 6,NTMS_LM_UPDATEOMID = 7, | |
| 516 NTMS_LM_INVENTORY = 8,NTMS_LM_DOORACCESS = 9,NTMS_LM_EJECT = 10,NTMS_LM_EJECTCLEANER = 11,NTMS_LM_INJECT = 12,NTMS_LM_INJECTCLEANER = 13, | |
| 517 NTMS_LM_PROCESSOMID = 14,NTMS_LM_CLEANDRIVE = 15,NTMS_LM_DISMOUNT = 16,NTMS_LM_MOUNT = 17,NTMS_LM_WRITESCRATCH = 18,NTMS_LM_CLASSIFY = 19, | |
| 518 NTMS_LM_RESERVECLEANER = 20,NTMS_LM_RELEASECLEANER = 21,NTMS_LM_MAXWORKITEM | |
| 519 }; | |
| 520 | |
| 521 enum NtmsLmState { | |
| 522 NTMS_LM_QUEUED = 0,NTMS_LM_INPROCESS = 1,NTMS_LM_PASSED = 2,NTMS_LM_FAILED = 3,NTMS_LM_INVALID = 4,NTMS_LM_WAITING = 5, | |
| 523 NTMS_LM_DEFERRED = 6,NTMS_LM_DEFFERED = 6,NTMS_LM_CANCELLED = 7,NTMS_LM_STOPPED = 8 | |
| 524 }; | |
| 525 | |
| 526 #ifdef UNICODE | |
| 527 #define _NTMS_LIBREQUESTINFORMATION _NTMS_LIBREQUESTINFORMATIONW | |
| 528 #define NTMS_LIBREQUESTINFORMATION NTMS_LIBREQUESTINFORMATIONW | |
| 529 #else | |
| 530 #define _NTMS_LIBREQUESTINFORMATION _NTMS_LIBREQUESTINFORMATIONA | |
| 531 #define NTMS_LIBREQUESTINFORMATION NTMS_LIBREQUESTINFORMATIONA | |
| 532 #endif | |
| 533 | |
| 534 typedef struct _NTMS_LIBREQUESTINFORMATIONA { | |
| 535 DWORD OperationCode; | |
| 536 DWORD OperationOption; | |
| 537 DWORD State; | |
| 538 NTMS_GUID PartitionId; | |
| 539 NTMS_GUID DriveId; | |
| 540 NTMS_GUID PhysMediaId; | |
| 541 NTMS_GUID Library; | |
| 542 NTMS_GUID SlotId; | |
| 543 SYSTEMTIME TimeQueued; | |
| 544 SYSTEMTIME TimeCompleted; | |
| 545 CHAR szApplication[NTMS_APPLICATIONNAME_LENGTH]; | |
| 546 CHAR szUser[NTMS_USERNAME_LENGTH]; | |
| 547 CHAR szComputer[NTMS_COMPUTERNAME_LENGTH]; | |
| 548 DWORD dwErrorCode; | |
| 549 NTMS_GUID WorkItemId; | |
| 550 DWORD dwPriority; | |
| 551 } NTMS_LIBREQUESTINFORMATIONA; | |
| 552 | |
| 553 typedef struct _NTMS_LIBREQUESTINFORMATIONW { | |
| 554 DWORD OperationCode; | |
| 555 DWORD OperationOption; | |
| 556 DWORD State; | |
| 557 NTMS_GUID PartitionId; | |
| 558 NTMS_GUID DriveId; | |
| 559 NTMS_GUID PhysMediaId; | |
| 560 NTMS_GUID Library; | |
| 561 NTMS_GUID SlotId; | |
| 562 SYSTEMTIME TimeQueued; | |
| 563 SYSTEMTIME TimeCompleted; | |
| 564 WCHAR szApplication[NTMS_APPLICATIONNAME_LENGTH]; | |
| 565 WCHAR szUser[NTMS_USERNAME_LENGTH]; | |
| 566 WCHAR szComputer[NTMS_COMPUTERNAME_LENGTH]; | |
| 567 DWORD dwErrorCode; | |
| 568 NTMS_GUID WorkItemId; | |
| 569 DWORD dwPriority; | |
| 570 } NTMS_LIBREQUESTINFORMATIONW; | |
| 571 | |
| 572 enum NtmsOpreqCommand { | |
| 573 NTMS_OPREQ_UNKNOWN = 0,NTMS_OPREQ_NEWMEDIA = 1,NTMS_OPREQ_CLEANER = 2,NTMS_OPREQ_DEVICESERVICE = 3,NTMS_OPREQ_MOVEMEDIA = 4, | |
| 574 NTMS_OPREQ_MESSAGE = 5 | |
| 575 }; | |
| 576 | |
| 577 enum NtmsOpreqState { | |
| 578 NTMS_OPSTATE_UNKNOWN = 0,NTMS_OPSTATE_SUBMITTED = 1,NTMS_OPSTATE_ACTIVE = 2,NTMS_OPSTATE_INPROGRESS = 3,NTMS_OPSTATE_REFUSED = 4, | |
| 579 NTMS_OPSTATE_COMPLETE = 5 | |
| 580 }; | |
| 581 | |
| 582 #ifdef UNICODE | |
| 583 #define _NTMS_OPREQUESTINFORMATION _NTMS_OPREQUESTINFORMATIONW | |
| 584 #define NTMS_OPREQUESTINFORMATION NTMS_OPREQUESTINFORMATIONW | |
| 585 #else | |
| 586 #define _NTMS_OPREQUESTINFORMATION _NTMS_OPREQUESTINFORMATIONA | |
| 587 #define NTMS_OPREQUESTINFORMATION NTMS_OPREQUESTINFORMATIONA | |
| 588 #endif | |
| 589 | |
| 590 typedef struct _NTMS_OPREQUESTINFORMATIONA { | |
| 591 DWORD Request; | |
| 592 SYSTEMTIME Submitted; | |
| 593 DWORD State; | |
| 594 CHAR szMessage[NTMS_MESSAGE_LENGTH]; | |
| 595 DWORD Arg1Type; | |
| 596 NTMS_GUID Arg1; | |
| 597 DWORD Arg2Type; | |
| 598 NTMS_GUID Arg2; | |
| 599 CHAR szApplication[NTMS_APPLICATIONNAME_LENGTH]; | |
| 600 CHAR szUser[NTMS_USERNAME_LENGTH]; | |
| 601 CHAR szComputer[NTMS_COMPUTERNAME_LENGTH]; | |
| 602 } NTMS_OPREQUESTINFORMATIONA; | |
| 603 | |
| 604 typedef struct _NTMS_OPREQUESTINFORMATIONW { | |
| 605 DWORD Request; | |
| 606 SYSTEMTIME Submitted; | |
| 607 DWORD State; | |
| 608 WCHAR szMessage[NTMS_MESSAGE_LENGTH]; | |
| 609 DWORD Arg1Type; | |
| 610 NTMS_GUID Arg1; | |
| 611 DWORD Arg2Type; | |
| 612 NTMS_GUID Arg2; | |
| 613 WCHAR szApplication[NTMS_APPLICATIONNAME_LENGTH]; | |
| 614 WCHAR szUser[NTMS_USERNAME_LENGTH]; | |
| 615 WCHAR szComputer[NTMS_COMPUTERNAME_LENGTH]; | |
| 616 } NTMS_OPREQUESTINFORMATIONW; | |
| 617 | |
| 618 typedef struct _NTMS_COMPUTERINFORMATION { | |
| 619 DWORD dwLibRequestPurgeTime; | |
| 620 DWORD dwOpRequestPurgeTime; | |
| 621 DWORD dwLibRequestFlags; | |
| 622 DWORD dwOpRequestFlags; | |
| 623 DWORD dwMediaPoolPolicy; | |
| 624 } NTMS_COMPUTERINFORMATION; | |
| 625 | |
| 626 enum NtmsLibRequestFlags { | |
| 627 NTMS_LIBREQFLAGS_NOAUTOPURGE = 0x01,NTMS_LIBREQFLAGS_NOFAILEDPURGE = 0x02 | |
| 628 }; | |
| 629 | |
| 630 enum NtmsOpRequestFlags { | |
| 631 NTMS_OPREQFLAGS_NOAUTOPURGE = 0x01,NTMS_OPREQFLAGS_NOFAILEDPURGE = 0x02,NTMS_OPREQFLAGS_NOALERTS = 0x10,NTMS_OPREQFLAGS_NOTRAYICON = 0x20 | |
| 632 }; | |
| 633 | |
| 634 enum NtmsMediaPoolPolicy { | |
| 635 NTMS_POOLPOLICY_PURGEOFFLINESCRATCH = 0x01,NTMS_POOLPOLICY_KEEPOFFLINEIMPORT = 0x02 | |
| 636 }; | |
| 637 | |
| 638 #ifdef UNICODE | |
| 639 #define _NTMS_OBJECTINFORMATION _NTMS_OBJECTINFORMATIONW | |
| 640 #define NTMS_OBJECTINFORMATION NTMS_OBJECTINFORMATIONW | |
| 641 #define LPNTMS_OBJECTINFORMATION LPNTMS_OBJECTINFORMATIONW | |
| 642 #else | |
| 643 #define _NTMS_OBJECTINFORMATION _NTMS_OBJECTINFORMATIONA | |
| 644 #define NTMS_OBJECTINFORMATION NTMS_OBJECTINFORMATIONA | |
| 645 #define LPNTMS_OBJECTINFORMATION LPNTMS_OBJECTINFORMATIONA | |
| 646 #endif | |
| 647 | |
| 648 enum NtmsOperationalState { | |
| 649 NTMS_READY = 0,NTMS_INITIALIZING = 10,NTMS_NEEDS_SERVICE = 20,NTMS_NOT_PRESENT = 21 | |
| 650 }; | |
| 651 | |
| 652 typedef struct _NTMS_OBJECTINFORMATIONA { | |
| 653 DWORD dwSize; | |
| 654 DWORD dwType; | |
| 655 SYSTEMTIME Created; | |
| 656 SYSTEMTIME Modified; | |
| 657 NTMS_GUID ObjectGuid; | |
| 658 WINBOOL Enabled; | |
| 659 DWORD dwOperationalState; | |
| 660 CHAR szName[NTMS_OBJECTNAME_LENGTH]; | |
| 661 CHAR szDescription[NTMS_DESCRIPTION_LENGTH]; | |
| 662 union { | |
| 663 NTMS_DRIVEINFORMATIONA Drive; | |
| 664 NTMS_DRIVETYPEINFORMATIONA DriveType; | |
| 665 NTMS_LIBRARYINFORMATION Library; | |
| 666 NTMS_CHANGERINFORMATIONA Changer; | |
| 667 NTMS_CHANGERTYPEINFORMATIONA ChangerType; | |
| 668 NTMS_STORAGESLOTINFORMATION StorageSlot; | |
| 669 NTMS_IEDOORINFORMATION IEDoor; | |
| 670 NTMS_IEPORTINFORMATION IEPort; | |
| 671 NTMS_PMIDINFORMATIONA PhysicalMedia; | |
| 672 NTMS_LMIDINFORMATION LogicalMedia; | |
| 673 NTMS_PARTITIONINFORMATIONA Partition; | |
| 674 NTMS_MEDIAPOOLINFORMATION MediaPool; | |
| 675 NTMS_MEDIATYPEINFORMATION MediaType; | |
| 676 NTMS_LIBREQUESTINFORMATIONA LibRequest; | |
| 677 NTMS_OPREQUESTINFORMATIONA OpRequest; | |
| 678 NTMS_COMPUTERINFORMATION Computer; | |
| 679 } Info; | |
| 680 } NTMS_OBJECTINFORMATIONA,*LPNTMS_OBJECTINFORMATIONA; | |
| 681 | |
| 682 typedef struct _NTMS_OBJECTINFORMATIONW { | |
| 683 DWORD dwSize; | |
| 684 DWORD dwType; | |
| 685 SYSTEMTIME Created; | |
| 686 SYSTEMTIME Modified; | |
| 687 NTMS_GUID ObjectGuid; | |
| 688 WINBOOL Enabled; | |
| 689 DWORD dwOperationalState; | |
| 690 WCHAR szName[NTMS_OBJECTNAME_LENGTH]; | |
| 691 WCHAR szDescription[NTMS_DESCRIPTION_LENGTH]; | |
| 692 union { | |
| 693 NTMS_DRIVEINFORMATIONW Drive; | |
| 694 NTMS_DRIVETYPEINFORMATIONW DriveType; | |
| 695 NTMS_LIBRARYINFORMATION Library; | |
| 696 NTMS_CHANGERINFORMATIONW Changer; | |
| 697 NTMS_CHANGERTYPEINFORMATIONW ChangerType; | |
| 698 NTMS_STORAGESLOTINFORMATION StorageSlot; | |
| 699 NTMS_IEDOORINFORMATION IEDoor; | |
| 700 NTMS_IEPORTINFORMATION IEPort; | |
| 701 NTMS_PMIDINFORMATIONW PhysicalMedia; | |
| 702 NTMS_LMIDINFORMATION LogicalMedia; | |
| 703 NTMS_PARTITIONINFORMATIONW Partition; | |
| 704 NTMS_MEDIAPOOLINFORMATION MediaPool; | |
| 705 NTMS_MEDIATYPEINFORMATION MediaType; | |
| 706 NTMS_LIBREQUESTINFORMATIONW LibRequest; | |
| 707 NTMS_OPREQUESTINFORMATIONW OpRequest; | |
| 708 NTMS_COMPUTERINFORMATION Computer; | |
| 709 } Info; | |
| 710 } NTMS_OBJECTINFORMATIONW,*LPNTMS_OBJECTINFORMATIONW; | |
| 711 | |
| 712 #ifdef UNICODE | |
| 713 #define NTMS_I1_LIBREQUESTINFORMATION NTMS_I1_LIBREQUESTINFORMATIONW | |
| 714 #define NTMS_I1_PARTITIONINFORMATION NTMS_I1_PARTITIONINFORMATIONW | |
| 715 #define NTMS_I1_PMIDINFORMATION NTMS_I1_PMIDINFORMATIONW | |
| 716 #define NTMS_I1_OPREQUESTINFORMATION NTMS_I1_OPREQUESTINFORMATIONW | |
| 717 #define NTMS_I1_OBJECTINFORMATION NTMS_I1_OBJECTINFORMATIONW | |
| 718 #else | |
| 719 #define NTMS_I1_LIBREQUESTINFORMATION NTMS_I1_LIBREQUESTINFORMATIONA | |
| 720 #define NTMS_I1_PARTITIONINFORMATION NTMS_I1_PARTITIONINFORMATIONA | |
| 721 #define NTMS_I1_PMIDINFORMATION NTMS_I1_PMIDINFORMATIONA | |
| 722 #define NTMS_I1_OPREQUESTINFORMATION NTMS_I1_OPREQUESTINFORMATIONA | |
| 723 #define NTMS_I1_OBJECTINFORMATION NTMS_I1_OBJECTINFORMATIONA | |
| 724 #endif | |
| 725 | |
| 726 typedef struct _NTMS_I1_LIBRARYINFORMATION { | |
| 727 DWORD LibraryType; | |
| 728 NTMS_GUID CleanerSlot; | |
| 729 NTMS_GUID CleanerSlotDefault; | |
| 730 WINBOOL LibrarySupportsDriveCleaning; | |
| 731 WINBOOL BarCodeReaderInstalled; | |
| 732 DWORD InventoryMethod; | |
| 733 DWORD dwCleanerUsesRemaining; | |
| 734 DWORD FirstDriveNumber; | |
| 735 DWORD dwNumberOfDrives; | |
| 736 DWORD FirstSlotNumber; | |
| 737 DWORD dwNumberOfSlots; | |
| 738 DWORD FirstDoorNumber; | |
| 739 DWORD dwNumberOfDoors; | |
| 740 DWORD FirstPortNumber; | |
| 741 DWORD dwNumberOfPorts; | |
| 742 DWORD FirstChangerNumber; | |
| 743 DWORD dwNumberOfChangers; | |
| 744 DWORD dwNumberOfMedia; | |
| 745 DWORD dwNumberOfMediaTypes; | |
| 746 DWORD dwNumberOfLibRequests; | |
| 747 GUID Reserved; | |
| 748 } NTMS_I1_LIBRARYINFORMATION; | |
| 749 | |
| 750 typedef struct _NTMS_I1_LIBREQUESTINFORMATIONA { | |
| 751 DWORD OperationCode; | |
| 752 DWORD OperationOption; | |
| 753 DWORD State; | |
| 754 NTMS_GUID PartitionId; | |
| 755 NTMS_GUID DriveId; | |
| 756 NTMS_GUID PhysMediaId; | |
| 757 NTMS_GUID Library; | |
| 758 NTMS_GUID SlotId; | |
| 759 SYSTEMTIME TimeQueued; | |
| 760 SYSTEMTIME TimeCompleted; | |
| 761 CHAR szApplication[NTMS_APPLICATIONNAME_LENGTH]; | |
| 762 CHAR szUser[NTMS_USERNAME_LENGTH]; | |
| 763 CHAR szComputer[NTMS_COMPUTERNAME_LENGTH]; | |
| 764 } NTMS_I1_LIBREQUESTINFORMATIONA; | |
| 765 | |
| 766 typedef struct _NTMS_I1_LIBREQUESTINFORMATIONW { | |
| 767 DWORD OperationCode; | |
| 768 DWORD OperationOption; | |
| 769 DWORD State; | |
| 770 NTMS_GUID PartitionId; | |
| 771 NTMS_GUID DriveId; | |
| 772 NTMS_GUID PhysMediaId; | |
| 773 NTMS_GUID Library; | |
| 774 NTMS_GUID SlotId; | |
| 775 SYSTEMTIME TimeQueued; | |
| 776 SYSTEMTIME TimeCompleted; | |
| 777 WCHAR szApplication[NTMS_APPLICATIONNAME_LENGTH]; | |
| 778 WCHAR szUser[NTMS_USERNAME_LENGTH]; | |
| 779 WCHAR szComputer[NTMS_COMPUTERNAME_LENGTH]; | |
| 780 } NTMS_I1_LIBREQUESTINFORMATIONW; | |
| 781 | |
| 782 typedef struct _NTMS_I1_PMIDINFORMATIONA { | |
| 783 NTMS_GUID CurrentLibrary; | |
| 784 NTMS_GUID MediaPool; | |
| 785 NTMS_GUID Location; | |
| 786 DWORD LocationType; | |
| 787 NTMS_GUID MediaType; | |
| 788 NTMS_GUID HomeSlot; | |
| 789 CHAR szBarCode[NTMS_BARCODE_LENGTH]; | |
| 790 DWORD BarCodeState; | |
| 791 CHAR szSequenceNumber[NTMS_SEQUENCE_LENGTH]; | |
| 792 DWORD MediaState; | |
| 793 DWORD dwNumberOfPartitions; | |
| 794 } NTMS_I1_PMIDINFORMATIONA; | |
| 795 | |
| 796 typedef struct _NTMS_I1_PMIDINFORMATIONW { | |
| 797 NTMS_GUID CurrentLibrary; | |
| 798 NTMS_GUID MediaPool; | |
| 799 NTMS_GUID Location; | |
| 800 DWORD LocationType; | |
| 801 NTMS_GUID MediaType; | |
| 802 NTMS_GUID HomeSlot; | |
| 803 WCHAR szBarCode[NTMS_BARCODE_LENGTH]; | |
| 804 DWORD BarCodeState; | |
| 805 WCHAR szSequenceNumber[NTMS_SEQUENCE_LENGTH]; | |
| 806 DWORD MediaState; | |
| 807 DWORD dwNumberOfPartitions; | |
| 808 } NTMS_I1_PMIDINFORMATIONW; | |
| 809 | |
| 810 typedef struct _NTMS_I1_PARTITIONINFORMATIONA { | |
| 811 NTMS_GUID PhysicalMedia; | |
| 812 NTMS_GUID LogicalMedia; | |
| 813 DWORD State; | |
| 814 WORD Side; | |
| 815 DWORD dwOmidLabelIdLength; | |
| 816 BYTE OmidLabelId[255]; | |
| 817 CHAR szOmidLabelType[64]; | |
| 818 CHAR szOmidLabelInfo[256]; | |
| 819 DWORD dwMountCount; | |
| 820 DWORD dwAllocateCount; | |
| 821 } NTMS_I1_PARTITIONINFORMATIONA; | |
| 822 | |
| 823 typedef struct _NTMS_I1_PARTITIONINFORMATIONW { | |
| 824 NTMS_GUID PhysicalMedia; | |
| 825 NTMS_GUID LogicalMedia; | |
| 826 DWORD State; | |
| 827 WORD Side; | |
| 828 DWORD dwOmidLabelIdLength; | |
| 829 BYTE OmidLabelId[255]; | |
| 830 WCHAR szOmidLabelType[64]; | |
| 831 WCHAR szOmidLabelInfo[256]; | |
| 832 DWORD dwMountCount; | |
| 833 DWORD dwAllocateCount; | |
| 834 } NTMS_I1_PARTITIONINFORMATIONW; | |
| 835 | |
| 836 typedef struct _NTMS_I1_OPREQUESTINFORMATIONA { | |
| 837 DWORD Request; | |
| 838 SYSTEMTIME Submitted; | |
| 839 DWORD State; | |
| 840 CHAR szMessage[NTMS_I1_MESSAGE_LENGTH]; | |
| 841 DWORD Arg1Type; | |
| 842 NTMS_GUID Arg1; | |
| 843 DWORD Arg2Type; | |
| 844 NTMS_GUID Arg2; | |
| 845 CHAR szApplication[NTMS_APPLICATIONNAME_LENGTH]; | |
| 846 CHAR szUser[NTMS_USERNAME_LENGTH]; | |
| 847 CHAR szComputer[NTMS_COMPUTERNAME_LENGTH]; | |
| 848 } NTMS_I1_OPREQUESTINFORMATIONA; | |
| 849 | |
| 850 typedef struct _NTMS_I1_OPREQUESTINFORMATIONW { | |
| 851 DWORD Request; | |
| 852 SYSTEMTIME Submitted; | |
| 853 DWORD State; | |
| 854 WCHAR szMessage[NTMS_I1_MESSAGE_LENGTH]; | |
| 855 DWORD Arg1Type; | |
| 856 NTMS_GUID Arg1; | |
| 857 DWORD Arg2Type; | |
| 858 NTMS_GUID Arg2; | |
| 859 WCHAR szApplication[NTMS_APPLICATIONNAME_LENGTH]; | |
| 860 WCHAR szUser[NTMS_USERNAME_LENGTH]; | |
| 861 WCHAR szComputer[NTMS_COMPUTERNAME_LENGTH]; | |
| 862 } NTMS_I1_OPREQUESTINFORMATIONW; | |
| 863 | |
| 864 typedef struct _NTMS_I1_OBJECTINFORMATIONA { | |
| 865 DWORD dwSize; | |
| 866 DWORD dwType; | |
| 867 SYSTEMTIME Created; | |
| 868 SYSTEMTIME Modified; | |
| 869 NTMS_GUID ObjectGuid; | |
| 870 WINBOOL Enabled; | |
| 871 DWORD dwOperationalState; | |
| 872 CHAR szName[NTMS_OBJECTNAME_LENGTH]; | |
| 873 CHAR szDescription[NTMS_DESCRIPTION_LENGTH]; | |
| 874 union { | |
| 875 NTMS_DRIVEINFORMATIONA Drive; | |
| 876 NTMS_DRIVETYPEINFORMATIONA DriveType; | |
| 877 NTMS_I1_LIBRARYINFORMATION Library; | |
| 878 NTMS_CHANGERINFORMATIONA Changer; | |
| 879 NTMS_CHANGERTYPEINFORMATIONA ChangerType; | |
| 880 NTMS_STORAGESLOTINFORMATION StorageSlot; | |
| 881 NTMS_IEDOORINFORMATION IEDoor; | |
| 882 NTMS_IEPORTINFORMATION IEPort; | |
| 883 NTMS_I1_PMIDINFORMATIONA PhysicalMedia; | |
| 884 NTMS_LMIDINFORMATION LogicalMedia; | |
| 885 NTMS_I1_PARTITIONINFORMATIONA Partition; | |
| 886 NTMS_MEDIAPOOLINFORMATION MediaPool; | |
| 887 NTMS_MEDIATYPEINFORMATION MediaType; | |
| 888 NTMS_I1_LIBREQUESTINFORMATIONA LibRequest; | |
| 889 NTMS_I1_OPREQUESTINFORMATIONA OpRequest; | |
| 890 } Info; | |
| 891 } NTMS_I1_OBJECTINFORMATIONA,*LPNTMS_I1_OBJECTINFORMATIONA; | |
| 892 | |
| 893 typedef struct _NTMS_I1_OBJECTINFORMATIONW { | |
| 894 DWORD dwSize; | |
| 895 DWORD dwType; | |
| 896 SYSTEMTIME Created; | |
| 897 SYSTEMTIME Modified; | |
| 898 NTMS_GUID ObjectGuid; | |
| 899 WINBOOL Enabled; | |
| 900 DWORD dwOperationalState; | |
| 901 WCHAR szName[NTMS_OBJECTNAME_LENGTH]; | |
| 902 WCHAR szDescription[NTMS_DESCRIPTION_LENGTH]; | |
| 903 union { | |
| 904 NTMS_DRIVEINFORMATIONW Drive; | |
| 905 NTMS_DRIVETYPEINFORMATIONW DriveType; | |
| 906 NTMS_I1_LIBRARYINFORMATION Library; | |
| 907 NTMS_CHANGERINFORMATIONW Changer; | |
| 908 NTMS_CHANGERTYPEINFORMATIONW ChangerType; | |
| 909 NTMS_STORAGESLOTINFORMATION StorageSlot; | |
| 910 NTMS_IEDOORINFORMATION IEDoor; | |
| 911 NTMS_IEPORTINFORMATION IEPort; | |
| 912 NTMS_I1_PMIDINFORMATIONW PhysicalMedia; | |
| 913 NTMS_LMIDINFORMATION LogicalMedia; | |
| 914 NTMS_I1_PARTITIONINFORMATIONW Partition; | |
| 915 NTMS_MEDIAPOOLINFORMATION MediaPool; | |
| 916 NTMS_MEDIATYPEINFORMATION MediaType; | |
| 917 NTMS_I1_LIBREQUESTINFORMATIONW LibRequest; | |
| 918 NTMS_I1_OPREQUESTINFORMATIONW OpRequest; | |
| 919 } Info; | |
| 920 } NTMS_I1_OBJECTINFORMATIONW,*LPNTMS_I1_OBJECTINFORMATIONW; | |
| 921 #endif | |
| 922 | |
| 923 #ifndef NTMS_NOREDEF | |
| 924 | |
| 925 enum NtmsCreateNtmsMediaOptions { | |
| 926 NTMS_ERROR_ON_DUPLICATE = 0x0001 | |
| 927 }; | |
| 928 #endif | |
| 929 | |
| 930 #ifdef PRE_SEVIL | |
| 931 DWORD WINAPI GetNtmsObjectInformation(HANDLE hSession,LPNTMS_GUID lpObjectId,LPNTMS_OBJECTINFORMATION lpInfo); | |
| 932 DWORD WINAPI SetNtmsObjectInformation(HANDLE hSession,LPNTMS_GUID lpObjectId,LPNTMS_OBJECTINFORMATION lpInfo); | |
| 933 #endif | |
| 934 DWORD WINAPI GetNtmsObjectInformationA(HANDLE hSession,LPNTMS_GUID lpObjectId,LPNTMS_OBJECTINFORMATIONA lpInfo); | |
| 935 DWORD WINAPI GetNtmsObjectInformationW(HANDLE hSession,LPNTMS_GUID lpObjectId,LPNTMS_OBJECTINFORMATIONW lpInfo); | |
| 936 DWORD WINAPI SetNtmsObjectInformationA(HANDLE hSession,LPNTMS_GUID lpObjectId,LPNTMS_OBJECTINFORMATIONA lpInfo); | |
| 937 DWORD WINAPI SetNtmsObjectInformationW(HANDLE hSession,LPNTMS_GUID lpObjectId,LPNTMS_OBJECTINFORMATIONW lpInfo); | |
| 938 DWORD WINAPI CreateNtmsMediaA(HANDLE hSession,LPNTMS_OBJECTINFORMATIONA lpMedia,LPNTMS_OBJECTINFORMATIONA lpList,DWORD dwOptions); | |
| 939 DWORD WINAPI CreateNtmsMediaW(HANDLE hSession,LPNTMS_OBJECTINFORMATIONW lpMedia,LPNTMS_OBJECTINFORMATIONW lpList,DWORD dwOptions); | |
| 940 enum NtmsEnumerateOption { | |
| 941 NTMS_ENUM_DEFAULT = 0,NTMS_ENUM_ROOTPOOL = 1 | |
| 942 }; | |
| 943 DWORD WINAPI EnumerateNtmsObject(HANDLE hSession,const LPNTMS_GUID lpContainerId,LPNTMS_GUID lpList,LPDWORD lpdwListSize,DWORD dwType,DWORD dwOptions); | |
| 944 DWORD WINAPI DisableNtmsObject(HANDLE hSession,DWORD dwType,LPNTMS_GUID lpObjectId); | |
| 945 DWORD WINAPI EnableNtmsObject(HANDLE hSession,DWORD dwType,LPNTMS_GUID lpObjectId); | |
| 946 enum NtmsEjectOperation { | |
| 947 NTMS_EJECT_START = 0,NTMS_EJECT_STOP = 1,NTMS_EJECT_QUEUE = 2,NTMS_EJECT_FORCE = 3,NTMS_EJECT_IMMEDIATE = 4,NTMS_EJECT_ASK_USER = 5 | |
| 948 }; | |
| 949 DWORD WINAPI EjectNtmsMedia(HANDLE hSession,LPNTMS_GUID lpMediaId,LPNTMS_GUID lpEjectOperation,DWORD dwAction); | |
| 950 enum NtmsInjectOperation { | |
| 951 NTMS_INJECT_START = 0,NTMS_INJECT_STOP = 1,NTMS_INJECT_RETRACT = 2,NTMS_INJECT_STARTMANY = 3 | |
| 952 }; | |
| 953 DWORD WINAPI InjectNtmsMedia(HANDLE hSession,LPNTMS_GUID lpLibraryId,LPNTMS_GUID lpInjectOperation,DWORD dwAction); | |
| 954 DWORD WINAPI AccessNtmsLibraryDoor(HANDLE hSession,LPNTMS_GUID lpLibraryId,DWORD dwAction); | |
| 955 DWORD WINAPI CleanNtmsDrive(HANDLE hSession,LPNTMS_GUID lpDriveId); | |
| 956 DWORD WINAPI DismountNtmsDrive(HANDLE hSession,LPNTMS_GUID lpDriveId); | |
| 957 DWORD WINAPI InventoryNtmsLibrary(HANDLE hSession,LPNTMS_GUID lpLibraryId,DWORD dwAction); | |
| 958 DWORD WINAPI IdentifyNtmsSlot(HANDLE hSession,LPNTMS_GUID lpSlotId,DWORD dwOption); | |
| 959 | |
| 960 #define NTMS_OMID_TYPE_RAW_LABEL 0x01 | |
| 961 #define NTMS_OMID_TYPE_FILESYSTEM_INFO 0x02 | |
| 962 | |
| 963 typedef struct { | |
| 964 WCHAR FileSystemType[64]; | |
| 965 WCHAR VolumeName[256]; | |
| 966 DWORD SerialNumber; | |
| 967 } NTMS_FILESYSTEM_INFO; | |
| 968 | |
| 969 DWORD WINAPI UpdateNtmsOmidInfo(HANDLE hSession,LPNTMS_GUID lpMediaId,DWORD labelType,DWORD numberOfBytes,LPVOID lpBuffer); | |
| 970 DWORD WINAPI CancelNtmsLibraryRequest(HANDLE hSession,LPNTMS_GUID lpRequestId); | |
| 971 DWORD WINAPI GetNtmsRequestOrder(HANDLE hSession,LPNTMS_GUID lpRequestId,LPDWORD lpdwOrderNumber); | |
| 972 DWORD WINAPI SetNtmsRequestOrder(HANDLE hSession,LPNTMS_GUID lpRequestId,DWORD dwOrderNumber); | |
| 973 DWORD WINAPI DeleteNtmsRequests(HANDLE hSession,LPNTMS_GUID lpRequestId,DWORD dwType,DWORD dwCount); | |
| 974 DWORD WINAPI ReserveNtmsCleanerSlot (HANDLE hSession,LPNTMS_GUID lpLibrary,LPNTMS_GUID lpSlot); | |
| 975 DWORD WINAPI ReleaseNtmsCleanerSlot (HANDLE hSession,LPNTMS_GUID lpLibrary); | |
| 976 DWORD WINAPI InjectNtmsCleaner (HANDLE hSession,LPNTMS_GUID lpLibrary,LPNTMS_GUID lpInjectOperation,DWORD dwNumberOfCleansLeft,DWORD dwAction); | |
| 977 DWORD WINAPI EjectNtmsCleaner (HANDLE hSession,LPNTMS_GUID lpLibrary,LPNTMS_GUID lpEjectOperation,DWORD dwAction); | |
| 978 DWORD WINAPI BeginNtmsDeviceChangeDetection(HANDLE hSession,LPHANDLE lpDetectHandle); | |
| 979 DWORD WINAPI SetNtmsDeviceChangeDetection(HANDLE hSession,HANDLE DetectHandle,LPNTMS_GUID lpRequestId,DWORD dwType,DWORD dwCount); | |
| 980 DWORD WINAPI EndNtmsDeviceChangeDetection(HANDLE hSession,HANDLE DetectHandle); | |
| 981 | |
| 982 #ifndef NTMS_NOREDEF | |
| 983 enum NtmsDriveType { | |
| 984 NTMS_UNKNOWN_DRIVE = 0 | |
| 985 }; | |
| 986 #endif | |
| 987 | |
| 988 DWORD WINAPI GetNtmsObjectSecurity(HANDLE hSession,LPNTMS_GUID lpObjectId,DWORD dwType,SECURITY_INFORMATION RequestedInformation,PSECURITY_DESCRIPTOR lpSecurityDescriptor,DWORD nLength,LPDWORD lpnLengthNeeded); | |
| 989 DWORD WINAPI SetNtmsObjectSecurity(HANDLE hSession,LPNTMS_GUID lpObjectId,DWORD dwType,SECURITY_INFORMATION SecurityInformation,PSECURITY_DESCRIPTOR lpSecurityDescriptor); | |
| 990 enum NtmsAccessMask { | |
| 991 NTMS_USE_ACCESS = 0x1,NTMS_MODIFY_ACCESS = 0x2,NTMS_CONTROL_ACCESS = 0x4 | |
| 992 }; | |
| 993 | |
| 994 #define NTMS_GENERIC_READ NTMS_USE_ACCESS | |
| 995 #define NTMS_GENERIC_WRITE NTMS_USE_ACCESS | NTMS_MODIFY_ACCESS | |
| 996 #define NTMS_GENERIC_EXECUTE NTMS_USE_ACCESS | NTMS_MODIFY_ACCESS | NTMS_CONTROL_ACCESS | |
| 997 #define NTMS_GENERIC_ALL NTMS_USE_ACCESS | NTMS_MODIFY_ACCESS | NTMS_CONTROL_ACCESS | |
| 998 | |
| 999 #define NTMS_MAXATTR_LENGTH 0x10000 | |
| 1000 #define NTMS_MAXATTR_NAMELEN 32 | |
| 1001 | |
| 1002 DWORD WINAPI GetNtmsObjectAttributeA(HANDLE hSession,LPNTMS_GUID lpObjectId,DWORD dwType,LPCSTR lpAttributeName,LPVOID lpAttributeData,LPDWORD lpAttributeSize); | |
| 1003 DWORD WINAPI GetNtmsObjectAttributeW(HANDLE hSession,LPNTMS_GUID lpObjectId,DWORD dwType,LPCWSTR lpAttributeName,LPVOID lpAttributeData,LPDWORD lpAttributeSize); | |
| 1004 DWORD WINAPI SetNtmsObjectAttributeA(HANDLE hSession,LPNTMS_GUID lpObjectId,DWORD dwType,LPCSTR lpAttributeName,LPVOID lpAttributeData,DWORD dwAttributeSize); | |
| 1005 DWORD WINAPI SetNtmsObjectAttributeW(HANDLE hSession,LPNTMS_GUID lpObjectId,DWORD dwType,LPCWSTR lpAttributeName,LPVOID lpAttributeData,DWORD AttributeSize); | |
| 1006 | |
| 1007 enum NtmsUITypes { | |
| 1008 NTMS_UITYPE_INVALID = 0,NTMS_UITYPE_INFO,NTMS_UITYPE_REQ,NTMS_UITYPE_ERR,NTMS_UITYPE_MAX | |
| 1009 }; | |
| 1010 | |
| 1011 enum NtmsUIOperations { | |
| 1012 NTMS_UIDEST_ADD = 1,NTMS_UIDEST_DELETE,NTMS_UIDEST_DELETEALL,NTMS_UIOPERATION_MAX | |
| 1013 }; | |
| 1014 | |
| 1015 DWORD WINAPI GetNtmsUIOptionsA(HANDLE hSession,const LPNTMS_GUID lpObjectId,DWORD dwType,LPSTR lpszDestination,LPDWORD lpdwBufSize); | |
| 1016 DWORD WINAPI GetNtmsUIOptionsW(HANDLE hSession,const LPNTMS_GUID lpObjectId,DWORD dwType,LPWSTR lpszDestination,LPDWORD lpdwBufSize); | |
| 1017 DWORD WINAPI SetNtmsUIOptionsA(HANDLE hSession,const LPNTMS_GUID lpObjectId,DWORD dwType,DWORD dwOperation,LPCSTR lpszDestination); | |
| 1018 DWORD WINAPI SetNtmsUIOptionsW(HANDLE hSession,const LPNTMS_GUID lpObjectId,DWORD dwType,DWORD dwOperation,LPCWSTR lpszDestination); | |
| 1019 DWORD WINAPI SubmitNtmsOperatorRequestW(HANDLE hSession,DWORD dwRequest,LPCWSTR lpMessage,LPNTMS_GUID lpArg1Id,LPNTMS_GUID lpArg2Id,LPNTMS_GUID lpRequestId); | |
| 1020 DWORD WINAPI SubmitNtmsOperatorRequestA(HANDLE hSession,DWORD dwRequest,LPCSTR lpMessage,LPNTMS_GUID lpArg1Id,LPNTMS_GUID lpArg2Id,LPNTMS_GUID lpRequestId); | |
| 1021 DWORD WINAPI WaitForNtmsOperatorRequest(HANDLE hSession,LPNTMS_GUID lpRequestId,DWORD dwTimeout); | |
| 1022 DWORD WINAPI CancelNtmsOperatorRequest(HANDLE hSession,LPNTMS_GUID lpRequestId); | |
| 1023 DWORD WINAPI SatisfyNtmsOperatorRequest(HANDLE hSession,LPNTMS_GUID lpRequestId); | |
| 1024 | |
| 1025 #ifndef NTMS_NOREDEF | |
| 1026 enum NtmsNotificationOperations { | |
| 1027 NTMS_OBJ_UPDATE = 1,NTMS_OBJ_INSERT = 2,NTMS_OBJ_DELETE = 3,NTMS_EVENT_SIGNAL = 4,NTMS_EVENT_COMPLETE = 5 | |
| 1028 }; | |
| 1029 | |
| 1030 typedef struct _NTMS_NOTIFICATIONINFORMATION { | |
| 1031 DWORD dwOperation; | |
| 1032 NTMS_GUID ObjectId; | |
| 1033 } NTMS_NOTIFICATIONINFORMATION,*LPNTMS_NOTIFICATIONINFORMATION; | |
| 1034 #endif | |
| 1035 | |
| 1036 DWORD WINAPI ImportNtmsDatabase(HANDLE hSession); | |
| 1037 DWORD WINAPI ExportNtmsDatabase(HANDLE hSession); | |
| 1038 DWORD WINAPI ImportNtmsDatabase(HANDLE hSession); | |
| 1039 DWORD WINAPI ExportNtmsDatabase(HANDLE hSession); | |
| 1040 HANDLE WINAPI OpenNtmsNotification(HANDLE hSession,DWORD dwType); | |
| 1041 DWORD WINAPI WaitForNtmsNotification(HANDLE hNotification,LPNTMS_NOTIFICATIONINFORMATION lpNotificationInformation,DWORD dwTimeout); | |
| 1042 DWORD WINAPI CloseNtmsNotification(HANDLE hNotification); | |
| 1043 DWORD WINAPI EjectDiskFromSADriveW(LPCWSTR lpComputerName,LPCWSTR lpAppName,LPCWSTR lpDeviceName,HWND hWnd,LPCWSTR lpTitle,LPCWSTR lpMessage,DWORD dwOptions); | |
| 1044 DWORD WINAPI EjectDiskFromSADriveA(LPCSTR lpComputerName,LPCSTR lpAppName,LPCSTR lpDeviceName,HWND hWnd,LPCSTR lpTitle,LPCSTR lpMessage,DWORD dwOptions); | |
| 1045 DWORD WINAPI GetVolumesFromDriveW(LPWSTR pszDriveName,LPWSTR *VolumeNameBufferPtr,LPWSTR *DriveLetterBufferPtr); | |
| 1046 DWORD WINAPI GetVolumesFromDriveA(LPSTR pszDriveName,LPSTR *VolumeNameBufferPtr,LPSTR *DriveLetterBufferPtr); | |
| 1047 | |
| 1048 #ifdef __cplusplus | |
| 1049 } | |
| 1050 #endif | |
| 1051 | |
| 1052 #pragma pack() | |
| 1053 #endif |
