Diff

Not logged in

Differences From Artifact [59684aebe49706fd]:

To Artifact [5a227ddcf54fb45e]:


> 1 /***********************************************************************\ > 2 * winbase.d * > 3 * * > 4 * Windows API header module * > 5 * * > 6 * Translated from MinGW API for MS-Windows 3.10 * > 7 * * > 8 * Placed into public domain * > 9 \***********************************************************************/ 1 module win32.winbase; 10 module win32.winbase; > 11 pragma(lib, "kernel32.lib"); 2 | 12 3 // Translated from Microsoft Platform SDK August 2001 Edition < 4 // by Y.Tomino (demoonlit@inter7.jp) | 13 /** 5 < > 14 Translation Notes: 6 import win32.windef; | 15 The following macros are obsolete, and have no effect. 7 | 16 8 // #ifndef _WINBASE_ | 17 LockSegment(w), MakeProcInstance(p, i), UnlockResource(h), UnlockSegment(w) 9 // #define _WINBASE_ | 18 FreeModule(m), FreeProcInstance(p), GetFreeSpace(w), DefineHandleTable(w) > 19 SetSwapAreaSize(w), LimitEmsPages(n), Yield() 10 | 20 11 // #if _MSC_VER > 1000 < 12 // #pragma once | 21 // The following Win16 functions are obselete in Win32. 13 // #endif < 14 | 22 > 23 int _hread(HFILE, LPVOID, int); 15 // #ifdef _MAC | 24 int _hwrite(HFILE, LPCSTR, int); 16 // #... | 25 HFILE _lclose(HFILE); 17 // #endif //_MAC | 26 HFILE _lcreat(LPCSTR, int); 18 < > 27 LONG _llseek(HFILE, LONG, int); 19 // #if !defined(_ADVAPI32_) | 28 HFILE _lopen(LPCSTR, int); 20 // #define WINADVAPI DECLSPEC_IMPORT | 29 UINT _lread(HFILE, LPVOID, UINT); 21 // #else | 30 UINT _lwrite(HFILE, LPCSTR, UINT); 22 // #... | 31 SIZE_T GlobalCompact(DWORD); 23 // #endif | 32 VOID GlobalFix(HGLOBAL); > 33 * MSDN contradicts itself on GlobalFlags: > 34 * "This function is provided only for compatibility with 16-bit versions of Wind > 35 * but also requires Windows 2000 or above > 36 UINT GlobalFlags(HGLOBAL); > 37 VOID GlobalUnfix(HGLOBAL); > 38 BOOL GlobalUnWire(HGLOBAL); > 39 PVOID GlobalWire(HGLOBAL); > 40 SIZE_T LocalCompact(UINT); > 41 UINT LocalFlags(HLOCAL); > 42 SIZE_T LocalShrink(HLOCAL, UINT); 24 | 43 25 // #if !defined(_KERNEL32_) < 26 // #define WINBASEAPI DECLSPEC_IMPORT < 27 // #else < 28 // #... < 29 // #endif < > 44 // These are not required for DMD. 30 | 45 31 // #if !defined(_ZAWPROXY_) < 32 // #define ZAWPROXYAPI DECLSPEC_IMPORT < > 46 //FIXME: > 47 // #ifndef UNDER_CE > 48 int WinMain(HINSTANCE, HINSTANCE, LPSTR, int); 33 // #else | 49 #else 34 // #... < > 50 int WinMain(HINSTANCE, HINSTANCE, LPWSTR, int); 35 // #endif | 51 #endif > 52 int wWinMain(HINSTANCE, HINSTANCE, LPWSTR, int); 36 | 53 37 // #ifdef __cplusplus < 38 // extern "C" { < 39 // #endif < > 54 */ 40 | 55 41 // #define DefineHandleTable(w) ((w),TRUE) < 42 // #define LimitEmsPages(dw) < 43 // #define SetSwapAreaSize(w) (w) < 44 // #define LockSegment(w) GlobalFix((HANDLE)(w)) < 45 // #define UnlockSegment(w) GlobalUnfix((HANDLE)(w)) < 46 alias GetTickCount GetCurrentTime; < 47 < > 56 import win32.windef, win32.winver; 48 // #define Yield() | 57 private import win32.basetyps, win32.w32api, win32.winnt; 49 | 58 50 HANDLE INVALID_HANDLE_VALUE = cast(HANDLE)-1; | 59 // FIXME: 51 enum : uint { INVALID_FILE_SIZE = cast(DWORD)0xFFFFFFFF } | 60 alias void va_list; 52 enum : uint { INVALID_SET_FILE_POINTER = cast(DWORD)-1 } < 53 enum : uint { INVALID_FILE_ATTRIBUTES = cast(DWORD)-1 } < 54 | 61 55 enum : uint { FILE_BEGIN = 0 } < 56 enum : uint { FILE_CURRENT = 1 } < 57 enum : uint { FILE_END = 2 } < 58 | 62 59 enum : uint { TIME_ZONE_ID_INVALID = cast(DWORD)0xFFFFFFFF } < > 63 /+ > 64 //-------------------------------------- > 65 // These functions are problematic 60 | 66 61 enum : uint { WAIT_FAILED = cast(DWORD)0xFFFFFFFF } < 62 alias STATUS_WAIT_0 WAIT_OBJECT_0; < 63 < 64 alias STATUS_ABANDONED_WAIT_0 WAIT_ABANDONED; < 65 alias STATUS_ABANDONED_WAIT_0 WAIT_ABANDONED_0; < 66 < 67 alias STATUS_USER_APC WAIT_IO_COMPLETION; < 68 alias STATUS_PENDING STILL_ACTIVE; < 69 alias STATUS_ACCESS_VIOLATION EXCEPTION_ACCESS_VIOLATION; < 70 alias STATUS_DATATYPE_MISALIGNMENT EXCEPTION_DATATYPE_MISALIGNMENT; < 71 alias STATUS_BREAKPOINT EXCEPTION_BREAKPOINT; < 72 alias STATUS_SINGLE_STEP EXCEPTION_SINGLE_STEP; < 73 alias STATUS_ARRAY_BOUNDS_EXCEEDED EXCEPTION_ARRAY_BOUNDS_EXCEEDED; < 74 alias STATUS_FLOAT_DENORMAL_OPERAND EXCEPTION_FLT_DENORMAL_OPERAND; < 75 alias STATUS_FLOAT_DIVIDE_BY_ZERO EXCEPTION_FLT_DIVIDE_BY_ZERO; < 76 alias STATUS_FLOAT_INEXACT_RESULT EXCEPTION_FLT_INEXACT_RESULT; < 77 alias STATUS_FLOAT_INVALID_OPERATION EXCEPTION_FLT_INVALID_OPERATION; < 78 alias STATUS_FLOAT_OVERFLOW EXCEPTION_FLT_OVERFLOW; < 79 alias STATUS_FLOAT_STACK_CHECK EXCEPTION_FLT_STACK_CHECK; < 80 alias STATUS_FLOAT_UNDERFLOW EXCEPTION_FLT_UNDERFLOW; < 81 alias STATUS_INTEGER_DIVIDE_BY_ZERO EXCEPTION_INT_DIVIDE_BY_ZERO; < 82 alias STATUS_INTEGER_OVERFLOW EXCEPTION_INT_OVERFLOW; < 83 alias STATUS_PRIVILEGED_INSTRUCTION EXCEPTION_PRIV_INSTRUCTION; < 84 alias STATUS_IN_PAGE_ERROR EXCEPTION_IN_PAGE_ERROR; < 85 alias STATUS_ILLEGAL_INSTRUCTION EXCEPTION_ILLEGAL_INSTRUCTION; < 86 alias STATUS_NONCONTINUABLE_EXCEPTION EXCEPTION_NONCONTINUABLE_EXCEPTION; < 87 alias STATUS_STACK_OVERFLOW EXCEPTION_STACK_OVERFLOW; < 88 alias STATUS_INVALID_DISPOSITION EXCEPTION_INVALID_DISPOSITION; < 89 alias STATUS_GUARD_PAGE_VIOLATION EXCEPTION_GUARD_PAGE; < 90 alias STATUS_INVALID_HANDLE EXCEPTION_INVALID_HANDLE; < 91 alias STATUS_CONTROL_C_EXIT CONTROL_C_EXIT; < 92 alias RtlMoveMemory MoveMemory; < 93 alias RtlCopyMemory CopyMemory; < 94 alias RtlFillMemory FillMemory; < 95 alias RtlZeroMemory ZeroMemory; < 96 < 97 enum : uint { FILE_FLAG_WRITE_THROUGH = 0x80000000 } < 98 enum : uint { FILE_FLAG_OVERLAPPED = 0x40000000 } < 99 enum : uint { FILE_FLAG_NO_BUFFERING = 0x20000000 } < 100 enum : uint { FILE_FLAG_RANDOM_ACCESS = 0x10000000 } < 101 enum : uint { FILE_FLAG_SEQUENTIAL_SCAN = 0x08000000 } < 102 enum : uint { FILE_FLAG_DELETE_ON_CLOSE = 0x04000000 } < 103 enum : uint { FILE_FLAG_BACKUP_SEMANTICS = 0x02000000 } < 104 enum : uint { FILE_FLAG_POSIX_SEMANTICS = 0x01000000 } < 105 enum : uint { FILE_FLAG_OPEN_REPARSE_POINT = 0x00200000 } < 106 enum : uint { FILE_FLAG_OPEN_NO_RECALL = 0x00100000 } < 107 enum : uint { FILE_FLAG_FIRST_PIPE_INSTANCE = 0x00080000 } < 108 < 109 enum : uint { CREATE_NEW = 1 } < 110 enum : uint { CREATE_ALWAYS = 2 } < 111 enum : uint { OPEN_EXISTING = 3 } < 112 enum : uint { OPEN_ALWAYS = 4 } < 113 enum : uint { TRUNCATE_EXISTING = 5 } < 114 < > 67 version(UseNtoSKernel) {}else { > 68 /* CAREFUL: These are exported from ntoskrnl.exe and declared in winddk. > 69 as __fastcall functions, but are exported from kernel32.dll as __std 115 // #if(_WIN32_WINNT >= 0x0400) | 70 static if (_WIN32_WINNT >= 0x0501) { > 71 VOID InitializeSListHead(PSLIST_HEADER); 116 | 72 } 117 enum : uint { PROGRESS_CONTINUE = 0 } < 118 enum : uint { PROGRESS_CANCEL = 1 } < 119 enum : uint { PROGRESS_STOP = 2 } < 120 enum : uint { PROGRESS_QUIET = 3 } < > 73 LONG InterlockedCompareExchange(LPLONG, LONG, LONG); > 74 // PVOID WINAPI InterlockedCompareExchangePointer(PVOID*, PVOID, PVOID); > 75 (PVOID)InterlockedCompareExchange((LPLONG)(d) (PVOID)InterlockedCompa > 76 LONG InterlockedDecrement(LPLONG); > 77 LONG InterlockedExchange(LPLONG, LONG); > 78 // PVOID WINAPI InterlockedExchangePointer(PVOID*, PVOID); > 79 (PVOID)InterlockedExchange((LPLONG)((PVOID)InterlockedExchange((LPLONG)( > 80 LONG InterlockedExchangeAdd(LPLONG, LONG); 121 | 81 122 enum : uint { CALLBACK_CHUNK_FINISHED = 0x00000000 } < 123 enum : uint { CALLBACK_STREAM_SWITCH = 0x00000001 } < 124 < 125 enum : uint { COPY_FILE_FAIL_IF_EXISTS = 0x00000001 } < 126 enum : uint { COPY_FILE_RESTARTABLE = 0x00000002 } < 127 enum : uint { COPY_FILE_OPEN_SOURCE_FOR_WRITE = 0x00000004 } < 128 enum : uint { COPY_FILE_ALLOW_DECRYPTED_DESTINATION = 0x00000008 } < 129 // #endif /* _WIN32_WINNT >= 0x0400 */ | 82 static if (_WIN32_WINNT >= 0x0501) { > 83 PSLIST_ENTRY InterlockedFlushSList(PSLIST_HEADER); 130 | 84 } > 85 LONG InterlockedIncrement(LPLONG); 131 // #if (_WIN32_WINNT >= 0x0500) | 86 static if (_WIN32_WINNT >= 0x0501) { > 87 PSLIST_ENTRY InterlockedPopEntrySList(PSLIST_HEADER); > 88 PSLIST_ENTRY InterlockedPushEntrySList(PSLIST_HEADER, PSLIST_ENTRY); 132 | 89 } 133 enum : uint { REPLACEFILE_WRITE_THROUGH = 0x00000001 } < 134 enum : uint { REPLACEFILE_IGNORE_MERGE_ERRORS = 0x00000002 } < > 90 } // #endif // __USE_NTOSKRNL__ > 91 //-------------------------------------- > 92 +/ 135 | 93 136 // #endif // #if (_WIN32_WINNT >= 0x0500) < > 94 // COMMPROP structure, used by GetCommProperties() > 95 // ----------------------------------------------- 137 | 96 138 enum : uint { PIPE_ACCESS_INBOUND = 0x00000001 } < 139 enum : uint { PIPE_ACCESS_OUTBOUND = 0x00000002 } < 140 enum : uint { PIPE_ACCESS_DUPLEX = 0x00000003 } < > 97 // Communications provider type > 98 enum : DWORD { > 99 PST_UNSPECIFIED, > 100 PST_RS232, > 101 PST_PARALLELPORT, > 102 PST_RS422, > 103 PST_RS423, > 104 PST_RS449, > 105 PST_MODEM, // = 6 > 106 PST_FAX = 0x0021, > 107 PST_SCANNER = 0x0022, > 108 PST_NETWORK_BRIDGE = 0x0100, > 109 PST_LAT = 0x0101, > 110 PST_TCPIP_TELNET = 0x0102, > 111 PST_X25 = 0x0103 141 | 112 } 142 enum : uint { PIPE_CLIENT_END = 0x00000000 } < 143 enum : uint { PIPE_SERVER_END = 0x00000001 } < 144 | 113 > 114 // Max baud rate > 115 enum : DWORD { 145 enum : uint { PIPE_WAIT = 0x00000000 } | 116 BAUD_075 = 0x00000001, 146 enum : uint { PIPE_NOWAIT = 0x00000001 } | 117 BAUD_110 = 0x00000002, 147 enum : uint { PIPE_READMODE_BYTE = 0x00000000 } < 148 enum : uint { PIPE_READMODE_MESSAGE = 0x00000002 } < 149 enum : uint { PIPE_TYPE_BYTE = 0x00000000 } | 118 BAUD_134_5 = 0x00000004, 150 enum : uint { PIPE_TYPE_MESSAGE = 0x00000004 } | 119 BAUD_150 = 0x00000008, > 120 BAUD_300 = 0x00000010, > 121 BAUD_600 = 0x00000020, > 122 BAUD_1200 = 0x00000040, > 123 BAUD_1800 = 0x00000080, > 124 BAUD_2400 = 0x00000100, > 125 BAUD_4800 = 0x00000200, > 126 BAUD_7200 = 0x00000400, > 127 BAUD_9600 = 0x00000800, > 128 BAUD_14400 = 0x00001000, > 129 BAUD_19200 = 0x00002000, > 130 BAUD_38400 = 0x00004000, > 131 BAUD_56K = 0x00008000, > 132 BAUD_128K = 0x00010000, > 133 BAUD_115200 = 0x00020000, > 134 BAUD_57600 = 0x00040000, > 135 BAUD_USER = 0x10000000 151 | 136 } 152 enum : uint { PIPE_UNLIMITED_INSTANCES = 255 } < 153 | 137 154 enum : uint { SECURITY_ANONYMOUS = SecurityAnonymous << 16 } < 155 enum : uint { SECURITY_IDENTIFICATION = SecurityIdentification << 16 } < 156 enum : uint { SECURITY_IMPERSONATION = SecurityImpersonation << 16 } < 157 enum : uint { SECURITY_DELEGATION = SecurityDelegation << 16 } < 158 < 159 enum : uint { SECURITY_CONTEXT_TRACKING = 0x00040000 } < 160 enum : uint { SECURITY_EFFECTIVE_ONLY = 0x00080000 } < 161 < 162 enum : uint { SECURITY_SQOS_PRESENT = 0x00100000 } < 163 enum : uint { SECURITY_VALID_SQOS_FLAGS = 0x001F0000 } < 164 < 165 struct _OVERLAPPED { < 166 ULONG_PTR Internal; < 167 ULONG_PTR InternalHigh; < 168 union { < 169 struct { < > 138 // Comm capabilities 170 DWORD Offset; | 139 enum : DWORD { 171 DWORD OffsetHigh; < 172 } < 173 < 174 PVOID Pointer; < 175 } < 176 < 177 HANDLE hEvent; < 178 } < 179 alias _OVERLAPPED OVERLAPPED; < 180 alias _OVERLAPPED* LPOVERLAPPED; < 181 < 182 struct _SECURITY_ATTRIBUTES { < 183 DWORD nLength; < 184 LPVOID lpSecurityDescriptor; < 185 BOOL bInheritHandle; < 186 } < 187 alias _SECURITY_ATTRIBUTES SECURITY_ATTRIBUTES; < 188 alias _SECURITY_ATTRIBUTES* PSECURITY_ATTRIBUTES; < 189 alias _SECURITY_ATTRIBUTES* LPSECURITY_ATTRIBUTES; < 190 < 191 struct _PROCESS_INFORMATION { < 192 HANDLE hProcess; < 193 HANDLE hThread; < 194 DWORD dwProcessId; < 195 DWORD dwThreadId; < 196 } < 197 alias _PROCESS_INFORMATION PROCESS_INFORMATION; < 198 alias _PROCESS_INFORMATION* PPROCESS_INFORMATION; < 199 alias _PROCESS_INFORMATION* LPPROCESS_INFORMATION; < 200 < 201 struct _FILETIME { < 202 DWORD dwLowDateTime; < 203 DWORD dwHighDateTime; < 204 } < 205 alias _FILETIME FILETIME; < 206 alias _FILETIME* PFILETIME; < 207 alias _FILETIME* LPFILETIME; < 208 < 209 struct _SYSTEMTIME { < 210 WORD wYear; < 211 WORD wMonth; < 212 WORD wDayOfWeek; < 213 WORD wDay; < 214 WORD wHour; < 215 WORD wMinute; < 216 WORD wSecond; < 217 WORD wMilliseconds; < 218 } < 219 alias _SYSTEMTIME SYSTEMTIME; < 220 alias _SYSTEMTIME* PSYSTEMTIME; < 221 alias _SYSTEMTIME* LPSYSTEMTIME; < 222 < 223 extern(Windows) alias DWORD function( LPVOID lpThreadParameter ) PTHREAD_START_R < 224 alias PTHREAD_START_ROUTINE LPTHREAD_START_ROUTINE; < 225 < 226 // #if(_WIN32_WINNT >= 0x0400) < 227 extern(Windows) alias VOID function( LPVOID lpFiberParameter ) PFIBER_START_ROUT < 228 alias PFIBER_START_ROUTINE LPFIBER_START_ROUTINE; < 229 // #endif /* _WIN32_WINNT >= 0x0400 */ < 230 < 231 alias RTL_CRITICAL_SECTION CRITICAL_SECTION; < 232 alias PRTL_CRITICAL_SECTION PCRITICAL_SECTION; < 233 alias PRTL_CRITICAL_SECTION LPCRITICAL_SECTION; < 234 < 235 alias RTL_CRITICAL_SECTION_DEBUG CRITICAL_SECTION_DEBUG; < 236 alias PRTL_CRITICAL_SECTION_DEBUG PCRITICAL_SECTION_DEBUG; < 237 alias PRTL_CRITICAL_SECTION_DEBUG LPCRITICAL_SECTION_DEBUG; < 238 < 239 // #if defined(_X86_) < 240 alias PLDT_ENTRY LPLDT_ENTRY; < 241 // #else < 242 // ... < 243 // #endif < 244 < 245 alias MUTANT_QUERY_STATE MUTEX_MODIFY_STATE; < 246 alias MUTANT_ALL_ACCESS MUTEX_ALL_ACCESS; < 247 < 248 enum : uint { SP_SERIALCOMM = cast(DWORD)0x00000001 } < 249 < 250 enum : uint { PST_UNSPECIFIED = cast(DWORD)0x00000000 } < 251 enum : uint { PST_RS232 = cast(DWORD)0x00000001 } < 252 enum : uint { PST_PARALLELPORT = cast(DWORD)0x00000002 } < 253 enum : uint { PST_RS422 = cast(DWORD)0x00000003 } < 254 enum : uint { PST_RS423 = cast(DWORD)0x00000004 } < 255 enum : uint { PST_RS449 = cast(DWORD)0x00000005 } < 256 enum : uint { PST_MODEM = cast(DWORD)0x00000006 } < 257 enum : uint { PST_FAX = cast(DWORD)0x00000021 } < 258 enum : uint { PST_SCANNER = cast(DWORD)0x00000022 } < 259 enum : uint { PST_NETWORK_BRIDGE = cast(DWORD)0x00000100 } < 260 enum : uint { PST_LAT = cast(DWORD)0x00000101 } < 261 enum : uint { PST_TCPIP_TELNET = cast(DWORD)0x00000102 } < 262 enum : uint { PST_X25 = cast(DWORD)0x00000103 } < 263 < 264 enum : uint { PCF_DTRDSR = cast(DWORD)0x0001 } < 265 enum : uint { PCF_RTSCTS = cast(DWORD)0x0002 } < 266 enum : uint { PCF_RLSD = cast(DWORD)0x0004 } < > 140 PCF_DTRDSR = 0x0001, > 141 PCF_RTSCTS = 0x0002, > 142 PCF_RLSD = 0x0004, 267 enum : uint { PCF_PARITY_CHECK = cast(DWORD)0x0008 } | 143 PCF_PARITY_CHECK = 0x0008, 268 enum : uint { PCF_XONXOFF = cast(DWORD)0x0010 } < > 144 PCF_XONXOFF = 0x0010, 269 enum : uint { PCF_SETXCHAR = cast(DWORD)0x0020 } | 145 PCF_SETXCHAR = 0x0020, 270 enum : uint { PCF_TOTALTIMEOUTS = cast(DWORD)0x0040 } | 146 PCF_TOTALTIMEOUTS = 0x0040, 271 enum : uint { PCF_INTTIMEOUTS = cast(DWORD)0x0080 } | 147 PCF_INTTIMEOUTS = 0x0080, 272 enum : uint { PCF_SPECIALCHARS = cast(DWORD)0x0100 } | 148 PCF_SPECIALCHARS = 0x0100, 273 enum : uint { PCF_16BITMODE = cast(DWORD)0x0200 } | 149 PCF_16BITMODE = 0x0200 274 | 150 } 275 enum : uint { SP_PARITY = cast(DWORD)0x0001 } < 276 enum : uint { SP_BAUD = cast(DWORD)0x0002 } < > 151 > 152 enum : DWORD { > 153 SP_PARITY = 1, > 154 SP_BAUD = 2, 277 enum : uint { SP_DATABITS = cast(DWORD)0x0004 } | 155 SP_DATABITS = 4, 278 enum : uint { SP_STOPBITS = cast(DWORD)0x0008 } | 156 SP_STOPBITS = 8, 279 enum : uint { SP_HANDSHAKING = cast(DWORD)0x0010 } | 157 SP_HANDSHAKING = 16, 280 enum : uint { SP_PARITY_CHECK = cast(DWORD)0x0020 } | 158 SP_PARITY_CHECK = 32, 281 enum : uint { SP_RLSD = cast(DWORD)0x0040 } < > 159 SP_RLSD = 64 282 | 160 } 283 enum : uint { BAUD_075 = cast(DWORD)0x00000001 } < 284 enum : uint { BAUD_110 = cast(DWORD)0x00000002 } < 285 enum : uint { BAUD_134_5 = cast(DWORD)0x00000004 } < 286 enum : uint { BAUD_150 = cast(DWORD)0x00000008 } < 287 enum : uint { BAUD_300 = cast(DWORD)0x00000010 } < 288 enum : uint { BAUD_600 = cast(DWORD)0x00000020 } < 289 enum : uint { BAUD_1200 = cast(DWORD)0x00000040 } < 290 enum : uint { BAUD_1800 = cast(DWORD)0x00000080 } < 291 enum : uint { BAUD_2400 = cast(DWORD)0x00000100 } < 292 enum : uint { BAUD_4800 = cast(DWORD)0x00000200 } < 293 enum : uint { BAUD_7200 = cast(DWORD)0x00000400 } < 294 enum : uint { BAUD_9600 = cast(DWORD)0x00000800 } < 295 enum : uint { BAUD_14400 = cast(DWORD)0x00001000 } < 296 enum : uint { BAUD_19200 = cast(DWORD)0x00002000 } < 297 enum : uint { BAUD_38400 = cast(DWORD)0x00004000 } < 298 enum : uint { BAUD_56K = cast(DWORD)0x00008000 } < 299 enum : uint { BAUD_128K = cast(DWORD)0x00010000 } < 300 enum : uint { BAUD_115200 = cast(DWORD)0x00020000 } < 301 enum : uint { BAUD_57600 = cast(DWORD)0x00040000 } < 302 enum : uint { BAUD_USER = cast(DWORD)0x10000000 } < 303 | 161 > 162 enum : DWORD { 304 enum : uint { DATABITS_5 = cast(WORD)0x0001 } | 163 DATABITS_5 = 1, 305 enum : uint { DATABITS_6 = cast(WORD)0x0002 } | 164 DATABITS_6 = 2, 306 enum : uint { DATABITS_7 = cast(WORD)0x0004 } | 165 DATABITS_7 = 4, 307 enum : uint { DATABITS_8 = cast(WORD)0x0008 } | 166 DATABITS_8 = 8, 308 enum : uint { DATABITS_16 = cast(WORD)0x0010 } | 167 DATABITS_16 = 16, 309 enum : uint { DATABITS_16X = cast(WORD)0x0020 } | 168 DATABITS_16X = 32 310 | 169 } > 170 > 171 enum : WORD { 311 enum : uint { STOPBITS_10 = cast(WORD)0x0001 } | 172 STOPBITS_10 = 0x0001, 312 enum : uint { STOPBITS_15 = cast(WORD)0x0002 } | 173 STOPBITS_15 = 0x0002, 313 enum : uint { STOPBITS_20 = cast(WORD)0x0004 } | 174 STOPBITS_20 = 0x0004, 314 enum : uint { PARITY_NONE = cast(WORD)0x0100 } | 175 PARITY_NONE = 0x0100, 315 enum : uint { PARITY_ODD = cast(WORD)0x0200 } < > 176 PARITY_ODD = 0x0200, 316 enum : uint { PARITY_EVEN = cast(WORD)0x0400 } | 177 PARITY_EVEN = 0x0400, 317 enum : uint { PARITY_MARK = cast(WORD)0x0800 } | 178 PARITY_MARK = 0x0800, 318 enum : uint { PARITY_SPACE = cast(WORD)0x1000 } | 179 PARITY_SPACE = 0x1000 319 | 180 } > 181 > 182 // used by dwServiceMask > 183 const SP_SERIALCOMM = 1; > 184 320 struct _COMMPROP { | 185 struct COMMPROP { 321 WORD wPacketLength; | 186 WORD wPacketLength; 322 WORD wPacketVersion; | 187 WORD wPacketVersion; 323 DWORD dwServiceMask; | 188 DWORD dwServiceMask; 324 DWORD dwReserved1; | 189 DWORD dwReserved1; 325 DWORD dwMaxTxQueue; | 190 DWORD dwMaxTxQueue; 326 DWORD dwMaxRxQueue; | 191 DWORD dwMaxRxQueue; 327 DWORD dwMaxBaud; | 192 DWORD dwMaxBaud; 328 DWORD dwProvSubType; | 193 DWORD dwProvSubType; 329 DWORD dwProvCapabilities; | 194 DWORD dwProvCapabilities; 330 DWORD dwSettableParams; | 195 DWORD dwSettableParams; 331 DWORD dwSettableBaud; | 196 DWORD dwSettableBaud; 332 WORD wSettableData; | 197 WORD wSettableData; 333 WORD wSettableStopParity; | 198 WORD wSettableStopParity; 334 DWORD dwCurrentTxQueue; | 199 DWORD dwCurrentTxQueue; 335 DWORD dwCurrentRxQueue; | 200 DWORD dwCurrentRxQueue; 336 DWORD dwProvSpec1; | 201 DWORD dwProvSpec1; 337 DWORD dwProvSpec2; | 202 DWORD dwProvSpec2; 338 WCHAR wcProvChar[1]; | 203 WCHAR _wcProvChar; 339 } | 204 340 alias _COMMPROP COMMPROP; < > 205 WCHAR* wcProvChar() { return &_wcProvChar; } > 206 } 341 alias _COMMPROP* LPCOMMPROP; | 207 alias COMMPROP* LPCOMMPROP; 342 | 208 343 enum : uint { COMMPROP_INITIALIZED = cast(DWORD)0xE73CF52E } < > 209 // ---------- 344 | 210 345 struct _COMSTAT { < 346 // DWORD fCtsHold : 1; < 347 // DWORD fDsrHold : 1; < 348 // DWORD fRlsdHold : 1; < 349 // DWORD fXoffHold : 1; < 350 // DWORD fXoffSent : 1; < > 211 // for DEBUG_EVENT 351 // DWORD fEof : 1; | 212 enum : DWORD { 352 // DWORD fTxim : 1; < 353 // DWORD fReserved : 25; < 354 DWORD cbInQue; < 355 DWORD cbOutQue; < > 213 EXCEPTION_DEBUG_EVENT = 1, > 214 CREATE_THREAD_DEBUG_EVENT, > 215 CREATE_PROCESS_DEBUG_EVENT, > 216 EXIT_THREAD_DEBUG_EVENT, > 217 EXIT_PROCESS_DEBUG_EVENT, > 218 LOAD_DLL_DEBUG_EVENT, > 219 UNLOAD_DLL_DEBUG_EVENT, > 220 OUTPUT_DEBUG_STRING_EVENT, > 221 RIP_EVENT 356 } | 222 } 357 alias _COMSTAT COMSTAT; < 358 alias _COMSTAT* LPCOMSTAT; < 359 | 223 360 enum : uint { DTR_CONTROL_DISABLE = 0x00 } < 361 enum : uint { DTR_CONTROL_ENABLE = 0x01 } < 362 enum : uint { DTR_CONTROL_HANDSHAKE = 0x02 } < > 224 const HFILE HFILE_ERROR = cast(HFILE) (-1); 363 | 225 364 enum : uint { RTS_CONTROL_DISABLE = 0x00 } < 365 enum : uint { RTS_CONTROL_ENABLE = 0x01 } < 366 enum : uint { RTS_CONTROL_HANDSHAKE = 0x02 } < 367 enum : uint { RTS_CONTROL_TOGGLE = 0x03 } < > 226 // for SetFilePointer() > 227 enum : DWORD { > 228 FILE_BEGIN = 0, > 229 FILE_CURRENT = 1, > 230 FILE_END = 2 368 | 231 } 369 struct _DCB { < 370 DWORD DCBlength; < 371 DWORD BaudRate; < 372 // DWORD fBinary: 1; < 373 // DWORD fParity: 1; < 374 // DWORD fOutxCtsFlow:1; < 375 // DWORD fOutxDsrFlow:1; < 376 // DWORD fDtrControl:2; < 377 // DWORD fDsrSensitivity:1; < 378 // DWORD fTXContinueOnXoff: 1; < 379 // DWORD fOutX: 1; < 380 // DWORD fInX: 1; < 381 // DWORD fErrorChar: 1; < 382 // DWORD fNull: 1; < 383 // DWORD fRtsControl:2; < 384 // DWORD fAbortOnError:1; < 385 // DWORD fDummy2:17; < 386 WORD wReserved; < 387 WORD XonLim; < 388 WORD XoffLim; < 389 BYTE ByteSize; < 390 BYTE Parity; < 391 BYTE StopBits; < 392 char XonChar; < 393 char XoffChar; < 394 char ErrorChar; < 395 char EofChar; < 396 char EvtChar; < 397 WORD wReserved1; < > 232 const DWORD INVALID_SET_FILE_POINTER = -1; 398 } | 233 399 alias _DCB DCB; < 400 alias _DCB* LPDCB; < 401 | 234 402 struct _COMMTIMEOUTS { < 403 DWORD ReadIntervalTimeout; < 404 DWORD ReadTotalTimeoutMultiplier; < 405 DWORD ReadTotalTimeoutConstant; < 406 DWORD WriteTotalTimeoutMultiplier; < 407 DWORD WriteTotalTimeoutConstant; < > 235 // for OpenFile() > 236 deprecated enum : UINT { > 237 OF_READ = 0, > 238 OF_WRITE = 0x0001, > 239 OF_READWRITE = 0x0002, > 240 OF_SHARE_COMPAT = 0, > 241 OF_SHARE_EXCLUSIVE = 0x0010, > 242 OF_SHARE_DENY_WRITE = 0x0020, > 243 OF_SHARE_DENY_READ = 0x0030, > 244 OF_SHARE_DENY_NONE = 0x0040, > 245 OF_PARSE = 0x0100, > 246 OF_DELETE = 0x0200, > 247 OF_VERIFY = 0x0400, > 248 OF_CANCEL = 0x0800, > 249 OF_CREATE = 0x1000, > 250 OF_PROMPT = 0x2000, > 251 OF_EXIST = 0x4000, > 252 OF_REOPEN = 0x8000 408 } | 253 } 409 alias _COMMTIMEOUTS COMMTIMEOUTS; < 410 alias _COMMTIMEOUTS* LPCOMMTIMEOUTS; < 411 | 254 412 struct _COMMCONFIG { < 413 DWORD dwSize; | 255 enum : DWORD { 414 WORD wVersion; < 415 WORD wReserved; < 416 DCB dcb; < 417 DWORD dwProviderSubType; < 418 DWORD dwProviderOffset; < 419 DWORD dwProviderSize; < 420 WCHAR wcProviderData[1]; < > 256 NMPWAIT_NOWAIT = 1, > 257 NMPWAIT_WAIT_FOREVER = -1, > 258 NMPWAIT_USE_DEFAULT_WAIT = 0 421 } | 259 } 422 alias _COMMCONFIG COMMCONFIG; < 423 alias _COMMCONFIG* LPCOMMCONFIG; < 424 | 260 425 struct _SYSTEM_INFO { < 426 union { < > 261 // for ClearCommError() 427 DWORD dwOemId; | 262 const DWORD 428 struct { < 429 WORD wProcessorArchitecture; < 430 WORD wReserved; < > 263 CE_RXOVER = 0x0001, > 264 CE_OVERRUN = 0x0002, > 265 CE_RXPARITY = 0x0004, > 266 CE_FRAME = 0x0008, > 267 CE_BREAK = 0x0010, > 268 CE_TXFULL = 0x0100, > 269 CE_PTO = 0x0200, > 270 CE_IOE = 0x0400, > 271 CE_DNS = 0x0800, > 272 CE_OOP = 0x1000, > 273 CE_MODE = 0x8000; 431 } | 274 > 275 // for CopyProgressRoutine callback. > 276 enum : DWORD { > 277 PROGRESS_CONTINUE = 0, > 278 PROGRESS_CANCEL = 1, > 279 PROGRESS_STOP = 2, > 280 PROGRESS_QUIET = 3 432 | 281 } 433 } | 282 434 < 435 DWORD dwPageSize; | 283 enum : DWORD { 436 LPVOID lpMinimumApplicationAddress; < 437 LPVOID lpMaximumApplicationAddress; < 438 DWORD_PTR dwActiveProcessorMask; < 439 DWORD dwNumberOfProcessors; < 440 DWORD dwProcessorType; < 441 DWORD dwAllocationGranularity; < 442 WORD wProcessorLevel; < 443 WORD wProcessorRevision; < > 284 CALLBACK_CHUNK_FINISHED = 0, > 285 CALLBACK_STREAM_SWITCH = 1 444 } | 286 } 445 alias _SYSTEM_INFO SYSTEM_INFO; < 446 alias _SYSTEM_INFO* LPSYSTEM_INFO; < 447 | 287 448 alias FreeLibrary FreeModule; < 449 // #define MakeProcInstance(lpProc,hInstance) (lpProc) < 450 // #define FreeProcInstance(lpProc) (lpProc) < > 288 // CopyFileEx() > 289 enum : DWORD { > 290 COPY_FILE_FAIL_IF_EXISTS = 1, > 291 COPY_FILE_RESTARTABLE = 2 451 | 292 } 452 enum : uint { GMEM_FIXED = 0x0000 } < 453 enum : uint { GMEM_MOVEABLE = 0x0002 } < 454 enum : uint { GMEM_NOCOMPACT = 0x0010 } < 455 enum : uint { GMEM_NODISCARD = 0x0020 } < 456 enum : uint { GMEM_ZEROINIT = 0x0040 } < 457 enum : uint { GMEM_MODIFY = 0x0080 } < 458 enum : uint { GMEM_DISCARDABLE = 0x0100 } < 459 enum : uint { GMEM_NOT_BANKED = 0x1000 } < 460 enum : uint { GMEM_SHARE = 0x2000 } < 461 enum : uint { GMEM_DDESHARE = 0x2000 } < 462 enum : uint { GMEM_NOTIFY = 0x4000 } < 463 alias GMEM_NOT_BANKED GMEM_LOWER; < 464 enum : uint { GMEM_VALID_FLAGS = 0x7F72 } < 465 enum : uint { GMEM_INVALID_HANDLE = 0x8000 } < 466 | 293 467 enum : uint { GHND = GMEM_MOVEABLE | GMEM_ZEROINIT } < 468 enum : uint { GPTR = GMEM_FIXED | GMEM_ZEROINIT } < > 294 enum : DWORD { > 295 FILE_MAP_COPY = 1, > 296 FILE_MAP_WRITE = 2, > 297 FILE_MAP_READ = 4, > 298 FILE_MAP_ALL_ACCESS = 0x000F001F 469 | 299 } 470 // #define GlobalLRUNewest( h ) ((HANDLE)(h)) < 471 // #define GlobalLRUOldest( h ) ((HANDLE)(h)) < 472 // #define GlobalDiscard( h ) GlobalReAlloc( (h), 0, GMEM_MOVEABLE ) < 473 | 300 474 enum : uint { GMEM_DISCARDED = 0x4000 } < 475 enum : uint { GMEM_LOCKCOUNT = 0x00FF } < 476 < 477 struct _MEMORYSTATUS { < 478 DWORD dwLength; | 301 enum : DWORD { 479 DWORD dwMemoryLoad; < 480 SIZE_T dwTotalPhys; < 481 SIZE_T dwAvailPhys; < 482 SIZE_T dwTotalPageFile; < 483 SIZE_T dwAvailPageFile; < 484 SIZE_T dwTotalVirtual; < 485 SIZE_T dwAvailVirtual; < > 302 MUTEX_ALL_ACCESS = 0x001f0001, > 303 MUTEX_MODIFY_STATE = 0x00000001, > 304 SEMAPHORE_ALL_ACCESS = 0x001f0003, > 305 SEMAPHORE_MODIFY_STATE = 0x00000002, > 306 EVENT_ALL_ACCESS = 0x001f0003, > 307 EVENT_MODIFY_STATE = 0x00000002 486 } | 308 } 487 alias _MEMORYSTATUS MEMORYSTATUS; < 488 alias _MEMORYSTATUS* LPMEMORYSTATUS; < 489 | 309 490 enum : uint { LMEM_FIXED = 0x0000 } < 491 enum : uint { LMEM_MOVEABLE = 0x0002 } < 492 enum : uint { LMEM_NOCOMPACT = 0x0010 } < 493 enum : uint { LMEM_NODISCARD = 0x0020 } < 494 enum : uint { LMEM_ZEROINIT = 0x0040 } < 495 enum : uint { LMEM_MODIFY = 0x0080 } < 496 enum : uint { LMEM_DISCARDABLE = 0x0F00 } < 497 enum : uint { LMEM_VALID_FLAGS = 0x0F72 } < 498 enum : uint { LMEM_INVALID_HANDLE = 0x8000 } < > 310 // CreateNamedPipe() > 311 enum : DWORD { > 312 PIPE_ACCESS_INBOUND = 1, > 313 PIPE_ACCESS_OUTBOUND = 2, > 314 PIPE_ACCESS_DUPLEX = 3 499 | 315 } 500 enum : uint { LHND = LMEM_MOVEABLE | LMEM_ZEROINIT } < 501 enum : uint { LPTR = LMEM_FIXED | LMEM_ZEROINIT } < 502 | 316 503 enum : uint { NONZEROLHND = LMEM_MOVEABLE } < 504 enum : uint { NONZEROLPTR = LMEM_FIXED } < > 317 const DWORD > 318 PIPE_TYPE_BYTE = 0, > 319 PIPE_TYPE_MESSAGE = 4, > 320 PIPE_READMODE_BYTE = 0, > 321 PIPE_READMODE_MESSAGE = 2, > 322 PIPE_WAIT = 0, > 323 PIPE_NOWAIT = 1; 505 | 324 506 // #define LocalDiscard( h ) LocalReAlloc( (h), 0, LMEM_MOVEABLE ) < > 325 // GetNamedPipeInfo() > 326 const DWORD > 327 PIPE_CLIENT_END = 0, > 328 PIPE_SERVER_END = 1; 507 | 329 508 enum : uint { LMEM_DISCARDED = 0x4000 } < 509 enum : uint { LMEM_LOCKCOUNT = 0x00FF } < > 330 const DWORD PIPE_UNLIMITED_INSTANCES = 255; 510 | 331 > 332 // dwCreationFlags for CreateProcess() and CreateProcessAsUser() > 333 enum : DWORD { 511 enum : uint { DEBUG_PROCESS = 0x00000001 } | 334 DEBUG_PROCESS = 0x00000001, 512 enum : uint { DEBUG_ONLY_THIS_PROCESS = 0x00000002 } | 335 DEBUG_ONLY_THIS_PROCESS = 0x00000002, 513 < 514 enum : uint { CREATE_SUSPENDED = 0x00000004 } | 336 CREATE_SUSPENDED = 0x00000004, 515 < 516 enum : uint { DETACHED_PROCESS = 0x00000008 } | 337 DETACHED_PROCESS = 0x00000008, 517 < 518 enum : uint { CREATE_NEW_CONSOLE = 0x00000010 } | 338 CREATE_NEW_CONSOLE = 0x00000010, 519 < 520 enum : uint { NORMAL_PRIORITY_CLASS = 0x00000020 } | 339 NORMAL_PRIORITY_CLASS = 0x00000020, 521 enum : uint { IDLE_PRIORITY_CLASS = 0x00000040 } | 340 IDLE_PRIORITY_CLASS = 0x00000040, 522 enum : uint { HIGH_PRIORITY_CLASS = 0x00000080 } | 341 HIGH_PRIORITY_CLASS = 0x00000080, 523 enum : uint { REALTIME_PRIORITY_CLASS = 0x00000100 } | 342 REALTIME_PRIORITY_CLASS = 0x00000100, 524 < 525 enum : uint { CREATE_NEW_PROCESS_GROUP = 0x00000200 } | 343 CREATE_NEW_PROCESS_GROUP = 0x00000200, 526 enum : uint { CREATE_UNICODE_ENVIRONMENT = 0x00000400 } | 344 CREATE_UNICODE_ENVIRONMENT = 0x00000400, 527 < 528 enum : uint { CREATE_SEPARATE_WOW_VDM = 0x00000800 } | 345 CREATE_SEPARATE_WOW_VDM = 0x00000800, 529 enum : uint { CREATE_SHARED_WOW_VDM = 0x00001000 } | 346 CREATE_SHARED_WOW_VDM = 0x00001000, 530 enum : uint { CREATE_FORCEDOS = 0x00002000 } | 347 CREATE_FORCEDOS = 0x00002000, 531 < 532 enum : uint { BELOW_NORMAL_PRIORITY_CLASS = 0x00004000 } | 348 BELOW_NORMAL_PRIORITY_CLASS = 0x00004000, 533 enum : uint { ABOVE_NORMAL_PRIORITY_CLASS = 0x00008000 } | 349 ABOVE_NORMAL_PRIORITY_CLASS = 0x00008000, 534 enum : uint { STACK_SIZE_PARAM_IS_A_RESERVATION = 0x00010000 } < 535 < 536 enum : uint { CREATE_BREAKAWAY_FROM_JOB = 0x01000000 } | 350 CREATE_BREAKAWAY_FROM_JOB = 0x01000000, 537 enum : uint { CREATE_PRESERVE_CODE_AUTHZ_LEVEL = 0x02000000 } < 538 < > 351 CREATE_WITH_USERPROFILE = 0x02000000, 539 enum : uint { CREATE_DEFAULT_ERROR_MODE = 0x04000000 } | 352 CREATE_DEFAULT_ERROR_MODE = 0x04000000, 540 enum : uint { CREATE_NO_WINDOW = 0x08000000 } | 353 CREATE_NO_WINDOW = 0x08000000, 541 < 542 enum : uint { PROFILE_USER = 0x10000000 } < > 354 PROFILE_USER = 0x10000000, 543 enum : uint { PROFILE_KERNEL = 0x20000000 } | 355 PROFILE_KERNEL = 0x20000000, 544 enum : uint { PROFILE_SERVER = 0x40000000 } | 356 PROFILE_SERVER = 0x40000000 545 | 357 } 546 enum : uint { CREATE_IGNORE_SYSTEM_DEFAULT = 0x80000000 } < 547 | 358 548 alias THREAD_BASE_PRIORITY_MIN THREAD_PRIORITY_LOWEST; < 549 enum : uint { THREAD_PRIORITY_BELOW_NORMAL = THREAD_PRIORITY_LOWEST+1 } < 550 enum : uint { THREAD_PRIORITY_NORMAL = 0 } < 551 alias THREAD_BASE_PRIORITY_MAX THREAD_PRIORITY_HIGHEST; < 552 enum : uint { THREAD_PRIORITY_ABOVE_NORMAL = THREAD_PRIORITY_HIGHEST-1 } < 553 enum : uint { THREAD_PRIORITY_ERROR_RETURN = MAXLONG } < > 359 const DWORD CONSOLE_TEXTMODE_BUFFER = 1; 554 | 360 555 alias THREAD_BASE_PRIORITY_LOWRT THREAD_PRIORITY_TIME_CRITICAL; < 556 alias THREAD_BASE_PRIORITY_IDLE THREAD_PRIORITY_IDLE; < 557 < 558 enum : uint { EXCEPTION_DEBUG_EVENT = 1 } < 559 enum : uint { CREATE_THREAD_DEBUG_EVENT = 2 } < 560 enum : uint { CREATE_PROCESS_DEBUG_EVENT = 3 } < 561 enum : uint { EXIT_THREAD_DEBUG_EVENT = 4 } < 562 enum : uint { EXIT_PROCESS_DEBUG_EVENT = 5 } < 563 enum : uint { LOAD_DLL_DEBUG_EVENT = 6 } < 564 enum : uint { UNLOAD_DLL_DEBUG_EVENT = 7 } < 565 enum : uint { OUTPUT_DEBUG_STRING_EVENT = 8 } < 566 enum : uint { RIP_EVENT = 9 } < 567 < 568 struct _EXCEPTION_DEBUG_INFO { < 569 EXCEPTION_RECORD ExceptionRecord; < > 361 // CreateFile() 570 DWORD dwFirstChance; | 362 enum : DWORD { > 363 CREATE_NEW = 1, > 364 CREATE_ALWAYS, > 365 OPEN_EXISTING, > 366 OPEN_ALWAYS, > 367 TRUNCATE_EXISTING 571 } | 368 } 572 alias _EXCEPTION_DEBUG_INFO EXCEPTION_DEBUG_INFO; < 573 alias _EXCEPTION_DEBUG_INFO* LPEXCEPTION_DEBUG_INFO; < 574 | 369 575 struct _CREATE_THREAD_DEBUG_INFO { < 576 HANDLE hThread; < 577 LPVOID lpThreadLocalBase; < 578 LPTHREAD_START_ROUTINE lpStartAddress; < > 370 // CreateFile() > 371 const DWORD > 372 FILE_FLAG_WRITE_THROUGH = 0x80000000, > 373 FILE_FLAG_OVERLAPPED = 0x40000000, > 374 FILE_FLAG_NO_BUFFERING = 0x20000000, > 375 FILE_FLAG_RANDOM_ACCESS = 0x10000000, > 376 FILE_FLAG_SEQUENTIAL_SCAN = 0x08000000, > 377 FILE_FLAG_DELETE_ON_CLOSE = 0x04000000, > 378 FILE_FLAG_BACKUP_SEMANTICS = 0x02000000, > 379 FILE_FLAG_POSIX_SEMANTICS = 0x01000000, > 380 FILE_FLAG_OPEN_REPARSE_POINT = 0x00200000, > 381 FILE_FLAG_OPEN_NO_RECALL = 0x00100000; 579 } | 382 580 alias _CREATE_THREAD_DEBUG_INFO CREATE_THREAD_DEBUG_INFO; < 581 alias _CREATE_THREAD_DEBUG_INFO* LPCREATE_THREAD_DEBUG_INFO; < > 383 static if (_WIN32_WINNT_ONLY && _WIN32_WINNT >= 0x500) { > 384 const DWORD FILE_FLAG_FIRST_PIPE_INSTANCE = 0x00080000; 582 | 385 } 583 struct _CREATE_PROCESS_DEBUG_INFO { < 584 HANDLE hFile; < 585 HANDLE hProcess; < 586 HANDLE hThread; < 587 LPVOID lpBaseOfImage; < 588 DWORD dwDebugInfoFileOffset; < 589 DWORD nDebugInfoSize; < 590 LPVOID lpThreadLocalBase; < 591 LPTHREAD_START_ROUTINE lpStartAddress; < 592 LPVOID lpImageName; < 593 WORD fUnicode; < 594 } | 386 595 alias _CREATE_PROCESS_DEBUG_INFO CREATE_PROCESS_DEBUG_INFO; < 596 alias _CREATE_PROCESS_DEBUG_INFO* LPCREATE_PROCESS_DEBUG_INFO; < 597 < 598 struct _EXIT_THREAD_DEBUG_INFO { < > 387 // for CreateFile() 599 DWORD dwExitCode; | 388 const DWORD > 389 SECURITY_ANONYMOUS = SECURITY_IMPERSONATION_LEVEL.SecurityAnonymo > 390 SECURITY_IDENTIFICATION = SECURITY_IMPERSONATION_LEVEL.SecurityIdentif > 391 SECURITY_IMPERSONATION = SECURITY_IMPERSONATION_LEVEL.SecurityImperso > 392 SECURITY_DELEGATION = SECURITY_IMPERSONATION_LEVEL.SecurityDelegat > 393 SECURITY_CONTEXT_TRACKING = 0x00040000, > 394 SECURITY_EFFECTIVE_ONLY = 0x00080000, > 395 SECURITY_SQOS_PRESENT = 0x00100000, > 396 SECURITY_VALID_SQOS_FLAGS = 0x001F0000; 600 } | 397 601 alias _EXIT_THREAD_DEBUG_INFO EXIT_THREAD_DEBUG_INFO; < 602 alias _EXIT_THREAD_DEBUG_INFO* LPEXIT_THREAD_DEBUG_INFO; < 603 | 398 604 struct _EXIT_PROCESS_DEBUG_INFO { < 605 DWORD dwExitCode; < > 399 // Thread exit code > 400 const DWORD STILL_ACTIVE = 0x103; 606 } | 401 607 alias _EXIT_PROCESS_DEBUG_INFO EXIT_PROCESS_DEBUG_INFO; < 608 alias _EXIT_PROCESS_DEBUG_INFO* LPEXIT_PROCESS_DEBUG_INFO; < > 402 /* ??? The only documentation of this seems to be about Windows CE and to > 403 * state what _doesn't_ support it. > 404 */ > 405 const DWORD FIND_FIRST_EX_CASE_SENSITIVE = 1; 609 | 406 610 struct _LOAD_DLL_DEBUG_INFO { < 611 HANDLE hFile; < 612 LPVOID lpBaseOfDll; < 613 DWORD dwDebugInfoFileOffset; < > 407 // GetBinaryType() 614 DWORD nDebugInfoSize; | 408 enum : DWORD { 615 LPVOID lpImageName; < 616 WORD fUnicode; < > 409 SCS_32BIT_BINARY = 0, > 410 SCS_DOS_BINARY, > 411 SCS_WOW_BINARY, > 412 SCS_PIF_BINARY, > 413 SCS_POSIX_BINARY, > 414 SCS_OS216_BINARY 617 } | 415 } 618 alias _LOAD_DLL_DEBUG_INFO LOAD_DLL_DEBUG_INFO; < 619 alias _LOAD_DLL_DEBUG_INFO* LPLOAD_DLL_DEBUG_INFO; < 620 | 416 621 struct _UNLOAD_DLL_DEBUG_INFO { < 622 LPVOID lpBaseOfDll; < > 417 const size_t > 418 MAX_COMPUTERNAME_LENGTH = 15, > 419 HW_PROFILE_GUIDLEN = 39, > 420 MAX_PROFILE_LEN = 80; 623 } | 421 624 alias _UNLOAD_DLL_DEBUG_INFO UNLOAD_DLL_DEBUG_INFO; < 625 alias _UNLOAD_DLL_DEBUG_INFO* LPUNLOAD_DLL_DEBUG_INFO; < 626 < 627 struct _OUTPUT_DEBUG_STRING_INFO { < 628 LPSTR lpDebugStringData; < 629 WORD fUnicode; < 630 WORD nDebugStringLength; < 631 } < 632 alias _OUTPUT_DEBUG_STRING_INFO OUTPUT_DEBUG_STRING_INFO; < 633 alias _OUTPUT_DEBUG_STRING_INFO* LPOUTPUT_DEBUG_STRING_INFO; < 634 < 635 struct _RIP_INFO { < > 422 // HW_PROFILE_INFO 636 DWORD dwError; | 423 const DWORD 637 DWORD dwType; < > 424 DOCKINFO_UNDOCKED = 1, > 425 DOCKINFO_DOCKED = 2, > 426 DOCKINFO_USER_SUPPLIED = 4, > 427 DOCKINFO_USER_UNDOCKED = DOCKINFO_USER_SUPPLIED | DOCKINFO_UNDOCKED, > 428 DOCKINFO_USER_DOCKED = DOCKINFO_USER_SUPPLIED | DOCKINFO_DOCKED; 638 } | 429 639 alias _RIP_INFO RIP_INFO; < 640 alias _RIP_INFO* LPRIP_INFO; < 641 < 642 struct _DEBUG_EVENT { < 643 DWORD dwDebugEventCode; < 644 DWORD dwProcessId; < 645 DWORD dwThreadId; < 646 union { < 647 EXCEPTION_DEBUG_INFO Exception; < 648 CREATE_THREAD_DEBUG_INFO CreateThread; < 649 CREATE_PROCESS_DEBUG_INFO CreateProcessInfo; < 650 EXIT_THREAD_DEBUG_INFO ExitThread; < 651 EXIT_PROCESS_DEBUG_INFO ExitProcess; < 652 LOAD_DLL_DEBUG_INFO LoadDll; < 653 UNLOAD_DLL_DEBUG_INFO UnloadDll; < 654 OUTPUT_DEBUG_STRING_INFO DebugString; < 655 RIP_INFO RipInfo; < 656 } < 657 < 658 } < 659 alias _DEBUG_EVENT DEBUG_EVENT; < 660 alias _DEBUG_EVENT* LPDEBUG_EVENT; < 661 < 662 // #if !defined(MIDL_PASS) < 663 alias PCONTEXT LPCONTEXT; < 664 alias PEXCEPTION_RECORD LPEXCEPTION_RECORD; < 665 alias PEXCEPTION_POINTERS LPEXCEPTION_POINTERS; < 666 // #endif < 667 < > 430 // DriveType(), RealDriveType() > 431 enum : int { 668 enum : uint { DRIVE_UNKNOWN = 0 } | 432 DRIVE_UNKNOWN = 0, 669 enum : uint { DRIVE_NO_ROOT_DIR = 1 } | 433 DRIVE_NO_ROOT_DIR, 670 enum : uint { DRIVE_REMOVABLE = 2 } | 434 DRIVE_REMOVABLE, 671 enum : uint { DRIVE_FIXED = 3 } | 435 DRIVE_FIXED, 672 enum : uint { DRIVE_REMOTE = 4 } | 436 DRIVE_REMOTE, 673 enum : uint { DRIVE_CDROM = 5 } | 437 DRIVE_CDROM, 674 enum : uint { DRIVE_RAMDISK = 6 } | 438 DRIVE_RAMDISK 675 | 439 } 676 // #ifndef _MAC < 677 // #define GetFreeSpace(w) (0x100000L) < 678 // #else < 679 // ... < 680 // #endif < 681 | 440 > 441 // GetFileType() > 442 enum : DWORD { 682 enum : uint { FILE_TYPE_UNKNOWN = 0x0000 } | 443 FILE_TYPE_UNKNOWN = 0, 683 enum : uint { FILE_TYPE_DISK = 0x0001 } | 444 FILE_TYPE_DISK, 684 enum : uint { FILE_TYPE_CHAR = 0x0002 } | 445 FILE_TYPE_CHAR, 685 enum : uint { FILE_TYPE_PIPE = 0x0003 } | 446 FILE_TYPE_PIPE, 686 enum : uint { FILE_TYPE_REMOTE = 0x8000 } | 447 FILE_TYPE_REMOTE = 0x8000 687 | 448 } > 449 > 450 // Get/SetHandleInformation() > 451 const DWORD > 452 HANDLE_FLAG_INHERIT = 0x01, > 453 HANDLE_FLAG_PROTECT_FROM_CLOSE = 0x02; > 454 > 455 enum : DWORD { 688 enum : uint { STD_INPUT_HANDLE = cast(DWORD)-10 } | 456 STD_INPUT_HANDLE = 0xFFFFFFF6, 689 enum : uint { STD_OUTPUT_HANDLE = cast(DWORD)-11 } | 457 STD_OUTPUT_HANDLE = 0xFFFFFFF5, 690 enum : uint { STD_ERROR_HANDLE = cast(DWORD)-12 } | 458 STD_ERROR_HANDLE = 0xFFFFFFF4 691 | 459 } 692 enum : uint { NOPARITY = 0 } < 693 enum : uint { ODDPARITY = 1 } < 694 enum : uint { EVENPARITY = 2 } < 695 enum : uint { MARKPARITY = 3 } < 696 enum : uint { SPACEPARITY = 4 } < 697 | 460 698 enum : uint { ONESTOPBIT = 0 } < 699 enum : uint { ONE5STOPBITS = 1 } < 700 enum : uint { TWOSTOPBITS = 2 } < > 461 const HANDLE INVALID_HANDLE_VALUE = cast(HANDLE) (-1); 701 | 462 702 enum : uint { IGNORE = 0 } | 463 enum : DWORD { 703 enum : uint { INFINITE = 0xFFFFFFFF } < > 464 GET_TAPE_MEDIA_INFORMATION = 0, > 465 GET_TAPE_DRIVE_INFORMATION = 1 704 | 466 } 705 enum : uint { CBR_110 = 110 } < 706 enum : uint { CBR_300 = 300 } < 707 enum : uint { CBR_600 = 600 } < 708 enum : uint { CBR_1200 = 1200 } < 709 enum : uint { CBR_2400 = 2400 } < 710 enum : uint { CBR_4800 = 4800 } < 711 enum : uint { CBR_9600 = 9600 } < 712 enum : uint { CBR_14400 = 14400 } < 713 enum : uint { CBR_19200 = 19200 } < 714 enum : uint { CBR_38400 = 38400 } < 715 enum : uint { CBR_56000 = 56000 } < 716 enum : uint { CBR_57600 = 57600 } < 717 enum : uint { CBR_115200 = 115200 } < 718 enum : uint { CBR_128000 = 128000 } < 719 enum : uint { CBR_256000 = 256000 } < 720 | 467 721 enum : uint { CE_RXOVER = 0x0001 } < 722 enum : uint { CE_OVERRUN = 0x0002 } < 723 enum : uint { CE_RXPARITY = 0x0004 } < 724 enum : uint { CE_FRAME = 0x0008 } < 725 enum : uint { CE_BREAK = 0x0010 } < 726 enum : uint { CE_TXFULL = 0x0100 } < 727 enum : uint { CE_PTO = 0x0200 } < 728 enum : uint { CE_IOE = 0x0400 } < 729 enum : uint { CE_DNS = 0x0800 } < 730 enum : uint { CE_OOP = 0x1000 } < 731 enum : uint { CE_MODE = 0x8000 } < > 468 enum : DWORD { > 469 SET_TAPE_MEDIA_INFORMATION = 0, > 470 SET_TAPE_DRIVE_INFORMATION = 1 732 | 471 } 733 enum { IE_BADID = -1 } < 734 enum { IE_OPEN = -2 } < 735 enum { IE_NOPEN = -3 } < 736 enum { IE_MEMORY = -4 } < 737 enum { IE_DEFAULT = -5 } < 738 enum { IE_HARDWARE = -10 } < 739 enum { IE_BYTESIZE = -11 } < 740 enum { IE_BAUDRATE = -12 } < 741 | 472 742 enum : uint { EV_RXCHAR = 0x0001 } < 743 enum : uint { EV_RXFLAG = 0x0002 } < 744 enum : uint { EV_TXEMPTY = 0x0004 } < 745 enum : uint { EV_CTS = 0x0008 } < 746 enum : uint { EV_DSR = 0x0010 } < 747 enum : uint { EV_RLSD = 0x0020 } < 748 enum : uint { EV_BREAK = 0x0040 } < 749 enum : uint { EV_ERR = 0x0080 } < 750 enum : uint { EV_RING = 0x0100 } < 751 enum : uint { EV_PERR = 0x0200 } < 752 enum : uint { EV_RX80FULL = 0x0400 } < 753 enum : uint { EV_EVENT1 = 0x0800 } < 754 enum : uint { EV_EVENT2 = 0x1000 } < > 473 // SetThreadPriority()/GetThreadPriority() > 474 enum : int { > 475 THREAD_PRIORITY_IDLE = -15, > 476 THREAD_PRIORITY_LOWEST = -2, > 477 THREAD_PRIORITY_BELOW_NORMAL = -1, > 478 THREAD_PRIORITY_NORMAL = 0, > 479 THREAD_PRIORITY_ABOVE_NORMAL = 1, > 480 THREAD_PRIORITY_HIGHEST = 2, > 481 THREAD_PRIORITY_TIME_CRITICAL = 15, > 482 THREAD_PRIORITY_ERROR_RETURN = 2147483647 755 | 483 } 756 enum : uint { SETXOFF = 1 } < 757 enum : uint { SETXON = 2 } < 758 enum : uint { SETRTS = 3 } < 759 enum : uint { CLRRTS = 4 } < 760 enum : uint { SETDTR = 5 } < 761 enum : uint { CLRDTR = 6 } < 762 enum : uint { RESETDEV = 7 } < 763 enum : uint { SETBREAK = 8 } < 764 enum : uint { CLRBREAK = 9 } < 765 | 484 766 enum : uint { PURGE_TXABORT = 0x0001 } < 767 enum : uint { PURGE_RXABORT = 0x0002 } < 768 enum : uint { PURGE_TXCLEAR = 0x0004 } < 769 enum : uint { PURGE_RXCLEAR = 0x0008 } < > 485 enum : DWORD { > 486 TIME_ZONE_ID_UNKNOWN, > 487 TIME_ZONE_ID_STANDARD, > 488 TIME_ZONE_ID_DAYLIGHT, > 489 TIME_ZONE_ID_INVALID = 0xFFFFFFFF 770 | 490 } 771 enum : uint { LPTx = 0x80 } < 772 | 491 773 enum : uint { MS_CTS_ON = cast(DWORD)0x0010 } < 774 enum : uint { MS_DSR_ON = cast(DWORD)0x0020 } < 775 enum : uint { MS_RING_ON = cast(DWORD)0x0040 } < 776 enum : uint { MS_RLSD_ON = cast(DWORD)0x0080 } < > 492 const DWORD > 493 FS_CASE_SENSITIVE = 1, > 494 FS_CASE_IS_PRESERVED = 2, > 495 FS_UNICODE_STORED_ON_DISK = 4, > 496 FS_PERSISTENT_ACLS = 8, > 497 FS_FILE_COMPRESSION = 16, > 498 FS_VOL_IS_COMPRESSED = 32768; 777 | 499 778 enum : uint { S_QUEUEEMPTY = 0 } < 779 enum : uint { S_THRESHOLD = 1 } < 780 enum : uint { S_ALLTHRESHOLD = 2 } < > 500 // Flags for GlobalAlloc > 501 const UINT > 502 GMEM_FIXED = 0, > 503 GMEM_MOVEABLE = 0x0002, > 504 GMEM_ZEROINIT = 0x0040, > 505 GPTR = 0x0040, > 506 GHND = 0x0042, > 507 GMEM_MODIFY = 0x0080, // used only for GlobalRealloc > 508 GMEM_VALID_FLAGS = 0x7F72; 781 | 509 782 enum : uint { S_NORMAL = 0 } < 783 enum : uint { S_LEGATO = 1 } < 784 enum : uint { S_STACCATO = 2 } < > 510 /+ // Obselete flags (Win16 only) > 511 GMEM_NOCOMPACT=16; > 512 GMEM_NODISCARD=32; > 513 GMEM_DISCARDABLE=256; > 514 GMEM_NOT_BANKED=4096; > 515 GMEM_LOWER=4096; > 516 GMEM_SHARE=8192; > 517 GMEM_DDESHARE=8192; 785 | 518 786 enum : uint { S_PERIOD512 = 0 } < 787 enum : uint { S_PERIOD1024 = 1 } < 788 enum : uint { S_PERIOD2048 = 2 } < 789 enum : uint { S_PERIODVOICE = 3 } < 790 enum : uint { S_WHITE512 = 4 } < 791 enum : uint { S_WHITE1024 = 5 } < 792 enum : uint { S_WHITE2048 = 6 } < 793 enum : uint { S_WHITEVOICE = 7 } < > 519 GMEM_LOCKCOUNT=255; 794 | 520 795 enum { S_SERDVNA = -1 } < 796 enum { S_SEROFM = -2 } < 797 enum { S_SERMACT = -3 } < 798 enum { S_SERQFUL = -4 } < 799 enum { S_SERBDNT = -5 } < 800 enum { S_SERDLN = -6 } < 801 enum { S_SERDCC = -7 } < 802 enum { S_SERDTP = -8 } < 803 enum { S_SERDVL = -9 } < 804 enum { S_SERDMD = -10 } < 805 enum { S_SERDSH = -11 } < 806 enum { S_SERDPT = -12 } < 807 enum { S_SERDFQ = -13 } < 808 enum { S_SERDDR = -14 } < 809 enum { S_SERDSR = -15 } < 810 enum { S_SERDST = -16 } < > 521 // for GlobalFlags() > 522 GMEM_DISCARDED = 16384; > 523 GMEM_INVALID_HANDLE = 32768; 811 | 524 812 enum : uint { NMPWAIT_WAIT_FOREVER = 0xffffffff } < 813 enum : uint { NMPWAIT_NOWAIT = 0x00000001 } < 814 enum : uint { NMPWAIT_USE_DEFAULT_WAIT = 0x00000000 } < > 525 GMEM_NOTIFY = 16384; > 526 +/ 815 | 527 816 alias FILE_CASE_PRESERVED_NAMES FS_CASE_IS_PRESERVED; < 817 alias FILE_CASE_SENSITIVE_SEARCH FS_CASE_SENSITIVE; < 818 alias FILE_UNICODE_ON_DISK FS_UNICODE_STORED_ON_DISK; < 819 alias FILE_PERSISTENT_ACLS FS_PERSISTENT_ACLS; < 820 alias FILE_VOLUME_IS_COMPRESSED FS_VOL_IS_COMPRESSED; < 821 alias FILE_FILE_COMPRESSION FS_FILE_COMPRESSION; < 822 alias FILE_SUPPORTS_ENCRYPTION FS_FILE_ENCRYPTION; < > 528 const UINT > 529 LMEM_FIXED = 0, > 530 LMEM_MOVEABLE = 0x0002, > 531 LMEM_NONZEROLPTR = 0, > 532 NONZEROLPTR = 0, > 533 LMEM_NONZEROLHND = 0x0002, > 534 NONZEROLHND = 0x0002, > 535 LMEM_DISCARDABLE = 0x0F00, > 536 LMEM_NOCOMPACT = 0x0010, > 537 LMEM_NODISCARD = 0x0020, > 538 LMEM_ZEROINIT = 0x0040, > 539 LPTR = 0x0040, > 540 LHND = 0x0042, > 541 LMEM_MODIFY = 0x0080, > 542 LMEM_LOCKCOUNT = 0x00FF, > 543 LMEM_DISCARDED = 0x4000, > 544 LMEM_INVALID_HANDLE = 0x8000; 823 | 545 824 alias SECTION_QUERY FILE_MAP_COPY; < 825 alias SECTION_MAP_WRITE FILE_MAP_WRITE; < 826 alias SECTION_MAP_READ FILE_MAP_READ; < 827 alias SECTION_ALL_ACCESS FILE_MAP_ALL_ACCESS; < 828 | 546 829 enum : uint { OF_READ = 0x00000000 } < 830 enum : uint { OF_WRITE = 0x00000001 } < 831 enum : uint { OF_READWRITE = 0x00000002 } < 832 enum : uint { OF_SHARE_COMPAT = 0x00000000 } < 833 enum : uint { OF_SHARE_EXCLUSIVE = 0x00000010 } < 834 enum : uint { OF_SHARE_DENY_WRITE = 0x00000020 } < 835 enum : uint { OF_SHARE_DENY_READ = 0x00000030 } < 836 enum : uint { OF_SHARE_DENY_NONE = 0x00000040 } < 837 enum : uint { OF_PARSE = 0x00000100 } < 838 enum : uint { OF_DELETE = 0x00000200 } < 839 enum : uint { OF_VERIFY = 0x00000400 } < 840 enum : uint { OF_CANCEL = 0x00000800 } < 841 enum : uint { OF_CREATE = 0x00001000 } < 842 enum : uint { OF_PROMPT = 0x00002000 } < 843 enum : uint { OF_EXIST = 0x00004000 } < 844 enum : uint { OF_REOPEN = 0x00008000 } < 845 | 547 846 enum : uint { OFS_MAXPATHNAME = 128 } < 847 struct _OFSTRUCT { < 848 BYTE cBytes; < 849 BYTE fFixedDisk; < > 548 // used in EXCEPTION_RECORD 850 WORD nErrCode; | 549 enum : DWORD { 851 WORD Reserved1; < 852 WORD Reserved2; < 853 CHAR szPathName[OFS_MAXPATHNAME]; < > 550 STATUS_WAIT_0 = 0, > 551 STATUS_ABANDONED_WAIT_0 = 0x00000080, > 552 STATUS_USER_APC = 0x000000C0, > 553 STATUS_TIMEOUT = 0x00000102, > 554 STATUS_PENDING = 0x00000103, 854 } | 555 855 alias _OFSTRUCT OFSTRUCT; < 856 alias _OFSTRUCT* LPOFSTRUCT; < 857 alias _OFSTRUCT* POFSTRUCT; < > 556 STATUS_SEGMENT_NOTIFICATION = 0x40000005, > 557 STATUS_GUARD_PAGE_VIOLATION = 0x80000001, > 558 STATUS_DATATYPE_MISALIGNMENT = 0x80000002, > 559 STATUS_BREAKPOINT = 0x80000003, > 560 STATUS_SINGLE_STEP = 0x80000004, 858 | 561 859 // #ifndef NOWINBASEINTERLOCK < > 562 STATUS_ACCESS_VIOLATION = 0xC0000005, > 563 STATUS_IN_PAGE_ERROR = 0xC0000006, > 564 STATUS_INVALID_HANDLE = 0xC0000008, 860 | 565 861 // #ifndef _NTOS_ < > 566 STATUS_NO_MEMORY = 0xC0000017, > 567 STATUS_ILLEGAL_INSTRUCTION = 0xC000001D, > 568 STATUS_NONCONTINUABLE_EXCEPTION = 0xC0000025, > 569 STATUS_INVALID_DISPOSITION = 0xC0000026, > 570 STATUS_ARRAY_BOUNDS_EXCEEDED = 0xC000008C, > 571 STATUS_FLOAT_DENORMAL_OPERAND = 0xC000008D, > 572 STATUS_FLOAT_DIVIDE_BY_ZERO = 0xC000008E, > 573 STATUS_FLOAT_INEXACT_RESULT = 0xC000008F, > 574 STATUS_FLOAT_INVALID_OPERATION = 0xC0000090, > 575 STATUS_FLOAT_OVERFLOW = 0xC0000091, > 576 STATUS_FLOAT_STACK_CHECK = 0xC0000092, > 577 STATUS_FLOAT_UNDERFLOW = 0xC0000093, > 578 STATUS_INTEGER_DIVIDE_BY_ZERO = 0xC0000094, > 579 STATUS_INTEGER_OVERFLOW = 0xC0000095, > 580 STATUS_PRIVILEGED_INSTRUCTION = 0xC0000096, > 581 STATUS_STACK_OVERFLOW = 0xC00000FD, > 582 STATUS_CONTROL_C_EXIT = 0xC000013A, > 583 STATUS_DLL_INIT_FAILED = 0xC0000142, > 584 STATUS_DLL_INIT_FAILED_LOGOFF = 0xC000026B, 862 | 585 863 // #if defined(_M_IA64) && !defined(RC_INVOKED) < > 586 CONTROL_C_EXIT = STATUS_CONTROL_C_EXIT, 864 | 587 865 // #... < 866 // #... < 867 // #... < 868 // #... < 869 // #... < 870 // #... < 871 // #... < > 588 EXCEPTION_ACCESS_VIOLATION = STATUS_ACCESS_VIOLATION, > 589 EXCEPTION_DATATYPE_MISALIGNMENT = STATUS_DATATYPE_MISALIGNMENT, > 590 EXCEPTION_BREAKPOINT = STATUS_BREAKPOINT, > 591 EXCEPTION_SINGLE_STEP = STATUS_SINGLE_STEP, > 592 EXCEPTION_ARRAY_BOUNDS_EXCEEDED = STATUS_ARRAY_BOUNDS_EXCEEDED, > 593 EXCEPTION_FLT_DENORMAL_OPERAND = STATUS_FLOAT_DENORMAL_OPERAND, > 594 EXCEPTION_FLT_DIVIDE_BY_ZERO = STATUS_FLOAT_DIVIDE_BY_ZERO, > 595 EXCEPTION_FLT_INEXACT_RESULT = STATUS_FLOAT_INEXACT_RESULT, > 596 EXCEPTION_FLT_INVALID_OPERATION = STATUS_FLOAT_INVALID_OPERATION, > 597 EXCEPTION_FLT_OVERFLOW = STATUS_FLOAT_OVERFLOW, > 598 EXCEPTION_FLT_STACK_CHECK = STATUS_FLOAT_STACK_CHECK, > 599 EXCEPTION_FLT_UNDERFLOW = STATUS_FLOAT_UNDERFLOW, > 600 EXCEPTION_INT_DIVIDE_BY_ZERO = STATUS_INTEGER_DIVIDE_BY_ZERO, > 601 EXCEPTION_INT_OVERFLOW = STATUS_INTEGER_OVERFLOW, > 602 EXCEPTION_PRIV_INSTRUCTION = STATUS_PRIVILEGED_INSTRUCTION, > 603 EXCEPTION_IN_PAGE_ERROR = STATUS_IN_PAGE_ERROR, > 604 EXCEPTION_ILLEGAL_INSTRUCTION = STATUS_ILLEGAL_INSTRUCTION, > 605 EXCEPTION_NONCONTINUABLE_EXCEPTION = STATUS_NONCONTINUABLE_EXCEPTION, > 606 EXCEPTION_STACK_OVERFLOW = STATUS_STACK_OVERFLOW, > 607 EXCEPTION_INVALID_DISPOSITION = STATUS_INVALID_DISPOSITION, > 608 EXCEPTION_GUARD_PAGE = STATUS_GUARD_PAGE_VIOLATION, > 609 EXCEPTION_INVALID_HANDLE = STATUS_INVALID_HANDLE 872 | 610 } 873 // ... < 874 | 611 875 // ... < > 612 // for PROCESS_HEAP_ENTRY > 613 const WORD > 614 PROCESS_HEAP_REGION = 1, > 615 PROCESS_HEAP_UNCOMMITTED_RANGE = 2, > 616 PROCESS_HEAP_ENTRY_BUSY = 4, > 617 PROCESS_HEAP_ENTRY_MOVEABLE = 16, > 618 PROCESS_HEAP_ENTRY_DDESHARE = 32; 876 | 619 877 // ... < > 620 // for LoadLibraryEx() > 621 const DWORD > 622 DONT_RESOLVE_DLL_REFERENCES = 0x01, // not for WinME and earlier > 623 LOAD_LIBRARY_AS_DATAFILE = 0x02, > 624 LOAD_WITH_ALTERED_SEARCH_PATH = 0x08, > 625 LOAD_IGNORE_CODE_AUTHZ_LEVEL = 0x10; // only for XP and later 878 | 626 879 // ... < > 627 // for LockFile() > 628 const DWORD > 629 LOCKFILE_FAIL_IMMEDIATELY = 1, > 630 LOCKFILE_EXCLUSIVE_LOCK = 2; 880 | 631 881 // ... < > 632 const MAXIMUM_WAIT_OBJECTS = 64; > 633 const MAXIMUM_SUSPEND_COUNT = 0x7F; 882 | 634 883 // ... < > 635 const WAIT_OBJECT_0 = 0; > 636 const WAIT_ABANDONED_0 = 128; 884 | 637 885 // ... < > 638 //const WAIT_TIMEOUT=258; // also in winerror.h 886 | 639 887 // #... < 888 // #... < 889 // #... < 890 // #... < 891 // #... < 892 // #... < 893 // #... < > 640 enum : DWORD { > 641 WAIT_IO_COMPLETION = 0x000000C0, > 642 WAIT_ABANDONED = 0x00000080, > 643 WAIT_FAILED = 0xFFFFFFFF 894 | 644 } 895 // #elif defined(_M_AMD64) && !defined(RC_INVOKED) < 896 | 645 897 // #... < 898 // #... < 899 // #... < 900 // #... < 901 // #... < 902 // #... < 903 // #... < > 646 // PurgeComm() > 647 const DWORD > 648 PURGE_TXABORT = 1, > 649 PURGE_RXABORT = 2, > 650 PURGE_TXCLEAR = 4, > 651 PURGE_RXCLEAR = 8; 904 | 652 905 // ... < > 653 // ReadEventLog() > 654 const DWORD > 655 EVENTLOG_SEQUENTIAL_READ = 1, > 656 EVENTLOG_SEEK_READ = 2, > 657 EVENTLOG_FORWARDS_READ = 4, > 658 EVENTLOG_BACKWARDS_READ = 8; 906 | 659 907 // ... < > 660 // ReportEvent() > 661 enum : WORD { > 662 EVENTLOG_SUCCESS = 0, > 663 EVENTLOG_ERROR_TYPE = 1, > 664 EVENTLOG_WARNING_TYPE = 2, > 665 EVENTLOG_INFORMATION_TYPE = 4, > 666 EVENTLOG_AUDIT_SUCCESS = 8, > 667 EVENTLOG_AUDIT_FAILURE = 16 908 | 668 } 909 // ... < 910 | 669 911 // ... < > 670 // FormatMessage() > 671 const DWORD > 672 FORMAT_MESSAGE_ALLOCATE_BUFFER = 0x0100, > 673 FORMAT_MESSAGE_IGNORE_INSERTS = 0x0200, > 674 FORMAT_MESSAGE_FROM_STRING = 0x0400, > 675 FORMAT_MESSAGE_FROM_HMODULE = 0x0800, > 676 FORMAT_MESSAGE_FROM_SYSTEM = 0x1000, > 677 FORMAT_MESSAGE_ARGUMENT_ARRAY = 0x2000; 912 | 678 913 // ... < > 679 const DWORD FORMAT_MESSAGE_MAX_WIDTH_MASK = 255; 914 | 680 915 // ... < > 681 // also in ddk/ntapi.h > 682 // To restore default error mode, call SetErrorMode(0) > 683 enum { > 684 SEM_FAILCRITICALERRORS = 0x0001, > 685 SEM_NOGPFAULTERRORBOX = 0x0002, > 686 SEM_NOALIGNMENTFAULTEXCEPT = 0x0004, > 687 SEM_NOOPENFILEERRORBOX = 0x8000 916 | 688 } 917 // ... < > 689 // end ntapi.h 918 | 690 919 // #... < 920 // #... < 921 // #... < 922 // #... < 923 // #... < 924 // #... < 925 // #... < > 691 enum { > 692 SLE_ERROR = 1, > 693 SLE_MINORERROR, > 694 SLE_WARNING 926 | 695 } 927 // #else // X86 interlocked definitions < 928 | 696 929 extern(Windows) export LONG InterlockedIncrement( < 930 LONG *lpAddend); < > 697 const SHUTDOWN_NORETRY = 1; 931 | 698 932 extern(Windows) export LONG InterlockedDecrement( < > 699 // Return type for exception filters. 933 LONG *lpAddend); | 700 enum : LONG { > 701 EXCEPTION_EXECUTE_HANDLER = 1, > 702 EXCEPTION_CONTINUE_EXECUTION = -1, > 703 EXCEPTION_CONTINUE_SEARCH = 0 934 | 704 } 935 extern(Windows) export LONG InterlockedExchange( < 936 LONG *Target, < 937 LONG Value); < 938 | 705 939 void* InterlockedExchangePointer(void** t, void* v){ return cast(void*)Interlock < > 706 enum : ATOM { > 707 MAXINTATOM = 0xC000, > 708 INVALID_ATOM = 0 940 | 709 } 941 extern(Windows) export LONG InterlockedExchangeAdd( < 942 LONG *Addend, < 943 LONG Value); < 944 | 710 945 extern(Windows) export LONG InterlockedCompareExchange( < 946 LONG *Destination, < 947 LONG Exchange, < 948 LONG Comperand); < > 711 const IGNORE = 0; > 712 const INFINITE = 0xFFFFFFFF; 949 | 713 950 // #ifdef __cplusplus < > 714 // EscapeCommFunction() > 715 enum { > 716 SETXOFF = 1, > 717 SETXON, > 718 SETRTS, > 719 CLRRTS, > 720 SETDTR, > 721 CLRDTR, // = 6 > 722 SETBREAK = 8, > 723 CLRBREAK = 9 951 | 724 } 952 PVOID __InlineInterlockedCompareExchangePointer(PVOID* Destination, PVOID ExChan < 953 alias __InlineInterlockedCompareExchangePointer InterlockedCompareExchangePointe < 954 | 725 > 726 > 727 // for SetCommMask() > 728 const DWORD > 729 EV_RXCHAR = 0x0001, > 730 EV_RXFLAG = 0x0002, > 731 EV_TXEMPTY = 0x0004, > 732 EV_CTS = 0x0008, > 733 EV_DSR = 0x0010, > 734 EV_RLSD = 0x0020, > 735 EV_BREAK = 0x0040, > 736 EV_ERR = 0x0080, > 737 EV_RING = 0x0100, > 738 EV_PERR = 0x0200, > 739 EV_RX80FULL = 0x0400, > 740 EV_EVENT1 = 0x0800, > 741 EV_EVENT2 = 0x1000; > 742 > 743 // GetCommModemStatus() > 744 const DWORD > 745 MS_CTS_ON = 0x0010, > 746 MS_DSR_ON = 0x0020, > 747 MS_RING_ON = 0x0040, > 748 MS_RLSD_ON = 0x0080; > 749 > 750 955 // #else | 751 // DCB > 752 enum : BYTE { > 753 NOPARITY = 0, > 754 ODDPARITY, > 755 EVENPARITY, > 756 MARKPARITY, > 757 SPACEPARITY 956 | 758 } 957 // #... | 759 // DCB > 760 enum : BYTE { > 761 ONESTOPBIT = 0, > 762 ONE5STOPBITS, > 763 TWOSTOPBITS > 764 } 958 // ... | 765 // DCB > 766 enum : DWORD { > 767 CBR_110 = 110, > 768 CBR_300 = 300, > 769 CBR_600 = 600, > 770 CBR_1200 = 1200, > 771 CBR_2400 = 2400, > 772 CBR_4800 = 4800, > 773 CBR_9600 = 9600, > 774 CBR_14400 = 14400, > 775 CBR_19200 = 19200, > 776 CBR_38400 = 38400, > 777 CBR_56000 = 56000, > 778 CBR_57600 = 57600, > 779 CBR_115200 = 115200, > 780 CBR_128000 = 128000, > 781 CBR_256000 = 256000 959 | 782 } 960 // #endif /* __cplusplus */ < > 783 // DCB, 2-bit bitfield > 784 enum { > 785 DTR_CONTROL_DISABLE = 0, > 786 DTR_CONTROL_ENABLE, > 787 DTR_CONTROL_HANDSHAKE 961 | 788 } 962 // #endif /* X86 | IA64 */ < 963 | 789 964 // #if defined(_SLIST_HEADER_) && !defined(_NTOSP_) < > 790 // DCB, 2-bit bitfield > 791 enum { > 792 RTS_CONTROL_DISABLE = 0, > 793 RTS_CONTROL_ENABLE, > 794 RTS_CONTROL_HANDSHAKE, > 795 RTS_CONTROL_TOGGLE, 965 | 796 } 966 // ... < 967 | 797 968 // ... < > 798 // WIN32_STREAM_ID > 799 enum : DWORD { > 800 BACKUP_INVALID = 0, > 801 BACKUP_DATA, > 802 BACKUP_EA_DATA, > 803 BACKUP_SECURITY_DATA, > 804 BACKUP_ALTERNATE_DATA, > 805 BACKUP_LINK, > 806 BACKUP_PROPERTY_DATA, > 807 BACKUP_OBJECT_ID, > 808 BACKUP_REPARSE_DATA, > 809 BACKUP_SPARSE_BLOCK 969 | 810 } 970 // ... < 971 | 811 972 // ... < > 812 // WIN32_STREAM_ID > 813 enum : DWORD { > 814 STREAM_NORMAL_ATTRIBUTE = 0, > 815 STREAM_MODIFIED_WHEN_READ = 1, > 816 STREAM_CONTAINS_SECURITY = 2, > 817 STREAM_CONTAINS_PROPERTIES = 4 973 | 818 } > 819 > 820 // STARTUPINFO > 821 const DWORD > 822 STARTF_USESHOWWINDOW = 0x0001, > 823 STARTF_USESIZE = 0x0002, > 824 STARTF_USEPOSITION = 0x0004, > 825 STARTF_USECOUNTCHARS = 0x0008, > 826 STARTF_USEFILLATTRIBUTE = 0x0010, > 827 STARTF_RUNFULLSCREEN = 0x0020, > 828 STARTF_FORCEONFEEDBACK = 0x0040, > 829 STARTF_FORCEOFFFEEDBACK = 0x0080, > 830 STARTF_USESTDHANDLES = 0x0100, > 831 STARTF_USEHOTKEY = 0x0200; > 832 974 // ... | 833 // ??? > 834 enum { > 835 TC_NORMAL = 0, > 836 TC_HARDERR = 1, > 837 TC_GP_TRAP = 2, > 838 TC_SIGNAL = 3 975 | 839 } 976 // #endif /* _SLIST_HEADER_ */ < 977 // #endif /* _NTOS_ */ < 978 | 840 979 // #endif /* NOWINBASEINTERLOCK */ < > 841 /+ These seem to be Windows CE-specific > 842 enum { > 843 AC_LINE_OFFLINE = 0, > 844 AC_LINE_ONLINE = 1, > 845 AC_LINE_BACKUP_POWER = 2, > 846 AC_LINE_UNKNOWN = 255 980 | 847 } 981 extern(Windows) export BOOL FreeResource( < 982 HGLOBAL hResData); < 983 | 848 984 extern(Windows) export LPVOID LockResource( < 985 HGLOBAL hResData); < > 849 enum { > 850 BATTERY_FLAG_HIGH = 1, > 851 BATTERY_FLAG_LOW = 2, > 852 BATTERY_FLAG_CRITICAL = 4, > 853 BATTERY_FLAG_CHARGING = 8, > 854 BATTERY_FLAG_NO_BATTERY = 128, > 855 BATTERY_FLAG_UNKNOWN = 255, > 856 BATTERY_PERCENTAGE_UNKNOWN = 255, > 857 BATTERY_LIFE_UNKNOWN = 0xFFFFFFFF 986 | 858 } 987 // #define UnlockResource(hResData) ((hResData), 0) < 988 enum : uint { MAXINTATOM = 0xC000 } < 989 // #define MAKEINTATOM(i) (LPTSTR)((ULONG_PTR)((WORD)(i))) < 990 enum : ATOM { INVALID_ATOM = 0 } < > 859 +/ 991 | 860 992 // #ifndef _MAC < 993 // ??? 861 // ??? 994 // ??? | 862 const HINSTANCE_ERROR = 32; 995 // #else < > 863 996 // ... | 864 // returned from GetFileSize() 997 // #endif | 865 const DWORD INVALID_FILE_SIZE = 0xFFFFFFFF; 998 // WinMain < 999 | 866 1000 extern(Windows) export BOOL FreeLibrary( < > 867 const DWORD TLS_OUT_OF_INDEXES = 0xFFFFFFFF; > 868 1001 HMODULE hLibModule); | 869 // GetWriteWatch() > 870 const DWORD WRITE_WATCH_FLAG_RESET = 1; 1002 | 871 1003 extern(Windows) export VOID FreeLibraryAndExitThread( < 1004 HMODULE hLibModule, | 872 static if (_WIN32_WINNT_ONLY) { > 873 // for LogonUser() 1005 DWORD dwExitCode); | 874 enum : DWORD { > 875 LOGON32_LOGON_INTERACTIVE = 2, > 876 LOGON32_LOGON_NETWORK = 3, > 877 LOGON32_LOGON_BATCH = 4, > 878 LOGON32_LOGON_SERVICE = 5, > 879 LOGON32_LOGON_UNLOCK = 7 1006 | 880 } 1007 extern(Windows) export BOOL DisableThreadLibraryCalls( < 1008 HMODULE hLibModule); < 1009 | 881 1010 extern(Windows) export FARPROC GetProcAddress( < 1011 HMODULE hModule, < 1012 LPCSTR lpProcName); < > 882 // for LogonUser() > 883 enum : DWORD { > 884 LOGON32_PROVIDER_DEFAULT, > 885 LOGON32_PROVIDER_WINNT35, > 886 LOGON32_PROVIDER_WINNT40, > 887 LOGON32_PROVIDER_WINNT50 1013 | 888 } 1014 extern(Windows) export DWORD GetVersion(); < 1015 | 889 1016 extern(Windows) export HGLOBAL GlobalAlloc( < 1017 UINT uFlags, < 1018 SIZE_T dwBytes); < > 890 // for MoveFileEx() > 891 const DWORD > 892 MOVEFILE_REPLACE_EXISTING = 1, > 893 MOVEFILE_COPY_ALLOWED = 2, > 894 MOVEFILE_DELAY_UNTIL_REBOOT = 4, > 895 MOVEFILE_WRITE_THROUGH = 8; 1019 | 896 1020 extern(Windows) export HGLOBAL GlobalReAlloc( < 1021 HGLOBAL hMem, < 1022 SIZE_T dwBytes, < 1023 UINT uFlags); < > 897 // DefineDosDevice() > 898 const DWORD > 899 DDD_RAW_TARGET_PATH = 1, > 900 DDD_REMOVE_DEFINITION = 2, > 901 DDD_EXACT_MATCH_ON_REMOVE = 4; 1024 | 902 1025 extern(Windows) export SIZE_T GlobalSize( < 1026 HGLOBAL hMem); < > 903 static if (_WIN32_WINNT >= 0x500) { > 904 enum : DWORD { > 905 LOGON32_LOGON_NETWORK_CLEARTEXT = 8, > 906 LOGON32_LOGON_NEW_CREDENTIALS = 9 1027 | 907 } 1028 extern(Windows) export UINT GlobalFlags( < 1029 HGLOBAL hMem); < 1030 | 908 1031 extern(Windows) export LPVOID GlobalLock( < 1032 HGLOBAL hMem); < > 909 // ReplaceFile() > 910 const DWORD > 911 REPLACEFILE_WRITE_THROUGH = 1, > 912 REPLACEFILE_IGNORE_MERGE_ERRORS = 2; 1033 | 913 } 1034 extern(Windows) export HGLOBAL GlobalHandle( < 1035 LPCVOID pMem); < 1036 | 914 1037 extern(Windows) export BOOL GlobalUnlock( < 1038 HGLOBAL hMem); < > 915 static if (_WIN32_WINNT >= 0x501) { > 916 const DWORD > 917 GET_MODULE_HANDLE_EX_FLAG_PIN = 1, > 918 GET_MODULE_HANDLE_EX_FLAG_UNCHANGED_REFCOUNT = 2, > 919 GET_MODULE_HANDLE_EX_FLAG_FROM_ADDRESS = 4; 1039 | 920 1040 extern(Windows) export HGLOBAL GlobalFree( < 1041 HGLOBAL hMem); < > 921 // for ACTCTX > 922 const DWORD > 923 ACTCTX_FLAG_PROCESSOR_ARCHITECTURE_VALID = 0x01, > 924 ACTCTX_FLAG_LANGID_VALID = 0x02, > 925 ACTCTX_FLAG_ASSEMBLY_DIRECTORY_VALID = 0x04, > 926 ACTCTX_FLAG_RESOURCE_NAME_VALID = 0x08, > 927 ACTCTX_FLAG_SET_PROCESS_DEFAULT = 0x10, > 928 ACTCTX_FLAG_APPLICATION_NAME_VALID = 0x20, > 929 ACTCTX_FLAG_HMODULE_VALID = 0x80; 1042 | 930 1043 extern(Windows) export SIZE_T GlobalCompact( < > 931 // DeactivateActCtx() > 932 const DWORD DEACTIVATE_ACTCTX_FLAG_FORCE_EARLY_DEACTIVATION = 1; > 933 // FindActCtxSectionString() > 934 const DWORD FIND_ACTCTX_SECTION_KEY_RETURN_HACTCTX = 1; > 935 // QueryActCtxW() 1044 DWORD dwMinFree); | 936 const DWORD > 937 QUERY_ACTCTX_FLAG_USE_ACTIVE_ACTCTX = 0x04, > 938 QUERY_ACTCTX_FLAG_ACTCTX_IS_HMODULE = 0x08, > 939 QUERY_ACTCTX_FLAG_ACTCTX_IS_ADDRESS = 0x10; 1045 | 940 1046 extern(Windows) export VOID GlobalFix( < 1047 HGLOBAL hMem); < > 941 enum { > 942 LOGON_WITH_PROFILE = 1, > 943 LOGON_NETCREDENTIALS_ONLY 1048 | 944 } 1049 extern(Windows) export VOID GlobalUnfix( < 1050 HGLOBAL hMem); < 1051 | 945 } 1052 extern(Windows) export LPVOID GlobalWire( < 1053 HGLOBAL hMem); < 1054 | 946 } 1055 extern(Windows) export BOOL GlobalUnWire( < 1056 HGLOBAL hMem); < 1057 | 947 1058 extern(Windows) export VOID GlobalMemoryStatus( < 1059 LPMEMORYSTATUS lpBuffer); < > 948 // ---- 1060 | 949 1061 struct _MEMORYSTATUSEX { | 950 struct FILETIME { 1062 DWORD dwLength; | 951 DWORD dwLowDateTime; 1063 DWORD dwMemoryLoad; | 952 DWORD dwHighDateTime; 1064 DWORDLONG ullTotalPhys; < 1065 DWORDLONG ullAvailPhys; < 1066 DWORDLONG ullTotalPageFile; < 1067 DWORDLONG ullAvailPageFile; < 1068 DWORDLONG ullTotalVirtual; < 1069 DWORDLONG ullAvailVirtual; < 1070 DWORDLONG ullAvailExtendedVirtual; < 1071 } | 953 } 1072 alias _MEMORYSTATUSEX MEMORYSTATUSEX; < 1073 alias _MEMORYSTATUSEX* LPMEMORYSTATUSEX; < > 954 alias FILETIME* PFILETIME, LPFILETIME; 1074 | 955 1075 extern(Windows) export BOOL GlobalMemoryStatusEx( < 1076 LPMEMORYSTATUSEX lpBuffer); < > 956 struct BY_HANDLE_FILE_INFORMATION { > 957 DWORD dwFileAttributes; > 958 FILETIME ftCreationTime; > 959 FILETIME ftLastAccessTime; > 960 FILETIME ftLastWriteTime; > 961 DWORD dwVolumeSerialNumber; > 962 DWORD nFileSizeHigh; > 963 DWORD nFileSizeLow; > 964 DWORD nNumberOfLinks; > 965 DWORD nFileIndexHigh; > 966 DWORD nFileIndexLow; 1077 | 967 } 1078 extern(Windows) export HLOCAL LocalAlloc( < 1079 UINT uFlags, < 1080 SIZE_T uBytes); < > 968 alias BY_HANDLE_FILE_INFORMATION* LPBY_HANDLE_FILE_INFORMATION; 1081 | 969 1082 extern(Windows) export HLOCAL LocalReAlloc( < 1083 HLOCAL hMem, < 1084 SIZE_T uBytes, < 1085 UINT uFlags); < > 970 struct DCB { > 971 DWORD DCBlength = DCB.sizeof; > 972 DWORD BaudRate; > 973 /+ > 974 DWORD fBinary:1; // Binary Mode (skip EOF check) > 975 DWORD fParity:1; // Enable parity checking > 976 DWORD fOutxCtsFlow:1; // CTS handshaking on output > 977 DWORD fOutxDsrFlow:1; // DSR handshaking on output > 978 DWORD fDtrControl:2; // DTR Flow control > 979 DWORD fDsrSensitivity:1; // DSR Sensitivity > 980 DWORD fTXContinueOnXoff:1; // Continue TX when Xoff sent > 981 DWORD fOutX:1; // Enable output X-ON/X-OFF > 982 DWORD fInX:1; // Enable input X-ON/X-OFF > 983 DWORD fErrorChar:1; // Enable Err Replacement > 984 DWORD fNull:1; // Enable Null stripping > 985 DWORD fRtsControl:2; // Rts Flow control > 986 DWORD fAbortOnError:1; // Abort all reads and writes on Error > 987 DWORD fDummy2:17; // Reserved > 988 +/ > 989 uint _bf; > 990 bool fBinary(bool f) { _bf = (_bf & ~0x0001) | f; return f; } > 991 bool fParity(bool f) { _bf = (_bf & ~0x0002) | (f<<1); return > 992 bool fOutxCtsFlow(bool f) { _bf = (_bf & ~0x0004) | (f<<2); return > 993 bool fOutxDsrFlow(bool f) { _bf = (_bf & ~0x0008) | (f<<3); return > 994 byte fDtrControl(byte x) { _bf = (_bf & ~0x0030) | (x<<4); return > 995 bool fDsrSensitivity(bool f) { _bf = (_bf & ~0x0040) | (f<<6); return > 996 bool fTXContinueOnXoff(bool f) { _bf = (_bf & ~0x0080) | (f<<7); return > 997 bool fOutX(bool f) { _bf = (_bf & ~0x0100) | (f<<8); return > 998 bool fInX(bool f) { _bf = (_bf & ~0x0200) | (f<<9); return > 999 bool fErrorChar(bool f) { _bf = (_bf & ~0x0400) | (f<<10); return > 1000 bool fNull(bool f) { _bf = (_bf & ~0x0800) | (f<<11); return > 1001 byte fRtsControl(byte x) { _bf = (_bf & ~0x3000) | (x<<12); return > 1002 bool fAbortOnError(bool f) { _bf = (_bf & ~0x4000) | (f<<14); return 1086 | 1003 1087 extern(Windows) export LPVOID LocalLock( < 1088 HLOCAL hMem); < > 1004 bool fBinary() { return cast(bool) (_bf & 1); } > 1005 bool fParity() { return cast(bool) (_bf & 2); } > 1006 bool fOutxCtsFlow() { return cast(bool) (_bf & 4); } > 1007 bool fOutxDsrFlow() { return cast(bool) (_bf & 8); } > 1008 byte fDtrControl() { return cast(byte) ((_bf & (32+16))>>4); } > 1009 bool fDsrSensitivity() { return cast(bool) (_bf & 64); } > 1010 bool fTXContinueOnXoff() { return cast(bool) (_bf & 128); } > 1011 bool fOutX() { return cast(bool) (_bf & 256); } > 1012 bool fInX() { return cast(bool) (_bf & 512); } > 1013 bool fErrorChar() { return cast(bool) (_bf & 1024); } > 1014 bool fNull() { return cast(bool) (_bf & 2048); } > 1015 byte fRtsControl() { return cast(byte) ((_bf & (4096+8192))>>12); > 1016 bool fAbortOnError() { return cast(bool) (_bf & 16384); } 1089 | 1017 1090 extern(Windows) export HLOCAL LocalHandle( < 1091 LPCVOID pMem); < > 1018 WORD wReserved; > 1019 WORD XonLim; > 1020 WORD XoffLim; > 1021 BYTE ByteSize; > 1022 BYTE Parity; > 1023 BYTE StopBits; > 1024 char XonChar; > 1025 char XoffChar; > 1026 char ErrorChar; > 1027 char EofChar; > 1028 char EvtChar; > 1029 WORD wReserved1; 1092 | 1030 } 1093 extern(Windows) export BOOL LocalUnlock( < 1094 HLOCAL hMem); < > 1031 alias DCB* LPDCB; 1095 | 1032 1096 extern(Windows) export SIZE_T LocalSize( < 1097 HLOCAL hMem); < > 1033 struct COMMCONFIG { > 1034 DWORD dwSize = COMMCONFIG.sizeof; > 1035 WORD wVersion; > 1036 WORD wReserved; > 1037 DCB dcb; > 1038 DWORD dwProviderSubType; > 1039 DWORD dwProviderOffset; > 1040 DWORD dwProviderSize; > 1041 WCHAR _wcProviderData; 1098 | 1042 1099 extern(Windows) export UINT LocalFlags( < 1100 HLOCAL hMem); < > 1043 WCHAR* wcProviderData() { return &_wcProviderData; } 1101 | 1044 } 1102 extern(Windows) export HLOCAL LocalFree( < 1103 HLOCAL hMem); < > 1045 alias COMMCONFIG* LPCOMMCONFIG; 1104 | 1046 1105 extern(Windows) export SIZE_T LocalShrink( < 1106 HLOCAL hMem, < 1107 UINT cbNewSize); < > 1047 struct COMMTIMEOUTS { > 1048 DWORD ReadIntervalTimeout; > 1049 DWORD ReadTotalTimeoutMultiplier; > 1050 DWORD ReadTotalTimeoutConstant; > 1051 DWORD WriteTotalTimeoutMultiplier; > 1052 DWORD WriteTotalTimeoutConstant; 1108 | 1053 } 1109 extern(Windows) export SIZE_T LocalCompact( < 1110 UINT uMinFree); < > 1054 alias COMMTIMEOUTS* LPCOMMTIMEOUTS; 1111 | 1055 1112 extern(Windows) export BOOL FlushInstructionCache( < 1113 HANDLE hProcess, < 1114 LPCVOID lpBaseAddress, < 1115 SIZE_T dwSize); < 1116 < 1117 extern(Windows) export LPVOID VirtualAlloc( < 1118 LPVOID lpAddress, < 1119 SIZE_T dwSize, < > 1056 struct COMSTAT { > 1057 /+ > 1058 DWORD fCtsHold:1; > 1059 DWORD fDsrHold:1; > 1060 DWORD fRlsdHold:1; > 1061 DWORD fXoffHold:1; > 1062 DWORD fXoffSent:1; 1120 DWORD flAllocationType, | 1063 DWORD fEof:1; 1121 DWORD flProtect); | 1064 DWORD fTxim:1; > 1065 DWORD fReserved:25; > 1066 +/ > 1067 DWORD _bf; > 1068 bool fCtsHold(bool f) { _bf = (_bf & ~1) | f; return f; } > 1069 bool fDsrHold(bool f) { _bf = (_bf & ~2) | (f<<1); return f; } > 1070 bool fRlsdHold(bool f) { _bf = (_bf & ~4) | (f<<2); return f; } > 1071 bool fXoffHold(bool f) { _bf = (_bf & ~8) | (f<<3); return f; } > 1072 bool fXoffSent(bool f) { _bf = (_bf & ~16) | (f<<4); return f; } > 1073 bool fEof(bool f) { _bf = (_bf & ~32) | (f<<5); return f; } > 1074 bool fTxim(bool f) { _bf = (_bf & ~64) | (f<<6); return f; } 1122 | 1075 1123 extern(Windows) export BOOL VirtualFree( < 1124 LPVOID lpAddress, < 1125 SIZE_T dwSize, < 1126 DWORD dwFreeType); < > 1076 bool fCtsHold() { return cast(bool) (_bf & 1); } > 1077 bool fDsrHold() { return cast(bool) (_bf & 2); } > 1078 bool fRlsdHold() { return cast(bool) (_bf & 4); } > 1079 bool fXoffHold() { return cast(bool) (_bf & 8); } > 1080 bool fXoffSent() { return cast(bool) (_bf & 16); } > 1081 bool fEof() { return cast(bool) (_bf & 32); } > 1082 bool fTxim() { return cast(bool) (_bf & 64); } 1127 | 1083 1128 extern(Windows) export BOOL VirtualProtect( < 1129 LPVOID lpAddress, < 1130 SIZE_T dwSize, < 1131 DWORD flNewProtect, | 1084 DWORD cbInQue; 1132 PDWORD lpflOldProtect); < > 1085 DWORD cbOutQue; 1133 | 1086 } 1134 extern(Windows) export SIZE_T VirtualQuery( < 1135 LPCVOID lpAddress, < 1136 PMEMORY_BASIC_INFORMATION lpBuffer, < 1137 SIZE_T dwLength); < > 1087 alias COMSTAT* LPCOMSTAT; 1138 | 1088 1139 extern(Windows) export LPVOID VirtualAllocEx( < > 1089 struct CREATE_PROCESS_DEBUG_INFO { > 1090 HANDLE hFile; 1140 HANDLE hProcess, | 1091 HANDLE hProcess; > 1092 HANDLE hThread; > 1093 LPVOID lpBaseOfImage; > 1094 DWORD dwDebugInfoFileOffset; > 1095 DWORD nDebugInfoSize; > 1096 LPVOID lpThreadLocalBase; > 1097 LPTHREAD_START_ROUTINE lpStartAddress; 1141 LPVOID lpAddress, | 1098 LPVOID lpImageName; 1142 SIZE_T dwSize, < 1143 DWORD flAllocationType, < 1144 DWORD flProtect); < > 1099 WORD fUnicode; 1145 | 1100 } 1146 extern(Windows) export UINT GetWriteWatch( < 1147 DWORD dwFlags, < 1148 PVOID lpBaseAddress, < 1149 SIZE_T dwRegionSize, < 1150 PVOID *lpAddresses, < 1151 PULONG_PTR lpdwCount, < 1152 PULONG lpdwGranularity); < > 1101 alias CREATE_PROCESS_DEBUG_INFO* LPCREATE_PROCESS_DEBUG_INFO; 1153 | 1102 1154 extern(Windows) export UINT ResetWriteWatch( < > 1103 struct CREATE_THREAD_DEBUG_INFO { > 1104 HANDLE hThread; 1155 LPVOID lpBaseAddress, | 1105 LPVOID lpThreadLocalBase; 1156 SIZE_T dwRegionSize); < > 1106 LPTHREAD_START_ROUTINE lpStartAddress; 1157 | 1107 } 1158 extern(Windows) export BOOL VirtualFreeEx( < 1159 HANDLE hProcess, < 1160 LPVOID lpAddress, < 1161 SIZE_T dwSize, < 1162 DWORD dwFreeType); < > 1108 alias CREATE_THREAD_DEBUG_INFO* LPCREATE_THREAD_DEBUG_INFO; 1163 | 1109 1164 extern(Windows) export BOOL VirtualProtectEx( < 1165 HANDLE hProcess, < 1166 LPVOID lpAddress, < 1167 SIZE_T dwSize, < 1168 DWORD flNewProtect, < 1169 PDWORD lpflOldProtect); < > 1110 struct EXCEPTION_DEBUG_INFO { > 1111 EXCEPTION_RECORD ExceptionRecord; > 1112 DWORD dwFirstChance; 1170 | 1113 } 1171 extern(Windows) export SIZE_T VirtualQueryEx( < 1172 HANDLE hProcess, < 1173 LPCVOID lpAddress, < 1174 PMEMORY_BASIC_INFORMATION lpBuffer, < 1175 SIZE_T dwLength); < > 1114 alias EXCEPTION_DEBUG_INFO* LPEXCEPTION_DEBUG_INFO; 1176 | 1115 1177 extern(Windows) export HANDLE HeapCreate( < > 1116 struct EXIT_THREAD_DEBUG_INFO { 1178 DWORD flOptions, | 1117 DWORD dwExitCode; 1179 SIZE_T dwInitialSize, < 1180 SIZE_T dwMaximumSize); < 1181 | 1118 } 1182 extern(Windows) export BOOL HeapDestroy( < 1183 HANDLE hHeap); < > 1119 alias EXIT_THREAD_DEBUG_INFO* LPEXIT_THREAD_DEBUG_INFO; 1184 | 1120 1185 extern(Windows) export LPVOID HeapAlloc( < 1186 HANDLE hHeap, < > 1121 struct EXIT_PROCESS_DEBUG_INFO { 1187 DWORD dwFlags, | 1122 DWORD dwExitCode; 1188 SIZE_T dwBytes); < 1189 | 1123 } 1190 extern(Windows) export LPVOID HeapReAlloc( < > 1124 alias EXIT_PROCESS_DEBUG_INFO* LPEXIT_PROCESS_DEBUG_INFO; > 1125 > 1126 struct LOAD_DLL_DEBUG_INFO { 1191 HANDLE hHeap, | 1127 HANDLE hFile; 1192 DWORD dwFlags, < 1193 LPVOID lpMem, | 1128 LPVOID lpBaseOfDll; 1194 SIZE_T dwBytes); < > 1129 DWORD dwDebugInfoFileOffset; > 1130 DWORD nDebugInfoSize; > 1131 LPVOID lpImageName; > 1132 WORD fUnicode; 1195 | 1133 } 1196 extern(Windows) export BOOL HeapFree( < 1197 HANDLE hHeap, < 1198 DWORD dwFlags, < > 1134 alias LOAD_DLL_DEBUG_INFO* LPLOAD_DLL_DEBUG_INFO; > 1135 > 1136 struct UNLOAD_DLL_DEBUG_INFO { 1199 LPVOID lpMem); | 1137 LPVOID lpBaseOfDll; 1200 | 1138 } 1201 extern(Windows) export SIZE_T HeapSize( < 1202 HANDLE hHeap, < > 1139 alias UNLOAD_DLL_DEBUG_INFO* LPUNLOAD_DLL_DEBUG_INFO; > 1140 > 1141 struct OUTPUT_DEBUG_STRING_INFO { > 1142 LPSTR lpDebugStringData; 1203 DWORD dwFlags, | 1143 WORD fUnicode; 1204 LPCVOID lpMem); < > 1144 WORD nDebugStringLength; 1205 | 1145 } 1206 extern(Windows) export BOOL HeapValidate( < 1207 HANDLE hHeap, < > 1146 alias OUTPUT_DEBUG_STRING_INFO* LPOUTPUT_DEBUG_STRING_INFO; > 1147 > 1148 struct RIP_INFO { > 1149 DWORD dwError; 1208 DWORD dwFlags, | 1150 DWORD dwType; 1209 LPCVOID lpMem); < 1210 | 1151 } 1211 extern(Windows) export SIZE_T HeapCompact( < 1212 HANDLE hHeap, < > 1152 alias RIP_INFO* LPRIP_INFO; > 1153 > 1154 struct DEBUG_EVENT { > 1155 DWORD dwDebugEventCode; 1213 DWORD dwFlags); | 1156 DWORD dwProcessId; > 1157 DWORD dwThreadId; > 1158 union { > 1159 EXCEPTION_DEBUG_INFO Exception; > 1160 CREATE_THREAD_DEBUG_INFO CreateThread; > 1161 CREATE_PROCESS_DEBUG_INFO CreateProcessInfo; > 1162 EXIT_THREAD_DEBUG_INFO ExitThread; > 1163 EXIT_PROCESS_DEBUG_INFO ExitProcess; > 1164 LOAD_DLL_DEBUG_INFO LoadDll; > 1165 UNLOAD_DLL_DEBUG_INFO UnloadDll; > 1166 OUTPUT_DEBUG_STRING_INFO DebugString; > 1167 RIP_INFO RipInfo; 1214 | 1168 } 1215 extern(Windows) export HANDLE GetProcessHeap(); < 1216 | 1169 } 1217 extern(Windows) export DWORD GetProcessHeaps( < 1218 DWORD NumberOfHeaps, < 1219 PHANDLE ProcessHeaps); < > 1170 alias DEBUG_EVENT* LPDEBUG_EVENT; 1220 | 1171 1221 struct _PROCESS_HEAP_ENTRY { < 1222 PVOID lpData; < 1223 DWORD cbData; < 1224 BYTE cbOverhead; < 1225 BYTE iRegionIndex; < 1226 WORD wFlags; < > 1172 struct OVERLAPPED { > 1173 ULONG_PTR Internal; > 1174 ULONG_PTR InternalHigh; 1227 union { | 1175 union { 1228 struct { | 1176 struct { > 1177 DWORD Offset; > 1178 DWORD OffsetHigh; > 1179 } > 1180 PVOID Pointer; > 1181 } 1229 HANDLE hMem; | 1182 HANDLE hEvent; 1230 DWORD dwReserved[ 3 ]; < 1231 } | 1183 } > 1184 alias OVERLAPPED* POVERLAPPED, LPOVERLAPPED; 1232 | 1185 1233 struct { | 1186 struct STARTUPINFOA { > 1187 DWORD cb = STARTUPINFOA.sizeof; > 1188 LPSTR lpReserved; > 1189 LPSTR lpDesktop; > 1190 LPSTR lpTitle; 1234 DWORD dwCommittedSize; | 1191 DWORD dwX; 1235 DWORD dwUnCommittedSize; | 1192 DWORD dwY; 1236 LPVOID lpFirstBlock; < 1237 LPVOID lpLastBlock; < > 1193 DWORD dwXSize; > 1194 DWORD dwYSize; > 1195 DWORD dwXCountChars; > 1196 DWORD dwYCountChars; > 1197 DWORD dwFillAttribute; > 1198 DWORD dwFlags; > 1199 WORD wShowWindow; > 1200 WORD cbReserved2; > 1201 PBYTE lpReserved2; > 1202 HANDLE hStdInput; > 1203 HANDLE hStdOutput; > 1204 HANDLE hStdError; 1238 } | 1205 } > 1206 alias STARTUPINFOA* LPSTARTUPINFOA; 1239 | 1207 > 1208 struct STARTUPINFOW { > 1209 DWORD cb = STARTUPINFOW.sizeof; > 1210 LPWSTR lpReserved; > 1211 LPWSTR lpDesktop; > 1212 LPWSTR lpTitle; > 1213 DWORD dwX; > 1214 DWORD dwY; > 1215 DWORD dwXSize; > 1216 DWORD dwYSize; > 1217 DWORD dwXCountChars; > 1218 DWORD dwYCountChars; > 1219 DWORD dwFillAttribute; > 1220 DWORD dwFlags; > 1221 WORD wShowWindow; > 1222 WORD cbReserved2; > 1223 PBYTE lpReserved2; > 1224 HANDLE hStdInput; > 1225 HANDLE hStdOutput; > 1226 HANDLE hStdError; 1240 } | 1227 } > 1228 alias STARTUPINFOW* LPSTARTUPINFOW; 1241 | 1229 > 1230 struct PROCESS_INFORMATION { > 1231 HANDLE hProcess; > 1232 HANDLE hThread; > 1233 DWORD dwProcessId; > 1234 DWORD dwThreadId; 1242 } | 1235 } 1243 alias _PROCESS_HEAP_ENTRY PROCESS_HEAP_ENTRY; < 1244 alias _PROCESS_HEAP_ENTRY* LPPROCESS_HEAP_ENTRY; < 1245 alias _PROCESS_HEAP_ENTRY* PPROCESS_HEAP_ENTRY; < > 1236 alias PROCESS_INFORMATION* PPROCESS_INFORMATION, LPPROCESS_INFORMATION; 1246 | 1237 1247 enum : uint { PROCESS_HEAP_REGION = 0x0001 } < 1248 enum : uint { PROCESS_HEAP_UNCOMMITTED_RANGE = 0x0002 } < 1249 enum : uint { PROCESS_HEAP_ENTRY_BUSY = 0x0004 } < 1250 enum : uint { PROCESS_HEAP_ENTRY_MOVEABLE = 0x0010 } < 1251 enum : uint { PROCESS_HEAP_ENTRY_DDESHARE = 0x0020 } < > 1238 struct CRITICAL_SECTION_DEBUG { > 1239 WORD Type; > 1240 WORD CreatorBackTraceIndex; > 1241 CRITICAL_SECTION* CriticalSection; > 1242 LIST_ENTRY ProcessLocksList; > 1243 DWORD EntryCount; > 1244 DWORD ContentionCount; > 1245 DWORD[2] Spare; 1252 | 1246 } 1253 extern(Windows) export BOOL HeapLock( < 1254 HANDLE hHeap); < > 1247 alias CRITICAL_SECTION_DEBUG* PCRITICAL_SECTION_DEBUG; 1255 | 1248 1256 extern(Windows) export BOOL HeapUnlock( < > 1249 struct CRITICAL_SECTION { > 1250 PCRITICAL_SECTION_DEBUG DebugInfo; > 1251 LONG LockCount; > 1252 LONG RecursionCount; 1257 HANDLE hHeap); | 1253 HANDLE OwningThread; > 1254 HANDLE LockSemaphore; > 1255 DWORD SpinCount; 1258 | 1256 } 1259 extern(Windows) export BOOL HeapWalk( < 1260 HANDLE hHeap, < 1261 LPPROCESS_HEAP_ENTRY lpEntry); < > 1257 alias CRITICAL_SECTION* PCRITICAL_SECTION, LPCRITICAL_SECTION; 1262 | 1258 1263 extern(Windows) export BOOL HeapSetInformation( < 1264 PVOID HeapHandle, < 1265 HEAP_INFORMATION_CLASS HeapInformationClass, < 1266 PVOID HeapInformation , < 1267 SIZE_T HeapInformationLength ); < > 1259 struct SYSTEMTIME { > 1260 WORD wYear; > 1261 WORD wMonth; > 1262 WORD wDayOfWeek; > 1263 WORD wDay; > 1264 WORD wHour; > 1265 WORD wMinute; > 1266 WORD wSecond; > 1267 WORD wMilliseconds; 1268 | 1268 } 1269 extern(Windows) export BOOL HeapQueryInformation( < 1270 PVOID HeapHandle, < 1271 HEAP_INFORMATION_CLASS HeapInformationClass, < 1272 PVOID HeapInformation , < 1273 SIZE_T HeapInformationLength , < 1274 PSIZE_T ReturnLength ); < > 1269 alias SYSTEMTIME* LPSYSTEMTIME; 1275 | 1270 1276 enum : uint { SCS_32BIT_BINARY = 0 } < 1277 enum : uint { SCS_DOS_BINARY = 1 } < 1278 enum : uint { SCS_WOW_BINARY = 2 } < 1279 enum : uint { SCS_PIF_BINARY = 3 } < 1280 enum : uint { SCS_POSIX_BINARY = 4 } < 1281 enum : uint { SCS_OS216_BINARY = 5 } < 1282 enum : uint { SCS_64BIT_BINARY = 6 } < > 1271 static if (_WIN32_WINDOWS >= 0x410) { > 1272 struct WIN32_FILE_ATTRIBUTE_DATA { > 1273 DWORD dwFileAttributes; > 1274 FILETIME ftCreationTime; > 1275 FILETIME ftLastAccessTime; > 1276 FILETIME ftLastWriteTime; > 1277 DWORD nFileSizeHigh; > 1278 DWORD nFileSizeLow; 1283 | 1279 } 1284 // #if defined(_WIN64) < 1285 // #... < > 1280 alias WIN32_FILE_ATTRIBUTE_DATA* LPWIN32_FILE_ATTRIBUTE_DATA; > 1281 } > 1282 > 1283 struct WIN32_FIND_DATAA { > 1284 DWORD dwFileAttributes; > 1285 FILETIME ftCreationTime; > 1286 FILETIME ftLastAccessTime; > 1287 FILETIME ftLastWriteTime; > 1288 DWORD nFileSizeHigh; > 1289 DWORD nFileSizeLow; > 1290 // #ifdef _WIN32_WCE > 1291 // DWORD dwOID; 1286 // #else 1292 // #else 1287 alias SCS_32BIT_BINARY SCS_THIS_PLATFORM_BINARY; | 1293 DWORD dwReserved0; > 1294 DWORD dwReserved1; > 1295 // #endif > 1296 CHAR[MAX_PATH] cFileName; > 1297 // #ifndef _WIN32_WCE > 1298 CHAR[14] cAlternateFileName; 1288 // #endif 1299 // #endif 1289 | 1300 } 1290 extern(Windows) export BOOL GetBinaryTypeA( | 1301 alias WIN32_FIND_DATAA* PWIN32_FIND_DATAA, LPWIN32_FIND_DATAA; 1291 LPCSTR lpApplicationName, < 1292 LPDWORD lpBinaryType); < 1293 extern(Windows) export BOOL GetBinaryTypeW( < 1294 LPCWSTR lpApplicationName, < 1295 LPDWORD lpBinaryType); < 1296 // #ifdef UNICODE < 1297 alias GetBinaryTypeW GetBinaryType; < 1298 // #else < 1299 // #... < 1300 // #endif // !UNICODE < 1301 | 1302 1302 extern(Windows) export DWORD GetShortPathNameA( < 1303 LPCSTR lpszLongPath, < 1304 LPSTR lpszShortPath, < 1305 DWORD cchBuffer); < 1306 extern(Windows) export DWORD GetShortPathNameW( < 1307 LPCWSTR lpszLongPath, < 1308 LPWSTR lpszShortPath, < 1309 DWORD cchBuffer); < > 1303 struct WIN32_FIND_DATAW { > 1304 DWORD dwFileAttributes; > 1305 FILETIME ftCreationTime; > 1306 FILETIME ftLastAccessTime; > 1307 FILETIME ftLastWriteTime; > 1308 DWORD nFileSizeHigh; > 1309 DWORD nFileSizeLow; 1310 // #ifdef UNICODE | 1310 // #ifdef _WIN32_WCE 1311 alias GetShortPathNameW GetShortPathName; < 1312 // #else < 1313 // #... < 1314 // #endif // !UNICODE < 1315 < 1316 extern(Windows) export DWORD GetLongPathNameA( < 1317 LPCSTR lpszShortPath, < 1318 LPSTR lpszLongPath, < 1319 DWORD cchBuffer); < 1320 extern(Windows) export DWORD GetLongPathNameW( < 1321 LPCWSTR lpszShortPath, < 1322 LPWSTR lpszLongPath, < 1323 DWORD cchBuffer); < 1324 // #ifdef UNICODE < 1325 alias GetLongPathNameW GetLongPathName; < 1326 // #else < 1327 // #... < 1328 // #endif // !UNICODE < 1329 < 1330 extern(Windows) export BOOL GetProcessAffinityMask( < 1331 HANDLE hProcess, < 1332 PDWORD_PTR lpProcessAffinityMask, < 1333 PDWORD_PTR lpSystemAffinityMask); < 1334 < 1335 extern(Windows) export BOOL SetProcessAffinityMask( < 1336 HANDLE hProcess, < 1337 DWORD_PTR dwProcessAffinityMask); < 1338 < 1339 extern(Windows) export BOOL GetProcessTimes( < 1340 HANDLE hProcess, < 1341 LPFILETIME lpCreationTime, < 1342 LPFILETIME lpExitTime, < 1343 LPFILETIME lpKernelTime, < 1344 LPFILETIME lpUserTime); < 1345 < 1346 extern(Windows) export BOOL GetProcessIoCounters( < 1347 HANDLE hProcess, < 1348 PIO_COUNTERS lpIoCounters); < 1349 < 1350 extern(Windows) export BOOL GetProcessWorkingSetSize( < 1351 HANDLE hProcess, < 1352 PSIZE_T lpMinimumWorkingSetSize, < 1353 PSIZE_T lpMaximumWorkingSetSize); < 1354 < 1355 extern(Windows) export BOOL SetProcessWorkingSetSize( < 1356 HANDLE hProcess, < 1357 SIZE_T dwMinimumWorkingSetSize, < 1358 SIZE_T dwMaximumWorkingSetSize); < 1359 < 1360 extern(Windows) export HANDLE OpenProcess( < 1361 DWORD dwDesiredAccess, < 1362 BOOL bInheritHandle, < 1363 DWORD dwProcessId); | 1311 // DWORD dwOID; 1364 < 1365 extern(Windows) export HANDLE GetCurrentProcess(); < 1366 < 1367 extern(Windows) export DWORD GetCurrentProcessId(); < 1368 < 1369 extern(Windows) export VOID ExitProcess( < 1370 UINT uExitCode); < 1371 < 1372 extern(Windows) export BOOL TerminateProcess( < 1373 HANDLE hProcess, < 1374 UINT uExitCode); < 1375 < 1376 extern(Windows) export BOOL GetExitCodeProcess( < 1377 HANDLE hProcess, < 1378 LPDWORD lpExitCode); < 1379 < 1380 extern(Windows) export VOID FatalExit( < 1381 int ExitCode); < 1382 < 1383 extern(Windows) export LPSTR GetEnvironmentStrings(); < 1384 < 1385 extern(Windows) export LPWSTR GetEnvironmentStringsW(); < 1386 < 1387 // #ifdef UNICODE < 1388 alias GetEnvironmentStringsW GetEnvironmentStrings; < 1389 // #else 1312 // #else 1390 // #... | 1313 DWORD dwReserved0; > 1314 DWORD dwReserved1; 1391 // #endif // !UNICODE | 1315 // #endif 1392 < 1393 extern(Windows) export BOOL FreeEnvironmentStringsA( | 1316 WCHAR[MAX_PATH] cFileName; 1394 LPSTR); < > 1317 // #ifndef _WIN32_WCE 1395 extern(Windows) export BOOL FreeEnvironmentStringsW( | 1318 WCHAR[14] cAlternateFileName; 1396 LPWSTR); < 1397 // #ifdef UNICODE < 1398 alias FreeEnvironmentStringsW FreeEnvironmentStrings; < 1399 // #else < 1400 // #... < 1401 // #endif // !UNICODE < 1402 < 1403 extern(Windows) export VOID RaiseException( < 1404 DWORD dwExceptionCode, < 1405 DWORD dwExceptionFlags, < 1406 DWORD nNumberOfArguments, < 1407 ULONG_PTR *lpArguments); < 1408 < 1409 extern(Windows) export LONG UnhandledExceptionFilter( < 1410 _EXCEPTION_POINTERS *ExceptionInfo); < 1411 < 1412 extern(Windows) alias LONG function( _EXCEPTION_POINTERS *ExceptionInfo ) PTOP_ < 1413 alias PTOP_LEVEL_EXCEPTION_FILTER LPTOP_LEVEL_EXCEPTION_FILTER; < 1414 < 1415 extern(Windows) export LPTOP_LEVEL_EXCEPTION_FILTER SetUnhandledExceptionFilter( < 1416 LPTOP_LEVEL_EXCEPTION_FILTER lpTopLevelExceptionFilter); < 1417 < 1418 // #if(_WIN32_WINNT >= 0x0400) < 1419 < 1420 extern(Windows) export LPVOID CreateFiber( < 1421 SIZE_T dwStackSize, < 1422 LPFIBER_START_ROUTINE lpStartAddress, < 1423 LPVOID lpParameter); < 1424 < 1425 extern(Windows) export LPVOID CreateFiberEx( < 1426 SIZE_T dwStackCommitSize, < 1427 SIZE_T dwStackReserveSize, < 1428 DWORD dwFlags, < 1429 LPFIBER_START_ROUTINE lpStartAddress, < 1430 LPVOID lpParameter); < 1431 < 1432 extern(Windows) export VOID DeleteFiber( < 1433 LPVOID lpFiber); < 1434 < 1435 extern(Windows) export LPVOID ConvertThreadToFiber( < 1436 LPVOID lpParameter); < 1437 < 1438 extern(Windows) export BOOL ConvertFiberToThread(); < 1439 < 1440 extern(Windows) export VOID SwitchToFiber( < 1441 LPVOID lpFiber); < 1442 < 1443 extern(Windows) export BOOL SwitchToThread(); < 1444 // #endif /* _WIN32_WINNT >= 0x0400 */ < 1445 < 1446 extern(Windows) export HANDLE CreateThread( < 1447 LPSECURITY_ATTRIBUTES lpThreadAttributes, < 1448 SIZE_T dwStackSize, < 1449 LPTHREAD_START_ROUTINE lpStartAddress, < 1450 LPVOID lpParameter, < 1451 DWORD dwCreationFlags, < 1452 LPDWORD lpThreadId); < 1453 < 1454 extern(Windows) export HANDLE CreateRemoteThread( < 1455 HANDLE hProcess, < 1456 LPSECURITY_ATTRIBUTES lpThreadAttributes, < 1457 SIZE_T dwStackSize, < 1458 LPTHREAD_START_ROUTINE lpStartAddress, < 1459 LPVOID lpParameter, < 1460 DWORD dwCreationFlags, < 1461 LPDWORD lpThreadId); < 1462 < 1463 extern(Windows) export HANDLE GetCurrentThread(); < 1464 < 1465 extern(Windows) export DWORD GetCurrentThreadId(); < 1466 < 1467 extern(Windows) export DWORD_PTR SetThreadAffinityMask( < 1468 HANDLE hThread, < 1469 DWORD_PTR dwThreadAffinityMask); < 1470 < 1471 // #if(_WIN32_WINNT >= 0x0400) < 1472 extern(Windows) export DWORD SetThreadIdealProcessor( < 1473 HANDLE hThread, < 1474 DWORD dwIdealProcessor); < 1475 // #endif /* _WIN32_WINNT >= 0x0400 */ < 1476 < 1477 extern(Windows) export BOOL SetProcessPriorityBoost( < 1478 HANDLE hProcess, < 1479 BOOL bDisablePriorityBoost); < 1480 < 1481 extern(Windows) export BOOL GetProcessPriorityBoost( < 1482 HANDLE hProcess, < 1483 PBOOL pDisablePriorityBoost); < 1484 < 1485 extern(Windows) export BOOL RequestWakeupLatency( < 1486 LATENCY_TIME latency); < 1487 < 1488 extern(Windows) export BOOL IsSystemResumeAutomatic(); < 1489 < 1490 extern(Windows) export HANDLE OpenThread( < 1491 DWORD dwDesiredAccess, < 1492 BOOL bInheritHandle, < 1493 DWORD dwThreadId); < 1494 < 1495 extern(Windows) export BOOL SetThreadPriority( < 1496 HANDLE hThread, < 1497 int nPriority); < 1498 < 1499 extern(Windows) export BOOL SetThreadPriorityBoost( < 1500 HANDLE hThread, < 1501 BOOL bDisablePriorityBoost); < 1502 < 1503 extern(Windows) export BOOL GetThreadPriorityBoost( < 1504 HANDLE hThread, < 1505 PBOOL pDisablePriorityBoost); < 1506 < 1507 extern(Windows) export int GetThreadPriority( < 1508 HANDLE hThread); < 1509 < 1510 extern(Windows) export BOOL GetThreadTimes( < 1511 HANDLE hThread, < 1512 LPFILETIME lpCreationTime, < 1513 LPFILETIME lpExitTime, < 1514 LPFILETIME lpKernelTime, < 1515 LPFILETIME lpUserTime); < 1516 < 1517 extern(Windows) export VOID ExitThread( < 1518 DWORD dwExitCode); < 1519 < 1520 extern(Windows) export BOOL TerminateThread( < 1521 HANDLE hThread, < 1522 DWORD dwExitCode); < 1523 < 1524 extern(Windows) export BOOL GetExitCodeThread( < 1525 HANDLE hThread, < 1526 LPDWORD lpExitCode); < 1527 < 1528 extern(Windows) export BOOL GetThreadSelectorEntry( < 1529 HANDLE hThread, < 1530 DWORD dwSelector, < 1531 LPLDT_ENTRY lpSelectorEntry); < 1532 < 1533 extern(Windows) export EXECUTION_STATE SetThreadExecutionState( < 1534 EXECUTION_STATE esFlags); < 1535 < 1536 extern(Windows) export DWORD GetLastError(); < 1537 < 1538 extern(Windows) export VOID SetLastError( < 1539 DWORD dwErrCode); < 1540 < 1541 // #if !defined(RC_INVOKED) // RC warns because "WINBASE_DECLARE_RESTORE_LAST_ER < 1542 < 1543 // #if defined(WINBASE_DECLARE_RESTORE_LAST_ERROR) < 1544 < 1545 // ... < 1546 < 1547 // ... < 1548 // #... < 1549 // #... < 1550 // #... < 1551 < 1552 // #endif 1319 // #endif 1553 // #endif < 1554 | 1320 } 1555 bit HasOverlappedIoCompleted(LPOVERLAPPED lpOverlapped){ return (*lpOverlapped). < > 1321 alias WIN32_FIND_DATAW* PWIN32_FIND_DATAW, LPWIN32_FIND_DATAW; 1556 | 1322 > 1323 static if (_WIN32_WINNT_ONLY) { 1557 extern(Windows) export BOOL GetOverlappedResult( | 1324 struct WIN32_STREAM_ID { 1558 HANDLE hFile, | 1325 DWORD dwStreamId; 1559 LPOVERLAPPED lpOverlapped, | 1326 DWORD dwStreamAttributes; 1560 LPDWORD lpNumberOfBytesTransferred, | 1327 LARGE_INTEGER Size; 1561 BOOL bWait); | 1328 DWORD dwStreamNameSize; > 1329 WCHAR _cStreamName; 1562 | 1330 1563 extern(Windows) export HANDLE CreateIoCompletionPort( < 1564 HANDLE FileHandle, | 1331 WCHAR* cStreamName() { return &_cStreamName; } 1565 HANDLE ExistingCompletionPort, < > 1332 } 1566 ULONG_PTR CompletionKey, | 1333 alias WIN32_STREAM_ID* LPWIN32_STREAM_ID; 1567 DWORD NumberOfConcurrentThreads); < 1568 | 1334 > 1335 enum FINDEX_INFO_LEVELS { 1569 extern(Windows) export BOOL GetQueuedCompletionStatus( | 1336 FindExInfoStandard, 1570 HANDLE CompletionPort, | 1337 FindExInfoMaxInfoLevel 1571 LPDWORD lpNumberOfBytesTransferred, < 1572 PULONG_PTR lpCompletionKey, < > 1338 } > 1339 1573 LPOVERLAPPED *lpOverlapped, | 1340 enum FINDEX_SEARCH_OPS { 1574 DWORD dwMilliseconds); | 1341 FindExSearchNameMatch, > 1342 FindExSearchLimitToDirectories, > 1343 FindExSearchLimitToDevices, > 1344 FindExSearchMaxSearchOp 1575 | 1345 } 1576 extern(Windows) export BOOL PostQueuedCompletionStatus( < 1577 HANDLE CompletionPort, < 1578 DWORD dwNumberOfBytesTransferred, < 1579 ULONG_PTR dwCompletionKey, < > 1346 1580 LPOVERLAPPED lpOverlapped); | 1347 enum ACL_INFORMATION_CLASS { > 1348 AclRevisionInformation = 1, > 1349 AclSizeInformation 1581 | 1350 } 1582 enum : uint { SEM_FAILCRITICALERRORS = 0x0001 } < 1583 enum : uint { SEM_NOGPFAULTERRORBOX = 0x0002 } < 1584 enum : uint { SEM_NOALIGNMENTFAULTEXCEPT = 0x0004 } < 1585 enum : uint { SEM_NOOPENFILEERRORBOX = 0x8000 } < 1586 | 1351 > 1352 struct HW_PROFILE_INFOA { > 1353 DWORD dwDockInfo; 1587 extern(Windows) export UINT SetErrorMode( | 1354 CHAR[HW_PROFILE_GUIDLEN] szHwProfileGuid; 1588 UINT uMode); | 1355 CHAR[MAX_PROFILE_LEN] szHwProfileName; 1589 | 1356 } 1590 extern(Windows) export BOOL ReadProcessMemory( | 1357 alias HW_PROFILE_INFOA* LPHW_PROFILE_INFOA; 1591 HANDLE hProcess, < 1592 LPCVOID lpBaseAddress, < 1593 LPVOID lpBuffer, < 1594 SIZE_T nSize, < 1595 SIZE_T * lpNumberOfBytesRead); < 1596 | 1358 1597 extern(Windows) export BOOL WriteProcessMemory( < 1598 HANDLE hProcess, < 1599 LPVOID lpBaseAddress, < 1600 LPCVOID lpBuffer, < 1601 SIZE_T nSize, < 1602 SIZE_T * lpNumberOfBytesWritten); < > 1359 struct HW_PROFILE_INFOW { > 1360 DWORD dwDockInfo; > 1361 WCHAR[HW_PROFILE_GUIDLEN] szHwProfileGuid; > 1362 WCHAR[MAX_PROFILE_LEN] szHwProfileName; 1603 | 1363 } 1604 // #if !defined(MIDL_PASS) < 1605 extern(Windows) export BOOL GetThreadContext( < 1606 HANDLE hThread, < 1607 LPCONTEXT lpContext); < > 1364 alias HW_PROFILE_INFOW* LPHW_PROFILE_INFOW; 1608 | 1365 } 1609 extern(Windows) export BOOL SetThreadContext( < 1610 HANDLE hThread, < 1611 CONTEXT *lpContext); < 1612 // #endif < 1613 | 1366 1614 extern(Windows) export DWORD SuspendThread( < 1615 HANDLE hThread); < > 1367 /* ??? MSDN documents this only for Windows CE/Mobile, but it's used by > 1368 * GetFileAttributesEx, which is in desktop Windows. > 1369 */ > 1370 enum GET_FILEEX_INFO_LEVELS { > 1371 GetFileExInfoStandard, > 1372 GetFileExMaxInfoLevel 1616 | 1373 } 1617 extern(Windows) export DWORD ResumeThread( < 1618 HANDLE hThread); < 1619 | 1374 1620 // #if(_WIN32_WINNT >= 0x0400) || (_WIN32_WINDOWS > 0x0400) < > 1375 struct SYSTEM_INFO { > 1376 union { > 1377 DWORD dwOemId; > 1378 struct { > 1379 WORD wProcessorArchitecture; > 1380 WORD wReserved; 1621 | 1381 } 1622 // ... < 1623 | 1382 } > 1383 DWORD dwPageSize; > 1384 PVOID lpMinimumApplicationAddress; > 1385 PVOID lpMaximumApplicationAddress; > 1386 DWORD dwActiveProcessorMask; > 1387 DWORD dwNumberOfProcessors; > 1388 DWORD dwProcessorType; > 1389 DWORD dwAllocationGranularity; > 1390 WORD wProcessorLevel; 1624 // ... | 1391 WORD wProcessorRevision; 1625 | 1392 } 1626 // #endif /* _WIN32_WINNT >= 0x0400 || _WIN32_WINDOWS > 0x0400 */ | 1393 alias SYSTEM_INFO* LPSYSTEM_INFO; 1627 | 1394 1628 // #if (_WIN32_WINNT >= 0x0400) || (_WIN32_WINDOWS > 0x0400) | 1395 static if (_WIN32_WINNT_ONLY && _WIN32_WINNT >= 0x500) { 1629 extern(Windows) export BOOL IsDebuggerPresent(); | 1396 struct SYSTEM_POWER_STATUS { 1630 // #endif | 1397 BYTE ACLineStatus; > 1398 BYTE BatteryFlag; > 1399 BYTE BatteryLifePercent; > 1400 BYTE Reserved1; > 1401 DWORD BatteryLifeTime; > 1402 DWORD BatteryFullLifeTime; 1631 | 1403 } 1632 extern(Windows) export VOID DebugBreak(); < > 1404 alias SYSTEM_POWER_STATUS* LPSYSTEM_POWER_STATUS; 1633 | 1405 } 1634 extern(Windows) export BOOL WaitForDebugEvent( < 1635 LPDEBUG_EVENT lpDebugEvent, < 1636 DWORD dwMilliseconds); < 1637 | 1406 1638 extern(Windows) export BOOL ContinueDebugEvent( < > 1407 struct TIME_ZONE_INFORMATION { > 1408 LONG Bias; > 1409 WCHAR[32] StandardName; > 1410 SYSTEMTIME StandardDate; > 1411 LONG StandardBias; > 1412 WCHAR[32] DaylightName; > 1413 SYSTEMTIME DaylightDate; > 1414 LONG DaylightBias; > 1415 } > 1416 alias TIME_ZONE_INFORMATION* LPTIME_ZONE_INFORMATION; > 1417 > 1418 // MSDN documents this, possibly erroneously, as Win2000+. > 1419 struct MEMORYSTATUS { 1639 DWORD dwProcessId, | 1420 DWORD dwLength; > 1421 DWORD dwMemoryLoad; 1640 DWORD dwThreadId, | 1422 DWORD dwTotalPhys; 1641 DWORD dwContinueStatus); | 1423 DWORD dwAvailPhys; > 1424 DWORD dwTotalPageFile; > 1425 DWORD dwAvailPageFile; > 1426 DWORD dwTotalVirtual; > 1427 DWORD dwAvailVirtual; 1642 | 1428 } 1643 extern(Windows) export BOOL DebugActiveProcess( < 1644 DWORD dwProcessId); < > 1429 alias MEMORYSTATUS* LPMEMORYSTATUS; 1645 | 1430 1646 extern(Windows) export BOOL DebugActiveProcessStop( < 1647 DWORD dwProcessId); < > 1431 static if (_WIN32_WINNT >= 0x500) { > 1432 struct MEMORYSTATUSEX { > 1433 DWORD dwLength; > 1434 DWORD dwMemoryLoad; > 1435 DWORDLONG ullTotalPhys; > 1436 DWORDLONG ullAvailPhys; > 1437 DWORDLONG ullTotalPageFile; > 1438 DWORDLONG ullAvailPageFile; > 1439 DWORDLONG ullTotalVirtual; > 1440 DWORDLONG ullAvailVirtual; > 1441 DWORDLONG ullAvailExtendedVirtual; 1648 | 1442 } 1649 extern(Windows) export BOOL DebugSetProcessKillOnExit( < 1650 BOOL KillOnExit); < > 1443 alias MEMORYSTATUSEX* LPMEMORYSTATUSEX; 1651 | 1444 } 1652 extern(Windows) export BOOL DebugBreakProcess( < 1653 HANDLE Process); < 1654 | 1445 1655 extern(Windows) export VOID InitializeCriticalSection( < 1656 LPCRITICAL_SECTION lpCriticalSection); < > 1446 struct LDT_ENTRY { > 1447 WORD LimitLow; > 1448 WORD BaseLow; > 1449 struct { > 1450 BYTE BaseMid; > 1451 BYTE Flags1; > 1452 BYTE Flags2; > 1453 BYTE BaseHi; 1657 | 1454 1658 extern(Windows) export VOID EnterCriticalSection( < 1659 LPCRITICAL_SECTION lpCriticalSection); < > 1455 byte Type(byte f) { Flags1 = cast(BYTE) ((Flags1 & 0xE0) > 1456 byte Dpl(byte f) { Flags1 = cast(BYTE) ((Flags1 & 0x9F) > 1457 bool Pres(bool f) { Flags1 = cast(BYTE) ((Flags1 & 0x7F) 1660 | 1458 1661 extern(Windows) export VOID LeaveCriticalSection( < 1662 LPCRITICAL_SECTION lpCriticalSection); < > 1459 byte LimitHi(byte f) { Flags2 = cast(BYTE) ((Flags2 & 0xF0) > 1460 bool Sys(bool f) { Flags2 = cast(BYTE) ((Flags2 & 0xEF) > 1461 // Next bit is reserved > 1462 bool Default_Big(bool f) { Flags2 = cast(BYTE) ((Flags2 & 0xBF) > 1463 bool Granularity(bool f) { Flags2 = cast(BYTE) ((Flags2 & 0x7F) 1663 | 1464 1664 // #if (_WIN32_WINNT >= 0x0403) < 1665 extern(Windows) export BOOL InitializeCriticalSectionAndSpinCount( < 1666 LPCRITICAL_SECTION lpCriticalSection, < 1667 DWORD dwSpinCount); < > 1465 byte Type() { return cast(byte) (Flags1 & 0x1F); } > 1466 byte Dpl() { return cast(byte) ((Flags1 & 0x60)>>5); } > 1467 bool Pres() { return cast(bool) (Flags1 & 0x80); } 1668 | 1468 1669 extern(Windows) export DWORD SetCriticalSectionSpinCount( < 1670 LPCRITICAL_SECTION lpCriticalSection, < > 1469 byte LimitHi() { return cast(byte) (Flags2 & 0x0F); } > 1470 bool Sys() { return cast(bool) (Flags2 & 0x10); } > 1471 bool Default_Big() { return cast(bool) (Flags2 & 0x40); } > 1472 bool Granularity() { return cast(bool) (Flags2 & 0x80); } > 1473 } > 1474 /+ > 1475 union HighWord { > 1476 struct Bytes { > 1477 BYTE BaseMid; > 1478 BYTE Flags1; > 1479 BYTE Flags2; > 1480 BYTE BaseHi; > 1481 } > 1482 struct Bits { > 1483 DWORD BaseMid:8; > 1484 DWORD Type:5; 1671 DWORD dwSpinCount); | 1485 DWORD Dpl:2; 1672 // #endif < > 1486 DWORD Pres:1; > 1487 DWORD LimitHi:4; > 1488 DWORD Sys:1; > 1489 DWORD Reserved_0:1; > 1490 DWORD Default_Big:1; > 1491 DWORD Granularity:1; > 1492 DWORD BaseHi:8; 1673 | 1493 } 1674 // #if(_WIN32_WINNT >= 0x0400) < 1675 extern(Windows) export BOOL TryEnterCriticalSection( < 1676 LPCRITICAL_SECTION lpCriticalSection); < 1677 // #endif /* _WIN32_WINNT >= 0x0400 */ < 1678 | 1494 } 1679 extern(Windows) export VOID DeleteCriticalSection( < 1680 LPCRITICAL_SECTION lpCriticalSection); < > 1495 +/ 1681 | 1496 } 1682 extern(Windows) export BOOL SetEvent( < 1683 HANDLE hEvent); < > 1497 alias LDT_ENTRY* PLDT_ENTRY, LPLDT_ENTRY; 1684 | 1498 1685 extern(Windows) export BOOL ResetEvent( < > 1499 /* As with the other memory management functions and structures, MSDN's > 1500 * Windows version info shall be taken with a cup of salt. > 1501 */ > 1502 struct PROCESS_HEAP_ENTRY { > 1503 PVOID lpData; > 1504 DWORD cbData; > 1505 BYTE cbOverhead; > 1506 BYTE iRegionIndex; > 1507 WORD wFlags; > 1508 union { > 1509 struct Block { 1686 HANDLE hEvent); | 1510 HANDLE hMem; > 1511 DWORD[3] dwReserved; 1687 | 1512 } 1688 extern(Windows) export BOOL PulseEvent( < 1689 HANDLE hEvent); < > 1513 struct Region { > 1514 DWORD dwCommittedSize; > 1515 DWORD dwUnCommittedSize; > 1516 LPVOID lpFirstBlock; > 1517 LPVOID lpLastBlock; 1690 | 1518 } 1691 extern(Windows) export BOOL ReleaseSemaphore( < 1692 HANDLE hSemaphore, < 1693 LONG lReleaseCount, < 1694 LPLONG lpPreviousCount); < 1695 | 1519 } 1696 extern(Windows) export BOOL ReleaseMutex( < 1697 HANDLE hMutex); < 1698 | 1520 } 1699 extern(Windows) export DWORD WaitForSingleObject( < 1700 HANDLE hHandle, < 1701 DWORD dwMilliseconds); < > 1521 alias PROCESS_HEAP_ENTRY* LPPROCESS_HEAP_ENTRY; 1702 | 1522 1703 extern(Windows) export DWORD WaitForMultipleObjects( < 1704 DWORD nCount, < 1705 HANDLE *lpHandles, < 1706 BOOL bWaitAll, < 1707 DWORD dwMilliseconds); < > 1523 struct OFSTRUCT { > 1524 BYTE cBytes = OFSTRUCT.sizeof; > 1525 BYTE fFixedDisk; > 1526 WORD nErrCode; > 1527 WORD Reserved1; > 1528 WORD Reserved2; > 1529 CHAR[128] szPathName; // const OFS_MAXPATHNAME = 128; 1708 | 1530 } 1709 extern(Windows) export VOID Sleep( < > 1531 alias OFSTRUCT* LPOFSTRUCT, POFSTRUCT; > 1532 > 1533 /* ??? MSDN documents this only for Windows CE, but it's used by > 1534 * ImageGetCertificateData, which is in desktop Windows. > 1535 */ > 1536 struct WIN_CERTIFICATE { 1710 DWORD dwMilliseconds); | 1537 DWORD dwLength; > 1538 WORD wRevision; > 1539 WORD wCertificateType; > 1540 BYTE _bCertificate; 1711 | 1541 1712 extern(Windows) export HGLOBAL LoadResource( < > 1542 BYTE* bCertificate() { return &_bCertificate; } > 1543 } > 1544 alias WIN_CERTIFICATE* LPWIN_CERTIFICATE; > 1545 > 1546 static if (_WIN32_WINNT >= 0x500) { > 1547 enum COMPUTER_NAME_FORMAT { > 1548 ComputerNameNetBIOS, > 1549 ComputerNameDnsHostname, > 1550 ComputerNameDnsDomain, > 1551 ComputerNameDnsFullyQualified, > 1552 ComputerNamePhysicalNetBIOS, > 1553 ComputerNamePhysicalDnsHostname, > 1554 ComputerNamePhysicalDnsDomain, > 1555 ComputerNamePhysicalDnsFullyQualified, > 1556 ComputerNameMax > 1557 } > 1558 } > 1559 > 1560 static if (_WIN32_WINNT >= 0x501) { > 1561 struct ACTCTXA { > 1562 ULONG cbSize = this.sizeof; > 1563 DWORD dwFlags; > 1564 LPCSTR lpSource; > 1565 USHORT wProcessorArchitecture; > 1566 LANGID wLangId; > 1567 LPCSTR lpAssemblyDirectory; > 1568 LPCSTR lpResourceName; > 1569 LPCSTR lpApplicationName; 1713 HMODULE hModule, | 1570 HMODULE hModule; 1714 HRSRC hResInfo); < 1715 | 1571 } 1716 extern(Windows) export DWORD SizeofResource( < > 1572 alias ACTCTXA* PACTCTXA; > 1573 alias CPtr!(ACTCTXA) PCACTCTXA; > 1574 > 1575 struct ACTCTXW { > 1576 ULONG cbSize = this.sizeof; > 1577 DWORD dwFlags; > 1578 LPCWSTR lpSource; > 1579 USHORT wProcessorArchitecture; > 1580 LANGID wLangId; > 1581 LPCWSTR lpAssemblyDirectory; > 1582 LPCWSTR lpResourceName; > 1583 LPCWSTR lpApplicationName; 1717 HMODULE hModule, | 1584 HMODULE hModule; 1718 HRSRC hResInfo); < 1719 | 1585 } 1720 extern(Windows) export ATOM GlobalDeleteAtom( < 1721 ATOM nAtom); < > 1586 alias ACTCTXW* PACTCTXW; > 1587 alias CPtr!(ACTCTXW) PCACTCTXW; 1722 | 1588 1723 extern(Windows) export BOOL InitAtomTable( < 1724 DWORD nSize); < > 1589 struct ACTCTX_SECTION_KEYED_DATA { > 1590 ULONG cbSize = this.sizeof; > 1591 ULONG ulDataFormatVersion; > 1592 PVOID lpData; > 1593 ULONG ulLength; > 1594 PVOID lpSectionGlobalData; > 1595 ULONG ulSectionGlobalDataLength; > 1596 PVOID lpSectionBase; > 1597 ULONG ulSectionTotalLength; > 1598 HANDLE hActCtx; > 1599 HANDLE ulAssemblyRosterIndex; 1725 | 1600 } 1726 extern(Windows) export ATOM DeleteAtom( < 1727 ATOM nAtom); < > 1601 alias ACTCTX_SECTION_KEYED_DATA* PACTCTX_SECTION_KEYED_DATA; > 1602 alias CPtr!(ACTCTX_SECTION_KEYED_DATA) PCACTCTX_SECTION_KEYED_DATA; 1728 | 1603 1729 extern(Windows) export UINT SetHandleCount( < 1730 UINT uNumber); < > 1604 enum MEMORY_RESOURCE_NOTIFICATION_TYPE { > 1605 LowMemoryResourceNotification, > 1606 HighMemoryResourceNotification 1731 | 1607 } 1732 extern(Windows) export DWORD GetLogicalDrives(); < 1733 | 1608 > 1609 } // (_WIN32_WINNT >= 0x0501) > 1610 > 1611 static if (WINVER >= 0x410) { > 1612 /* apparently used only by SetThreadExecutionState (Win2000+) > 1613 * and DDK functions (version compatibility not established) > 1614 */ > 1615 alias DWORD EXECUTION_STATE; > 1616 } > 1617 > 1618 // Callbacks 1734 extern(Windows) export BOOL LockFile( | 1619 extern (Windows) { 1735 HANDLE hFile, < 1736 DWORD dwFileOffsetLow, < 1737 DWORD dwFileOffsetHigh, < 1738 DWORD nNumberOfBytesToLockLow, < 1739 DWORD nNumberOfBytesToLockHigh); < > 1620 alias DWORD function(LPVOID) LPTHREAD_START_ROUTINE; > 1621 alias DWORD function(LARGE_INTEGER, LARGE_INTEGER, LARGE_INTEGER, LARGE_ > 1622 DWORD, DWORD, HANDLE, HANDLE, LPVOID) LPPROGRESS_ROUTINE; > 1623 alias void function(PVOID) LPFIBER_START_ROUTINE; 1740 | 1624 1741 extern(Windows) export BOOL UnlockFile( < 1742 HANDLE hFile, < 1743 DWORD dwFileOffsetLow, < 1744 DWORD dwFileOffsetHigh, < 1745 DWORD nNumberOfBytesToUnlockLow, < 1746 DWORD nNumberOfBytesToUnlockHigh); < > 1625 alias BOOL function(HMODULE, LPCSTR, LPCSTR, WORD, LONG) ENUMRESLANGPROC > 1626 alias BOOL function(HMODULE, LPCWSTR, LPCWSTR, WORD, LONG) ENUMRESLANGPR > 1627 alias BOOL function(HMODULE, LPCSTR, LPSTR, LONG) ENUMRESNAMEPROCA; > 1628 alias BOOL function(HMODULE, LPCWSTR, LPWSTR, LONG) ENUMRESNAMEPROCW; > 1629 alias BOOL function(HMODULE, LPSTR, LONG) ENUMRESTYPEPROCA; > 1630 alias BOOL function(HMODULE, LPWSTR, LONG) ENUMRESTYPEPROCW; > 1631 alias void function(DWORD, DWORD, LPOVERLAPPED) LPOVERLAPPED_COMPLETION_ > 1632 alias LONG function(LPEXCEPTION_POINTERS) PTOP_LEVEL_EXCEPTION_FILTER; > 1633 alias PTOP_LEVEL_EXCEPTION_FILTER LPTOP_LEVEL_EXCEPTION_FILTER; 1747 | 1634 1748 extern(Windows) export BOOL LockFileEx( < 1749 HANDLE hFile, < 1750 DWORD dwFlags, < 1751 DWORD dwReserved, < 1752 DWORD nNumberOfBytesToLockLow, < 1753 DWORD nNumberOfBytesToLockHigh, < 1754 LPOVERLAPPED lpOverlapped); < > 1635 alias void function(ULONG_PTR) PAPCFUNC; > 1636 alias void function(PVOID, DWORD, DWORD) PTIMERAPCROUTINE; 1755 | 1637 1756 enum : uint { LOCKFILE_FAIL_IMMEDIATELY = 0x00000001 } < 1757 enum : uint { LOCKFILE_EXCLUSIVE_LOCK = 0x00000002 } < > 1638 static if (_WIN32_WINNT_ONLY && _WIN32_WINNT >= 0x500) { > 1639 alias void function(PVOID, BOOLEAN) WAITORTIMERCALLBACK; 1758 | 1640 } 1759 extern(Windows) export BOOL UnlockFileEx( < 1760 HANDLE hFile, < 1761 DWORD dwReserved, < 1762 DWORD nNumberOfBytesToUnlockLow, < 1763 DWORD nNumberOfBytesToUnlockHigh, < 1764 LPOVERLAPPED lpOverlapped); < 1765 | 1641 } 1766 struct _BY_HANDLE_FILE_INFORMATION { < 1767 DWORD dwFileAttributes; < 1768 FILETIME ftCreationTime; < 1769 FILETIME ftLastAccessTime; < 1770 FILETIME ftLastWriteTime; < 1771 DWORD dwVolumeSerialNumber; < 1772 DWORD nFileSizeHigh; < 1773 DWORD nFileSizeLow; < 1774 DWORD nNumberOfLinks; < 1775 DWORD nFileIndexHigh; < 1776 DWORD nFileIndexLow; < > 1642 > 1643 LPTSTR MAKEINTATOM(short i) { > 1644 return cast(LPTSTR) i; 1777 } 1645 } 1778 alias _BY_HANDLE_FILE_INFORMATION BY_HANDLE_FILE_INFORMATION; < 1779 alias _BY_HANDLE_FILE_INFORMATION* PBY_HANDLE_FILE_INFORMATION; < 1780 alias _BY_HANDLE_FILE_INFORMATION* LPBY_HANDLE_FILE_INFORMATION; < 1781 | 1646 > 1647 extern (Windows) { > 1648 ATOM AddAtomA(LPCSTR); > 1649 ATOM AddAtomW(LPCWSTR); 1782 extern(Windows) export BOOL GetFileInformationByHandle( | 1650 BOOL AreFileApisANSI(); 1783 HANDLE hFile, | 1651 BOOL Beep(DWORD, DWORD); 1784 LPBY_HANDLE_FILE_INFORMATION lpFileInformation); | 1652 HANDLE BeginUpdateResourceA(LPCSTR, BOOL); 1785 < > 1653 HANDLE BeginUpdateResourceW(LPCWSTR, BOOL); 1786 extern(Windows) export DWORD GetFileType( | 1654 BOOL BuildCommDCBA(LPCSTR, LPDCB); 1787 HANDLE hFile); | 1655 BOOL BuildCommDCBW(LPCWSTR, LPDCB); 1788 < > 1656 BOOL BuildCommDCBAndTimeoutsA(LPCSTR, LPDCB, LPCOMMTIMEOUTS); 1789 extern(Windows) export DWORD GetFileSize( | 1657 BOOL BuildCommDCBAndTimeoutsW(LPCWSTR, LPDCB, LPCOMMTIMEOUTS); 1790 HANDLE hFile, | 1658 BOOL CallNamedPipeA(LPCSTR, PVOID, DWORD, PVOID, DWORD, PDWORD, DWORD); 1791 LPDWORD lpFileSizeHigh); | 1659 BOOL CallNamedPipeW(LPCWSTR, PVOID, DWORD, PVOID, DWORD, PDWORD, DWORD); 1792 < > 1660 BOOL CancelDeviceWakeupRequest(HANDLE); 1793 extern(Windows) export BOOL GetFileSizeEx( | 1661 BOOL CheckTokenMembership(HANDLE, PSID, PBOOL); 1794 HANDLE hFile, | 1662 BOOL ClearCommBreak(HANDLE); 1795 PLARGE_INTEGER lpFileSize); | 1663 BOOL ClearCommError(HANDLE, PDWORD, LPCOMSTAT); > 1664 BOOL CloseHandle(HANDLE); > 1665 BOOL CommConfigDialogA(LPCSTR, HWND, LPCOMMCONFIG); > 1666 BOOL CommConfigDialogW(LPCWSTR, HWND, LPCOMMCONFIG); > 1667 LONG CompareFileTime(CPtr!(FILETIME), CPtr!(FILETIME)); > 1668 BOOL ContinueDebugEvent(DWORD, DWORD, DWORD); > 1669 BOOL CopyFileA(LPCSTR, LPCSTR, BOOL); > 1670 BOOL CopyFileW(LPCWSTR, LPCWSTR, BOOL); > 1671 BOOL CopyFileExA(LPCSTR, LPCSTR, LPPROGRESS_ROUTINE, LPVOID, LPBOOL, DWO > 1672 BOOL CopyFileExW(LPCWSTR, LPCWSTR, LPPROGRESS_ROUTINE, LPVOID, LPBOOL, D 1796 | 1673 1797 extern(Windows) export HANDLE GetStdHandle( < 1798 DWORD nStdHandle); < > 1674 /+ FIXME > 1675 alias memmove RtlMoveMemory; > 1676 alias memcpy RtlCopyMemory; 1799 | 1677 1800 extern(Windows) export BOOL SetStdHandle( < 1801 DWORD nStdHandle, < 1802 HANDLE hHandle); < > 1678 void RtlFillMemory(PVOID dest, SIZE_T len, BYTE fill) { > 1679 memset(dest, fill, len); 1803 | 1680 } 1804 extern(Windows) export BOOL WriteFile( < 1805 HANDLE hFile, < 1806 LPCVOID lpBuffer, < 1807 DWORD nNumberOfBytesToWrite, < 1808 LPDWORD lpNumberOfBytesWritten, < 1809 LPOVERLAPPED lpOverlapped); < 1810 | 1681 1811 extern(Windows) export BOOL ReadFile( < 1812 HANDLE hFile, < 1813 LPVOID lpBuffer, < 1814 DWORD nNumberOfBytesToRead, | 1682 void RtlZeroMemory(PVOID dest, SIZE_T len) { 1815 LPDWORD lpNumberOfBytesRead, | 1683 RtlFillMemory(dest, len , 0); 1816 LPOVERLAPPED lpOverlapped); < 1817 | 1684 } 1818 extern(Windows) export BOOL FlushFileBuffers( < 1819 HANDLE hFile); < 1820 | 1685 > 1686 alias RtlMoveMemory MoveMemory; > 1687 alias RtlCopyMemory CopyMemory; > 1688 alias RtlFillMemory FillMemory; 1821 extern(Windows) export BOOL DeviceIoControl( | 1689 alias RtlZeroMemory ZeroMemory; 1822 HANDLE hDevice, < > 1690 +/ 1823 DWORD dwIoControlCode, | 1691 BOOL CreateDirectoryA(LPCSTR, LPSECURITY_ATTRIBUTES); 1824 LPVOID lpInBuffer, | 1692 BOOL CreateDirectoryW(LPCWSTR, LPSECURITY_ATTRIBUTES); 1825 DWORD nInBufferSize, | 1693 BOOL CreateDirectoryExA(LPCSTR, LPCSTR, LPSECURITY_ATTRIBUTES); 1826 LPVOID lpOutBuffer, | 1694 BOOL CreateDirectoryExW(LPCWSTR, LPCWSTR, LPSECURITY_ATTRIBUTES); 1827 DWORD nOutBufferSize, | 1695 HANDLE CreateEventA(LPSECURITY_ATTRIBUTES, BOOL, BOOL, LPCSTR); 1828 LPDWORD lpBytesReturned, | 1696 HANDLE CreateEventW(LPSECURITY_ATTRIBUTES, BOOL, BOOL, LPCWSTR); 1829 LPOVERLAPPED lpOverlapped); | 1697 HANDLE CreateFileA(LPCSTR, DWORD, DWORD, LPSECURITY_ATTRIBUTES, DWORD, D 1830 < > 1698 HANDLE CreateFileW(LPCWSTR, DWORD, DWORD, LPSECURITY_ATTRIBUTES, DWORD, 1831 extern(Windows) export BOOL RequestDeviceWakeup( | 1699 HANDLE CreateIoCompletionPort(HANDLE, HANDLE, ULONG_PTR, DWORD); 1832 HANDLE hDevice); | 1700 HANDLE CreateMailslotA(LPCSTR, DWORD, DWORD, LPSECURITY_ATTRIBUTES); 1833 < > 1701 HANDLE CreateMailslotW(LPCWSTR, DWORD, DWORD, LPSECURITY_ATTRIBUTES); 1834 extern(Windows) export BOOL CancelDeviceWakeupRequest( | 1702 HANDLE CreateMutexA(LPSECURITY_ATTRIBUTES, BOOL, LPCSTR); 1835 HANDLE hDevice); | 1703 HANDLE CreateMutexW(LPSECURITY_ATTRIBUTES, BOOL, LPCWSTR); 1836 < > 1704 BOOL CreatePipe(PHANDLE, PHANDLE, LPSECURITY_ATTRIBUTES, DWORD); 1837 extern(Windows) export BOOL GetDevicePowerState( | 1705 BOOL CreateProcessA(LPCSTR, LPSTR, LPSECURITY_ATTRIBUTES, LPSECURITY_ATT 1838 HANDLE hDevice, | 1706 BOOL CreateProcessW(LPCWSTR, LPWSTR, LPSECURITY_ATTRIBUTES, LPSECURITY_A 1839 BOOL *pfOn); | 1707 HANDLE CreateSemaphoreA(LPSECURITY_ATTRIBUTES, LONG, LONG, LPCSTR); 1840 < > 1708 HANDLE CreateSemaphoreW(LPSECURITY_ATTRIBUTES, LONG, LONG, LPCWSTR); 1841 extern(Windows) export BOOL SetMessageWaitingIndicator( | 1709 HANDLE CreateThread(LPSECURITY_ATTRIBUTES, DWORD, LPTHREAD_START_ROUTINE 1842 HANDLE hMsgIndicator, | 1710 BOOL DebugActiveProcess(DWORD); 1843 ULONG ulMsgCount); | 1711 void DebugBreak(); 1844 < > 1712 ATOM DeleteAtom(ATOM); 1845 extern(Windows) export BOOL SetEndOfFile( | 1713 void DeleteCriticalSection(PCRITICAL_SECTION); 1846 HANDLE hFile); | 1714 BOOL DeleteFileA(LPCSTR); 1847 < > 1715 BOOL DeleteFileW(LPCWSTR); 1848 extern(Windows) export DWORD SetFilePointer( | 1716 BOOL DisableThreadLibraryCalls(HMODULE); 1849 HANDLE hFile, | 1717 BOOL DosDateTimeToFileTime(WORD, WORD, LPFILETIME); 1850 LONG lDistanceToMove, | 1718 BOOL DuplicateHandle(HANDLE, HANDLE, HANDLE, PHANDLE, DWORD, BOOL, DWORD 1851 PLONG lpDistanceToMoveHigh, | 1719 BOOL EndUpdateResourceA(HANDLE, BOOL); 1852 DWORD dwMoveMethod); | 1720 BOOL EndUpdateResourceW(HANDLE, BOOL); 1853 < > 1721 void EnterCriticalSection(LPCRITICAL_SECTION); 1854 extern(Windows) export BOOL SetFilePointerEx( | 1722 BOOL EnumResourceLanguagesA(HMODULE, LPCSTR, LPCSTR, ENUMRESLANGPROC, LO 1855 HANDLE hFile, | 1723 BOOL EnumResourceLanguagesW(HMODULE, LPCWSTR, LPCWSTR, ENUMRESLANGPROC, 1856 LARGE_INTEGER liDistanceToMove, | 1724 BOOL EnumResourceNamesA(HMODULE, LPCSTR, ENUMRESNAMEPROC, LONG_PTR); 1857 PLARGE_INTEGER lpNewFilePointer, | 1725 BOOL EnumResourceNamesW(HMODULE, LPCWSTR, ENUMRESNAMEPROC, LONG_PTR); 1858 DWORD dwMoveMethod); | 1726 BOOL EnumResourceTypesA(HMODULE, ENUMRESTYPEPROC, LONG_PTR); 1859 < > 1727 BOOL EnumResourceTypesW(HMODULE, ENUMRESTYPEPROC, LONG_PTR); 1860 extern(Windows) export BOOL FindClose( | 1728 BOOL EscapeCommFunction(HANDLE, DWORD); 1861 HANDLE hFindFile); | 1729 void ExitProcess(UINT); // Never returns 1862 < > 1730 void ExitThread(DWORD); // Never returns 1863 extern(Windows) export BOOL GetFileTime( | 1731 DWORD ExpandEnvironmentStringsA(LPCSTR, LPSTR, DWORD); 1864 HANDLE hFile, | 1732 DWORD ExpandEnvironmentStringsW(LPCWSTR, LPWSTR, DWORD); 1865 LPFILETIME lpCreationTime, | 1733 void FatalAppExitA(UINT, LPCSTR); 1866 LPFILETIME lpLastAccessTime, | 1734 void FatalAppExitW(UINT, LPCWSTR); 1867 LPFILETIME lpLastWriteTime); | 1735 void FatalExit(int); 1868 < > 1736 BOOL FileTimeToDosDateTime(CPtr!(FILETIME) , LPWORD, LPWORD); 1869 extern(Windows) export BOOL SetFileTime( | 1737 BOOL FileTimeToLocalFileTime(CPtr!(FILETIME) , LPFILETIME); 1870 HANDLE hFile, | 1738 BOOL FileTimeToSystemTime(CPtr!(FILETIME) , LPSYSTEMTIME); 1871 FILETIME *lpCreationTime, | 1739 ATOM FindAtomA(LPCSTR); 1872 FILETIME *lpLastAccessTime, | 1740 ATOM FindAtomW(LPCWSTR); 1873 FILETIME *lpLastWriteTime); | 1741 BOOL FindClose(HANDLE); 1874 < > 1742 BOOL FindCloseChangeNotification(HANDLE); 1875 extern(Windows) export BOOL SetFileValidData( | 1743 HANDLE FindFirstChangeNotificationA(LPCSTR, BOOL, DWORD); 1876 HANDLE hFile, | 1744 HANDLE FindFirstChangeNotificationW(LPCWSTR, BOOL, DWORD); 1877 LONGLONG ValidDataLength); | 1745 HANDLE FindFirstFileA(LPCSTR, LPWIN32_FIND_DATAA); 1878 < > 1746 HANDLE FindFirstFileW(LPCWSTR, LPWIN32_FIND_DATAW); 1879 extern(Windows) export BOOL SetFileShortNameA( | 1747 BOOL FindNextChangeNotification(HANDLE); 1880 HANDLE hFile, | 1748 BOOL FindNextFileA(HANDLE, LPWIN32_FIND_DATAA); 1881 LPCSTR lpShortName); | 1749 BOOL FindNextFileW(HANDLE, LPWIN32_FIND_DATAW); 1882 extern(Windows) export BOOL SetFileShortNameW( | 1750 HRSRC FindResourceA(HMODULE, LPCSTR, LPCSTR); 1883 HANDLE hFile, | 1751 HRSRC FindResourceW(HINSTANCE, LPCWSTR, LPCWSTR); 1884 LPCWSTR lpShortName); | 1752 HRSRC FindResourceExA(HINSTANCE, LPCSTR, LPCSTR, WORD); 1885 // #ifdef UNICODE | 1753 HRSRC FindResourceExW(HINSTANCE, LPCWSTR, LPCWSTR, WORD); 1886 alias SetFileShortNameW SetFileShortName; | 1754 BOOL FlushFileBuffers(HANDLE); 1887 // #else | 1755 BOOL FlushInstructionCache(HANDLE, PCVOID, DWORD); 1888 // #... | 1756 DWORD FormatMessageA(DWORD, PCVOID, DWORD, DWORD, LPSTR, DWORD, va_list* 1889 // #endif // !UNICODE | 1757 DWORD FormatMessageW(DWORD, PCVOID, DWORD, DWORD, LPWSTR, DWORD, va_list 1890 < > 1758 BOOL FreeEnvironmentStringsA(LPSTR); 1891 extern(Windows) export BOOL CloseHandle( | 1759 BOOL FreeEnvironmentStringsW(LPWSTR); 1892 HANDLE hObject); | 1760 BOOL FreeLibrary(HMODULE); 1893 < > 1761 void FreeLibraryAndExitThread(HMODULE, DWORD); // never returns 1894 extern(Windows) export BOOL DuplicateHandle( | 1762 BOOL FreeResource(HGLOBAL); 1895 HANDLE hSourceProcessHandle, | 1763 UINT GetAtomNameA(ATOM, LPSTR, int); 1896 HANDLE hSourceHandle, | 1764 UINT GetAtomNameW(ATOM, LPWSTR, int); 1897 HANDLE hTargetProcessHandle, | 1765 LPSTR GetCommandLineA(); 1898 LPHANDLE lpTargetHandle, | 1766 LPWSTR GetCommandLineW(); 1899 DWORD dwDesiredAccess, | 1767 BOOL GetCommConfig(HANDLE, LPCOMMCONFIG, PDWORD); 1900 BOOL bInheritHandle, | 1768 BOOL GetCommMask(HANDLE, PDWORD); 1901 DWORD dwOptions); | 1769 BOOL GetCommModemStatus(HANDLE, PDWORD); 1902 < > 1770 BOOL GetCommProperties(HANDLE, LPCOMMPROP); 1903 extern(Windows) export BOOL GetHandleInformation( | 1771 BOOL GetCommState(HANDLE, LPDCB); 1904 HANDLE hObject, | 1772 BOOL GetCommTimeouts(HANDLE, LPCOMMTIMEOUTS); 1905 LPDWORD lpdwFlags); | 1773 BOOL GetComputerNameA(LPSTR, PDWORD); 1906 < > 1774 BOOL GetComputerNameW(LPWSTR, PDWORD); 1907 extern(Windows) export BOOL SetHandleInformation( | 1775 DWORD GetCurrentDirectoryA(DWORD, LPSTR); 1908 HANDLE hObject, | 1776 DWORD GetCurrentDirectoryW(DWORD, LPWSTR); 1909 DWORD dwMask, | 1777 HANDLE GetCurrentProcess(); 1910 DWORD dwFlags); | 1778 DWORD GetCurrentProcessId(); 1911 < > 1779 HANDLE GetCurrentThread(); 1912 enum : uint { HANDLE_FLAG_INHERIT = 0x00000001 } | 1780 /* In MinGW: 1913 enum : uint { HANDLE_FLAG_PROTECT_FROM_CLOSE = 0x00000002 } | 1781 #ifdef _WIN32_WCE 1914 < > 1782 extern DWORD GetCurrentThreadId(void); 1915 enum : uint { HINSTANCE_ERROR = 32 } | 1783 #else 1916 < > 1784 WINBASEAPI DWORD WINAPI GetCurrentThreadId(void); 1917 extern(Windows) export DWORD LoadModule( | 1785 #endif 1918 LPCSTR lpModuleName, < > 1786 */ 1919 LPVOID lpParameterBlock); | 1787 DWORD GetCurrentThreadId(); 1920 | 1788 1921 extern(Windows) export UINT WinExec( | 1789 alias GetTickCount GetCurrentTime; 1922 LPCSTR lpCmdLine, < 1923 UINT uCmdShow); < 1924 | 1790 > 1791 BOOL GetDefaultCommConfigA(LPCSTR, LPCOMMCONFIG, PDWORD); > 1792 BOOL GetDefaultCommConfigW(LPCWSTR, LPCOMMCONFIG, PDWORD); 1925 extern(Windows) export BOOL ClearCommBreak( | 1793 BOOL GetDiskFreeSpaceA(LPCSTR, PDWORD, PDWORD, PDWORD, PDWORD); 1926 HANDLE hFile); | 1794 BOOL GetDiskFreeSpaceW(LPCWSTR, PDWORD, PDWORD, PDWORD, PDWORD); 1927 < > 1795 BOOL GetDiskFreeSpaceExA(LPCSTR, PULARGE_INTEGER, PULARGE_INTEGER, PULAR 1928 extern(Windows) export BOOL ClearCommError( | 1796 BOOL GetDiskFreeSpaceExW(LPCWSTR, PULARGE_INTEGER, PULARGE_INTEGER, PULA 1929 HANDLE hFile, | 1797 UINT GetDriveTypeA(LPCSTR); 1930 LPDWORD lpErrors, | 1798 UINT GetDriveTypeW(LPCWSTR); 1931 LPCOMSTAT lpStat); | 1799 LPSTR GetEnvironmentStrings(); // ??? 1932 < > 1800 LPSTR GetEnvironmentStringsA(); 1933 extern(Windows) export BOOL SetupComm( | 1801 LPWSTR GetEnvironmentStringsW(); 1934 HANDLE hFile, | 1802 DWORD GetEnvironmentVariableA(LPCSTR, LPSTR, DWORD); 1935 DWORD dwInQueue, | 1803 DWORD GetEnvironmentVariableW(LPCWSTR, LPWSTR, DWORD); 1936 DWORD dwOutQueue); | 1804 BOOL GetExitCodeProcess(HANDLE, PDWORD); 1937 < > 1805 BOOL GetExitCodeThread(HANDLE, PDWORD); 1938 extern(Windows) export BOOL EscapeCommFunction( | 1806 DWORD GetFileAttributesA(LPCSTR); 1939 HANDLE hFile, | 1807 DWORD GetFileAttributesW(LPCWSTR); 1940 DWORD dwFunc); | 1808 BOOL GetFileInformationByHandle(HANDLE, LPBY_HANDLE_FILE_INFORMATION); 1941 < > 1809 DWORD GetFileSize(HANDLE, PDWORD); 1942 extern(Windows) export BOOL GetCommConfig( | 1810 BOOL GetFileTime(HANDLE, LPFILETIME, LPFILETIME, LPFILETIME); 1943 HANDLE hCommDev, | 1811 DWORD GetFileType(HANDLE); 1944 LPCOMMCONFIG lpCC, | 1812 DWORD GetFullPathNameA(LPCSTR, DWORD, LPSTR, LPSTR*); 1945 LPDWORD lpdwSize); | 1813 DWORD GetFullPathNameW(LPCWSTR, DWORD, LPWSTR, LPWSTR*); 1946 < > 1814 DWORD GetLastError(); 1947 extern(Windows) export BOOL GetCommMask( | 1815 void GetLocalTime(LPSYSTEMTIME); 1948 HANDLE hFile, | 1816 DWORD GetLogicalDrives(); 1949 LPDWORD lpEvtMask); | 1817 DWORD GetLogicalDriveStringsA(DWORD, LPSTR); 1950 < > 1818 DWORD GetLogicalDriveStringsW(DWORD, LPWSTR); 1951 extern(Windows) export BOOL GetCommProperties( | 1819 BOOL GetMailslotInfo(HANDLE, PDWORD, PDWORD, PDWORD, PDWORD); 1952 HANDLE hFile, | 1820 DWORD GetModuleFileNameA(HINSTANCE, LPSTR, DWORD); 1953 LPCOMMPROP lpCommProp); | 1821 DWORD GetModuleFileNameW(HINSTANCE, LPWSTR, DWORD); 1954 < > 1822 HMODULE GetModuleHandleA(LPCSTR); 1955 extern(Windows) export BOOL GetCommModemStatus( | 1823 HMODULE GetModuleHandleW(LPCWSTR); > 1824 BOOL GetNamedPipeHandleStateA(HANDLE, PDWORD, PDWORD, PDWORD, PDWORD, LP > 1825 BOOL GetNamedPipeHandleStateW(HANDLE, PDWORD, PDWORD, PDWORD, PDWORD, LP > 1826 BOOL GetNamedPipeInfo(HANDLE, PDWORD, PDWORD, PDWORD, PDWORD); > 1827 BOOL GetOverlappedResult(HANDLE, LPOVERLAPPED, PDWORD, BOOL); > 1828 DWORD GetPriorityClass(HANDLE); > 1829 UINT GetPrivateProfileIntA(LPCSTR, LPCSTR, INT, LPCSTR); > 1830 UINT GetPrivateProfileIntW(LPCWSTR, LPCWSTR, INT, LPCWSTR); > 1831 DWORD GetPrivateProfileSectionA(LPCSTR, LPSTR, DWORD, LPCSTR); > 1832 DWORD GetPrivateProfileSectionW(LPCWSTR, LPWSTR, DWORD, LPCWSTR); > 1833 DWORD GetPrivateProfileSectionNamesA(LPSTR, DWORD, LPCSTR); > 1834 DWORD GetPrivateProfileSectionNamesW(LPWSTR, DWORD, LPCWSTR); > 1835 DWORD GetPrivateProfileStringA(LPCSTR, LPCSTR, LPCSTR, LPSTR, DWORD, LPC > 1836 DWORD GetPrivateProfileStringW(LPCWSTR, LPCWSTR, LPCWSTR, LPWSTR, DWORD, > 1837 BOOL GetPrivateProfileStructA(LPCSTR, LPCSTR, LPVOID, UINT, LPCSTR); > 1838 BOOL GetPrivateProfileStructW(LPCWSTR, LPCWSTR, LPVOID, UINT, LPCWSTR); > 1839 FARPROC GetProcAddress(HINSTANCE, LPCSTR); > 1840 BOOL GetProcessAffinityMask(HANDLE, PDWORD, PDWORD); > 1841 DWORD GetProcessVersion(DWORD); > 1842 UINT GetProfileIntA(LPCSTR, LPCSTR, INT); > 1843 UINT GetProfileIntW(LPCWSTR, LPCWSTR, INT); > 1844 DWORD GetProfileSectionA(LPCSTR, LPSTR, DWORD); > 1845 DWORD GetProfileSectionW(LPCWSTR, LPWSTR, DWORD); > 1846 DWORD GetProfileStringA(LPCSTR, LPCSTR, LPCSTR, LPSTR, DWORD); > 1847 DWORD GetProfileStringW(LPCWSTR, LPCWSTR, LPCWSTR, LPWSTR, DWORD); > 1848 DWORD GetShortPathNameA(LPCSTR, LPSTR, DWORD); > 1849 DWORD GetShortPathNameW(LPCWSTR, LPWSTR, DWORD); > 1850 VOID GetStartupInfoA(LPSTARTUPINFOA); > 1851 VOID GetStartupInfoW(LPSTARTUPINFOW); 1956 HANDLE hFile, | 1852 HANDLE GetStdHandle(DWORD); 1957 LPDWORD lpModemStat); < > 1853 UINT GetSystemDirectoryA(LPSTR, UINT); > 1854 UINT GetSystemDirectoryW(LPWSTR, UINT); > 1855 VOID GetSystemInfo(LPSYSTEM_INFO); > 1856 VOID GetSystemTime(LPSYSTEMTIME); > 1857 BOOL GetSystemTimeAdjustment(PDWORD, PDWORD, PBOOL); > 1858 void GetSystemTimeAsFileTime(LPFILETIME); > 1859 UINT GetTempFileNameA(LPCSTR, LPCSTR, UINT, LPSTR); > 1860 UINT GetTempFileNameW(LPCWSTR, LPCWSTR, UINT, LPWSTR); > 1861 DWORD GetTempPathA(DWORD, LPSTR); > 1862 DWORD GetTempPathW(DWORD, LPWSTR); > 1863 BOOL GetThreadContext(HANDLE, LPCONTEXT); > 1864 int GetThreadPriority(HANDLE); > 1865 BOOL GetThreadSelectorEntry(HANDLE, DWORD, LPLDT_ENTRY); > 1866 DWORD GetTickCount(); > 1867 DWORD GetTimeZoneInformation(LPTIME_ZONE_INFORMATION); > 1868 BOOL GetUserNameA (LPSTR, PDWORD); > 1869 BOOL GetUserNameW(LPWSTR, PDWORD); > 1870 DWORD GetVersion(); > 1871 BOOL GetVersionExA(LPOSVERSIONINFOA); > 1872 BOOL GetVersionExW(LPOSVERSIONINFOW); > 1873 BOOL GetVolumeInformationA(LPCSTR, LPSTR, DWORD, PDWORD, PDWORD, PDWORD, > 1874 BOOL GetVolumeInformationW(LPCWSTR, LPWSTR, DWORD, PDWORD, PDWORD, PDWOR > 1875 UINT GetWindowsDirectoryA(LPSTR, UINT); > 1876 UINT GetWindowsDirectoryW(LPWSTR, UINT); > 1877 DWORD GetWindowThreadProcessId(HWND, PDWORD); > 1878 ATOM GlobalAddAtomA(LPCSTR); > 1879 ATOM GlobalAddAtomW(LPCWSTR); > 1880 ATOM GlobalDeleteAtom(ATOM); > 1881 ATOM GlobalFindAtomA(LPCSTR); > 1882 ATOM GlobalFindAtomW(LPCWSTR); > 1883 UINT GlobalGetAtomNameA(ATOM, LPSTR, int); > 1884 UINT GlobalGetAtomNameW(ATOM, LPWSTR, int); 1958 | 1885 1959 extern(Windows) export BOOL GetCommState( < 1960 HANDLE hFile, < 1961 LPDCB lpDCB); < > 1886 bool HasOverlappedIoCompleted(LPOVERLAPPED lpOverlapped) { > 1887 return lpOverlapped.Internal != STATUS_PENDING; 1962 | 1888 } 1963 extern(Windows) export BOOL GetCommTimeouts( < 1964 HANDLE hFile, < 1965 LPCOMMTIMEOUTS lpCommTimeouts); < 1966 | 1889 1967 extern(Windows) export BOOL PurgeComm( < 1968 HANDLE hFile, < 1969 DWORD dwFlags); < > 1890 BOOL InitAtomTable(DWORD); > 1891 VOID InitializeCriticalSection(LPCRITICAL_SECTION); > 1892 /* ??? The next two are allegedly obsolete and "supported only for > 1893 * backward compatibility with the 16-bit Windows API". Yet the > 1894 * replacements IsBadReadPtr and IsBadWritePtr are apparently Win20 > 1895 * only. Where's the mistake? > 1896 */ > 1897 BOOL IsBadHugeReadPtr(PCVOID, UINT); > 1898 BOOL IsBadHugeWritePtr(PVOID, UINT); > 1899 BOOL IsBadReadPtr(PCVOID, UINT); > 1900 BOOL IsBadStringPtrA(LPCSTR, UINT); > 1901 BOOL IsBadStringPtrW(LPCWSTR, UINT); > 1902 BOOL IsBadWritePtr(PVOID, UINT); > 1903 void LeaveCriticalSection(LPCRITICAL_SECTION); > 1904 HINSTANCE LoadLibraryA(LPCSTR); > 1905 HINSTANCE LoadLibraryW(LPCWSTR); > 1906 HINSTANCE LoadLibraryExA(LPCSTR, HANDLE, DWORD); > 1907 HINSTANCE LoadLibraryExW(LPCWSTR, HANDLE, DWORD); > 1908 DWORD LoadModule(LPCSTR, PVOID); > 1909 HGLOBAL LoadResource(HINSTANCE, HRSRC); > 1910 BOOL LocalFileTimeToFileTime(CPtr!(FILETIME) , LPFILETIME); > 1911 BOOL LockFile(HANDLE, DWORD, DWORD, DWORD, DWORD); > 1912 PVOID LockResource(HGLOBAL); 1970 | 1913 1971 extern(Windows) export BOOL SetCommBreak( < 1972 HANDLE hFile); < > 1914 LPSTR lstrcatA(LPSTR, LPCSTR); > 1915 LPWSTR lstrcatW(LPWSTR, LPCWSTR); > 1916 int lstrcmpA(LPCSTR, LPCSTR); > 1917 int lstrcmpiA(LPCSTR, LPCSTR); > 1918 int lstrcmpiW(LPCWSTR, LPCWSTR); > 1919 int lstrcmpW(LPCWSTR, LPCWSTR); > 1920 LPSTR lstrcpyA(LPSTR, LPCSTR); > 1921 LPSTR lstrcpynA(LPSTR, LPCSTR, int); > 1922 LPWSTR lstrcpynW(LPWSTR, LPCWSTR, int); > 1923 LPWSTR lstrcpyW(LPWSTR, LPCWSTR); > 1924 int lstrlenA(LPCSTR); > 1925 int lstrlenW(LPCWSTR); 1973 | 1926 > 1927 BOOL MoveFileA(LPCSTR, LPCSTR); > 1928 BOOL MoveFileW(LPCWSTR, LPCWSTR); > 1929 int MulDiv(int, int, int); > 1930 HANDLE OpenEventA(DWORD, BOOL, LPCSTR); > 1931 HANDLE OpenEventW(DWORD, BOOL, LPCWSTR); > 1932 deprecated HFILE OpenFile(LPCSTR, LPOFSTRUCT, UINT); > 1933 HANDLE OpenMutexA(DWORD, BOOL, LPCSTR); > 1934 HANDLE OpenMutexW(DWORD, BOOL, LPCWSTR); > 1935 HANDLE OpenProcess(DWORD, BOOL, DWORD); > 1936 HANDLE OpenSemaphoreA(DWORD, BOOL, LPCSTR); > 1937 HANDLE OpenSemaphoreW(DWORD, BOOL, LPCWSTR); > 1938 void OutputDebugStringA(LPCSTR); > 1939 void OutputDebugStringW(LPCWSTR); > 1940 BOOL PeekNamedPipe(HANDLE, PVOID, DWORD, PDWORD, PDWORD, PDWORD); > 1941 BOOL PulseEvent(HANDLE); > 1942 BOOL PurgeComm(HANDLE, DWORD); > 1943 BOOL QueryPerformanceCounter(PLARGE_INTEGER); > 1944 BOOL QueryPerformanceFrequency(PLARGE_INTEGER); > 1945 DWORD QueueUserAPC(PAPCFUNC, HANDLE, ULONG_PTR); > 1946 void RaiseException(DWORD, DWORD, DWORD, CPtr!(DWORD)); > 1947 BOOL ReadFile(HANDLE, PVOID, DWORD, PDWORD, LPOVERLAPPED); > 1948 BOOL ReadFileEx(HANDLE, PVOID, DWORD, LPOVERLAPPED, LPOVERLAPPED_COMPLET > 1949 BOOL ReadProcessMemory(HANDLE, PCVOID, PVOID, DWORD, PDWORD); > 1950 BOOL ReleaseMutex(HANDLE); > 1951 BOOL ReleaseSemaphore(HANDLE, LONG, LPLONG); > 1952 BOOL RemoveDirectoryA(LPCSTR); > 1953 BOOL RemoveDirectoryW(LPCWSTR); > 1954 /* In MinGW: > 1955 #ifdef _WIN32_WCE > 1956 extern BOOL ResetEvent(HANDLE); > 1957 #else > 1958 WINBASEAPI BOOL WINAPI ResetEvent(HANDLE); > 1959 #endif > 1960 */ > 1961 BOOL ResetEvent(HANDLE); > 1962 DWORD ResumeThread(HANDLE); > 1963 DWORD SearchPathA(LPCSTR, LPCSTR, LPCSTR, DWORD, LPSTR, LPSTR*); > 1964 DWORD SearchPathW(LPCWSTR, LPCWSTR, LPCWSTR, DWORD, LPWSTR, LPWSTR*); 1974 extern(Windows) export BOOL SetCommConfig( | 1965 BOOL SetCommBreak(HANDLE); 1975 HANDLE hCommDev, < 1976 LPCOMMCONFIG lpCC, | 1966 BOOL SetCommConfig(HANDLE, LPCOMMCONFIG, DWORD); 1977 DWORD dwSize); < 1978 < 1979 extern(Windows) export BOOL SetCommMask( | 1967 BOOL SetCommMask(HANDLE, DWORD); 1980 HANDLE hFile, < 1981 DWORD dwEvtMask); < 1982 < 1983 extern(Windows) export BOOL SetCommState( | 1968 BOOL SetCommState(HANDLE, LPDCB); 1984 HANDLE hFile, < 1985 LPDCB lpDCB); < 1986 < 1987 extern(Windows) export BOOL SetCommTimeouts( | 1969 BOOL SetCommTimeouts(HANDLE, LPCOMMTIMEOUTS); > 1970 BOOL SetComputerNameA(LPCSTR); > 1971 BOOL SetComputerNameW(LPCWSTR); > 1972 BOOL SetCurrentDirectoryA(LPCSTR); > 1973 BOOL SetCurrentDirectoryW(LPCWSTR); > 1974 BOOL SetDefaultCommConfigA(LPCSTR, LPCOMMCONFIG, DWORD); > 1975 BOOL SetDefaultCommConfigW(LPCWSTR, LPCOMMCONFIG, DWORD); > 1976 BOOL SetEndOfFile(HANDLE); > 1977 BOOL SetEnvironmentVariableA(LPCSTR, LPCSTR); > 1978 BOOL SetEnvironmentVariableW(LPCWSTR, LPCWSTR); > 1979 UINT SetErrorMode(UINT); > 1980 /* In MinGW: > 1981 #ifdef _WIN32_WCE > 1982 extern BOOL SetEvent(HANDLE); > 1983 #else > 1984 WINBASEAPI BOOL WINAPI SetEvent(HANDLE); > 1985 #endif > 1986 */ 1988 HANDLE hFile, | 1987 BOOL SetEvent(HANDLE); 1989 LPCOMMTIMEOUTS lpCommTimeouts); < > 1988 VOID SetFileApisToANSI(); > 1989 VOID SetFileApisToOEM(); > 1990 BOOL SetFileAttributesA(LPCSTR, DWORD); > 1991 BOOL SetFileAttributesW(LPCWSTR, DWORD); > 1992 DWORD SetFilePointer(HANDLE, LONG, PLONG, DWORD); > 1993 BOOL SetFileTime(HANDLE, CPtr!(FILETIME), CPtr!(FILETIME), CPtr!(FILETIM > 1994 deprecated UINT SetHandleCount(UINT); > 1995 void SetLastError(DWORD); > 1996 void SetLastErrorEx(DWORD, DWORD); > 1997 BOOL SetLocalTime(CPtr!(SYSTEMTIME)); > 1998 BOOL SetMailslotInfo(HANDLE, DWORD); > 1999 BOOL SetNamedPipeHandleState(HANDLE, PDWORD, PDWORD, PDWORD); > 2000 BOOL SetPriorityClass(HANDLE, DWORD); > 2001 BOOL SetStdHandle(DWORD, HANDLE); > 2002 BOOL SetSystemTime(CPtr!(SYSTEMTIME)); > 2003 DWORD SetThreadAffinityMask(HANDLE, DWORD); > 2004 BOOL SetThreadContext(HANDLE, CPtr!(CONTEXT)); > 2005 BOOL SetThreadPriority(HANDLE, int); > 2006 BOOL SetTimeZoneInformation(CPtr!(TIME_ZONE_INFORMATION)); > 2007 LPTOP_LEVEL_EXCEPTION_FILTER SetUnhandledExceptionFilter(LPTOP_LEVEL_EXC > 2008 BOOL SetupComm(HANDLE, DWORD, DWORD); > 2009 BOOL SetVolumeLabelA(LPCSTR, LPCSTR); > 2010 BOOL SetVolumeLabelW(LPCWSTR, LPCWSTR); 1990 | 2011 > 2012 DWORD SizeofResource(HINSTANCE, HRSRC); > 2013 void Sleep(DWORD); > 2014 DWORD SleepEx(DWORD, BOOL); > 2015 DWORD SuspendThread(HANDLE); > 2016 BOOL SystemTimeToFileTime(CPtr!(SYSTEMTIME), LPFILETIME); > 2017 BOOL TerminateProcess(HANDLE, UINT); > 2018 BOOL TerminateThread(HANDLE, DWORD); > 2019 DWORD TlsAlloc(); > 2020 BOOL TlsFree(DWORD); > 2021 PVOID TlsGetValue(DWORD); > 2022 BOOL TlsSetValue(DWORD, PVOID); > 2023 BOOL TransactNamedPipe(HANDLE, PVOID, DWORD, PVOID, DWORD, PDWORD, LPOVE 1991 extern(Windows) export BOOL TransmitCommChar( | 2024 BOOL TransmitCommChar(HANDLE, char); 1992 HANDLE hFile, < 1993 char cChar); < > 2025 LONG UnhandledExceptionFilter(LPEXCEPTION_POINTERS); > 2026 BOOL UnlockFile(HANDLE, DWORD, DWORD, DWORD, DWORD); > 2027 BOOL WaitCommEvent(HANDLE, PDWORD, LPOVERLAPPED); > 2028 BOOL WaitForDebugEvent(LPDEBUG_EVENT, DWORD); > 2029 DWORD WaitForMultipleObjects(DWORD, CPtr!(HANDLE), BOOL, DWORD); > 2030 DWORD WaitForMultipleObjectsEx(DWORD, CPtr!(HANDLE), BOOL, DWORD, BOOL); > 2031 DWORD WaitForSingleObject(HANDLE, DWORD); > 2032 DWORD WaitForSingleObjectEx(HANDLE, DWORD, BOOL); > 2033 BOOL WaitNamedPipeA(LPCSTR, DWORD); > 2034 BOOL WaitNamedPipeW(LPCWSTR, DWORD); > 2035 // undocumented on MSDN > 2036 BOOL WinLoadTrustProvider(GUID*); > 2037 BOOL WriteFile(HANDLE, PCVOID, DWORD, PDWORD, LPOVERLAPPED); > 2038 BOOL WriteFileEx(HANDLE, PCVOID, DWORD, LPOVERLAPPED, LPOVERLAPPED_COMPL > 2039 BOOL WritePrivateProfileSectionA(LPCSTR, LPCSTR, LPCSTR); > 2040 BOOL WritePrivateProfileSectionW(LPCWSTR, LPCWSTR, LPCWSTR); > 2041 BOOL WritePrivateProfileStringA(LPCSTR, LPCSTR, LPCSTR, LPCSTR); > 2042 BOOL WritePrivateProfileStringW(LPCWSTR, LPCWSTR, LPCWSTR, LPCWSTR); > 2043 BOOL WritePrivateProfileStructA(LPCSTR, LPCSTR, LPVOID, UINT, LPCSTR); > 2044 BOOL WritePrivateProfileStructW(LPCWSTR, LPCWSTR, LPVOID, UINT, LPCWSTR) > 2045 BOOL WriteProcessMemory(HANDLE, LPVOID, LPCVOID, SIZE_T, SIZE_T*); > 2046 BOOL WriteProfileSectionA(LPCSTR, LPCSTR); > 2047 BOOL WriteProfileSectionW(LPCWSTR, LPCWSTR); > 2048 BOOL WriteProfileStringA(LPCSTR, LPCSTR, LPCSTR); > 2049 BOOL WriteProfileStringW(LPCWSTR, LPCWSTR, LPCWSTR); 1994 | 2050 1995 extern(Windows) export BOOL WaitCommEvent( < > 2051 /* Memory allocation functions. > 2052 * MSDN documents these erroneously as Win2000+; thus it is uncerta > 2053 * version compatibility they really have. > 2054 */ > 2055 HGLOBAL GlobalAlloc(UINT, DWORD); > 2056 HGLOBAL GlobalDiscard(HGLOBAL); > 2057 HGLOBAL GlobalFree(HGLOBAL); > 2058 HGLOBAL GlobalHandle(PCVOID); > 2059 LPVOID GlobalLock(HGLOBAL); > 2060 VOID GlobalMemoryStatus(LPMEMORYSTATUS); > 2061 HGLOBAL GlobalReAlloc(HGLOBAL, DWORD, UINT); > 2062 DWORD GlobalSize(HGLOBAL); > 2063 BOOL GlobalUnlock(HGLOBAL); > 2064 PVOID HeapAlloc(HANDLE, DWORD, DWORD); > 2065 SIZE_T HeapCompact(HANDLE, DWORD); > 2066 HANDLE HeapCreate(DWORD, DWORD, DWORD); > 2067 BOOL HeapDestroy(HANDLE); > 2068 BOOL HeapFree(HANDLE, DWORD, PVOID); 1996 HANDLE hFile, | 2069 BOOL HeapLock(HANDLE); 1997 LPDWORD lpEvtMask, < 1998 LPOVERLAPPED lpOverlapped); < > 2070 PVOID HeapReAlloc(HANDLE, DWORD, PVOID, DWORD); > 2071 DWORD HeapSize(HANDLE, DWORD, PCVOID); > 2072 BOOL HeapUnlock(HANDLE); > 2073 BOOL HeapValidate(HANDLE, DWORD, PCVOID); > 2074 BOOL HeapWalk(HANDLE, LPPROCESS_HEAP_ENTRY); > 2075 HLOCAL LocalAlloc(UINT, SIZE_T); > 2076 HLOCAL LocalDiscard(HLOCAL); > 2077 HLOCAL LocalFree(HLOCAL); > 2078 HLOCAL LocalHandle(LPCVOID); > 2079 PVOID LocalLock(HLOCAL); > 2080 HLOCAL LocalReAlloc(HLOCAL, SIZE_T, UINT); > 2081 UINT LocalSize(HLOCAL); > 2082 BOOL LocalUnlock(HLOCAL); > 2083 PVOID VirtualAlloc(PVOID, DWORD, DWORD, DWORD); > 2084 PVOID VirtualAllocEx(HANDLE, PVOID, DWORD, DWORD, DWORD); > 2085 BOOL VirtualFree(PVOID, DWORD, DWORD); > 2086 BOOL VirtualFreeEx(HANDLE, PVOID, DWORD, DWORD); > 2087 BOOL VirtualLock(PVOID, DWORD); > 2088 BOOL VirtualProtect(PVOID, DWORD, DWORD, PDWORD); > 2089 BOOL VirtualProtectEx(HANDLE, PVOID, DWORD, DWORD, PDWORD); > 2090 DWORD VirtualQuery(LPCVOID, PMEMORY_BASIC_INFORMATION, DWORD); > 2091 DWORD VirtualQueryEx(HANDLE, LPCVOID, PMEMORY_BASIC_INFORMATION, DWORD); > 2092 BOOL VirtualUnlock(PVOID, DWORD); 1999 | 2093 2000 extern(Windows) export DWORD SetTapePosition( < 2001 HANDLE hDevice, < 2002 DWORD dwPositionMethod, < 2003 DWORD dwPartition, < 2004 DWORD dwOffsetLow, < 2005 DWORD dwOffsetHigh, < 2006 BOOL bImmediate); < > 2094 static if (_WIN32_WINDOWS >= 0x600) { > 2095 BOOL CancelIoEx(HANDLE, LPOVERLAPPED); 2007 | 2096 } 2008 extern(Windows) export DWORD GetTapePosition( < 2009 HANDLE hDevice, < 2010 DWORD dwPositionType, < 2011 LPDWORD lpdwPartition, < 2012 LPDWORD lpdwOffsetLow, < 2013 LPDWORD lpdwOffsetHigh); < 2014 | 2097 2015 extern(Windows) export DWORD PrepareTape( < 2016 HANDLE hDevice, < 2017 DWORD dwOperation, < 2018 BOOL bImmediate); < > 2098 static if (_WIN32_WINDOWS >= 0x410) { > 2099 BOOL CancelIo(HANDLE); > 2100 BOOL CancelWaitableTimer(HANDLE); > 2101 PVOID ConvertThreadToFiber(PVOID); > 2102 LPVOID CreateFiber(SIZE_T, LPFIBER_START_ROUTINE, LPVOID); > 2103 HANDLE CreateWaitableTimerA(LPSECURITY_ATTRIBUTES, BOOL, LPCSTR) > 2104 HANDLE CreateWaitableTimerW(LPSECURITY_ATTRIBUTES, BOOL, LPCWSTR > 2105 void DeleteFiber(PVOID); > 2106 BOOL GetFileAttributesExA(LPCSTR, GET_FILEEX_INFO_LEVELS, PVOID) > 2107 BOOL GetFileAttributesExW(LPCWSTR, GET_FILEEX_INFO_LEVELS, PVOID > 2108 DWORD GetLongPathNameA(LPCSTR, LPSTR, DWORD); > 2109 DWORD GetLongPathNameW(LPCWSTR, LPWSTR, DWORD); > 2110 BOOL InitializeCriticalSectionAndSpinCount(LPCRITICAL_SECTION, D > 2111 BOOL IsDebuggerPresent(); > 2112 HANDLE OpenWaitableTimerA(DWORD, BOOL, LPCSTR); > 2113 HANDLE OpenWaitableTimerW(DWORD, BOOL, LPCWSTR); > 2114 DWORD QueryDosDeviceA(LPCSTR, LPSTR, DWORD); > 2115 DWORD QueryDosDeviceW(LPCWSTR, LPWSTR, DWORD); > 2116 BOOL SetWaitableTimer(HANDLE, CPtr!(LARGE_INTEGER), LONG, PTIMER > 2117 void SwitchToFiber(PVOID); 2019 | 2118 } 2020 extern(Windows) export DWORD EraseTape( < 2021 HANDLE hDevice, < 2022 DWORD dwEraseType, < 2023 BOOL bImmediate); < 2024 | 2119 2025 extern(Windows) export DWORD CreateTapePartition( < 2026 HANDLE hDevice, < 2027 DWORD dwPartitionMethod, < 2028 DWORD dwCount, < 2029 DWORD dwSize); < > 2120 static if (WINVER >= 0x500) { > 2121 HANDLE OpenThread(DWORD, BOOL, DWORD); 2030 | 2122 } 2031 extern(Windows) export DWORD WriteTapemark( < 2032 HANDLE hDevice, < 2033 DWORD dwTapemarkType, < 2034 DWORD dwTapemarkCount, < 2035 BOOL bImmediate); < 2036 | 2123 > 2124 static if (_WIN32_WINNT_ONLY) { > 2125 BOOL AccessCheck(PSECURITY_DESCRIPTOR, HANDLE, DWORD, PGENERIC_M > 2126 BOOL AccessCheckAndAuditAlarmA(LPCSTR, LPVOID, LPSTR, LPSTR, PSE > 2127 BOOL AccessCheckAndAuditAlarmW(LPCWSTR, LPVOID, LPWSTR, LPWSTR, > 2128 BOOL AddAccessAllowedAce(PACL, DWORD, DWORD, PSID); > 2129 BOOL AddAccessDeniedAce(PACL, DWORD, DWORD, PSID); > 2130 BOOL AddAce(PACL, DWORD, DWORD, PVOID, DWORD); > 2131 BOOL AddAuditAccessAce(PACL, DWORD, DWORD, PSID, BOOL, BOOL); > 2132 BOOL AdjustTokenGroups(HANDLE, BOOL, PTOKEN_GROUPS, DWORD, PTOKE > 2133 BOOL AdjustTokenPrivileges(HANDLE, BOOL, PTOKEN_PRIVILEGES, DWOR > 2134 BOOL AllocateAndInitializeSid(PSID_IDENTIFIER_AUTHORITY, BYTE, D > 2135 BOOL AllocateLocallyUniqueId(PLUID); > 2136 BOOL AreAllAccessesGranted(DWORD, DWORD); > 2137 BOOL AreAnyAccessesGranted(DWORD, DWORD); > 2138 BOOL BackupEventLogA(HANDLE, LPCSTR); > 2139 BOOL BackupEventLogW(HANDLE, LPCWSTR); > 2140 BOOL BackupRead(HANDLE, LPBYTE, DWORD, LPDWORD, BOOL, BOOL, LPVO > 2141 BOOL BackupSeek(HANDLE, DWORD, DWORD, LPDWORD, LPDWORD, LPVOID*) > 2142 BOOL BackupWrite(HANDLE, LPBYTE, DWORD, LPDWORD, BOOL, BOOL, LPV > 2143 BOOL ClearEventLogA(HANDLE, LPCSTR); > 2144 BOOL ClearEventLogW(HANDLE, LPCWSTR); > 2145 BOOL CloseEventLog(HANDLE); > 2146 BOOL ConnectNamedPipe(HANDLE, LPOVERLAPPED); > 2147 BOOL CopySid(DWORD, PSID, PSID); > 2148 HANDLE CreateNamedPipeA(LPCSTR, DWORD, DWORD, DWORD, DWORD, DWOR > 2149 HANDLE CreateNamedPipeW(LPCWSTR, DWORD, DWORD, DWORD, DWORD, DWO > 2150 BOOL CreatePrivateObjectSecurity(PSECURITY_DESCRIPTOR, PSECURITY > 2151 BOOL CreateProcessAsUserA(HANDLE, LPCSTR, LPSTR, LPSECURITY_ATTR > 2152 BOOL CreateProcessAsUserW(HANDLE, LPCWSTR, LPWSTR, LPSECURITY_AT > 2153 HANDLE CreateRemoteThread(HANDLE, LPSECURITY_ATTRIBUTES, DWORD, > 2154 DWORD CreateTapePartition(HANDLE, DWORD, DWORD, DWORD); > 2155 BOOL DefineDosDeviceA(DWORD, LPCSTR, LPCSTR); > 2156 BOOL DefineDosDeviceW(DWORD, LPCWSTR, LPCWSTR); > 2157 BOOL DeleteAce(PACL, DWORD); > 2158 BOOL DeregisterEventSource(HANDLE); > 2159 BOOL DestroyPrivateObjectSecurity(PSECURITY_DESCRIPTOR*); > 2160 BOOL DeviceIoControl(HANDLE, DWORD, PVOID, DWORD, PVOID, DWORD, > 2161 BOOL DisconnectNamedPipe(HANDLE); > 2162 BOOL DuplicateToken(HANDLE, SECURITY_IMPERSONATION_LEVEL, PHANDL > 2163 BOOL DuplicateTokenEx(HANDLE, DWORD, LPSECURITY_ATTRIBUTES, SECU > 2164 BOOL EqualPrefixSid(PSID, PSID); > 2165 BOOL EqualSid(PSID, PSID); > 2166 DWORD EraseTape(HANDLE, DWORD, BOOL); > 2167 HANDLE FindFirstFileExA(LPCSTR, FINDEX_INFO_LEVELS, PVOID, FINDE > 2168 HANDLE FindFirstFileExW(LPCWSTR, FINDEX_INFO_LEVELS, PVOID, FIND > 2169 BOOL FindFirstFreeAce(PACL, PVOID*); > 2170 PVOID FreeSid(PSID); > 2171 BOOL GetAce(PACL, DWORD, LPVOID*); > 2172 BOOL GetAclInformation(PACL, PVOID, DWORD, ACL_INFORMATION_CLASS > 2173 BOOL GetBinaryTypeA(LPCSTR, PDWORD); > 2174 BOOL GetBinaryTypeW(LPCWSTR, PDWORD); > 2175 DWORD GetCompressedFileSizeA(LPCSTR, PDWORD); > 2176 DWORD GetCompressedFileSizeW(LPCWSTR, PDWORD); > 2177 BOOL GetCurrentHwProfileA(LPHW_PROFILE_INFOA); > 2178 BOOL GetCurrentHwProfileW(LPHW_PROFILE_INFOW); > 2179 BOOL GetFileSecurityA(LPCSTR, SECURITY_INFORMATION, PSECURITY_DE > 2180 BOOL GetFileSecurityW(LPCWSTR, SECURITY_INFORMATION, PSECURITY_D > 2181 BOOL GetHandleInformation(HANDLE, PDWORD); > 2182 BOOL GetKernelObjectSecurity(HANDLE, SECURITY_INFORMATION, PSECU > 2183 DWORD GetLengthSid(PSID); > 2184 BOOL GetNumberOfEventLogRecords(HANDLE, PDWORD); > 2185 BOOL GetOldestEventLogRecord(HANDLE, PDWORD); > 2186 BOOL GetPrivateObjectSecurity(PSECURITY_DESCRIPTOR, SECURITY_INF > 2187 BOOL GetProcessPriorityBoost(HANDLE, PBOOL); > 2188 BOOL GetProcessShutdownParameters(PDWORD, PDWORD); > 2189 BOOL GetProcessTimes(HANDLE, LPFILETIME, LPFILETIME, LPFILETIME, > 2190 HWINSTA GetProcessWindowStation(); > 2191 BOOL GetProcessWorkingSetSize(HANDLE, PSIZE_T, PSIZE_T); > 2192 BOOL GetQueuedCompletionStatus(HANDLE, PDWORD, PULONG_PTR, LPOVE > 2193 BOOL GetSecurityDescriptorControl(PSECURITY_DESCRIPTOR, PSECURIT > 2194 BOOL GetSecurityDescriptorDacl(PSECURITY_DESCRIPTOR, LPBOOL, PAC > 2195 BOOL GetSecurityDescriptorGroup(PSECURITY_DESCRIPTOR, PSID*, LPB > 2196 DWORD GetSecurityDescriptorLength(PSECURITY_DESCRIPTOR); > 2197 BOOL GetSecurityDescriptorOwner(PSECURITY_DESCRIPTOR, PSID*, LPB > 2198 BOOL GetSecurityDescriptorSacl(PSECURITY_DESCRIPTOR, LPBOOL, PAC > 2199 PSID_IDENTIFIER_AUTHORITY GetSidIdentifierAuthority(PSID); > 2200 DWORD GetSidLengthRequired(UCHAR); > 2201 PDWORD GetSidSubAuthority(PSID, DWORD); > 2202 PUCHAR GetSidSubAuthorityCount(PSID); > 2203 DWORD GetTapeParameters(HANDLE, DWORD, PDWORD, PVOID); > 2204 DWORD GetTapePosition(HANDLE, DWORD, PDWORD, PDWORD, PDWORD); 2037 extern(Windows) export DWORD GetTapeStatus( | 2205 DWORD GetTapeStatus(HANDLE); 2038 HANDLE hDevice); < 2039 < > 2206 BOOL GetThreadPriorityBoost(HANDLE, PBOOL); > 2207 BOOL GetThreadTimes(HANDLE, LPFILETIME, LPFILETIME, LPFILETIME, > 2208 BOOL GetTokenInformation(HANDLE, TOKEN_INFORMATION_CLASS, PVOID, > 2209 BOOL ImpersonateLoggedOnUser(HANDLE); > 2210 BOOL ImpersonateNamedPipeClient(HANDLE); > 2211 BOOL ImpersonateSelf(SECURITY_IMPERSONATION_LEVEL); > 2212 BOOL InitializeAcl(PACL, DWORD, DWORD); > 2213 DWORD SetCriticalSectionSpinCount(LPCRITICAL_SECTION, DWORD); > 2214 BOOL InitializeSecurityDescriptor(PSECURITY_DESCRIPTOR, DWORD); > 2215 BOOL InitializeSid(PSID, PSID_IDENTIFIER_AUTHORITY, BYTE); > 2216 BOOL IsProcessorFeaturePresent(DWORD); > 2217 BOOL IsTextUnicode(PCVOID, int, LPINT); > 2218 BOOL IsValidAcl(PACL); > 2219 BOOL IsValidSecurityDescriptor(PSECURITY_DESCRIPTOR); > 2220 BOOL IsValidSid(PSID); > 2221 BOOL LockFileEx(HANDLE, DWORD, DWORD, DWORD, DWORD, LPOVERLAPPED > 2222 BOOL LogonUserA(LPSTR, LPSTR, LPSTR, DWORD, DWORD, PHANDLE); > 2223 BOOL LogonUserW(LPWSTR, LPWSTR, LPWSTR, DWORD, DWORD, PHANDLE); > 2224 BOOL LookupAccountNameA(LPCSTR, LPCSTR, PSID, PDWORD, LPSTR, PDW > 2225 BOOL LookupAccountNameW(LPCWSTR, LPCWSTR, PSID, PDWORD, LPWSTR, > 2226 BOOL LookupAccountSidA(LPCSTR, PSID, LPSTR, PDWORD, LPSTR, PDWOR > 2227 BOOL LookupAccountSidW(LPCWSTR, PSID, LPWSTR, PDWORD, LPWSTR, PD > 2228 BOOL LookupPrivilegeDisplayNameA(LPCSTR, LPCSTR, LPSTR, PDWORD, > 2229 BOOL LookupPrivilegeDisplayNameW(LPCWSTR, LPCWSTR, LPWSTR, PDWOR > 2230 BOOL LookupPrivilegeNameA(LPCSTR, PLUID, LPSTR, PDWORD); > 2231 BOOL LookupPrivilegeNameW(LPCWSTR, PLUID, LPWSTR, PDWORD); > 2232 BOOL LookupPrivilegeValueA(LPCSTR, LPCSTR, PLUID); > 2233 BOOL LookupPrivilegeValueW(LPCWSTR, LPCWSTR, PLUID); > 2234 BOOL MakeAbsoluteSD(PSECURITY_DESCRIPTOR, PSECURITY_DESCRIPTOR, > 2235 BOOL MakeSelfRelativeSD(PSECURITY_DESCRIPTOR, PSECURITY_DESCRIPT > 2236 VOID MapGenericMask(PDWORD, PGENERIC_MAPPING); > 2237 BOOL MoveFileExA(LPCSTR, LPCSTR, DWORD); > 2238 BOOL MoveFileExW(LPCWSTR, LPCWSTR, DWORD); > 2239 BOOL NotifyChangeEventLog(HANDLE, HANDLE); > 2240 BOOL ObjectCloseAuditAlarmA(LPCSTR, PVOID, BOOL); > 2241 BOOL ObjectCloseAuditAlarmW(LPCWSTR, PVOID, BOOL); > 2242 BOOL ObjectDeleteAuditAlarmA(LPCSTR, PVOID, BOOL); > 2243 BOOL ObjectDeleteAuditAlarmW(LPCWSTR, PVOID, BOOL); > 2244 BOOL ObjectOpenAuditAlarmA(LPCSTR, PVOID, LPSTR, LPSTR, PSECURIT > 2245 BOOL ObjectOpenAuditAlarmW(LPCWSTR, PVOID, LPWSTR, LPWSTR, PSECU > 2246 BOOL ObjectPrivilegeAuditAlarmA(LPCSTR, PVOID, HANDLE, DWORD, PP > 2247 BOOL ObjectPrivilegeAuditAlarmW(LPCWSTR, PVOID, HANDLE, DWORD, P > 2248 HANDLE OpenBackupEventLogA(LPCSTR, LPCSTR); > 2249 HANDLE OpenBackupEventLogW(LPCWSTR, LPCWSTR); > 2250 HANDLE OpenEventLogA(LPCSTR, LPCSTR); > 2251 HANDLE OpenEventLogW(LPCWSTR, LPCWSTR); > 2252 BOOL OpenProcessToken(HANDLE, DWORD, PHANDLE); > 2253 BOOL OpenThreadToken(HANDLE, DWORD, BOOL, PHANDLE); > 2254 BOOL PostQueuedCompletionStatus(HANDLE, DWORD, ULONG_PTR, LPOVER > 2255 DWORD PrepareTape(HANDLE, DWORD, BOOL); > 2256 BOOL PrivilegeCheck(HANDLE, PPRIVILEGE_SET, PBOOL); > 2257 BOOL PrivilegedServiceAuditAlarmA(LPCSTR, LPCSTR, HANDLE, PPRIVI > 2258 BOOL PrivilegedServiceAuditAlarmW(LPCWSTR, LPCWSTR, HANDLE, PPRI > 2259 BOOL ReadDirectoryChangesW(HANDLE, PVOID, DWORD, BOOL, DWORD, PD > 2260 BOOL ReadEventLogA(HANDLE, DWORD, DWORD, PVOID, DWORD, DWORD*, D > 2261 BOOL ReadEventLogW(HANDLE, DWORD, DWORD, PVOID, DWORD, DWORD*, D > 2262 BOOL ReadFileScatter(HANDLE, FILE_SEGMENT_ELEMENT*, DWORD, LPDWO > 2263 HANDLE RegisterEventSourceA (LPCSTR, LPCSTR); > 2264 HANDLE RegisterEventSourceW(LPCWSTR, LPCWSTR); > 2265 BOOL ReportEventA(HANDLE, WORD, WORD, DWORD, PSID, WORD, DWORD, > 2266 BOOL ReportEventW(HANDLE, WORD, WORD, DWORD, PSID, WORD, DWORD, > 2267 BOOL RevertToSelf(); > 2268 BOOL SetAclInformation(PACL, PVOID, DWORD, ACL_INFORMATION_CLASS > 2269 BOOL SetFileSecurityA(LPCSTR, SECURITY_INFORMATION, PSECURITY_DE > 2270 BOOL SetFileSecurityW(LPCWSTR, SECURITY_INFORMATION, PSECURITY_D > 2271 BOOL SetHandleInformation(HANDLE, DWORD, DWORD); > 2272 BOOL SetKernelObjectSecurity(HANDLE, SECURITY_INFORMATION, PSECU > 2273 BOOL SetPrivateObjectSecurity(SECURITY_INFORMATION, PSECURITY_DE > 2274 BOOL SetProcessAffinityMask(HANDLE, DWORD); > 2275 BOOL SetProcessPriorityBoost(HANDLE, BOOL); > 2276 BOOL SetProcessShutdownParameters(DWORD, DWORD); > 2277 BOOL SetProcessWorkingSetSize(HANDLE, SIZE_T, SIZE_T); > 2278 BOOL SetSecurityDescriptorDacl(PSECURITY_DESCRIPTOR, BOOL, PACL, > 2279 BOOL SetSecurityDescriptorGroup(PSECURITY_DESCRIPTOR, PSID, BOOL > 2280 BOOL SetSecurityDescriptorOwner(PSECURITY_DESCRIPTOR, PSID, BOOL > 2281 BOOL SetSecurityDescriptorSacl(PSECURITY_DESCRIPTOR, BOOL, PACL, > 2282 BOOL SetSystemTimeAdjustment(DWORD, BOOL); 2040 extern(Windows) export DWORD GetTapeParameters( | 2283 DWORD SetTapeParameters(HANDLE, DWORD, PVOID); 2041 HANDLE hDevice, < 2042 DWORD dwOperation, < 2043 LPDWORD lpdwSize, < 2044 LPVOID lpTapeInformation); < > 2284 DWORD SetTapePosition(HANDLE, DWORD, DWORD, DWORD, DWORD, BOOL); > 2285 BOOL SetThreadPriorityBoost(HANDLE, BOOL); > 2286 BOOL SetThreadToken(PHANDLE, HANDLE); > 2287 BOOL SetTokenInformation(HANDLE, TOKEN_INFORMATION_CLASS, PVOID, > 2288 DWORD SignalObjectAndWait(HANDLE, HANDLE, DWORD, BOOL); > 2289 BOOL SwitchToThread(); > 2290 BOOL SystemTimeToTzSpecificLocalTime(LPTIME_ZONE_INFORMATION, LP > 2291 BOOL TryEnterCriticalSection(LPCRITICAL_SECTION); > 2292 BOOL UnlockFileEx(HANDLE, DWORD, DWORD, DWORD, LPOVERLAPPED); > 2293 BOOL UpdateResourceA(HANDLE, LPCSTR, LPCSTR, WORD, PVOID, DWORD) > 2294 BOOL UpdateResourceW(HANDLE, LPCWSTR, LPCWSTR, WORD, PVOID, DWOR > 2295 BOOL WriteFileGather(HANDLE, FILE_SEGMENT_ELEMENT*, DWORD, LPDWO > 2296 DWORD WriteTapemark(HANDLE, DWORD, DWORD, BOOL); 2045 | 2297 2046 enum : uint { GET_TAPE_MEDIA_INFORMATION = 0 } < 2047 enum : uint { GET_TAPE_DRIVE_INFORMATION = 1 } < 2048 < 2049 extern(Windows) export DWORD SetTapeParameters( < > 2298 static if (_WIN32_WINNT >= 0x500) { > 2299 BOOL AddAccessAllowedAceEx(PACL, DWORD, DWORD, DWORD, PS > 2300 BOOL AddAccessDeniedAceEx(PACL, DWORD, DWORD, DWORD, PSI > 2301 PVOID AddVectoredExceptionHandler(ULONG, PVECTORED_EXCEP > 2302 BOOL AllocateUserPhysicalPages(HANDLE, PULONG_PTR, PULON > 2303 BOOL AssignProcessToJobObject(HANDLE, HANDLE); > 2304 BOOL ChangeTimerQueueTimer(HANDLE,HANDLE,ULONG,ULONG); > 2305 LPVOID CreateFiberEx(SIZE_T, SIZE_T, DWORD, LPFIBER_STAR > 2306 HANDLE CreateFileMappingA(HANDLE, LPSECURITY_ATTRIBUTES, > 2307 HANDLE CreateFileMappingW(HANDLE, LPSECURITY_ATTRIBUTES, > 2308 BOOL CreateHardLinkA(LPCSTR, LPCSTR, LPSECURITY_ATTRIBUT > 2309 BOOL CreateHardLinkW(LPCWSTR, LPCWSTR, LPSECURITY_ATTRIB > 2310 HANDLE CreateJobObjectA(LPSECURITY_ATTRIBUTES, LPCSTR); > 2311 HANDLE CreateJobObjectW(LPSECURITY_ATTRIBUTES, LPCWSTR); > 2312 BOOL CreateProcessWithLogonW(LPCWSTR, LPCWSTR, LPCWSTR, > 2313 HANDLE CreateTimerQueue(); > 2314 BOOL CreateTimerQueueTimer(PHANDLE, HANDLE, WAITORTIMERC > 2315 BOOL DeleteTimerQueue(HANDLE); > 2316 BOOL DeleteTimerQueueEx(HANDLE, HANDLE); > 2317 BOOL DeleteTimerQueueTimer(HANDLE, HANDLE, HANDLE); > 2318 BOOL DeleteVolumeMountPointA(LPCSTR); > 2319 BOOL DeleteVolumeMountPointW(LPCWSTR); > 2320 BOOL DnsHostnameToComputerNameA(LPCSTR, LPSTR, LPDWORD); > 2321 BOOL DnsHostnameToComputerNameW(LPCWSTR, LPWSTR, LPDWORD > 2322 BOOL EncryptFileA(LPCSTR); > 2323 BOOL EncryptFileW(LPCWSTR); > 2324 BOOL FileEncryptionStatusA(LPCSTR, LPDWORD); > 2325 BOOL FileEncryptionStatusW(LPCWSTR, LPDWORD); > 2326 HANDLE FindFirstVolumeA(LPCSTR, DWORD); > 2327 HANDLE FindFirstVolumeMountPointA(LPSTR, LPSTR, DWORD); > 2328 HANDLE FindFirstVolumeMountPointW(LPWSTR, LPWSTR, DWORD) > 2329 HANDLE FindFirstVolumeW(LPCWSTR, DWORD); > 2330 BOOL FindNextVolumeA(HANDLE, LPCSTR, DWORD); > 2331 BOOL FindNextVolumeW(HANDLE, LPWSTR, DWORD); > 2332 BOOL FindNextVolumeMountPointA(HANDLE, LPSTR, DWORD); > 2333 BOOL FindNextVolumeMountPointW(HANDLE, LPWSTR, DWORD); > 2334 BOOL FindVolumeClose(HANDLE); > 2335 BOOL FindVolumeMountPointClose(HANDLE); > 2336 BOOL FlushViewOfFile(PCVOID, DWORD); > 2337 BOOL FreeUserPhysicalPages(HANDLE, PULONG_PTR, PULONG_PT > 2338 BOOL GetComputerNameExA(COMPUTER_NAME_FORMAT, LPSTR, LPD > 2339 BOOL GetComputerNameExW(COMPUTER_NAME_FORMAT, LPWSTR, LP > 2340 BOOL GetFileSizeEx(HANDLE, PLARGE_INTEGER); > 2341 BOOL GetModuleHandleExA(DWORD, LPCSTR, HMODULE*); > 2342 BOOL GetModuleHandleExW(DWORD, LPCWSTR, HMODULE*); 2050 HANDLE hDevice, | 2343 HANDLE GetProcessHeap(); 2051 DWORD dwOperation, < 2052 LPVOID lpTapeInformation); < > 2344 DWORD GetProcessHeaps(DWORD, PHANDLE); > 2345 BOOL GetProcessIoCounters(HANDLE, PIO_COUNTERS); > 2346 BOOL GetSystemPowerStatus(LPSYSTEM_POWER_STATUS); > 2347 UINT GetSystemWindowsDirectoryA(LPSTR, UINT); > 2348 UINT GetSystemWindowsDirectoryW(LPWSTR, UINT); > 2349 BOOL GetVolumeNameForVolumeMountPointA(LPCSTR, LPSTR, DW > 2350 BOOL GetVolumeNameForVolumeMountPointW(LPCWSTR, LPWSTR, > 2351 BOOL GetVolumePathNameA(LPCSTR, LPSTR, DWORD); > 2352 BOOL GetVolumePathNameW(LPCWSTR, LPWSTR, DWORD); > 2353 BOOL GlobalMemoryStatusEx(LPMEMORYSTATUSEX); > 2354 BOOL IsBadCodePtr(FARPROC); > 2355 BOOL IsSystemResumeAutomatic(); > 2356 BOOL MapUserPhysicalPages(PVOID, ULONG_PTR, PULONG_PTR); > 2357 BOOL MapUserPhysicalPagesScatter(PVOID*, ULONG_PTR, PULO > 2358 PVOID MapViewOfFile(HANDLE, DWORD, DWORD, DWORD, DWORD); > 2359 PVOID MapViewOfFileEx(HANDLE, DWORD, DWORD, DWORD, DWORD > 2360 HANDLE OpenFileMappingA(DWORD, BOOL, LPCSTR); > 2361 HANDLE OpenFileMappingW(DWORD, BOOL, LPCWSTR); > 2362 BOOL ProcessIdToSessionId(DWORD, DWORD*); > 2363 BOOL QueryInformationJobObject(HANDLE, JOBOBJECTINFOCLAS > 2364 ULONG RemoveVectoredExceptionHandler(PVOID); > 2365 BOOL ReplaceFileA(LPCSTR, LPCSTR, LPCSTR, DWORD, LPVOID, > 2366 BOOL ReplaceFileW(LPCWSTR, LPCWSTR, LPCWSTR, DWORD, LPVO > 2367 BOOL SetComputerNameExA(COMPUTER_NAME_FORMAT, LPCSTR); > 2368 BOOL SetComputerNameExW(COMPUTER_NAME_FORMAT, LPCWSTR); > 2369 BOOL SetFilePointerEx(HANDLE, LARGE_INTEGER, PLARGE_INTE > 2370 BOOL SetInformationJobObject(HANDLE, JOBOBJECTINFOCLASS, > 2371 BOOL SetSecurityDescriptorControl(PSECURITY_DESCRIPTOR, > 2372 BOOL SetSystemPowerState(BOOL, BOOL); > 2373 EXECUTION_STATE SetThreadExecutionState(EXECUTION_STATE) > 2374 DWORD SetThreadIdealProcessor(HANDLE, DWORD); > 2375 BOOL SetVolumeMountPointA(LPCSTR, LPCSTR); > 2376 BOOL SetVolumeMountPointW(LPCWSTR, LPCWSTR); > 2377 BOOL TerminateJobObject(HANDLE, UINT); > 2378 BOOL UnmapViewOfFile(PVOID); > 2379 BOOL UnregisterWait(HANDLE); > 2380 BOOL UnregisterWaitEx(HANDLE, HANDLE); > 2381 BOOL VerifyVersionInfoA(LPOSVERSIONINFOEXA, DWORD, DWORD > 2382 BOOL VerifyVersionInfoW(LPOSVERSIONINFOEXW, DWORD, DWORD 2053 | 2383 } 2054 enum : uint { SET_TAPE_MEDIA_INFORMATION = 0 } < 2055 enum : uint { SET_TAPE_DRIVE_INFORMATION = 1 } < 2056 | 2384 2057 extern(Windows) export BOOL Beep( < 2058 DWORD dwFreq, < 2059 DWORD dwDuration); < > 2385 static if (_WIN32_WINNT >= 0x501) { > 2386 BOOL ActivateActCtx(HANDLE, ULONG_PTR*); > 2387 void AddRefActCtx(HANDLE); > 2388 BOOL CheckNameLegalDOS8Dot3A(LPCSTR, LPSTR, DWORD, PBOOL > 2389 BOOL CheckNameLegalDOS8Dot3W(LPCWSTR, LPSTR, DWORD, PBOO > 2390 BOOL CheckRemoteDebuggerPresent(HANDLE, PBOOL); > 2391 BOOL ConvertFiberToThread(); > 2392 HANDLE CreateActCtxA(PCACTCTXA); > 2393 HANDLE CreateActCtxW(PCACTCTXW); > 2394 HANDLE CreateMemoryResourceNotification(MEMORY_RESOURCE_ > 2395 BOOL DeactivateActCtx(DWORD, ULONG_PTR); > 2396 BOOL DebugActiveProcessStop(DWORD); > 2397 BOOL DebugBreakProcess(HANDLE); > 2398 BOOL DebugSetProcessKillOnExit(BOOL); > 2399 BOOL FindActCtxSectionGuid(DWORD, CPtr!(GUID), ULONG, CP > 2400 PACTCTX_SECTION_KEYED_DATA); > 2401 BOOL FindActCtxSectionStringA(DWORD, CPtr!(GUID), ULONG, > 2402 PACTCTX_SECTION_KEYED_DATA); > 2403 BOOL FindActCtxSectionStringW(DWORD, CPtr!(GUID), ULONG, > 2404 PACTCTX_SECTION_KEYED_DATA); > 2405 BOOL GetCurrentActCtx(HANDLE*); > 2406 VOID GetNativeSystemInfo(LPSYSTEM_INFO); > 2407 BOOL GetProcessHandleCount(HANDLE, PDWORD); > 2408 BOOL GetSystemRegistryQuota(PDWORD, PDWORD); > 2409 BOOL GetSystemTimes(LPFILETIME, LPFILETIME, LPFILETIME); > 2410 UINT GetSystemWow64DirectoryA(LPSTR, UINT); > 2411 UINT GetSystemWow64DirectoryW(LPWSTR, UINT); > 2412 BOOL GetThreadIOPendingFlag(HANDLE, PBOOL); > 2413 BOOL GetVolumePathNamesForVolumeNameA(LPCSTR, LPSTR, DWO > 2414 BOOL GetVolumePathNamesForVolumeNameW(LPCWSTR, LPWSTR, D > 2415 UINT GetWriteWatch(DWORD, PVOID, SIZE_T, PVOID*, PULONG_ > 2416 BOOL HeapQueryInformation(HANDLE, HEAP_INFORMATION_CLASS > 2417 BOOL HeapSetInformation(HANDLE, HEAP_INFORMATION_CLASS, > 2418 BOOL IsProcessInJob(HANDLE, HANDLE, PBOOL); > 2419 BOOL IsWow64Process(HANDLE, PBOOL); > 2420 BOOL QueryActCtxW(DWORD, HANDLE, PVOID, ULONG, PVOID, SI > 2421 BOOL QueryMemoryResourceNotification(HANDLE, PBOOL); > 2422 void ReleaseActCtx(HANDLE); > 2423 UINT ResetWriteWatch(LPVOID, SIZE_T); > 2424 BOOL SetFileShortNameA(HANDLE, LPCSTR); > 2425 BOOL SetFileShortNameW(HANDLE, LPCWSTR); > 2426 BOOL SetFileValidData(HANDLE, LONGLONG); > 2427 BOOL ZombifyActCtx(HANDLE); 2060 | 2428 } 2061 extern(Windows) export int MulDiv( < 2062 int nNumber, < 2063 int nNumerator, < 2064 int nDenominator); < 2065 | 2429 2066 extern(Windows) export VOID GetSystemTime( < 2067 LPSYSTEMTIME lpSystemTime); < > 2430 static if (_WIN32_WINNT >= 0x502) { > 2431 DWORD GetFirmwareEnvironmentVariableA(LPCSTR, LPCSTR, PV > 2432 DWORD GetFirmwareEnvironmentVariableW(LPCWSTR, LPCWSTR, > 2433 DWORD GetDllDirectoryA(DWORD, LPSTR); > 2434 DWORD GetDllDirectoryW(DWORD, LPWSTR); > 2435 DWORD GetProcessId(HANDLE); > 2436 HANDLE ReOpenFile(HANDLE, DWORD, DWORD, DWORD); > 2437 BOOL SetDllDirectoryA(LPCSTR); > 2438 BOOL SetDllDirectoryW(LPCWSTR); > 2439 BOOL SetFirmwareEnvironmentVariableA(LPCSTR, LPCSTR, PVO > 2440 BOOL SetFirmwareEnvironmentVariableW(LPCWSTR, LPCWSTR, P 2068 | 2441 } 2069 extern(Windows) export VOID GetSystemTimeAsFileTime( < 2070 LPFILETIME lpSystemTimeAsFileTime); < 2071 | 2442 } 2072 extern(Windows) export BOOL SetSystemTime( < 2073 SYSTEMTIME *lpSystemTime); < 2074 | 2443 2075 extern(Windows) export VOID GetLocalTime( < 2076 LPSYSTEMTIME lpSystemTime); < 2077 < 2078 extern(Windows) export BOOL SetLocalTime( < 2079 SYSTEMTIME *lpSystemTime); < 2080 < 2081 extern(Windows) export VOID GetSystemInfo( < 2082 LPSYSTEM_INFO lpSystemInfo); < 2083 < > 2444 // ??? 2084 // #if _WIN32_WINNT >= 0x0501 | 2445 static if (_WIN32_WINNT >= 0x510) { 2085 extern(Windows) export VOID GetNativeSystemInfo( < 2086 LPSYSTEM_INFO lpSystemInfo); < 2087 // #endif < > 2446 VOID RestoreLastError(DWORD); 2088 | 2447 } 2089 extern(Windows) export BOOL IsProcessorFeaturePresent( < 2090 DWORD ProcessorFeature); < 2091 < 2092 struct _TIME_ZONE_INFORMATION { < 2093 LONG Bias; < 2094 WCHAR StandardName[ 32 ]; < 2095 SYSTEMTIME StandardDate; < 2096 LONG StandardBias; < 2097 WCHAR DaylightName[ 32 ]; < 2098 SYSTEMTIME DaylightDate; < 2099 LONG DaylightBias; < 2100 } 2448 } 2101 alias _TIME_ZONE_INFORMATION TIME_ZONE_INFORMATION; < 2102 alias _TIME_ZONE_INFORMATION* PTIME_ZONE_INFORMATION; < > 2449 > 2450 2103 alias _TIME_ZONE_INFORMATION* LPTIME_ZONE_INFORMATION; | 2451 version (Unicode) { > 2452 alias STARTUPINFOW STARTUPINFO; > 2453 alias WIN32_FIND_DATAW WIN32_FIND_DATA; > 2454 alias ENUMRESLANGPROCW ENUMRESLANGPROC; > 2455 alias ENUMRESNAMEPROCW ENUMRESNAMEPROC; > 2456 alias ENUMRESTYPEPROCW ENUMRESTYPEPROC; > 2457 alias AddAtomW AddAtom; > 2458 alias BeginUpdateResourceW BeginUpdateResource; > 2459 alias BuildCommDCBW BuildCommDCB; > 2460 alias BuildCommDCBAndTimeoutsW BuildCommDCBAndTimeouts; > 2461 alias CallNamedPipeW CallNamedPipe; > 2462 alias CommConfigDialogW CommConfigDialog; > 2463 alias CopyFileW CopyFile; > 2464 alias CopyFileExW CopyFileEx; > 2465 alias CreateDirectoryW CreateDirectory; > 2466 alias CreateDirectoryExW CreateDirectoryEx; > 2467 alias CreateEventW CreateEvent; > 2468 alias CreateFileW CreateFile; > 2469 alias CreateMailslotW CreateMailslot; > 2470 alias CreateMutexW CreateMutex; > 2471 alias CreateProcessW CreateProcess; > 2472 alias CreateSemaphoreW CreateSemaphore; > 2473 alias DeleteFileW DeleteFile; > 2474 alias EndUpdateResourceW EndUpdateResource; > 2475 alias EnumResourceLanguagesW EnumResourceLanguages; > 2476 alias EnumResourceNamesW EnumResourceNames; > 2477 alias EnumResourceTypesW EnumResourceTypes; > 2478 alias ExpandEnvironmentStringsW ExpandEnvironmentStrings; > 2479 alias FatalAppExitW FatalAppExit; > 2480 alias FindAtomW FindAtom; > 2481 alias FindFirstChangeNotificationW FindFirstChangeNotification; > 2482 alias FindFirstFileW FindFirstFile; > 2483 alias FindNextFileW FindNextFile; > 2484 alias FindResourceW FindResource; > 2485 alias FindResourceExW FindResourceEx; > 2486 alias FormatMessageW FormatMessage; > 2487 alias FreeEnvironmentStringsW FreeEnvironmentStrings; > 2488 alias GetAtomNameW GetAtomName; > 2489 alias GetCommandLineW GetCommandLine; > 2490 alias GetComputerNameW GetComputerName; > 2491 alias GetCurrentDirectoryW GetCurrentDirectory; > 2492 alias GetDefaultCommConfigW GetDefaultCommConfig; > 2493 alias GetDiskFreeSpaceW GetDiskFreeSpace; > 2494 alias GetDiskFreeSpaceExW GetDiskFreeSpaceEx; > 2495 alias GetDriveTypeW GetDriveType; > 2496 alias GetEnvironmentStringsW GetEnvironmentStrings; > 2497 alias GetEnvironmentVariableW GetEnvironmentVariable; > 2498 alias GetFileAttributesW GetFileAttributes; > 2499 alias GetFullPathNameW GetFullPathName; > 2500 alias GetLogicalDriveStringsW GetLogicalDriveStrings; > 2501 alias GetModuleFileNameW GetModuleFileName; > 2502 alias GetModuleHandleW GetModuleHandle; > 2503 alias GetNamedPipeHandleStateW GetNamedPipeHandleState; > 2504 alias GetPrivateProfileIntW GetPrivateProfileInt; > 2505 alias GetPrivateProfileSectionW GetPrivateProfileSection; > 2506 alias GetPrivateProfileSectionNamesW GetPrivateProfileSectionNames; > 2507 alias GetPrivateProfileStringW GetPrivateProfileString; > 2508 alias GetPrivateProfileStructW GetPrivateProfileStruct; > 2509 alias GetProfileIntW GetProfileInt; > 2510 alias GetProfileSectionW GetProfileSection; > 2511 alias GetProfileStringW GetProfileString; > 2512 alias GetShortPathNameW GetShortPathName; > 2513 alias GetStartupInfoW GetStartupInfo; > 2514 alias GetSystemDirectoryW GetSystemDirectory; > 2515 alias GetTempFileNameW GetTempFileName; > 2516 alias GetTempPathW GetTempPath; > 2517 alias GetUserNameW GetUserName; > 2518 alias GetVersionExW GetVersionEx; > 2519 alias GetVolumeInformationW GetVolumeInformation; > 2520 alias GetWindowsDirectoryW GetWindowsDirectory; > 2521 alias GlobalAddAtomW GlobalAddAtom; > 2522 alias GlobalFindAtomW GlobalFindAtom; > 2523 alias GlobalGetAtomNameW GlobalGetAtomName; > 2524 alias IsBadStringPtrW IsBadStringPtr; > 2525 alias LoadLibraryW LoadLibrary; > 2526 alias LoadLibraryExW LoadLibraryEx; > 2527 alias lstrcatW lstrcat; > 2528 alias lstrcmpW lstrcmp; > 2529 alias lstrcmpiW lstrcmpi; > 2530 alias lstrcpyW lstrcpy; > 2531 alias lstrcpynW lstrcpyn; > 2532 alias lstrlenW lstrlen; > 2533 alias MoveFileW MoveFile; > 2534 alias OpenEventW OpenEvent; > 2535 alias OpenMutexW OpenMutex; > 2536 alias OpenSemaphoreW OpenSemaphore; > 2537 alias OutputDebugStringW OutputDebugString; > 2538 alias RemoveDirectoryW RemoveDirectory; > 2539 alias SearchPathW SearchPath; > 2540 alias SetComputerNameW SetComputerName; > 2541 alias SetCurrentDirectoryW SetCurrentDirectory; > 2542 alias SetDefaultCommConfigW SetDefaultCommConfig; > 2543 alias SetEnvironmentVariableW SetEnvironmentVariable; > 2544 alias SetFileAttributesW SetFileAttributes; > 2545 alias SetVolumeLabelW SetVolumeLabel; > 2546 alias WaitNamedPipeW WaitNamedPipe; > 2547 alias WritePrivateProfileSectionW WritePrivateProfileSection; > 2548 alias WritePrivateProfileStringW WritePrivateProfileString; > 2549 alias WritePrivateProfileStructW WritePrivateProfileStruct; > 2550 alias WriteProfileSectionW WriteProfileSection; > 2551 alias WriteProfileStringW WriteProfileString; > 2552 > 2553 static if (_WIN32_WINDOWS >= 0x410) { > 2554 alias CreateWaitableTimerW CreateWaitableTimer; > 2555 alias GetFileAttributesExW GetFileAttributesEx; > 2556 alias GetLongPathNameW GetLongPathName; > 2557 alias QueryDosDeviceW QueryDosDevice; > 2558 } > 2559 > 2560 static if (_WIN32_WINNT_ONLY) { > 2561 alias HW_PROFILE_INFOW HW_PROFILE_INFO; > 2562 alias AccessCheckAndAuditAlarmW AccessCheckAndAuditAlarm; > 2563 alias BackupEventLogW BackupEventLog; > 2564 alias ClearEventLogW ClearEventLog; > 2565 alias CreateNamedPipeW CreateNamedPipe; > 2566 alias CreateProcessAsUserW CreateProcessAsUser; > 2567 alias DefineDosDeviceW DefineDosDevice; > 2568 alias FindFirstFileExW FindFirstFileEx; > 2569 alias GetBinaryTypeW GetBinaryType; > 2570 alias GetCompressedFileSizeW GetCompressedFileSize; > 2571 alias GetFileSecurityW GetFileSecurity; > 2572 alias LogonUserW LogonUser; > 2573 alias LookupAccountNameW LookupAccountName; > 2574 alias LookupAccountSidW LookupAccountSid; > 2575 alias LookupPrivilegeDisplayNameW LookupPrivilegeDisplayName; > 2576 alias LookupPrivilegeNameW LookupPrivilegeName; > 2577 alias LookupPrivilegeValueW LookupPrivilegeValue; > 2578 alias MoveFileExW MoveFileEx; > 2579 alias ObjectCloseAuditAlarmW ObjectCloseAuditAlarm; > 2580 alias ObjectDeleteAuditAlarmW ObjectDeleteAuditAlarm; > 2581 alias ObjectOpenAuditAlarmW ObjectOpenAuditAlarm; > 2582 alias ObjectPrivilegeAuditAlarmW ObjectPrivilegeAuditAlarm; > 2583 alias OpenBackupEventLogW OpenBackupEventLog; > 2584 alias OpenEventLogW OpenEventLog; > 2585 alias PrivilegedServiceAuditAlarmW PrivilegedServiceAuditAlarm; > 2586 alias ReadEventLogW ReadEventLog; > 2587 alias RegisterEventSourceW RegisterEventSource; > 2588 alias ReportEventW ReportEvent; > 2589 alias SetFileSecurityW SetFileSecurity; > 2590 alias UpdateResourceW UpdateResource; 2104 2591 2105 extern(Windows) export BOOL SystemTimeToTzSpecificLocalTime( | 2592 static if (_WIN32_WINNT >= 0x500) { 2106 LPTIME_ZONE_INFORMATION lpTimeZoneInformation, | 2593 alias CreateFileMappingW CreateFileMapping; 2107 LPSYSTEMTIME lpUniversalTime, | 2594 alias CreateHardLinkW CreateHardLink; 2108 LPSYSTEMTIME lpLocalTime); | 2595 alias CreateJobObjectW CreateJobObject; > 2596 alias DeleteVolumeMountPointW DeleteVolumeMountPoint; > 2597 alias DnsHostnameToComputerNameW DnsHostnameToComputerNa > 2598 alias EncryptFileW EncryptFile; > 2599 alias FileEncryptionStatusW FileEncryptionStatus; > 2600 alias FindFirstVolumeW FindFirstVolume; > 2601 alias FindFirstVolumeMountPointW FindFirstVolumeMountPoi > 2602 alias FindNextVolumeW FindNextVolume; > 2603 alias FindNextVolumeMountPointW FindNextVolumeMountPoint > 2604 alias GetModuleHandleExW GetModuleHandleEx; > 2605 alias GetSystemWindowsDirectoryW GetSystemWindowsDirecto > 2606 alias GetVolumeNameForVolumeMountPointW GetVolumeNameFor > 2607 alias GetVolumePathNameW GetVolumePathName; > 2608 alias OpenFileMappingW OpenFileMapping; > 2609 alias ReplaceFileW ReplaceFile; > 2610 alias SetVolumeMountPointW SetVolumeMountPoint; > 2611 alias VerifyVersionInfoW VerifyVersionInfo; > 2612 } 2109 2613 2110 extern(Windows) export BOOL TzSpecificLocalTimeToSystemTime( | 2614 static if (_WIN32_WINNT >= 0x501) { 2111 LPTIME_ZONE_INFORMATION lpTimeZoneInformation, | 2615 alias ACTCTXW ACTCTX; 2112 LPSYSTEMTIME lpLocalTime, | 2616 alias CheckNameLegalDOS8Dot3W CheckNameLegalDOS8Dot3; 2113 LPSYSTEMTIME lpUniversalTime); | 2617 alias CreateActCtxW CreateActCtx; > 2618 alias FindActCtxSectionStringW FindActCtxSectionString; > 2619 alias GetSystemWow64DirectoryW GetSystemWow64Directory; > 2620 alias GetVolumePathNamesForVolumeNameW GetVolumePathName > 2621 alias SetFileShortNameW SetFileShortName; 2114 | 2622 } 2115 extern(Windows) export DWORD GetTimeZoneInformation( < 2116 LPTIME_ZONE_INFORMATION lpTimeZoneInformation); < 2117 2623 2118 extern(Windows) export BOOL SetTimeZoneInformation( | 2624 static if (_WIN32_WINNT >= 0x502) { 2119 TIME_ZONE_INFORMATION *lpTimeZoneInformation); | 2625 alias SetFirmwareEnvironmentVariableW SetFirmwareEnviron > 2626 alias SetDllDirectoryW SetDllDirectory; > 2627 alias GetDllDirectoryW GetDllDirectory; > 2628 } > 2629 } 2120 2630 2121 extern(Windows) export BOOL SystemTimeToFileTime( | 2631 } else { 2122 SYSTEMTIME *lpSystemTime, | 2632 alias STARTUPINFOA STARTUPINFO; 2123 LPFILETIME lpFileTime); | 2633 alias WIN32_FIND_DATAA WIN32_FIND_DATA; 2124 < > 2634 alias ENUMRESLANGPROCW ENUMRESLANGPROC; 2125 extern(Windows) export BOOL FileTimeToLocalFileTime( | 2635 alias ENUMRESNAMEPROCW ENUMRESNAMEPROC; 2126 FILETIME *lpFileTime, | 2636 alias ENUMRESTYPEPROCW ENUMRESTYPEPROC; 2127 LPFILETIME lpLocalFileTime); | 2637 alias AddAtomA AddAtom; > 2638 alias BeginUpdateResourceA BeginUpdateResource; > 2639 alias BuildCommDCBA BuildCommDCB; > 2640 alias BuildCommDCBAndTimeoutsA BuildCommDCBAndTimeouts; > 2641 alias CallNamedPipeA CallNamedPipe; > 2642 alias CommConfigDialogA CommConfigDialog; > 2643 alias CopyFileA CopyFile; > 2644 alias CopyFileExA CopyFileEx; > 2645 alias CreateDirectoryA CreateDirectory; > 2646 alias CreateDirectoryExA CreateDirectoryEx; > 2647 alias CreateEventA CreateEvent; > 2648 alias CreateFileA CreateFile; > 2649 alias CreateMailslotA CreateMailslot; > 2650 alias CreateMutexA CreateMutex; > 2651 alias CreateProcessA CreateProcess; > 2652 alias CreateSemaphoreA CreateSemaphore; > 2653 alias DeleteFileA DeleteFile; > 2654 alias EndUpdateResourceA EndUpdateResource; > 2655 alias EnumResourceLanguagesA EnumResourceLanguages; > 2656 alias EnumResourceNamesA EnumResourceNames; > 2657 alias EnumResourceTypesA EnumResourceTypes; > 2658 alias ExpandEnvironmentStringsA ExpandEnvironmentStrings; > 2659 alias FatalAppExitA FatalAppExit; > 2660 alias FindAtomA FindAtom; > 2661 alias FindFirstChangeNotificationA FindFirstChangeNotification; > 2662 alias FindFirstFileA FindFirstFile; > 2663 alias FindNextFileA FindNextFile; > 2664 alias FindResourceA FindResource; > 2665 alias FindResourceExA FindResourceEx; > 2666 alias FormatMessageA FormatMessage; > 2667 alias FreeEnvironmentStringsA FreeEnvironmentStrings; > 2668 alias GetAtomNameA GetAtomName; > 2669 alias GetCommandLineA GetCommandLine; > 2670 alias GetComputerNameA GetComputerName; > 2671 alias GetCurrentDirectoryA GetCurrentDirectory; > 2672 alias GetDefaultCommConfigA GetDefaultCommConfig; > 2673 alias GetDiskFreeSpaceA GetDiskFreeSpace; > 2674 alias GetDiskFreeSpaceExA GetDiskFreeSpaceEx; > 2675 alias GetDriveTypeA GetDriveType; > 2676 alias GetEnvironmentVariableA GetEnvironmentVariable; > 2677 alias GetFileAttributesA GetFileAttributes; > 2678 alias GetFullPathNameA GetFullPathName; > 2679 alias GetLogicalDriveStringsA GetLogicalDriveStrings; > 2680 alias GetNamedPipeHandleStateA GetNamedPipeHandleState; > 2681 alias GetModuleHandleA GetModuleHandle; > 2682 alias GetModuleFileNameA GetModuleFileName; > 2683 alias GetPrivateProfileIntA GetPrivateProfileInt; > 2684 alias GetPrivateProfileSectionA GetPrivateProfileSection; > 2685 alias GetPrivateProfileSectionNamesA GetPrivateProfileSectionNames; > 2686 alias GetPrivateProfileStringA GetPrivateProfileString; > 2687 alias GetPrivateProfileStructA GetPrivateProfileStruct; > 2688 alias GetProfileIntA GetProfileInt; > 2689 alias GetProfileSectionA GetProfileSection; > 2690 alias GetProfileStringA GetProfileString; > 2691 alias GetShortPathNameA GetShortPathName; > 2692 alias GetStartupInfoA GetStartupInfo; > 2693 alias GetSystemDirectoryA GetSystemDirectory; > 2694 alias GetTempFileNameA GetTempFileName; > 2695 alias GetTempPathA GetTempPath; > 2696 alias GetUserNameA GetUserName; > 2697 alias GetVersionExA GetVersionEx; > 2698 alias GetVolumeInformationA GetVolumeInformation; > 2699 alias GetWindowsDirectoryA GetWindowsDirectory; > 2700 alias GlobalAddAtomA GlobalAddAtom; > 2701 alias GlobalFindAtomA GlobalFindAtom; > 2702 alias GlobalGetAtomNameA GlobalGetAtomName; > 2703 alias IsBadStringPtrA IsBadStringPtr; > 2704 alias LoadLibraryA LoadLibrary; > 2705 alias LoadLibraryExA LoadLibraryEx; > 2706 alias lstrcatA lstrcat; > 2707 alias lstrcmpA lstrcmp; > 2708 alias lstrcmpiA lstrcmpi; > 2709 alias lstrcpyA lstrcpy; > 2710 alias lstrcpynA lstrcpyn; > 2711 alias lstrlenA lstrlen; > 2712 alias MoveFileA MoveFile; > 2713 alias OpenEventA OpenEvent; > 2714 alias OpenMutexA OpenMutex; > 2715 alias OpenSemaphoreA OpenSemaphore; > 2716 alias OutputDebugStringA OutputDebugString; > 2717 alias RemoveDirectoryA RemoveDirectory; > 2718 alias SearchPathA SearchPath; > 2719 alias SetComputerNameA SetComputerName; > 2720 alias SetCurrentDirectoryA SetCurrentDirectory; > 2721 alias SetDefaultCommConfigA SetDefaultCommConfig; > 2722 alias SetEnvironmentVariableA SetEnvironmentVariable; > 2723 alias SetFileAttributesA SetFileAttributes; > 2724 alias SetVolumeLabelA SetVolumeLabel; > 2725 alias WaitNamedPipeA WaitNamedPipe; > 2726 alias WritePrivateProfileSectionA WritePrivateProfileSection; > 2727 alias WritePrivateProfileStringA WritePrivateProfileString; > 2728 alias WritePrivateProfileStructA WritePrivateProfileStruct; > 2729 alias WriteProfileSectionA WriteProfileSection; > 2730 alias WriteProfileStringA WriteProfileString; 2128 2731 2129 extern(Windows) export BOOL LocalFileTimeToFileTime( | 2732 static if (_WIN32_WINDOWS >= 0x410) { 2130 FILETIME *lpLocalFileTime, | 2733 alias CreateWaitableTimerA CreateWaitableTimer; 2131 LPFILETIME lpFileTime); | 2734 alias GetFileAttributesExA GetFileAttributesEx; 2132 < > 2735 alias GetLongPathNameA GetLongPathName; 2133 extern(Windows) export BOOL FileTimeToSystemTime( | 2736 alias QueryDosDeviceA QueryDosDevice; 2134 FILETIME *lpFileTime, < 2135 LPSYSTEMTIME lpSystemTime); < 2136 | 2737 } 2137 extern(Windows) export LONG CompareFileTime( < 2138 FILETIME *lpFileTime1, < 2139 FILETIME *lpFileTime2); < 2140 < 2141 extern(Windows) export BOOL FileTimeToDosDateTime( < 2142 FILETIME *lpFileTime, < 2143 LPWORD lpFatDate, < 2144 LPWORD lpFatTime); < 2145 < 2146 extern(Windows) export BOOL DosDateTimeToFileTime( < 2147 WORD wFatDate, < 2148 WORD wFatTime, < 2149 LPFILETIME lpFileTime); < 2150 2738 2151 extern(Windows) export DWORD GetTickCount(); | 2739 static if (_WIN32_WINNT_ONLY) { 2152 < > 2740 alias HW_PROFILE_INFOA HW_PROFILE_INFO; 2153 extern(Windows) export BOOL SetSystemTimeAdjustment( | 2741 alias AccessCheckAndAuditAlarmA AccessCheckAndAuditAlarm; 2154 DWORD dwTimeAdjustment, | 2742 alias BackupEventLogA BackupEventLog; 2155 BOOL bTimeAdjustmentDisabled); | 2743 alias ClearEventLogA ClearEventLog; 2156 < > 2744 alias CreateNamedPipeA CreateNamedPipe; 2157 extern(Windows) export BOOL GetSystemTimeAdjustment( | 2745 alias CreateProcessAsUserA CreateProcessAsUser; 2158 PDWORD lpTimeAdjustment, | 2746 alias DefineDosDeviceA DefineDosDevice; 2159 PDWORD lpTimeIncrement, | 2747 alias FindFirstFileExA FindFirstFileEx; 2160 PBOOL lpTimeAdjustmentDisabled); | 2748 alias GetBinaryTypeA GetBinaryType; 2161 < > 2749 alias GetCompressedFileSizeA GetCompressedFileSize; 2162 // #if !defined(MIDL_PASS) | 2750 alias GetFileSecurityA GetFileSecurity; 2163 extern(Windows) export DWORD FormatMessageA( | 2751 alias LogonUserA LogonUser; 2164 DWORD dwFlags, | 2752 alias LookupAccountNameA LookupAccountName; 2165 LPCVOID lpSource, | 2753 alias LookupAccountSidA LookupAccountSid; 2166 DWORD dwMessageId, | 2754 alias LookupPrivilegeDisplayNameA LookupPrivilegeDisplayName; 2167 DWORD dwLanguageId, | 2755 alias LookupPrivilegeNameA LookupPrivilegeName; 2168 LPSTR lpBuffer, | 2756 alias LookupPrivilegeValueA LookupPrivilegeValue; 2169 DWORD nSize, | 2757 alias MoveFileExA MoveFileEx; 2170 va_list *Arguments); | 2758 alias ObjectCloseAuditAlarmA ObjectCloseAuditAlarm; 2171 extern(Windows) export DWORD FormatMessageW( | 2759 alias ObjectDeleteAuditAlarmA ObjectDeleteAuditAlarm; 2172 DWORD dwFlags, | 2760 alias ObjectOpenAuditAlarmA ObjectOpenAuditAlarm; 2173 LPCVOID lpSource, | 2761 alias ObjectPrivilegeAuditAlarmA ObjectPrivilegeAuditAlarm; 2174 DWORD dwMessageId, | 2762 alias OpenBackupEventLogA OpenBackupEventLog; 2175 DWORD dwLanguageId, | 2763 alias OpenEventLogA OpenEventLog; 2176 LPWSTR lpBuffer, | 2764 alias PrivilegedServiceAuditAlarmA PrivilegedServiceAuditAlarm; 2177 DWORD nSize, | 2765 alias ReadEventLogA ReadEventLog; 2178 va_list *Arguments); | 2766 alias RegisterEventSourceA RegisterEventSource; 2179 // #ifdef UNICODE | 2767 alias ReportEventA ReportEvent; 2180 alias FormatMessageW FormatMessage; | 2768 alias SetFileSecurityA SetFileSecurity; 2181 // #else | 2769 alias UpdateResourceA UpdateResource; 2182 // #... < 2183 // #endif // !UNICODE < 2184 // #endif < 2185 < 2186 enum : uint { FORMAT_MESSAGE_ALLOCATE_BUFFER = 0x00000100 } < 2187 enum : uint { FORMAT_MESSAGE_IGNORE_INSERTS = 0x00000200 } < 2188 enum : uint { FORMAT_MESSAGE_FROM_STRING = 0x00000400 } < 2189 enum : uint { FORMAT_MESSAGE_FROM_HMODULE = 0x00000800 } < 2190 enum : uint { FORMAT_MESSAGE_FROM_SYSTEM = 0x00001000 } < 2191 enum : uint { FORMAT_MESSAGE_ARGUMENT_ARRAY = 0x00002000 } < 2192 enum : uint { FORMAT_MESSAGE_MAX_WIDTH_MASK = 0x000000FF } < 2193 < 2194 extern(Windows) export BOOL CreatePipe( < 2195 PHANDLE hReadPipe, < 2196 PHANDLE hWritePipe, < 2197 LPSECURITY_ATTRIBUTES lpPipeAttributes, < 2198 DWORD nSize); < 2199 2770 2200 extern(Windows) export BOOL ConnectNamedPipe( | 2771 static if (_WIN32_WINNT >= 0x500) { 2201 HANDLE hNamedPipe, | 2772 alias CreateFileMappingA CreateFileMapping; 2202 LPOVERLAPPED lpOverlapped); | 2773 alias CreateHardLinkA CreateHardLink; 2203 < > 2774 alias CreateJobObjectA CreateJobObject; 2204 extern(Windows) export BOOL DisconnectNamedPipe( | 2775 alias DeleteVolumeMountPointA DeleteVolumeMountPoint; 2205 HANDLE hNamedPipe); | 2776 alias DnsHostnameToComputerNameA DnsHostnameToComputerNa 2206 < > 2777 alias EncryptFileA EncryptFile; 2207 extern(Windows) export BOOL SetNamedPipeHandleState( | 2778 alias FileEncryptionStatusA FileEncryptionStatus; 2208 HANDLE hNamedPipe, | 2779 alias FindFirstVolumeA FindFirstVolume; 2209 LPDWORD lpMode, | 2780 alias FindFirstVolumeMountPointA FindFirstVolumeMountPoi 2210 LPDWORD lpMaxCollectionCount, | 2781 alias FindNextVolumeA FindNextVolume; 2211 LPDWORD lpCollectDataTimeout); | 2782 alias FindNextVolumeMountPointA FindNextVolumeMountPoint 2212 < > 2783 alias GetModuleHandleExA GetModuleHandleEx; 2213 extern(Windows) export BOOL GetNamedPipeInfo( | 2784 alias GetSystemWindowsDirectoryA GetSystemWindowsDirecto 2214 HANDLE hNamedPipe, | 2785 alias GetVolumeNameForVolumeMountPointA GetVolumeNameFor 2215 LPDWORD lpFlags, | 2786 alias GetVolumePathNameA GetVolumePathName; 2216 LPDWORD lpOutBufferSize, | 2787 alias OpenFileMappingA OpenFileMapping; 2217 LPDWORD lpInBufferSize, | 2788 alias ReplaceFileA ReplaceFile; 2218 LPDWORD lpMaxInstances); | 2789 alias SetVolumeMountPointA SetVolumeMountPoint; > 2790 alias VerifyVersionInfoA VerifyVersionInfo; 2219 | 2791 } 2220 extern(Windows) export BOOL PeekNamedPipe( < 2221 HANDLE hNamedPipe, < 2222 LPVOID lpBuffer, < 2223 DWORD nBufferSize, < 2224 LPDWORD lpBytesRead, < 2225 LPDWORD lpTotalBytesAvail, < 2226 LPDWORD lpBytesLeftThisMessage); < 2227 < 2228 extern(Windows) export BOOL TransactNamedPipe( < 2229 HANDLE hNamedPipe, < 2230 LPVOID lpInBuffer, < 2231 DWORD nInBufferSize, < 2232 LPVOID lpOutBuffer, < 2233 DWORD nOutBufferSize, < 2234 LPDWORD lpBytesRead, < 2235 LPOVERLAPPED lpOverlapped); < 2236 < 2237 extern(Windows) export HANDLE CreateMailslotA( < 2238 LPCSTR lpName, < 2239 DWORD nMaxMessageSize, < 2240 DWORD lReadTimeout, < 2241 LPSECURITY_ATTRIBUTES lpSecurityAttributes); < 2242 extern(Windows) export HANDLE CreateMailslotW( < 2243 LPCWSTR lpName, < 2244 DWORD nMaxMessageSize, < 2245 DWORD lReadTimeout, < 2246 LPSECURITY_ATTRIBUTES lpSecurityAttributes); < 2247 // #ifdef UNICODE < 2248 alias CreateMailslotW CreateMailslot; < 2249 // #else < 2250 // #... < 2251 // #endif // !UNICODE < 2252 < 2253 extern(Windows) export BOOL GetMailslotInfo( < 2254 HANDLE hMailslot, < 2255 LPDWORD lpMaxMessageSize, < 2256 LPDWORD lpNextSize, < 2257 LPDWORD lpMessageCount, < 2258 LPDWORD lpReadTimeout); < 2259 2792 2260 extern(Windows) export BOOL SetMailslotInfo( | 2793 static if (_WIN32_WINNT >= 0x501) { 2261 HANDLE hMailslot, | 2794 alias ACTCTXA ACTCTX; 2262 DWORD lReadTimeout); | 2795 alias CheckNameLegalDOS8Dot3A CheckNameLegalDOS8Dot3; 2263 < > 2796 alias CreateActCtxA CreateActCtx; 2264 extern(Windows) export LPVOID MapViewOfFile( | 2797 alias FindActCtxSectionStringA FindActCtxSectionString; 2265 HANDLE hFileMappingObject, | 2798 alias GetSystemWow64DirectoryA GetSystemWow64Directory; 2266 DWORD dwDesiredAccess, | 2799 alias GetVolumePathNamesForVolumeNameA GetVolumePathName 2267 DWORD dwFileOffsetHigh, | 2800 alias SetFileShortNameA SetFileShortName; 2268 DWORD dwFileOffsetLow, < 2269 SIZE_T dwNumberOfBytesToMap); < 2270 | 2801 } 2271 extern(Windows) export BOOL FlushViewOfFile( < 2272 LPCVOID lpBaseAddress, < 2273 SIZE_T dwNumberOfBytesToFlush); < 2274 < 2275 extern(Windows) export BOOL UnmapViewOfFile( < 2276 LPCVOID lpBaseAddress); < 2277 < 2278 extern(Windows) export BOOL EncryptFileA( < 2279 LPCSTR lpFileName); < 2280 extern(Windows) export BOOL EncryptFileW( < 2281 LPCWSTR lpFileName); < 2282 // #ifdef UNICODE < 2283 alias EncryptFileW EncryptFile; < 2284 // #else < 2285 // #... < 2286 // #endif // !UNICODE < 2287 < 2288 extern(Windows) export BOOL DecryptFileA( < 2289 LPCSTR lpFileName, < 2290 DWORD dwReserved); < 2291 extern(Windows) export BOOL DecryptFileW( < 2292 LPCWSTR lpFileName, < 2293 DWORD dwReserved); < 2294 // #ifdef UNICODE < 2295 alias DecryptFileW DecryptFile; < 2296 // #else < 2297 // #... < 2298 // #endif // !UNICODE < 2299 < 2300 enum : uint { FILE_ENCRYPTABLE = 0 } < 2301 enum : uint { FILE_IS_ENCRYPTED = 1 } < 2302 enum : uint { FILE_SYSTEM_ATTR = 2 } < 2303 enum : uint { FILE_ROOT_DIR = 3 } < 2304 enum : uint { FILE_SYSTEM_DIR = 4 } < 2305 enum : uint { FILE_UNKNOWN = 5 } < 2306 enum : uint { FILE_SYSTEM_NOT_SUPPORT = 6 } < 2307 enum : uint { FILE_USER_DISALLOWED = 7 } < 2308 enum : uint { FILE_READ_ONLY = 8 } < 2309 enum : uint { FILE_DIR_DISALLOWED = 9 } < 2310 < 2311 extern(Windows) export BOOL FileEncryptionStatusA( < 2312 LPCSTR lpFileName, < 2313 LPDWORD lpStatus); < 2314 extern(Windows) export BOOL FileEncryptionStatusW( < 2315 LPCWSTR lpFileName, < 2316 LPDWORD lpStatus); < 2317 // #ifdef UNICODE < 2318 alias FileEncryptionStatusW FileEncryptionStatus; < 2319 // #else < 2320 // #... < 2321 // #endif // !UNICODE < 2322 < 2323 enum : uint { EFS_USE_RECOVERY_KEYS = 0x1 } < 2324 < 2325 extern(Windows) alias DWORD function( PBYTE pbData, PVOID pvCallbackContext, ULO < 2326 < 2327 extern(Windows) alias DWORD function( PBYTE pbData, PVOID pvCallbackContext, PUL < 2328 < 2329 enum : uint { CREATE_FOR_IMPORT = 1 } < 2330 enum : uint { CREATE_FOR_DIR = 2 } < 2331 enum : uint { OVERWRITE_HIDDEN = 4 } < 2332 < 2333 extern(Windows) export DWORD OpenEncryptedFileRawA( < 2334 LPCSTR lpFileName, < 2335 ULONG ulFlags, < 2336 PVOID * pvContext); < 2337 extern(Windows) export DWORD OpenEncryptedFileRawW( < 2338 LPCWSTR lpFileName, < 2339 ULONG ulFlags, < 2340 PVOID * pvContext); < 2341 // #ifdef UNICODE < 2342 alias OpenEncryptedFileRawW OpenEncryptedFileRaw; < 2343 // #else < 2344 // #... < 2345 // #endif // !UNICODE < 2346 < 2347 extern(Windows) export DWORD ReadEncryptedFileRaw( < 2348 PFE_EXPORT_FUNC pfExportCallback, < 2349 PVOID pvCallbackContext, < 2350 PVOID pvContext); < 2351 < 2352 extern(Windows) export DWORD WriteEncryptedFileRaw( < 2353 PFE_IMPORT_FUNC pfImportCallback, < 2354 PVOID pvCallbackContext, < 2355 PVOID pvContext); < 2356 < 2357 extern(Windows) export VOID CloseEncryptedFileRaw( < 2358 PVOID pvContext); < 2359 2802 2360 extern(Windows) export int lstrcmpA( < 2361 LPCSTR lpString1, < 2362 LPCSTR lpString2); < 2363 extern(Windows) export int lstrcmpW( < 2364 LPCWSTR lpString1, < 2365 LPCWSTR lpString2); < 2366 // #ifdef UNICODE < 2367 alias lstrcmpW lstrcmp; < 2368 // #else < 2369 // #... < 2370 // #endif // !UNICODE < 2371 < 2372 extern(Windows) export int lstrcmpiA( < 2373 LPCSTR lpString1, < 2374 LPCSTR lpString2); < 2375 extern(Windows) export int lstrcmpiW( < 2376 LPCWSTR lpString1, < 2377 LPCWSTR lpString2); < 2378 // #ifdef UNICODE < 2379 alias lstrcmpiW lstrcmpi; < 2380 // #else < 2381 // #... < 2382 // #endif // !UNICODE < 2383 < 2384 extern(Windows) export LPSTR lstrcpynA( < 2385 LPSTR lpString1, < 2386 LPCSTR lpString2, < 2387 int iMaxLength); < 2388 extern(Windows) export LPWSTR lstrcpynW( < 2389 LPWSTR lpString1, < 2390 LPCWSTR lpString2, < 2391 int iMaxLength); < 2392 // #ifdef UNICODE < 2393 alias lstrcpynW lstrcpyn; < 2394 // #else < 2395 // #... < 2396 // #endif // !UNICODE < 2397 < 2398 extern(Windows) export LPSTR lstrcpyA( < 2399 LPSTR lpString1, < 2400 LPCSTR lpString2); < 2401 extern(Windows) export LPWSTR lstrcpyW( < 2402 LPWSTR lpString1, < 2403 LPCWSTR lpString2); < 2404 // #ifdef UNICODE < 2405 alias lstrcpyW lstrcpy; < 2406 // #else < 2407 // #... < 2408 // #endif // !UNICODE < 2409 < 2410 extern(Windows) export LPSTR lstrcatA( < 2411 LPSTR lpString1, < 2412 LPCSTR lpString2); < 2413 extern(Windows) export LPWSTR lstrcatW( < 2414 LPWSTR lpString1, < 2415 LPCWSTR lpString2); < 2416 // #ifdef UNICODE < 2417 alias lstrcatW lstrcat; < 2418 // #else < 2419 // #... < 2420 // #endif // !UNICODE < 2421 < 2422 extern(Windows) export int lstrlenA( < 2423 LPCSTR lpString); < 2424 extern(Windows) export int lstrlenW( < 2425 LPCWSTR lpString); < 2426 // #ifdef UNICODE < 2427 alias lstrlenW lstrlen; < 2428 // #else < 2429 // #... < 2430 // #endif // !UNICODE < 2431 < 2432 extern(Windows) export HFILE OpenFile( < 2433 LPCSTR lpFileName, < 2434 LPOFSTRUCT lpReOpenBuff, < 2435 UINT uStyle); < 2436 < 2437 extern(Windows) export HFILE _lopen( < 2438 LPCSTR lpPathName, < 2439 int iReadWrite); < 2440 < 2441 extern(Windows) export HFILE _lcreat( < 2442 LPCSTR lpPathName, < 2443 int iAttribute); < 2444 < 2445 extern(Windows) export UINT _lread( < 2446 HFILE hFile, < 2447 LPVOID lpBuffer, < 2448 UINT uBytes); < 2449 < 2450 extern(Windows) export UINT _lwrite( < 2451 HFILE hFile, < 2452 LPCSTR lpBuffer, < 2453 UINT uBytes); < 2454 < 2455 extern(Windows) export int _hread( < 2456 HFILE hFile, < 2457 LPVOID lpBuffer, < 2458 int lBytes); < 2459 < 2460 extern(Windows) export int _hwrite( < 2461 HFILE hFile, < 2462 LPCSTR lpBuffer, < 2463 int lBytes); < 2464 < 2465 extern(Windows) export HFILE _lclose( < 2466 HFILE hFile); < 2467 < 2468 extern(Windows) export LONG _llseek( < 2469 HFILE hFile, < 2470 LONG lOffset, < 2471 int iOrigin); < 2472 < 2473 extern(Windows) export BOOL IsTextUnicode( < 2474 VOID* lpBuffer, < 2475 int cb, < 2476 LPINT lpi); < 2477 < 2478 extern(Windows) export DWORD TlsAlloc(); < 2479 < 2480 enum : uint { TLS_OUT_OF_INDEXES = cast(DWORD)0xFFFFFFFF } < 2481 < 2482 extern(Windows) export LPVOID TlsGetValue( < 2483 DWORD dwTlsIndex); < 2484 < 2485 extern(Windows) export BOOL TlsSetValue( < 2486 DWORD dwTlsIndex, < 2487 LPVOID lpTlsValue); < 2488 < 2489 extern(Windows) export BOOL TlsFree( < 2490 DWORD dwTlsIndex); < 2491 < 2492 extern(Windows) alias VOID function( DWORD dwErrorCode, DWORD dwNumberOfBytesTra < 2493 < 2494 extern(Windows) export DWORD SleepEx( < 2495 DWORD dwMilliseconds, < 2496 BOOL bAlertable); < 2497 < 2498 extern(Windows) export DWORD WaitForSingleObjectEx( < 2499 HANDLE hHandle, < 2500 DWORD dwMilliseconds, < 2501 BOOL bAlertable); < 2502 < 2503 extern(Windows) export DWORD WaitForMultipleObjectsEx( < 2504 DWORD nCount, < 2505 HANDLE *lpHandles, < 2506 BOOL bWaitAll, < 2507 DWORD dwMilliseconds, < 2508 BOOL bAlertable); < 2509 < 2510 // #if(_WIN32_WINNT >= 0x0400) | 2803 static if (_WIN32_WINNT >= 0x502) { 2511 extern(Windows) export DWORD SignalObjectAndWait( < 2512 HANDLE hObjectToSignal, < 2513 HANDLE hObjectToWaitOn, < 2514 DWORD dwMilliseconds, < 2515 BOOL bAlertable); < 2516 // #endif /* _WIN32_WINNT >= 0x0400 */ < > 2804 alias GetDllDirectoryA GetDllDirectory; > 2805 alias SetDllDirectoryA SetDllDirectory; > 2806 alias SetFirmwareEnvironmentVariableA SetFirmwareEnviron 2517 | 2807 } 2518 extern(Windows) export BOOL ReadFileEx( < 2519 HANDLE hFile, < 2520 LPVOID lpBuffer, < 2521 DWORD nNumberOfBytesToRead, < 2522 LPOVERLAPPED lpOverlapped, < 2523 LPOVERLAPPED_COMPLETION_ROUTINE lpCompletionRoutine); < 2524 | 2808 } 2525 extern(Windows) export BOOL WriteFileEx( < 2526 HANDLE hFile, < 2527 LPCVOID lpBuffer, < 2528 DWORD nNumberOfBytesToWrite, < 2529 LPOVERLAPPED lpOverlapped, < 2530 LPOVERLAPPED_COMPLETION_ROUTINE lpCompletionRoutine); < 2531 < 2532 extern(Windows) export BOOL BackupRead( < 2533 HANDLE hFile, < 2534 LPBYTE lpBuffer, < 2535 DWORD nNumberOfBytesToRead, < 2536 LPDWORD lpNumberOfBytesRead, < 2537 BOOL bAbort, < 2538 BOOL bProcessSecurity, < 2539 LPVOID *lpContext); < 2540 < 2541 extern(Windows) export BOOL BackupSeek( < 2542 HANDLE hFile, < 2543 DWORD dwLowBytesToSeek, < 2544 DWORD dwHighBytesToSeek, < 2545 LPDWORD lpdwLowByteSeeked, < 2546 LPDWORD lpdwHighByteSeeked, < 2547 LPVOID *lpContext); < 2548 < 2549 extern(Windows) export BOOL BackupWrite( < 2550 HANDLE hFile, < 2551 LPBYTE lpBuffer, < 2552 DWORD nNumberOfBytesToWrite, < 2553 LPDWORD lpNumberOfBytesWritten, < 2554 BOOL bAbort, < 2555 BOOL bProcessSecurity, < 2556 LPVOID *lpContext); < 2557 < 2558 struct _WIN32_STREAM_ID { < 2559 DWORD dwStreamId ; < 2560 DWORD dwStreamAttributes ; < 2561 LARGE_INTEGER Size ; < 2562 DWORD dwStreamNameSize ; < 2563 WCHAR cStreamName[ ANYSIZE_ARRAY ] ; < 2564 } 2809 } 2565 alias _WIN32_STREAM_ID WIN32_STREAM_ID; < 2566 alias _WIN32_STREAM_ID* LPWIN32_STREAM_ID; < 2567 2810 2568 enum : uint { BACKUP_INVALID = 0x00000000 } | 2811 alias STARTUPINFO* LPSTARTUPINFO; 2569 enum : uint { BACKUP_DATA = 0x00000001 } | 2812 alias WIN32_FIND_DATA* LPWIN32_FIND_DATA; 2570 enum : uint { BACKUP_EA_DATA = 0x00000002 } < 2571 enum : uint { BACKUP_SECURITY_DATA = 0x00000003 } < 2572 enum : uint { BACKUP_ALTERNATE_DATA = 0x00000004 } < 2573 enum : uint { BACKUP_LINK = 0x00000005 } < 2574 enum : uint { BACKUP_PROPERTY_DATA = 0x00000006 } < 2575 enum : uint { BACKUP_OBJECT_ID = 0x00000007 } < 2576 enum : uint { BACKUP_REPARSE_DATA = 0x00000008 } < 2577 enum : uint { BACKUP_SPARSE_BLOCK = 0x00000009 } < 2578 < 2579 enum : uint { STREAM_NORMAL_ATTRIBUTE = 0x00000000 } < 2580 enum : uint { STREAM_MODIFIED_WHEN_READ = 0x00000001 } < 2581 enum : uint { STREAM_CONTAINS_SECURITY = 0x00000002 } < 2582 enum : uint { STREAM_CONTAINS_PROPERTIES = 0x00000004 } < 2583 enum : uint { STREAM_SPARSE_ATTRIBUTE = 0x00000008 } < 2584 < 2585 extern(Windows) export BOOL ReadFileScatter( < 2586 HANDLE hFile, < 2587 FILE_SEGMENT_ELEMENT aSegmentArray[], < 2588 DWORD nNumberOfBytesToRead, < 2589 LPDWORD lpReserved, < 2590 LPOVERLAPPED lpOverlapped); < 2591 < 2592 extern(Windows) export BOOL WriteFileGather( < 2593 HANDLE hFile, < 2594 FILE_SEGMENT_ELEMENT aSegmentArray[], < 2595 DWORD nNumberOfBytesToWrite, < 2596 LPDWORD lpReserved, < 2597 LPOVERLAPPED lpOverlapped); < 2598 < 2599 enum : uint { STARTF_USESHOWWINDOW = 0x00000001 } < 2600 enum : uint { STARTF_USESIZE = 0x00000002 } < 2601 enum : uint { STARTF_USEPOSITION = 0x00000004 } < 2602 enum : uint { STARTF_USECOUNTCHARS = 0x00000008 } < 2603 enum : uint { STARTF_USEFILLATTRIBUTE = 0x00000010 } < 2604 enum : uint { STARTF_RUNFULLSCREEN = 0x00000020 } < 2605 enum : uint { STARTF_FORCEONFEEDBACK = 0x00000040 } < 2606 enum : uint { STARTF_FORCEOFFFEEDBACK = 0x00000080 } < 2607 enum : uint { STARTF_USESTDHANDLES = 0x00000100 } < 2608 < 2609 // #if(WINVER >= 0x0400) < 2610 2813 2611 enum : uint { STARTF_USEHOTKEY = 0x00000200 } < 2612 // #endif /* WINVER >= 0x0400 */ < 2613 < 2614 struct _STARTUPINFOA { < 2615 DWORD cb; < 2616 LPSTR lpReserved; < 2617 LPSTR lpDesktop; < 2618 LPSTR lpTitle; < 2619 DWORD dwX; < 2620 DWORD dwY; < 2621 DWORD dwXSize; < 2622 DWORD dwYSize; < 2623 DWORD dwXCountChars; < 2624 DWORD dwYCountChars; < 2625 DWORD dwFillAttribute; < 2626 DWORD dwFlags; < 2627 WORD wShowWindow; < 2628 WORD cbReserved2; < 2629 LPBYTE lpReserved2; < 2630 HANDLE hStdInput; < 2631 HANDLE hStdOutput; < 2632 HANDLE hStdError; < 2633 } < 2634 alias _STARTUPINFOA STARTUPINFOA; < 2635 alias _STARTUPINFOA* LPSTARTUPINFOA; < 2636 < 2637 struct _STARTUPINFOW { < 2638 DWORD cb; < 2639 LPWSTR lpReserved; < 2640 LPWSTR lpDesktop; < 2641 LPWSTR lpTitle; < 2642 DWORD dwX; < 2643 DWORD dwY; < 2644 DWORD dwXSize; < 2645 DWORD dwYSize; < 2646 DWORD dwXCountChars; < 2647 DWORD dwYCountChars; < 2648 DWORD dwFillAttribute; < 2649 DWORD dwFlags; < 2650 WORD wShowWindow; < 2651 WORD cbReserved2; < 2652 LPBYTE lpReserved2; < 2653 HANDLE hStdInput; < 2654 HANDLE hStdOutput; < 2655 HANDLE hStdError; < 2656 } < 2657 alias _STARTUPINFOW STARTUPINFOW; < 2658 alias _STARTUPINFOW* LPSTARTUPINFOW; < 2659 < 2660 // #ifdef UNICODE < 2661 alias STARTUPINFOW STARTUPINFO; < 2662 alias LPSTARTUPINFOW LPSTARTUPINFO; < 2663 // #else < 2664 // ... < 2665 // #endif // UNICODE < 2666 < 2667 enum : uint { SHUTDOWN_NORETRY = 0x00000001 } < 2668 < 2669 struct _WIN32_FIND_DATAA { < 2670 DWORD dwFileAttributes; < 2671 FILETIME ftCreationTime; < 2672 FILETIME ftLastAccessTime; < 2673 FILETIME ftLastWriteTime; < 2674 DWORD nFileSizeHigh; < 2675 DWORD nFileSizeLow; < 2676 DWORD dwReserved0; < 2677 DWORD dwReserved1; < 2678 CHAR cFileName[ MAX_PATH ]; < 2679 CHAR cAlternateFileName[ 14 ]; < 2680 // #ifdef _MAC < 2681 // ... < 2682 // #endif < 2683 } < 2684 alias _WIN32_FIND_DATAA WIN32_FIND_DATAA; < 2685 alias _WIN32_FIND_DATAA* PWIN32_FIND_DATAA; < 2686 alias _WIN32_FIND_DATAA* LPWIN32_FIND_DATAA; < 2687 < 2688 struct _WIN32_FIND_DATAW { < 2689 DWORD dwFileAttributes; < 2690 FILETIME ftCreationTime; < 2691 FILETIME ftLastAccessTime; < 2692 FILETIME ftLastWriteTime; < 2693 DWORD nFileSizeHigh; < 2694 DWORD nFileSizeLow; < 2695 DWORD dwReserved0; < 2696 DWORD dwReserved1; < 2697 WCHAR cFileName[ MAX_PATH ]; < 2698 WCHAR cAlternateFileName[ 14 ]; < 2699 // #ifdef _MAC < 2700 // ... < 2701 // #endif < 2702 } < 2703 alias _WIN32_FIND_DATAW WIN32_FIND_DATAW; < 2704 alias _WIN32_FIND_DATAW* PWIN32_FIND_DATAW; < 2705 alias _WIN32_FIND_DATAW* LPWIN32_FIND_DATAW; < 2706 < 2707 // #ifdef UNICODE < 2708 alias WIN32_FIND_DATAW WIN32_FIND_DATA; < 2709 alias PWIN32_FIND_DATAW PWIN32_FIND_DATA; < 2710 alias LPWIN32_FIND_DATAW LPWIN32_FIND_DATA; < 2711 // #else < 2712 // ... < 2713 // #endif // UNICODE < 2714 < 2715 struct _WIN32_FILE_ATTRIBUTE_DATA { < 2716 DWORD dwFileAttributes; < 2717 FILETIME ftCreationTime; < 2718 FILETIME ftLastAccessTime; < 2719 FILETIME ftLastWriteTime; < 2720 DWORD nFileSizeHigh; < 2721 DWORD nFileSizeLow; < 2722 } < 2723 alias _WIN32_FILE_ATTRIBUTE_DATA WIN32_FILE_ATTRIBUTE_DATA; < 2724 alias _WIN32_FILE_ATTRIBUTE_DATA* LPWIN32_FILE_ATTRIBUTE_DATA; < 2725 < 2726 extern(Windows) export HANDLE CreateMutexA( < 2727 LPSECURITY_ATTRIBUTES lpMutexAttributes, < 2728 BOOL bInitialOwner, < 2729 LPCSTR lpName); < 2730 extern(Windows) export HANDLE CreateMutexW( < 2731 LPSECURITY_ATTRIBUTES lpMutexAttributes, < 2732 BOOL bInitialOwner, < 2733 LPCWSTR lpName); < 2734 // #ifdef UNICODE < 2735 alias CreateMutexW CreateMutex; < 2736 // #else < 2737 // #... < 2738 // #endif // !UNICODE < 2739 < 2740 extern(Windows) export HANDLE OpenMutexA( < 2741 DWORD dwDesiredAccess, < 2742 BOOL bInheritHandle, < 2743 LPCSTR lpName); < 2744 extern(Windows) export HANDLE OpenMutexW( < 2745 DWORD dwDesiredAccess, < 2746 BOOL bInheritHandle, < 2747 LPCWSTR lpName); < 2748 // #ifdef UNICODE < 2749 alias OpenMutexW OpenMutex; < 2750 // #else < 2751 // #... < 2752 // #endif // !UNICODE < 2753 < 2754 extern(Windows) export HANDLE CreateEventA( < 2755 LPSECURITY_ATTRIBUTES lpEventAttributes, < 2756 BOOL bManualReset, < 2757 BOOL bInitialState, < 2758 LPCSTR lpName); < 2759 extern(Windows) export HANDLE CreateEventW( < 2760 LPSECURITY_ATTRIBUTES lpEventAttributes, < 2761 BOOL bManualReset, < 2762 BOOL bInitialState, < 2763 LPCWSTR lpName); < 2764 // #ifdef UNICODE < 2765 alias CreateEventW CreateEvent; < 2766 // #else < 2767 // #... < 2768 // #endif // !UNICODE < 2769 < 2770 extern(Windows) export HANDLE OpenEventA( < 2771 DWORD dwDesiredAccess, < 2772 BOOL bInheritHandle, < 2773 LPCSTR lpName); < 2774 extern(Windows) export HANDLE OpenEventW( < 2775 DWORD dwDesiredAccess, < 2776 BOOL bInheritHandle, < 2777 LPCWSTR lpName); < 2778 // #ifdef UNICODE < 2779 alias OpenEventW OpenEvent; < 2780 // #else < 2781 // #... < 2782 // #endif // !UNICODE < 2783 < 2784 extern(Windows) export HANDLE CreateSemaphoreA( < 2785 LPSECURITY_ATTRIBUTES lpSemaphoreAttributes, < 2786 LONG lInitialCount, < 2787 LONG lMaximumCount, < 2788 LPCSTR lpName); < 2789 extern(Windows) export HANDLE CreateSemaphoreW( < 2790 LPSECURITY_ATTRIBUTES lpSemaphoreAttributes, < 2791 LONG lInitialCount, < 2792 LONG lMaximumCount, < 2793 LPCWSTR lpName); < 2794 // #ifdef UNICODE < 2795 alias CreateSemaphoreW CreateSemaphore; < 2796 // #else < 2797 // #... < 2798 // #endif // !UNICODE < 2799 < 2800 extern(Windows) export HANDLE OpenSemaphoreA( < 2801 DWORD dwDesiredAccess, < 2802 BOOL bInheritHandle, < 2803 LPCSTR lpName); < 2804 extern(Windows) export HANDLE OpenSemaphoreW( < 2805 DWORD dwDesiredAccess, < 2806 BOOL bInheritHandle, < 2807 LPCWSTR lpName); < 2808 // #ifdef UNICODE < 2809 alias OpenSemaphoreW OpenSemaphore; < 2810 // #else < 2811 // #... < 2812 // #endif // !UNICODE < 2813 < 2814 // #if (_WIN32_WINNT >= 0x0400) || (_WIN32_WINDOWS > 0x0400) | 2814 static if (_WIN32_WINNT_ONLY) { 2815 extern(Windows) alias VOID function( LPVOID lpArgToCompletionRoutine, DWORD dwTi < > 2815 alias HW_PROFILE_INFO* LPHW_PROFILE_INFO; 2816 2816 2817 extern(Windows) export HANDLE CreateWaitableTimerA( < 2818 LPSECURITY_ATTRIBUTES lpTimerAttributes, < 2819 BOOL bManualReset, < 2820 LPCSTR lpTimerName); < 2821 extern(Windows) export HANDLE CreateWaitableTimerW( < 2822 LPSECURITY_ATTRIBUTES lpTimerAttributes, < 2823 BOOL bManualReset, < 2824 LPCWSTR lpTimerName); < 2825 // #ifdef UNICODE < 2826 alias CreateWaitableTimerW CreateWaitableTimer; < 2827 // #else < 2828 // #... < 2829 // #endif // !UNICODE < 2830 < 2831 extern(Windows) export HANDLE OpenWaitableTimerA( < 2832 DWORD dwDesiredAccess, < 2833 BOOL bInheritHandle, < 2834 LPCSTR lpTimerName); < 2835 extern(Windows) export HANDLE OpenWaitableTimerW( < 2836 DWORD dwDesiredAccess, < 2837 BOOL bInheritHandle, < 2838 LPCWSTR lpTimerName); < 2839 // #ifdef UNICODE < 2840 alias OpenWaitableTimerW OpenWaitableTimer; < 2841 // #else < 2842 // #... < 2843 // #endif // !UNICODE < 2844 < 2845 extern(Windows) export BOOL SetWaitableTimer( < 2846 HANDLE hTimer, < 2847 LARGE_INTEGER *lpDueTime, < 2848 LONG lPeriod, < 2849 PTIMERAPCROUTINE pfnCompletionRoutine, < 2850 LPVOID lpArgToCompletionRoutine, < 2851 BOOL fResume); < 2852 < 2853 extern(Windows) export BOOL CancelWaitableTimer( < 2854 HANDLE hTimer); < 2855 // #endif /* (_WIN32_WINNT >= 0x0400) || (_WIN32_WINDOWS > 0x0400) */ < 2856 < 2857 extern(Windows) export HANDLE CreateFileMappingA( < 2858 HANDLE hFile, < 2859 LPSECURITY_ATTRIBUTES lpFileMappingAttributes, < 2860 DWORD flProtect, < 2861 DWORD dwMaximumSizeHigh, < 2862 DWORD dwMaximumSizeLow, < 2863 LPCSTR lpName); < 2864 extern(Windows) export HANDLE CreateFileMappingW( < 2865 HANDLE hFile, < 2866 LPSECURITY_ATTRIBUTES lpFileMappingAttributes, < 2867 DWORD flProtect, < 2868 DWORD dwMaximumSizeHigh, < 2869 DWORD dwMaximumSizeLow, < 2870 LPCWSTR lpName); < 2871 // #ifdef UNICODE < 2872 alias CreateFileMappingW CreateFileMapping; < 2873 // #else < 2874 // #... < 2875 // #endif // !UNICODE < 2876 < 2877 extern(Windows) export HANDLE OpenFileMappingA( < 2878 DWORD dwDesiredAccess, < 2879 BOOL bInheritHandle, < 2880 LPCSTR lpName); < 2881 extern(Windows) export HANDLE OpenFileMappingW( < 2882 DWORD dwDesiredAccess, < 2883 BOOL bInheritHandle, < 2884 LPCWSTR lpName); < 2885 // #ifdef UNICODE < 2886 alias OpenFileMappingW OpenFileMapping; < 2887 // #else < 2888 // #... < 2889 // #endif // !UNICODE < 2890 < 2891 extern(Windows) export DWORD GetLogicalDriveStringsA( < 2892 DWORD nBufferLength, < 2893 LPSTR lpBuffer); < 2894 extern(Windows) export DWORD GetLogicalDriveStringsW( < 2895 DWORD nBufferLength, < 2896 LPWSTR lpBuffer); < 2897 // #ifdef UNICODE < 2898 alias GetLogicalDriveStringsW GetLogicalDriveStrings; < 2899 // #else < 2900 // #... < 2901 // #endif // !UNICODE < 2902 < 2903 // #if _WIN32_WINNT >= 0x0501 < 2904 < 2905 alias int _MEMORY_RESOURCE_NOTIFICATION_TYPE; < 2906 enum { < 2907 LowMemoryResourceNotification, < 2908 HighMemoryResourceNotification, < 2909 } < 2910 alias _MEMORY_RESOURCE_NOTIFICATION_TYPE MEMORY_RESOURCE_NOTIFICATION_TYPE; < 2911 < 2912 extern(Windows) export HANDLE CreateMemoryResourceNotification( < 2913 MEMORY_RESOURCE_NOTIFICATION_TYPE NotificationType); < 2914 < 2915 extern(Windows) export BOOL QueryMemoryResourceNotification( < 2916 HANDLE ResourceNotificationHandle, < 2917 PBOOL ResourceState); < 2918 < 2919 // #endif // _WIN32_WINNT >= 0x0501 < 2920 < 2921 extern(Windows) export HMODULE LoadLibraryA( < 2922 LPCSTR lpLibFileName); < 2923 extern(Windows) export HMODULE LoadLibraryW( < 2924 LPCWSTR lpLibFileName); < 2925 // #ifdef UNICODE < 2926 alias LoadLibraryW LoadLibrary; < 2927 // #else < 2928 // #... < 2929 // #endif // !UNICODE < 2930 < 2931 extern(Windows) export HMODULE LoadLibraryExA( < 2932 LPCSTR lpLibFileName, < 2933 HANDLE hFile, < 2934 DWORD dwFlags); < 2935 extern(Windows) export HMODULE LoadLibraryExW( < 2936 LPCWSTR lpLibFileName, < 2937 HANDLE hFile, < 2938 DWORD dwFlags); < 2939 // #ifdef UNICODE < 2940 alias LoadLibraryExW LoadLibraryEx; < 2941 // #else < 2942 // #... < 2943 // #endif // !UNICODE < 2944 < 2945 enum : uint { DONT_RESOLVE_DLL_REFERENCES = 0x00000001 } < 2946 enum : uint { LOAD_LIBRARY_AS_DATAFILE = 0x00000002 } < 2947 enum : uint { LOAD_WITH_ALTERED_SEARCH_PATH = 0x00000008 } < 2948 enum : uint { LOAD_IGNORE_CODE_AUTHZ_LEVEL = 0x00000010 } < 2949 < 2950 extern(Windows) export DWORD GetModuleFileNameA( < 2951 HMODULE hModule, < 2952 LPSTR lpFilename, < 2953 DWORD nSize); < 2954 extern(Windows) export DWORD GetModuleFileNameW( < 2955 HMODULE hModule, < 2956 LPWSTR lpFilename, < 2957 DWORD nSize); < 2958 // #ifdef UNICODE < 2959 alias GetModuleFileNameW GetModuleFileName; < 2960 // #else < 2961 // #... < 2962 // #endif // !UNICODE < 2963 < 2964 extern(Windows) export HMODULE GetModuleHandleA( < 2965 LPCSTR lpModuleName); < 2966 extern(Windows) export HMODULE GetModuleHandleW( < 2967 LPCWSTR lpModuleName); < 2968 // #ifdef UNICODE < 2969 alias GetModuleHandleW GetModuleHandle; < 2970 // #else < 2971 // #... < 2972 // #endif // !UNICODE < 2973 < 2974 // #if !defined(RC_INVOKED) < 2975 // #if _WIN32_WINNT > 0x0500 || defined(WINBASE_DECLARE_GET_MODULE_HANDLE_EX) || < 2976 < 2977 enum : uint { GET_MODULE_HANDLE_EX_FLAG_PIN = 0x00000001 } < 2978 enum : uint { GET_MODULE_HANDLE_EX_FLAG_UNCHANGED_REFCOUNT = 0x00000002 } < 2979 enum : uint { GET_MODULE_HANDLE_EX_FLAG_FROM_ADDRESS = 0x00000004 } < 2980 < 2981 extern(Windows) alias BOOL function( DWORD dwFlags, LPCSTR lpModuleName, HMOD < 2982 extern(Windows) alias BOOL function( DWORD dwFlags, LPCWSTR lpModuleName, HMO < 2983 // #ifdef UNICODE < 2984 alias PGET_MODULE_HANDLE_EXW PGET_MODULE_HANDLE_EX; < 2985 // #else < 2986 // #... < 2987 // #endif // !UNICODE < 2988 < 2989 extern(Windows) export BOOL GetModuleHandleExA( < 2990 DWORD dwFlags, < 2991 LPCSTR lpModuleName, < 2992 HMODULE* phModule); < 2993 extern(Windows) export BOOL GetModuleHandleExW( < 2994 DWORD dwFlags, < 2995 LPCWSTR lpModuleName, < 2996 HMODULE* phModule); < 2997 // #ifdef UNICODE < 2998 alias GetModuleHandleExW GetModuleHandleEx; < 2999 // #else < 3000 // #... < 3001 // #endif // !UNICODE < 3002 < 3003 // #endif < 3004 // #endif < 3005 < 3006 extern(Windows) export BOOL CreateProcessA( < 3007 LPCSTR lpApplicationName, < 3008 LPSTR lpCommandLine, < 3009 LPSECURITY_ATTRIBUTES lpProcessAttributes, < 3010 LPSECURITY_ATTRIBUTES lpThreadAttributes, < 3011 BOOL bInheritHandles, < 3012 DWORD dwCreationFlags, < 3013 LPVOID lpEnvironment, < 3014 LPCSTR lpCurrentDirectory, < 3015 LPSTARTUPINFOA lpStartupInfo, < 3016 LPPROCESS_INFORMATION lpProcessInformation); < 3017 extern(Windows) export BOOL CreateProcessW( < 3018 LPCWSTR lpApplicationName, < 3019 LPWSTR lpCommandLine, < 3020 LPSECURITY_ATTRIBUTES lpProcessAttributes, < 3021 LPSECURITY_ATTRIBUTES lpThreadAttributes, < 3022 BOOL bInheritHandles, < 3023 DWORD dwCreationFlags, < 3024 LPVOID lpEnvironment, < 3025 LPCWSTR lpCurrentDirectory, < 3026 LPSTARTUPINFOW lpStartupInfo, < 3027 LPPROCESS_INFORMATION lpProcessInformation); < 3028 // #ifdef UNICODE < 3029 alias CreateProcessW CreateProcess; < 3030 // #else < 3031 // #... < 3032 // #endif // !UNICODE < 3033 < 3034 extern(Windows) export BOOL SetProcessShutdownParameters( < 3035 DWORD dwLevel, < 3036 DWORD dwFlags); < 3037 < 3038 extern(Windows) export BOOL GetProcessShutdownParameters( < 3039 LPDWORD lpdwLevel, < 3040 LPDWORD lpdwFlags); < 3041 < 3042 extern(Windows) export DWORD GetProcessVersion( < 3043 DWORD ProcessId); < 3044 < 3045 extern(Windows) export VOID FatalAppExitA( < 3046 UINT uAction, < 3047 LPCSTR lpMessageText); < 3048 extern(Windows) export VOID FatalAppExitW( < 3049 UINT uAction, < 3050 LPCWSTR lpMessageText); < 3051 // #ifdef UNICODE < 3052 alias FatalAppExitW FatalAppExit; < 3053 // #else < 3054 // #... < 3055 // #endif // !UNICODE < 3056 < 3057 extern(Windows) export VOID GetStartupInfoA( < 3058 LPSTARTUPINFOA lpStartupInfo); < 3059 extern(Windows) export VOID GetStartupInfoW( < 3060 LPSTARTUPINFOW lpStartupInfo); < 3061 // #ifdef UNICODE < 3062 alias GetStartupInfoW GetStartupInfo; < 3063 // #else < 3064 // #... < 3065 // #endif // !UNICODE < 3066 < 3067 extern(Windows) export LPSTR GetCommandLineA(); < 3068 extern(Windows) export LPWSTR GetCommandLineW(); < 3069 // #ifdef UNICODE < 3070 alias GetCommandLineW GetCommandLine; < 3071 // #else < 3072 // #... < 3073 // #endif // !UNICODE < 3074 < 3075 extern(Windows) export DWORD GetEnvironmentVariableA( < 3076 LPCSTR lpName, < 3077 LPSTR lpBuffer, < 3078 DWORD nSize); < 3079 extern(Windows) export DWORD GetEnvironmentVariableW( < 3080 LPCWSTR lpName, < 3081 LPWSTR lpBuffer, < 3082 DWORD nSize); < 3083 // #ifdef UNICODE < 3084 alias GetEnvironmentVariableW GetEnvironmentVariable; < 3085 // #else < 3086 // #... < 3087 // #endif // !UNICODE < 3088 < 3089 extern(Windows) export BOOL SetEnvironmentVariableA( < 3090 LPCSTR lpName, < 3091 LPCSTR lpValue); < 3092 extern(Windows) export BOOL SetEnvironmentVariableW( < 3093 LPCWSTR lpName, < 3094 LPCWSTR lpValue); < 3095 // #ifdef UNICODE < 3096 alias SetEnvironmentVariableW SetEnvironmentVariable; < 3097 // #else < 3098 // #... < 3099 // #endif // !UNICODE < 3100 < 3101 extern(Windows) export DWORD ExpandEnvironmentStringsA( < 3102 LPCSTR lpSrc, < 3103 LPSTR lpDst, < 3104 DWORD nSize); < 3105 extern(Windows) export DWORD ExpandEnvironmentStringsW( < 3106 LPCWSTR lpSrc, < 3107 LPWSTR lpDst, < 3108 DWORD nSize); < 3109 // #ifdef UNICODE < 3110 alias ExpandEnvironmentStringsW ExpandEnvironmentStrings; < 3111 // #else < 3112 // #... < 3113 // #endif // !UNICODE < 3114 < 3115 extern(Windows) export DWORD GetFirmwareEnvironmentVariableA( < 3116 LPCSTR lpName, < 3117 LPCSTR lpGuid, < 3118 PVOID pBuffer, < 3119 DWORD nSize); < 3120 extern(Windows) export DWORD GetFirmwareEnvironmentVariableW( < 3121 LPCWSTR lpName, < 3122 LPCWSTR lpGuid, < 3123 PVOID pBuffer, < 3124 DWORD nSize); < 3125 // #ifdef UNICODE < 3126 alias GetFirmwareEnvironmentVariableW GetFirmwareEnvironmentVariable; < 3127 // #else < 3128 // #... < 3129 // #endif // !UNICODE < 3130 < 3131 extern(Windows) export BOOL SetFirmwareEnvironmentVariableA( < 3132 LPCSTR lpName, < 3133 LPCSTR lpGuid, < 3134 PVOID pValue, < 3135 DWORD nSize); < 3136 extern(Windows) export BOOL SetFirmwareEnvironmentVariableW( < 3137 LPCWSTR lpName, < 3138 LPCWSTR lpGuid, < 3139 PVOID pValue, < 3140 DWORD nSize); < 3141 // #ifdef UNICODE < 3142 alias SetFirmwareEnvironmentVariableW SetFirmwareEnvironmentVariable; < 3143 // #else < 3144 // #... < 3145 // #endif // !UNICODE < 3146 < 3147 extern(Windows) export VOID OutputDebugStringA( < 3148 LPCSTR lpOutputString); < 3149 extern(Windows) export VOID OutputDebugStringW( < 3150 LPCWSTR lpOutputString); < 3151 // #ifdef UNICODE < 3152 alias OutputDebugStringW OutputDebugString; < 3153 // #else < 3154 // #... < 3155 // #endif // !UNICODE < 3156 < 3157 extern(Windows) export HRSRC FindResourceA( < 3158 HMODULE hModule, < 3159 LPCSTR lpName, < 3160 LPCSTR lpType); < 3161 extern(Windows) export HRSRC FindResourceW( < 3162 HMODULE hModule, < 3163 LPCWSTR lpName, < 3164 LPCWSTR lpType); < 3165 // #ifdef UNICODE < 3166 alias FindResourceW FindResource; < 3167 // #else < 3168 // #... < 3169 // #endif // !UNICODE < 3170 < 3171 extern(Windows) export HRSRC FindResourceExA( < 3172 HMODULE hModule, < 3173 LPCSTR lpType, < 3174 LPCSTR lpName, < 3175 WORD wLanguage); < 3176 extern(Windows) export HRSRC FindResourceExW( < 3177 HMODULE hModule, < 3178 LPCWSTR lpType, < 3179 LPCWSTR lpName, < 3180 WORD wLanguage); < 3181 // #ifdef UNICODE < 3182 alias FindResourceExW FindResourceEx; < 3183 // #else < 3184 // #... < 3185 // #endif // !UNICODE < 3186 < 3187 // #ifdef STRICT < 3188 extern(Windows) alias BOOL function(HMODULE hModule, LPSTR lpType, LONG_PTR lPar < 3189 extern(Windows) alias BOOL function(HMODULE hModule, LPWSTR lpType, LONG_PTR lPa < 3190 // #ifdef UNICODE < 3191 alias ENUMRESTYPEPROCW ENUMRESTYPEPROC; < 3192 // #else < 3193 // #... < 3194 // #endif // !UNICODE < 3195 extern(Windows) alias BOOL function(HMODULE hModule, LPCSTR lpType, LPSTR lpName < 3196 extern(Windows) alias BOOL function(HMODULE hModule, LPCWSTR lpType, LPWSTR lpNa < 3197 // #ifdef UNICODE < 3198 alias ENUMRESNAMEPROCW ENUMRESNAMEPROC; < 3199 // #else < 3200 // #... < 3201 // #endif // !UNICODE < 3202 extern(Windows) alias BOOL function(HMODULE hModule, LPCSTR lpType, LPCSTR lpNam < 3203 extern(Windows) alias BOOL function(HMODULE hModule, LPCWSTR lpType, LPCWSTR lpN < 3204 // #ifdef UNICODE < 3205 alias ENUMRESLANGPROCW ENUMRESLANGPROC; < 3206 // #else < 3207 // #... < 3208 // #endif // !UNICODE < 3209 // #else < 3210 // ... < 3211 // #ifdef UNICODE < 3212 // ... < 3213 // #else < 3214 // ... < 3215 // #endif // UNICODE < 3216 // ... < 3217 // #ifdef UNICODE < 3218 // ... < 3219 // #else < 3220 // ... < 3221 // #endif // UNICODE < 3222 // ... < 3223 // #ifdef UNICODE < 3224 // ... < 3225 // #else < 3226 // ... < 3227 // #endif // UNICODE < 3228 // #endif < 3229 < 3230 extern(Windows) export BOOL EnumResourceTypesA( < 3231 HMODULE hModule, < 3232 ENUMRESTYPEPROCA lpEnumFunc, < 3233 LONG_PTR lParam); < 3234 extern(Windows) export BOOL EnumResourceTypesW( < 3235 HMODULE hModule, < 3236 ENUMRESTYPEPROCW lpEnumFunc, < 3237 LONG_PTR lParam); < 3238 // #ifdef UNICODE < 3239 alias EnumResourceTypesW EnumResourceTypes; < 3240 // #else < 3241 // #... < 3242 // #endif // !UNICODE < 3243 < 3244 extern(Windows) export BOOL EnumResourceNamesA( < 3245 HMODULE hModule, < 3246 LPCSTR lpType, < 3247 ENUMRESNAMEPROCA lpEnumFunc, < 3248 LONG_PTR lParam); < 3249 extern(Windows) export BOOL EnumResourceNamesW( < 3250 HMODULE hModule, < 3251 LPCWSTR lpType, < 3252 ENUMRESNAMEPROCW lpEnumFunc, < 3253 LONG_PTR lParam); < 3254 // #ifdef UNICODE < 3255 alias EnumResourceNamesW EnumResourceNames; < 3256 // #else < 3257 // #... < 3258 // #endif // !UNICODE < 3259 < 3260 extern(Windows) export BOOL EnumResourceLanguagesA( < 3261 HMODULE hModule, < 3262 LPCSTR lpType, < 3263 LPCSTR lpName, < 3264 ENUMRESLANGPROCA lpEnumFunc, < 3265 LONG_PTR lParam); < 3266 extern(Windows) export BOOL EnumResourceLanguagesW( < 3267 HMODULE hModule, < 3268 LPCWSTR lpType, < 3269 LPCWSTR lpName, < 3270 ENUMRESLANGPROCW lpEnumFunc, < 3271 LONG_PTR lParam); < 3272 // #ifdef UNICODE < 3273 alias EnumResourceLanguagesW EnumResourceLanguages; < 3274 // #else < 3275 // #... < 3276 // #endif // !UNICODE < 3277 < 3278 extern(Windows) export HANDLE BeginUpdateResourceA( < 3279 LPCSTR pFileName, < 3280 BOOL bDeleteExistingResources); < 3281 extern(Windows) export HANDLE BeginUpdateResourceW( < 3282 LPCWSTR pFileName, < 3283 BOOL bDeleteExistingResources); < 3284 // #ifdef UNICODE < 3285 alias BeginUpdateResourceW BeginUpdateResource; < 3286 // #else < 3287 // #... < 3288 // #endif // !UNICODE < 3289 < 3290 extern(Windows) export BOOL UpdateResourceA( < 3291 HANDLE hUpdate, < 3292 LPCSTR lpType, < 3293 LPCSTR lpName, < 3294 WORD wLanguage, < 3295 LPVOID lpData, < 3296 DWORD cbData); < 3297 extern(Windows) export BOOL UpdateResourceW( < 3298 HANDLE hUpdate, < 3299 LPCWSTR lpType, < 3300 LPCWSTR lpName, < 3301 WORD wLanguage, < 3302 LPVOID lpData, < 3303 DWORD cbData); < 3304 // #ifdef UNICODE < 3305 alias UpdateResourceW UpdateResource; < 3306 // #else < 3307 // #... < 3308 // #endif // !UNICODE < 3309 < 3310 extern(Windows) export BOOL EndUpdateResourceA( < 3311 HANDLE hUpdate, < 3312 BOOL fDiscard); < 3313 extern(Windows) export BOOL EndUpdateResourceW( < 3314 HANDLE hUpdate, < 3315 BOOL fDiscard); < 3316 // #ifdef UNICODE < 3317 alias EndUpdateResourceW EndUpdateResource; < 3318 // #else < 3319 // #... < 3320 // #endif // !UNICODE < 3321 < 3322 extern(Windows) export ATOM GlobalAddAtomA( < 3323 LPCSTR lpString); < 3324 extern(Windows) export ATOM GlobalAddAtomW( < 3325 LPCWSTR lpString); < 3326 // #ifdef UNICODE < 3327 alias GlobalAddAtomW GlobalAddAtom; < 3328 // #else < 3329 // #... < 3330 // #endif // !UNICODE < 3331 < 3332 extern(Windows) export ATOM GlobalFindAtomA( < 3333 LPCSTR lpString); < 3334 extern(Windows) export ATOM GlobalFindAtomW( < 3335 LPCWSTR lpString); < 3336 // #ifdef UNICODE < 3337 alias GlobalFindAtomW GlobalFindAtom; < 3338 // #else < 3339 // #... < 3340 // #endif // !UNICODE < 3341 < 3342 extern(Windows) export UINT GlobalGetAtomNameA( < 3343 ATOM nAtom, < 3344 LPSTR lpBuffer, < 3345 int nSize); < 3346 extern(Windows) export UINT GlobalGetAtomNameW( < 3347 ATOM nAtom, < 3348 LPWSTR lpBuffer, < 3349 int nSize); < 3350 // #ifdef UNICODE < 3351 alias GlobalGetAtomNameW GlobalGetAtomName; < 3352 // #else < 3353 // #... < 3354 // #endif // !UNICODE < 3355 < 3356 extern(Windows) export ATOM AddAtomA( < 3357 LPCSTR lpString); < 3358 extern(Windows) export ATOM AddAtomW( < 3359 LPCWSTR lpString); < 3360 // #ifdef UNICODE < 3361 alias AddAtomW AddAtom; < 3362 // #else < 3363 // #... < 3364 // #endif // !UNICODE < 3365 < 3366 extern(Windows) export ATOM FindAtomA( < 3367 LPCSTR lpString); < 3368 extern(Windows) export ATOM FindAtomW( < 3369 LPCWSTR lpString); < 3370 // #ifdef UNICODE < 3371 alias FindAtomW FindAtom; < 3372 // #else < 3373 // #... < 3374 // #endif // !UNICODE < 3375 < 3376 extern(Windows) export UINT GetAtomNameA( < 3377 ATOM nAtom, < 3378 LPSTR lpBuffer, < 3379 int nSize); < 3380 extern(Windows) export UINT GetAtomNameW( < 3381 ATOM nAtom, < 3382 LPWSTR lpBuffer, < 3383 int nSize); < 3384 // #ifdef UNICODE < 3385 alias GetAtomNameW GetAtomName; < 3386 // #else < 3387 // #... < 3388 // #endif // !UNICODE < 3389 < 3390 extern(Windows) export UINT GetProfileIntA( < 3391 LPCSTR lpAppName, < 3392 LPCSTR lpKeyName, < 3393 INT nDefault); < 3394 extern(Windows) export UINT GetProfileIntW( < 3395 LPCWSTR lpAppName, < 3396 LPCWSTR lpKeyName, < 3397 INT nDefault); < 3398 // #ifdef UNICODE < 3399 alias GetProfileIntW GetProfileInt; < 3400 // #else < 3401 // #... < 3402 // #endif // !UNICODE < 3403 < 3404 extern(Windows) export DWORD GetProfileStringA( < 3405 LPCSTR lpAppName, < 3406 LPCSTR lpKeyName, < 3407 LPCSTR lpDefault, < 3408 LPSTR lpReturnedString, < 3409 DWORD nSize); < 3410 extern(Windows) export DWORD GetProfileStringW( < 3411 LPCWSTR lpAppName, < 3412 LPCWSTR lpKeyName, < 3413 LPCWSTR lpDefault, < 3414 LPWSTR lpReturnedString, < 3415 DWORD nSize); < 3416 // #ifdef UNICODE < 3417 alias GetProfileStringW GetProfileString; < 3418 // #else < 3419 // #... < 3420 // #endif // !UNICODE < 3421 < 3422 extern(Windows) export BOOL WriteProfileStringA( < 3423 LPCSTR lpAppName, < 3424 LPCSTR lpKeyName, < 3425 LPCSTR lpString); < 3426 extern(Windows) export BOOL WriteProfileStringW( < 3427 LPCWSTR lpAppName, < 3428 LPCWSTR lpKeyName, < 3429 LPCWSTR lpString); < 3430 // #ifdef UNICODE < 3431 alias WriteProfileStringW WriteProfileString; < 3432 // #else < 3433 // #... < 3434 // #endif // !UNICODE < 3435 < 3436 extern(Windows) export DWORD GetProfileSectionA( < 3437 LPCSTR lpAppName, < 3438 LPSTR lpReturnedString, < 3439 DWORD nSize); < 3440 extern(Windows) export DWORD GetProfileSectionW( < 3441 LPCWSTR lpAppName, < 3442 LPWSTR lpReturnedString, < 3443 DWORD nSize); < 3444 // #ifdef UNICODE < 3445 alias GetProfileSectionW GetProfileSection; < 3446 // #else < 3447 // #... < 3448 // #endif // !UNICODE < 3449 < 3450 extern(Windows) export BOOL WriteProfileSectionA( < 3451 LPCSTR lpAppName, < 3452 LPCSTR lpString); < 3453 extern(Windows) export BOOL WriteProfileSectionW( < 3454 LPCWSTR lpAppName, < 3455 LPCWSTR lpString); < 3456 // #ifdef UNICODE < 3457 alias WriteProfileSectionW WriteProfileSection; < 3458 // #else < 3459 // #... < 3460 // #endif // !UNICODE < 3461 < 3462 extern(Windows) export UINT GetPrivateProfileIntA( < 3463 LPCSTR lpAppName, < 3464 LPCSTR lpKeyName, < 3465 INT nDefault, < 3466 LPCSTR lpFileName); < 3467 extern(Windows) export UINT GetPrivateProfileIntW( < 3468 LPCWSTR lpAppName, < 3469 LPCWSTR lpKeyName, < 3470 INT nDefault, < 3471 LPCWSTR lpFileName); < 3472 // #ifdef UNICODE < 3473 alias GetPrivateProfileIntW GetPrivateProfileInt; < 3474 // #else < 3475 // #... < 3476 // #endif // !UNICODE < 3477 < 3478 extern(Windows) export DWORD GetPrivateProfileStringA( < 3479 LPCSTR lpAppName, < 3480 LPCSTR lpKeyName, < 3481 LPCSTR lpDefault, < 3482 LPSTR lpReturnedString, < 3483 DWORD nSize, < 3484 LPCSTR lpFileName); < 3485 extern(Windows) export DWORD GetPrivateProfileStringW( < 3486 LPCWSTR lpAppName, < 3487 LPCWSTR lpKeyName, < 3488 LPCWSTR lpDefault, < 3489 LPWSTR lpReturnedString, < 3490 DWORD nSize, < 3491 LPCWSTR lpFileName); < 3492 // #ifdef UNICODE < 3493 alias GetPrivateProfileStringW GetPrivateProfileString; < 3494 // #else < 3495 // #... < 3496 // #endif // !UNICODE < 3497 < 3498 extern(Windows) export BOOL WritePrivateProfileStringA( < 3499 LPCSTR lpAppName, < 3500 LPCSTR lpKeyName, < 3501 LPCSTR lpString, < 3502 LPCSTR lpFileName); < 3503 extern(Windows) export BOOL WritePrivateProfileStringW( < 3504 LPCWSTR lpAppName, < 3505 LPCWSTR lpKeyName, < 3506 LPCWSTR lpString, < 3507 LPCWSTR lpFileName); < 3508 // #ifdef UNICODE < 3509 alias WritePrivateProfileStringW WritePrivateProfileString; < 3510 // #else < 3511 // #... < 3512 // #endif // !UNICODE < 3513 < 3514 extern(Windows) export DWORD GetPrivateProfileSectionA( < 3515 LPCSTR lpAppName, < 3516 LPSTR lpReturnedString, < 3517 DWORD nSize, < 3518 LPCSTR lpFileName); < 3519 extern(Windows) export DWORD GetPrivateProfileSectionW( < 3520 LPCWSTR lpAppName, < 3521 LPWSTR lpReturnedString, < 3522 DWORD nSize, < 3523 LPCWSTR lpFileName); < 3524 // #ifdef UNICODE < 3525 alias GetPrivateProfileSectionW GetPrivateProfileSection; < 3526 // #else < 3527 // #... < 3528 // #endif // !UNICODE < 3529 < 3530 extern(Windows) export BOOL WritePrivateProfileSectionA( < 3531 LPCSTR lpAppName, < 3532 LPCSTR lpString, < 3533 LPCSTR lpFileName); < 3534 extern(Windows) export BOOL WritePrivateProfileSectionW( < 3535 LPCWSTR lpAppName, < 3536 LPCWSTR lpString, < 3537 LPCWSTR lpFileName); < 3538 // #ifdef UNICODE < 3539 alias WritePrivateProfileSectionW WritePrivateProfileSection; < 3540 // #else < 3541 // #... < 3542 // #endif // !UNICODE < 3543 < 3544 extern(Windows) export DWORD GetPrivateProfileSectionNamesA( < 3545 LPSTR lpszReturnBuffer, < 3546 DWORD nSize, < 3547 LPCSTR lpFileName); < 3548 extern(Windows) export DWORD GetPrivateProfileSectionNamesW( < 3549 LPWSTR lpszReturnBuffer, < 3550 DWORD nSize, < 3551 LPCWSTR lpFileName); < 3552 // #ifdef UNICODE < 3553 alias GetPrivateProfileSectionNamesW GetPrivateProfileSectionNames; < 3554 // #else < 3555 // #... < 3556 // #endif // !UNICODE < 3557 < 3558 extern(Windows) export BOOL GetPrivateProfileStructA( < 3559 LPCSTR lpszSection, < 3560 LPCSTR lpszKey, < 3561 LPVOID lpStruct, < 3562 UINT uSizeStruct, < 3563 LPCSTR szFile); < 3564 extern(Windows) export BOOL GetPrivateProfileStructW( < 3565 LPCWSTR lpszSection, < 3566 LPCWSTR lpszKey, < 3567 LPVOID lpStruct, < 3568 UINT uSizeStruct, < 3569 LPCWSTR szFile); < 3570 // #ifdef UNICODE < 3571 alias GetPrivateProfileStructW GetPrivateProfileStruct; < 3572 // #else < 3573 // #... < 3574 // #endif // !UNICODE < 3575 < 3576 extern(Windows) export BOOL WritePrivateProfileStructA( < 3577 LPCSTR lpszSection, < 3578 LPCSTR lpszKey, < 3579 LPVOID lpStruct, < 3580 UINT uSizeStruct, < 3581 LPCSTR szFile); < 3582 extern(Windows) export BOOL WritePrivateProfileStructW( < 3583 LPCWSTR lpszSection, < 3584 LPCWSTR lpszKey, < 3585 LPVOID lpStruct, < 3586 UINT uSizeStruct, < 3587 LPCWSTR szFile); < 3588 // #ifdef UNICODE < 3589 alias WritePrivateProfileStructW WritePrivateProfileStruct; < 3590 // #else < 3591 // #... < 3592 // #endif // !UNICODE < 3593 < 3594 extern(Windows) export UINT GetDriveTypeA( < 3595 LPCSTR lpRootPathName); < 3596 extern(Windows) export UINT GetDriveTypeW( < 3597 LPCWSTR lpRootPathName); < 3598 // #ifdef UNICODE < 3599 alias GetDriveTypeW GetDriveType; < 3600 // #else < 3601 // #... < 3602 // #endif // !UNICODE < 3603 < 3604 extern(Windows) export UINT GetSystemDirectoryA( < 3605 LPSTR lpBuffer, < 3606 UINT uSize); < 3607 extern(Windows) export UINT GetSystemDirectoryW( < 3608 LPWSTR lpBuffer, < 3609 UINT uSize); < 3610 // #ifdef UNICODE < 3611 alias GetSystemDirectoryW GetSystemDirectory; < 3612 // #else < 3613 // #... < 3614 // #endif // !UNICODE < 3615 < 3616 extern(Windows) export DWORD GetTempPathA( < 3617 DWORD nBufferLength, < 3618 LPSTR lpBuffer); < 3619 extern(Windows) export DWORD GetTempPathW( < 3620 DWORD nBufferLength, < 3621 LPWSTR lpBuffer); < 3622 // #ifdef UNICODE < 3623 alias GetTempPathW GetTempPath; < 3624 // #else < 3625 // #... < 3626 // #endif // !UNICODE < 3627 < 3628 extern(Windows) export UINT GetTempFileNameA( < 3629 LPCSTR lpPathName, < 3630 LPCSTR lpPrefixString, < 3631 UINT uUnique, < 3632 LPSTR lpTempFileName); < 3633 extern(Windows) export UINT GetTempFileNameW( < 3634 LPCWSTR lpPathName, < 3635 LPCWSTR lpPrefixString, < 3636 UINT uUnique, < 3637 LPWSTR lpTempFileName); < 3638 // #ifdef UNICODE < 3639 alias GetTempFileNameW GetTempFileName; < 3640 // #else < 3641 // #... < 3642 // #endif // !UNICODE < 3643 < 3644 extern(Windows) export UINT GetWindowsDirectoryA( < 3645 LPSTR lpBuffer, < 3646 UINT uSize); < 3647 extern(Windows) export UINT GetWindowsDirectoryW( < 3648 LPWSTR lpBuffer, < 3649 UINT uSize); < 3650 // #ifdef UNICODE < 3651 alias GetWindowsDirectoryW GetWindowsDirectory; < 3652 // #else < 3653 // #... < 3654 // #endif // !UNICODE < 3655 < 3656 extern(Windows) export UINT GetSystemWindowsDirectoryA( < 3657 LPSTR lpBuffer, < 3658 UINT uSize); < 3659 extern(Windows) export UINT GetSystemWindowsDirectoryW( < 3660 LPWSTR lpBuffer, < 3661 UINT uSize); < 3662 // #ifdef UNICODE < 3663 alias GetSystemWindowsDirectoryW GetSystemWindowsDirectory; < 3664 // #else < 3665 // #... < 3666 // #endif // !UNICODE < 3667 < 3668 // #if !defined(RC_INVOKED) // RC warns because "WINBASE_DECLARE_GET_SYSTEM_WOW6 < 3669 // #if _WIN32_WINNT >= 0x0501 || defined(WINBASE_DECLARE_GET_SYSTEM_WOW64_DIRECT < 3670 < 3671 extern(Windows) export UINT GetSystemWow64DirectoryA( < 3672 LPSTR lpBuffer, < 3673 UINT uSize); < 3674 extern(Windows) export UINT GetSystemWow64DirectoryW( < 3675 LPWSTR lpBuffer, < 3676 UINT uSize); < 3677 // #ifdef UNICODE < 3678 alias GetSystemWow64DirectoryW GetSystemWow64Directory; < 3679 // #else < 3680 // #... < 3681 // #endif // !UNICODE < 3682 < 3683 extern(Windows) alias UINT function( LPSTR lpBuffer, UINT uSize) PGET_SYSTEM_WOW < 3684 extern(Windows) alias UINT function( LPWSTR lpBuffer, UINT uSize) PGET_SYSTEM_WO < 3685 < 3686 const char[] GET_SYSTEM_WOW64_DIRECTORY_NAME_A_A = "GetSystemWow64DirectoryA"; < 3687 const wchar[] GET_SYSTEM_WOW64_DIRECTORY_NAME_A_W = "GetSystemWow64DirectoryA"; < 3688 const TCHAR[] GET_SYSTEM_WOW64_DIRECTORY_NAME_A_T = "GetSystemWow64DirectoryA"; < 3689 const char[] GET_SYSTEM_WOW64_DIRECTORY_NAME_W_A = "GetSystemWow64DirectoryW"; < 3690 const wchar[] GET_SYSTEM_WOW64_DIRECTORY_NAME_W_W = "GetSystemWow64DirectoryW"; < 3691 const TCHAR[] GET_SYSTEM_WOW64_DIRECTORY_NAME_W_T = "GetSystemWow64DirectoryW"; < 3692 < 3693 // #ifdef UNICODE < 3694 alias GET_SYSTEM_WOW64_DIRECTORY_NAME_W_A GET_SYSTEM_WOW64_DIRECTORY_NAME_T_A; < 3695 alias GET_SYSTEM_WOW64_DIRECTORY_NAME_W_W GET_SYSTEM_WOW64_DIRECTORY_NAME_T_W; < 3696 alias GET_SYSTEM_WOW64_DIRECTORY_NAME_W_T GET_SYSTEM_WOW64_DIRECTORY_NAME_T_T; < 3697 // #else < 3698 // #... < 3699 // #... < 3700 // #... < 3701 // #endif < 3702 < 3703 // #endif // _WIN32_WINNT >= 0x0501 < 3704 // #endif < 3705 < 3706 extern(Windows) export BOOL SetCurrentDirectoryA( < 3707 LPCSTR lpPathName); < 3708 extern(Windows) export BOOL SetCurrentDirectoryW( < 3709 LPCWSTR lpPathName); < 3710 // #ifdef UNICODE < 3711 alias SetCurrentDirectoryW SetCurrentDirectory; < 3712 // #else < 3713 // #... < 3714 // #endif // !UNICODE < 3715 < 3716 extern(Windows) export DWORD GetCurrentDirectoryA( < 3717 DWORD nBufferLength, < 3718 LPSTR lpBuffer); < 3719 extern(Windows) export DWORD GetCurrentDirectoryW( < 3720 DWORD nBufferLength, < 3721 LPWSTR lpBuffer); < 3722 // #ifdef UNICODE < 3723 alias GetCurrentDirectoryW GetCurrentDirectory; < 3724 // #else < 3725 // #... < 3726 // #endif // !UNICODE < 3727 < 3728 extern(Windows) export BOOL GetDiskFreeSpaceA( < 3729 LPCSTR lpRootPathName, < 3730 LPDWORD lpSectorsPerCluster, < 3731 LPDWORD lpBytesPerSector, < 3732 LPDWORD lpNumberOfFreeClusters, < 3733 LPDWORD lpTotalNumberOfClusters); < 3734 extern(Windows) export BOOL GetDiskFreeSpaceW( < 3735 LPCWSTR lpRootPathName, < 3736 LPDWORD lpSectorsPerCluster, < 3737 LPDWORD lpBytesPerSector, < 3738 LPDWORD lpNumberOfFreeClusters, < 3739 LPDWORD lpTotalNumberOfClusters); < 3740 // #ifdef UNICODE < 3741 alias GetDiskFreeSpaceW GetDiskFreeSpace; < 3742 // #else < 3743 // #... < 3744 // #endif // !UNICODE < 3745 < 3746 extern(Windows) export BOOL GetDiskFreeSpaceExA( < 3747 LPCSTR lpDirectoryName, < 3748 PULARGE_INTEGER lpFreeBytesAvailableToCaller, < 3749 PULARGE_INTEGER lpTotalNumberOfBytes, < 3750 PULARGE_INTEGER lpTotalNumberOfFreeBytes); < 3751 extern(Windows) export BOOL GetDiskFreeSpaceExW( < 3752 LPCWSTR lpDirectoryName, < 3753 PULARGE_INTEGER lpFreeBytesAvailableToCaller, < 3754 PULARGE_INTEGER lpTotalNumberOfBytes, < 3755 PULARGE_INTEGER lpTotalNumberOfFreeBytes); < 3756 // #ifdef UNICODE < 3757 alias GetDiskFreeSpaceExW GetDiskFreeSpaceEx; < 3758 // #else < 3759 // #... < 3760 // #endif // !UNICODE < 3761 < 3762 extern(Windows) export BOOL CreateDirectoryA( < 3763 LPCSTR lpPathName, < 3764 LPSECURITY_ATTRIBUTES lpSecurityAttributes); < 3765 extern(Windows) export BOOL CreateDirectoryW( < 3766 LPCWSTR lpPathName, < 3767 LPSECURITY_ATTRIBUTES lpSecurityAttributes); < 3768 // #ifdef UNICODE < 3769 alias CreateDirectoryW CreateDirectory; < 3770 // #else < 3771 // #... < 3772 // #endif // !UNICODE < 3773 < 3774 extern(Windows) export BOOL CreateDirectoryExA( < 3775 LPCSTR lpTemplateDirectory, < 3776 LPCSTR lpNewDirectory, < 3777 LPSECURITY_ATTRIBUTES lpSecurityAttributes); < 3778 extern(Windows) export BOOL CreateDirectoryExW( < 3779 LPCWSTR lpTemplateDirectory, < 3780 LPCWSTR lpNewDirectory, < 3781 LPSECURITY_ATTRIBUTES lpSecurityAttributes); < 3782 // #ifdef UNICODE < 3783 alias CreateDirectoryExW CreateDirectoryEx; < 3784 // #else < 3785 // #... < 3786 // #endif // !UNICODE < 3787 < 3788 extern(Windows) export BOOL RemoveDirectoryA( < 3789 LPCSTR lpPathName); < 3790 extern(Windows) export BOOL RemoveDirectoryW( < 3791 LPCWSTR lpPathName); < 3792 // #ifdef UNICODE < 3793 alias RemoveDirectoryW RemoveDirectory; < 3794 // #else < 3795 // #... < 3796 // #endif // !UNICODE < 3797 < 3798 extern(Windows) export DWORD GetFullPathNameA( < 3799 LPCSTR lpFileName, < 3800 DWORD nBufferLength, < 3801 LPSTR lpBuffer, < 3802 LPSTR *lpFilePart); < 3803 extern(Windows) export DWORD GetFullPathNameW( < 3804 LPCWSTR lpFileName, < 3805 DWORD nBufferLength, < 3806 LPWSTR lpBuffer, < 3807 LPWSTR *lpFilePart); < 3808 // #ifdef UNICODE < 3809 alias GetFullPathNameW GetFullPathName; < 3810 // #else < 3811 // #... < 3812 // #endif // !UNICODE < 3813 < 3814 enum : uint { DDD_RAW_TARGET_PATH = 0x00000001 } < 3815 enum : uint { DDD_REMOVE_DEFINITION = 0x00000002 } < 3816 enum : uint { DDD_EXACT_MATCH_ON_REMOVE = 0x00000004 } < 3817 enum : uint { DDD_NO_BROADCAST_SYSTEM = 0x00000008 } < 3818 enum : uint { DDD_LUID_BROADCAST_DRIVE = 0x00000010 } < 3819 < 3820 extern(Windows) export BOOL DefineDosDeviceA( < 3821 DWORD dwFlags, < 3822 LPCSTR lpDeviceName, < 3823 LPCSTR lpTargetPath); < 3824 extern(Windows) export BOOL DefineDosDeviceW( < 3825 DWORD dwFlags, < 3826 LPCWSTR lpDeviceName, < 3827 LPCWSTR lpTargetPath); < 3828 // #ifdef UNICODE < 3829 alias DefineDosDeviceW DefineDosDevice; < 3830 // #else < 3831 // #... < 3832 // #endif // !UNICODE < 3833 < 3834 extern(Windows) export DWORD QueryDosDeviceA( < 3835 LPCSTR lpDeviceName, < 3836 LPSTR lpTargetPath, < 3837 DWORD ucchMax); < 3838 extern(Windows) export DWORD QueryDosDeviceW( < 3839 LPCWSTR lpDeviceName, < 3840 LPWSTR lpTargetPath, < 3841 DWORD ucchMax); < 3842 // #ifdef UNICODE < 3843 alias QueryDosDeviceW QueryDosDevice; < 3844 // #else < 3845 // #... < 3846 // #endif // !UNICODE < 3847 < 3848 // #define EXPAND_LOCAL_DRIVES < 3849 < 3850 extern(Windows) export HANDLE CreateFileA( < 3851 LPCSTR lpFileName, < 3852 DWORD dwDesiredAccess, < 3853 DWORD dwShareMode, < 3854 LPSECURITY_ATTRIBUTES lpSecurityAttributes, < 3855 DWORD dwCreationDisposition, < 3856 DWORD dwFlagsAndAttributes, < 3857 HANDLE hTemplateFile); < 3858 extern(Windows) export HANDLE CreateFileW( < 3859 LPCWSTR lpFileName, < 3860 DWORD dwDesiredAccess, < 3861 DWORD dwShareMode, < 3862 LPSECURITY_ATTRIBUTES lpSecurityAttributes, < 3863 DWORD dwCreationDisposition, < 3864 DWORD dwFlagsAndAttributes, < 3865 HANDLE hTemplateFile); < 3866 // #ifdef UNICODE < 3867 alias CreateFileW CreateFile; < 3868 // #else < 3869 // #... < 3870 // #endif // !UNICODE < 3871 < 3872 extern(Windows) export BOOL SetFileAttributesA( < 3873 LPCSTR lpFileName, < 3874 DWORD dwFileAttributes); < 3875 extern(Windows) export BOOL SetFileAttributesW( < 3876 LPCWSTR lpFileName, < 3877 DWORD dwFileAttributes); < 3878 // #ifdef UNICODE < 3879 alias SetFileAttributesW SetFileAttributes; < 3880 // #else < 3881 // #... < 3882 // #endif // !UNICODE < 3883 < 3884 extern(Windows) export DWORD GetFileAttributesA( < 3885 LPCSTR lpFileName); < 3886 extern(Windows) export DWORD GetFileAttributesW( < 3887 LPCWSTR lpFileName); < 3888 // #ifdef UNICODE < 3889 alias GetFileAttributesW GetFileAttributes; < 3890 // #else < 3891 // #... < 3892 // #endif // !UNICODE < 3893 < 3894 alias int _GET_FILEEX_INFO_LEVELS; < 3895 enum { < 3896 GetFileExInfoStandard, < 3897 GetFileExMaxInfoLevel, < 3898 } < 3899 alias _GET_FILEEX_INFO_LEVELS GET_FILEEX_INFO_LEVELS; < 3900 < 3901 extern(Windows) export BOOL GetFileAttributesExA( < 3902 LPCSTR lpFileName, < 3903 GET_FILEEX_INFO_LEVELS fInfoLevelId, < 3904 LPVOID lpFileInformation); < 3905 extern(Windows) export BOOL GetFileAttributesExW( < 3906 LPCWSTR lpFileName, < 3907 GET_FILEEX_INFO_LEVELS fInfoLevelId, < 3908 LPVOID lpFileInformation); < 3909 // #ifdef UNICODE < 3910 alias GetFileAttributesExW GetFileAttributesEx; < 3911 // #else < 3912 // #... < 3913 // #endif // !UNICODE < 3914 < 3915 extern(Windows) export DWORD GetCompressedFileSizeA( < 3916 LPCSTR lpFileName, < 3917 LPDWORD lpFileSizeHigh); < 3918 extern(Windows) export DWORD GetCompressedFileSizeW( < 3919 LPCWSTR lpFileName, < 3920 LPDWORD lpFileSizeHigh); < 3921 // #ifdef UNICODE < 3922 alias GetCompressedFileSizeW GetCompressedFileSize; < 3923 // #else < 3924 // #... < 3925 // #endif // !UNICODE < 3926 < 3927 extern(Windows) export BOOL DeleteFileA( < 3928 LPCSTR lpFileName); < 3929 extern(Windows) export BOOL DeleteFileW( < 3930 LPCWSTR lpFileName); < 3931 // #ifdef UNICODE < 3932 alias DeleteFileW DeleteFile; < 3933 // #else < 3934 // #... < 3935 // #endif // !UNICODE < 3936 < 3937 // #if(_WIN32_WINNT >= 0x0400) < 3938 alias int _FINDEX_INFO_LEVELS; < 3939 enum { < 3940 FindExInfoStandard, < 3941 FindExInfoMaxInfoLevel, < 3942 } < 3943 alias _FINDEX_INFO_LEVELS FINDEX_INFO_LEVELS; < 3944 < 3945 alias int _FINDEX_SEARCH_OPS; < 3946 enum { < 3947 FindExSearchNameMatch, < 3948 FindExSearchLimitToDirectories, < 3949 FindExSearchLimitToDevices, < 3950 FindExSearchMaxSearchOp, < 3951 } < 3952 alias _FINDEX_SEARCH_OPS FINDEX_SEARCH_OPS; < 3953 < 3954 enum : uint { FIND_FIRST_EX_CASE_SENSITIVE = 0x00000001 } < 3955 < 3956 extern(Windows) export HANDLE FindFirstFileExA( < 3957 LPCSTR lpFileName, < 3958 FINDEX_INFO_LEVELS fInfoLevelId, < 3959 LPVOID lpFindFileData, < 3960 FINDEX_SEARCH_OPS fSearchOp, < 3961 LPVOID lpSearchFilter, < 3962 DWORD dwAdditionalFlags); < 3963 extern(Windows) export HANDLE FindFirstFileExW( < 3964 LPCWSTR lpFileName, < 3965 FINDEX_INFO_LEVELS fInfoLevelId, < 3966 LPVOID lpFindFileData, < 3967 FINDEX_SEARCH_OPS fSearchOp, < 3968 LPVOID lpSearchFilter, < 3969 DWORD dwAdditionalFlags); < 3970 // #ifdef UNICODE < 3971 alias FindFirstFileExW FindFirstFileEx; < 3972 // #else < 3973 // #... < 3974 // #endif // !UNICODE < 3975 // #endif /* _WIN32_WINNT >= 0x0400 */ < 3976 < 3977 extern(Windows) export HANDLE FindFirstFileA( < 3978 LPCSTR lpFileName, < 3979 LPWIN32_FIND_DATAA lpFindFileData); < 3980 extern(Windows) export HANDLE FindFirstFileW( < 3981 LPCWSTR lpFileName, < 3982 LPWIN32_FIND_DATAW lpFindFileData); < 3983 // #ifdef UNICODE < 3984 alias FindFirstFileW FindFirstFile; < 3985 // #else < 3986 // #... < 3987 // #endif // !UNICODE < 3988 < 3989 extern(Windows) export BOOL FindNextFileA( < 3990 HANDLE hFindFile, < 3991 LPWIN32_FIND_DATAA lpFindFileData); < 3992 extern(Windows) export BOOL FindNextFileW( < 3993 HANDLE hFindFile, < 3994 LPWIN32_FIND_DATAW lpFindFileData); < 3995 // #ifdef UNICODE < 3996 alias FindNextFileW FindNextFile; < 3997 // #else < 3998 // #... < 3999 // #endif // !UNICODE < 4000 < 4001 extern(Windows) export DWORD SearchPathA( < 4002 LPCSTR lpPath, < 4003 LPCSTR lpFileName, < 4004 LPCSTR lpExtension, < 4005 DWORD nBufferLength, < 4006 LPSTR lpBuffer, < 4007 LPSTR *lpFilePart); < 4008 extern(Windows) export DWORD SearchPathW( < 4009 LPCWSTR lpPath, < 4010 LPCWSTR lpFileName, < 4011 LPCWSTR lpExtension, < 4012 DWORD nBufferLength, < 4013 LPWSTR lpBuffer, < 4014 LPWSTR *lpFilePart); < 4015 // #ifdef UNICODE < 4016 alias SearchPathW SearchPath; < 4017 // #else < 4018 // #... < 4019 // #endif // !UNICODE < 4020 < 4021 extern(Windows) export BOOL CopyFileA( < 4022 LPCSTR lpExistingFileName, < 4023 LPCSTR lpNewFileName, < 4024 BOOL bFailIfExists); < 4025 extern(Windows) export BOOL CopyFileW( < 4026 LPCWSTR lpExistingFileName, < 4027 LPCWSTR lpNewFileName, < 4028 BOOL bFailIfExists); < 4029 // #ifdef UNICODE < 4030 alias CopyFileW CopyFile; < 4031 // #else < 4032 // #... < 4033 // #endif // !UNICODE < 4034 < 4035 // #if(_WIN32_WINNT >= 0x0400) < 4036 extern(Windows) alias DWORD function( LARGE_INTEGER TotalFileSize, LARGE_INTEGER < 4037 < 4038 extern(Windows) export BOOL CopyFileExA( < 4039 LPCSTR lpExistingFileName, < 4040 LPCSTR lpNewFileName, < 4041 LPPROGRESS_ROUTINE lpProgressRoutine , < 4042 LPVOID lpData , < 4043 LPBOOL pbCancel , < 4044 DWORD dwCopyFlags); < 4045 extern(Windows) export BOOL CopyFileExW( < 4046 LPCWSTR lpExistingFileName, < 4047 LPCWSTR lpNewFileName, < 4048 LPPROGRESS_ROUTINE lpProgressRoutine , < 4049 LPVOID lpData , < 4050 LPBOOL pbCancel , < 4051 DWORD dwCopyFlags); < 4052 // #ifdef UNICODE < 4053 alias CopyFileExW CopyFileEx; < 4054 // #else < 4055 // #... < 4056 // #endif // !UNICODE < 4057 // #endif /* _WIN32_WINNT >= 0x0400 */ < 4058 < 4059 extern(Windows) export BOOL MoveFileA( < 4060 LPCSTR lpExistingFileName, < 4061 LPCSTR lpNewFileName); < 4062 extern(Windows) export BOOL MoveFileW( < 4063 LPCWSTR lpExistingFileName, < 4064 LPCWSTR lpNewFileName); < 4065 // #ifdef UNICODE < 4066 alias MoveFileW MoveFile; < 4067 // #else < 4068 // #... < 4069 // #endif // !UNICODE < 4070 < 4071 extern(Windows) export BOOL MoveFileExA( < 4072 LPCSTR lpExistingFileName, < 4073 LPCSTR lpNewFileName, < 4074 DWORD dwFlags); < 4075 extern(Windows) export BOOL MoveFileExW( < 4076 LPCWSTR lpExistingFileName, < 4077 LPCWSTR lpNewFileName, < 4078 DWORD dwFlags); < 4079 // #ifdef UNICODE < 4080 alias MoveFileExW MoveFileEx; < 4081 // #else < 4082 // #... < 4083 // #endif // !UNICODE < 4084 < 4085 // #if (_WIN32_WINNT >= 0x0500) | 2817 static if (_WIN32_WINNT >= 0x501) { 4086 extern(Windows) export BOOL MoveFileWithProgressA( < 4087 LPCSTR lpExistingFileName, < 4088 LPCSTR lpNewFileName, < 4089 LPPROGRESS_ROUTINE lpProgressRoutine , < 4090 LPVOID lpData , < 4091 DWORD dwFlags); < 4092 extern(Windows) export BOOL MoveFileWithProgressW( < 4093 LPCWSTR lpExistingFileName, < 4094 LPCWSTR lpNewFileName, < 4095 LPPROGRESS_ROUTINE lpProgressRoutine , < 4096 LPVOID lpData , < 4097 DWORD dwFlags); < 4098 // #ifdef UNICODE < 4099 alias MoveFileWithProgressW MoveFileWithProgress; < 4100 // #else < 4101 // #... < 4102 // #endif // !UNICODE < 4103 // #endif // (_WIN32_WINNT >= 0x0500) < 4104 < 4105 enum : uint { MOVEFILE_REPLACE_EXISTING = 0x00000001 } < 4106 enum : uint { MOVEFILE_COPY_ALLOWED = 0x00000002 } < 4107 enum : uint { MOVEFILE_DELAY_UNTIL_REBOOT = 0x00000004 } < 4108 enum : uint { MOVEFILE_WRITE_THROUGH = 0x00000008 } < 4109 // #if (_WIN32_WINNT >= 0x0500) < 4110 enum : uint { MOVEFILE_CREATE_HARDLINK = 0x00000010 } < 4111 enum : uint { MOVEFILE_FAIL_IF_NOT_TRACKABLE = 0x00000020 } < 4112 // #endif // (_WIN32_WINNT >= 0x0500) < 4113 < 4114 // #if (_WIN32_WINNT >= 0x0500) < 4115 extern(Windows) export BOOL ReplaceFileA( < 4116 LPCSTR lpReplacedFileName, < 4117 LPCSTR lpReplacementFileName, < 4118 LPCSTR lpBackupFileName, < 4119 DWORD dwReplaceFlags, < 4120 LPVOID lpExclude, < 4121 LPVOID lpReserved); < 4122 extern(Windows) export BOOL ReplaceFileW( < 4123 LPCWSTR lpReplacedFileName, < 4124 LPCWSTR lpReplacementFileName, < 4125 LPCWSTR lpBackupFileName, < 4126 DWORD dwReplaceFlags, < 4127 LPVOID lpExclude, < 4128 LPVOID lpReserved); < 4129 // #ifdef UNICODE < 4130 alias ReplaceFileW ReplaceFile; < 4131 // #else < 4132 // #... < 4133 // #endif // !UNICODE < 4134 // #endif // (_WIN32_WINNT >= 0x0500) < 4135 < 4136 // #if (_WIN32_WINNT >= 0x0500) < 4137 < 4138 extern(Windows) export BOOL CreateHardLinkA( < 4139 LPCSTR lpFileName, < 4140 LPCSTR lpExistingFileName, < 4141 LPSECURITY_ATTRIBUTES lpSecurityAttributes); < 4142 extern(Windows) export BOOL CreateHardLinkW( < 4143 LPCWSTR lpFileName, < 4144 LPCWSTR lpExistingFileName, < 4145 LPSECURITY_ATTRIBUTES lpSecurityAttributes); < 4146 // #ifdef UNICODE < 4147 alias CreateHardLinkW CreateHardLink; < 4148 // #else < 4149 // #... < 4150 // #endif // !UNICODE < 4151 < 4152 // #endif // (_WIN32_WINNT >= 0x0500) < 4153 < 4154 extern(Windows) export HANDLE CreateNamedPipeA( < 4155 LPCSTR lpName, < 4156 DWORD dwOpenMode, < 4157 DWORD dwPipeMode, < 4158 DWORD nMaxInstances, < 4159 DWORD nOutBufferSize, < 4160 DWORD nInBufferSize, < 4161 DWORD nDefaultTimeOut, < 4162 LPSECURITY_ATTRIBUTES lpSecurityAttributes); < 4163 extern(Windows) export HANDLE CreateNamedPipeW( < 4164 LPCWSTR lpName, < 4165 DWORD dwOpenMode, < 4166 DWORD dwPipeMode, < 4167 DWORD nMaxInstances, < 4168 DWORD nOutBufferSize, < 4169 DWORD nInBufferSize, < 4170 DWORD nDefaultTimeOut, < 4171 LPSECURITY_ATTRIBUTES lpSecurityAttributes); < 4172 // #ifdef UNICODE < 4173 alias CreateNamedPipeW CreateNamedPipe; < 4174 // #else < 4175 // #... < 4176 // #endif // !UNICODE < 4177 < 4178 extern(Windows) export BOOL GetNamedPipeHandleStateA( < 4179 HANDLE hNamedPipe, < 4180 LPDWORD lpState, < 4181 LPDWORD lpCurInstances, < 4182 LPDWORD lpMaxCollectionCount, < 4183 LPDWORD lpCollectDataTimeout, < 4184 LPSTR lpUserName, < 4185 DWORD nMaxUserNameSize); < 4186 extern(Windows) export BOOL GetNamedPipeHandleStateW( < 4187 HANDLE hNamedPipe, < 4188 LPDWORD lpState, < 4189 LPDWORD lpCurInstances, < 4190 LPDWORD lpMaxCollectionCount, < 4191 LPDWORD lpCollectDataTimeout, < 4192 LPWSTR lpUserName, < 4193 DWORD nMaxUserNameSize); < 4194 // #ifdef UNICODE < 4195 alias GetNamedPipeHandleStateW GetNamedPipeHandleState; < 4196 // #else < 4197 // #... < 4198 // #endif // !UNICODE < 4199 < 4200 extern(Windows) export BOOL CallNamedPipeA( < 4201 LPCSTR lpNamedPipeName, < 4202 LPVOID lpInBuffer, < 4203 DWORD nInBufferSize, < 4204 LPVOID lpOutBuffer, < 4205 DWORD nOutBufferSize, < 4206 LPDWORD lpBytesRead, < 4207 DWORD nTimeOut); < 4208 extern(Windows) export BOOL CallNamedPipeW( < 4209 LPCWSTR lpNamedPipeName, < 4210 LPVOID lpInBuffer, < 4211 DWORD nInBufferSize, < 4212 LPVOID lpOutBuffer, < 4213 DWORD nOutBufferSize, < 4214 LPDWORD lpBytesRead, < 4215 DWORD nTimeOut); < 4216 // #ifdef UNICODE < 4217 alias CallNamedPipeW CallNamedPipe; < 4218 // #else < 4219 // #... < 4220 // #endif // !UNICODE < 4221 < 4222 extern(Windows) export BOOL WaitNamedPipeA( < 4223 LPCSTR lpNamedPipeName, < 4224 DWORD nTimeOut); < 4225 extern(Windows) export BOOL WaitNamedPipeW( < 4226 LPCWSTR lpNamedPipeName, < 4227 DWORD nTimeOut); < 4228 // #ifdef UNICODE < 4229 alias WaitNamedPipeW WaitNamedPipe; < 4230 // #else < 4231 // #... < 4232 // #endif // !UNICODE < 4233 < 4234 extern(Windows) export BOOL SetVolumeLabelA( < 4235 LPCSTR lpRootPathName, < 4236 LPCSTR lpVolumeName); < 4237 extern(Windows) export BOOL SetVolumeLabelW( < 4238 LPCWSTR lpRootPathName, < 4239 LPCWSTR lpVolumeName); < 4240 // #ifdef UNICODE < 4241 alias SetVolumeLabelW SetVolumeLabel; < 4242 // #else < 4243 // #... < 4244 // #endif // !UNICODE < 4245 < 4246 extern(Windows) export VOID SetFileApisToOEM(); < 4247 < 4248 extern(Windows) export VOID SetFileApisToANSI(); < 4249 < 4250 extern(Windows) export BOOL AreFileApisANSI(); < 4251 < 4252 extern(Windows) export BOOL GetVolumeInformationA( < 4253 LPCSTR lpRootPathName, < 4254 LPSTR lpVolumeNameBuffer, < 4255 DWORD nVolumeNameSize, < 4256 LPDWORD lpVolumeSerialNumber, < 4257 LPDWORD lpMaximumComponentLength, < 4258 LPDWORD lpFileSystemFlags, < 4259 LPSTR lpFileSystemNameBuffer, < 4260 DWORD nFileSystemNameSize); < 4261 extern(Windows) export BOOL GetVolumeInformationW( < 4262 LPCWSTR lpRootPathName, < 4263 LPWSTR lpVolumeNameBuffer, < 4264 DWORD nVolumeNameSize, < 4265 LPDWORD lpVolumeSerialNumber, < 4266 LPDWORD lpMaximumComponentLength, < 4267 LPDWORD lpFileSystemFlags, < 4268 LPWSTR lpFileSystemNameBuffer, < 4269 DWORD nFileSystemNameSize); < 4270 // #ifdef UNICODE < 4271 alias GetVolumeInformationW GetVolumeInformation; < 4272 // #else < 4273 // #... < 4274 // #endif // !UNICODE < 4275 < 4276 extern(Windows) export BOOL CancelIo( < 4277 HANDLE hFile); < 4278 < 4279 extern(Windows) export BOOL ClearEventLogA( < 4280 HANDLE hEventLog, < 4281 LPCSTR lpBackupFileName); < 4282 extern(Windows) export BOOL ClearEventLogW( < 4283 HANDLE hEventLog, < 4284 LPCWSTR lpBackupFileName); < 4285 // #ifdef UNICODE < 4286 alias ClearEventLogW ClearEventLog; < 4287 // #else < 4288 // #... < 4289 // #endif // !UNICODE < 4290 < 4291 extern(Windows) export BOOL BackupEventLogA( < 4292 HANDLE hEventLog, < 4293 LPCSTR lpBackupFileName); < 4294 extern(Windows) export BOOL BackupEventLogW( < 4295 HANDLE hEventLog, < 4296 LPCWSTR lpBackupFileName); < 4297 // #ifdef UNICODE < 4298 alias BackupEventLogW BackupEventLog; < 4299 // #else < 4300 // #... < 4301 // #endif // !UNICODE < 4302 < 4303 extern(Windows) export BOOL CloseEventLog( < 4304 HANDLE hEventLog); < 4305 < 4306 extern(Windows) export BOOL DeregisterEventSource( < 4307 HANDLE hEventLog); < 4308 < 4309 extern(Windows) export BOOL NotifyChangeEventLog( < 4310 HANDLE hEventLog, < 4311 HANDLE hEvent); < 4312 < 4313 extern(Windows) export BOOL GetNumberOfEventLogRecords( < 4314 HANDLE hEventLog, < 4315 PDWORD NumberOfRecords); < 4316 < 4317 extern(Windows) export BOOL GetOldestEventLogRecord( < 4318 HANDLE hEventLog, < 4319 PDWORD OldestRecord); < 4320 < 4321 extern(Windows) export HANDLE OpenEventLogA( < 4322 LPCSTR lpUNCServerName, < 4323 LPCSTR lpSourceName); < 4324 extern(Windows) export HANDLE OpenEventLogW( < 4325 LPCWSTR lpUNCServerName, < 4326 LPCWSTR lpSourceName); < 4327 // #ifdef UNICODE < 4328 alias OpenEventLogW OpenEventLog; < 4329 // #else < 4330 // #... < 4331 // #endif // !UNICODE < 4332 < 4333 extern(Windows) export HANDLE RegisterEventSourceA( < 4334 LPCSTR lpUNCServerName, < 4335 LPCSTR lpSourceName); < 4336 extern(Windows) export HANDLE RegisterEventSourceW( < 4337 LPCWSTR lpUNCServerName, < 4338 LPCWSTR lpSourceName); < 4339 // #ifdef UNICODE < 4340 alias RegisterEventSourceW RegisterEventSource; < 4341 // #else < 4342 // #... < 4343 // #endif // !UNICODE < 4344 < 4345 extern(Windows) export HANDLE OpenBackupEventLogA( < 4346 LPCSTR lpUNCServerName, < 4347 LPCSTR lpFileName); < 4348 extern(Windows) export HANDLE OpenBackupEventLogW( < 4349 LPCWSTR lpUNCServerName, < 4350 LPCWSTR lpFileName); < 4351 // #ifdef UNICODE < 4352 alias OpenBackupEventLogW OpenBackupEventLog; < 4353 // #else < 4354 // #... < 4355 // #endif // !UNICODE < 4356 < 4357 extern(Windows) export BOOL ReadEventLogA( < 4358 HANDLE hEventLog, < 4359 DWORD dwReadFlags, < 4360 DWORD dwRecordOffset, < 4361 LPVOID lpBuffer, < 4362 DWORD nNumberOfBytesToRead, < 4363 DWORD *pnBytesRead, < 4364 DWORD *pnMinNumberOfBytesNeeded); < 4365 extern(Windows) export BOOL ReadEventLogW( < 4366 HANDLE hEventLog, < 4367 DWORD dwReadFlags, < 4368 DWORD dwRecordOffset, < 4369 LPVOID lpBuffer, < 4370 DWORD nNumberOfBytesToRead, < 4371 DWORD *pnBytesRead, < 4372 DWORD *pnMinNumberOfBytesNeeded); < 4373 // #ifdef UNICODE < 4374 alias ReadEventLogW ReadEventLog; < 4375 // #else < 4376 // #... < 4377 // #endif // !UNICODE < 4378 < 4379 extern(Windows) export BOOL ReportEventA( < 4380 HANDLE hEventLog, < 4381 WORD wType, < 4382 WORD wCategory, < 4383 DWORD dwEventID, < 4384 PSID lpUserSid, < 4385 WORD wNumStrings, < 4386 DWORD dwDataSize, < 4387 LPCSTR *lpStrings, < 4388 LPVOID lpRawData); < 4389 extern(Windows) export BOOL ReportEventW( < 4390 HANDLE hEventLog, < 4391 WORD wType, < 4392 WORD wCategory, < 4393 DWORD dwEventID, < 4394 PSID lpUserSid, < 4395 WORD wNumStrings, < 4396 DWORD dwDataSize, < 4397 LPCWSTR *lpStrings, < 4398 LPVOID lpRawData); < 4399 // #ifdef UNICODE < 4400 alias ReportEventW ReportEvent; < 4401 // #else < 4402 // #... < 4403 // #endif // !UNICODE < 4404 < 4405 enum : uint { EVENTLOG_FULL_INFO = 0 } < 4406 < 4407 struct _EVENTLOG_FULL_INFORMATION { < 4408 DWORD dwFull; < 4409 } < 4410 alias _EVENTLOG_FULL_INFORMATION EVENTLOG_FULL_INFORMATION; < 4411 alias _EVENTLOG_FULL_INFORMATION* LPEVENTLOG_FULL_INFORMATION; < 4412 < 4413 extern(Windows) export BOOL GetEventLogInformation( < 4414 HANDLE hEventLog, < 4415 DWORD dwInfoLevel, < 4416 LPVOID lpBuffer, < 4417 DWORD cbBufSize, < 4418 LPDWORD pcbBytesNeeded); < 4419 < 4420 extern(Windows) export BOOL DuplicateToken( < 4421 HANDLE ExistingTokenHandle, < 4422 SECURITY_IMPERSONATION_LEVEL ImpersonationLevel, < 4423 PHANDLE DuplicateTokenHandle); < 4424 < 4425 extern(Windows) export BOOL GetKernelObjectSecurity( < 4426 HANDLE Handle, < 4427 SECURITY_INFORMATION RequestedInformation, < 4428 PSECURITY_DESCRIPTOR pSecurityDescriptor, < 4429 DWORD nLength, < 4430 LPDWORD lpnLengthNeeded); < 4431 < 4432 extern(Windows) export BOOL ImpersonateNamedPipeClient( < 4433 HANDLE hNamedPipe); < 4434 < 4435 extern(Windows) export BOOL ImpersonateSelf( < 4436 SECURITY_IMPERSONATION_LEVEL ImpersonationLevel); < 4437 < 4438 extern(Windows) export BOOL RevertToSelf(); < 4439 < 4440 extern(Windows) export BOOL SetThreadToken( < 4441 PHANDLE Thread, < 4442 HANDLE Token); < 4443 < 4444 extern(Windows) export BOOL AccessCheck( < 4445 PSECURITY_DESCRIPTOR pSecurityDescriptor, < 4446 HANDLE ClientToken, < 4447 DWORD DesiredAccess, < 4448 PGENERIC_MAPPING GenericMapping, < 4449 PPRIVILEGE_SET PrivilegeSet, < 4450 LPDWORD PrivilegeSetLength, < 4451 LPDWORD GrantedAccess, < 4452 LPBOOL AccessStatus); < 4453 < 4454 // #if(_WIN32_WINNT >= 0x0500) < 4455 extern(Windows) export BOOL AccessCheckByType( < 4456 PSECURITY_DESCRIPTOR pSecurityDescriptor, < 4457 PSID PrincipalSelfSid, < 4458 HANDLE ClientToken, < 4459 DWORD DesiredAccess, < 4460 POBJECT_TYPE_LIST ObjectTypeList, < 4461 DWORD ObjectTypeListLength, < 4462 PGENERIC_MAPPING GenericMapping, < 4463 PPRIVILEGE_SET PrivilegeSet, < 4464 LPDWORD PrivilegeSetLength, < 4465 LPDWORD GrantedAccess, < 4466 LPBOOL AccessStatus); < 4467 < 4468 extern(Windows) export BOOL AccessCheckByTypeResultList( < 4469 PSECURITY_DESCRIPTOR pSecurityDescriptor, < 4470 PSID PrincipalSelfSid, < 4471 HANDLE ClientToken, < 4472 DWORD DesiredAccess, < 4473 POBJECT_TYPE_LIST ObjectTypeList, < 4474 DWORD ObjectTypeListLength, < 4475 PGENERIC_MAPPING GenericMapping, < 4476 PPRIVILEGE_SET PrivilegeSet, < 4477 LPDWORD PrivilegeSetLength, < 4478 LPDWORD GrantedAccessList, < 4479 LPDWORD AccessStatusList); < 4480 // #endif /* _WIN32_WINNT >= 0x0500 */ < 4481 < 4482 extern(Windows) export BOOL OpenProcessToken( < 4483 HANDLE ProcessHandle, < 4484 DWORD DesiredAccess, < 4485 PHANDLE TokenHandle); < 4486 < 4487 extern(Windows) export BOOL OpenThreadToken( < 4488 HANDLE ThreadHandle, < 4489 DWORD DesiredAccess, < 4490 BOOL OpenAsSelf, < 4491 PHANDLE TokenHandle); < 4492 < 4493 extern(Windows) export BOOL GetTokenInformation( < 4494 HANDLE TokenHandle, < 4495 TOKEN_INFORMATION_CLASS TokenInformationClass, < 4496 LPVOID TokenInformation, < 4497 DWORD TokenInformationLength, < 4498 PDWORD ReturnLength); < 4499 < 4500 extern(Windows) export BOOL SetTokenInformation( < 4501 HANDLE TokenHandle, < 4502 TOKEN_INFORMATION_CLASS TokenInformationClass, < 4503 LPVOID TokenInformation, < 4504 DWORD TokenInformationLength); < 4505 < 4506 extern(Windows) export BOOL AdjustTokenPrivileges( < 4507 HANDLE TokenHandle, < 4508 BOOL DisableAllPrivileges, < 4509 PTOKEN_PRIVILEGES NewState, < 4510 DWORD BufferLength, < 4511 PTOKEN_PRIVILEGES PreviousState, < 4512 PDWORD ReturnLength); < 4513 < 4514 extern(Windows) export BOOL AdjustTokenGroups( < 4515 HANDLE TokenHandle, < 4516 BOOL ResetToDefault, < 4517 PTOKEN_GROUPS NewState, < 4518 DWORD BufferLength, < 4519 PTOKEN_GROUPS PreviousState, < 4520 PDWORD ReturnLength); < 4521 < 4522 extern(Windows) export BOOL PrivilegeCheck( < 4523 HANDLE ClientToken, < 4524 PPRIVILEGE_SET RequiredPrivileges, < 4525 LPBOOL pfResult); < 4526 < 4527 extern(Windows) export BOOL AccessCheckAndAuditAlarmA( < 4528 LPCSTR SubsystemName, < 4529 LPVOID HandleId, < 4530 LPSTR ObjectTypeName, < 4531 LPSTR ObjectName, < 4532 PSECURITY_DESCRIPTOR SecurityDescriptor, < 4533 DWORD DesiredAccess, < 4534 PGENERIC_MAPPING GenericMapping, < 4535 BOOL ObjectCreation, < 4536 LPDWORD GrantedAccess, < 4537 LPBOOL AccessStatus, < 4538 LPBOOL pfGenerateOnClose); < 4539 extern(Windows) export BOOL AccessCheckAndAuditAlarmW( < 4540 LPCWSTR SubsystemName, < 4541 LPVOID HandleId, < 4542 LPWSTR ObjectTypeName, < 4543 LPWSTR ObjectName, < 4544 PSECURITY_DESCRIPTOR SecurityDescriptor, < 4545 DWORD DesiredAccess, < 4546 PGENERIC_MAPPING GenericMapping, < 4547 BOOL ObjectCreation, < 4548 LPDWORD GrantedAccess, < 4549 LPBOOL AccessStatus, < 4550 LPBOOL pfGenerateOnClose); < 4551 // #ifdef UNICODE < 4552 alias AccessCheckAndAuditAlarmW AccessCheckAndAuditAlarm; < 4553 // #else < 4554 // #... < 4555 // #endif // !UNICODE < 4556 < 4557 // #if(_WIN32_WINNT >= 0x0500) < 4558 < 4559 extern(Windows) export BOOL AccessCheckByTypeAndAuditAlarmA( < 4560 LPCSTR SubsystemName, < 4561 LPVOID HandleId, < 4562 LPCSTR ObjectTypeName, < 4563 LPCSTR ObjectName, < 4564 PSECURITY_DESCRIPTOR SecurityDescriptor, < 4565 PSID PrincipalSelfSid, < 4566 DWORD DesiredAccess, < 4567 AUDIT_EVENT_TYPE AuditType, < 4568 DWORD Flags, < 4569 POBJECT_TYPE_LIST ObjectTypeList, < 4570 DWORD ObjectTypeListLength, < 4571 PGENERIC_MAPPING GenericMapping, < 4572 BOOL ObjectCreation, < 4573 LPDWORD GrantedAccess, < 4574 LPBOOL AccessStatus, < 4575 LPBOOL pfGenerateOnClose); < 4576 extern(Windows) export BOOL AccessCheckByTypeAndAuditAlarmW( < 4577 LPCWSTR SubsystemName, < 4578 LPVOID HandleId, < 4579 LPCWSTR ObjectTypeName, < 4580 LPCWSTR ObjectName, < 4581 PSECURITY_DESCRIPTOR SecurityDescriptor, < 4582 PSID PrincipalSelfSid, < 4583 DWORD DesiredAccess, < 4584 AUDIT_EVENT_TYPE AuditType, < 4585 DWORD Flags, < 4586 POBJECT_TYPE_LIST ObjectTypeList, < 4587 DWORD ObjectTypeListLength, < 4588 PGENERIC_MAPPING GenericMapping, < 4589 BOOL ObjectCreation, < 4590 LPDWORD GrantedAccess, < 4591 LPBOOL AccessStatus, < 4592 LPBOOL pfGenerateOnClose); < 4593 // #ifdef UNICODE < 4594 alias AccessCheckByTypeAndAuditAlarmW AccessCheckByTypeAndAuditAlarm; < 4595 // #else < 4596 // #... < 4597 // #endif // !UNICODE < 4598 < 4599 extern(Windows) export BOOL AccessCheckByTypeResultListAndAuditAlarmA( < 4600 LPCSTR SubsystemName, < 4601 LPVOID HandleId, < 4602 LPCSTR ObjectTypeName, < 4603 LPCSTR ObjectName, < 4604 PSECURITY_DESCRIPTOR SecurityDescriptor, < 4605 PSID PrincipalSelfSid, < 4606 DWORD DesiredAccess, < 4607 AUDIT_EVENT_TYPE AuditType, < 4608 DWORD Flags, < 4609 POBJECT_TYPE_LIST ObjectTypeList, < 4610 DWORD ObjectTypeListLength, < 4611 PGENERIC_MAPPING GenericMapping, < 4612 BOOL ObjectCreation, < 4613 LPDWORD GrantedAccess, < 4614 LPDWORD AccessStatusList, < 4615 LPBOOL pfGenerateOnClose); < 4616 extern(Windows) export BOOL AccessCheckByTypeResultListAndAuditAlarmW( < 4617 LPCWSTR SubsystemName, < 4618 LPVOID HandleId, < 4619 LPCWSTR ObjectTypeName, < 4620 LPCWSTR ObjectName, < 4621 PSECURITY_DESCRIPTOR SecurityDescriptor, < 4622 PSID PrincipalSelfSid, < 4623 DWORD DesiredAccess, < 4624 AUDIT_EVENT_TYPE AuditType, < 4625 DWORD Flags, < 4626 POBJECT_TYPE_LIST ObjectTypeList, < 4627 DWORD ObjectTypeListLength, < 4628 PGENERIC_MAPPING GenericMapping, < 4629 BOOL ObjectCreation, < 4630 LPDWORD GrantedAccess, < 4631 LPDWORD AccessStatusList, < 4632 LPBOOL pfGenerateOnClose); < 4633 // #ifdef UNICODE < 4634 alias AccessCheckByTypeResultListAndAuditAlarmW AccessCheckByTypeResultListAndAu < 4635 // #else < 4636 // #... < 4637 // #endif // !UNICODE < 4638 < 4639 extern(Windows) export BOOL AccessCheckByTypeResultListAndAuditAlarmByHandleA( < 4640 LPCSTR SubsystemName, < 4641 LPVOID HandleId, < 4642 HANDLE ClientToken, < 4643 LPCSTR ObjectTypeName, < 4644 LPCSTR ObjectName, < 4645 PSECURITY_DESCRIPTOR SecurityDescriptor, < 4646 PSID PrincipalSelfSid, < 4647 DWORD DesiredAccess, < 4648 AUDIT_EVENT_TYPE AuditType, < 4649 DWORD Flags, < 4650 POBJECT_TYPE_LIST ObjectTypeList, < 4651 DWORD ObjectTypeListLength, < 4652 PGENERIC_MAPPING GenericMapping, < 4653 BOOL ObjectCreation, < 4654 LPDWORD GrantedAccess, < 4655 LPDWORD AccessStatusList, < 4656 LPBOOL pfGenerateOnClose); < 4657 extern(Windows) export BOOL AccessCheckByTypeResultListAndAuditAlarmByHandleW( < 4658 LPCWSTR SubsystemName, < 4659 LPVOID HandleId, < 4660 HANDLE ClientToken, < 4661 LPCWSTR ObjectTypeName, < 4662 LPCWSTR ObjectName, < 4663 PSECURITY_DESCRIPTOR SecurityDescriptor, < 4664 PSID PrincipalSelfSid, < 4665 DWORD DesiredAccess, < 4666 AUDIT_EVENT_TYPE AuditType, < 4667 DWORD Flags, < 4668 POBJECT_TYPE_LIST ObjectTypeList, < 4669 DWORD ObjectTypeListLength, < 4670 PGENERIC_MAPPING GenericMapping, < 4671 BOOL ObjectCreation, < 4672 LPDWORD GrantedAccess, < 4673 LPDWORD AccessStatusList, < 4674 LPBOOL pfGenerateOnClose); < 4675 // #ifdef UNICODE < 4676 alias AccessCheckByTypeResultListAndAuditAlarmByHandleW AccessCheckByTypeResultL < 4677 // #else < 4678 // #... < 4679 // #endif // !UNICODE < 4680 < 4681 // #endif //(_WIN32_WINNT >= 0x0500) < 4682 < 4683 extern(Windows) export BOOL ObjectOpenAuditAlarmA( < 4684 LPCSTR SubsystemName, < 4685 LPVOID HandleId, < 4686 LPSTR ObjectTypeName, < 4687 LPSTR ObjectName, < 4688 PSECURITY_DESCRIPTOR pSecurityDescriptor, < 4689 HANDLE ClientToken, < 4690 DWORD DesiredAccess, < 4691 DWORD GrantedAccess, < 4692 PPRIVILEGE_SET Privileges, < 4693 BOOL ObjectCreation, < 4694 BOOL AccessGranted, < 4695 LPBOOL GenerateOnClose); < 4696 extern(Windows) export BOOL ObjectOpenAuditAlarmW( < 4697 LPCWSTR SubsystemName, < 4698 LPVOID HandleId, < 4699 LPWSTR ObjectTypeName, < 4700 LPWSTR ObjectName, < 4701 PSECURITY_DESCRIPTOR pSecurityDescriptor, < 4702 HANDLE ClientToken, < 4703 DWORD DesiredAccess, < 4704 DWORD GrantedAccess, < 4705 PPRIVILEGE_SET Privileges, < 4706 BOOL ObjectCreation, < 4707 BOOL AccessGranted, < 4708 LPBOOL GenerateOnClose); < 4709 // #ifdef UNICODE < 4710 alias ObjectOpenAuditAlarmW ObjectOpenAuditAlarm; < 4711 // #else < 4712 // #... < 4713 // #endif // !UNICODE < 4714 < 4715 extern(Windows) export BOOL ObjectPrivilegeAuditAlarmA( < 4716 LPCSTR SubsystemName, < 4717 LPVOID HandleId, < 4718 HANDLE ClientToken, < 4719 DWORD DesiredAccess, < 4720 PPRIVILEGE_SET Privileges, < 4721 BOOL AccessGranted); < 4722 extern(Windows) export BOOL ObjectPrivilegeAuditAlarmW( < 4723 LPCWSTR SubsystemName, < 4724 LPVOID HandleId, < 4725 HANDLE ClientToken, < 4726 DWORD DesiredAccess, < 4727 PPRIVILEGE_SET Privileges, < 4728 BOOL AccessGranted); < 4729 // #ifdef UNICODE < 4730 alias ObjectPrivilegeAuditAlarmW ObjectPrivilegeAuditAlarm; < 4731 // #else < 4732 // #... < 4733 // #endif // !UNICODE < 4734 < 4735 extern(Windows) export BOOL ObjectCloseAuditAlarmA( < 4736 LPCSTR SubsystemName, < 4737 LPVOID HandleId, < 4738 BOOL GenerateOnClose); < 4739 extern(Windows) export BOOL ObjectCloseAuditAlarmW( < 4740 LPCWSTR SubsystemName, < 4741 LPVOID HandleId, < 4742 BOOL GenerateOnClose); < 4743 // #ifdef UNICODE < 4744 alias ObjectCloseAuditAlarmW ObjectCloseAuditAlarm; < 4745 // #else < 4746 // #... < 4747 // #endif // !UNICODE < 4748 < 4749 extern(Windows) export BOOL ObjectDeleteAuditAlarmA( < 4750 LPCSTR SubsystemName, < 4751 LPVOID HandleId, < 4752 BOOL GenerateOnClose); < 4753 extern(Windows) export BOOL ObjectDeleteAuditAlarmW( < 4754 LPCWSTR SubsystemName, < 4755 LPVOID HandleId, < 4756 BOOL GenerateOnClose); < 4757 // #ifdef UNICODE < 4758 alias ObjectDeleteAuditAlarmW ObjectDeleteAuditAlarm; < 4759 // #else < 4760 // #... < 4761 // #endif // !UNICODE < 4762 < 4763 extern(Windows) export BOOL PrivilegedServiceAuditAlarmA( < 4764 LPCSTR SubsystemName, < 4765 LPCSTR ServiceName, < 4766 HANDLE ClientToken, < 4767 PPRIVILEGE_SET Privileges, < 4768 BOOL AccessGranted); < 4769 extern(Windows) export BOOL PrivilegedServiceAuditAlarmW( < 4770 LPCWSTR SubsystemName, < 4771 LPCWSTR ServiceName, < 4772 HANDLE ClientToken, < 4773 PPRIVILEGE_SET Privileges, < 4774 BOOL AccessGranted); < 4775 // #ifdef UNICODE < 4776 alias PrivilegedServiceAuditAlarmW PrivilegedServiceAuditAlarm; < 4777 // #else < 4778 // #... < 4779 // #endif // !UNICODE < 4780 < 4781 // #if(_WIN32_WINNT >= 0x0501) < 4782 < 4783 enum _0 { < 4784 < 4785 WinNullSid = 0, < 4786 WinWorldSid = 1, < 4787 WinLocalSid = 2, < 4788 WinCreatorOwnerSid = 3, < 4789 WinCreatorGroupSid = 4, < 4790 WinCreatorOwnerServerSid = 5, < 4791 WinCreatorGroupServerSid = 6, < 4792 WinNtAuthoritySid = 7, < 4793 WinDialupSid = 8, < 4794 WinNetworkSid = 9, < 4795 WinBatchSid = 10, < 4796 WinInteractiveSid = 11, < 4797 WinServiceSid = 12, < 4798 WinAnonymousSid = 13, < 4799 WinProxySid = 14, < 4800 WinEnterpriseControllersSid = 15, < 4801 WinSelfSid = 16, < 4802 WinAuthenticatedUserSid = 17, < 4803 WinRestrictedCodeSid = 18, < 4804 WinTerminalServerSid = 19, < 4805 WinRemoteLogonIdSid = 20, < 4806 WinLogonIdsSid = 21, < 4807 WinLocalSystemSid = 22, < 4808 WinLocalServiceSid = 23, < 4809 WinNetworkServiceSid = 24, < 4810 WinBuiltinDomainSid = 25, < 4811 WinBuiltinAdministratorsSid = 26, < 4812 WinBuiltinUsersSid = 27, < 4813 WinBuiltinGuestsSid = 28, < 4814 WinBuiltinPowerUsersSid = 29, < 4815 WinBuiltinAccountOperatorsSid = 30, < 4816 WinBuiltinSystemOperatorsSid = 31, < 4817 WinBuiltinPrintOperatorsSid = 32, < 4818 WinBuiltinBackupOperatorsSid = 33, < 4819 WinBuiltinReplicatorSid = 34, < 4820 WinBuiltinPreWindows2000CompatibleAccessSid = 35, < 4821 WinBuiltinRemoteDesktopUsersSid = 36, < 4822 WinBuiltinNetworkConfigurationOperatorsSid = 37, < 4823 WinAccountAdministratorSid = 38, < 4824 WinAccountGuestSid = 39, < 4825 WinAccountKrbtgtSid = 40, < 4826 WinAccountDomainAdminsSid = 41, < 4827 WinAccountDomainUsersSid = 42, < 4828 WinAccountDomainGuestsSid = 43, < 4829 WinAccountComputersSid = 44, < 4830 WinAccountControllersSid = 45, < 4831 WinAccountCertAdminsSid = 46, < 4832 WinAccountSchemaAdminsSid = 47, < 4833 WinAccountEnterpriseAdminsSid = 48, < 4834 WinAccountPolicyAdminsSid = 49, < 4835 WinAccountRasAndIasServersSid = 50, < 4836 < 4837 } < 4838 alias _0 WELL_KNOWN_SID_TYPE; < 4839 < 4840 extern(Windows) export BOOL IsWellKnownSid( < 4841 PSID pSid, < 4842 WELL_KNOWN_SID_TYPE WellKnownSidType); < 4843 < 4844 extern(Windows) export BOOL CreateWellKnownSid( < 4845 WELL_KNOWN_SID_TYPE WellKnownSidType, < 4846 PSID DomainSid , < 4847 PSID pSid, < 4848 DWORD *cbSid); < 4849 < 4850 extern(Windows) export BOOL EqualDomainSid( < 4851 PSID pSid1, < 4852 PSID pSid2, < 4853 BOOL *pfEqual); < 4854 < 4855 extern(Windows) export BOOL GetWindowsAccountDomainSid( < 4856 PSID pSid, < 4857 PSID ppDomainSid , < 4858 DWORD *cbSid); < 4859 < 4860 // #endif //(_WIN32_WINNT >= 0x0501) < 4861 < 4862 extern(Windows) export BOOL IsValidSid( < 4863 PSID pSid); < 4864 < 4865 extern(Windows) export BOOL EqualSid( < 4866 PSID pSid1, < 4867 PSID pSid2); < 4868 < 4869 extern(Windows) export BOOL EqualPrefixSid( < 4870 PSID pSid1, < 4871 PSID pSid2); < 4872 < 4873 extern(Windows) export DWORD GetSidLengthRequired( < 4874 UCHAR nSubAuthorityCount); < 4875 < 4876 extern(Windows) export BOOL AllocateAndInitializeSid( < 4877 PSID_IDENTIFIER_AUTHORITY pIdentifierAuthority, < 4878 BYTE nSubAuthorityCount, < 4879 DWORD nSubAuthority0, < 4880 DWORD nSubAuthority1, < 4881 DWORD nSubAuthority2, < 4882 DWORD nSubAuthority3, < 4883 DWORD nSubAuthority4, < 4884 DWORD nSubAuthority5, < 4885 DWORD nSubAuthority6, < 4886 DWORD nSubAuthority7, < 4887 PSID *pSid); < 4888 < 4889 extern(Windows) export PVOID FreeSid( < 4890 PSID pSid); < 4891 < 4892 extern(Windows) export BOOL InitializeSid( < 4893 PSID Sid, < 4894 PSID_IDENTIFIER_AUTHORITY pIdentifierAuthority, < 4895 BYTE nSubAuthorityCount); < 4896 < 4897 extern(Windows) export PSID_IDENTIFIER_AUTHORITY GetSidIdentifierAuthority( < 4898 PSID pSid); < 4899 < 4900 extern(Windows) export PDWORD GetSidSubAuthority( < 4901 PSID pSid, < 4902 DWORD nSubAuthority); < 4903 < 4904 extern(Windows) export PUCHAR GetSidSubAuthorityCount( < 4905 PSID pSid); < 4906 < 4907 extern(Windows) export DWORD GetLengthSid( < 4908 PSID pSid); < 4909 < 4910 extern(Windows) export BOOL CopySid( < 4911 DWORD nDestinationSidLength, < 4912 PSID pDestinationSid, < 4913 PSID pSourceSid); < 4914 < 4915 extern(Windows) export BOOL AreAllAccessesGranted( < 4916 DWORD GrantedAccess, < 4917 DWORD DesiredAccess); < 4918 < 4919 extern(Windows) export BOOL AreAnyAccessesGranted( < 4920 DWORD GrantedAccess, < 4921 DWORD DesiredAccess); < 4922 < 4923 extern(Windows) export VOID MapGenericMask( < 4924 PDWORD AccessMask, < 4925 PGENERIC_MAPPING GenericMapping); < 4926 < 4927 extern(Windows) export BOOL IsValidAcl( < 4928 PACL pAcl); < 4929 < 4930 extern(Windows) export BOOL InitializeAcl( < 4931 PACL pAcl, < 4932 DWORD nAclLength, < 4933 DWORD dwAclRevision); < 4934 < 4935 extern(Windows) export BOOL GetAclInformation( < 4936 PACL pAcl, < 4937 LPVOID pAclInformation, < 4938 DWORD nAclInformationLength, < 4939 ACL_INFORMATION_CLASS dwAclInformationClass); < 4940 < 4941 extern(Windows) export BOOL SetAclInformation( < 4942 PACL pAcl, < 4943 LPVOID pAclInformation, < 4944 DWORD nAclInformationLength, < 4945 ACL_INFORMATION_CLASS dwAclInformationClass); < 4946 < 4947 extern(Windows) export BOOL AddAce( < 4948 PACL pAcl, < 4949 DWORD dwAceRevision, < 4950 DWORD dwStartingAceIndex, < 4951 LPVOID pAceList, < 4952 DWORD nAceListLength); < 4953 < 4954 extern(Windows) export BOOL DeleteAce( < 4955 PACL pAcl, < 4956 DWORD dwAceIndex); < 4957 < 4958 extern(Windows) export BOOL GetAce( < 4959 PACL pAcl, < 4960 DWORD dwAceIndex, < 4961 LPVOID *pAce); < 4962 < 4963 extern(Windows) export BOOL AddAccessAllowedAce( < 4964 PACL pAcl, < 4965 DWORD dwAceRevision, < 4966 DWORD AccessMask, < 4967 PSID pSid); < 4968 < 4969 // #if(_WIN32_WINNT >= 0x0500) < 4970 extern(Windows) export BOOL AddAccessAllowedAceEx( < 4971 PACL pAcl, < 4972 DWORD dwAceRevision, < 4973 DWORD AceFlags, < 4974 DWORD AccessMask, < 4975 PSID pSid); < 4976 // #endif /* _WIN32_WINNT >= 0x0500 */ < 4977 < 4978 extern(Windows) export BOOL AddAccessDeniedAce( < 4979 PACL pAcl, < 4980 DWORD dwAceRevision, < 4981 DWORD AccessMask, < 4982 PSID pSid); < 4983 < 4984 // #if(_WIN32_WINNT >= 0x0500) < 4985 extern(Windows) export BOOL AddAccessDeniedAceEx( < 4986 PACL pAcl, < 4987 DWORD dwAceRevision, < 4988 DWORD AceFlags, < 4989 DWORD AccessMask, < 4990 PSID pSid); < 4991 // #endif /* _WIN32_WINNT >= 0x0500 */ < 4992 < 4993 extern(Windows) export BOOL AddAuditAccessAce( < 4994 PACL pAcl, < 4995 DWORD dwAceRevision, < 4996 DWORD dwAccessMask, < 4997 PSID pSid, < 4998 BOOL bAuditSuccess, < 4999 BOOL bAuditFailure); < 5000 < 5001 // #if(_WIN32_WINNT >= 0x0500) < 5002 extern(Windows) export BOOL AddAuditAccessAceEx( < 5003 PACL pAcl, < 5004 DWORD dwAceRevision, < 5005 DWORD AceFlags, < 5006 DWORD dwAccessMask, < 5007 PSID pSid, < 5008 BOOL bAuditSuccess, < 5009 BOOL bAuditFailure); < 5010 < 5011 extern(Windows) export BOOL AddAccessAllowedObjectAce( < 5012 PACL pAcl, < 5013 DWORD dwAceRevision, < 5014 DWORD AceFlags, < 5015 DWORD AccessMask, < 5016 GUID *ObjectTypeGuid, < 5017 GUID *InheritedObjectTypeGuid, < 5018 PSID pSid); < 5019 < 5020 extern(Windows) export BOOL AddAccessDeniedObjectAce( < 5021 PACL pAcl, < 5022 DWORD dwAceRevision, < 5023 DWORD AceFlags, < 5024 DWORD AccessMask, < 5025 GUID *ObjectTypeGuid, < 5026 GUID *InheritedObjectTypeGuid, < 5027 PSID pSid); < 5028 < 5029 extern(Windows) export BOOL AddAuditAccessObjectAce( < 5030 PACL pAcl, < 5031 DWORD dwAceRevision, < 5032 DWORD AceFlags, < 5033 DWORD AccessMask, < 5034 GUID *ObjectTypeGuid, < 5035 GUID *InheritedObjectTypeGuid, < 5036 PSID pSid, < 5037 BOOL bAuditSuccess, < 5038 BOOL bAuditFailure); < 5039 // #endif /* _WIN32_WINNT >= 0x0500 */ < 5040 < 5041 extern(Windows) export BOOL FindFirstFreeAce( < 5042 PACL pAcl, < 5043 LPVOID *pAce); < 5044 < 5045 extern(Windows) export BOOL InitializeSecurityDescriptor( < 5046 PSECURITY_DESCRIPTOR pSecurityDescriptor, < 5047 DWORD dwRevision); < 5048 < 5049 extern(Windows) export BOOL IsValidSecurityDescriptor( < 5050 PSECURITY_DESCRIPTOR pSecurityDescriptor); < 5051 < 5052 extern(Windows) export DWORD GetSecurityDescriptorLength( < 5053 PSECURITY_DESCRIPTOR pSecurityDescriptor); < 5054 < 5055 extern(Windows) export BOOL GetSecurityDescriptorControl( < 5056 PSECURITY_DESCRIPTOR pSecurityDescriptor, < 5057 PSECURITY_DESCRIPTOR_CONTROL pControl, < 5058 LPDWORD lpdwRevision); < 5059 < 5060 // #if(_WIN32_WINNT >= 0x0500) < 5061 extern(Windows) export BOOL SetSecurityDescriptorControl( < 5062 PSECURITY_DESCRIPTOR pSecurityDescriptor, < 5063 SECURITY_DESCRIPTOR_CONTROL ControlBitsOfInterest, < 5064 SECURITY_DESCRIPTOR_CONTROL ControlBitsToSet); < 5065 // #endif /* _WIN32_WINNT >= 0x0500 */ < 5066 < 5067 extern(Windows) export BOOL SetSecurityDescriptorDacl( < 5068 PSECURITY_DESCRIPTOR pSecurityDescriptor, < 5069 BOOL bDaclPresent, < 5070 PACL pDacl, < 5071 BOOL bDaclDefaulted); < 5072 < 5073 extern(Windows) export BOOL GetSecurityDescriptorDacl( < 5074 PSECURITY_DESCRIPTOR pSecurityDescriptor, < 5075 LPBOOL lpbDaclPresent, < 5076 PACL *pDacl, < 5077 LPBOOL lpbDaclDefaulted); < 5078 < 5079 extern(Windows) export BOOL SetSecurityDescriptorSacl( < 5080 PSECURITY_DESCRIPTOR pSecurityDescriptor, < 5081 BOOL bSaclPresent, < 5082 PACL pSacl, < 5083 BOOL bSaclDefaulted); < 5084 < 5085 extern(Windows) export BOOL GetSecurityDescriptorSacl( < 5086 PSECURITY_DESCRIPTOR pSecurityDescriptor, < 5087 LPBOOL lpbSaclPresent, < 5088 PACL *pSacl, < 5089 LPBOOL lpbSaclDefaulted); < 5090 < 5091 extern(Windows) export BOOL SetSecurityDescriptorOwner( < 5092 PSECURITY_DESCRIPTOR pSecurityDescriptor, < 5093 PSID pOwner, < 5094 BOOL bOwnerDefaulted); < 5095 < 5096 extern(Windows) export BOOL GetSecurityDescriptorOwner( < 5097 PSECURITY_DESCRIPTOR pSecurityDescriptor, < 5098 PSID *pOwner, < 5099 LPBOOL lpbOwnerDefaulted); < 5100 < 5101 extern(Windows) export BOOL SetSecurityDescriptorGroup( < 5102 PSECURITY_DESCRIPTOR pSecurityDescriptor, < 5103 PSID pGroup, < 5104 BOOL bGroupDefaulted); < 5105 < 5106 extern(Windows) export BOOL GetSecurityDescriptorGroup( < 5107 PSECURITY_DESCRIPTOR pSecurityDescriptor, < 5108 PSID *pGroup, < 5109 LPBOOL lpbGroupDefaulted); < 5110 < 5111 extern(Windows) export DWORD SetSecurityDescriptorRMControl( < 5112 PSECURITY_DESCRIPTOR SecurityDescriptor, < 5113 PUCHAR RMControl ); < 5114 < 5115 extern(Windows) export DWORD GetSecurityDescriptorRMControl( < 5116 PSECURITY_DESCRIPTOR SecurityDescriptor, < 5117 PUCHAR RMControl); < 5118 < 5119 extern(Windows) export BOOL CreatePrivateObjectSecurity( < 5120 PSECURITY_DESCRIPTOR ParentDescriptor, < 5121 PSECURITY_DESCRIPTOR CreatorDescriptor, < 5122 PSECURITY_DESCRIPTOR * NewDescriptor, < 5123 BOOL IsDirectoryObject, < 5124 HANDLE Token, < 5125 PGENERIC_MAPPING GenericMapping); < 5126 < 5127 // #if(_WIN32_WINNT >= 0x0500) < 5128 extern(Windows) export BOOL ConvertToAutoInheritPrivateObjectSecurity( < 5129 PSECURITY_DESCRIPTOR ParentDescriptor, < 5130 PSECURITY_DESCRIPTOR CurrentSecurityDescriptor, < 5131 PSECURITY_DESCRIPTOR *NewSecurityDescriptor, < 5132 GUID *ObjectType, < 5133 BOOLEAN IsDirectoryObject, < 5134 PGENERIC_MAPPING GenericMapping); < 5135 < 5136 extern(Windows) export BOOL CreatePrivateObjectSecurityEx( < 5137 PSECURITY_DESCRIPTOR ParentDescriptor, < 5138 PSECURITY_DESCRIPTOR CreatorDescriptor, < 5139 PSECURITY_DESCRIPTOR * NewDescriptor, < 5140 GUID *ObjectType , < 5141 BOOL IsContainerObject, < 5142 ULONG AutoInheritFlags, < 5143 HANDLE Token, < 5144 PGENERIC_MAPPING GenericMapping); < 5145 < 5146 extern(Windows) export BOOL CreatePrivateObjectSecurityWithMultipleInheritance( < 5147 PSECURITY_DESCRIPTOR ParentDescriptor, < 5148 PSECURITY_DESCRIPTOR CreatorDescriptor, < 5149 PSECURITY_DESCRIPTOR * NewDescriptor, < 5150 GUID **ObjectTypes , < 5151 ULONG GuidCount, < 5152 BOOL IsContainerObject, < 5153 ULONG AutoInheritFlags, < 5154 HANDLE Token, < 5155 PGENERIC_MAPPING GenericMapping); < 5156 // #endif /* _WIN32_WINNT >= 0x0500 */ < 5157 < 5158 extern(Windows) export BOOL SetPrivateObjectSecurity( < 5159 SECURITY_INFORMATION SecurityInformation, < 5160 PSECURITY_DESCRIPTOR ModificationDescriptor, < 5161 PSECURITY_DESCRIPTOR *ObjectsSecurityDescriptor, < 5162 PGENERIC_MAPPING GenericMapping, < 5163 HANDLE Token); < 5164 < 5165 // #if(_WIN32_WINNT >= 0x0500) < 5166 extern(Windows) export BOOL SetPrivateObjectSecurityEx( < 5167 SECURITY_INFORMATION SecurityInformation, < 5168 PSECURITY_DESCRIPTOR ModificationDescriptor, < 5169 PSECURITY_DESCRIPTOR *ObjectsSecurityDescriptor, < 5170 ULONG AutoInheritFlags, < 5171 PGENERIC_MAPPING GenericMapping, < 5172 HANDLE Token ); < 5173 // #endif /* _WIN32_WINNT >= 0x0500 */ < 5174 < 5175 extern(Windows) export BOOL GetPrivateObjectSecurity( < 5176 PSECURITY_DESCRIPTOR ObjectDescriptor, < 5177 SECURITY_INFORMATION SecurityInformation, < 5178 PSECURITY_DESCRIPTOR ResultantDescriptor, < 5179 DWORD DescriptorLength, < 5180 PDWORD ReturnLength); < 5181 < 5182 extern(Windows) export BOOL DestroyPrivateObjectSecurity( < 5183 PSECURITY_DESCRIPTOR * ObjectDescriptor); < 5184 < 5185 extern(Windows) export BOOL MakeSelfRelativeSD( < 5186 PSECURITY_DESCRIPTOR pAbsoluteSecurityDescriptor, < 5187 PSECURITY_DESCRIPTOR pSelfRelativeSecurityDescriptor, < 5188 LPDWORD lpdwBufferLength); < 5189 < 5190 extern(Windows) export BOOL MakeAbsoluteSD( < 5191 PSECURITY_DESCRIPTOR pSelfRelativeSecurityDescriptor, < 5192 PSECURITY_DESCRIPTOR pAbsoluteSecurityDescriptor, < 5193 LPDWORD lpdwAbsoluteSecurityDescriptorSize, < 5194 PACL pDacl, < 5195 LPDWORD lpdwDaclSize, < 5196 PACL pSacl, < 5197 LPDWORD lpdwSaclSize, < 5198 PSID pOwner, < 5199 LPDWORD lpdwOwnerSize, < 5200 PSID pPrimaryGroup, < 5201 LPDWORD lpdwPrimaryGroupSize); < 5202 < 5203 extern(Windows) export BOOL MakeAbsoluteSD2( < 5204 PSECURITY_DESCRIPTOR pSelfRelativeSecurityDescriptor, < 5205 LPDWORD lpdwBufferSize); < 5206 < 5207 extern(Windows) export BOOL SetFileSecurityA( < 5208 LPCSTR lpFileName, < 5209 SECURITY_INFORMATION SecurityInformation, < 5210 PSECURITY_DESCRIPTOR pSecurityDescriptor); < 5211 extern(Windows) export BOOL SetFileSecurityW( < 5212 LPCWSTR lpFileName, < 5213 SECURITY_INFORMATION SecurityInformation, < 5214 PSECURITY_DESCRIPTOR pSecurityDescriptor); < 5215 // #ifdef UNICODE < 5216 alias SetFileSecurityW SetFileSecurity; < 5217 // #else < 5218 // #... < 5219 // #endif // !UNICODE < 5220 < 5221 extern(Windows) export BOOL GetFileSecurityA( < 5222 LPCSTR lpFileName, < 5223 SECURITY_INFORMATION RequestedInformation, < 5224 PSECURITY_DESCRIPTOR pSecurityDescriptor, < 5225 DWORD nLength, < 5226 LPDWORD lpnLengthNeeded); < 5227 extern(Windows) export BOOL GetFileSecurityW( < 5228 LPCWSTR lpFileName, < 5229 SECURITY_INFORMATION RequestedInformation, < 5230 PSECURITY_DESCRIPTOR pSecurityDescriptor, < 5231 DWORD nLength, < 5232 LPDWORD lpnLengthNeeded); < 5233 // #ifdef UNICODE < 5234 alias GetFileSecurityW GetFileSecurity; < 5235 // #else < 5236 // #... < 5237 // #endif // !UNICODE < 5238 < 5239 extern(Windows) export BOOL SetKernelObjectSecurity( < 5240 HANDLE Handle, < 5241 SECURITY_INFORMATION SecurityInformation, < 5242 PSECURITY_DESCRIPTOR SecurityDescriptor); < 5243 < 5244 extern(Windows) export HANDLE FindFirstChangeNotificationA( < 5245 LPCSTR lpPathName, < 5246 BOOL bWatchSubtree, < 5247 DWORD dwNotifyFilter); < 5248 extern(Windows) export HANDLE FindFirstChangeNotificationW( < 5249 LPCWSTR lpPathName, < 5250 BOOL bWatchSubtree, < 5251 DWORD dwNotifyFilter); < 5252 // #ifdef UNICODE < 5253 alias FindFirstChangeNotificationW FindFirstChangeNotification; < 5254 // #else < 5255 // #... < 5256 // #endif // !UNICODE < 5257 < 5258 extern(Windows) export BOOL FindNextChangeNotification( < 5259 HANDLE hChangeHandle); < 5260 < 5261 extern(Windows) export BOOL FindCloseChangeNotification( < 5262 HANDLE hChangeHandle); < 5263 < 5264 // #if(_WIN32_WINNT >= 0x0400) < 5265 extern(Windows) export BOOL ReadDirectoryChangesW( < 5266 HANDLE hDirectory, < 5267 LPVOID lpBuffer, < 5268 DWORD nBufferLength, < 5269 BOOL bWatchSubtree, < 5270 DWORD dwNotifyFilter, < 5271 LPDWORD lpBytesReturned, < 5272 LPOVERLAPPED lpOverlapped, < 5273 LPOVERLAPPED_COMPLETION_ROUTINE lpCompletionRoutine); < 5274 // #endif /* _WIN32_WINNT >= 0x0400 */ < 5275 < 5276 extern(Windows) export BOOL VirtualLock( < 5277 LPVOID lpAddress, < 5278 SIZE_T dwSize); < 5279 < 5280 extern(Windows) export BOOL VirtualUnlock( < 5281 LPVOID lpAddress, < 5282 SIZE_T dwSize); < 5283 < 5284 extern(Windows) export LPVOID MapViewOfFileEx( < 5285 HANDLE hFileMappingObject, < 5286 DWORD dwDesiredAccess, < 5287 DWORD dwFileOffsetHigh, < 5288 DWORD dwFileOffsetLow, < 5289 SIZE_T dwNumberOfBytesToMap, < 5290 LPVOID lpBaseAddress); < 5291 < 5292 extern(Windows) export BOOL SetPriorityClass( < 5293 HANDLE hProcess, < 5294 DWORD dwPriorityClass); < 5295 < 5296 extern(Windows) export DWORD GetPriorityClass( < 5297 HANDLE hProcess); < 5298 < 5299 extern(Windows) export BOOL IsBadReadPtr( < 5300 VOID *lp, < 5301 UINT_PTR ucb); < 5302 < 5303 extern(Windows) export BOOL IsBadWritePtr( < 5304 LPVOID lp, < 5305 UINT_PTR ucb); < 5306 < 5307 extern(Windows) export BOOL IsBadHugeReadPtr( < 5308 VOID *lp, < 5309 UINT_PTR ucb); < 5310 < 5311 extern(Windows) export BOOL IsBadHugeWritePtr( < 5312 LPVOID lp, < 5313 UINT_PTR ucb); < 5314 < 5315 extern(Windows) export BOOL IsBadCodePtr( < 5316 FARPROC lpfn); < 5317 < 5318 extern(Windows) export BOOL IsBadStringPtrA( < 5319 LPCSTR lpsz, < 5320 UINT_PTR ucchMax); < 5321 extern(Windows) export BOOL IsBadStringPtrW( < 5322 LPCWSTR lpsz, < 5323 UINT_PTR ucchMax); < 5324 // #ifdef UNICODE < 5325 alias IsBadStringPtrW IsBadStringPtr; < 5326 // #else < 5327 // #... < 5328 // #endif // !UNICODE < 5329 < 5330 extern(Windows) export BOOL LookupAccountSidA( < 5331 LPCSTR lpSystemName, < 5332 PSID Sid, < 5333 LPSTR Name, < 5334 LPDWORD cbName, < 5335 LPSTR ReferencedDomainName, < 5336 LPDWORD cbReferencedDomainName, < 5337 PSID_NAME_USE peUse); < 5338 extern(Windows) export BOOL LookupAccountSidW( < 5339 LPCWSTR lpSystemName, < 5340 PSID Sid, < 5341 LPWSTR Name, < 5342 LPDWORD cbName, < 5343 LPWSTR ReferencedDomainName, < 5344 LPDWORD cbReferencedDomainName, < 5345 PSID_NAME_USE peUse); < 5346 // #ifdef UNICODE < 5347 alias LookupAccountSidW LookupAccountSid; < 5348 // #else < 5349 // #... < 5350 // #endif // !UNICODE < 5351 < 5352 extern(Windows) export BOOL LookupAccountNameA( < 5353 LPCSTR lpSystemName, < 5354 LPCSTR lpAccountName, < 5355 PSID Sid, < 5356 LPDWORD cbSid, < 5357 LPSTR ReferencedDomainName, < 5358 LPDWORD cbReferencedDomainName, < 5359 PSID_NAME_USE peUse); < 5360 extern(Windows) export BOOL LookupAccountNameW( < 5361 LPCWSTR lpSystemName, < 5362 LPCWSTR lpAccountName, < 5363 PSID Sid, < 5364 LPDWORD cbSid, < 5365 LPWSTR ReferencedDomainName, < 5366 LPDWORD cbReferencedDomainName, < 5367 PSID_NAME_USE peUse); < 5368 // #ifdef UNICODE < 5369 alias LookupAccountNameW LookupAccountName; < 5370 // #else < 5371 // #... < 5372 // #endif // !UNICODE < 5373 < 5374 extern(Windows) export BOOL LookupPrivilegeValueA( < 5375 LPCSTR lpSystemName, < 5376 LPCSTR lpName, < 5377 PLUID lpLuid); < 5378 extern(Windows) export BOOL LookupPrivilegeValueW( < 5379 LPCWSTR lpSystemName, < 5380 LPCWSTR lpName, < 5381 PLUID lpLuid); < 5382 // #ifdef UNICODE < 5383 alias LookupPrivilegeValueW LookupPrivilegeValue; < 5384 // #else < 5385 // #... < 5386 // #endif // !UNICODE < 5387 < 5388 extern(Windows) export BOOL LookupPrivilegeNameA( < 5389 LPCSTR lpSystemName, < 5390 PLUID lpLuid, < 5391 LPSTR lpName, < 5392 LPDWORD cbName); < 5393 extern(Windows) export BOOL LookupPrivilegeNameW( < 5394 LPCWSTR lpSystemName, < 5395 PLUID lpLuid, < 5396 LPWSTR lpName, < 5397 LPDWORD cbName); < 5398 // #ifdef UNICODE < 5399 alias LookupPrivilegeNameW LookupPrivilegeName; < 5400 // #else < 5401 // #... < 5402 // #endif // !UNICODE < 5403 < 5404 extern(Windows) export BOOL LookupPrivilegeDisplayNameA( < 5405 LPCSTR lpSystemName, < 5406 LPCSTR lpName, < 5407 LPSTR lpDisplayName, < 5408 LPDWORD cbDisplayName, < 5409 LPDWORD lpLanguageId); < 5410 extern(Windows) export BOOL LookupPrivilegeDisplayNameW( < 5411 LPCWSTR lpSystemName, < 5412 LPCWSTR lpName, < 5413 LPWSTR lpDisplayName, < 5414 LPDWORD cbDisplayName, < 5415 LPDWORD lpLanguageId); < 5416 // #ifdef UNICODE < 5417 alias LookupPrivilegeDisplayNameW LookupPrivilegeDisplayName; < 5418 // #else < 5419 // #... < 5420 // #endif // !UNICODE < 5421 < 5422 extern(Windows) export BOOL AllocateLocallyUniqueId( < 5423 PLUID Luid); < 5424 < 5425 extern(Windows) export BOOL BuildCommDCBA( < 5426 LPCSTR lpDef, < 5427 LPDCB lpDCB); < 5428 extern(Windows) export BOOL BuildCommDCBW( < 5429 LPCWSTR lpDef, < 5430 LPDCB lpDCB); < 5431 // #ifdef UNICODE < 5432 alias BuildCommDCBW BuildCommDCB; < 5433 // #else < 5434 // #... < 5435 // #endif // !UNICODE < 5436 < 5437 extern(Windows) export BOOL BuildCommDCBAndTimeoutsA( < 5438 LPCSTR lpDef, < 5439 LPDCB lpDCB, < 5440 LPCOMMTIMEOUTS lpCommTimeouts); < 5441 extern(Windows) export BOOL BuildCommDCBAndTimeoutsW( < 5442 LPCWSTR lpDef, < 5443 LPDCB lpDCB, < 5444 LPCOMMTIMEOUTS lpCommTimeouts); < 5445 // #ifdef UNICODE < 5446 alias BuildCommDCBAndTimeoutsW BuildCommDCBAndTimeouts; < 5447 // #else < 5448 // #... < 5449 // #endif // !UNICODE < 5450 < 5451 extern(Windows) export BOOL CommConfigDialogA( < 5452 LPCSTR lpszName, < 5453 HWND hWnd, < 5454 LPCOMMCONFIG lpCC); < 5455 extern(Windows) export BOOL CommConfigDialogW( < 5456 LPCWSTR lpszName, < 5457 HWND hWnd, < 5458 LPCOMMCONFIG lpCC); < 5459 // #ifdef UNICODE < 5460 alias CommConfigDialogW CommConfigDialog; < 5461 // #else < 5462 // #... < 5463 // #endif // !UNICODE < 5464 < 5465 extern(Windows) export BOOL GetDefaultCommConfigA( < 5466 LPCSTR lpszName, < 5467 LPCOMMCONFIG lpCC, < 5468 LPDWORD lpdwSize); < 5469 extern(Windows) export BOOL GetDefaultCommConfigW( < 5470 LPCWSTR lpszName, < 5471 LPCOMMCONFIG lpCC, < 5472 LPDWORD lpdwSize); < 5473 // #ifdef UNICODE < 5474 alias GetDefaultCommConfigW GetDefaultCommConfig; < 5475 // #else < 5476 // #... < 5477 // #endif // !UNICODE < 5478 < 5479 extern(Windows) export BOOL SetDefaultCommConfigA( < 5480 LPCSTR lpszName, < 5481 LPCOMMCONFIG lpCC, < 5482 DWORD dwSize); < 5483 extern(Windows) export BOOL SetDefaultCommConfigW( < 5484 LPCWSTR lpszName, < 5485 LPCOMMCONFIG lpCC, < 5486 DWORD dwSize); < 5487 // #ifdef UNICODE < 5488 alias SetDefaultCommConfigW SetDefaultCommConfig; < 5489 // #else < 5490 // #... < 5491 // #endif // !UNICODE < 5492 < 5493 // #ifndef _MAC < 5494 enum : uint { MAX_COMPUTERNAME_LENGTH = 15 } < 5495 // #else < 5496 // #... < 5497 // #endif < 5498 < 5499 extern(Windows) export BOOL GetComputerNameA( < 5500 LPSTR lpBuffer, < 5501 LPDWORD nSize); < 5502 extern(Windows) export BOOL GetComputerNameW( < 5503 LPWSTR lpBuffer, < 5504 LPDWORD nSize); < 5505 // #ifdef UNICODE < 5506 alias GetComputerNameW GetComputerName; < 5507 // #else < 5508 // #... < 5509 // #endif // !UNICODE < 5510 < 5511 extern(Windows) export BOOL SetComputerNameA( < 5512 LPCSTR lpComputerName); < 5513 extern(Windows) export BOOL SetComputerNameW( < 5514 LPCWSTR lpComputerName); < 5515 // #ifdef UNICODE < 5516 alias SetComputerNameW SetComputerName; < 5517 // #else < 5518 // #... < 5519 // #endif // !UNICODE < 5520 < 5521 // #if (_WIN32_WINNT >= 0x0500) < 5522 < 5523 alias int _COMPUTER_NAME_FORMAT; < 5524 enum { < 5525 ComputerNameNetBIOS, < 5526 ComputerNameDnsHostname, < 5527 ComputerNameDnsDomain, < 5528 ComputerNameDnsFullyQualified, < 5529 ComputerNamePhysicalNetBIOS, < 5530 ComputerNamePhysicalDnsHostname, < 5531 ComputerNamePhysicalDnsDomain, < 5532 ComputerNamePhysicalDnsFullyQualified, < 5533 ComputerNameMax, < 5534 } < 5535 alias _COMPUTER_NAME_FORMAT COMPUTER_NAME_FORMAT; < 5536 < 5537 extern(Windows) export BOOL GetComputerNameExA( < 5538 COMPUTER_NAME_FORMAT NameType, < 5539 LPSTR lpBuffer, < 5540 LPDWORD nSize); < 5541 extern(Windows) export BOOL GetComputerNameExW( < 5542 COMPUTER_NAME_FORMAT NameType, < 5543 LPWSTR lpBuffer, < 5544 LPDWORD nSize); < 5545 // #ifdef UNICODE < 5546 alias GetComputerNameExW GetComputerNameEx; < 5547 // #else < 5548 // #... < 5549 // #endif // !UNICODE < 5550 < 5551 extern(Windows) export BOOL SetComputerNameExA( < 5552 COMPUTER_NAME_FORMAT NameType, < 5553 LPCSTR lpBuffer); < 5554 extern(Windows) export BOOL SetComputerNameExW( < 5555 COMPUTER_NAME_FORMAT NameType, < 5556 LPCWSTR lpBuffer); < 5557 // #ifdef UNICODE < 5558 alias SetComputerNameExW SetComputerNameEx; < 5559 // #else < 5560 // #... < 5561 // #endif // !UNICODE < 5562 < 5563 extern(Windows) export DWORD AddLocalAlternateComputerNameA( < 5564 LPCSTR lpDnsFQHostname, < 5565 ULONG ulFlags); < 5566 extern(Windows) export DWORD AddLocalAlternateComputerNameW( < 5567 LPCWSTR lpDnsFQHostname, < 5568 ULONG ulFlags); < 5569 // #ifdef UNICODE < 5570 alias AddLocalAlternateComputerNameW AddLocalAlternateComputerName; < 5571 // #else < 5572 // #... < 5573 // #endif // !UNICODE < 5574 < 5575 extern(Windows) export DWORD RemoveLocalAlternateComputerNameA( < 5576 LPCSTR lpAltDnsFQHostname, < 5577 ULONG ulFlags); < 5578 extern(Windows) export DWORD RemoveLocalAlternateComputerNameW( < 5579 LPCWSTR lpAltDnsFQHostname, < 5580 ULONG ulFlags); < 5581 // #ifdef UNICODE < 5582 alias RemoveLocalAlternateComputerNameW RemoveLocalAlternateComputerName; < 5583 // #else < 5584 // #... < 5585 // #endif // !UNICODE < 5586 < 5587 extern(Windows) export DWORD SetLocalPrimaryComputerNameA( < 5588 LPCSTR lpAltDnsFQHostname, < 5589 ULONG ulFlags); < 5590 extern(Windows) export DWORD SetLocalPrimaryComputerNameW( < 5591 LPCWSTR lpAltDnsFQHostname, < 5592 ULONG ulFlags); < 5593 // #ifdef UNICODE < 5594 alias SetLocalPrimaryComputerNameW SetLocalPrimaryComputerName; < 5595 // #else < 5596 // #... < 5597 // #endif // !UNICODE < 5598 < 5599 alias int _COMPUTER_NAME_TYPE; < 5600 enum { < 5601 PrimaryComputerName, < 5602 AlternateComputerNames, < 5603 AllComputerNames, < 5604 ComputerNameTypeMax, < 5605 } < 5606 alias _COMPUTER_NAME_TYPE COMPUTER_NAME_TYPE; < 5607 < 5608 extern(Windows) export DWORD EnumerateLocalComputerNamesA( < 5609 COMPUTER_NAME_TYPE NameType, < 5610 ULONG ulFlags, < 5611 LPSTR lpDnsFQHostname, < 5612 LPDWORD nSize); < 5613 extern(Windows) export DWORD EnumerateLocalComputerNamesW( < 5614 COMPUTER_NAME_TYPE NameType, < 5615 ULONG ulFlags, < 5616 LPWSTR lpDnsFQHostname, < 5617 LPDWORD nSize); < 5618 // #ifdef UNICODE < 5619 alias EnumerateLocalComputerNamesW EnumerateLocalComputerNames; < 5620 // #else < 5621 // #... < 5622 // #endif // !UNICODE < 5623 < 5624 extern(Windows) export BOOL DnsHostnameToComputerNameA( < 5625 LPCSTR Hostname, < 5626 LPSTR ComputerName, < 5627 LPDWORD nSize); < 5628 extern(Windows) export BOOL DnsHostnameToComputerNameW( < 5629 LPCWSTR Hostname, < 5630 LPWSTR ComputerName, < 5631 LPDWORD nSize); < 5632 // #ifdef UNICODE < 5633 alias DnsHostnameToComputerNameW DnsHostnameToComputerName; < 5634 // #else < 5635 // #... < 5636 // #endif // !UNICODE < 5637 < 5638 // #endif // _WIN32_WINNT < 5639 < 5640 extern(Windows) export BOOL GetUserNameA( < 5641 LPSTR lpBuffer, < 5642 LPDWORD nSize); < 5643 extern(Windows) export BOOL GetUserNameW( < 5644 LPWSTR lpBuffer, < 5645 LPDWORD nSize); < 5646 // #ifdef UNICODE < 5647 alias GetUserNameW GetUserName; < 5648 // #else < 5649 // #... < 5650 // #endif // !UNICODE < 5651 < 5652 enum : uint { LOGON32_LOGON_INTERACTIVE = 2 } < 5653 enum : uint { LOGON32_LOGON_NETWORK = 3 } < 5654 enum : uint { LOGON32_LOGON_BATCH = 4 } < 5655 enum : uint { LOGON32_LOGON_SERVICE = 5 } < 5656 enum : uint { LOGON32_LOGON_UNLOCK = 7 } < 5657 // #if(_WIN32_WINNT >= 0x0500) < 5658 enum : uint { LOGON32_LOGON_NETWORK_CLEARTEXT = 8 } < 5659 enum : uint { LOGON32_LOGON_NEW_CREDENTIALS = 9 } < 5660 // #endif // (_WIN32_WINNT >= 0x0500) < 5661 < 5662 enum : uint { LOGON32_PROVIDER_DEFAULT = 0 } < 5663 enum : uint { LOGON32_PROVIDER_WINNT35 = 1 } < 5664 // #if(_WIN32_WINNT >= 0x0400) < 5665 enum : uint { LOGON32_PROVIDER_WINNT40 = 2 } < 5666 // #endif /* _WIN32_WINNT >= 0x0400 */ < 5667 // #if(_WIN32_WINNT >= 0x0500) < 5668 enum : uint { LOGON32_PROVIDER_WINNT50 = 3 } < 5669 // #endif // (_WIN32_WINNT >= 0x0500) < 5670 < 5671 extern(Windows) export BOOL LogonUserA( < 5672 LPSTR lpszUsername, < 5673 LPSTR lpszDomain, < 5674 LPSTR lpszPassword, < 5675 DWORD dwLogonType, < 5676 DWORD dwLogonProvider, < 5677 PHANDLE phToken); < 5678 extern(Windows) export BOOL LogonUserW( < 5679 LPWSTR lpszUsername, < 5680 LPWSTR lpszDomain, < 5681 LPWSTR lpszPassword, < 5682 DWORD dwLogonType, < 5683 DWORD dwLogonProvider, < 5684 PHANDLE phToken); < 5685 // #ifdef UNICODE < 5686 alias LogonUserW LogonUser; < 5687 // #else < 5688 // #... < 5689 // #endif // !UNICODE < 5690 < 5691 extern(Windows) export BOOL LogonUserExA( < 5692 LPSTR lpszUsername, < 5693 LPSTR lpszDomain, < 5694 LPSTR lpszPassword, < 5695 DWORD dwLogonType, < 5696 DWORD dwLogonProvider, < 5697 PHANDLE phToken , < 5698 PSID *ppLogonSid , < 5699 PVOID *ppProfileBuffer , < 5700 LPDWORD pdwProfileLength , < 5701 PQUOTA_LIMITS pQuotaLimits ); < 5702 extern(Windows) export BOOL LogonUserExW( < 5703 LPWSTR lpszUsername, < 5704 LPWSTR lpszDomain, < 5705 LPWSTR lpszPassword, < 5706 DWORD dwLogonType, < 5707 DWORD dwLogonProvider, < 5708 PHANDLE phToken , < 5709 PSID *ppLogonSid , < 5710 PVOID *ppProfileBuffer , < 5711 LPDWORD pdwProfileLength , < 5712 PQUOTA_LIMITS pQuotaLimits ); < 5713 // #ifdef UNICODE < 5714 alias LogonUserExW LogonUserEx; < 5715 // #else < 5716 // #... < 5717 // #endif // !UNICODE < 5718 < 5719 extern(Windows) export BOOL ImpersonateLoggedOnUser( < 5720 HANDLE hToken); < 5721 < 5722 extern(Windows) export BOOL CreateProcessAsUserA( < 5723 HANDLE hToken, < 5724 LPCSTR lpApplicationName, < 5725 LPSTR lpCommandLine, < 5726 LPSECURITY_ATTRIBUTES lpProcessAttributes, < 5727 LPSECURITY_ATTRIBUTES lpThreadAttributes, < 5728 BOOL bInheritHandles, < 5729 DWORD dwCreationFlags, < 5730 LPVOID lpEnvironment, < 5731 LPCSTR lpCurrentDirectory, < 5732 LPSTARTUPINFOA lpStartupInfo, < 5733 LPPROCESS_INFORMATION lpProcessInformation); < 5734 extern(Windows) export BOOL CreateProcessAsUserW( < 5735 HANDLE hToken, < 5736 LPCWSTR lpApplicationName, < 5737 LPWSTR lpCommandLine, < 5738 LPSECURITY_ATTRIBUTES lpProcessAttributes, < 5739 LPSECURITY_ATTRIBUTES lpThreadAttributes, < 5740 BOOL bInheritHandles, < 5741 DWORD dwCreationFlags, < 5742 LPVOID lpEnvironment, < 5743 LPCWSTR lpCurrentDirectory, < 5744 LPSTARTUPINFOW lpStartupInfo, < 5745 LPPROCESS_INFORMATION lpProcessInformation); < 5746 // #ifdef UNICODE < 5747 alias CreateProcessAsUserW CreateProcessAsUser; < 5748 // #else < 5749 // #... < 5750 // #endif // !UNICODE < 5751 < 5752 // #if(_WIN32_WINNT >= 0x0500) < 5753 < 5754 enum : uint { LOGON_WITH_PROFILE = 0x00000001 } < 5755 enum : uint { LOGON_NETCREDENTIALS_ONLY = 0x00000002 } < 5756 < 5757 extern(Windows) export BOOL CreateProcessWithLogonW( < 5758 LPCWSTR lpUsername, < 5759 LPCWSTR lpDomain, < 5760 LPCWSTR lpPassword, < 5761 DWORD dwLogonFlags, < 5762 LPCWSTR lpApplicationName, < 5763 LPWSTR lpCommandLine, < 5764 DWORD dwCreationFlags, < 5765 LPVOID lpEnvironment, < 5766 LPCWSTR lpCurrentDirectory, < 5767 LPSTARTUPINFOW lpStartupInfo, < 5768 LPPROCESS_INFORMATION lpProcessInformation); < 5769 < 5770 // #endif // (_WIN32_WINNT >= 0x0500) < 5771 < 5772 extern(Windows) export BOOL ImpersonateAnonymousToken( < 5773 HANDLE ThreadHandle); < 5774 < 5775 extern(Windows) export BOOL DuplicateTokenEx( < 5776 HANDLE hExistingToken, < 5777 DWORD dwDesiredAccess, < 5778 LPSECURITY_ATTRIBUTES lpTokenAttributes, < 5779 SECURITY_IMPERSONATION_LEVEL ImpersonationLevel, < 5780 TOKEN_TYPE TokenType, < 5781 PHANDLE phNewToken); < 5782 < 5783 extern(Windows) export BOOL CreateRestrictedToken( < 5784 HANDLE ExistingTokenHandle, < 5785 DWORD Flags, < 5786 DWORD DisableSidCount, < 5787 PSID_AND_ATTRIBUTES SidsToDisable , < 5788 DWORD DeletePrivilegeCount, < 5789 PLUID_AND_ATTRIBUTES PrivilegesToDelete , < 5790 DWORD RestrictedSidCount, < 5791 PSID_AND_ATTRIBUTES SidsToRestrict , < 5792 PHANDLE NewTokenHandle); < 5793 < 5794 extern(Windows) export BOOL IsTokenRestricted( < 5795 HANDLE TokenHandle); < 5796 < 5797 extern(Windows) export BOOL IsTokenUntrusted( < 5798 HANDLE TokenHandle); < 5799 < 5800 extern(Windows) export BOOL CheckTokenMembership( < 5801 HANDLE TokenHandle , < 5802 PSID SidToCheck, < 5803 PBOOL IsMember); < 5804 < 5805 // #if (_WIN32_WINNT >= 0x0500) < 5806 < 5807 alias WAITORTIMERCALLBACKFUNC WAITORTIMERCALLBACK; < 5808 < 5809 extern(Windows) export BOOL RegisterWaitForSingleObject( < 5810 PHANDLE phNewWaitObject, < 5811 HANDLE hObject, < 5812 WAITORTIMERCALLBACK Callback, < 5813 PVOID Context, < 5814 ULONG dwMilliseconds, < 5815 ULONG dwFlags); < 5816 < 5817 extern(Windows) export HANDLE RegisterWaitForSingleObjectEx( < 5818 HANDLE hObject, < 5819 WAITORTIMERCALLBACK Callback, < 5820 PVOID Context, < 5821 ULONG dwMilliseconds, < 5822 ULONG dwFlags); < 5823 < 5824 extern(Windows) export BOOL UnregisterWait( < 5825 HANDLE WaitHandle); < 5826 < 5827 extern(Windows) export BOOL UnregisterWaitEx( < 5828 HANDLE WaitHandle, < 5829 HANDLE CompletionEvent); < 5830 < 5831 extern(Windows) export BOOL QueueUserWorkItem( < 5832 LPTHREAD_START_ROUTINE Function, < 5833 PVOID Context, < 5834 ULONG Flags); < 5835 < 5836 extern(Windows) export BOOL BindIoCompletionCallback( < 5837 HANDLE FileHandle, < 5838 LPOVERLAPPED_COMPLETION_ROUTINE Function, < 5839 ULONG Flags); < 5840 < 5841 extern(Windows) export HANDLE CreateTimerQueue(); < 5842 < 5843 extern(Windows) export BOOL CreateTimerQueueTimer( < 5844 PHANDLE phNewTimer, < 5845 HANDLE TimerQueue, < 5846 WAITORTIMERCALLBACK Callback, < 5847 PVOID Parameter, < 5848 DWORD DueTime, < 5849 DWORD Period, < 5850 ULONG Flags); < 5851 < 5852 extern(Windows) export BOOL ChangeTimerQueueTimer( < 5853 HANDLE TimerQueue, < 5854 HANDLE Timer, < 5855 ULONG DueTime, < 5856 ULONG Period); < 5857 < 5858 extern(Windows) export BOOL DeleteTimerQueueTimer( < 5859 HANDLE TimerQueue, < 5860 HANDLE Timer, < 5861 HANDLE CompletionEvent); < 5862 < 5863 extern(Windows) export BOOL DeleteTimerQueueEx( < 5864 HANDLE TimerQueue, < 5865 HANDLE CompletionEvent); < 5866 < 5867 extern(Windows) export HANDLE SetTimerQueueTimer( < 5868 HANDLE TimerQueue, < 5869 WAITORTIMERCALLBACK Callback, < 5870 PVOID Parameter, < 5871 DWORD DueTime, < 5872 DWORD Period, < 5873 BOOL PreferIo); < 5874 < 5875 extern(Windows) export BOOL CancelTimerQueueTimer( < 5876 HANDLE TimerQueue, < 5877 HANDLE Timer); < 5878 < 5879 extern(Windows) export BOOL DeleteTimerQueue( < 5880 HANDLE TimerQueue); < 5881 < 5882 // #endif // _WIN32_WINNT < 5883 < 5884 // #if(_WIN32_WINNT >= 0x0400) < 5885 < 5886 enum : uint { HW_PROFILE_GUIDLEN = 39 } < 5887 enum : uint { MAX_PROFILE_LEN = 80 } < 5888 < 5889 enum : uint { DOCKINFO_UNDOCKED = 0x1 } < 5890 enum : uint { DOCKINFO_DOCKED = 0x2 } < 5891 enum : uint { DOCKINFO_USER_SUPPLIED = 0x4 } < 5892 enum : uint { DOCKINFO_USER_UNDOCKED = DOCKINFO_USER_SUPPLIED | DOCKINFO_UNDOCKE < 5893 enum : uint { DOCKINFO_USER_DOCKED = DOCKINFO_USER_SUPPLIED | DOCKINFO_DOCKED } < 5894 < 5895 struct tagHW_PROFILE_INFOA { < 5896 DWORD dwDockInfo; < 5897 CHAR szHwProfileGuid[HW_PROFILE_GUIDLEN]; < 5898 CHAR szHwProfileName[MAX_PROFILE_LEN]; < 5899 } < 5900 alias tagHW_PROFILE_INFOA HW_PROFILE_INFOA; < 5901 alias tagHW_PROFILE_INFOA* LPHW_PROFILE_INFOA; < 5902 < 5903 struct tagHW_PROFILE_INFOW { < 5904 DWORD dwDockInfo; < 5905 WCHAR szHwProfileGuid[HW_PROFILE_GUIDLEN]; < 5906 WCHAR szHwProfileName[MAX_PROFILE_LEN]; < 5907 } < 5908 alias tagHW_PROFILE_INFOW HW_PROFILE_INFOW; < 5909 alias tagHW_PROFILE_INFOW* LPHW_PROFILE_INFOW; < 5910 < 5911 // #ifdef UNICODE < 5912 alias HW_PROFILE_INFOW HW_PROFILE_INFO; < 5913 alias LPHW_PROFILE_INFOW LPHW_PROFILE_INFO; < 5914 // #else < 5915 // ... < 5916 // #endif // UNICODE < 5917 < 5918 extern(Windows) export BOOL GetCurrentHwProfileA( < 5919 LPHW_PROFILE_INFOA lpHwProfileInfo); < 5920 extern(Windows) export BOOL GetCurrentHwProfileW( < 5921 LPHW_PROFILE_INFOW lpHwProfileInfo); < 5922 // #ifdef UNICODE < 5923 alias GetCurrentHwProfileW GetCurrentHwProfile; < 5924 // #else < 5925 // #... < 5926 // #endif // !UNICODE < 5927 // #endif /* _WIN32_WINNT >= 0x0400 */ < 5928 < 5929 extern(Windows) export BOOL QueryPerformanceCounter( < 5930 LARGE_INTEGER *lpPerformanceCount); < 5931 < 5932 extern(Windows) export BOOL QueryPerformanceFrequency( < 5933 LARGE_INTEGER *lpFrequency); < 5934 < 5935 extern(Windows) export BOOL GetVersionExA( < 5936 LPOSVERSIONINFOA lpVersionInformation); < 5937 extern(Windows) export BOOL GetVersionExW( < 5938 LPOSVERSIONINFOW lpVersionInformation); < 5939 // #ifdef UNICODE < 5940 alias GetVersionExW GetVersionEx; < 5941 // #else < 5942 // #... < 5943 // #endif // !UNICODE < 5944 < 5945 extern(Windows) export BOOL VerifyVersionInfoA( < 5946 LPOSVERSIONINFOEXA lpVersionInformation, < 5947 DWORD dwTypeMask, < 5948 DWORDLONG dwlConditionMask); < 5949 extern(Windows) export BOOL VerifyVersionInfoW( < 5950 LPOSVERSIONINFOEXW lpVersionInformation, < 5951 DWORD dwTypeMask, < 5952 DWORDLONG dwlConditionMask); < 5953 // #ifdef UNICODE < 5954 alias VerifyVersionInfoW VerifyVersionInfo; < 5955 // #else < 5956 // #... < 5957 // #endif // !UNICODE < 5958 < 5959 import win32.winerror; < 5960 < 5961 enum : uint { TC_NORMAL = 0 } < 5962 enum : uint { TC_HARDERR = 1 } < 5963 enum : uint { TC_GP_TRAP = 2 } < 5964 enum : uint { TC_SIGNAL = 3 } < 5965 < 5966 // #if(WINVER >= 0x0400) < 5967 < 5968 enum : uint { AC_LINE_OFFLINE = 0x00 } < 5969 enum : uint { AC_LINE_ONLINE = 0x01 } < 5970 enum : uint { AC_LINE_BACKUP_POWER = 0x02 } < 5971 enum : uint { AC_LINE_UNKNOWN = 0xFF } < 5972 < 5973 enum : uint { BATTERY_FLAG_HIGH = 0x01 } < 5974 enum : uint { BATTERY_FLAG_LOW = 0x02 } < 5975 enum : uint { BATTERY_FLAG_CRITICAL = 0x04 } < 5976 enum : uint { BATTERY_FLAG_CHARGING = 0x08 } < 5977 enum : uint { BATTERY_FLAG_NO_BATTERY = 0x80 } < 5978 enum : uint { BATTERY_FLAG_UNKNOWN = 0xFF } < 5979 < 5980 enum : uint { BATTERY_PERCENTAGE_UNKNOWN = 0xFF } < 5981 < 5982 enum : uint { BATTERY_LIFE_UNKNOWN = 0xFFFFFFFF } < 5983 < 5984 struct _SYSTEM_POWER_STATUS { < 5985 BYTE ACLineStatus; < 5986 BYTE BatteryFlag; < 5987 BYTE BatteryLifePercent; < 5988 BYTE Reserved1; < 5989 DWORD BatteryLifeTime; < 5990 DWORD BatteryFullLifeTime; < 5991 } < 5992 alias _SYSTEM_POWER_STATUS SYSTEM_POWER_STATUS; < 5993 alias _SYSTEM_POWER_STATUS* LPSYSTEM_POWER_STATUS; < 5994 < 5995 extern(Windows) export BOOL GetSystemPowerStatus( < 5996 LPSYSTEM_POWER_STATUS lpSystemPowerStatus); < 5997 < 5998 extern(Windows) export BOOL SetSystemPowerState( < 5999 BOOL fSuspend, < 6000 BOOL fForce); < 6001 < 6002 // #endif /* WINVER >= 0x0400 */ < 6003 < 6004 // #if (_WIN32_WINNT >= 0x0500) < 6005 < 6006 extern(Windows) export BOOL AllocateUserPhysicalPages( < 6007 HANDLE hProcess, < 6008 PULONG_PTR NumberOfPages, < 6009 PULONG_PTR PageArray); < 6010 < 6011 extern(Windows) export BOOL FreeUserPhysicalPages( < 6012 HANDLE hProcess, < 6013 PULONG_PTR NumberOfPages, < 6014 PULONG_PTR PageArray); < 6015 < 6016 extern(Windows) export BOOL MapUserPhysicalPages( < 6017 PVOID VirtualAddress, < 6018 ULONG_PTR NumberOfPages, < 6019 PULONG_PTR PageArray ); < 6020 < 6021 extern(Windows) export BOOL MapUserPhysicalPagesScatter( < 6022 PVOID *VirtualAddresses, < 6023 ULONG_PTR NumberOfPages, < 6024 PULONG_PTR PageArray ); < 6025 < 6026 extern(Windows) export HANDLE CreateJobObjectA( < 6027 LPSECURITY_ATTRIBUTES lpJobAttributes, < 6028 LPCSTR lpName); < 6029 extern(Windows) export HANDLE CreateJobObjectW( < 6030 LPSECURITY_ATTRIBUTES lpJobAttributes, < 6031 LPCWSTR lpName); < 6032 // #ifdef UNICODE < 6033 alias CreateJobObjectW CreateJobObject; < 6034 // #else < 6035 // #... < 6036 // #endif // !UNICODE < 6037 < 6038 extern(Windows) export HANDLE OpenJobObjectA( < 6039 DWORD dwDesiredAccess, < 6040 BOOL bInheritHandle, < 6041 LPCSTR lpName); < 6042 extern(Windows) export HANDLE OpenJobObjectW( < 6043 DWORD dwDesiredAccess, < 6044 BOOL bInheritHandle, < 6045 LPCWSTR lpName); < 6046 // #ifdef UNICODE < 6047 alias OpenJobObjectW OpenJobObject; < 6048 // #else < 6049 // #... < 6050 // #endif // !UNICODE < 6051 < 6052 extern(Windows) export BOOL AssignProcessToJobObject( < 6053 HANDLE hJob, < 6054 HANDLE hProcess); < 6055 < 6056 extern(Windows) export BOOL TerminateJobObject( < 6057 HANDLE hJob, < 6058 UINT uExitCode); < 6059 < 6060 extern(Windows) export BOOL QueryInformationJobObject( < 6061 HANDLE hJob, < 6062 JOBOBJECTINFOCLASS JobObjectInformationClass, < 6063 LPVOID lpJobObjectInformation, < 6064 DWORD cbJobObjectInformationLength, < 6065 LPDWORD lpReturnLength); < 6066 < 6067 extern(Windows) export BOOL SetInformationJobObject( < 6068 HANDLE hJob, < 6069 JOBOBJECTINFOCLASS JobObjectInformationClass, < 6070 LPVOID lpJobObjectInformation, < 6071 DWORD cbJobObjectInformationLength); < 6072 < 6073 extern(Windows) export BOOL IsProcessInJob( < 6074 HANDLE ProcessHandle, < 6075 HANDLE JobHandle, < 6076 PBOOL Result); < 6077 < 6078 extern(Windows) export BOOL CreateJobSet( < 6079 ULONG NumJob, < 6080 PJOB_SET_ARRAY UserJobSet, < 6081 ULONG Flags); < 6082 < 6083 extern(Windows) export PVOID AddVectoredExceptionHandler( < 6084 ULONG FirstHandler, < 6085 PVECTORED_EXCEPTION_HANDLER VectoredHandler); < 6086 < 6087 extern(Windows) export ULONG RemoveVectoredExceptionHandler( < 6088 PVOID VectoredHandlerHandle); < 6089 < 6090 extern(Windows) export HANDLE FindFirstVolumeA( < 6091 LPSTR lpszVolumeName, < 6092 DWORD cchBufferLength); < 6093 extern(Windows) export HANDLE FindFirstVolumeW( < 6094 LPWSTR lpszVolumeName, < 6095 DWORD cchBufferLength); < 6096 // #ifdef UNICODE < 6097 alias FindFirstVolumeW FindFirstVolume; < 6098 // #else < 6099 // #... < 6100 // #endif // !UNICODE < 6101 < 6102 extern(Windows) export BOOL FindNextVolumeA( < 6103 HANDLE hFindVolume, < 6104 LPSTR lpszVolumeName, < 6105 DWORD cchBufferLength); < 6106 extern(Windows) export BOOL FindNextVolumeW( < 6107 HANDLE hFindVolume, < 6108 LPWSTR lpszVolumeName, < 6109 DWORD cchBufferLength); < 6110 // #ifdef UNICODE < 6111 alias FindNextVolumeW FindNextVolume; < 6112 // #else < 6113 // #... < 6114 // #endif // !UNICODE < 6115 < 6116 extern(Windows) export BOOL FindVolumeClose( < 6117 HANDLE hFindVolume); < 6118 < 6119 extern(Windows) export HANDLE FindFirstVolumeMountPointA( < 6120 LPCSTR lpszRootPathName, < 6121 LPSTR lpszVolumeMountPoint, < 6122 DWORD cchBufferLength); < 6123 extern(Windows) export HANDLE FindFirstVolumeMountPointW( < 6124 LPCWSTR lpszRootPathName, < 6125 LPWSTR lpszVolumeMountPoint, < 6126 DWORD cchBufferLength); < 6127 // #ifdef UNICODE < 6128 alias FindFirstVolumeMountPointW FindFirstVolumeMountPoint; < 6129 // #else < 6130 // #... < 6131 // #endif // !UNICODE < 6132 < 6133 extern(Windows) export BOOL FindNextVolumeMountPointA( < 6134 HANDLE hFindVolumeMountPoint, < 6135 LPSTR lpszVolumeMountPoint, < 6136 DWORD cchBufferLength); < 6137 extern(Windows) export BOOL FindNextVolumeMountPointW( < 6138 HANDLE hFindVolumeMountPoint, < 6139 LPWSTR lpszVolumeMountPoint, < 6140 DWORD cchBufferLength); < 6141 // #ifdef UNICODE < 6142 alias FindNextVolumeMountPointW FindNextVolumeMountPoint; < 6143 // #else < 6144 // #... < 6145 // #endif // !UNICODE < 6146 < 6147 extern(Windows) export BOOL FindVolumeMountPointClose( < 6148 HANDLE hFindVolumeMountPoint); < 6149 < 6150 extern(Windows) export BOOL SetVolumeMountPointA( < 6151 LPCSTR lpszVolumeMountPoint, < 6152 LPCSTR lpszVolumeName); < 6153 extern(Windows) export BOOL SetVolumeMountPointW( < 6154 LPCWSTR lpszVolumeMountPoint, < 6155 LPCWSTR lpszVolumeName); < 6156 // #ifdef UNICODE < 6157 alias SetVolumeMountPointW SetVolumeMountPoint; < 6158 // #else < 6159 // #... < 6160 // #endif // !UNICODE < 6161 < 6162 extern(Windows) export BOOL DeleteVolumeMountPointA( < 6163 LPCSTR lpszVolumeMountPoint); < 6164 extern(Windows) export BOOL DeleteVolumeMountPointW( < 6165 LPCWSTR lpszVolumeMountPoint); < 6166 // #ifdef UNICODE < 6167 alias DeleteVolumeMountPointW DeleteVolumeMountPoint; < 6168 // #else < 6169 // #... < 6170 // #endif // !UNICODE < 6171 < 6172 extern(Windows) export BOOL GetVolumeNameForVolumeMountPointA( < 6173 LPCSTR lpszVolumeMountPoint, < 6174 LPSTR lpszVolumeName, < 6175 DWORD cchBufferLength); < 6176 extern(Windows) export BOOL GetVolumeNameForVolumeMountPointW( < 6177 LPCWSTR lpszVolumeMountPoint, < 6178 LPWSTR lpszVolumeName, < 6179 DWORD cchBufferLength); < 6180 // #ifdef UNICODE < 6181 alias GetVolumeNameForVolumeMountPointW GetVolumeNameForVolumeMountPoint; < 6182 // #else < 6183 // #... < 6184 // #endif // !UNICODE < 6185 < 6186 extern(Windows) export BOOL GetVolumePathNameA( < 6187 LPCSTR lpszFileName, < 6188 LPSTR lpszVolumePathName, < 6189 DWORD cchBufferLength); < 6190 extern(Windows) export BOOL GetVolumePathNameW( < 6191 LPCWSTR lpszFileName, < 6192 LPWSTR lpszVolumePathName, < 6193 DWORD cchBufferLength); < 6194 // #ifdef UNICODE < 6195 alias GetVolumePathNameW GetVolumePathName; < 6196 // #else < 6197 // #... < 6198 // #endif // !UNICODE < 6199 < 6200 extern(Windows) export BOOL GetVolumePathNamesForVolumeNameA( < 6201 LPCSTR lpszVolumeName, < 6202 LPSTR lpszVolumePathNames, < 6203 DWORD cchBufferLength, < 6204 PDWORD lpcchReturnLength); < 6205 extern(Windows) export BOOL GetVolumePathNamesForVolumeNameW( < 6206 LPCWSTR lpszVolumeName, < 6207 LPWSTR lpszVolumePathNames, < 6208 DWORD cchBufferLength, < 6209 PDWORD lpcchReturnLength); < 6210 // #ifdef UNICODE < 6211 alias GetVolumePathNamesForVolumeNameW GetVolumePathNamesForVolumeName; < 6212 // #else < 6213 // #... < 6214 // #endif // !UNICODE < 6215 < 6216 // #endif < 6217 < 6218 // #if (_WIN32_WINNT >= 0x0500) || (_WIN32_FUSION >= 0x0100) || ISOLATION_AWARE_ < 6219 < 6220 enum : uint { ACTCTX_FLAG_PROCESSOR_ARCHITECTURE_VALID = 0x00000001 } < 6221 enum : uint { ACTCTX_FLAG_LANGID_VALID = 0x00000002 } < 6222 enum : uint { ACTCTX_FLAG_ASSEMBLY_DIRECTORY_VALID = 0x00000004 } < 6223 enum : uint { ACTCTX_FLAG_RESOURCE_NAME_VALID = 0x00000008 } < 6224 enum : uint { ACTCTX_FLAG_SET_PROCESS_DEFAULT = 0x00000010 } < 6225 enum : uint { ACTCTX_FLAG_APPLICATION_NAME_VALID = 0x00000020 } < 6226 enum : uint { ACTCTX_FLAG_SOURCE_IS_ASSEMBLYREF = 0x00000040 } < 6227 enum : uint { ACTCTX_FLAG_HMODULE_VALID = 0x00000080 } < 6228 < 6229 struct tagACTCTXA { < 6230 ULONG cbSize; < 6231 DWORD dwFlags; < 6232 LPCSTR lpSource; < 6233 USHORT wProcessorArchitecture; < 6234 LANGID wLangId; < 6235 LPCSTR lpAssemblyDirectory; < 6236 LPCSTR lpResourceName; < 6237 LPCSTR lpApplicationName; < 6238 HMODULE hModule; < 6239 } < 6240 alias tagACTCTXA ACTCTXA; < 6241 alias tagACTCTXA* PACTCTXA; < 6242 < 6243 struct tagACTCTXW { < 6244 ULONG cbSize; < 6245 DWORD dwFlags; < 6246 LPCWSTR lpSource; < 6247 USHORT wProcessorArchitecture; < 6248 LANGID wLangId; < 6249 LPCWSTR lpAssemblyDirectory; < 6250 LPCWSTR lpResourceName; < 6251 LPCWSTR lpApplicationName; < 6252 HMODULE hModule; < 6253 } < 6254 alias tagACTCTXW ACTCTXW; < 6255 alias tagACTCTXW* PACTCTXW; < 6256 < 6257 // #ifdef UNICODE < 6258 // skip typedef ACTCTXW ACTCTX; < 6259 alias PACTCTXW PACTCTX; < 6260 // #else < 6261 // ... < 6262 // #endif // UNICODE < 6263 < 6264 alias ACTCTXA* PCACTCTXA; | 2818 alias ACTCTX* PACTCTX, PCACTCTX; 6265 alias ACTCTXW* PCACTCTXW; < 6266 // #ifdef UNICODE < 6267 // skip typedef ACTCTXW ACTCTX; < 6268 alias PCACTCTXW PCACTCTX; < 6269 // #else < 6270 // ... < 6271 // #endif // UNICODE < 6272 | 2819 } 6273 // #endif < 6274 | 2820 } 6275 // #if (_WIN32_WINNT >= 0x0500) || (_WIN32_FUSION >= 0x0100) < 6276 < 6277 extern(Windows) export HANDLE CreateActCtxA( < 6278 PCACTCTXA pActCtx); < 6279 extern(Windows) export HANDLE CreateActCtxW( < 6280 PCACTCTXW pActCtx); < 6281 // #ifdef UNICODE < 6282 alias CreateActCtxW CreateActCtx; < 6283 // #else < 6284 // #... < 6285 // #endif // !UNICODE < 6286 < 6287 extern(Windows) export VOID AddRefActCtx( < 6288 HANDLE hActCtx); < 6289 < 6290 extern(Windows) export VOID ReleaseActCtx( < 6291 HANDLE hActCtx); < 6292 < 6293 extern(Windows) export BOOL ZombifyActCtx( < 6294 HANDLE hActCtx); < 6295 < 6296 extern(Windows) export BOOL ActivateActCtx( < 6297 HANDLE hActCtx, < 6298 ULONG_PTR *lpCookie); < 6299 < 6300 enum : uint { DEACTIVATE_ACTCTX_FLAG_FORCE_EARLY_DEACTIVATION = 0x00000001 } < 6301 < 6302 extern(Windows) export BOOL DeactivateActCtx( < 6303 DWORD dwFlags, < 6304 ULONG_PTR ulCookie); < 6305 < 6306 extern(Windows) export BOOL GetCurrentActCtx( < 6307 HANDLE *lphActCtx); < 6308 < 6309 // #endif < 6310 < 6311 // #if (_WIN32_WINNT >= 0x0500) || (_WIN32_FUSION >= 0x0100) || ISOLATION_AWARE_ < 6312 < 6313 struct tagACTCTX_SECTION_KEYED_DATA { < 6314 ULONG cbSize; < 6315 ULONG ulDataFormatVersion; < 6316 PVOID lpData; < 6317 ULONG ulLength; < 6318 PVOID lpSectionGlobalData; < 6319 ULONG ulSectionGlobalDataLength; < 6320 PVOID lpSectionBase; < 6321 ULONG ulSectionTotalLength; < 6322 HANDLE hActCtx; < 6323 ULONG ulAssemblyRosterIndex; < 6324 } < 6325 alias tagACTCTX_SECTION_KEYED_DATA ACTCTX_SECTION_KEYED_DATA; < 6326 alias tagACTCTX_SECTION_KEYED_DATA* PACTCTX_SECTION_KEYED_DATA; < 6327 < 6328 enum : uint { FIND_ACTCTX_SECTION_KEY_RETURN_HACTCTX = 0x00000001 } < 6329 < 6330 // #endif < 6331 < 6332 // #if (_WIN32_WINNT >= 0x0500) || (_WIN32_FUSION >= 0x0100) < 6333 < 6334 extern(Windows) export BOOL FindActCtxSectionStringA( < 6335 DWORD dwFlags, < 6336 GUID *lpExtensionGuid, < 6337 ULONG ulSectionId, < 6338 LPCSTR lpStringToFind, < 6339 PACTCTX_SECTION_KEYED_DATA ReturnedData); < 6340 extern(Windows) export BOOL FindActCtxSectionStringW( < 6341 DWORD dwFlags, < 6342 GUID *lpExtensionGuid, < 6343 ULONG ulSectionId, < 6344 LPCWSTR lpStringToFind, < 6345 PACTCTX_SECTION_KEYED_DATA ReturnedData); < 6346 // #ifdef UNICODE < 6347 alias FindActCtxSectionStringW FindActCtxSectionString; < 6348 // #else < 6349 // #... < 6350 // #endif // !UNICODE < 6351 < 6352 extern(Windows) export BOOL FindActCtxSectionGuid( < 6353 DWORD dwFlags, < 6354 GUID *lpExtensionGuid, < 6355 ULONG ulSectionId, < 6356 GUID *lpGuidToFind, < 6357 PACTCTX_SECTION_KEYED_DATA ReturnedData); < 6358 < 6359 // #endif < 6360 < 6361 // #if (_WIN32_WINNT >= 0x0500) || (_WIN32_FUSION >= 0x0100) || ISOLATION_AWARE_ < 6362 < 6363 // #if !defined(RC_INVOKED) /* RC complains about long symbols in #ifs */ < 6364 // #if !defined(ACTIVATION_CONTEXT_BASIC_INFORMATION_DEFINED) < 6365 < 6366 // ... < 6367 < 6368 // ... < 6369 < 6370 // #... < 6371 < 6372 // #endif // !defined(ACTIVATION_CONTEXT_BASIC_INFORMATION_DEFINED) < 6373 // #endif < 6374 < 6375 enum : uint { QUERY_ACTCTX_FLAG_USE_ACTIVE_ACTCTX = 0x00000004 } < 6376 enum : uint { QUERY_ACTCTX_FLAG_ACTCTX_IS_HMODULE = 0x00000008 } < 6377 enum : uint { QUERY_ACTCTX_FLAG_ACTCTX_IS_ADDRESS = 0x00000010 } < 6378 enum : uint { QUERY_ACTCTX_FLAG_NO_ADDREF = 0x80000000 } < 6379 < 6380 // #endif < 6381 < 6382 // #if (_WIN32_WINNT >= 0x0500) || (_WIN32_FUSION >= 0x0100) < 6383 < 6384 extern(Windows) export BOOL QueryActCtxW( < 6385 DWORD dwFlags, < 6386 HANDLE hActCtx, < 6387 PVOID pvSubInstance, < 6388 ULONG ulInfoClass, < 6389 PVOID pvBuffer, < 6390 SIZE_T cbBuffer , < 6391 SIZE_T *pcbWrittenOrRequired ); < 6392 < 6393 extern(Windows) alias BOOL function( DWORD dwFlags, HANDLE hActCtx, PVOID pvS < 6394 < 6395 // #endif // (_WIN32_WINNT > 0x0500) || (_WIN32_FUSION >= 0x0100) < 6396 < 6397 extern(Windows) export BOOL ProcessIdToSessionId( < 6398 DWORD dwProcessId, < 6399 DWORD *pSessionId); < 6400 < 6401 // #if _WIN32_WINNT >= 0x0501 < 6402 < 6403 extern(Windows) export DWORD WTSGetActiveConsoleSessionId(); < 6404 < 6405 extern(Windows) export BOOL IsWow64Process( < 6406 HANDLE hProcess, < 6407 PBOOL Wow64Process); < 6408 < 6409 // #endif // (_WIN32_WINNT >= 0x0501) < 6410 < 6411 extern(Windows) export BOOL GetNumaHighestNodeNumber( < 6412 PULONG HighestNodeNumber); < 6413 < 6414 extern(Windows) export BOOL GetNumaProcessorNode( < 6415 UCHAR Processor, < 6416 PUCHAR NodeNumber); < 6417 < 6418 extern(Windows) export BOOL GetNumaNodeProcessorMask( < 6419 UCHAR Node, < 6420 PULONGLONG ProcessorMask); < 6421 < 6422 extern(Windows) export BOOL GetNumaProcessorMap( < 6423 PSYSTEM_NUMA_INFORMATION Map, < 6424 ULONG Length, < 6425 PULONG ReturnedLength); < 6426 < 6427 extern(Windows) export BOOL GetNumaAvailableMemory( < 6428 PSYSTEM_NUMA_INFORMATION Memory, < 6429 ULONG Length, < 6430 PULONG ReturnedLength); < 6431 < 6432 extern(Windows) export BOOL GetNumaAvailableMemoryNode( < 6433 UCHAR Node, < 6434 PULONGLONG AvailableBytes); < 6435 < 6436 extern(Windows) export ULONGLONG NumaVirtualQueryNode( < 6437 ULONG NumberOfRanges, < 6438 PULONG_PTR RangeList, < 6439 PULONG_PTR VirtualPageAndNode, < 6440 SIZE_T MaximumOutputLength); < 6441 < 6442 // #if !defined(RC_INVOKED) /* RC complains about long symbols in #ifs */ < 6443 // #if ISOLATION_AWARE_ENABLED < 6444 // #... < 6445 // #endif /* ISOLATION_AWARE_ENABLED */ < 6446 // #endif /* RC */ < 6447 < 6448 // #ifdef __cplusplus < 6449 // } < 6450 // #endif < 6451 < 6452 // #endif // _WINBASE_ < 6453 <