update for HEAD-2003050101
[reactos.git] / include / unicode.h
1 /* 
2    UnicodeFunctions.h
3
4    Declarations for all the Windows32 API Unicode Functions
5
6    Copyright (C) 1996 Free Software Foundation, Inc.
7
8    Author:  Scott Christley <scottc@net-community.com>
9    Date: 1996
10    
11    This file is part of the Windows32 API Library.
12
13    This library is free software; you can redistribute it and/or
14    modify it under the terms of the GNU Library General Public
15    License as published by the Free Software Foundation; either
16    version 2 of the License, or (at your option) any later version.
17    
18    This library is distributed in the hope that it will be useful,
19    but WITHOUT ANY WARRANTY; without even the implied warranty of
20    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
21    Library General Public License for more details.
22
23    If you are interested in a warranty or support for this source code,
24    contact Scott Christley <scottc@net-community.com> for more information.
25    
26    You should have received a copy of the GNU Library General Public
27    License along with this library; see the file COPYING.LIB.
28    If not, write to the Free Software Foundation, 
29    59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
30 */ 
31
32 #ifndef _GNU_H_WINDOWS32_UNICODEFUNCTIONS
33 #define _GNU_H_WINDOWS32_UNICODEFUNCTIONS
34
35 #ifdef __cplusplus
36 extern "C" {
37 #endif /* __cplusplus */
38
39 WINBOOL
40 STDCALL
41 GetBinaryTypeW(
42     LPCWSTR lpApplicationName,
43     LPDWORD lpBinaryType
44     );
45
46 DWORD
47 STDCALL
48 GetShortPathNameW(
49     LPCWSTR lpszLongPath,
50     LPWSTR  lpszShortPath,
51     DWORD    cchBuffer
52     );
53
54 LPWSTR
55 STDCALL
56 GetEnvironmentStringsW(
57     VOID
58     );
59
60 WINBOOL
61 STDCALL
62 FreeEnvironmentStringsW(
63     LPWSTR
64     );
65
66 DWORD
67 STDCALL
68 FormatMessageW(
69     DWORD dwFlags,
70     LPCVOID lpSource,
71     DWORD dwMessageId,
72     DWORD dwLanguageId,
73     LPWSTR lpBuffer,
74     DWORD nSize,
75     va_list *Arguments
76     );
77
78 HANDLE
79 STDCALL
80 CreateMailslotW(
81     LPCWSTR lpName,
82     DWORD nMaxMessageSize,
83     DWORD lReadTimeout,
84     LPSECURITY_ATTRIBUTES lpSecurityAttributes
85     );
86
87 int
88 STDCALL
89 lstrcmpW(
90     LPCWSTR lpString1,
91     LPCWSTR lpString2
92     );
93
94 int
95 STDCALL
96 lstrcmpiW(
97     LPCWSTR lpString1,
98     LPCWSTR lpString2
99     );
100
101 LPWSTR
102 STDCALL
103 lstrcpynW(
104     LPWSTR lpString1,
105     LPCWSTR lpString2,
106     int iMaxLength
107     );
108
109 LPWSTR
110 STDCALL
111 lstrcpyW(
112     LPWSTR lpString1,
113     LPCWSTR lpString2
114     );
115
116 LPWSTR
117 STDCALL
118 lstrcatW(
119     LPWSTR lpString1,
120     LPCWSTR lpString2
121     );
122
123 int
124 STDCALL
125 lstrlenW(
126     LPCWSTR lpString
127     );
128
129 HANDLE
130 STDCALL
131 CreateMutexW(
132     LPSECURITY_ATTRIBUTES lpMutexAttributes,
133     WINBOOL bInitialOwner,
134     LPCWSTR lpName
135     );
136
137 HANDLE
138 STDCALL
139 OpenMutexW(
140     DWORD dwDesiredAccess,
141     WINBOOL bInheritHandle,
142     LPCWSTR lpName
143     );
144
145 HANDLE
146 STDCALL
147 CreateEventW(
148     LPSECURITY_ATTRIBUTES lpEventAttributes,
149     WINBOOL bManualReset,
150     WINBOOL bInitialState,
151     LPCWSTR lpName
152     );
153
154 HANDLE
155 STDCALL
156 OpenEventW(
157     DWORD dwDesiredAccess,
158     WINBOOL bInheritHandle,
159     LPCWSTR lpName
160     );
161
162 HANDLE
163 STDCALL
164 CreateSemaphoreW(
165                  LPSECURITY_ATTRIBUTES lpSemaphoreAttributes,
166                  LONG lInitialCount,
167                  LONG lMaximumCount,
168                  LPCWSTR lpName
169                  );
170
171 HANDLE
172 STDCALL
173 OpenSemaphoreW(
174     DWORD dwDesiredAccess,
175     WINBOOL bInheritHandle,
176     LPCWSTR lpName
177     );
178
179 HANDLE
180 STDCALL
181 CreateFileMappingW(
182     HANDLE hFile,
183     LPSECURITY_ATTRIBUTES lpFileMappingAttributes,
184     DWORD flProtect,
185     DWORD dwMaximumSizeHigh,
186     DWORD dwMaximumSizeLow,
187     LPCWSTR lpName
188     );
189
190 HANDLE
191 STDCALL
192 OpenFileMappingW(
193     DWORD dwDesiredAccess,
194     WINBOOL bInheritHandle,
195     LPCWSTR lpName
196     );
197
198 DWORD
199 STDCALL
200 GetLogicalDriveStringsW(
201     DWORD nBufferLength,
202     LPWSTR lpBuffer
203     );
204
205 HINSTANCE
206 STDCALL
207 LoadLibraryW(
208     LPCWSTR lpLibFileName
209     );
210
211 HINSTANCE
212 STDCALL
213 LoadLibraryExW(
214     LPCWSTR lpLibFileName,
215     HANDLE hFile,
216     DWORD dwFlags
217     );
218
219 DWORD
220 STDCALL
221 GetModuleFileNameW(
222     HINSTANCE hModule,
223     LPWSTR lpFilename,
224     DWORD nSize
225     );
226
227 HMODULE
228 STDCALL
229 GetModuleHandleW(
230     LPCWSTR lpModuleName
231     );
232
233 VOID
234 STDCALL
235 FatalAppExitW(
236     UINT uAction,
237     LPCWSTR lpMessageText
238     );
239
240 LPWSTR
241 STDCALL
242 GetCommandLineW(
243     VOID
244     );
245
246 DWORD
247 STDCALL
248 GetEnvironmentVariableW(
249     LPCWSTR lpName,
250     LPWSTR lpBuffer,
251     DWORD nSize
252     );
253
254 WINBOOL
255 STDCALL
256 SetEnvironmentVariableW(
257     LPCWSTR lpName,
258     LPCWSTR lpValue
259     );
260
261 DWORD
262 STDCALL
263 ExpandEnvironmentStringsW(
264     LPCWSTR lpSrc,
265     LPWSTR lpDst,
266     DWORD nSize
267     );
268
269 VOID
270 STDCALL
271 OutputDebugStringW(
272     LPCWSTR lpOutputString
273     );
274
275 HRSRC
276 STDCALL
277 FindResourceW(
278     HINSTANCE hModule,
279     LPCWSTR lpName,
280     LPCWSTR lpType
281     );
282
283 HRSRC
284 STDCALL
285 FindResourceExW(
286     HINSTANCE hModule,
287     LPCWSTR lpType,
288     LPCWSTR lpName,
289     WORD    wLanguage
290     );
291
292 WINBOOL
293 STDCALL
294 EnumResourceTypesW(
295     HINSTANCE hModule,
296     ENUMRESTYPEPROC lpEnumFunc,
297     LONG lParam
298     );
299
300 WINBOOL
301 STDCALL
302 EnumResourceNamesW(
303     HINSTANCE hModule,
304     LPCWSTR lpType,
305     ENUMRESNAMEPROC lpEnumFunc,
306     LONG lParam
307     );
308
309 WINBOOL
310 STDCALL
311 EnumResourceLanguagesW(
312     HINSTANCE hModule,
313     LPCWSTR lpType,
314     LPCWSTR lpName,
315     ENUMRESLANGPROC lpEnumFunc,
316     LONG lParam
317     );
318
319 HANDLE
320 STDCALL
321 BeginUpdateResourceW(
322     LPCWSTR pFileName,
323     WINBOOL bDeleteExistingResources
324     );
325
326 WINBOOL
327 STDCALL
328 UpdateResourceW(
329     HANDLE      hUpdate,
330     LPCWSTR     lpType,
331     LPCWSTR     lpName,
332     WORD        wLanguage,
333     LPVOID      lpData,
334     DWORD       cbData
335     );
336
337 WINBOOL
338 STDCALL
339 EndUpdateResourceW(
340     HANDLE      hUpdate,
341     WINBOOL        fDiscard
342     );
343
344 ATOM
345 STDCALL
346 GlobalAddAtomW(
347     LPCWSTR lpString
348     );
349
350 ATOM
351 STDCALL
352 GlobalFindAtomW(
353     LPCWSTR lpString
354     );
355
356 UINT
357 STDCALL
358 GlobalGetAtomNameW(
359     ATOM nAtom,
360     LPWSTR lpBuffer,
361     int nSize
362     );
363
364 ATOM
365 STDCALL
366 AddAtomW(
367     LPCWSTR lpString
368     );
369
370 ATOM
371 STDCALL
372 FindAtomW(
373     LPCWSTR lpString
374     );
375
376 UINT
377 STDCALL
378 GetAtomNameW(
379     ATOM nAtom,
380     LPWSTR lpBuffer,
381     int nSize
382     );
383
384 UINT
385 STDCALL
386 GetProfileIntW(
387     LPCWSTR lpAppName,
388     LPCWSTR lpKeyName,
389     INT nDefault
390     );
391
392 DWORD
393 STDCALL
394 GetProfileStringW(
395     LPCWSTR lpAppName,
396     LPCWSTR lpKeyName,
397     LPCWSTR lpDefault,
398     LPWSTR lpReturnedString,
399     DWORD nSize
400     );
401
402 WINBOOL
403 STDCALL
404 WriteProfileStringW(
405     LPCWSTR lpAppName,
406     LPCWSTR lpKeyName,
407     LPCWSTR lpString
408     );
409
410 DWORD
411 STDCALL
412 GetProfileSectionW(
413     LPCWSTR lpAppName,
414     LPWSTR lpReturnedString,
415     DWORD nSize
416     );
417
418 WINBOOL
419 STDCALL
420 WriteProfileSectionW(
421     LPCWSTR lpAppName,
422     LPCWSTR lpString
423     );
424
425 UINT
426 STDCALL
427 GetPrivateProfileIntW(
428     LPCWSTR lpAppName,
429     LPCWSTR lpKeyName,
430     INT nDefault,
431     LPCWSTR lpFileName
432     );
433
434 DWORD
435 STDCALL
436 GetPrivateProfileStringW(
437     LPCWSTR lpAppName,
438     LPCWSTR lpKeyName,
439     LPCWSTR lpDefault,
440     LPWSTR lpReturnedString,
441     DWORD nSize,
442     LPCWSTR lpFileName
443     );
444
445 WINBOOL
446 STDCALL
447 WritePrivateProfileStringW(
448     LPCWSTR lpAppName,
449     LPCWSTR lpKeyName,
450     LPCWSTR lpString,
451     LPCWSTR lpFileName
452     );
453
454 DWORD
455 STDCALL
456 GetPrivateProfileSectionW(
457     LPCWSTR lpAppName,
458     LPWSTR lpReturnedString,
459     DWORD nSize,
460     LPCWSTR lpFileName
461     );
462
463 WINBOOL
464 STDCALL
465 WritePrivateProfileSectionW(
466     LPCWSTR lpAppName,
467     LPCWSTR lpString,
468     LPCWSTR lpFileName
469     );
470
471 UINT
472 STDCALL
473 GetDriveTypeW(
474     LPCWSTR lpRootPathName
475     );
476
477 UINT
478 STDCALL
479 GetSystemDirectoryW(
480     LPWSTR lpBuffer,
481     UINT uSize
482     );
483
484 DWORD
485 STDCALL
486 GetTempPathW(
487     DWORD nBufferLength,
488     LPWSTR lpBuffer
489     );
490
491 UINT
492 STDCALL
493 GetTempFileNameW(
494     LPCWSTR lpPathName,
495     LPCWSTR lpPrefixString,
496     UINT uUnique,
497     LPWSTR lpTempFileName
498     );
499
500 UINT
501 STDCALL
502 GetWindowsDirectoryW(
503     LPWSTR lpBuffer,
504     UINT uSize
505     );
506
507 WINBOOL
508 STDCALL
509 SetCurrentDirectoryW(
510     LPCWSTR lpPathName
511     );
512
513 DWORD
514 STDCALL
515 GetCurrentDirectoryW(
516     DWORD nBufferLength,
517     LPWSTR lpBuffer
518     );
519
520 WINBOOL
521 STDCALL
522 GetDiskFreeSpaceW(
523     LPCWSTR lpRootPathName,
524     LPDWORD lpSectorsPerCluster,
525     LPDWORD lpBytesPerSector,
526     LPDWORD lpNumberOfFreeClusters,
527     LPDWORD lpTotalNumberOfClusters
528     );
529
530 WINBOOL
531 STDCALL
532 GetDiskFreeSpaceExW(
533     LPCWSTR lpDirectoryName,
534     PULARGE_INTEGER lpFreeBytesAvailableToCaller,
535     PULARGE_INTEGER lpTotalNumberOfBytes,
536     PULARGE_INTEGER lpTotalNumberOfFreeBytes
537     );
538
539 WINBOOL
540 STDCALL
541 CreateDirectoryW(
542     LPCWSTR lpPathName,
543     LPSECURITY_ATTRIBUTES lpSecurityAttributes
544     );
545
546 WINBOOL
547 STDCALL
548 CreateDirectoryExW(
549     LPCWSTR lpTemplateDirectory,
550     LPCWSTR lpNewDirectory,
551     LPSECURITY_ATTRIBUTES lpSecurityAttributes
552     );
553
554 WINBOOL
555 STDCALL
556 RemoveDirectoryW(
557     LPCWSTR lpPathName
558     );
559
560 DWORD
561 STDCALL
562 GetFullPathNameW(
563     LPCWSTR lpFileName,
564     DWORD nBufferLength,
565     LPWSTR lpBuffer,
566     LPWSTR *lpFilePart
567     );
568
569 WINBOOL
570 STDCALL
571 DefineDosDeviceW(
572     DWORD dwFlags,
573     LPCWSTR lpDeviceName,
574     LPCWSTR lpTargetPath
575     );
576
577 DWORD
578 STDCALL
579 QueryDosDeviceW(
580     LPCWSTR lpDeviceName,
581     LPWSTR lpTargetPath,
582     DWORD ucchMax
583     );
584
585 HANDLE
586 STDCALL
587 CreateFileW(
588     LPCWSTR lpFileName,
589     DWORD dwDesiredAccess,
590     DWORD dwShareMode,
591     LPSECURITY_ATTRIBUTES lpSecurityAttributes,
592     DWORD dwCreationDisposition,
593     DWORD dwFlagsAndAttributes,
594     HANDLE hTemplateFile
595     );
596
597 WINBOOL
598 STDCALL
599 SetFileAttributesW(
600     LPCWSTR lpFileName,
601     DWORD dwFileAttributes
602     );
603
604 DWORD
605 STDCALL
606 GetFileAttributesW(
607     LPCWSTR lpFileName
608     );
609
610 DWORD
611 STDCALL
612 GetCompressedFileSizeW(
613     LPCWSTR lpFileName,
614     LPDWORD lpFileSizeHigh
615     );
616
617 WINBOOL
618 STDCALL
619 DeleteFileW(
620     LPCWSTR lpFileName
621     );
622
623 DWORD
624 STDCALL
625 SearchPathW(
626     LPCWSTR lpPath,
627     LPCWSTR lpFileName,
628     LPCWSTR lpExtension,
629     DWORD nBufferLength,
630     LPWSTR lpBuffer,
631     LPWSTR *lpFilePart
632     );
633
634 WINBOOL
635 STDCALL
636 CopyFileW(
637     LPCWSTR lpExistingFileName,
638     LPCWSTR lpNewFileName,
639     WINBOOL bFailIfExists
640     );
641
642 WINBOOL
643 STDCALL
644 CopyFileExW(
645     LPCWSTR lpExistingFileName,
646     LPCWSTR lpNewFileName,
647     LPPROGRESS_ROUTINE lpProgressRoutine,
648     LPVOID lpData,
649     LPBOOL pbCancel,
650     DWORD dwCopyFlags
651     );
652
653 WINBOOL
654 STDCALL
655 MoveFileW(
656     LPCWSTR lpExistingFileName,
657     LPCWSTR lpNewFileName
658     );
659
660 WINBOOL
661 STDCALL
662 MoveFileExW(
663     LPCWSTR lpExistingFileName,
664     LPCWSTR lpNewFileName,
665     DWORD dwFlags
666     );
667
668 WINBOOL
669 STDCALL
670 MoveFileWithProgressW(
671     LPCWSTR lpExistingFileName,
672     LPCWSTR lpNewFileName,
673     LPPROGRESS_ROUTINE lpProgressRoutine,
674     LPVOID lpData,
675     DWORD dwFlags
676     );
677
678 HANDLE
679 STDCALL
680 CreateNamedPipeW(
681     LPCWSTR lpName,
682     DWORD dwOpenMode,
683     DWORD dwPipeMode,
684     DWORD nMaxInstances,
685     DWORD nOutBufferSize,
686     DWORD nInBufferSize,
687     DWORD nDefaultTimeOut,
688     LPSECURITY_ATTRIBUTES lpSecurityAttributes
689     );
690
691 WINBOOL
692 STDCALL
693 GetNamedPipeHandleStateW(
694     HANDLE hNamedPipe,
695     LPDWORD lpState,
696     LPDWORD lpCurInstances,
697     LPDWORD lpMaxCollectionCount,
698     LPDWORD lpCollectDataTimeout,
699     LPWSTR lpUserName,
700     DWORD nMaxUserNameSize
701     );
702
703 WINBOOL
704 STDCALL
705 CallNamedPipeW(
706     LPCWSTR lpNamedPipeName,
707     LPVOID lpInBuffer,
708     DWORD nInBufferSize,
709     LPVOID lpOutBuffer,
710     DWORD nOutBufferSize,
711     LPDWORD lpBytesRead,
712     DWORD nTimeOut
713     );
714
715 WINBOOL
716 STDCALL
717 WaitNamedPipeW(
718     LPCWSTR lpNamedPipeName,
719     DWORD nTimeOut
720     );
721
722 WINBOOL
723 STDCALL
724 SetVolumeLabelW(
725     LPCWSTR lpRootPathName,
726     LPCWSTR lpVolumeName
727     );
728
729 WINBOOL
730 STDCALL
731 GetVolumeInformationW(
732     LPCWSTR lpRootPathName,
733     LPWSTR lpVolumeNameBuffer,
734     DWORD nVolumeNameSize,
735     LPDWORD lpVolumeSerialNumber,
736     LPDWORD lpMaximumComponentLength,
737     LPDWORD lpFileSystemFlags,
738     LPWSTR lpFileSystemNameBuffer,
739     DWORD nFileSystemNameSize
740     );
741
742 WINBOOL
743 STDCALL
744 ClearEventLogW (
745     HANDLE hEventLog,
746     LPCWSTR lpBackupFileName
747     );
748
749 WINBOOL
750 STDCALL
751 BackupEventLogW (
752     HANDLE hEventLog,
753     LPCWSTR lpBackupFileName
754     );
755
756 HANDLE
757 STDCALL
758 OpenEventLogW (
759     LPCWSTR lpUNCServerName,
760     LPCWSTR lpSourceName
761     );
762
763 HANDLE
764 STDCALL
765 RegisterEventSourceW (
766     LPCWSTR lpUNCServerName,
767     LPCWSTR lpSourceName
768     );
769
770 HANDLE
771 STDCALL
772 OpenBackupEventLogW (
773     LPCWSTR lpUNCServerName,
774     LPCWSTR lpFileName
775     );
776
777 WINBOOL
778 STDCALL
779 ReadEventLogW (
780      HANDLE     hEventLog,
781      DWORD      dwReadFlags,
782      DWORD      dwRecordOffset,
783      LPVOID     lpBuffer,
784      DWORD      nNumberOfBytesToRead,
785      DWORD      *pnBytesRead,
786      DWORD      *pnMinNumberOfBytesNeeded
787     );
788
789 WINBOOL
790 STDCALL
791 ReportEventW (
792      HANDLE     hEventLog,
793      WORD       wType,
794      WORD       wCategory,
795      DWORD      dwEventID,
796      PSID       lpUserSid,
797      WORD       wNumStrings,
798      DWORD      dwDataSize,
799      LPCWSTR   *lpStrings,
800      LPVOID     lpRawData
801     );
802
803 WINBOOL
804 STDCALL
805 AccessCheckAndAuditAlarmW (
806     LPCWSTR SubsystemName,
807     LPVOID HandleId,
808     LPWSTR ObjectTypeName,
809     LPWSTR ObjectName,
810     PSECURITY_DESCRIPTOR SecurityDescriptor,
811     DWORD DesiredAccess,
812     PGENERIC_MAPPING GenericMapping,
813     WINBOOL ObjectCreation,
814     LPDWORD GrantedAccess,
815     LPBOOL AccessStatus,
816     LPBOOL pfGenerateOnClose
817     );
818
819 WINBOOL
820 STDCALL
821 ObjectOpenAuditAlarmW (
822     LPCWSTR SubsystemName,
823     LPVOID HandleId,
824     LPWSTR ObjectTypeName,
825     LPWSTR ObjectName,
826     PSECURITY_DESCRIPTOR pSecurityDescriptor,
827     HANDLE ClientToken,
828     DWORD DesiredAccess,
829     DWORD GrantedAccess,
830     PPRIVILEGE_SET Privileges,
831     WINBOOL ObjectCreation,
832     WINBOOL AccessGranted,
833     LPBOOL GenerateOnClose
834     );
835
836 WINBOOL
837 STDCALL
838 ObjectPrivilegeAuditAlarmW (
839     LPCWSTR SubsystemName,
840     LPVOID HandleId,
841     HANDLE ClientToken,
842     DWORD DesiredAccess,
843     PPRIVILEGE_SET Privileges,
844     WINBOOL AccessGranted
845     );
846
847 WINBOOL
848 STDCALL
849 ObjectCloseAuditAlarmW (
850     LPCWSTR SubsystemName,
851     LPVOID HandleId,
852     WINBOOL GenerateOnClose
853     );
854
855 WINBOOL
856 STDCALL
857 PrivilegedServiceAuditAlarmW (
858     LPCWSTR SubsystemName,
859     LPCWSTR ServiceName,
860     HANDLE ClientToken,
861     PPRIVILEGE_SET Privileges,
862     WINBOOL AccessGranted
863     );
864
865 WINBOOL
866 STDCALL
867 SetFileSecurityW (
868     LPCWSTR lpFileName,
869     SECURITY_INFORMATION SecurityInformation,
870     PSECURITY_DESCRIPTOR pSecurityDescriptor
871     );
872
873 WINBOOL
874 STDCALL
875 GetFileSecurityW (
876     LPCWSTR lpFileName,
877     SECURITY_INFORMATION RequestedInformation,
878     PSECURITY_DESCRIPTOR pSecurityDescriptor,
879     DWORD nLength,
880     LPDWORD lpnLengthNeeded
881     );
882
883 HANDLE
884 STDCALL
885 FindFirstChangeNotificationW(
886     LPCWSTR lpPathName,
887     WINBOOL bWatchSubtree,
888     DWORD dwNotifyFilter
889     );
890
891 WINBOOL
892 STDCALL
893 IsBadStringPtrW(
894     LPCWSTR lpsz,
895     UINT ucchMax
896     );
897
898 WINBOOL
899 STDCALL
900 LookupAccountSidW(
901     LPCWSTR lpSystemName,
902     PSID Sid,
903     LPWSTR Name,
904     LPDWORD cbName,
905     LPWSTR ReferencedDomainName,
906     LPDWORD cbReferencedDomainName,
907     PSID_NAME_USE peUse
908     );
909
910 WINBOOL
911 STDCALL
912 LookupAccountNameW(
913     LPCWSTR lpSystemName,
914     LPCWSTR lpAccountName,
915     PSID Sid,
916     LPDWORD cbSid,
917     LPWSTR ReferencedDomainName,
918     LPDWORD cbReferencedDomainName,
919     PSID_NAME_USE peUse
920     );
921
922 WINBOOL
923 STDCALL
924 LookupPrivilegeValueW(
925     LPCWSTR lpSystemName,
926     LPCWSTR lpName,
927     PLUID   lpLuid
928     );
929
930 WINBOOL
931 STDCALL
932 LookupPrivilegeNameW(
933     LPCWSTR lpSystemName,
934     PLUID   lpLuid,
935     LPWSTR lpName,
936     LPDWORD cbName
937     );
938
939 WINBOOL
940 STDCALL
941 LookupPrivilegeDisplayNameW(
942     LPCWSTR lpSystemName,
943     LPCWSTR lpName,
944     LPWSTR lpDisplayName,
945     LPDWORD cbDisplayName,
946     LPDWORD lpLanguageId
947     );
948
949 WINBOOL
950 STDCALL
951 BuildCommDCBW(
952     LPCWSTR lpDef,
953     LPDCB lpDCB
954     );
955
956 WINBOOL
957 STDCALL
958 BuildCommDCBAndTimeoutsW(
959     LPCWSTR lpDef,
960     LPDCB lpDCB,
961     LPCOMMTIMEOUTS lpCommTimeouts
962     );
963
964 WINBOOL
965 STDCALL
966 CommConfigDialogW(
967     LPCWSTR lpszName,
968     HWND hWnd,
969     LPCOMMCONFIG lpCC
970     );
971
972 WINBOOL
973 STDCALL
974 GetDefaultCommConfigW(
975     LPCWSTR lpszName,
976     LPCOMMCONFIG lpCC,
977     LPDWORD lpdwSize
978     );
979
980 WINBOOL
981 STDCALL
982 SetDefaultCommConfigW(
983     LPCWSTR lpszName,
984     LPCOMMCONFIG lpCC,
985     DWORD dwSize
986     );
987
988 WINBOOL
989 STDCALL
990 GetComputerNameW (
991     LPWSTR lpBuffer,
992     LPDWORD nSize
993     );
994
995 WINBOOL
996 STDCALL
997 SetComputerNameW (
998     LPCWSTR lpComputerName
999     );
1000
1001 WINBOOL
1002 STDCALL
1003 GetUserNameW (
1004     LPWSTR lpBuffer,
1005     LPDWORD nSize
1006     );
1007
1008 int
1009 STDCALL
1010 wvsprintfW(
1011     LPWSTR,
1012     LPCWSTR,
1013     va_list arglist);
1014
1015 int
1016 CDECL
1017 wsprintfW(LPWSTR, LPCWSTR, ...);
1018
1019 HKL
1020 STDCALL
1021 LoadKeyboardLayoutW(
1022     LPCWSTR pwszKLID,
1023     UINT Flags);
1024
1025 WINBOOL
1026 STDCALL
1027 GetKeyboardLayoutNameW(
1028     LPWSTR pwszKLID);
1029
1030 HDESK
1031 STDCALL
1032 CreateDesktopW(
1033     LPCWSTR lpszDesktop,
1034     LPCWSTR lpszDevice,
1035     LPDEVMODEW pDevmode,
1036     DWORD dwFlags,
1037     ACCESS_MASK dwDesiredAccess,
1038     LPSECURITY_ATTRIBUTES lpsa);
1039
1040 HDESK
1041 STDCALL
1042 OpenDesktopW(
1043     LPWSTR lpszDesktop,
1044     DWORD dwFlags,
1045     WINBOOL fInherit,
1046     DWORD dwDesiredAccess);
1047
1048 WINBOOL
1049 STDCALL
1050 EnumDesktopsW(
1051     HWINSTA hwinsta,
1052     DESKTOPENUMPROC lpEnumFunc,
1053     LPARAM lParam);
1054
1055 HWINSTA
1056 STDCALL
1057 CreateWindowStationW(
1058     LPWSTR lpwinsta,
1059     DWORD dwReserved,
1060     DWORD dwDesiredAccess,
1061     LPSECURITY_ATTRIBUTES lpsa);
1062
1063 HWINSTA
1064 STDCALL
1065 OpenWindowStationW(
1066     LPWSTR lpszWinSta,
1067     WINBOOL fInherit,
1068     DWORD dwDesiredAccess);
1069
1070 WINBOOL
1071 STDCALL
1072 EnumWindowStationsW(
1073     ENUMWINDOWSTATIONPROC lpEnumFunc,
1074     LPARAM lParam);
1075
1076 WINBOOL
1077 STDCALL
1078 GetUserObjectInformationW(
1079     HANDLE hObj,
1080     int nIndex,
1081     PVOID pvInfo,
1082     DWORD nLength,
1083     LPDWORD lpnLengthNeeded);
1084
1085 WINBOOL
1086 STDCALL
1087 SetUserObjectInformationW(
1088     HANDLE hObj,
1089     int nIndex,
1090     PVOID pvInfo,
1091     DWORD nLength);
1092
1093 UINT
1094 STDCALL
1095 RegisterWindowMessageW(
1096     LPCWSTR lpString);
1097
1098 WINBOOL
1099 STDCALL
1100 GetMessageW(
1101     LPMSG lpMsg,
1102     HWND hWnd ,
1103     UINT wMsgFilterMin,
1104     UINT wMsgFilterMax);
1105
1106 LRESULT
1107 STDCALL
1108 DispatchMessageW(
1109     CONST MSG *lpMsg);
1110
1111 WINBOOL
1112 STDCALL
1113 PeekMessageW(
1114     LPMSG lpMsg,
1115     HWND hWnd ,
1116     UINT wMsgFilterMin,
1117     UINT wMsgFilterMax,
1118     UINT wRemoveMsg);
1119
1120 LRESULT
1121 STDCALL
1122 SendMessageW(
1123     HWND hWnd,
1124     UINT Msg,
1125     WPARAM wParam,
1126     LPARAM lParam);
1127
1128 LRESULT
1129 STDCALL
1130 SendMessageTimeoutW(
1131     HWND hWnd,
1132     UINT Msg,
1133     WPARAM wParam,
1134     LPARAM lParam,
1135     UINT fuFlags,
1136     UINT uTimeout,
1137     PDWORD_PTR lpdwResult);
1138
1139 WINBOOL
1140 STDCALL
1141 SendNotifyMessageW(
1142     HWND hWnd,
1143     UINT Msg,
1144     WPARAM wParam,
1145     LPARAM lParam);
1146
1147 WINBOOL
1148 STDCALL
1149 SendMessageCallbackW(
1150     HWND hWnd,
1151     UINT Msg,
1152     WPARAM wParam,
1153     LPARAM lParam,
1154     SENDASYNCPROC lpResultCallBack,
1155     ULONG_PTR dwData);
1156
1157 WINBOOL
1158 STDCALL
1159 PostMessageW(
1160     HWND hWnd,
1161     UINT Msg,
1162     WPARAM wParam,
1163     LPARAM lParam);
1164
1165 WINBOOL
1166 STDCALL
1167 PostThreadMessageW(
1168     DWORD idThread,
1169     UINT Msg,
1170     WPARAM wParam,
1171     LPARAM lParam);
1172
1173 LRESULT
1174 STDCALL
1175 DefWindowProcW(
1176     HWND hWnd,
1177     UINT Msg,
1178     WPARAM wParam,
1179     LPARAM lParam);
1180
1181 LRESULT
1182 STDCALL
1183 CallWindowProcW(
1184     WNDPROC lpPrevWndFunc,
1185     HWND hWnd,
1186     UINT Msg,
1187     WPARAM wParam,
1188     LPARAM lParam);
1189
1190 ATOM
1191 STDCALL
1192 RegisterClassW(
1193     CONST WNDCLASS *lpWndClass);
1194
1195 WINBOOL
1196 STDCALL
1197 UnregisterClassW(
1198     LPCWSTR lpClassName,
1199     HINSTANCE hInstance);
1200
1201 WINBOOL
1202 STDCALL
1203 GetClassInfoW(
1204     HINSTANCE hInstance ,
1205     LPCWSTR lpClassName,
1206     LPWNDCLASS lpWndClass);
1207
1208 ATOM
1209 STDCALL
1210 RegisterClassExW(CONST WNDCLASSEX *);
1211
1212 WINBOOL
1213 STDCALL
1214 GetClassInfoExW(HINSTANCE, LPCWSTR, LPWNDCLASSEX);
1215
1216 HWND
1217 STDCALL
1218 CreateWindowExW(
1219     DWORD dwExStyle,
1220     LPCWSTR lpClassName,
1221     LPCWSTR lpWindowName,
1222     DWORD dwStyle,
1223     int X,
1224     int Y,
1225     int nWidth,
1226     int nHeight,
1227     HWND hWndParent ,
1228     HMENU hMenu,
1229     HINSTANCE hInstance,
1230     LPVOID lpParam);
1231
1232 HWND
1233 STDCALL
1234 CreateDialogParamW(
1235     HINSTANCE hInstance,
1236     LPCWSTR lpTemplateName,
1237     HWND hWndParent ,
1238     DLGPROC lpDialogFunc,
1239     LPARAM dwInitParam);
1240
1241 HWND
1242 STDCALL
1243 CreateDialogIndirectParamW(
1244     HINSTANCE hInstance,
1245     LPCDLGTEMPLATE lpTemplate,
1246     HWND hWndParent,
1247     DLGPROC lpDialogFunc,
1248     LPARAM dwInitParam);
1249
1250 int
1251 STDCALL
1252 DialogBoxParamW(
1253     HINSTANCE hInstance,
1254     LPCWSTR lpTemplateName,
1255     HWND hWndParent ,
1256     DLGPROC lpDialogFunc,
1257     LPARAM dwInitParam);
1258
1259 int
1260 STDCALL
1261 DialogBoxIndirectParamW(
1262     HINSTANCE hInstance,
1263     LPCDLGTEMPLATE hDialogTemplate,
1264     HWND hWndParent ,
1265     DLGPROC lpDialogFunc,
1266     LPARAM dwInitParam);
1267
1268 WINBOOL
1269 STDCALL
1270 SetDlgItemTextW(
1271     HWND hDlg,
1272     int nIDDlgItem,
1273     LPCWSTR lpString);
1274
1275 UINT
1276 STDCALL
1277 GetDlgItemTextW(
1278     HWND hDlg,
1279     int nIDDlgItem,
1280     LPWSTR lpString,
1281     int nMaxCount);
1282
1283 LRESULT
1284 STDCALL
1285 SendDlgItemMessageW(
1286     HWND hDlg,
1287     int nIDDlgItem,
1288     UINT Msg,
1289     WPARAM wParam,
1290     LPARAM lParam);
1291
1292 LRESULT
1293 STDCALL
1294 DefDlgProcW(
1295     HWND hDlg,
1296     UINT Msg,
1297     WPARAM wParam,
1298     LPARAM lParam);
1299
1300 WINBOOL
1301 STDCALL
1302 CallMsgFilterW(
1303     LPMSG lpMsg,
1304     int nCode);
1305
1306 UINT
1307 STDCALL
1308 RegisterClipboardFormatW(
1309     LPCWSTR lpszFormat);
1310
1311 int
1312 STDCALL
1313 GetClipboardFormatNameW(
1314     UINT format,
1315     LPWSTR lpszFormatName,
1316     int cchMaxCount);
1317
1318 WINBOOL
1319 STDCALL
1320 CharToOemW(
1321     LPCWSTR lpszSrc,
1322     LPSTR lpszDst);
1323
1324 WINBOOL
1325 STDCALL
1326 OemToCharW(
1327     LPCSTR lpszSrc,
1328     LPWSTR lpszDst);
1329
1330 WINBOOL
1331 STDCALL
1332 CharToOemBuffW(
1333     LPCWSTR lpszSrc,
1334     LPSTR lpszDst,
1335     DWORD cchDstLength);
1336
1337 WINBOOL
1338 STDCALL
1339 OemToCharBuffW(
1340     LPCSTR lpszSrc,
1341     LPWSTR lpszDst,
1342     DWORD cchDstLength);
1343
1344 LPWSTR
1345 STDCALL
1346 CharUpperW(
1347     LPWSTR lpsz);
1348
1349 DWORD
1350 STDCALL
1351 CharUpperBuffW(
1352     LPWSTR lpsz,
1353     DWORD cchLength);
1354
1355 LPWSTR
1356 STDCALL
1357 CharLowerW(
1358     LPWSTR lpsz);
1359
1360 DWORD
1361 STDCALL
1362 CharLowerBuffW(
1363     LPWSTR lpsz,
1364     DWORD cchLength);
1365
1366 LPWSTR
1367 STDCALL
1368 CharNextW(
1369     LPCWSTR lpsz);
1370
1371 LPWSTR
1372 STDCALL
1373 CharPrevW(
1374     LPCWSTR lpszStart,
1375     LPCWSTR lpszCurrent);
1376
1377 WINBOOL
1378 STDCALL
1379 IsCharAlphaW(
1380     WCHAR ch);
1381
1382 WINBOOL
1383 STDCALL
1384 IsCharAlphaNumericW(
1385     WCHAR ch);
1386
1387 WINBOOL
1388 STDCALL
1389 IsCharUpperW(
1390     WCHAR ch);
1391
1392 WINBOOL
1393 STDCALL
1394 IsCharLowerW(
1395     WCHAR ch);
1396
1397 int
1398 STDCALL
1399 GetKeyNameTextW(
1400     LONG lParam,
1401     LPWSTR lpString,
1402     int nSize
1403     );
1404
1405 SHORT
1406 STDCALL
1407 VkKeyScanW(
1408     WCHAR ch);
1409
1410 SHORT
1411 STDCALL VkKeyScanExW(
1412     WCHAR  ch,
1413     HKL   dwhkl);
1414
1415 UINT
1416 STDCALL
1417 MapVirtualKeyW(
1418     UINT uCode,
1419     UINT uMapType);
1420
1421 UINT
1422 STDCALL
1423 MapVirtualKeyExW(
1424     UINT uCode,
1425     UINT uMapType,
1426     HKL dwhkl);
1427
1428 HACCEL
1429 STDCALL
1430 LoadAcceleratorsW(
1431     HINSTANCE hInstance,
1432     LPCWSTR lpTableName);
1433
1434 HACCEL
1435 STDCALL
1436 CreateAcceleratorTableW(
1437     LPACCEL, int);
1438
1439 int
1440 STDCALL
1441 CopyAcceleratorTableW(
1442     HACCEL hAccelSrc,
1443     LPACCEL lpAccelDst,
1444     int cAccelEntries);
1445
1446 int
1447 STDCALL
1448 TranslateAcceleratorW(
1449     HWND hWnd,
1450     HACCEL hAccTable,
1451     LPMSG lpMsg);
1452
1453 HMENU
1454 STDCALL
1455 LoadMenuW(
1456     HINSTANCE hInstance,
1457     LPCWSTR lpMenuName);
1458
1459 HMENU
1460 STDCALL
1461 LoadMenuIndirectW(
1462     CONST MENUTEMPLATE *lpMenuTemplate);
1463
1464 WINBOOL
1465 STDCALL
1466 ChangeMenuW(
1467     HMENU hMenu,
1468     UINT cmd,
1469     LPCWSTR lpszNewItem,
1470     UINT cmdInsert,
1471     UINT flags);
1472
1473 int
1474 STDCALL
1475 GetMenuStringW(
1476     HMENU hMenu,
1477     UINT uIDItem,
1478     LPWSTR lpString,
1479     int nMaxCount,
1480     UINT uFlag);
1481
1482 WINBOOL
1483 STDCALL
1484 InsertMenuW(
1485     HMENU hMenu,
1486     UINT uPosition,
1487     UINT uFlags,
1488     UINT uIDNewItem,
1489     LPCWSTR lpNewItem
1490     );
1491
1492 WINBOOL
1493 STDCALL
1494 AppendMenuW(
1495     HMENU hMenu,
1496     UINT uFlags,
1497     UINT uIDNewItem,
1498     LPCWSTR lpNewItem
1499     );
1500
1501 WINBOOL
1502 STDCALL
1503 ModifyMenuW(
1504     HMENU hMnu,
1505     UINT uPosition,
1506     UINT uFlags,
1507     UINT uIDNewItem,
1508     LPCWSTR lpNewItem
1509     );
1510
1511 WINBOOL
1512 STDCALL
1513 InsertMenuItemW(
1514     HMENU,
1515     UINT,
1516     WINBOOL,
1517     LPCMENUITEMINFO
1518     );
1519
1520 WINBOOL
1521 STDCALL
1522 GetMenuItemInfoW(
1523     HMENU,
1524     UINT,
1525     WINBOOL,
1526     LPMENUITEMINFO
1527     );
1528
1529 WINBOOL
1530 STDCALL
1531 SetMenuItemInfoW(
1532   HMENU hMenu,
1533   UINT uItem,
1534   WINBOOL fByPosition,
1535   LPMENUITEMINFO lpmii);
1536
1537 int
1538 STDCALL
1539 DrawTextW(
1540     HDC hDC,
1541     LPCWSTR lpString,
1542     int nCount,
1543     LPRECT lpRect,
1544     UINT uFormat);
1545
1546 int
1547 STDCALL
1548 DrawTextExW(HDC, LPWSTR, int, LPRECT, UINT, LPDRAWTEXTPARAMS);
1549
1550 WINBOOL
1551 STDCALL
1552 GrayStringW(
1553     HDC hDC,
1554     HBRUSH hBrush,
1555     GRAYSTRINGPROC lpOutputFunc,
1556     LPARAM lpData,
1557     int nCount,
1558     int X,
1559     int Y,
1560     int nWidth,
1561     int nHeight);
1562
1563 WINBOOL STDCALL DrawStateW(HDC, HBRUSH, DRAWSTATEPROC, LPARAM, WPARAM, int, int, int, int, UINT);
1564
1565 LONG
1566 STDCALL
1567 TabbedTextOutW(
1568     HDC hDC,
1569     int X,
1570     int Y,
1571     LPCWSTR lpString,
1572     int nCount,
1573     int nTabPositions,
1574     LPINT lpnTabStopPositions,
1575     int nTabOrigin);
1576
1577 DWORD
1578 STDCALL
1579 GetTabbedTextExtentW(
1580     HDC hDC,
1581     LPCWSTR lpString,
1582     int nCount,
1583     int nTabPositions,
1584     LPINT lpnTabStopPositions);
1585
1586 WINBOOL
1587 STDCALL
1588 SetPropW(
1589     HWND hWnd,
1590     LPCWSTR lpString,
1591     HANDLE hData);
1592
1593 HANDLE
1594 STDCALL
1595 GetPropW(
1596     HWND hWnd,
1597     LPCWSTR lpString);
1598
1599 HANDLE
1600 STDCALL
1601 RemovePropW(
1602     HWND hWnd,
1603     LPCWSTR lpString);
1604
1605 int
1606 STDCALL
1607 EnumPropsExW(
1608     HWND hWnd,
1609     PROPENUMPROCEX lpEnumFunc,
1610     LPARAM lParam);
1611
1612 int
1613 STDCALL
1614 EnumPropsW(
1615     HWND hWnd,
1616     PROPENUMPROC lpEnumFunc);
1617
1618 WINBOOL
1619 STDCALL
1620 SetWindowTextW(
1621     HWND hWnd,
1622     LPCWSTR lpString);
1623
1624 int
1625 STDCALL
1626 GetWindowTextW(
1627     HWND hWnd,
1628     LPWSTR lpString,
1629     int nMaxCount);
1630
1631 int
1632 STDCALL
1633 GetWindowTextLengthW(
1634     HWND hWnd);
1635
1636 int
1637 STDCALL
1638 MessageBoxW(
1639     HWND hWnd ,
1640     LPCWSTR lpText,
1641     LPCWSTR lpCaption,
1642     UINT uType);
1643
1644 int
1645 STDCALL
1646 MessageBoxExW(
1647     HWND hWnd ,
1648     LPCWSTR lpText,
1649     LPCWSTR lpCaption,
1650     UINT uType,
1651     WORD wLanguageId);
1652
1653 int
1654 STDCALL
1655 MessageBoxIndirectW(LPMSGBOXPARAMS);
1656
1657 LONG
1658 STDCALL
1659 GetWindowLongW(
1660     HWND hWnd,
1661     int nIndex);
1662
1663 LONG
1664 STDCALL
1665 SetWindowLongW(
1666     HWND hWnd,
1667     int nIndex,
1668     LONG dwNewLong);
1669
1670 DWORD
1671 STDCALL
1672 GetClassLongW(
1673     HWND hWnd,
1674     int nIndex);
1675
1676 DWORD
1677 STDCALL
1678 SetClassLongW(
1679     HWND hWnd,
1680     int nIndex,
1681     LONG dwNewLong);
1682
1683 HWND
1684 STDCALL
1685 FindWindowW(
1686     LPCWSTR lpClassName ,
1687     LPCWSTR lpWindowName);
1688
1689 HWND
1690 STDCALL
1691 FindWindowExW(HWND, HWND, LPCWSTR, LPCWSTR);
1692
1693 int
1694 STDCALL
1695 GetClassNameW(
1696     HWND hWnd,
1697     LPWSTR lpClassName,
1698     int nMaxCount);
1699
1700 HHOOK
1701 STDCALL
1702 SetWindowsHookExW(
1703     int idHook,
1704     HOOKPROC lpfn,
1705     HINSTANCE hmod,
1706     DWORD dwThreadId);
1707
1708 HBITMAP
1709 STDCALL
1710 LoadBitmapW(
1711     HINSTANCE hInstance,
1712     LPCWSTR lpBitmapName);
1713
1714 HCURSOR
1715 STDCALL
1716 LoadCursorW(
1717     HINSTANCE hInstance,
1718     LPCWSTR lpCursorName);
1719
1720 HCURSOR
1721 STDCALL
1722 LoadCursorFromFileW(
1723     LPCWSTR    lpFileName);
1724
1725 HICON
1726 STDCALL
1727 LoadIconW(
1728     HINSTANCE hInstance,
1729     LPCWSTR lpIconName);
1730
1731 HANDLE
1732 STDCALL
1733 LoadImageW(
1734     HINSTANCE,
1735     LPCWSTR,
1736     UINT,
1737     int,
1738     int,
1739     UINT);
1740
1741 int
1742 STDCALL
1743 LoadStringW(
1744     HINSTANCE hInstance,
1745     UINT uID,
1746     LPWSTR lpBuffer,
1747     int nBufferMax);
1748
1749 WINBOOL
1750 STDCALL
1751 IsDialogMessageW(
1752     HWND hDlg,
1753     LPMSG lpMsg);
1754
1755 int
1756 STDCALL
1757 DlgDirListW(
1758     HWND hDlg,
1759     LPWSTR lpPathSpec,
1760     int nIDListBox,
1761     int nIDStaticPath,
1762     UINT uFileType);
1763
1764 WINBOOL
1765 STDCALL
1766 DlgDirSelectExW(
1767     HWND hDlg,
1768     LPWSTR lpString,
1769     int nCount,
1770     int nIDListBox);
1771
1772 int
1773 STDCALL
1774 DlgDirListComboBoxW(
1775     HWND hDlg,
1776     LPWSTR lpPathSpec,
1777     int nIDComboBox,
1778     int nIDStaticPath,
1779     UINT uFiletype);
1780
1781 WINBOOL
1782 STDCALL
1783 DlgDirSelectComboBoxExW(
1784     HWND hDlg,
1785     LPWSTR lpString,
1786     int nCount,
1787     int nIDComboBox);
1788
1789 LRESULT
1790 STDCALL
1791 DefFrameProcW(
1792     HWND hWnd,
1793     HWND hWndMDIClient ,
1794     UINT uMsg,
1795     WPARAM wParam,
1796     LPARAM lParam);
1797
1798 LRESULT
1799 STDCALL
1800 DefMDIChildProcW(
1801     HWND hWnd,
1802     UINT uMsg,
1803     WPARAM wParam,
1804     LPARAM lParam);
1805
1806 HWND
1807 STDCALL
1808 CreateMDIWindowW(
1809     LPCWSTR lpClassName,
1810     LPCWSTR lpWindowName,
1811     DWORD dwStyle,
1812     int X,
1813     int Y,
1814     int nWidth,
1815     int nHeight,
1816     HWND hWndParent,
1817     HINSTANCE hInstance,
1818     LPARAM lParam
1819     );
1820
1821 WINBOOL
1822 STDCALL
1823 WinHelpW(
1824     HWND hWndMain,
1825     LPCWSTR lpszHelp,
1826     UINT uCommand,
1827     DWORD dwData
1828     );
1829
1830 LONG
1831 STDCALL
1832 ChangeDisplaySettingsW(
1833     LPDEVMODEW lpDevMode,
1834     DWORD dwFlags);
1835
1836 WINBOOL
1837 STDCALL
1838 EnumDisplaySettingsW(
1839     LPCWSTR lpszDeviceName,
1840     DWORD iModeNum,
1841     LPDEVMODEW lpDevMode);
1842
1843 WINBOOL
1844 STDCALL
1845 SystemParametersInfoW(
1846     UINT uiAction,
1847     UINT uiParam,
1848     PVOID pvParam,
1849     UINT fWinIni);
1850
1851 int
1852 STDCALL
1853 AddFontResourceW(LPCWSTR);
1854
1855 HMETAFILE
1856 STDCALL
1857 CopyMetaFileW(HMETAFILE, LPCWSTR);
1858
1859 HFONT
1860 STDCALL
1861 CreateFontIndirectW(CONST LOGFONTW *);
1862
1863 HFONT
1864 STDCALL
1865 CreateFontW(int, int, int, int, int, DWORD,
1866                              DWORD, DWORD, DWORD, DWORD, DWORD,
1867                              DWORD, DWORD, LPCWSTR);
1868
1869 HDC
1870 STDCALL
1871 CreateICW(LPCWSTR, LPCWSTR , LPCWSTR , CONST DEVMODEW *);
1872
1873 HDC
1874 STDCALL
1875 CreateMetaFileW(LPCWSTR);
1876
1877 WINBOOL
1878 STDCALL
1879 CreateScalableFontResourceW(DWORD, LPCWSTR, LPCWSTR, LPCWSTR);
1880
1881 int
1882 STDCALL
1883 DeviceCapabilitiesW(LPCWSTR, LPCWSTR, WORD,
1884                                 LPWSTR, CONST DEVMODEW *);
1885
1886 int
1887 STDCALL
1888 EnumFontFamiliesExW(HDC, LPLOGFONTW, FONTENUMEXPROC, LPARAM, DWORD);
1889
1890 int
1891 STDCALL
1892 EnumFontFamiliesW(HDC, LPCWSTR, FONTENUMPROC, LPARAM);
1893
1894 int
1895 STDCALL
1896 EnumFontsW(HDC, LPCWSTR,  ENUMFONTSPROC, LPARAM);
1897
1898 WINBOOL
1899 STDCALL
1900 GetCharWidthW(HDC, UINT, UINT, LPINT);
1901
1902 WINBOOL
1903 STDCALL 
1904 GetCharWidth32W(HDC, UINT, UINT, LPINT);
1905
1906 WINBOOL
1907 STDCALL
1908 GetCharWidthFloatW(HDC, UINT, UINT, PFLOAT);
1909
1910 WINBOOL
1911 STDCALL
1912 GetCharABCWidthsW(HDC, UINT, UINT, LPABC);
1913
1914 WINBOOL
1915 STDCALL
1916 GetCharABCWidthsFloatW(HDC, UINT, UINT, LPABCFLOAT);
1917
1918 DWORD
1919 STDCALL
1920 GetGlyphOutlineW(HDC, UINT, UINT, LPGLYPHMETRICS, DWORD, LPVOID, CONST MAT2 *);
1921
1922 HMETAFILE
1923 STDCALL
1924 GetMetaFileW(LPCWSTR);
1925
1926 UINT
1927 STDCALL
1928 GetOutlineTextMetricsW(HDC, UINT, LPOUTLINETEXTMETRICW);
1929
1930 WINBOOL
1931 STDCALL GetTextExtentPointW(
1932                     HDC,
1933                     LPCWSTR,
1934                     int,
1935                     LPSIZE
1936                     );
1937
1938 WINBOOL
1939 STDCALL
1940 GetTextExtentPoint32W(
1941                     HDC,
1942                     LPCWSTR,
1943                     int,
1944                     LPSIZE
1945                     );
1946
1947 WINBOOL
1948 STDCALL
1949 GetTextExtentExPointW(
1950                     HDC,
1951                     LPCWSTR,
1952                     int,
1953                     int,
1954                     LPINT,
1955                     LPINT,
1956                     LPSIZE
1957                     );
1958
1959 DWORD
1960 STDCALL
1961 GetCharacterPlacementW(HDC, LPCWSTR, int, int, LPGCP_RESULTS, DWORD);
1962
1963 HDC
1964 STDCALL
1965 ResetDCW(HDC, CONST DEVMODEW *);
1966
1967 WINBOOL
1968 STDCALL
1969 RemoveFontResourceW(LPCWSTR);
1970
1971 HENHMETAFILE
1972 STDCALL
1973 CopyEnhMetaFileW(HENHMETAFILE, LPCWSTR);
1974
1975 HDC
1976 STDCALL
1977 CreateEnhMetaFileW(HDC, LPCWSTR, CONST RECT *, LPCWSTR);
1978
1979 HENHMETAFILE
1980 STDCALL
1981 GetEnhMetaFileW(LPCWSTR);
1982
1983 UINT
1984 STDCALL
1985 GetEnhMetaFileDescriptionW(HENHMETAFILE, UINT, LPWSTR );
1986
1987 WINBOOL
1988 STDCALL
1989 GetTextMetricsW(HDC, LPTEXTMETRICW);
1990
1991 int
1992 STDCALL
1993 StartDocW(HDC, CONST DOCINFO *);
1994
1995 int
1996 STDCALL
1997 GetObjectW(HGDIOBJ, int, LPVOID);
1998
1999 WINBOOL
2000 STDCALL
2001 TextOutW(HDC, int, int, LPCWSTR, int);
2002
2003 WINBOOL
2004 STDCALL
2005 ExtTextOutW(HDC, int, int, UINT, CONST RECT *,LPCWSTR, UINT, CONST INT *);
2006
2007 WINBOOL
2008 STDCALL
2009 PolyTextOutW(HDC, CONST POLYTEXT *, int);
2010
2011 int
2012 STDCALL
2013 GetTextFaceW(HDC, int, LPWSTR);
2014
2015 DWORD
2016 STDCALL
2017 GetKerningPairsW(HDC, DWORD, LPKERNINGPAIR);
2018
2019 WINBOOL
2020 STDCALL
2021 GetLogColorSpaceW(HCOLORSPACE,LPLOGCOLORSPACE,DWORD);
2022
2023 HCOLORSPACE
2024 STDCALL
2025 CreateColorSpaceW(LPLOGCOLORSPACE);
2026
2027 WINBOOL
2028 STDCALL
2029 GetICMProfileW(HDC,DWORD,LPWSTR);
2030
2031 WINBOOL
2032 STDCALL
2033 SetICMProfileW(HDC,LPWSTR);
2034
2035 WINBOOL
2036 STDCALL
2037 UpdateICMRegKeyW(DWORD, DWORD, LPWSTR, UINT);
2038
2039 int
2040 STDCALL
2041 EnumICMProfilesW(HDC,ICMENUMPROC,LPARAM);
2042
2043 HPROPSHEETPAGE
2044 STDCALL
2045 CreatePropertySheetPageW(LPCPROPSHEETPAGE lppsp);
2046
2047 int
2048 STDCALL
2049 PropertySheetW(LPCPROPSHEETHEADER lppsph);
2050
2051 HIMAGELIST
2052 STDCALL
2053 ImageList_LoadImageW(HINSTANCE hi, 
2054 LPCWSTR lpbmp, 
2055 int cx, 
2056 int cGrow, 
2057 COLORREF crMask, 
2058 UINT uType, 
2059 UINT uFlags);
2060
2061 HWND
2062 STDCALL
2063 CreateStatusWindowW(LONG style, LPCWSTR lpszText, HWND hwndParent, UINT wID);
2064
2065 void
2066 STDCALL
2067 DrawStatusTextW(HDC hDC, LPRECT lprc, LPCWSTR pszText, UINT uFlags);
2068
2069 WINBOOL
2070 STDCALL
2071 GetOpenFileNameW(LPOPENFILENAME);
2072
2073 WINBOOL
2074 STDCALL
2075 GetSaveFileNameW(LPOPENFILENAME);
2076
2077 short
2078 STDCALL
2079 GetFileTitleW(LPCWSTR, LPWSTR, WORD);
2080
2081 WINBOOL
2082 STDCALL
2083 ChooseColorW(LPCHOOSECOLOR);
2084
2085 HWND
2086 STDCALL
2087 ReplaceTextW(LPFINDREPLACE);
2088
2089 WINBOOL
2090 STDCALL
2091 ChooseFontW(LPCHOOSEFONT);
2092
2093 HWND
2094 STDCALL
2095 FindTextW(LPFINDREPLACE);
2096
2097 WINBOOL
2098 STDCALL
2099 PrintDlgW(LPPRINTDLG);
2100
2101 WINBOOL
2102 STDCALL
2103 PageSetupDlgW(LPPAGESETUPDLG);
2104
2105 WINBOOL
2106 STDCALL
2107 CreateProcessW(
2108     LPCWSTR lpApplicationName,
2109     LPWSTR lpCommandLine,
2110     LPSECURITY_ATTRIBUTES lpProcessAttributes,
2111     LPSECURITY_ATTRIBUTES lpThreadAttributes,
2112     WINBOOL bInheritHandles,
2113     DWORD dwCreationFlags,
2114     LPVOID lpEnvironment,
2115     LPCWSTR lpCurrentDirectory,
2116     LPSTARTUPINFOW lpStartupInfo,
2117     LPPROCESS_INFORMATION lpProcessInformation
2118     );
2119
2120 VOID
2121 STDCALL
2122 GetStartupInfoW(
2123     LPSTARTUPINFOW lpStartupInfo
2124     );
2125
2126 WINBASEAPI
2127 HANDLE
2128 WINAPI
2129 FindFirstFileExW (
2130         LPCWSTR                 lpFileName,
2131         FINDEX_INFO_LEVELS      fInfoLevelId,
2132         LPVOID                  lpFindFileData,
2133         FINDEX_SEARCH_OPS       fSearchOp,
2134         LPVOID                  lpSearchFilter,
2135         DWORD                   dwAdditionalFlags
2136         );
2137
2138 HANDLE
2139 STDCALL
2140 FindFirstFileW(
2141     LPCWSTR lpFileName,
2142     LPWIN32_FIND_DATAW lpFindFileData
2143     );
2144
2145 WINBOOL
2146 STDCALL
2147 FindNextFileW(
2148     HANDLE hFindFile,
2149     LPWIN32_FIND_DATAW lpFindFileData
2150     );
2151
2152 WINBOOL
2153 STDCALL
2154 GetVersionExW(
2155     LPOSVERSIONINFOW lpVersionInformation
2156     );
2157
2158 #define CreateWindowW(lpClassName, lpWindowName, dwStyle, x, y,\
2159 nWidth, nHeight, hWndParent, hMenu, hInstance, lpParam)\
2160 CreateWindowExW(0L, lpClassName, lpWindowName, dwStyle, x, y,\
2161 nWidth, nHeight, hWndParent, hMenu, hInstance, lpParam)
2162
2163 #define CreateDialogW(hInstance, lpName, hWndParent, lpDialogFunc) \
2164 CreateDialogParamW(hInstance, lpName, hWndParent, lpDialogFunc, 0L)
2165
2166 #define CreateDialogIndirectW(hInstance, lpTemplate, hWndParent, lpDialogFunc) \
2167 CreateDialogIndirectParamW(hInstance, lpTemplate, hWndParent, lpDialogFunc, 0L)
2168
2169 #define DialogBoxW(hInstance, lpTemplate, hWndParent, lpDialogFunc) \
2170 DialogBoxParamW(hInstance, lpTemplate, hWndParent, lpDialogFunc, 0L)
2171
2172 #define DialogBoxIndirectW(hInstance, lpTemplate, hWndParent, lpDialogFunc) \
2173 DialogBoxIndirectParamW(hInstance, lpTemplate, hWndParent, lpDialogFunc, 0L)
2174
2175 HDC
2176 STDCALL
2177 CreateDCW(LPCWSTR, LPCWSTR , LPCWSTR , CONST DEVMODEW *);
2178
2179 HFONT
2180 STDCALL
2181 CreateFontA(int, int, int, int, int, DWORD,
2182                              DWORD, DWORD, DWORD, DWORD, DWORD,
2183                              DWORD, DWORD, LPCSTR);
2184
2185 DWORD
2186 STDCALL
2187 VerInstallFileW(
2188         DWORD uFlags,
2189         LPWSTR szSrcFileName,
2190         LPWSTR szDestFileName,
2191         LPWSTR szSrcDir,
2192         LPWSTR szDestDir,
2193         LPWSTR szCurDir,
2194         LPWSTR szTmpFile,
2195         PUINT lpuTmpFileLen
2196         );
2197
2198 DWORD
2199 STDCALL
2200 GetFileVersionInfoSizeW(
2201         LPWSTR lptstrFilename,
2202         LPDWORD lpdwHandle
2203         );
2204
2205 WINBOOL
2206 STDCALL
2207 GetFileVersionInfoW(
2208         LPWSTR lptstrFilename,
2209         DWORD dwHandle,
2210         DWORD dwLen,
2211         LPVOID lpData
2212         );
2213
2214 DWORD
2215 STDCALL
2216 VerLanguageNameW(
2217         DWORD wLang,
2218         LPWSTR szLang,
2219         DWORD nSize
2220         );
2221
2222 WINBOOL
2223 STDCALL
2224 VerQueryValueW(
2225         const LPVOID pBlock,
2226         LPWSTR lpSubBlock,
2227         LPVOID * lplpBuffer,
2228         PUINT puLen
2229         );
2230
2231 DWORD
2232 STDCALL
2233 VerFindFileW(
2234         DWORD uFlags,
2235         LPWSTR szFileName,
2236         LPWSTR szWinDir,
2237         LPWSTR szAppDir,
2238         LPWSTR szCurDir,
2239         PUINT lpuCurDirLen,
2240         LPWSTR szDestDir,
2241         PUINT lpuDestDirLen
2242         );
2243
2244 LONG
2245 STDCALL
2246 RegSetValueExW (
2247     HKEY hKey,
2248     LPCWSTR lpValueName,
2249     DWORD Reserved,
2250     DWORD dwType,
2251     CONST BYTE* lpData,
2252     DWORD cbData
2253     );
2254
2255 LONG
2256 STDCALL
2257 RegUnLoadKeyW (
2258     HKEY    hKey,
2259     LPCWSTR lpSubKey
2260     );
2261
2262 WINBOOL
2263 STDCALL
2264 InitiateSystemShutdownW(
2265     LPWSTR lpMachineName,
2266     LPWSTR lpMessage,
2267     DWORD dwTimeout,
2268     WINBOOL bForceAppsClosed,
2269     WINBOOL bRebootAfterShutdown
2270     );
2271
2272 WINBOOL
2273 STDCALL
2274 AbortSystemShutdownW(
2275     LPCWSTR lpMachineName
2276     );
2277
2278 LONG
2279 STDCALL
2280 RegRestoreKeyW (
2281     HKEY hKey,
2282     LPCWSTR lpFile,
2283     DWORD   dwFlags
2284     );
2285
2286 LONG
2287 STDCALL
2288 RegSaveKeyW (
2289     HKEY hKey,
2290     LPCWSTR lpFile,
2291     LPSECURITY_ATTRIBUTES lpSecurityAttributes
2292     );
2293
2294 LONG
2295 STDCALL
2296 RegSetValueW (
2297     HKEY hKey,
2298     LPCWSTR lpSubKey,
2299     DWORD dwType,
2300     LPCWSTR lpData,
2301     DWORD cbData
2302     );
2303
2304 LONG
2305 STDCALL
2306 RegQueryValueW (
2307     HKEY hKey,
2308     LPCWSTR lpSubKey,
2309     LPWSTR lpValue,
2310     PLONG   lpcbValue
2311     );
2312
2313 LONG
2314 STDCALL
2315 RegQueryMultipleValuesW (
2316     HKEY hKey,
2317     PVALENTW val_list,
2318     DWORD num_vals,
2319     LPWSTR lpValueBuf,
2320     LPDWORD ldwTotsize
2321     );
2322
2323 LONG
2324 STDCALL
2325 RegQueryValueExW (
2326     HKEY hKey,
2327     LPCWSTR lpValueName,
2328     LPDWORD lpReserved,
2329     LPDWORD lpType,
2330     LPBYTE lpData,
2331     LPDWORD lpcbData
2332     );
2333
2334 LONG
2335 STDCALL
2336 RegReplaceKeyW (
2337     HKEY     hKey,
2338     LPCWSTR  lpSubKey,
2339     LPCWSTR  lpNewFile,
2340     LPCWSTR  lpOldFile
2341     );
2342
2343 LONG
2344 STDCALL
2345 RegConnectRegistryW (
2346     LPCWSTR lpMachineName,
2347     HKEY hKey,
2348     PHKEY phkResult
2349     );
2350
2351 LONG
2352 STDCALL
2353 RegCreateKeyW (
2354     HKEY hKey,
2355     LPCWSTR lpSubKey,
2356     PHKEY phkResult
2357     );
2358
2359 LONG
2360 STDCALL
2361 RegCreateKeyExW (
2362     HKEY hKey,
2363     LPCWSTR lpSubKey,
2364     DWORD Reserved,
2365     LPWSTR lpClass,
2366     DWORD dwOptions,
2367     REGSAM samDesired,
2368     LPSECURITY_ATTRIBUTES lpSecurityAttributes,
2369     PHKEY phkResult,
2370     LPDWORD lpdwDisposition
2371     );
2372
2373 LONG
2374 STDCALL
2375 RegDeleteKeyW (
2376     HKEY hKey,
2377     LPCWSTR lpSubKey
2378     );
2379
2380 LONG
2381 STDCALL
2382 RegDeleteValueW (
2383     HKEY hKey,
2384     LPCWSTR lpValueName
2385     );
2386
2387 LONG
2388 STDCALL
2389 RegEnumKeyW (
2390     HKEY hKey,
2391     DWORD dwIndex,
2392     LPWSTR lpName,
2393     DWORD cbName
2394     );
2395
2396 LONG
2397 STDCALL
2398 RegEnumKeyExW (
2399     HKEY hKey,
2400     DWORD dwIndex,
2401     LPWSTR lpName,
2402     LPDWORD lpcbName,
2403     LPDWORD lpReserved,
2404     LPWSTR lpClass,
2405     LPDWORD lpcbClass,
2406     PFILETIME lpftLastWriteTime
2407     );
2408
2409 LONG
2410 STDCALL
2411 RegEnumValueW (
2412     HKEY hKey,
2413     DWORD dwIndex,
2414     LPWSTR lpValueName,
2415     LPDWORD lpcbValueName,
2416     LPDWORD lpReserved,
2417     LPDWORD lpType,
2418     LPBYTE lpData,
2419     LPDWORD lpcbData
2420     );
2421
2422 LONG
2423 STDCALL
2424 RegLoadKeyW (
2425     HKEY    hKey,
2426     LPCWSTR  lpSubKey,
2427     LPCWSTR  lpFile
2428     );
2429
2430 LONG
2431 STDCALL
2432 RegOpenKeyW (
2433     HKEY hKey,
2434     LPCWSTR lpSubKey,
2435     PHKEY phkResult
2436     );
2437
2438 LONG
2439 STDCALL
2440 RegOpenKeyExW (
2441     HKEY hKey,
2442     LPCWSTR lpSubKey,
2443     DWORD ulOptions,
2444     REGSAM samDesired,
2445     PHKEY phkResult
2446     );
2447
2448 LONG
2449 STDCALL
2450 RegQueryInfoKeyW (
2451     HKEY hKey,
2452     LPWSTR lpClass,
2453     LPDWORD lpcbClass,
2454     LPDWORD lpReserved,
2455     LPDWORD lpcSubKeys,
2456     LPDWORD lpcbMaxSubKeyLen,
2457     LPDWORD lpcbMaxClassLen,
2458     LPDWORD lpcValues,
2459     LPDWORD lpcbMaxValueNameLen,
2460     LPDWORD lpcbMaxValueLen,
2461     LPDWORD lpcbSecurityDescriptor,
2462     PFILETIME lpftLastWriteTime
2463     );
2464
2465 int
2466 STDCALL
2467 CompareStringW(
2468     LCID     Locale,
2469     DWORD    dwCmpFlags,
2470     LPCWSTR lpString1,
2471     int      cchCount1,
2472     LPCWSTR lpString2,
2473     int      cchCount2);
2474
2475 int
2476 STDCALL
2477 LCMapStringW(
2478     LCID     Locale,
2479     DWORD    dwMapFlags,
2480     LPCWSTR lpSrcStr,
2481     int      cchSrc,
2482     LPWSTR  lpDestStr,
2483     int      cchDest);
2484
2485
2486 int
2487 STDCALL
2488 GetLocaleInfoW(
2489     LCID     Locale,
2490     LCTYPE   LCType,
2491     LPWSTR  lpLCData,
2492     int      cchData);
2493
2494 WINBOOL
2495 STDCALL
2496 SetLocaleInfoW(
2497     LCID     Locale,
2498     LCTYPE   LCType,
2499     LPCWSTR lpLCData);
2500
2501 int
2502 STDCALL
2503 GetTimeFormatW(
2504     LCID     Locale,
2505     DWORD    dwFlags,
2506     CONST SYSTEMTIME *lpTime,
2507     LPCWSTR lpFormat,
2508     LPWSTR  lpTimeStr,
2509     int      cchTime);
2510
2511 int
2512 STDCALL
2513 GetDateFormatW(
2514     LCID     Locale,
2515     DWORD    dwFlags,
2516     CONST SYSTEMTIME *lpDate,
2517     LPCWSTR lpFormat,
2518     LPWSTR  lpDateStr,
2519     int      cchDate);
2520
2521 int
2522 STDCALL
2523 GetNumberFormatW(
2524     LCID     Locale,
2525     DWORD    dwFlags,
2526     LPCWSTR lpValue,
2527     CONST NUMBERFMT *lpFormat,
2528     LPWSTR  lpNumberStr,
2529     int      cchNumber);
2530
2531 int
2532 STDCALL
2533 GetCurrencyFormatW(
2534     LCID     Locale,
2535     DWORD    dwFlags,
2536     LPCWSTR lpValue,
2537     CONST CURRENCYFMT *lpFormat,
2538     LPWSTR  lpCurrencyStr,
2539     int      cchCurrency);
2540
2541 WINBOOL
2542 STDCALL
2543 EnumCalendarInfoW(
2544     CALINFO_ENUMPROC lpCalInfoEnumProc,
2545     LCID              Locale,
2546     CALID             Calendar,
2547     CALTYPE           CalType);
2548
2549 WINBOOL
2550 STDCALL
2551 EnumTimeFormatsW(
2552     TIMEFMT_ENUMPROC lpTimeFmtEnumProc,
2553     LCID              Locale,
2554     DWORD             dwFlags);
2555
2556 WINBOOL
2557 STDCALL
2558 EnumDateFormatsW(
2559     DATEFMT_ENUMPROC lpDateFmtEnumProc,
2560     LCID              Locale,
2561     DWORD             dwFlags);
2562
2563 WINBOOL
2564 STDCALL
2565 GetStringTypeExW(
2566     LCID     Locale,
2567     DWORD    dwInfoType,
2568     LPCWSTR lpSrcStr,
2569     int      cchSrc,
2570     LPWORD   lpCharType);
2571
2572 WINBOOL
2573 STDCALL
2574 GetStringTypeW(
2575     DWORD    dwInfoType,
2576     LPCWSTR  lpSrcStr,
2577     int      cchSrc,
2578     LPWORD   lpCharType);
2579
2580 int
2581 STDCALL
2582 FoldStringW(
2583     DWORD    dwMapFlags,
2584     LPCWSTR lpSrcStr,
2585     int      cchSrc,
2586     LPWSTR  lpDestStr,
2587     int      cchDest);
2588
2589 WINBOOL
2590 STDCALL
2591 EnumSystemLocalesW(
2592     LOCALE_ENUMPROC lpLocaleEnumProc,
2593     DWORD            dwFlags);
2594
2595 WINBOOL
2596 STDCALL
2597 EnumSystemCodePagesW(
2598     CODEPAGE_ENUMPROC lpCodePageEnumProc,
2599     DWORD              dwFlags);
2600
2601 WINBOOL
2602 STDCALL
2603 PeekConsoleInputW(
2604     HANDLE hConsoleInput,
2605     PINPUT_RECORD lpBuffer,
2606     DWORD nLength,
2607     LPDWORD lpNumberOfEventsRead
2608     );
2609
2610 WINBOOL
2611 STDCALL
2612 ReadConsoleInputW(
2613     HANDLE hConsoleInput,
2614     PINPUT_RECORD lpBuffer,
2615     DWORD nLength,
2616     LPDWORD lpNumberOfEventsRead
2617     );
2618
2619 WINBOOL
2620 STDCALL
2621 WriteConsoleInputW(
2622     HANDLE hConsoleInput,
2623     CONST INPUT_RECORD *lpBuffer,
2624     DWORD nLength,
2625     LPDWORD lpNumberOfEventsWritten
2626     );
2627
2628 WINBOOL
2629 STDCALL
2630 ReadConsoleOutputW(
2631     HANDLE hConsoleOutput,
2632     PCHAR_INFO lpBuffer,
2633     COORD dwBufferSize,
2634     COORD dwBufferCoord,
2635     PSMALL_RECT lpReadRegion
2636     );
2637
2638 WINBOOL
2639 STDCALL
2640 WriteConsoleOutputW(
2641     HANDLE hConsoleOutput,
2642     CONST CHAR_INFO *lpBuffer,
2643     COORD dwBufferSize,
2644     COORD dwBufferCoord,
2645     PSMALL_RECT lpWriteRegion
2646     );
2647
2648 WINBOOL
2649 STDCALL
2650 ReadConsoleOutputCharacterW(
2651     HANDLE hConsoleOutput,
2652     LPWSTR lpCharacter,
2653     DWORD nLength,
2654     COORD dwReadCoord,
2655     LPDWORD lpNumberOfCharsRead
2656     );
2657
2658 WINBOOL
2659 STDCALL
2660 WriteConsoleOutputCharacterW(
2661     HANDLE hConsoleOutput,
2662     LPCWSTR lpCharacter,
2663     DWORD nLength,
2664     COORD dwWriteCoord,
2665     LPDWORD lpNumberOfCharsWritten
2666     );
2667
2668 WINBOOL
2669 STDCALL
2670 FillConsoleOutputCharacterW(
2671     HANDLE hConsoleOutput,
2672     WCHAR  cCharacter,
2673     DWORD  nLength,
2674     COORD  dwWriteCoord,
2675     LPDWORD lpNumberOfCharsWritten
2676     );
2677
2678 WINBOOL
2679 STDCALL
2680 ScrollConsoleScreenBufferW(
2681     HANDLE hConsoleOutput,
2682     CONST SMALL_RECT *lpScrollRectangle,
2683     CONST SMALL_RECT *lpClipRectangle,
2684     COORD dwDestinationOrigin,
2685     CONST CHAR_INFO *lpFill
2686     );
2687
2688 DWORD
2689 STDCALL
2690 GetConsoleTitleW(
2691     LPWSTR lpConsoleTitle,
2692     DWORD nSize
2693     );
2694
2695 WINBOOL
2696 STDCALL
2697 SetConsoleTitleW(
2698     LPCWSTR lpConsoleTitle
2699     );
2700
2701 WINBOOL
2702 STDCALL
2703 ReadConsoleW(
2704     HANDLE hConsoleInput,
2705     LPVOID lpBuffer,
2706     DWORD nNumberOfCharsToRead,
2707     LPDWORD lpNumberOfCharsRead,
2708     LPVOID lpReserved
2709     );
2710
2711 WINBOOL
2712 STDCALL
2713 WriteConsoleW(
2714     HANDLE hConsoleOutput,
2715     CONST VOID *lpBuffer,
2716     DWORD nNumberOfCharsToWrite,
2717     LPDWORD lpNumberOfCharsWritten,
2718     LPVOID lpReserved
2719     );
2720
2721 DWORD STDCALL
2722 WNetAddConnectionW(
2723      LPCWSTR   lpRemoteName,
2724      LPCWSTR   lpPassword,
2725      LPCWSTR   lpLocalName
2726     );
2727
2728 DWORD STDCALL
2729 WNetAddConnection2W(
2730      LPNETRESOURCE lpNetResource,
2731      LPCWSTR       lpPassword,
2732      LPCWSTR       lpUserName,
2733      DWORD          dwFlags
2734     );
2735
2736 DWORD STDCALL
2737 WNetAddConnection3W(
2738      HWND           hwndOwner,
2739      LPNETRESOURCE lpNetResource,
2740      LPCWSTR       lpPassword,
2741      LPCWSTR       lpUserName,
2742      DWORD          dwFlags
2743     );
2744
2745 DWORD STDCALL
2746 WNetCancelConnectionW(
2747      LPCWSTR lpName,
2748      WINBOOL     fForce
2749     );
2750
2751 DWORD STDCALL
2752 WNetCancelConnection2W(
2753      LPCWSTR lpName,
2754      DWORD    dwFlags,
2755      WINBOOL     fForce
2756     );
2757
2758 DWORD STDCALL
2759 WNetGetConnectionW(
2760      LPCWSTR lpLocalName,
2761      LPWSTR  lpRemoteName,
2762      LPDWORD  lpnLength
2763     );
2764
2765 DWORD STDCALL
2766 WNetUseConnectionW(
2767     HWND            hwndOwner,
2768     LPNETRESOURCE  lpNetResource,
2769     LPCWSTR        lpUserID,
2770     LPCWSTR        lpPassword,
2771     DWORD           dwFlags,
2772     LPWSTR         lpAccessName,
2773     LPDWORD         lpBufferSize,
2774     LPDWORD         lpResult
2775     );
2776
2777 DWORD STDCALL
2778 WNetSetConnectionW(
2779     LPCWSTR    lpName,
2780     DWORD       dwProperties,
2781     LPVOID      pvValues
2782     );
2783
2784 DWORD STDCALL
2785 WNetConnectionDialog1W(
2786     LPCONNECTDLGSTRUCT lpConnDlgStruct
2787     );
2788
2789 DWORD STDCALL
2790 WNetDisconnectDialog1W(
2791     LPDISCDLGSTRUCT lpConnDlgStruct
2792     );
2793
2794 DWORD STDCALL
2795 WNetOpenEnumW(
2796      DWORD          dwScope,
2797      DWORD          dwType,
2798      DWORD          dwUsage,
2799      LPNETRESOURCE lpNetResource,
2800      LPHANDLE       lphEnum
2801     );
2802
2803 DWORD STDCALL
2804 WNetEnumResourceW(
2805      HANDLE  hEnum,
2806      LPDWORD lpcCount,
2807      LPVOID  lpBuffer,
2808      LPDWORD lpBufferSize
2809     );
2810
2811 DWORD STDCALL
2812 WNetGetUniversalNameW(
2813      LPCWSTR lpLocalPath,
2814      DWORD    dwInfoLevel,
2815      LPVOID   lpBuffer,
2816      LPDWORD  lpBufferSize
2817      );
2818
2819 DWORD STDCALL
2820 WNetGetUserW(
2821      LPCWSTR  lpName,
2822      LPWSTR   lpUserName,
2823      LPDWORD   lpnLength
2824     );
2825
2826 DWORD STDCALL
2827 WNetGetProviderNameW(
2828     DWORD   dwNetType,
2829     LPWSTR lpProviderName,
2830     LPDWORD lpBufferSize
2831     );
2832
2833 DWORD STDCALL
2834 WNetGetNetworkInformationW(
2835     LPCWSTR          lpProvider,
2836     LPNETINFOSTRUCT   lpNetInfoStruct
2837     );
2838
2839 DWORD STDCALL
2840 WNetGetLastErrorW(
2841      LPDWORD    lpError,
2842      LPWSTR    lpErrorBuf,
2843      DWORD      nErrorBufSize,
2844      LPWSTR    lpNameBuf,
2845      DWORD      nNameBufSize
2846     );
2847
2848 DWORD STDCALL
2849 MultinetGetConnectionPerformanceW(
2850         LPNETRESOURCE lpNetResource,
2851         LPNETCONNECTINFOSTRUCT lpNetConnectInfoStruct
2852         );
2853
2854 WINBOOL
2855 STDCALL
2856 ChangeServiceConfigW(
2857     SC_HANDLE    hService,
2858     DWORD        dwServiceType,
2859     DWORD        dwStartType,
2860     DWORD        dwErrorControl,
2861     LPCWSTR     lpBinaryPathName,
2862     LPCWSTR     lpLoadOrderGroup,
2863     LPDWORD      lpdwTagId,
2864     LPCWSTR     lpDependencies,
2865     LPCWSTR     lpServiceStartName,
2866     LPCWSTR     lpPassword,
2867     LPCWSTR     lpDisplayName
2868     );
2869
2870 SC_HANDLE
2871 STDCALL
2872 CreateServiceW(
2873     SC_HANDLE    hSCManager,
2874     LPCWSTR     lpServiceName,
2875     LPCWSTR     lpDisplayName,
2876     DWORD        dwDesiredAccess,
2877     DWORD        dwServiceType,
2878     DWORD        dwStartType,
2879     DWORD        dwErrorControl,
2880     LPCWSTR     lpBinaryPathName,
2881     LPCWSTR     lpLoadOrderGroup,
2882     LPDWORD      lpdwTagId,
2883     LPCWSTR     lpDependencies,
2884     LPCWSTR     lpServiceStartName,
2885     LPCWSTR     lpPassword
2886     );
2887
2888 WINBOOL
2889 STDCALL
2890 EnumDependentServicesW(
2891     SC_HANDLE               hService,
2892     DWORD                   dwServiceState,
2893     LPENUM_SERVICE_STATUSW  lpServices,
2894     DWORD                   cbBufSize,
2895     LPDWORD                 pcbBytesNeeded,
2896     LPDWORD                 lpServicesReturned
2897     );
2898
2899 WINBOOL
2900 STDCALL
2901 EnumServicesStatusW(
2902     SC_HANDLE               hSCManager,
2903     DWORD                   dwServiceType,
2904     DWORD                   dwServiceState,
2905     LPENUM_SERVICE_STATUSW  lpServices,
2906     DWORD                   cbBufSize,
2907     LPDWORD                 pcbBytesNeeded,
2908     LPDWORD                 lpServicesReturned,
2909     LPDWORD                 lpResumeHandle
2910     );
2911
2912 WINBOOL
2913 STDCALL
2914 GetServiceKeyNameW(
2915     SC_HANDLE               hSCManager,
2916     LPCWSTR                 lpDisplayName,
2917     LPWSTR                  lpServiceName,
2918     LPDWORD                 lpcchBuffer
2919     );
2920
2921 WINBOOL
2922 STDCALL
2923 GetServiceDisplayNameW(
2924     SC_HANDLE               hSCManager,
2925     LPCWSTR                 lpServiceName,
2926     LPWSTR                  lpDisplayName,
2927     LPDWORD                 lpcchBuffer
2928     );
2929
2930 SC_HANDLE
2931 STDCALL
2932 OpenSCManagerW(
2933     LPCWSTR lpMachineName,
2934     LPCWSTR lpDatabaseName,
2935     DWORD   dwDesiredAccess
2936     );
2937
2938 SC_HANDLE
2939 STDCALL
2940 OpenServiceW(
2941     SC_HANDLE   hSCManager,
2942     LPCWSTR     lpServiceName,
2943     DWORD       dwDesiredAccess
2944     );
2945
2946 WINBOOL
2947 STDCALL
2948 QueryServiceConfigW(
2949     SC_HANDLE               hService,
2950     LPQUERY_SERVICE_CONFIGW lpServiceConfig,
2951     DWORD                   cbBufSize,
2952     LPDWORD                 pcbBytesNeeded
2953     );
2954
2955 WINBOOL
2956 STDCALL
2957 QueryServiceLockStatusW(
2958     SC_HANDLE                       hSCManager,
2959     LPQUERY_SERVICE_LOCK_STATUSW    lpLockStatus,
2960     DWORD                           cbBufSize,
2961     LPDWORD                         pcbBytesNeeded
2962     );
2963
2964 SERVICE_STATUS_HANDLE
2965 STDCALL
2966 RegisterServiceCtrlHandlerW(
2967     LPCWSTR              lpServiceName,
2968     LPHANDLER_FUNCTION   lpHandlerProc
2969     );
2970
2971 WINBOOL
2972 STDCALL
2973 StartServiceCtrlDispatcherW(
2974     LPSERVICE_TABLE_ENTRYW   lpServiceStartTable
2975     );
2976
2977 WINBOOL
2978 STDCALL
2979 StartServiceW(
2980     SC_HANDLE            hService,
2981     DWORD                dwNumServiceArgs,
2982     LPCWSTR             *lpServiceArgVectors
2983     );
2984
2985 /* Extensions to OpenGL */
2986
2987 WINBOOL STDCALL
2988 wglUseFontBitmapsW(HDC, DWORD, DWORD, DWORD);
2989
2990 WINBOOL STDCALL
2991 wglUseFontOutlinesW(HDC, DWORD, DWORD, DWORD, FLOAT,
2992                     FLOAT, int, LPGLYPHMETRICSFLOAT);
2993
2994 /* ------------------------------------- */
2995 /* From shellapi.h in old Cygnus headers */
2996
2997 unsigned int WINAPI
2998 DragQueryFileW(HDROP, unsigned int, LPCWSTR, unsigned int);
2999
3000 HICON WINAPI
3001 ExtractAssociatedIconW (HINSTANCE, LPCWSTR, WORD *);
3002
3003 HICON WINAPI
3004 ExtractIconW (HINSTANCE, const LPCWSTR, unsigned int);
3005
3006 HINSTANCE WINAPI
3007 FindExecutableW (const LPCWSTR, const LPCWSTR, LPCWSTR);
3008
3009 int WINAPI
3010 ShellAboutW (HWND, const LPCWSTR, const LPCWSTR, HICON);
3011
3012 HINSTANCE WINAPI
3013 ShellExecuteW (HWND, const LPCWSTR, const LPCWSTR, LPCWSTR, const LPCWSTR, int);
3014
3015 /* end of stuff from shellapi.h in old Cygnus headers */
3016 /* -------------------------------------------------- */
3017 /* From ddeml.h in old Cygnus headers */
3018
3019 HSZ
3020 WINAPI
3021 DdeCreateStringHandleW(
3022   DWORD idInst,
3023   LPWSTR psz,
3024   int iCodePage);
3025
3026 UINT WINAPI
3027 DdeInitializeW (DWORD *, CALLB, DWORD, DWORD);
3028
3029 DWORD
3030 WINAPI
3031 DdeQueryStringW(
3032   DWORD idInst,
3033   HSZ hsz,
3034   LPWSTR psz,
3035   DWORD cchMax,
3036   int iCodePage);
3037
3038 /* end of stuff from ddeml.h in old Cygnus headers */
3039 /* ----------------------------------------------- */
3040
3041 WINBOOL STDCALL LogonUserW (LPWSTR, LPWSTR, LPWSTR, DWORD, DWORD, HANDLE *);
3042 WINBOOL STDCALL CreateProcessAsUserW (HANDLE, LPCWSTR, LPWSTR,
3043                         SECURITY_ATTRIBUTES*, SECURITY_ATTRIBUTES*, WINBOOL,
3044                         DWORD, LPVOID, LPCWSTR, STARTUPINFOW*,
3045                         PROCESS_INFORMATION*);
3046
3047 #ifdef __cplusplus
3048 }
3049 #endif /* __cplusplus */
3050
3051 #endif /* _GNU_H_WINDOWS32_UNICODEFUNCTIONS */