1 | ' api_system.sbp - System API |
---|
2 | |
---|
3 | #ifndef _INC_SYSTEM |
---|
4 | #define _INC_SYSTEM |
---|
5 | |
---|
6 | #ifdef UNICODE |
---|
7 | Const _FuncName_CompareString = "CompareStringW" |
---|
8 | Const _FuncName_CopyFile = "CopyFileW" |
---|
9 | Const _FuncName_CreateDirectory = "CreateDirectoryW" |
---|
10 | Const _FuncName_CreateEvent = "CreateEventW" |
---|
11 | Const _FuncName_CreateMutex = "CreateMutexW" |
---|
12 | Const _FuncName_CreateSemaphore = "CreateSemaphoreW" |
---|
13 | Const _FuncName_CreateWaitableTimer = "CreateWaitableTimerW" |
---|
14 | Const _FuncName_CreateFile = "CreateFileW" |
---|
15 | Const _FuncName_CreateFileMapping = "CreateFileMappingW" |
---|
16 | Const _FuncName_OpenFileMapping = "OpenFileMappingW" |
---|
17 | Const _FuncName_CreateMailslot = "CreateMailslotW" |
---|
18 | Const _FuncName_CreateProcess = "CreateProcessW" |
---|
19 | Const _FuncName_DeleteFile = "DeleteFileW" |
---|
20 | Const _FuncName_ExpandEnvironmentStrings = "ExpandEnvironmentStringsW" |
---|
21 | Const _FuncName_FatalAppExit = "FatalAppExitW" |
---|
22 | Const _FuncName_FindFirstChangeNotification = "FindFirstChangeNotificationW" |
---|
23 | Const _FuncName_FindFirstFile = "FindFirstFileW" |
---|
24 | Const _FuncName_FindNextFile = "FindNextFileW" |
---|
25 | Const _FuncName_FindResource = "FindResourceW" |
---|
26 | Const _FuncName_FormatMessage = "FormatMessageW" |
---|
27 | Const _FuncName_FreeEnvironmentStrings = "FreeEnvironmentStringsW" |
---|
28 | Const _FuncName_GetCompressedFileSize = "GetCompressedFileSizeW" |
---|
29 | Const _FuncName_GetComputerName = "GetComputerNameW" |
---|
30 | Const _FuncName_GetCurrentDirectory = "GetCurrentDirectoryW" |
---|
31 | Const _FuncName_GetDateFormat = "GetDateFormatW" |
---|
32 | Const _FuncName_GetDiskFreeSpace = "GetDiskFreeSpaceW" |
---|
33 | Const _FuncName_GetDiskFreeSpaceEx = "GetDiskFreeSpaceExW" |
---|
34 | Const _FuncName_GetVolumeInformation = "GetVolumeInformationW" |
---|
35 | Const _FuncName_GetDriveType = "GetDriveTypeW" |
---|
36 | Const _FuncName_GetEnvironmentVariable = "GetEnvironmentVariableW" |
---|
37 | Const _FuncName_GetEnvironmentStrings = "GetEnvironmentStringsW" |
---|
38 | Const _FuncName_GetFileAttributes = "GetFileAttributesW" |
---|
39 | Const _FuncName_GetFullPathName = "GetFullPathNameW" |
---|
40 | Const _FuncName_GetLogicalDriveStrings = "GetLogicalDriveStringsW" |
---|
41 | Const _FuncName_GetLongPathName = "GetLongPathNameW" |
---|
42 | Const _FuncName_GetModuleFileName = "GetModuleFileNameW" |
---|
43 | Const _FuncName_GetModuleHandle = "GetModuleHandleW" |
---|
44 | Const _FuncName_GetShortPathName = "GetShortPathNameW" |
---|
45 | Const _FuncName_GetStartupInfo = "GetStartupInfoW" |
---|
46 | Const _FuncName_GetSystemDirectory = "GetSystemDirectoryW" |
---|
47 | Const _FuncName_GetTempFileName = "GetTempFileNameW" |
---|
48 | Const _FuncName_GetTempPath = "GetTempPathW" |
---|
49 | Const _FuncName_GetTimeFormat = "GetTimeFormatW" |
---|
50 | Const _FuncName_GetUserName = "GetUserNameW" |
---|
51 | Const _FuncName_GetVersionEx = "GetVersionExW" |
---|
52 | Const _FuncName_GetWindowsDirectory = "GetWindowsDirectoryW" |
---|
53 | Const _FuncName_LCMapString = "LCMapStringW" |
---|
54 | Const _FuncName_LoadLibrary = "LoadLibraryW" |
---|
55 | Const _FuncName_LoadLibraryEx = "LoadLibraryExW" |
---|
56 | Const _FuncName_LookupPrivilegeValue = "LookupPrivilegeValueW" |
---|
57 | Const _FuncName_lstrcat = "lstrcatW" |
---|
58 | Const _FuncName_lstrcmp = "lstrcmpW" |
---|
59 | Const _FuncName_lstrcmpi = "lstrcmpiW" |
---|
60 | Const _FuncName_lstrcpy = "lstrcpyW" |
---|
61 | Const _FuncName_lstrcpyn = "lstrcpynW" |
---|
62 | Const _FuncName_MoveFile = "MoveFileW" |
---|
63 | Const _FuncName_OpenEvent = "OpenEventW" |
---|
64 | Const _FuncName_OpenMutex = "OpenMutexW" |
---|
65 | Const _FuncName_OpenSemaphore = "OpenSemaphoreW" |
---|
66 | Const _FuncName_OpenWaitableTimer = "OpenWaitableTimerW" |
---|
67 | Const _FuncName_RemoveDirectory = "RemoveDirectoryW" |
---|
68 | Const _FuncName_SetComputerName = "SetComputerNameW" |
---|
69 | Const _FuncName_SetCurrentDirectory = "SetCurrentDirectoryW" |
---|
70 | Const _FuncName_SearchPath = "SearchPathW" |
---|
71 | Const _FuncName_SetEnvironmentVariable = "SetEnvironmentVariableW" |
---|
72 | Const _FuncName_SetFileAttributes = "SetFileAttributesW" |
---|
73 | #else |
---|
74 | Const _FuncName_CompareString = "CompareStringA" |
---|
75 | Const _FuncName_CopyFile = "CopyFileA" |
---|
76 | Const _FuncName_CreateDirectory = "CreateDirectoryA" |
---|
77 | Const _FuncName_CreateEvent = "CreateEventA" |
---|
78 | Const _FuncName_CreateMutex = "CreateMutexA" |
---|
79 | Const _FuncName_CreateSemaphore = "CreateSemaphoreA" |
---|
80 | Const _FuncName_CreateWaitableTimer = "CreateWaitableTimerA" |
---|
81 | Const _FuncName_CreateFile = "CreateFileA" |
---|
82 | Const _FuncName_CreateFileMapping = "CreateFileMappingA" |
---|
83 | Const _FuncName_OpenFileMapping = "OpenFileMappingA" |
---|
84 | Const _FuncName_CreateMailslot = "CreateMailslotA" |
---|
85 | Const _FuncName_CreateProcess = "CreateProcessA" |
---|
86 | Const _FuncName_DeleteFile = "DeleteFileA" |
---|
87 | Const _FuncName_ExpandEnvironmentStrings = "ExpandEnvironmentStringsA" |
---|
88 | Const _FuncName_FatalAppExit = "FatalAppExitA" |
---|
89 | Const _FuncName_FindFirstChangeNotification = "FindFirstChangeNotificationA" |
---|
90 | Const _FuncName_FindFirstFile = "FindFirstFileA" |
---|
91 | Const _FuncName_FindNextFile = "FindNextFileA" |
---|
92 | Const _FuncName_FindResource = "FindResourceA" |
---|
93 | Const _FuncName_FormatMessage = "FormatMessageA" |
---|
94 | Const _FuncName_FreeEnvironmentStrings = "FreeEnvironmentStringsA" |
---|
95 | Const _FuncName_GetCompressedFileSize = "GetCompressedFileSizeA" |
---|
96 | Const _FuncName_GetComputerName = "GetComputerNameA" |
---|
97 | Const _FuncName_GetCurrentDirectory = "GetCurrentDirectoryA" |
---|
98 | Const _FuncName_GetDateFormat = "GetDateFormatA" |
---|
99 | Const _FuncName_GetDiskFreeSpace = "GetDiskFreeSpaceA" |
---|
100 | Const _FuncName_GetDiskFreeSpaceEx = "GetDiskFreeSpaceExA" |
---|
101 | Const _FuncName_GetVolumeInformation = "GetVolumeInformationA" |
---|
102 | Const _FuncName_GetDriveType = "GetDriveTypeA" |
---|
103 | Const _FuncName_GetEnvironmentVariable = "GetEnvironmentVariableA" |
---|
104 | Const _FuncName_GetEnvironmentStrings = "GetEnvironmentStringsA" |
---|
105 | Const _FuncName_GetFileAttributes = "GetFileAttributesA" |
---|
106 | Const _FuncName_GetFullPathName = "GetFullPathNameA" |
---|
107 | Const _FuncName_GetLogicalDriveStrings = "GetLogicalDriveStringsA" |
---|
108 | Const _FuncName_GetLongPathName = "GetLongPathNameA" |
---|
109 | Const _FuncName_GetModuleFileName = "GetModuleFileNameA" |
---|
110 | Const _FuncName_GetModuleHandle = "GetModuleHandleA" |
---|
111 | Const _FuncName_GetShortPathName = "GetShortPathNameA" |
---|
112 | Const _FuncName_GetStartupInfo = "GetStartupInfoA" |
---|
113 | Const _FuncName_GetSystemDirectory = "GetSystemDirectoryA" |
---|
114 | Const _FuncName_GetTempFileName = "GetTempFileNameA" |
---|
115 | Const _FuncName_GetTempPath = "GetTempPathA" |
---|
116 | Const _FuncName_GetTimeFormat = "GetTimeFormatA" |
---|
117 | Const _FuncName_GetUserName = "GetUserNameA" |
---|
118 | Const _FuncName_GetVersionEx = "GetVersionExA" |
---|
119 | Const _FuncName_GetWindowsDirectory = "GetWindowsDirectoryA" |
---|
120 | Const _FuncName_LCMapString = "LCMapStringA" |
---|
121 | Const _FuncName_LoadLibrary = "LoadLibraryA" |
---|
122 | Const _FuncName_LoadLibraryEx = "LoadLibraryExA" |
---|
123 | Const _FuncName_LookupPrivilegeValue = "LookupPrivilegeValueA" |
---|
124 | Const _FuncName_lstrcat = "lstrcatA" |
---|
125 | Const _FuncName_lstrcmp = "lstrcmpA" |
---|
126 | Const _FuncName_lstrcmpi = "lstrcmpiA" |
---|
127 | Const _FuncName_lstrcpy = "lstrcpyA" |
---|
128 | Const _FuncName_lstrcpyn = "lstrcpynA" |
---|
129 | Const _FuncName_MoveFile = "MoveFileA" |
---|
130 | Const _FuncName_OpenEvent = "OpenEventA" |
---|
131 | Const _FuncName_OpenMutex = "OpenMutexA" |
---|
132 | Const _FuncName_OpenSemaphore = "OpenSemaphoreA" |
---|
133 | Const _FuncName_OpenWaitableTimer = "OpenWaitableTimerA" |
---|
134 | Const _FuncName_RemoveDirectory = "RemoveDirectoryA" |
---|
135 | Const _FuncName_SetComputerName = "SetComputerNameA" |
---|
136 | Const _FuncName_SetCurrentDirectory = "SetCurrentDirectoryA" |
---|
137 | Const _FuncName_SearchPath = "SearchPathA" |
---|
138 | Const _FuncName_SetEnvironmentVariable = "SetEnvironmentVariableA" |
---|
139 | Const _FuncName_SetFileAttributes = "SetFileAttributesA" |
---|
140 | #endif |
---|
141 | |
---|
142 | |
---|
143 | '------------------- |
---|
144 | ' default constants |
---|
145 | Const NULL = 0 |
---|
146 | Const TRUE = 1 |
---|
147 | Const FALSE = 0 |
---|
148 | |
---|
149 | Const _System_TRUE = -1 |
---|
150 | Const _System_FALSE = 0 |
---|
151 | |
---|
152 | Const MAX_PATH = 260 |
---|
153 | Const INVALID_HANDLE_VALUE = -1 As HANDLE |
---|
154 | Const INVALID_SET_FILE_POINTER = &HFFFFFFFF |
---|
155 | |
---|
156 | Const SYNCHRONIZE = &H00100000 |
---|
157 | Const STANDARD_RIGHTS_REQUIRED = &H000F0000 |
---|
158 | |
---|
159 | Const MAXIMUM_WAIT_OBJECTS = 64 |
---|
160 | |
---|
161 | '----------------- |
---|
162 | ' data structs |
---|
163 | Type LARGE_INTEGER |
---|
164 | LowPart As DWord |
---|
165 | HighPart As Long |
---|
166 | End Type |
---|
167 | Type ULARGE_INTEGER |
---|
168 | LowPart As DWord |
---|
169 | HighPart As DWord |
---|
170 | End Type |
---|
171 | |
---|
172 | |
---|
173 | 'Globally Unique Identifier 128 bit(16 byte) |
---|
174 | Type GUID |
---|
175 | Data1 As DWord |
---|
176 | Data2 As Word |
---|
177 | Data3 As Word |
---|
178 | Data4[7] As Byte |
---|
179 | End Type |
---|
180 | |
---|
181 | ' File structure |
---|
182 | Type SECURITY_ATTRIBUTES |
---|
183 | nLength As DWord |
---|
184 | lpSecurityDescriptor As VoidPtr |
---|
185 | bInheritHandle As BOOL |
---|
186 | End Type |
---|
187 | |
---|
188 | Type OVERLAPPED |
---|
189 | Internal As ULONG_PTR |
---|
190 | InternalHigh As ULONG_PTR |
---|
191 | Offset As DWord |
---|
192 | OffsetHigh As DWord |
---|
193 | hEvent As HANDLE |
---|
194 | End Type |
---|
195 | |
---|
196 | Type FILETIME |
---|
197 | dwLowDateTime As DWord |
---|
198 | dwHighDateTime As DWord |
---|
199 | End Type |
---|
200 | |
---|
201 | ' System time |
---|
202 | Type SYSTEMTIME |
---|
203 | wYear As Word |
---|
204 | wMonth As Word |
---|
205 | wDayOfWeek As Word |
---|
206 | wDay As Word |
---|
207 | wHour As Word |
---|
208 | wMinute As Word |
---|
209 | wSecond As Word |
---|
210 | wMilliseconds As Word |
---|
211 | End Type |
---|
212 | |
---|
213 | #ifdef _WIN64 |
---|
214 | Const CONTEXT_AMD64 = &h100000 |
---|
215 | |
---|
216 | Const CONTEXT_CONTROL = (CONTEXT_AMD64 Or &h1) |
---|
217 | Const CONTEXT_INTEGER = (CONTEXT_AMD64 Or &h2) |
---|
218 | Const CONTEXT_SEGMENTS = (CONTEXT_AMD64 Or &h4) |
---|
219 | Const CONTEXT_FLOATING_POINT = (CONTEXT_AMD64 Or &h8) |
---|
220 | Const CONTEXT_DEBUG_REGISTERS = (CONTEXT_AMD64 Or &h10) |
---|
221 | |
---|
222 | Const CONTEXT_FULL = (CONTEXT_CONTROL Or CONTEXT_INTEGER Or CONTEXT_FLOATING_POINT) |
---|
223 | |
---|
224 | Const CONTEXT_ALL = (CONTEXT_CONTROL Or CONTEXT_INTEGER Or CONTEXT_SEGMENTS Or CONTEXT_FLOATING_POINT Or CONTEXT_DEBUG_REGISTERS) |
---|
225 | |
---|
226 | Type Align(16) M128 |
---|
227 | Low As QWord |
---|
228 | High As Int64 |
---|
229 | End Type |
---|
230 | |
---|
231 | Type LEGACY_SAVE_AREA 'Winnt.h |
---|
232 | ControlWord As Word |
---|
233 | Reserved0 As Word |
---|
234 | StatusWord As Word |
---|
235 | Reserved1 As Word |
---|
236 | TagWord As Word |
---|
237 | Reserved2 As Word |
---|
238 | ErrorOffset As DWord |
---|
239 | ErrorSelector As Word |
---|
240 | ErrorOpcode As Word |
---|
241 | DataOffset As DWord |
---|
242 | DataSelector As Word |
---|
243 | Reserved3 As Word |
---|
244 | FloatRegisters[ELM(8 * 10)] As Byte |
---|
245 | End Type |
---|
246 | |
---|
247 | Type Align(16) CONTEXT 'Winnt.h |
---|
248 | 'Register parameter home addresses. |
---|
249 | P1Home As QWord |
---|
250 | P2Home As QWord |
---|
251 | P3Home As QWord |
---|
252 | P4Home As QWord |
---|
253 | P5Home As QWord |
---|
254 | P6Home As QWord |
---|
255 | 'Control flags. |
---|
256 | ContextFlags As DWord |
---|
257 | MxCsr As DWord |
---|
258 | 'Segment Registers and processor flags. |
---|
259 | SegCs As Word |
---|
260 | SegDs As Word |
---|
261 | SegEs As Word |
---|
262 | SegFs As Word |
---|
263 | SegGs As Word |
---|
264 | SegSs As Word |
---|
265 | EFlags As DWord |
---|
266 | 'Debug registers |
---|
267 | Dr0 As QWord |
---|
268 | Dr1 As QWord |
---|
269 | Dr2 As QWord |
---|
270 | Dr3 As QWord |
---|
271 | Dr6 As QWord |
---|
272 | Dr7 As QWord |
---|
273 | 'Integer registers. |
---|
274 | Rax As QWord |
---|
275 | Rcx As QWord |
---|
276 | Rdx As QWord |
---|
277 | Rbx As QWord |
---|
278 | Rsp As QWord |
---|
279 | Rbp As QWord |
---|
280 | Rsi As QWord |
---|
281 | Rdi As QWord |
---|
282 | R8 As QWord |
---|
283 | R9 As QWord |
---|
284 | R10 As QWord |
---|
285 | R11 As QWord |
---|
286 | R12 As QWord |
---|
287 | R13 As QWord |
---|
288 | R14 As QWord |
---|
289 | R15 As QWord |
---|
290 | 'Program counter. |
---|
291 | Rip As QWord |
---|
292 | 'MMX/floating point state. |
---|
293 | Header[ELM(2)] As M128 |
---|
294 | Legacy[ELM(8)] As M128 |
---|
295 | Xmm0 As M128 |
---|
296 | Xmm1 As M128 |
---|
297 | Xmm2 As M128 |
---|
298 | Xmm3 As M128 |
---|
299 | Xmm4 As M128 |
---|
300 | Xmm5 As M128 |
---|
301 | Xmm6 As M128 |
---|
302 | Xmm7 As M128 |
---|
303 | Xmm8 As M128 |
---|
304 | Xmm9 As M128 |
---|
305 | Xmm10 As M128 |
---|
306 | Xmm11 As M128 |
---|
307 | Xmm12 As M128 |
---|
308 | Xmm13 As M128 |
---|
309 | Xmm14 As M128 |
---|
310 | Xmm15 As M128 |
---|
311 | Reserve[ELM(96)] As Byte |
---|
312 | 'Vector registers |
---|
313 | VectorRegisters[ELM(26)] As M128 |
---|
314 | VectorControl As QWord |
---|
315 | 'Special debug control registers. |
---|
316 | DebugControl As QWord |
---|
317 | LastBranchToRip As QWord |
---|
318 | LastBranchFromRip As QWord |
---|
319 | LastExceptionToRip As QWord |
---|
320 | LastExceptionFromRip As QWord |
---|
321 | End Type |
---|
322 | |
---|
323 | #else |
---|
324 | |
---|
325 | Const SIZE_OF_80387_REGISTERS = 80 |
---|
326 | Const MAXIMUM_SUPPORTED_EXTENSION = 512 |
---|
327 | |
---|
328 | Type FLOATING_SAVE_AREA |
---|
329 | ControlWord As DWord |
---|
330 | StatusWord As DWord |
---|
331 | TagWord As DWord |
---|
332 | ErrorOffset As DWord |
---|
333 | ErrorSelector As DWord |
---|
334 | DataOffset As DWord |
---|
335 | DataSelector As DWord |
---|
336 | RegisterArea[ELM(SIZE_OF_80387_REGISTERS)] As Byte |
---|
337 | Cr0NpxState As DWord |
---|
338 | End Type |
---|
339 | |
---|
340 | Const CONTEXT_i386 = &h00010000 |
---|
341 | Const CONTEXT_i486 = &h00010000 |
---|
342 | |
---|
343 | Const CONTEXT_CONTROL = (CONTEXT_i386 Or &h00000001) 'SS:SP, CS:IP, FLAGS, BP |
---|
344 | Const CONTEXT_INTEGER = (CONTEXT_i386 Or &h00000002) 'AX, BX, CX, DX, SI, DI |
---|
345 | Const CONTEXT_SEGMENTS = (CONTEXT_i386 Or &h00000004) 'DS, ES, FS, GS |
---|
346 | Const CONTEXT_FLOATING_POINT = (CONTEXT_i386 Or &h00000008) '387 state |
---|
347 | Const CONTEXT_DEBUG_REGISTERS = (CONTEXT_i386 Or &h00000010) 'DB 0-3,6,7 |
---|
348 | Const CONTEXT_EXTENDED_REGISTERS = (CONTEXT_i386 Or &h0000002) 'cpu specific extensions |
---|
349 | |
---|
350 | Const CONTEXT_FULL = (CONTEXT_CONTROL Or CONTEXT_INTEGER Or CONTEXT_SEGMENTS) |
---|
351 | |
---|
352 | Const CONTEXT_ALL = (CONTEXT_CONTROL Or CONTEXT_INTEGER Or CONTEXT_SEGMENTS Or CONTEXT_FLOATING_POINT Or CONTEXT_DEBUG_REGISTERS Or CONTEXT_EXTENDED_REGISTERS) |
---|
353 | |
---|
354 | Type CONTEXT |
---|
355 | ContextFlags As DWord |
---|
356 | |
---|
357 | Dr0 As DWord |
---|
358 | Dr1 As DWord |
---|
359 | Dr2 As DWord |
---|
360 | Dr3 As DWord |
---|
361 | Dr6 As DWord |
---|
362 | Dr7 As DWord |
---|
363 | |
---|
364 | FloatSave As FLOATING_SAVE_AREA |
---|
365 | |
---|
366 | SegGs As DWord |
---|
367 | SegFs As DWord |
---|
368 | SegEs As DWord |
---|
369 | SegDs As DWord |
---|
370 | |
---|
371 | Edi As DWord |
---|
372 | Esi As DWord |
---|
373 | Ebx As DWord |
---|
374 | Edx As DWord |
---|
375 | Ecx As DWord |
---|
376 | Eax As DWord |
---|
377 | |
---|
378 | Ebp As DWord |
---|
379 | Eip As DWord |
---|
380 | SegCs As DWord |
---|
381 | EFlags As DWord |
---|
382 | Esp As DWord |
---|
383 | SegSs As DWord |
---|
384 | |
---|
385 | ExtendedRegisters[ELM(MAXIMUM_SUPPORTED_EXTENSION)] As Byte |
---|
386 | End Type |
---|
387 | |
---|
388 | #endif |
---|
389 | |
---|
390 | ' Global Memory Flags |
---|
391 | Const GMEM_FIXED = &H0000 |
---|
392 | Const GMEM_MOVEABLE = &H0002 |
---|
393 | Const GMEM_NOCOMPACT = &H0010 |
---|
394 | Const GMEM_NODISCARD = &H0020 |
---|
395 | Const GMEM_ZEROINIT = &H0040 |
---|
396 | Const GMEM_MODIFY = &H0080 |
---|
397 | Const GMEM_DISCARDABLE = &H0100 |
---|
398 | Const GMEM_NOT_BANKED = &H1000 |
---|
399 | Const GMEM_SHARE = &H2000 |
---|
400 | Const GMEM_DDESHARE = &H2000 |
---|
401 | Const GMEM_INVALID_HANDLE = &H8000 |
---|
402 | Const GHND = GMEM_MOVEABLE or GMEM_ZEROINIT |
---|
403 | Const GPTR = GMEM_FIXED or GMEM_ZEROINIT |
---|
404 | Const GMEM_DISCARDED = &H4000 |
---|
405 | |
---|
406 | |
---|
407 | ' Heap |
---|
408 | Const HEAP_NO_SERIALIZE = &H00000001 |
---|
409 | Const HEAP_GROWABLE = &H00000002 |
---|
410 | Const HEAP_GENERATE_EXCEPTIONS = &H00000004 |
---|
411 | Const HEAP_ZERO_MEMORY = &H00000008 |
---|
412 | Const HEAP_REALLOC_IN_PLACE_ONLY = &H00000010 |
---|
413 | |
---|
414 | |
---|
415 | ' Locale |
---|
416 | Const LOCALE_SYSTEM_DEFAULT = &H400 'Standard Systemsprache |
---|
417 | Const LOCALE_USER_DEFAULT = &H800 'Standard Benutzersprache |
---|
418 | |
---|
419 | |
---|
420 | ' Locale flag |
---|
421 | Const LOCALE_NOUSEROVERRIDE = &H80000000 |
---|
422 | |
---|
423 | |
---|
424 | 'Critical Section |
---|
425 | Type CRITICAL_SECTION |
---|
426 | DebugInfo As VoidPtr |
---|
427 | LockCount As Long |
---|
428 | RecursionCount As Long |
---|
429 | OwningThread As HANDLE |
---|
430 | LockSemaphore As HANDLE |
---|
431 | SpinCount As ULONG_PTR |
---|
432 | End Type |
---|
433 | |
---|
434 | |
---|
435 | 'DllMain |
---|
436 | Const DLL_PROCESS_ATTACH = 1 |
---|
437 | Const DLL_THREAD_ATTACH = 2 |
---|
438 | Const DLL_THREAD_DETACH = 3 |
---|
439 | Const DLL_PROCESS_DETACH = 0 |
---|
440 | |
---|
441 | 'Event |
---|
442 | Const EVENT_MODIFY_STATE = &H0002 |
---|
443 | Const EVENT_ALL_ACCESS = (STANDARD_RIGHTS_REQUIRED Or SYNCHRONIZE Or &H3) |
---|
444 | |
---|
445 | 'Mutex |
---|
446 | Const MUTANT_QUERY_STATE = &H0001 |
---|
447 | Const MUTANT_ALL_ACCESS = (STANDARD_RIGHTS_REQUIRED Or SYNCHRONIZE Or MUTANT_QUERY_STATE) |
---|
448 | Const MUTEX_ALL_ACCESS = MUTANT_ALL_ACCESS |
---|
449 | |
---|
450 | 'Semaphore |
---|
451 | Const SEMAPHORE_MODIFY_STATE = &H0002 |
---|
452 | Const SEMAPHORE_ALL_ACCESS = (STANDARD_RIGHTS_REQUIRED Or SYNCHRONIZE Or &H3) |
---|
453 | |
---|
454 | 'Timer |
---|
455 | Const TIMER_QUERY_STATE = &H0001 |
---|
456 | Const TIMER_MODIFY_STATE = &H0002 |
---|
457 | Const TIMER_ALL_ACCESS = (STANDARD_RIGHTS_REQUIRED Or SYNCHRONIZE Or TIMER_QUERY_STATE Or TIMER_MODIFY_STATE) |
---|
458 | |
---|
459 | '---------------------- |
---|
460 | ' Kernel Operation API |
---|
461 | Declare Function InterlockedIncrement Lib "kernel32" (ByRef lpAddend As Long) As Long |
---|
462 | Declare Function InterlockedDecrement Lib "kernel32" (ByRef lpAddend As Long) As Long |
---|
463 | Declare Function InterlockedExchange Lib "kernel32" (ByRef Target As Long, Value As Long) As Long |
---|
464 | Declare Function InterlockedCompareExchange Lib "kernel32" (ByRef Destination As Long, Exchange As Long, Comperand As Long) As Long |
---|
465 | Declare Function InterlockedExchangeAdd Lib "kernel32" (ByRef Addend As Long, Value As Long) As Long |
---|
466 | #ifdef _WIN64 |
---|
467 | Declare Function InterlockedCompareExchangePointer Lib "kernel32" (ByRef Destination As VoidPtr, Exchange As VoidPtr, Comperand As VoidPtr) As VoidPtr |
---|
468 | Declare Function InterlockedExchangePointer Lib "kernel32" (ByRef Target As VoidPtr, Value As VoidPtr) As VoidPtr |
---|
469 | #else |
---|
470 | Declare Function InterlockedCompareExchangePointer Lib "kernel32" Alias "InterlockedCompareExchange" (ByRef Destination As VoidPtr, Exchange As VoidPtr, Comperand As VoidPtr) As VoidPtr |
---|
471 | Declare Function InterlockedExchangePointer Lib "kernel32" Alias "InterlockedExchange" (ByRef Target As VoidPtr, Value As VoidPtr) As VoidPtr |
---|
472 | #endif |
---|
473 | |
---|
474 | |
---|
475 | Declare Function Beep Lib "kernel32" (dwFreq As DWord, dwDuration As DWord) As BOOL |
---|
476 | Declare Function CloseHandle Lib "kernel32" (hObject As HANDLE) As BOOL |
---|
477 | |
---|
478 | Declare Function CompareFileTime Lib "kernel32" (ByRef FileTime1 As FILETIME, ByRef FileTime2 As FILETIME) As Long |
---|
479 | |
---|
480 | Const NORM_IGNORECASE = &H00000001 |
---|
481 | Const NORM_IGNORENONSPACE = &H00000002 |
---|
482 | Const NORM_IGNORESYMBOLS = &H00000004 |
---|
483 | Const SORT_STRINGSORT = &H00001000 |
---|
484 | Const NORM_IGNOREKANATYPE = &H00010000 |
---|
485 | Const NORM_IGNOREWIDTH = &H00020000 |
---|
486 | Const CSTR_LESS_THAN = 1 |
---|
487 | Const CSTR_EQUAL = 2 |
---|
488 | Const CSTR_GREATER_THAN = 3 |
---|
489 | Declare Function CompareString Lib "kernel32" Alias _FuncName_CompareString (Locale As LCID, dwCmpFlags As DWord, pString1 As PCTSTR, cchCount1 As Long, pString2 As PCTSTR, cchCount2 As Long) As Long |
---|
490 | |
---|
491 | Declare Function CopyFile Lib "kernel32" Alias _FuncName_CopyFile (pExistingFileName As PCTSTR, pNewFileName As PCTSTR, bFailIfExists As BOOL) As BOOL |
---|
492 | Declare Function CreateDirectory Lib "kernel32" Alias _FuncName_CreateDirectory (pPathName As PCTSTR, pSecurityAttributes As *SECURITY_ATTRIBUTES) As BOOL |
---|
493 | Declare Function CreateEvent Lib "kernel32" Alias _FuncName_CreateEvent (pEventAttributes As *SECURITY_ATTRIBUTES, bManualReset As BOOL, bInitialState As BOOL, pName As PCTSTR) As HANDLE |
---|
494 | Declare Function CreateMutex Lib "kernel32" Alias _FuncName_CreateMutex (lpMutexAttributes As *SECURITY_ATTRIBUTES, bInitialOwner As BOOL, lpName As PCTSTR) As HANDLE |
---|
495 | Declare Function CreatePipe Lib "Kernel32" ( |
---|
496 | ByRef hReadPipe As HANDLE, |
---|
497 | ByRef hWritePipe As HANDLE, |
---|
498 | ByVal pPipeAttributes As *SECURITY_ATTRIBUTES, |
---|
499 | ByVal nSize As DWORD) As Long |
---|
500 | Declare Function CreateSemaphore Lib "kernel32" Alias _FuncName_CreateSemaphore (pSemaphoreAttributes As *SECURITY_ATTRIBUTES, lInitialCount As Long, lMaximumCount As Long, pName As PCTSTR) As HANDLE |
---|
501 | |
---|
502 | TypeDef PTIMERAPCROUTINE = *Sub(lpArgToCompletionRoutine As VoidPtr, dwTimerLowValue As DWord, dwTimerHighValue As DWord) |
---|
503 | Declare Function CreateWaitableTimer Lib "kernel32" Alias _FuncName_CreateWaitableTimer (pTimerAttributes As *SECURITY_ATTRIBUTES, bManualReset As BOOL, pTimerName As PCTSTR) As HANDLE |
---|
504 | Declare Function OpenWaitableTimer Lib "kernel32" Alias _FuncName_OpenWaitableTimer (dwDesiredAccess As DWord, bInheritHandle As BOOL, pTimerName As PCTSTR) As HANDLE |
---|
505 | Declare Function SetWaitableTimer Lib "kernel32" (hTimer As HANDLE, pDueTime As *LARGE_INTEGER, lPeriod As Long, pfnCompletionRoutine As PTIMERAPCROUTINE, pArgToCompletionRoutine As VoidPtr, fResume As BOOL) As BOOL |
---|
506 | Declare Function CancelWaitableTimer Lib "kernel32" (hTimer As HANDLE) As BOOL |
---|
507 | |
---|
508 | Const GENERIC_READ = &H80000000 |
---|
509 | Const GENERIC_WRITE = &H40000000 |
---|
510 | Const FILE_SHARE_READ = &H00000001 |
---|
511 | Const FILE_SHARE_WRITE = &H00000002 |
---|
512 | Const FILE_SHARE_DELETE = &H00000004 |
---|
513 | Const CREATE_NEW = 1 |
---|
514 | Const CREATE_ALWAYS = 2 |
---|
515 | Const OPEN_EXISTING = 3 |
---|
516 | Const OPEN_ALWAYS = 4 |
---|
517 | Const TRUNCATE_EXISTING = 5 |
---|
518 | Const FILE_ATTRIBUTE_READONLY = &H00000001 |
---|
519 | Const FILE_ATTRIBUTE_HIDDEN = &H00000002 |
---|
520 | Const FILE_ATTRIBUTE_SYSTEM = &H00000004 |
---|
521 | Const FILE_ATTRIBUTE_DIRECTORY = &H00000010 |
---|
522 | Const FILE_ATTRIBUTE_ARCHIVE = &H00000020 |
---|
523 | Const FILE_ATTRIBUTE_ENCRYPTED = &H00000040 |
---|
524 | Const FILE_ATTRIBUTE_NORMAL = &H00000080 |
---|
525 | Const FILE_ATTRIBUTE_TEMPORARY = &H00000100 |
---|
526 | Const FILE_ATTRIBUTE_SPARSE_FILE = &H00000200 |
---|
527 | Const FILE_ATTRIBUTE_REPARSE_POINT = &H00000400 |
---|
528 | Const FILE_ATTRIBUTE_COMPRESSED = &H00000800 |
---|
529 | Const FILE_ATTRIBUTE_OFFLINE = &H00001000 |
---|
530 | Const FILE_FLAG_WRITE_THROUGH = &H80000000 |
---|
531 | Const FILE_FLAG_OVERLAPPED = &H40000000 |
---|
532 | Const FILE_FLAG_NO_BUFFERING = &H20000000 |
---|
533 | Const FILE_FLAG_RANDOM_ACCESS = &H10000000 |
---|
534 | Const FILE_FLAG_SEQUENTIAL_SCAN = &H08000000 |
---|
535 | Const FILE_FLAG_DELETE_ON_CLOSE = &H04000000 |
---|
536 | Const FILE_FLAG_BACKUP_SEMANTICS = &H02000000 |
---|
537 | Const FILE_FLAG_POSIX_SEMANTICS = &H01000000 |
---|
538 | Const FILE_FLAG_OPEN_REPARSE_POINT = &H00200000 |
---|
539 | Const FILE_FLAG_OPEN_NO_RECALL = &H00100000 |
---|
540 | Declare Function CreateFile Lib "kernel32" Alias _FuncName_CreateFile (pFileName As PCTSTR, dwDesiredAccess As DWord, dwShareMode As DWord, ByRef lpSecurityAttributes As SECURITY_ATTRIBUTES, dwCreationDisposition As DWord, dwFlagsAndAttributes As DWord, hTemplateFile As HANDLE) As HANDLE |
---|
541 | |
---|
542 | Const SECTION_QUERY = &H0001 |
---|
543 | Const SECTION_MAP_WRITE = &H0002 |
---|
544 | Const SECTION_MAP_READ = &H0004 |
---|
545 | Const SECTION_MAP_EXECUTE = &H0008 |
---|
546 | Const SECTION_EXTEND_SIZE = &H0010 |
---|
547 | Const SECTION_ALL_ACCESS = (STANDARD_RIGHTS_REQUIRED Or SECTION_QUERY Or SECTION_MAP_WRITE Or SECTION_MAP_READ Or SECTION_MAP_EXECUTE Or SECTION_EXTEND_SIZE) |
---|
548 | |
---|
549 | Const FILE_MAP_COPY = SECTION_QUERY |
---|
550 | Const FILE_MAP_WRITE = SECTION_MAP_WRITE |
---|
551 | Const FILE_MAP_READ = SECTION_MAP_READ |
---|
552 | Const FILE_MAP_ALL_ACCESS = SECTION_ALL_ACCESS |
---|
553 | Declare Function CreateFileMapping Lib "kernel32" Alias _FuncName_CreateFileMapping (hFile As HANDLE, pFileMappingAttributes As *SECURITY_ATTRIBUTES, flProtect As DWord, dwMaximumSizeHigh As DWord, dwMaximumSizeLow As DWord, pName As PCSTR) As HANDLE |
---|
554 | Declare Function OpenFileMapping Lib "kernel32" Alias _FuncName_OpenFileMapping (dwDesiredAccess As DWord, bInheritHandle As BOOL, pName As PCSTR) As HANDLE |
---|
555 | Declare Function MapViewOfFile Lib "kernel32" (hFileMappingObject As HANDLE, dwDesiredAccess As DWord, dwFileOffsetHigh As DWord, dwFileOffsetLow As DWord, dwNumberOfBytesToMap As DWord) As VoidPtr |
---|
556 | Declare Function MapViewOfFileEx Lib "kernel32" (hFileMappingObject As HANDLE, dwDesiredAccess As DWord, dwFileOffsetHigh As DWord, dwFileOffsetLow As DWord, dwNumberOfBytesToMap As DWord, lpBaseAddress As VoidPtr) As VoidPtr |
---|
557 | Declare Function FlushViewOfFile Lib "kernel32" (lpBaseAddress As VoidPtr, dwNumberOfBytesToFlush As DWord) As BOOL |
---|
558 | Declare Function UnmapViewOfFile Lib "kernel32" (lpBaseAddress As VoidPtr) As BOOL |
---|
559 | |
---|
560 | Const MAILSLOT_WAIT_FOREVER = &HFFFFFFFF |
---|
561 | Declare Function CreateMailslot Lib "kernel32" Alias _FuncName_CreateMailslot (pName As PCTSTR, nMaxMessageSize As DWord, lReadTimeout As DWord, pSecurityAttributes As *SECURITY_ATTRIBUTES) As HANDLE |
---|
562 | |
---|
563 | Const DEBUG_PROCESS = &H00000001 |
---|
564 | Const DEBUG_ONLY_THIS_PROCESS = &H00000002 |
---|
565 | Const CREATE_SUSPENDED = &H00000004 |
---|
566 | Const DETACHED_PROCESS = &H00000008 |
---|
567 | Const CREATE_NEW_CONSOLE = &H00000010 |
---|
568 | Const NORMAL_PRIORITY_CLASS = &H00000020 |
---|
569 | Const IDLE_PRIORITY_CLASS = &H00000040 |
---|
570 | Const HIGH_PRIORITY_CLASS = &H00000080 |
---|
571 | Const REALTIME_PRIORITY_CLASS = &H00000100 |
---|
572 | Const CREATE_NEW_PROCESS_GROUP = &H00000200 |
---|
573 | Const CREATE_UNICODE_ENVIRONMENT = &H00000400 |
---|
574 | Const CREATE_SEPARATE_WOW_VDM = &H00000800 |
---|
575 | Const CREATE_SHARED_WOW_VDM = &H00001000 |
---|
576 | Const CREATE_FORCEDOS = &H00002000 |
---|
577 | Const CREATE_DEFAULT_ERROR_MODE = &H04000000 |
---|
578 | Const CREATE_NO_WINDOW = &H08000000 |
---|
579 | Const PROFILE_USER = &H10000000 |
---|
580 | Const PROFILE_KERNEL = &H20000000 |
---|
581 | Const PROFILE_SERVER = &H40000000 |
---|
582 | |
---|
583 | Const STARTF_USESHOWWINDOW = &H00000001 |
---|
584 | Const STARTF_USESIZE = &H00000002 |
---|
585 | Const STARTF_USEPOSITION = &H00000004 |
---|
586 | Const STARTF_USECOUNTCHARS = &H00000008 |
---|
587 | Const STARTF_USEFILLATTRIBUTE = &H00000010 |
---|
588 | Const STARTF_RUNFULLSCREEN = &H00000020 |
---|
589 | Const STARTF_FORCEONFEEDBACK = &H00000040 |
---|
590 | Const STARTF_FORCEOFFFEEDBACK = &H00000080 |
---|
591 | Const STARTF_USESTDHANDLES = &H00000100 |
---|
592 | Const STARTF_USEHOTKEY = &H00000200 |
---|
593 | Type STARTUPINFOW |
---|
594 | cb As DWord |
---|
595 | lpReserved As LPWSTR |
---|
596 | lpDesktop As LPWSTR |
---|
597 | lpTitle As LPWSTR |
---|
598 | dwX As DWord |
---|
599 | dwY As DWord |
---|
600 | dwXSize As DWord |
---|
601 | dwYSize As DWord |
---|
602 | dwXCountChars As DWord |
---|
603 | dwYCountChars As DWord |
---|
604 | dwFillAttribute As DWord |
---|
605 | dwFlags As DWord |
---|
606 | wShowWindow As Word |
---|
607 | cbReserved2 As Word |
---|
608 | lpReserved2 As *Byte |
---|
609 | hStdInput As HANDLE |
---|
610 | hStdOutput As HANDLE |
---|
611 | hStdError As HANDLE |
---|
612 | End Type |
---|
613 | Type STARTUPINFOA |
---|
614 | cb As DWord |
---|
615 | lpReserved As LPSTR |
---|
616 | lpDesktop As LPSTR |
---|
617 | lpTitle As LPSTR |
---|
618 | dwX As DWord |
---|
619 | dwY As DWord |
---|
620 | dwXSize As DWord |
---|
621 | dwYSize As DWord |
---|
622 | dwXCountChars As DWord |
---|
623 | dwYCountChars As DWord |
---|
624 | dwFillAttribute As DWord |
---|
625 | dwFlags As DWord |
---|
626 | wShowWindow As Word |
---|
627 | cbReserved2 As Word |
---|
628 | lpReserved2 As *Byte |
---|
629 | hStdInput As HANDLE |
---|
630 | hStdOutput As HANDLE |
---|
631 | hStdError As HANDLE |
---|
632 | End Type |
---|
633 | #ifdef UNICODE |
---|
634 | TypeDef STARTUPINFO = STARTUPINFOW |
---|
635 | #else |
---|
636 | TypeDef STARTUPINFO = STARTUPINFOA |
---|
637 | #endif |
---|
638 | Type PROCESS_INFORMATION |
---|
639 | hProcess As HANDLE |
---|
640 | hThread As HANDLE |
---|
641 | dwProcessId As DWord |
---|
642 | dwThreadId As DWord |
---|
643 | End Type |
---|
644 | Declare Function CreateProcess Lib "kernel32" Alias _FuncName_CreateProcess (pApplicationName As PCTSTR, pCommandLine As PTSTR, ByRef ProcessAttributes As SECURITY_ATTRIBUTES, ByRef ThreadAttributes As SECURITY_ATTRIBUTES, bInheritHandles As BOOL, dwCreationFlags As DWord, lpEnvironment As VoidPtr, pCurrentDirectory As PCTSTR, ByRef lpStartupInfo As STARTUPINFO, ByRef lpProcessInformation As PROCESS_INFORMATION) As BOOL |
---|
645 | |
---|
646 | TypeDef LPTHREAD_START_ROUTINE = *Function(lpThreadParameter As VoidPtr) As DWord |
---|
647 | Declare Function CreateThread Lib "kernel32" (lpThreadAttributes As *SECURITY_ATTRIBUTES, dwStackSize As DWord, lpStartAddress As LPTHREAD_START_ROUTINE, pParameter As VoidPtr, dwCreationFlags As DWord, ByRef ThreadId As DWord) As HANDLE |
---|
648 | |
---|
649 | Declare Sub DebugBreak Lib "kernel32" () |
---|
650 | Declare Sub DeleteCriticalSection Lib "kernel32" (ByRef CriticalSection As CRITICAL_SECTION) |
---|
651 | Declare Function DeleteFile Lib "kernel32" Alias _FuncName_DeleteFile (pFileName As PCTSTR) As BOOL |
---|
652 | Declare Function DeviceIoControl Lib "Kernel32" ( |
---|
653 | hDevice As HANDLE, |
---|
654 | dwIoControlCode As DWord, |
---|
655 | pInBuffer As VoidPtr, |
---|
656 | nInBufferSize As DWord, |
---|
657 | pOutBuffer As VoidPtr, |
---|
658 | nOutBufferSize As DWord, |
---|
659 | pBytesReturned As DWordPtr, |
---|
660 | pOverlapped As *OVERLAPPED |
---|
661 | ) As Long |
---|
662 | Declare Function DisableThreadLibraryCalls Lib "kernel32" (hLibModule As HINSTANCE) As BOOL |
---|
663 | Declare Function DosDateTimeToFileTime Lib "kernel32" (wFatDate As Word, wFatTime As Word, ByRef FileTime As FILETIME) As BOOL |
---|
664 | |
---|
665 | Const DUPLICATE_CLOSE_SOURCE = 1 |
---|
666 | Const DUPLICATE_SAME_ACCESS = 2 |
---|
667 | Declare Function DuplicateHandle Lib "kernel32" (hSourceProcessHandle As HANDLE, hSourceHandle As HANDLE, hTargetProcessHandle As HANDLE, ByRef TargetHandle As HANDLE, dwDesiredAccess As DWord, bInheritHandle As BOOL, dwOptions As DWord) As BOOL |
---|
668 | |
---|
669 | Declare Sub EnterCriticalSection Lib "kernel32" (ByRef lpCriticalSection As CRITICAL_SECTION) |
---|
670 | Declare Sub ExitProcess Lib "kernel32" (dwExitCode As DWord) |
---|
671 | Declare Sub ExitThread Lib "kernel32" (dwExitCode As DWord) |
---|
672 | Declare Sub FatalAppExit Lib "kernel32" Alias _FuncName_FatalAppExit (Action As DWord, pMessageText As PCTSTR) |
---|
673 | Declare Function FileTimeToDosDateTime Lib "kernel32" (ByRef lpFileTime As FILETIME, ByRef lpFatDate As Word, ByRef lpFatTime As Word) As BOOL |
---|
674 | Declare Function FileTimeToLocalFileTime Lib "kernel32" (ByRef lpFileTime As FILETIME, ByRef lpLocalFileTime As FILETIME) As BOOL |
---|
675 | Declare Function FileTimeToSystemTime Lib "kernel32" (ByRef lpFileTime As FILETIME, ByRef lpSystemTime As SYSTEMTIME) As BOOL |
---|
676 | Declare Sub FillMemory Lib "kernel32" Alias "RtlFillMemory" (pDest As VoidPtr, stLength As SIZE_T, c As Byte) |
---|
677 | Declare Function FindClose Lib "kernel32" (hFindFile As HANDLE) As BOOL |
---|
678 | Declare Function FindCloseChangeNotification Lib "kernel32" (hChangeHandle As HANDLE) As BOOL |
---|
679 | Declare Function FindFirstChangeNotification Lib "kernel32" Alias _FuncName_FindFirstChangeNotification ( |
---|
680 | pPathName As PCTSTR, |
---|
681 | bWatchSubtree As BOOL, |
---|
682 | dwNotifyFilter As DWord |
---|
683 | ) As HANDLE |
---|
684 | |
---|
685 | Type WIN32_FIND_DATAW |
---|
686 | dwFileAttributes As DWord |
---|
687 | ftCreationTime As FILETIME |
---|
688 | ftLastAccessTime As FILETIME |
---|
689 | ftLastWriteTime As FILETIME |
---|
690 | nFileSizeHigh As DWord |
---|
691 | nFileSizeLow As DWord |
---|
692 | dwReserved0 As DWord |
---|
693 | dwReserved1 As DWord |
---|
694 | cFileName[ELM(MAX_PATH)] As WCHAR |
---|
695 | cAlternateFileName[13] As WCHAR |
---|
696 | End Type |
---|
697 | Type WIN32_FIND_DATAA |
---|
698 | dwFileAttributes As DWord |
---|
699 | ftCreationTime As FILETIME |
---|
700 | ftLastAccessTime As FILETIME |
---|
701 | ftLastWriteTime As FILETIME |
---|
702 | nFileSizeHigh As DWord |
---|
703 | nFileSizeLow As DWord |
---|
704 | dwReserved0 As DWord |
---|
705 | dwReserved1 As DWord |
---|
706 | cFileName[ELM(MAX_PATH)] As SByte |
---|
707 | cAlternateFileName[13] As SByte |
---|
708 | End Type |
---|
709 | #ifdef UNICODE |
---|
710 | TypeDef WIN32_FIND_DATA = WIN32_FIND_DATAW |
---|
711 | #else |
---|
712 | TypeDef WIN32_FIND_DATA = WIN32_FIND_DATAA |
---|
713 | #endif |
---|
714 | TypeDef LPWIN32_FIND_DATA = *WIN32_FIND_DATA |
---|
715 | Declare Function FindFirstFile Lib "kernel32" Alias _FuncName_FindFirstFile (pFileName As PCTSTR, ByRef FindFildData As WIN32_FIND_DATA) As HANDLE |
---|
716 | Declare Function FindNextChangeNotification Lib "kernel32" (hChangeHandle As HANDLE) As BOOL |
---|
717 | Declare Function FindNextFile Lib "kernel32" Alias _FuncName_FindNextFile (hFindFile As HANDLE, ByRef FindFildData As WIN32_FIND_DATA) As BOOL |
---|
718 | Declare Function FlushFileBuffers Lib "kernel32" (hFile As HANDLE) As BOOL |
---|
719 | Declare Function FlushInstructionCache Lib "kernel32"(hProcess As HANDLE, pBaseAddress As VoidPtr, Size As SIZE_T) As BOOL |
---|
720 | |
---|
721 | Const FORMAT_MESSAGE_ALLOCATE_BUFFER = &H00000100 |
---|
722 | Const FORMAT_MESSAGE_IGNORE_INSERTS = &H00000200 |
---|
723 | Const FORMAT_MESSAGE_FROM_STRING = &H00000400 |
---|
724 | Const FORMAT_MESSAGE_FROM_HMODULE = &H00000800 |
---|
725 | Const FORMAT_MESSAGE_FROM_SYSTEM = &H00001000 |
---|
726 | Const FORMAT_MESSAGE_ARGUMENT_ARRAY = &H00002000 |
---|
727 | Declare Function FormatMessage Lib "kernel32" Alias _FuncName_FormatMessage (dwFlags As DWord, lpSource As VoidPtr, dwMessageId As DWord, dwLanguageId As DWord, pBuffer As PTSTR, nSize As DWord, Arguments As *DWord) As DWord |
---|
728 | Declare Function FreeEnvironmentStrings Lib "kernel32" Alias _FuncName_FreeEnvironmentStrings (pszEnvironmentBlock As PCTSTR) As BOOL |
---|
729 | Declare Function FreeLibrary Lib "kernel32" (hLibModule As HINSTANCE) As BOOL |
---|
730 | Declare Sub FreeLibraryAndExitThread Lib "kernel32" (hModule As HANDLE, dwExitCode As DWord) |
---|
731 | Declare Function GetCommandLineA Lib "kernel32" () As PCSTR |
---|
732 | Declare Function GetCommandLineW Lib "kernel32" () As PCWSTR |
---|
733 | #ifdef UNICODE |
---|
734 | Declare Function GetCommandLine Lib "kernel32" Alias "GetCommandLineW" () As PCWSTR |
---|
735 | #else |
---|
736 | Declare Function GetCommandLine Lib "kernel32" Alias "GetCommandLineA" () As PCSTR |
---|
737 | #endif |
---|
738 | Declare Function GetCompressedFileSize Lib "kernel32" Alias _FuncName_GetCompressedFileSize (pFileName As PCTSTR, ByRef FileSizeHigh As DWord) As DWord |
---|
739 | |
---|
740 | Const MAX_COMPUTERNAME_LENGTH = 15 |
---|
741 | Declare Function GetComputerName Lib "kernel32" Alias _FuncName_GetComputerName (pBuffer As PTSTR, ByRef nSize As Long) As Long |
---|
742 | |
---|
743 | Declare Function GetCurrentDirectory Lib "kernel32" Alias _FuncName_GetCurrentDirectory (nBufferLength As DWord, pBuffer As PTSTR) As DWord |
---|
744 | Declare Function GetCurrentProcess Lib "kernel32" () As HANDLE |
---|
745 | Declare Function GetCurrentProcessId Lib "kernel32" () As DWord |
---|
746 | Declare Function GetCurrentThread Lib "kernel32" () As HANDLE |
---|
747 | Declare Function GetCurrentThreadId Lib "kernel32" () As DWord |
---|
748 | |
---|
749 | Const DATE_SHORTDATE = &H00000001 |
---|
750 | Const DATE_LONGDATE = &H00000002 |
---|
751 | Const DATE_USE_ALT_CALENDAR = &H00000004 |
---|
752 | Declare Function GetDateFormat Lib "kernel32" Alias _FuncName_GetDateFormat (Locale As LCID, dwFlags As DWord, ByRef Date As SYSTEMTIME, pFormat As PCTSTR, pDateStr As PTSTR, cchDate As Long) As Long |
---|
753 | |
---|
754 | Declare Function GetDiskFreeSpace Lib "kernel32" Alias _FuncName_GetDiskFreeSpace (pRootPathName As PCTSTR, lpSectorsPerCluster As *DWord, pBytesPerSector As *DWord, pNumberOfFreeClusters As *DWord, pTotalNumberOfClusters As *DWord) As BOOL |
---|
755 | Declare Function GetDiskFreeSpaceEx Lib "kernel32" Alias _FuncName_GetDiskFreeSpaceEx (pDirectoryName As PCTSTR, ByRef lpFreeBytesAvailableToCaller As ULARGE_INTEGER, ByRef TotalNumberOfBytes As ULARGE_INTEGER, ByRef TotalNumberOfFreeBytes As ULARGE_INTEGER) As BOOL |
---|
756 | |
---|
757 | Const DRIVE_UNKNOWN = 0 |
---|
758 | Const DRIVE_NO_ROOT_DIR = 1 |
---|
759 | Const DRIVE_REMOVABLE = 2 |
---|
760 | Const DRIVE_FIXED = 3 |
---|
761 | Const DRIVE_REMOTE = 4 |
---|
762 | Const DRIVE_CDROM = 5 |
---|
763 | Const DRIVE_RAMDISK = 6 |
---|
764 | Declare Function GetVolumeInformation Lib "kernel32" Alias _FuncName_GetVolumeInformation (pRootPathName As PCTSTR, pVolumeNameBuffer As PTSTR, nVolumeNameSize As DWord, lpVolumeSerialNumber As *Word, lpMaximumComponentLength As *Word, lpFileSystemFlags As *Word, pFileSystemNameBuffer As PTSTR, nFileSystemNameSize As DWord) As BOOL |
---|
765 | Declare Function GetDriveType Lib "kernel32" Alias _FuncName_GetDriveType (lpRootPathName As PCTSTR) As DWord |
---|
766 | |
---|
767 | Declare Function GetEnvironmentVariable Lib "kernel32" Alias _FuncName_GetEnvironmentVariable (lpName As PCTSTR, lpBuffer As PTSTR, nSize As DWord) As DWord |
---|
768 | Declare Function GetEnvironmentStrings Lib "kernel32" Alias _FuncName_GetEnvironmentStrings () As VoidPtr |
---|
769 | Const STILL_ACTIVE = &H00000103 |
---|
770 | Declare Function GetExitCodeProcess Lib "kernel32" (hProcess As HANDLE, ByRef lpExitCode As DWord) As BOOL |
---|
771 | Declare Function GetExitCodeThread Lib "kernel32" (hThread As HANDLE, ByRef lpExitCode As DWord) As BOOL |
---|
772 | |
---|
773 | Declare Function GetFileAttributes Lib "kernel32" Alias _FuncName_GetFileAttributes (lpFileName As PCTSTR) As DWord |
---|
774 | Type BY_HANDLE_FILE_INFORMATION |
---|
775 | dwFileAttributes As DWord |
---|
776 | ftCreationTime As FILETIME |
---|
777 | ftLastAccessTime As FILETIME |
---|
778 | ftLastWriteTime As FILETIME |
---|
779 | dwVolumeSerialNumber As DWord |
---|
780 | nFileSizeHigh As DWord |
---|
781 | nFileSizeLow As DWord |
---|
782 | nNumberOfLinks As DWord |
---|
783 | nFileIndexHigh As DWord |
---|
784 | nFileIndexLow As DWord |
---|
785 | End Type |
---|
786 | Declare Function GetFileInformationByHandle Lib "kernel32" ( |
---|
787 | ByVal hFile As HANDLE, |
---|
788 | ByRef FileInformation As BY_HANDLE_FILE_INFORMATION |
---|
789 | ) As BOOL |
---|
790 | Declare Function GetFileSize Lib "kernel32" (hFile As HANDLE, pFileSizeHigh As *DWord) As DWord |
---|
791 | Declare Function GetFileTime Lib "kernel32" (hFile As HANDLE, ByRef lpCreationTime As FILETIME, ByRef lpLastAccessTime As FILETIME, ByRef lpLastWriteTime As FILETIME) As BOOL |
---|
792 | |
---|
793 | Const FILE_TYPE_UNKNOWN = &H0000 |
---|
794 | Const FILE_TYPE_DISK = &H0001 |
---|
795 | Const FILE_TYPE_CHAR = &H0002 |
---|
796 | Const FILE_TYPE_PIPE = &H0003 |
---|
797 | Const FILE_TYPE_REMOTE = &H8000 |
---|
798 | Declare Function GetFileType Lib "kernel32" (hFile As HANDLE) As DWord |
---|
799 | |
---|
800 | Declare Function GetFullPathName Lib "kernel32" Alias _FuncName_GetFullPathName (lpFileName As PCSTR, nBufferLength As DWord, pBuffer As PSTR, lpFilePart As *DWord) As DWord |
---|
801 | Declare Function GetLastError Lib "kernel32" () As DWord |
---|
802 | Declare Sub GetLocalTime Lib "kernel32" (ByRef lpSystemTime As SYSTEMTIME) |
---|
803 | Declare Function GetLogicalDrives Lib "kernel32" () As DWord |
---|
804 | Declare Function GetLogicalDriveStrings Lib "kernel32" Alias _FuncName_GetLogicalDriveStrings (nBufferLength As DWord, pBuffer As PTSTR) As DWord |
---|
805 | Declare Function GetLongPathName Lib "kernel32" Alias _FuncName_GetLongPathName (lpszShortPath As LPCTSTR, lpszLongPath As LPTSTR, cchBuffer As DWord) As DWord |
---|
806 | Declare Function GetModuleFileName Lib "kernel32" Alias _FuncName_GetModuleFileName (hModule As HINSTANCE, lpFileName As PTSTR, nSize As DWord) As DWord |
---|
807 | Declare Function GetModuleHandle Lib "kernel32" Alias _FuncName_GetModuleHandle (lpModuleName As PTSTR) As HINSTANCE |
---|
808 | Declare Function GetOverlappedResult Lib "kernel32" ( |
---|
809 | hFile As HANDLE, |
---|
810 | pOverlapped As *OVERLAPPED, |
---|
811 | pNumberOfBytesTransferred AS *DWord, |
---|
812 | bWait As BOOL |
---|
813 | ) As BOOL |
---|
814 | Type SYSTEM_POWER_STATUS |
---|
815 | ACLineStatus As Byte |
---|
816 | BatteryFlag As Byte |
---|
817 | BatteryLifePercent As Byte |
---|
818 | Reserved1 As Byte |
---|
819 | BatteryLifeTime As Long |
---|
820 | BatteryFullLifeTime As Long |
---|
821 | End Type |
---|
822 | Declare Function GetSystemPowerStatus Lib "kernel32" (ByRef SystemPowerStatus As SYSTEM_POWER_STATUS) As Long |
---|
823 | Declare Function GetPriorityClass Lib "kernel32" (hProcess As HANDLE) As DWord |
---|
824 | Declare Function GetProcAddress Lib "kernel32" (hModule As HINSTANCE, pProcName As PCSTR) As DWord |
---|
825 | Declare Function GetProcessAffinityMask Lib "kernel32" ( |
---|
826 | hProcess As HANDLE, |
---|
827 | ByRef ProcessAffinityMask As ULONG_PTR, |
---|
828 | ByRef SystemAffinityMask As ULONG_PTR |
---|
829 | ) As BOOL |
---|
830 | Declare Function GetProcessHeap Lib "kernel32" () As HANDLE |
---|
831 | Declare Function GetShortPathName Lib "kernel32" Alias _FuncName_GetShortPathName ( |
---|
832 | pszLongPath As PCTSTR, |
---|
833 | pszShortPath As PTSTR, |
---|
834 | cchBuffer As DWord |
---|
835 | ) As DWord |
---|
836 | |
---|
837 | Declare Sub GetStartupInfo Lib "kernel32" Alias _FuncName_GetStartupInfo (ByRef StartupInfo As STARTUPINFO) |
---|
838 | |
---|
839 | Const STD_INPUT_HANDLE = -10 |
---|
840 | Const STD_OUTPUT_HANDLE = -11 |
---|
841 | Const STD_ERROR_HANDLE = -12 |
---|
842 | Declare Function GetStdHandle Lib "kernel32" (nStdHandle As DWord) As HANDLE |
---|
843 | |
---|
844 | Declare Function GetSystemDirectory Lib "kernel32" Alias _FuncName_GetSystemDirectory (pBuffer As PTSTR, uSize As DWord) As DWord |
---|
845 | |
---|
846 | Type SYSTEM_INFO |
---|
847 | dwOemId As DWord |
---|
848 | dwPageSize As DWord |
---|
849 | lpMinimumApplicationAddress As VoidPtr |
---|
850 | lpMaximumApplicationAddress As VoidPtr |
---|
851 | dwActiveProcessorMask As ULONG_PTR |
---|
852 | dwNumberOfProcessors As DWord |
---|
853 | dwProcessorType As DWord |
---|
854 | dwAllocationGranularity As DWord |
---|
855 | wProcessorLevel As Word |
---|
856 | wProcessorRevision As Word |
---|
857 | End Type |
---|
858 | Declare Sub GetSystemInfo Lib "kernel32" (ByRef SystemInfo As SYSTEM_INFO) |
---|
859 | |
---|
860 | Declare Sub GetSystemTime Lib "kernel32" (ByRef SystemTime As SYSTEMTIME) |
---|
861 | Declare Sub GetSystemTimeAsFileTime Lib "kernel32" (ByRef SystemTimeAsFileTime As FILETIME) |
---|
862 | |
---|
863 | Declare Function GetTempFileName Lib "kernel32" Alias _FuncName_GetTempFileName ( |
---|
864 | pPathName As PCTSTR, |
---|
865 | pPrefixString As PCTSTR, |
---|
866 | uUnique As DWord, |
---|
867 | pTempFileName As PTSTR |
---|
868 | ) As DWord |
---|
869 | Declare Function GetTempPath Lib "kernel32" Alias _FuncName_GetTempPath (nBufferLength As DWord, lpBuffer As PTSTR) As DWord |
---|
870 | Declare Function GetThreadContext Lib "kernel32" (hThread As HANDLE, ByRef Context As CONTEXT) As BOOL |
---|
871 | |
---|
872 | Const THREAD_BASE_PRIORITY_LOWRT = 15 |
---|
873 | Const THREAD_BASE_PRIORITY_MAX = 2 |
---|
874 | Const THREAD_BASE_PRIORITY_MIN = -2 |
---|
875 | Const THREAD_BASE_PRIORITY_IDLE = -15 |
---|
876 | Const THREAD_PRIORITY_LOWEST = THREAD_BASE_PRIORITY_MIN |
---|
877 | Const THREAD_PRIORITY_BELOW_NORMAL = THREAD_PRIORITY_LOWEST+1 |
---|
878 | Const THREAD_PRIORITY_NORMAL = 0 |
---|
879 | Const THREAD_PRIORITY_HIGHEST = THREAD_BASE_PRIORITY_MAX |
---|
880 | Const THREAD_PRIORITY_ABOVE_NORMAL = THREAD_PRIORITY_HIGHEST-1 |
---|
881 | Const THREAD_PRIORITY_ERROR_RETURN = LONG_MAX |
---|
882 | Const THREAD_PRIORITY_TIME_CRITICAL = THREAD_BASE_PRIORITY_LOWRT |
---|
883 | Const THREAD_PRIORITY_IDLE = THREAD_BASE_PRIORITY_IDLE |
---|
884 | Declare Function GetThreadPriority Lib "kernel32" (hThread As HANDLE) As Long |
---|
885 | Declare Function GetThreadPriorityBoost Lib "kernel32" ( |
---|
886 | hThread As HANDLE, |
---|
887 | ByRef pDisablePriorityBoost As BOOL) As BOOL |
---|
888 | Declare Function GetTickCount Lib "kernel32" () As DWord |
---|
889 | |
---|
890 | Const TIME_NOMINUTESORSECONDS = &H00000001 |
---|
891 | Const TIME_NOSECONDS = &H00000002 |
---|
892 | Const TIME_NOTIMEMARKER = &H00000004 |
---|
893 | Const TIME_FORCE24HOURFORMAT = &H00000008 |
---|
894 | Declare Function GetTimeFormat Lib "kernel32" Alias _FuncName_GetTimeFormat (Locale As LCID, dwFlags As DWord, ByRef Time As SYSTEMTIME, lpFormat As PCTSTR, lpTimeStr As PTSTR, cchTime As DWord) As BOOL |
---|
895 | Declare Function GetUserDefaultLCID Lib "kernel32" () As LCID |
---|
896 | Declare Function GetUserName Lib "advapi32" Alias _FuncName_GetUserName (pBuffer As PTSTR, ByRef nSize As DWord) As BOOL |
---|
897 | |
---|
898 | Const VER_PLATFORM_WIN32s = 0 |
---|
899 | Const VER_PLATFORM_WIN32_WINDOWS = 1 |
---|
900 | Const VER_PLATFORM_WIN32_NT = 2 |
---|
901 | Const VER_PLATFORM_WIN32_CE = 3 |
---|
902 | Type OSVERSIONINFOW |
---|
903 | dwOSVersionInfoSize As DWord |
---|
904 | dwMajorVersion As DWord |
---|
905 | dwMinorVersion As DWord |
---|
906 | dwBuildNumber As DWord |
---|
907 | dwPlatformId As DWord |
---|
908 | szCSDVersion[ELM(128)] As WCHAR |
---|
909 | End Type |
---|
910 | Type OSVERSIONINFOA |
---|
911 | dwOSVersionInfoSize As DWord |
---|
912 | dwMajorVersion As DWord |
---|
913 | dwMinorVersion As DWord |
---|
914 | dwBuildNumber As DWord |
---|
915 | dwPlatformId As DWord |
---|
916 | szCSDVersion[ELM(128)] As SByte |
---|
917 | End Type |
---|
918 | #ifdef UNICODE |
---|
919 | TypeDef OSVERSIONINFO = OSVERSIONINFOW |
---|
920 | #else |
---|
921 | TypeDef OSVERSIONINFO = OSVERSIONINFOA |
---|
922 | #endif |
---|
923 | Declare Function GetVersionEx Lib "kernel32" Alias _FuncName_GetVersionEx (ByRef VersionInformation As OSVERSIONINFO) As BOOL |
---|
924 | |
---|
925 | Declare Function GetWindowsDirectory Lib "kernel32" Alias _FuncName_GetWindowsDirectory (pBuffer As PTSTR, uSize As DWord) As DWord |
---|
926 | Declare Function GlobalAlloc Lib "kernel32" (uFlags As DWord, dwBytes As SIZE_T) As HGLOBAL |
---|
927 | Declare Function GlobalFrags Lib "kernel32" (hMem As HGLOBAL) As DWord |
---|
928 | Declare Function GlobalFree Lib "kernel32" (hMem As HGLOBAL) As HGLOBAL |
---|
929 | Declare Function GlobalHandle Lib "kernel32" (pMem As VoidPtr) As HGLOBAL |
---|
930 | Declare Function GlobalLock Lib "kernel32" (hMem As HGLOBAL) As VoidPtr |
---|
931 | |
---|
932 | Type MEMORYSTATUS |
---|
933 | dwLength As DWord |
---|
934 | dwMemoryLoad As DWord |
---|
935 | dwTotalPhys As SIZE_T |
---|
936 | dwAvailPhys As SIZE_T |
---|
937 | dwTotalPageFile As SIZE_T |
---|
938 | dwAvailPageFile As SIZE_T |
---|
939 | dwTotalVirtual As SIZE_T |
---|
940 | dwAvailVirtual As SIZE_T |
---|
941 | End Type |
---|
942 | Declare Sub GlobalMemoryStatus Lib "kernel32" (ByRef lpMemStatus As MEMORYSTATUS) |
---|
943 | |
---|
944 | Declare Function GlobalReAlloc Lib "kernel32" (hMem As HGLOBAL, dwBytes As SIZE_T, uFlags As DWord) As HGLOBAL |
---|
945 | Declare Function GlobalSize Lib "kernel32" (hMem As HGLOBAL) As SIZE_T |
---|
946 | Declare Function GlobalUnlock Lib "kernel32" (hMem As HGLOBAL) As BOOL |
---|
947 | Declare Function HeapAlloc Lib "kernel32" (hHeap As HANDLE, dwFlags As DWord, dwBytes As SIZE_T) As VoidPtr |
---|
948 | Declare Function HeapCreate Lib "kernel32" (flOptions As DWord, dwInitialSize As SIZE_T, dwMaximumSize As SIZE_T) As HANDLE |
---|
949 | Declare Function HeapDestroy Lib "kernel32" (hHeap As HANDLE) As Long |
---|
950 | Declare Function HeapFree Lib "kernel32" (hHeap As HANDLE, dwFlags As DWord, lpMem As VoidPtr) As Long |
---|
951 | Declare Function HeapReAlloc Lib "kernel32" (hHeap As HANDLE, dwFlags As DWord, lpMem As VoidPtr, dwBytes As SIZE_T) As VoidPtr |
---|
952 | Declare Function HeapSize Lib "kernel32" (hHeap As HANDLE, dwFlags As DWord, lpMem As VoidPtr) As SIZE_T |
---|
953 | Declare Sub InitializeCriticalSection Lib "kernel32" (ByRef CriticalSection As CRITICAL_SECTION) |
---|
954 | Declare Function IsBadReadPtr Lib "kernel32" (lp As VoidPtr, ucb As ULONG_PTR) As BOOL |
---|
955 | Declare Function IsBadWritePtr Lib "kernel32" (lp As VoidPtr, ucb As ULONG_PTR) As BOOL |
---|
956 | Declare Function IsDBCSLeadByte Lib "kernel32" (TestChar As Byte) As BOOL |
---|
957 | |
---|
958 | #ifdef _WIN64 |
---|
959 | Declare Function IsWow64Process Lib "kernel32" (hProcess As HANDLE, ByRef bWow64Process As BOOL) As BOOL |
---|
960 | #endif |
---|
961 | |
---|
962 | Const LCMAP_LOWERCASE = &H00000100 ' lower case letters |
---|
963 | Const LCMAP_UPPERCASE = &H00000200 ' upper case letters |
---|
964 | Const LCMAP_SORTKEY = &H00000400 ' WC sort key (normalize) |
---|
965 | Const LCMAP_BYTEREV = &H00000800 ' byte reversal |
---|
966 | Const LCMAP_HIRAGANA = &H00100000 ' map katakana to hiragana |
---|
967 | Const LCMAP_KATAKANA = &H00200000 ' map hiragana to katakana |
---|
968 | Const LCMAP_HALFWIDTH = &H00400000 ' map double byte to single byte |
---|
969 | Const LCMAP_FULLWIDTH = &H00800000 ' map single byte to double byte |
---|
970 | Const LCMAP_LINGUISTIC_CASING = &H01000000 ' use linguistic rules for casing |
---|
971 | Const LCMAP_SIMPLIFIED_CHINESE = &H02000000 ' map traditional chinese to simplified chinese |
---|
972 | Const LCMAP_TRADITIONAL_CHINESE = &H04000000 ' map simplified chinese to traditional chinese |
---|
973 | Declare Function LCMapString Lib "kernel32" Alias _FuncName_LCMapString (Locale As LCID, dwMapFlags As DWord, lpSrcStr As LPCTSTR, cchSrc As Long, lpDestStr As LPTSTR, cchDest As Long) As Long |
---|
974 | |
---|
975 | Declare Sub LeaveCriticalSection Lib "kernel32" (ByRef lpCriticalSection As CRITICAL_SECTION) |
---|
976 | Declare Function LocalAlloc Lib "kernel32" (uFlags As DWord, uBytes As SIZE_T) As HLOCAL |
---|
977 | Declare Function LocalFileTimeToFileTime Lib "kernel32" (ByRef lpLocalFileTime As FILETIME, ByRef lpFileTime As FILETIME) As BOOL |
---|
978 | Declare Function LocalFree Lib "kernel32" (hMem As HLOCAL) As HLOCAL |
---|
979 | Declare Function LocalHandle Lib "kernel32" (pMem As VoidPtr) As HLOCAL |
---|
980 | Declare Function LocalLock Lib "kernel32" (hMem As HLOCAL) As VoidPtr |
---|
981 | Declare Function LocalReAlloc Lib "kernel32" (hMem As HLOCAL, dwBytes As SIZE_T, uFlags As DWord) As HLOCAL |
---|
982 | Declare Function LocalSize Lib "kernel32" (hMem As HLOCAL) As SIZE_T |
---|
983 | Declare Function LocalUnlock Lib "kernel32" (hMem As HLOCAL) As BOOL |
---|
984 | Declare Function LockFile Lib "kernel32" (hFile As DWord, dwFileOffsetLow As DWord, dwFileOffsetHigh As DWord, nNumberOfBytesToLockLow As DWord, nNumberOfBytesToLockHigh As DWord) As BOOL |
---|
985 | Declare Function LoadLibrary Lib "kernel32" Alias _FuncName_LoadLibrary (pLibFileName As PCTSTR) As HINSTANCE |
---|
986 | |
---|
987 | Const DONT_RESOLVE_DLL_REFERENCES = &h00000001 |
---|
988 | Const LOAD_LIBRARY_AS_DATAFILE = &h00000002 |
---|
989 | Const LOAD_WITH_ALTERED_SEARCH_PATH = &h00000008 |
---|
990 | Const LOAD_IGNORE_CODE_AUTHZ_LEVEL = &h00000010 |
---|
991 | Declare Function LoadLibraryEx Lib "kernel32" Alias _FuncName_LoadLibraryEx (pLibFileName As PCTSTR, hFile As HANDLE, dwFlags As DWord) As HINSTANCE |
---|
992 | |
---|
993 | Declare Function lstrcat Lib "kernel32" Alias _FuncName_lstrcat (lpString1 As LPTSTR, lpString2 As LPCTSTR) As LPTSTR |
---|
994 | Declare Function lstrcmp Lib "kernel32" Alias _FuncName_lstrcmp (lpString1 As LPCTSTR, lpString2 As LPCTSTR) As Long |
---|
995 | Declare Function lstrcmpi Lib "kernel32" Alias _FuncName_lstrcmpi (lpString1 As LPCTSTR, lpString2 As LPCTSTR) As Long |
---|
996 | Declare Function lstrcpy Lib "kernel32" Alias _FuncName_lstrcpy (lpString1 As LPTSTR, lpString2 As LPCTSTR) As LPTSTR |
---|
997 | Declare Function lstrcpyn Lib "kernel32" Alias _FuncName_lstrcpyn (lpString1 As LPTSTR,ByVal lpString2 As LPCTSTR,ByVal iMaxLength As Long) As LPTSTR |
---|
998 | Declare Function lstrlenA Lib "kernel32" (lpString As LPCSTR) As Long |
---|
999 | Declare Function lstrlenW Lib "kernel32" (lpString As LPCWSTR) As Long |
---|
1000 | #ifdef UNICODE |
---|
1001 | Declare Function lstrlen Lib "kernel32" Alias "lstrlenW" (lpString As LPCWSTR) As Long |
---|
1002 | #else |
---|
1003 | Declare Function lstrlen Lib "kernel32" Alias "lstrlenA" (lpString As LPCSTR) As Long |
---|
1004 | #endif |
---|
1005 | Declare Sub memcpy Lib "kernel32" Alias "RtlMoveMemory" (pDest As VoidPtr, pSrc As VoidPtr, length As SIZE_T) |
---|
1006 | Declare Function MoveFile Lib "kernel32" Alias _FuncName_MoveFile (lpExistingFileName As LPCTSTR, lpNewFileName As LPCTSTR) As BOOL |
---|
1007 | Declare Sub MoveMemory Lib "kernel32" Alias "RtlMoveMemory" (pDest As PVOID, pSrc As VoidPtr, length As SIZE_T) |
---|
1008 | |
---|
1009 | Declare Function MulDiv Lib "kernel32" ( |
---|
1010 | nNumber As Long, |
---|
1011 | nNumerator As Long, |
---|
1012 | nDenominator As Long |
---|
1013 | ) As Long |
---|
1014 | |
---|
1015 | Const CP_ACP = 0 'default to ANSI code page |
---|
1016 | Const CP_OEMCP = 1 'default to OEM code page |
---|
1017 | Const CP_MACCP = 2 'default to MAC code page |
---|
1018 | Const CP_THREAD_ACP = 3 'current thread's ANSI code page |
---|
1019 | Const CP_SYMBOL = 42 'SYMBOL translations |
---|
1020 | Const CP_UTF7 = 65000 'UTF-7 translation |
---|
1021 | Const CP_UTF8 = 65001 'UTF-8 translation |
---|
1022 | |
---|
1023 | Declare Function MultiByteToWideChar Lib "kernel32" (CodePage As DWord, dwFlags As DWord, pMultiByteStr As PCSTR, cchMultiByte As Long, pWideCharStr As PWSTR, cchWideChar As Long) As Long |
---|
1024 | |
---|
1025 | Declare Function OpenEvent Lib "kernel32" Alias _FuncName_OpenEvent (dwDesiredAccess As DWord, bInheritHandle As BOOL, lpName As LPCTSTR) As HANDLE |
---|
1026 | Declare Function OpenMutex Lib "kernel32" Alias _FuncName_OpenMutex (dwDesiredAccess As DWord, bInheritHandle As BOOL, lpName As LPCTSTR) As HANDLE |
---|
1027 | Declare Function OpenSemaphore Lib "kernel32" Alias _FuncName_OpenSemaphore (dwDesiredAccess As DWord, bInheritHandle As BOOL, lpName As LPCTSTR) As HANDLE |
---|
1028 | |
---|
1029 | Const PROCESS_TERMINATE = &H0001 |
---|
1030 | Const PROCESS_CREATE_THREAD = &H0002 |
---|
1031 | Const PROCESS_SET_SESSIONID = &H0004 |
---|
1032 | Const PROCESS_VM_OPERATION = &H0008 |
---|
1033 | Const PROCESS_VM_READ = &H0010 |
---|
1034 | Const PROCESS_VM_WRITE = &H0020 |
---|
1035 | Const PROCESS_DUP_HANDLE = &H0040 |
---|
1036 | Const PROCESS_CREATE_PROCESS = &H0080 |
---|
1037 | Const PROCESS_SET_QUOTA = &H0100 |
---|
1038 | Const PROCESS_SET_INFORMATION = &H0200 |
---|
1039 | Const PROCESS_QUERY_INFORMATION = &H0400 |
---|
1040 | Const PROCESS_ALL_ACCESS = STANDARD_RIGHTS_REQUIRED or SYNCHRONIZE or &HFFF |
---|
1041 | Declare Function OpenProcess Lib "kernel32" (dwDesiredAccess As DWord, bInheritHandle As Long, dwProcessId As DWord) As HANDLE |
---|
1042 | |
---|
1043 | Declare Sub OutputDebugStringA Lib "kernel32" (pOutputString As PCSTR) |
---|
1044 | Declare Sub OutputDebugStringW Lib "kernel32" (pOutputString As PCWSTR) |
---|
1045 | #ifdef UNICODE |
---|
1046 | Declare Sub OutputDebugString Lib "kernel32" Alias "OutputDebugStringW" (pOutputString As PCWSTR) |
---|
1047 | #else |
---|
1048 | Declare Sub OutputDebugString Lib "kernel32" Alias "OutputDebugStringA" (pOutputString As PCSTR) |
---|
1049 | #endif |
---|
1050 | Declare Function PulseEvent Lib "kernel32" (hEvent As HANDLE) As BOOL |
---|
1051 | Declare Sub RaiseException Lib "kernel32" ( |
---|
1052 | dwExceptionCode As DWord, |
---|
1053 | dwExceptionFlags As DWord, |
---|
1054 | NumberOfArguments As DWord, |
---|
1055 | pArguments As *ULONG_PTR) |
---|
1056 | Declare Function ReadFile Lib "kernel32" (hFile As HANDLE, lpBuffer As VoidPtr, nNumberOfBytesToRead As DWord, lpNumberOfBytesRead As DWordPtr, ByRef lpOverlapped As OVERLAPPED) As BOOL |
---|
1057 | Declare Function ReadProcessMemory Lib "Kernel32" (hProcess As HANDLE, lpBaseAddress As VoidPtr, lpBuffer As VoidPtr, nSize As SIZE_T, lpNumberOfBytesRead As *SIZE_T) As BOOL |
---|
1058 | Declare Function ReleaseMutex Lib "kernel32" (hMutex As HANDLE) As BOOL |
---|
1059 | Declare Function ReleaseSemaphore Lib "kernel32" (hSemaphore As HANDLE, lReleaseCount As Long, ByRef lpPreviousCount As Long) As BOOL |
---|
1060 | Declare Function RemoveDirectory Lib "kernel32" Alias _FuncName_RemoveDirectory (lpPathName As LPCTSTR) As BOOL |
---|
1061 | Declare Function ResetEvent Lib "kernel32" (hEvent As HANDLE) As BOOL |
---|
1062 | Declare Function ResumeThread Lib "kernel32" (hThread As HANDLE) As DWord |
---|
1063 | Declare Function SetComputerName Lib "kernel32" Alias _FuncName_SetComputerName (lpComputerName As LPCTSTR) As BOOL |
---|
1064 | Declare Function SetCurrentDirectory Lib "kernel32" Alias _FuncName_SetCurrentDirectory (lpPathName As LPCTSTR) As BOOL |
---|
1065 | Declare Function SearchPath Lib "kernel32" Alias _FuncName_SearchPath (pPath As PCSTR, pFileName As PCTSTR, pExtension As PCTSTR, BufferLength As DWord, pBuffer As PTSTR, ByRef pFilePart As PTSTR) As DWord |
---|
1066 | Declare Function SetEndOfFile Lib "kernel32" (hFile As HANDLE) As BOOL |
---|
1067 | Declare Function SetEnvironmentVariable Lib "kernel32" Alias _FuncName_SetEnvironmentVariable (lpName As LPCTSTR, lpValue As LPTSTR) As BOOL |
---|
1068 | |
---|
1069 | Const SEM_FAILCRITICALERRORS = &h0001 |
---|
1070 | Const SEM_NOGPFAULTERRORBOX = &h0002 |
---|
1071 | Const SEM_NOALIGNMENTFAULTEXCEPT = &h0004 |
---|
1072 | Const SEM_NOOPENFILEERRORBOX = &h8000 |
---|
1073 | Declare Function SetErrorMode Lib "kernel32" (uMode As DWord) As DWord |
---|
1074 | Declare Function SetEvent Lib "kernel32" (hEvent As HANDLE) As BOOL |
---|
1075 | Declare Function SetFileAttributes Lib "kernel32" Alias _FuncName_SetFileAttributes (lpFileName As LPCTSTR, dwFileAttributes As DWord) As BOOL |
---|
1076 | |
---|
1077 | Const FILE_BEGIN = 0 |
---|
1078 | Const FILE_CURRENT = 1 |
---|
1079 | Const FILE_END = 2 |
---|
1080 | Declare Function SetFilePointer Lib "kernel32" (hFile As HANDLE, lDistanceToMove As Long, lpDistanceToMoveHigh As DWordPtr, dwMoveMethod As DWord) As DWord |
---|
1081 | |
---|
1082 | Declare Function SetFileTime Lib "kernel32" (hFile As HANDLE, ByRef lpCreationTime As FILETIME, ByRef lpLastAccessTime As FILETIME, ByRef lpLastWriteTime As FILETIME) As BOOL |
---|
1083 | Declare Function SetLastError Lib "kernel32" (dwErrCode As DWord) |
---|
1084 | Declare Function SetLastErrorEx Lib "kernel32" (dwErrCode As DWord, dwType As DWord) |
---|
1085 | Declare Function SetLocalTime Lib "kernel32" (ByRef lpSystemTime As SYSTEMTIME) As BOOL |
---|
1086 | Declare Function SetPriorityClass Lib "kernel32" (hProcess As HANDLE, dwPriorityClass As DWord) As BOOL |
---|
1087 | Declare Function SetThreadContext Lib "kernel32" (hThread As HANDLE, ByRef Context As CONTEXT) As BOOL |
---|
1088 | Declare Function SetThreadPriority Lib "kernel32" (hThread As HANDLE, nPriority As Long) As BOOL |
---|
1089 | Declare Function SetThreadPriorityBoost Lib "kernel32" ( |
---|
1090 | hThread As HANDLE, |
---|
1091 | DisablePriorityBoost As BOOL |
---|
1092 | ) As BOOL |
---|
1093 | |
---|
1094 | Const EXCEPTION_MAXIMUM_PARAMETERS = 15 |
---|
1095 | |
---|
1096 | Type EXCEPTION_RECORD |
---|
1097 | ExceptionCode As DWord |
---|
1098 | ExceptionFlags As DWord |
---|
1099 | ExceptionRecord As *EXCEPTION_RECORD |
---|
1100 | ExceptionAddress As VoidPtr |
---|
1101 | NumberParameters As DWord |
---|
1102 | ExceptionInformation[ELM(EXCEPTION_MAXIMUM_PARAMETERS)] As ULONG_PTR |
---|
1103 | End Type |
---|
1104 | |
---|
1105 | Type EXCEPTION_POINTERS |
---|
1106 | ExceptionRecord As *EXCEPTION_RECORD |
---|
1107 | ContextRecord As *CONTEXT |
---|
1108 | End Type |
---|
1109 | |
---|
1110 | TypeDef PTOP_LEVEL_EXCEPTION_FILTER = *Function(ByRef ExceptionInfo As EXCEPTION_POINTERS) As Long |
---|
1111 | |
---|
1112 | Declare Function SetUnhandledExceptionFilter Lib "kernel32" (pTopLevelExceptionFilter As PTOP_LEVEL_EXCEPTION_FILTER) As PTOP_LEVEL_EXCEPTION_FILTER |
---|
1113 | |
---|
1114 | Const INFINITE = &HFFFFFFFF |
---|
1115 | Declare Sub Sleep Lib "kernel32" (dwMilliseconds As DWord) |
---|
1116 | Declare Function SleepEx Lib "kernel32" (dwMilliseconds As DWord, bAlertable As BOOL) As DWord |
---|
1117 | |
---|
1118 | Declare Function SuspendThread Lib "kernel32" (hThread As HANDLE) As DWord |
---|
1119 | Declare Function SystemTimeToFileTime Lib "kernel32" (ByRef lpSystemTime As SYSTEMTIME, ByRef lpFileTime As FILETIME) As BOOL |
---|
1120 | Declare Function TerminateProcess Lib "kernel32" (hProcess As HANDLE, dwExitCode As DWord) As BOOL |
---|
1121 | Declare Function TerminateThread Lib "kernel32" (hThread As HANDLE, dwExitCode As DWord) As BOOL |
---|
1122 | Declare Function TlsAlloc Lib "kernel32" () As DWord |
---|
1123 | Declare Function TlsFree Lib "kernel32" (dwTlsIndex As DWord) As BOOL |
---|
1124 | Declare Function TlsGetValue Lib "kernel32" (dwTlsIndex As DWord) As VoidPtr |
---|
1125 | Declare Function TlsSetValue Lib "kernel32" (dwTlsIndex As DWord, pTlsValue As VoidPtr) As BOOL |
---|
1126 | Declare Function UnlockFile Lib "kernel32" (hFile As HANDLE, dwFileOffsetLow As DWord, dwFileOffsetHigh As DWord, nNumberOfBytesToUnlockLow As DWord, nNumberOfBytesToUnlockHigh As DWord) As BOOL |
---|
1127 | Declare Function UnhandledExceptionFilter Lib "kernel32" (ByRef ExceptionInfo As EXCEPTION_POINTERS) As Long |
---|
1128 | |
---|
1129 | Const PAGE_NOACCESS = &H01 |
---|
1130 | Const PAGE_READONLY = &H02 |
---|
1131 | Const PAGE_READWRITE = &H04 |
---|
1132 | Const PAGE_WRITECOPY = &H08 |
---|
1133 | Const PAGE_EXECUTE = &H10 |
---|
1134 | Const PAGE_EXECUTE_READ = &H20 |
---|
1135 | Const PAGE_EXECUTE_READWRITE = &H40 |
---|
1136 | Const PAGE_EXECUTE_WRITECOPY = &H80 |
---|
1137 | Const PAGE_GUARD = &H100 |
---|
1138 | Const PAGE_NOCACHE = &H200 |
---|
1139 | Const PAGE_WRITECOMBINE = &H400 |
---|
1140 | Const MEM_COMMIT = &H1000 |
---|
1141 | Const MEM_RESERVE = &H2000 |
---|
1142 | Const MEM_DECOMMIT = &H4000 |
---|
1143 | Const MEM_RELEASE = &H8000 |
---|
1144 | Const MEM_FREE = &H10000 |
---|
1145 | Const MEM_PRIVATE = &H20000 |
---|
1146 | Const MEM_MAPPED = &H40000 |
---|
1147 | Const MEM_RESET = &H80000 |
---|
1148 | Const MEM_TOP_DOWN = &H100000 |
---|
1149 | Const MEM_4MB_PAGES = &H80000000 |
---|
1150 | Declare Function VirtualAlloc Lib "kernel32" (lpAddress As VoidPtr, dwSize As SIZE_T, flAllocationType As DWord, flProtect As DWord) As VoidPtr |
---|
1151 | Declare Function VirtualFree Lib "kernel32" (lpAddress As VoidPtr, dwSize As SIZE_T, dwFreeType As DWord) As BOOL |
---|
1152 | Declare Function VirtualLock Lib "kernel32" (lpAddress As VoidPtr, dwSize As SIZE_T) As BOOL |
---|
1153 | Declare Function VirtualProtect Lib "kernel32" ( |
---|
1154 | pAddress As VoidPtr, |
---|
1155 | Size As SIZE_T, |
---|
1156 | flNewProtect As DWord, |
---|
1157 | ByRef flOldProtect As DWord |
---|
1158 | ) As BOOL |
---|
1159 | Declare Function VirtualProtectEx Lib "kernel32" ( |
---|
1160 | hProcess As HANDLE, |
---|
1161 | pAddress As VoidPtr, |
---|
1162 | Size As SIZE_T, |
---|
1163 | flNewProtect As DWord, |
---|
1164 | ByRef flOldProtect As DWord |
---|
1165 | ) As BOOL |
---|
1166 | Type MEMORY_BASIC_INFORMATION |
---|
1167 | BaseAddress As VoidPtr |
---|
1168 | AllocationBase As VoidPtr |
---|
1169 | AllocationProtect As DWord |
---|
1170 | RegionSize As SIZE_T |
---|
1171 | State As DWord |
---|
1172 | Protect As DWord |
---|
1173 | MBIType As DWord |
---|
1174 | End Type |
---|
1175 | Declare Function VirtualQuery Lib "kernel32" ( |
---|
1176 | pAddress As VoidPtr, |
---|
1177 | ByRef mbi As MEMORY_BASIC_INFORMATION, |
---|
1178 | Length As SIZE_T |
---|
1179 | ) As SIZE_T |
---|
1180 | Declare Function VirtualQueryEx Lib "kernel32" ( |
---|
1181 | hProcess As HANDLE, |
---|
1182 | pAddress As VoidPtr, |
---|
1183 | ByRef mbi As MEMORY_BASIC_INFORMATION, |
---|
1184 | Length As SIZE_T |
---|
1185 | ) As SIZE_T |
---|
1186 | Declare Function VirtualUnlock Lib "kernel32" (lpAddress As VoidPtr, dwSize As SIZE_T) As BOOL |
---|
1187 | Declare Function WaitForMultipleObjects Lib "kernel32" (nCount As DWord, pHandles As *HANDLE, fWaitAll As BOOL, dwMilliseconds As DWord) As DWord |
---|
1188 | Declare Function WaitForMultipleObjectsEx Lib "kernel32" (nCount As DWord, pHandles As *HANDLE, fWaitAll As BOOL, dwMilliseconds As DWord, bAlertable As BOOL) As DWord |
---|
1189 | Declare Function WaitForSingleObject Lib "kernel32" (hHandle As HANDLE, dwMilliseconds As DWord) As DWord |
---|
1190 | Declare Function WaitForSingleObjectEx Lib "kernel32" (hHandle As HANDLE, dwMilliseconds As DWord, bAlertable As BOOL) As DWord |
---|
1191 | |
---|
1192 | Const WC_COMPOSITECHECK = &H00000200 |
---|
1193 | Const WC_DISCARDNS = &H00000010 |
---|
1194 | Const WC_SEPCHARS = &H00000020 |
---|
1195 | Const WC_DEFAULTCHAR = &H00000040 |
---|
1196 | Const WC_NO_BEST_FIT_CHARS = &H00000400 |
---|
1197 | Declare Function WideCharToMultiByte Lib "Kernel32" ( |
---|
1198 | CodePage As DWord, |
---|
1199 | dwFlags As DWord, |
---|
1200 | pWideCharStr As PCWSTR, |
---|
1201 | cchWideChar As Long, |
---|
1202 | pMultiByteStr As PSTR, |
---|
1203 | cbMultiByte As Long, |
---|
1204 | pDefaultChar As PCSTR, |
---|
1205 | pUsedDefaultChar As *BOOL |
---|
1206 | ) As Long |
---|
1207 | |
---|
1208 | Declare Function WriteFile Lib "kernel32" (hFile As HANDLE, lpBuffer As VoidPtr, nNumberOfBytesToWrite As DWord, lpNumberOfBytesWritten As DWordPtr, ByRef lpOverlapped As OVERLAPPED) As BOOL |
---|
1209 | Declare Sub ZeroMemory Lib "kernel32" Alias "RtlZeroMemory" (Destination As VoidPtr, dwLength As DWord) |
---|
1210 | |
---|
1211 | Const MAKELCID(lgid, srtid) = ((((srtid As Word) As DWord)<<16) or ((lgid As Word) As DWord)) |
---|
1212 | Const MAKELANGID(p, s) = (((s As Word) << 10) or (p As Word)) |
---|
1213 | Const PRIMARYLANGID(lgid) = ((lgid As Word) and &H3ff) |
---|
1214 | Const SUBLANGID(lgid) = ((lgid As Word) >> 10) |
---|
1215 | |
---|
1216 | |
---|
1217 | ' |
---|
1218 | ' Primary language IDs. |
---|
1219 | ' |
---|
1220 | |
---|
1221 | Const LANG_NEUTRAL = &H00 |
---|
1222 | Const LANG_INVARIANT = &H7f |
---|
1223 | |
---|
1224 | Const LANG_AFRIKAANS = &H36 |
---|
1225 | Const LANG_ALBANIAN = &H1c |
---|
1226 | Const LANG_ARABIC = &H01 |
---|
1227 | Const LANG_ARMENIAN = &H2b |
---|
1228 | Const LANG_ASSAMESE = &H4d |
---|
1229 | Const LANG_AZERI = &H2c |
---|
1230 | Const LANG_BASQUE = &H2d |
---|
1231 | Const LANG_BELARUSIAN = &H23 |
---|
1232 | Const LANG_BENGALI = &H45 |
---|
1233 | Const LANG_BULGARIAN = &H02 |
---|
1234 | Const LANG_CATALAN = &H03 |
---|
1235 | Const LANG_CHINESE = &H04 |
---|
1236 | Const LANG_CROATIAN = &H1a |
---|
1237 | Const LANG_CZECH = &H05 |
---|
1238 | Const LANG_DANISH = &H06 |
---|
1239 | Const LANG_DIVEHI = &H65 |
---|
1240 | Const LANG_DUTCH = &H13 |
---|
1241 | Const LANG_ENGLISH = &H09 |
---|
1242 | Const LANG_ESTONIAN = &H25 |
---|
1243 | Const LANG_FAEROESE = &H38 |
---|
1244 | Const LANG_FARSI = &H29 |
---|
1245 | Const LANG_FINNISH = &H0b |
---|
1246 | Const LANG_FRENCH = &H0c |
---|
1247 | Const LANG_GALICIAN = &H56 |
---|
1248 | Const LANG_GEORGIAN = &H37 |
---|
1249 | Const LANG_GERMAN = &H07 |
---|
1250 | Const LANG_GREEK = &H08 |
---|
1251 | Const LANG_GUJARATI = &H47 |
---|
1252 | Const LANG_HEBREW = &H0d |
---|
1253 | Const LANG_HINDI = &H39 |
---|
1254 | Const LANG_HUNGARIAN = &H0e |
---|
1255 | Const LANG_ICELANDIC = &H0f |
---|
1256 | Const LANG_INDONESIAN = &H21 |
---|
1257 | Const LANG_ITALIAN = &H10 |
---|
1258 | Const LANG_JAPANESE = &H11 |
---|
1259 | Const LANG_KANNADA = &H4b |
---|
1260 | Const LANG_KASHMIRI = &H60 |
---|
1261 | Const LANG_KAZAK = &H3f |
---|
1262 | Const LANG_KONKANI = &H57 |
---|
1263 | Const LANG_KOREAN = &H12 |
---|
1264 | Const LANG_KYRGYZ = &H40 |
---|
1265 | Const LANG_LATVIAN = &H26 |
---|
1266 | Const LANG_LITHUANIAN = &H27 |
---|
1267 | Const LANG_MACEDONIAN = &H2f ' the Former Yugoslav Republic of Macedonia |
---|
1268 | Const LANG_MALAY = &H3e |
---|
1269 | Const LANG_MALAYALAM = &H4c |
---|
1270 | Const LANG_MANIPURI = &H58 |
---|
1271 | Const LANG_MARATHI = &H4e |
---|
1272 | Const LANG_MONGOLIAN = &H50 |
---|
1273 | Const LANG_NEPALI = &H61 |
---|
1274 | Const LANG_NORWEGIAN = &H14 |
---|
1275 | Const LANG_ORIYA = &H48 |
---|
1276 | Const LANG_POLISH = &H15 |
---|
1277 | Const LANG_PORTUGUESE = &H16 |
---|
1278 | Const LANG_PUNJABI = &H46 |
---|
1279 | Const LANG_ROMANIAN = &H18 |
---|
1280 | Const LANG_RUSSIAN = &H19 |
---|
1281 | Const LANG_SANSKRIT = &H4f |
---|
1282 | Const LANG_SERBIAN = &H1a |
---|
1283 | Const LANG_SINDHI = &H59 |
---|
1284 | Const LANG_SLOVAK = &H1b |
---|
1285 | Const LANG_SLOVENIAN = &H24 |
---|
1286 | Const LANG_SPANISH = &H0a |
---|
1287 | Const LANG_SWAHILI = &H41 |
---|
1288 | Const LANG_SWEDISH = &H1d |
---|
1289 | Const LANG_SYRIAC = &H5a |
---|
1290 | Const LANG_TAMIL = &H49 |
---|
1291 | Const LANG_TATAR = &H44 |
---|
1292 | Const LANG_TELUGU = &H4a |
---|
1293 | Const LANG_THAI = &H1e |
---|
1294 | Const LANG_TURKISH = &H1f |
---|
1295 | Const LANG_UKRAINIAN = &H22 |
---|
1296 | Const LANG_URDU = &H20 |
---|
1297 | Const LANG_UZBEK = &H43 |
---|
1298 | Const LANG_VIETNAMESE = &H2a |
---|
1299 | |
---|
1300 | ' |
---|
1301 | ' Sublanguage IDs. |
---|
1302 | ' |
---|
1303 | ' The name immediately following SUBLANG_ dictates which primary |
---|
1304 | ' language ID that sublanguage ID can be combined with to form a |
---|
1305 | ' valid language ID. |
---|
1306 | ' |
---|
1307 | |
---|
1308 | Const SUBLANG_NEUTRAL = &H00 ' language neutral |
---|
1309 | Const SUBLANG_DEFAULT = &H01 ' user default |
---|
1310 | Const SUBLANG_SYS_DEFAULT = &H02 ' system default |
---|
1311 | |
---|
1312 | Const SUBLANG_ARABIC_SAUDI_ARABIA = &H01 ' Arabic (Saudi Arabia) |
---|
1313 | Const SUBLANG_ARABIC_IRAQ = &H02 ' Arabic (Iraq) |
---|
1314 | Const SUBLANG_ARABIC_EGYPT = &H03 ' Arabic (Egypt) |
---|
1315 | Const SUBLANG_ARABIC_LIBYA = &H04 ' Arabic (Libya) |
---|
1316 | Const SUBLANG_ARABIC_ALGERIA = &H05 ' Arabic (Algeria) |
---|
1317 | Const SUBLANG_ARABIC_MOROCCO = &H06 ' Arabic (Morocco) |
---|
1318 | Const SUBLANG_ARABIC_TUNISIA = &H07 ' Arabic (Tunisia) |
---|
1319 | Const SUBLANG_ARABIC_OMAN = &H08 ' Arabic (Oman) |
---|
1320 | Const SUBLANG_ARABIC_YEMEN = &H09 ' Arabic (Yemen) |
---|
1321 | Const SUBLANG_ARABIC_SYRIA = &H0a ' Arabic (Syria) |
---|
1322 | Const SUBLANG_ARABIC_JORDAN = &H0b ' Arabic (Jordan) |
---|
1323 | Const SUBLANG_ARABIC_LEBANON = &H0c ' Arabic (Lebanon) |
---|
1324 | Const SUBLANG_ARABIC_KUWAIT = &H0d ' Arabic (Kuwait) |
---|
1325 | Const SUBLANG_ARABIC_UAE = &H0e ' Arabic (U.A.E) |
---|
1326 | Const SUBLANG_ARABIC_BAHRAIN = &H0f ' Arabic (Bahrain) |
---|
1327 | Const SUBLANG_ARABIC_QATAR = &H10 ' Arabic (Qatar) |
---|
1328 | Const SUBLANG_AZERI_LATIN = &H01 ' Azeri (Latin) |
---|
1329 | Const SUBLANG_AZERI_CYRILLIC = &H02 ' Azeri (Cyrillic) |
---|
1330 | Const SUBLANG_CHINESE_TRADITIONAL = &H01 ' Chinese (Taiwan) |
---|
1331 | Const SUBLANG_CHINESE_SIMPLIFIED = &H02 ' Chinese (PR China) |
---|
1332 | Const SUBLANG_CHINESE_HONGKONG = &H03 ' Chinese (Hong Kong S.A.R., P.R.C.) |
---|
1333 | Const SUBLANG_CHINESE_SINGAPORE = &H04 ' Chinese (Singapore) |
---|
1334 | Const SUBLANG_CHINESE_MACAU = &H05 ' Chinese (Macau S.A.R.) |
---|
1335 | Const SUBLANG_DUTCH = &H01 ' Dutch |
---|
1336 | Const SUBLANG_DUTCH_BELGIAN = &H02 ' Dutch (Belgian) |
---|
1337 | Const SUBLANG_ENGLISH_US = &H01 ' English (USA) |
---|
1338 | Const SUBLANG_ENGLISH_UK = &H02 ' English (UK) |
---|
1339 | Const SUBLANG_ENGLISH_AUS = &H03 ' English (Australian) |
---|
1340 | Const SUBLANG_ENGLISH_CAN = &H04 ' English (Canadian) |
---|
1341 | Const SUBLANG_ENGLISH_NZ = &H05 ' English (New Zealand) |
---|
1342 | Const SUBLANG_ENGLISH_EIRE = &H06 ' English (Irish) |
---|
1343 | Const SUBLANG_ENGLISH_SOUTH_AFRICA = &H07 ' English (South Africa) |
---|
1344 | Const SUBLANG_ENGLISH_JAMAICA = &H08 ' English (Jamaica) |
---|
1345 | Const SUBLANG_ENGLISH_CARIBBEAN = &H09 ' English (Caribbean) |
---|
1346 | Const SUBLANG_ENGLISH_BELIZE = &H0a ' English (Belize) |
---|
1347 | Const SUBLANG_ENGLISH_TRINIDAD = &H0b ' English (Trinidad) |
---|
1348 | Const SUBLANG_ENGLISH_ZIMBABWE = &H0c ' English (Zimbabwe) |
---|
1349 | Const SUBLANG_ENGLISH_PHILIPPINES = &H0d ' English (Philippines) |
---|
1350 | Const SUBLANG_FRENCH = &H01 ' French |
---|
1351 | Const SUBLANG_FRENCH_BELGIAN = &H02 ' French (Belgian) |
---|
1352 | Const SUBLANG_FRENCH_CANADIAN = &H03 ' French (Canadian) |
---|
1353 | Const SUBLANG_FRENCH_SWISS = &H04 ' French (Swiss) |
---|
1354 | Const SUBLANG_FRENCH_LUXEMBOURG = &H05 ' French (Luxembourg) |
---|
1355 | Const SUBLANG_FRENCH_MONACO = &H06 ' French (Monaco) |
---|
1356 | Const SUBLANG_GERMAN = &H01 ' German |
---|
1357 | Const SUBLANG_GERMAN_SWISS = &H02 ' German (Swiss) |
---|
1358 | Const SUBLANG_GERMAN_AUSTRIAN = &H03 ' German (Austrian) |
---|
1359 | Const SUBLANG_GERMAN_LUXEMBOURG = &H04 ' German (Luxembourg) |
---|
1360 | Const SUBLANG_GERMAN_LIECHTENSTEIN = &H05 ' German (Liechtenstein) |
---|
1361 | Const SUBLANG_ITALIAN = &H01 ' Italian |
---|
1362 | Const SUBLANG_ITALIAN_SWISS = &H02 ' Italian (Swiss) |
---|
1363 | Const SUBLANG_KASHMIRI_SASIA = &H02 ' Kashmiri (South Asia) |
---|
1364 | Const SUBLANG_KOREAN = &H01 ' Korean (Extended Wansung) |
---|
1365 | Const SUBLANG_LITHUANIAN = &H01 ' Lithuanian |
---|
1366 | Const SUBLANG_MALAY_MALAYSIA = &H01 ' Malay (Malaysia) |
---|
1367 | Const SUBLANG_MALAY_BRUNEI_DARUSSALAM = &H02 ' Malay (Brunei Darussalam) |
---|
1368 | Const SUBLANG_NEPALI_INDIA = &H02 ' Nepali (India) |
---|
1369 | Const SUBLANG_NORWEGIAN_BOKMAL = &H01 ' Norwegian (Bokmal) |
---|
1370 | Const SUBLANG_NORWEGIAN_NYNORSK = &H02 ' Norwegian (Nynorsk) |
---|
1371 | Const SUBLANG_PORTUGUESE = &H02 ' Portuguese |
---|
1372 | Const SUBLANG_PORTUGUESE_BRAZILIAN = &H01 ' Portuguese (Brazilian) |
---|
1373 | Const SUBLANG_SERBIAN_LATIN = &H02 ' Serbian (Latin) |
---|
1374 | Const SUBLANG_SERBIAN_CYRILLIC = &H03 ' Serbian (Cyrillic) |
---|
1375 | Const SUBLANG_SPANISH = &H01 ' Spanish (Castilian) |
---|
1376 | Const SUBLANG_SPANISH_MEXICAN = &H02 ' Spanish (Mexican) |
---|
1377 | Const SUBLANG_SPANISH_MODERN = &H03 ' Spanish (Spain) |
---|
1378 | Const SUBLANG_SPANISH_GUATEMALA = &H04 ' Spanish (Guatemala) |
---|
1379 | Const SUBLANG_SPANISH_COSTA_RICA = &H05 ' Spanish (Costa Rica) |
---|
1380 | Const SUBLANG_SPANISH_PANAMA = &H06 ' Spanish (Panama) |
---|
1381 | Const SUBLANG_SPANISH_DOMINICAN_REPUBLIC = &H07 ' Spanish (Dominican Republic) |
---|
1382 | Const SUBLANG_SPANISH_VENEZUELA = &H08 ' Spanish (Venezuela) |
---|
1383 | Const SUBLANG_SPANISH_COLOMBIA = &H09 ' Spanish (Colombia) |
---|
1384 | Const SUBLANG_SPANISH_PERU = &H0a ' Spanish (Peru) |
---|
1385 | Const SUBLANG_SPANISH_ARGENTINA = &H0b ' Spanish (Argentina) |
---|
1386 | Const SUBLANG_SPANISH_ECUADOR = &H0c ' Spanish (Ecuador) |
---|
1387 | Const SUBLANG_SPANISH_CHILE = &H0d ' Spanish (Chile) |
---|
1388 | Const SUBLANG_SPANISH_URUGUAY = &H0e ' Spanish (Uruguay) |
---|
1389 | Const SUBLANG_SPANISH_PARAGUAY = &H0f ' Spanish (Paraguay) |
---|
1390 | Const SUBLANG_SPANISH_BOLIVIA = &H10 ' Spanish (Bolivia) |
---|
1391 | Const SUBLANG_SPANISH_EL_SALVADOR = &H11 ' Spanish (El Salvador) |
---|
1392 | Const SUBLANG_SPANISH_HONDURAS = &H12 ' Spanish (Honduras) |
---|
1393 | Const SUBLANG_SPANISH_NICARAGUA = &H13 ' Spanish (Nicaragua) |
---|
1394 | Const SUBLANG_SPANISH_PUERTO_RICO = &H14 ' Spanish (Puerto Rico) |
---|
1395 | Const SUBLANG_SWEDISH = &H01 ' Swedish |
---|
1396 | Const SUBLANG_SWEDISH_FINLAND = &H02 ' Swedish (Finland) |
---|
1397 | Const SUBLANG_URDU_PAKISTAN = &H01 ' Urdu (Pakistan) |
---|
1398 | Const SUBLANG_URDU_INDIA = &H02 ' Urdu (India) |
---|
1399 | Const SUBLANG_UZBEK_LATIN = &H01 ' Uzbek (Latin) |
---|
1400 | Const SUBLANG_UZBEK_CYRILLIC = &H02 ' Uzbek (Cyrillic) |
---|
1401 | |
---|
1402 | |
---|
1403 | Const LANG_SYSTEM_DEFAULT = (MAKELANGID(LANG_NEUTRAL, SUBLANG_SYS_DEFAULT)) |
---|
1404 | Const LANG_USER_DEFAULT = (MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT)) |
---|
1405 | |
---|
1406 | |
---|
1407 | ' |
---|
1408 | ' Sorting IDs. |
---|
1409 | ' |
---|
1410 | |
---|
1411 | Const SORT_DEFAULT = &H0 ' sorting default |
---|
1412 | |
---|
1413 | Const SORT_JAPANESE_XJIS = &H0 ' Japanese XJIS order |
---|
1414 | Const SORT_JAPANESE_UNICODE = &H1 ' Japanese Unicode order |
---|
1415 | |
---|
1416 | Const SORT_CHINESE_BIG5 = &H0 ' Chinese BIG5 order |
---|
1417 | Const SORT_CHINESE_PRCP = &H0 ' PRC Chinese Phonetic order |
---|
1418 | Const SORT_CHINESE_UNICODE = &H1 ' Chinese Unicode order |
---|
1419 | Const SORT_CHINESE_PRC = &H2 ' PRC Chinese Stroke Count order |
---|
1420 | Const SORT_CHINESE_BOPOMOFO = &H3 ' Traditional Chinese Bopomofo order |
---|
1421 | |
---|
1422 | Const SORT_KOREAN_KSC = &H0 ' Korean KSC order |
---|
1423 | Const SORT_KOREAN_UNICODE = &H1 ' Korean Unicode order |
---|
1424 | |
---|
1425 | Const SORT_GERMAN_PHONE_BOOK = &H1 ' German Phone Book order |
---|
1426 | |
---|
1427 | Const SORT_HUNGARIAN_DEFAULT = &H0 ' Hungarian Default order |
---|
1428 | Const SORT_HUNGARIAN_TECHNICAL = &H1 ' Hungarian Technical order |
---|
1429 | |
---|
1430 | Const SORT_GEORGIAN_TRADITIONAL = &H0 ' Georgian Traditional order |
---|
1431 | Const SORT_GEORGIAN_MODERN = &H1 ' Georgian Modern order |
---|
1432 | |
---|
1433 | ' |
---|
1434 | ' Wait functions' results. |
---|
1435 | ' |
---|
1436 | Const WAIT_FAILED = (&hFFFFFFFF As DWord) |
---|
1437 | Const WAIT_OBJECT_0 = 0 '((STATUS_WAIT_0 ) + 0) |
---|
1438 | |
---|
1439 | Const WAIT_ABANDONED = &h00000080 As DWord '((STATUS_ABANDONED_WAIT_0 ) + 0) |
---|
1440 | Const WAIT_ABANDONED_0 = WAIT_ABANDONED '((STATUS_ABANDONED_WAIT_0 ) + 0) |
---|
1441 | |
---|
1442 | Const WAIT_IO_COMPLETION = &h000000C0 'STATUS_USER_APC |
---|
1443 | |
---|
1444 | Declare Function FindResource Lib "kernel32" Alias _FuncName_FindResource (hInstance As HINSTANCE, lpName As LPCTSTR, lpType As LPCTSTR) As HRSRC |
---|
1445 | Declare Function LoadResource Lib "kernel32" (hModule As HMODULE, hResInfo As HRSRC) As HGLOBAL |
---|
1446 | Declare Function FreeResource Lib "kernel32" (hResData As HGLOBAL) As BOOL |
---|
1447 | Declare Function LockResource Lib "kernel32" (hResData As HGLOBAL) As VoidPtr |
---|
1448 | Declare Function SizeofResource Lib "kernel32" (hModule As HANDLE, hResInfo As HRSRC) As DWord |
---|
1449 | |
---|
1450 | Declare Function ExpandEnvironmentStrings Lib "kernel32" Alias _FuncName_ExpandEnvironmentStrings (lpSrc As LPCTSTR, lpDst As LPTSTR, nSize As DWord) As DWord |
---|
1451 | |
---|
1452 | Type DCB |
---|
1453 | DCBlength As DWord |
---|
1454 | BaudRate As DWord |
---|
1455 | fBitFields As DWord |
---|
1456 | wReserved As Word |
---|
1457 | XonLim As Word |
---|
1458 | XoffLim As Word |
---|
1459 | ByteSize As Byte |
---|
1460 | Parity As Byte |
---|
1461 | StopBits As Byte |
---|
1462 | XonChar As CHAR |
---|
1463 | XoffChar As CHAR |
---|
1464 | ErrorChar As CHAR |
---|
1465 | EofChar As CHAR |
---|
1466 | EvtChar As CHAR |
---|
1467 | wReserved1 As Word |
---|
1468 | End Type |
---|
1469 | |
---|
1470 | Type COMMTIMEOUTS |
---|
1471 | ReadIntervalTimeout As DWord |
---|
1472 | ReadTotalTimeoutMultiplier As DWord |
---|
1473 | ReadTotalTimeoutConstant As DWord |
---|
1474 | WriteTotalTimeoutMultiplier As DWord |
---|
1475 | WriteTotalTimeoutConstant As DWord |
---|
1476 | End Type |
---|
1477 | Type COMSTAT |
---|
1478 | fCoBitFlds As Long 'See Comment in Win32API.Txt |
---|
1479 | cbInQue As DWord |
---|
1480 | cbOutQue As DWord |
---|
1481 | End Type |
---|
1482 | Declare Function SetCommState Lib "kernel32" (hCommDev As HANDLE, ByRef dcb As DCB) As BOOL |
---|
1483 | Declare Function SetCommTimeouts Lib "kernel32" (hFile As HANDLE ,ByRef pCommTimeouts As COMMTIMEOUTS) As BOOL |
---|
1484 | Declare Function ClearCommError Lib "kernel32" (hCommDevs As HANDLE, ByRef Errors As DWord, ByRef Stat As COMSTAT) As BOOL |
---|
1485 | Declare Function EscapeCommFunction Lib "kernel32" (nCid As HANDLE, ByVal nFunc As DWord) As BOOL |
---|
1486 | Declare Function GetCommModemStatus Lib "kernel32" (hFile As HANDLE, ByRef ModemStat As DWord) As BOOL |
---|
1487 | Declare Function SetCommMask Lib "kernel32" (hFile As HANDLE, dwEvtMask As DWord) As BOOL |
---|
1488 | Declare Function WaitCommEvent Lib "kernel32" (hFile As HANDLE, ByRef EvtMask As DWord, lpOverlapped As *OVERLAPPED) As BOOL |
---|
1489 | |
---|
1490 | Const ANYSIZE_ARRAY = 1 |
---|
1491 | Type LUID |
---|
1492 | LowPart As DWord |
---|
1493 | HighPart As Long |
---|
1494 | End Type |
---|
1495 | Type LUID_AND_ATTRIBUTES |
---|
1496 | Luid As LUID |
---|
1497 | Attributes As DWord |
---|
1498 | End Type |
---|
1499 | TypeDef PLUID_AND_ATTRIBUTES = *LUID_AND_ATTRIBUTES |
---|
1500 | 'TypeDef LUID_AND_ATTRIBUTES_ARRAY = LUID_AND_ATTRIBUTES[ANYSIZE_ARRAY] |
---|
1501 | 'TypeDef PLUID_AND_ATTRIBUTES_ARRAY = *LUID_AND_ATTRIBUTES_ARRAY |
---|
1502 | |
---|
1503 | Type TOKEN_PRIVILEGES |
---|
1504 | PrivilegeCount As DWord |
---|
1505 | Privileges[ELM(ANYSIZE_ARRAY)] As LUID_AND_ATTRIBUTES |
---|
1506 | End Type |
---|
1507 | |
---|
1508 | Declare Function OpenProcessToken Lib "advapi32" (ProcessHandle As HANDLE, DesiredAccess As DWord, ByRef TokenHandle As HANDLE) As BOOL |
---|
1509 | Declare Function LookupPrivilegeValue Lib "advapi32" Alias _FuncName_LookupPrivilegeValue (lpSystemName As LPCTSTR, lpName As LPCTSTR, ByRef Luid As LUID) As Long |
---|
1510 | Declare Function AdjustTokenPrivileges Lib "advapi32" (TokenHandle As Long, DisableAllPrivileges As Long,_ |
---|
1511 | ByRef NewState As TOKEN_PRIVILEGES, BufferLength As Long, |
---|
1512 | ByRef PreviousState As TOKEN_PRIVILEGES, ByRef ReturnLength As Long) As Long |
---|
1513 | |
---|
1514 | #endif '_INC_SYSTEM |
---|