8 use vars qw(@ISA @EXPORT @EXPORT_OK);
14 my $module_declarations = {
15 "k32CharToOemA" => ["long", ["str", "str"]],
16 "k32CharToOemBuffA" => ["long", ["str", "str", "long"]],
17 "k32OemToCharA" => ["long", ["str", "str"]],
18 "k32OemToCharBuffA" => ["long", ["str", "str", "long"]],
19 "k32LoadStringA" => ["long", ["long", "long", "str", "long"]],
20 "k32wvsprintfA" => ["long", ["str", "str", "ptr"]],
21 "CommonUnimpStub" => ["void", ["ptr"]],
22 "GetProcessDword" => ["long", ["long", "long"]],
23 "DosFileHandleToWin32Handle" => ["long", ["long"]],
24 "Win32HandleToDosFileHandle" => ["long", ["long"]],
25 "DisposeLZ32Handle" => ["void", ["long"]],
26 "GlobalAlloc16" => ["long", ["long", "long"]],
27 "GlobalLock16" => ["ptr", ["long"]],
28 "GlobalUnlock16" => ["long", ["long"]],
29 "GlobalFix16" => ["long", ["long"]],
30 "GlobalUnfix16" => ["void", ["long"]],
31 "GlobalWire16" => ["ptr", ["long"]],
32 "GlobalUnWire16" => ["long", ["long"]],
33 "GlobalFree16" => ["long", ["long"]],
34 "GlobalSize16" => ["long", ["long"]],
35 "HouseCleanLogicallyDeadHandles" => ["void", []],
36 "GetWin16DOSEnv" => ["long", ["undef"]],
37 "LoadLibrary16" => ["long", ["str"]],
38 "FreeLibrary16" => ["void", ["long"]],
39 "GetProcAddress16" => ["ptr", ["long", "str"]],
40 "AllocMappedBuffer" => ["void", ["ptr"]],
41 "OT_32ThkLSF" => ["void", ["ptr"]],
42 "ThunkInitLSF" => ["ptr", ["ptr", "str", "long", "str", "str"]],
43 "LogApiThkLSF" => ["void", ["str", "ptr"]],
44 "ThunkInitLS" => ["long", ["ptr", "str", "long", "str", "str"]],
45 "LogApiThkSL" => ["void", ["str", "ptr"]],
46 "Common32ThkLS" => ["void", ["ptr"]],
47 "ThunkInitSL" => ["void", ["ptr", "str", "long", "str", "str"]],
48 "LogCBThkSL" => ["void", ["str", "ptr"]],
49 "ReleaseThunkLock" => ["void", ["ptr"]],
50 "RestoreThunkLock" => ["void", ["long"]],
51 "W32S_BackTo32" => ["void", ["ptr"]],
52 "GetThunkBuff" => ["ptr", []],
53 "GetThunkStuff" => ["ptr", ["str", "str"]],
54 "K32WOWCallback16" => ["long", ["long", "long"]],
55 "K32WOWCallback16Ex" => ["long", ["long", "long", "long", "ptr", "ptr"]],
56 "K32WOWGetVDMPointer" => ["ptr", ["long", "long", "long"]],
57 "K32WOWHandle32" => ["long", ["long", "long"]],
58 "K32WOWHandle16" => ["long", ["long", "long"]],
59 "K32WOWGlobalAlloc16" => ["long", ["long", "long"]],
60 "K32WOWGlobalLock16" => ["ptr", ["long"]],
61 "K32WOWGlobalUnlock16" => ["long", ["long"]],
62 "K32WOWGlobalFree16" => ["long", ["long"]],
63 "K32WOWGlobalAllocLock16" => ["long", ["long", "long", "ptr"]],
64 "K32WOWGlobalUnlockFree16" => ["long", ["long"]],
65 "K32WOWGlobalLockSize16" => ["long", ["long", "ptr"]],
66 "K32WOWYield16" => ["void", []],
67 "K32WOWDirectedYield16" => ["void", ["long"]],
68 "K32WOWGetVDMPointerFix" => ["ptr", ["long", "long", "long"]],
69 "K32WOWGetVDMPointerUnfix" => ["void", ["long"]],
70 "K32WOWGetDescriptor" => ["long", ["ptr", "ptr"]],
71 "SSOnBigStack" => ["long", ["undef"]],
72 "FT_PrologPrime" => ["void", ["ptr"]],
73 "QT_ThunkPrime" => ["void", ["ptr"]],
74 "PK16FNF" => ["void", ["str"]],
75 "GetPK16SysVar" => ["ptr", []],
76 "GetpWin16Lock" => ["void", ["ptr"]],
77 "_CheckNotSysLevel" => ["void", ["ptr"]],
78 "_ConfirmSysLevel" => ["long", ["ptr"]],
79 "_ConfirmWin16Lock" => ["long", []],
80 "_EnterSysLevel" => ["void", ["ptr"]],
81 "_LeaveSysLevel" => ["void", ["ptr"]],
82 "AddAtomA" => ["long", ["str"]],
83 "AddAtomW" => ["long", ["wstr"]],
84 "AllocConsole" => ["long", []],
85 "AllocSLCallback" => ["long", ["long", "long"]],
86 "AreFileApisANSI" => ["long", []],
87 "BackupRead" => ["long", ["long", "ptr", "long", "ptr", "long", "long", "ptr"]],
88 "BackupSeek" => ["long", ["long", "long", "long", "ptr", "ptr", "ptr"]],
89 "BackupWrite" => ["long", ["long", "ptr", "long", "ptr", "long", "long", "ptr"]],
90 "Beep" => ["long", ["long", "long"]],
91 "BuildCommDCBA" => ["long", ["str", "ptr"]],
92 "BuildCommDCBAndTimeoutsA" => ["long", ["str", "ptr", "ptr"]],
93 "BuildCommDCBAndTimeoutsW" => ["long", ["wstr", "ptr", "ptr"]],
94 "BuildCommDCBW" => ["long", ["wstr", "ptr"]],
95 "CallNamedPipeA" => ["long", ["str", "ptr", "long", "ptr", "long", "ptr", "long"]],
96 "CallNamedPipeW" => ["long", ["wstr", "ptr", "long", "ptr", "long", "ptr", "long"]],
97 "CancelIo" => ["long", ["long"]],
98 "CancelWaitableTimer" => ["long", ["long"]],
99 "ClearCommBreak" => ["long", ["long"]],
100 "ClearCommError" => ["long", ["long", "ptr", "ptr"]],
101 "CloseHandle" => ["long", ["long"]],
102 "CloseProfileUserMapping" => ["long", []],
103 "CommConfigDialogA" => ["long", ["str", "long", "ptr"]],
104 "CommConfigDialogW" => ["long", ["wstr", "long", "ptr"]],
105 "CompareFileTime" => ["long", ["ptr", "ptr"]],
106 "CompareStringA" => ["long", ["long", "long", "str", "long", "str", "long"]],
107 "CompareStringW" => ["long", ["long", "long", "wstr", "long", "wstr", "long"]],
108 "ConnectNamedPipe" => ["long", ["long", "ptr"]],
109 "ContinueDebugEvent" => ["long", ["long", "long", "long"]],
110 "ConvertDefaultLocale" => ["long", ["long"]],
111 "ConvertDialog32To16" => ["void", ["ptr", "long", "ptr"]],
112 "ConvertToGlobalHandle" => ["long", ["long"]],
113 "CopyFileA" => ["long", ["str", "str", "long"]],
114 "CopyFileExA" => ["long", ["str", "str", "ptr", "ptr", "ptr", "long"]],
115 "CopyFileExW" => ["long", ["wstr", "wstr", "ptr", "ptr", "ptr", "long"]],
116 "CopyFileW" => ["long", ["wstr", "wstr", "long"]],
117 "CreateConsoleScreenBuffer" => ["long", ["long", "long", "ptr", "long", "ptr"]],
118 "CreateDirectoryA" => ["long", ["str", "ptr"]],
119 "CreateDirectoryExA" => ["long", ["str", "str", "ptr"]],
120 "CreateDirectoryExW" => ["long", ["wstr", "wstr", "ptr"]],
121 "CreateDirectoryW" => ["long", ["wstr", "ptr"]],
122 "CreateEventA" => ["long", ["ptr", "long", "long", "str"]],
123 "CreateEventW" => ["long", ["ptr", "long", "long", "wstr"]],
124 "CreateFileA" => ["long", ["str", "long", "long", "ptr", "long", "long", "long"]],
125 "CreateFileMappingA" => ["long", ["long", "ptr", "long", "long", "long", "str"]],
126 "CreateFileMappingW" => ["long", ["long", "ptr", "long", "long", "long", "wstr"]],
127 "CreateFileW" => ["long", ["wstr", "long", "long", "ptr", "long", "long", "long"]],
128 "CreateIoCompletionPort" => ["long", ["long", "long", "long", "long"]],
129 "CreateMailslotA" => ["long", ["str", "long", "long", "ptr"]],
130 "CreateMailslotW" => ["long", ["wstr", "long", "long", "ptr"]],
131 "CreateMutexA" => ["long", ["ptr", "long", "str"]],
132 "CreateMutexW" => ["long", ["ptr", "long", "wstr"]],
133 "CreateNamedPipeA" => ["long", ["str", "long", "long", "long", "long", "long", "long", "ptr"]],
134 "CreateNamedPipeW" => ["long", ["wstr", "long", "long", "long", "long", "long", "long", "ptr"]],
135 "CreatePipe" => ["long", ["ptr", "ptr", "ptr", "long"]],
136 "CreateProcessA" => ["long", ["str", "str", "ptr", "ptr", "long", "long", "ptr", "str", "ptr", "ptr"]],
137 "CreateProcessW" => ["long", ["wstr", "wstr", "ptr", "ptr", "long", "long", "ptr", "wstr", "ptr", "ptr"]],
138 "CreateSemaphoreA" => ["long", ["ptr", "long", "long", "str"]],
139 "CreateSemaphoreW" => ["long", ["ptr", "long", "long", "wstr"]],
140 "CreateSocketHandle" => ["long", []],
141 "CreateTapePartition" => ["long", ["long", "long", "long", "long"]],
142 "CreateThread" => ["long", ["ptr", "long", "ptr", "ptr", "long", "ptr"]],
143 "CreateToolhelp32Snapshot" => ["long", ["long", "long"]],
144 "CreateWaitableTimerA" => ["long", ["ptr", "long", "str"]],
145 "CreateWaitableTimerW" => ["long", ["ptr", "long", "wstr"]],
146 "DebugActiveProcess" => ["long", ["long"]],
147 "DebugBreak" => ["void", []],
148 "DefineDosDeviceA" => ["long", ["long", "str", "str"]],
149 "DeleteAtom" => ["long", ["long"]],
150 "DeleteFileA" => ["long", ["str"]],
151 "DeleteFileW" => ["long", ["wstr"]],
152 "DeviceIoControl" => ["long", ["long", "long", "ptr", "long", "ptr", "long", "ptr", "ptr"]],
153 "DisableThreadLibraryCalls" => ["long", ["long"]],
154 "DisconnectNamedPipe" => ["long", ["long"]],
155 "DosDateTimeToFileTime" => ["long", ["long", "long", "ptr"]],
156 "DuplicateHandle" => ["long", ["long", "long", "long", "ptr", "long", "long", "long"]],
157 "EnumCalendarInfoA" => ["long", ["ptr", "long", "long", "long"]],
158 "EnumDateFormatsA" => ["long", ["ptr", "long", "long"]],
159 "EnumDateFormatsW" => ["long", ["ptr", "long", "long"]],
160 "EnumResourceLanguagesA" => ["long", ["long", "str", "str", "ptr", "long"]],
161 "EnumResourceLanguagesW" => ["long", ["long", "wstr", "wstr", "ptr", "long"]],
162 "EnumResourceNamesA" => ["long", ["long", "str", "ptr", "long"]],
163 "EnumResourceNamesW" => ["long", ["long", "wstr", "ptr", "long"]],
164 "EnumResourceTypesA" => ["long", ["long", "ptr", "long"]],
165 "EnumResourceTypesW" => ["long", ["long", "ptr", "long"]],
166 "EnumSystemCodePagesA" => ["long", ["ptr", "long"]],
167 "EnumSystemCodePagesW" => ["long", ["ptr", "long"]],
168 "EnumSystemLocalesA" => ["long", ["ptr", "long"]],
169 "EnumSystemLocalesW" => ["long", ["ptr", "long"]],
170 "EnumTimeFormatsA" => ["long", ["ptr", "long", "long"]],
171 "EnumTimeFormatsW" => ["long", ["ptr", "long", "long"]],
172 "EraseTape" => ["long", ["long", "long", "long"]],
173 "EscapeCommFunction" => ["long", ["long", "long"]],
174 "ExitProcess" => ["void", ["long"]],
175 "ExitThread" => ["void", ["long"]],
176 "ExpandEnvironmentStringsA" => ["long", ["str", "str", "long"]],
177 "ExpandEnvironmentStringsW" => ["long", ["wstr", "wstr", "long"]],
178 "FT_Exit0" => ["void", ["ptr"]],
179 "FT_Exit12" => ["void", ["ptr"]],
180 "FT_Exit16" => ["void", ["ptr"]],
181 "FT_Exit20" => ["void", ["ptr"]],
182 "FT_Exit24" => ["void", ["ptr"]],
183 "FT_Exit28" => ["void", ["ptr"]],
184 "FT_Exit32" => ["void", ["ptr"]],
185 "FT_Exit36" => ["void", ["ptr"]],
186 "FT_Exit4" => ["void", ["ptr"]],
187 "FT_Exit40" => ["void", ["ptr"]],
188 "FT_Exit44" => ["void", ["ptr"]],
189 "FT_Exit48" => ["void", ["ptr"]],
190 "FT_Exit52" => ["void", ["ptr"]],
191 "FT_Exit56" => ["void", ["ptr"]],
192 "FT_Exit8" => ["void", ["ptr"]],
193 "FT_Prolog" => ["void", ["ptr"]],
194 "FT_Thunk" => ["void", ["ptr"]],
195 "FatalAppExitA" => ["void", ["long", "str"]],
196 "FatalAppExitW" => ["void", ["long", "wstr"]],
197 "FileTimeToDosDateTime" => ["long", ["ptr", "ptr", "ptr"]],
198 "FileTimeToLocalFileTime" => ["long", ["ptr", "ptr"]],
199 "FileTimeToSystemTime" => ["long", ["ptr", "ptr"]],
200 "FillConsoleOutputAttribute" => ["long", ["long", "long", "long", "long", "ptr"]],
201 "FillConsoleOutputCharacterA" => ["long", ["long", "long", "long", "long", "ptr"]],
202 "FillConsoleOutputCharacterW" => ["long", ["long", "long", "long", "long", "ptr"]],
203 "FindAtomA" => ["long", ["str"]],
204 "FindAtomW" => ["long", ["wstr"]],
205 "FindClose" => ["long", ["long"]],
206 "FindCloseChangeNotification" => ["long", ["long"]],
207 "FindFirstChangeNotificationA" => ["long", ["str", "long", "long"]],
208 "FindFirstChangeNotificationW" => ["long", ["wstr", "long", "long"]],
209 "FindFirstFileA" => ["long", ["str", "ptr"]],
210 "FindFirstFileExA" => ["long", ["str", "ptr", "ptr", "ptr", "ptr", "long"]],
211 "FindFirstFileExW" => ["long", ["wstr", "ptr", "ptr", "ptr", "ptr", "long"]],
212 "FindFirstFileW" => ["long", ["wstr", "ptr"]],
213 "FindNextChangeNotification" => ["long", ["long"]],
214 "FindNextFileA" => ["long", ["long", "ptr"]],
215 "FindNextFileW" => ["long", ["long", "ptr"]],
216 "FindResource16" => ["long", ["long", "str", "str"]],
217 "FindResourceA" => ["long", ["long", "str", "str"]],
218 "FindResourceExA" => ["long", ["long", "str", "str", "long"]],
219 "FindResourceExW" => ["long", ["long", "wstr", "wstr", "long"]],
220 "FindResourceW" => ["long", ["long", "wstr", "wstr"]],
221 "FlushConsoleInputBuffer" => ["long", ["long"]],
222 "FlushFileBuffers" => ["long", ["long"]],
223 "FlushInstructionCache" => ["long", ["long", "long", "long"]],
224 "FlushViewOfFile" => ["long", ["ptr", "long"]],
225 "FormatMessageA" => ["long", ["long", "ptr", "long", "long", "str", "long", "ptr"]],
226 "FormatMessageW" => ["long", ["long", "ptr", "long", "long", "wstr", "long", "ptr"]],
227 "FreeConsole" => ["long", []],
228 "FreeEnvironmentStringsA" => ["long", ["str"]],
229 "FreeEnvironmentStringsW" => ["long", ["wstr"]],
230 "FreeLibrary" => ["long", ["long"]],
231 "FreeLibraryAndExitThread" => ["void", ["long", "long"]],
232 "FreeResource" => ["long", ["long"]],
233 "FreeResource16" => ["long", ["long"]],
234 "FreeSLCallback" => ["void", ["long"]],
235 "GenerateConsoleCtrlEvent" => ["long", ["long", "long"]],
236 "Get16DLLAddress" => ["ptr", ["long", "str"]],
237 "GetACP" => ["long", []],
238 "GetAtomNameA" => ["long", ["long", "str", "long"]],
239 "GetAtomNameW" => ["long", ["long", "wstr", "long"]],
240 "GetBinaryType" => ["long", ["str", "ptr"]],
241 "GetBinaryTypeA" => ["long", ["str", "ptr"]],
242 "GetBinaryTypeW" => ["long", ["wstr", "ptr"]],
243 "GetCPInfo" => ["long", ["long", "ptr"]],
244 "GetCalendarInfoA" => ["long", ["long", "long", "long", "str", "long", "ptr"]],
245 "GetCalendarInfoW" => ["long", ["long", "long", "long", "wstr", "long", "ptr"]],
246 "GetCommConfig" => ["long", ["long", "ptr", "ptr"]],
247 "GetCommMask" => ["long", ["long", "ptr"]],
248 "GetCommModemStatus" => ["long", ["long", "ptr"]],
249 "GetCommProperties" => ["long", ["long", "ptr"]],
250 "GetCommState" => ["long", ["long", "ptr"]],
251 "GetCommTimeouts" => ["long", ["long", "ptr"]],
252 "GetCommandLineA" => ["str", []],
253 "GetCommandLineW" => ["wstr", []],
254 "GetCompressedFileSizeA" => ["long", ["str", "ptr"]],
255 "GetCompressedFileSizeW" => ["long", ["wstr", "ptr"]],
256 "GetComputerNameA" => ["long", ["str", "ptr"]],
257 "GetComputerNameW" => ["long", ["wstr", "ptr"]],
258 "GetConsoleCP" => ["long", []],
259 "GetConsoleCursorInfo" => ["long", ["long", "ptr"]],
260 "GetConsoleMode" => ["long", ["long", "ptr"]],
261 "GetConsoleOutputCP" => ["long", []],
262 "GetConsoleScreenBufferInfo" => ["long", ["long", "ptr"]],
263 "GetConsoleTitleA" => ["long", ["str", "long"]],
264 "GetConsoleTitleW" => ["long", ["wstr", "long"]],
265 "GetCurrencyFormatA" => ["long", ["long", "long", "str", "ptr", "str", "long"]],
266 "GetCurrencyFormatW" => ["long", ["long", "long", "wstr", "ptr", "wstr", "long"]],
267 "GetCurrentDirectoryA" => ["long", ["long", "str"]],
268 "GetCurrentDirectoryW" => ["long", ["long", "wstr"]],
269 "GetCurrentProcess" => ["long", []],
270 "GetCurrentProcessId" => ["long", []],
271 "GetCurrentTask" => ["long", []],
272 "GetCurrentThread" => ["long", []],
273 "GetCurrentThreadId" => ["long", []],
274 "GetDOSEnvironment16" => ["ptr", []],
275 "GetDateFormatA" => ["long", ["long", "long", "ptr", "str", "str", "long"]],
276 "GetDateFormatW" => ["long", ["long", "long", "ptr", "wstr", "wstr", "long"]],
277 "GetDefaultCommConfigA" => ["long", ["str", "ptr", "ptr"]],
278 "GetDefaultCommConfigW" => ["long", ["wstr", "ptr", "ptr"]],
279 "GetDiskFreeSpaceA" => ["long", ["str", "ptr", "ptr", "ptr", "ptr"]],
280 "GetDiskFreeSpaceExA" => ["long", ["str", "ptr", "ptr", "ptr"]],
281 "GetDiskFreeSpaceExW" => ["long", ["wstr", "ptr", "ptr", "ptr"]],
282 "GetDiskFreeSpaceW" => ["long", ["wstr", "ptr", "ptr", "ptr", "ptr"]],
283 "GetDriveTypeA" => ["long", ["str"]],
284 "GetDriveTypeW" => ["long", ["wstr"]],
285 "GetEnvironmentStrings" => ["str", []],
286 "GetEnvironmentStringsA" => ["str", []],
287 "GetEnvironmentStringsW" => ["wstr", []],
288 "GetEnvironmentVariableA" => ["long", ["str", "str", "long"]],
289 "GetEnvironmentVariableW" => ["long", ["wstr", "wstr", "long"]],
290 "GetExitCodeProcess" => ["long", ["long", "ptr"]],
291 "GetExitCodeThread" => ["long", ["long", "ptr"]],
292 "GetFileAttributesA" => ["long", ["str"]],
293 "GetFileAttributesExA" => ["long", ["str", "ptr", "ptr"]],
294 "GetFileAttributesExW" => ["long", ["wstr", "ptr", "ptr"]],
295 "GetFileAttributesW" => ["long", ["wstr"]],
296 "GetFileInformationByHandle" => ["long", ["long", "ptr"]],
297 "GetFileSize" => ["long", ["long", "ptr"]],
298 "GetFileTime" => ["long", ["long", "ptr", "ptr", "ptr"]],
299 "GetFileType" => ["long", ["long"]],
300 "GetFullPathNameA" => ["long", ["str", "long", "str", "ptr"]],
301 "GetFullPathNameW" => ["long", ["wstr", "long", "wstr", "ptr"]],
302 "GetHandleContext" => ["long", ["long"]],
303 "GetHandleInformation" => ["long", ["long", "ptr"]],
304 "GetLargestConsoleWindowSize" => ["long", ["long"]],
305 "GetLastError" => ["long", []],
306 "GetLocalTime" => ["void", ["ptr"]],
307 "GetLocaleInfoA" => ["long", ["long", "long", "str", "long"]],
308 "GetLocaleInfoW" => ["long", ["long", "long", "wstr", "long"]],
309 "GetLogicalDriveStringsA" => ["long", ["long", "str"]],
310 "GetLogicalDriveStringsW" => ["long", ["long", "wstr"]],
311 "GetLogicalDrives" => ["long", []],
312 "GetLongPathNameA" => ["long", ["str", "str", "long"]],
313 "GetLongPathNameW" => ["long", ["wstr", "wstr", "long"]],
314 "GetMailslotInfo" => ["long", ["long", "ptr", "ptr", "ptr", "ptr"]],
315 "GetModuleFileName16" => ["long", ["long", "str", "long"]],
316 "GetModuleFileNameA" => ["long", ["long", "str", "long"]],
317 "GetModuleFileNameW" => ["long", ["long", "wstr", "long"]],
318 "GetModuleHandle16" => ["long", ["str"]],
319 "GetModuleHandleA" => ["long", ["str"]],
320 "GetModuleHandleW" => ["long", ["wstr"]],
321 "GetNamedPipeHandleStateA" => ["long", ["long", "ptr", "ptr", "ptr", "ptr", "str", "long"]],
322 "GetNamedPipeHandleStateW" => ["long", ["long", "ptr", "ptr", "ptr", "ptr", "wstr", "long"]],
323 "GetNamedPipeInfo" => ["long", ["long", "ptr", "ptr", "ptr", "ptr"]],
324 "GetNumberFormatA" => ["long", ["long", "long", "str", "ptr", "str", "long"]],
325 "GetNumberFormatW" => ["long", ["long", "long", "wstr", "ptr", "wstr", "long"]],
326 "GetNumberOfConsoleInputEvents" => ["long", ["long", "ptr"]],
327 "GetNumberOfConsoleMouseButtons" => ["long", ["ptr"]],
328 "GetOEMCP" => ["long", []],
329 "GetOverlappedResult" => ["long", ["long", "ptr", "ptr", "long"]],
330 "GetPriorityClass" => ["long", ["long"]],
331 "GetPrivateProfileIntA" => ["long", ["str", "str", "long", "str"]],
332 "GetPrivateProfileIntW" => ["long", ["wstr", "wstr", "long", "wstr"]],
333 "GetPrivateProfileSectionA" => ["long", ["str", "str", "long", "str"]],
334 "GetPrivateProfileSectionNamesA" => ["long", ["str", "long", "str"]],
335 "GetPrivateProfileSectionNamesW" => ["long", ["wstr", "long", "wstr"]],
336 "GetPrivateProfileSectionW" => ["long", ["wstr", "wstr", "long", "wstr"]],
337 "GetPrivateProfileStringA" => ["long", ["str", "str", "str", "str", "long", "str"]],
338 "GetPrivateProfileStringW" => ["long", ["wstr", "wstr", "wstr", "wstr", "long", "wstr"]],
339 "GetPrivateProfileStructA" => ["long", ["str", "str", "ptr", "long", "str"]],
340 "GetPrivateProfileStructW" => ["long", ["wstr", "wstr", "ptr", "long", "wstr"]],
341 "GetProcAddress" => ["ptr", ["long", "str"]],
342 "GetProcessAffinityMask" => ["long", ["long", "ptr", "ptr"]],
343 "GetProcessFlags" => ["long", ["long"]],
344 "GetProcessHeap" => ["long", []],
345 "GetProcessHeaps" => ["long", ["long", "ptr"]],
346 "GetProcessShutdownParameters" => ["long", ["ptr", "ptr"]],
347 "GetProcessTimes" => ["long", ["long", "ptr", "ptr", "ptr", "ptr"]],
348 "GetProcessVersion" => ["long", ["long"]],
349 "GetProcessWorkingSetSize" => ["long", ["long", "ptr", "ptr"]],
350 "GetProfileIntA" => ["long", ["str", "str", "long"]],
351 "GetProfileIntW" => ["long", ["wstr", "wstr", "long"]],
352 "GetProfileSectionA" => ["long", ["str", "str", "long"]],
353 "GetProfileSectionW" => ["long", ["wstr", "wstr", "long"]],
354 "GetProfileStringA" => ["long", ["str", "str", "str", "str", "long"]],
355 "GetProfileStringW" => ["long", ["wstr", "wstr", "wstr", "wstr", "long"]],
356 "GetQueuedCompletionStatus" => ["long", ["long", "ptr", "ptr", "ptr", "long"]],
357 "GetShortPathNameA" => ["long", ["str", "str", "long"]],
358 "GetShortPathNameW" => ["long", ["wstr", "wstr", "long"]],
359 "GetStartupInfoA" => ["void", ["ptr"]],
360 "GetStartupInfoW" => ["void", ["ptr"]],
361 "GetStdHandle" => ["long", ["long"]],
362 "GetStringTypeA" => ["long", ["long", "long", "str", "long", "ptr"]],
363 "GetStringTypeExA" => ["long", ["long", "long", "str", "long", "ptr"]],
364 "GetStringTypeExW" => ["long", ["long", "long", "wstr", "long", "ptr"]],
365 "GetStringTypeW" => ["long", ["long", "wstr", "long", "ptr"]],
366 "GetSystemDefaultLCID" => ["long", []],
367 "GetSystemDefaultLangID" => ["long", []],
368 "GetSystemDirectoryA" => ["long", ["str", "long"]],
369 "GetSystemDirectoryW" => ["long", ["wstr", "long"]],
370 "GetSystemInfo" => ["void", ["ptr"]],
371 "GetSystemPowerStatus" => ["long", ["ptr"]],
372 "GetSystemTime" => ["void", ["ptr"]],
373 "GetSystemTimeAdjustment" => ["long", ["ptr", "ptr", "ptr"]],
374 "GetSystemTimeAsFileTime" => ["void", ["ptr"]],
375 "GetSystemWindowsDirectoryA" => ["long", ["str", "long"]],
376 "GetSystemWindowsDirectoryW" => ["long", ["wstr", "long"]],
377 "GetTapeParameters" => ["long", ["long", "long", "ptr", "ptr"]],
378 "GetTapePosition" => ["long", ["long", "long", "ptr", "ptr", "ptr"]],
379 "GetTapeStatus" => ["long", ["long"]],
380 "GetTempFileNameA" => ["long", ["str", "str", "long", "str"]],
381 "GetTempFileNameW" => ["long", ["wstr", "wstr", "long", "wstr"]],
382 "GetTempPathA" => ["long", ["long", "str"]],
383 "GetTempPathW" => ["long", ["long", "wstr"]],
384 "GetThreadContext" => ["long", ["long", "ptr"]],
385 "GetThreadLocale" => ["long", []],
386 "GetThreadPriority" => ["long", ["long"]],
387 "GetThreadPriorityBoost" => ["long", ["long", "ptr"]],
388 "GetThreadSelectorEntry" => ["long", ["long", "long", "ptr"]],
389 "GetThreadTimes" => ["long", ["long", "ptr", "ptr", "ptr", "ptr"]],
390 "GetTickCount" => ["long", []],
391 "GetTimeFormatA" => ["long", ["long", "long", "ptr", "str", "str", "long"]],
392 "GetTimeFormatW" => ["long", ["long", "long", "ptr", "wstr", "wstr", "long"]],
393 "GetTimeZoneInformation" => ["long", ["ptr"]],
394 "GetUserDefaultLCID" => ["long", []],
395 "GetUserDefaultLangID" => ["long", []],
396 "GetVersion" => ["long", []],
397 "GetVersionExA" => ["long", ["ptr"]],
398 "GetVersionExW" => ["long", ["ptr"]],
399 "GetVolumeInformationA" => ["long", ["str", "str", "long", "ptr", "ptr", "ptr", "str", "long"]],
400 "GetVolumeInformationW" => ["long", ["wstr", "wstr", "long", "ptr", "ptr", "ptr", "wstr", "long"]],
401 "GetWindowsDirectoryA" => ["long", ["str", "long"]],
402 "GetWindowsDirectoryW" => ["long", ["wstr", "long"]],
403 "GlobalAddAtomA" => ["long", ["str"]],
404 "GlobalAddAtomW" => ["long", ["wstr"]],
405 "GlobalAlloc" => ["long", ["long", "long"]],
406 "GlobalCompact" => ["long", ["long"]],
407 "GlobalDeleteAtom" => ["long", ["long"]],
408 "GlobalFindAtomA" => ["long", ["str"]],
409 "GlobalFindAtomW" => ["long", ["wstr"]],
410 "GlobalFix" => ["void", ["long"]],
411 "GlobalFlags" => ["long", ["long"]],
412 "GlobalFlags16" => ["long", ["long"]],
413 "GlobalFree" => ["long", ["long"]],
414 "GlobalGetAtomNameA" => ["long", ["long", "str", "long"]],
415 "GlobalGetAtomNameW" => ["long", ["long", "wstr", "long"]],
416 "GlobalHandle" => ["long", ["ptr"]],
417 "GlobalLock" => ["ptr", ["long"]],
418 "GlobalMemoryStatus" => ["void", ["ptr"]],
419 "GlobalReAlloc" => ["long", ["long", "long", "long"]],
420 "GlobalReAlloc16" => ["long", ["long", "long", "long"]],
421 "GlobalSize" => ["long", ["long"]],
422 "GlobalUnWire" => ["long", ["long"]],
423 "GlobalUnfix" => ["void", ["long"]],
424 "GlobalUnlock" => ["long", ["long"]],
425 "GlobalWire" => ["ptr", ["long"]],
426 "HeapCompact" => ["long", ["long", "long"]],
427 "HeapCreate" => ["long", ["long", "long", "long"]],
428 "HeapDestroy" => ["long", ["long"]],
429 "HeapLock" => ["long", ["long"]],
430 "HeapUnlock" => ["long", ["long"]],
431 "HeapValidate" => ["long", ["long", "long", "ptr"]],
432 "HeapWalk" => ["long", ["long", "ptr"]],
433 "InitAtomTable" => ["long", ["long"]],
434 "InitializeCriticalSection" => ["void", ["ptr"]],
435 "InitializeCriticalSectionAndSpinCount" => ["long", ["ptr", "long"]],
436 "InterlockedCompareExchange" => ["long", ["ptr", "long", "long"]],
437 "InterlockedDecrement" => ["long", ["ptr"]],
438 "InterlockedExchange" => ["long", ["ptr", "long"]],
439 "InterlockedExchangeAdd" => ["long", ["ptr", "long"]],
440 "InterlockedIncrement" => ["long", ["ptr"]],
441 "IsBadCodePtr" => ["long", ["ptr"]],
442 "IsBadHugeReadPtr" => ["long", ["ptr", "long"]],
443 "IsBadHugeWritePtr" => ["long", ["ptr", "long"]],
444 "IsBadReadPtr" => ["long", ["ptr", "long"]],
445 "IsBadStringPtrA" => ["long", ["str", "long"]],
446 "IsBadStringPtrW" => ["long", ["wstr", "long"]],
447 "IsBadWritePtr" => ["long", ["ptr", "long"]],
448 "IsDBCSLeadByte" => ["long", ["long"]],
449 "IsDBCSLeadByteEx" => ["long", ["long", "long"]],
450 "IsDebuggerPresent" => ["long", []],
451 "IsProcessorFeaturePresent" => ["long", ["long"]],
452 "IsTask16" => ["long", ["long"]],
453 "IsValidCodePage" => ["long", ["long"]],
454 "IsValidLocale" => ["long", ["long", "long"]],
455 "K32Thk1632Epilog" => ["void", ["ptr"]],
456 "K32Thk1632Prolog" => ["void", ["ptr"]],
457 "LCMapStringA" => ["long", ["long", "long", "str", "long", "str", "long"]],
458 "LCMapStringW" => ["long", ["long", "long", "wstr", "long", "wstr", "long"]],
459 "LoadLibraryA" => ["long", ["str"]],
460 "LoadLibraryExA" => ["long", ["str", "long", "long"]],
461 "LoadLibraryExW" => ["long", ["wstr", "long", "long"]],
462 "LoadLibraryW" => ["long", ["wstr"]],
463 "LoadModule" => ["long", ["str", "ptr"]],
464 "LoadModule16" => ["long", ["str", "ptr"]],
465 "LoadResource" => ["long", ["long", "long"]],
466 "LoadResource16" => ["long", ["long", "long"]],
467 "LocalAlloc" => ["long", ["long", "long"]],
468 "LocalCompact" => ["long", ["long"]],
469 "LocalFileTimeToFileTime" => ["long", ["ptr", "ptr"]],
470 "LocalFlags" => ["long", ["long"]],
471 "LocalFree" => ["long", ["long"]],
472 "LocalHandle" => ["long", ["ptr"]],
473 "LocalLock" => ["ptr", ["long"]],
474 "LocalReAlloc" => ["long", ["long", "long", "long"]],
475 "LocalShrink" => ["long", ["long", "long"]],
476 "LocalSize" => ["long", ["long"]],
477 "LocalUnlock" => ["long", ["long"]],
478 "LockFile" => ["long", ["long", "long", "long", "long", "long"]],
479 "LockFileEx" => ["long", ["long", "long", "long", "long", "long", "ptr"]],
480 "LockResource" => ["ptr", ["long"]],
481 "LockResource16" => ["ptr", ["long"]],
482 "MakeCriticalSectionGlobal" => ["void", ["ptr"]],
483 "MapHInstLS" => ["void", ["ptr"]],
484 "MapHInstLS_PN" => ["void", ["ptr"]],
485 "MapHInstSL" => ["void", ["ptr"]],
486 "MapHInstSL_PN" => ["void", ["ptr"]],
487 "MapHModuleLS" => ["long", ["long"]],
488 "MapHModuleSL" => ["long", ["long"]],
489 "MapLS" => ["ptr", ["ptr"]],
490 "MapSL" => ["ptr", ["ptr"]],
491 "MapSLFix" => ["ptr", ["ptr"]],
492 "MapViewOfFile" => ["ptr", ["long", "long", "long", "long", "long"]],
493 "MapViewOfFileEx" => ["ptr", ["long", "long", "long", "long", "long", "ptr"]],
494 "Module32First" => ["long", ["long", "ptr"]],
495 "Module32Next" => ["long", ["long", "ptr"]],
496 "MoveFileA" => ["long", ["str", "str"]],
497 "MoveFileExA" => ["long", ["str", "str", "long"]],
498 "MoveFileExW" => ["long", ["wstr", "wstr", "long"]],
499 "MoveFileW" => ["long", ["wstr", "wstr"]],
500 "MulDiv" => ["long", ["long", "long", "long"]],
501 "MultiByteToWideChar" => ["long", ["long", "long", "str", "long", "wstr", "long"]],
502 "OpenEventA" => ["long", ["long", "long", "str"]],
503 "OpenEventW" => ["long", ["long", "long", "wstr"]],
504 "OpenFile" => ["long", ["str", "ptr", "long"]],
505 "OpenFileMappingA" => ["long", ["long", "long", "str"]],
506 "OpenFileMappingW" => ["long", ["long", "long", "wstr"]],
507 "OpenMutexA" => ["long", ["long", "long", "str"]],
508 "OpenMutexW" => ["long", ["long", "long", "wstr"]],
509 "OpenProcess" => ["long", ["long", "long", "long"]],
510 "OpenSemaphoreA" => ["long", ["long", "long", "str"]],
511 "OpenSemaphoreW" => ["long", ["long", "long", "wstr"]],
512 "OpenVxDHandle" => ["long", ["long"]],
513 "OpenWaitableTimerA" => ["long", ["long", "long", "str"]],
514 "OpenWaitableTimerW" => ["long", ["long", "long", "wstr"]],
515 "OutputDebugStringA" => ["void", ["str"]],
516 "OutputDebugStringW" => ["void", ["wstr"]],
517 "PeekConsoleInputA" => ["long", ["long", "ptr", "long", "ptr"]],
518 "PeekConsoleInputW" => ["long", ["long", "ptr", "long", "ptr"]],
519 "PeekNamedPipe" => ["long", ["long", "ptr", "long", "ptr", "ptr", "ptr"]],
520 "PrepareTape" => ["long", ["long", "long", "long"]],
521 "PrivateFreeLibrary" => ["void", ["long"]],
522 "PrivateLoadLibrary" => ["long", ["str"]],
523 "Process32First" => ["long", ["long", "ptr"]],
524 "Process32Next" => ["long", ["long", "ptr"]],
525 "ProcessIdToSessionId" => ["long", ["long", "ptr"]],
526 "PulseEvent" => ["long", ["long"]],
527 "PurgeComm" => ["long", ["long", "long"]],
528 "QT_Thunk" => ["void", ["ptr"]],
529 "QueryDosDeviceA" => ["long", ["str", "str", "long"]],
530 "QueryDosDeviceW" => ["long", ["wstr", "wstr", "long"]],
531 "QueryPerformanceCounter" => ["long", ["ptr"]],
532 "QueryPerformanceFrequency" => ["long", ["ptr"]],
533 "QueueUserAPC" => ["long", ["ptr", "long", "long"]],
534 "RaiseException" => ["void", ["long", "long", "long", "ptr"]],
535 "ReadConsoleA" => ["long", ["long", "ptr", "long", "ptr", "ptr"]],
536 "ReadConsoleInputA" => ["long", ["long", "ptr", "long", "ptr"]],
537 "ReadConsoleInputW" => ["long", ["long", "ptr", "long", "ptr"]],
538 "ReadConsoleOutputA" => ["long", ["long", "ptr", "long", "long", "ptr"]],
539 "ReadConsoleOutputAttribute" => ["long", ["long", "ptr", "long", "long", "ptr"]],
540 "ReadConsoleOutputCharacterA" => ["long", ["long", "str", "long", "long", "ptr"]],
541 "ReadConsoleOutputCharacterW" => ["long", ["long", "wstr", "long", "long", "ptr"]],
542 "ReadConsoleOutputW" => ["long", ["long", "ptr", "long", "long", "ptr"]],
543 "ReadConsoleW" => ["long", ["long", "ptr", "long", "ptr", "ptr"]],
544 "ReadFile" => ["long", ["long", "ptr", "long", "ptr", "ptr"]],
545 "ReadFileEx" => ["long", ["long", "ptr", "long", "ptr", "ptr"]],
546 "ReadProcessMemory" => ["long", ["long", "ptr", "ptr", "long", "ptr"]],
547 "RegisterServiceProcess" => ["long", ["long", "long"]],
548 "ReinitializeCriticalSection" => ["void", ["ptr"]],
549 "ReleaseMutex" => ["long", ["long"]],
550 "ReleaseSemaphore" => ["long", ["long", "long", "ptr"]],
551 "RemoveDirectoryA" => ["long", ["str"]],
552 "RemoveDirectoryW" => ["long", ["wstr"]],
553 "ResetEvent" => ["long", ["long"]],
554 "ResumeThread" => ["long", ["long"]],
555 "SMapLS" => ["void", ["ptr"]],
556 "SMapLS_IP_EBP_12" => ["void", ["ptr"]],
557 "SMapLS_IP_EBP_16" => ["void", ["ptr"]],
558 "SMapLS_IP_EBP_20" => ["void", ["ptr"]],
559 "SMapLS_IP_EBP_24" => ["void", ["ptr"]],
560 "SMapLS_IP_EBP_28" => ["void", ["ptr"]],
561 "SMapLS_IP_EBP_32" => ["void", ["ptr"]],
562 "SMapLS_IP_EBP_36" => ["void", ["ptr"]],
563 "SMapLS_IP_EBP_40" => ["void", ["ptr"]],
564 "SMapLS_IP_EBP_8" => ["void", ["ptr"]],
565 "SUnMapLS" => ["void", ["ptr"]],
566 "SUnMapLS_IP_EBP_12" => ["void", ["ptr"]],
567 "SUnMapLS_IP_EBP_16" => ["void", ["ptr"]],
568 "SUnMapLS_IP_EBP_20" => ["void", ["ptr"]],
569 "SUnMapLS_IP_EBP_24" => ["void", ["ptr"]],
570 "SUnMapLS_IP_EBP_28" => ["void", ["ptr"]],
571 "SUnMapLS_IP_EBP_32" => ["void", ["ptr"]],
572 "SUnMapLS_IP_EBP_36" => ["void", ["ptr"]],
573 "SUnMapLS_IP_EBP_40" => ["void", ["ptr"]],
574 "SUnMapLS_IP_EBP_8" => ["void", ["ptr"]],
575 "ScrollConsoleScreenBufferA" => ["long", ["long", "ptr", "ptr", "long", "ptr"]],
576 "SearchPathA" => ["long", ["str", "str", "str", "long", "str", "ptr"]],
577 "SearchPathW" => ["long", ["wstr", "wstr", "wstr", "long", "wstr", "ptr"]],
578 "SetCalendarInfoA" => ["long", ["long", "long", "long", "str"]],
579 "SetCalendarInfoW" => ["long", ["long", "long", "long", "wstr"]],
580 "SetCommBreak" => ["long", ["long"]],
581 "SetCommConfig" => ["long", ["long", "ptr", "long"]],
582 "SetCommMask" => ["long", ["long", "long"]],
583 "SetCommState" => ["long", ["long", "ptr"]],
584 "SetCommTimeouts" => ["long", ["long", "ptr"]],
585 "SetComputerNameA" => ["long", ["str"]],
586 "SetComputerNameW" => ["long", ["wstr"]],
587 "SetConsoleActiveScreenBuffer" => ["long", ["long"]],
588 "SetConsoleCP" => ["long", ["long"]],
589 "SetConsoleCursorInfo" => ["long", ["long", "ptr"]],
590 "SetConsoleCursorPosition" => ["long", ["long", "long"]],
591 "SetConsoleInputExeNameA" => ["long", ["str"]],
592 "SetConsoleInputExeNameW" => ["long", ["wstr"]],
593 "SetConsoleMode" => ["long", ["long", "long"]],
594 "SetConsoleOutputCP" => ["long", ["long"]],
595 "SetConsoleScreenBufferSize" => ["long", ["long", "long"]],
596 "SetConsoleTextAttribute" => ["long", ["long", "long"]],
597 "SetConsoleTitleA" => ["long", ["str"]],
598 "SetConsoleTitleW" => ["long", ["wstr"]],
599 "SetConsoleWindowInfo" => ["long", ["long", "long", "ptr"]],
600 "SetCriticalSectionSpinCount" => ["long", ["ptr", "long"]],
601 "SetCurrentDirectoryA" => ["long", ["str"]],
602 "SetCurrentDirectoryW" => ["long", ["wstr"]],
603 "SetDefaultCommConfigA" => ["long", ["str", "ptr", "long"]],
604 "SetDefaultCommConfigW" => ["long", ["wstr", "ptr", "long"]],
605 "SetEndOfFile" => ["long", ["long"]],
606 "SetEnvironmentVariableA" => ["long", ["str", "str"]],
607 "SetEnvironmentVariableW" => ["long", ["wstr", "wstr"]],
608 "SetErrorMode" => ["long", ["long"]],
609 "SetEvent" => ["long", ["long"]],
610 "SetFileApisToANSI" => ["void", []],
611 "SetFileApisToOEM" => ["void", []],
612 "SetFileAttributesA" => ["long", ["str", "long"]],
613 "SetFileAttributesW" => ["long", ["wstr", "long"]],
614 "SetFilePointer" => ["long", ["long", "long", "ptr", "long"]],
615 "SetFileTime" => ["long", ["long", "ptr", "ptr", "ptr"]],
616 "SetHandleContext" => ["long", ["long", "long"]],
617 "SetHandleCount" => ["long", ["long"]],
618 "SetHandleInformation" => ["long", ["long", "long", "long"]],
619 "SetLastError" => ["void", ["long"]],
620 "SetLocalTime" => ["long", ["ptr"]],
621 "SetLocaleInfoA" => ["long", ["long", "long", "str"]],
622 "SetNamedPipeHandleState" => ["long", ["long", "ptr", "ptr", "ptr"]],
623 "SetPriorityClass" => ["long", ["long", "long"]],
624 "SetProcessAffinityMask" => ["long", ["long", "long"]],
625 "SetProcessPriorityBoost" => ["long", ["long", "long"]],
626 "SetProcessShutdownParameters" => ["long", ["long", "long"]],
627 "SetProcessWorkingSetSize" => ["long", ["long", "long", "long"]],
628 "SetStdHandle" => ["long", ["long", "long"]],
629 "SetSystemPowerState" => ["long", ["long", "long"]],
630 "SetSystemTime" => ["long", ["ptr"]],
631 "SetTapeParameters" => ["long", ["long", "long", "ptr"]],
632 "SetTapePosition" => ["long", ["long", "long", "long", "long", "long", "long"]],
633 "SetThreadAffinityMask" => ["long", ["long", "long"]],
634 "SetThreadContext" => ["long", ["long", "ptr"]],
635 "SetThreadExecutionState" => ["long", ["long"]],
636 "SetThreadLocale" => ["long", ["long"]],
637 "SetThreadPriority" => ["long", ["long", "long"]],
638 "SetThreadPriorityBoost" => ["long", ["long", "long"]],
639 "SetTimeZoneInformation" => ["long", ["ptr"]],
640 "SetUnhandledExceptionFilter" => ["ptr", ["ptr"]],
641 "SetVolumeLabelA" => ["long", ["str", "str"]],
642 "SetVolumeLabelW" => ["long", ["wstr", "wstr"]],
643 "SetWaitableTimer" => ["long", ["long", "ptr", "long", "ptr", "ptr", "long"]],
644 "SetupComm" => ["long", ["long", "long", "long"]],
645 "SizeofResource" => ["long", ["long", "long"]],
646 "SizeofResource16" => ["long", ["long", "long"]],
647 "Sleep" => ["void", ["long"]],
648 "SleepEx" => ["long", ["long", "long"]],
649 "SuspendThread" => ["long", ["long"]],
650 "SystemTimeToFileTime" => ["long", ["ptr", "ptr"]],
651 "SystemTimeToTzSpecificLocalTime" => ["long", ["ptr", "ptr", "ptr"]],
652 "TerminateProcess" => ["long", ["long", "long"]],
653 "TerminateThread" => ["long", ["long", "long"]],
654 "Thread32First" => ["long", ["long", "ptr"]],
655 "Thread32Next" => ["long", ["long", "ptr"]],
656 "ThunkConnect32" => ["long", ["ptr", "str", "str", "str", "long", "long"]],
657 "TlsAlloc" => ["long", []],
658 "TlsFree" => ["long", ["long"]],
659 "TlsGetValue" => ["ptr", ["long"]],
660 "TlsSetValue" => ["long", ["long", "ptr"]],
661 "TransactNamedPipe" => ["long", ["long", "ptr", "long", "ptr", "long", "ptr", "ptr"]],
662 "TransmitCommChar" => ["long", ["long", "long"]],
663 "UTRegister" => ["long", ["long", "str", "str", "str", "ptr", "ptr", "ptr"]],
664 "UTUnRegister" => ["void", ["long"]],
665 "UnMapLS" => ["void", ["ptr"]],
666 "UnMapSLFixArray" => ["void", ["ptr", "long", "ptr"]],
667 "UnhandledExceptionFilter" => ["long", ["ptr"]],
668 "UninitializeCriticalSection" => ["void", ["ptr"]],
669 "UnlockFile" => ["long", ["long", "long", "long", "long", "long"]],
670 "UnlockFileEx" => ["long", ["long", "long", "long", "long", "ptr"]],
671 "UnmapViewOfFile" => ["long", ["ptr"]],
672 "UpdateResourceA" => ["long", ["long", "str", "str", "long", "ptr", "long"]],
673 "UpdateResourceW" => ["long", ["long", "wstr", "wstr", "long", "ptr", "long"]],
674 "VerLanguageNameA" => ["long", ["long", "str", "long"]],
675 "VerLanguageNameW" => ["long", ["long", "wstr", "long"]],
676 "VirtualAlloc" => ["ptr", ["ptr", "long", "long", "long"]],
677 "VirtualAllocEx" => ["ptr", ["long", "ptr", "long", "long", "long"]],
678 "VirtualFree" => ["long", ["ptr", "long", "long"]],
679 "VirtualLock" => ["long", ["ptr", "long"]],
680 "VirtualProtect" => ["long", ["ptr", "long", "long", "ptr"]],
681 "VirtualProtectEx" => ["long", ["long", "ptr", "long", "long", "ptr"]],
682 "VirtualQuery" => ["long", ["ptr", "ptr", "long"]],
683 "VirtualQueryEx" => ["long", ["long", "ptr", "ptr", "long"]],
684 "VirtualUnlock" => ["long", ["ptr", "long"]],
685 "WaitCommEvent" => ["long", ["long", "ptr", "ptr"]],
686 "WaitForDebugEvent" => ["long", ["ptr", "long"]],
687 "WaitForMultipleObjects" => ["long", ["long", "ptr", "long", "long"]],
688 "WaitForMultipleObjectsEx" => ["long", ["long", "ptr", "long", "long", "long"]],
689 "WaitForSingleObject" => ["long", ["long", "long"]],
690 "WaitForSingleObjectEx" => ["long", ["long", "long", "long"]],
691 "WaitNamedPipeA" => ["long", ["str", "long"]],
692 "WaitNamedPipeW" => ["long", ["wstr", "long"]],
693 "WideCharToMultiByte" => ["long", ["long", "long", "wstr", "long", "str", "long", "str", "ptr"]],
694 "WinExec" => ["long", ["str", "long"]],
695 "WinExec16" => ["long", ["str", "long"]],
696 "WriteConsoleA" => ["long", ["long", "ptr", "long", "ptr", "ptr"]],
697 "WriteConsoleInputA" => ["long", ["long", "ptr", "long", "ptr"]],
698 "WriteConsoleInputW" => ["long", ["long", "ptr", "long", "ptr"]],
699 "WriteConsoleOutputA" => ["long", ["long", "ptr", "long", "long", "ptr"]],
700 "WriteConsoleOutputAttribute" => ["long", ["long", "ptr", "long", "long", "ptr"]],
701 "WriteConsoleOutputCharacterA" => ["long", ["long", "str", "long", "long", "ptr"]],
702 "WriteConsoleOutputCharacterW" => ["long", ["long", "wstr", "long", "long", "ptr"]],
703 "WriteConsoleOutputW" => ["long", ["long", "ptr", "long", "long", "ptr"]],
704 "WriteConsoleW" => ["long", ["long", "ptr", "long", "ptr", "ptr"]],
705 "WriteFile" => ["long", ["long", "ptr", "long", "ptr", "ptr"]],
706 "WriteFileEx" => ["long", ["long", "ptr", "long", "ptr", "ptr"]],
707 "WritePrivateProfileSectionA" => ["long", ["str", "str", "str"]],
708 "WritePrivateProfileSectionW" => ["long", ["wstr", "wstr", "wstr"]],
709 "WritePrivateProfileStringA" => ["long", ["str", "str", "str", "str"]],
710 "WritePrivateProfileStringW" => ["long", ["wstr", "wstr", "wstr", "wstr"]],
711 "WritePrivateProfileStructA" => ["long", ["str", "str", "ptr", "long", "str"]],
712 "WritePrivateProfileStructW" => ["long", ["wstr", "wstr", "ptr", "long", "wstr"]],
713 "WriteProcessMemory" => ["long", ["long", "ptr", "ptr", "long", "ptr"]],
714 "WriteProfileSectionA" => ["long", ["str", "str"]],
715 "WriteProfileSectionW" => ["long", ["wstr", "wstr"]],
716 "WriteProfileStringA" => ["long", ["str", "str", "str"]],
717 "WriteProfileStringW" => ["long", ["wstr", "wstr", "wstr"]],
718 "WriteTapemark" => ["long", ["long", "long", "long", "long"]],
719 "_hread" => ["long", ["long", "ptr", "long"]],
720 "_hwrite" => ["long", ["long", "str", "long"]],
721 "_lclose" => ["long", ["long"]],
722 "_lcreat" => ["long", ["str", "long"]],
723 "_llseek" => ["long", ["long", "long", "long"]],
724 "_lopen" => ["long", ["str", "long"]],
725 "_lread" => ["long", ["long", "ptr", "long"]],
726 "_lwrite" => ["long", ["long", "str", "long"]],
727 "lstrcat" => ["str", ["str", "str"]],
728 "lstrcatA" => ["str", ["str", "str"]],
729 "lstrcatW" => ["wstr", ["wstr", "wstr"]],
730 "lstrcmp" => ["long", ["str", "str"]],
731 "lstrcmpA" => ["long", ["str", "str"]],
732 "lstrcmpW" => ["long", ["wstr", "wstr"]],
733 "lstrcmpi" => ["long", ["str", "str"]],
734 "lstrcmpiA" => ["long", ["str", "str"]],
735 "lstrcmpiW" => ["long", ["wstr", "wstr"]],
736 "lstrcpy" => ["str", ["str", "str"]],
737 "lstrcpyA" => ["str", ["str", "str"]],
738 "lstrcpyW" => ["wstr", ["wstr", "wstr"]],
739 "lstrcpyn" => ["str", ["str", "str", "long"]],
740 "lstrcpynA" => ["str", ["str", "str", "long"]],
741 "lstrcpynW" => ["wstr", ["wstr", "wstr", "long"]],
742 "lstrlen" => ["long", ["str"]],
743 "lstrlenA" => ["long", ["str"]],
744 "lstrlenW" => ["long", ["wstr"]],
745 "wine_call_to_16_long" => ["long", ["ptr", "long"]],
746 "wine_call_to_16_regs_long" => ["void", ["ptr", "long"]],
747 "wine_call_to_16_regs_short" => ["void", ["ptr", "long"]],
748 "wine_call_to_16_word" => ["long", ["ptr", "long"]],
749 "wine_get_unix_file_name" => ["long", ["str", "str", "long"]]
752 &wine::declare("kernel32",%$module_declarations);
753 push @EXPORT, map { "&" . $_; } sort(keys(%$module_declarations));