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;

相关推荐
亽仒凣凣1 小时前
Windows安装Redis图文教程
数据库·windows·redis
炫彩@之星1 小时前
Windows和Linux安全配置和加固
linux·windows·安全·系统安全配置和加固
小奥超人2 小时前
RAR压缩算法的文件修复功能详解
windows·经验分享·winrar·办公技巧
Clockwiseee12 小时前
php伪协议
windows·安全·web安全·网络安全
唐宋元明清218813 小时前
.NET 阻止系统睡眠/息屏
windows·电源
yylの博客15 小时前
Windows通过git-bash安装zsh
windows·git·bash·zsh
进击的code16 小时前
windows 下使用WLS2 编译aosp Android14并刷机到pixle 5a
windows
染指111019 小时前
50.第二阶段x86游戏实战2-lua获取本地寻路,跨地图寻路和获取当前地图id
c++·windows·lua·游戏安全·反游戏外挂·游戏逆向·luastudio
dntktop20 小时前
Converseen:全能免费批量图像处理专家
windows
一个懒鬼1 天前
Windows脚本清理C盘缓存
windows·缓存