1 /* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
2 /* vim: set ts=2 et sw=2 tw=80: */
3 /* This Source Code Form is subject to the terms of the Mozilla Public
4  * License, v. 2.0. If a copy of the MPL was not distributed with this
5  * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
6 
7 /*
8  * This file contains a series of C-style function prototypes for A/W-suffixed
9  * Win32 APIs defined by windows.h.
10  *
11  * This file is processed by make-windows-h-wrapper.py to generate a wrapper for
12  * the header which removes the defines usually implementing these aliases.
13  *
14  * Wrappers defined in this file will have the 'stdcall' calling convention,
15  * will be defined as 'inline', and will only be defined if the corresponding
16  * #define directive has not been #undef-ed.
17  *
18  * NOTE: This is *NOT* a real C header, but rather an input to the avove script.
19  * Only basic declarations in the form found here are allowed.
20  */
21 
22 LPTSTR GetCommandLine();
23 
24 BOOL FreeEnvironmentStrings(LPTCH);
25 
26 DWORD GetEnvironmentVariable(LPCTSTR, LPTSTR, DWORD);
27 
28 BOOL SetEnvironmentVariable(LPCTSTR, LPCTSTR);
29 
30 DWORD ExpandEnvironmentStrings(LPCTSTR, LPTSTR, DWORD);
31 
32 BOOL SetCurrentDirectory(LPCTSTR);
33 
34 DWORD GetCurrentDirectory(DWORD, LPTSTR);
35 
36 DWORD SearchPath(LPCTSTR, LPCTSTR, LPCTSTR, DWORD, LPTSTR, LPTSTR*);
37 
38 BOOL NeedCurrentDirectoryForExePath(LPCTSTR);
39 
40 BOOL CreateDirectory(LPCTSTR, LPSECURITY_ATTRIBUTES);
41 
42 HANDLE CreateFile(LPCTSTR, DWORD, DWORD, LPSECURITY_ATTRIBUTES, DWORD, DWORD,
43                   HANDLE);
44 
45 BOOL DeleteFile(LPCTSTR);
46 
47 HANDLE FindFirstChangeNotification(LPCTSTR, BOOL, DWORD);
48 
49 HANDLE FindFirstFile(LPCTSTR, LPWIN32_FIND_DATA);
50 
51 HANDLE FindFirstFileEx(LPCTSTR, FINDEX_INFO_LEVELS, LPVOID, FINDEX_SEARCH_OPS,
52                        LPVOID, DWORD);
53 
54 BOOL FindNextFile(HANDLE, LPWIN32_FIND_DATA);
55 
56 BOOL GetDiskFreeSpace(LPCTSTR, LPDWORD, LPDWORD, LPDWORD, LPDWORD);
57 
58 BOOL GetDiskFreeSpaceEx(LPCTSTR, PULARGE_INTEGER, PULARGE_INTEGER,
59                         PULARGE_INTEGER);
60 
61 UINT GetDriveType(LPCTSTR);
62 
63 DWORD GetFileAttributes(LPCTSTR);
64 
65 BOOL GetFileAttributesEx(LPCTSTR, GET_FILEEX_INFO_LEVELS, LPVOID);
66 
67 DWORD GetFinalPathNameByHandle(HANDLE, LPTSTR, DWORD, DWORD);
68 
69 DWORD GetFullPathName(LPCTSTR, DWORD, LPTSTR, LPTSTR*);
70 
71 DWORD GetLongPathName(LPCTSTR, LPTSTR, DWORD);
72 
73 BOOL RemoveDirectory(LPCTSTR);
74 
75 BOOL SetFileAttributes(LPCTSTR, DWORD);
76 
77 DWORD GetCompressedFileSize(LPCTSTR, LPDWORD);
78 
79 DWORD GetTempPath(DWORD, LPTSTR);
80 
81 BOOL GetVolumeInformation(LPCTSTR, LPTSTR, DWORD, LPDWORD, LPDWORD, LPDWORD,
82                           LPTSTR, DWORD);
83 
84 UINT GetTempFileName(LPCTSTR, LPCTSTR, UINT, LPTSTR);
85 
86 void OutputDebugString(LPCTSTR);
87 
88 void FatalAppExit(UINT, LPCTSTR);
89 
90 HANDLE CreateMutex(LPSECURITY_ATTRIBUTES, BOOL, LPCTSTR);
91 
92 HANDLE CreateEvent(LPSECURITY_ATTRIBUTES, BOOL, BOOL, LPCTSTR);
93 
94 HANDLE OpenEvent(DWORD, BOOL, LPCTSTR);
95 
96 HANDLE CreateMutexEx(LPSECURITY_ATTRIBUTES, LPCTSTR, DWORD, DWORD);
97 
98 HANDLE CreateEventEx(LPSECURITY_ATTRIBUTES, LPCTSTR, DWORD, DWORD);
99 
100 BOOL CreateProcess(LPCTSTR, LPTSTR, LPSECURITY_ATTRIBUTES,
101                    LPSECURITY_ATTRIBUTES, BOOL, DWORD, LPVOID, LPCTSTR,
102                    LPSTARTUPINFO, LPPROCESS_INFORMATION);
103 
104 BOOL CreateProcessAsUser(HANDLE, LPCTSTR, LPTSTR, LPSECURITY_ATTRIBUTES,
105                          LPSECURITY_ATTRIBUTES, BOOL, DWORD, LPVOID, LPCTSTR,
106                          LPSTARTUPINFO, LPPROCESS_INFORMATION);
107 
108 UINT GetSystemDirectory(LPTSTR, UINT);
109 
110 UINT GetWindowsDirectory(LPTSTR, UINT);
111 
112 UINT GetSystemWindowsDirectory(LPTSTR, UINT);
113 
114 BOOL GetComputerNameEx(COMPUTER_NAME_FORMAT, LPTSTR, LPDWORD);
115 
116 BOOL GetVersionEx(LPOSVERSIONINFO);
117 
118 BOOL SetComputerName(LPCTSTR);
119 
120 BOOL SetComputerNameEx(COMPUTER_NAME_FORMAT, LPCTSTR);
121 
122 BOOL LoadEnclaveImage(LPVOID, LPCTSTR);
123 
124 UINT GetSystemWow64Directory(LPTSTR, UINT);
125 
126 DWORD GetModuleFileName(HMODULE, LPTSTR, DWORD);
127 
128 HMODULE GetModuleHandle(LPCTSTR);
129 
130 BOOL GetModuleHandleEx(DWORD, LPCTSTR, HMODULE*);
131 
132 HMODULE LoadLibraryEx(LPCTSTR, HANDLE, DWORD);
133 
134 int LoadString(HINSTANCE, UINT, LPTSTR, int);
135 
136 BOOL EnumResourceLanguagesEx(HMODULE, LPCTSTR, LPCTSTR, ENUMRESLANGPROC,
137                              LONG_PTR, DWORD, LANGID);
138 
139 BOOL EnumResourceNamesEx(HMODULE, LPCTSTR, ENUMRESNAMEPROC, LONG_PTR, DWORD,
140                          LANGID);
141 
142 BOOL EnumResourceTypesEx(HMODULE, ENUMRESTYPEPROC, LONG_PTR, DWORD, LANGID);
143 
144 HMODULE LoadLibrary(LPCTSTR);
145 
146 BOOL GetBinaryType(LPCTSTR, LPDWORD);
147 
148 DWORD GetShortPathName(LPCTSTR, LPTSTR, DWORD);
149 
150 DWORD GetLongPathNameTransacted(LPCTSTR, LPTSTR, DWORD, HANDLE);
151 
152 BOOL SetEnvironmentStrings(LPTCH);
153 
154 BOOL SetFileShortName(HANDLE, LPCTSTR);
155 
156 DWORD FormatMessage(DWORD, LPCVOID, DWORD, DWORD, LPTSTR, DWORD, va_list*);
157 
158 HANDLE CreateMailslot(LPCTSTR, DWORD, DWORD, LPSECURITY_ATTRIBUTES);
159 
160 BOOL EncryptFile(LPCTSTR);
161 
162 BOOL DecryptFile(LPCTSTR, DWORD);
163 
164 BOOL FileEncryptionStatus(LPCTSTR, LPDWORD);
165 
166 DWORD OpenEncryptedFileRaw(LPCTSTR, ULONG, PVOID*);
167 
168 HANDLE OpenMutex(DWORD, BOOL, LPCTSTR);
169 
170 HANDLE CreateSemaphore(LPSECURITY_ATTRIBUTES, LONG, LONG, LPCTSTR);
171 
172 HANDLE OpenSemaphore(DWORD, BOOL, LPCTSTR);
173 
174 HANDLE CreateWaitableTimer(LPSECURITY_ATTRIBUTES, BOOL, LPCTSTR);
175 
176 HANDLE OpenWaitableTimer(DWORD, BOOL, LPCTSTR);
177 
178 HANDLE CreateSemaphoreEx(LPSECURITY_ATTRIBUTES, LONG, LONG, LPCTSTR, DWORD,
179                          DWORD);
180 
181 HANDLE CreateWaitableTimerEx(LPSECURITY_ATTRIBUTES, LPCTSTR, DWORD, DWORD);
182 
183 HANDLE CreateFileMapping(HANDLE, LPSECURITY_ATTRIBUTES, DWORD, DWORD, DWORD,
184                          LPCTSTR);
185 
186 HANDLE CreateFileMappingNuma(HANDLE, LPSECURITY_ATTRIBUTES, DWORD, DWORD, DWORD,
187                              LPCTSTR, DWORD);
188 
189 HANDLE OpenFileMapping(DWORD, BOOL, LPCTSTR);
190 
191 DWORD GetLogicalDriveStrings(DWORD, LPTSTR);
192 
193 void GetStartupInfo(LPSTARTUPINFO);
194 
195 DWORD GetFirmwareEnvironmentVariable(LPCTSTR, LPCTSTR, PVOID, DWORD);
196 
197 BOOL SetFirmwareEnvironmentVariable(LPCTSTR, LPCTSTR, PVOID, DWORD);
198 
199 HRSRC FindResource(HMODULE, LPCTSTR, LPCTSTR);
200 
201 HRSRC FindResourceEx(HMODULE, LPCTSTR, LPCTSTR, WORD);
202 
203 BOOL EnumResourceTypes(HMODULE, ENUMRESTYPEPROC, LONG_PTR);
204 
205 BOOL EnumResourceNames(HMODULE, LPCTSTR, ENUMRESNAMEPROC, LONG_PTR);
206 
207 BOOL EnumResourceLanguages(HMODULE, LPCTSTR, LPCTSTR, ENUMRESLANGPROC,
208                            LONG_PTR);
209 
210 HANDLE BeginUpdateResource(LPCTSTR, BOOL);
211 
212 BOOL UpdateResource(HANDLE, LPCTSTR, LPCTSTR, WORD, LPVOID, DWORD);
213 
214 BOOL EndUpdateResource(HANDLE, BOOL);
215 
216 ATOM GlobalAddAtom(LPCTSTR);
217 
218 ATOM GlobalAddAtomEx(LPCTSTR, DWORD);
219 
220 ATOM GlobalFindAtom(LPCTSTR);
221 
222 UINT GlobalGetAtomName(ATOM, LPTSTR, int);
223 
224 ATOM AddAtom(LPCTSTR);
225 
226 ATOM FindAtom(LPCTSTR);
227 
228 UINT GetAtomName(ATOM, LPTSTR, int);
229 
230 UINT GetProfileInt(LPCTSTR, LPCTSTR, INT);
231 
232 DWORD GetProfileString(LPCTSTR, LPCTSTR, LPCTSTR, LPTSTR, DWORD);
233 
234 BOOL WriteProfileString(LPCTSTR, LPCTSTR, LPCTSTR);
235 
236 DWORD GetProfileSection(LPCTSTR, LPTSTR, DWORD);
237 
238 BOOL WriteProfileSection(LPCTSTR, LPCTSTR);
239 
240 UINT GetPrivateProfileInt(LPCTSTR, LPCTSTR, INT, LPCTSTR);
241 
242 DWORD GetPrivateProfileString(LPCTSTR, LPCTSTR, LPCTSTR, LPTSTR, DWORD,
243                               LPCTSTR);
244 
245 BOOL WritePrivateProfileString(LPCTSTR, LPCTSTR, LPCTSTR, LPCTSTR);
246 
247 DWORD GetPrivateProfileSection(LPCTSTR, LPTSTR, DWORD, LPCTSTR);
248 
249 BOOL WritePrivateProfileSection(LPCTSTR, LPCTSTR, LPCTSTR);
250 
251 DWORD GetPrivateProfileSectionNames(LPTSTR, DWORD, LPCTSTR);
252 
253 BOOL GetPrivateProfileStruct(LPCTSTR, LPCTSTR, LPVOID, UINT, LPCTSTR);
254 
255 BOOL WritePrivateProfileStruct(LPCTSTR, LPCTSTR, LPVOID, UINT, LPCTSTR);
256 
257 BOOL SetDllDirectory(LPCTSTR);
258 
259 DWORD GetDllDirectory(DWORD, LPTSTR);
260 
261 BOOL CreateDirectoryEx(LPCTSTR, LPCTSTR, LPSECURITY_ATTRIBUTES);
262 
263 BOOL CreateDirectoryTransacted(LPCTSTR, LPCTSTR, LPSECURITY_ATTRIBUTES, HANDLE);
264 
265 BOOL RemoveDirectoryTransacted(LPCTSTR, HANDLE);
266 
267 DWORD GetFullPathNameTransacted(LPCTSTR, DWORD, LPTSTR, LPTSTR*, HANDLE);
268 
269 BOOL DefineDosDevice(DWORD, LPCTSTR, LPCTSTR);
270 
271 DWORD QueryDosDevice(LPCTSTR, LPTSTR, DWORD);
272 
273 HANDLE CreateFileTransacted(LPCTSTR, DWORD, DWORD, LPSECURITY_ATTRIBUTES, DWORD,
274                             DWORD, HANDLE, HANDLE, PUSHORT, PVOID);
275 
276 BOOL SetFileAttributesTransacted(LPCTSTR, DWORD, HANDLE);
277 
278 BOOL GetFileAttributesTransacted(LPCTSTR, GET_FILEEX_INFO_LEVELS, LPVOID,
279                                  HANDLE);
280 
281 DWORD GetCompressedFileSizeTransacted(LPCTSTR, LPDWORD, HANDLE);
282 
283 BOOL DeleteFileTransacted(LPCTSTR, HANDLE);
284 
285 BOOL CheckNameLegalDOS8Dot3(LPCTSTR, LPSTR, DWORD, PBOOL, PBOOL);
286 
287 HANDLE FindFirstFileTransacted(LPCTSTR, FINDEX_INFO_LEVELS, LPVOID,
288                                FINDEX_SEARCH_OPS, LPVOID, DWORD, HANDLE);
289 
290 BOOL CopyFile(LPCTSTR, LPCTSTR, BOOL);
291 
292 BOOL CopyFileEx(LPCTSTR, LPCTSTR, LPPROGRESS_ROUTINE, LPVOID, LPBOOL, DWORD);
293 
294 BOOL CopyFileTransacted(LPCTSTR, LPCTSTR, LPPROGRESS_ROUTINE, LPVOID, LPBOOL,
295                         DWORD, HANDLE);
296 
297 BOOL MoveFile(LPCTSTR, LPCTSTR);
298 
299 BOOL MoveFileEx(LPCTSTR, LPCTSTR, DWORD);
300 
301 BOOL MoveFileWithProgress(LPCTSTR, LPCTSTR, LPPROGRESS_ROUTINE, LPVOID, DWORD);
302 
303 BOOL MoveFileTransacted(LPCTSTR, LPCTSTR, LPPROGRESS_ROUTINE, LPVOID, DWORD,
304                         HANDLE);
305 
306 BOOL ReplaceFile(LPCTSTR, LPCTSTR, LPCTSTR, DWORD, LPVOID, LPVOID);
307 
308 BOOL CreateHardLink(LPCTSTR, LPCTSTR, LPSECURITY_ATTRIBUTES);
309 
310 BOOL CreateHardLinkTransacted(LPCTSTR, LPCTSTR, LPSECURITY_ATTRIBUTES, HANDLE);
311 
312 HANDLE CreateNamedPipe(LPCTSTR, DWORD, DWORD, DWORD, DWORD, DWORD, DWORD,
313                        LPSECURITY_ATTRIBUTES);
314 
315 BOOL GetNamedPipeHandleState(HANDLE, LPDWORD, LPDWORD, LPDWORD, LPDWORD, LPTSTR,
316                              DWORD);
317 
318 BOOL CallNamedPipe(LPCTSTR, LPVOID, DWORD, LPVOID, DWORD, LPDWORD, DWORD);
319 
320 BOOL WaitNamedPipe(LPCTSTR, DWORD);
321 
322 BOOL GetNamedPipeClientComputerName(HANDLE, LPTSTR, ULONG);
323 
324 BOOL SetVolumeLabel(LPCTSTR, LPCTSTR);
325 
326 BOOL ClearEventLog(HANDLE, LPCTSTR);
327 
328 BOOL BackupEventLog(HANDLE, LPCTSTR);
329 
330 HANDLE OpenEventLog(LPCTSTR, LPCTSTR);
331 
332 HANDLE RegisterEventSource(LPCTSTR, LPCTSTR);
333 
334 HANDLE OpenBackupEventLog(LPCTSTR, LPCTSTR);
335 
336 BOOL ReadEventLog(HANDLE, DWORD, DWORD, LPVOID, DWORD, DWORD*, DWORD*);
337 
338 BOOL ReportEvent(HANDLE, WORD, WORD, DWORD, PSID, WORD, DWORD, LPCTSTR*,
339                  LPVOID);
340 
341 BOOL AccessCheckAndAuditAlarm(LPCTSTR, LPVOID, LPTSTR, LPTSTR,
342                               PSECURITY_DESCRIPTOR, DWORD, PGENERIC_MAPPING,
343                               BOOL, LPDWORD, LPBOOL, LPBOOL);
344 
345 BOOL AccessCheckByTypeAndAuditAlarm(LPCTSTR, LPVOID, LPCTSTR, LPCTSTR,
346                                     PSECURITY_DESCRIPTOR, PSID, DWORD,
347                                     AUDIT_EVENT_TYPE, DWORD, POBJECT_TYPE_LIST,
348                                     DWORD, PGENERIC_MAPPING, BOOL, LPDWORD,
349                                     LPBOOL, LPBOOL);
350 
351 BOOL AccessCheckByTypeResultListAndAuditAlarm(LPCTSTR, LPVOID, LPCTSTR, LPCTSTR,
352                                               PSECURITY_DESCRIPTOR, PSID, DWORD,
353                                               AUDIT_EVENT_TYPE, DWORD,
354                                               POBJECT_TYPE_LIST, DWORD,
355                                               PGENERIC_MAPPING, BOOL, LPDWORD,
356                                               LPDWORD, LPBOOL);
357 
358 BOOL AccessCheckByTypeResultListAndAuditAlarmByHandle(
359     LPCTSTR, LPVOID, HANDLE, LPCTSTR, LPCTSTR, PSECURITY_DESCRIPTOR, PSID,
360     DWORD, AUDIT_EVENT_TYPE, DWORD, POBJECT_TYPE_LIST, DWORD, PGENERIC_MAPPING,
361     BOOL, LPDWORD, LPDWORD, LPBOOL);
362 
363 BOOL ObjectOpenAuditAlarm(LPCTSTR, LPVOID, LPTSTR, LPTSTR, PSECURITY_DESCRIPTOR,
364                           HANDLE, DWORD, DWORD, PPRIVILEGE_SET, BOOL, BOOL,
365                           LPBOOL);
366 
367 BOOL ObjectPrivilegeAuditAlarm(LPCTSTR, LPVOID, HANDLE, DWORD, PPRIVILEGE_SET,
368                                BOOL);
369 
370 BOOL ObjectCloseAuditAlarm(LPCTSTR, LPVOID, BOOL);
371 
372 BOOL ObjectDeleteAuditAlarm(LPCTSTR, LPVOID, BOOL);
373 
374 BOOL PrivilegedServiceAuditAlarm(LPCTSTR, LPCTSTR, HANDLE, PPRIVILEGE_SET,
375                                  BOOL);
376 
377 BOOL SetFileSecurity(LPCTSTR, SECURITY_INFORMATION, PSECURITY_DESCRIPTOR);
378 
379 BOOL GetFileSecurity(LPCTSTR, SECURITY_INFORMATION, PSECURITY_DESCRIPTOR, DWORD,
380                      LPDWORD);
381 
382 BOOL IsBadStringPtr(LPCTSTR, UINT_PTR);
383 
384 BOOL LookupAccountSid(LPCTSTR, PSID, LPTSTR, LPDWORD, LPTSTR, LPDWORD,
385                       PSID_NAME_USE);
386 
387 BOOL LookupAccountName(LPCTSTR, LPCTSTR, PSID, LPDWORD, LPTSTR, LPDWORD,
388                        PSID_NAME_USE);
389 
390 BOOL LookupAccountNameLocal(LPCTSTR, PSID, LPDWORD, LPTSTR, LPDWORD,
391                             PSID_NAME_USE);
392 
393 BOOL LookupAccountSidLocal(PSID, LPTSTR, LPDWORD, LPTSTR, LPDWORD,
394                            PSID_NAME_USE);
395 
396 BOOL LookupPrivilegeValue(LPCTSTR, LPCTSTR, PLUID);
397 
398 BOOL LookupPrivilegeName(LPCTSTR, PLUID, LPTSTR, LPDWORD);
399 
400 BOOL LookupPrivilegeDisplayName(LPCTSTR, LPCTSTR, LPTSTR, LPDWORD, LPDWORD);
401 
402 BOOL BuildCommDCB(LPCTSTR, LPDCB);
403 
404 BOOL BuildCommDCBAndTimeouts(LPCTSTR, LPDCB, LPCOMMTIMEOUTS);
405 
406 BOOL CommConfigDialog(LPCTSTR, HWND, LPCOMMCONFIG);
407 
408 BOOL GetDefaultCommConfig(LPCTSTR, LPCOMMCONFIG, LPDWORD);
409 
410 BOOL SetDefaultCommConfig(LPCTSTR, LPCOMMCONFIG, DWORD);
411 
412 BOOL GetComputerName(LPTSTR, LPDWORD);
413 
414 BOOL DnsHostnameToComputerName(LPCTSTR, LPTSTR, LPDWORD);
415 
416 BOOL GetUserName(LPTSTR, LPDWORD);
417 
418 BOOL LogonUser(LPCTSTR, LPCTSTR, LPCTSTR, DWORD, DWORD, PHANDLE);
419 
420 BOOL LogonUserEx(LPCTSTR, LPCTSTR, LPCTSTR, DWORD, DWORD, PHANDLE, PSID*,
421                  PVOID*, LPDWORD, PQUOTA_LIMITS);
422 
423 HANDLE CreatePrivateNamespace(LPSECURITY_ATTRIBUTES, LPVOID, LPCTSTR);
424 
425 HANDLE OpenPrivateNamespace(LPVOID, LPCTSTR);
426 
427 HANDLE CreateBoundaryDescriptor(LPCTSTR, ULONG);
428 
429 BOOL GetCurrentHwProfile(LPHW_PROFILE_INFO);
430 
431 BOOL VerifyVersionInfo(LPOSVERSIONINFOEX, DWORD, DWORDLONG);
432 
433 HANDLE CreateJobObject(LPSECURITY_ATTRIBUTES, LPCTSTR);
434 
435 HANDLE OpenJobObject(DWORD, BOOL, LPCTSTR);
436 
437 HANDLE FindFirstVolume(LPTSTR, DWORD);
438 
439 BOOL FindNextVolume(HANDLE, LPTSTR, DWORD);
440 
441 HANDLE FindFirstVolumeMountPoint(LPCTSTR, LPTSTR, DWORD);
442 
443 BOOL FindNextVolumeMountPoint(HANDLE, LPTSTR, DWORD);
444 
445 BOOL SetVolumeMountPoint(LPCTSTR, LPCTSTR);
446 
447 BOOL DeleteVolumeMountPoint(LPCTSTR);
448 
449 BOOL GetVolumeNameForVolumeMountPoint(LPCTSTR, LPTSTR, DWORD);
450 
451 BOOL GetVolumePathName(LPCTSTR, LPTSTR, DWORD);
452 
453 BOOL GetVolumePathNamesForVolumeName(LPCTSTR, LPTCH, DWORD, PDWORD);
454 
455 HANDLE CreateActCtx(PCACTCTX);
456 
457 BOOL FindActCtxSectionString(DWORD, const GUID*, ULONG, LPCTSTR,
458                              PACTCTX_SECTION_KEYED_DATA);
459 
460 BOOLEAN CreateSymbolicLink(LPCTSTR, LPCTSTR, DWORD);
461 
462 BOOLEAN CreateSymbolicLinkTransacted(LPCTSTR, LPCTSTR, DWORD, HANDLE);
463 
464 int AddFontResource(LPCTSTR);
465 
466 HMETAFILE CopyMetaFile(HMETAFILE, LPCTSTR);
467 
468 HDC CreateDC(LPCTSTR, LPCTSTR, LPCTSTR, const DEVMODE*);
469 
470 HFONT CreateFontIndirect(const LOGFONT*);
471 
472 HFONT CreateFont(int, int, int, int, int, DWORD, DWORD, DWORD, DWORD, DWORD,
473                  DWORD, DWORD, DWORD, LPCTSTR);
474 
475 HDC CreateIC(LPCTSTR, LPCTSTR, LPCTSTR, const DEVMODE*);
476 
477 HDC CreateMetaFile(LPCTSTR);
478 
479 BOOL CreateScalableFontResource(DWORD, LPCTSTR, LPCTSTR, LPCTSTR);
480 
481 int DeviceCapabilities(LPCTSTR, LPCTSTR, WORD, LPTSTR, const DEVMODE*);
482 
483 int EnumFontFamiliesEx(HDC, LPLOGFONT, FONTENUMPROC, LPARAM, DWORD);
484 
485 int EnumFontFamilies(HDC, LPCTSTR, FONTENUMPROC, LPARAM);
486 
487 int EnumFonts(HDC, LPCTSTR, FONTENUMPROC, LPARAM);
488 
489 BOOL GetCharWidth(HDC, UINT, UINT, LPINT);
490 
491 BOOL GetCharWidth32(HDC, UINT, UINT, LPINT);
492 
493 BOOL GetCharWidthFloat(HDC, UINT, UINT, PFLOAT);
494 
495 BOOL GetCharABCWidths(HDC, UINT, UINT, LPABC);
496 
497 BOOL GetCharABCWidthsFloat(HDC, UINT, UINT, LPABCFLOAT);
498 
499 DWORD GetGlyphOutline(HDC, UINT, UINT, LPGLYPHMETRICS, DWORD, LPVOID,
500                       const MAT2*);
501 
502 HMETAFILE GetMetaFile(LPCTSTR);
503 
504 UINT GetOutlineTextMetrics(HDC, UINT, LPOUTLINETEXTMETRIC);
505 
506 BOOL GetTextExtentPoint(HDC, LPCTSTR, int, LPSIZE);
507 
508 BOOL GetTextExtentPoint32(HDC, LPCTSTR, int, LPSIZE);
509 
510 BOOL GetTextExtentExPoint(HDC, LPCTSTR, int, int, LPINT, LPINT, LPSIZE);
511 
512 DWORD GetCharacterPlacement(HDC, LPCTSTR, int, int, LPGCP_RESULTS, DWORD);
513 
514 DWORD GetGlyphIndices(HDC, LPCTSTR, int, LPWORD, DWORD);
515 
516 int AddFontResourceEx(LPCTSTR, DWORD, PVOID);
517 
518 BOOL RemoveFontResourceEx(LPCTSTR, DWORD, PVOID);
519 
520 HFONT CreateFontIndirectEx(const ENUMLOGFONTEXDV*);
521 
522 HDC ResetDC(HDC, const DEVMODE*);
523 
524 BOOL RemoveFontResource(LPCTSTR);
525 
526 HENHMETAFILE CopyEnhMetaFile(HENHMETAFILE, LPCTSTR);
527 
528 HDC CreateEnhMetaFile(HDC, LPCTSTR, const RECT*, LPCTSTR);
529 
530 HENHMETAFILE GetEnhMetaFile(LPCTSTR);
531 
532 UINT GetEnhMetaFileDescription(HENHMETAFILE, UINT, LPTSTR);
533 
534 BOOL GetTextMetrics(HDC, LPTEXTMETRIC);
535 
536 int StartDoc(HDC, const DOCINFO*);
537 
538 int GetObject(HANDLE, int, LPVOID);
539 
540 BOOL TextOut(HDC, int, int, LPCTSTR, int);
541 
542 BOOL ExtTextOut(HDC, int, int, UINT, const RECT*, LPCTSTR, UINT, const INT*);
543 
544 BOOL PolyTextOut(HDC, const POLYTEXT*, int);
545 
546 int GetTextFace(HDC, int, LPTSTR);
547 
548 DWORD GetKerningPairs(HDC, DWORD, LPKERNINGPAIR);
549 
550 BOOL GetLogColorSpace(HCOLORSPACE, LPLOGCOLORSPACE, DWORD);
551 
552 HCOLORSPACE CreateColorSpace(LPLOGCOLORSPACE);
553 
554 BOOL GetICMProfile(HDC, LPDWORD, LPTSTR);
555 
556 BOOL SetICMProfile(HDC, LPTSTR);
557 
558 int EnumICMProfiles(HDC, ICMENUMPROC, LPARAM);
559 
560 BOOL UpdateICMRegKey(DWORD, LPTSTR, LPTSTR, UINT);
561 
562 HKL LoadKeyboardLayout(LPCTSTR, UINT);
563 
564 BOOL GetKeyboardLayoutName(LPTSTR);
565 
566 HDESK CreateDesktop(LPCTSTR, LPCTSTR, DEVMODE*, DWORD, ACCESS_MASK,
567                     LPSECURITY_ATTRIBUTES);
568 
569 HDESK CreateDesktopEx(LPCTSTR, LPCTSTR, DEVMODE*, DWORD, ACCESS_MASK,
570                       LPSECURITY_ATTRIBUTES, ULONG, PVOID);
571 
572 HDESK OpenDesktop(LPCTSTR, DWORD, BOOL, ACCESS_MASK);
573 
574 BOOL EnumDesktops(HWINSTA, DESKTOPENUMPROC, LPARAM);
575 
576 HWINSTA CreateWindowStation(LPCTSTR, DWORD, ACCESS_MASK, LPSECURITY_ATTRIBUTES);
577 
578 HWINSTA OpenWindowStation(LPCTSTR, BOOL, ACCESS_MASK);
579 
580 BOOL EnumWindowStations(WINSTAENUMPROC, LPARAM);
581 
582 BOOL GetUserObjectInformation(HANDLE, int, PVOID, DWORD, LPDWORD);
583 
584 BOOL SetUserObjectInformation(HANDLE, int, PVOID, DWORD);
585 
586 UINT RegisterWindowMessage(LPCTSTR);
587 
588 BOOL GetMessage(LPMSG, HWND, UINT, UINT);
589 
590 LRESULT DispatchMessage(const MSG*);
591 
592 BOOL PeekMessage(LPMSG, HWND, UINT, UINT, UINT);
593 
594 LRESULT SendMessage(HWND, UINT, WPARAM, LPARAM);
595 
596 LRESULT SendMessageTimeout(HWND, UINT, WPARAM, LPARAM, UINT, UINT, PDWORD_PTR);
597 
598 BOOL SendNotifyMessage(HWND, UINT, WPARAM, LPARAM);
599 
600 BOOL SendMessageCallback(HWND, UINT, WPARAM, LPARAM, SENDASYNCPROC, ULONG_PTR);
601 
602 long BroadcastSystemMessageEx(DWORD, LPDWORD, UINT, WPARAM, LPARAM, PBSMINFO);
603 
604 long BroadcastSystemMessage(DWORD, LPDWORD, UINT, WPARAM, LPARAM);
605 
606 HDEVNOTIFY RegisterDeviceNotification(HANDLE, LPVOID, DWORD);
607 
608 BOOL PostMessage(HWND, UINT, WPARAM, LPARAM);
609 
610 BOOL PostThreadMessage(DWORD, UINT, WPARAM, LPARAM);
611 
612 BOOL PostAppMessage(DWORD, UINT, WPARAM, LPARAM);
613 
614 LRESULT DefWindowProc(HWND, UINT, WPARAM, LPARAM);
615 
616 LRESULT CallWindowProc(WNDPROC, HWND, UINT, WPARAM, LPARAM);
617 
618 ATOM RegisterClass(const WNDCLASS*);
619 
620 BOOL UnregisterClass(LPCTSTR, HINSTANCE);
621 
622 BOOL GetClassInfo(HINSTANCE, LPCTSTR, LPWNDCLASS);
623 
624 ATOM RegisterClassEx(const WNDCLASSEX*);
625 
626 BOOL GetClassInfoEx(HINSTANCE, LPCTSTR, LPWNDCLASSEX);
627 
628 HWND CreateWindowEx(DWORD, LPCTSTR, LPCTSTR, DWORD, int, int, int, int, HWND,
629                     HMENU, HINSTANCE, LPVOID);
630 
631 HWND CreateWindow(LPCTSTR, LPCTSTR, DWORD, int, int, int, int, HWND, HMENU,
632                   HINSTANCE, LPVOID);
633 
634 HWND CreateDialogParam(HINSTANCE, LPCTSTR, HWND, DLGPROC, LPARAM);
635 
636 HWND CreateDialogIndirectParam(HINSTANCE, LPCDLGTEMPLATE, HWND, DLGPROC,
637                                LPARAM);
638 
639 HWND CreateDialog(HINSTANCE, LPCTSTR, HWND, DLGPROC);
640 
641 HWND CreateDialogIndirect(HINSTANCE, LPCDLGTEMPLATE, HWND, DLGPROC);
642 
643 INT_PTR DialogBoxParam(HINSTANCE, LPCTSTR, HWND, DLGPROC, LPARAM);
644 
645 INT_PTR DialogBoxIndirectParam(HINSTANCE, LPCDLGTEMPLATE, HWND, DLGPROC,
646                                LPARAM);
647 
648 INT_PTR DialogBox(HINSTANCE, LPCTSTR, HWND, DLGPROC);
649 
650 INT_PTR DialogBoxIndirect(HINSTANCE, LPCDLGTEMPLATE, HWND, DLGPROC);
651 
652 BOOL SetDlgItemText(HWND, int, LPCTSTR);
653 
654 UINT GetDlgItemText(HWND, int, LPTSTR, int);
655 
656 LRESULT SendDlgItemMessage(HWND, int, UINT, WPARAM, LPARAM);
657 
658 LRESULT DefDlgProc(HWND, UINT, WPARAM, LPARAM);
659 
660 BOOL CallMsgFilter(LPMSG, int);
661 
662 UINT RegisterClipboardFormat(LPCTSTR);
663 
664 int GetClipboardFormatName(UINT, LPTSTR, int);
665 
666 BOOL CharToOem(LPCTSTR, LPSTR);
667 
668 BOOL OemToChar(LPCSTR, LPTSTR);
669 
670 BOOL CharToOemBuff(LPCTSTR, LPSTR, DWORD);
671 
672 BOOL OemToCharBuff(LPCSTR, LPTSTR, DWORD);
673 
674 LPTSTR CharUpper(LPTSTR);
675 
676 DWORD CharUpperBuff(LPTSTR, DWORD);
677 
678 LPTSTR CharLower(LPTSTR);
679 
680 DWORD CharLowerBuff(LPTSTR, DWORD);
681 
682 LPTSTR CharNext(LPCTSTR);
683 
684 LPTSTR CharPrev(LPCTSTR, LPCTSTR);
685 
686 BOOL IsCharAlpha(CHAR);
687 
688 BOOL IsCharAlphaNumeric(CHAR);
689 
690 BOOL IsCharUpper(CHAR);
691 
692 BOOL IsCharLower(CHAR);
693 
694 int GetKeyNameText(LONG, LPTSTR, int);
695 
696 SHORT VkKeyScan(CHAR);
697 
698 SHORT VkKeyScanEx(CHAR, HKL);
699 
700 UINT MapVirtualKey(UINT, UINT);
701 
702 UINT MapVirtualKeyEx(UINT, UINT, HKL);
703 
704 HACCEL LoadAccelerators(HINSTANCE, LPCTSTR);
705 
706 HACCEL CreateAcceleratorTable(LPACCEL, int);
707 
708 int CopyAcceleratorTable(HACCEL, LPACCEL, int);
709 
710 int TranslateAccelerator(HWND, HACCEL, LPMSG);
711 
712 HMENU LoadMenu(HINSTANCE, LPCTSTR);
713 
714 HMENU LoadMenuIndirect(const MENUTEMPLATE*);
715 
716 BOOL ChangeMenu(HMENU, UINT, LPCTSTR, UINT, UINT);
717 
718 int GetMenuString(HMENU, UINT, LPTSTR, int, UINT);
719 
720 BOOL InsertMenu(HMENU, UINT, UINT, UINT_PTR, LPCTSTR);
721 
722 BOOL AppendMenu(HMENU, UINT, UINT_PTR, LPCTSTR);
723 
724 BOOL ModifyMenu(HMENU, UINT, UINT, UINT_PTR, LPCTSTR);
725 
726 BOOL InsertMenuItem(HMENU, UINT, BOOL, LPCMENUITEMINFO);
727 
728 BOOL GetMenuItemInfo(HMENU, UINT, BOOL, LPMENUITEMINFO);
729 
730 BOOL SetMenuItemInfo(HMENU, UINT, BOOL, LPCMENUITEMINFO);
731 
732 int DrawText(HDC, LPCTSTR, int, LPRECT, UINT);
733 
734 int DrawTextEx(HDC, LPTSTR, int, LPRECT, UINT, LPDRAWTEXTPARAMS);
735 
736 BOOL GrayString(HDC, HBRUSH, GRAYSTRINGPROC, LPARAM, int, int, int, int, int);
737 
738 BOOL DrawState(HDC, HBRUSH, DRAWSTATEPROC, LPARAM, WPARAM, int, int, int, int,
739                UINT);
740 
741 LONG TabbedTextOut(HDC, int, int, LPCTSTR, int, int, const INT*, int);
742 
743 DWORD GetTabbedTextExtent(HDC, LPCTSTR, int, int, const INT*);
744 
745 BOOL SetProp(HWND, LPCTSTR, HANDLE);
746 
747 HANDLE GetProp(HWND, LPCTSTR);
748 
749 HANDLE RemoveProp(HWND, LPCTSTR);
750 
751 int EnumPropsEx(HWND, PROPENUMPROCEX, LPARAM);
752 
753 int EnumProps(HWND, PROPENUMPROC);
754 
755 BOOL SetWindowText(HWND, LPCTSTR);
756 
757 int GetWindowText(HWND, LPTSTR, int);
758 
759 int GetWindowTextLength(HWND);
760 
761 int MessageBox(HWND, LPCTSTR, LPCTSTR, UINT);
762 
763 int MessageBoxEx(HWND, LPCTSTR, LPCTSTR, UINT, WORD);
764 
765 int MessageBoxIndirect(const MSGBOXPARAMS*);
766 
767 LONG GetWindowLong(HWND, int);
768 
769 LONG SetWindowLong(HWND, int, LONG);
770 
771 LONG_PTR GetWindowLongPtr(HWND, int);
772 
773 LONG_PTR SetWindowLongPtr(HWND, int, LONG_PTR);
774 
775 DWORD GetClassLong(HWND, int);
776 
777 DWORD SetClassLong(HWND, int, LONG);
778 
779 ULONG_PTR GetClassLongPtr(HWND, int);
780 
781 ULONG_PTR SetClassLongPtr(HWND, int, LONG_PTR);
782 
783 HWND FindWindow(LPCTSTR, LPCTSTR);
784 
785 HWND FindWindowEx(HWND, HWND, LPCTSTR, LPCTSTR);
786 
787 int GetClassName(HWND, LPTSTR, int);
788 
789 HHOOK SetWindowsHook(int, HOOKPROC);
790 
791 HHOOK SetWindowsHookEx(int, HOOKPROC, HINSTANCE, DWORD);
792 
793 HBITMAP LoadBitmap(HINSTANCE, LPCTSTR);
794 
795 HCURSOR LoadCursor(HINSTANCE, LPCTSTR);
796 
797 HCURSOR LoadCursorFromFile(LPCTSTR);
798 
799 HICON LoadIcon(HINSTANCE, LPCTSTR);
800 
801 UINT PrivateExtractIcons(LPCTSTR, int, int, int, HICON*, UINT*, UINT, UINT);
802 
803 HANDLE LoadImage(HINSTANCE, LPCTSTR, UINT, int, int, UINT);
804 
805 BOOL GetIconInfoEx(HICON, PICONINFOEX);
806 
807 BOOL IsDialogMessage(HWND, LPMSG);
808 
809 int DlgDirList(HWND, LPTSTR, int, int, UINT);
810 
811 BOOL DlgDirSelectEx(HWND, LPTSTR, int, int);
812 
813 int DlgDirListComboBox(HWND, LPTSTR, int, int, UINT);
814 
815 BOOL DlgDirSelectComboBoxEx(HWND, LPTSTR, int, int);
816 
817 LRESULT DefFrameProc(HWND, HWND, UINT, WPARAM, LPARAM);
818 
819 LRESULT DefMDIChildProc(HWND, UINT, WPARAM, LPARAM);
820 
821 HWND CreateMDIWindow(LPCTSTR, LPCTSTR, DWORD, int, int, int, int, HWND,
822                      HINSTANCE, LPARAM);
823 
824 BOOL WinHelp(HWND, LPCTSTR, UINT, ULONG_PTR);
825 
826 LONG ChangeDisplaySettings(DEVMODE*, DWORD);
827 
828 LONG ChangeDisplaySettingsEx(LPCTSTR, DEVMODE*, HWND, DWORD, LPVOID);
829 
830 BOOL EnumDisplaySettings(LPCTSTR, DWORD, DEVMODE*);
831 
832 BOOL EnumDisplaySettingsEx(LPCTSTR, DWORD, DEVMODE*, DWORD);
833 
834 BOOL EnumDisplayDevices(LPCTSTR, DWORD, PDISPLAY_DEVICE, DWORD);
835 
836 BOOL SystemParametersInfo(UINT, UINT, PVOID, UINT);
837 
838 BOOL GetMonitorInfo(HMONITOR, LPMONITORINFO);
839 
840 UINT GetWindowModuleFileName(HWND, LPTSTR, UINT);
841 
842 UINT RealGetWindowClass(HWND, LPTSTR, UINT);
843 
844 BOOL GetAltTabInfo(HWND, int, PALTTABINFO, LPTSTR, UINT);
845 
846 UINT GetRawInputDeviceInfo(HANDLE, UINT, LPVOID, PUINT);
847 
848 int GetDateFormat(LCID, DWORD, const SYSTEMTIME*, LPCTSTR, LPTSTR, int);
849 
850 int GetTimeFormat(LCID, DWORD, const SYSTEMTIME*, LPCTSTR, LPTSTR, int);
851 
852 BOOL GetCPInfoEx(UINT, DWORD, LPCPINFOEX);
853 
854 int CompareString(LCID, DWORD, PCNZTCH, int, PCNZTCH, int);
855 
856 int GetLocaleInfo(LCID, LCTYPE, LPTSTR, int);
857 
858 BOOL SetLocaleInfo(LCID, LCTYPE, LPCTSTR);
859 
860 int GetCalendarInfo(LCID, CALID, CALTYPE, LPTSTR, int, LPDWORD);
861 
862 BOOL SetCalendarInfo(LCID, CALID, CALTYPE, LPCTSTR);
863 
864 int GetNumberFormat(LCID, DWORD, LPCTSTR, const NUMBERFMT*, LPTSTR, int);
865 
866 int GetCurrencyFormat(LCID, DWORD, LPCTSTR, const CURRENCYFMT*, LPTSTR, int);
867 
868 BOOL EnumCalendarInfo(CALINFO_ENUMPROC, LCID, CALID, CALTYPE);
869 
870 BOOL EnumCalendarInfoEx(CALINFO_ENUMPROCEX, LCID, CALID, CALTYPE);
871 
872 BOOL EnumTimeFormats(TIMEFMT_ENUMPROC, LCID, DWORD);
873 
874 BOOL EnumDateFormats(DATEFMT_ENUMPROC, LCID, DWORD);
875 
876 BOOL EnumDateFormatsEx(DATEFMT_ENUMPROCEX, LCID, DWORD);
877 
878 int GetGeoInfo(GEOID, GEOTYPE, LPTSTR, int, LANGID);
879 
880 BOOL GetStringTypeEx(LCID, DWORD, LPCTSTR, int, LPWORD);
881 
882 int FoldString(DWORD, LPCTSTR, int, LPTSTR, int);
883 
884 BOOL EnumSystemLocales(LOCALE_ENUMPROC, DWORD);
885 
886 BOOL EnumSystemLanguageGroups(LANGUAGEGROUP_ENUMPROC, DWORD, LONG_PTR);
887 
888 BOOL EnumLanguageGroupLocales(LANGGROUPLOCALE_ENUMPROC, LGRPID, DWORD,
889                               LONG_PTR);
890 
891 BOOL EnumUILanguages(UILANGUAGE_ENUMPROC, DWORD, LONG_PTR);
892 
893 BOOL EnumSystemCodePages(CODEPAGE_ENUMPROC, DWORD);
894 
895 BOOL ReadConsoleInput(HANDLE, PINPUT_RECORD, DWORD, LPDWORD);
896 
897 BOOL PeekConsoleInput(HANDLE, PINPUT_RECORD, DWORD, LPDWORD);
898 
899 BOOL ReadConsole(HANDLE, LPVOID, DWORD, LPDWORD, PCONSOLE_READCONSOLE_CONTROL);
900 
901 BOOL WriteConsole(HANDLE, const void*, DWORD, LPDWORD, LPVOID);
902 
903 BOOL FillConsoleOutputCharacter(HANDLE, CHAR, DWORD, COORD, LPDWORD);
904 
905 BOOL WriteConsoleOutputCharacter(HANDLE, LPCTSTR, DWORD, COORD, LPDWORD);
906 
907 BOOL ReadConsoleOutputCharacter(HANDLE, LPTSTR, DWORD, COORD, LPDWORD);
908 
909 BOOL WriteConsoleInput(HANDLE, const INPUT_RECORD*, DWORD, LPDWORD);
910 
911 BOOL ScrollConsoleScreenBuffer(HANDLE, const SMALL_RECT*, const SMALL_RECT*,
912                                COORD, const CHAR_INFO*);
913 
914 BOOL WriteConsoleOutput(HANDLE, const CHAR_INFO*, COORD, COORD, PSMALL_RECT);
915 
916 BOOL ReadConsoleOutput(HANDLE, PCHAR_INFO, COORD, COORD, PSMALL_RECT);
917 
918 DWORD GetConsoleTitle(LPTSTR, DWORD);
919 
920 DWORD GetConsoleOriginalTitle(LPTSTR, DWORD);
921 
922 BOOL SetConsoleTitle(LPCTSTR);
923 
924 BOOL AddConsoleAlias(LPTSTR, LPTSTR, LPTSTR);
925 
926 DWORD GetConsoleAlias(LPTSTR, LPTSTR, DWORD, LPTSTR);
927 
928 DWORD GetConsoleAliasesLength(LPTSTR);
929 
930 DWORD GetConsoleAliasExesLength();
931 
932 DWORD GetConsoleAliases(LPTSTR, DWORD, LPTSTR);
933 
934 DWORD GetConsoleAliasExes(LPTSTR, DWORD);
935 
936 void ExpungeConsoleCommandHistory(LPTSTR);
937 
938 BOOL SetConsoleNumberOfCommands(DWORD, LPTSTR);
939 
940 DWORD GetConsoleCommandHistoryLength(LPTSTR);
941 
942 DWORD GetConsoleCommandHistory(LPTSTR, DWORD, LPTSTR);
943 
944 DWORD VerFindFile(DWORD, LPTSTR, LPTSTR, LPTSTR, LPTSTR, PUINT, LPTSTR, PUINT);
945 
946 DWORD VerInstallFile(DWORD, LPTSTR, LPTSTR, LPTSTR, LPTSTR, LPTSTR, LPTSTR,
947                      PUINT);
948 
949 DWORD GetFileVersionInfoSize(LPCTSTR, LPDWORD);
950 
951 BOOL GetFileVersionInfo(LPCTSTR, DWORD, DWORD, LPVOID);
952 
953 DWORD GetFileVersionInfoSizeEx(DWORD, LPCTSTR, LPDWORD);
954 
955 BOOL GetFileVersionInfoEx(DWORD, LPCTSTR, DWORD, DWORD, LPVOID);
956 
957 DWORD VerLanguageName(DWORD, LPTSTR, DWORD);
958 
959 BOOL VerQueryValue(LPCVOID, LPCTSTR, LPVOID*, PUINT);
960 
961 LSTATUS RegConnectRegistry(LPCTSTR, HKEY, PHKEY);
962 
963 LSTATUS RegConnectRegistryEx(LPCTSTR, HKEY, ULONG, PHKEY);
964 
965 LSTATUS RegCreateKey(HKEY, LPCTSTR, PHKEY);
966 
967 LSTATUS RegCreateKeyEx(HKEY, LPCTSTR, DWORD, LPTSTR, DWORD, REGSAM,
968                        const LPSECURITY_ATTRIBUTES, PHKEY, LPDWORD);
969 
970 LSTATUS RegCreateKeyTransacted(HKEY, LPCTSTR, DWORD, LPTSTR, DWORD, REGSAM,
971                                const LPSECURITY_ATTRIBUTES, PHKEY, LPDWORD,
972                                HANDLE, PVOID);
973 
974 LSTATUS RegDeleteKey(HKEY, LPCTSTR);
975 
976 LSTATUS RegDeleteKeyEx(HKEY, LPCTSTR, REGSAM, DWORD);
977 
978 LSTATUS RegDeleteKeyTransacted(HKEY, LPCTSTR, REGSAM, DWORD, HANDLE, PVOID);
979 
980 LSTATUS RegDeleteValue(HKEY, LPCTSTR);
981 
982 LSTATUS RegEnumKey(HKEY, DWORD, LPTSTR, DWORD);
983 
984 LSTATUS RegEnumKeyEx(HKEY, DWORD, LPTSTR, LPDWORD, LPDWORD, LPTSTR, LPDWORD,
985                      PFILETIME);
986 
987 LSTATUS RegEnumValue(HKEY, DWORD, LPTSTR, LPDWORD, LPDWORD, LPDWORD, LPBYTE,
988                      LPDWORD);
989 
990 LSTATUS RegLoadKey(HKEY, LPCTSTR, LPCTSTR);
991 
992 LSTATUS RegOpenKey(HKEY, LPCTSTR, PHKEY);
993 
994 LSTATUS RegOpenKeyEx(HKEY, LPCTSTR, DWORD, REGSAM, PHKEY);
995 
996 LSTATUS RegOpenKeyTransacted(HKEY, LPCTSTR, DWORD, REGSAM, PHKEY, HANDLE,
997                              PVOID);
998 
999 LSTATUS RegQueryInfoKey(HKEY, LPTSTR, LPDWORD, LPDWORD, LPDWORD, LPDWORD,
1000                         LPDWORD, LPDWORD, LPDWORD, LPDWORD, LPDWORD, PFILETIME);
1001 
1002 LSTATUS RegQueryValue(HKEY, LPCTSTR, LPTSTR, PLONG);
1003 
1004 LSTATUS RegQueryMultipleValues(HKEY, PVALENT, DWORD, LPTSTR, LPDWORD);
1005 
1006 LSTATUS RegQueryValueEx(HKEY, LPCTSTR, LPDWORD, LPDWORD, LPBYTE, LPDWORD);
1007 
1008 LSTATUS RegReplaceKey(HKEY, LPCTSTR, LPCTSTR, LPCTSTR);
1009 
1010 LSTATUS RegRestoreKey(HKEY, LPCTSTR, DWORD);
1011 
1012 LSTATUS RegSaveKey(HKEY, LPCTSTR, const LPSECURITY_ATTRIBUTES);
1013 
1014 LSTATUS RegSetValue(HKEY, LPCTSTR, DWORD, LPCTSTR, DWORD);
1015 
1016 LSTATUS RegSetValueEx(HKEY, LPCTSTR, DWORD, DWORD, const BYTE*, DWORD);
1017 
1018 LSTATUS RegUnLoadKey(HKEY, LPCTSTR);
1019 
1020 LSTATUS RegDeleteKeyValue(HKEY, LPCTSTR, LPCTSTR);
1021 
1022 LSTATUS RegSetKeyValue(HKEY, LPCTSTR, LPCTSTR, DWORD, LPCVOID, DWORD);
1023 
1024 LSTATUS RegDeleteTree(HKEY, LPCTSTR);
1025 
1026 LSTATUS RegCopyTree(HKEY, LPCTSTR, HKEY);
1027 
1028 LSTATUS RegGetValue(HKEY, LPCTSTR, LPCTSTR, DWORD, LPDWORD, PVOID, LPDWORD);
1029 
1030 LSTATUS RegLoadMUIString(HKEY, LPCTSTR, LPTSTR, DWORD, LPDWORD, DWORD, LPCTSTR);
1031 
1032 LSTATUS RegLoadAppKey(LPCTSTR, PHKEY, REGSAM, DWORD, DWORD);
1033 
1034 BOOL InitiateSystemShutdown(LPTSTR, LPTSTR, DWORD, BOOL, BOOL);
1035 
1036 BOOL AbortSystemShutdown(LPTSTR);
1037 
1038 BOOL InitiateSystemShutdownEx(LPTSTR, LPTSTR, DWORD, BOOL, BOOL, DWORD);
1039 
1040 DWORD InitiateShutdown(LPTSTR, LPTSTR, DWORD, DWORD, DWORD);
1041 
1042 LSTATUS RegSaveKeyEx(HKEY, LPCTSTR, const LPSECURITY_ATTRIBUTES, DWORD);
1043 
1044 DWORD MultinetGetConnectionPerformance(LPNETRESOURCE, LPNETCONNECTINFOSTRUCT);
1045 
1046 BOOL ChangeServiceConfig(SC_HANDLE, DWORD, DWORD, DWORD, LPCTSTR, LPCTSTR,
1047                          LPDWORD, LPCTSTR, LPCTSTR, LPCTSTR, LPCTSTR);
1048 
1049 BOOL ChangeServiceConfig2(SC_HANDLE, DWORD, LPVOID);
1050 
1051 SC_HANDLE CreateService(SC_HANDLE, LPCTSTR, LPCTSTR, DWORD, DWORD, DWORD, DWORD,
1052                         LPCTSTR, LPCTSTR, LPDWORD, LPCTSTR, LPCTSTR, LPCTSTR);
1053 
1054 BOOL EnumDependentServices(SC_HANDLE, DWORD, LPENUM_SERVICE_STATUS, DWORD,
1055                            LPDWORD, LPDWORD);
1056 
1057 BOOL EnumServicesStatus(SC_HANDLE, DWORD, DWORD, LPENUM_SERVICE_STATUS, DWORD,
1058                         LPDWORD, LPDWORD, LPDWORD);
1059 
1060 BOOL EnumServicesStatusEx(SC_HANDLE, SC_ENUM_TYPE, DWORD, DWORD, LPBYTE, DWORD,
1061                           LPDWORD, LPDWORD, LPDWORD, LPCTSTR);
1062 
1063 BOOL GetServiceKeyName(SC_HANDLE, LPCTSTR, LPTSTR, LPDWORD);
1064 
1065 BOOL GetServiceDisplayName(SC_HANDLE, LPCTSTR, LPTSTR, LPDWORD);
1066 
1067 SC_HANDLE OpenSCManager(LPCTSTR, LPCTSTR, DWORD);
1068 
1069 SC_HANDLE OpenService(SC_HANDLE, LPCTSTR, DWORD);
1070 
1071 BOOL QueryServiceConfig(SC_HANDLE, LPQUERY_SERVICE_CONFIG, DWORD, LPDWORD);
1072 
1073 BOOL QueryServiceConfig2(SC_HANDLE, DWORD, LPBYTE, DWORD, LPDWORD);
1074 
1075 BOOL QueryServiceLockStatus(SC_HANDLE, LPQUERY_SERVICE_LOCK_STATUS, DWORD,
1076                             LPDWORD);
1077 
1078 SERVICE_STATUS_HANDLE RegisterServiceCtrlHandler(LPCTSTR, LPHANDLER_FUNCTION);
1079 
1080 SERVICE_STATUS_HANDLE RegisterServiceCtrlHandlerEx(LPCTSTR,
1081                                                    LPHANDLER_FUNCTION_EX,
1082                                                    LPVOID);
1083 
1084 BOOL StartServiceCtrlDispatcher(const SERVICE_TABLE_ENTRY*);
1085 
1086 BOOL StartService(SC_HANDLE, DWORD, LPCTSTR*);
1087 
1088 DWORD NotifyServiceStatusChange(SC_HANDLE, DWORD, PSERVICE_NOTIFY);
1089 
1090 BOOL ControlServiceEx(SC_HANDLE, DWORD, DWORD, PVOID);
1091 
1092 HKL ImmInstallIME(LPCTSTR, LPCTSTR);
1093 
1094 UINT ImmGetDescription(HKL, LPTSTR, UINT);
1095 
1096 UINT ImmGetIMEFileName(HKL, LPTSTR, UINT);
1097 
1098 LONG ImmGetCompositionString(HIMC, DWORD, LPVOID, DWORD);
1099 
1100 BOOL ImmSetCompositionString(HIMC, DWORD, LPVOID, DWORD, LPVOID, DWORD);
1101 
1102 DWORD ImmGetCandidateListCount(HIMC, LPDWORD);
1103 
1104 DWORD ImmGetCandidateList(HIMC, DWORD, LPCANDIDATELIST, DWORD);
1105 
1106 DWORD ImmGetGuideLine(HIMC, DWORD, LPTSTR, DWORD);
1107 
1108 BOOL ImmGetCompositionFont(HIMC, LPLOGFONT);
1109 
1110 BOOL ImmSetCompositionFont(HIMC, LPLOGFONT);
1111 
1112 BOOL ImmConfigureIME(HKL, HWND, DWORD, LPVOID);
1113 
1114 LRESULT ImmEscape(HKL, HIMC, UINT, LPVOID);
1115 
1116 DWORD ImmGetConversionList(HKL, HIMC, LPCTSTR, LPCANDIDATELIST, DWORD, UINT);
1117 
1118 BOOL ImmIsUIMessage(HWND, UINT, WPARAM, LPARAM);
1119 
1120 BOOL ImmRegisterWord(HKL, LPCTSTR, DWORD, LPCTSTR);
1121 
1122 BOOL ImmUnregisterWord(HKL, LPCTSTR, DWORD, LPCTSTR);
1123 
1124 UINT ImmGetRegisterWordStyle(HKL, UINT, LPSTYLEBUF);
1125 
1126 UINT ImmEnumRegisterWord(HKL, REGISTERWORDENUMPROC, LPCTSTR, DWORD, LPCTSTR,
1127                          LPVOID);
1128 
1129 DWORD ImmGetImeMenuItems(HIMC, DWORD, DWORD, LPIMEMENUITEMINFO,
1130                          LPIMEMENUITEMINFO, DWORD);
1131