delphi Windows

function AbortSystemShutdown; external advapi32 name 'AbortSystemShutdownW';

function AbortSystemShutdownA; external advapi32 name 'AbortSystemShutdownA';

function AbortSystemShutdownW; external advapi32 name 'AbortSystemShutdownW';

function AccessCheck; external advapi32 name 'AccessCheck';

function AccessCheckAndAuditAlarm; external advapi32 name 'AccessCheckAndAuditAlarmW';

function AccessCheckAndAuditAlarmA; external advapi32 name 'AccessCheckAndAuditAlarmA';

function AccessCheckAndAuditAlarmW; external advapi32 name 'AccessCheckAndAuditAlarmW';

function AccessCheckByType; external advapi32 name 'AccessCheckByType';

function AccessCheckByTypeAndAuditAlarm; external advapi32 name 'AccessCheckByTypeAndAuditAlarmW';

function AccessCheckByTypeAndAuditAlarmA; external advapi32 name 'AccessCheckByTypeAndAuditAlarmA';

function AccessCheckByTypeAndAuditAlarmW; external advapi32 name 'AccessCheckByTypeAndAuditAlarmW';

function AccessCheckByTypeResultList; external advapi32 name 'AccessCheckByTypeResultList';

function AccessCheckByTypeResultListAndAuditAlarm; external advapi32 name 'AccessCheckByTypeResultListAndAuditAlarmW';

function AccessCheckByTypeResultListAndAuditAlarmA; external advapi32 name 'AccessCheckByTypeResultListAndAuditAlarmA';

function AccessCheckByTypeResultListAndAuditAlarmW; external advapi32 name 'AccessCheckByTypeResultListAndAuditAlarmW';

function AddAccessAllowedAce; external advapi32 name 'AddAccessAllowedAce';

function AddAccessAllowedAceEx; external advapi32 name 'AddAccessAllowedAceEx';

function AddAccessAllowedObjectAce; external advapi32 name 'AddAccessAllowedObjectAce';

function AddAccessDeniedAce; external advapi32 name 'AddAccessDeniedAce';

function AddAccessDeniedObjectAce; external advapi32 name 'AddAccessDeniedObjectAce';

function AddAccessDeniedAceEx; external advapi32 name 'AddAccessDeniedAceEx';

function AddAce; external advapi32 name 'AddAce';

function AddAuditAccessAce; external advapi32 name 'AddAuditAccessAce';

function AddAuditAccessAceEx; external advapi32 name 'AddAuditAccessAceEx';

function AddAuditAccessObjectAce; external advapi32 name 'AddAuditAccessObjectAce';

function AdjustTokenGroups; external advapi32 name 'AdjustTokenGroups';

function AdjustTokenPrivileges(TokenHandle: THandle; DisableAllPrivileges: BOOL;

const NewState: TTokenPrivileges; BufferLength: DWORD;

var PreviousState: TTokenPrivileges; var ReturnLength: DWORD): BOOL; external advapi32 name 'AdjustTokenPrivileges';

function AdjustTokenPrivileges(TokenHandle: THandle; DisableAllPrivileges: BOOL;

const NewState: TTokenPrivileges; BufferLength: DWORD;

PreviousState: PTokenPrivileges; var ReturnLength: DWORD): BOOL; external advapi32 name 'AdjustTokenPrivileges';

function AllocateAndInitializeSid; external advapi32 name 'AllocateAndInitializeSid';

function AllocateLocallyUniqueId; external advapi32 name 'AllocateLocallyUniqueId';

function AreAllAccessesGranted; external advapi32 name 'AreAllAccessesGranted';

function AreAnyAccessesGranted; external advapi32 name 'AreAnyAccessesGranted';

function BackupEventLog; external advapi32 name 'BackupEventLogW';

function BackupEventLogA; external advapi32 name 'BackupEventLogA';

function BackupEventLogW; external advapi32 name 'BackupEventLogW';

function ClearEventLog; external advapi32 name 'ClearEventLogW';

function ClearEventLogA; external advapi32 name 'ClearEventLogA';

function ClearEventLogW; external advapi32 name 'ClearEventLogW';

function CloseEventLog; external advapi32 name 'CloseEventLog';

function ConvertToAutoInheritPrivateObjectSecurity; external advapi32 name 'ConvertToAutoInheritPrivateObjectSecurity';

function CopySid; external advapi32 name 'CopySid';

function CreatePrivateObjectSecurity; external advapi32 name 'CreatePrivateObjectSecurity';

function CreatePrivateObjectSecurityEx; external advapi32 name 'CreatePrivateObjectSecurityEx';

function CreateProcessAsUser; external advapi32 name 'CreateProcessAsUserW';

function CreateProcessAsUserA; external advapi32 name 'CreateProcessAsUserA';

function CreateProcessAsUserW; external advapi32 name 'CreateProcessAsUserW';

function DecryptFile; external advapi32 name 'DecryptFileW';

function DecryptFileA; external advapi32 name 'DecryptFileA';

function DecryptFileW; external advapi32 name 'DecryptFileW';

function DeleteAce; external advapi32 name 'DeleteAce';

function DeregisterEventSource; external advapi32 name 'DeregisterEventSource';

function DestroyPrivateObjectSecurity; external advapi32 name 'DestroyPrivateObjectSecurity';

function DuplicateToken; external advapi32 name 'DuplicateToken';

function DuplicateTokenEx; external advapi32 name 'DuplicateTokenEx';

function EncryptFile; external advapi32 name 'EncryptFileW';

function EncryptFileA; external advapi32 name 'EncryptFileA';

function EncryptFileW; external advapi32 name 'EncryptFileW';

function EqualPrefixSid; external advapi32 name 'EqualPrefixSid';

function EqualSid; external advapi32 name 'EqualSid';

function FindFirstFreeAce; external advapi32 name 'FindFirstFreeAce';

function FreeSid; external advapi32 name 'FreeSid';

function GetAce; external advapi32 name 'GetAce';

function GetAclInformation; external advapi32 name 'GetAclInformation';

function GetCurrentHwProfile; external advapi32 name 'GetCurrentHwProfileW';

function GetCurrentHwProfileA; external advapi32 name 'GetCurrentHwProfileA';

function GetCurrentHwProfileW; external advapi32 name 'GetCurrentHwProfileW';

function GetFileSecurity; external advapi32 name 'GetFileSecurityW';

function GetFileSecurityA; external advapi32 name 'GetFileSecurityA';

function GetFileSecurityW; external advapi32 name 'GetFileSecurityW';

function GetKernelObjectSecurity; external advapi32 name 'GetKernelObjectSecurity';

function GetLengthSid; external advapi32 name 'GetLengthSid';

function GetNumberOfEventLogRecords; external advapi32 name 'GetNumberOfEventLogRecords';

function GetOldestEventLogRecord; external advapi32 name 'GetOldestEventLogRecord';

function GetPrivateObjectSecurity; external advapi32 name 'GetPrivateObjectSecurity';

function GetSecurityDescriptorControl; external advapi32 name 'GetSecurityDescriptorControl';

function GetSecurityDescriptorDacl; external advapi32 name 'GetSecurityDescriptorDacl';

function GetSecurityDescriptorGroup; external advapi32 name 'GetSecurityDescriptorGroup';

function GetSecurityDescriptorLength; external advapi32 name 'GetSecurityDescriptorLength';

function GetSecurityDescriptorOwner; external advapi32 name 'GetSecurityDescriptorOwner';

function GetSecurityDescriptorSacl; external advapi32 name 'GetSecurityDescriptorSacl';

function GetSidIdentifierAuthority; external advapi32 name 'GetSidIdentifierAuthority';

function GetSidLengthRequired; external advapi32 name 'GetSidLengthRequired';

function GetSidSubAuthority; external advapi32 name 'GetSidSubAuthority';

function GetSidSubAuthorityCount; external advapi32 name 'GetSidSubAuthorityCount';

function GetTokenInformation; external advapi32 name 'GetTokenInformation';

function GetUserName; external advapi32 name 'GetUserNameW';

function GetUserNameA; external advapi32 name 'GetUserNameA';

function GetUserNameW; external advapi32 name 'GetUserNameW';

function ImpersonateLoggedOnUser; external advapi32 name 'ImpersonateLoggedOnUser';

function ImpersonateNamedPipeClient; external advapi32 name 'ImpersonateNamedPipeClient';

function ImpersonateSelf; external advapi32 name 'ImpersonateSelf';

function InitializeAcl; external advapi32 name 'InitializeAcl';

function InitializeSecurityDescriptor; external advapi32 name 'InitializeSecurityDescriptor';

function InitializeSid; external advapi32 name 'InitializeSid';

function InitiateSystemShutdown; external advapi32 name 'InitiateSystemShutdownW';

function InitiateSystemShutdownA; external advapi32 name 'InitiateSystemShutdownA';

function InitiateSystemShutdownW; external advapi32 name 'InitiateSystemShutdownW';

function IsTextUnicode; external advapi32 name 'IsTextUnicode';

function IsValidAcl; external advapi32 name 'IsValidAcl';

function IsValidSecurityDescriptor; external advapi32 name 'IsValidSecurityDescriptor';

function IsValidSid; external advapi32 name 'IsValidSid';

function LogonUser; external advapi32 name 'LogonUserW';

function LogonUserA; external advapi32 name 'LogonUserA';

function LogonUserW; external advapi32 name 'LogonUserW';

function LookupAccountName; external advapi32 name 'LookupAccountNameW';

function LookupAccountNameA; external advapi32 name 'LookupAccountNameA';

function LookupAccountNameW; external advapi32 name 'LookupAccountNameW';

function LookupAccountSid; external advapi32 name 'LookupAccountSidW';

function LookupAccountSidA; external advapi32 name 'LookupAccountSidA';

function LookupAccountSidW; external advapi32 name 'LookupAccountSidW';

function LookupPrivilegeDisplayName; external advapi32 name 'LookupPrivilegeDisplayNameW';

function LookupPrivilegeDisplayNameA; external advapi32 name 'LookupPrivilegeDisplayNameA';

function LookupPrivilegeDisplayNameW; external advapi32 name 'LookupPrivilegeDisplayNameW';

function LookupPrivilegeName; external advapi32 name 'LookupPrivilegeNameW';

function LookupPrivilegeNameA; external advapi32 name 'LookupPrivilegeNameA';

function LookupPrivilegeNameW; external advapi32 name 'LookupPrivilegeNameW';

function LookupPrivilegeValue; external advapi32 name 'LookupPrivilegeValueW';

function LookupPrivilegeValueA; external advapi32 name 'LookupPrivilegeValueA';

function LookupPrivilegeValueW; external advapi32 name 'LookupPrivilegeValueW';

function MakeAbsoluteSD; external advapi32 name 'MakeAbsoluteSD';

function MakeSelfRelativeSD; external advapi32 name 'MakeSelfRelativeSD';

procedure MapGenericMask; external advapi32 name 'MapGenericMask';

function NotifyChangeEventLog; external advapi32 name 'NotifyChangeEventLog';

function ObjectCloseAuditAlarm; external advapi32 name 'ObjectCloseAuditAlarmW';

function ObjectCloseAuditAlarmA; external advapi32 name 'ObjectCloseAuditAlarmA';

function ObjectCloseAuditAlarmW; external advapi32 name 'ObjectCloseAuditAlarmW';

function ObjectDeleteAuditAlarm; external advapi32 name 'ObjectDeleteAuditAlarmW';

function ObjectDeleteAuditAlarmA; external advapi32 name 'ObjectDeleteAuditAlarmA';

function ObjectDeleteAuditAlarmW; external advapi32 name 'ObjectDeleteAuditAlarmW';

function ObjectOpenAuditAlarm; external advapi32 name 'ObjectOpenAuditAlarmW';

function ObjectOpenAuditAlarmA; external advapi32 name 'ObjectOpenAuditAlarmA';

function ObjectOpenAuditAlarmW; external advapi32 name 'ObjectOpenAuditAlarmW';

function ObjectPrivilegeAuditAlarm; external advapi32 name 'ObjectPrivilegeAuditAlarmW';

function ObjectPrivilegeAuditAlarmA; external advapi32 name 'ObjectPrivilegeAuditAlarmA';

function ObjectPrivilegeAuditAlarmW; external advapi32 name 'ObjectPrivilegeAuditAlarmW';

function OpenBackupEventLog; external advapi32 name 'OpenBackupEventLogW';

function OpenBackupEventLogA; external advapi32 name 'OpenBackupEventLogA';

function OpenBackupEventLogW; external advapi32 name 'OpenBackupEventLogW';

function OpenEventLog; external advapi32 name 'OpenEventLogW';

function OpenEventLogA; external advapi32 name 'OpenEventLogA';

function OpenEventLogW; external advapi32 name 'OpenEventLogW';

function OpenProcessToken; external advapi32 name 'OpenProcessToken';

function OpenThreadToken; external advapi32 name 'OpenThreadToken';

function PrivilegeCheck; external advapi32 name 'PrivilegeCheck';

function PrivilegedServiceAuditAlarm; external advapi32 name 'PrivilegedServiceAuditAlarmW';

function PrivilegedServiceAuditAlarmA; external advapi32 name 'PrivilegedServiceAuditAlarmA';

function PrivilegedServiceAuditAlarmW; external advapi32 name 'PrivilegedServiceAuditAlarmW';

function ReadEventLog; external advapi32 name 'ReadEventLogW';

function ReadEventLogA; external advapi32 name 'ReadEventLogA';

function ReadEventLogW; external advapi32 name 'ReadEventLogW';

function RegOverridePredefKey; external advapi32 name 'RegOverridePredefKey';

function RegOpenUserClassesRoot; external advapi32 name 'RegOpenUserClassesRoot';

function RegOpenCurrentUser; external advapi32 name 'RegOpenCurrentUser';

function RegDisablePredefinedCache; external advapi32 name 'RegDisablePredefinedCache';

function RegCloseKey; external advapi32 name 'RegCloseKey';

function RegConnectRegistry; external advapi32 name 'RegConnectRegistryW';

function RegConnectRegistryA; external advapi32 name 'RegConnectRegistryA';

function RegConnectRegistryW; external advapi32 name 'RegConnectRegistryW';

function RegCreateKey; external advapi32 name 'RegCreateKeyW';

function RegCreateKeyA; external advapi32 name 'RegCreateKeyA';

function RegCreateKeyW; external advapi32 name 'RegCreateKeyW';

function RegCreateKeyEx; external advapi32 name 'RegCreateKeyExW';

function RegCreateKeyExA; external advapi32 name 'RegCreateKeyExA';

function RegCreateKeyExW; external advapi32 name 'RegCreateKeyExW';

function RegDeleteKey; external advapi32 name 'RegDeleteKeyW';

function RegDeleteKeyA; external advapi32 name 'RegDeleteKeyA';

function RegDeleteKeyW; external advapi32 name 'RegDeleteKeyW';

function RegDeleteValue; external advapi32 name 'RegDeleteValueW';

function RegDeleteValueA; external advapi32 name 'RegDeleteValueA';

function RegDeleteValueW; external advapi32 name 'RegDeleteValueW';

function RegEnumKeyEx; external advapi32 name 'RegEnumKeyExW';

function RegEnumKeyExA; external advapi32 name 'RegEnumKeyExA';

function RegEnumKeyExW; external advapi32 name 'RegEnumKeyExW';

function RegEnumKey; external advapi32 name 'RegEnumKeyW';

function RegEnumKeyA; external advapi32 name 'RegEnumKeyA';

function RegEnumKeyW; external advapi32 name 'RegEnumKeyW';

function RegEnumValue; external advapi32 name 'RegEnumValueW';

function RegEnumValueA; external advapi32 name 'RegEnumValueA';

function RegEnumValueW; external advapi32 name 'RegEnumValueW';

function RegFlushKey; external advapi32 name 'RegFlushKey';

function RegGetKeySecurity; external advapi32 name 'RegGetKeySecurity';

function RegLoadKey; external advapi32 name 'RegLoadKeyW';

function RegLoadKeyA; external advapi32 name 'RegLoadKeyA';

function RegLoadKeyW; external advapi32 name 'RegLoadKeyW';

function RegNotifyChangeKeyValue; external advapi32 name 'RegNotifyChangeKeyValue';

function RegOpenKey; external advapi32 name 'RegOpenKeyW';

function RegOpenKeyA; external advapi32 name 'RegOpenKeyA';

function RegOpenKeyW; external advapi32 name 'RegOpenKeyW';

function RegOpenKeyEx; external advapi32 name 'RegOpenKeyExW';

function RegOpenKeyExA; external advapi32 name 'RegOpenKeyExA';

function RegOpenKeyExW; external advapi32 name 'RegOpenKeyExW';

function RegQueryInfoKey; external advapi32 name 'RegQueryInfoKeyW';

function RegQueryInfoKeyA; external advapi32 name 'RegQueryInfoKeyA';

function RegQueryInfoKeyW; external advapi32 name 'RegQueryInfoKeyW';

function RegQueryMultipleValues; external advapi32 name 'RegQueryMultipleValuesW';

function RegQueryMultipleValuesA; external advapi32 name 'RegQueryMultipleValuesA';

function RegQueryMultipleValuesW; external advapi32 name 'RegQueryMultipleValuesW';

function RegQueryValue; external advapi32 name 'RegQueryValueW';

function RegQueryValueA; external advapi32 name 'RegQueryValueA';

function RegQueryValueW; external advapi32 name 'RegQueryValueW';

function RegQueryValueEx; external advapi32 name 'RegQueryValueExW';

function RegQueryValueExA; external advapi32 name 'RegQueryValueExA';

function RegQueryValueExW; external advapi32 name 'RegQueryValueExW';

function RegReplaceKey; external advapi32 name 'RegReplaceKeyW';

function RegReplaceKeyA; external advapi32 name 'RegReplaceKeyA';

function RegReplaceKeyW; external advapi32 name 'RegReplaceKeyW';

function RegRestoreKey; external advapi32 name 'RegRestoreKeyW';

function RegRestoreKeyA; external advapi32 name 'RegRestoreKeyA';

function RegRestoreKeyW; external advapi32 name 'RegRestoreKeyW';

function RegSaveKey; external advapi32 name 'RegSaveKeyW';

function RegSaveKeyA; external advapi32 name 'RegSaveKeyA';

function RegSaveKeyW; external advapi32 name 'RegSaveKeyW';

function RegSetKeySecurity; external advapi32 name 'RegSetKeySecurity';

function RegSetValue; external advapi32 name 'RegSetValueW';

function RegSetValueA; external advapi32 name 'RegSetValueA';

function RegSetValueW; external advapi32 name 'RegSetValueW';

function RegSetValueEx; external advapi32 name 'RegSetValueExW';

function RegSetValueExA; external advapi32 name 'RegSetValueExA';

function RegSetValueExW; external advapi32 name 'RegSetValueExW';

function RegUnLoadKey; external advapi32 name 'RegUnLoadKeyW';

function RegUnLoadKeyA; external advapi32 name 'RegUnLoadKeyA';

function RegUnLoadKeyW; external advapi32 name 'RegUnLoadKeyW';

function RegisterEventSource; external advapi32 name 'RegisterEventSourceW';

function RegisterEventSourceA; external advapi32 name 'RegisterEventSourceA';

function RegisterEventSourceW; external advapi32 name 'RegisterEventSourceW';

function ReportEvent; external advapi32 name 'ReportEventW';

function ReportEventA; external advapi32 name 'ReportEventA';

function ReportEventW; external advapi32 name 'ReportEventW';

function RevertToSelf; external advapi32 name 'RevertToSelf';

function SetAclInformation; external advapi32 name 'SetAclInformation';

function SetFileSecurity; external advapi32 name 'SetFileSecurityW';

function SetFileSecurityA; external advapi32 name 'SetFileSecurityA';

function SetFileSecurityW; external advapi32 name 'SetFileSecurityW';

function SetKernelObjectSecurity; external advapi32 name 'SetKernelObjectSecurity';

function SetPrivateObjectSecurity; external advapi32 name 'SetPrivateObjectSecurity';

function SetPrivateObjectSecurityEx; external advapi32 name 'SetPrivateObjectSecurityEx';

function SetSecurityDescriptorControl; external advapi32 name 'SetSecurityDescriptorControl';

function SetSecurityDescriptorDacl; external advapi32 name 'SetSecurityDescriptorDacl';

function SetSecurityDescriptorGroup; external advapi32 name 'SetSecurityDescriptorGroup';

function SetSecurityDescriptorOwner; external advapi32 name 'SetSecurityDescriptorOwner';

function SetSecurityDescriptorSacl; external advapi32 name 'SetSecurityDescriptorSacl';

function SetThreadToken; external advapi32 name 'SetThreadToken';

function SetTokenInformation; external advapi32 name 'SetTokenInformation';

{ Externals from imaghlp.dll }

{ !!! these fuctions are not yet available in this dll

function WinSubmitCertificate; external imaghlp name 'WinSubmitCertificate';

function WinVerifyTrust; external imaghlp name 'WinVerifyTrust'; }

{ Externals from kernel32.dll }

function AddAtom; external kernel32 name 'AddAtomW';

function AddAtomA; external kernel32 name 'AddAtomA';

function AddAtomW; external kernel32 name 'AddAtomW';

function AllocConsole; external kernel32 name 'AllocConsole';

function AreFileApisANSI; external kernel32 name 'AreFileApisANSI';

function BackupRead; external kernel32 name 'BackupRead';

function BackupSeek; external kernel32 name 'BackupSeek';

function BackupWrite; external kernel32 name 'BackupWrite';

function Beep; external kernel32 name 'Beep';

function BeginUpdateResource; external kernel32 name 'BeginUpdateResourceW';

function BeginUpdateResourceA; external kernel32 name 'BeginUpdateResourceA';

function BeginUpdateResourceW; external kernel32 name 'BeginUpdateResourceW';

function BindIoCompletionCallback; external kernel32 name 'BindIoCompletionCallback';

function BuildCommDCB; external kernel32 name 'BuildCommDCBW';

function BuildCommDCBA; external kernel32 name 'BuildCommDCBA';

function BuildCommDCBW; external kernel32 name 'BuildCommDCBW';

function BuildCommDCBAndTimeouts; external kernel32 name 'BuildCommDCBAndTimeoutsW';

function BuildCommDCBAndTimeoutsA; external kernel32 name 'BuildCommDCBAndTimeoutsA';

function BuildCommDCBAndTimeoutsW; external kernel32 name 'BuildCommDCBAndTimeoutsW';

function CallNamedPipe; external kernel32 name 'CallNamedPipeW';

function CallNamedPipeA; external kernel32 name 'CallNamedPipeA';

function CallNamedPipeW; external kernel32 name 'CallNamedPipeW';

function CancelIo; external kernel32 name 'CancelIo';

function CancelTimerQueueTimer; external kernel32 name 'CancelTimerQueueTimer';

function CancelWaitableTimer; external kernel32 name 'CancelWaitableTimer';

function ChangeTimerQueueTimer; external kernel32 name 'ChangeTimerQueueTimer';

function CheckNameLegalDos8Dot3; external kernel32 name 'CheckNameLegalDOS8Dot3W';

function CheckNameLegalDos8Dot3A; external kernel32 name 'CheckNameLegalDOS8Dot3A';

function CheckNameLegalDos8Dot3W; external kernel32 name 'CheckNameLegalDOS8Dot3W';

function CheckRemoteDebuggerPresent; external kernel32 name 'CheckRemoteDebuggerPresent';

function ClearCommBreak; external kernel32 name 'ClearCommBreak';

function ClearCommError; external kernel32 name 'ClearCommError';

function CloseHandle; external kernel32 name 'CloseHandle';

procedure CloseRaw; external kernel32 name 'CloseRaw';

function CommConfigDialog; external kernel32 name 'CommConfigDialogW';

function CommConfigDialogA; external kernel32 name 'CommConfigDialogA';

function CommConfigDialogW; external kernel32 name 'CommConfigDialogW';

function CompareFileTime; external kernel32 name 'CompareFileTime';

function CompareString; external kernel32 name 'CompareStringW';

function CompareStringA; external kernel32 name 'CompareStringA';

function CompareStringW; external kernel32 name 'CompareStringW';

function ConnectNamedPipe; external kernel32 name 'ConnectNamedPipe';

function ContinueDebugEvent; external kernel32 name 'ContinueDebugEvent';

function ConvertThreadToFiber; external kernel32 name 'ConvertThreadToFiber';

function ConvertDefaultLocale; external kernel32 name 'ConvertDefaultLocale';

function CopyFile; external kernel32 name 'CopyFileW';

function CopyFileEx; external kernel32 name 'CopyFileExW';

function CopyFileA; external kernel32 name 'CopyFileA';

function CopyFileExA; external kernel32 name 'CopyFileExA';

function CopyFileW; external kernel32 name 'CopyFileW';

function CopyFileExW; external kernel32 name 'CopyFileExW';

function ReplaceFile; external kernel32 name 'ReplaceFileW';

function ReplaceFileA; external kernel32 name 'ReplaceFileA';

function ReplaceFileW; external kernel32 name 'ReplaceFileW';

function CreateConsoleScreenBuffer; external kernel32 name 'CreateConsoleScreenBuffer';

function CreateDirectory; external kernel32 name 'CreateDirectoryW';

function CreateDirectoryA; external kernel32 name 'CreateDirectoryA';

function CreateDirectoryW; external kernel32 name 'CreateDirectoryW';

function CreateDirectoryEx; external kernel32 name 'CreateDirectoryExW';

function CreateDirectoryExA; external kernel32 name 'CreateDirectoryExA';

function CreateDirectoryExW; external kernel32 name 'CreateDirectoryExW';

function CreateEvent; external kernel32 name 'CreateEventW';

function CreateEventA; external kernel32 name 'CreateEventA';

function CreateEventW; external kernel32 name 'CreateEventW';

function CreateFiber; external kernel32 name 'CreateFiber';

function CreateFile; external kernel32 name 'CreateFileW';

function CreateFileA; external kernel32 name 'CreateFileA';

function CreateFileW; external kernel32 name 'CreateFileW';

function CreateFileMapping; external kernel32 name 'CreateFileMappingW';

function CreateFileMappingA; external kernel32 name 'CreateFileMappingA';

function CreateFileMappingW; external kernel32 name 'CreateFileMappingW';

function CreateHardLink; external kernel32 name 'CreateHardLinkW';

function CreateHardLinkA; external kernel32 name 'CreateHardLinkA';

function CreateHardLinkW; external kernel32 name 'CreateHardLinkW';

function CreateIoCompletionPort; external kernel32 name 'CreateIoCompletionPort';

function CreateMailslot; external kernel32 name 'CreateMailslotW';

function CreateMailslotA; external kernel32 name 'CreateMailslotA';

function CreateMailslotW; external kernel32 name 'CreateMailslotW';

// 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;

function _CreateMutexA(lpMutexAttributes: PSecurityAttributes;

bInitialOwner: Integer; lpName: PAnsiChar): THandle; stdcall; external kernel32 name 'CreateMutexA';

function CreateMutexA(lpMutexAttributes: PSecurityAttributes; bInitialOwner: BOOL; lpName: PAnsiChar): THandle;

begin

Result := _CreateMutexA(lpMutexAttributes, Integer(Boolean(bInitialOwner)), lpName);

end;

function _CreateMutexW(lpMutexAttributes: PSecurityAttributes;

bInitialOwner: Integer; lpName: PWideChar): THandle; stdcall; external kernel32 name 'CreateMutexW';

function CreateMutexW(lpMutexAttributes: PSecurityAttributes; bInitialOwner: BOOL; lpName: PWideChar): THandle;

begin

Result := _CreateMutexW(lpMutexAttributes, Integer(Boolean(bInitialOwner)), lpName);

end;

function CreateNamedPipe; external kernel32 name 'CreateNamedPipeW';

function CreateNamedPipeA; external kernel32 name 'CreateNamedPipeA';

function CreateNamedPipeW; external kernel32 name 'CreateNamedPipeW';

function CreatePipe; external kernel32 name 'CreatePipe';

function CreateProcess; external kernel32 name 'CreateProcessW';

function CreateProcessA; external kernel32 name 'CreateProcessA';

function CreateProcessW; external kernel32 name 'CreateProcessW';

function CreateRemoteThread; external kernel32 name 'CreateRemoteThread';

function CreateSemaphore; external kernel32 name 'CreateSemaphoreW';

function CreateSemaphoreA; external kernel32 name 'CreateSemaphoreA';

function CreateSemaphoreW; external kernel32 name 'CreateSemaphoreW';

function CreateTapePartition; external kernel32 name 'CreateTapePartition';

function CreateThread; external kernel32 name 'CreateThread';

function CreateTimerQueue; external kernel32 name 'CreateTimerQueue';

function CreateTimerQueueTimer; external kernel32 name 'CreateTimerQueueTimer';

function CreateWaitableTimer; external kernel32 name 'CreateWaitableTimerW';

function CreateWaitableTimerA; external kernel32 name 'CreateWaitableTimerA';

function CreateWaitableTimerW; external kernel32 name 'CreateWaitableTimerW';

function DebugActiveProcess; external kernel32 name 'DebugActiveProcess';

procedure DebugBreak; external kernel32 name 'DebugBreak';

function DefineDosDevice; external kernel32 name 'DefineDosDeviceW';

function DefineDosDeviceA; external kernel32 name 'DefineDosDeviceA';

function DefineDosDeviceW; external kernel32 name 'DefineDosDeviceW';

function DeleteAtom; external kernel32 name 'DeleteAtom';

procedure DeleteCriticalSection; external kernel32 name 'DeleteCriticalSection';

function DeleteFiber; external kernel32 name 'DeleteFiber';

function DeleteFile; external kernel32 name 'DeleteFileW';

function DeleteFileA; external kernel32 name 'DeleteFileA';

function DeleteFileW; external kernel32 name 'DeleteFileW';

function DeleteTimerQueue; external kernel32 name 'DeleteTimerQueue';

function DeleteTimerQueueEx; external kernel32 name 'DeleteTimerQueueEx';

function DeleteTimerQueueTimer; external kernel32 name 'DeleteTimerQueueTimer';

function DeviceIoControl; external kernel32 name 'DeviceIoControl';

function DisableThreadLibraryCalls; external kernel32 name 'DisableThreadLibraryCalls';

function DisconnectNamedPipe; external kernel32 name 'DisconnectNamedPipe';

function DosDateTimeToFileTime; external kernel32 name 'DosDateTimeToFileTime';

function DuplicateHandle; external kernel32 name 'DuplicateHandle';

function EndUpdateResource; external kernel32 name 'EndUpdateResourceW';

function EndUpdateResourceA; external kernel32 name 'EndUpdateResourceA';

function EndUpdateResourceW; external kernel32 name 'EndUpdateResourceW';

procedure EnterCriticalSection; external kernel32 name 'EnterCriticalSection';

function EnumCalendarInfo; external kernel32 name 'EnumCalendarInfoW';

function EnumCalendarInfoA; external kernel32 name 'EnumCalendarInfoA';

function EnumCalendarInfoW; external kernel32 name 'EnumCalendarInfoW';

function EnumDateFormats; external kernel32 name 'EnumDateFormatsW';

function EnumDateFormatsA; external kernel32 name 'EnumDateFormatsA';

function EnumDateFormatsW; external kernel32 name 'EnumDateFormatsW';

function EnumResourceLanguages; external kernel32 name 'EnumResourceLanguagesW';

function EnumResourceLanguagesA; external kernel32 name 'EnumResourceLanguagesA';

function EnumResourceLanguagesW; external kernel32 name 'EnumResourceLanguagesW';

function EnumResourceNames; external kernel32 name 'EnumResourceNamesW';

function EnumResourceNamesA; external kernel32 name 'EnumResourceNamesA';

function EnumResourceNamesW; external kernel32 name 'EnumResourceNamesW';

function EnumResourceTypes; external kernel32 name 'EnumResourceTypesW';

function EnumResourceTypesA; external kernel32 name 'EnumResourceTypesA';

function EnumResourceTypesW; external kernel32 name 'EnumResourceTypesW';

function EnumSystemCodePages; external kernel32 name 'EnumSystemCodePagesW';

function EnumSystemCodePagesA; external kernel32 name 'EnumSystemCodePagesA';

function EnumSystemCodePagesW; external kernel32 name 'EnumSystemCodePagesW';

function EnumSystemLocales; external kernel32 name 'EnumSystemLocalesW';

function EnumSystemLocalesA; external kernel32 name 'EnumSystemLocalesA';

function EnumSystemLocalesW; external kernel32 name 'EnumSystemLocalesW';

function EnumTimeFormats; external kernel32 name 'EnumTimeFormatsW';

function EnumTimeFormatsA; external kernel32 name 'EnumTimeFormatsA';

function EnumTimeFormatsW; external kernel32 name 'EnumTimeFormatsW';

function EraseTape; external kernel32 name 'EraseTape';

function EscapeCommFunction; external kernel32 name 'EscapeCommFunction';

procedure ExitProcess; external kernel32 name 'ExitProcess';

procedure ExitThread; external kernel32 name 'ExitThread';

function ExpandEnvironmentStrings; external kernel32 name 'ExpandEnvironmentStringsW';

function ExpandEnvironmentStringsA; external kernel32 name 'ExpandEnvironmentStringsA';

function ExpandEnvironmentStringsW; external kernel32 name 'ExpandEnvironmentStringsW';

procedure FatalAppExit; external kernel32 name 'FatalAppExitW';

procedure FatalAppExitA; external kernel32 name 'FatalAppExitA';

procedure FatalAppExitW; external kernel32 name 'FatalAppExitW';

procedure FatalExit; external kernel32 name 'FatalExit';

function FileTimeToDosDateTime; external kernel32 name 'FileTimeToDosDateTime';

function FileTimeToLocalFileTime; external kernel32 name 'FileTimeToLocalFileTime';

function FileTimeToSystemTime; external kernel32 name 'FileTimeToSystemTime';

function FillConsoleOutputAttribute; external kernel32 name 'FillConsoleOutputAttribute';

function FillConsoleOutputCharacter; external kernel32 name 'FillConsoleOutputCharacterW';

function FillConsoleOutputCharacterA; external kernel32 name 'FillConsoleOutputCharacterA';

function FillConsoleOutputCharacterW; external kernel32 name 'FillConsoleOutputCharacterW';

function FindAtom; external kernel32 name 'FindAtomW';

function FindAtomA; external kernel32 name 'FindAtomA';

function FindAtomW; external kernel32 name 'FindAtomW';

function FindClose; external kernel32 name 'FindClose';

function FindCloseChangeNotification; external kernel32 name 'FindCloseChangeNotification';

function FindFirstChangeNotification; external kernel32 name 'FindFirstChangeNotificationW';

function FindFirstChangeNotificationA; external kernel32 name 'FindFirstChangeNotificationA';

function FindFirstChangeNotificationW; external kernel32 name 'FindFirstChangeNotificationW';

function FindFirstFile; external kernel32 name 'FindFirstFileW';

function FindFirstFileEx; external kernel32 name 'FindFirstFileExW';

function FindFirstFileA; external kernel32 name 'FindFirstFileA';

function FindFirstFileExA; external kernel32 name 'FindFirstFileExA';

function FindFirstFileW; external kernel32 name 'FindFirstFileW';

function FindFirstFileExW; external kernel32 name 'FindFirstFileExW';

function FindNextChangeNotification; external kernel32 name 'FindNextChangeNotification';

function FindNextFile; external kernel32 name 'FindNextFileW';

function FindNextFileA; external kernel32 name 'FindNextFileA';

function FindNextFileW; external kernel32 name 'FindNextFileW';

{$IFDEF MSWINDOWS}

function FindResource; external kernel32 name 'FindResourceW';

function FindResourceA; external kernel32 name 'FindResourceA';

function FindResourceW; external kernel32 name 'FindResourceW';

{$ENDIF}

function FindResourceEx; external kernel32 name 'FindResourceExW';

function FindResourceExA; external kernel32 name 'FindResourceExA';

function FindResourceExW; external kernel32 name 'FindResourceExW';

function FlushConsoleInputBuffer; external kernel32 name 'FlushConsoleInputBuffer';

function FlushFileBuffers; external kernel32 name 'FlushFileBuffers';

function FlushInstructionCache; external kernel32 name 'FlushInstructionCache';

function FlushViewOfFile; external kernel32 name 'FlushViewOfFile';

function FoldString; external kernel32 name 'FoldStringW';

function FoldStringA; external kernel32 name 'FoldStringA';

function FoldStringW; external kernel32 name 'FoldStringW';

function FormatMessage; external kernel32 name 'FormatMessageW';

function FormatMessageA; external kernel32 name 'FormatMessageA';

function FormatMessageW; external kernel32 name 'FormatMessageW';

function FreeConsole; external kernel32 name 'FreeConsole';

function FreeEnvironmentStrings; external kernel32 name 'FreeEnvironmentStringsW';

function FreeEnvironmentStringsA; external kernel32 name 'FreeEnvironmentStringsA';

function FreeEnvironmentStringsW; external kernel32 name 'FreeEnvironmentStringsW';

function FreeLibrary; external kernel32 name 'FreeLibrary';

procedure FreeLibraryAndExitThread; external kernel32 name 'FreeLibraryAndExitThread';

function InterlockedCompareExchange; external kernel32 name 'InterlockedCompareExchange';

function InterlockedCompareExchangePointer(var Destination: Pointer; Exchange: Pointer; Comperand: Pointer): Pointer;

begin

Result := Pointer(InterlockedCompareExchange(Integer(Destination), Integer(Exchange), Integer(Comperand)));

end;

function InterlockedDecrement; external kernel32 name 'InterlockedDecrement';

function InterlockedExchange; external kernel32 name 'InterlockedExchange';

function InterlockedExchangePointer(var Target: Pointer; Value: Pointer): Pointer;

begin

Result := Pointer(InterlockedExchange(Integer(Target), Integer(Value)));

end;

function InterlockedExchangeAdd(Addend: PLongint; Value: Longint): Longint; external kernel32 name 'InterlockedExchangeAdd';

function InterlockedExchangeAdd(var Addend: Longint; Value: Longint): Longint; external kernel32 name 'InterlockedExchangeAdd';

function InterlockedIncrement; external kernel32 name 'InterlockedIncrement';

{$IFDEF MSWINDOWS}

function FreeResource; external kernel32 name 'FreeResource';

{$ENDIF}

function GenerateConsoleCtrlEvent; external kernel32 name 'GenerateConsoleCtrlEvent';

function GetACP; external kernel32 name 'GetACP';

function GetAtomName; external kernel32 name 'GetAtomNameW';

function GetAtomNameA; external kernel32 name 'GetAtomNameA';

function GetAtomNameW; external kernel32 name 'GetAtomNameW';

function GetBinaryType; external kernel32 name 'GetBinaryTypeW';

function GetBinaryTypeA; external kernel32 name 'GetBinaryTypeA';

function GetBinaryTypeW; external kernel32 name 'GetBinaryTypeW';

function GetCPInfo; external kernel32 name 'GetCPInfo';

function GetCPInfoEx; external kernel32 name 'GetCPInfoExW';

function GetCPInfoExA; external kernel32 name 'GetCPInfoExA';

function GetCPInfoExW; external kernel32 name 'GetCPInfoExW';

function GetCommandLine; external kernel32 name 'GetCommandLineW';

function GetCommandLineA; external kernel32 name 'GetCommandLineA';

function GetCommandLineW; external kernel32 name 'GetCommandLineW';

function GetCommConfig; external kernel32 name 'GetCommConfig';

function GetCommMask; external kernel32 name 'GetCommMask';

function GetCommModemStatus; external kernel32 name 'GetCommModemStatus';

function GetCommProperties; external kernel32 name 'GetCommProperties';

function GetCommState; external kernel32 name 'GetCommState';

function GetCommTimeouts; external kernel32 name 'GetCommTimeouts';

function GetCompressedFileSize; external kernel32 name 'GetCompressedFileSizeW';

function GetCompressedFileSizeA; external kernel32 name 'GetCompressedFileSizeA';

function GetCompressedFileSizeW; external kernel32 name 'GetCompressedFileSizeW';

function GetComputerName; external kernel32 name 'GetComputerNameW';

function GetComputerNameA; external kernel32 name 'GetComputerNameA';

function GetComputerNameW; external kernel32 name 'GetComputerNameW';

function GetComputerNameEx; external kernel32 name 'GetComputerNameExW';

function GetComputerNameExA; external kernel32 name 'GetComputerNameExA';

function GetComputerNameExW; external kernel32 name 'GetComputerNameExW';

function GetConsoleCP; external kernel32 name 'GetConsoleCP';

function GetConsoleCursorInfo; external kernel32 name 'GetConsoleCursorInfo';

function GetConsoleMode; external kernel32 name 'GetConsoleMode';

function GetConsoleOutputCP; external kernel32 name 'GetConsoleOutputCP';

function GetConsoleScreenBufferInfo; external kernel32 name 'GetConsoleScreenBufferInfo';

function GetConsoleTitle; external kernel32 name 'GetConsoleTitleW';

function GetConsoleTitleA; external kernel32 name 'GetConsoleTitleA';

function GetConsoleTitleW; external kernel32 name 'GetConsoleTitleW';

function GetCurrencyFormat; external kernel32 name 'GetCurrencyFormatW';

function GetCurrencyFormatA; external kernel32 name 'GetCurrencyFormatA';

function GetCurrencyFormatW; external kernel32 name 'GetCurrencyFormatW';

function GetCurrentDirectory; external kernel32 name 'GetCurrentDirectoryW';

function GetCurrentDirectoryA; external kernel32 name 'GetCurrentDirectoryA';

function GetCurrentDirectoryW; external kernel32 name 'GetCurrentDirectoryW';

function GetCurrentProcess; external kernel32 name 'GetCurrentProcess';

function GetCurrentProcessId; external kernel32 name 'GetCurrentProcessId';

function GetCurrentThread; external kernel32 name 'GetCurrentThread';

function GetCurrentThreadId; external kernel32 name 'GetCurrentThreadId';

function GetDateFormat; external kernel32 name 'GetDateFormatW';

function GetDateFormatA; external kernel32 name 'GetDateFormatA';

function GetDateFormatW; external kernel32 name 'GetDateFormatW';

function GetDefaultCommConfig; external kernel32 name 'GetDefaultCommConfigW';

function GetDefaultCommConfigA; external kernel32 name 'GetDefaultCommConfigA';

function GetDefaultCommConfigW; external kernel32 name 'GetDefaultCommConfigW';

function GetDiskFreeSpace; external kernel32 name 'GetDiskFreeSpaceW';

function GetDiskFreeSpaceA; external kernel32 name 'GetDiskFreeSpaceA';

function GetDiskFreeSpaceW; external kernel32 name 'GetDiskFreeSpaceW';

function GetDiskFreeSpaceEx; external kernel32 name 'GetDiskFreeSpaceExW';

function GetDiskFreeSpaceExA; external kernel32 name 'GetDiskFreeSpaceExA';

function GetDiskFreeSpaceExW; external kernel32 name 'GetDiskFreeSpaceExW';

function GetDllDirectory; external kernel32 name 'GetDllDirectoryW';

function GetDllDirectoryA; external kernel32 name 'GetDllDirectoryA';

function GetDllDirectoryW; external kernel32 name 'GetDllDirectoryW';

function GetDriveType; external kernel32 name 'GetDriveTypeW';

function GetDriveTypeA; external kernel32 name 'GetDriveTypeA';

function GetDriveTypeW; external kernel32 name 'GetDriveTypeW';

function GetEnvironmentStrings; external kernel32 name 'GetEnvironmentStringsW';

function GetEnvironmentStringsA; external kernel32 name 'GetEnvironmentStringsA';

function GetEnvironmentStringsW; external kernel32 name 'GetEnvironmentStringsW';

function GetEnvironmentVariable(lpName: PWideChar; lpBuffer: PWideChar;

nSize: DWORD): DWORD; external kernel32 name 'GetEnvironmentVariableW';

function GetEnvironmentVariableA(lpName: PAnsiChar; lpBuffer: PAnsiChar;

nSize: DWORD): DWORD; external kernel32 name 'GetEnvironmentVariableA';

function GetEnvironmentVariableW(lpName: PWideChar; lpBuffer: PWideChar;

nSize: DWORD): DWORD; external kernel32 name 'GetEnvironmentVariableW';

function GetExitCodeProcess; external kernel32 name 'GetExitCodeProcess';

function GetExitCodeThread; external kernel32 name 'GetExitCodeThread';

function GetFileAttributes; external kernel32 name 'GetFileAttributesW';

function GetFileAttributesA; external kernel32 name 'GetFileAttributesA';

function GetFileAttributesW; external kernel32 name 'GetFileAttributesW';

function GetFileAttributesEx; external kernel32 name 'GetFileAttributesExW';

function GetFileAttributesExA; external kernel32 name 'GetFileAttributesExA';

function GetFileAttributesExW; external kernel32 name 'GetFileAttributesExW';

function GetFileInformationByHandle; external kernel32 name 'GetFileInformationByHandle';

function GetFileSize; external kernel32 name 'GetFileSize';

function GetFileTime; external kernel32 name 'GetFileTime';

function GetFileType; external kernel32 name 'GetFileType';

function GetFullPathName; external kernel32 name 'GetFullPathNameW';

function GetFullPathNameA; external kernel32 name 'GetFullPathNameA';

function GetFullPathNameW; external kernel32 name 'GetFullPathNameW';

function GetHandleInformation; external kernel32 name 'GetHandleInformation';

function GetLargestConsoleWindowSize; external kernel32 name 'GetLargestConsoleWindowSize';

function GetLastError; external kernel32 name 'GetLastError';

procedure GetLocalTime; external kernel32 name 'GetLocalTime';

function GetLocaleInfo; external kernel32 name 'GetLocaleInfoW';

function GetLocaleInfoA; external kernel32 name 'GetLocaleInfoA';

function GetLocaleInfoW; external kernel32 name 'GetLocaleInfoW';

function GetLogicalDriveStrings; external kernel32 name 'GetLogicalDriveStringsW';

function GetLogicalDriveStringsA; external kernel32 name 'GetLogicalDriveStringsA';

function GetLogicalDriveStringsW; external kernel32 name 'GetLogicalDriveStringsW';

function GetLogicalDrives; external kernel32 name 'GetLogicalDrives';

function GetMailslotInfo; external kernel32 name 'GetMailslotInfo';

function GetModuleFileName; external kernel32 name 'GetModuleFileNameW';

function GetModuleFileNameA; external kernel32 name 'GetModuleFileNameA';

function GetModuleFileNameW; external kernel32 name 'GetModuleFileNameW';

function GetModuleHandle; external kernel32 name 'GetModuleHandleW';

function GetModuleHandleA; external kernel32 name 'GetModuleHandleA';

function GetModuleHandleW; external kernel32 name 'GetModuleHandleW';

function GetNamedPipeHandleState; external kernel32 name 'GetNamedPipeHandleStateW';

function GetNamedPipeHandleStateA; external kernel32 name 'GetNamedPipeHandleStateA';

function GetNamedPipeHandleStateW; external kernel32 name 'GetNamedPipeHandleStateW';

function GetNamedPipeInfo; external kernel32 name 'GetNamedPipeInfo';

function GetNumberFormat; external kernel32 name 'GetNumberFormatW';

function GetNumberFormatA; external kernel32 name 'GetNumberFormatA';

function GetNumberFormatW; external kernel32 name 'GetNumberFormatW';

function GetNumberOfConsoleInputEvents; external kernel32 name 'GetNumberOfConsoleInputEvents';

function GetNumberOfConsoleMouseButtons; external kernel32 name 'GetNumberOfConsoleMouseButtons';

function GetOEMCP; external kernel32 name 'GetOEMCP';

function GetOverlappedResult; external kernel32 name 'GetOverlappedResult';

function GetPriorityClass; external kernel32 name 'GetPriorityClass';

function GetPrivateProfileInt; external kernel32 name 'GetPrivateProfileIntW';

function GetPrivateProfileIntA; external kernel32 name 'GetPrivateProfileIntA';

function GetPrivateProfileIntW; external kernel32 name 'GetPrivateProfileIntW';

function GetPrivateProfileSection; external kernel32 name 'GetPrivateProfileSectionW';

function GetPrivateProfileSectionA; external kernel32 name 'GetPrivateProfileSectionA';

function GetPrivateProfileSectionW; external kernel32 name 'GetPrivateProfileSectionW';

function GetPrivateProfileSectionNames; external kernel32 name 'GetPrivateProfileSectionNamesW';

function GetPrivateProfileSectionNamesA; external kernel32 name 'GetPrivateProfileSectionNamesA';

function GetPrivateProfileSectionNamesW; external kernel32 name 'GetPrivateProfileSectionNamesW';

function GetPrivateProfileString; external kernel32 name 'GetPrivateProfileStringW';

function GetPrivateProfileStringA; external kernel32 name 'GetPrivateProfileStringA';

function GetPrivateProfileStringW; external kernel32 name 'GetPrivateProfileStringW';

function GetProcAddress(hModule: HMODULE; lpProcName: LPCSTR): FARPROC; external kernel32 name 'GetProcAddress';

function GetProcAddress(hModule: HMODULE; lpProcName: LPCWSTR): FARPROC;

begin

if ULONG_PTR(lpProcName) shr 16 = 0 then // IS_INTRESOURCE

Result := GetProcAddress(hModule, LPCSTR(lpProcName))

else

Result := GetProcAddress(hModule, LPCSTR(AnsiString(lpProcName)));

end;

function GetProcessAffinityMask; external kernel32 name 'GetProcessAffinityMask';

function GetProcessHandleCount; external kernel32 name 'GetProcessHandleCount';

function GetProcessHeap; external kernel32 name 'GetProcessHeap';

function GetProcessHeaps; external kernel32 name 'GetProcessHeaps';

function GetProcessID; external kernel32 name 'GetProcessID';

function GetProcessPriorityBoost; external kernel32 name 'GetProcessPriorityBoost';

function GetProcessShutdownParameters; external kernel32 name 'GetProcessShutdownParameters';

function GetProcessTimes; external kernel32 name 'GetProcessTimes';

function GetProcessVersion; external kernel32 name 'GetProcessVersion';

function GetProcessWorkingSetSize; external kernel32 name 'GetProcessWorkingSetSize';

function GetProfileInt; external kernel32 name 'GetProfileIntW';

function GetProfileIntA; external kernel32 name 'GetProfileIntA';

function GetProfileIntW; external kernel32 name 'GetProfileIntW';

function GetProfileSection; external kernel32 name 'GetProfileSectionW';

function GetProfileSectionA; external kernel32 name 'GetProfileSectionA';

function GetProfileSectionW; external kernel32 name 'GetProfileSectionW';

function GetProfileString; external kernel32 name 'GetProfileStringW';

function GetProfileStringA; external kernel32 name 'GetProfileStringA';

function GetProfileStringW; external kernel32 name 'GetProfileStringW';

function GetQueuedCompletionStatus; external kernel32 name 'GetQueuedCompletionStatus';

function GetShortPathName; external kernel32 name 'GetShortPathNameW';

function GetShortPathNameA; external kernel32 name 'GetShortPathNameA';

function GetShortPathNameW; external kernel32 name 'GetShortPathNameW';

function GetLongPathName; external kernel32 name 'GetLongPathNameW';

function GetLongPathNameA; external kernel32 name 'GetLongPathNameA';

function GetLongPathNameW; external kernel32 name 'GetLongPathNameW';

procedure GetStartupInfo; external kernel32 name 'GetStartupInfoW';

procedure GetStartupInfoA; external kernel32 name 'GetStartupInfoA';

procedure GetStartupInfoW; external kernel32 name 'GetStartupInfoW';

function GetStdHandle; external kernel32 name 'GetStdHandle';

function GetStringTypeEx; external kernel32 name 'GetStringTypeExW';

function GetStringTypeExA; external kernel32 name 'GetStringTypeExA';

function GetStringTypeExW; external kernel32 name 'GetStringTypeExW';

function GetStringTypeA; external kernel32 name 'GetStringTypeA';

function GetStringTypeW; external kernel32 name 'GetStringTypeW';

function GetSystemDefaultLCID; external kernel32 name 'GetSystemDefaultLCID';

function GetSystemDefaultLangID; external kernel32 name 'GetSystemDefaultLangID';

function GetSystemDirectory; external kernel32 name 'GetSystemDirectoryW';

function GetSystemDirectoryA; external kernel32 name 'GetSystemDirectoryA';

function GetSystemDirectoryW; external kernel32 name 'GetSystemDirectoryW';

function GetSystemRegistryQuota; external kernel32 name 'GetSystemRegistryQuota';

function GetSystemTimes; external kernel32 name 'GetSystemTimes';

procedure GetNativeSystemInfo; external kernel32 name 'GetNativeSystemInfo';

procedure GetSystemInfo; external kernel32 name 'GetSystemInfo';

function GetSystemPowerStatus; external kernel32 name 'GetSystemPowerStatus';

procedure GetSystemTime; external kernel32 name 'GetSystemTime';

procedure GetSystemTimeAsFileTime; external kernel32 name 'GetSystemTimeAsFileTime';

function GetSystemTimeAdjustment; external kernel32 name 'GetSystemTimeAdjustment';

function GetTapeParameters; external kernel32 name 'GetTapeParameters';

function GetTapePosition; external kernel32 name 'GetTapePosition';

function GetTapeStatus; external kernel32 name 'GetTapeStatus';

function GetTempFileName; external kernel32 name 'GetTempFileNameW';

function GetTempFileNameA; external kernel32 name 'GetTempFileNameA';

function GetTempFileNameW; external kernel32 name 'GetTempFileNameW';

function GetTempPath; external kernel32 name 'GetTempPathW';

function GetTempPathA; external kernel32 name 'GetTempPathA';

function GetTempPathW; external kernel32 name 'GetTempPathW';

function GetThreadContext; external kernel32 name 'GetThreadContext';

function GetThreadIOPendingFlag; external kernel32 name 'GetThreadIOPendingFlag';

function GetThreadLocale; external kernel32 name 'GetThreadLocale';

function GetThreadPriority; external kernel32 name 'GetThreadPriority';

function GetThreadPriorityBoost; external kernel32 name 'GetThreadPriorityBoost';

function GetThreadSelectorEntry; external kernel32 name 'GetThreadSelectorEntry';

function GetThreadTimes; external kernel32 name 'GetThreadTimes';

function GetTickCount; external kernel32 name 'GetTickCount';

function GetTimeFormat; external kernel32 name 'GetTimeFormatW';

function GetTimeFormatA; external kernel32 name 'GetTimeFormatA';

function GetTimeFormatW; external kernel32 name 'GetTimeFormatW';

function GetTimeZoneInformation; external kernel32 name 'GetTimeZoneInformation';

function GetUserDefaultLCID; external kernel32 name 'GetUserDefaultLCID';

function GetUserDefaultLangID; external kernel32 name 'GetUserDefaultLangID';

function GetVersion; external kernel32 name 'GetVersion';

function GetVersionEx(var lpVersionInformation: TOSVersionInfo): BOOL; external kernel32 name 'GetVersionExW';

function GetVersionExA(var lpVersionInformation: TOSVersionInfoA): BOOL; external kernel32 name 'GetVersionExA';

function GetVersionExW(var lpVersionInformation: TOSVersionInfoW): BOOL; external kernel32 name 'GetVersionExW';

function GetVersionEx(var lpVersionInformation: TOSVersionInfoEx): BOOL; external kernel32 name 'GetVersionExW';

function GetVersionExA(var lpVersionInformation: TOSVersionInfoExA): BOOL; external kernel32 name 'GetVersionExA';

function GetVersionExW(var lpVersionInformation: TOSVersionInfoExW): BOOL; external kernel32 name 'GetVersionExW';

function GetVolumeInformation; external kernel32 name 'GetVolumeInformationW';

function GetVolumeInformationA; external kernel32 name 'GetVolumeInformationA';

function GetVolumeInformationW; external kernel32 name 'GetVolumeInformationW';

function GetWindowsDirectory; external kernel32 name 'GetWindowsDirectoryW';

function GetWindowsDirectoryA; external kernel32 name 'GetWindowsDirectoryA';

function GetWindowsDirectoryW; external kernel32 name 'GetWindowsDirectoryW';

function GlobalAddAtom; external kernel32 name 'GlobalAddAtomW';

function GlobalAddAtomA; external kernel32 name 'GlobalAddAtomA';

function GlobalAddAtomW; external kernel32 name 'GlobalAddAtomW';

function GlobalAlloc; external kernel32 name 'GlobalAlloc';

function GlobalCompact; external kernel32 name 'GlobalCompact';

function GlobalDeleteAtom; external kernel32 name 'GlobalDeleteAtom';

function GlobalFindAtom; external kernel32 name 'GlobalFindAtomW';

function GlobalFindAtomA; external kernel32 name 'GlobalFindAtomA';

function GlobalFindAtomW; external kernel32 name 'GlobalFindAtomW';

procedure GlobalFix; external kernel32 name 'GlobalFix';

function GlobalFlags; external kernel32 name 'GlobalFlags';

function GlobalFree; external kernel32 name 'GlobalFree';

function GlobalGetAtomName; external kernel32 name 'GlobalGetAtomNameW';

function GlobalGetAtomNameA; external kernel32 name 'GlobalGetAtomNameA';

function GlobalGetAtomNameW; external kernel32 name 'GlobalGetAtomNameW';

function GlobalLock; external kernel32 name 'GlobalLock';

function GlobalHandle; external kernel32 name 'GlobalHandle';

procedure GlobalMemoryStatus; external kernel32 name 'GlobalMemoryStatus';

function GlobalMemoryStatusEx; external kernel32 name 'GlobalMemoryStatusEx';

function GlobalReAlloc; external kernel32 name 'GlobalReAlloc';

function GlobalSize; external kernel32 name 'GlobalSize';

function GlobalUnWire; external kernel32 name 'GlobalUnWire';

procedure GlobalUnfix; external kernel32 name 'GlobalUnfix';

function GlobalUnlock; external kernel32 name 'GlobalUnlock';

function GlobalWire; external kernel32 name 'GlobalWire';

function HeapAlloc; external kernel32 name 'HeapAlloc';

function HeapCompact; external kernel32 name 'HeapCompact';

function HeapCreate; external kernel32 name 'HeapCreate';

function HeapDestroy; external kernel32 name 'HeapDestroy';

function HeapFree; external kernel32 name 'HeapFree';

function HeapLock; external kernel32 name 'HeapLock';

function HeapReAlloc; external kernel32 name 'HeapReAlloc';

function HeapSize; external kernel32 name 'HeapSize';

function HeapUnlock; external kernel32 name 'HeapUnlock';

function HeapValidate; external kernel32 name 'HeapValidate';

function HeapWalk; external kernel32 name 'HeapWalk';

function InitAtomTable; external kernel32 name 'InitAtomTable';

procedure InitializeCriticalSection; external kernel32 name 'InitializeCriticalSection';

function InitializeCriticalSectionAndSpinCount; external kernel32 name 'InitializeCriticalSectionAndSpinCount';

function IsBadCodePtr; external kernel32 name 'IsBadCodePtr';

function IsBadHugeReadPtr; external kernel32 name 'IsBadHugeReadPtr';

function IsBadHugeWritePtr; external kernel32 name 'IsBadHugeWritePtr';

function IsBadReadPtr; external kernel32 name 'IsBadReadPtr';

function IsBadStringPtr; external kernel32 name 'IsBadStringPtrW';

function IsBadStringPtrA; external kernel32 name 'IsBadStringPtrA';

function IsBadStringPtrW; external kernel32 name 'IsBadStringPtrW';

function IsBadWritePtr; external kernel32 name 'IsBadWritePtr';

function IsDBCSLeadByte; external kernel32 name 'IsDBCSLeadByte';

function IsDBCSLeadByteEx; external kernel32 name 'IsDBCSLeadByteEx';

function IsProcessorFeaturePresent; external kernel32 name 'IsProcessorFeaturePresent';

function IsValidCodePage; external kernel32 name 'IsValidCodePage';

function IsValidLocale; external kernel32 name 'IsValidLocale';

function LCMapString; external kernel32 name 'LCMapStringW';

function LCMapStringA; external kernel32 name 'LCMapStringA';

function LCMapStringW; external kernel32 name 'LCMapStringW';

procedure LeaveCriticalSection; external kernel32 name 'LeaveCriticalSection';

{$IFDEF MSWINDOWS}

function LoadLibrary; external kernel32 name 'LoadLibraryW';

function LoadLibraryA; external kernel32 name 'LoadLibraryA';

function LoadLibraryW; external kernel32 name 'LoadLibraryW';

function LoadLibraryEx; external kernel32 name 'LoadLibraryExW';

function LoadLibraryExA; external kernel32 name 'LoadLibraryExA';

function LoadLibraryExW; external kernel32 name 'LoadLibraryExW';

{$ENDIF}

function LoadModule; external kernel32 name 'LoadModule';

{$IFDEF MSWINDOWS}

function LoadResource; external kernel32 name 'LoadResource';

{$ENDIF}

function LocalAlloc; external kernel32 name 'LocalAlloc';

function LocalCompact; external kernel32 name 'LocalCompact';

function LocalFileTimeToFileTime; external kernel32 name 'LocalFileTimeToFileTime';

function LocalFlags; external kernel32 name 'LocalFlags';

function LocalFree; external kernel32 name 'LocalFree';

function LocalLock; external kernel32 name 'LocalLock';

function LocalReAlloc; external kernel32 name 'LocalReAlloc';

function LocalShrink; external kernel32 name 'LocalShrink';

function LocalSize; external kernel32 name 'LocalSize';

function LocalUnlock; external kernel32 name 'LocalUnlock';

function LockFile; external kernel32 name 'LockFile';

function LockFileEx; external kernel32 name 'LockFileEx';

{$IFDEF MSWINDOWS}

function LockResource; external kernel32 name 'LockResource';

{$ENDIF}

function MapViewOfFile; external kernel32 name 'MapViewOfFile';

function MapViewOfFileEx; external kernel32 name 'MapViewOfFileEx';

function MoveFile; external kernel32 name 'MoveFileW';

function MoveFileA; external kernel32 name 'MoveFileA';

function MoveFileW; external kernel32 name 'MoveFileW';

function MoveFileEx; external kernel32 name 'MoveFileExW';

function MoveFileExA; external kernel32 name 'MoveFileExA';

function MoveFileExW; external kernel32 name 'MoveFileExW';

function MoveFileWithProgress; external kernel32 name 'MoveFileWithProgressW';

function MoveFileWithProgressA; external kernel32 name 'MoveFileWithProgressA';

function MoveFileWithProgressW; external kernel32 name 'MoveFileWithProgressW';

function MulDiv; external kernel32 name 'MulDiv';

function MultiByteToWideChar; external kernel32 name 'MultiByteToWideChar';

function OpenEvent; external kernel32 name 'OpenEventW';

function OpenEventA; external kernel32 name 'OpenEventA';

function OpenEventW; external kernel32 name 'OpenEventW';

function OpenFile; external kernel32 name 'OpenFile';

function OpenFileMapping; external kernel32 name 'OpenFileMappingW';

function OpenFileMappingA; external kernel32 name 'OpenFileMappingA';

function OpenFileMappingW; external kernel32 name 'OpenFileMappingW';

function OpenMutex; external kernel32 name 'OpenMutexW';

function OpenMutexA; external kernel32 name 'OpenMutexA';

function OpenMutexW; external kernel32 name 'OpenMutexW';

function OpenProcess; external kernel32 name 'OpenProcess';

function OpenRaw; external kernel32 name 'OpenRaw';

function OpenRawA; external kernel32 name 'OpenRawA';

function OpenRawW; external kernel32 name 'OpenRawW';

function OpenSemaphore; external kernel32 name 'OpenSemaphoreW';

function OpenWaitableTimer; external kernel32 name 'OpenWaitableTimerW';

function OpenSemaphoreA; external kernel32 name 'OpenSemaphoreA';

function OpenWaitableTimerA; external kernel32 name 'OpenWaitableTimerA';

function OpenSemaphoreW; external kernel32 name 'OpenSemaphoreW';

function OpenWaitableTimerW; external kernel32 name 'OpenWaitableTimerW';

procedure OutputDebugString; external kernel32 name 'OutputDebugStringW';

procedure OutputDebugStringA; external kernel32 name 'OutputDebugStringA';

procedure OutputDebugStringW; external kernel32 name 'OutputDebugStringW';

function IsDebuggerPresent; external kernel32 name 'IsDebuggerPresent';

function PeekConsoleInput; external kernel32 name 'PeekConsoleInputW';

function PeekConsoleInputA; external kernel32 name 'PeekConsoleInputA';

function PeekConsoleInputW; external kernel32 name 'PeekConsoleInputW';

function PeekNamedPipe; external kernel32 name 'PeekNamedPipe';

function PostQueuedCompletionStatus; external kernel32 name 'PostQueuedCompletionStatus';

function PrepareTape; external kernel32 name 'PrepareTape';

function PulseEvent; external kernel32 name 'PulseEvent';

function PurgeComm; external kernel32 name 'PurgeComm';

function QueryDosDevice; external kernel32 name 'QueryDosDeviceW';

function QueryDosDeviceA; external kernel32 name 'QueryDosDeviceA';

function QueryDosDeviceW; external kernel32 name 'QueryDosDeviceW';

function QueryPerformanceCounter; external kernel32 name 'QueryPerformanceCounter';

function QueryPerformanceFrequency; external kernel32 name 'QueryPerformanceFrequency';

function QueryRecoveryAgents; external kernel32 name 'QueryRecoveryAgentsW';

function QueryRecoveryAgentsA; external kernel32 name 'QueryRecoveryAgentsA';

function QueryRecoveryAgentsW; external kernel32 name 'QueryRecoveryAgentsW';

function QueueUserAPC; external kernel32 name 'QueueUserAPC';

function WT_SET_MAX_THREADPOOL_THREADS(Flags, Limit: ULONG): ULONG;

begin

Result := Flags or (Limit shl 16);

end;

function QueueUserWorkItem; external kernel32 name 'QueueUserWorkItem';

procedure RaiseException; external kernel32 name 'RaiseException';

function ReadConsole; external kernel32 name 'ReadConsoleW';

function ReadConsoleA; external kernel32 name 'ReadConsoleA';

function ReadConsoleW; external kernel32 name 'ReadConsoleW';

function ReadConsoleInput; external kernel32 name 'ReadConsoleInputW';

function ReadConsoleInputA; external kernel32 name 'ReadConsoleInputA';

function ReadConsoleInputW; external kernel32 name 'ReadConsoleInputW';

function ReadConsoleOutput; external kernel32 name 'ReadConsoleOutputW';

function ReadConsoleOutputA; external kernel32 name 'ReadConsoleOutputA';

function ReadConsoleOutputW; external kernel32 name 'ReadConsoleOutputW';

function ReadConsoleOutputAttribute; external kernel32 name 'ReadConsoleOutputAttribute';

function ReadConsoleOutputCharacter; external kernel32 name 'ReadConsoleOutputCharacterW';

function ReadConsoleOutputCharacterA; external kernel32 name 'ReadConsoleOutputCharacterA';

function ReadConsoleOutputCharacterW; external kernel32 name 'ReadConsoleOutputCharacterW';

function ReadDirectoryChanges; external kernel32 name 'ReadDirectoryChangesW';

function ReadDirectoryChangesW; external kernel32 name 'ReadDirectoryChangesW';

function ReadFile; external kernel32 name 'ReadFile';

function ReadFileEx; external kernel32 name 'ReadFileEx';

function ReadProcessMemory; external kernel32 name 'ReadProcessMemory';

function ReadRaw; external kernel32 name 'ReadRaw';

function RegisterWaitForSingleObject; external kernel32 name 'RegisterWaitForSingleObject';

function RegisterWaitForSingleObjectEx; external kernel32 name 'RegisterWaitForSingleObjectEx';

function ReleaseMutex; external kernel32 name 'ReleaseMutex';

function ReleaseSemaphore; external kernel32 name 'ReleaseSemaphore';

function RemoveDirectory; external kernel32 name 'RemoveDirectoryW';

function RemoveDirectoryA; external kernel32 name 'RemoveDirectoryA';

function RemoveDirectoryW; external kernel32 name 'RemoveDirectoryW';

function ResetEvent; external kernel32 name 'ResetEvent';

function ResumeThread; external kernel32 name 'ResumeThread';

function ScrollConsoleScreenBuffer; external kernel32 name 'ScrollConsoleScreenBufferW';

function ScrollConsoleScreenBufferA; external kernel32 name 'ScrollConsoleScreenBufferA';

function ScrollConsoleScreenBufferW; external kernel32 name 'ScrollConsoleScreenBufferW';

function SearchPath; external kernel32 name 'SearchPathW';

function SearchPathA; external kernel32 name 'SearchPathA';

function SearchPathW; external kernel32 name 'SearchPathW';

function SetCommBreak; external kernel32 name 'SetCommBreak';

function SetCommConfig; external kernel32 name 'SetCommConfig';

function SetCommMask; external kernel32 name 'SetCommMask';

function SetCommState; external kernel32 name 'SetCommState';

function SetCommTimeouts; external kernel32 name 'SetCommTimeouts';

function SetComputerName; external kernel32 name 'SetComputerNameW';

function SetComputerNameA; external kernel32 name 'SetComputerNameA';

function SetComputerNameW; external kernel32 name 'SetComputerNameW';

function SetConsoleActiveScreenBuffer; external kernel32 name 'SetConsoleActiveScreenBuffer';

function SetConsoleCP; external kernel32 name 'SetConsoleCP';

function SetConsoleCtrlHandler; external kernel32 name 'SetConsoleCtrlHandler';

function SetConsoleCursorInfo; external kernel32 name 'SetConsoleCursorInfo';

function SetConsoleCursorPosition; external kernel32 name 'SetConsoleCursorPosition';

function SetConsoleMode; external kernel32 name 'SetConsoleMode';

function SetConsoleOutputCP; external kernel32 name 'SetConsoleOutputCP';

function SetConsoleScreenBufferSize; external kernel32 name 'SetConsoleScreenBufferSize';

function SetConsoleTextAttribute; external kernel32 name 'SetConsoleTextAttribute';

function SetConsoleTitle; external kernel32 name 'SetConsoleTitleW';

function SetConsoleTitleA; external kernel32 name 'SetConsoleTitleA';

function SetConsoleTitleW; external kernel32 name 'SetConsoleTitleW';

function SetConsoleWindowInfo; external kernel32 name 'SetConsoleWindowInfo';

function SetCriticalSectionSpinCount; external kernel32 name 'SetCriticalSectionSpinCount';

function SetCurrentDirectory; external kernel32 name 'SetCurrentDirectoryW';

function SetCurrentDirectoryA; external kernel32 name 'SetCurrentDirectoryA';

function SetCurrentDirectoryW; external kernel32 name 'SetCurrentDirectoryW';

function SetDefaultCommConfig; external kernel32 name 'SetDefaultCommConfigW';

function SetDefaultCommConfigA; external kernel32 name 'SetDefaultCommConfigA';

function SetDefaultCommConfigW; external kernel32 name 'SetDefaultCommConfigW';

function SetDllDirectory; external kernel32 name 'SetDllDirectoryW';

function SetDllDirectoryA; external kernel32 name 'SetDllDirectoryA';

function SetDllDirectoryW; external kernel32 name 'SetDllDirectoryW';

function SetEndOfFile; external kernel32 name 'SetEndOfFile';

function SetEnvironmentVariable; external kernel32 name 'SetEnvironmentVariableW';

function SetEnvironmentVariableA; external kernel32 name 'SetEnvironmentVariableA';

function SetEnvironmentVariableW; external kernel32 name 'SetEnvironmentVariableW';

function SetErrorMode; external kernel32 name 'SetErrorMode';

function SetEvent; external kernel32 name 'SetEvent';

procedure SetFileApisToANSI; external kernel32 name 'SetFileApisToANSI';

procedure SetFileApisToOEM; external kernel32 name 'SetFileApisToOEM';

function SetFileAttributes; external kernel32 name 'SetFileAttributesW';

function SetFileAttributesA; external kernel32 name 'SetFileAttributesA';

function SetFileAttributesW; external kernel32 name 'SetFileAttributesW';

function SetFilePointer; external kernel32 name 'SetFilePointer';

function SetFileTime; external kernel32 name 'SetFileTime';

function SetHandleCount; external kernel32 name 'SetHandleCount';

function SetHandleInformation; external kernel32 name 'SetHandleInformation';

procedure SetLastError; external kernel32 name 'SetLastError';

function SetLocalTime; external kernel32 name 'SetLocalTime';

function SetLocaleInfo; external kernel32 name 'SetLocaleInfoW';

function SetLocaleInfoA; external kernel32 name 'SetLocaleInfoA';

function SetLocaleInfoW; external kernel32 name 'SetLocaleInfoW';

function SetMailslotInfo; external kernel32 name 'SetMailslotInfo';

function SetNamedPipeHandleState; external kernel32 name 'SetNamedPipeHandleState';

function SetPriorityClass; external kernel32 name 'SetPriorityClass';

function SetProcessAffinityMask; external kernel32 name 'SetProcessAffinityMask';

function SetProcessPriorityBoost; external kernel32 name 'SetProcessPriorityBoost';

function SetProcessShutdownParameters; external kernel32 name 'SetProcessShutdownParameters';

function SetProcessWorkingSetSize; external kernel32 name 'SetProcessWorkingSetSize';

function SetStdHandle; external kernel32 name 'SetStdHandle';

function SetSystemPowerState; external kernel32 name 'SetSystemPowerState';

function SetSystemTime; external kernel32 name 'SetSystemTime';

function SetSystemTimeAdjustment; external kernel32 name 'SetSystemTimeAdjustment';

function SetTapeParameters; external kernel32 name 'SetTapeParameters';

function SetTapePosition; external kernel32 name 'SetTapePosition';

function SetThreadAffinityMask; external kernel32 name 'SetThreadAffinityMask';

function SetThreadContext; external kernel32 name 'SetThreadContext';

function SetThreadIdealProcessor; external kernel32 name 'SetThreadIdealProcessor';

function SetThreadLocale; external kernel32 name 'SetThreadLocale';

function SetThreadPriority; external kernel32 name 'SetThreadPriority';

function SetThreadPriorityBoost; external kernel32 name 'SetThreadPriorityBoost';

function SetTimerQueueTimer; external kernel32 name 'SetTimerQueueTimer';

function SetTimeZoneInformation; external kernel32 name 'SetTimeZoneInformation';

function SetUnhandledExceptionFilter; external kernel32 name 'SetUnhandledExceptionFilter';

function SetVolumeLabel; external kernel32 name 'SetVolumeLabelW';

function SetVolumeLabelA; external kernel32 name 'SetVolumeLabelA';

function SetVolumeLabelW; external kernel32 name 'SetVolumeLabelW';

function SetWaitableTimer; external kernel32 name 'SetWaitableTimer';

function SetupComm; external kernel32 name 'SetupComm';

function SignalObjectAndWait; external kernel32 name 'SignalObjectAndWait';

{$IFDEF MSWINDOWS}

function SizeofResource; external kernel32 name 'SizeofResource';

{$ENDIF}

procedure Sleep; external kernel32 name 'Sleep';

function SleepEx; external kernel32 name 'SleepEx';

function SuspendThread; external kernel32 name 'SuspendThread';

function SwitchToFiber; external kernel32 name 'SwitchToFiber';

function SwitchToThread; external kernel32 name 'SwitchToThread';

function SystemTimeToFileTime; external kernel32 name 'SystemTimeToFileTime';

function SystemTimeToTzSpecificLocalTime; external kernel32 name 'SystemTimeToTzSpecificLocalTime';

function TerminateProcess; external kernel32 name 'TerminateProcess';

function TerminateThread; external kernel32 name 'TerminateThread';

function TlsAlloc; external kernel32 name 'TlsAlloc';

function TlsFree; external kernel32 name 'TlsFree';

function TlsGetValue; external kernel32 name 'TlsGetValue';

function TlsSetValue; external kernel32 name 'TlsSetValue';

function TransactNamedPipe; external kernel32 name 'TransactNamedPipe';

function TransmitCommChar; external kernel32 name 'TransmitCommChar';

function TryEnterCriticalSection; external kernel32 name 'TryEnterCriticalSection';

function UnhandledExceptionFilter; external kernel32 name 'UnhandledExceptionFilter';

function UnlockFile; external kernel32 name 'UnlockFile';

function UnlockFileEx; external kernel32 name 'UnlockFileEx';

function UnmapViewOfFile; external kernel32 name 'UnmapViewOfFile';

function UnregisterWait; external kernel32 name 'UnregisterWait';

function UnregisterWaitEx; external kernel32 name 'UnregisterWaitEx';

function UpdateResource; external kernel32 name 'UpdateResourceW';

function UpdateResourceA; external kernel32 name 'UpdateResourceA';

function UpdateResourceW; external kernel32 name 'UpdateResourceW';

function VerLanguageName; external kernel32 name 'VerLanguageNameW';

function VerLanguageNameA; external kernel32 name 'VerLanguageNameA';

function VerLanguageNameW; external kernel32 name 'VerLanguageNameW';

function VerifyVersionInfo; external kernel32 name 'VerifyVersionInfoW';

function VerifyVersionInfoA; external kernel32 name 'VerifyVersionInfoA';

function VerifyVersionInfoW; external kernel32 name 'VerifyVersionInfoW';

function VirtualAlloc; external kernel32 name 'VirtualAlloc';

function VirtualAllocEx; external kernel32 name 'VirtualAllocEx';

function VirtualFree; external kernel32 name 'VirtualFree';

function VirtualFreeEx; external kernel32 name 'VirtualFreeEx';

function VirtualLock; external kernel32 name 'VirtualLock';

function VirtualProtect(lpAddress: Pointer; dwSize, flNewProtect: DWORD;

lpflOldProtect: Pointer): BOOL; external kernel32 name 'VirtualProtect';

function VirtualProtect(lpAddress: Pointer; dwSize, flNewProtect: DWORD;

var OldProtect: DWORD): BOOL; external kernel32 name 'VirtualProtect';

function VirtualProtectEx(hProcess: THandle; lpAddress: Pointer;

dwSize, flNewProtect: DWORD; lpflOldProtect: Pointer): BOOL;

external kernel32 name 'VirtualProtectEx';

function VirtualProtectEx(hProcess: THandle; lpAddress: Pointer;

dwSize, flNewProtect: DWORD; var OldProtect: DWORD): BOOL;

external kernel32 name 'VirtualProtectEx';

function VirtualQuery; external kernel32 name 'VirtualQuery';

function VirtualQueryEx; external kernel32 name 'VirtualQueryEx';

function VirtualUnlock; external kernel32 name 'VirtualUnlock';

function WaitCommEvent; external kernel32 name 'WaitCommEvent';

function WaitForDebugEvent; external kernel32 name 'WaitForDebugEvent';

function WaitForMultipleObjects; external kernel32 name 'WaitForMultipleObjects';

function WaitForMultipleObjectsEx; external kernel32 name 'WaitForMultipleObjectsEx';

function WaitForSingleObject; external kernel32 name 'WaitForSingleObject';

function WaitForSingleObjectEx; external kernel32 name 'WaitForSingleObjectEx';

procedure InitializeConditionVariable; external kernel32 name 'InitializeConditionVariable';

procedure WakeConditionVariable; external kernel32 name 'WakeConditionVariable';

procedure WakeAllConditionVariable; external kernel32 name 'WakeAllConditionVariable';

function SleepConditionVariableCS; external kernel32 name 'SleepConditionVariableCS';

function WaitNamedPipe; external kernel32 name 'WaitNamedPipeW';

function WaitNamedPipeA; external kernel32 name 'WaitNamedPipeA';

function WaitNamedPipeW; external kernel32 name 'WaitNamedPipeW';

function WideCharToMultiByte; external kernel32 name 'WideCharToMultiByte';

function WinExec; external kernel32 name 'WinExec';

function WriteConsole; external kernel32 name 'WriteConsoleW';

function WriteConsoleA; external kernel32 name 'WriteConsoleA';

function WriteConsoleW; external kernel32 name 'WriteConsoleW';

function WriteConsoleInput; external kernel32 name 'WriteConsoleInputW';

function WriteConsoleInputA; external kernel32 name 'WriteConsoleInputA';

function WriteConsoleInputW; external kernel32 name 'WriteConsoleInputW';

function WriteConsoleOutput; external kernel32 name 'WriteConsoleOutputW';

function WriteConsoleOutputA; external kernel32 name 'WriteConsoleOutputA';

function WriteConsoleOutputW; external kernel32 name 'WriteConsoleOutputW';

function WriteConsoleOutputAttribute; external kernel32 name 'WriteConsoleOutputAttribute';

function WriteConsoleOutputCharacter; external kernel32 name 'WriteConsoleOutputCharacterW';

function WriteConsoleOutputCharacterA; external kernel32 name 'WriteConsoleOutputCharacterA';

function WriteConsoleOutputCharacterW; external kernel32 name 'WriteConsoleOutputCharacterW';

function WriteFile; external kernel32 name 'WriteFile';

function WriteFileEx; external kernel32 name 'WriteFileEx';

function WritePrivateProfileSection; external kernel32 name 'WritePrivateProfileSectionW';

function WritePrivateProfileSectionA; external kernel32 name 'WritePrivateProfileSectionA';

function WritePrivateProfileSectionW; external kernel32 name 'WritePrivateProfileSectionW';

function WritePrivateProfileString; external kernel32 name 'WritePrivateProfileStringW';

function WritePrivateProfileStringA; external kernel32 name 'WritePrivateProfileStringA';

function WritePrivateProfileStringW; external kernel32 name 'WritePrivateProfileStringW';

function WriteProcessMemory; external kernel32 name 'WriteProcessMemory';

function WriteProfileSection; external kernel32 name 'WriteProfileSectionW';

function WriteProfileSectionA; external kernel32 name 'WriteProfileSectionA';

function WriteProfileSectionW; external kernel32 name 'WriteProfileSectionW';

function WriteProfileString; external kernel32 name 'WriteProfileStringW';

function WriteProfileStringA; external kernel32 name 'WriteProfileStringA';

function WriteProfileStringW; external kernel32 name 'WriteProfileStringW';

function WriteRaw; external kernel32 name 'WriteRaw';

function WriteTapemark; external kernel32 name 'WriteTapemark';

function _hread; external kernel32 name '_hread';

function _hwrite; external kernel32 name '_hwrite';

function _lclose; external kernel32 name '_lclose';

function _lcreat; external kernel32 name '_lcreat';

function _llseek; external kernel32 name '_llseek';

function _lopen; external kernel32 name '_lopen';

function _lread; external kernel32 name '_lread';

function _lwrite; external kernel32 name '_lwrite';

function lstrcat; external kernel32 name 'lstrcatW';

function lstrcatA; external kernel32 name 'lstrcatA';

function lstrcatW; external kernel32 name 'lstrcatW';

function lstrcmp; external kernel32 name 'lstrcmpW';

function lstrcmpA; external kernel32 name 'lstrcmpA';

function lstrcmpW; external kernel32 name 'lstrcmpW';

function lstrcmpi; external kernel32 name 'lstrcmpiW';

function lstrcmpiA; external kernel32 name 'lstrcmpiA';

function lstrcmpiW; external kernel32 name 'lstrcmpiW';

function lstrcpy; external kernel32 name 'lstrcpyW';

function lstrcpyA; external kernel32 name 'lstrcpyA';

function lstrcpyW; external kernel32 name 'lstrcpyW';

function lstrcpyn; external kernel32 name 'lstrcpynW';

function lstrcpynA; external kernel32 name 'lstrcpynA';

function lstrcpynW; external kernel32 name 'lstrcpynW';

function lstrlen; external kernel32 name 'lstrlenW';

function lstrlenA; external kernel32 name 'lstrlenA';

function lstrlenW; external kernel32 name 'lstrlenW';

{ Externals from mpr.dll }

function MultinetGetConnectionPerformance; external mpr name 'MultinetGetConnectionPerformanceW';

function MultinetGetConnectionPerformanceA; external mpr name 'MultinetGetConnectionPerformanceA';

function MultinetGetConnectionPerformanceW; external mpr name 'MultinetGetConnectionPerformanceW';

function WNetAddConnection2; external mpr name 'WNetAddConnection2W';

function WNetAddConnection2A; external mpr name 'WNetAddConnection2A';

function WNetAddConnection2W; external mpr name 'WNetAddConnection2W';

function WNetAddConnection3; external mpr name 'WNetAddConnection3W';

function WNetAddConnection3A; external mpr name 'WNetAddConnection3A';

function WNetAddConnection3W; external mpr name 'WNetAddConnection3W';

function WNetAddConnection; external mpr name 'WNetAddConnectionW';

function WNetAddConnectionA; external mpr name 'WNetAddConnectionA';

function WNetAddConnectionW; external mpr name 'WNetAddConnectionW';

function WNetCancelConnection2; external mpr name 'WNetCancelConnection2W';

function WNetCancelConnection2A; external mpr name 'WNetCancelConnection2A';

function WNetCancelConnection2W; external mpr name 'WNetCancelConnection2W';

function WNetCancelConnection; external mpr name 'WNetCancelConnectionW';

function WNetCancelConnectionA; external mpr name 'WNetCancelConnectionA';

function WNetCancelConnectionW; external mpr name 'WNetCancelConnectionW';

function WNetCloseEnum; external mpr name 'WNetCloseEnum';

function WNetConnectionDialog1; external mpr name 'WNetConnectionDialog1W';

function WNetConnectionDialog1A; external mpr name 'WNetConnectionDialog1A';

function WNetConnectionDialog1W; external mpr name 'WNetConnectionDialog1W';

function WNetConnectionDialog; external mpr name 'WNetConnectionDialog';

function WNetDisconnectDialog1; external mpr name 'WNetDisconnectDialog1W';

function WNetDisconnectDialog1A; external mpr name 'WNetDisconnectDialog1A';

function WNetDisconnectDialog1W; external mpr name 'WNetDisconnectDialog1W';

function WNetDisconnectDialog; external mpr name 'WNetDisconnectDialog';

function WNetEnumResource; external mpr name 'WNetEnumResourceW';

function WNetEnumResourceA; external mpr name 'WNetEnumResourceA';

function WNetEnumResourceW; external mpr name 'WNetEnumResourceW';

function WNetGetConnection; external mpr name 'WNetGetConnectionW';

function WNetGetConnectionA; external mpr name 'WNetGetConnectionA';

function WNetGetConnectionW; external mpr name 'WNetGetConnectionW';

function WNetGetLastError; external mpr name 'WNetGetLastErrorW';

function WNetGetLastErrorA; external mpr name 'WNetGetLastErrorA';

function WNetGetLastErrorW; external mpr name 'WNetGetLastErrorW';

function WNetGetNetworkInformation; external mpr name 'WNetGetNetworkInformationW';

function WNetGetNetworkInformationA; external mpr name 'WNetGetNetworkInformationA';

function WNetGetNetworkInformationW; external mpr name 'WNetGetNetworkInformationW';

function WNetGetProviderName; external mpr name 'WNetGetProviderNameW';

function WNetGetProviderNameA; external mpr name 'WNetGetProviderNameA';

function WNetGetProviderNameW; external mpr name 'WNetGetProviderNameW';

function WNetGetResourceParent; external mpr name 'WNetGetResourceParentW';

function WNetGetResourceParentA; external mpr name 'WNetGetResourceParentA';

function WNetGetResourceParentW; external mpr name 'WNetGetResourceParentW';

function WNetGetUniversalName; external mpr name 'WNetGetUniversalNameW';

function WNetGetUniversalNameA; external mpr name 'WNetGetUniversalNameA';

function WNetGetUniversalNameW; external mpr name 'WNetGetUniversalNameW';

function WNetGetUser; external mpr name 'WNetGetUserW';

function WNetGetUserA; external mpr name 'WNetGetUserA';

function WNetGetUserW; external mpr name 'WNetGetUserW';

function WNetOpenEnum; external mpr name 'WNetOpenEnumW';

function WNetOpenEnumA; external mpr name 'WNetOpenEnumA';

function WNetOpenEnumW; external mpr name 'WNetOpenEnumW';

function WNetSetConnection; external mpr name 'WNetSetConnectionW';

function WNetSetConnectionA; external mpr name 'WNetSetConnectionA';

function WNetSetConnectionW; external mpr name 'WNetSetConnectionW';

function WNetUseConnection; external mpr name 'WNetUseConnectionW';

function WNetUseConnectionA; external mpr name 'WNetUseConnectionA';

function WNetUseConnectionW; external mpr name 'WNetUseConnectionW';

{ Externals from version.dll }

function GetFileVersionInfo; external version name 'GetFileVersionInfoW';

function GetFileVersionInfoA; external version name 'GetFileVersionInfoA';

function GetFileVersionInfoW; external version name 'GetFileVersionInfoW';

function GetFileVersionInfoSize; external version name 'GetFileVersionInfoSizeW';

function GetFileVersionInfoSizeA; external version name 'GetFileVersionInfoSizeA';

function GetFileVersionInfoSizeW; external version name 'GetFileVersionInfoSizeW';

function VerFindFile; external version name 'VerFindFileW';

function VerFindFileA; external version name 'VerFindFileA';

function VerFindFileW; external version name 'VerFindFileW';

function VerInstallFile; external version name 'VerInstallFileW';

function VerInstallFileA; external version name 'VerInstallFileA';

function VerInstallFileW; external version name 'VerInstallFileW';

function VerQueryValue; external version name 'VerQueryValueW';

function VerQueryValueA; external version name 'VerQueryValueA';

function VerQueryValueW; external version name 'VerQueryValueW';

function GetPrivateProfileStruct; external kernel32 name 'GetPrivateProfileStructW';

function GetPrivateProfileStructA; external kernel32 name 'GetPrivateProfileStructA';

function GetPrivateProfileStructW; external kernel32 name 'GetPrivateProfileStructW';

function WritePrivateProfileStruct; external kernel32 name 'WritePrivateProfileStructW';

function WritePrivateProfileStructA; external kernel32 name 'WritePrivateProfileStructA';

function WritePrivateProfileStructW; external kernel32 name 'WritePrivateProfileStructW';

{ Externals from gdi32.dll }

function AbortDoc; external gdi32 name 'AbortDoc';

function AbortPath; external gdi32 name 'AbortPath';

function AddFontMemResourceEx; external gdi32 name 'AddFontMemResourceEx';

function AddFontResource; external gdi32 name 'AddFontResourceW';

function AddFontResourceA; external gdi32 name 'AddFontResourceA';

function AddFontResourceW; external gdi32 name 'AddFontResourceW';

function AddFontResourceEx; external gdi32 name 'AddFontResourceExW';

function AddFontResourceExA; external gdi32 name 'AddFontResourceExA';

function AddFontResourceExW; external gdi32 name 'AddFontResourceExW';

function AlphaBlend; external msimg32 name 'AlphaBlend';

function AlphaDIBBlend; external msimg32 name 'AlphaDIBBlend';

function AngleArc; external gdi32 name 'AngleArc';

function AnimatePalette; external gdi32 name 'AnimatePalette';

function Arc; external gdi32 name 'Arc';

function ArcTo; external gdi32 name 'ArcTo';

function BeginPath; external gdi32 name 'BeginPath';

function BitBlt; external gdi32 name 'BitBlt';

function CancelDC; external gdi32 name 'CancelDC';

function CheckColorsInGamut; external gdi32 name 'CheckColorsInGamut';

function ChoosePixelFormat; external gdi32 name 'ChoosePixelFormat';

function Chord; external gdi32 name 'Chord';

function CloseEnhMetaFile; external gdi32 name 'CloseEnhMetaFile';

function CloseFigure; external gdi32 name 'CloseFigure';

function CloseMetaFile; external gdi32 name 'CloseMetaFile';

function ColorCorrectPalette; external gdi32 name 'ColorCorrectPalette';

function ColorMatchToTarget; external gdi32 name 'ColorMatchToTarget';

function CombineRgn; external gdi32 name 'CombineRgn';

function CombineTransform; external gdi32 name 'CombineTransform';

function CopyEnhMetaFile; external gdi32 name 'CopyEnhMetaFileW';

function CopyEnhMetaFileA; external gdi32 name 'CopyEnhMetaFileA';

function CopyEnhMetaFileW; external gdi32 name 'CopyEnhMetaFileW';

function CopyMetaFile; external gdi32 name 'CopyMetaFileW';

function CopyMetaFileA; external gdi32 name 'CopyMetaFileA';

function CopyMetaFileW; external gdi32 name 'CopyMetaFileW';

function CreateBitmap; external gdi32 name 'CreateBitmap';

function CreateBitmapIndirect; external gdi32 name 'CreateBitmapIndirect';

function CreateBrushIndirect; external gdi32 name 'CreateBrushIndirect';

function CreateColorSpace; external gdi32 name 'CreateColorSpaceW';

function CreateColorSpaceA; external gdi32 name 'CreateColorSpaceA';

function CreateColorSpaceW; external gdi32 name 'CreateColorSpaceW';

function CreateCompatibleBitmap; external gdi32 name 'CreateCompatibleBitmap';

function CreateCompatibleDC; external gdi32 name 'CreateCompatibleDC';

function CreateDC; external gdi32 name 'CreateDCW';

function CreateDCA; external gdi32 name 'CreateDCA';

function CreateDCW; external gdi32 name 'CreateDCW';

function CreateDIBPatternBrush; external gdi32 name 'CreateDIBPatternBrush';

function CreateDIBPatternBrushPt; external gdi32 name 'CreateDIBPatternBrushPt';

function CreateDIBSection; external gdi32 name 'CreateDIBSection';

function CreateDIBitmap; external gdi32 name 'CreateDIBitmap';

function CreateDiscardableBitmap; external gdi32 name 'CreateDiscardableBitmap';

function CreateEllipticRgn; external gdi32 name 'CreateEllipticRgn';

function CreateEllipticRgnIndirect; external gdi32 name 'CreateEllipticRgnIndirect';

function CreateEnhMetaFile; external gdi32 name 'CreateEnhMetaFileW';

function CreateEnhMetaFileA; external gdi32 name 'CreateEnhMetaFileA';

function CreateEnhMetaFileW; external gdi32 name 'CreateEnhMetaFileW';

function CreateFont; external gdi32 name 'CreateFontW';

function CreateFontA; external gdi32 name 'CreateFontA';

function CreateFontW; external gdi32 name 'CreateFontW';

function CreateFontIndirect; external gdi32 name 'CreateFontIndirectW';

function CreateFontIndirectA; external gdi32 name 'CreateFontIndirectA';

function CreateFontIndirectW; external gdi32 name 'CreateFontIndirectW';

function CreateFontIndirectEx; external gdi32 name 'CreateFontIndirectExW';

function CreateFontIndirectExA; external gdi32 name 'CreateFontIndirectExA';

function CreateFontIndirectExW; external gdi32 name 'CreateFontIndirectExW';

function CreateHalftonePalette; external gdi32 name 'CreateHalftonePalette';

function CreateHatchBrush; external gdi32 name 'CreateHatchBrush';

function CreateIC; external gdi32 name 'CreateICW';

function CreateICA; external gdi32 name 'CreateICA';

function CreateICW; external gdi32 name 'CreateICW';

function CreateMetaFile; external gdi32 name 'CreateMetaFileW';

function CreateMetaFileA; external gdi32 name 'CreateMetaFileA';

function CreateMetaFileW; external gdi32 name 'CreateMetaFileW';

function CreatePalette; external gdi32 name 'CreatePalette';

function CreatePatternBrush; external gdi32 name 'CreatePatternBrush';

function CreatePen; external gdi32 name 'CreatePen';

function CreatePenIndirect; external gdi32 name 'CreatePenIndirect';

function CreatePolyPolygonRgn; external gdi32 name 'CreatePolyPolygonRgn';

function CreatePolygonRgn; external gdi32 name 'CreatePolygonRgn';

function CreateRectRgn; external gdi32 name 'CreateRectRgn';

function CreateRectRgnIndirect; external gdi32 name 'CreateRectRgnIndirect';

function CreateRoundRectRgn; external gdi32 name 'CreateRoundRectRgn';

function CreateScalableFontResource; external gdi32 name 'CreateScalableFontResourceW';

function CreateScalableFontResourceA; external gdi32 name 'CreateScalableFontResourceA';

function CreateScalableFontResourceW; external gdi32 name 'CreateScalableFontResourceW';

function CreateSolidBrush; external gdi32 name 'CreateSolidBrush';

function DPtoLP; external gdi32 name 'DPtoLP';

function DeleteColorSpace; external gdi32 name 'DeleteColorSpace';

function DeleteDC; external gdi32 name 'DeleteDC';

function DeleteEnhMetaFile; external gdi32 name 'DeleteEnhMetaFile';

function DeleteMetaFile; external gdi32 name 'DeleteMetaFile';

function DeleteObject; external gdi32 name 'DeleteObject';

function DescribePixelFormat; external gdi32 name 'DescribePixelFormat';

function DeviceCapabilities; external gdi32 name 'DeviceCapabilitiesW';

function DeviceCapabilitiesA; external gdi32 name 'DeviceCapabilitiesA';

function DeviceCapabilitiesW; external gdi32 name 'DeviceCapabilitiesW';

{function DeviceCapabilitiesEx; external gdi32 name 'DeviceCapabilities';}

function DrawEscape; external gdi32 name 'DrawEscape';

function Ellipse; external gdi32 name 'Ellipse';

function EndDoc; external gdi32 name 'EndDoc';

function EndPage; external gdi32 name 'EndPage';

function EndPath; external gdi32 name 'EndPath';

function EnumEnhMetaFile; external gdi32 name 'EnumEnhMetaFile';

function EnumFontFamilies; external gdi32 name 'EnumFontFamiliesW';

function EnumFontFamiliesA; external gdi32 name 'EnumFontFamiliesA';

function EnumFontFamiliesW; external gdi32 name 'EnumFontFamiliesW';

function EnumFontFamiliesEx; external gdi32 name 'EnumFontFamiliesExW';

function EnumFontFamiliesExA; external gdi32 name 'EnumFontFamiliesExA';

function EnumFontFamiliesExW; external gdi32 name 'EnumFontFamiliesExW';

function EnumFonts(DC: HDC; lpszFace: PWideChar; fntenmprc: TFNFontEnumProc;

lParam: LPARAM): Integer; stdcall; overload; external gdi32 name 'EnumFontsW';

function EnumFontsA(DC: HDC; lpszFace: PAnsiChar; fntenmprc: TFNFontEnumProcA;

lParam: LPARAM): Integer; stdcall; overload; external gdi32 name 'EnumFontsA';

function EnumFontsW(DC: HDC; lpszFace: PWideChar; fntenmprc: TFNFontEnumProcW;

lParam: LPARAM): Integer; stdcall; overload; external gdi32 name 'EnumFontsW';

function EnumFonts(DC: HDC; lpszFace: PWideChar; fntenmprc: TFNFontEnumProc;

lpszData: PWideChar): Integer; stdcall; overload; external gdi32 name 'EnumFontsW';

function EnumFontsA(DC: HDC; lpszFace: PAnsiChar; fntenmprc: TFNFontEnumProcA;

lpszData: PAnsiChar): Integer; stdcall; overload; external gdi32 name 'EnumFontsA';

function EnumFontsW(DC: HDC; lpszFace: PWideChar; fntenmprc: TFNFontEnumProcW;

lpszData: PWideChar): Integer; stdcall; overload; external gdi32 name 'EnumFontsW';

function EnumICMProfiles; external gdi32 name 'EnumICMProfilesW';

function EnumICMProfilesA; external gdi32 name 'EnumICMProfilesA';

function EnumICMProfilesW; external gdi32 name 'EnumICMProfilesW';

function EnumMetaFile; external gdi32 name 'EnumMetaFile';

function EnumObjects; external gdi32 name 'EnumObjects';

function EqualRgn; external gdi32 name 'EqualRgn';

function Escape; external gdi32 name 'Escape';

function ExcludeClipRect; external gdi32 name 'ExcludeClipRect';

function ExtCreatePen; external gdi32 name 'ExtCreatePen';

function ExtCreateRegion; external gdi32 name 'ExtCreateRegion';

function ExtEscape; external gdi32 name 'ExtEscape';

function ExtFloodFill; external gdi32 name 'ExtFloodFill';

function ExtSelectClipRgn; external gdi32 name 'ExtSelectClipRgn';

function ExtTextOut(DC: HDC; X, Y: Integer; Options: Longint;

Rect: PRect; Str: PWideChar; Count: Longint; Dx: PInteger): BOOL; external gdi32 name 'ExtTextOutW';

function ExtTextOutA(DC: HDC; X, Y: Integer; Options: Longint;

Rect: PRect; Str: PAnsiChar; Count: Longint; Dx: PInteger): BOOL; external gdi32 name 'ExtTextOutA';

function ExtTextOutW(DC: HDC; X, Y: Integer; Options: Longint;

Rect: PRect; Str: PWideChar; Count: Longint; Dx: PInteger): BOOL; external gdi32 name 'ExtTextOutW';

function ExtTextOut(DC: HDC; X, Y: Integer; Options: Longint;

const Rect: TRect; const Str: UnicodeString; Count: Longint; Dx: PInteger): BOOL;

begin

Result := ExtTextOut(DC, X, Y, Options, @Rect, PWideChar(Str), Count, Dx);

end;

function ExtTextOutA(DC: HDC; X, Y: Integer; Options: Longint;

const Rect: TRect; const Str: AnsiString; Count: Longint; Dx: PInteger): BOOL;

begin

Result := ExtTextOutA(DC, X, Y, Options, @Rect, PAnsiChar(Str), Count, Dx);

end;

function ExtTextOutW(DC: HDC; X, Y: Integer; Options: Longint;

const Rect: TRect; const Str: UnicodeString; Count: Longint; Dx: PInteger): BOOL;

begin

Result := ExtTextOutW(DC, X, Y, Options, @Rect, PWideChar(Str), Count, Dx);

end;

function ExtTextOut(DC: HDC; X, Y: Integer; Options: Longint;

Rect: PRect; const Str: UnicodeString; Count: Longint; Dx: PInteger): BOOL;

begin

Result := ExtTextOut(DC, X, Y, Options, Rect, PWideChar(Str), Count, Dx);

end;

function ExtTextOutA(DC: HDC; X, Y: Integer; Options: Longint;

Rect: PRect; const Str: AnsiString; Count: Longint; Dx: PInteger): BOOL;

begin

Result := ExtTextOutA(DC, X, Y, Options, Rect, PAnsiChar(Str), Count, Dx);

end;

function ExtTextOutW(DC: HDC; X, Y: Integer; Options: Longint;

Rect: PRect; const Str: UnicodeString; Count: Longint; Dx: PInteger): BOOL;

begin

Result := ExtTextOutW(DC, X, Y, Options, Rect, PWideChar(Str), Count, Dx);

end;

function FillPath; external gdi32 name 'FillPath';

function FillRgn; external gdi32 name 'FillRgn';

function FlattenPath; external gdi32 name 'FlattenPath';

function FloodFill; external gdi32 name 'FloodFill';

function FrameRgn; external gdi32 name 'FrameRgn';

function GdiComment; external gdi32 name 'GdiComment';

function GdiFlush; external gdi32 name 'GdiFlush';

function GdiGetBatchLimit; external gdi32 name 'GdiGetBatchLimit';

function GdiSetBatchLimit; external gdi32 name 'GdiSetBatchLimit';

function GetArcDirection; external gdi32 name 'GetArcDirection';

function GetAspectRatioFilterEx; external gdi32 name 'GetAspectRatioFilterEx';

function GetBitmapBits; external gdi32 name 'GetBitmapBits';

function GetBitmapDimensionEx; external gdi32 name 'GetBitmapDimensionEx';

function GetBkColor; external gdi32 name 'GetBkColor';

function GetBkMode; external gdi32 name 'GetBkMode';

function GetBoundsRect; external gdi32 name 'GetBoundsRect';

function GetBrushOrgEx; external gdi32 name 'GetBrushOrgEx';

function GetCharABCWidths; external gdi32 name 'GetCharABCWidthsW';

function GetCharABCWidthsA; external gdi32 name 'GetCharABCWidthsA';

function GetCharABCWidthsW; external gdi32 name 'GetCharABCWidthsW';

function GetCharABCWidthsI; external gdi32 name 'GetCharABCWidthsI';

function GetCharABCWidthsFloat; external gdi32 name 'GetCharABCWidthsFloatW';

function GetCharABCWidthsFloatA; external gdi32 name 'GetCharABCWidthsFloatA';

function GetCharABCWidthsFloatW; external gdi32 name 'GetCharABCWidthsFloatW';

function GetCharWidth32; external gdi32 name 'GetCharWidth32W';

function GetCharWidth32A; external gdi32 name 'GetCharWidth32A';

function GetCharWidth32W; external gdi32 name 'GetCharWidth32W';

function GetCharWidth; external gdi32 name 'GetCharWidthW';

function GetCharWidthA; external gdi32 name 'GetCharWidthA';

function GetCharWidthW; external gdi32 name 'GetCharWidthW';

function GetCharWidthFloat; external gdi32 name 'GetCharWidthFloatW';

function GetCharWidthFloatA; external gdi32 name 'GetCharWidthFloatA';

function GetCharWidthFloatW; external gdi32 name 'GetCharWidthFloatW';

function GetCharWidthI; external gdi32 name 'GetCharWidthI';

function GetCharacterPlacement; external gdi32 name 'GetCharacterPlacementW';

function GetCharacterPlacementA; external gdi32 name 'GetCharacterPlacementA';

function GetCharacterPlacementW; external gdi32 name 'GetCharacterPlacementW';

function GetClipBox; external gdi32 name 'GetClipBox';

function GetClipRgn; external gdi32 name 'GetClipRgn';

function GetColorAdjustment; external gdi32 name 'GetColorAdjustment';

function GetColorSpace; external gdi32 name 'GetColorSpace';

function GetCurrentObject; external gdi32 name 'GetCurrentObject';

function GetCurrentPositionEx; external gdi32 name 'GetCurrentPositionEx';

function GetDCBrushColor; external gdi32 name 'GetDCBrushColor';

function GetDCPenColor; external gdi32 name 'GetDCPenColor';

function GetDCOrgEx; external gdi32 name 'GetDCOrgEx';

function GetDIBColorTable; external gdi32 name 'GetDIBColorTable';

function GetDIBits; external gdi32 name 'GetDIBits';

function GetDeviceCaps; external gdi32 name 'GetDeviceCaps';

function GetDeviceGammaRamp; external gdi32 name 'GetDeviceGammaRamp';

function GetEnhMetaFile; external gdi32 name 'GetEnhMetaFileW';

function GetEnhMetaFileA; external gdi32 name 'GetEnhMetaFileA';

function GetEnhMetaFileW; external gdi32 name 'GetEnhMetaFileW';

function GetEnhMetaFileBits; external gdi32 name 'GetEnhMetaFileBits';

function GetEnhMetaFileDescription; external gdi32 name 'GetEnhMetaFileDescriptionW';

function GetEnhMetaFileDescriptionA; external gdi32 name 'GetEnhMetaFileDescriptionA';

function GetEnhMetaFileDescriptionW; external gdi32 name 'GetEnhMetaFileDescriptionW';

function GetEnhMetaFileHeader; external gdi32 name 'GetEnhMetaFileHeader';

function GetEnhMetaFilePaletteEntries; external gdi32 name 'GetEnhMetaFilePaletteEntries';

function GetEnhMetaFilePixelFormat; external gdi32 name 'GetEnhMetaFilePixelFormat';

function GetFontData; external gdi32 name 'GetFontData';

function GetFontLanguageInfo; external gdi32 name 'GetFontLanguageInfo';

function GetFontUnicodeRanges; external gdi32 name 'GetFontUnicodeRanges';

function GetGlyphIndices; external gdi32 name 'GetGlyphIndicesW';

function GetGlyphIndicesA; external gdi32 name 'GetGlyphIndicesA';

function GetGlyphIndicesW; external gdi32 name 'GetGlyphIndicesW';

function GetGlyphOutline; external gdi32 name 'GetGlyphOutlineW';

function GetGlyphOutlineA; external gdi32 name 'GetGlyphOutlineA';

function GetGlyphOutlineW; external gdi32 name 'GetGlyphOutlineW';

function GetGraphicsMode; external gdi32 name 'GetGraphicsMode';

function GetICMProfile; external gdi32 name 'GetICMProfileW';

function GetICMProfileA; external gdi32 name 'GetICMProfileA';

function GetICMProfileW; external gdi32 name 'GetICMProfileW';

function GetKerningPairs; external gdi32 name 'GetKerningPairs';

function GetLogColorSpace; external gdi32 name 'GetLogColorSpaceW';

function GetLogColorSpaceA; external gdi32 name 'GetLogColorSpaceA';

function GetLogColorSpaceW; external gdi32 name 'GetLogColorSpaceW';

function GetMapMode; external gdi32 name 'GetMapMode';

function GetMetaFile; external gdi32 name 'GetMetaFileW';

function GetMetaFileA; external gdi32 name 'GetMetaFileA';

function GetMetaFileW; external gdi32 name 'GetMetaFileW';

function GetMetaFileBitsEx; external gdi32 name 'GetMetaFileBitsEx';

function GetMetaRgn; external gdi32 name 'GetMetaRgn';

function GetMiterLimit; external gdi32 name 'GetMiterLimit';

function GetNearestColor; external gdi32 name 'GetNearestColor';

function GetNearestPaletteIndex; external gdi32 name 'GetNearestPaletteIndex';

function GetObject; external gdi32 name 'GetObjectW';

function GetObjectA; external gdi32 name 'GetObjectA';

function GetObjectW; external gdi32 name 'GetObjectW';

function GetObjectType; external gdi32 name 'GetObjectType';

function GetOutlineTextMetrics; external gdi32 name 'GetOutlineTextMetricsW';

function GetOutlineTextMetricsA; external gdi32 name 'GetOutlineTextMetricsA';

function GetOutlineTextMetricsW; external gdi32 name 'GetOutlineTextMetricsW';

function GetPaletteEntries; external gdi32 name 'GetPaletteEntries';

function GetPath; external gdi32 name 'GetPath';

function GetPixel; external gdi32 name 'GetPixel';

function GetPixelFormat; external gdi32 name 'GetPixelFormat';

function GetPolyFillMode; external gdi32 name 'GetPolyFillMode';

function GetROP2; external gdi32 name 'GetROP2';

function GetRandomRgn; external gdi32 name 'GetRandomRgn';

function GetRasterizerCaps; external gdi32 name 'GetRasterizerCaps';

function GetRegionData; external gdi32 name 'GetRegionData';

function GetRgnBox; external gdi32 name 'GetRgnBox';

function GetStockObject; external gdi32 name 'GetStockObject';

function GetStretchBltMode; external gdi32 name 'GetStretchBltMode';

function GetSystemPaletteEntries; external gdi32 name 'GetSystemPaletteEntries';

function GetSystemPaletteUse; external gdi32 name 'GetSystemPaletteUse';

function GetTextAlign; external gdi32 name 'GetTextAlign';

function GetTextCharacterExtra; external gdi32 name 'GetTextCharacterExtra';

function GetTextCharset; external gdi32 name 'GetTextCharset';

function GetTextCharsetInfo; external gdi32 name 'GetTextCharsetInfo';

function GetTextColor; external gdi32 name 'GetTextColor';

function GetTextExtentExPoint; external gdi32 name 'GetTextExtentExPointW';

function GetTextExtentExPointA; external gdi32 name 'GetTextExtentExPointA';

function GetTextExtentExPointW; external gdi32 name 'GetTextExtentExPointW';

function GetTextExtentExPointI; external gdi32 name 'GetTextExtentExPointI';

function GetTextExtentPoint32(DC: HDC; Str: PWideChar; Count: Integer;

var Size: TSize): BOOL; external gdi32 name 'GetTextExtentPoint32W';

function GetTextExtentPoint32A(DC: HDC; Str: PAnsiChar; Count: Integer;

var Size: TSize): BOOL; external gdi32 name 'GetTextExtentPoint32A';

function GetTextExtentPoint32W(DC: HDC; Str: PWideChar; Count: Integer;

var Size: TSize): BOOL; external gdi32 name 'GetTextExtentPoint32W';

function GetTextExtentPoint32(DC: HDC; const Str: UnicodeString; Count: Integer;

var Size: TSize): BOOL;

begin

Result := GetTextExtentPoint32(DC, PWideChar(Str), Count, Size);

end;

function GetTextExtentPoint32A(DC: HDC; const Str: AnsiString; Count: Integer;

var Size: TSize): BOOL;

begin

Result := GetTextExtentPoint32A(DC, PAnsiChar(Str), Count, Size);

end;

function GetTextExtentPoint32W(DC: HDC; const Str: UnicodeString; Count: Integer;

var Size: TSize): BOOL;

begin

Result := GetTextExtentPoint32W(DC, PWideChar(Str), Count, Size);

end;

function GetTextExtentPoint; external gdi32 name 'GetTextExtentPointW';

function GetTextExtentPointA; external gdi32 name 'GetTextExtentPointA';

function GetTextExtentPointW; external gdi32 name 'GetTextExtentPointW';

function GetTextExtentPointI; external gdi32 name 'GetTextExtentPointI';

function GetTextFace; external gdi32 name 'GetTextFaceW';

function GetTextFaceA; external gdi32 name 'GetTextFaceA';

function GetTextFaceW; external gdi32 name 'GetTextFaceW';

function GetTextMetrics; external gdi32 name 'GetTextMetricsW';

function GetTextMetricsA; external gdi32 name 'GetTextMetricsA';

function GetTextMetricsW; external gdi32 name 'GetTextMetricsW';

function GetViewportExtEx; external gdi32 name 'GetViewportExtEx';

function GetViewportOrgEx; external gdi32 name 'GetViewportOrgEx';

function GetWinMetaFileBits; external gdi32 name 'GetWinMetaFileBits';

function GetWindowExtEx; external gdi32 name 'GetWindowExtEx';

function GetWindowOrgEx; external gdi32 name 'GetWindowOrgEx';

function GetWorldTransform; external gdi32 name 'GetWorldTransform';

function GradientFill; external msimg32 name 'GradientFill';

function IntersectClipRect; external gdi32 name 'IntersectClipRect';

function InvertRgn; external gdi32 name 'InvertRgn';

function LPtoDP; external gdi32 name 'LPtoDP';

function LineDDA; external gdi32 name 'LineDDA';

function LineTo; external gdi32 name 'LineTo';

function MaskBlt; external gdi32 name 'MaskBlt';

function ModifyWorldTransform; external gdi32 name 'ModifyWorldTransform';

function MoveToEx; external gdi32 name 'MoveToEx';

function OffsetClipRgn; external gdi32 name 'OffsetClipRgn';

function OffsetRgn; external gdi32 name 'OffsetRgn';

function OffsetViewportOrgEx(DC: HDC; X, Y: Integer; var Points): BOOL; external gdi32 name 'OffsetViewportOrgEx';

function OffsetWindowOrgEx(DC: HDC; X, Y: Integer; var Points): BOOL; stdcall; external gdi32 name 'OffsetWindowOrgEx';

function OffsetViewportOrgEx(DC: HDC; X, Y: Integer; Points: PPoint): BOOL; external gdi32 name 'OffsetViewportOrgEx';

function OffsetWindowOrgEx(DC: HDC; X, Y: Integer; Points: PPoint): BOOL; external gdi32 name 'OffsetWindowOrgEx';

function PaintRgn; external gdi32 name 'PaintRgn';

function PatBlt; external gdi32 name 'PatBlt';

function PathToRegion; external gdi32 name 'PathToRegion';

function Pie; external gdi32 name 'Pie';

function PlayEnhMetaFile; external gdi32 name 'PlayEnhMetaFile';

function PlayEnhMetaFileRecord; external gdi32 name 'PlayEnhMetaFileRecord';

function PlayMetaFile; external gdi32 name 'PlayMetaFile';

function PlayMetaFileRecord; external gdi32 name 'PlayMetaFileRecord';

function PlgBlt; external gdi32 name 'PlgBlt';

function PolyBezier; external gdi32 name 'PolyBezier';

function PolyBezierTo; external gdi32 name 'PolyBezierTo';

function PolyDraw; external gdi32 name 'PolyDraw';

function PolyPolygon; external gdi32 name 'PolyPolygon';

function PolyPolyline; external gdi32 name 'PolyPolyline';

function PolyTextOut; external gdi32 name 'PolyTextOutW';

function PolyTextOutA; external gdi32 name 'PolyTextOutA';

function PolyTextOutW; external gdi32 name 'PolyTextOutW';

function Polygon; external gdi32 name 'Polygon';

function Polyline; external gdi32 name 'Polyline';

function PolylineTo; external gdi32 name 'PolylineTo';

function PtInRegion; external gdi32 name 'PtInRegion';

function PtVisible; external gdi32 name 'PtVisible';

function RealizePalette; external gdi32 name 'RealizePalette';

function RectInRegion; external gdi32 name 'RectInRegion';

function RectVisible; external gdi32 name 'RectVisible';

function Rectangle; external gdi32 name 'Rectangle';

function RemoveFontMemResourceEx; external gdi32 name 'RemoveFontMemResourceEx';

function RemoveFontResource; external gdi32 name 'RemoveFontResourceW';

function RemoveFontResourceA; external gdi32 name 'RemoveFontResourceA';

function RemoveFontResourceW; external gdi32 name 'RemoveFontResourceW';

function RemoveFontResourceEx; external gdi32 name 'RemoveFontResourceExW';

function RemoveFontResourceExA; external gdi32 name 'RemoveFontResourceExA';

function RemoveFontResourceExW; external gdi32 name 'RemoveFontResourceExW';

function ResetDC; external gdi32 name 'ResetDCW';

function ResetDCA; external gdi32 name 'ResetDCA';

function ResetDCW; external gdi32 name 'ResetDCW';

function ResizePalette; external gdi32 name 'ResizePalette';

function RestoreDC; external gdi32 name 'RestoreDC';

function RoundRect; external gdi32 name 'RoundRect';

function SaveDC; external gdi32 name 'SaveDC';

function ScaleViewportExtEx; external gdi32 name 'ScaleViewportExtEx';

function ScaleWindowExtEx; external gdi32 name 'ScaleWindowExtEx';

function SelectClipPath; external gdi32 name 'SelectClipPath';

function SelectClipRgn; external gdi32 name 'SelectClipRgn';

function SelectObject; external gdi32 name 'SelectObject';

function SelectPalette; external gdi32 name 'SelectPalette';

function SetAbortProc; external gdi32 name 'SetAbortProc';

function SetArcDirection; external gdi32 name 'SetArcDirection';

function SetBitmapBits; external gdi32 name 'SetBitmapBits';

function SetBitmapDimensionEx; external gdi32 name 'SetBitmapDimensionEx';

function SetBkColor; external gdi32 name 'SetBkColor';

function SetBkMode; external gdi32 name 'SetBkMode';

function SetBoundsRect; external gdi32 name 'SetBoundsRect';

function SetBrushOrgEx; external gdi32 name 'SetBrushOrgEx';

function SetColorAdjustment; external gdi32 name 'SetColorAdjustment';

function SetColorSpace; external gdi32 name 'SetColorSpace';

function SetDCBrushColor; external gdi32 name 'SetDCBrushColor';

function SetDCPenColor; external gdi32 name 'SetDCPenColor';

function SetDIBColorTable; external gdi32 name 'SetDIBColorTable';

function SetDIBits; external gdi32 name 'SetDIBits';

function SetDIBitsToDevice; external gdi32 name 'SetDIBitsToDevice';

function SetDeviceGammaRamp; external gdi32 name 'SetDeviceGammaRamp';

function SetEnhMetaFileBits; external gdi32 name 'SetEnhMetaFileBits';

function SetGraphicsMode; external gdi32 name 'SetGraphicsMode';

function SetICMMode; external gdi32 name 'SetICMMode';

function SetICMProfile; external gdi32 name 'SetICMProfileW';

function SetICMProfileA; external gdi32 name 'SetICMProfileA';

function SetICMProfileW; external gdi32 name 'SetICMProfileW';

function SetMapMode; external gdi32 name 'SetMapMode';

function SetMapperFlags; external gdi32 name 'SetMapperFlags';

function SetMetaFileBitsEx; external gdi32 name 'SetMetaFileBitsEx';

function SetMetaRgn; external gdi32 name 'SetMetaRgn';

function SetMiterLimit; external gdi32 name 'SetMiterLimit';

function SetPaletteEntries; external gdi32 name 'SetPaletteEntries';

function SetPixel; external gdi32 name 'SetPixel';

function SetPixelFormat; external gdi32 name 'SetPixelFormat';

function SetPixelV; external gdi32 name 'SetPixelV';

function SetPolyFillMode; external gdi32 name 'SetPolyFillMode';

function SetROP2; external gdi32 name 'SetROP2';

function SetRectRgn; external gdi32 name 'SetRectRgn';

function SetStretchBltMode; external gdi32 name 'SetStretchBltMode';

function SetSystemPaletteUse; external gdi32 name 'SetSystemPaletteUse';

function SetTextAlign; external gdi32 name 'SetTextAlign';

function SetTextColor; external gdi32 name 'SetTextColor';

function SetTextCharacterExtra; external gdi32 name 'SetTextCharacterExtra';

function SetTextJustification; external gdi32 name 'SetTextJustification';

function SetViewportExtEx; external gdi32 name 'SetViewportExtEx';

function SetViewportOrgEx; external gdi32 name 'SetViewportOrgEx';

function SetWinMetaFileBits; external gdi32 name 'SetWinMetaFileBits';

function SetWindowExtEx; external gdi32 name 'SetWindowExtEx';

function SetWindowOrgEx; external gdi32 name 'SetWindowOrgEx';

function SetWorldTransform; external gdi32 name 'SetWorldTransform';

function StartDoc; external gdi32 name 'StartDocW';

function StartDocA; external gdi32 name 'StartDocA';

function StartDocW; external gdi32 name 'StartDocW';

function StartPage; external gdi32 name 'StartPage';

function StretchBlt; external gdi32 name 'StretchBlt';

function StretchDIBits; external gdi32 name 'StretchDIBits';

function StrokeAndFillPath; external gdi32 name 'StrokeAndFillPath';

function StrokePath; external gdi32 name 'StrokePath';

function SwapBuffers; external gdi32 name 'SwapBuffers';

function TextOut; external gdi32 name 'TextOutW';

function TextOutA; external gdi32 name 'TextOutA';

function TextOutW; external gdi32 name 'TextOutW';

function _TranslateCharsetInfoFontSig(var lpSrc: DWORD; var lpCs: TCharsetInfo;

dwFlags: DWORD): BOOL; stdcall; external gdi32 name 'TranslateCharsetInfo';

function _TranslateCharsetInfo(lpSrc: DWORD; var lpCs: TCharsetInfo;

dwFlags: DWORD): BOOL; stdcall; external gdi32 name 'TranslateCharsetInfo';

function TransparentBlt; external msimg32 name 'TransparentBlt';

function TransparentDIBits; external gdi32 name 'TransparentDIBits';

function UnrealizeObject; external gdi32 name 'UnrealizeObject';

function UpdateColors; external gdi32 name 'UpdateColors';

function UpdateICMRegKey; external gdi32 name 'UpdateICMRegKeyW';

function UpdateICMRegKeyA; external gdi32 name 'UpdateICMRegKeyA';

function UpdateICMRegKeyW; external gdi32 name 'UpdateICMRegKeyW';

function WidenPath; external gdi32 name 'WidenPath';

{ Externals from opengl32.dll }

function wglCopyContext; external opengl32 name 'wglCopyContext';

function wglCreateContext; external opengl32 name 'wglCreateContext';

function wglCreateLayerContext; external opengl32 name 'wglCreateLayerContext';

function wglDeleteContext; external opengl32 name 'wglDeleteContext';

function wglDescribeLayerPlane; external opengl32 name 'wglDescribeLayerPlane';

function wglGetCurrentContext; external opengl32 name 'wglGetCurrentContext';

function wglGetCurrentDC; external opengl32 name 'wglGetCurrentDC';

function wglGetLayerPaletteEntries; external opengl32 name 'wglGetLayerPaletteEntries';

function wglMakeCurrent; external opengl32 name 'wglMakeCurrent';

function wglRealizeLayerPalette; external opengl32 name 'wglRealizeLayerPalette';

function wglSetLayerPaletteEntries; external opengl32 name 'wglSetLayerPaletteEntries';

function wglShareLists; external opengl32 name 'wglShareLists';

function wglSwapLayerBuffers; external opengl32 name 'wglSwapLayerBuffers';

function wglSwapMultipleBuffers; external opengl32 name 'wglSwapMultipleBuffers';

function wglUseFontBitmaps; external opengl32 name 'wglUseFontBitmapsW';

function wglUseFontOutlines; external opengl32 name 'wglUseFontOutlinesW';

function wglUseFontBitmapsA; external opengl32 name 'wglUseFontBitmapsA';

function wglUseFontOutlinesA; external opengl32 name 'wglUseFontOutlinesA';

function wglUseFontBitmapsW; external opengl32 name 'wglUseFontBitmapsW';

function wglUseFontOutlinesW; external opengl32 name 'wglUseFontOutlinesW';

{ Externals from user32.dll }

function ActivateKeyboardLayout; external user32 name 'ActivateKeyboardLayout';

function AdjustWindowRect; external user32 name 'AdjustWindowRect';

function AdjustWindowRectEx; external user32 name 'AdjustWindowRectEx';

function AnsiToOem; external user32 name 'CharToOemA';

function AnsiToOemBuff; external user32 name 'CharToOemBuffA';

function AnsiUpper; external user32 name 'CharUpperA';

function AnsiUpperBuff; external user32 name 'CharUpperBuffA';

function AnsiLower; external user32 name 'CharLowerA';

function AnsiLowerBuff; external user32 name 'CharLowerBuffA';

function AnsiNext; external user32 name 'CharNextA';

function AnsiPrev; external user32 name 'CharPrevA';

function AnyPopup; external user32 name 'AnyPopup';

function AppendMenu; external user32 name 'AppendMenuW';

function AppendMenuA; external user32 name 'AppendMenuA';

function AppendMenuW; external user32 name 'AppendMenuW';

function ArrangeIconicWindows; external user32 name 'ArrangeIconicWindows';

function AttachThreadInput; external user32 name 'AttachThreadInput';

function BeginDeferWindowPos; external user32 name 'BeginDeferWindowPos';

function BeginPaint; external user32 name 'BeginPaint';

function BringWindowToTop; external user32 name 'BringWindowToTop';

function BroadcastSystemMessage; external user32 name 'BroadcastSystemMessageW';

function BroadcastSystemMessageA; external user32 name 'BroadcastSystemMessageA';

function BroadcastSystemMessageW; external user32 name 'BroadcastSystemMessageW';

function CalculatePopupWindowPosition; external user32 name 'CalculatePopupWindowPosition' delayed;

function CallMsgFilter; external user32 name 'CallMsgFilterW';

function CallMsgFilterA; external user32 name 'CallMsgFilterA';

function CallMsgFilterW; external user32 name 'CallMsgFilterW';

function CallNextHookEx; external user32 name 'CallNextHookEx';

function CallWindowProc; external user32 name 'CallWindowProcW';

function CallWindowProcA; external user32 name 'CallWindowProcA';

function CallWindowProcW; external user32 name 'CallWindowProcW';

function CascadeWindows; external user32 name 'CascadeWindows';

function ChangeClipboardChain; external user32 name 'ChangeClipboardChain';

function ChangeDisplaySettings; external user32 name 'ChangeDisplaySettingsW';

function ChangeDisplaySettingsA; external user32 name 'ChangeDisplaySettingsA';

function ChangeDisplaySettingsW; external user32 name 'ChangeDisplaySettingsW';

function ChangeDisplaySettingsEx; external user32 name 'ChangeDisplaySettingsExW';

function ChangeDisplaySettingsExA; external user32 name 'ChangeDisplaySettingsExA';

function ChangeDisplaySettingsExW; external user32 name 'ChangeDisplaySettingsExW';

function ChangeMenu; external user32 name 'ChangeMenuW';

function ChangeMenuA; external user32 name 'ChangeMenuA';

function ChangeMenuW; external user32 name 'ChangeMenuW';

function CharLower; external user32 name 'CharLowerW';

function CharLowerA; external user32 name 'CharLowerA';

function CharLowerW; external user32 name 'CharLowerW';

function CharLowerBuff; external user32 name 'CharLowerBuffW';

function CharLowerBuffA; external user32 name 'CharLowerBuffA';

function CharLowerBuffW; external user32 name 'CharLowerBuffW';

function CharNext; external user32 name 'CharNextW';

function CharNextA; external user32 name 'CharNextA';

function CharNextW; external user32 name 'CharNextW';

function CharNextEx; external user32 name 'CharNextExA';

function CharNextExA; external user32 name 'CharNextExA';

function CharPrev; external user32 name 'CharPrevW';

function CharPrevA; external user32 name 'CharPrevA';

function CharPrevW; external user32 name 'CharPrevW';

function CharPrevEx; external user32 name 'CharPrevExA';

function CharPrevExA; external user32 name 'CharPrevExA';

function CharToOem; external user32 name 'CharToOemW';

function CharToOemA; external user32 name 'CharToOemA';

function CharToOemW; external user32 name 'CharToOemW';

function CharToOemBuff; external user32 name 'CharToOemBuffW';

function CharToOemBuffA; external user32 name 'CharToOemBuffA';

function CharToOemBuffW; external user32 name 'CharToOemBuffW';

function CharUpper; external user32 name 'CharUpperW';

function CharUpperA; external user32 name 'CharUpperA';

function CharUpperW; external user32 name 'CharUpperW';

function CharUpperBuff; external user32 name 'CharUpperBuffW';

function CharUpperBuffA; external user32 name 'CharUpperBuffA';

function CharUpperBuffW; external user32 name 'CharUpperBuffW';

function CheckDlgButton; external user32 name 'CheckDlgButton';

function CheckMenuItem; external user32 name 'CheckMenuItem';

function CheckMenuRadioItem; external user32 name 'CheckMenuRadioItem';

function CheckRadioButton; external user32 name 'CheckRadioButton';

function ChildWindowFromPoint; external user32 name 'ChildWindowFromPoint';

function ChildWindowFromPointEx; external user32 name 'ChildWindowFromPointEx';

function ClientToScreen; external user32 name 'ClientToScreen';

function ClipCursor; external user32 name 'ClipCursor';

function CloseClipboard; external user32 name 'CloseClipboard';

function CloseDesktop; external user32 name 'CloseDesktop';

function CloseTouchInputHandle; external user32 name 'CloseTouchInputHandle' delayed;

function CloseWindow; external user32 name 'CloseWindow';

function CloseWindowStation; external user32 name 'CloseWindowStation';

function CopyAcceleratorTable; external user32 name 'CopyAcceleratorTableW';

function CopyAcceleratorTableA; external user32 name 'CopyAcceleratorTableA';

function CopyAcceleratorTableW; external user32 name 'CopyAcceleratorTableW';

function CopyIcon; external user32 name 'CopyIcon';

function CopyImage; external user32 name 'CopyImage';

function CopyRect; external user32 name 'CopyRect';

function CountClipboardFormats; external user32 name 'CountClipboardFormats';

function CreateAcceleratorTable; external user32 name 'CreateAcceleratorTableW';

function CreateAcceleratorTableA; external user32 name 'CreateAcceleratorTableA';

function CreateAcceleratorTableW; external user32 name 'CreateAcceleratorTableW';

function CreateCaret; external user32 name 'CreateCaret';

function CreateCursor; external user32 name 'CreateCursor';

function CreateDesktop; external user32 name 'CreateDesktopW';

function CreateDesktopA; external user32 name 'CreateDesktopA';

function CreateDesktopW; external user32 name 'CreateDesktopW';

function CreateDesktopEx; external user32 name 'CreateDesktopExA' delayed;

function CreateDesktopExA; external user32 name 'CreateDesktopExA' delayed;

function CreateDesktopExW; external user32 name 'CreateDesktopExA' delayed;

function CreateDialogIndirectParam; external user32 name 'CreateDialogIndirectParamW';

function CreateDialogIndirectParamA; external user32 name 'CreateDialogIndirectParamA';

function CreateDialogIndirectParamW; external user32 name 'CreateDialogIndirectParamW';

function CreateDialogParam; external user32 name 'CreateDialogParamW';

function CreateDialogParamA; external user32 name 'CreateDialogParamA';

function CreateDialogParamW; external user32 name 'CreateDialogParamW';

function CreateIcon; external user32 name 'CreateIcon';

function CreateIconFromResource; external user32 name 'CreateIconFromResource';

function CreateIconFromResourceEx; external user32 name 'CreateIconFromResourceEx';

function CreateIconIndirect; external user32 name 'CreateIconIndirect';

function CreateMDIWindow; external user32 name 'CreateMDIWindowW';

function CreateMDIWindowA; external user32 name 'CreateMDIWindowA';

function CreateMDIWindowW; external user32 name 'CreateMDIWindowW';

function CreateMenu; external user32 name 'CreateMenu';

function CreatePopupMenu; external user32 name 'CreatePopupMenu';

function CreateWindowStation; external user32 name 'CreateWindowStationW';

function CreateWindowStationA; external user32 name 'CreateWindowStationA';

function CreateWindowStationW; external user32 name 'CreateWindowStationW';

function DdeSetQualityOfService; external user32 name 'DdeSetQualityOfService';

function DefDlgProc; external user32 name 'DefDlgProcW';

function DefDlgProcA; external user32 name 'DefDlgProcA';

function DefDlgProcW; external user32 name 'DefDlgProcW';

function DefFrameProc; external user32 name 'DefFrameProcW';

function DefFrameProcA; external user32 name 'DefFrameProcA';

function DefFrameProcW; external user32 name 'DefFrameProcW';

function DefMDIChildProc; external user32 name 'DefMDIChildProcW';

function DefMDIChildProcA; external user32 name 'DefMDIChildProcA';

function DefMDIChildProcW; external user32 name 'DefMDIChildProcW';

function DefWindowProc; external user32 name 'DefWindowProcW';

function DefWindowProcA; external user32 name 'DefWindowProcA';

function DefWindowProcW; external user32 name 'DefWindowProcW';

function DeferWindowPos; external user32 name 'DeferWindowPos';

function DeleteMenu; external user32 name 'DeleteMenu';

function DestroyAcceleratorTable; external user32 name 'DestroyAcceleratorTable';

function DestroyCaret; external user32 name 'DestroyCaret';

function DestroyCursor; external user32 name 'DestroyCursor';

function DestroyIcon; external user32 name 'DestroyIcon';

function DestroyMenu; external user32 name 'DestroyMenu';

function DestroyWindow; external user32 name 'DestroyWindow';

function DialogBoxIndirectParam; external user32 name 'DialogBoxIndirectParamW';

function DialogBoxIndirectParamA; external user32 name 'DialogBoxIndirectParamA';

function DialogBoxIndirectParamW; external user32 name 'DialogBoxIndirectParamW';

function DialogBoxParam; external user32 name 'DialogBoxParamW';

function DialogBoxParamA; external user32 name 'DialogBoxParamA';

function DialogBoxParamW; external user32 name 'DialogBoxParamW';

function DispatchMessage; external user32 name 'DispatchMessageW';

function DispatchMessageA; external user32 name 'DispatchMessageA';

function DispatchMessageW; external user32 name 'DispatchMessageW';

function DlgDirList; external user32 name 'DlgDirListW';

function DlgDirListA; external user32 name 'DlgDirListA';

function DlgDirListW; external user32 name 'DlgDirListW';

function DlgDirListComboBox; external user32 name 'DlgDirListComboBoxW';

function DlgDirListComboBoxA; external user32 name 'DlgDirListComboBoxA';

function DlgDirListComboBoxW; external user32 name 'DlgDirListComboBoxW';

function DlgDirSelectComboBoxEx; external user32 name 'DlgDirSelectComboBoxExW';

function DlgDirSelectComboBoxExA; external user32 name 'DlgDirSelectComboBoxExA';

function DlgDirSelectComboBoxExW; external user32 name 'DlgDirSelectComboBoxExW';

function DlgDirSelectEx; external user32 name 'DlgDirSelectExW';

function DlgDirSelectExA; external user32 name 'DlgDirSelectExA';

function DlgDirSelectExW; external user32 name 'DlgDirSelectExW';

function DragDetect; external user32 name 'DragDetect';

function DragObject; external user32 name 'DragObject';

function DrawAnimatedRects; external user32 name 'DrawAnimatedRects';

function DrawCaption; external user32 name 'DrawCaption';

function DrawEdge; external user32 name 'DrawEdge';

function DrawFocusRect; external user32 name 'DrawFocusRect';

function DrawFrameControl(DC: HDC; const Rect: TRect; uType, uState: UINT): BOOL; external user32 name 'DrawFrameControl';

function DrawFrameControl(DC: HDC; Rect: PRect; uType, uState: UINT): BOOL; external user32 name 'DrawFrameControl';

function DrawIcon; external user32 name 'DrawIcon';

function DrawIconEx; external user32 name 'DrawIconEx';

function DrawMenuBar; external user32 name 'DrawMenuBar';

function DrawState; external user32 name 'DrawStateW';

function DrawStateA; external user32 name 'DrawStateA';

function DrawStateW; external user32 name 'DrawStateW';

function DrawText(hDC: HDC; lpString: PWideChar; nCount: Integer;

var lpRect: TRect; uFormat: UINT): Integer; external user32 name 'DrawTextW';

function DrawTextA(hDC: HDC; lpString: PAnsiChar; nCount: Integer;

var lpRect: TRect; uFormat: UINT): Integer; external user32 name 'DrawTextA';

function DrawTextW(hDC: HDC; lpString: PWideChar; nCount: Integer;

var lpRect: TRect; uFormat: UINT): Integer; external user32 name 'DrawTextW';

function DrawText(hDC: HDC; const lpString: UnicodeString; nCount: Integer;

var lpRect: TRect; uFormat: UINT): Integer;

begin

Result := Windows.DrawText(hDC, PWideChar(lpString), nCount, lpRect, uFormat);

end;

function DrawTextA(hDC: HDC; const lpString: AnsiString; nCount: Integer;

var lpRect: TRect; uFormat: UINT): Integer;

begin

Result := Windows.DrawTextA(hDC, PAnsiChar(lpString), nCount, lpRect, uFormat);

end;

function DrawTextW(hDC: HDC; const lpString: UnicodeString; nCount: Integer;

var lpRect: TRect; uFormat: UINT): Integer;

begin

Result := Windows.DrawTextW(hDC, PWideChar(lpString), nCount, lpRect, uFormat);

end;

function DrawTextEx; external user32 name 'DrawTextExW';

function DrawTextExA; external user32 name 'DrawTextExA';

function DrawTextExW; external user32 name 'DrawTextExW';

function EmptyClipboard; external user32 name 'EmptyClipboard';

function EnableMenuItem; external user32 name 'EnableMenuItem';

function EnableScrollBar; external user32 name 'EnableScrollBar';

function EnableWindow; external user32 name 'EnableWindow';

function EndDeferWindowPos; external user32 name 'EndDeferWindowPos';

function EndDialog; external user32 name 'EndDialog';

function EndMenu; external user32 name 'EndMenu';

function EndPaint; external user32 name 'EndPaint';

function EnumChildWindows; external user32 name 'EnumChildWindows';

function EnumClipboardFormats; external user32 name 'EnumClipboardFormats';

function EnumDesktops; external user32 name 'EnumDesktopsW';

function EnumDesktopsA; external user32 name 'EnumDesktopsA';

function EnumDesktopsW; external user32 name 'EnumDesktopsW';

function EnumDesktopWindows; external user32 name 'EnumDesktopWindows';

function EnumDisplaySettings; external user32 name 'EnumDisplaySettingsW';

function EnumDisplaySettingsA; external user32 name 'EnumDisplaySettingsA';

function EnumDisplaySettingsW; external user32 name 'EnumDisplaySettingsW';

function EnumDisplayDevices; external user32 name 'EnumDisplayDevicesW';

function EnumDisplayDevicesA; external user32 name 'EnumDisplayDevicesA';

function EnumDisplayDevicesW; external user32 name 'EnumDisplayDevicesW';

function EnumProps; external user32 name 'EnumPropsW';

function EnumPropsA; external user32 name 'EnumPropsA';

function EnumPropsW; external user32 name 'EnumPropsW';

function EnumPropsEx; external user32 name 'EnumPropsExW';

function EnumPropsExA; external user32 name 'EnumPropsExA';

function EnumPropsExW; external user32 name 'EnumPropsExW';

function EnumThreadWindows; external user32 name 'EnumThreadWindows';

function EnumWindowStations; external user32 name 'EnumWindowStationsW';

function EnumWindowStationsA; external user32 name 'EnumWindowStationsA';

function EnumWindowStationsW; external user32 name 'EnumWindowStationsW';

function EnumWindows; external user32 name 'EnumWindows';

function EqualRect; external user32 name 'EqualRect';

function ExcludeUpdateRgn; external user32 name 'ExcludeUpdateRgn';

function ExitWindowsEx; external user32 name 'ExitWindowsEx';

function FillRect; external user32 name 'FillRect';

function FindWindow; external user32 name 'FindWindowW';

function FindWindowA; external user32 name 'FindWindowA';

function FindWindowW; external user32 name 'FindWindowW';

function FindWindowEx; external user32 name 'FindWindowExW';

function FindWindowExA; external user32 name 'FindWindowExA';

function FindWindowExW; external user32 name 'FindWindowExW';

function FlashWindow; external user32 name 'FlashWindow';

function FlashWindowEx; external user32 name 'FlashWindowEx';

function FrameRect; external user32 name 'FrameRect';

function FreeDDElParam; external user32 name 'FreeDDElParam';

function GetActiveWindow; external user32 name 'GetActiveWindow';

function GetAltTabInfo; external user32 name 'GetAltTabInfoW';

function GetAltTabInfoA; external user32 name 'GetAltTabInfoA';

function GetAltTabInfoW; external user32 name 'GetAltTabInfoW';

function GetAncestor; external user32 name 'GetAncestor';

function GetAsyncKeyState; external user32 name 'GetAsyncKeyState';

function GetCapture; external user32 name 'GetCapture';

function GetCaretBlinkTime; external user32 name 'GetCaretBlinkTime';

function GetCaretPos; external user32 name 'GetCaretPos';

function GetClassInfo; external user32 name 'GetClassInfoW';

function GetClassInfoA; external user32 name 'GetClassInfoA';

function GetClassInfoW; external user32 name 'GetClassInfoW';

function GetClassInfoEx; external user32 name 'GetClassInfoExW';

function GetClassInfoExA; external user32 name 'GetClassInfoExA';

function GetClassInfoExW; external user32 name 'GetClassInfoExW';

function GetClassLong; external user32 name 'GetClassLongW';

function GetClassLongA; external user32 name 'GetClassLongA';

function GetClassLongW; external user32 name 'GetClassLongW';

function GetClassName; external user32 name 'GetClassNameW';

function GetClassNameA; external user32 name 'GetClassNameA';

function GetClassNameW; external user32 name 'GetClassNameW';

function GetClassWord; external user32 name 'GetClassWord';

function GetClientRect; external user32 name 'GetClientRect';

function GetClipCursor; external user32 name 'GetClipCursor';

function GetClipboardData; external user32 name 'GetClipboardData';

function GetClipboardFormatName; external user32 name 'GetClipboardFormatNameW';

function GetClipboardFormatNameA; external user32 name 'GetClipboardFormatNameA';

function GetClipboardFormatNameW; external user32 name 'GetClipboardFormatNameW';

function GetClipboardSequenceNumber; external user32 name 'GetClipboardSequenceNumber';

function GetClipboardOwner; external user32 name 'GetClipboardOwner';

function GetClipboardViewer; external user32 name 'GetClipboardViewer';

function GetComboBoxInfo; external user32 name 'GetComboBoxInfo';

function GetCursor; external user32 name 'GetCursor';

function GetCursorInfo; external user32 name 'GetCursorInfo';

function GetCursorPos; external user32 name 'GetCursorPos';

function GetPhysicalCursorPos; external user32 name 'GetPhysicalCursorPos' delayed;

function GetDC; external user32 name 'GetDC';

function GetDCEx; external user32 name 'GetDCEx';

function GetDesktopWindow; external user32 name 'GetDesktopWindow';

function GetDialogBaseUnits; external user32 name 'GetDialogBaseUnits';

function GetDlgCtrlID; external user32 name 'GetDlgCtrlID';

function GetDlgItem; external user32 name 'GetDlgItem';

function GetDlgItemInt; external user32 name 'GetDlgItemInt';

function GetDlgItemText; external user32 name 'GetDlgItemTextW';

function GetDlgItemTextA; external user32 name 'GetDlgItemTextA';

function GetDlgItemTextW; external user32 name 'GetDlgItemTextW';

function GetDoubleClickTime; external user32 name 'GetDoubleClickTime';

function GetFocus; external user32 name 'GetFocus';

function GetForegroundWindow; external user32 name 'GetForegroundWindow';

function GetGuiResources; external user32 name 'GetGuiResources';

function GetGUIThreadInfo; external user32 name 'GetGUIThreadInfo';

function BlockInput; external user32 name 'BlockInput';

function IsProcessDPIAware; external user32 name 'IsProcessDPIAware' delayed;

function IsTouchWindow; external user32 name 'IsTouchWindow' delayed;

function GetIconInfo; external user32 name 'GetIconInfo';

function GetIconInfoEx; external user32 name 'GetIconInfoEx' delayed;

function GetIconInfoExA; external user32 name 'GetIconInfoExA' delayed;

function GetIconInfoExW; external user32 name 'GetIconInfoExW' delayed;

function GetInputState; external user32 name 'GetInputState';

function GetKBCodePage; external user32 name 'GetKBCodePage';

function GetKeyNameText; external user32 name 'GetKeyNameTextW';

function GetKeyNameTextA; external user32 name 'GetKeyNameTextA';

function GetKeyNameTextW; external user32 name 'GetKeyNameTextW';

function GetKeyState; external user32 name 'GetKeyState';

function GetKeyboardLayout; external user32 name 'GetKeyboardLayout';

function GetKeyboardLayoutList; external user32 name 'GetKeyboardLayoutList';

function GetKeyboardLayoutName; external user32 name 'GetKeyboardLayoutNameW';

function GetKeyboardLayoutNameA; external user32 name 'GetKeyboardLayoutNameA';

function GetKeyboardLayoutNameW; external user32 name 'GetKeyboardLayoutNameW';

function GetMouseMovePointsEx; external user32 name 'GetMouseMovePointsEx';

function GetKeyboardState; external user32 name 'GetKeyboardState';

function GetKeyboardType; external user32 name 'GetKeyboardType';

function GetLastActivePopup; external user32 name 'GetLastActivePopup';

function GetLastInputInfo; external user32 name 'GetLastInputInfo';

function GetListBoxInfo; external user32 name 'GetListBoxInfo';

function GetMenu; external user32 name 'GetMenu';

function GetMenuBarInfo; external user32 name 'GetMenuBarInfo';

function GetMenuCheckMarkDimensions; external user32 name 'GetMenuCheckMarkDimensions';

function GetMenuContextHelpId; external user32 name 'GetMenuContextHelpId';

function GetMenuDefaultItem; external user32 name 'GetMenuDefaultItem';

function GetMenuInfo; external user32 name 'GetMenuInfo';

function GetMenuItemCount; external user32 name 'GetMenuItemCount';

function GetMenuItemID; external user32 name 'GetMenuItemID';

function GetMenuItemInfo; external user32 name 'GetMenuItemInfoW';

function GetMenuItemInfoA; external user32 name 'GetMenuItemInfoA';

function GetMenuItemInfoW; external user32 name 'GetMenuItemInfoW';

function GetMenuItemRect; external user32 name 'GetMenuItemRect';

function GetMenuState; external user32 name 'GetMenuState';

function GetMenuString; external user32 name 'GetMenuStringW';

function GetMenuStringA; external user32 name 'GetMenuStringA';

function GetMenuStringW; external user32 name 'GetMenuStringW';

function GetMessage; external user32 name 'GetMessageW';

function GetMessageA; external user32 name 'GetMessageA';

function GetMessageW; external user32 name 'GetMessageW';

function GetMessageExtraInfo; external user32 name 'GetMessageExtraInfo';

function GetMessagePos; external user32 name 'GetMessagePos';

function GetMessageTime; external user32 name 'GetMessageTime';

function GetNextDlgGroupItem; external user32 name 'GetNextDlgGroupItem';

function GetNextDlgTabItem; external user32 name 'GetNextDlgTabItem';

function GetNextWindow; external user32 name 'GetWindow';

function GetOpenClipboardWindow; external user32 name 'GetOpenClipboardWindow';

function AddClipboardFormatListener; external user32 name 'AddClipboardFormatListener' delayed;

function RemoveClipboardFormatListener; external user32 name 'RemoveClipboardFormatListener' delayed;

function GetUpdatedClipboardFormats; external user32 name 'GetUpdatedClipboardFormats' delayed;

function GetParent; external user32 name 'GetParent';

function GetPriorityClipboardFormat; external user32 name 'GetPriorityClipboardFormat';

function GetProcessWindowStation; external user32 name 'GetProcessWindowStation';

function GetProp; external user32 name 'GetPropW';

function GetPropA; external user32 name 'GetPropA';

function GetPropW; external user32 name 'GetPropW';

function GetQueueStatus; external user32 name 'GetQueueStatus';

function GetScrollBarInfo; external user32 name 'GetScrollBarInfo';

function GetScrollInfo; external user32 name 'GetScrollInfo';

function GetScrollPos; external user32 name 'GetScrollPos';

function GetScrollRange; external user32 name 'GetScrollRange';

function GetSubMenu; external user32 name 'GetSubMenu';

function GetSysColor; external user32 name 'GetSysColor';

function GetSysColorBrush; external user32 name 'GetSysColorBrush';

function GetSystemMenu; external user32 name 'GetSystemMenu';

function GetSystemMetrics; external user32 name 'GetSystemMetrics';

function GetTabbedTextExtent; external user32 name 'GetTabbedTextExtentW';

function GetTabbedTextExtentA; external user32 name 'GetTabbedTextExtentA';

function GetTabbedTextExtentW; external user32 name 'GetTabbedTextExtentW';

function GetThreadDesktop; external user32 name 'GetThreadDesktop';

function GetTitleBarInfo; external user32 name 'GetTitleBarInfo';

function GetTopWindow; external user32 name 'GetTopWindow';

function GetTouchInputInfo; external user32 name 'GetTouchInputInfo' delayed;

function GetUpdateRect(hWnd: HWND; var lpRect: TRect; bErase: BOOL): BOOL; external user32 name 'GetUpdateRect';

function GetUpdateRect(hWnd: HWND; lpRect: PRect; bErase: BOOL): BOOL; external user32 name 'GetUpdateRect';

function GetUpdateRgn; external user32 name 'GetUpdateRgn';

function GetUserObjectInformation; external user32 name 'GetUserObjectInformationW';

function GetUserObjectInformationA; external user32 name 'GetUserObjectInformationA';

function GetUserObjectInformationW; external user32 name 'GetUserObjectInformationW';

function GetUserObjectSecurity; external user32 name 'GetUserObjectSecurity';

function GetWindow; external user32 name 'GetWindow';

function GetWindowContextHelpId; external user32 name 'GetWindowContextHelpId';

function GetWindowDC; external user32 name 'GetWindowDC';

function GetWindowDisplayAffinity; external user32 name 'GetWindowDisplayAffinity' delayed;

function GetWindowInfo; external user32 name 'GetWindowInfo';

function GetWindowLong; external user32 name 'GetWindowLongW';

function GetWindowLongA; external user32 name 'GetWindowLongA';

function GetWindowLongW; external user32 name 'GetWindowLongW';

function GetWindowModuleFileName; external user32 name 'GetWindowModuleFileNameW';

function GetWindowModuleFileNameA; external user32 name 'GetWindowModuleFileNameA';

function GetWindowModuleFileNameW; external user32 name 'GetWindowModuleFileNameW';

function GetWindowPlacement(hWnd: HWND; WindowPlacement: PWindowPlacement): BOOL; external user32 name 'GetWindowPlacement';

function GetWindowPlacement(hWnd: HWND; var WindowPlacement: TWindowPlacement): BOOL; external user32 name 'GetWindowPlacement';

function GetWindowRect; external user32 name 'GetWindowRect';

function GetWindowRgn; external user32 name 'GetWindowRgn';

function GetWindowText; external user32 name 'GetWindowTextW';

function GetWindowTextA; external user32 name 'GetWindowTextA';

function GetWindowTextW; external user32 name 'GetWindowTextW';

function GetWindowTextLength; external user32 name 'GetWindowTextLengthW';

function GetWindowTextLengthA; external user32 name 'GetWindowTextLengthA';

function GetWindowTextLengthW; external user32 name 'GetWindowTextLengthW';

function GetWindowThreadProcessId(hWnd: HWND; lpdwProcessId: Pointer): DWORD; external user32 name 'GetWindowThreadProcessId';

function GetWindowThreadProcessId(hWnd: HWND; var dwProcessId: DWORD): DWORD; external user32 name 'GetWindowThreadProcessId';

function GetWindowWord; external user32 name 'GetWindowWord';

function GrayString; external user32 name 'GrayStringW';

function GrayStringA; external user32 name 'GrayStringA';

function GrayStringW; external user32 name 'GrayStringW';

function HideCaret; external user32 name 'HideCaret';

function HiliteMenuItem; external user32 name 'HiliteMenuItem';

function ImpersonateDdeClientWindow; external user32 name 'ImpersonateDdeClientWindow';

function InSendMessage; external user32 name 'InSendMessage';

function InSendMessageEx; external user32 name 'InSendMessageEx';

function InflateRect; external user32 name 'InflateRect';

function InsertMenu; external user32 name 'InsertMenuW';

function InsertMenuA; external user32 name 'InsertMenuA';

function InsertMenuW; external user32 name 'InsertMenuW';

function InsertMenuItem; external user32 name 'InsertMenuItemW';

function InsertMenuItemA; external user32 name 'InsertMenuItemA';

function InsertMenuItemW; external user32 name 'InsertMenuItemW';

function IntersectRect; external user32 name 'IntersectRect';

function InvalidateRect(hWnd: HWND; lpRect: PRect; bErase: BOOL): BOOL; external user32 name 'InvalidateRect';

function InvalidateRect(hWnd: HWND; const lpRect: TRect; bErase: BOOL): BOOL; external user32 name 'InvalidateRect';

function InvalidateRgn; external user32 name 'InvalidateRgn';

function InvertRect; external user32 name 'InvertRect';

function IsCharAlpha; external user32 name 'IsCharAlphaW';

function IsCharAlphaA; external user32 name 'IsCharAlphaA';

function IsCharAlphaW; external user32 name 'IsCharAlphaW';

function IsCharAlphaNumeric; external user32 name 'IsCharAlphaNumericW';

function IsCharAlphaNumericA; external user32 name 'IsCharAlphaNumericA';

function IsCharAlphaNumericW; external user32 name 'IsCharAlphaNumericW';

function IsCharLower; external user32 name 'IsCharLowerW';

function IsCharLowerA; external user32 name 'IsCharLowerA';

function IsCharLowerW; external user32 name 'IsCharLowerW';

function IsCharUpper; external user32 name 'IsCharUpperW';

function IsCharUpperA; external user32 name 'IsCharUpperA';

function IsCharUpperW; external user32 name 'IsCharUpperW';

function IsChild; external user32 name 'IsChild';

function IsClipboardFormatAvailable; external user32 name 'IsClipboardFormatAvailable';

function IsDialogMessage; external user32 name 'IsDialogMessageW';

function IsDialogMessageA; external user32 name 'IsDialogMessageA';

function IsDialogMessageW; external user32 name 'IsDialogMessageW';

function IsDlgButtonChecked; external user32 name 'IsDlgButtonChecked';

function IsIconic; external user32 name 'IsIconic';

function IsMenu; external user32 name 'IsMenu';

function IsRectEmpty; external user32 name 'IsRectEmpty';

function IsWindow; external user32 name 'IsWindow';

function IsWindowEnabled; external user32 name 'IsWindowEnabled';

function IsWindowUnicode; external user32 name 'IsWindowUnicode';

function IsWindowVisible; external user32 name 'IsWindowVisible';

function IsZoomed; external user32 name 'IsZoomed';

function KillTimer; external user32 name 'KillTimer';

function LoadAccelerators; external user32 name 'LoadAcceleratorsW';

function LoadAcceleratorsA; external user32 name 'LoadAcceleratorsA';

function LoadAcceleratorsW; external user32 name 'LoadAcceleratorsW';

function LoadBitmap; external user32 name 'LoadBitmapW';

function LoadBitmapA; external user32 name 'LoadBitmapA';

function LoadBitmapW; external user32 name 'LoadBitmapW';

function LoadCursor(hInstance: HINST;

lpCursorName: PWideChar): HCURSOR; external user32 name 'LoadCursorW';

function LoadCursorA(hInstance: HINST;

lpCursorName: PAnsiChar): HCURSOR; external user32 name 'LoadCursorA';

function LoadCursorW(hInstance: HINST;

lpCursorName: PWideChar): HCURSOR; external user32 name 'LoadCursorW';

function LoadCursor(hInstance: HINST; const lpCursorName: UnicodeString): HCURSOR;

begin

Result := LoadCursor(hInstance, PWideChar(lpCursorName));

end;

function LoadCursorA(hInstance: HINST; const lpCursorName: AnsiString): HCURSOR;

begin

Result := LoadCursorA(hInstance, PAnsiChar(lpCursorName));

end;

function LoadCursorW(hInstance: HINST; const lpCursorName: UnicodeString): HCURSOR;

begin

Result := LoadCursorW(hInstance, PWideChar(lpCursorName));

end;

function LoadCursorFromFile; external user32 name 'LoadCursorFromFileW';

function LoadCursorFromFileA; external user32 name 'LoadCursorFromFileA';

function LoadCursorFromFileW; external user32 name 'LoadCursorFromFileW';

function LoadIcon; external user32 name 'LoadIconW';

function LoadIconA; external user32 name 'LoadIconA';

function LoadIconW; external user32 name 'LoadIconW';

function LoadImage; external user32 name 'LoadImageW';

function LoadImageA; external user32 name 'LoadImageA';

function LoadImageW; external user32 name 'LoadImageW';

function LoadKeyboardLayout(pwszKLID: PWideChar; Flags: UINT): HKL; external user32 name 'LoadKeyboardLayoutW';

function LoadKeyboardLayoutA(pwszKLID: PAnsiChar; Flags: UINT): HKL; external user32 name 'LoadKeyboardLayoutA';

function LoadKeyboardLayoutW(pwszKLID: PWideChar; Flags: UINT): HKL; external user32 name 'LoadKeyboardLayoutW';

function LoadKeyboardLayout(const pwszKLID: UnicodeString; Flags: UINT): HKL;

begin

Result := LoadKeyboardLayout(PWideChar(pwszKLID), Flags);

end;

function LoadKeyboardLayoutA(const pwszKLID: AnsiString; Flags: UINT): HKL;

begin

Result := LoadKeyboardLayoutA(PAnsiChar(pwszKLID), Flags);

end;

function LoadKeyboardLayoutW(const pwszKLID: UnicodeString; Flags: UINT): HKL;

begin

Result := LoadKeyboardLayoutW(PWideChar(pwszKLID), Flags);

end;

function LoadMenu; external user32 name 'LoadMenuW';

function LoadMenuA; external user32 name 'LoadMenuA';

function LoadMenuW; external user32 name 'LoadMenuW';

function LoadMenuIndirect; external user32 name 'LoadMenuIndirectW';

function LoadMenuIndirectA; external user32 name 'LoadMenuIndirectA';

function LoadMenuIndirectW; external user32 name 'LoadMenuIndirectW';

function LoadString; external user32 name 'LoadStringW';

function LoadStringA; external user32 name 'LoadStringA';

function LoadStringW; external user32 name 'LoadStringW';

function LockWindowUpdate; external user32 name 'LockWindowUpdate';

function LockWorkStation; external user32 name 'LockWorkStation';

function LookupIconIdFromDirectory; external user32 name 'LookupIconIdFromDirectory';

function LookupIconIdFromDirectoryEx; external user32 name 'LookupIconIdFromDirectoryEx';

function MapDialogRect; external user32 name 'MapDialogRect';

function MapVirtualKey; external user32 name 'MapVirtualKeyW';

function MapVirtualKeyA; external user32 name 'MapVirtualKeyA';

function MapVirtualKeyW; external user32 name 'MapVirtualKeyW';

function MapVirtualKeyEx; external user32 name 'MapVirtualKeyExW';

function MapVirtualKeyExA; external user32 name 'MapVirtualKeyExA';

function MapVirtualKeyExW; external user32 name 'MapVirtualKeyExW';

function MapWindowPoints; external user32 name 'MapWindowPoints';

function MenuItemFromPoint; external user32 name 'MenuItemFromPoint';

function MessageBeep; external user32 name 'MessageBeep';

function MessageBox; external user32 name 'MessageBoxW';

function MessageBoxA; external user32 name 'MessageBoxA';

function MessageBoxW; external user32 name 'MessageBoxW';

function MessageBoxEx; external user32 name 'MessageBoxExW';

function MessageBoxExA; external user32 name 'MessageBoxExA';

function MessageBoxExW; external user32 name 'MessageBoxExW';

function MessageBoxIndirect; external user32 name 'MessageBoxIndirectW';

function MessageBoxIndirectA; external user32 name 'MessageBoxIndirectA';

function MessageBoxIndirectW; external user32 name 'MessageBoxIndirectW';

function ModifyMenu; external user32 name 'ModifyMenuW';

function ModifyMenuA; external user32 name 'ModifyMenuA';

function ModifyMenuW; external user32 name 'ModifyMenuW';

function MoveWindow; external user32 name 'MoveWindow';

function MsgWaitForMultipleObjects; external user32 name 'MsgWaitForMultipleObjects';

function MsgWaitForMultipleObjectsEx; external user32 name 'MsgWaitForMultipleObjectsEx';

procedure NotifyWinEvent; external user32 name 'NotifyWinEvent';

function OemKeyScan; external user32 name 'OemKeyScan';

function OemToAnsi; external user32 name 'OemToCharA';

function OemToAnsiBuff; external user32 name 'OemToCharBuffA';

function OemToChar; external user32 name 'OemToCharW';

function OemToCharA; external user32 name 'OemToCharA';

function OemToCharW; external user32 name 'OemToCharW';

function OemToCharBuff; external user32 name 'OemToCharBuffW';

function OemToCharBuffA; external user32 name 'OemToCharBuffA';

function OemToCharBuffW; external user32 name 'OemToCharBuffW';

function OffsetRect; external user32 name 'OffsetRect';

function OpenClipboard; external user32 name 'OpenClipboard';

function OpenDesktop; external user32 name 'OpenDesktopW';

function OpenDesktopA; external user32 name 'OpenDesktopA';

function OpenDesktopW; external user32 name 'OpenDesktopW';

function OpenIcon; external user32 name 'OpenIcon';

function OpenInputDesktop; external user32 name 'OpenInputDesktop';

function OpenWindowStation; external user32 name 'OpenWindowStationW';

function OpenWindowStationA; external user32 name 'OpenWindowStationA';

function OpenWindowStationW; external user32 name 'OpenWindowStationW';

function PackDDElParam; external user32 name 'PackDDElParam';

function PaintDesktop; external user32 name 'PaintDesktop';

function PeekMessage; external user32 name 'PeekMessageW';

function PeekMessageA; external user32 name 'PeekMessageA';

function PeekMessageW; external user32 name 'PeekMessageW';

function PostMessage; external user32 name 'PostMessageW';

function PostMessageA; external user32 name 'PostMessageA';

function PostMessageW; external user32 name 'PostMessageW';

procedure PostQuitMessage; external user32 name 'PostQuitMessage';

function PostThreadMessage; external user32 name 'PostThreadMessageW';

function PostThreadMessageA; external user32 name 'PostThreadMessageA';

function PostThreadMessageW; external user32 name 'PostThreadMessageW';

function PtInRect; external user32 name 'PtInRect';

function RealChildWindowFromPoint; external user32 name 'RealChildWindowFromPoint';

function RealGetWindowClass; external user32 name 'RealGetWindowClassW';

function RealGetWindowClassA; external user32 name 'RealGetWindowClassA';

function RealGetWindowClassW; external user32 name 'RealGetWindowClassW';

function RedrawWindow(hWnd: HWND; lprcUpdate: PRect; hrgnUpdate: HRGN; flags: UINT): BOOL; external user32 name 'RedrawWindow';

function RedrawWindow(hWnd: HWND; const lprcUpdate: TRect; hrgnUpdate: HRGN; flags: UINT): BOOL; external user32 name 'RedrawWindow';

function RegisterClass; external user32 name 'RegisterClassW';

function RegisterClassA; external user32 name 'RegisterClassA';

function RegisterClassW; external user32 name 'RegisterClassW';

function RegisterClassEx; external user32 name 'RegisterClassExW';

function RegisterClassExA; external user32 name 'RegisterClassExA';

function RegisterClassExW; external user32 name 'RegisterClassExW';

function RegisterClipboardFormat; external user32 name 'RegisterClipboardFormatW';

function RegisterClipboardFormatA; external user32 name 'RegisterClipboardFormatA';

function RegisterClipboardFormatW; external user32 name 'RegisterClipboardFormatW';

function RegisterDeviceNotification; external user32 name 'RegisterDeviceNotificationW';

function RegisterDeviceNotificationA; external user32 name 'RegisterDeviceNotificationA';

function RegisterDeviceNotificationW; external user32 name 'RegisterDeviceNotificationW';

function RegisterHotKey; external user32 name 'RegisterHotKey';

function RegisterPowerSettingNotification; external user32 name 'RegisterPowerSettingNotification' delayed;

function RegisterTouchWindow; external user32 name 'RegisterTouchWindow' delayed;

function RegisterWindowMessage; external user32 name 'RegisterWindowMessageW';

function RegisterWindowMessageA; external user32 name 'RegisterWindowMessageA';

function RegisterWindowMessageW; external user32 name 'RegisterWindowMessageW';

function ReleaseCapture; external user32 name 'ReleaseCapture';

function ReleaseDC; external user32 name 'ReleaseDC';

function RemoveMenu; external user32 name 'RemoveMenu';

function RemoveProp; external user32 name 'RemovePropW';

function RemovePropA; external user32 name 'RemovePropA';

function RemovePropW; external user32 name 'RemovePropW';

function ReplyMessage; external user32 name 'ReplyMessage';

function ReuseDDElParam; external user32 name 'ReuseDDElParam';

function ScreenToClient; external user32 name 'ScreenToClient';

function LogicalToPhysicalPoint; external user32 name 'LogicalToPhysicalPoint' delayed;

function PhysicalToLogicalPoint; external user32 name 'PhysicalToLogicalPoint' delayed;

function ScrollDC; external user32 name 'ScrollDC';

function ScrollWindow; external user32 name 'ScrollWindow';

function ScrollWindowEx(hWnd: HWND; dx, dy: Integer;

prcScroll, prcClip: PRect;

hrgnUpdate: HRGN; prcUpdate: PRect; flags: UINT): BOOL; external user32 name 'ScrollWindowEx';

function ScrollWindowEx(hWnd: HWND; dx, dy: Integer;

const prcScroll, prcClip: TRect;

hrgnUpdate: HRGN; prcUpdate: PRect; flags: UINT): BOOL; external user32 name 'ScrollWindowEx';

function SendDlgItemMessage; external user32 name 'SendDlgItemMessageW';

function SendDlgItemMessageA; external user32 name 'SendDlgItemMessageA';

function SendDlgItemMessageW; external user32 name 'SendDlgItemMessageW';

function SendInput; external user32 name 'SendInput';

function SendMessage; external user32 name 'SendMessageW';

function SendMessageA; external user32 name 'SendMessageA';

function SendMessageW; external user32 name 'SendMessageW';

function SendMessageCallback; external user32 name 'SendMessageCallbackW';

function SendMessageCallbackA; external user32 name 'SendMessageCallbackA';

function SendMessageCallbackW; external user32 name 'SendMessageCallbackW';

function SendMessageTimeout; external user32 name 'SendMessageTimeoutW';

function SendMessageTimeoutA; external user32 name 'SendMessageTimeoutA';

function SendMessageTimeoutW; external user32 name 'SendMessageTimeoutW';

function SendNotifyMessage; external user32 name 'SendNotifyMessageW';

function SendNotifyMessageA; external user32 name 'SendNotifyMessageA';

function SendNotifyMessageW; external user32 name 'SendNotifyMessageW';

function SetActiveWindow; external user32 name 'SetActiveWindow';

function SetCapture; external user32 name 'SetCapture';

function SetCaretBlinkTime; external user32 name 'SetCaretBlinkTime';

function SetCaretPos; external user32 name 'SetCaretPos';

function SetClassLong; external user32 name 'SetClassLongW';

function SetClassLongA; external user32 name 'SetClassLongA';

function SetClassLongW; external user32 name 'SetClassLongW';

function SetClassWord; external user32 name 'SetClassWord';

function SetClipboardData; external user32 name 'SetClipboardData';

function SetClipboardViewer; external user32 name 'SetClipboardViewer';

function SetCursor; external user32 name 'SetCursor';

function SetCursorPos; external user32 name 'SetCursorPos';

procedure SetDebugErrorLevel; external user32 name 'SetDebugErrorLevel';

function SetDlgItemInt; external user32 name 'SetDlgItemInt';

function SetDlgItemText; external user32 name 'SetDlgItemTextW';

function SetDlgItemTextA; external user32 name 'SetDlgItemTextA';

function SetDlgItemTextW; external user32 name 'SetDlgItemTextW';

function SetDoubleClickTime; external user32 name 'SetDoubleClickTime';

function SetFocus; external user32 name 'SetFocus';

function SetForegroundWindow; external user32 name 'SetForegroundWindow';

function SetKeyboardState; external user32 name 'SetKeyboardState';

procedure SetLastErrorEx; external user32 name 'SetLastErrorEx';

type

TSetLayeredWindowAttributes = function (Hwnd: THandle; crKey: COLORREF;

bAlpha: Byte; dwFlags: DWORD): Boolean; stdcall;

var

SetLayeredWindowAttributesTested: Boolean = False;

_SetLayeredWindowAttributes: TSetLayeredWindowAttributes = nil;

function SetLayeredWindowAttributes(Hwnd: THandle; crKey: COLORREF; bAlpha: Byte; dwFlags: DWORD): Boolean;

var

LModule: HMODULE;

begin

Result := False;

if not SetLayeredWindowAttributesTested then

begin

LModule := GetModuleHandle(User32);

if LModule <> 0 then

begin

@_SetLayeredWindowAttributes := GetProcAddress(LModule, 'SetLayeredWindowAttributes');

if Assigned(_SetLayeredWindowAttributes) then

Result := _SetLayeredWindowAttributes(Hwnd, crKey, bAlpha, dwFlags);

SetLayeredWindowAttributesTested := True;

end;

end

else

if Assigned(_SetLayeredWindowAttributes) then

Result := _SetLayeredWindowAttributes(Hwnd, crKey, bAlpha, dwFlags);

end;

function SetMenu; external user32 name 'SetMenu';

function SetMenuContextHelpId; external user32 name 'SetMenuContextHelpId';

function SetMenuDefaultItem; external user32 name 'SetMenuDefaultItem';

function SetMenuInfo; external user32 name 'SetMenuInfo';

function SetMenuItemBitmaps; external user32 name 'SetMenuItemBitmaps';

function SetMenuItemInfo; external user32 name 'SetMenuItemInfoW';

function SetMenuItemInfoA; external user32 name 'SetMenuItemInfoA';

function SetMenuItemInfoW; external user32 name 'SetMenuItemInfoW';

function SetMessageExtraInfo; external user32 name 'SetMessageExtraInfo';

function SetMessageQueue; external user32 name 'SetMessageQueue';

function SetParent; external user32 name 'SetParent';

function SetPhysicalCursorPos; external user32 name 'SetPhysicalCursorPos' delayed;

function SetProcessDPIAware; external user32 name 'SetProcessDPIAware' delayed;

function SetProcessWindowStation; external user32 name 'SetProcessWindowStation';

function SetProp; external user32 name 'SetPropW';

function SetPropA; external user32 name 'SetPropA';

function SetPropW; external user32 name 'SetPropW';

function SetRect; external user32 name 'SetRect';

function SetRectEmpty; external user32 name 'SetRectEmpty';

function SetScrollInfo; external user32 name 'SetScrollInfo';

function SetScrollPos; external user32 name 'SetScrollPos';

function SetScrollRange; external user32 name 'SetScrollRange';

function SetSysColors; external user32 name 'SetSysColors';

function SetSystemCursor; external user32 name 'SetSystemCursor';

function SetThreadDesktop; external user32 name 'SetThreadDesktop';

function SetTimer; external user32 name 'SetTimer';

function SetUserObjectInformation; external user32 name 'SetUserObjectInformationW';

function SetUserObjectInformationA; external user32 name 'SetUserObjectInformationA';

function SetUserObjectInformationW; external user32 name 'SetUserObjectInformationW';

function SetUserObjectSecurity; external user32 name 'SetUserObjectSecurity';

function SetWindowContextHelpId; external user32 name 'SetWindowContextHelpId';

function SetWindowDisplayAffinity; external user32 name 'SetWindowDisplayAffinity' delayed;

function SetWindowLong; external user32 name 'SetWindowLongW';

function SetWindowLongA; external user32 name 'SetWindowLongA';

function SetWindowLongW; external user32 name 'SetWindowLongW';

function SetWindowPlacement(hWnd: HWND; WindowPlacement: PWindowPlacement): BOOL; external user32 name 'SetWindowPlacement';

function SetWindowPlacement(hWnd: HWND; const WindowPlacement: TWindowPlacement): BOOL; external user32 name 'SetWindowPlacement';

function SetWindowPos; external user32 name 'SetWindowPos';

function SetWindowText(hWnd: HWND; lpString: PWideChar): BOOL; external user32 name 'SetWindowTextW';

function SetWindowTextA(hWnd: HWND; lpString: PAnsiChar): BOOL; external user32 name 'SetWindowTextA';

function SetWindowTextW(hWnd: HWND; lpString: PWideChar): BOOL; external user32 name 'SetWindowTextW';

function SetWindowText(hWnd: HWND; const lpString: UnicodeString): BOOL;

begin

Result := SetWindowText(hWnd, PWideChar(lpString));

end;

function SetWindowTextA(hWnd: HWND; const lpString: AnsiString): BOOL;

begin

Result := SetWindowTextA(hWnd, PAnsiChar(lpString));

end;

function SetWindowTextW(hWnd: HWND; const lpString: UnicodeString): BOOL;

begin

Result := SetWindowTextW(hWnd, PWideChar(lpString));

end;

function SetWindowWord; external user32 name 'SetWindowWord';

function SetWindowsHook; external user32 name 'SetWindowsHookW';

function SetWindowsHookA; external user32 name 'SetWindowsHookA';

function SetWindowsHookW; external user32 name 'SetWindowsHookW';

function SetWindowsHookEx; external user32 name 'SetWindowsHookExW';

function SetWindowsHookExA; external user32 name 'SetWindowsHookExA';

function SetWindowsHookExW; external user32 name 'SetWindowsHookExW';

function SetWindowRgn; external user32 name 'SetWindowRgn';

function SetWinEventHook; external user32 name 'SetWinEventHook';

function ShowCaret; external user32 name 'ShowCaret';

function ShowCursor; external user32 name 'ShowCursor';

function ShowOwnedPopups; external user32 name 'ShowOwnedPopups';

function ShowScrollBar; external user32 name 'ShowScrollBar';

function ShowWindow; external user32 name 'ShowWindow';

function AnimateWindow; external user32 name 'AnimateWindow';

function ShowWindowAsync; external user32 name 'ShowWindowAsync';

function SubtractRect; external user32 name 'SubtractRect';

function SwapMouseButton; external user32 name 'SwapMouseButton';

function SwitchDesktop; external user32 name 'SwitchDesktop';

function SystemParametersInfo(uiAction, uiParam: UINT;

pvParam: Pointer; fWinIni: UINT): BOOL; external user32 name 'SystemParametersInfoW';

function SystemParametersInfoA(uiAction, uiParam: UINT;

pvParam: Pointer; fWinIni: UINT): BOOL; external user32 name 'SystemParametersInfoA';

function SystemParametersInfoW(uiAction, uiParam: UINT;

pvParam: Pointer; fWinIni: UINT): BOOL; external user32 name 'SystemParametersInfoW';

{$IFDEF UNICODE}

function SystemParametersInfo(uiAction, uiParam: UINT;

var pvParam: Integer; fWinIni: UINT): BOOL; external user32 name 'SystemParametersInfoW';

function SystemParametersInfo(uiAction, uiParam: UINT;

var pvParam: TRect; fWinIni: UINT): BOOL; external user32 name 'SystemParametersInfoW';

{$ELSE}

function SystemParametersInfo(uiAction, uiParam: UINT;

var pvParam: Integer; fWinIni: UINT): BOOL; external user32 name 'SystemParametersInfoA';

function SystemParametersInfo(uiAction, uiParam: UINT;

var pvParam: TRect; fWinIni: UINT): BOOL; external user32 name 'SystemParametersInfoA';

{$ENDIF}

function TabbedTextOut; external user32 name 'TabbedTextOutW';

function TabbedTextOutA; external user32 name 'TabbedTextOutA';

function TabbedTextOutW; external user32 name 'TabbedTextOutW';

function TileWindows; external user32 name 'TileWindows';

function ToAscii; external user32 name 'ToAscii';

function ToAsciiEx; external user32 name 'ToAsciiEx';

function ToUnicode(wVirtKey, wScanCode: UINT; const KeyState: TKeyboardState;

var pwszBuff; cchBuff: Integer; wFlags: UINT): Integer; external user32 name 'ToUnicode';

function ToUnicode(wVirtKey, wScanCode: UINT; const KeyState: TKeyboardState;

pwszBuff: PWideChar; cchBuff: Integer; wFlags: UINT): Integer; external user32 name 'ToUnicode';

function ToUnicodeEx(wVirtKey, wScanCode: UINT; lpKeyState: PByte;

pwszBuff: PWideChar; cchBuff: Integer; wFlags: UINT; dwhkl: HKL): Integer; external user32 name 'ToUnicodeEx';

function ToUnicodeEx(wVirtKey, wScanCode: UINT; const KeyState: TKeyboardState;

pwszBuff: PWideChar; cchBuff: Integer; wFlags: UINT; dwhkl: HKL): Integer; external user32 name 'ToUnicodeEx';

function TrackMouseEvent; external user32 name 'TrackMouseEvent';

function TrackPopupMenu; external user32 name 'TrackPopupMenu';

function TrackPopupMenuEx; external user32 name 'TrackPopupMenuEx';

function TranslateAccelerator; external user32 name 'TranslateAcceleratorW';

function TranslateAcceleratorA; external user32 name 'TranslateAcceleratorA';

function TranslateAcceleratorW; external user32 name 'TranslateAcceleratorW';

function TranslateMDISysAccel; external user32 name 'TranslateMDISysAccel';

function TranslateMessage; external user32 name 'TranslateMessage';

function UnhookWindowsHook; external user32 name 'UnhookWindowsHook';

function UnhookWindowsHookEx; external user32 name 'UnhookWindowsHookEx';

function UnhookWinEvent; external user32 name 'UnhookWinEvent';

function UnionRect; external user32 name 'UnionRect';

function UnloadKeyboardLayout; external user32 name 'UnloadKeyboardLayout';

function UnpackDDElParam; external user32 name 'UnpackDDElParam';

function UnregisterClass; external user32 name 'UnregisterClassW';

function UnregisterClassA; external user32 name 'UnregisterClassA';

function UnregisterClassW; external user32 name 'UnregisterClassW';

function UnregisterDeviceNotification; external user32 name 'UnregisterDeviceNotification';

function UnregisterPowerSettingNotification; external user32 name 'UnregisterPowerSettingNotification' delayed;

function UnregisterHotKey; external user32 name 'UnregisterHotKey';

function UnregisterTouchWindow; external user32 name 'UnregisterTouchWindow' delayed;

function UpdateWindow; external user32 name 'UpdateWindow';

function UpdateLayeredWindow; external user32 name 'UpdateLayeredWindow';

function UserHandleGrantAccess; external user32 name 'UserHandleGrantAccess';

function ValidateRect(hWnd: HWND; lpRect: PRect): BOOL; external user32 name 'ValidateRect';

function ValidateRect(hWnd: HWND; const lpRect: TRect): BOOL; external user32 name 'ValidateRect';

function ValidateRgn; external user32 name 'ValidateRgn';

function VkKeyScan; external user32 name 'VkKeyScanW';

function VkKeyScanA; external user32 name 'VkKeyScanA';

function VkKeyScanW; external user32 name 'VkKeyScanW';

function VkKeyScanEx; external user32 name 'VkKeyScanExW';

function VkKeyScanExA; external user32 name 'VkKeyScanExA';

function VkKeyScanExW; external user32 name 'VkKeyScanExW';

function WaitForInputIdle; external user32 name 'WaitForInputIdle';

function WaitMessage; external user32 name 'WaitMessage';

function WinHelp(hWndMain: HWND; lpszHelp: PWideChar; uCommand: UINT;

dwData: DWORD): BOOL; external user32 name 'WinHelpW';

function WinHelpA(hWndMain: HWND; lpszHelp: PAnsiChar; uCommand: UINT;

dwData: DWORD): BOOL; external user32 name 'WinHelpA';

function WinHelpW(hWndMain: HWND; lpszHelp: PWideChar; uCommand: UINT;

dwData: DWORD): BOOL; external user32 name 'WinHelpW';

function WinHelp(hWndMain: HWND; const lpszHelp: UnicodeString; uCommand: UINT; dwData: DWORD): BOOL;

begin

Result := WinHelp(hWndMain, PWideChar(lpszHelp), uCommand, dwData);

end;

function WinHelpA(hWndMain: HWND; const lpszHelp: AnsiString; uCommand: UINT; dwData: DWORD): BOOL;

begin

Result := WinHelpA(hWndMain, PAnsiChar(lpszHelp), uCommand, dwData);

end;

相关推荐
cpsvps_net12 小时前
美国服务器环境下Windows容器工作负载智能弹性伸缩
windows
甄超锋13 小时前
Java ArrayList的介绍及用法
java·windows·spring boot·python·spring·spring cloud·tomcat
cpsvps15 小时前
美国服务器环境下Windows容器工作负载基于指标的自动扩缩
windows
网硕互联的小客服18 小时前
Apache 如何支持SHTML(SSI)的配置方法
运维·服务器·网络·windows·php
etcix18 小时前
implement copy file content to clipboard on Windows
windows·stm32·单片机
许泽宇的技术分享18 小时前
Windows MCP.Net:基于.NET的Windows桌面自动化MCP服务器深度解析
windows·自动化·.net
非凡ghost20 小时前
AMS PhotoMaster:全方位提升你的照片编辑体验
windows·学习·信息可视化·软件需求
mortimer21 小时前
一次与“顽固”外部程序的艰难交锋:subprocess 调用exe踩坑实录
windows·python·ai编程
gameatp1 天前
从 Windows 到 Linux 服务器的全自动部署教程(免密登录 + 压缩 + 上传 + 启动)
linux·服务器·windows
穷人小水滴1 天前
在 windows 运行 flatpak 应用 (WSL)
linux·windows·ubuntu