summaryrefslogtreecommitdiff
path: root/plugins/Libs/KOL_unicode.inc
diff options
context:
space:
mode:
Diffstat (limited to 'plugins/Libs/KOL_unicode.inc')
-rw-r--r--plugins/Libs/KOL_unicode.inc1277
1 files changed, 1277 insertions, 0 deletions
diff --git a/plugins/Libs/KOL_unicode.inc b/plugins/Libs/KOL_unicode.inc
new file mode 100644
index 0000000000..30ab926812
--- /dev/null
+++ b/plugins/Libs/KOL_unicode.inc
@@ -0,0 +1,1277 @@
+{*******************************************************************************
+ KOL_unicode.inc
+ Some redeclarations from Windows.pas for case, when UNICODE_CTRLS symbol is on.
+*******************************************************************************}
+{$IFDEF interface_part} ////////////////////////////////////////////////////////
+ MakeIntAtom = MakeIntAtomW;
+ {$IFDEF _D4orHigher}
+ PRecoveryAgentInformation = PRecoveryAgentInformationW;
+ TRecoveryAgentInformation = TRecoveryAgentInformationW;
+ RECOVERY_AGENT_INFORMATION = RECOVERY_AGENT_INFORMATIONW;
+ {$ENDIF}
+ PWin32FindData = PWin32FindDataW;
+ TWin32FindData = TWin32FindDataW;
+ PHWProfileInfo = PHWProfileInfoW;
+ THWProfileInfo = THWProfileInfoW;
+ POSVersionInfo = POSVersionInfoW;
+ TOSVersionInfo = TOSVersionInfoW;
+ PLogColorSpace = PLogColorSpaceW;
+ TLogColorSpace = TLogColorSpaceW;
+ {$IFDEF _D4orHigher}
+ PTextMetric = PTextMetricW;
+ tagTEXTMETRIC = tagTEXTMETRICW;
+ TTextMetric = TTextMetricW;
+ TEXTMETRIC = TEXTMETRICW;
+ PNewTextMetric = PNewTextMetricW;
+ TNewTextMetric = TNewTextMetricW;
+ NEWTEXTMETRIC = NEWTEXTMETRICW;
+ PNewTextMetricEx = PNewTextMetricExW;
+ {$ENDIF}
+ PLogFont = PLogFontW;
+ TLogFont = TLogFontW;
+ {$IFDEF _D4orHigher}
+ PEnumLogFont = PEnumLogFontW;
+ TEnumLogFont = TEnumLogFontW;
+ ENUMLOGFONT = ENUMLOGFONTW;
+ PEnumLogFontEx = PEnumLogFontExW;
+ TEnumLogFontEx = TEnumLogFontExW;
+ ENUMLOGFONTEX = ENUMLOGFONTEXW;
+ PExtLogFont = PExtLogFontW;
+ tagEXTLOGFONT = tagEXTLOGFONTW;
+ TExtLogFont = TExtLogFontW;
+ EXTLOGFONT = EXTLOGFONTW;
+ {$ENDIF}
+ PDeviceMode = PDeviceModeW;
+ TDeviceMode = TDeviceModeW;
+ {$IFDEF _D4orHigher}
+ DEVMODE = DEVMODEW;
+ PDisplayDevice = PDisplayDeviceW;
+ TDisplayDevice = TDisplayDeviceW;
+ {$ENDIF}
+ POutlineTextmetric = POutlineTextmetricW;
+ TOutlineTextmetric = TOutlineTextmetricW;
+ {$IFDEF _D4orHigher}
+ OUTLINETEXTMETRIC = OUTLINETEXTMETRICW;
+ {$ENDIF}
+ PPolyText = PPolyTextW;
+ {$IFDEF _D4orHigher}
+ tagPOLYTEXT = tagPOLYTEXTW;
+ POLYTEXT = POLYTEXTW;
+ {$ENDIF}
+ TPolyText = TPolyTextW;
+ PGCPResults = PGCPResultsW;
+ TGCPResults = TGCPResultsW;
+ {$IFDEF _D4orHigher}
+ GCP_RESULTS = GCP_RESULTSW;
+ {$ENDIF}
+ TFNOldFontEnumProc = TFNOldFontEnumProcW;
+ TFNFontEnumProc = TFNFontEnumProcW;
+ {$IFDEF _D4orHigher}
+ PAxisInfo = PAxisInfoW;
+ PAxesList = PAxesListW;
+ PEnumLogFontExDV = PEnumLogFontExDVW;
+ PEnumTextMetric = PEnumTextMetricW;
+ {$ENDIF}
+ PDocInfo = PDocInfoW;
+ TDocInfo = TDocInfoW;
+ {$IFDEF _D4orHigher}
+ DOCINFO = DOCINFOW;
+ {$ENDIF}
+ MakeIntResource = MakeIntResourceW;
+ PCreateStruct = PCreateStructW;
+ TCreateStruct = TCreateStructW;
+ {$IFDEF _D4orHigher}
+ CREATESTRUCT = CREATESTRUCTW;
+ {$ENDIF}
+ PWndClassEx = PWndClassExW;
+ TWndClassEx = TWndClassExW;
+ {$IFDEF _D4orHigher}
+ WNDCLASSEX = WNDCLASSEXW;
+ {$ENDIF}
+ PWndClass = PWndClassW;
+ TWndClass = TWndClassW;
+ {$IFDEF _D4orHigher}
+ WNDCLASS = WNDCLASSW;
+ {$ENDIF}
+ //PMenuItemInfo = PMenuItemInfoW;
+ //TMenuItemInfo = TMenuItemInfoW;
+ //MENUITEMINFO = MENUITEMINFOW;
+ PMsgBoxParams = PMsgBoxParamsW;
+ TMsgBoxParams = TMsgBoxParamsW;
+ {$IFDEF _D4orHigher}
+ MSGBOXPARAMS = MSGBOXPARAMSW;
+ {$ENDIF}
+ PMDICreateStruct = PMDICreateStructW;
+ TMDICreateStruct = TMDICreateStructW;
+ PMultiKeyHelp = PMultiKeyHelpW;
+ TMultiKeyHelp = TMultiKeyHelpW;
+ {$IFDEF _D4orHigher}
+ MULTIKEYHELP = MULTIKEYHELPW;
+ {$ENDIF}
+ PHelpWinInfo = PHelpWinInfoW;
+ THelpWinInfo = THelpWinInfoW;
+ {$IFDEF _D4orHigher}
+ HELPWININFO = HELPWININFOW;
+ {$ENDIF}
+ PNonClientMetrics = PNonClientMetricsW;
+ TNonClientMetrics = TNonClientMetricsW;
+ {$IFDEF _D4orHigher}
+ NONCLIENTMETRICS = NONCLIENTMETRICSW;
+ {$ENDIF}
+ PIconMetrics = PIconMetricsW;
+ TIconMetrics = TIconMetricsW;
+ {$IFDEF _D4orHigher}
+ ICONMETRICS = ICONMETRICSW;
+ {$ENDIF}
+ PSerialKeys = PSerialKeysW;
+ TSerialKeys = TSerialKeysW;
+ {$IFDEF _D4orHigher}
+ SERIALKEYS = SERIALKEYSW;
+ {$ENDIF}
+ PHighContrast = PHighContrastW;
+ THighContrast = THighContrastW;
+ {$IFDEF _D4orHigher}
+ HIGHCONTRAST = HIGHCONTRASTW;
+ {$ENDIF}
+ PSoundsEntry = PSoundsEntryW;
+ TSoundsEntry = TSoundsEntryW;
+ {$IFDEF _D4orHigher}
+ SOUNDSENTRY = SOUNDSENTRYW;
+ {$ENDIF}
+ PNumberFmt = PNumberFmtW;
+ TNumberFmt = TNumberFmtW;
+ {$IFDEF _D4orHigher}
+ NUMBERFMT = NUMBERFMTW;
+ {$ENDIF}
+ PCurrencyFmt = PCurrencyFmtW;
+ {$IFDEF _D4orHigher}
+ _currencyfmt = _currencyfmtW;
+ {$ENDIF}
+ TCurrencyFmt = TCurrencyFmtW;
+ {$IFDEF _D4orHigher}
+ CURRENCYFMT = CURRENCYFMTW;
+ {$ENDIF}
+ PPValue = PPValueW;
+ {$IFDEF _D4orHigher}
+ pvalue = pvalueW;
+ {$ENDIF}
+ TPValue = TPValueW;
+ PValueEnt = PValueEntW;
+ TValueEnt = TValueEntW;
+ {$IFDEF _D4orHigher}
+ VALENT = VALENTW;
+ {$ENDIF}
+ PNetResource = PNetResourceW;
+ TNetResource = TNetResourceW;
+ {$IFDEF _D4orHigher}
+ NETRESOURCE = NETRESOURCEW;
+ {$ENDIF}
+ PDiscDlgStruct = PDiscDlgStructW;
+ {$IFDEF _D4orHigher}
+ _DISCDLGSTRUCT = _DISCDLGSTRUCTW;
+ {$ENDIF}
+ TDiscDlgStruct = TDiscDlgStructW;
+ {$IFDEF _D4orHigher}
+ DISCDLGSTRUCT = DISCDLGSTRUCTW;
+ {$ENDIF}
+ PUniversalNameInfo = PUniversalNameInfoW;
+ TUniversalNameInfo = TUniversalNameInfoW;
+ {$IFDEF _D4orHigher}
+ UNIVERSAL_NAME_INFO = UNIVERSAL_NAME_INFOW;
+ {$ENDIF}
+ PRemoteNameInfo = PRemoteNameInfoW;
+ TRemoteNameInfo = TRemoteNameInfoW;
+ {$IFDEF _D4orHigher}
+ REMOTE_NAME_INFO = REMOTE_NAME_INFOW;
+ {$ENDIF}
+
+function AbortSystemShutdown(lpMachineName: PKOLChar): BOOL; stdcall;
+function AccessCheckAndAuditAlarm(SubsystemName: PKOLChar;
+ HandleId: Pointer; ObjectTypeName, ObjectName: PKOLChar;
+ SecurityDescriptor: PSecurityDescriptor; DesiredAccess: DWORD;
+ const GenericMapping: TGenericMapping; ObjectCreation: BOOL;
+ var GrantedAccess: DWORD; var AccessStatus, pfGenerateOnClose: BOOL): BOOL; stdcall;
+{$IFDEF _D4orHigher}
+function AccessCheckByTypeAndAuditAlarm(SubsystemName: PKOLChar;
+ HandleId: Pointer; ObjectTypeName, ObjectName: PKOLChar;
+ SecurityDescriptor: PSecurityDescriptor; PrincipalSelfSid: PSID; DesiredAccess: DWORD;
+ AuditType: AUDIT_EVENT_TYPE; Flags: DWORD; ObjectTypeList: PObjectTypeList;
+ ObjectTypeListLength: DWORD; const GenericMapping: TGenericMapping; ObjectCreation: BOOL;
+ var GrantedAccess: DWORD; var AccessStatus, pfGenerateOnClose: BOOL): BOOL; stdcall;
+function AccessCheckByTypeResultListAndAuditAlarm(SubsystemName: PKOLChar;
+ HandleId: Pointer; ObjectTypeName, ObjectName: PKOLChar;
+ SecurityDescriptor: PSecurityDescriptor; PrincipalSelfSid: PSID; DesiredAccess: DWORD;
+ AuditType: AUDIT_EVENT_TYPE; Flags: DWORD; ObjectTypeList: PObjectTypeList;
+ ObjectTypeListLength: DWORD; const GenericMapping: TGenericMapping; ObjectCreation: BOOL;
+ var GrantedAccess: DWORD; var AccessStatusList: DWORD; var pfGenerateOnClose: BOOL): BOOL; stdcall;
+{$ENDIF}
+function BackupEventLog(hEventLog: THandle; lpBackupFileName: PKOLChar): BOOL; stdcall;
+function ClearEventLog(hEventLog: THandle; lpBackupFileName: PKOLChar): BOOL; stdcall;
+function CreateProcessAsUser(hToken: THandle; lpApplicationName: PKOLChar;
+ lpCommandLine: PKOLChar; lpProcessAttributes: PSecurityAttributes;
+ lpThreadAttributes: PSecurityAttributes; bInheritHandles: BOOL;
+ dwCreationFlags: DWORD; lpEnvironment: Pointer; lpCurrentDirectory: PKOLChar;
+ const lpStartupInfo: TStartupInfo; var lpProcessInformation: TProcessInformation): BOOL; stdcall;
+function GetCurrentHwProfile(var lpHwProfileInfo: THWProfileInfo): BOOL; stdcall;
+function GetFileSecurity(lpFileName: PKOLChar; RequestedInformation: SECURITY_INFORMATION;
+ pSecurityDescriptor: PSecurityDescriptor; nLength: DWORD; var lpnLengthNeeded: DWORD): BOOL; stdcall;
+function GetUserName(lpBuffer: PKOLChar; var nSize: DWORD): BOOL; stdcall;
+function InitiateSystemShutdown(lpMachineName, lpMessage: PKOLChar;
+ dwTimeout: DWORD; bForceAppsClosed, bRebootAfterShutdown: BOOL): BOOL; stdcall;
+function LogonUser(lpszUsername, lpszDomain, lpszPassword: PKOLChar;
+ dwLogonType, dwLogonProvider: DWORD; var phToken: THandle): BOOL; stdcall;
+function LookupAccountName(lpSystemName, lpAccountName: PKOLChar;
+ Sid: PSID; var cbSid: DWORD; ReferencedDomainName: PKOLChar;
+ var cbReferencedDomainName: DWORD; var peUse: SID_NAME_USE): BOOL; stdcall;
+function LookupAccountSid(lpSystemName: PKOLChar; Sid: PSID;
+ Name: PKOLChar; var cbName: DWORD; ReferencedDomainName: PKOLChar;
+ var cbReferencedDomainName: DWORD; var peUse: SID_NAME_USE): BOOL; stdcall;
+function LookupPrivilegeDisplayName(lpSystemName, lpName: PKOLChar;
+ lpDisplayName: PKOLChar; var cbDisplayName, lpLanguageId: DWORD): BOOL; stdcall;
+function LookupPrivilegeName(lpSystemName: PKOLChar;
+ var lpLuid: TLargeInteger; lpName: PKOLChar; var cbName: DWORD): BOOL; stdcall;
+function LookupPrivilegeValue(lpSystemName, lpName: PKOLChar;
+ var lpLuid: TLargeInteger): BOOL; stdcall;
+function ObjectCloseAuditAlarm(SubsystemName: PKOLChar;
+ HandleId: Pointer; GenerateOnClose: BOOL): BOOL; stdcall;
+function ObjectDeleteAuditAlarm(SubsystemName: PKOLChar;
+ HandleId: Pointer; GenerateOnClose: BOOL): BOOL; stdcall;
+function ObjectOpenAuditAlarm(SubsystemName: PKOLChar; HandleId: Pointer;
+ ObjectTypeName: PKOLChar; ObjectName: PKOLChar; pSecurityDescriptor: PSecurityDescriptor;
+ ClientToken: THandle; DesiredAccess, GrantedAccess: DWORD;
+ var Privileges: TPrivilegeSet; ObjectCreation, AccessGranted: BOOL;
+ var GenerateOnClose: BOOL): BOOL; stdcall;
+function ObjectPrivilegeAuditAlarm(SubsystemName: PKOLChar;
+ HandleId: Pointer; ClientToken: THandle; DesiredAccess: DWORD;
+ var Privileges: TPrivilegeSet; AccessGranted: BOOL): BOOL; stdcall;
+function OpenBackupEventLog(lpUNCServerName, lpFileName: PKOLChar): THandle; stdcall;
+function OpenEventLog(lpUNCServerName, lpSourceName: PKOLChar): THandle; stdcall;
+function PrivilegedServiceAuditAlarm(SubsystemName, ServiceName: PKOLChar;
+ ClientToken: THandle; var Privileges: TPrivilegeSet; AccessGranted: BOOL): BOOL; stdcall;
+function ReadEventLog(hEventLog: THandle; dwReadFlags, dwRecordOffset: DWORD;
+ lpBuffer: Pointer; nNumberOfBytesToRead: DWORD;
+ var pnBytesRead, pnMinNumberOfBytesNeeded: DWORD): BOOL; stdcall;
+function RegConnectRegistry(lpMachineName: PKOLChar; hKey: HKEY;
+ var phkResult: HKEY): Longint; stdcall;
+function RegCreateKey(hKey: HKEY; lpSubKey: PKOLChar;
+ var phkResult: HKEY): Longint; stdcall;
+function RegCreateKeyEx(hKey: HKEY; lpSubKey: PKOLChar;
+ Reserved: DWORD; lpClass: PKOLChar; dwOptions: DWORD; samDesired: REGSAM;
+ lpSecurityAttributes: PSecurityAttributes; var phkResult: HKEY;
+ lpdwDisposition: PDWORD): Longint; stdcall;
+function RegDeleteKey(hKey: HKEY; lpSubKey: PKOLChar): Longint; stdcall;
+function RegDeleteValue(hKey: HKEY; lpValueName: PKOLChar): Longint; stdcall;
+function RegEnumKeyEx(hKey: HKEY; dwIndex: DWORD; lpName: PKOLChar;
+ var lpcbName: DWORD; lpReserved: Pointer; lpClass: PKOLChar;
+ lpcbClass: PDWORD; lpftLastWriteTime: PFileTime): Longint; stdcall;
+function RegEnumKey(hKey: HKEY; dwIndex: DWORD; lpName: PKOLChar; cbName: DWORD): Longint; stdcall;
+function RegEnumValue(hKey: HKEY; dwIndex: DWORD; lpValueName: PKOLChar;
+ var lpcbValueName: DWORD; lpReserved: Pointer; lpType: PDWORD;
+ lpData: PByte; lpcbData: PDWORD): Longint; stdcall;
+function RegLoadKey(hKey: HKEY; lpSubKey, lpFile: PKOLChar): Longint; stdcall;
+function RegOpenKey(hKey: HKEY; lpSubKey: PKOLChar; var phkResult: HKEY): Longint; stdcall;
+function RegOpenKeyEx(hKey: HKEY; lpSubKey: PKOLChar;
+ ulOptions: DWORD; samDesired: REGSAM; var phkResult: HKEY): Longint; stdcall;
+function RegQueryInfoKey(hKey: HKEY; lpClass: PKOLChar;
+ lpcbClass: PDWORD; lpReserved: Pointer;
+ lpcSubKeys, lpcbMaxSubKeyLen, lpcbMaxClassLen, lpcValues,
+ lpcbMaxValueNameLen, lpcbMaxValueLen, lpcbSecurityDescriptor: PDWORD;
+ lpftLastWriteTime: PFileTime): Longint; stdcall;
+function RegQueryMultipleValues(hKey: HKEY; var ValList;
+ NumVals: DWORD; lpValueBuf: PKOLChar; var ldwTotsize: DWORD): Longint; stdcall;
+function RegQueryValue(hKey: HKEY; lpSubKey: PKOLChar;
+ lpValue: PKOLChar; var lpcbValue: Longint): Longint; stdcall;
+function RegQueryValueEx(hKey: HKEY; lpValueName: PKOLChar;
+ lpReserved: Pointer; lpType: PDWORD; lpData: PByte; lpcbData: PDWORD): Longint; stdcall;
+function RegReplaceKey(hKey: HKEY; lpSubKey: PKOLChar;
+ lpNewFile: PKOLChar; lpOldFile: PKOLChar): Longint; stdcall;
+function RegRestoreKey(hKey: HKEY; lpFile: PKOLChar; dwFlags: DWORD): Longint; stdcall;
+function RegSaveKey(hKey: HKEY; lpFile: PKOLChar;
+ lpSecurityAttributes: PSecurityAttributes): Longint; stdcall;
+function RegSetValue(hKey: HKEY; lpSubKey: PKOLChar;
+ dwType: DWORD; lpData: PKOLChar; cbData: DWORD): Longint; stdcall;
+function RegSetValueEx(hKey: HKEY; lpValueName: PKOLChar;
+ Reserved: DWORD; dwType: DWORD; lpData: Pointer; cbData: DWORD): Longint; stdcall;
+function RegUnLoadKey(hKey: HKEY; lpSubKey: PKOLChar): Longint; stdcall;
+function RegisterEventSource(lpUNCServerName, lpSourceName: PKOLChar): THandle; stdcall;
+function ReportEvent(hEventLog: THandle; wType, wCategory: Word;
+ dwEventID: DWORD; lpUserSid: Pointer; wNumStrings: Word;
+ dwDataSize: DWORD; lpStrings, lpRawData: Pointer): BOOL; stdcall;
+function SetFileSecurity(lpFileName: PKOLChar; SecurityInformation: SECURITY_INFORMATION;
+ pSecurityDescriptor: PSecurityDescriptor): BOOL; stdcall;
+function AddAtom(lpString: PKOLChar): ATOM; stdcall;
+function BeginUpdateResource(pFileName: PKOLChar; bDeleteExistingResources: BOOL): THandle; stdcall;
+function BuildCommDCB(lpDef: PKOLChar; var lpDCB: TDCB): BOOL; stdcall;
+function BuildCommDCBAndTimeouts(lpDef: PKOLChar; var lpDCB: TDCB;
+ var lpCommTimeouts: TCommTimeouts): BOOL; stdcall;
+function CallNamedPipe(lpNamedPipeName: PKOLChar; lpInBuffer: Pointer;
+ nInBufferSize: DWORD; lpOutBuffer: Pointer; nOutBufferSize: DWORD;
+ var lpBytesRead: DWORD; nTimeOut: DWORD): BOOL; stdcall;
+function CommConfigDialog(lpszName: PKOLChar; hWnd: HWND; var lpCC: TCommConfig): BOOL; stdcall;
+function CompareString(Locale: LCID; dwCmpFlags: DWORD; lpString1: PKOLChar;
+ cchCount1: Integer; lpString2: PKOLChar; cchCount2: Integer): Integer; stdcall;
+function CopyFile(lpExistingFileName, lpNewFileName: PKOLChar; bFailIfExists: BOOL): BOOL; stdcall;
+function CopyFileEx(lpExistingFileName, lpNewFileName: PKOLChar;
+ lpProgressRoutine: TFNProgressRoutine; lpData: Pointer; pbCancel: PBool;
+ dwCopyFlags: DWORD): BOOL; stdcall;
+function CreateDirectory(lpPathName: PKOLChar;
+ lpSecurityAttributes: PSecurityAttributes): BOOL; stdcall;
+function CreateDirectoryEx(lpTemplateDirectory, lpNewDirectory: PKOLChar;
+ lpSecurityAttributes: PSecurityAttributes): BOOL; stdcall;
+function CreateEvent(lpEventAttributes: PSecurityAttributes;
+ bManualReset, bInitialState: BOOL; lpName: PKOLChar): THandle; stdcall;
+function CreateFile(lpFileName: PKOLChar; dwDesiredAccess, dwShareMode: DWORD;
+ lpSecurityAttributes: PSecurityAttributes; dwCreationDisposition, dwFlagsAndAttributes: DWORD;
+ hTemplateFile: THandle): THandle; stdcall;
+function CreateFileMapping(hFile: THandle; lpFileMappingAttributes: PSecurityAttributes;
+ flProtect, dwMaximumSizeHigh, dwMaximumSizeLow: DWORD; lpName: PKOLChar): THandle; stdcall;
+function CreateHardLink(lpFileName, lpExistingFileName: PKOLChar;
+ lpSecurityAttributes: PSecurityAttributes): BOOL; stdcall;
+function CreateMailslot(lpName: PKOLChar; nMaxMessageSize: DWORD;
+ lReadTimeout: DWORD; lpSecurityAttributes: PSecurityAttributes): THandle; stdcall;
+function CreateNamedPipe(lpName: PKOLChar;
+ dwOpenMode, dwPipeMode, nMaxInstances, nOutBufferSize, nInBufferSize, nDefaultTimeOut: DWORD;
+ lpSecurityAttributes: PSecurityAttributes): THandle; stdcall;
+function CreateProcess(lpApplicationName: PKOLChar; lpCommandLine: PKOLChar;
+ lpProcessAttributes, lpThreadAttributes: PSecurityAttributes;
+ bInheritHandles: BOOL; dwCreationFlags: DWORD; lpEnvironment: Pointer;
+ lpCurrentDirectory: PKOLChar; const lpStartupInfo: TStartupInfo;
+ var lpProcessInformation: TProcessInformation): BOOL; stdcall;
+function CreateSemaphore(lpSemaphoreAttributes: PSecurityAttributes;
+ lInitialCount, lMaximumCount: Longint; lpName: PKOLChar): THandle; stdcall;
+function CreateWaitableTimer(lpTimerAttributes: PSecurityAttributes; bManualReset: BOOL; lpTimerName: PKOLChar): THandle; stdcall;
+function DefineDosDevice(dwFlags: DWORD; lpDeviceName, lpTargetPath: PKOLChar): BOOL; stdcall;
+function DeleteFile(lpFileName: PKOLChar): BOOL; stdcall;
+function EndUpdateResource(hUpdate: THandle; fDiscard: BOOL): BOOL; stdcall;
+function EnumCalendarInfo(lpCalInfoEnumProc: TFNCalInfoEnumProc; Locale: LCID;
+ Calendar: CALID; CalType: CALTYPE): BOOL; stdcall;
+function EnumDateFormats(lpDateFmtEnumProc: TFNDateFmtEnumProc;
+ Locale: LCID; dwFlags: DWORD): BOOL; stdcall;
+function EnumResourceLanguages(hModule: HMODULE; lpType, lpName: PKOLChar;
+ lpEnumFunc: ENUMRESLANGPROC; lParam: Longint): BOOL; stdcall;
+function EnumResourceNames(hModule: HMODULE; lpType: PKOLChar;
+ lpEnumFunc: ENUMRESNAMEPROC; lParam: Longint): BOOL; stdcall;
+function EnumResourceTypes(hModule: HMODULE; lpEnumFunc: ENUMRESTYPEPROC;
+ lParam: Longint): BOOL; stdcall;
+function EnumSystemCodePages(lpCodePageEnumProc: TFNCodepageEnumProc; dwFlags: DWORD): BOOL; stdcall;
+function EnumSystemLocales(lpLocaleEnumProc: TFNLocaleEnumProc; dwFlags: DWORD): BOOL; stdcall;
+function EnumTimeFormats(lpTimeFmtEnumProc: TFNTimeFmtEnumProc;
+ Locale: LCID; dwFlags: DWORD): BOOL; stdcall;
+function ExpandEnvironmentStrings(lpSrc: PKOLChar; lpDst: PKOLChar; nSize: DWORD): DWORD; stdcall;
+procedure FatalAppExit(uAction: UINT; lpMessageText: PKOLChar); stdcall;
+function FillConsoleOutputCharacter(hConsoleOutput: THandle; cCharacter: KOLChar;
+ nLength: DWORD; dwWriteCoord: TCoord; var lpNumberOfCharsWritten: DWORD): BOOL; stdcall;
+function FindAtom(lpString: PKOLChar): ATOM; stdcall;
+function FindFirstChangeNotification(lpPathName: PKOLChar;
+ bWatchSubtree: BOOL; dwNotifyFilter: DWORD): THandle; stdcall;
+function FindFirstFile(lpFileName: PKOLChar; var lpFindFileData: TWIN32FindData): THandle; stdcall;
+function FindFirstFileEx(lpFileName: PKOLChar; fInfoLevelId: TFindexInfoLevels;
+ lpFindFileData: Pointer; fSearchOp: TFindexSearchOps; lpSearchFilter: Pointer;
+ dwAdditionalFlags: DWORD): BOOL; stdcall;
+function FindNextFile(hFindFile: THandle; var lpFindFileData: TWIN32FindData): BOOL; stdcall;
+function FindResource(hModule: HMODULE; lpName, lpType: PKOLChar): HRSRC; stdcall;
+function FindResourceEx(hModule: HMODULE; lpType, lpName: PKOLChar; wLanguage: Word): HRSRC; stdcall;
+function FoldString(dwMapFlags: DWORD; lpSrcStr: PKOLChar; cchSrc: Integer;
+ lpDestStr: PKOLChar; cchDest: Integer): Integer; stdcall;
+function FormatMessage(dwFlags: DWORD; lpSource: Pointer; dwMessageId: DWORD; dwLanguageId: DWORD;
+ lpBuffer: PKOLChar; nSize: DWORD; Arguments: Pointer): DWORD; stdcall;
+function FreeEnvironmentStrings(EnvBlock: PKOLChar): BOOL; stdcall;
+function GetAtomName(nAtom: ATOM; lpBuffer: PKOLChar; nSize: Integer): UINT; stdcall;
+function GetBinaryType(lpApplicationName: PKOLChar; var lpBinaryType: DWORD): BOOL; stdcall;
+function GetCommandLine: PKOLChar; stdcall;
+function GetCompressedFileSize(lpFileName: PKOLChar; lpFileSizeHigh: PDWORD): DWORD; stdcall;
+function GetComputerName(lpBuffer: PKOLChar; var nSize: DWORD): BOOL; stdcall;
+function GetConsoleTitle(lpConsoleTitle: PKOLChar; nSize: DWORD): DWORD; stdcall;
+function GetCurrencyFormat(Locale: LCID; dwFlags: DWORD; lpValue: PKOLChar;
+ lpFormat: PCurrencyFmt; lpCurrencyStr: PKOLChar; cchCurrency: Integer): Integer; stdcall;
+function GetCurrentDirectory(nBufferLength: DWORD; lpBuffer: PKOLChar): DWORD; stdcall;
+function GetDateFormat(Locale: LCID; dwFlags: DWORD; lpDate: PSystemTime;
+ lpFormat: PKOLChar; lpDateStr: PKOLChar; cchDate: Integer): Integer; stdcall;
+function GetDefaultCommConfig(lpszName: PKOLChar;
+ var lpCC: TCommConfig; var lpdwSize: DWORD): BOOL; stdcall;
+function GetDiskFreeSpace(lpRootPathName: PKOLChar;
+ var lpSectorsPerCluster, lpBytesPerSector, lpNumberOfFreeClusters, lpTotalNumberOfClusters: DWORD): BOOL; stdcall;
+function GetDiskFreeSpaceEx(lpDirectoryName: PKOLChar;
+ var lpFreeBytesAvailableToCaller, lpTotalNumberOfBytes; lpTotalNumberOfFreeBytes: PLargeInteger): BOOL; stdcall;
+function GetDriveType(lpRootPathName: PKOLChar): UINT; stdcall;
+function GetEnvironmentStrings: PKOLChar; stdcall;
+function GetEnvironmentVariable(lpName: PKOLChar; lpBuffer: PKOLChar; nSize: DWORD): DWORD; stdcall;
+ {$IFDEF _D4orHigher} overload; {$ENDIF}
+function GetFileAttributes(lpFileName: PKOLChar): DWORD; stdcall;
+function GetFileAttributesEx(lpFileName: PKOLChar;
+ fInfoLevelId: TGetFileExInfoLevels; lpFileInformation: Pointer): BOOL; stdcall;
+function GetFullPathName(lpFileName: PKOLChar; nBufferLength: DWORD;
+ lpBuffer: PKOLChar; var lpFilePart: PKOLChar): DWORD; stdcall;
+function GetLocaleInfo(Locale: LCID; LCType: LCTYPE; lpLCData: PKOLChar; cchData: Integer): Integer; stdcall;
+function GetLogicalDriveStrings(nBufferLength: DWORD; lpBuffer: PKOLChar): DWORD; stdcall;
+function GetModuleFileName(hModule: HINST; lpFilename: PKOLChar; nSize: DWORD): DWORD; stdcall;
+function GetModuleHandle(lpModuleName: PKOLChar): HMODULE; stdcall;
+function GetNamedPipeHandleState(hNamedPipe: THandle;
+ lpState, lpCurInstances, lpMaxCollectionCount, lpCollectDataTimeout: PDWORD;
+ lpUserName: PKOLChar; nMaxUserNameSize: DWORD): BOOL; stdcall;
+function GetNumberFormat(Locale: LCID; dwFlags: DWORD; lpValue: PKOLChar;
+ lpFormat: PNumberFmt; lpNumberStr: PKOLChar; cchNumber: Integer): Integer; stdcall;
+function GetPrivateProfileInt(lpAppName, lpKeyName: PKOLChar; nDefault: Integer; lpFileName: PKOLChar): UINT; stdcall;
+function GetPrivateProfileSection(lpAppName: PKOLChar; lpReturnedString: PKOLChar; nSize: DWORD; lpFileName: PKOLChar): DWORD; stdcall;
+function GetPrivateProfileSectionNames(lpszReturnBuffer: PKOLChar; nSize: DWORD; lpFileName: PKOLChar): DWORD; stdcall;
+function GetPrivateProfileString(lpAppName, lpKeyName, lpDefault: PKOLChar;
+ lpReturnedString: PKOLChar; nSize: DWORD; lpFileName: PKOLChar): DWORD; stdcall;
+function GetProfileInt(lpAppName, lpKeyName: PKOLChar; nDefault: Integer): UINT; stdcall;
+function GetProfileSection(lpAppName: PKOLChar; lpReturnedString: PKOLChar; nSize: DWORD): DWORD; stdcall;
+function GetProfileString(lpAppName, lpKeyName, lpDefault: PKOLChar;
+ lpReturnedString: PKOLChar; nSize: DWORD): DWORD; stdcall;
+function GetShortPathName(lpszLongPath: PKOLChar; lpszShortPath: PKOLChar;
+ cchBuffer: DWORD): DWORD; stdcall;
+procedure GetStartupInfo(var lpStartupInfo: TStartupInfo); stdcall;
+function GetStringTypeEx(Locale: LCID; dwInfoType: DWORD;
+ lpSrcStr: PKOLChar; cchSrc: Integer; var lpCharType): BOOL; stdcall;
+function GetSystemDirectory(lpBuffer: PKOLChar; uSize: UINT): UINT; stdcall;
+function GetTempFileName(lpPathName, lpPrefixString: PKOLChar;
+ uUnique: UINT; lpTempFileName: PKOLChar): UINT; stdcall;
+function GetTempPath(nBufferLength: DWORD; lpBuffer: PKOLChar): DWORD; stdcall;
+function GetTimeFormat(Locale: LCID; dwFlags: DWORD; lpTime: PSystemTime;
+ lpFormat: PKOLChar; lpTimeStr: PKOLChar; cchTime: Integer): Integer; stdcall;
+function GetVersionEx(var lpVersionInformation: TOSVersionInfo): BOOL; stdcall;
+function GetVolumeInformation(lpRootPathName: PKOLChar;
+ lpVolumeNameBuffer: PKOLChar; nVolumeNameSize: DWORD; lpVolumeSerialNumber: PDWORD;
+ var lpMaximumComponentLength, lpFileSystemFlags: DWORD;
+ lpFileSystemNameBuffer: PKOLChar; nFileSystemNameSize: DWORD): BOOL; stdcall;
+function GetWindowsDirectory(lpBuffer: PKOLChar; uSize: UINT): UINT; stdcall;
+function GlobalAddAtom(lpString: PKOLChar): ATOM; stdcall;
+function GlobalFindAtom(lpString: PKOLChar): ATOM; stdcall;
+function GlobalGetAtomName(nAtom: ATOM; lpBuffer: PKOLChar; nSize: Integer): UINT; stdcall;
+function IsBadStringPtr(lpsz: PKOLChar; ucchMax: UINT): BOOL; stdcall;
+function LCMapString(Locale: LCID; dwMapFlags: DWORD; lpSrcStr: PKOLChar;
+ cchSrc: Integer; lpDestStr: PKOLChar; cchDest: Integer): Integer; stdcall;
+function LoadLibrary(lpLibFileName: PKOLChar): HMODULE; stdcall;
+function LoadLibraryEx(lpLibFileName: PKOLChar; hFile: THandle; dwFlags: DWORD): HMODULE; stdcall;
+function MoveFile(lpExistingFileName, lpNewFileName: PKOLChar): BOOL; stdcall;
+function MoveFileEx(lpExistingFileName, lpNewFileName: PKOLChar; dwFlags: DWORD): BOOL; stdcall;
+function MoveFileWithProgress(lpExistingFileName, lpNewFileName: PKOLChar; lpProgressRoutine: TFNProgressRoutine;
+ lpData: Pointer; dwFlags: DWORD): BOOL; stdcall;
+function OpenEvent(dwDesiredAccess: DWORD; bInheritHandle: BOOL; lpName: PKOLChar): THandle; stdcall;
+function OpenFileMapping(dwDesiredAccess: DWORD; bInheritHandle: BOOL; lpName: PKOLChar): THandle; stdcall;
+function OpenMutex(dwDesiredAccess: DWORD; bInheritHandle: BOOL; lpName: PKOLChar): THandle; stdcall;
+function OpenSemaphore(dwDesiredAccess: DWORD; bInheritHandle: BOOL; lpName: PKOLChar): THandle; stdcall;
+function OpenWaitableTimer(dwDesiredAccess: DWORD; bInheritHandle: BOOL;
+ lpTimerName: PKOLChar): THandle; stdcall;
+procedure OutputDebugString(lpOutputString: PKOLChar); stdcall;
+function PeekConsoleInput(hConsoleInput: THandle; var lpBuffer: TInputRecord;
+ nLength: DWORD; var lpNumberOfEventsRead: DWORD): BOOL; stdcall;
+function QueryDosDevice(lpDeviceName: PKOLChar; lpTargetPath: PKOLChar; ucchMax: DWORD): DWORD; stdcall;
+{$IFDEF _D4orHigher}
+function QueryRecoveryAgents(p1: PKOLChar; var p2: Pointer; var p3: TRecoveryAgentInformation): DWORD; stdcall;
+{$ENDIF}
+function ReadConsole(hConsoleInput: THandle; lpBuffer: Pointer;
+ nNumberOfCharsToRead: DWORD; var lpNumberOfCharsRead: DWORD; lpReserved: Pointer): BOOL; stdcall;
+function ReadConsoleInput(hConsoleInput: THandle; var lpBuffer: TInputRecord;
+ nLength: DWORD; var lpNumberOfEventsRead: DWORD): BOOL; stdcall;
+function ReadConsoleOutput(hConsoleOutput: THandle; lpBuffer: Pointer;
+ dwBufferSize, dwBufferCoord: TCoord; var lpReadRegion: TSmallRect): BOOL; stdcall;
+function ReadConsoleOutputCharacter(hConsoleOutput: THandle; lpCharacter: PKOLChar;
+ nLength: DWORD; dwReadCoord: TCoord; var lpNumberOfCharsRead: DWORD): BOOL; stdcall;
+function RemoveDirectory(lpPathName: PKOLChar): BOOL; stdcall;
+function ScrollConsoleScreenBuffer(hConsoleOutput: THandle;
+ const lpScrollRectangle: TSmallRect; lpClipRectangle: PSmallRect;
+ dwDestinationOrigin: TCoord; var lpFill: TCharInfo): BOOL; stdcall;
+function SearchPath(lpPath, lpFileName, lpExtension: PKOLChar;
+ nBufferLength: DWORD; lpBuffer: PKOLChar; var lpFilePart: PKOLChar): DWORD; stdcall;
+function SetComputerName(lpComputerName: PKOLChar): BOOL; stdcall;
+function SetConsoleTitle(lpConsoleTitle: PKOLChar): BOOL; stdcall;
+function SetCurrentDirectory(lpPathName: PKOLChar): BOOL; stdcall;
+function SetDefaultCommConfig(lpszName: PKOLChar; lpCC: PCommConfig; dwSize: DWORD): BOOL; stdcall;
+function SetEnvironmentVariable(lpName, lpValue: PKOLChar): BOOL; stdcall;
+function SetFileAttributes(lpFileName: PKOLChar; dwFileAttributes: DWORD): BOOL; stdcall;
+function SetLocaleInfo(Locale: LCID; LCType: LCTYPE; lpLCData: PKOLChar): BOOL; stdcall;
+function SetVolumeLabel(lpRootPathName: PKOLChar; lpVolumeName: PKOLChar): BOOL; stdcall;
+function UpdateResource(hUpdate: THandle; lpType, lpName: PKOLChar;
+ wLanguage: Word; lpData: Pointer; cbData: DWORD): BOOL; stdcall;
+function VerLanguageName(wLang: DWORD; szLang: PKOLChar; nSize: DWORD): DWORD; stdcall;
+function WaitNamedPipe(lpNamedPipeName: PKOLChar; nTimeOut: DWORD): BOOL; stdcall;
+function WriteConsole(hConsoleOutput: THandle; const lpBuffer: Pointer;
+ nNumberOfCharsToWrite: DWORD; var lpNumberOfCharsWritten: DWORD; lpReserved: Pointer): BOOL; stdcall;
+function WriteConsoleInput(hConsoleInput: THandle; const lpBuffer: TInputRecord;
+ nLength: DWORD; var lpNumberOfEventsWritten: DWORD): BOOL; stdcall;
+function WriteConsoleOutput(hConsoleOutput: THandle; lpBuffer: Pointer;
+ dwBufferSize, dwBufferCoord: TCoord; var lpWriteRegion: TSmallRect): BOOL; stdcall;
+function WriteConsoleOutputCharacter(hConsoleOutput: THandle;lpCharacter: PKOLChar;
+ nLength: DWORD; dwWriteCoord: TCoord; var lpNumberOfCharsWritten: DWORD): BOOL; stdcall;
+function WritePrivateProfileSection(lpAppName, lpString, lpFileName: PKOLChar): BOOL; stdcall;
+function WritePrivateProfileString(lpAppName, lpKeyName, lpString, lpFileName: PKOLChar): BOOL; stdcall;
+function WriteProfileSection(lpAppName, lpString: PKOLChar): BOOL; stdcall;
+function WriteProfileString(lpAppName, lpKeyName, lpString: PKOLChar): BOOL; stdcall;
+function lstrcat(lpString1, lpString2: PKOLChar): PKOLChar; stdcall;
+function lstrcmp(lpString1, lpString2: PKOLChar): Integer; stdcall;
+function lstrcmpi(lpString1, lpString2: PKOLChar): Integer; stdcall;
+function lstrcpy(lpString1, lpString2: PKOLChar): PKOLChar; stdcall;
+function lstrcpyn(lpString1, lpString2: PKOLChar; iMaxLength: Integer): PKOLChar; stdcall;
+function lstrlen(lpString: PKOLChar): Integer; stdcall;
+function MultinetGetConnectionPerformance(lpNetResource: PNetResource;
+ lpNetConnectInfoStruc: PNetConnectInfoStruct): DWORD; stdcall;
+function WNetAddConnection2(var lpNetResource: TNetResource;
+ lpPassword, lpUserName: PKOLChar; dwFlags: DWORD): DWORD; stdcall;
+function WNetAddConnection3(hwndOwner: HWND; var lpNetResource: TNetResource;
+ lpPassword, lpUserName: PKOLChar; dwFlags: DWORD): DWORD; stdcall;
+function WNetAddConnection(lpRemoteName, lpPassword, lpLocalName: PKOLChar): DWORD; stdcall;
+function WNetCancelConnection2(lpName: PKOLChar; dwFlags: DWORD; fForce: BOOL): DWORD; stdcall;
+function WNetCancelConnection(lpName: PKOLChar; fForce: BOOL): DWORD; stdcall;
+function WNetConnectionDialog1(var lpConnDlgStruct: TConnectDlgStruct): DWORD; stdcall;
+function WNetDisconnectDialog1(var lpConnDlgStruct: TDiscDlgStruct): DWORD; stdcall;
+function WNetEnumResource(hEnum: THandle; var lpcCount: DWORD;
+ lpBuffer: Pointer; var lpBufferSize: DWORD): DWORD; stdcall;
+function WNetGetConnection(lpLocalName: PKOLChar;
+ lpRemoteName: PKOLChar; var lpnLength: DWORD): DWORD; stdcall;
+function WNetGetLastError(var lpError: DWORD; lpErrorBuf: PKOLChar;
+ nErrorBufSize: DWORD; lpNameBuf: PKOLChar; nNameBufSize: DWORD): DWORD; stdcall;
+function WNetGetNetworkInformation(lpProvider: PKOLChar;
+ var lpNetInfoStruct: TNetInfoStruct): DWORD; stdcall;
+function WNetGetProviderName(dwNetType: DWORD; lpProviderName: PKOLChar;
+ var lpBufferSize: DWORD): DWORD; stdcall;
+function WNetGetResourceParent(lpNetResource: PNetResource;
+ lpBuffer: Pointer; var cbBuffer: DWORD): DWORD; stdcall;
+function WNetGetUniversalName(lpLocalPath: PKOLChar; dwInfoLevel: DWORD;
+ lpBuffer: Pointer; var lpBufferSize: DWORD): DWORD; stdcall;
+function WNetGetUser(lpName: PKOLChar; lpUserName: PKOLChar; var lpnLength: DWORD): DWORD; stdcall;
+function WNetOpenEnum(dwScope, dwType, dwUsage: DWORD;
+ lpNetResource: PNetResource; var lphEnum: THandle): DWORD; stdcall;
+function WNetSetConnection(lpName: PKOLChar; dwProperties: DWORD; pvValues: Pointer): DWORD; stdcall;
+function WNetUseConnection(hwndOwner: HWND;
+ var lpNetResource: TNetResource; lpUserID: PKOLChar;
+ lpPassword: PKOLChar; dwFlags: DWORD; lpAccessName: PKOLChar;
+ var lpBufferSize: DWORD; var lpResult: DWORD): DWORD; stdcall;
+function GetFileVersionInfo(lptstrFilename: PKOLChar; dwHandle, dwLen: DWORD;
+ lpData: Pointer): BOOL; stdcall;
+function GetFileVersionInfoSize(lptstrFilename: PKOLChar; var lpdwHandle: DWORD): DWORD; stdcall;
+function VerFindFile(uFlags: DWORD; szFileName, szWinDir, szAppDir, szCurDir: PKOLChar;
+ var lpuCurDirLen: UINT; szDestDir: PKOLChar; var lpuDestDirLen: UINT): DWORD; stdcall;
+function VerInstallFile(uFlags: DWORD;
+ szSrcFileName, szDestFileName, szSrcDir, szDestDir, szCurDir, szTmpFile: PKOLChar;
+ var lpuTmpFileLen: UINT): DWORD; stdcall;
+function VerQueryValue(pBlock: Pointer; lpSubBlock: PKOLChar;
+ var lplpBuffer: Pointer; var puLen: UINT): BOOL; stdcall;
+function GetPrivateProfileStruct(lpszSection, lpszKey: PKOLChar;
+ lpStruct: Pointer; uSizeStruct: UINT; szFile: PKOLChar): BOOL; stdcall;
+function WritePrivateProfileStruct(lpszSection, lpszKey: PKOLChar;
+ lpStruct: Pointer; uSizeStruct: UINT; szFile: PKOLChar): BOOL; stdcall;
+function AddFontResource(FileName: PKOLChar): Integer; stdcall;
+{$IFDEF _D4orHigher}
+function AddFontResourceEx(p1: PKOLChar; p2: DWORD; p3: PDesignVector): Integer; stdcall;
+{$ENDIF}
+function CopyEnhMetaFile(p1: HENHMETAFILE; p2: PKOLChar): HENHMETAFILE; stdcall;
+function CopyMetaFile(p1: HMETAFILE; p2: PKOLChar): HMETAFILE; stdcall;
+function CreateColorSpace(var ColorSpace: TLogColorSpace): HCOLORSPACE; stdcall;
+function CreateDC(lpszDriver, lpszDevice, lpszOutput: PKOLChar;
+ lpdvmInit: PDeviceMode): HDC; stdcall;
+function CreateEnhMetaFile(DC: HDC; FileName: PKOLChar; Rect: PRect; Desc: PKOLChar): HDC; stdcall;
+function CreateFont(nHeight, nWidth, nEscapement, nOrientaion, fnWeight: Integer;
+ fdwItalic, fdwUnderline, fdwStrikeOut, fdwCharSet, fdwOutputPrecision,
+ fdwClipPrecision, fdwQuality, fdwPitchAndFamily: DWORD; lpszFace: PKOLChar): HFONT; stdcall;
+function CreateFontIndirect(const p1: TLogFont): HFONT; stdcall;
+{$IFDEF _D4orHigher}
+function CreateFontIndirectEx(const p1: PEnumLogFontExDV): HFONT; stdcall;
+{$ENDIF}
+function CreateIC(lpszDriver, lpszDevice, lpszOutput: PKOLChar; lpdvmInit: PDeviceMode): HDC; stdcall;
+function CreateMetaFile(p1: PKOLChar): HDC; stdcall;
+function CreateScalableFontResource(p1: DWORD; p2, p3, p4: PKOLChar): BOOL; stdcall;
+function DeviceCapabilities(pDriverName, pDeviceName, pPort: PKOLChar;
+ iIndex: Integer; pOutput: PKOLChar; DevMode: PDeviceMode): Integer; stdcall;
+function EnumFontFamilies(DC: HDC; p2: PKOLChar; p3: TFNFontEnumProc; p4: LPARAM): BOOL; stdcall;
+function EnumFontFamiliesEx(DC: HDC; var p2: TLogFont;
+ p3: TFNFontEnumProc; p4: LPARAM; p5: DWORD): BOOL; stdcall;
+function EnumFonts(DC: HDC; lpszFace: PKOLChar; fntenmprc: TFNFontEnumProc;
+ lpszData: PKOLChar): Integer; stdcall;
+function EnumICMProfiles(DC: HDC; ICMProc: TFNICMEnumProc; p3: LPARAM): Integer; stdcall;
+function ExtTextOut(DC: HDC; X, Y: Integer; Options: Longint;
+ Rect: PRect; Str: PKOLChar; Count: Longint; Dx: PInteger): BOOL; stdcall;
+function GetCharABCWidths(DC: HDC; FirstChar, LastChar: UINT; const ABCStructs): BOOL; stdcall;
+function GetCharABCWidthsFloat(DC: HDC; FirstChar, LastChar: UINT; const ABCFloatSturcts): BOOL; stdcall;
+function GetCharWidth32(DC: HDC; FirstChar, LastChar: UINT; const Widths): BOOL; stdcall;
+function GetCharWidth(DC: HDC; FirstChar, LastChar: UINT; const Widths): BOOL; stdcall;
+function GetCharWidthFloat(DC: HDC; FirstChar, LastChar: UINT; const Widths): BOOL; stdcall;
+function GetCharacterPlacement(DC: HDC; p2: PKOLChar; p3, p4: BOOL;
+ var p5: TGCPResults; p6: DWORD): DWORD; stdcall;
+function GetEnhMetaFile(p1: PKOLChar): HENHMETAFILE; stdcall;
+function GetEnhMetaFileDescription(p1: HENHMETAFILE; p2: UINT; p3: PKOLChar): UINT; stdcall;
+function GetGlyphIndices(DC: HDC; p2: PKOLChar; p3: Integer; p4: PWORD; p5: DWORD): DWORD; stdcall;
+function GetGlyphOutline(DC: HDC; uChar, uFormat: UINT;
+ const lpgm: TGlyphMetrics; cbBuffer: DWORD; lpvBuffer: Pointer; const lpmat2: TMat2): DWORD; stdcall;
+function GetICMProfile(DC: HDC; var Size: DWORD; Name: PKOLChar): BOOL; stdcall;
+function GetLogColorSpace(p1: HCOLORSPACE; var ColorSpace: TLogColorSpace; Size: DWORD): BOOL; stdcall;
+function GetMetaFile(p1: PKOLChar): HMETAFILE; stdcall;
+function GetObject(p1: HGDIOBJ; p2: Integer; p3: Pointer): Integer; stdcall;
+function GetOutlineTextMetrics(DC: HDC; p2: UINT; OTMetricStructs: Pointer): UINT; stdcall;
+function GetTextExtentExPoint(DC: HDC; p2: PKOLChar;
+ p3, p4: Integer; p5, p6: PInteger; var p7: TSize): BOOL; stdcall;
+function GetTextExtentPoint32(DC: HDC; Str: PKOLChar; Count: Integer;
+ var Size: TSize): BOOL; stdcall;
+function GetTextExtentPoint(DC: HDC; Str: PKOLChar; Count: Integer;
+ var Size: TSize): BOOL; stdcall;
+function GetTextFace(DC: HDC; Count: Integer; Buffer: PKOLChar): Integer; stdcall;
+function GetTextMetrics(DC: HDC; var TM: TTextMetric): BOOL; stdcall;
+function PolyTextOut(DC: HDC; const PolyTextArray; Strings: Integer): BOOL; stdcall;
+function RemoveFontResource(FileName: PKOLChar): BOOL; stdcall;
+{$IFDEF _D4orHigher}
+function RemoveFontResourceEx(p1: PKOLChar; p2: DWORD; p3: PDesignVector): BOOL; stdcall;
+{$ENDIF}
+function ResetDC(DC: HDC; const InitData: TDeviceMode): HDC; stdcall;
+function SetICMProfile(DC: HDC; Name: PKOLChar): BOOL; stdcall;
+function StartDoc(DC: HDC; const p2: TDocInfo): Integer; stdcall;
+function TextOut(DC: HDC; X, Y: Integer; Str: PKOLChar; Count: Integer): BOOL; stdcall;
+function UpdateICMRegKey(p1: DWORD; p2, p3: PKOLChar; p4: UINT): BOOL; stdcall;
+function wglUseFontBitmaps(DC: HDC; p2, p3, p4: DWORD): BOOL; stdcall;
+function wglUseFontOutlines(p1: HDC; p2, p3, p4: DWORD;
+ p5, p6: Single; p7: Integer; p8: PGlyphMetricsFloat): BOOL; stdcall;
+function AnsiToOem(const lpszSrc: LPCSTR; lpszDst: LPSTR): BOOL; stdcall;
+function AnsiToOemBuff(lpszSrc: LPCSTR; lpszDst: LPSTR; cchDstLength: DWORD): BOOL; stdcall;
+function AnsiUpper(lpsz: LPSTR): LPSTR; stdcall;
+function AnsiUpperBuff(lpsz: LPSTR; cchLength: DWORD): DWORD; stdcall;
+function AnsiLower(lpsz: LPSTR): LPSTR; stdcall;
+function AnsiLowerBuff(lpsz: LPSTR; cchLength: DWORD): DWORD; stdcall;
+function AnsiNext(const lpsz: LPCSTR): LPSTR; stdcall;
+function AnsiPrev(const lpszStart: LPCSTR; const lpszCurrent: LPCSTR): LPSTR; stdcall;
+function AppendMenu(hMenu: HMENU; uFlags, uIDNewItem: UINT;
+ lpNewItem: PKOLChar): BOOL; stdcall;
+//function BroadcastSystemMessage(Flags: DWORD; Recipients: PDWORD;
+// uiMessage: UINT; wParam: WPARAM; lParam: LPARAM): Longint; stdcall;
+//function BroadcastSystemMessageW(Flags: DWORD; Recipients: PDWORD;
+// uiMessage: UINT; wParam: WPARAM; lParam: LPARAM): Longint; stdcall;
+function CallMsgFilter(var lpMsg: TMsg; nCode: Integer): BOOL; stdcall;
+function CallWindowProc(lpPrevWndFunc: TFNWndProc; hWnd: HWND; Msg: UINT; wParam: WPARAM; lParam: LPARAM): LRESULT; stdcall;
+function ChangeDisplaySettings(var lpDevMode: TDeviceMode; dwFlags: DWORD): Longint; stdcall;
+function ChangeDisplaySettingsEx(lpszDeviceName: PKOLChar; var lpDevMode: TDeviceMode;
+ wnd: HWND; dwFlags: DWORD; lParam: Pointer): Longint; stdcall;
+function ChangeMenu(hMenu: HMENU; cmd: UINT; lpszNewItem: PKOLChar;
+ cmdInsert: UINT; flags: UINT): BOOL; stdcall;
+function CharLower(lpsz: PKOLChar): PKOLChar; stdcall;
+function CharLowerBuff(lpsz: PKOLChar; cchLength: DWORD): DWORD; stdcall;
+function CharNext(lpsz: PKOLChar): PKOLChar; stdcall;
+function CharNextEx(CodePage: Word; lpCurrentChar: LPCSTR; dwFlags: DWORD): LPSTR; stdcall;
+function CharPrev(lpszStart: PKOLChar; lpszCurrent: PKOLChar): PKOLChar; stdcall;
+function CharPrevEx(CodePage: Word; lpStart, lpCurrentChar: LPCSTR; dwFlags: DWORD): LPSTR; stdcall;
+function CharToOem(lpszSrc: PKOLChar; lpszDst: PKOLChar): BOOL; stdcall;
+function CharToOemBuff(lpszSrc: PKOLChar; lpszDst: PKOLChar; cchDstLength: DWORD): BOOL; stdcall;
+function CharUpper(lpsz: PKOLChar): PKOLChar; stdcall;
+function CharUpperBuff(lpsz: PKOLChar; cchLength: DWORD): DWORD; stdcall;
+function CopyAcceleratorTable(hAccelSrc: HACCEL; var lpAccelDst; cAccelEntries: Integer): Integer; stdcall;
+function CreateAcceleratorTable(var Accel; Count: Integer): HACCEL; stdcall;
+function CreateDesktop(lpszDesktop, lpszDevice: PKOLChar;
+ pDevmode: PDeviceMode; dwFlags: DWORD; dwDesiredAccess:
+ DWORD; lpsa: PSecurityAttributes): HDESK; stdcall;
+function CreateDialogIndirectParam(hInstance: HINST; const lpTemplate: TDlgTemplate;
+ hWndParent: HWND; lpDialogFunc: TFNDlgProc; dwInitParam: LPARAM): HWND; stdcall;
+function CreateDialogParam(hInstance: HINST; lpTemplateName: PKOLChar;
+ hWndParent: HWND; lpDialogFunc: TFNDlgProc; dwInitParam: LPARAM): HWND; stdcall;
+function CreateMDIWindow(lpClassName, lpWindowName: PKOLChar;
+ dwStyle: DWORD; X, Y, nWidth, nHeight: Integer;
+ hWndParent: HWND; hInstance: HINST; lParam: LPARAM): HWND; stdcall;
+function CreateWindowEx(dwExStyle: DWORD; lpClassName: PKOLChar;
+ lpWindowName: PKOLChar; dwStyle: DWORD; X, Y, nWidth, nHeight: Integer;
+ hWndParent: HWND; hMenu: HMENU; hInstance: HINST; lpParam: Pointer): HWND; stdcall;
+function CreateWindowStation(lpwinsta: PKOLChar; dwReserved, dwDesiredAccess: DWORD;
+ lpsa: PSecurityAttributes): HWINSTA; stdcall;
+function DefDlgProc(hDlg: HWND; Msg: UINT; wParam: WPARAM; lParam: LPARAM): LRESULT; stdcall;
+function DefFrameProc(hWnd, hWndMDIClient: HWND; uMsg: UINT; wParam: WPARAM; lParam: LPARAM): LRESULT; stdcall;
+function DefMDIChildProc(hWnd: HWND; uMsg: UINT; wParam: WPARAM; lParam: LPARAM): LRESULT; stdcall;
+function DefWindowProc(hWnd: HWND; Msg: UINT; wParam: WPARAM; lParam: LPARAM): LRESULT; stdcall;
+function DialogBoxIndirectParam(hInstance: HINST; const lpDialogTemplate: TDlgTemplate;
+ hWndParent: HWND; lpDialogFunc: TFNDlgProc; dwInitParam: LPARAM): Integer; stdcall;
+function DialogBoxParam(hInstance: HINST; lpTemplateName: PKOLChar;
+ hWndParent: HWND; lpDialogFunc: TFNDlgProc; dwInitParam: LPARAM): Integer; stdcall;
+function DispatchMessage(const lpMsg: TMsg): Longint; stdcall;
+function DlgDirList(hDlg: HWND; lpPathSpec: PKOLChar;
+ nIDListBox, nIDStaticPath: Integer; uFileType: UINT): Integer; stdcall;
+function DlgDirListComboBox(hDlg: HWND; lpPathSpec: PKOLChar;
+ nIDComboBox, nIDStaticPath: Integer; uFiletype: UINT): Integer; stdcall;
+function DlgDirSelectComboBoxEx(hDlg: HWND; lpString: PKOLChar;
+ nCount, nIDComboBox: Integer): BOOL; stdcall;
+function DlgDirSelectEx(hDlg: HWND; lpString: PKOLChar; nCount, nIDListBox: Integer): BOOL; stdcall;
+function DrawState(DC: HDC; Brush: HBRUSH; CBFunc: TFNDrawStateProc;
+ lData: LPARAM; wData: WPARAM; x, y, cx, cy: Integer; Flags: UINT): BOOL; stdcall;
+function DrawText(hDC: HDC; lpString: PKOLChar; nCount: Integer;
+ var lpRect: TRect; uFormat: UINT): Integer; stdcall;
+function DrawTextEx(DC: HDC; lpchText: PKOLChar; cchText: Integer; var p4: TRect;
+ dwDTFormat: UINT; DTParams: PDrawTextParams): Integer; stdcall;
+function EnumDesktops(hwinsta: HWINSTA; lpEnumFunc: TFNDeskTopEnumProc; lParam: LPARAM): BOOL; stdcall;
+function EnumDisplaySettings(lpszDeviceName: PKOLChar; iModeNum: DWORD;
+ var lpDevMode: TDeviceMode): BOOL; stdcall;
+{$IFDEF _D4orHigher}
+function EnumDisplayDevices(Unused: Pointer; iDevNum: DWORD;
+ var lpDisplayDevice: TDisplayDevice; dwFlags: DWORD): BOOL; stdcall;
+{$ENDIF}
+function EnumProps(hWnd: HWND; lpEnumFunc: TFNPropEnumProc): Integer; stdcall;
+function EnumPropsEx(hWnd: HWND; lpEnumFunc: TFNPropEnumProcEx; lParam: LPARAM): Integer; stdcall;
+function EnumWindowStations(lpEnumFunc: TFNWinStaEnumProc; lParam: LPARAM): BOOL; stdcall;
+function FindWindow(lpClassName, lpWindowName: PKOLChar): HWND; stdcall;
+function FindWindowEx(Parent, Child: HWND; ClassName, WindowName: PKOLChar): HWND; stdcall;
+{$IFDEF _D4orHigher}
+function GetAltTabInfo(hwnd: HWND; iItem: Integer; var pati: TAltTabInfo;
+ pszItemText: PKOLChar; cchItemText: UINT): BOOL; stdcall;
+{$ENDIF}
+function GetClassInfo(hInstance: HINST; lpClassName: PKOLChar;
+ var lpWndClass: TWndClass): BOOL; stdcall;
+function GetClassInfoEx(Instance: HINST; Classname: PKOLChar; var WndClass: TWndClassEx): BOOL; stdcall;
+function GetClassLong(hWnd: HWND; nIndex: Integer): DWORD; stdcall;
+function GetClassName(hWnd: HWND; lpClassName: PKOLChar; nMaxCount: Integer): Integer; stdcall;
+function GetClipboardFormatName(format: UINT; lpszFormatName: PKOLChar;
+ cchMaxCount: Integer): Integer; stdcall;
+function GetDlgItemText(hDlg: HWND; nIDDlgItem: Integer;
+ lpString: PKOLChar; nMaxCount: Integer): UINT; stdcall;
+function GetKeyNameText(lParam: Longint; lpString: PKOLChar; nSize: Integer): Integer; stdcall;
+function GetKeyboardLayoutName(pwszKLID: PKOLChar): BOOL; stdcall;
+function GetMenuItemInfo(p1: HMENU; p2: UINT; p3: BOOL; var p4: TMenuItemInfo): BOOL; stdcall;
+function GetMenuString(hMenu: HMENU; uIDItem: UINT; lpString: PKOLChar;
+ nMaxCount: Integer; uFlag: UINT): Integer; stdcall;
+function GetMessage(var lpMsg: TMsg; hWnd: HWND;
+ wMsgFilterMin, wMsgFilterMax: UINT): BOOL; stdcall;
+function GetProp(hWnd: HWND; lpString: PKOLChar): THandle; stdcall;
+function GetTabbedTextExtent(hDC: HDC; lpString: PKOLChar;
+ nCount, nTabPositions: Integer; var lpnTabStopPositions): DWORD; stdcall;
+function GetUserObjectInformation(hObj: THandle; nIndex: Integer; pvInfo: Pointer;
+ nLength: DWORD; var lpnLengthNeeded: DWORD): BOOL; stdcall;
+function GetWindowLong(hWnd: HWND; nIndex: Integer): Longint; stdcall;
+function GetWindowModuleFileName(hwnd: HWND; pszFileName: PKOLChar; cchFileNameMax: UINT): UINT; stdcall;
+function GetWindowText(hWnd: HWND; lpString: PKOLChar; nMaxCount: Integer): Integer; stdcall;
+function GetWindowTextLength(hWnd: HWND): Integer; stdcall;
+function GrayString(hDC: HDC; hBrush: HBRUSH; lpOutputFunc: TFNGrayStringProc;
+ lpData: LPARAM; nCount, X, Y, nWidth, nHeight: Integer): BOOL; stdcall;
+function InsertMenu(hMenu: HMENU; uPosition, uFlags, uIDNewItem: UINT;
+ lpNewItem: PKOLChar): BOOL; stdcall;
+function InsertMenuItem(p1: HMENU; p2: UINT; p3: BOOL; const p4: TMenuItemInfo): BOOL; stdcall;
+function IsCharAlpha(ch: KOLChar): BOOL; stdcall;
+function IsCharAlphaNumeric(ch: KOLChar): BOOL; stdcall;
+function IsCharLower(ch: KOLChar): BOOL; stdcall;
+function IsCharUpper(ch: KOLChar): BOOL; stdcall;
+function IsDialogMessage(hDlg: HWND; var lpMsg: TMsg): BOOL; stdcall;
+function LoadAccelerators(hInstance: HINST; lpTableName: PKOLChar): HACCEL; stdcall;
+function LoadBitmap(hInstance: HINST; lpBitmapName: PKOLChar): HBITMAP; stdcall;
+function LoadCursor(hInstance: HINST; lpCursorName: PKOLChar): HCURSOR; stdcall;
+function LoadCursorFromFile(lpFileName: PKOLChar): HCURSOR; stdcall;
+function LoadIcon(hInstance: HINST; lpIconName: PKOLChar): HICON; stdcall;
+function LoadImage(hInst: HINST; ImageName: PKOLChar; ImageType: UINT; X, Y: Integer; Flags: UINT): THandle; stdcall;
+function LoadKeyboardLayout(pwszKLID: PKOLChar; Flags: UINT): HKL; stdcall;
+function LoadMenu(hInstance: HINST; lpMenuName: PKOLChar): HMENU; stdcall;
+function LoadMenuIndirect(lpMenuTemplate: Pointer): HMENU; stdcall;
+function LoadString(hInstance: HINST; uID: UINT; lpBuffer: PKOLChar; nBufferMax: Integer): Integer; stdcall;
+function MapVirtualKey(uCode, uMapType: UINT): UINT; stdcall;
+function MapVirtualKeyEx(uCode, uMapType: UINT; dwhkl: HKL): UINT; stdcall;
+function MessageBox(hWnd: HWND; lpText, lpCaption: PKOLChar; uType: UINT): Integer; stdcall;
+function MessageBoxEx(hWnd: HWND; lpText, lpCaption: PKOLChar;
+ uType: UINT; wLanguageId: Word): Integer; stdcall;
+function MessageBoxIndirect(const MsgBoxParams: TMsgBoxParams): BOOL; stdcall;
+function ModifyMenu(hMnu: HMENU; uPosition, uFlags, uIDNewItem: UINT;
+ lpNewItem: PKOLChar): BOOL; stdcall;
+function OemToAnsi(const lpszSrc: LPCSTR; lpszDst: LPSTR): BOOL; stdcall;
+function OemToAnsiBuff(lpszSrc: LPCSTR; lpszDst: LPSTR; cchDstLength: DWORD): BOOL; stdcall;
+function OemToChar(lpszSrc: PKOLChar; lpszDst: PKOLChar): BOOL; stdcall;
+function OemToCharBuff(lpszSrc: PKOLChar; lpszDst: PKOLChar; cchDstLength: DWORD): BOOL; stdcall;
+function OpenDesktop(lpszDesktop: PKOLChar; dwFlags: DWORD; fInherit: BOOL;
+ dwDesiredAccess: DWORD): HDESK; stdcall;
+function OpenWindowStation(lpszWinSta: PKOLChar; fInherit: BOOL;
+ dwDesiredAccess: DWORD): HWINSTA; stdcall;
+function PeekMessage(var lpMsg: TMsg; hWnd: HWND;
+ wMsgFilterMin, wMsgFilterMax, wRemoveMsg: UINT): BOOL; stdcall;
+function PostMessage(hWnd: HWND; Msg: UINT; wParam: WPARAM; lParam: LPARAM): BOOL; stdcall;
+function PostThreadMessage(idThread: DWORD; Msg: UINT; wParam: WPARAM; lParam: LPARAM): BOOL; stdcall;
+function RealGetWindowClass(hwnd: HWND; pszType: PKOLChar; cchType: UINT): UINT; stdcall;
+function RegisterClass(const lpWndClass: TWndClass): ATOM; stdcall;
+function RegisterClassEx(const WndClass: TWndClassEx): ATOM; stdcall;
+function RegisterClipboardFormat(lpszFormat: PKOLChar): UINT; stdcall;
+{$IFDEF _D4orHigher}
+function RegisterDeviceNotification(hRecipient: THandle; NotificationFilter: Pointer; Flags: DWORD): HDEVNOTIFY; stdcall;
+{$ENDIF}
+function RegisterWindowMessage(lpString: PKOLChar): UINT; stdcall;
+function RemoveProp(hWnd: HWND; lpString: PKOLChar): THandle; stdcall;
+function SendDlgItemMessage(hDlg: HWND; nIDDlgItem: Integer;
+ Msg: UINT; wParam: WPARAM; lParam: LPARAM): Longint; stdcall;
+function SendMessage(hWnd: HWND; Msg: UINT; wParam: WPARAM; lParam: LPARAM): LRESULT; stdcall;
+function SendMessageCallback(hWnd: HWND; Msg: UINT; wParam: WPARAM;
+ lParam: LPARAM; lpResultCallBack: TFNSendAsyncProc; dwData: DWORD): BOOL; stdcall;
+function SendMessageTimeout(hWnd: HWND; Msg: UINT; wParam: WPARAM;
+ lParam: LPARAM; fuFlags, uTimeout: UINT; var lpdwResult: DWORD): LRESULT; stdcall;
+function SendNotifyMessage(hWnd: HWND; Msg: UINT; wParam: WPARAM;
+ lParam: LPARAM): BOOL; stdcall;
+function SetClassLong(hWnd: HWND; nIndex: Integer; dwNewLong: Longint): DWORD; stdcall;
+function SetDlgItemText(hDlg: HWND; nIDDlgItem: Integer; lpString: PKOLChar): BOOL; stdcall;
+function SetMenuItemInfo(p1: HMENU; p2: UINT; p3: BOOL; const p4: TMenuItemInfo): BOOL; stdcall;
+function SetProp(hWnd: HWND; lpString: PKOLChar; hData: THandle): BOOL; stdcall;
+function SetUserObjectInformation(hObj: THandle; nIndex: Integer;
+ pvInfo: Pointer; nLength: DWORD): BOOL; stdcall;
+function SetWindowLong(hWnd: HWND; nIndex: Integer; dwNewLong: Longint): Longint; stdcall;
+function SetWindowText(hWnd: HWND; lpString: PKOLChar): BOOL; stdcall;
+function SetWindowsHook(nFilterType: Integer; pfnFilterProc: TFNHookProc): HHOOK; stdcall;
+function SetWindowsHookEx(idHook: Integer; lpfn: TFNHookProc; hmod: HINST; dwThreadId: DWORD): HHOOK; stdcall;
+function SystemParametersInfo(uiAction, uiParam: UINT;
+ pvParam: Pointer; fWinIni: UINT): BOOL; stdcall;
+function TabbedTextOut(hDC: HDC; X, Y: Integer; lpString: PKOLChar; nCount, nTabPositions: Integer;
+ var lpnTabStopPositions; nTabOrigin: Integer): Longint; stdcall;
+function TranslateAccelerator(hWnd: HWND; hAccTable: HACCEL; var lpMsg: TMsg): Integer; stdcall;
+function UnregisterClass(lpClassName: PKOLChar; hInstance: HINST): BOOL; stdcall;
+function VkKeyScan(ch: KOLChar): SHORT; stdcall;
+function VkKeyScanEx(ch: KOLChar; dwhkl: HKL): SHORT; stdcall;
+function WinHelp(hWndMain: HWND; lpszHelp: PKOLChar; uCommand: UINT; dwData: DWORD): BOOL; stdcall;
+function wsprintf(Output: PKOLChar; Format: PKOLChar): Integer; stdcall;
+function wvsprintf(Output: PKOLChar; Format: PKOLChar; arglist: va_list): Integer; stdcall;
+function CreateMutex(lpMutexAttributes: PSecurityAttributes; bInitialOwner: BOOL; lpName: PWideChar): THandle;
+
+const
+ IDC_ARROW = MakeIntResource(32512);
+ IDC_IBEAM = MakeIntResource(32513);
+ IDC_WAIT = MakeIntResource(32514);
+ IDC_CROSS = MakeIntResource(32515);
+ IDC_UPARROW = MakeIntResource(32516);
+ IDC_SIZE = MakeIntResource(32640);
+ IDC_ICON = MakeIntResource(32641);
+ IDC_SIZENWSE = MakeIntResource(32642);
+ IDC_SIZENESW = MakeIntResource(32643);
+ IDC_SIZEWE = MakeIntResource(32644);
+ IDC_SIZENS = MakeIntResource(32645);
+ IDC_SIZEALL = MakeIntResource(32646);
+ IDC_NO = MakeIntResource(32648);
+ IDC_HAND = MakeIntResource(32649);
+ IDC_APPSTARTING = MakeIntResource(32650);
+ IDC_HELP = MakeIntResource(32651);
+ RT_CURSOR = PKOLChar(1);
+ RT_BITMAP = PKOLChar(2);
+ RT_ICON = PKOLChar(3);
+ RT_MENU = PKOLChar(4);
+ RT_DIALOG = PKOLChar(5);
+ RT_STRING = PKOLChar(6);
+ RT_FONTDIR = PKOLChar(7);
+ RT_FONT = PKOLChar(8);
+ RT_ACCELERATOR = PKOLChar(9);
+ RT_RCDATA = PKOLChar(10);
+ RT_MESSAGETABLE = PKOLChar(11);
+ RT_VERSION = PKOLChar(16);
+ RT_DLGINCLUDE = PKOLChar(17);
+ RT_PLUGPLAY = PKOLChar(19);
+ RT_VXD = PKOLChar(20);
+ RT_ANICURSOR = PKOLChar(21);
+ RT_ANIICON = PKOLChar(22);
+
+{$ENDIF interface_part} ////////////////////////////////////////////////////////
+
+{$IFDEF implementation_part} ///////////////////////////////////////////////////
+function AbortSystemShutdown; external advapi32 name 'AbortSystemShutdownW';
+function AccessCheckAndAuditAlarm; external advapi32 name 'AccessCheckAndAuditAlarmW';
+{$IFDEF _D4orHigher}
+function AccessCheckByTypeAndAuditAlarm; external advapi32 name 'AccessCheckByTypeAndAuditAlarmW';
+function AccessCheckByTypeResultListAndAuditAlarm; external advapi32 name 'AccessCheckByTypeResultListAndAuditAlarmW';
+{$ENDIF}
+function BackupEventLog; external advapi32 name 'BackupEventLogW';
+function ClearEventLog; external advapi32 name 'ClearEventLogW';
+function CreateProcessAsUser; external advapi32 name 'CreateProcessAsUserW';
+function GetCurrentHwProfile; external advapi32 name 'GetCurrentHwProfileW';
+function GetFileSecurity; external advapi32 name 'GetFileSecurityW';
+function GetUserName; external advapi32 name 'GetUserNameW';
+function InitiateSystemShutdown; external advapi32 name 'InitiateSystemShutdownW';
+function LogonUser; external advapi32 name 'LogonUserW';
+function LookupAccountName; external advapi32 name 'LookupAccountNameW';
+function LookupAccountSid; external advapi32 name 'LookupAccountSidW';
+function LookupPrivilegeDisplayName; external advapi32 name 'LookupPrivilegeDisplayNameW';
+function LookupPrivilegeName; external advapi32 name 'LookupPrivilegeNameW';
+function LookupPrivilegeValue; external advapi32 name 'LookupPrivilegeValueW';
+function ObjectCloseAuditAlarm; external advapi32 name 'ObjectCloseAuditAlarmW';
+function ObjectDeleteAuditAlarm; external advapi32 name 'ObjectDeleteAuditAlarmW';
+function ObjectOpenAuditAlarm; external advapi32 name 'ObjectOpenAuditAlarmW';
+function ObjectPrivilegeAuditAlarm; external advapi32 name 'ObjectPrivilegeAuditAlarmW';
+function OpenBackupEventLog; external advapi32 name 'OpenBackupEventLogW';
+function OpenEventLog; external advapi32 name 'OpenEventLogW';
+function PrivilegedServiceAuditAlarm; external advapi32 name 'PrivilegedServiceAuditAlarmW';
+function ReadEventLog; external advapi32 name 'ReadEventLogW';
+function RegConnectRegistry; external advapi32 name 'RegConnectRegistryW';
+function RegCreateKey; external advapi32 name 'RegCreateKeyW';
+function RegCreateKeyEx; external advapi32 name 'RegCreateKeyExW';
+function RegDeleteKey; external advapi32 name 'RegDeleteKeyW';
+function RegDeleteValue; external advapi32 name 'RegDeleteValueW';
+function RegEnumKeyEx; external advapi32 name 'RegEnumKeyExW';
+function RegEnumKey; external advapi32 name 'RegEnumKeyW';
+function RegEnumValue; external advapi32 name 'RegEnumValueW';
+function RegLoadKey; external advapi32 name 'RegLoadKeyW';
+function RegOpenKey; external advapi32 name 'RegOpenKeyW';
+function RegOpenKeyEx; external advapi32 name 'RegOpenKeyExW';
+function RegQueryInfoKey; external advapi32 name 'RegQueryInfoKeyW';
+function RegQueryMultipleValues; external advapi32 name 'RegQueryMultipleValuesW';
+function RegQueryValue; external advapi32 name 'RegQueryValueW';
+function RegQueryValueEx; external advapi32 name 'RegQueryValueExW';
+function RegReplaceKey; external advapi32 name 'RegReplaceKeyW';
+function RegRestoreKey; external advapi32 name 'RegRestoreKeyW';
+function RegSaveKey; external advapi32 name 'RegSaveKeyW';
+function RegSetValue; external advapi32 name 'RegSetValueW';
+function RegSetValueEx; external advapi32 name 'RegSetValueExW';
+function RegUnLoadKey; external advapi32 name 'RegUnLoadKeyW';
+function RegisterEventSource; external advapi32 name 'RegisterEventSourceW';
+function ReportEvent; external advapi32 name 'ReportEventW';
+function SetFileSecurity; external advapi32 name 'SetFileSecurityW';
+function AddAtom; external kernel32 name 'AddAtomW';
+function BeginUpdateResource; external kernel32 name 'BeginUpdateResourceW';
+function BuildCommDCB; external kernel32 name 'BuildCommDCBW';
+function BuildCommDCBAndTimeouts; external kernel32 name 'BuildCommDCBAndTimeoutsW';
+function CallNamedPipe; external kernel32 name 'CallNamedPipeW';
+function CommConfigDialog; external kernel32 name 'CommConfigDialogW';
+function CompareString; external kernel32 name 'CompareStringW';
+function CopyFile; external kernel32 name 'CopyFileW';
+function CopyFileEx; external kernel32 name 'CopyFileExW';
+function CreateDirectory; external kernel32 name 'CreateDirectoryW';
+function CreateDirectoryEx; external kernel32 name 'CreateDirectoryExW';
+function CreateEvent; external kernel32 name 'CreateEventW';
+function CreateFile; external kernel32 name 'CreateFileW';
+function CreateFileMapping; external kernel32 name 'CreateFileMappingW';
+function CreateHardLink; external kernel32 name 'CreateHardLinkW';
+function CreateMailslot; external kernel32 name 'CreateMailslotW';
+function CreateNamedPipe; external kernel32 name 'CreateNamedPipeW';
+function CreateProcess; external kernel32 name 'CreateProcessW';
+function CreateSemaphore; external kernel32 name 'CreateSemaphoreW';
+function CreateWaitableTimer; external kernel32 name 'CreateWaitableTimerW';
+function DefineDosDevice; external kernel32 name 'DefineDosDeviceW';
+function DeleteFile; external kernel32 name 'DeleteFileW';
+function EndUpdateResource; external kernel32 name 'EndUpdateResourceW';
+function EnumCalendarInfo; external kernel32 name 'EnumCalendarInfoW';
+function EnumDateFormats; external kernel32 name 'EnumDateFormatsW';
+function EnumResourceLanguages; external kernel32 name 'EnumResourceLanguagesW';
+function EnumResourceNames; external kernel32 name 'EnumResourceNamesW';
+function EnumResourceTypes; external kernel32 name 'EnumResourceTypesW';
+function EnumSystemCodePages; external kernel32 name 'EnumSystemCodePagesW';
+function EnumSystemLocales; external kernel32 name 'EnumSystemLocalesW';
+function EnumTimeFormats; external kernel32 name 'EnumTimeFormatsW';
+function ExpandEnvironmentStrings; external kernel32 name 'ExpandEnvironmentStringsW';
+procedure FatalAppExit; external kernel32 name 'FatalAppExitW';
+function FillConsoleOutputCharacter; external kernel32 name 'FillConsoleOutputCharacterW';
+function FindAtom; external kernel32 name 'FindAtomW';
+function FindFirstChangeNotification; external kernel32 name 'FindFirstChangeNotificationW';
+function FindFirstFile; external kernel32 name 'FindFirstFileW';
+function FindFirstFileEx; external kernel32 name 'FindFirstFileExW';
+function FindNextFile; external kernel32 name 'FindNextFileW';
+function FindResource; external kernel32 name 'FindResourceW';
+function FindResourceEx; external kernel32 name 'FindResourceExW';
+function FoldString; external kernel32 name 'FoldStringW';
+function FormatMessage; external kernel32 name 'FormatMessageW';
+function FreeEnvironmentStrings; external kernel32 name 'FreeEnvironmentStringsW';
+function GetAtomName; external kernel32 name 'GetAtomNameW';
+function GetBinaryType; external kernel32 name 'GetBinaryTypeW';
+function GetCommandLine; external kernel32 name 'GetCommandLineW';
+function GetCompressedFileSize; external kernel32 name 'GetCompressedFileSizeW';
+function GetComputerName; external kernel32 name 'GetComputerNameW';
+function GetConsoleTitle; external kernel32 name 'GetConsoleTitleW';
+function GetCurrencyFormat; external kernel32 name 'GetCurrencyFormatW';
+function GetCurrentDirectory; external kernel32 name 'GetCurrentDirectoryW';
+function GetDateFormat; external kernel32 name 'GetDateFormatW';
+function GetDefaultCommConfig; external kernel32 name 'GetDefaultCommConfigW';
+function GetDiskFreeSpace; external kernel32 name 'GetDiskFreeSpaceW';
+function GetDiskFreeSpaceEx; external kernel32 name 'GetDiskFreeSpaceExW';
+function GetDriveType; external kernel32 name 'GetDriveTypeW';
+function GetEnvironmentStrings; external kernel32 name 'GetEnvironmentStringsW';
+function GetEnvironmentVariable(lpName: PKOLChar; lpBuffer: PKOLChar;
+ nSize: DWORD): DWORD; external kernel32 name 'GetEnvironmentVariableW';
+function GetFileAttributes; external kernel32 name 'GetFileAttributesW';
+function GetFileAttributesEx; external kernel32 name 'GetFileAttributesExW';
+function GetFullPathName; external kernel32 name 'GetFullPathNameW';
+function GetLocaleInfo; external kernel32 name 'GetLocaleInfoW';
+function GetLogicalDriveStrings; external kernel32 name 'GetLogicalDriveStringsW';
+function GetModuleFileName; external kernel32 name 'GetModuleFileNameW';
+function GetModuleHandle; external kernel32 name 'GetModuleHandleW';
+function GetNamedPipeHandleState; external kernel32 name 'GetNamedPipeHandleStateW';
+function GetNumberFormat; external kernel32 name 'GetNumberFormatW';
+function GetPrivateProfileInt; external kernel32 name 'GetPrivateProfileIntW';
+function GetPrivateProfileSection; external kernel32 name 'GetPrivateProfileSectionW';
+function GetPrivateProfileSectionNames; external kernel32 name 'GetPrivateProfileSectionNamesW';
+function GetPrivateProfileString; external kernel32 name 'GetPrivateProfileStringW';
+function GetProfileInt; external kernel32 name 'GetProfileIntW';
+function GetProfileSection; external kernel32 name 'GetProfileSectionW';
+function GetProfileString; external kernel32 name 'GetProfileStringW';
+function GetShortPathName; external kernel32 name 'GetShortPathNameW';
+procedure GetStartupInfo; external kernel32 name 'GetStartupInfoW';
+function GetStringTypeEx; external kernel32 name 'GetStringTypeExW';
+function GetSystemDirectory; external kernel32 name 'GetSystemDirectoryW';
+function GetTempFileName; external kernel32 name 'GetTempFileNameW';
+function GetTempPath; external kernel32 name 'GetTempPathW';
+function GetTimeFormat; external kernel32 name 'GetTimeFormatW';
+function GetVersionEx; external kernel32 name 'GetVersionExW';
+function GetVolumeInformation; external kernel32 name 'GetVolumeInformationW';
+function GetWindowsDirectory; external kernel32 name 'GetWindowsDirectoryW';
+function GlobalAddAtom; external kernel32 name 'GlobalAddAtomW';
+function GlobalFindAtom; external kernel32 name 'GlobalFindAtomW';
+function GlobalGetAtomName; external kernel32 name 'GlobalGetAtomNameW';
+function IsBadStringPtr; external kernel32 name 'IsBadStringPtrW';
+function LCMapString; external kernel32 name 'LCMapStringW';
+function LoadLibrary; external kernel32 name 'LoadLibraryW';
+function LoadLibraryEx; external kernel32 name 'LoadLibraryExW';
+function MoveFile; external kernel32 name 'MoveFileW';
+function MoveFileEx; external kernel32 name 'MoveFileExW';
+function MoveFileWithProgress; external kernel32 name 'MoveFileWithProgressW';
+function OpenEvent; external kernel32 name 'OpenEventW';
+function OpenFileMapping; external kernel32 name 'OpenFileMappingW';
+function OpenMutex; external kernel32 name 'OpenMutexW';
+function OpenSemaphore; external kernel32 name 'OpenSemaphoreW';
+function OpenWaitableTimer; external kernel32 name 'OpenWaitableTimerW';
+procedure OutputDebugString; external kernel32 name 'OutputDebugStringW';
+function PeekConsoleInput; external kernel32 name 'PeekConsoleInputW';
+function QueryDosDevice; external kernel32 name 'QueryDosDeviceW';
+{$IFDEF _D4orHigher}
+function QueryRecoveryAgents; external kernel32 name 'QueryRecoveryAgentsW';
+{$ENDIF}
+function ReadConsole; external kernel32 name 'ReadConsoleW';
+function ReadConsoleInput; external kernel32 name 'ReadConsoleInputW';
+function ReadConsoleOutput; external kernel32 name 'ReadConsoleOutputW';
+function ReadConsoleOutputCharacter; external kernel32 name 'ReadConsoleOutputCharacterW';
+function RemoveDirectory; external kernel32 name 'RemoveDirectoryW';
+function ScrollConsoleScreenBuffer; external kernel32 name 'ScrollConsoleScreenBufferW';
+function SearchPath; external kernel32 name 'SearchPathW';
+function SetComputerName; external kernel32 name 'SetComputerNameW';
+function SetConsoleTitle; external kernel32 name 'SetConsoleTitleW';
+function SetCurrentDirectory; external kernel32 name 'SetCurrentDirectoryW';
+function SetDefaultCommConfig; external kernel32 name 'SetDefaultCommConfigW';
+function SetEnvironmentVariable; external kernel32 name 'SetEnvironmentVariableW';
+function SetFileAttributes; external kernel32 name 'SetFileAttributesW';
+function SetLocaleInfo; external kernel32 name 'SetLocaleInfoW';
+function SetVolumeLabel; external kernel32 name 'SetVolumeLabelW';
+function UpdateResource; external kernel32 name 'UpdateResourceW';
+function VerLanguageName; external kernel32 name 'VerLanguageNameW';
+function WaitNamedPipe; external kernel32 name 'WaitNamedPipeW';
+function WriteConsole; external kernel32 name 'WriteConsoleW';
+function WriteConsoleInput; external kernel32 name 'WriteConsoleInputW';
+function WriteConsoleOutput; external kernel32 name 'WriteConsoleOutputW';
+function WriteConsoleOutputCharacter; external kernel32 name 'WriteConsoleOutputCharacterW';
+function WritePrivateProfileSection; external kernel32 name 'WritePrivateProfileSectionW';
+function WritePrivateProfileString; external kernel32 name 'WritePrivateProfileStringW';
+function WriteProfileSection; external kernel32 name 'WriteProfileSectionW';
+function WriteProfileString; external kernel32 name 'WriteProfileStringW';
+function lstrcat; external kernel32 name 'lstrcatW';
+function lstrcmp; external kernel32 name 'lstrcmpW';
+function lstrcmpi; external kernel32 name 'lstrcmpiW';
+function lstrcpy; external kernel32 name 'lstrcpyW';
+function lstrcpyn; external kernel32 name 'lstrcpynW';
+function lstrlen; external kernel32 name 'lstrlenW';
+function MultinetGetConnectionPerformance; external mpr name 'MultinetGetConnectionPerformanceW';
+function WNetAddConnection2; external mpr name 'WNetAddConnection2W';
+function WNetAddConnection3; external mpr name 'WNetAddConnection3W';
+function WNetAddConnection; external mpr name 'WNetAddConnectionW';
+function WNetCancelConnection2; external mpr name 'WNetCancelConnection2W';
+function WNetCancelConnection; external mpr name 'WNetCancelConnectionW';
+function WNetConnectionDialog1; external mpr name 'WNetConnectionDialog1W';
+function WNetDisconnectDialog1; external mpr name 'WNetDisconnectDialog1W';
+function WNetEnumResource; external mpr name 'WNetEnumResourceW';
+function WNetGetConnection; external mpr name 'WNetGetConnectionW';
+function WNetGetLastError; external mpr name 'WNetGetLastErrorW';
+function WNetGetNetworkInformation; external mpr name 'WNetGetNetworkInformationW';
+function WNetGetProviderName; external mpr name 'WNetGetProviderNameW';
+function WNetGetResourceParent; external mpr name 'WNetGetResourceParentW';
+function WNetGetUniversalName; external mpr name 'WNetGetUniversalNameW';
+function WNetGetUser; external mpr name 'WNetGetUserW';
+function WNetOpenEnum; external mpr name 'WNetOpenEnumW';
+function WNetSetConnection; external mpr name 'WNetSetConnectionW';
+function WNetUseConnection; external mpr name 'WNetUseConnectionW';
+function GetFileVersionInfo; external version name 'GetFileVersionInfoW';
+function GetFileVersionInfoSize; external version name 'GetFileVersionInfoSizeW';
+function VerFindFile; external version name 'VerFindFileW';
+function VerInstallFile; external version name 'VerInstallFileW';
+function VerQueryValue; external version name 'VerQueryValueW';
+function GetPrivateProfileStruct; external kernel32 name 'GetPrivateProfileStructW';
+function WritePrivateProfileStruct; external kernel32 name 'WritePrivateProfileStructW';
+function AddFontResource; external gdi32 name 'AddFontResourceW';
+{$IFDEF _D4orHigher}
+function AddFontResourceEx; external gdi32 name 'AddFontResourceExW';
+{$ENDIF}
+function CopyEnhMetaFile; external gdi32 name 'CopyEnhMetaFileW';
+function CopyMetaFile; external gdi32 name 'CopyMetaFileW';
+function CreateColorSpace; external gdi32 name 'CreateColorSpaceW';
+function CreateDC; external gdi32 name 'CreateDCW';
+function CreateEnhMetaFile; external gdi32 name 'CreateEnhMetaFileW';
+function CreateFont; external gdi32 name 'CreateFontW';
+function CreateFontIndirect; external gdi32 name 'CreateFontIndirectW';
+{$IFDEF _D4orHigher}
+function CreateFontIndirectEx; external gdi32 name 'CreateFontIndirectExW';
+{$ENDIF}
+function CreateIC; external gdi32 name 'CreateICW';
+function CreateMetaFile; external gdi32 name 'CreateMetaFileW';
+function CreateScalableFontResource; external gdi32 name 'CreateScalableFontResourceW';
+function DeviceCapabilities; external gdi32 name 'DeviceCapabilitiesW';
+function EnumFontFamilies; external gdi32 name 'EnumFontFamiliesW';
+function EnumFontFamiliesEx; external gdi32 name 'EnumFontFamiliesExW';
+function EnumFonts; external gdi32 name 'EnumFontsW';
+function EnumICMProfiles; external gdi32 name 'EnumICMProfilesW';
+function ExtTextOut; external gdi32 name 'ExtTextOutW';
+function GetCharABCWidths; external gdi32 name 'GetCharABCWidthsW';
+function GetCharABCWidthsFloat; external gdi32 name 'GetCharABCWidthsFloatW';
+function GetCharWidth32; external gdi32 name 'GetCharWidth32W';
+function GetCharWidth; external gdi32 name 'GetCharWidthW';
+function GetCharWidthFloat; external gdi32 name 'GetCharWidthFloatW';
+function GetCharacterPlacement; external gdi32 name 'GetCharacterPlacementW';
+function GetEnhMetaFile; external gdi32 name 'GetEnhMetaFileW';
+function GetEnhMetaFileDescription; external gdi32 name 'GetEnhMetaFileDescriptionW';
+function GetGlyphIndices; external gdi32 name 'GetGlyphIndicesW';
+function GetGlyphOutline; external gdi32 name 'GetGlyphOutlineW';
+function GetICMProfile; external gdi32 name 'GetICMProfileW';
+function GetLogColorSpace; external gdi32 name 'GetLogColorSpaceW';
+function GetMetaFile; external gdi32 name 'GetMetaFileW';
+function GetObject; external gdi32 name 'GetObjectW';
+function GetOutlineTextMetrics; external gdi32 name 'GetOutlineTextMetricsW';
+function GetTextExtentExPoint; external gdi32 name 'GetTextExtentExPointW';
+function GetTextExtentPoint32; external gdi32 name 'GetTextExtentPoint32W';
+function GetTextExtentPoint; external gdi32 name 'GetTextExtentPointW';
+function GetTextFace; external gdi32 name 'GetTextFaceW';
+function GetTextMetrics; external gdi32 name 'GetTextMetricsW';
+function PolyTextOut; external gdi32 name 'PolyTextOutW';
+function RemoveFontResource; external gdi32 name 'RemoveFontResourceW';
+{$IFDEF _D4orHigher}
+function RemoveFontResourceEx; external gdi32 name 'RemoveFontResourceExW';
+{$ENDIF}
+function ResetDC; external gdi32 name 'ResetDCW';
+function SetICMProfile; external gdi32 name 'SetICMProfileW';
+function StartDoc; external gdi32 name 'StartDocW';
+function TextOut; external gdi32 name 'TextOutW';
+function UpdateICMRegKey; external gdi32 name 'UpdateICMRegKeyW';
+function wglUseFontBitmaps; external opengl32 name 'wglUseFontBitmapsW';
+function wglUseFontOutlines; external opengl32 name 'wglUseFontOutlinesW';
+function AnsiToOem; external user32 name 'CharToOemW';
+function AnsiToOemBuff; external user32 name 'CharToOemBuffW';
+function AnsiUpper; external user32 name 'CharUpperW';
+function AnsiUpperBuff; external user32 name 'CharUpperBuffW';
+function AnsiLower; external user32 name 'CharLowerW';
+function AnsiLowerBuff; external user32 name 'CharLowerBuffW';
+function AnsiNext; external user32 name 'CharNextW';
+function AnsiPrev; external user32 name 'CharPrevW';
+function AppendMenu; external user32 name 'AppendMenuW';
+//function BroadcastSystemMessage; external user32 name 'BroadcastSystemMessageW';
+//function BroadcastSystemMessageW; external user32 name 'BroadcastSystemMessageW';
+function CallMsgFilter; external user32 name 'CallMsgFilterW';
+function CallWindowProc; external user32 name 'CallWindowProcW';
+function ChangeDisplaySettings; external user32 name 'ChangeDisplaySettingsW';
+function ChangeDisplaySettingsEx; external user32 name 'ChangeDisplaySettingsExW';
+function ChangeMenu; external user32 name 'ChangeMenuW';
+function CharLower; external user32 name 'CharLowerW';
+function CharLowerBuff; external user32 name 'CharLowerBuffW';
+function CharNext; external user32 name 'CharNextW';
+function CharNextEx; external user32 name 'CharNextExW';
+function CharPrev; external user32 name 'CharPrevW';
+function CharPrevEx; external user32 name 'CharPrevExW';
+function CharToOem; external user32 name 'CharToOemW';
+function CharToOemBuff; external user32 name 'CharToOemBuffW';
+function CharUpper; external user32 name 'CharUpperW';
+function CharUpperBuff; external user32 name 'CharUpperBuffW';
+function CopyAcceleratorTable; external user32 name 'CopyAcceleratorTableW';
+function CreateAcceleratorTable; external user32 name 'CreateAcceleratorTableW';
+function CreateDesktop; external user32 name 'CreateDesktopW';
+function CreateDialogIndirectParam; external user32 name 'CreateDialogIndirectParamW';
+function CreateDialogParam; external user32 name 'CreateDialogParamW';
+function CreateMDIWindow; external user32 name 'CreateMDIWindowW';
+function CreateWindowEx; external user32 name 'CreateWindowExW';
+function CreateWindowStation; external user32 name 'CreateWindowStationW';
+function DefDlgProc; external user32 name 'DefDlgProcW';
+function DefFrameProc; external user32 name 'DefFrameProcW';
+function DefMDIChildProc; external user32 name 'DefMDIChildProcW';
+function DefWindowProc; external user32 name 'DefWindowProcW';
+function DialogBoxIndirectParam; external user32 name 'DialogBoxIndirectParamW';
+function DialogBoxParam; external user32 name 'DialogBoxParamW';
+function DispatchMessage; external user32 name 'DispatchMessageW';
+function DlgDirList; external user32 name 'DlgDirListW';
+function DlgDirListComboBox; external user32 name 'DlgDirListComboBoxW';
+function DlgDirSelectComboBoxEx; external user32 name 'DlgDirSelectComboBoxExW';
+function DlgDirSelectEx; external user32 name 'DlgDirSelectExW';
+function DrawState; external user32 name 'DrawStateW';
+function DrawText; external user32 name 'DrawTextW';
+function DrawTextEx; external user32 name 'DrawTextExW';
+function EnumDesktops; external user32 name 'EnumDesktopsW';
+function EnumDisplaySettings; external user32 name 'EnumDisplaySettingsW';
+{$IFDEF _D4orHigher}
+function EnumDisplayDevices; external user32 name 'EnumDisplayDevicesW';
+{$ENDIF}
+function EnumProps; external user32 name 'EnumPropsW';
+function EnumPropsEx; external user32 name 'EnumPropsExW';
+function EnumWindowStations; external user32 name 'EnumWindowStationsW';
+function FindWindow; external user32 name 'FindWindowW';
+function FindWindowEx; external user32 name 'FindWindowExW';
+{$IFDEF _D4orHigher}
+function GetAltTabInfo; external user32 name 'GetAltTabInfoW';
+{$ENDIF}
+function GetClassInfo; external user32 name 'GetClassInfoW';
+function GetClassInfoEx; external user32 name 'GetClassInfoExW';
+function GetClassLong; external user32 name 'GetClassLongW';
+function GetClassName; external user32 name 'GetClassNameW';
+function GetClipboardFormatName; external user32 name 'GetClipboardFormatNameW';
+function GetDlgItemText; external user32 name 'GetDlgItemTextW';
+function GetKeyNameText; external user32 name 'GetKeyNameTextW';
+function GetKeyboardLayoutName; external user32 name 'GetKeyboardLayoutNameW';
+function GetMenuItemInfo; external user32 name 'GetMenuItemInfoW';
+function GetMenuString; external user32 name 'GetMenuStringW';
+function GetMessage; external user32 name 'GetMessageW';
+function GetProp; external user32 name 'GetPropW';
+function GetTabbedTextExtent; external user32 name 'GetTabbedTextExtentW';
+function GetUserObjectInformation; external user32 name 'GetUserObjectInformationW';
+function GetWindowLong; external user32 name 'GetWindowLongW';
+function GetWindowModuleFileName; external user32 name 'GetWindowModuleFileNameW';
+function GetWindowText; external user32 name 'GetWindowTextW';
+function GetWindowTextLength; external user32 name 'GetWindowTextLengthW';
+function GrayString; external user32 name 'GrayStringW';
+function InsertMenu; external user32 name 'InsertMenuW';
+function InsertMenuItem; external user32 name 'InsertMenuItemW';
+function IsCharAlpha; external user32 name 'IsCharAlphaW';
+function IsCharAlphaNumeric; external user32 name 'IsCharAlphaNumericW';
+function IsCharLower; external user32 name 'IsCharLowerW';
+function IsCharUpper; external user32 name 'IsCharUpperW';
+function IsDialogMessage; external user32 name 'IsDialogMessageW';
+function LoadAccelerators; external user32 name 'LoadAcceleratorsW';
+function LoadBitmap; external user32 name 'LoadBitmapW';
+function LoadCursor; external user32 name 'LoadCursorW';
+function LoadCursorFromFile; external user32 name 'LoadCursorFromFileW';
+function LoadIcon; external user32 name 'LoadIconW';
+function LoadImage; external user32 name 'LoadImageW';
+function LoadKeyboardLayout; external user32 name 'LoadKeyboardLayoutW';
+function LoadMenu; external user32 name 'LoadMenuW';
+function LoadMenuIndirect; external user32 name 'LoadMenuIndirectW';
+function LoadString; external user32 name 'LoadStringW';
+function MapVirtualKey; external user32 name 'MapVirtualKeyW';
+function MapVirtualKeyEx; external user32 name 'MapVirtualKeyExW';
+function MessageBox; external user32 name 'MessageBoxW';
+function MessageBoxEx; external user32 name 'MessageBoxExW';
+function MessageBoxIndirect; external user32 name 'MessageBoxIndirectW';
+function ModifyMenu; external user32 name 'ModifyMenuW';
+function OemToAnsi; external user32 name 'OemToCharW';
+function OemToAnsiBuff; external user32 name 'OemToCharBuffW';
+function OemToChar; external user32 name 'OemToCharW';
+function OemToCharBuff; external user32 name 'OemToCharBuffW';
+function OpenDesktop; external user32 name 'OpenDesktopW';
+function OpenWindowStation; external user32 name 'OpenWindowStationW';
+function PeekMessage; external user32 name 'PeekMessageW';
+function PostMessage; external user32 name 'PostMessageW';
+function PostThreadMessage; external user32 name 'PostThreadMessageW';
+function RealGetWindowClass; external user32 name 'RealGetWindowClassW';
+function RegisterClass; external user32 name 'RegisterClassW';
+function RegisterClassEx; external user32 name 'RegisterClassExW';
+function RegisterClipboardFormat; external user32 name 'RegisterClipboardFormatW';
+{$IFDEF _D4orHigher}
+function RegisterDeviceNotification; external user32 name 'RegisterDeviceNotificationW';
+{$ENDIF}
+function RegisterWindowMessage; external user32 name 'RegisterWindowMessageW';
+function RemoveProp; external user32 name 'RemovePropW';
+function SendDlgItemMessage; external user32 name 'SendDlgItemMessageW';
+function SendMessage; external user32 name 'SendMessageW';
+function SendMessageCallback; external user32 name 'SendMessageCallbackW';
+function SendMessageTimeout; external user32 name 'SendMessageTimeoutW';
+function SendNotifyMessage; external user32 name 'SendNotifyMessageW';
+function SetClassLong; external user32 name 'SetClassLongW';
+function SetDlgItemText; external user32 name 'SetDlgItemTextW';
+function SetMenuItemInfo; external user32 name 'SetMenuItemInfoW';
+function SetProp; external user32 name 'SetPropW';
+function SetUserObjectInformation; external user32 name 'SetUserObjectInformationW';
+function SetWindowLong; external user32 name 'SetWindowLongW';
+function SetWindowText; external user32 name 'SetWindowTextW';
+function SetWindowsHook; external user32 name 'SetWindowsHookW';
+function SetWindowsHookEx; external user32 name 'SetWindowsHookExW';
+function SystemParametersInfo; external user32 name 'SystemParametersInfoW';
+function TabbedTextOut; external user32 name 'TabbedTextOutW';
+function TranslateAccelerator; external user32 name 'TranslateAcceleratorW';
+function UnregisterClass; external user32 name 'UnregisterClassW';
+function VkKeyScan; external user32 name 'VkKeyScanW';
+function VkKeyScanEx; external user32 name 'VkKeyScanExW';
+function WinHelp; external user32 name 'WinHelpW';
+function wsprintf; external user32 name 'wsprintfW';
+function wvsprintf; external user32 name 'wvsprintfW';
+// NT 4.0 bug workaround - NT 4.0 doesn't test bInitialOwner for zero/nonzero, it tests for 1
+function _CreateMutex(lpMutexAttributes: PSecurityAttributes;
+ bInitialOwner: Integer; lpName: PWideChar): THandle; stdcall;
+ external kernel32 name 'CreateMutexW';
+function CreateMutex(lpMutexAttributes: PSecurityAttributes; bInitialOwner: BOOL; lpName: PWideChar): THandle;
+begin
+ Result := _CreateMutex(lpMutexAttributes, Integer(Boolean(bInitialOwner)), lpName);
+end;
+{$ENDIF implementation_part} ///////////////////////////////////////////////////