:pserver:cvsanon@mok.lvcm.com:/CVS/ReactOS reactos
[reactos.git] / include / funcs.h
1 /* 
2    Functions.h
3
4    Declarations for all the Windows32 API Functions
5
6    Copyright (C) 1996, 1997 Free Software Foundation, Inc.
7
8    Author: Scott Christley <scottc@net-community.com>
9
10    This file is part of the Windows32 API Library.
11
12    This library is free software; you can redistribute it and/or
13    modify it under the terms of the GNU Library General Public
14    License as published by the Free Software Foundation; either
15    version 2 of the License, or (at your option) any later version.
16    
17    This library is distributed in the hope that it will be useful,
18    but WITHOUT ANY WARRANTY; without even the implied warranty of
19    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
20    Library General Public License for more details.
21
22    If you are interested in a warranty or support for this source code,
23    contact Scott Christley <scottc@net-community.com> for more information.
24    
25    You should have received a copy of the GNU Library General Public
26    License along with this library; see the file COPYING.LIB.
27    If not, write to the Free Software Foundation, 
28    59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
29 */ 
30
31 #ifndef _GNU_H_WINDOWS32_FUNCTIONS
32 #define _GNU_H_WINDOWS32_FUNCTIONS
33
34 #ifndef WIN32_LEAN_AND_MEAN
35
36 #ifdef __cplusplus
37 extern "C" {
38 #endif /* __cplusplus */
39
40 /* These functions were a real pain, having to figure out which
41    had Unicode/Ascii versions and which did not */
42
43 #ifndef UNICODE_ONLY
44 #include <unicode.h>
45 #endif /* !UNICODE_ONLY */
46
47 #ifndef ANSI_ONLY
48 #include <ascii.h>
49 #endif /* !ANSI_ONLY */
50
51 /* Define the approprate declaration based upon UNICODE or ASCII */
52
53 /* UNICODE */
54 #ifdef UNICODE
55
56 #define RegConnectRegistry  RegConnectRegistryW
57 #define RegCreateKey  RegCreateKeyW
58 #define RegCreateKeyEx  RegCreateKeyExW
59 #define RegDeleteKey  RegDeleteKeyW
60 #define RegDeleteValue  RegDeleteValueW
61 #define RegEnumKey  RegEnumKeyW
62 #define RegEnumKeyEx  RegEnumKeyExW
63 #define RegEnumValue  RegEnumValueW
64 #define RegLoadKey  RegLoadKeyW
65 #define RegOpenKey  RegOpenKeyW
66 #define RegOpenKeyEx  RegOpenKeyExW
67 #define RegQueryInfoKey  RegQueryInfoKeyW
68 #define RegQueryValue  RegQueryValueW
69 #define RegQueryMultipleValues  RegQueryMultipleValuesW
70 #define RegQueryValueEx  RegQueryValueExW
71 #define RegReplaceKey  RegReplaceKeyW
72 #define RegRestoreKey  RegRestoreKeyW
73 #define RegSaveKey  RegSaveKeyW
74 #define RegSetValue  RegSetValueW
75 #define RegSetValueEx  RegSetValueExW
76 #define AbortSystemShutdown  AbortSystemShutdownW
77 #define InitiateSystemShutdown  InitiateSystemShutdownW
78 #define RegUnLoadKey  RegUnLoadKeyW
79 #define SetProp  SetPropW
80 #define GetProp  GetPropW
81 #define RemoveProp  RemovePropW
82 #define EnumPropsEx  EnumPropsExW
83 #define EnumProps  EnumPropsW
84 #define SetWindowText  SetWindowTextW
85 #define GetWindowText  GetWindowTextW
86 #define GetWindowTextLength  GetWindowTextLengthW
87 #define MessageBox  MessageBoxW
88 #define MessageBoxEx  MessageBoxExW
89 #define MessageBoxIndirect  MessageBoxIndirectW
90 #define GetWindowLong  GetWindowLongW
91 #define SetWindowLong  SetWindowLongW
92 #define GetClassLong  GetClassLongW
93 #define SetClassLong  SetClassLongW
94 #define FindWindow  FindWindowW
95 #define FindWindowEx  FindWindowExW
96 #define GetClassName  GetClassNameW
97 #define SetWindowsHookEx  SetWindowsHookExW
98 #define LoadBitmap  LoadBitmapW
99 #define LoadCursor  LoadCursorW
100 #define LoadCursorFromFile  LoadCursorFromFileW
101 #define LoadIcon  LoadIconW
102 #define LoadImage  LoadImageW
103 #define LoadString  LoadStringW
104 #define IsDialogMessage  IsDialogMessageW
105 #define DlgDirList  DlgDirListW
106 #define DlgDirSelectEx  DlgDirSelectExW
107 #define DlgDirListComboBox  DlgDirListComboBoxW
108 #define DlgDirSelectComboBoxEx  DlgDirSelectComboBoxExW
109 #define DefFrameProc  DefFrameProcW
110 #define DefMDIChildProc  DefMDIChildProcW
111 #define CreateMDIWindow  CreateMDIWindowW
112 #define WinHelp  WinHelpW
113 #define ChangeDisplaySettings  ChangeDisplaySettingsW
114 #define EnumDisplaySettings  EnumDisplaySettingsW
115 #define SystemParametersInfo  SystemParametersInfoW
116 #define AddFontResource  AddFontResourceW
117 #define CopyMetaFile  CopyMetaFileW
118 #define CreateDC  CreateDCW
119 #define CreateFontIndirect  CreateFontIndirectW
120 #define CreateFont  CreateFontW
121 #define CreateIC  CreateICW
122 #define CreateMetaFile  CreateMetaFileW
123 #define CreateScalableFontResource  CreateScalableFontResourceW
124 #define DeviceCapabilities  DeviceCapabilitiesW
125 #define EnumFontFamiliesEx  EnumFontFamiliesExW
126 #define EnumFontFamilies  EnumFontFamiliesW
127 #define EnumFonts  EnumFontsW
128 #define GetCharWidth  GetCharWidthW
129 #define GetCharWidth32  GetCharWidth32W
130 #define GetCharWidthFloat  GetCharWidthFloatW
131 #define GetCharABCWidths  GetCharABCWidthsW
132 #define GetCharABCWidthsFloat  GetCharABCWidthsFloatW
133 #define GetGlyphOutline  GetGlyphOutlineW
134 #define GetMetaFile  GetMetaFileW
135 #define GetOutlineTextMetrics  GetOutlineTextMetricsW
136 #define GetTextExtentPoint  GetTextExtentPointW
137 #define GetTextExtentPoint32  GetTextExtentPoint32W
138 #define GetTextExtentExPoint  GetTextExtentExPointW
139 #define GetCharacterPlacement  GetCharacterPlacementW
140 #define ResetDC  ResetDCW
141 #define RemoveFontResource  RemoveFontResourceW
142 #define CopyEnhMetaFile  CopyEnhMetaFileW
143 #define CreateEnhMetaFile  CreateEnhMetaFileW
144 #define GetEnhMetaFile  GetEnhMetaFileW
145 #define GetEnhMetaFileDescription  GetEnhMetaFileDescriptionW
146 #define GetTextMetrics  GetTextMetricsW
147 #define StartDoc  StartDocW
148 #define GetObject  GetObjectW
149 #define TextOut  TextOutW
150 #define ExtTextOut  ExtTextOutW
151 #define PolyTextOut  PolyTextOutW
152 #define GetTextFace  GetTextFaceW
153 #define GetKerningPairs  GetKerningPairsW
154 #define GetLogColorSpace  GetLogColorSpaceW
155 #define CreateColorSpace  CreateColorSpaceW
156 #define GetICMProfile  GetICMProfileW
157 #define SetICMProfile  SetICMProfileW
158 #define UpdateICMRegKey  UpdateICMRegKeyW
159 #define EnumICMProfiles  EnumICMProfilesW
160 #define CreatePropertySheetPage  CreatePropertySheetPageW
161 #define PropertySheet            PropertySheetW
162 #define ImageList_LoadImage     ImageList_LoadImageW
163 #define CreateStatusWindow      CreateStatusWindowW
164 #define DrawStatusText          DrawStatusTextW
165 #define GetOpenFileName  GetOpenFileNameW
166 #define GetSaveFileName  GetSaveFileNameW
167 #define GetFileTitle  GetFileTitleW
168 #define ChooseColor  ChooseColorW
169 #define FindText  FindTextW
170 #define ReplaceText  ReplaceTextW
171 #define ChooseFont  ChooseFontW
172 #define PrintDlg  PrintDlgW
173 #define PageSetupDlg  PageSetupDlgW
174 #define DefWindowProc  DefWindowProcW
175 #define CallWindowProc  CallWindowProcW
176 #define RegisterClass  RegisterClassW
177 #define UnregisterClass  UnregisterClassW
178 #define GetClassInfo  GetClassInfoW
179 #define RegisterClassEx  RegisterClassExW
180 #define GetClassInfoEx  GetClassInfoExW
181 #define CreateWindowEx  CreateWindowExW
182 #define CreateWindow  CreateWindowW
183 #define CreateDialogParam  CreateDialogParamW
184 #define CreateDialogIndirectParam  CreateDialogIndirectParamW
185 #define CreateDialog  CreateDialogW
186 #define CreateDialogIndirect  CreateDialogIndirectW
187 #define DialogBoxParam  DialogBoxParamW
188 #define DialogBoxIndirectParam  DialogBoxIndirectParamW
189 #define DialogBox  DialogBoxW
190 #define DialogBoxIndirect  DialogBoxIndirectW
191 #define RegisterClipboardFormat  RegisterClipboardFormatW
192 #define SetDlgItemText  SetDlgItemTextW
193 #define GetDlgItemText  GetDlgItemTextW
194 #define SendDlgItemMessage  SendDlgItemMessageW
195 #define DefDlgProc  DefDlgProcW
196 #define CallMsgFilter  CallMsgFilterW
197 #define GetClipboardFormatName  GetClipboardFormatNameW
198 #define CharToOem  CharToOemW
199 #define OemToChar  OemToCharW
200 #define CharToOemBuff  CharToOemBuffW
201 #define OemToCharBuff  OemToCharBuffW
202 #define CharUpper  CharUpperW
203 #define CharUpperBuff  CharUpperBuffW
204 #define CharLower  CharLowerW
205 #define CharLowerBuff  CharLowerBuffW
206 #define CharNext  CharNextW
207 #define CharPrev  CharPrevW
208 #define IsCharAlpha  IsCharAlphaW
209 #define IsCharAlphaNumeric  IsCharAlphaNumericW
210 #define IsCharUpper  IsCharUpperW
211 #define IsCharLower  IsCharLowerW
212 #define GetKeyNameText  GetKeyNameTextW
213 #define VkKeyScan  VkKeyScanW
214 #define VkKeyScanEx  VkKeyScanExW
215 #define MapVirtualKey  MapVirtualKeyW
216 #define MapVirtualKeyEx  MapVirtualKeyExW
217 #define LoadAccelerators  LoadAcceleratorsW
218 #define CreateAcceleratorTable  CreateAcceleratorTableW
219 #define CopyAcceleratorTable  CopyAcceleratorTableW
220 #define TranslateAccelerator  TranslateAcceleratorW
221 #define LoadMenu  LoadMenuW
222 #define LoadMenuIndirect  LoadMenuIndirectW
223 #define ChangeMenu  ChangeMenuW
224 #define GetMenuString  GetMenuStringW
225 #define InsertMenu  InsertMenuW
226 #define AppendMenu  AppendMenuW
227 #define ModifyMenu  ModifyMenuW
228 #define InsertMenuItem  InsertMenuItemW
229 #define GetMenuItemInfo  GetMenuItemInfoW
230 #define SetMenuItemInfo  SetMenuItemInfoW
231 #define DrawText  DrawTextW
232 #define DrawTextEx  DrawTextExW
233 #define GrayString  GrayStringW
234 #define DrawState  DrawStateW
235 #define TabbedTextOut  TabbedTextOutW
236 #define GetTabbedTextExtent  GetTabbedTextExtentW
237 #define GetVersionEx  GetVersionExW
238 #define wvsprintf  wvsprintfW
239 #define wsprintf  wsprintfW
240 #define LoadKeyboardLayout  LoadKeyboardLayoutW
241 #define GetKeyboardLayoutName  GetKeyboardLayoutNameW
242 #define CreateDesktop  CreateDesktopW
243 #define OpenDesktop  OpenDesktopW
244 #define EnumDesktops  EnumDesktopsW
245 #define CreateWindowStation  CreateWindowStationW
246 #define OpenWindowStation  OpenWindowStationW
247 #define EnumWindowStations  EnumWindowStationsW
248 #define IsBadStringPtr  IsBadStringPtrW
249 #define LookupAccountSid  LookupAccountSidW
250 #define LookupAccountName  LookupAccountNameW
251 #define LookupPrivilegeValue  LookupPrivilegeValueW
252 #define LookupPrivilegeName  LookupPrivilegeNameW
253 #define LookupPrivilegeDisplayName  LookupPrivilegeDisplayNameW
254 #define BuildCommDCB  BuildCommDCBW
255 #define BuildCommDCBAndTimeouts  BuildCommDCBAndTimeoutsW
256 #define CommConfigDialog  CommConfigDialogW
257 #define GetDefaultCommConfig  GetDefaultCommConfigW
258 #define SetDefaultCommConfig  SetDefaultCommConfigW
259 #define GetComputerName  GetComputerNameW
260 #define SetComputerName  SetComputerNameW
261 #define GetUserName  GetUserNameW
262 #define CreateMailslot  CreateMailslotW
263 #define FormatMessage  FormatMessageW
264 #define GetEnvironmentStrings  GetEnvironmentStringsW
265 #define FreeEnvironmentStrings  FreeEnvironmentStringsW
266 #define lstrcmp  lstrcmpW
267 #define lstrcmpi  lstrcmpiW
268 #define lstrcpyn  lstrcpynW
269 #define lstrcpy  lstrcpyW
270 #define lstrcat  lstrcatW
271 #define lstrlen  lstrlenW
272 #define GetBinaryType  GetBinaryTypeW
273 #define GetShortPathName  GetShortPathNameW
274 #define SetFileSecurity  SetFileSecurityW
275 #define GetFileSecurity  GetFileSecurityW
276 #define FindFirstChangeNotification  FindFirstChangeNotificationW
277 #define AccessCheckAndAuditAlarm  AccessCheckAndAuditAlarmW
278 #define ObjectOpenAuditAlarm  ObjectOpenAuditAlarmW
279 #define ObjectPrivilegeAuditAlarm  ObjectPrivilegeAuditAlarmW
280 #define ObjectCloseAuditAlarm  ObjectCloseAuditAlarmW
281 #define PrivilegedServiceAuditAlarm  PrivilegedServiceAuditAlarmW
282 #define OpenEventLog  OpenEventLogW
283 #define RegisterEventSource  RegisterEventSourceW
284 #define OpenBackupEventLog  OpenBackupEventLogW
285 #define ReadEventLog  ReadEventLogW
286 #define ReportEvent  ReportEventW
287 #define CreateProcess  CreateProcessW
288 #define FatalAppExit  FatalAppExitW
289 #define GetStartupInfo  GetStartupInfoW
290 #define GetEnvironmentVariable  GetEnvironmentVariableW
291 #define GetCommandLine  GetCommandLineW
292 #define SetEnvironmentVariable  SetEnvironmentVariableW
293 #define ExpandEnvironmentStrings  ExpandEnvironmentStringsW
294 #define OutputDebugString  OutputDebugStringW
295 #define FindResource  FindResourceW
296 #define FindResourceEx  FindResourceExW
297 #define EnumResourceTypes  EnumResourceTypesW
298 #define EnumResourceNames  EnumResourceNamesW
299 #define EnumResourceLanguages  EnumResourceLanguagesW
300 #define BeginUpdateResource  BeginUpdateResourceW
301 #define UpdateResource  UpdateResourceW
302 #define EndUpdateResource  EndUpdateResourceW
303 #define GlobalAddAtom  GlobalAddAtomW
304 #define GlobalFindAtom  GlobalFindAtomW
305 #define GlobalGetAtomName  GlobalGetAtomNameW
306 #define AddAtom  AddAtomW
307 #define FindAtom  FindAtomW
308 #define GetAtomName  GetAtomNameW
309 #define GetProfileInt  GetProfileIntW
310 #define GetProfileString  GetProfileStringW
311 #define WriteProfileString  WriteProfileStringW
312 #define GetProfileSection  GetProfileSectionW
313 #define WriteProfileSection  WriteProfileSectionW
314 #define GetPrivateProfileInt  GetPrivateProfileIntW
315 #define GetPrivateProfileString  GetPrivateProfileStringW
316 #define WritePrivateProfileString  WritePrivateProfileStringW
317 #define GetPrivateProfileSection  GetPrivateProfileSectionW
318 #define WritePrivateProfileSection  WritePrivateProfileSectionW
319 #define GetDriveType  GetDriveTypeW
320 #define GetSystemDirectory  GetSystemDirectoryW
321 #define GetTempPath  GetTempPathW
322 #define GetTempFileName  GetTempFileNameW
323 #define GetWindowsDirectory  GetWindowsDirectoryW
324 #define SetCurrentDirectory  SetCurrentDirectoryW
325 #define GetCurrentDirectory  GetCurrentDirectoryW
326 #define GetDiskFreeSpace  GetDiskFreeSpaceW
327 #define GetDiskFreeSpaceEx GetDiskFreeSpaceExW
328 #define CreateDirectory  CreateDirectoryW
329 #define CreateDirectoryEx  CreateDirectoryExW
330 #define RemoveDirectory  RemoveDirectoryW
331 #define GetFullPathName  GetFullPathNameW
332 #define DefineDosDevice  DefineDosDeviceW
333 #define QueryDosDevice  QueryDosDeviceW
334 #define CreateFile  CreateFileW
335 #define SetFileAttributes  SetFileAttributesW
336 #define GetFileAttributes  GetFileAttributesW
337 #define GetCompressedFileSize  GetCompressedFileSizeW
338 #define DeleteFile  DeleteFileW
339 #define FindFirstFileEx  FindFirstFileExW
340 #define FindFirstFile  FindFirstFileW
341 #define FindNextFile  FindNextFileW
342 #define SearchPath  SearchPathW
343 #define CopyFile  CopyFileW
344 #define MoveFile  MoveFileW
345 #define MoveFileEx  MoveFileExW
346 #define CreateNamedPipe  CreateNamedPipeW
347 #define GetNamedPipeHandleState  GetNamedPipeHandleStateW
348 #define CallNamedPipe  CallNamedPipeW
349 #define WaitNamedPipe  WaitNamedPipeW
350 #define SetVolumeLabel  SetVolumeLabelW
351 #define GetVolumeInformation  GetVolumeInformationW
352 #define ClearEventLog  ClearEventLogW
353 #define BackupEventLog  BackupEventLogW
354 #define CreateMutex  CreateMutexW
355 #define OpenMutex  OpenMutexW
356 #define CreateEvent  CreateEventW
357 #define OpenEvent  OpenEventW
358 #define CreateSemaphore  CreateSemaphoreW
359 #define OpenSemaphore  OpenSemaphoreW
360 #define CreateFileMapping  CreateFileMappingW
361 #define OpenFileMapping  OpenFileMappingW
362 #define GetLogicalDriveStrings  GetLogicalDriveStringsW
363 #define LoadLibrary  LoadLibraryW
364 #define LoadLibraryEx  LoadLibraryExW
365 #define GetModuleFileName  GetModuleFileNameW
366 #define GetModuleHandle  GetModuleHandleW
367 #define GetUserObjectInformation  GetUserObjectInformationW
368 #define SetUserObjectInformation  SetUserObjectInformationW
369 #define RegisterWindowMessage  RegisterWindowMessageW
370 #define GetMessage  GetMessageW
371 #define DispatchMessage  DispatchMessageW
372 #define PeekMessage  PeekMessageW
373 #define SendMessage  SendMessageW
374 #define SendMessageTimeout  SendMessageTimeoutW
375 #define SendNotifyMessage  SendNotifyMessageW
376 #define SendMessageCallback  SendMessageCallbackW
377 #define PostMessage  PostMessageW
378 #define PostThreadMessage  PostThreadMessageW
379 #define VerFindFile  VerFindFileW
380 #define VerInstallFile  VerInstallFileW
381 #define GetFileVersionInfoSize  GetFileVersionInfoSizeW
382 #define GetFileVersionInfo  GetFileVersionInfoW
383 #define VerLanguageName  VerLanguageNameW
384 #define VerQueryValue  VerQueryValueW
385 #define CompareString  CompareStringW
386 #define LCMapString  LCMapStringW
387 #define GetLocaleInfo  GetLocaleInfoW
388 #define SetLocaleInfo  SetLocaleInfoW
389 #define GetTimeFormat  GetTimeFormatW
390 #define GetDateFormat  GetDateFormatW
391 #define GetNumberFormat  GetNumberFormatW
392 #define GetCurrencyFormat  GetCurrencyFormatW
393 #define EnumCalendarInfo  EnumCalendarInfoW
394 #define EnumTimeFormats  EnumTimeFormatsW
395 #define FoldString  FoldStringW
396 #define EnumSystemCodePages  EnumSystemCodePagesW
397 #define EnumSystemLocales  EnumSystemLocalesW
398 #define GetStringTypeEx  GetStringTypeExW
399 #define EnumDateFormats  EnumDateFormatsW
400 #define GetConsoleTitle  GetConsoleTitleW
401 #define ScrollConsoleScreenBuffer  ScrollConsoleScreenBufferW
402 #define SetConsoleTitle  SetConsoleTitleW
403 #define ReadConsole  ReadConsoleW
404 #define WriteConsole  WriteConsoleW
405 #define PeekConsoleInput  PeekConsoleInputW
406 #define ReadConsoleInput  ReadConsoleInputW
407 #define WriteConsoleInput  WriteConsoleInputW
408 #define ReadConsoleOutput  ReadConsoleOutputW
409 #define WriteConsoleOutput  WriteConsoleOutputW
410 #define ReadConsoleOutputCharacter  ReadConsoleOutputCharacterW
411 #define WriteConsoleOutputCharacter  WriteConsoleOutputCharacterW
412 #define FillConsoleOutputCharacter  FillConsoleOutputCharacterW
413 #define WNetGetProviderName  WNetGetProviderNameW
414 #define WNetGetNetworkInformation  WNetGetNetworkInformationW
415 #define WNetGetLastError  WNetGetLastErrorW
416 #define MultinetGetConnectionPerformance  MultinetGetConnectionPerformanceW
417 #define WNetConnectionDialog1  WNetConnectionDialog1W
418 #define WNetDisconnectDialog1  WNetDisconnectDialog1W
419 #define WNetOpenEnum  WNetOpenEnumW
420 #define WNetEnumResource  WNetEnumResourceW
421 #define WNetGetUniversalName  WNetGetUniversalNameW
422 #define WNetGetUser  WNetGetUserW
423 #define WNetAddConnection  WNetAddConnectionW
424 #define WNetAddConnection2  WNetAddConnection2W
425 #define WNetAddConnection3  WNetAddConnection3W
426 #define WNetCancelConnection  WNetCancelConnectionW
427 #define WNetCancelConnection2  WNetCancelConnection2W
428 #define WNetGetConnection  WNetGetConnectionW
429 #define WNetUseConnection  WNetUseConnectionW
430 #define WNetSetConnection  WNetSetConnectionW
431 #define CreateService  CreateServiceW
432 #define ChangeServiceConfig  ChangeServiceConfigW
433 #define EnumDependentServices  EnumDependentServicesW
434 #define EnumServicesStatus  EnumServicesStatusW
435 #define GetServiceKeyName  GetServiceKeyNameW
436 #define GetServiceDisplayName  GetServiceDisplayNameW
437 #define OpenSCManager  OpenSCManagerW
438 #define OpenService  OpenServiceW
439 #define QueryServiceConfig  QueryServiceConfigW
440 #define QueryServiceLockStatus  QueryServiceLockStatusW
441 #define RegisterServiceCtrlHandler  RegisterServiceCtrlHandlerW
442 #define StartServiceCtrlDispatcher  StartServiceCtrlDispatcherW
443 #define StartService  StartServiceW
444 #define DragQueryFile DragQueryFileW
445 #define ExtractAssociatedIcon ExtractAssociatedIconW
446 #define ExtractIcon ExtractIconW
447 #define FindExecutable FindExecutableW
448 #define ShellAbout ShellAboutW
449 #define ShellExecute ShellExecuteW
450 #define DdeCreateStringHandle DdeCreateStringHandleW
451 #define DdeInitialize DdeInitializeW
452 #define DdeQueryString DdeQueryStringW
453 #define LogonUser LogonUserW
454 #define CreateProcessAsUser CreateProcessAsUserW
455
456 /* ASCII */
457 #else
458
459 #define RegConnectRegistry  RegConnectRegistryA
460 #define RegCreateKey  RegCreateKeyA
461 #define RegCreateKeyEx  RegCreateKeyExA
462 #define RegDeleteKey  RegDeleteKeyA
463 #define RegDeleteValue  RegDeleteValueA
464 #define RegEnumKey  RegEnumKeyA
465 #define RegEnumKeyEx  RegEnumKeyExA
466 #define RegEnumValue  RegEnumValueA
467 #define RegLoadKey  RegLoadKeyA
468 #define RegOpenKey  RegOpenKeyA
469 #define RegOpenKeyEx  RegOpenKeyExA
470 #define RegQueryInfoKey  RegQueryInfoKeyA
471 #define RegQueryValue  RegQueryValueA
472 #define RegQueryMultipleValues  RegQueryMultipleValuesA
473 #define RegQueryValueEx  RegQueryValueExA
474 #define RegReplaceKey  RegReplaceKeyA
475 #define RegRestoreKey  RegRestoreKeyA
476 #define RegSaveKey  RegSaveKeyA
477 #define RegSetValue  RegSetValueA
478 #define RegSetValueEx  RegSetValueExA
479 #define AbortSystemShutdown  AbortSystemShutdownA
480 #define InitiateSystemShutdown  InitiateSystemShutdownA
481 #define RegUnLoadKey  RegUnLoadKeyA
482 #define LoadIcon  LoadIconA
483 #define LoadImage  LoadImageA
484 #define LoadString  LoadStringA
485 #define IsDialogMessage  IsDialogMessageA
486 #define DlgDirList  DlgDirListA
487 #define DlgDirSelectEx  DlgDirSelectExA
488 #define DlgDirListComboBox  DlgDirListComboBoxA
489 #define DlgDirSelectComboBoxEx  DlgDirSelectComboBoxExA
490 #define DefFrameProc  DefFrameProcA
491 #define DefMDIChildProc  DefMDIChildProcA
492 #define CreateMDIWindow  CreateMDIWindowA
493 #define WinHelp  WinHelpA
494 #define ChangeDisplaySettings  ChangeDisplaySettingsA
495 #define EnumDisplaySettings  EnumDisplaySettingsA
496 #define SystemParametersInfo  SystemParametersInfoA
497 #define GetWindowLong  GetWindowLongA
498 #define SetWindowLong  SetWindowLongA
499 #define GetClassLong  GetClassLongA
500 #define SetClassLong  SetClassLongA
501 #define FindWindow  FindWindowA
502 #define FindWindowEx  FindWindowExA
503 #define GetClassName  GetClassNameA
504 #define SetWindowsHookEx  SetWindowsHookExA
505 #define LoadBitmap  LoadBitmapA
506 #define LoadCursor  LoadCursorA
507 #define LoadCursorFromFile  LoadCursorFromFileA
508 #define SetProp  SetPropA
509 #define GetProp  GetPropA
510 #define RemoveProp  RemovePropA
511 #define EnumPropsEx  EnumPropsExA
512 #define EnumProps  EnumPropsA
513 #define SetWindowText  SetWindowTextA
514 #define GetWindowText  GetWindowTextA
515 #define GetWindowTextLength  GetWindowTextLengthA
516 #define MessageBox  MessageBoxA
517 #define MessageBoxEx  MessageBoxExA
518 #define MessageBoxIndirect  MessageBoxIndirectA
519 #define AddFontResource  AddFontResourceA
520 #define CopyMetaFile  CopyMetaFileA
521 #define CreateDC  CreateDCA
522 #define CreateFontIndirect  CreateFontIndirectA
523 #define CreateFont  CreateFontA
524 #define CreateIC  CreateICA
525 #define CreateMetaFile  CreateMetaFileA
526 #define CreateScalableFontResource  CreateScalableFontResourceA
527 #define DeviceCapabilities  DeviceCapabilitiesA
528 #define EnumFontFamiliesEx  EnumFontFamiliesExA
529 #define EnumFontFamilies  EnumFontFamiliesA
530 #define EnumFonts  EnumFontsA
531 #define GetCharWidth  GetCharWidthA
532 #define GetCharWidth32  GetCharWidth32A
533 #define GetCharWidthFloat  GetCharWidthFloatA
534 #define GetCharABCWidths  GetCharABCWidthsA
535 #define GetCharABCWidthsFloat  GetCharABCWidthsFloatA
536 #define GetGlyphOutline  GetGlyphOutlineA
537 #define GetMetaFile  GetMetaFileA
538 #define GetOutlineTextMetrics  GetOutlineTextMetricsA
539 #define GetTextExtentPoint  GetTextExtentPointA
540 #define GetTextExtentPoint32  GetTextExtentPoint32A
541 #define GetTextExtentExPoint  GetTextExtentExPointA
542 #define GetCharacterPlacement  GetCharacterPlacementA
543 #define ResetDC  ResetDCA
544 #define RemoveFontResource  RemoveFontResourceA
545 #define CopyEnhMetaFile  CopyEnhMetaFileA
546 #define CreateEnhMetaFile  CreateEnhMetaFileA
547 #define GetEnhMetaFile  GetEnhMetaFileA
548 #define GetEnhMetaFileDescription  GetEnhMetaFileDescriptionA
549 #define GetTextMetrics  GetTextMetricsA
550 #define StartDoc  StartDocA
551 #define GetObject  GetObjectA
552 #define TextOut  TextOutA
553 #define ExtTextOut  ExtTextOutA
554 #define PolyTextOut  PolyTextOutA
555 #define GetTextFace  GetTextFaceA
556 #define GetKerningPairs  GetKerningPairsA
557 #define GetLogColorSpace  GetLogColorSpaceA
558 #define CreateColorSpace  CreateColorSpaceA
559 #define GetICMProfile  GetICMProfileA
560 #define SetICMProfile  SetICMProfileA
561 #define UpdateICMRegKey  UpdateICMRegKeyA
562 #define EnumICMProfiles  EnumICMProfilesA
563 #define CreatePropertySheetPage  CreatePropertySheetPageA
564 #define PropertySheet            PropertySheetA
565 #define ImageList_LoadImage     ImageList_LoadImageA
566 #define CreateStatusWindow      CreateStatusWindowA
567 #define DrawStatusText          DrawStatusTextA
568 #define GetOpenFileName  GetOpenFileNameA
569 #define GetSaveFileName  GetSaveFileNameA
570 #define GetFileTitle  GetFileTitleA
571 #define ChooseColor  ChooseColorA
572 #define FindText  FindTextA
573 #define ReplaceText  ReplaceTextA
574 #define ChooseFont  ChooseFontA
575 #define PrintDlg  PrintDlgA
576 #define PageSetupDlg  PageSetupDlgA
577 #define DefWindowProc  DefWindowProcA
578 #define CallWindowProc  CallWindowProcA
579 #define RegisterClass  RegisterClassA
580 #define UnregisterClass  UnregisterClassA
581 #define GetClassInfo  GetClassInfoA
582 #define RegisterClassEx  RegisterClassExA
583 #define GetClassInfoEx  GetClassInfoExA
584 #define CreateWindowEx  CreateWindowExA
585 #define CreateWindow  CreateWindowA
586 #define CreateDialogParam  CreateDialogParamA
587 #define CreateDialogIndirectParam  CreateDialogIndirectParamA
588 #define CreateDialog  CreateDialogA
589 #define CreateDialogIndirect  CreateDialogIndirectA
590 #define CreateWaitableTimer CreateWaitableTimerA
591 #define DialogBoxParam  DialogBoxParamA
592 #define DialogBoxIndirectParam  DialogBoxIndirectParamA
593 #define DialogBox  DialogBoxA
594 #define DialogBoxIndirect  DialogBoxIndirectA
595 #define RegisterClipboardFormat  RegisterClipboardFormatA
596 #define SetDlgItemText  SetDlgItemTextA
597 #define GetDlgItemText  GetDlgItemTextA
598 #define SendDlgItemMessage  SendDlgItemMessageA
599 #define DefDlgProc  DefDlgProcA
600 #define CallMsgFilter  CallMsgFilterA
601 #define GetClipboardFormatName  GetClipboardFormatNameA
602 #define CharToOem  CharToOemA
603 #define OemToChar  OemToCharA
604 #define CharToOemBuff  CharToOemBuffA
605 #define OemToCharBuff  OemToCharBuffA
606 #define CharUpper  CharUpperA
607 #define CharUpperBuff  CharUpperBuffA
608 #define CharLower  CharLowerA
609 #define CharLowerBuff  CharLowerBuffA
610 #define CharNext  CharNextA
611 #define CharPrev  CharPrevA
612 #define IsCharAlpha  IsCharAlphaA
613 #define IsCharAlphaNumeric  IsCharAlphaNumericA
614 #define IsCharUpper  IsCharUpperA
615 #define IsCharLower  IsCharLowerA
616 #define GetKeyNameText  GetKeyNameTextA
617 #define VkKeyScan  VkKeyScanA
618 #define VkKeyScanEx  VkKeyScanExA
619 #define MapVirtualKey  MapVirtualKeyA
620 #define MapVirtualKeyEx  MapVirtualKeyExA
621 #define LoadAccelerators  LoadAcceleratorsA
622 #define CreateAcceleratorTable  CreateAcceleratorTableA
623 #define CopyAcceleratorTable  CopyAcceleratorTableA
624 #define TranslateAccelerator  TranslateAcceleratorA
625 #define LoadMenu  LoadMenuA
626 #define LoadMenuIndirect  LoadMenuIndirectA
627 #define ChangeMenu  ChangeMenuA
628 #define GetMenuString  GetMenuStringA
629 #define InsertMenu  InsertMenuA
630 #define AppendMenu  AppendMenuA
631 #define ModifyMenu  ModifyMenuA
632 #define InsertMenuItem  InsertMenuItemA
633 #define GetMenuItemInfo  GetMenuItemInfoA
634 #define SetMenuItemInfo  SetMenuItemInfoA
635 #define DrawText  DrawTextA
636 #define DrawTextEx  DrawTextExA
637 #define GrayString  GrayStringA
638 #define DrawState  DrawStateA
639 #define TabbedTextOut  TabbedTextOutA
640 #define GetTabbedTextExtent  GetTabbedTextExtentA
641 #define GetVersionEx  GetVersionExA
642 #define wvsprintf  wvsprintfA
643 #define wsprintf  wsprintfA
644 #define LoadKeyboardLayout  LoadKeyboardLayoutA
645 #define GetKeyboardLayoutName  GetKeyboardLayoutNameA
646 #define CreateDesktop  CreateDesktopA
647 #define OpenDesktop  OpenDesktopA
648 #define EnumDesktops  EnumDesktopsA
649 #define CreateWindowStation  CreateWindowStationA
650 #define OpenWindowStation  OpenWindowStationA
651 #define EnumWindowStations  EnumWindowStationsA
652 #define IsBadStringPtr  IsBadStringPtrA
653 #define LookupAccountSid  LookupAccountSidA
654 #define LookupAccountName  LookupAccountNameA
655 #define LookupPrivilegeValue  LookupPrivilegeValueA
656 #define LookupPrivilegeName  LookupPrivilegeNameA
657 #define LookupPrivilegeDisplayName  LookupPrivilegeDisplayNameA
658 #define BuildCommDCB  BuildCommDCBA
659 #define BuildCommDCBAndTimeouts  BuildCommDCBAndTimeoutsA
660 #define CommConfigDialog  CommConfigDialogA
661 #define GetDefaultCommConfig  GetDefaultCommConfigA
662 #define SetDefaultCommConfig  SetDefaultCommConfigA
663 #define GetComputerName  GetComputerNameA
664 #define SetComputerName  SetComputerNameA
665 #define GetUserName  GetUserNameA
666 #define CreateMailslot  CreateMailslotA
667 #define FormatMessage  FormatMessageA
668 #define GetEnvironmentStrings  GetEnvironmentStringsA
669 #define FreeEnvironmentStrings  FreeEnvironmentStringsA
670 #define lstrcmp  lstrcmpA
671 #define lstrcmpi  lstrcmpiA
672 #define lstrcpyn  lstrcpynA
673 #define lstrcpy  lstrcpyA
674 #define lstrcat  lstrcatA
675 #define lstrlen  lstrlenA
676 #define GetBinaryType  GetBinaryTypeA
677 #define GetShortPathName  GetShortPathNameA
678 #define SetFileSecurity  SetFileSecurityA
679 #define GetFileSecurity  GetFileSecurityA
680 #define FindFirstChangeNotification  FindFirstChangeNotificationA
681 #define AccessCheckAndAuditAlarm  AccessCheckAndAuditAlarmA
682 #define ObjectOpenAuditAlarm  ObjectOpenAuditAlarmA
683 #define ObjectPrivilegeAuditAlarm  ObjectPrivilegeAuditAlarmA
684 #define ObjectCloseAuditAlarm  ObjectCloseAuditAlarmA
685 #define PrivilegedServiceAuditAlarm  PrivilegedServiceAuditAlarmA
686 #define OpenEventLog  OpenEventLogA
687 #define RegisterEventSource  RegisterEventSourceA
688 #define OpenBackupEventLog  OpenBackupEventLogA
689 #define ReadEventLog  ReadEventLogA
690 #define ReportEvent  ReportEventA
691 #define CreateProcess  CreateProcessA
692 #define FatalAppExit  FatalAppExitA
693 #define GetStartupInfo  GetStartupInfoA
694 #define GetCommandLine  GetCommandLineA
695 #define GetEnvironmentVariable  GetEnvironmentVariableA
696 #define SetEnvironmentVariable  SetEnvironmentVariableA
697 #define ExpandEnvironmentStrings  ExpandEnvironmentStringsA
698 #define OutputDebugString  OutputDebugStringA
699 #define FindResource  FindResourceA
700 #define FindResourceEx  FindResourceExA
701 #define EnumResourceTypes  EnumResourceTypesA
702 #define EnumResourceNames  EnumResourceNamesA
703 #define EnumResourceLanguages  EnumResourceLanguagesA
704 #define BeginUpdateResource  BeginUpdateResourceA
705 #define UpdateResource  UpdateResourceA
706 #define EndUpdateResource  EndUpdateResourceA
707 #define GlobalAddAtom  GlobalAddAtomA
708 #define GlobalFindAtom  GlobalFindAtomA
709 #define GlobalGetAtomName  GlobalGetAtomNameA
710 #define AddAtom  AddAtomA
711 #define FindAtom  FindAtomA
712 #define GetProfileInt  GetProfileIntA
713 #define GetAtomName  GetAtomNameA
714 #define GetProfileString  GetProfileStringA
715 #define WriteProfileString  WriteProfileStringA
716 #define GetProfileSection  GetProfileSectionA
717 #define WriteProfileSection  WriteProfileSectionA
718 #define GetPrivateProfileInt  GetPrivateProfileIntA
719 #define GetPrivateProfileString  GetPrivateProfileStringA
720 #define WritePrivateProfileString  WritePrivateProfileStringA
721 #define GetPrivateProfileSection  GetPrivateProfileSectionA
722 #define WritePrivateProfileSection  WritePrivateProfileSectionA
723 #define GetDriveType  GetDriveTypeA
724 #define GetSystemDirectory  GetSystemDirectoryA
725 #define GetTempPath  GetTempPathA
726 #define GetTempFileName  GetTempFileNameA
727 #define GetWindowsDirectory  GetWindowsDirectoryA
728 #define SetCurrentDirectory  SetCurrentDirectoryA
729 #define GetCurrentDirectory  GetCurrentDirectoryA
730 #define GetDiskFreeSpace  GetDiskFreeSpaceA
731 #define GetDiskFreeSpaceEx GetDiskFreeSpaceExA
732 #define CreateDirectory  CreateDirectoryA
733 #define CreateDirectoryEx  CreateDirectoryExA
734 #define RemoveDirectory  RemoveDirectoryA
735 #define GetFullPathName  GetFullPathNameA
736 #define DefineDosDevice  DefineDosDeviceA
737 #define QueryDosDevice  QueryDosDeviceA
738 #define CreateFile  CreateFileA
739 #define SetFileAttributes  SetFileAttributesA
740 #define GetFileAttributes  GetFileAttributesA
741 #define GetCompressedFileSize  GetCompressedFileSizeA
742 #define DeleteFile  DeleteFileA
743 #define FindFirstFileEx  FindFirstFileExA
744 #define FindFirstFile  FindFirstFileA
745 #define FindNextFile  FindNextFileA
746 #define SearchPath  SearchPathA
747 #define CopyFile  CopyFileA
748 #define MoveFile  MoveFileA
749 #define MoveFileEx  MoveFileExA
750 #define CreateNamedPipe  CreateNamedPipeA
751 #define GetNamedPipeHandleState  GetNamedPipeHandleStateA
752 #define CallNamedPipe  CallNamedPipeA
753 #define WaitNamedPipe  WaitNamedPipeA
754 #define SetVolumeLabel  SetVolumeLabelA
755 #define GetVolumeInformation  GetVolumeInformationA
756 #define ClearEventLog  ClearEventLogA
757 #define BackupEventLog  BackupEventLogA
758 #define CreateMutex  CreateMutexA
759 #define OpenMutex  OpenMutexA
760 #define CreateEvent  CreateEventA
761 #define OpenEvent  OpenEventA
762 #define CreateSemaphore  CreateSemaphoreA
763 #define OpenSemaphore  OpenSemaphoreA
764 #define CreateFileMapping  CreateFileMappingA
765 #define OpenFileMapping  OpenFileMappingA
766 #define GetLogicalDriveStrings  GetLogicalDriveStringsA
767 #define LoadLibrary  LoadLibraryA
768 #define LoadLibraryEx  LoadLibraryExA
769 #define GetModuleFileName  GetModuleFileNameA
770 #define GetModuleHandle  GetModuleHandleA
771 #define GetUserObjectInformation  GetUserObjectInformationA
772 #define SetUserObjectInformation  SetUserObjectInformationA
773 #define RegisterWindowMessage  RegisterWindowMessageA
774 #define GetMessage  GetMessageA
775 #define DispatchMessage  DispatchMessageA
776 #define PeekMessage  PeekMessageA
777 #define SendMessage  SendMessageA
778 #define SendMessageTimeout  SendMessageTimeoutA
779 #define SendNotifyMessage  SendNotifyMessageA
780 #define SendMessageCallback  SendMessageCallbackA
781 #define PostMessage  PostMessageA
782 #define PostThreadMessage  PostThreadMessageA
783 #define VerFindFile  VerFindFileA
784 #define VerInstallFile  VerInstallFileA
785 #define GetFileVersionInfoSize  GetFileVersionInfoSizeA
786 #define GetFileVersionInfo  GetFileVersionInfoA
787 #define VerLanguageName  VerLanguageNameA
788 #define VerQueryValue  VerQueryValueA
789 #define CompareString  CompareStringA
790 #define LCMapString  LCMapStringA
791 #define GetLocaleInfo  GetLocaleInfoA
792 #define SetLocaleInfo  SetLocaleInfoA
793 #define GetTimeFormat  GetTimeFormatA
794 #define GetDateFormat  GetDateFormatA
795 #define GetNumberFormat  GetNumberFormatA
796 #define GetCurrencyFormat  GetCurrencyFormatA
797 #define EnumCalendarInfo  EnumCalendarInfoA
798 #define EnumTimeFormats  EnumTimeFormatsA
799 #define FoldString  FoldStringA
800 #define EnumSystemCodePages  EnumSystemCodePagesA
801 #define EnumSystemLocales  EnumSystemLocalesA
802 #define GetStringTypeEx  GetStringTypeExA
803 #define EnumDateFormats  EnumDateFormatsA
804 #define GetConsoleTitle  GetConsoleTitleA
805 #define ScrollConsoleScreenBuffer  ScrollConsoleScreenBufferA
806 #define SetConsoleTitle  SetConsoleTitleA
807 #define ReadConsole  ReadConsoleA
808 #define WriteConsole  WriteConsoleA
809 #define PeekConsoleInput  PeekConsoleInputA
810 #define ReadConsoleInput  ReadConsoleInputA
811 #define WriteConsoleInput  WriteConsoleInputA
812 #define ReadConsoleOutput  ReadConsoleOutputA
813 #define WriteConsoleOutput  WriteConsoleOutputA
814 #define ReadConsoleOutputCharacter  ReadConsoleOutputCharacterA
815 #define WriteConsoleOutputCharacter  WriteConsoleOutputCharacterA
816 #define FillConsoleOutputCharacter  FillConsoleOutputCharacterA
817 #define MultinetGetConnectionPerformance  MultinetGetConnectionPerformanceA
818 #define WNetGetLastError  WNetGetLastErrorA
819 #define WNetGetProviderName  WNetGetProviderNameA
820 #define WNetGetNetworkInformation  WNetGetNetworkInformationA
821 #define WNetConnectionDialog1  WNetConnectionDialog1A
822 #define WNetDisconnectDialog1  WNetDisconnectDialog1A
823 #define WNetOpenEnum  WNetOpenEnumA
824 #define WNetEnumResource  WNetEnumResourceA
825 #define WNetGetUniversalName  WNetGetUniversalNameA
826 #define WNetGetUser  WNetGetUserA
827 #define WNetAddConnection  WNetAddConnectionA
828 #define WNetAddConnection2  WNetAddConnection2A
829 #define WNetAddConnection3  WNetAddConnection3A
830 #define WNetCancelConnection  WNetCancelConnectionA
831 #define WNetCancelConnection2  WNetCancelConnection2A
832 #define WNetGetConnection  WNetGetConnectionA
833 #define WNetUseConnection  WNetUseConnectionA
834 #define WNetSetConnection  WNetSetConnectionA
835 #define OpenService  OpenServiceA
836 #define QueryServiceConfig  QueryServiceConfigA
837 #define QueryServiceLockStatus  QueryServiceLockStatusA
838 #define RegisterServiceCtrlHandler  RegisterServiceCtrlHandlerA
839 #define StartServiceCtrlDispatcher  StartServiceCtrlDispatcherA
840 #define StartService  StartServiceA
841 #define ChangeServiceConfig  ChangeServiceConfigA
842 #define CreateService  CreateServiceA
843 #define EnumDependentServices  EnumDependentServicesA
844 #define EnumServicesStatus  EnumServicesStatusA
845 #define GetServiceKeyName  GetServiceKeyNameA
846 #define GetServiceDisplayName  GetServiceDisplayNameA
847 #define OpenSCManager  OpenSCManagerA
848 #define DragQueryFile DragQueryFileA
849 #define ExtractAssociatedIcon ExtractAssociatedIconA
850 #define ExtractIcon ExtractIconA
851 #define FindExecutable FindExecutableA
852 #define ShellAbout ShellAboutA
853 #define ShellExecute ShellExecuteA
854 #define DdeCreateStringHandle DdeCreateStringHandleA
855 #define DdeInitialize DdeInitializeA
856 #define DdeQueryString DdeQueryStringA
857 #define LogonUser LogonUserA
858 #define CreateProcessAsUser CreateProcessAsUserA
859
860 #endif /* UNICODE and ASCII defines */
861
862   HWND STDCALL GetAncestor(HWND hWnd, UINT GaFlags);
863 WINBOOL STDCALL AbnormalTermination(VOID);
864 int STDCALL AbortDoc(HDC);
865 WINBOOL STDCALL AbortPath(HDC);
866 WINBOOL STDCALL AbortPrinter(HANDLE);
867 WINBOOL CALLBACK AbortProc(HDC, int);
868 WINBOOL STDCALL AbortSystemShutdown(LPTSTR);
869 WINBOOL STDCALL AccessCheck(
870                     PSECURITY_DESCRIPTOR  pSecurityDescriptor,
871                     HANDLE  ClientToken,
872                     DWORD  DesiredAccess,
873                     PGENERIC_MAPPING  GenericMapping,
874                     PPRIVILEGE_SET  PrivilegeSet,
875                     LPDWORD  PrivilegeSetLength,
876                     LPDWORD  GrantedAccess,
877                     LPBOOL  AccessStatus
878                     );
879
880 WINBOOL STDCALL AccessCheckAndAuditAlarm(
881                                  LPCTSTR  SubsystemName,
882                                  LPVOID  HandleId,
883                                  LPTSTR  ObjectTypeName,
884                                  LPTSTR  ObjectName,
885                                  PSECURITY_DESCRIPTOR  SecurityDescriptor,
886                                  DWORD  DesiredAccess,
887                                  PGENERIC_MAPPING  GenericMapping,
888                                  WINBOOL  ObjectCreation,
889                                  LPDWORD  GrantedAccess,
890                                  LPBOOL  AccessStatus,
891                                  LPBOOL  pfGenerateOnClose
892                                  );
893
894 #ifndef __NTDRIVER__
895 LONG
896 STDCALL
897 InterlockedIncrement(
898                      LPLONG lpAddend
899                      );
900
901 LONG
902 STDCALL
903 InterlockedDecrement(
904                      LPLONG lpAddend
905                      );
906
907 LONG
908 STDCALL
909 InterlockedExchange(
910                     LPLONG Target,
911                     LONG Value
912                     );
913
914 PVOID
915 STDCALL
916 InterlockedCompareExchange(
917             PVOID *Destination,
918             PVOID Exchange,
919             PVOID Comperand
920             );
921 #endif
922
923 WINBOOL
924 STDCALL
925 FreeResource(
926              HGLOBAL hResData
927              );
928
929 LPVOID
930 STDCALL
931 LockResource(
932              HGLOBAL hResData
933              );
934
935 int
936 STDCALL
937 WinMain(
938         HINSTANCE hInstance,
939         HINSTANCE hPrevInstance,
940         LPSTR lpCmdLine,
941         int nShowCmd
942         );
943
944 WINBOOL
945 STDCALL
946 FreeLibrary(
947             HINSTANCE hLibModule
948             );
949
950
951 VOID
952 STDCALL
953 FreeLibraryAndExitThread(
954                          HMODULE hLibModule,
955                          DWORD dwExitCode
956                          );
957
958 WINBOOL
959 STDCALL
960 DisableThreadLibraryCalls(
961                           HMODULE hLibModule
962                           );
963
964 FARPROC
965 STDCALL
966 GetProcAddress(
967                HINSTANCE hModule,
968                LPCSTR lpProcName
969                );
970
971 DWORD
972 STDCALL
973 GetVersion( VOID );
974
975 HGLOBAL
976 STDCALL
977 GlobalAlloc(
978             UINT uFlags,
979             DWORD dwBytes
980             );
981
982 HGLOBAL
983 GlobalDiscard(
984               HGLOBAL hglbMem
985               );
986
987 HGLOBAL
988 STDCALL
989 GlobalReAlloc(
990               HGLOBAL hMem,
991               DWORD dwBytes,
992               UINT uFlags
993               );
994
995 DWORD
996 STDCALL
997 GlobalSize(
998            HGLOBAL hMem
999            );
1000
1001 UINT
1002 STDCALL
1003 GlobalFlags(
1004             HGLOBAL hMem
1005             );
1006
1007
1008 LPVOID
1009 STDCALL
1010 GlobalLock(
1011            HGLOBAL hMem
1012            );
1013
1014 HGLOBAL
1015 STDCALL
1016 GlobalHandle(
1017              LPCVOID pMem
1018              );
1019
1020
1021 WINBOOL
1022 STDCALL
1023 GlobalUnlock(
1024              HGLOBAL hMem
1025              );
1026
1027
1028 HGLOBAL
1029 STDCALL
1030 GlobalFree(
1031            HGLOBAL hMem
1032            );
1033
1034 UINT
1035 STDCALL
1036 GlobalCompact(
1037               DWORD dwMinFree
1038               );
1039
1040
1041 VOID
1042 STDCALL
1043 GlobalFix(
1044           HGLOBAL hMem
1045           );
1046
1047
1048 VOID
1049 STDCALL
1050 GlobalUnfix(
1051             HGLOBAL hMem
1052             );
1053
1054
1055 LPVOID
1056 STDCALL
1057 GlobalWire(
1058            HGLOBAL hMem
1059            );
1060
1061
1062 WINBOOL
1063 STDCALL
1064 GlobalUnWire(
1065              HGLOBAL hMem
1066              );
1067
1068
1069 VOID
1070 STDCALL
1071 GlobalMemoryStatus(
1072                    LPMEMORYSTATUS lpBuffer
1073                    );
1074
1075
1076 HLOCAL
1077 STDCALL
1078 LocalAlloc(
1079            UINT uFlags,
1080            UINT uBytes
1081            );
1082
1083 HLOCAL
1084 LocalDiscard(
1085              HLOCAL hlocMem
1086              );
1087
1088 HLOCAL
1089 STDCALL
1090 LocalReAlloc(
1091              HLOCAL hMem,
1092              UINT uBytes,
1093              UINT uFlags
1094              );
1095
1096
1097 LPVOID
1098 STDCALL
1099 LocalLock(
1100           HLOCAL hMem
1101           );
1102
1103
1104 HLOCAL
1105 STDCALL
1106 LocalHandle(
1107             LPCVOID pMem
1108             );
1109
1110
1111 WINBOOL
1112 STDCALL
1113 LocalUnlock(
1114             HLOCAL hMem
1115             );
1116
1117
1118 UINT
1119 STDCALL
1120 LocalSize(
1121           HLOCAL hMem
1122           );
1123
1124
1125 UINT
1126 STDCALL
1127 LocalFlags(
1128            HLOCAL hMem
1129            );
1130
1131
1132 HLOCAL
1133 STDCALL
1134 LocalFree(
1135           HLOCAL hMem
1136           );
1137
1138
1139 UINT
1140 STDCALL
1141 LocalShrink(
1142             HLOCAL hMem,
1143             UINT cbNewSize
1144             );
1145
1146
1147 UINT
1148 STDCALL
1149 LocalCompact(
1150              UINT uMinFree
1151              );
1152
1153
1154 WINBOOL
1155 STDCALL
1156 FlushInstructionCache(
1157                       HANDLE hProcess,
1158                       LPCVOID lpBaseAddress,
1159                       DWORD dwSize
1160                       );
1161
1162
1163 LPVOID
1164 STDCALL
1165 VirtualAlloc(
1166              LPVOID lpAddress,
1167              DWORD dwSize,
1168              DWORD flAllocationType,
1169              DWORD flProtect
1170              );
1171
1172
1173 WINBOOL
1174 STDCALL
1175 VirtualFree(
1176             LPVOID lpAddress,
1177             DWORD dwSize,
1178             DWORD dwFreeType
1179             );
1180
1181
1182 WINBOOL
1183 STDCALL
1184 VirtualProtect(
1185                LPVOID lpAddress,
1186                DWORD dwSize,
1187                DWORD flNewProtect,
1188                PDWORD lpflOldProtect
1189                );
1190
1191
1192 DWORD
1193 STDCALL
1194 VirtualQuery(
1195              LPCVOID lpAddress,
1196              PMEMORY_BASIC_INFORMATION lpBuffer,
1197              DWORD dwLength
1198              );
1199
1200
1201 WINBOOL
1202 STDCALL
1203 VirtualProtectEx(
1204                  HANDLE hProcess,
1205                  LPVOID lpAddress,
1206                  DWORD dwSize,
1207                  DWORD flNewProtect,
1208                  PDWORD lpflOldProtect
1209                  );
1210
1211
1212 DWORD
1213 STDCALL
1214 VirtualQueryEx(
1215                HANDLE hProcess,
1216                LPCVOID lpAddress,
1217                PMEMORY_BASIC_INFORMATION lpBuffer,
1218                DWORD dwLength
1219                );
1220
1221
1222 HANDLE
1223 STDCALL
1224 HeapCreate(
1225            DWORD flOptions,
1226            DWORD dwInitialSize,
1227            DWORD dwMaximumSize
1228            );
1229
1230 WINBOOL
1231 STDCALL
1232 HeapDestroy(
1233             HANDLE hHeap
1234             );
1235
1236 LPVOID
1237 STDCALL
1238 HeapAlloc(
1239           HANDLE hHeap,
1240           DWORD dwFlags,
1241           DWORD dwBytes
1242           );
1243
1244 LPVOID
1245 STDCALL
1246 HeapReAlloc(
1247             HANDLE hHeap,
1248             DWORD dwFlags,
1249             LPVOID lpMem,
1250             DWORD dwBytes
1251             );
1252
1253 WINBOOL
1254 STDCALL
1255 HeapFree(
1256          HANDLE hHeap,
1257          DWORD dwFlags,
1258          LPVOID lpMem
1259          );
1260
1261 DWORD
1262 STDCALL
1263 HeapSize(
1264          HANDLE hHeap,
1265          DWORD dwFlags,
1266          LPCVOID lpMem
1267          );
1268
1269 WINBOOL
1270 STDCALL
1271 HeapValidate(
1272              HANDLE hHeap,
1273              DWORD dwFlags,
1274              LPCVOID lpMem
1275              );
1276
1277 UINT
1278 STDCALL
1279 HeapCompact(
1280             HANDLE hHeap,
1281             DWORD dwFlags
1282             );
1283
1284 HANDLE
1285 STDCALL
1286 GetProcessHeap( VOID );
1287
1288 DWORD
1289 STDCALL
1290 GetProcessHeaps(
1291                 DWORD NumberOfHeaps,
1292                 PHANDLE ProcessHeaps
1293                 );
1294
1295 DWORD
1296 STDCALL
1297 GetProcessVersion (
1298                 DWORD   ProcessId
1299                 );
1300
1301 WINBOOL
1302 STDCALL
1303 HeapLock(
1304          HANDLE hHeap
1305          );
1306
1307 WINBOOL
1308 STDCALL
1309 HeapUnlock(
1310            HANDLE hHeap
1311            );
1312
1313 WINBOOL
1314 STDCALL
1315 HeapWalk(
1316          HANDLE hHeap,
1317          LPPROCESS_HEAP_ENTRY lpEntry
1318          );
1319
1320 WINBOOL
1321 STDCALL
1322 GetProcessAffinityMask(
1323                        HANDLE hProcess,
1324                        LPDWORD lpProcessAffinityMask,
1325                        LPDWORD lpSystemAffinityMask
1326                        );
1327
1328 WINBOOL
1329 STDCALL
1330 GetProcessTimes(
1331                 HANDLE hProcess,
1332                 LPFILETIME lpCreationTime,
1333                 LPFILETIME lpExitTime,
1334                 LPFILETIME lpKernelTime,
1335                 LPFILETIME lpUserTime
1336                 );
1337
1338 WINBOOL
1339 STDCALL
1340 GetProcessWorkingSetSize(
1341                          HANDLE hProcess,
1342                          LPDWORD lpMinimumWorkingSetSize,
1343                          LPDWORD lpMaximumWorkingSetSize
1344                          );
1345
1346 WINBOOL
1347 STDCALL
1348 SetProcessWorkingSetSize(
1349                          HANDLE hProcess,
1350                          DWORD dwMinimumWorkingSetSize,
1351                          DWORD dwMaximumWorkingSetSize
1352                          );
1353
1354 HANDLE
1355 STDCALL
1356 OpenProcess(
1357             DWORD dwDesiredAccess,
1358             WINBOOL bInheritHandle,
1359             DWORD dwProcessId
1360             );
1361
1362 HANDLE
1363 STDCALL
1364 GetCurrentProcess(
1365                   VOID
1366                   );
1367
1368 DWORD
1369 STDCALL
1370 GetCurrentProcessId(
1371                     VOID
1372                     );
1373
1374 VOID
1375 STDCALL
1376 ExitProcess(
1377             UINT uExitCode
1378             ) __attribute__ ((noreturn));
1379
1380 WINBOOL
1381 STDCALL
1382 TerminateProcess(
1383                  HANDLE hProcess,
1384                  UINT uExitCode
1385                  );
1386
1387 WINBOOL
1388 STDCALL
1389 GetExitCodeProcess(
1390                    HANDLE hProcess,
1391                    LPDWORD lpExitCode
1392                    );
1393
1394 VOID
1395 STDCALL
1396 FatalExit(
1397           int ExitCode
1398           );
1399
1400 VOID
1401 STDCALL
1402 RaiseException(
1403                DWORD dwExceptionCode,
1404                DWORD dwExceptionFlags,
1405                DWORD nNumberOfArguments,
1406                CONST DWORD *lpArguments
1407                );
1408
1409 LONG
1410 STDCALL
1411 UnhandledExceptionFilter(
1412                          struct _EXCEPTION_POINTERS *ExceptionInfo
1413                          );
1414
1415 /*
1416  TODO: what is TOP_LEVEL_EXCEPTION_FILTER?
1417 LPTOP_LEVEL_EXCEPTION_FILTER
1418 STDCALL
1419 SetUnhandledExceptionFilter(
1420     LPTOP_LEVEL_EXCEPTION_FILTER lpTopLevelExceptionFilter
1421     );
1422 */
1423
1424
1425 HANDLE
1426 STDCALL
1427 CreateThread(
1428              LPSECURITY_ATTRIBUTES lpThreadAttributes,
1429              DWORD dwStackSize,
1430              LPTHREAD_START_ROUTINE lpStartAddress,
1431              LPVOID lpParameter,
1432              DWORD dwCreationFlags,
1433              LPDWORD lpThreadId
1434              );
1435
1436
1437 HANDLE
1438 STDCALL
1439 CreateRemoteThread(
1440                    HANDLE hProcess,
1441                    LPSECURITY_ATTRIBUTES lpThreadAttributes,
1442                    DWORD dwStackSize,
1443                    LPTHREAD_START_ROUTINE lpStartAddress,
1444                    LPVOID lpParameter,
1445                    DWORD dwCreationFlags,
1446                    LPDWORD lpThreadId
1447                    );
1448
1449
1450 HANDLE
1451 STDCALL
1452 GetCurrentThread(
1453                  VOID
1454                  );
1455
1456
1457 DWORD
1458 STDCALL
1459 GetCurrentThreadId(
1460                    VOID
1461                    );
1462
1463
1464 DWORD
1465 STDCALL
1466 SetThreadAffinityMask(
1467                       HANDLE hThread,
1468                       DWORD dwThreadAffinityMask
1469                       );
1470
1471
1472 WINBOOL
1473 STDCALL
1474 SetThreadPriority(
1475                   HANDLE hThread,
1476                   int nPriority
1477                   );
1478
1479
1480 int
1481 STDCALL
1482 GetThreadPriority(
1483                   HANDLE hThread
1484                   );
1485
1486
1487 WINBOOL
1488 STDCALL
1489 GetThreadTimes(
1490                HANDLE hThread,
1491                LPFILETIME lpCreationTime,
1492                LPFILETIME lpExitTime,
1493                LPFILETIME lpKernelTime,
1494                LPFILETIME lpUserTime
1495                );
1496
1497
1498 VOID
1499 STDCALL
1500 ExitThread(
1501            DWORD dwExitCode
1502            );
1503
1504
1505 WINBOOL
1506 STDCALL
1507 TerminateThread(
1508                 HANDLE hThread,
1509                 DWORD dwExitCode
1510                 );
1511
1512
1513 WINBOOL
1514 STDCALL
1515 GetExitCodeThread(
1516                   HANDLE hThread,
1517                   LPDWORD lpExitCode
1518                   );
1519
1520 WINBOOL
1521 STDCALL
1522 GetThreadSelectorEntry(
1523                        HANDLE hThread,
1524                        DWORD dwSelector,
1525                        LPLDT_ENTRY lpSelectorEntry
1526                        );
1527
1528
1529 DWORD
1530 STDCALL
1531 GetLastError(
1532              VOID
1533              );
1534
1535
1536 VOID
1537 STDCALL
1538 SetLastError(
1539              DWORD dwErrCode
1540              );
1541
1542
1543 WINBOOL
1544 STDCALL
1545 GetOverlappedResult(
1546                     HANDLE hFile,
1547                     LPOVERLAPPED lpOverlapped,
1548                     LPDWORD lpNumberOfBytesTransferred,
1549                     WINBOOL bWait
1550                     );
1551
1552
1553 HANDLE
1554 STDCALL
1555 CreateIoCompletionPort(
1556                        HANDLE FileHandle,
1557                        HANDLE ExistingCompletionPort,
1558                        DWORD CompletionKey,
1559                        DWORD NumberOfConcurrentThreads
1560                        );
1561
1562
1563 WINBOOL
1564 STDCALL
1565 GetQueuedCompletionStatus(
1566                           HANDLE CompletionPort,
1567                           LPDWORD lpNumberOfBytesTransferred,
1568                           LPDWORD lpCompletionKey,
1569                           LPOVERLAPPED *lpOverlapped,
1570                           DWORD dwMilliseconds
1571                           );
1572
1573 UINT
1574 STDCALL
1575 SetErrorMode(
1576              UINT uMode
1577              );
1578
1579
1580 WINBOOL
1581 STDCALL
1582 ReadProcessMemory(
1583                   HANDLE hProcess,
1584                   LPCVOID lpBaseAddress,
1585                   LPVOID lpBuffer,
1586                   DWORD nSize,
1587                   LPDWORD lpNumberOfBytesRead
1588                   );
1589
1590
1591 WINBOOL
1592 STDCALL
1593 WriteProcessMemory(
1594                    HANDLE hProcess,
1595                    LPVOID lpBaseAddress,
1596                    LPVOID lpBuffer,
1597                    DWORD nSize,
1598                    LPDWORD lpNumberOfBytesWritten
1599                    );
1600
1601
1602 WINBOOL
1603 STDCALL
1604 GetThreadContext(
1605                  HANDLE hThread,
1606                  LPCONTEXT lpContext
1607                  );
1608
1609
1610 WINBOOL
1611 STDCALL
1612 SetThreadContext(
1613                  HANDLE hThread,
1614                  CONST CONTEXT *lpContext
1615                  );
1616
1617
1618 DWORD
1619 STDCALL
1620 SuspendThread(
1621               HANDLE hThread
1622               );
1623
1624
1625 DWORD
1626 STDCALL
1627 ResumeThread(
1628              HANDLE hThread
1629              );
1630
1631
1632 VOID
1633 STDCALL
1634 DebugBreak(
1635            VOID
1636            );
1637
1638
1639 WINBOOL
1640 STDCALL
1641 WaitForDebugEvent(
1642                   LPDEBUG_EVENT lpDebugEvent,
1643                   DWORD dwMilliseconds
1644                   );
1645
1646
1647 WINBOOL
1648 STDCALL
1649 ContinueDebugEvent(
1650                    DWORD dwProcessId,
1651                    DWORD dwThreadId,
1652                    DWORD dwContinueStatus
1653                    );
1654
1655
1656 WINBOOL
1657 STDCALL
1658 DebugActiveProcess(
1659                    DWORD dwProcessId
1660                    );
1661
1662
1663 VOID
1664 STDCALL
1665 InitializeCriticalSection(
1666                           LPCRITICAL_SECTION lpCriticalSection
1667                           );
1668
1669
1670 VOID
1671 STDCALL
1672 EnterCriticalSection(
1673                      LPCRITICAL_SECTION lpCriticalSection
1674                      );
1675
1676
1677 VOID
1678 STDCALL
1679 LeaveCriticalSection(
1680                      LPCRITICAL_SECTION lpCriticalSection
1681                      );
1682
1683
1684 VOID
1685 STDCALL
1686 DeleteCriticalSection(
1687                       LPCRITICAL_SECTION lpCriticalSection
1688                       );
1689
1690
1691 WINBOOL
1692 STDCALL
1693 SetEvent(
1694          HANDLE hEvent
1695          );
1696
1697
1698 WINBOOL
1699 STDCALL
1700 ResetEvent(
1701            HANDLE hEvent
1702            );
1703
1704
1705 WINBOOL
1706 STDCALL
1707 PulseEvent(
1708            HANDLE hEvent
1709            );
1710
1711
1712 WINBOOL
1713 STDCALL
1714 ReleaseSemaphore(
1715                  HANDLE hSemaphore,
1716                  LONG lReleaseCount,
1717                  LPLONG lpPreviousCount
1718                  );
1719
1720
1721 WINBOOL
1722 STDCALL
1723 ReleaseMutex(
1724              HANDLE hMutex
1725              );
1726
1727
1728 DWORD
1729 STDCALL
1730 WaitForSingleObject(
1731                     HANDLE hHandle,
1732                     DWORD dwMilliseconds
1733                     );
1734
1735
1736 DWORD
1737 STDCALL
1738 WaitForMultipleObjects(
1739                        DWORD nCount,
1740                        CONST HANDLE *lpHandles,
1741                        WINBOOL bWaitAll,
1742                        DWORD dwMilliseconds
1743                        );
1744
1745
1746 VOID
1747 STDCALL
1748 Sleep(
1749       DWORD dwMilliseconds
1750       );
1751
1752
1753 HGLOBAL
1754 STDCALL
1755 LoadResource(
1756              HINSTANCE hModule,
1757              HRSRC hResInfo
1758              );
1759
1760
1761 DWORD
1762 STDCALL
1763 SizeofResource(
1764                HINSTANCE hModule,
1765                HRSRC hResInfo
1766                );
1767
1768
1769
1770 ATOM
1771 STDCALL
1772 GlobalDeleteAtom(
1773                  ATOM nAtom
1774                  );
1775
1776
1777 WINBOOL
1778 STDCALL
1779 InitAtomTable(
1780               DWORD nSize
1781               );
1782
1783
1784 ATOM
1785 STDCALL
1786 DeleteAtom(
1787            ATOM nAtom
1788            );
1789
1790
1791 UINT
1792 STDCALL
1793 SetHandleCount(
1794                UINT uNumber
1795                );
1796
1797
1798 DWORD
1799 STDCALL
1800 GetLogicalDrives(
1801                  VOID
1802                  );
1803
1804
1805 WINBOOL
1806 STDCALL
1807 LockFile(
1808          HANDLE hFile,
1809          DWORD dwFileOffsetLow,
1810          DWORD dwFileOffsetHigh,
1811          DWORD nNumberOfBytesToLockLow,
1812          DWORD nNumberOfBytesToLockHigh
1813          );
1814
1815
1816 WINBOOL
1817 STDCALL
1818 UnlockFile(
1819            HANDLE hFile,
1820            DWORD dwFileOffsetLow,
1821            DWORD dwFileOffsetHigh,
1822            DWORD nNumberOfBytesToUnlockLow,
1823            DWORD nNumberOfBytesToUnlockHigh
1824            );
1825
1826
1827 WINBOOL
1828 STDCALL
1829 LockFileEx(
1830            HANDLE hFile,
1831            DWORD dwFlags,
1832            DWORD dwReserved,
1833            DWORD nNumberOfBytesToLockLow,
1834            DWORD nNumberOfBytesToLockHigh,
1835            LPOVERLAPPED lpOverlapped
1836            );
1837
1838 WINBOOL
1839 STDCALL
1840 UnlockFileEx(
1841              HANDLE hFile,
1842              DWORD dwReserved,
1843              DWORD nNumberOfBytesToUnlockLow,
1844              DWORD nNumberOfBytesToUnlockHigh,
1845              LPOVERLAPPED lpOverlapped
1846              );
1847
1848 WINBOOL
1849 STDCALL
1850 GetFileInformationByHandle(
1851                            HANDLE hFile,
1852                            LPBY_HANDLE_FILE_INFORMATION lpFileInformation
1853                            );
1854
1855
1856 DWORD
1857 STDCALL
1858 GetFileType(
1859             HANDLE hFile
1860             );
1861
1862
1863 DWORD
1864 STDCALL
1865 GetFileSize(
1866             HANDLE hFile,
1867             LPDWORD lpFileSizeHigh
1868             );
1869
1870
1871 HANDLE
1872 STDCALL
1873 GetStdHandle(
1874              DWORD nStdHandle
1875              );
1876
1877
1878 WINBOOL
1879 STDCALL
1880 SetStdHandle(
1881              DWORD nStdHandle,
1882              HANDLE hHandle
1883              );
1884
1885
1886 WINBOOL
1887 STDCALL
1888 WriteFile(
1889           HANDLE hFile,
1890           LPCVOID lpBuffer,
1891           DWORD nNumberOfBytesToWrite,
1892           LPDWORD lpNumberOfBytesWritten,
1893           LPOVERLAPPED lpOverlapped
1894           );
1895
1896
1897 WINBOOL
1898 STDCALL
1899 ReadFile(
1900          HANDLE hFile,
1901          LPVOID lpBuffer,
1902          DWORD nNumberOfBytesToRead,
1903          LPDWORD lpNumberOfBytesRead,
1904          LPOVERLAPPED lpOverlapped
1905          );
1906
1907
1908 WINBOOL
1909 STDCALL
1910 FlushFileBuffers(
1911                  HANDLE hFile
1912                  );
1913
1914
1915 WINBOOL
1916 STDCALL
1917 DeviceIoControl(
1918                 HANDLE hDevice,
1919                 DWORD dwIoControlCode,
1920                 LPVOID lpInBuffer,
1921                 DWORD nInBufferSize,
1922                 LPVOID lpOutBuffer,
1923                 DWORD nOutBufferSize,
1924                 LPDWORD lpBytesReturned,
1925                 LPOVERLAPPED lpOverlapped
1926                 );
1927
1928
1929 WINBOOL
1930 STDCALL
1931 SetEndOfFile(
1932              HANDLE hFile
1933              );
1934
1935
1936 DWORD
1937 STDCALL
1938 SetFilePointer(
1939                HANDLE hFile,
1940                LONG lDistanceToMove,
1941                PLONG lpDistanceToMoveHigh,
1942                DWORD dwMoveMethod
1943                );
1944
1945
1946 WINBOOL
1947 STDCALL
1948 FindClose(
1949           HANDLE hFindFile
1950           );
1951
1952
1953 WINBOOL
1954 STDCALL
1955 GetFileTime(
1956             HANDLE hFile,
1957             LPFILETIME lpCreationTime,
1958             LPFILETIME lpLastAccessTime,
1959             LPFILETIME lpLastWriteTime
1960             );
1961
1962
1963 WINBOOL
1964 STDCALL
1965 SetFileTime(
1966             HANDLE hFile,
1967             CONST FILETIME *lpCreationTime,
1968             CONST FILETIME *lpLastAccessTime,
1969             CONST FILETIME *lpLastWriteTime
1970             );
1971
1972
1973 WINBOOL
1974 STDCALL
1975 CloseHandle(
1976             HANDLE hObject
1977             );
1978
1979
1980 WINBOOL
1981 STDCALL
1982 DuplicateHandle(
1983                 HANDLE hSourceProcessHandle,
1984                 HANDLE hSourceHandle,
1985                 HANDLE hTargetProcessHandle,
1986                 LPHANDLE lpTargetHandle,
1987                 DWORD dwDesiredAccess,
1988                 WINBOOL bInheritHandle,
1989                 DWORD dwOptions
1990                 );
1991
1992
1993 WINBOOL
1994 STDCALL
1995 GetHandleInformation(
1996                      HANDLE hObject,
1997                      LPDWORD lpdwFlags
1998                      );
1999
2000
2001 WINBOOL
2002 STDCALL
2003 SetHandleInformation(
2004                      HANDLE hObject,
2005                      DWORD dwMask,
2006                      DWORD dwFlags
2007                      );
2008
2009 DWORD
2010 STDCALL
2011 LoadModule(
2012            LPCSTR lpModuleName,
2013            LPVOID lpParameterBlock
2014            );
2015
2016
2017 UINT
2018 STDCALL
2019 WinExec(
2020         LPCSTR lpCmdLine,
2021         UINT uCmdShow
2022         );
2023
2024
2025 WINBOOL
2026 STDCALL
2027 ClearCommBreak(
2028                HANDLE hFile
2029                );
2030
2031
2032 WINBOOL
2033 STDCALL
2034 ClearCommError(
2035                HANDLE hFile,
2036                LPDWORD lpErrors,
2037                LPCOMSTAT lpStat
2038                );
2039
2040
2041 WINBOOL
2042 STDCALL
2043 SetupComm(
2044           HANDLE hFile,
2045           DWORD dwInQueue,
2046           DWORD dwOutQueue
2047           );
2048
2049
2050 WINBOOL
2051 STDCALL
2052 EscapeCommFunction(
2053                    HANDLE hFile,
2054                    DWORD dwFunc
2055                    );
2056
2057
2058 WINBOOL
2059 STDCALL
2060 GetCommConfig(
2061               HANDLE hCommDev,
2062               LPCOMMCONFIG lpCC,
2063               LPDWORD lpdwSize
2064               );
2065
2066
2067 WINBOOL
2068 STDCALL
2069 GetCommMask(
2070             HANDLE hFile,
2071             LPDWORD lpEvtMask
2072             );
2073
2074
2075 WINBOOL
2076 STDCALL
2077 GetCommProperties(
2078                   HANDLE hFile,
2079                   LPCOMMPROP lpCommProp
2080                   );
2081
2082
2083 WINBOOL
2084 STDCALL
2085 GetCommModemStatus(
2086                    HANDLE hFile,
2087                    LPDWORD lpModemStat
2088                    );
2089
2090
2091 WINBOOL
2092 STDCALL
2093 GetCommState(
2094              HANDLE hFile,
2095              LPDCB lpDCB
2096              );
2097
2098
2099 WINBOOL
2100 STDCALL
2101 GetCommTimeouts(
2102                 HANDLE hFile,
2103                 LPCOMMTIMEOUTS lpCommTimeouts
2104                 );
2105
2106
2107 WINBOOL
2108 STDCALL
2109 PurgeComm(
2110           HANDLE hFile,
2111           DWORD dwFlags
2112           );
2113
2114
2115 WINBOOL
2116 STDCALL
2117 SetCommBreak(
2118              HANDLE hFile
2119              );
2120
2121
2122 WINBOOL
2123 STDCALL
2124 SetCommConfig(
2125               HANDLE hCommDev,
2126               LPCOMMCONFIG lpCC,
2127               DWORD dwSize
2128               );
2129
2130
2131 WINBOOL
2132 STDCALL
2133 SetCommMask(
2134             HANDLE hFile,
2135             DWORD dwEvtMask
2136             );
2137
2138
2139 WINBOOL
2140 STDCALL
2141 SetCommState(
2142              HANDLE hFile,
2143              LPDCB lpDCB
2144              );
2145
2146
2147 WINBOOL
2148 STDCALL
2149 SetCommTimeouts(
2150                 HANDLE hFile,
2151                 LPCOMMTIMEOUTS lpCommTimeouts
2152                 );
2153
2154
2155 WINBOOL
2156 STDCALL
2157 TransmitCommChar(
2158                  HANDLE hFile,
2159                  char cChar
2160                  );
2161
2162
2163 WINBOOL
2164 STDCALL
2165 WaitCommEvent(
2166               HANDLE hFile,
2167               LPDWORD lpEvtMask,
2168               LPOVERLAPPED lpOverlapped
2169               );
2170
2171
2172
2173 DWORD
2174 STDCALL
2175 SetTapePosition(
2176                 HANDLE hDevice,
2177                 DWORD dwPositionMethod,
2178                 DWORD dwPartition,
2179                 DWORD dwOffsetLow,
2180                 DWORD dwOffsetHigh,
2181                 WINBOOL bImmediate
2182                 );
2183
2184
2185 DWORD
2186 STDCALL
2187 GetTapePosition(
2188                 HANDLE hDevice,
2189                 DWORD dwPositionType,
2190                 LPDWORD lpdwPartition,
2191                 LPDWORD lpdwOffsetLow,
2192                 LPDWORD lpdwOffsetHigh
2193                 );
2194
2195
2196 DWORD
2197 STDCALL
2198 PrepareTape(
2199             HANDLE hDevice,
2200             DWORD dwOperation,
2201             WINBOOL bImmediate
2202             );
2203
2204 BOOL
2205 STDCALL
2206 ProcessIdToSessionId(
2207         DWORD dwProcessId,
2208         DWORD* pSessionId
2209         );
2210
2211 DWORD
2212 STDCALL
2213 EraseTape(
2214           HANDLE hDevice,
2215           DWORD dwEraseType,
2216           WINBOOL bImmediate
2217           );
2218
2219
2220 DWORD
2221 STDCALL
2222 CreateTapePartition(
2223                     HANDLE hDevice,
2224                     DWORD dwPartitionMethod,
2225                     DWORD dwCount,
2226                     DWORD dwSize
2227                     );
2228
2229
2230 DWORD
2231 STDCALL
2232 WriteTapemark(
2233               HANDLE hDevice,
2234               DWORD dwTapemarkType,
2235               DWORD dwTapemarkCount,
2236               WINBOOL bImmediate
2237               );
2238
2239
2240 DWORD
2241 STDCALL
2242 GetTapeStatus(
2243               HANDLE hDevice
2244               );
2245
2246
2247 DWORD
2248 STDCALL
2249 GetTapeParameters(
2250                   HANDLE hDevice,
2251                   DWORD dwOperation,
2252                   LPDWORD lpdwSize,
2253                   LPVOID lpTapeInformation
2254                   );
2255
2256 DWORD
2257 STDCALL
2258 SetTapeParameters(
2259                   HANDLE hDevice,
2260                   DWORD dwOperation,
2261                   LPVOID lpTapeInformation
2262                   );
2263
2264 WINBOOL
2265 STDCALL
2266 Beep(
2267      DWORD dwFreq,
2268      DWORD dwDuration
2269      );
2270
2271
2272 VOID
2273 STDCALL
2274 OpenSound(
2275           VOID
2276           );
2277
2278
2279 VOID
2280 STDCALL
2281 CloseSound(
2282            VOID
2283            );
2284
2285
2286 VOID
2287 STDCALL
2288 StartSound(
2289            VOID
2290            );
2291
2292
2293 VOID
2294 STDCALL
2295 StopSound(
2296           VOID
2297           );
2298
2299
2300 DWORD
2301 STDCALL
2302 WaitSoundState(
2303                DWORD nState
2304                );
2305
2306
2307 DWORD
2308 STDCALL
2309 SyncAllVoices(
2310               VOID
2311               );
2312
2313
2314 DWORD
2315 STDCALL
2316 CountVoiceNotes(
2317                 DWORD nVoice
2318                 );
2319
2320
2321 LPDWORD
2322 STDCALL
2323 GetThresholdEvent(
2324                   VOID
2325                   );
2326
2327
2328 DWORD
2329 STDCALL
2330 GetThresholdStatus(
2331                    VOID
2332                    );
2333
2334
2335 DWORD
2336 STDCALL
2337 SetSoundNoise(
2338               DWORD nSource,
2339               DWORD nDuration
2340               );
2341
2342
2343 DWORD
2344 STDCALL
2345 SetVoiceAccent(
2346                DWORD nVoice,
2347                DWORD nTempo,
2348                DWORD nVolume,
2349                DWORD nMode,
2350                DWORD nPitch
2351                );
2352
2353
2354 DWORD
2355 STDCALL
2356 SetVoiceEnvelope(
2357                  DWORD nVoice,
2358                  DWORD nShape,
2359                  DWORD nRepeat
2360                  );
2361
2362
2363 DWORD
2364 STDCALL
2365 SetVoiceNote(
2366              DWORD nVoice,
2367              DWORD nValue,
2368              DWORD nLength,
2369              DWORD nCdots
2370              );
2371
2372
2373 DWORD
2374 STDCALL
2375 SetVoiceQueueSize(
2376                   DWORD nVoice,
2377                   DWORD nBytes
2378                   );
2379
2380
2381 DWORD
2382 STDCALL
2383 SetVoiceSound(
2384               DWORD nVoice,
2385               DWORD Frequency,
2386               DWORD nDuration
2387               );
2388
2389
2390 DWORD
2391 STDCALL
2392 SetVoiceThreshold(
2393                   DWORD nVoice,
2394                   DWORD nNotes
2395                   );
2396
2397
2398 int
2399 STDCALL
2400 MulDiv(
2401        int nNumber,
2402        int nNumerator,
2403        int nDenominator
2404        );
2405
2406
2407 VOID
2408 STDCALL
2409 GetSystemTime(
2410               LPSYSTEMTIME lpSystemTime
2411               );
2412
2413 VOID
2414 STDCALL
2415 GetSystemTimeAsFileTime (
2416         LPFILETIME      lpSystemTimeAsFileTime 
2417         );
2418
2419 WINBOOL
2420 STDCALL
2421 SetSystemTime(
2422               CONST SYSTEMTIME *lpSystemTime
2423               );
2424
2425
2426 VOID
2427 STDCALL
2428 GetLocalTime(
2429              LPSYSTEMTIME lpSystemTime
2430              );
2431
2432
2433 WINBOOL
2434 STDCALL
2435 SetLocalTime(
2436              CONST SYSTEMTIME *lpSystemTime
2437              );
2438
2439
2440 VOID
2441 STDCALL
2442 GetSystemInfo(
2443               LPSYSTEM_INFO lpSystemInfo
2444               );
2445
2446 WINBOOL
2447 STDCALL
2448 SystemTimeToTzSpecificLocalTime(
2449                                 LPTIME_ZONE_INFORMATION lpTimeZoneInformation,
2450                                 LPSYSTEMTIME lpUniversalTime,
2451                                 LPSYSTEMTIME lpLocalTime
2452                                 );
2453
2454
2455 DWORD
2456 STDCALL
2457 GetTimeZoneInformation(
2458                        LPTIME_ZONE_INFORMATION lpTimeZoneInformation
2459                        );
2460
2461
2462 WINBOOL
2463 STDCALL
2464 SetTimeZoneInformation(
2465                        CONST TIME_ZONE_INFORMATION *lpTimeZoneInformation
2466                        );
2467
2468 WINBOOL
2469 STDCALL
2470 SystemTimeToFileTime(
2471                      CONST SYSTEMTIME *lpSystemTime,
2472                      LPFILETIME lpFileTime
2473                      );
2474
2475
2476 WINBOOL
2477 STDCALL
2478 FileTimeToLocalFileTime(
2479                         CONST FILETIME *lpFileTime,
2480                         LPFILETIME lpLocalFileTime
2481                         );
2482
2483
2484 WINBOOL
2485 STDCALL
2486 LocalFileTimeToFileTime(
2487                         CONST FILETIME *lpLocalFileTime,
2488                         LPFILETIME lpFileTime
2489                         );
2490
2491
2492 WINBOOL
2493 STDCALL
2494 FileTimeToSystemTime(
2495                      CONST FILETIME *lpFileTime,
2496                      LPSYSTEMTIME lpSystemTime
2497                      );
2498
2499
2500 LONG
2501 STDCALL
2502 CompareFileTime(
2503                 CONST FILETIME *lpFileTime1,
2504                 CONST FILETIME *lpFileTime2
2505                 );
2506
2507
2508 WINBOOL
2509 STDCALL
2510 FileTimeToDosDateTime(
2511                       CONST FILETIME *lpFileTime,
2512                       LPWORD lpFatDate,
2513                       LPWORD lpFatTime
2514                       );
2515
2516
2517 WINBOOL
2518 STDCALL
2519 DosDateTimeToFileTime(
2520                       WORD wFatDate,
2521                       WORD wFatTime,
2522                       LPFILETIME lpFileTime
2523                       );
2524
2525
2526 DWORD
2527 STDCALL
2528 GetTickCount(
2529              VOID
2530              );
2531
2532
2533 WINBOOL
2534 STDCALL
2535 SetSystemTimeAdjustment(
2536                         DWORD dwTimeAdjustment,
2537                         WINBOOL  bTimeAdjustmentDisabled
2538                         );
2539
2540
2541 WINBOOL
2542 STDCALL
2543 GetSystemTimeAdjustment(
2544                         PDWORD lpTimeAdjustment,
2545                         PDWORD lpTimeIncrement,
2546                         PWINBOOL  lpTimeAdjustmentDisabled
2547                         );
2548
2549
2550 WINBOOL
2551 STDCALL
2552 CreatePipe(
2553            PHANDLE hReadPipe,
2554            PHANDLE hWritePipe,
2555            LPSECURITY_ATTRIBUTES lpPipeAttributes,
2556            DWORD nSize
2557            );
2558
2559
2560 WINBOOL
2561 STDCALL
2562 ConnectNamedPipe(
2563                  HANDLE hNamedPipe,
2564                  LPOVERLAPPED lpOverlapped
2565                  );
2566
2567
2568 WINBOOL
2569 STDCALL
2570 DisconnectNamedPipe(
2571                     HANDLE hNamedPipe
2572                     );
2573
2574
2575 WINBOOL
2576 STDCALL
2577 SetNamedPipeHandleState(
2578                         HANDLE hNamedPipe,
2579                         LPDWORD lpMode,
2580                         LPDWORD lpMaxCollectionCount,
2581                         LPDWORD lpCollectDataTimeout
2582                         );
2583
2584
2585 WINBOOL
2586 STDCALL
2587 GetNamedPipeInfo(
2588                  HANDLE hNamedPipe,
2589                  LPDWORD lpFlags,
2590                  LPDWORD lpOutBufferSize,
2591                  LPDWORD lpInBufferSize,
2592                  LPDWORD lpMaxInstances
2593                  );
2594
2595
2596 WINBOOL
2597 STDCALL
2598 PeekNamedPipe(
2599               HANDLE hNamedPipe,
2600               LPVOID lpBuffer,
2601               DWORD nBufferSize,
2602               LPDWORD lpBytesRead,
2603               LPDWORD lpTotalBytesAvail,
2604               LPDWORD lpBytesLeftThisMessage
2605               );
2606
2607
2608 WINBOOL
2609 STDCALL
2610 TransactNamedPipe(
2611                   HANDLE hNamedPipe,
2612                   LPVOID lpInBuffer,
2613                   DWORD nInBufferSize,
2614                   LPVOID lpOutBuffer,
2615                   DWORD nOutBufferSize,
2616                   LPDWORD lpBytesRead,
2617                   LPOVERLAPPED lpOverlapped
2618                   );
2619
2620
2621
2622 WINBOOL
2623 STDCALL
2624 GetMailslotInfo(
2625                 HANDLE hMailslot,
2626                 LPDWORD lpMaxMessageSize,
2627                 LPDWORD lpNextSize,
2628                 LPDWORD lpMessageCount,
2629                 LPDWORD lpReadTimeout
2630                 );
2631
2632
2633 WINBOOL
2634 STDCALL
2635 SetMailslotInfo(
2636                 HANDLE hMailslot,
2637                 DWORD lReadTimeout
2638                 );
2639
2640
2641 LPVOID
2642 STDCALL
2643 MapViewOfFile(
2644               HANDLE hFileMappingObject,
2645               DWORD dwDesiredAccess,
2646               DWORD dwFileOffsetHigh,
2647               DWORD dwFileOffsetLow,
2648               DWORD dwNumberOfBytesToMap
2649               );
2650
2651
2652 WINBOOL
2653 STDCALL
2654 FlushViewOfFile(
2655                 LPCVOID lpBaseAddress,
2656                 DWORD dwNumberOfBytesToFlush
2657                 );
2658
2659
2660 WINBOOL
2661 STDCALL
2662 UnmapViewOfFile(
2663                 LPVOID lpBaseAddress
2664                 );
2665
2666 HFILE
2667 STDCALL
2668 OpenFile(
2669          LPCSTR lpFileName,
2670          LPOFSTRUCT lpReOpenBuff,
2671          UINT uStyle
2672          );
2673
2674
2675 HFILE
2676 STDCALL
2677 _lopen(
2678        LPCSTR lpPathName,
2679        int iReadWrite
2680        );
2681
2682
2683 HFILE
2684 STDCALL
2685 _lcreat(
2686         LPCSTR lpPathName,
2687         int  iAttribute
2688         );
2689
2690
2691 UINT
2692 STDCALL
2693 _lread(
2694        HFILE hFile,
2695        LPVOID lpBuffer,
2696        UINT uBytes
2697        );
2698
2699
2700 UINT
2701 STDCALL
2702 _lwrite(
2703         HFILE hFile,
2704         LPCSTR lpBuffer,
2705         UINT uBytes
2706         );
2707
2708
2709 long
2710 STDCALL
2711 _hread(
2712        HFILE hFile,
2713        LPVOID lpBuffer,
2714        long lBytes
2715        );
2716
2717
2718 long
2719 STDCALL
2720 _hwrite(
2721         HFILE hFile,
2722         LPCSTR lpBuffer,
2723         long lBytes
2724         );
2725
2726
2727 HFILE
2728 STDCALL
2729 _lclose(
2730         HFILE hFile
2731         );
2732
2733
2734 LONG
2735 STDCALL
2736 _llseek(
2737         HFILE hFile,
2738         LONG lOffset,
2739         int iOrigin
2740         );
2741
2742
2743 WINBOOL
2744 STDCALL
2745 IsTextUnicode(
2746               CONST LPVOID lpBuffer,
2747               int cb,
2748               LPINT lpi
2749               );
2750
2751
2752 DWORD
2753 STDCALL
2754 TlsAlloc(
2755          VOID
2756          );
2757
2758 LPVOID
2759 STDCALL
2760 TlsGetValue(
2761             DWORD dwTlsIndex
2762             );
2763
2764
2765 WINBOOL
2766 STDCALL
2767 TlsSetValue(
2768             DWORD dwTlsIndex,
2769             LPVOID lpTlsValue
2770             );
2771
2772
2773 WINBOOL
2774 STDCALL
2775 TlsFree(
2776         DWORD dwTlsIndex
2777         );
2778
2779 DWORD
2780 STDCALL
2781 SleepEx(
2782         DWORD dwMilliseconds,
2783         WINBOOL bAlertable
2784         );
2785
2786
2787 DWORD
2788 STDCALL
2789 WaitForSingleObjectEx(
2790                       HANDLE hHandle,
2791                       DWORD dwMilliseconds,
2792                       WINBOOL bAlertable
2793                       );
2794
2795
2796 DWORD
2797 STDCALL
2798 WaitForMultipleObjectsEx(
2799                          DWORD nCount,
2800                          CONST HANDLE *lpHandles,
2801                          WINBOOL bWaitAll,
2802                          DWORD dwMilliseconds,
2803                          WINBOOL bAlertable
2804                          );
2805
2806
2807 WINBOOL
2808 STDCALL
2809 ReadFileEx(
2810            HANDLE hFile,
2811            LPVOID lpBuffer,
2812            DWORD nNumberOfBytesToRead,
2813            LPOVERLAPPED lpOverlapped,
2814            LPOVERLAPPED_COMPLETION_ROUTINE lpCompletionRoutine
2815            );
2816
2817
2818 WINBOOL
2819 STDCALL
2820 WriteFileEx(
2821             HANDLE hFile,
2822             LPCVOID lpBuffer,
2823             DWORD nNumberOfBytesToWrite,
2824             LPOVERLAPPED lpOverlapped,
2825             LPOVERLAPPED_COMPLETION_ROUTINE lpCompletionRoutine
2826             );
2827
2828
2829 WINBOOL
2830 STDCALL
2831 BackupRead(
2832            HANDLE hFile,
2833            LPBYTE lpBuffer,
2834            DWORD nNumberOfBytesToRead,
2835            LPDWORD lpNumberOfBytesRead,
2836            WINBOOL bAbort,
2837            WINBOOL bProcessSecurity,
2838            LPVOID *lpContext
2839            );
2840
2841
2842 WINBOOL
2843 STDCALL
2844 BackupSeek(
2845            HANDLE hFile,
2846            DWORD  dwLowBytesToSeek,
2847            DWORD  dwHighBytesToSeek,
2848            LPDWORD lpdwLowByteSeeked,
2849            LPDWORD lpdwHighByteSeeked,
2850            LPVOID *lpContext
2851            );
2852
2853
2854 WINBOOL
2855 STDCALL
2856 BackupWrite(
2857             HANDLE hFile,
2858             LPBYTE lpBuffer,
2859             DWORD nNumberOfBytesToWrite,
2860             LPDWORD lpNumberOfBytesWritten,
2861             WINBOOL bAbort,
2862             WINBOOL bProcessSecurity,
2863             LPVOID *lpContext
2864             );
2865
2866 WINBOOL
2867 STDCALL
2868 SetProcessShutdownParameters(
2869                              DWORD dwLevel,
2870                              DWORD dwFlags
2871                              );
2872
2873
2874 WINBOOL
2875 STDCALL
2876 GetProcessShutdownParameters(
2877                              LPDWORD lpdwLevel,
2878                              LPDWORD lpdwFlags
2879                              );
2880
2881
2882 VOID
2883 STDCALL
2884 SetFileApisToOEM( VOID );
2885
2886
2887 VOID
2888 STDCALL
2889 SetFileApisToANSI( VOID );
2890
2891
2892 WINBOOL
2893 STDCALL
2894 AreFileApisANSI( VOID );
2895
2896 WINBOOL
2897 STDCALL
2898 CloseEventLog (
2899                HANDLE hEventLog
2900                 );
2901
2902
2903 WINBOOL
2904 STDCALL
2905 DeregisterEventSource (
2906                        HANDLE hEventLog
2907                         );
2908
2909
2910 WINBOOL
2911 STDCALL
2912 NotifyChangeEventLog (
2913                       HANDLE hEventLog,
2914                       HANDLE hEvent
2915                        );
2916
2917
2918 WINBOOL
2919 STDCALL
2920 GetNumberOfEventLogRecords (
2921                             HANDLE hEventLog,
2922                             PDWORD NumberOfRecords
2923                              );
2924
2925
2926 WINBOOL
2927 STDCALL
2928 GetOldestEventLogRecord (
2929                          HANDLE hEventLog,
2930                          PDWORD OldestRecord
2931                           );
2932
2933 WINBOOL
2934 STDCALL
2935 DuplicateToken(
2936                HANDLE ExistingTokenHandle,
2937                SECURITY_IMPERSONATION_LEVEL ImpersonationLevel,
2938                PHANDLE DuplicateTokenHandle
2939                );
2940
2941
2942 WINBOOL
2943 STDCALL
2944 GetKernelObjectSecurity (
2945                          HANDLE Handle,
2946                          SECURITY_INFORMATION RequestedInformation,
2947                          PSECURITY_DESCRIPTOR pSecurityDescriptor,
2948                          DWORD nLength,
2949                          LPDWORD lpnLengthNeeded
2950                           );
2951
2952
2953 WINBOOL
2954 STDCALL
2955 ImpersonateNamedPipeClient(
2956                            HANDLE hNamedPipe
2957                            );
2958
2959
2960 WINBOOL
2961 STDCALL
2962 ImpersonateLoggedOnUser(
2963                            HANDLE hToken
2964                            );
2965
2966
2967 WINBOOL
2968 STDCALL
2969 ImpersonateSelf(
2970                 SECURITY_IMPERSONATION_LEVEL ImpersonationLevel
2971                 );
2972
2973
2974
2975 WINBOOL
2976 STDCALL
2977 RevertToSelf (
2978               VOID
2979                );
2980
2981
2982 WINBOOL
2983 STDCALL
2984 SetThreadToken (
2985                 PHANDLE Thread,
2986                 HANDLE Token
2987                  );
2988
2989
2990 WINBOOL
2991 STDCALL
2992 AccessCheck (
2993              PSECURITY_DESCRIPTOR pSecurityDescriptor,
2994              HANDLE ClientToken,
2995              DWORD DesiredAccess,
2996              PGENERIC_MAPPING GenericMapping,
2997              PPRIVILEGE_SET PrivilegeSet,
2998              LPDWORD PrivilegeSetLength,
2999              LPDWORD GrantedAccess,
3000              LPBOOL AccessStatus
3001               );
3002
3003
3004
3005 WINBOOL
3006 STDCALL
3007 OpenProcessToken (
3008                   HANDLE ProcessHandle,
3009                   DWORD DesiredAccess,
3010                   PHANDLE TokenHandle
3011                    );
3012
3013
3014
3015 WINBOOL
3016 STDCALL
3017 OpenThreadToken (
3018                  HANDLE ThreadHandle,
3019                  DWORD DesiredAccess,
3020                  WINBOOL OpenAsSelf,
3021                  PHANDLE TokenHandle
3022                   );
3023
3024
3025
3026 WINBOOL
3027 STDCALL
3028 GetTokenInformation (
3029                      HANDLE TokenHandle,
3030                      TOKEN_INFORMATION_CLASS TokenInformationClass,
3031                      LPVOID TokenInformation,
3032                      DWORD TokenInformationLength,
3033                      PDWORD ReturnLength
3034                       );
3035
3036
3037
3038 WINBOOL
3039 STDCALL
3040 SetTokenInformation (
3041                      HANDLE TokenHandle,
3042                      TOKEN_INFORMATION_CLASS TokenInformationClass,
3043                      LPVOID TokenInformation,
3044                      DWORD TokenInformationLength
3045                       );
3046
3047
3048
3049 WINBOOL
3050 STDCALL
3051 AdjustTokenPrivileges (
3052                        HANDLE TokenHandle,
3053                        WINBOOL DisableAllPrivileges,
3054                        PTOKEN_PRIVILEGES NewState,
3055                        DWORD BufferLength,
3056                        PTOKEN_PRIVILEGES PreviousState,
3057                        PDWORD ReturnLength
3058                         );
3059
3060
3061
3062 WINBOOL
3063 STDCALL
3064 AdjustTokenGroups (
3065                    HANDLE TokenHandle,
3066                    WINBOOL ResetToDefault,
3067                    PTOKEN_GROUPS NewState,
3068                    DWORD BufferLength,
3069                    PTOKEN_GROUPS PreviousState,
3070                    PDWORD ReturnLength
3071                     );
3072
3073
3074
3075 WINBOOL
3076 STDCALL
3077 PrivilegeCheck (
3078                 HANDLE ClientToken,
3079                 PPRIVILEGE_SET RequiredPrivileges,
3080                 LPBOOL pfResult
3081                  );
3082
3083
3084
3085 WINBOOL
3086 STDCALL
3087 IsValidSid (
3088             PSID pSid
3089              );
3090
3091
3092
3093 WINBOOL
3094 STDCALL
3095 EqualSid (
3096           PSID pSid1,
3097           PSID pSid2
3098            );
3099
3100
3101
3102 WINBOOL
3103 STDCALL
3104 EqualPrefixSid (
3105                 PSID pSid1,
3106                 PSID pSid2
3107                  );
3108
3109
3110
3111 DWORD
3112 STDCALL
3113 GetSidLengthRequired (
3114                       UCHAR nSubAuthorityCount
3115                        );
3116
3117
3118
3119 WINBOOL
3120 STDCALL
3121 AllocateAndInitializeSid (
3122                           PSID_IDENTIFIER_AUTHORITY pIdentifierAuthority,
3123                           BYTE nSubAuthorityCount,
3124                           DWORD nSubAuthority0,
3125                           DWORD nSubAuthority1,
3126                           DWORD nSubAuthority2,
3127                           DWORD nSubAuthority3,
3128                           DWORD nSubAuthority4,
3129                           DWORD nSubAuthority5,
3130                           DWORD nSubAuthority6,
3131                           DWORD nSubAuthority7,
3132                           PSID *pSid
3133                            );
3134
3135
3136 PVOID
3137 STDCALL
3138 FreeSid(
3139         PSID pSid
3140         );
3141
3142
3143 WINBOOL
3144 STDCALL
3145 InitializeSid (
3146                PSID Sid,
3147                PSID_IDENTIFIER_AUTHORITY pIdentifierAuthority,
3148                BYTE nSubAuthorityCount
3149                 );
3150
3151
3152
3153 PSID_IDENTIFIER_AUTHORITY
3154 STDCALL
3155 GetSidIdentifierAuthority (
3156                            PSID pSid
3157                             );
3158
3159
3160
3161 PDWORD
3162 STDCALL
3163 GetSidSubAuthority (
3164                     PSID pSid,
3165                     DWORD nSubAuthority
3166                      );
3167
3168
3169
3170 PUCHAR
3171 STDCALL
3172 GetSidSubAuthorityCount (
3173                          PSID pSid
3174                           );
3175
3176
3177
3178 DWORD
3179 STDCALL
3180 GetLengthSid (
3181               PSID pSid
3182                );
3183
3184
3185
3186 WINBOOL
3187 STDCALL
3188 CopySid (
3189          DWORD nDestinationSidLength,
3190          PSID pDestinationSid,
3191          PSID pSourceSid
3192           );
3193
3194
3195
3196 WINBOOL
3197 STDCALL
3198 AreAllAccessesGranted (
3199                        DWORD GrantedAccess,
3200                        DWORD DesiredAccess
3201                         );
3202
3203
3204
3205 WINBOOL
3206 STDCALL
3207 AreAnyAccessesGranted (
3208                        DWORD GrantedAccess,
3209                        DWORD DesiredAccess
3210                         );
3211
3212
3213
3214 VOID
3215 STDCALL
3216 MapGenericMask (
3217                 PDWORD AccessMask,
3218                 PGENERIC_MAPPING GenericMapping
3219                  );
3220
3221
3222
3223 WINBOOL
3224 STDCALL
3225 IsValidAcl (
3226             PACL pAcl
3227              );
3228
3229
3230
3231 WINBOOL
3232 STDCALL
3233 InitializeAcl (
3234                PACL pAcl,
3235                DWORD nAclLength,
3236                DWORD dwAclRevision
3237                 );
3238
3239
3240
3241 WINBOOL
3242 STDCALL
3243 GetAclInformation (
3244                    PACL pAcl,
3245                    LPVOID pAclInformation,
3246                    DWORD nAclInformationLength,
3247                    ACL_INFORMATION_CLASS dwAclInformationClass
3248                     );
3249
3250
3251
3252 WINBOOL
3253 STDCALL
3254 SetAclInformation (
3255                    PACL pAcl,
3256                    LPVOID pAclInformation,
3257                    DWORD nAclInformationLength,
3258                    ACL_INFORMATION_CLASS dwAclInformationClass
3259                     );
3260
3261
3262
3263 WINBOOL
3264 STDCALL
3265 AddAce (
3266         PACL pAcl,
3267         DWORD dwAceRevision,
3268         DWORD dwStartingAceIndex,
3269         LPVOID pAceList,
3270         DWORD nAceListLength
3271          );
3272
3273
3274
3275 WINBOOL
3276 STDCALL
3277 DeleteAce (
3278            PACL pAcl,
3279            DWORD dwAceIndex
3280             );
3281
3282
3283
3284 WINBOOL
3285 STDCALL
3286 GetAce (
3287         PACL pAcl,
3288         DWORD dwAceIndex,
3289         LPVOID *pAce
3290          );
3291
3292
3293
3294 WINBOOL
3295 STDCALL
3296 AddAccessAllowedAce (
3297                      PACL pAcl,
3298                      DWORD dwAceRevision,
3299                      DWORD AccessMask,
3300                      PSID pSid
3301                       );
3302
3303
3304
3305 WINBOOL
3306 STDCALL
3307 AddAccessDeniedAce (
3308                     PACL pAcl,
3309                     DWORD dwAceRevision,
3310                     DWORD AccessMask,
3311                     PSID pSid
3312                      );
3313
3314
3315
3316 WINBOOL
3317 STDCALL
3318 AddAuditAccessAce(
3319                   PACL pAcl,
3320                   DWORD dwAceRevision,
3321                   DWORD dwAccessMask,
3322                   PSID pSid,
3323                   WINBOOL bAuditSuccess,
3324                   WINBOOL bAuditFailure
3325                   );
3326
3327
3328
3329 WINBOOL
3330 STDCALL
3331 FindFirstFreeAce (
3332                   PACL pAcl,
3333                   LPVOID *pAce
3334                    );
3335
3336
3337
3338 WINBOOL
3339 STDCALL
3340 InitializeSecurityDescriptor (
3341                               PSECURITY_DESCRIPTOR pSecurityDescriptor,
3342                               DWORD dwRevision
3343                                );
3344
3345
3346
3347 WINBOOL
3348 STDCALL
3349 IsValidSecurityDescriptor (
3350                            PSECURITY_DESCRIPTOR pSecurityDescriptor
3351                             );
3352
3353
3354
3355 DWORD
3356 STDCALL
3357 GetSecurityDescriptorLength (
3358                              PSECURITY_DESCRIPTOR pSecurityDescriptor
3359                               );
3360
3361
3362
3363 WINBOOL
3364 STDCALL
3365 GetSecurityDescriptorControl (
3366                               PSECURITY_DESCRIPTOR pSecurityDescriptor,
3367                               PSECURITY_DESCRIPTOR_CONTROL pControl,
3368                               LPDWORD lpdwRevision
3369                                );
3370
3371
3372
3373 WINBOOL
3374 STDCALL
3375 SetSecurityDescriptorDacl (
3376                            PSECURITY_DESCRIPTOR pSecurityDescriptor,
3377                            WINBOOL bDaclPresent,
3378                            PACL pDacl,
3379                            WINBOOL bDaclDefaulted
3380                             );
3381
3382
3383
3384 WINBOOL
3385 STDCALL
3386 GetSecurityDescriptorDacl (
3387                            PSECURITY_DESCRIPTOR pSecurityDescriptor,
3388                            LPBOOL lpbDaclPresent,
3389                            PACL *pDacl,
3390                            LPBOOL lpbDaclDefaulted
3391                             );
3392
3393
3394
3395 WINBOOL
3396 STDCALL
3397 SetSecurityDescriptorSacl (
3398                            PSECURITY_DESCRIPTOR pSecurityDescriptor,
3399                            WINBOOL bSaclPresent,
3400                            PACL pSacl,
3401                            WINBOOL bSaclDefaulted
3402                             );
3403
3404
3405
3406 WINBOOL
3407 STDCALL
3408 GetSecurityDescriptorSacl (
3409                            PSECURITY_DESCRIPTOR pSecurityDescriptor,
3410                            LPBOOL lpbSaclPresent,
3411                            PACL *pSacl,
3412                            LPBOOL lpbSaclDefaulted
3413                             );
3414
3415
3416
3417 WINBOOL
3418 STDCALL
3419 SetSecurityDescriptorOwner (
3420                             PSECURITY_DESCRIPTOR pSecurityDescriptor,
3421                             PSID pOwner,
3422                             WINBOOL bOwnerDefaulted
3423                              );
3424
3425
3426
3427 WINBOOL
3428 STDCALL
3429 GetSecurityDescriptorOwner (
3430                             PSECURITY_DESCRIPTOR pSecurityDescriptor,
3431                             PSID *pOwner,
3432                             LPBOOL lpbOwnerDefaulted
3433                              );
3434
3435
3436
3437 WINBOOL
3438 STDCALL
3439 SetSecurityDescriptorGroup (
3440                             PSECURITY_DESCRIPTOR pSecurityDescriptor,
3441                             PSID pGroup,
3442                             WINBOOL bGroupDefaulted
3443                              );
3444
3445
3446
3447 WINBOOL
3448 STDCALL
3449 GetSecurityDescriptorGroup (
3450                             PSECURITY_DESCRIPTOR pSecurityDescriptor,
3451                             PSID *pGroup,
3452                             LPBOOL lpbGroupDefaulted
3453                              );
3454
3455
3456
3457 WINBOOL
3458 STDCALL
3459 CreatePrivateObjectSecurity (
3460                              PSECURITY_DESCRIPTOR ParentDescriptor,
3461                              PSECURITY_DESCRIPTOR CreatorDescriptor,
3462                              PSECURITY_DESCRIPTOR * NewDescriptor,
3463                              WINBOOL IsDirectoryObject,
3464                              HANDLE Token,
3465                              PGENERIC_MAPPING GenericMapping
3466                               );
3467
3468
3469
3470 WINBOOL
3471 STDCALL
3472 SetPrivateObjectSecurity (
3473                           SECURITY_INFORMATION SecurityInformation,
3474                           PSECURITY_DESCRIPTOR ModificationDescriptor,
3475                           PSECURITY_DESCRIPTOR *ObjectsSecurityDescriptor,
3476                           PGENERIC_MAPPING GenericMapping,
3477                           HANDLE Token
3478                            );
3479
3480
3481
3482 WINBOOL
3483 STDCALL
3484 GetPrivateObjectSecurity (
3485                           PSECURITY_DESCRIPTOR ObjectDescriptor,
3486                           SECURITY_INFORMATION SecurityInformation,
3487                           PSECURITY_DESCRIPTOR ResultantDescriptor,
3488                           DWORD DescriptorLength,
3489                           PDWORD ReturnLength
3490                            );
3491
3492
3493
3494 WINBOOL
3495 STDCALL
3496 DestroyPrivateObjectSecurity (
3497                               PSECURITY_DESCRIPTOR * ObjectDescriptor
3498                                );
3499
3500
3501
3502 WINBOOL
3503 STDCALL
3504 MakeSelfRelativeSD (
3505                     PSECURITY_DESCRIPTOR pAbsoluteSecurityDescriptor,
3506                     PSECURITY_DESCRIPTOR pSelfRelativeSecurityDescriptor,
3507                     LPDWORD lpdwBufferLength
3508                      );
3509
3510
3511
3512 WINBOOL
3513 STDCALL
3514 MakeAbsoluteSD (
3515                 PSECURITY_DESCRIPTOR pSelfRelativeSecurityDescriptor,
3516                 PSECURITY_DESCRIPTOR pAbsoluteSecurityDescriptor,
3517                 LPDWORD lpdwAbsoluteSecurityDescriptorSize,
3518                 PACL pDacl,
3519                 LPDWORD lpdwDaclSize,
3520                 PACL pSacl,
3521                 LPDWORD lpdwSaclSize,
3522                 PSID pOwner,
3523                 LPDWORD lpdwOwnerSize,
3524                 PSID pPrimaryGroup,
3525                 LPDWORD lpdwPrimaryGroupSize
3526                  );
3527
3528
3529
3530 WINBOOL
3531 STDCALL
3532 SetKernelObjectSecurity (
3533                          HANDLE Handle,
3534                          SECURITY_INFORMATION SecurityInformation,
3535                          PSECURITY_DESCRIPTOR SecurityDescriptor
3536                           );
3537
3538
3539 WINBOOL
3540 STDCALL
3541 FindNextChangeNotification(
3542                            HANDLE hChangeHandle
3543                            );
3544
3545
3546 WINBOOL
3547 STDCALL
3548 FindCloseChangeNotification(
3549                             HANDLE hChangeHandle
3550                             );
3551
3552
3553 WINBOOL
3554 STDCALL
3555 VirtualLock(
3556             LPVOID lpAddress,
3557             DWORD dwSize
3558             );
3559
3560
3561 WINBOOL
3562 STDCALL
3563 VirtualUnlock(
3564               LPVOID lpAddress,
3565               DWORD dwSize
3566               );
3567
3568
3569 LPVOID
3570 STDCALL
3571 MapViewOfFileEx(
3572                 HANDLE hFileMappingObject,
3573                 DWORD dwDesiredAccess,
3574                 DWORD dwFileOffsetHigh,
3575                 DWORD dwFileOffsetLow,
3576                 DWORD dwNumberOfBytesToMap,
3577                 LPVOID lpBaseAddress
3578                 );
3579
3580
3581 WINBOOL
3582 STDCALL
3583 SetPriorityClass(
3584                  HANDLE hProcess,
3585                  DWORD dwPriorityClass
3586                  );
3587
3588
3589 DWORD
3590 STDCALL
3591 GetPriorityClass(
3592                  HANDLE hProcess
3593                  );
3594
3595
3596 WINBOOL
3597 STDCALL
3598 IsBadReadPtr(
3599              CONST VOID *lp,
3600              UINT ucb
3601              );
3602
3603
3604 WINBOOL
3605 STDCALL
3606 IsBadWritePtr(
3607               LPVOID lp,
3608               UINT ucb
3609               );
3610
3611
3612 WINBOOL
3613 STDCALL
3614 IsBadHugeReadPtr(
3615                  CONST VOID *lp,
3616                  UINT ucb
3617                  );
3618
3619
3620 WINBOOL
3621 STDCALL
3622 IsBadHugeWritePtr(
3623                   LPVOID lp,
3624                   UINT ucb
3625                   );
3626
3627
3628 WINBOOL
3629 STDCALL
3630 IsBadCodePtr(
3631              FARPROC lpfn
3632              );
3633
3634 WINBOOL
3635 STDCALL
3636 AllocateLocallyUniqueId(
3637                         PLUID Luid
3638                         );
3639
3640
3641 WINBOOL
3642 STDCALL
3643 QueryPerformanceCounter(
3644                         LARGE_INTEGER *lpPerformanceCount
3645                         );
3646
3647
3648 WINBOOL
3649 STDCALL
3650 QueryPerformanceFrequency(
3651                           LARGE_INTEGER *lpFrequency
3652                           );
3653
3654 VOID
3655 STDCALL
3656 MoveMemory (
3657             PVOID Destination,
3658             CONST VOID *Source,
3659             DWORD Length
3660              );
3661
3662 VOID
3663 STDCALL
3664 FillMemory (
3665             PVOID Destination,
3666             DWORD Length,
3667             BYTE  Fill
3668              );
3669
3670 VOID
3671 STDCALL
3672 ZeroMemory (
3673             PVOID Destination,
3674             DWORD Length
3675              );
3676
3677 /* The memory functions don't seem to be defined in the libraries, so
3678    define macro versions as well.  */
3679 #define MoveMemory(t, s, c) memmove ((t), (s), (c))
3680 #define FillMemory(p, c, v) memset ((p), (v), (c))
3681 #define ZeroMemory(p, c) memset ((p), 0, (c))
3682
3683 #ifdef WINNT351
3684 WINBOOL
3685 STDCALL
3686 ActivateKeyboardLayout(
3687                        HKL hkl,
3688                        UINT Flags);
3689 #else
3690 HKL
3691 STDCALL
3692 ActivateKeyboardLayout(
3693                        HKL hkl,
3694                        UINT Flags);
3695 #endif /* WIN95 */
3696
3697  
3698 int
3699 STDCALL
3700 ToUnicodeEx(
3701             UINT wVirtKey,
3702             UINT wScanCode,
3703             PBYTE lpKeyState,
3704             LPWSTR pwszBuff,
3705             int cchBuff,
3706             UINT wFlags,
3707             HKL dwhkl);
3708
3709  
3710 WINBOOL
3711 STDCALL
3712 UnloadKeyboardLayout(
3713                      HKL hkl);
3714
3715  
3716 UINT
3717 STDCALL
3718 GetKeyboardLayoutList(
3719                       int nBuff,
3720                       HKL *lpList);
3721
3722  
3723 HKL
3724 STDCALL
3725 GetKeyboardLayout(
3726                   DWORD dwLayout
3727                   );
3728
3729  
3730 HDESK
3731 STDCALL
3732 OpenInputDesktop(
3733                  DWORD dwFlags,
3734                  WINBOOL fInherit,
3735                  DWORD dwDesiredAccess);
3736
3737 WINBOOL
3738 STDCALL
3739 EnumDesktopWindows(
3740                    HDESK hDesktop,
3741                    ENUMWINDOWSPROC lpfn,
3742                    LPARAM lParam);
3743
3744  
3745 WINBOOL
3746 STDCALL
3747 SwitchDesktop(
3748               HDESK hDesktop);
3749
3750  
3751 WINBOOL
3752 STDCALL
3753 SetThreadDesktop(
3754                  HDESK hDesktop);
3755
3756  
3757 WINBOOL
3758 STDCALL
3759 CloseDesktop(
3760              HDESK hDesktop);
3761
3762  
3763 HDESK
3764 STDCALL
3765 GetThreadDesktop(
3766                  DWORD dwThreadId);
3767
3768  
3769 WINBOOL
3770 STDCALL
3771 CloseWindowStation(
3772                    HWINSTA hWinSta);
3773
3774  
3775 WINBOOL
3776 STDCALL
3777 SetProcessWindowStation(
3778                         HWINSTA hWinSta);
3779
3780  
3781 HWINSTA
3782 STDCALL
3783 GetProcessWindowStation(
3784                         VOID);
3785
3786  
3787 WINBOOL
3788 STDCALL
3789 SetUserObjectSecurity(
3790                       HANDLE hObj,
3791                       PSECURITY_INFORMATION pSIRequested,
3792                       PSECURITY_DESCRIPTOR pSID);
3793
3794  
3795 WINBOOL
3796 STDCALL
3797 GetUserObjectSecurity(
3798                       HANDLE hObj,
3799                       PSECURITY_INFORMATION pSIRequested,
3800                       PSECURITY_DESCRIPTOR pSID,
3801                       DWORD nLength,
3802                       LPDWORD lpnLengthNeeded);
3803
3804  
3805 WINBOOL
3806 STDCALL
3807 TranslateMessage(
3808                  CONST MSG *lpMsg);
3809
3810 WINBOOL
3811 STDCALL
3812 SetMessageQueue(
3813                 int cMessagesMax);
3814
3815 WINBOOL
3816 STDCALL
3817 RegisterHotKey(
3818                HWND hWnd ,
3819                int anID,
3820                UINT fsModifiers,
3821                UINT vk);
3822
3823  
3824 WINBOOL
3825 STDCALL
3826 UnregisterHotKey(
3827                  HWND hWnd,
3828                  int anID);
3829
3830  
3831 WINBOOL
3832 STDCALL
3833 ExitWindowsEx(
3834               UINT uFlags,
3835               DWORD dwReserved);
3836
3837  
3838 WINBOOL
3839 STDCALL
3840 SwapMouseButton(
3841                 WINBOOL fSwap);
3842
3843  
3844 DWORD
3845 STDCALL
3846 GetMessagePos(
3847               VOID);
3848
3849  
3850 LONG
3851 STDCALL
3852 GetMessageTime(
3853                VOID);
3854
3855  
3856 LPARAM
3857 STDCALL
3858 GetMessageExtraInfo(
3859                     VOID);
3860
3861  
3862 LPARAM
3863 STDCALL
3864 SetMessageExtraInfo(
3865                     LPARAM lParam);
3866
3867  
3868 long  
3869 STDCALL  
3870 BroadcastSystemMessage(
3871                        DWORD, 
3872                        LPDWORD, 
3873                        UINT, 
3874                        WPARAM, 
3875                        LPARAM);
3876
3877 WINBOOL
3878 STDCALL
3879 AttachThreadInput(
3880                   DWORD idAttach,
3881                   DWORD idAttachTo,
3882                   WINBOOL fAttach);
3883
3884  
3885 WINBOOL
3886 STDCALL
3887 ReplyMessage(
3888              LRESULT lResult);
3889
3890  
3891 WINBOOL
3892 STDCALL
3893 WaitMessage(
3894             VOID);
3895
3896  
3897 DWORD
3898 STDCALL
3899 WaitForInputIdle(
3900                  HANDLE hProcess,
3901                  DWORD dwMilliseconds);
3902
3903  
3904 VOID
3905 STDCALL
3906 PostQuitMessage(
3907                 int nExitCode);
3908
3909 WINBOOL
3910 STDCALL
3911 InSendMessage(
3912               VOID);
3913
3914  
3915 UINT
3916 STDCALL
3917 GetDoubleClickTime(
3918                    VOID);
3919
3920  
3921 WINBOOL
3922 STDCALL
3923 SetDoubleClickTime(
3924                    UINT);
3925
3926  
3927 WINBOOL
3928 STDCALL
3929 IsWindow(
3930          HWND hWnd);
3931
3932  
3933 WINBOOL
3934 STDCALL
3935 IsMenu(
3936        HMENU hMenu);
3937
3938  
3939 WINBOOL
3940 STDCALL
3941 IsChild(
3942         HWND hWndParent,
3943         HWND hWnd);
3944
3945  
3946 WINBOOL
3947 STDCALL
3948 DestroyWindow(
3949               HWND hWnd);
3950
3951  
3952 WINBOOL
3953 STDCALL
3954 ShowWindow(
3955            HWND hWnd,
3956            int nCmdShow);
3957
3958  
3959 WINBOOL
3960 STDCALL
3961 ShowWindowAsync(
3962                 HWND hWnd,
3963                 int nCmdShow);
3964
3965  
3966 WINBOOL
3967 STDCALL
3968 FlashWindow(
3969             HWND hWnd,
3970             WINBOOL bInvert);
3971
3972  
3973 WINBOOL
3974 STDCALL
3975 ShowOwnedPopups(
3976                 HWND hWnd,
3977                 WINBOOL fShow);
3978
3979  
3980 WINBOOL
3981 STDCALL
3982 OpenIcon(
3983          HWND hWnd);
3984
3985  
3986 WINBOOL
3987 STDCALL
3988 CloseWindow(
3989             HWND hWnd);
3990
3991  
3992 WINBOOL
3993 STDCALL
3994 MoveWindow(
3995            HWND hWnd,
3996            int X,
3997            int Y,
3998            int nWidth,
3999            int nHeight,
4000            WINBOOL bRepaint);
4001
4002  
4003 WINBOOL
4004 STDCALL
4005 SetWindowPos(
4006              HWND hWnd,
4007              HWND hWndInsertAfter ,
4008              int X,
4009              int Y,
4010              int cx,
4011              int cy,
4012              UINT uFlags);
4013
4014  
4015 WINBOOL
4016 STDCALL
4017 GetWindowPlacement(
4018                    HWND hWnd,
4019                    WINDOWPLACEMENT *lpwndpl);
4020
4021  
4022 WINBOOL
4023 STDCALL
4024 SetWindowPlacement(
4025                    HWND hWnd,
4026                    CONST WINDOWPLACEMENT *lpwndpl);
4027
4028  
4029 HDWP
4030 STDCALL
4031 BeginDeferWindowPos(
4032                     int nNumWindows);
4033
4034  
4035 HDWP
4036 STDCALL
4037 DeferWindowPos(
4038                HDWP hWinPosInfo,
4039                HWND hWnd,
4040                HWND hWndInsertAfter,
4041                int x,
4042                int y,
4043                int cx,
4044                int cy,
4045                UINT uFlags);
4046
4047  
4048 WINBOOL
4049 STDCALL
4050 EndDeferWindowPos(
4051                   HDWP hWinPosInfo);
4052
4053  
4054 WINBOOL
4055 STDCALL
4056 IsWindowVisible(
4057                 HWND hWnd);
4058
4059  
4060 WINBOOL
4061 STDCALL
4062 IsIconic(
4063          HWND hWnd);
4064
4065  
4066 WINBOOL
4067 STDCALL
4068 AnyPopup(
4069          VOID);
4070
4071  
4072 WINBOOL
4073 STDCALL
4074 BringWindowToTop(
4075                  HWND hWnd);
4076
4077  
4078 WINBOOL
4079 STDCALL
4080 IsZoomed(
4081          HWND hWnd);
4082
4083  
4084 WINBOOL
4085 STDCALL
4086 EndDialog(
4087           HWND hDlg,
4088           int nResult);
4089
4090  
4091 HWND
4092 STDCALL
4093 GetDlgItem(
4094            HWND hDlg,
4095            int nIDDlgItem);
4096
4097  
4098 WINBOOL
4099 STDCALL
4100 SetDlgItemInt(
4101               HWND hDlg,
4102               int nIDDlgItem,
4103               UINT uValue,
4104               WINBOOL bSigned);
4105
4106  
4107 UINT
4108 STDCALL
4109 GetDlgItemInt(
4110               HWND hDlg,
4111               int nIDDlgItem,
4112               WINBOOL *lpTranslated,
4113               WINBOOL bSigned);
4114
4115  
4116 WINBOOL
4117 STDCALL
4118 CheckDlgButton(
4119                HWND hDlg,
4120                int nIDButton,
4121                UINT uCheck);
4122
4123  
4124 WINBOOL
4125 STDCALL
4126 CheckRadioButton(
4127                  HWND hDlg,
4128                  int nIDFirstButton,
4129                  int nIDLastButton,
4130                  int nIDCheckButton);
4131
4132  
4133 UINT
4134 STDCALL
4135 IsDlgButtonChecked(
4136                    HWND hDlg,
4137                    int nIDButton);
4138
4139  
4140 HWND
4141 STDCALL
4142 GetNextDlgGroupItem(
4143                     HWND hDlg,
4144                     HWND hCtl,
4145                     WINBOOL bPrevious);
4146
4147  
4148 HWND
4149 STDCALL
4150 GetNextDlgTabItem(
4151                   HWND hDlg,
4152                   HWND hCtl,
4153                   WINBOOL bPrevious);
4154
4155  
4156 int
4157 STDCALL
4158 GetDlgCtrlID(
4159              HWND hWnd);
4160
4161  
4162 LONG
4163 STDCALL
4164 GetDialogBaseUnits(VOID);
4165
4166 WINBOOL
4167 STDCALL
4168 OpenClipboard(
4169               HWND hWndNewOwner);
4170
4171  
4172 WINBOOL
4173 STDCALL
4174 CloseClipboard(
4175                VOID);
4176
4177  
4178 HWND
4179 STDCALL
4180 GetClipboardOwner(
4181                   VOID);
4182
4183  
4184 HWND
4185 STDCALL
4186 SetClipboardViewer(
4187                    HWND hWndNewViewer);
4188
4189  
4190 HWND
4191 STDCALL
4192 GetClipboardViewer(
4193                    VOID);
4194
4195  
4196 WINBOOL
4197 STDCALL
4198 ChangeClipboardChain(
4199                      HWND hWndRemove,
4200                      HWND hWndNewNext);
4201
4202  
4203 HANDLE
4204 STDCALL
4205 SetClipboardData(
4206                  UINT uFormat,
4207                  HANDLE hMem);
4208
4209  
4210 HANDLE
4211 STDCALL
4212 GetClipboardData(
4213                  UINT uFormat);
4214
4215  
4216  
4217 int
4218 STDCALL
4219 CountClipboardFormats(
4220                       VOID);
4221
4222  
4223 UINT
4224 STDCALL
4225 EnumClipboardFormats(
4226                      UINT format);
4227
4228  
4229 WINBOOL
4230 STDCALL
4231 EmptyClipboard(
4232                VOID);
4233
4234  
4235 WINBOOL
4236 STDCALL
4237 IsClipboardFormatAvailable(
4238                            UINT format);
4239
4240  
4241 int
4242 STDCALL
4243 GetPriorityClipboardFormat(
4244                            UINT *paFormatPriorityList,
4245                            int cFormats);
4246
4247  
4248 HWND
4249 STDCALL
4250 GetOpenClipboardWindow(
4251                        VOID);
4252
4253  
4254 /* Despite the A these are ASCII functions! */
4255 LPSTR
4256 STDCALL
4257 CharNextExA(
4258             WORD CodePage,
4259             LPCSTR lpCurrentChar,
4260             DWORD dwFlags);
4261
4262  
4263 LPSTR
4264 STDCALL
4265 CharPrevExA(
4266             WORD CodePage,
4267             LPCSTR lpStart,
4268             LPCSTR lpCurrentChar,
4269             DWORD dwFlags);
4270
4271  
4272 HWND
4273 STDCALL
4274 SetFocus(
4275          HWND hWnd);
4276
4277  
4278 HWND
4279 STDCALL
4280 GetActiveWindow(
4281                 VOID);
4282
4283  
4284 HWND
4285 STDCALL
4286 GetFocus(
4287          VOID);
4288
4289  
4290 UINT
4291 STDCALL
4292 GetKBCodePage(
4293               VOID);
4294
4295  
4296 SHORT
4297 STDCALL
4298 GetKeyState(
4299             int nVirtKey);
4300
4301  
4302 SHORT
4303 STDCALL
4304 GetAsyncKeyState(
4305                  int vKey);
4306
4307  
4308 WINBOOL
4309 STDCALL
4310 GetKeyboardState(
4311                  PBYTE lpKeyState);
4312
4313  
4314 WINBOOL
4315 STDCALL
4316 SetKeyboardState(
4317                  LPBYTE lpKeyState);
4318
4319  
4320 int
4321 STDCALL
4322 GetKeyboardType(
4323                 int nTypeFlag);
4324
4325  
4326 int
4327 STDCALL
4328 ToAscii(
4329         UINT uVirtKey,
4330         UINT uScanCode,
4331         PBYTE lpKeyState,
4332         LPWORD lpChar,
4333         UINT uFlags);
4334
4335  
4336 int
4337 STDCALL
4338 ToAsciiEx(
4339           UINT uVirtKey,
4340           UINT uScanCode,
4341           PBYTE lpKeyState,
4342           LPWORD lpChar,
4343           UINT uFlags,
4344           HKL dwhkl);
4345
4346  
4347 int
4348 STDCALL
4349 ToUnicode(
4350           UINT wVirtKey,
4351           UINT wScanCode,
4352           PBYTE lpKeyState,
4353           LPWSTR pwszBuff,
4354           int cchBuff,
4355           UINT wFlags);
4356
4357  
4358 DWORD
4359 STDCALL
4360 OemKeyScan(
4361            WORD wOemChar);
4362
4363  
4364 VOID
4365 STDCALL
4366 keybd_event(
4367             BYTE bVk,
4368             BYTE bScan,
4369             DWORD dwFlags,
4370             DWORD dwExtraInfo);
4371
4372  
4373 VOID
4374 STDCALL
4375 mouse_event(
4376             DWORD dwFlags,
4377             DWORD dx,
4378             DWORD dy,
4379             DWORD cButtons,
4380             DWORD dwExtraInfo);
4381
4382 WINBOOL
4383 STDCALL
4384 GetInputState(
4385               VOID);
4386
4387  
4388 DWORD
4389 STDCALL
4390 GetQueueStatus(
4391                UINT flags);
4392
4393  
4394 HWND
4395 STDCALL
4396 GetCapture(
4397            VOID);
4398
4399  
4400 HWND
4401 STDCALL
4402 SetCapture(
4403            HWND hWnd);
4404
4405  
4406 WINBOOL
4407 STDCALL
4408 ReleaseCapture(
4409                VOID);
4410
4411  
4412 DWORD
4413 STDCALL
4414 MsgWaitForMultipleObjects(
4415                           DWORD nCount,
4416                           LPHANDLE pHandles,
4417                           WINBOOL fWaitAll,
4418                           DWORD dwMilliseconds,
4419                           DWORD dwWakeMask);
4420
4421  
4422 UINT
4423 STDCALL
4424 SetTimer(
4425          HWND hWnd ,
4426          UINT nIDEvent,
4427          UINT uElapse,
4428          TIMERPROC lpTimerFunc);
4429
4430
4431 WINBOOL
4432 STDCALL
4433 SetWaitableTimer(HANDLE hTimer,
4434                  const LARGE_INTEGER *pDueTime,
4435                  LONG lPeriod,
4436                  PTIMERAPCROUTINE pfnCompletionRoutine,
4437                  LPVOID lpArgToCompletionRoutine,
4438                  WINBOOL fResume);
4439
4440
4441 WINBOOL
4442 STDCALL
4443 KillTimer(
4444           HWND hWnd,
4445           UINT uIDEvent);
4446
4447  
4448 WINBOOL
4449 STDCALL
4450 IsWindowUnicode(
4451                 HWND hWnd);
4452
4453  
4454 WINBOOL
4455 STDCALL
4456 EnableWindow(
4457              HWND hWnd,
4458              WINBOOL bEnable);
4459
4460  
4461 WINBOOL
4462 STDCALL
4463 IsWindowEnabled(
4464                 HWND hWnd);
4465
4466  
4467 WINBOOL
4468 STDCALL
4469 DestroyAcceleratorTable(
4470                         HACCEL hAccel);
4471
4472 int
4473 STDCALL
4474 GetSystemMetrics(
4475                  int nIndex);
4476
4477 HMENU
4478 STDCALL
4479 GetMenu(
4480         HWND hWnd);
4481
4482  
4483 WINBOOL
4484 STDCALL
4485 SetMenu(
4486         HWND hWnd,
4487         HMENU hMenu);
4488
4489  
4490 WINBOOL
4491 STDCALL
4492 HiliteMenuItem(
4493                HWND hWnd,
4494                HMENU hMenu,
4495                UINT uIDHiliteItem,
4496                UINT uHilite);
4497
4498  
4499 UINT
4500 STDCALL
4501 GetMenuState(
4502              HMENU hMenu,
4503              UINT uId,
4504              UINT uFlags);
4505
4506  
4507 WINBOOL
4508 STDCALL
4509 DrawMenuBar(
4510             HWND hWnd);
4511
4512  
4513 HMENU
4514 STDCALL
4515 GetSystemMenu(
4516               HWND hWnd,
4517               WINBOOL bRevert);
4518
4519  
4520 HMENU
4521 STDCALL
4522 CreateMenu(
4523            VOID);
4524
4525  
4526 HMENU
4527 STDCALL
4528 CreatePopupMenu(
4529                 VOID);
4530
4531  
4532 WINBOOL
4533 STDCALL
4534 DestroyMenu(
4535             HMENU hMenu);
4536
4537  
4538 DWORD
4539 STDCALL
4540 CheckMenuItem(
4541               HMENU hMenu,
4542               UINT uIDCheckItem,
4543               UINT uCheck);
4544
4545  
4546 WINBOOL
4547 STDCALL
4548 EnableMenuItem(
4549                HMENU hMenu,
4550                UINT uIDEnableItem,
4551                UINT uEnable);
4552
4553  
4554 HMENU
4555 STDCALL
4556 GetSubMenu(
4557            HMENU hMenu,
4558            int nPos);
4559
4560  
4561 UINT
4562 STDCALL
4563 GetMenuItemID(
4564               HMENU hMenu,
4565               int nPos);
4566
4567  
4568 int
4569 STDCALL
4570 GetMenuItemCount(
4571                  HMENU hMenu);
4572
4573 WINBOOL
4574 STDCALL RemoveMenu(
4575                    HMENU hMenu,
4576                    UINT uPosition,
4577                    UINT uFlags);
4578
4579  
4580 WINBOOL
4581 STDCALL
4582 DeleteMenu(
4583            HMENU hMenu,
4584            UINT uPosition,
4585            UINT uFlags);
4586
4587  
4588 WINBOOL
4589 STDCALL
4590 SetMenuItemBitmaps(
4591                    HMENU hMenu,
4592                    UINT uPosition,
4593                    UINT uFlags,
4594                    HBITMAP hBitmapUnchecked,
4595                    HBITMAP hBitmapChecked);
4596
4597  
4598 LONG
4599 STDCALL
4600 GetMenuCheckMarkDimensions(
4601                            VOID);
4602
4603  
4604 WINBOOL
4605 STDCALL
4606 TrackPopupMenu(
4607                HMENU hMenu,
4608                UINT uFlags,
4609                int x,
4610                int y,
4611                int nReserved,
4612                HWND hWnd,
4613                CONST RECT *prcRect);
4614
4615 UINT
4616 STDCALL
4617 GetMenuDefaultItem(
4618                    HMENU hMenu, 
4619                    UINT fByPos, 
4620                    UINT gmdiFlags);
4621
4622 WINBOOL
4623 STDCALL
4624 SetMenuDefaultItem(
4625                    HMENU hMenu, 
4626                    UINT uItem, 
4627                    UINT fByPos);
4628
4629 WINBOOL
4630 STDCALL
4631 GetMenuItemRect(HWND hWnd, 
4632                 HMENU hMenu, 
4633                 UINT uItem, 
4634                 LPRECT lprcItem);
4635
4636 int
4637 STDCALL
4638 MenuItemFromPoint(HWND hWnd, 
4639                   HMENU hMenu, 
4640                   POINT ptScreen);
4641
4642  
4643 DWORD
4644 STDCALL
4645 DragObject(HWND, HWND, UINT, DWORD, HCURSOR);
4646
4647  
4648 WINBOOL
4649 STDCALL
4650 DragDetect(HWND hwnd, 
4651            POINT pt);
4652
4653  
4654 WINBOOL
4655 STDCALL
4656 DrawIcon(
4657          HDC hDC,
4658          int X,
4659          int Y,
4660          HICON hIcon);
4661
4662 WINBOOL
4663 STDCALL
4664 UpdateWindow(
4665              HWND hWnd);
4666
4667  
4668 HWND
4669 STDCALL
4670 SetActiveWindow(
4671                 HWND hWnd);
4672
4673  
4674 HWND
4675 STDCALL
4676 GetForegroundWindow(
4677                     VOID);
4678
4679 WINBOOL
4680 STDCALL
4681 PaintDesktop(HDC hdc);
4682
4683  
4684 WINBOOL
4685 STDCALL
4686 SetForegroundWindow(
4687                     HWND hWnd);
4688
4689  
4690 HWND
4691 STDCALL
4692 WindowFromDC(
4693              HDC hDC);
4694
4695  
4696 HDC
4697 STDCALL
4698 GetDC(
4699       HWND hWnd);
4700
4701  
4702 HDC
4703 STDCALL
4704 GetDCEx(
4705         HWND hWnd ,
4706         HRGN hrgnClip,
4707         DWORD flags);
4708
4709  
4710 HDC
4711 STDCALL
4712 GetWindowDC(
4713             HWND hWnd);
4714
4715  
4716 int
4717 STDCALL
4718 ReleaseDC(
4719           HWND hWnd,
4720           HDC hDC);
4721
4722  
4723 HDC
4724 STDCALL
4725 BeginPaint(
4726            HWND hWnd,
4727            LPPAINTSTRUCT lpPaint);
4728
4729  
4730 WINBOOL
4731 STDCALL
4732 EndPaint(
4733          HWND hWnd,
4734          CONST PAINTSTRUCT *lpPaint);
4735
4736  
4737 WINBOOL
4738 STDCALL
4739 GetUpdateRect(
4740               HWND hWnd,
4741               LPRECT lpRect,
4742               WINBOOL bErase);
4743
4744  
4745 int
4746 STDCALL
4747 GetUpdateRgn(
4748              HWND hWnd,
4749              HRGN hRgn,
4750              WINBOOL bErase);
4751
4752  
4753 int
4754 STDCALL
4755 SetWindowRgn(
4756              HWND hWnd,
4757              HRGN hRgn,
4758              WINBOOL bRedraw);
4759
4760  
4761 int
4762 STDCALL
4763 GetWindowRgn(
4764              HWND hWnd,
4765              HRGN hRgn);
4766
4767  
4768 int
4769 STDCALL
4770 ExcludeUpdateRgn(
4771                  HDC hDC,
4772                  HWND hWnd);
4773
4774  
4775 WINBOOL
4776 STDCALL
4777 InvalidateRect(
4778                HWND hWnd ,
4779                CONST RECT *lpRect,
4780                WINBOOL bErase);
4781
4782  
4783 WINBOOL
4784 STDCALL
4785 ValidateRect(
4786              HWND hWnd ,
4787              CONST RECT *lpRect);
4788
4789  
4790 WINBOOL
4791 STDCALL
4792 InvalidateRgn(
4793               HWND hWnd,
4794               HRGN hRgn,
4795               WINBOOL bErase);
4796
4797  
4798 WINBOOL
4799 STDCALL
4800 ValidateRgn(
4801             HWND hWnd,
4802             HRGN hRgn);
4803
4804  
4805 WINBOOL
4806 STDCALL
4807 RedrawWindow(
4808              HWND hWnd,
4809              CONST RECT *lprcUpdate,
4810              HRGN hrgnUpdate,
4811              UINT flags);
4812
4813  
4814 WINBOOL
4815 STDCALL
4816 LockWindowUpdate(
4817                  HWND hWndLock);
4818
4819  
4820 WINBOOL
4821 STDCALL
4822 ScrollWindow(
4823              HWND hWnd,
4824              int XAmount,
4825              int YAmount,
4826              CONST RECT *lpRect,
4827              CONST RECT *lpClipRect);
4828
4829  
4830 WINBOOL
4831 STDCALL
4832 ScrollDC(
4833          HDC hDC,
4834          int dx,
4835          int dy,
4836          CONST RECT *lprcScroll,
4837          CONST RECT *lprcClip ,
4838          HRGN hrgnUpdate,
4839          LPRECT lprcUpdate);
4840
4841  
4842 int
4843 STDCALL
4844 ScrollWindowEx(
4845                HWND hWnd,
4846                int dx,
4847                int dy,
4848                CONST RECT *prcScroll,
4849                CONST RECT *prcClip ,
4850                HRGN hrgnUpdate,
4851                LPRECT prcUpdate,
4852                UINT flags);
4853
4854  
4855 int
4856 STDCALL
4857 SetScrollPos(
4858              HWND hWnd,
4859              int nBar,
4860              int nPos,
4861              WINBOOL bRedraw);
4862
4863  
4864 int
4865 STDCALL
4866 GetScrollPos(
4867              HWND hWnd,
4868              int nBar);
4869
4870  
4871 WINBOOL
4872 STDCALL
4873 SetScrollRange(
4874                HWND hWnd,
4875                int nBar,
4876                int nMinPos,
4877                int nMaxPos,
4878                WINBOOL bRedraw);
4879
4880  
4881 WINBOOL
4882 STDCALL
4883 GetScrollRange(
4884                HWND hWnd,
4885                int nBar,
4886                LPINT lpMinPos,
4887                LPINT lpMaxPos);
4888
4889  
4890 WINBOOL
4891 STDCALL
4892 ShowScrollBar(
4893               HWND hWnd,
4894               int wBar,
4895               WINBOOL bShow);
4896
4897  
4898 WINBOOL
4899 STDCALL
4900 EnableScrollBar(
4901                 HWND hWnd,
4902                 UINT wSBflags,
4903                 UINT wArrows);
4904
4905  
4906 WINBOOL
4907 STDCALL
4908 GetClientRect(
4909               HWND hWnd,
4910               LPRECT lpRect);
4911
4912  
4913 WINBOOL
4914 STDCALL
4915 GetWindowRect(
4916               HWND hWnd,
4917               LPRECT lpRect);
4918
4919  
4920 WINBOOL
4921 STDCALL
4922 AdjustWindowRect(
4923                  LPRECT lpRect,
4924                  DWORD dwStyle,
4925                  WINBOOL bMenu);
4926
4927  
4928 WINBOOL
4929 STDCALL
4930 AdjustWindowRectEx(
4931                    LPRECT lpRect,
4932                    DWORD dwStyle,
4933                    WINBOOL bMenu,
4934                    DWORD dwExStyle);
4935
4936 WINBOOL
4937 STDCALL
4938 SetWindowContextHelpId(HWND, DWORD);
4939
4940 DWORD
4941 STDCALL
4942 GetWindowContextHelpId(HWND);
4943
4944 WINBOOL
4945 STDCALL
4946 SetMenuContextHelpId(HMENU, DWORD);
4947
4948 DWORD
4949 STDCALL
4950 GetMenuContextHelpId(HMENU);
4951
4952  
4953 WINBOOL
4954 STDCALL
4955 MessageBeep(
4956             UINT uType);
4957
4958  
4959 int
4960 STDCALL
4961 ShowCursor(
4962            WINBOOL bShow);
4963
4964  
4965 WINBOOL
4966 STDCALL
4967 SetCursorPos(
4968              int X,
4969              int Y);
4970
4971  
4972 HCURSOR
4973 STDCALL
4974 SetCursor(
4975           HCURSOR hCursor);
4976
4977  
4978 WINBOOL
4979 STDCALL
4980 GetCursorPos(
4981              LPPOINT lpPoint);
4982
4983  
4984 WINBOOL
4985 STDCALL
4986 ClipCursor(
4987            CONST RECT *lpRect);
4988
4989  
4990 WINBOOL
4991 STDCALL
4992 GetClipCursor(
4993               LPRECT lpRect);
4994
4995  
4996 HCURSOR
4997 STDCALL
4998 GetCursor(
4999           VOID);
5000
5001  
5002 WINBOOL
5003 STDCALL
5004 CreateCaret(
5005             HWND hWnd,
5006             HBITMAP hBitmap ,
5007             int nWidth,
5008             int nHeight);
5009
5010  
5011 UINT
5012 STDCALL
5013 GetCaretBlinkTime(
5014                   VOID);
5015
5016  
5017 WINBOOL
5018 STDCALL
5019 SetCaretBlinkTime(
5020                   UINT uMSeconds);
5021
5022  
5023 WINBOOL
5024 STDCALL
5025 DestroyCaret(
5026              VOID);
5027
5028  
5029 WINBOOL
5030 STDCALL
5031 HideCaret(
5032           HWND hWnd);
5033
5034  
5035 WINBOOL
5036 STDCALL
5037 ShowCaret(
5038           HWND hWnd);
5039
5040  
5041 WINBOOL
5042 STDCALL
5043 SetCaretPos(
5044             int X,
5045             int Y);
5046
5047  
5048 WINBOOL
5049 STDCALL
5050 GetCaretPos(
5051             LPPOINT lpPoint);
5052
5053  
5054 WINBOOL
5055 STDCALL
5056 ClientToScreen(
5057                HWND hWnd,
5058                LPPOINT lpPoint);
5059
5060  
5061 WINBOOL
5062 STDCALL
5063 ScreenToClient(
5064                HWND hWnd,
5065                LPPOINT lpPoint);
5066
5067  
5068 int
5069 STDCALL
5070 MapWindowPoints(
5071                 HWND hWndFrom,
5072                 HWND hWndTo,
5073                 LPPOINT lpPoints,
5074                 UINT cPoints);
5075
5076  
5077 HWND
5078 STDCALL
5079 WindowFromPoint(
5080                 POINT Point);
5081
5082  
5083 HWND
5084 STDCALL
5085 ChildWindowFromPoint(
5086                      HWND hWndParent,
5087                      POINT Point);
5088
5089  
5090 DWORD
5091 STDCALL
5092 GetSysColor(
5093             int nIndex);
5094
5095  
5096 HBRUSH
5097 STDCALL
5098 GetSysColorBrush(
5099                  int nIndex);
5100
5101  
5102 WINBOOL
5103 STDCALL
5104 SetSysColors(
5105              int cElements,
5106              CONST INT * lpaElements,
5107              CONST COLORREF * lpaRgbValues);
5108
5109  
5110 WINBOOL
5111 STDCALL
5112 DrawFocusRect(
5113               HDC hDC,
5114               CONST RECT * lprc);
5115
5116  
5117 int
5118 STDCALL
5119 FillRect(
5120          HDC hDC,
5121          CONST RECT *lprc,
5122          HBRUSH hbr);
5123
5124  
5125 int
5126 STDCALL
5127 FrameRect(
5128           HDC hDC,
5129           CONST RECT *lprc,
5130           HBRUSH hbr);
5131
5132  
5133 WINBOOL
5134 STDCALL
5135 InvertRect(
5136            HDC hDC,
5137            CONST RECT *lprc);
5138
5139  
5140 WINBOOL
5141 STDCALL
5142 SetRect(
5143         LPRECT lprc,
5144         int xLeft,
5145         int yTop,
5146         int xRight,
5147         int yBottom);
5148
5149  
5150 WINBOOL
5151 STDCALL
5152 SetRectEmpty(
5153              LPRECT lprc);
5154
5155  
5156 WINBOOL
5157 STDCALL
5158 CopyRect(
5159          LPRECT lprcDst,
5160          CONST RECT *lprcSrc);
5161
5162  
5163 WINBOOL
5164 STDCALL
5165 InflateRect(
5166             LPRECT lprc,
5167             int dx,
5168             int dy);
5169
5170  
5171 WINBOOL
5172 STDCALL
5173 IntersectRect(
5174               LPRECT lprcDst,
5175               CONST RECT *lprcSrc1,
5176               CONST RECT *lprcSrc2);
5177
5178  
5179 WINBOOL
5180 STDCALL
5181 UnionRect(
5182           LPRECT lprcDst,
5183           CONST RECT *lprcSrc1,
5184           CONST RECT *lprcSrc2);
5185
5186  
5187 WINBOOL
5188 STDCALL
5189 SubtractRect(
5190              LPRECT lprcDst,
5191              CONST RECT *lprcSrc1,
5192              CONST RECT *lprcSrc2);
5193
5194  
5195 WINBOOL
5196 STDCALL
5197 OffsetRect(
5198            LPRECT lprc,
5199            int dx,
5200            int dy);
5201
5202  
5203 WINBOOL
5204 STDCALL
5205 IsRectEmpty(
5206             CONST RECT *lprc);
5207
5208  
5209 WINBOOL
5210 STDCALL
5211 EqualRect(
5212           CONST RECT *lprc1,
5213           CONST RECT *lprc2);
5214
5215  
5216 WINBOOL
5217 STDCALL
5218 PtInRect(
5219          CONST RECT *lprc,
5220          POINT pt);
5221
5222  
5223 WORD
5224 STDCALL
5225 GetWindowWord(
5226               HWND hWnd,
5227               int nIndex);
5228
5229  
5230 WORD
5231 STDCALL
5232 SetWindowWord(
5233               HWND hWnd,
5234               int nIndex,
5235               WORD wNewWord);
5236
5237  
5238 WORD
5239 STDCALL
5240 GetClassWord(
5241              HWND hWnd,
5242              int nIndex);
5243
5244  
5245 WORD
5246 STDCALL
5247 SetClassWord(
5248              HWND hWnd,
5249              int nIndex,
5250              WORD wNewWord);
5251
5252 HWND
5253 STDCALL
5254 GetDesktopWindow(
5255                  VOID);
5256
5257  
5258 HWND
5259 STDCALL
5260 GetParent(
5261           HWND hWnd);
5262
5263  
5264 HWND
5265 STDCALL
5266 SetParent(
5267           HWND hWndChild,
5268           HWND hWndNewParent);
5269
5270  
5271 WINBOOL
5272 STDCALL
5273 EnumChildWindows(
5274                  HWND hWndParent,
5275                  ENUMWINDOWSPROC lpEnumFunc,
5276                  LPARAM lParam);
5277
5278  
5279 WINBOOL
5280 STDCALL
5281 EnumWindows(
5282             ENUMWINDOWSPROC lpEnumFunc,
5283             LPARAM lParam);
5284
5285  
5286 WINBOOL
5287 STDCALL
5288 EnumThreadWindows(
5289                   DWORD dwThreadId,
5290                   ENUMWINDOWSPROC lpfn,
5291                   LPARAM lParam);
5292
5293 HWND
5294 STDCALL
5295 GetTopWindow(
5296              HWND hWnd);
5297
5298  
5299 DWORD
5300 STDCALL
5301 GetWindowThreadProcessId(
5302                          HWND hWnd,
5303                          LPDWORD lpdwProcessId);
5304
5305  
5306 HWND
5307 STDCALL
5308 GetLastActivePopup(
5309                    HWND hWnd);
5310
5311  
5312 HWND
5313 STDCALL
5314 GetWindow(
5315           HWND hWnd,
5316           UINT uCmd);
5317
5318 WINBOOL
5319 STDCALL
5320 UnhookWindowsHook(
5321                   int nCode,
5322                   HOOKPROC pfnFilterProc);
5323
5324 WINBOOL
5325 STDCALL
5326 UnhookWindowsHookEx(
5327                     HHOOK hhk);
5328
5329  
5330 LRESULT
5331 STDCALL
5332 CallNextHookEx(
5333                HHOOK hhk,
5334                int nCode,
5335                WPARAM wParam,
5336                LPARAM lParam);
5337
5338  
5339 WINBOOL
5340 STDCALL
5341 CheckMenuRadioItem(HMENU, UINT, UINT, UINT, UINT);
5342
5343 HCURSOR
5344 STDCALL
5345 CreateCursor(
5346              HINSTANCE hInst,
5347              int xHotSpot,
5348              int yHotSpot,
5349              int nWidth,
5350              int nHeight,
5351              CONST VOID *pvANDPlane,
5352              CONST VOID *pvXORPlane);
5353
5354  
5355 WINBOOL
5356 STDCALL
5357 DestroyCursor(
5358               HCURSOR hCursor);
5359
5360  
5361 WINBOOL
5362 STDCALL
5363 SetSystemCursor(
5364                 HCURSOR hcur,
5365                 DWORD   anID);
5366
5367  
5368 HICON
5369 STDCALL
5370 CreateIcon(
5371            HINSTANCE hInstance,
5372            int nWidth,
5373            int nHeight,
5374            BYTE cPlanes,
5375            BYTE cBitsPixel,
5376            CONST BYTE *lpbANDbits,
5377            CONST BYTE *lpbXORbits);
5378
5379  
5380 WINBOOL
5381 STDCALL
5382 DestroyIcon(
5383             HICON hIcon);
5384
5385  
5386 int
5387 STDCALL
5388 LookupIconIdFromDirectory(
5389                           PBYTE presbits,
5390                           WINBOOL fIcon);
5391
5392  
5393 int
5394 STDCALL
5395 LookupIconIdFromDirectoryEx(
5396                             PBYTE presbits,
5397                             WINBOOL  fIcon,
5398                             int   cxDesired,
5399                             int   cyDesired,
5400                             UINT  Flags);
5401
5402  
5403 HICON
5404 STDCALL
5405 CreateIconFromResource(
5406                        PBYTE presbits,
5407                        DWORD dwResSize,
5408                        WINBOOL fIcon,
5409                        DWORD dwVer);
5410
5411  
5412 HICON
5413 STDCALL
5414 CreateIconFromResourceEx(
5415                          PBYTE presbits,
5416                          DWORD dwResSize,
5417                          WINBOOL  fIcon,
5418                          DWORD dwVer,
5419                          int   cxDesired,
5420                          int   cyDesired,
5421                          UINT  Flags);
5422
5423  
5424 HICON
5425 STDCALL
5426 CopyImage(
5427           HANDLE,
5428           UINT,
5429           int,
5430           int,
5431           UINT);
5432
5433  
5434 HICON
5435 STDCALL
5436 CreateIconIndirect(
5437                    PICONINFO piconinfo);
5438
5439  
5440 HICON
5441 STDCALL
5442 CopyIcon(
5443          HICON hIcon);
5444
5445  
5446 WINBOOL
5447 STDCALL
5448 GetIconInfo(
5449             HICON hIcon,
5450             PICONINFO piconinfo);
5451
5452  
5453 WINBOOL
5454 STDCALL
5455 MapDialogRect(
5456               HWND hDlg,
5457               LPRECT lpRect);
5458
5459 int
5460 STDCALL
5461 SetScrollInfo(HWND, int, LPCSCROLLINFO, WINBOOL);
5462
5463 WINBOOL
5464 STDCALL
5465 GetScrollInfo(HWND, int, LPSCROLLINFO);
5466
5467 WINBOOL
5468 STDCALL
5469 TranslateMDISysAccel(
5470                      HWND hWndClient,
5471                      LPMSG lpMsg);
5472
5473  
5474 UINT
5475 STDCALL
5476 ArrangeIconicWindows(
5477                      HWND hWnd);
5478
5479 WORD
5480 STDCALL
5481 TileWindows(HWND hwndParent, UINT wHow, CONST RECT * lpRect, UINT cKids, const HWND *lpKids);
5482
5483 WORD
5484 STDCALL
5485 CascadeWindows(HWND hwndParent, UINT wHow, CONST RECT * lpRect, UINT cKids,  const HWND *lpKids);
5486
5487  
5488 VOID
5489 STDCALL
5490 SetLastErrorEx(
5491                DWORD dwErrCode,
5492                DWORD dwType
5493                );
5494
5495  
5496 VOID
5497 STDCALL
5498 SetDebugErrorLevel(
5499                    DWORD dwLevel
5500                    );
5501
5502 WINBOOL
5503 STDCALL
5504 DrawEdge(HDC hdc, LPRECT qrc, UINT edge, UINT grfFlags);
5505
5506 WINBOOL STDCALL
5507 DrawFrameControl(HDC, LPRECT, UINT, UINT);
5508
5509 WINBOOL
5510 STDCALL
5511 DrawCaption(
5512   HWND hwnd,
5513   HDC hdc,
5514   LPRECT lprc,
5515   UINT uFlags);
5516
5517 WINBOOL
5518 STDCALL
5519 DrawAnimatedRects(HWND hwnd, int idAni, CONST RECT * lprcFrom, CONST RECT * lprcTo);
5520
5521 WINBOOL
5522 STDCALL
5523 TrackPopupMenuEx(HMENU, UINT, int, int, HWND, LPTPMPARAMS);
5524
5525 HWND
5526 STDCALL
5527 ChildWindowFromPointEx(HWND, POINT, UINT);
5528
5529 WINBOOL
5530 STDCALL
5531 DrawIconEx(HDC hdc, int xLeft, int yTop,
5532            HICON hIcon, int cxWidth, int cyWidth,
5533            UINT istepIfAniCur, HBRUSH hbrFlickerFreeDraw, UINT diFlags);
5534
5535 WINBOOL
5536 STDCALL
5537 AnimatePalette(HPALETTE, UINT, UINT, CONST PALETTEENTRY *);
5538
5539 WINBOOL
5540 STDCALL
5541 Arc(HDC, int, int, int, int, int, int, int, int);
5542
5543 WINBOOL
5544 STDCALL
5545 BitBlt(HDC, int, int, int, int, HDC, int, int, DWORD);
5546
5547 WINBOOL
5548 STDCALL
5549 CancelDC(HDC);
5550
5551 WINBOOL
5552 STDCALL
5553 Chord(HDC, int, int, int, int, int, int, int, int);
5554
5555 HMETAFILE
5556 STDCALL
5557 CloseMetaFile(HDC);
5558
5559 int
5560 STDCALL
5561 CombineRgn(HRGN, HRGN, HRGN, int);
5562
5563 HBITMAP
5564 STDCALL
5565 CreateBitmap(int, int, UINT, UINT, CONST VOID *);
5566
5567 HBITMAP
5568 STDCALL
5569 CreateBitmapIndirect(CONST BITMAP *);
5570
5571 HBRUSH
5572 STDCALL
5573 CreateBrushIndirect(CONST LOGBRUSH *);
5574
5575 HBITMAP
5576 STDCALL
5577 CreateCompatibleBitmap(HDC, int, int);
5578
5579 HBITMAP
5580 STDCALL
5581 CreateDiscardableBitmap(HDC, int, int);
5582
5583 HDC
5584 STDCALL
5585 CreateCompatibleDC(HDC);
5586
5587 HBITMAP
5588 STDCALL
5589 CreateDIBitmap(HDC, CONST BITMAPINFOHEADER *, DWORD, CONST VOID *, CONST BITMAPINFO *, UINT);
5590
5591 HBRUSH
5592 STDCALL
5593 CreateDIBPatternBrush(HGLOBAL, UINT);
5594
5595 HBRUSH
5596 STDCALL
5597 CreateDIBPatternBrushPt(CONST VOID *, UINT);
5598
5599 HRGN
5600 STDCALL
5601 CreateEllipticRgn(int, int, int, int);
5602
5603 HRGN
5604 STDCALL
5605 CreateEllipticRgnIndirect(CONST RECT *);
5606
5607 HBRUSH
5608 STDCALL
5609 CreateHatchBrush(int, COLORREF);
5610
5611 HPALETTE
5612 STDCALL
5613 CreatePalette(CONST LOGPALETTE *);
5614
5615 HPEN
5616 STDCALL
5617 CreatePen(int, int, COLORREF);
5618
5619 HPEN
5620 STDCALL
5621 CreatePenIndirect(CONST LOGPEN *);
5622
5623 HRGN
5624 STDCALL
5625 CreatePolyPolygonRgn(CONST POINT *, CONST INT *, int, int);
5626
5627 HBRUSH
5628 STDCALL
5629 CreatePatternBrush(HBITMAP);
5630
5631 HRGN
5632 STDCALL
5633 CreateRectRgn(int, int, int, int);
5634
5635 HRGN
5636 STDCALL
5637 CreateRectRgnIndirect(CONST RECT *);
5638
5639 HRGN
5640 STDCALL
5641 CreateRoundRectRgn(int, int, int, int, int, int);
5642
5643 HBRUSH
5644 STDCALL
5645 CreateSolidBrush(COLORREF);
5646
5647 WINBOOL
5648 STDCALL
5649 DeleteDC(HDC);
5650
5651 WINBOOL
5652 STDCALL
5653 DeleteMetaFile(HMETAFILE);
5654
5655 WINBOOL
5656 STDCALL
5657 DeleteObject(HGDIOBJ);
5658
5659 int
5660 STDCALL
5661 DrawEscape(HDC, int, int, LPCSTR);
5662
5663 WINBOOL
5664 STDCALL
5665 Ellipse(HDC, int, int, int, int);
5666
5667 int
5668 STDCALL
5669 EnumObjects(HDC, int, ENUMOBJECTSPROC, LPARAM);
5670
5671 WINBOOL
5672 STDCALL
5673 EqualRgn(HRGN, HRGN);
5674
5675 int
5676 STDCALL
5677 Escape(HDC, int, int, LPCSTR, LPVOID);
5678
5679 int
5680 STDCALL
5681 ExtEscape(HDC, int, int, LPCSTR, int, LPSTR);
5682
5683 int
5684 STDCALL
5685 ExcludeClipRect(HDC, int, int, int, int);
5686
5687 HRGN
5688 STDCALL
5689 ExtCreateRegion(CONST XFORM *, DWORD, CONST RGNDATA *);
5690
5691 WINBOOL
5692 STDCALL
5693 ExtFloodFill(HDC, int, int, COLORREF, UINT);
5694
5695 WINBOOL
5696 STDCALL
5697 FillRgn(HDC, HRGN, HBRUSH);
5698
5699 WINBOOL
5700 STDCALL
5701 FloodFill(HDC, int, int, COLORREF);
5702
5703 WINBOOL
5704 STDCALL
5705 FrameRgn(HDC, HRGN, HBRUSH, int, int);
5706
5707 WINBOOL
5708 STDCALL
5709 GdiDllInitialize (HANDLE, DWORD, LPVOID);
5710
5711 VOID
5712 STDCALL
5713 GdiProcessSetup (VOID);
5714
5715 int
5716 STDCALL
5717 GetROP2(HDC);
5718
5719 WINBOOL
5720 STDCALL
5721 GetAspectRatioFilterEx(HDC, LPSIZE);
5722
5723 COLORREF
5724 STDCALL
5725 GetBkColor(HDC);
5726
5727 int
5728 STDCALL
5729 GetBkMode(HDC);
5730
5731 LONG
5732 STDCALL
5733 GetBitmapBits(HBITMAP, LONG, LPVOID);
5734
5735 WINBOOL
5736 STDCALL
5737 GetBitmapDimensionEx(HBITMAP, LPSIZE);
5738
5739 UINT
5740 STDCALL
5741 GetBoundsRect(HDC, LPRECT, UINT);
5742
5743 WINBOOL
5744 STDCALL
5745 GetBrushOrgEx(HDC, LPPOINT);
5746
5747 int
5748 STDCALL
5749 GetClipBox(HDC, LPRECT);
5750
5751 int
5752 STDCALL
5753 GetClipRgn(HDC, HRGN);
5754
5755 int
5756 STDCALL
5757 GetMetaRgn(HDC, HRGN);
5758
5759 HGDIOBJ
5760 STDCALL
5761 GetCurrentObject(HDC, UINT);
5762
5763 WINBOOL
5764 STDCALL
5765 GetCurrentPositionEx(HDC, LPPOINT);
5766
5767 int
5768 STDCALL
5769 GetDeviceCaps(HDC, int);
5770
5771 int
5772 STDCALL
5773 GetDIBits(HDC, HBITMAP, UINT, UINT, LPVOID, LPBITMAPINFO, UINT);
5774
5775 DWORD
5776 STDCALL
5777 GetFontData(HDC, DWORD, DWORD, LPVOID, DWORD);
5778
5779 int
5780 STDCALL
5781 GetGraphicsMode(HDC);
5782
5783 int
5784 STDCALL
5785 GetMapMode(HDC);
5786
5787 UINT
5788 STDCALL
5789 GetMetaFileBitsEx(HMETAFILE, UINT, LPVOID);
5790
5791 COLORREF
5792 STDCALL
5793 GetNearestColor(HDC, COLORREF);
5794
5795 UINT
5796 STDCALL
5797 GetNearestPaletteIndex(HPALETTE, COLORREF);
5798
5799 DWORD
5800 STDCALL
5801 GetObjectType(HGDIOBJ h);
5802
5803 UINT
5804 STDCALL
5805 GetPaletteEntries(HPALETTE, UINT, UINT, LPPALETTEENTRY);
5806
5807 COLORREF
5808 STDCALL
5809 GetPixel(HDC, int, int);
5810
5811 int
5812 STDCALL
5813 GetPixelFormat(HDC);
5814
5815 int
5816 STDCALL
5817 GetPolyFillMode(HDC);
5818
5819 WINBOOL
5820 STDCALL
5821 GetRasterizerCaps(LPRASTERIZER_STATUS, UINT);
5822
5823 DWORD
5824 STDCALL
5825 GetRegionData(HRGN, DWORD, LPRGNDATA);
5826
5827 int
5828 STDCALL
5829 GetRgnBox(HRGN, LPRECT);
5830
5831 HGDIOBJ
5832 STDCALL
5833 GetStockObject(int);
5834
5835 int
5836 STDCALL
5837 GetStretchBltMode(HDC);
5838
5839 UINT
5840 STDCALL
5841 GetSystemPaletteEntries(HDC, UINT, UINT, LPPALETTEENTRY);
5842
5843 UINT
5844 STDCALL
5845 GetSystemPaletteUse(HDC);
5846
5847 int
5848 STDCALL
5849 GetTextCharacterExtra(HDC);
5850
5851 UINT
5852 STDCALL
5853 GetTextAlign(HDC);
5854
5855 COLORREF
5856 STDCALL
5857 GetTextColor(HDC);
5858
5859 int
5860 STDCALL
5861 GetTextCharset(HDC hdc);
5862
5863 int
5864 STDCALL
5865 GetTextCharsetInfo(HDC hdc, LPFONTSIGNATURE lpSig, DWORD dwFlags);
5866
5867 WINBOOL
5868 STDCALL
5869 TranslateCharsetInfo( DWORD *lpSrc, LPCHARSETINFO lpCs, DWORD dwFlags);
5870
5871 DWORD
5872 STDCALL
5873 GetFontLanguageInfo( HDC );
5874
5875 WINBOOL
5876 STDCALL
5877 GetViewportExtEx(HDC, LPSIZE);
5878
5879 WINBOOL
5880 STDCALL
5881 GetViewportOrgEx(HDC, LPPOINT);
5882
5883 WINBOOL
5884 STDCALL
5885 GetWindowExtEx(HDC, LPSIZE);
5886
5887 WINBOOL
5888 STDCALL
5889 GetWindowOrgEx(HDC, LPPOINT);
5890
5891 int
5892 STDCALL
5893 IntersectClipRect(HDC, int, int, int, int);
5894
5895 WINBOOL
5896 STDCALL
5897 InvertRgn(HDC, HRGN);
5898
5899 WINBOOL
5900 STDCALL
5901 LineDDA(int, int, int, int, LINEDDAPROC, LPARAM);
5902
5903 WINBOOL
5904 STDCALL
5905 LineTo(HDC, int, int);
5906
5907 WINBOOL
5908 STDCALL
5909 MaskBlt(HDC, int, int, int, int,
5910         HDC, int, int, HBITMAP, int, int, DWORD);
5911
5912 WINBOOL
5913 STDCALL
5914 PlgBlt(HDC, CONST POINT *, HDC, int, int, int,
5915        int, HBITMAP, int, int);
5916
5917 int
5918 STDCALL
5919 OffsetClipRgn(HDC, int, int);
5920
5921 int
5922 STDCALL
5923 OffsetRgn(HRGN, int, int);
5924
5925 WINBOOL
5926 STDCALL 
5927 PatBlt(HDC, int, int, int, int, DWORD);
5928
5929 WINBOOL
5930 STDCALL
5931 Pie(HDC, int, int, int, int, int, int, int, int);
5932
5933 WINBOOL
5934 STDCALL
5935 PlayMetaFile(HDC, HMETAFILE);
5936
5937 WINBOOL
5938 STDCALL
5939 PaintRgn(HDC, HRGN);
5940
5941 WINBOOL
5942 STDCALL
5943 PolyPolygon(HDC, CONST POINT *, CONST INT *, int);
5944
5945 WINBOOL
5946 STDCALL
5947 PtInRegion(HRGN, int, int);
5948
5949 WINBOOL
5950 STDCALL
5951 PtVisible(HDC, int, int);
5952
5953 WINBOOL
5954 STDCALL
5955 RectInRegion(HRGN, CONST RECT *);
5956
5957 WINBOOL
5958 STDCALL
5959 RectVisible(HDC, CONST RECT *);
5960
5961 WINBOOL
5962 STDCALL
5963 Rectangle(HDC, int, int, int, int);
5964
5965 WINBOOL
5966 STDCALL
5967 RestoreDC(HDC, int);
5968
5969 UINT
5970 STDCALL
5971 RealizePalette(HDC);
5972
5973 WINBOOL
5974 STDCALL
5975 RoundRect(HDC, int, int, int, int, int, int);
5976
5977 WINBOOL
5978 STDCALL
5979 ResizePalette(HPALETTE, UINT);
5980
5981 int
5982 STDCALL
5983 SaveDC(HDC);
5984
5985 int
5986 STDCALL
5987 SelectClipRgn(HDC, HRGN);
5988
5989 int
5990 STDCALL
5991 ExtSelectClipRgn(HDC, HRGN, int);
5992
5993 int
5994 STDCALL
5995 SetMetaRgn(HDC);
5996
5997 HGDIOBJ
5998 STDCALL
5999 SelectObject(HDC, HGDIOBJ);
6000
6001 HPALETTE
6002 STDCALL
6003 SelectPalette(HDC, HPALETTE, WINBOOL);
6004
6005 COLORREF
6006 STDCALL
6007 SetBkColor(HDC, COLORREF);
6008
6009 int
6010 STDCALL
6011 SetBkMode(HDC, int);
6012
6013 LONG
6014 STDCALL
6015 SetBitmapBits(HBITMAP, DWORD, CONST VOID *);
6016
6017 UINT
6018 STDCALL
6019 SetBoundsRect(HDC, CONST RECT *, UINT);
6020
6021 int
6022 STDCALL
6023 SetDIBits(HDC, HBITMAP, UINT, UINT, CONST VOID *, CONST BITMAPINFO *, UINT);
6024
6025 int
6026 STDCALL
6027 SetDIBitsToDevice(HDC, int, int, DWORD, DWORD, int,
6028                   int, UINT, UINT, CONST VOID *, CONST BITMAPINFO *, UINT);
6029
6030 DWORD
6031 STDCALL
6032 SetMapperFlags(HDC, DWORD);
6033
6034 int
6035 STDCALL
6036 SetGraphicsMode(HDC hdc, int iMode);
6037
6038 int
6039 STDCALL
6040 SetMapMode(HDC, int);
6041
6042 HMETAFILE
6043 STDCALL
6044 SetMetaFileBitsEx(UINT, CONST BYTE *);
6045
6046 UINT
6047 STDCALL
6048 SetPaletteEntries(HPALETTE, UINT, UINT, CONST PALETTEENTRY *);
6049
6050 COLORREF
6051 STDCALL
6052 SetPixel(HDC, int, int, COLORREF);
6053
6054 WINBOOL
6055 STDCALL
6056 SetPixelV(HDC, int, int, COLORREF);
6057
6058 int
6059 STDCALL
6060 SetPolyFillMode(HDC, int);
6061
6062 WINBOOL
6063 STDCALL
6064 StretchBlt(HDC, int, int, int, int, HDC, int, int, int, int, DWORD);
6065
6066 WINBOOL
6067 STDCALL
6068 SetRectRgn(HRGN, int, int, int, int);
6069 int
6070 STDCALL
6071 StretchDIBits(HDC, int, int, int, int, int, int, int, int, CONST
6072               VOID *, CONST BITMAPINFO *, UINT, DWORD);
6073
6074 int
6075 STDCALL
6076 SetROP2(HDC, int);
6077
6078 int
6079 STDCALL
6080 SetStretchBltMode(HDC, int);
6081
6082 UINT
6083 STDCALL
6084 SetSystemPaletteUse(HDC, UINT);
6085
6086 int
6087 STDCALL
6088 SetTextCharacterExtra(HDC, int);
6089
6090 COLORREF
6091 STDCALL
6092 SetTextColor(HDC, COLORREF);
6093
6094 UINT
6095 STDCALL
6096 SetTextAlign(HDC, UINT);
6097
6098 WINBOOL
6099 STDCALL
6100 SetTextJustification(HDC, int, int);
6101
6102 WINBOOL
6103 STDCALL
6104 UpdateColors(HDC);
6105
6106 WINBOOL
6107 STDCALL
6108 PlayMetaFileRecord(HDC, LPHANDLETABLE, LPMETARECORD, UINT);
6109
6110 WINBOOL
6111 STDCALL
6112 EnumMetaFile(HDC, HMETAFILE, ENUMMETAFILEPROC, LPARAM);
6113
6114 HENHMETAFILE
6115 STDCALL
6116 CloseEnhMetaFile(HDC);
6117
6118 WINBOOL
6119 STDCALL
6120 DeleteEnhMetaFile(HENHMETAFILE);
6121
6122 WINBOOL
6123 STDCALL
6124 EnumEnhMetaFile(HDC, HENHMETAFILE, ENHMETAFILEPROC,
6125                 LPVOID, CONST RECT *);
6126
6127 UINT
6128 STDCALL
6129 GetEnhMetaFileHeader(HENHMETAFILE, UINT, LPENHMETAHEADER );
6130
6131 UINT
6132 STDCALL
6133 GetEnhMetaFilePaletteEntries(HENHMETAFILE, UINT, LPPALETTEENTRY );
6134
6135 UINT
6136 STDCALL
6137 GetWinMetaFileBits(HENHMETAFILE, UINT, LPBYTE, INT, HDC);
6138
6139 WINBOOL
6140 STDCALL
6141 PlayEnhMetaFile(HDC, HENHMETAFILE, CONST RECT *);
6142
6143 WINBOOL
6144 STDCALL
6145 PlayEnhMetaFileRecord(HDC, LPHANDLETABLE, CONST ENHMETARECORD *, UINT);
6146
6147 HENHMETAFILE
6148 STDCALL
6149 SetEnhMetaFileBits(UINT, CONST BYTE *);
6150
6151 #if 0
6152 HENHMETAFILE
6153 STDCALL
6154 SetWinMetaFileBits(UINT, CONST BYTE *, HDC, CONST METAFILEPICT *);
6155 #endif
6156
6157 WINBOOL
6158 STDCALL
6159 GdiComment(HDC, UINT, CONST BYTE *);
6160
6161 WINBOOL
6162 STDCALL
6163 AngleArc(HDC, int, int, DWORD, FLOAT, FLOAT);
6164
6165 WINBOOL
6166 STDCALL
6167 PolyPolyline(HDC, CONST POINT *, CONST DWORD *, DWORD);
6168
6169 WINBOOL
6170 STDCALL
6171 GetWorldTransform(HDC, LPXFORM);
6172
6173 WINBOOL
6174 STDCALL
6175 SetWorldTransform(HDC, CONST XFORM *);
6176
6177 WINBOOL
6178 STDCALL
6179 ModifyWorldTransform(HDC, CONST XFORM *, DWORD);
6180
6181 WINBOOL
6182 STDCALL
6183 CombineTransform(LPXFORM, CONST XFORM *, CONST XFORM *);
6184
6185 HBITMAP
6186 STDCALL
6187 CreateDIBSection(HDC, CONST BITMAPINFO *, UINT, VOID *, HANDLE, DWORD);
6188
6189 UINT
6190 STDCALL
6191 GetDIBColorTable(HDC, UINT, UINT, RGBQUAD *);
6192
6193 UINT
6194 STDCALL
6195 SetDIBColorTable(HDC, UINT, UINT, CONST RGBQUAD *);
6196
6197 WINBOOL
6198 STDCALL
6199 SetColorAdjustment(HDC, CONST COLORADJUSTMENT *);
6200
6201 WINBOOL
6202 STDCALL
6203 GetColorAdjustment(HDC, LPCOLORADJUSTMENT);
6204
6205 HPALETTE
6206 STDCALL 
6207 CreateHalftonePalette(HDC);
6208
6209 int
6210 STDCALL
6211 EndDoc(HDC);
6212
6213 int
6214 STDCALL
6215 StartPage(HDC);
6216
6217 int
6218 STDCALL
6219 EndPage(HDC);
6220
6221 int
6222 STDCALL
6223 AbortDoc(HDC);
6224
6225 int
6226 STDCALL
6227 SetAbortProc(HDC, ABORTPROC);
6228
6229 WINBOOL
6230 STDCALL
6231 AbortPath(HDC);
6232
6233 WINBOOL
6234 STDCALL
6235 ArcTo(HDC, int, int, int, int, int, int,int, int);
6236
6237 WINBOOL
6238 STDCALL
6239 BeginPath(HDC);
6240
6241 WINBOOL
6242 STDCALL
6243 CloseFigure(HDC);
6244
6245 WINBOOL
6246 STDCALL
6247 EndPath(HDC);
6248
6249 WINBOOL
6250 STDCALL
6251 FillPath(HDC);
6252
6253 WINBOOL
6254 STDCALL
6255 FlattenPath(HDC);
6256
6257 int
6258 STDCALL
6259 GetPath(HDC, LPPOINT, LPBYTE, int);
6260
6261 HRGN
6262 STDCALL
6263 PathToRegion(HDC);
6264
6265 WINBOOL
6266 STDCALL
6267 PolyDraw(HDC, CONST POINT *, CONST BYTE *, int);
6268
6269 WINBOOL
6270 STDCALL
6271 SelectClipPath(HDC, int);
6272
6273 int
6274 STDCALL
6275 SetArcDirection(HDC, int);
6276
6277 WINBOOL
6278 STDCALL
6279 SetMiterLimit(HDC, FLOAT, PFLOAT);
6280
6281 WINBOOL
6282 STDCALL
6283 StrokeAndFillPath(HDC);
6284
6285 WINBOOL
6286 STDCALL
6287 StrokePath(HDC);
6288
6289 WINBOOL
6290 STDCALL
6291 WidenPath(HDC);
6292
6293 HPEN
6294 STDCALL
6295 ExtCreatePen(DWORD, DWORD, CONST LOGBRUSH *, DWORD, CONST DWORD *);
6296
6297 WINBOOL
6298 STDCALL
6299 GetMiterLimit(HDC, PFLOAT);
6300
6301 int
6302 STDCALL
6303 GetArcDirection(HDC);
6304
6305 WINBOOL
6306 STDCALL
6307 MoveToEx(HDC, int, int, LPPOINT);
6308
6309 HRGN
6310 STDCALL
6311 CreatePolygonRgn(CONST POINT *, int, int);
6312
6313 WINBOOL
6314 STDCALL
6315 DPtoLP(HDC, LPPOINT, int);
6316
6317 WINBOOL
6318 STDCALL
6319 LPtoDP(HDC, LPPOINT, int);
6320  
6321 WINBOOL
6322 STDCALL
6323 Polygon(HDC, CONST POINT *, int);
6324
6325 WINBOOL
6326 STDCALL
6327 Polyline(HDC, CONST POINT *, int);
6328
6329 WINBOOL
6330 STDCALL
6331 PolyBezier(HDC, CONST POINT *, DWORD);
6332
6333 WINBOOL
6334 STDCALL
6335 PolyBezierTo(HDC, CONST POINT *, DWORD);
6336
6337 WINBOOL
6338 STDCALL
6339 PolylineTo(HDC, CONST POINT *, DWORD);
6340
6341 WINBOOL
6342 STDCALL
6343 SetViewportExtEx(HDC, int, int, LPSIZE);
6344
6345 WINBOOL
6346 STDCALL
6347 SetViewportOrgEx(HDC, int, int, LPPOINT);
6348
6349 WINBOOL
6350 STDCALL
6351 SetWindowExtEx(HDC, int, int, LPSIZE);
6352
6353 WINBOOL
6354 STDCALL
6355 SetWindowOrgEx(HDC, int, int, LPPOINT);
6356
6357 WINBOOL
6358 STDCALL
6359 OffsetViewportOrgEx(HDC, int, int, LPPOINT);
6360
6361 WINBOOL
6362 STDCALL
6363 OffsetWindowOrgEx(HDC, int, int, LPPOINT);
6364
6365 WINBOOL
6366 STDCALL
6367 ScaleViewportExtEx(HDC, int, int, int, int, LPSIZE);
6368
6369 WINBOOL
6370 STDCALL
6371 ScaleWindowExtEx(HDC, int, int, int, int, LPSIZE);
6372
6373 WINBOOL
6374 STDCALL
6375 SetBitmapDimensionEx(HBITMAP, int, int, LPSIZE);
6376
6377 WINBOOL
6378 STDCALL
6379 SetBrushOrgEx(HDC, int, int, LPPOINT);
6380
6381 WINBOOL
6382 STDCALL
6383 GetDCOrgEx(HDC,LPPOINT);
6384
6385 WINBOOL
6386 STDCALL
6387 FixBrushOrgEx(HDC,int,int,LPPOINT);
6388
6389 WINBOOL
6390 STDCALL
6391 UnrealizeObject(HGDIOBJ);
6392
6393 WINBOOL
6394 STDCALL
6395 GdiFlush(void);
6396
6397 DWORD
6398 STDCALL
6399 GdiSetBatchLimit(DWORD);
6400
6401 DWORD
6402 STDCALL
6403 GdiGetBatchLimit(void);
6404
6405 int
6406 STDCALL
6407 SetICMMode(HDC, int);
6408
6409 WINBOOL
6410 STDCALL
6411 CheckColorsInGamut(HDC,LPVOID,LPVOID,DWORD);
6412
6413 HANDLE
6414 STDCALL
6415 GetColorSpace(HDC);
6416
6417 WINBOOL
6418 STDCALL
6419 SetColorSpace(HDC,HCOLORSPACE);
6420
6421 WINBOOL
6422 STDCALL
6423 DeleteColorSpace(HCOLORSPACE);
6424
6425 WINBOOL
6426 STDCALL
6427 GetDeviceGammaRamp(HDC,LPVOID);
6428
6429 WINBOOL
6430 STDCALL
6431 SetDeviceGammaRamp(HDC,LPVOID);
6432
6433 WINBOOL
6434 STDCALL
6435 ColorMatchToTarget(HDC,HDC,DWORD);
6436
6437 HPROPSHEETPAGE
6438 STDCALL
6439 CreatePropertySheetPageA(LPCPROPSHEETPAGE lppsp);
6440
6441 WINBOOL
6442 STDCALL
6443 DestroyPropertySheetPage(HPROPSHEETPAGE hPSPage);
6444
6445 void
6446 STDCALL
6447 InitCommonControls(void);
6448
6449 #define  ImageList_AddIcon(himl, hicon) ImageList_ReplaceIcon(himl, -1, hicon)
6450
6451 HIMAGELIST
6452 STDCALL
6453 ImageList_Create(int cx, int cy, UINT flags, 
6454                  int cInitial, int cGrow);
6455
6456 WINBOOL
6457 STDCALL
6458 ImageList_Destroy(HIMAGELIST himl);
6459
6460 int
6461 STDCALL
6462 ImageList_GetImageCount(HIMAGELIST himl);
6463
6464 int
6465 STDCALL
6466 ImageList_Add(HIMAGELIST himl, HBITMAP hbmImage, 
6467               HBITMAP hbmMask);
6468
6469 int
6470 STDCALL
6471 ImageList_ReplaceIcon(HIMAGELIST himl, int i, HICON hicon);
6472
6473 COLORREF
6474 STDCALL
6475 ImageList_SetBkColor(HIMAGELIST himl, COLORREF clrBk);
6476
6477 COLORREF
6478 STDCALL
6479 ImageList_GetBkColor(HIMAGELIST himl);
6480
6481 WINBOOL
6482 STDCALL
6483 ImageList_SetOverlayImage(HIMAGELIST himl, int iImage, 
6484                           int iOverlay);
6485
6486 WINBOOL
6487 STDCALL
6488 ImageList_Draw(HIMAGELIST himl, int i, HDC hdcDst, int x, int y, UINT fStyle);
6489
6490 WINBOOL
6491 STDCALL
6492 ImageList_Replace(HIMAGELIST himl, int i, HBITMAP hbmImage, HBITMAP hbmMask);
6493
6494 int
6495 STDCALL
6496 ImageList_AddMasked(HIMAGELIST himl, HBITMAP hbmImage, COLORREF crMask);
6497
6498 WINBOOL
6499 STDCALL
6500 ImageList_DrawEx(HIMAGELIST himl, int i, HDC hdcDst, int x, int y, int dx, int dy, COLORREF rgbBk, COLORREF rgbFg, UINT fStyle);
6501
6502 WINBOOL
6503 STDCALL
6504 ImageList_Remove(HIMAGELIST himl, int i);
6505
6506 HICON
6507 STDCALL
6508 ImageList_GetIcon(HIMAGELIST himl, int i, UINT flags);
6509
6510 WINBOOL
6511 STDCALL
6512 ImageList_BeginDrag(HIMAGELIST himlTrack, int iTrack, int dxHotspot, int dyHotspot);
6513
6514 void
6515 STDCALL
6516 ImageList_EndDrag(void);
6517
6518 WINBOOL
6519 STDCALL
6520 ImageList_DragEnter(HWND hwndLock, int x, int y);
6521
6522 WINBOOL
6523 STDCALL
6524 ImageList_DragLeave(HWND hwndLock);
6525
6526 WINBOOL
6527 STDCALL
6528 ImageList_DragMove(int x, int y);
6529
6530 WINBOOL
6531 STDCALL
6532 ImageList_SetDragCursorImage(HIMAGELIST himlDrag, int iDrag, int dxHotspot, int dyHotspot);
6533
6534 WINBOOL
6535 STDCALL
6536 ImageList_DragShowNolock(WINBOOL fShow);
6537
6538 HIMAGELIST
6539 STDCALL
6540 ImageList_GetDragImage(POINT * ppt,POINT * pptHotspot);
6541
6542 WINBOOL
6543 STDCALL
6544 ImageList_GetIconSize(HIMAGELIST himl, int *cx, int *cy);
6545
6546 WINBOOL
6547 STDCALL
6548 ImageList_SetIconSize(HIMAGELIST himl, int cx, int cy);
6549
6550 WINBOOL
6551 STDCALL
6552 ImageList_GetImageInfo(HIMAGELIST himl, int i, IMAGEINFO * pImageInfo);
6553
6554 HIMAGELIST
6555 STDCALL
6556 ImageList_Merge(HIMAGELIST himl1, int i1, HIMAGELIST himl2, int i2, int dx, int dy);
6557
6558 HWND
6559 STDCALL
6560 CreateToolbarEx(HWND hwnd, DWORD ws, UINT wID, int nBitmaps,
6561                 HINSTANCE hBMInst, UINT wBMID, LPCTBBUTTON lpButtons,
6562                 int iNumButtons, int dxButton, int dyButton,
6563                 int dxBitmap, int dyBitmap, UINT uStructSize);
6564
6565 HBITMAP
6566 STDCALL
6567 CreateMappedBitmap(HINSTANCE hInstance, int idBitmap,
6568                    UINT wFlags, LPCOLORMAP lpColorMap,
6569                    int iNumMaps);
6570
6571
6572 void
6573 STDCALL
6574 MenuHelp(UINT uMsg, WPARAM wParam, LPARAM lParam, HMENU hMainMenu, HINSTANCE hInst, HWND hwndStatus, UINT *lpwIDs);
6575
6576 WINBOOL
6577 STDCALL
6578 ShowHideMenuCtl(HWND hWnd, UINT uFlags, LPINT lpInfo);
6579
6580 void
6581 STDCALL
6582 GetEffectiveClientRect(HWND hWnd, LPRECT lprc, LPINT lpInfo);
6583
6584 WINBOOL
6585 STDCALL
6586 MakeDragList(HWND hLB);
6587
6588 void
6589 STDCALL
6590 DrawInsert(HWND handParent, HWND hLB, int nItem);
6591
6592 int
6593 STDCALL
6594 LBItemFromPt(HWND hLB, POINT pt, WINBOOL bAutoScroll);
6595
6596 HWND
6597 STDCALL
6598 CreateUpDownControl(DWORD dwStyle, int x, int y, int cx, int cy,
6599                     HWND hParent, int nID, HINSTANCE hInst,
6600                     HWND hBuddy,
6601                     int nUpper, int nLower, int nPos);
6602
6603 DWORD
6604 STDCALL
6605 CommDlgExtendedError(VOID);
6606
6607 /* Animation controls */
6608
6609 #define Animate_Create(hwndP, id, dwStyle, hInstance)   CreateWindow(ANIMATE_CLASS, NULL, dwStyle, 0, 0, 0, 0, hwndP, (HMENU)(id), hInstance, NULL)
6610
6611 #define Animate_Open(hwnd, szName) SendMessage(hwnd, ACM_OPEN, 0, (LPARAM)(LPTSTR)(szName))
6612
6613 #define Animate_Play(hwnd, from, to, rep) SendMessage(hwnd, ACM_PLAY, (WPARAM)(UINT)(rep), (LPARAM)MAKELONG(from, to))
6614
6615 #define Animate_Stop(hwnd) SendMessage(hwnd, ACM_STOP, 0, 0)
6616
6617 #define Animate_Close(hwnd) Animate_Open(hwnd, NULL)
6618
6619 #define Animate_Seek(hwnd, frame) Animate_Play(hwnd, frame, frame, 1)
6620
6621 /* Property sheet macros */
6622
6623 #define PropSheet_AddPage(hPropSheetDlg, hpage) SendMessage(hPropSheetDlg, PSM_ADDPAGE, 0, (LPARAM)(HPROPSHEETPAGE)hpage)
6624
6625 #define PropSheet_Apply(hPropSheetDlg) SendMessage(hPropSheetDlg, PSM_APPLY, 0, 0)
6626
6627 #define PropSheet_CancelToClose(hPropSheetDlg) SendMessage(hPropSheetDlg, PSM_CANCELTOCLOSE, 0, 0)
6628
6629 #define PropSheet_Changed(hPropSheetDlg, hwndPage) SendMessage(hPropSheetDlg, PSM_CHANGED, (WPARAM)(HWND)hwndPage, 0)
6630
6631 #define PropSheet_GetCurrentPageHwnd(hDlg) SendMessage(hDlg, PSM_GETCURRENTPAGEHWND, 0, 0)
6632
6633 #define PropSheet_GetTabControl(hPropSheetDlg) SendMessage(hPropSheetDlg, PSM_GETTABCONTROL, 0, 0)
6634
6635 #define PropSheet_IsDialogMessage(hDlg, pMsg) SendMessage(hDlg, PSM_ISDIALOGMESSAGE, 0, (LPARAM)pMsg)
6636
6637 #define PropSheet_PressButton(hPropSheetDlg, iButton) SendMessage(hPropSheetDlg, PSM_PRESSBUTTON, (WPARAM)(int)iButton, 0)
6638
6639 #define PropSheet_QuerySiblings(hPropSheetDlg, param1, param2) SendMessage(hPropSheetDlg, PSM_QUERYSIBLINGS, (WPARAM)param1, (LPARAM)param2)
6640
6641 #define PropSheet_RebootSystem(hPropSheetDlg) SendMessage(hPropSheetDlg, PSM_REBOOTSYSTEM, 0, 0)
6642
6643 #define PropSheet_RemovePage(hPropSheetDlg, index, hpage) SendMessage(hPropSheetDlg, PSM_REMOVEPAGE, (WPARAM)(int)index, (LPARAM)(HPROPSHEETPAGE)hpage)
6644
6645 #define PropSheet_RestartWindows(hPropSheetDlg) SendMessage(hPropSheetDlg, PSM_RESTARTWINDOWS, 0, 0)
6646
6647 #define PropSheet_SetCurSel(hPropSheetDlg, hpage, index) SendMessage(hPropSheetDlg, PSM_SETCURSEL, (WPARAM)(int)index, (LPARAM)(HPROPSHEETPAGE)hpage)
6648
6649 #define PropSheet_SetCurSelByID(hPropSheetDlg, id) SendMessage(hPropSheetDlg, PSM_SETCURSELID, 0, (LPARAM)(int)id)
6650
6651 #define PropSheet_SetFinishText(hPropSheetDlg, lpszText) SendMessage(hPropSheetDlg, PSM_SETFINISHTEXT, 0, (LPARAM)(LPTSTR)lpszText)
6652
6653 #define PropSheet_SetTitle(hPropSheetDlg, dwStyle, lpszText) SendMessage(hPropSheetDlg, PSM_SETTITLE, (WPARAM)(DWORD)dwStyle, (LPARAM)(LPCTSTR)lpszText)
6654
6655 #define PropSheet_SetWizButtons(hPropSheetDlg, dwFlags) SendMessage(hPropSheetDlg, PSM_SETWIZBUTTONS, 0, (LPARAM)(DWORD)dwFlags)
6656
6657 #define PropSheet_UnChanged(hPropSheetDlg, hwndPage) SendMessage(hPropSheetDlg, PSM_UNCHANGED, (WPARAM)(HWND)hwndPage, 0)
6658
6659 /* Header control */
6660 #define Header_DeleteItem(hwndHD, index)     (BOOL)SendMessage((hwndHD), HDM_DELETEITEM, (WPARAM)(int)(index), 0L)  
6661
6662 #define Header_GetItem(hwndHD, index, phdi)      (BOOL)SendMessage((hwndHD), HDM_GETITEM,   (WPARAM)(int)(index), (LPARAM)(HD_ITEM FAR*)(phdi))
6663  
6664 #define Header_GetItemCount(hwndHD)   (int)SendMessage((hwndHD), HDM_GETITEMCOUNT, 0, 0L)
6665
6666 #define Header_InsertItem(hwndHD, index, phdi) (int)SendMessage((hwndHD), HDM_INSERTITEM, (WPARAM)(int)(index), (LPARAM)(const HD_ITEM FAR*)(phdi))
6667   
6668 #define Header_Layout(hwndHD, playout) (BOOL)SendMessage((hwndHD), HDM_LAYOUT, 0, (LPARAM)(HD_LAYOUT FAR*)(playout))
6669   
6670 #define Header_SetItem(hwndHD, index, phdi) (BOOL)SendMessage((hwndHD), HDM_SETITEM,  (WPARAM)(int)(index), (LPARAM)(const HD_ITEM FAR*)(phdi))
6671
6672 /* List View */
6673 #define ListView_Arrange(hwndLV, code) SendMessage((hwndLV), LVM_ARRANGE, (WPARAM)(UINT)(code), 0)
6674
6675 #define ListView_CreateDragImage(hwnd, i, lpptUpLeft) SendMessage((hwnd), LVM_CREATEDRAGIMAGE, (WPARAM)(int)(i), (LPARAM)(LPPOINT)(lpptUpLeft))
6676
6677 #define ListView_DeleteAllItems(hwnd) SendMessage(hwnd, LVM_DELETEALLITEMS, 0, 0)
6678
6679 #define ListView_DeleteColumn(hwnd, iCol) SendMessage((hwnd), LVM_DELETECOLUMN, (WPARAM)(int)(iCol), 0)
6680
6681 #define ListView_DeleteItem(hwnd, iItem) SendMessage(hwnd, LVM_DELETEITEM, (WPARAM)(int)iItem, 0)
6682
6683 #define ListView_EditLabel(hwndLV, i) SendMessage((hwndLV), LVM_EDITLABEL, (WPARAM)(int)i, 0)
6684
6685 #define ListView_EnsureVisible(hwndLV, i, fPartialOK) SendMessage(hwndLV, LVM_ENSUREVISIBLE, (WPARAM)(int)i, MAKELPARAM((fPartialOK), 0))
6686
6687 #define ListView_FindItem(hwnd, iStart, plvfi) SendMessage(hwnd, LVM_FINDITEM, (WPARAM)(int)iStart, (LPARAM)(const LV_FINDINFO *)plvfi)
6688
6689 #define ListView_GetBkColor(hwnd) SendMessage((HWND)hwnd, LVM_GETBKCOLOR, 0, 0)
6690
6691 #define ListView_GetCallbackMask(hwnd) SendMessage(hwnd, LVM_GETCALLBACKMASK, 0, 0)
6692
6693 #define ListView_GetColumn(hwnd, iCol, pcol) SendMessage((hwnd), LVM_GETCOLUMN, (WPARAM)(int)(iCol), (LPARAM)(LV_COLUMN *)(pcol))
6694
6695 #define ListView_GetColumnWidth(hwnd, iCol) SendMessage((hwnd), LVM_GETCOLUMNWIDTH, (WPARAM)(int)(iCol), 0)
6696
6697 #define ListView_GetCountPerPage(hwndLV) SendMessage((hwndLV), LVM_GETCOUNTPERPAGE, 0, 0)
6698
6699 #define ListView_GetEditControl(hwndLV) SendMessage((hwndLV), LVM_GETEDITCONTROL, 0, 0)
6700
6701 #define ListView_GetImageList(hwnd, iImageList) SendMessage(hwnd, LVM_GETIMAGELIST, (WPARAM)(INT)iImageList, 0)
6702
6703 #define ListView_GetISearchString(hwndLV, lpsz) SendMessage((hwndLV), LVM_GETISEARCHSTRING, 0, (LPARAM)(LPTSTR)lpsz)
6704
6705 #define ListView_GetItem(hwnd, pitem) SendMessage(hwnd, LVM_GETITEM, 0, (LPARAM)(LV_ITEM *)(pitem))
6706
6707 #define ListView_GetItemCount(hwnd) SendMessage(hwnd, LVM_GETITEMCOUNT, 0, 0)
6708
6709 #define ListView_GetItemPosition(hwndLV, i, ppt) SendMessage(hwndLV, LVM_GETITEMPOSITION, (WPARAM)(int)i, (LPARAM)(POINT *)ppt)
6710
6711 #define ListView_GetItemRect(hwnd, i, prc, code) SendMessage(hwnd, LVM_GETITEMRECT, (WPARAM)(int)i, ((prc) ? (((RECT *)(prc))->left = (code), (LPARAM)(RECT *)(prc)) : (LPARAM)(RECT *)NULL))
6712
6713 #define ListView_GetItemSpacing(hwndLV, fSmall) SendMessage((hwndLV), LVM_GETITEMSPACING, fSmall, 0)
6714
6715 #define ListView_GetItemState(hwndLV, i, mask) SendMessage((hwndLV), LVM_GETITEMSTATE, (WPARAM)i, (LPARAM)mask)
6716
6717 #define ListView_GetItemText(hwndLV, i, iSubItem_, pszText_, cchTextMax_) { LV_ITEM _gnu_lvi;_gnu_lvi.iSubItem = iSubItem_;_gnu_lvi.cchTextMax = cchTextMax_;_gnu_lvi.pszText = pszText_;SendMessage((hwndLV), LVM_GETITEMTEXT, (WPARAM)i, (LPARAM)(LV_ITEM *)&_gnu_lvi);}
6718
6719 #define ListView_GetNextItem(hwnd, iStart, flags) SendMessage(hwnd, LVM_GETNEXTITEM, (WPARAM)(int)iStart, (LPARAM)flags)
6720
6721 #define ListView_GetOrigin(hwndLV, ppt) SendMessage((hwndLV), LVM_GETORIGIN, (WPARAM)0, (LPARAM)(POINT *)(ppt))
6722
6723 #define ListView_GetSelectedCount(hwndLV) SendMessage((hwndLV), LVM_GETSELECTEDCOUNT, 0, 0)
6724
6725 #define ListView_GetStringWidth(hwndLV, psz) SendMessage(hwndLV, LVM_GETSTRINGWIDTH, 0, (LPARAM)(LPCTSTR)psz)
6726
6727 #define ListView_GetTextBkColor(hwnd)  SendMessage((hwnd), LVM_GETTEXTBKCOLOR, 0, 0)
6728
6729 #define ListView_GetTextColor(hwnd)  SendMessage((hwnd), LVM_GETTEXTCOLOR, 0, 0)
6730
6731 #define ListView_GetTopIndex(hwndLV) SendMessage((hwndLV), LVM_GETTOPINDEX, 0, 0)
6732
6733 #define ListView_GetViewRect(hwnd, prc) SendMessage((hwnd), LVM_GETVIEWRECT, 0, (LPARAM)(RECT *)(prc))
6734
6735 #define ListView_HitTest(hwndLV, pinfo) SendMessage(hwndLV, LVM_HITTEST, 0, (LPARAM)(LV_HITTESTINFO *)pinfo)
6736
6737 #define ListView_InsertColumn(hwnd, iCol, pcol) SendMessage((hwnd), LVM_INSERTCOLUMN, (WPARAM)(int)(iCol), (LPARAM)(const LV_COLUMN *)(pcol))
6738
6739 #define ListView_InsertItem(hwnd, pitem) SendMessage(hwnd, LVM_INSERTITEM, 0, (LPARAM)(const LV_ITEM *)pitem)
6740
6741 #define ListView_RedrawItems(hwndLV, iFirst, iLast) SendMessage((hwndLV), LVM_REDRAWITEMS, (WPARAM)(int)iFirst, (LPARAM)(int)iLast)
6742
6743 #define ListView_Scroll(hwndLV, dx, dy) SendMessage((hwndLV), LVM_SCROLL, (WPARAM)(int)dx, (LPARAM)(int)dy)
6744
6745 #define ListView_SetBkColor(hwnd, clrBk) SendMessage(hwnd, LVM_SETBKCOLOR, 0, (LPARAM)(COLORREF)clrBk)
6746
6747 #define ListView_SetCallbackMask(hwnd, mask) SendMessage(hwnd, LVM_SETCALLBACKMASK, (WPARAM)(UINT)(mask), 0)
6748
6749 #define ListView_SetColumn(hwnd, iCol, pcol) SendMessage((hwnd), LVM_SETCOLUMN, (WPARAM)(int)(iCol), (LPARAM)(const LV_COLUMN *)(pcol))
6750
6751 #define ListView_SetColumnWidth(hwnd, iCol, cx) SendMessage((hwnd), LVM_SETCOLUMNWIDTH, (WPARAM)(int)(iCol),  MAKELPARAM((cx), 0))
6752
6753
6754 #define ListView_SetImageList(hwnd, himl, iImageList) SendMessage(hwnd, LVM_SETIMAGELIST, (WPARAM)(iImageList),             (LPARAM)(UINT)(HIMAGELIST)(himl))
6755
6756 #define ListView_SetItem(hwnd, pitem) SendMessage(hwnd, LVM_SETITEM, 0, (LPARAM)(const LV_ITEM *)pitem)
6757
6758 #define ListView_SetItemCount(hwndLV, cItems) SendMessage((hwndLV), LVM_SETITEMCOUNT, (WPARAM)cItems, 0)
6759
6760 #define ListView_SetItemPosition(hwndLV, i, x, y) SendMessage(hwndLV, LVM_SETITEMPOSITION, (WPARAM)(int)(i),        MAKELPARAM((x), (y)))
6761
6762 #define ListView_SetItemPosition32(hwndLV, i, x, y) { POINT ptNewPos = {x,y};     SendMessage((hwndLV), LVM_SETITEMPOSITION32, (WPARAM)(int)(i),                (LPARAM)&ptNewPos); }
6763
6764 #define ListView_SetItemState(hwndLV, i, data, mask) { LV_ITEM _gnu_lvi;  _gnu_lvi.stateMask = mask;  _gnu_lvi.state = data;  SendMessage((hwndLV), LVM_SETITEMSTATE, (WPARAM)i,              (LPARAM)(LV_ITEM *)&_gnu_lvi);}
6765
6766 #define ListView_SetItemText(hwndLV, i, iSubItem_, pszText_) { LV_ITEM _gnu_lvi;  _gnu_lvi.iSubItem = iSubItem_;  _gnu_lvi.pszText = pszText_;  SendMessage((hwndLV), LVM_SETITEMTEXT, (WPARAM)i,             (LPARAM)(LV_ITEM *)&_gnu_lvi);}
6767
6768 #define ListView_SetTextBkColor(hwnd, clrTextBk) SendMessage((hwnd), LVM_SETTEXTBKCOLOR, 0, (LPARAM)(COLORREF)(clrTextBk))
6769
6770 #define ListView_SetTextColor(hwnd, clrText) SendMessage((hwnd), LVM_SETTEXTCOLOR, 0, (LPARAM)(COLORREF)(clrText))
6771
6772 #define ListView_SortItems(hwndLV, _pfnCompare, _lPrm) SendMessage((hwndLV), LVM_SORTITEMS, (WPARAM)(LPARAM)_lPrm,          (LPARAM)(PFNLVCOMPARE)_pfnCompare)
6773
6774 #define ListView_Update(hwndLV, i) SendMessage((hwndLV), LVM_UPDATE, (WPARAM)i, 0)
6775
6776 /* Tree View */
6777 #define TreeView_InsertItem(hwnd, lpis) SendMessage((hwnd), TVM_INSERTITEM, 0, (LPARAM)(LPTV_INSERTSTRUCT)(lpis))
6778
6779 #define TreeView_DeleteItem(hwnd, hitem) SendMessage((hwnd), TVM_DELETEITEM, 0, (LPARAM)(HTREEITEM)(hitem))
6780
6781 #define TreeView_DeleteAllItems(hwnd) SendMessage((hwnd), TVM_DELETEITEM, 0, (LPARAM)TVI_ROOT)
6782
6783 #define TreeView_Expand(hwnd, hitem, code) SendMessage((hwnd), TVM_EXPAND, (WPARAM)code, (LPARAM)(HTREEITEM)(hitem))
6784
6785 #define TreeView_GetItemRect(hwnd, hitem, prc, code) SendMessage((hwnd), TVM_GETITEMRECT, (WPARAM)(code), (LPARAM)(RECT *)(prc)))
6786
6787 #define TreeView_GetCount(hwnd) SendMessage((hwnd), TVM_GETCOUNT, 0, 0)
6788
6789 #define TreeView_GetIndent(hwnd) SendMessage((hwnd), TVM_GETINDENT, 0, 0)
6790
6791 #define TreeView_SetIndent(hwnd, indent) SendMessage((hwnd), TVM_SETINDENT, (WPARAM)indent, 0)
6792
6793 #define TreeView_GetImageList(hwnd, iImage) SendMessage((hwnd), TVM_GETIMAGELIST, iImage, 0)
6794
6795 #define TreeView_SetImageList(hwnd, himl, iImage) SendMessage((hwnd), TVM_SETIMAGELIST, iImage, (LPARAM)(UINT)(HIMAGELIST)(himl))
6796
6797 #define TreeView_GetNextItem(hwnd, hitem, code) SendMessage((hwnd), TVM_GETNEXTITEM, (WPARAM)code, (LPARAM)(HTREEITEM)(hitem))
6798
6799 #define TreeView_GetChild(hwnd, hitem) TreeView_GetNextItem(hwnd, hitem, TVGN_CHILD)
6800
6801 #define TreeView_GetNextSibling(hwnd, hitem) TreeView_GetNextItem(hwnd, hitem, TVGN_NEXT)
6802
6803 #define TreeView_GetPrevSibling(hwnd, hitem) TreeView_GetNextItem(hwnd, hitem, TVGN_PREVIOUS)
6804
6805 #define TreeView_GetParent(hwnd, hitem) TreeView_GetNextItem(hwnd, hitem, TVGN_PARENT)
6806
6807 #define TreeView_GetFirstVisible(hwnd) TreeView_GetNextItem(hwnd, NULL,  TVGN_FIRSTVISIBLE)
6808
6809 #define TreeView_GetNextVisible(hwnd, hitem) TreeView_GetNextItem(hwnd, hitem, TVGN_NEXTVISIBLE)
6810
6811 #define TreeView_GetPrevVisible(hwnd, hitem) TreeView_GetNextItem(hwnd, hitem, TVGN_PREVIOUSVISIBLE)
6812
6813 #define TreeView_GetSelection(hwnd) TreeView_GetNextItem(hwnd, NULL,  TVGN_CARET)
6814
6815 #define TreeView_GetDropHilight(hwnd) TreeView_GetNextItem(hwnd, NULL,  TVGN_DROPHILITE)
6816
6817 #define TreeView_GetRoot(hwnd) TreeView_GetNextItem(hwnd, NULL,  TVGN_ROOT)
6818
6819 #define TreeView_Select(hwnd, hitem, code) SendMessage((hwnd), TVM_SELECTITEM, (WPARAM)code, (LPARAM)(HTREEITEM)(hitem))
6820
6821
6822 #define TreeView_SelectItem(hwnd, hitem) TreeView_Select(hwnd, hitem, TVGN_CARET)
6823
6824 #define TreeView_SelectDropTarget(hwnd, hitem) TreeView_Select(hwnd, hitem, TVGN_DROPHILITE)
6825
6826 #define TreeView_SelectSetFirstVisible(hwnd, hitem) TreeView_Select(hwnd, hitem, TVGN_FIRSTVISIBLE)
6827
6828 #define TreeView_GetItem(hwnd, pitem) SendMessage((hwnd), TVM_GETITEM, 0, (LPARAM)(TV_ITEM *)(pitem))
6829
6830 #define TreeView_SetItem(hwnd, pitem) SendMessage((hwnd), TVM_SETITEM, 0, (LPARAM)(const TV_ITEM *)(pitem))
6831
6832 #define TreeView_EditLabel(hwnd, hitem) SendMessage((hwnd), TVM_EDITLABEL, 0, (LPARAM)(HTREEITEM)(hitem))
6833
6834 #define TreeView_GetEditControl(hwnd) SendMessage((hwnd), TVM_GETEDITCONTROL, 0, 0)
6835
6836 #define TreeView_GetVisibleCount(hwnd) SendMessage((hwnd), TVM_GETVISIBLECOUNT, 0, 0)
6837
6838 #define TreeView_HitTest(hwnd, lpht) SendMessage((hwnd), TVM_HITTEST, 0, (LPARAM)(LPTV_HITTESTINFO)(lpht))
6839
6840 #define TreeView_CreateDragImage(hwnd, hitem) SendMessage((hwnd), TVM_CREATEDRAGIMAGE, 0, (LPARAM)(HTREEITEM)(hitem))
6841
6842 #define TreeView_SortChildren(hwnd, hitem, recurse) SendMessage((hwnd), TVM_SORTCHILDREN, (WPARAM)recurse,             (LPARAM)(HTREEITEM)(hitem))
6843
6844 #define TreeView_EnsureVisible(hwnd, hitem) SendMessage((hwnd), TVM_ENSUREVISIBLE, 0, (LPARAM)(HTREEITEM)(hitem))
6845
6846 #define TreeView_SortChildrenCB(hwnd, psort, recurse) SendMessage((hwnd), TVM_SORTCHILDRENCB, (WPARAM)recurse,             (LPARAM)(LPTV_SORTCB)(psort))
6847
6848 #define TreeView_EndEditLabelNow(hwnd, fCancel) SendMessage((hwnd), TVM_ENDEDITLABELNOW, (WPARAM)fCancel, 0)
6849
6850 #define TreeView_GetISearchString(hwndTV, lpsz) SendMessage((hwndTV), TVM_GETISEARCHSTRING, 0, (LPARAM)(LPTSTR)lpsz)
6851
6852
6853 /* Tab control */
6854 #define TabCtrl_GetImageList(hwnd) SendMessage((hwnd), TCM_GETIMAGELIST, 0, 0)
6855
6856 #define TabCtrl_SetImageList(hwnd, himl) SendMessage((hwnd), TCM_SETIMAGELIST, 0, (LPARAM)(UINT)(HIMAGELIST)(himl))
6857
6858 #define TabCtrl_GetItemCount(hwnd) SendMessage((hwnd), TCM_GETITEMCOUNT, 0, 0)
6859
6860 #define TabCtrl_GetItem(hwnd, iItem, pitem) SendMessage((hwnd), TCM_GETITEM, (WPARAM)(int)iItem,             (LPARAM)(TC_ITEM *)(pitem))
6861
6862 #define TabCtrl_SetItem(hwnd, iItem, pitem) SendMessage((hwnd), TCM_SETITEM, (WPARAM)(int)iItem,             (LPARAM)(TC_ITEM *)(pitem))
6863
6864 #define TabCtrl_InsertItem(hwnd, iItem, pitem)   SendMessage((hwnd), TCM_INSERTITEM, (WPARAM)(int)iItem,             (LPARAM)(const TC_ITEM *)(pitem))
6865
6866 #define TabCtrl_DeleteItem(hwnd, i) SendMessage((hwnd), TCM_DELETEITEM, (WPARAM)(int)(i), 0)
6867
6868 #define TabCtrl_DeleteAllItems(hwnd) SendMessage((hwnd), TCM_DELETEALLITEMS, 0, 0)
6869
6870 #define TabCtrl_GetItemRect(hwnd, i, prc) SendMessage((hwnd), TCM_GETITEMRECT, (WPARAM)(int)(i), (LPARAM)(RECT *)(prc))
6871
6872 #define TabCtrl_GetCurSel(hwnd) SendMessage((hwnd), TCM_GETCURSEL, 0, 0)
6873
6874 #define TabCtrl_SetCurSel(hwnd, i) SendMessage((hwnd), TCM_SETCURSEL, (WPARAM)i, 0)
6875
6876 #define TabCtrl_HitTest(hwndTC, pinfo) SendMessage((hwndTC), TCM_HITTEST, 0, (LPARAM)(TC_HITTESTINFO *)(pinfo))
6877
6878 #define TabCtrl_SetItemExtra(hwndTC, cb) SendMessage((hwndTC), TCM_SETITEMEXTRA, (WPARAM)(cb), 0)
6879
6880 #define TabCtrl_AdjustRect(hwnd, bLarger, prc) SendMessage(hwnd, TCM_ADJUSTRECT, (WPARAM)(WINBOOL)bLarger,             (LPARAM)(RECT *)prc)
6881
6882 #define TabCtrl_SetItemSize(hwnd, x, y) SendMessage((hwnd), TCM_SETITEMSIZE, 0, MAKELPARAM(x,y))
6883
6884 #define TabCtrl_RemoveImage(hwnd, i) SendMessage((hwnd), TCM_REMOVEIMAGE, i, 0)
6885
6886 #define TabCtrl_SetPadding(hwnd,  cx, cy) SendMessage((hwnd), TCM_SETPADDING, 0, MAKELPARAM(cx, cy))
6887
6888 #define TabCtrl_GetRowCount(hwnd) SendMessage((hwnd), TCM_GETROWCOUNT, 0, 0)
6889
6890 #define TabCtrl_GetToolTips(hwnd) SendMessage((hwnd), TCM_GETTOOLTIPS, 0, 0)
6891
6892 #define TabCtrl_SetToolTips(hwnd, hwndTT) SendMessage((hwnd), TCM_SETTOOLTIPS, (WPARAM)hwndTT, 0)
6893
6894 #define TabCtrl_GetCurFocus(hwnd) SendMessage((hwnd), TCM_GETCURFOCUS, 0, 0)
6895
6896 #define TabCtrl_SetCurFocus(hwnd, i) SendMessage((hwnd),TCM_SETCURFOCUS, i, 0)
6897
6898 #define CommDlg_OpenSave_GetSpecA(_hdlg, _psz, _cbmax) SNDMSG(_hdlg, CDM_GETSPEC, (WPARAM)_cbmax, (LPARAM)(LPSTR)_psz)
6899
6900 #define CommDlg_OpenSave_GetSpecW(_hdlg, _psz, _cbmax) SNDMSG(_hdlg, CDM_GETSPEC, (WPARAM)_cbmax, (LPARAM)(LPWSTR)_psz)
6901
6902 #ifdef UNICODE
6903 #define CommDlg_OpenSave_GetSpec  CommDlg_OpenSave_GetSpecW
6904 #else
6905 #define CommDlg_OpenSave_GetSpec  CommDlg_OpenSave_GetSpecA
6906 #endif /* !UNICODE */
6907
6908 #define CommDlg_OpenSave_GetFilePathA(_hdlg, _psz, _cbmax) SNDMSG(_hdlg, CDM_GETFILEPATH, (WPARAM)_cbmax, (LPARAM)(LPSTR)_psz)
6909
6910 #define CommDlg_OpenSave_GetFilePathW(_hdlg, _psz, _cbmax) SNDMSG(_hdlg, CDM_GETFILEPATH, (WPARAM)_cbmax, (LPARAM)(LPWSTR)_psz)
6911
6912 #ifdef UNICODE
6913 #define CommDlg_OpenSave_GetFilePath  CommDlg_OpenSave_GetFilePathW
6914 #else
6915 #define CommDlg_OpenSave_GetFilePath  CommDlg_OpenSave_GetFilePathA
6916 #endif /* !UNICODE */
6917
6918 #define CommDlg_OpenSave_GetFolderPathA(_hdlg, _psz, _cbmax) SNDMSG(_hdlg, CDM_GETFOLDERPATH, (WPARAM)_cbmax, (LPARAM)(LPSTR)_psz)
6919
6920 #define CommDlg_OpenSave_GetFolderPathW(_hdlg, _psz, _cbmax) SNDMSG(_hdlg, CDM_GETFOLDERPATH, (WPARAM)_cbmax, (LPARAM)(LPWSTR)_psz)
6921
6922 #ifdef UNICODE
6923 #define CommDlg_OpenSave_GetFolderPath  CommDlg_OpenSave_GetFolderPathW
6924 #else
6925 #define CommDlg_OpenSave_GetFolderPath  CommDlg_OpenSave_GetFolderPathA
6926 #endif /* !UNICODE */
6927
6928 #define CommDlg_OpenSave_GetFolderIDList(_hdlg, _pidl, _cbmax) SNDMSG(_hdlg, CDM_GETFOLDERIDLIST, (WPARAM)_cbmax, (LPARAM)(LPVOID)_pidl)
6929
6930 #define CommDlg_OpenSave_SetControlText(_hdlg, _id, _text) SNDMSG(_hdlg, CDM_SETCONTROLTEXT, (WPARAM)_id, (LPARAM)(LPSTR)_text)
6931
6932 #define CommDlg_OpenSave_HideControl(_hdlg, _id) SNDMSG(_hdlg, CDM_HIDECONTROL, (WPARAM)_id, 0)
6933
6934 #define CommDlg_OpenSave_SetDefExt(_hdlg, _pszext) SNDMSG(_hdlg, CDM_SETDEFEXT, 0, (LPARAM)(LPSTR)_pszext)
6935
6936 LONG
6937 STDCALL
6938 RegCloseKey (
6939     HKEY hKey
6940     );
6941
6942 LONG
6943 STDCALL
6944 RegSetKeySecurity (
6945     HKEY hKey,
6946     SECURITY_INFORMATION SecurityInformation,
6947     PSECURITY_DESCRIPTOR pSecurityDescriptor
6948     );
6949
6950 LONG
6951 STDCALL
6952 RegFlushKey (
6953     HKEY hKey
6954     );
6955
6956 LONG
6957 STDCALL
6958 RegGetKeySecurity (
6959     HKEY hKey,
6960     SECURITY_INFORMATION SecurityInformation,
6961     PSECURITY_DESCRIPTOR pSecurityDescriptor,
6962     LPDWORD lpcbSecurityDescriptor
6963     );
6964
6965 LONG
6966 STDCALL
6967 RegNotifyChangeKeyValue (
6968     HKEY hKey,
6969     WINBOOL bWatchSubtree,
6970     DWORD dwNotifyFilter,
6971     HANDLE hEvent,
6972     WINBOOL fAsynchronus
6973     );
6974
6975 WINBOOL
6976 STDCALL
6977 IsValidCodePage(
6978     UINT  CodePage);
6979
6980
6981 UINT
6982 STDCALL
6983 GetACP(void);
6984
6985
6986 UINT
6987 STDCALL
6988 GetOEMCP(void);
6989
6990
6991 WINBOOL
6992 STDCALL
6993 GetCPInfo(UINT, LPCPINFO);
6994
6995
6996 WINBOOL
6997 STDCALL
6998 IsDBCSLeadByte(
6999     BYTE  TestChar);
7000
7001
7002 WINBOOL
7003 STDCALL
7004 IsDBCSLeadByteEx(
7005     UINT  CodePage,
7006     BYTE  TestChar);
7007
7008
7009 int
7010 STDCALL
7011 MultiByteToWideChar(
7012     UINT     CodePage,
7013     DWORD    dwFlags,
7014     LPCSTR   lpMultiByteStr,
7015     int      cchMultiByte,
7016     LPWSTR   lpWideCharStr,
7017     int      cchWideChar);
7018
7019
7020 int
7021 STDCALL
7022 WideCharToMultiByte(
7023     UINT     CodePage,
7024     DWORD    dwFlags,
7025     LPCWSTR  lpWideCharStr,
7026     int      cchWideChar,
7027     LPSTR    lpMultiByteStr,
7028     int      cchMultiByte,
7029     LPCSTR   lpDefaultChar,
7030     LPBOOL   lpUsedDefaultChar);
7031
7032 WINBOOL
7033 STDCALL
7034 IsValidLocale(
7035     LCID   Locale,
7036     DWORD  dwFlags);
7037
7038
7039 LCID
7040 STDCALL
7041 ConvertDefaultLocale(
7042     LCID   Locale);
7043
7044
7045 LCID
7046 STDCALL
7047 GetThreadLocale(void);
7048
7049
7050 WINBOOL
7051 STDCALL
7052 SetThreadLocale(
7053     LCID  Locale
7054     );
7055
7056
7057 LANGID
7058 STDCALL
7059 GetSystemDefaultLangID(void);
7060
7061
7062 LANGID
7063 STDCALL
7064 GetUserDefaultLangID(void);
7065
7066
7067 LCID
7068 STDCALL
7069 GetSystemDefaultLCID(void);
7070
7071
7072 LCID
7073 STDCALL
7074 GetUserDefaultLCID(void);
7075
7076
7077 WINBOOL
7078 STDCALL
7079 ReadConsoleOutputAttribute(
7080     HANDLE hConsoleOutput,
7081     LPWORD lpAttribute,
7082     DWORD nLength,
7083     COORD dwReadCoord,
7084     LPDWORD lpNumberOfAttrsRead
7085     );
7086
7087
7088 WINBOOL
7089 STDCALL
7090 WriteConsoleOutputAttribute(
7091     HANDLE hConsoleOutput,
7092     CONST WORD *lpAttribute,
7093     DWORD nLength,
7094     COORD dwWriteCoord,
7095     LPDWORD lpNumberOfAttrsWritten
7096     );
7097
7098
7099 WINBOOL
7100 STDCALL
7101 FillConsoleOutputAttribute(
7102     HANDLE hConsoleOutput,
7103     WORD   wAttribute,
7104     DWORD  nLength,
7105     COORD  dwWriteCoord,
7106     LPDWORD lpNumberOfAttrsWritten
7107     );
7108
7109
7110 WINBOOL
7111 STDCALL
7112 GetConsoleMode(
7113     HANDLE hConsoleHandle,
7114     LPDWORD lpMode
7115     );
7116
7117
7118 WINBOOL
7119 STDCALL
7120 GetNumberOfConsoleInputEvents(
7121     HANDLE hConsoleInput,
7122     LPDWORD lpNumberOfEvents
7123     );
7124
7125
7126 WINBOOL
7127 STDCALL
7128 GetConsoleScreenBufferInfo(
7129     HANDLE hConsoleOutput,
7130     PCONSOLE_SCREEN_BUFFER_INFO lpConsoleScreenBufferInfo
7131     );
7132
7133
7134 COORD
7135 STDCALL
7136 GetLargestConsoleWindowSize(
7137     HANDLE hConsoleOutput
7138     );
7139
7140
7141 WINBOOL
7142 STDCALL
7143 GetConsoleCursorInfo(
7144     HANDLE hConsoleOutput,
7145     PCONSOLE_CURSOR_INFO lpConsoleCursorInfo
7146     );
7147
7148
7149 WINBOOL
7150 STDCALL
7151 GetNumberOfConsoleMouseButtons(
7152     LPDWORD lpNumberOfMouseButtons
7153     );
7154
7155
7156 WINBOOL
7157 STDCALL
7158 SetConsoleMode(
7159     HANDLE hConsoleHandle,
7160     DWORD dwMode
7161     );
7162
7163
7164 WINBOOL
7165 STDCALL
7166 SetConsoleActiveScreenBuffer(
7167     HANDLE hConsoleOutput
7168     );
7169
7170
7171 WINBOOL
7172 STDCALL
7173 FlushConsoleInputBuffer(
7174     HANDLE hConsoleInput
7175     );
7176
7177
7178 WINBOOL
7179 STDCALL
7180 SetConsoleScreenBufferSize(
7181     HANDLE hConsoleOutput,
7182     COORD dwSize
7183     );
7184
7185
7186 WINBOOL
7187 STDCALL
7188 SetConsoleCursorPosition(
7189     HANDLE hConsoleOutput,
7190     COORD dwCursorPosition
7191     );
7192
7193
7194 WINBOOL
7195 STDCALL
7196 SetConsoleCursorInfo(
7197     HANDLE hConsoleOutput,
7198     CONST CONSOLE_CURSOR_INFO *lpConsoleCursorInfo
7199     );
7200
7201 WINBOOL
7202 STDCALL
7203 SetConsoleWindowInfo(
7204     HANDLE hConsoleOutput,
7205     WINBOOL bAbsolute,
7206     CONST SMALL_RECT *lpConsoleWindow
7207     );
7208
7209
7210 WINBOOL
7211 STDCALL
7212 SetConsoleTextAttribute(
7213     HANDLE hConsoleOutput,
7214     WORD wAttributes
7215     );
7216
7217
7218 WINBOOL
7219 STDCALL
7220 SetConsoleCtrlHandler(
7221     PHANDLER_ROUTINE HandlerRoutine,
7222     WINBOOL Add
7223     );
7224
7225
7226 WINBOOL
7227 STDCALL
7228 GenerateConsoleCtrlEvent(
7229     DWORD dwCtrlEvent,
7230     DWORD dwProcessGroupId
7231     );
7232
7233
7234 WINBOOL
7235 STDCALL
7236 AllocConsole( VOID );
7237
7238
7239 WINBOOL
7240 STDCALL
7241 FreeConsole( VOID );
7242
7243
7244
7245 HANDLE
7246 STDCALL
7247 CreateConsoleScreenBuffer(
7248     DWORD dwDesiredAccess,
7249     DWORD dwShareMode,
7250     CONST SECURITY_ATTRIBUTES *lpSecurityAttributes,
7251     DWORD dwFlags,
7252     LPVOID lpScreenBufferData
7253     );
7254
7255
7256 UINT
7257 STDCALL
7258 GetConsoleCP( VOID );
7259
7260
7261 WINBOOL
7262 STDCALL
7263 SetConsoleCP(
7264     UINT wCodePageID
7265     );
7266
7267
7268 UINT
7269 STDCALL
7270 GetConsoleOutputCP( VOID );
7271
7272
7273 WINBOOL
7274 STDCALL
7275 SetConsoleOutputCP(
7276     UINT wCodePageID
7277     );
7278
7279 DWORD STDCALL
7280 WNetConnectionDialog(
7281     HWND  hwnd,
7282     DWORD dwType
7283     );
7284
7285 DWORD STDCALL
7286 WNetDisconnectDialog(
7287     HWND  hwnd,
7288     DWORD dwType
7289     );
7290
7291 DWORD STDCALL
7292 WNetCloseEnum(
7293     HANDLE   hEnum
7294     );
7295
7296 WINBOOL
7297 STDCALL
7298 CloseServiceHandle(
7299     SC_HANDLE   hSCObject
7300     );
7301
7302
7303 WINBOOL
7304 STDCALL
7305 ControlService(
7306     SC_HANDLE           hService,
7307     DWORD               dwControl,
7308     LPSERVICE_STATUS    lpServiceStatus
7309     );
7310
7311 WINBOOL
7312 STDCALL
7313 DeleteService(
7314     SC_HANDLE   hService
7315     );
7316
7317 SC_LOCK
7318 STDCALL
7319 LockServiceDatabase(
7320     SC_HANDLE   hSCManager
7321     );
7322
7323
7324 WINBOOL
7325 STDCALL
7326 NotifyBootConfigStatus(
7327     WINBOOL     BootAcceptable
7328     );
7329
7330 WINBOOL
7331 STDCALL
7332 QueryServiceObjectSecurity(
7333     SC_HANDLE               hService,
7334     SECURITY_INFORMATION    dwSecurityInformation,
7335     PSECURITY_DESCRIPTOR    lpSecurityDescriptor,
7336     DWORD                   cbBufSize,
7337     LPDWORD                 pcbBytesNeeded
7338     );
7339
7340
7341 WINBOOL
7342 STDCALL
7343 QueryServiceStatus(
7344     SC_HANDLE           hService,
7345     LPSERVICE_STATUS    lpServiceStatus
7346     );
7347
7348 WINBOOL
7349 STDCALL
7350 SetServiceObjectSecurity(
7351     SC_HANDLE               hService,
7352     SECURITY_INFORMATION    dwSecurityInformation,
7353     PSECURITY_DESCRIPTOR    lpSecurityDescriptor
7354     );
7355
7356
7357 WINBOOL
7358 STDCALL
7359 SetServiceStatus(
7360     SERVICE_STATUS_HANDLE   hServiceStatus,
7361     LPSERVICE_STATUS        lpServiceStatus
7362     );
7363
7364 WINBOOL
7365 STDCALL
7366 UnlockServiceDatabase(
7367     SC_LOCK     ScLock
7368     );
7369
7370 /* Extensions to OpenGL */
7371
7372 int STDCALL
7373 ChoosePixelFormat(HDC, CONST PIXELFORMATDESCRIPTOR *);  
7374
7375 int STDCALL
7376 DescribePixelFormat(HDC, int, UINT, LPPIXELFORMATDESCRIPTOR);
7377
7378 UINT STDCALL
7379 GetEnhMetaFilePixelFormat(HENHMETAFILE, DWORD,
7380                           CONST PIXELFORMATDESCRIPTOR *);
7381
7382 int STDCALL
7383 GetPixelFormat(HDC);
7384
7385 WINBOOL STDCALL
7386 SetPixelFormat(HDC, int, CONST PIXELFORMATDESCRIPTOR *);
7387
7388 WINBOOL STDCALL
7389 SwapBuffers(HDC);
7390
7391 HGLRC STDCALL
7392 wglCreateContext(HDC);
7393
7394 HGLRC STDCALL
7395 wglCreateLayerContext(HDC, int);
7396
7397 WINBOOL STDCALL
7398 wglCopyContext(HGLRC, HGLRC, UINT);
7399
7400 WINBOOL STDCALL
7401 wglDeleteContext(HGLRC);
7402
7403 WINBOOL STDCALL
7404 wglDescribeLayerPlane(HDC, int, int, UINT, LPLAYERPLANEDESCRIPTOR);
7405
7406 HGLRC STDCALL
7407 wglGetCurrentContext(VOID);
7408
7409 HDC STDCALL
7410 wglGetCurrentDC(VOID);
7411
7412 int STDCALL
7413 wglGetLayerPaletteEntries(HDC, int, int, int, CONST COLORREF *);
7414
7415 PROC STDCALL
7416 wglGetProcAddress(LPCSTR);
7417
7418 WINBOOL STDCALL
7419 wglMakeCurrent(HDC, HGLRC);
7420
7421 WINBOOL STDCALL
7422 wglRealizeLayerPalette(HDC, int, WINBOOL);
7423
7424 int STDCALL
7425 wglSetLayerPaletteEntries(HDC, int, int, int, CONST COLORREF *);
7426
7427 WINBOOL STDCALL
7428 wglShareLists(HGLRC, HGLRC);
7429
7430 WINBOOL STDCALL
7431 wglSwapLayerBuffers(HDC, UINT);
7432
7433 /*
7434   Why are these different between ANSI and UNICODE?
7435   There doesn't seem to be any difference.
7436   */
7437
7438 #ifdef UNICODE
7439 #define wglUseFontBitmaps  wglUseFontBitmapsW
7440 #define wglUseFontOutlines  wglUseFontOutlinesW
7441 #else
7442 #define wglUseFontBitmaps  wglUseFontBitmapsA
7443 #define wglUseFontOutlines  wglUseFontOutlinesA
7444 #endif /* !UNICODE */
7445
7446 /* ------------------------------------- */
7447 /* From shellapi.h in old Cygnus headers */
7448
7449 WINBOOL WINAPI
7450 DragQueryPoint (HDROP, LPPOINT);
7451
7452 void WINAPI
7453 DragFinish (HDROP);
7454
7455 void WINAPI
7456 DragAcceptFiles (HWND, WINBOOL);
7457
7458 HICON WINAPI
7459 DuplicateIcon (HINSTANCE, HICON);
7460
7461 /* end of stuff from shellapi.h in old Cygnus headers */
7462 /* -------------------------------------------------- */
7463 /* From ddeml.h in old Cygnus headers */
7464
7465 HCONV WINAPI    DdeConnect (DWORD, HSZ, HSZ, CONVCONTEXT *);
7466 WINBOOL WINAPI  DdeDisconnect (HCONV);
7467 WINBOOL WINAPI  DdeFreeDataHandle (HDDEDATA);
7468 DWORD WINAPI    DdeGetData (HDDEDATA, BYTE *, DWORD, DWORD);
7469 UINT WINAPI     DdeGetLastError (DWORD);
7470 HDDEDATA WINAPI DdeNameService (DWORD, HSZ, HSZ, UINT);
7471 WINBOOL WINAPI  DdePostAdvise (DWORD, HSZ, HSZ);
7472 HCONV WINAPI    DdeReconnect (HCONV);
7473 WINBOOL WINAPI  DdeUninitialize (DWORD);
7474 int WINAPI      DdeCmpStringHandles (HSZ, HSZ);
7475 HDDEDATA WINAPI DdeCreateDataHandle (DWORD, LPBYTE, DWORD, DWORD, HSZ,
7476                                 UINT, UINT);
7477
7478 /* end of stuff from ddeml.h in old Cygnus headers */
7479 /* ----------------------------------------------- */
7480
7481 DWORD STDCALL NetUserEnum (LPWSTR, DWORD, DWORD, LPBYTE*, DWORD, LPDWORD,
7482                                 LPDWORD, LPDWORD);
7483 DWORD STDCALL NetApiBufferFree (LPVOID);
7484 DWORD STDCALL NetUserGetInfo (LPWSTR, LPWSTR, DWORD, LPBYTE);
7485 DWORD STDCALL NetGetDCName (LPWSTR, LPWSTR, LPBYTE*);
7486 DWORD STDCALL NetGroupEnum (LPWSTR, DWORD, LPBYTE*, DWORD, LPDWORD,
7487                                 LPDWORD, LPDWORD);
7488 DWORD STDCALL NetLocalGroupEnum (LPWSTR, DWORD, LPBYTE*, DWORD, LPDWORD,
7489                                 LPDWORD, LPDWORD);
7490
7491
7492 VOID CopyMemory(PVOID Destination, CONST VOID* Source, DWORD Length);
7493
7494 DWORD STDCALL GetCurrentTime(VOID);
7495
7496 void WINAPI
7497 SHAddToRecentDocs (UINT, LPCVOID);
7498
7499 LPITEMIDLIST WINAPI
7500 SHBrowseForFolder (LPBROWSEINFO);
7501
7502 void WINAPI
7503 SHChangeNotify (LONG, UINT, LPCVOID, LPCVOID);
7504
7505 int WINAPI
7506 SHFileOperation (LPSHFILEOPSTRUCT);
7507
7508 void WINAPI
7509 SHFreeNameMappings (HANDLE);
7510
7511 /* Define when SHELLFOLDER is defined.
7512 HRESULT WINAPI
7513 SHGetDataFromIDList (LPSHELLFOLDER, LPCITEMIDLIST, int, PVOID, int);
7514
7515 HRESULT WINAPI
7516 SHGetDesktopFolder (LPSHELLFOLDER);
7517 */
7518
7519 DWORD WINAPI
7520 SHGetFileInfo (LPCTSTR, DWORD, SHFILEINFO FAR *, UINT, UINT);
7521
7522 /* Define when IUnknown is defined.
7523 HRESULT WINAPI
7524 SHGetInstanceExplorer (IUnknown **);
7525 */
7526
7527 /* Define when MALLOC is defined.
7528 HRESULT WINAPI
7529 SHGetMalloc (LPMALLOC *);
7530 */
7531
7532 WINBOOL WINAPI
7533 SHGetPathFromIDList (LPCITEMIDLIST, LPTSTR);
7534
7535 HRESULT WINAPI
7536 SHGetSpecialFolderLocation (HWND, int, LPITEMIDLIST *);
7537
7538 /* Define when REFCLSID is defined.
7539 HRESULT WINAPI
7540 SHLoadInProc (REFCLSID);
7541 */
7542
7543 /* Win32 Fibers */
7544
7545 typedef
7546 VOID (WINAPI *PFIBER_START_ROUTINE) (
7547         IN LPVOID lpFiberArgument
7548         );
7549 typedef PFIBER_START_ROUTINE LPFIBER_START_ROUTINE;
7550
7551 LPVOID
7552 STDCALL
7553 ConvertThreadToFiber (
7554         LPVOID lpArgument
7555         );
7556 LPVOID
7557 STDCALL
7558 CreateFiber (
7559         DWORD                   dwStackSize,
7560         LPFIBER_START_ROUTINE   lpStartAddress,
7561         LPVOID                  lpArgument
7562         );
7563 VOID
7564 STDCALL
7565 DeleteFiber(
7566         LPVOID  lpFiber
7567         );
7568 PVOID
7569 STDCALL
7570 GetCurrentFiber (
7571         VOID
7572         );
7573 PVOID
7574 STDCALL
7575 GetFiberData (
7576         VOID
7577         );
7578 VOID
7579 STDCALL
7580 SwitchToFiber (
7581         LPVOID  lpFiber
7582         );
7583
7584
7585 WINBOOL STDCALL
7586 RegisterServicesProcess(DWORD ServicesProcessId);
7587
7588 #ifdef __cplusplus
7589 }
7590 #endif /* __cplusplus */
7591
7592 #endif /* WIN32_LEAN_AND_MEAN */
7593
7594 #endif /* _GNU_H_WINDOWS32_FUNCTIONS */