kolmck/KOL_ansi.inc

2317 lines
110 KiB
PHP
Raw Normal View History

{*******************************************************************************
KOL_unicode.inc
Some redeclarations from Windows.pas for case, when UNICODE_CTRLS symbol is off.
*******************************************************************************}
{$IFDEF interface_part} ////////////////////////////////////////////////////////
//// for D3 gumno
type
PRecoveryAgentInformationA = ^TRecoveryAgentInformationA;
PRecoveryAgentInformationW = ^TRecoveryAgentInformationW;
PRecoveryAgentInformation = PRecoveryAgentInformationA;
_RECOVERY_AGENT_INFORMATIONA = record
NextEntryOffset: DWORD;
AgentNameLength: DWORD;
AgentInformation: array[0..0] of AnsiChar;
end;
//// _RECOVERY_AGENT_INFORMATIONA}
_RECOVERY_AGENT_INFORMATIONW = record
NextEntryOffset: DWORD;
AgentNameLength: DWORD;
AgentInformation: array[0..0] of WideChar;
end;
//// _RECOVERY_AGENT_INFORMATIONW}
_RECOVERY_AGENT_INFORMATION = _RECOVERY_AGENT_INFORMATIONA;
TRecoveryAgentInformationA = _RECOVERY_AGENT_INFORMATIONA;
TRecoveryAgentInformationW = _RECOVERY_AGENT_INFORMATIONW;
TRecoveryAgentInformation = TRecoveryAgentInformationA;
RECOVERY_AGENT_INFORMATIONA = _RECOVERY_AGENT_INFORMATIONA;
//// RECOVERY_AGENT_INFORMATIONA}
RECOVERY_AGENT_INFORMATIONW = _RECOVERY_AGENT_INFORMATIONW;
//// RECOVERY_AGENT_INFORMATIONW}
RECOVERY_AGENT_INFORMATION = RECOVERY_AGENT_INFORMATIONA;
//
PTextMetricA = ^TTextMetricA;
PTextMetricW = ^TTextMetricW;
PTextMetric = PTextMetricA;
tagTEXTMETRICA = record
tmHeight: Longint;
tmAscent: Longint;
tmDescent: Longint;
tmInternalLeading: Longint;
tmExternalLeading: Longint;
tmAveCharWidth: Longint;
tmMaxCharWidth: Longint;
tmWeight: Longint;
tmOverhang: Longint;
tmDigitizedAspectX: Longint;
tmDigitizedAspectY: Longint;
tmFirstChar: AnsiChar;
tmLastChar: AnsiChar;
tmDefaultChar: AnsiChar;
tmBreakChar: AnsiChar;
tmItalic: Byte;
tmUnderlined: Byte;
tmStruckOut: Byte;
tmPitchAndFamily: Byte;
tmCharSet: Byte;
end;
tagTEXTMETRICW = record
tmHeight: Longint;
tmAscent: Longint;
tmDescent: Longint;
tmInternalLeading: Longint;
tmExternalLeading: Longint;
tmAveCharWidth: Longint;
tmMaxCharWidth: Longint;
tmWeight: Longint;
tmOverhang: Longint;
tmDigitizedAspectX: Longint;
tmDigitizedAspectY: Longint;
tmFirstChar: WideChar;
tmLastChar: WideChar;
tmDefaultChar: WideChar;
tmBreakChar: WideChar;
tmItalic: Byte;
tmUnderlined: Byte;
tmStruckOut: Byte;
tmPitchAndFamily: Byte;
tmCharSet: Byte;
end;
tagTEXTMETRIC = tagTEXTMETRICA;
TTextMetricA = tagTEXTMETRICA;
TTextMetricW = tagTEXTMETRICW;
TTextMetric = TTextMetricA;
TEXTMETRICA = tagTEXTMETRICA;
TEXTMETRICW = tagTEXTMETRICW;
TEXTMETRIC = TEXTMETRICA;
///
PNewTextMetricA = ^TNewTextMetricA;
PNewTextMetricW = ^TNewTextMetricW;
PNewTextMetric = PNewTextMetricA;
//// tagNEWTEXTMETRICA}
tagNEWTEXTMETRICA = record
tmHeight: Longint;
tmAscent: Longint;
tmDescent: Longint;
tmInternalLeading: Longint;
tmExternalLeading: Longint;
tmAveCharWidth: Longint;
tmMaxCharWidth: Longint;
tmWeight: Longint;
tmOverhang: Longint;
tmDigitizedAspectX: Longint;
tmDigitizedAspectY: Longint;
tmFirstChar: AnsiChar;
tmLastChar: AnsiChar;
tmDefaultChar: AnsiChar;
tmBreakChar: AnsiChar;
tmItalic: Byte;
tmUnderlined: Byte;
tmStruckOut: Byte;
tmPitchAndFamily: Byte;
tmCharSet: Byte;
ntmFlags: DWORD;
ntmSizeEM: UINT;
ntmCellHeight: UINT;
ntmAvgWidth: UINT;
end;
//// tagNEWTEXTMETRICW}
tagNEWTEXTMETRICW = record
tmHeight: Longint;
tmAscent: Longint;
tmDescent: Longint;
tmInternalLeading: Longint;
tmExternalLeading: Longint;
tmAveCharWidth: Longint;
tmMaxCharWidth: Longint;
tmWeight: Longint;
tmOverhang: Longint;
tmDigitizedAspectX: Longint;
tmDigitizedAspectY: Longint;
tmFirstChar: WideChar;
tmLastChar: WideChar;
tmDefaultChar: WideChar;
tmBreakChar: WideChar;
tmItalic: Byte;
tmUnderlined: Byte;
tmStruckOut: Byte;
tmPitchAndFamily: Byte;
tmCharSet: Byte;
ntmFlags: DWORD;
ntmSizeEM: UINT;
ntmCellHeight: UINT;
ntmAvgWidth: UINT;
end;
// tagNEWTEXTMETRIC}
tagNEWTEXTMETRIC = tagNEWTEXTMETRICA;
TNewTextMetricA = tagNEWTEXTMETRICA;
TNewTextMetricW = tagNEWTEXTMETRICW;
TNewTextMetric = TNewTextMetricA;
// NEWTEXTMETRICA}
NEWTEXTMETRICA = tagNEWTEXTMETRICA;
// NEWTEXTMETRICW}
NEWTEXTMETRICW = tagNEWTEXTMETRICW;
// NEWTEXTMETRIC}
NEWTEXTMETRIC = NEWTEXTMETRICA;
PNewTextMetricExA = ^TNewTextMetricExA;
// tagNEWTEXTMETRICEXA}
tagNEWTEXTMETRICEXA = packed record
ntmTm: TNewTextMetricA;
ntmFontSig: TFontSignature;
end;
TNewTextMetricExA = tagNEWTEXTMETRICEXA;
// NEWTEXTMETRICEXA}
NEWTEXTMETRICEXA = tagNEWTEXTMETRICEXA;
PNewTextMetricExW = ^TNewTextMetricExW;
// tagNEWTEXTMETRICEXW}
tagNEWTEXTMETRICEXW = packed record
ntmTm: TNewTextMetricW;
ntmFontSig: TFontSignature;
end;
TNewTextMetricExW = tagNEWTEXTMETRICEXW;
// NEWTEXTMETRICEXW}
NEWTEXTMETRICEXW = tagNEWTEXTMETRICEXW;
PNewTextMetricEx = PNewTextMetricExA;
{ Structure passed to FONTENUMPROC }
PEnumLogFontA = ^TEnumLogFontA;
PEnumLogFontW = ^TEnumLogFontW;
PEnumLogFont = PEnumLogFontA;
// tagENUMLOGFONTA}
tagENUMLOGFONTA = packed record
elfLogFont: TLogFontA;
elfFullName: array[0..LF_FULLFACESIZE - 1] of AnsiChar;
elfStyle: array[0..LF_FACESIZE - 1] of AnsiChar;
end;
// tagENUMLOGFONTW}
tagENUMLOGFONTW = packed record
elfLogFont: TLogFontW;
elfFullName: array[0..LF_FULLFACESIZE - 1] of WideChar;
elfStyle: array[0..LF_FACESIZE - 1] of WideChar;
end;
// tagENUMLOGFONT}
tagENUMLOGFONT = tagENUMLOGFONTA;
TEnumLogFontA = tagENUMLOGFONTA;
TEnumLogFontW = tagENUMLOGFONTW;
TEnumLogFont = TEnumLogFontA;
// ENUMLOGFONTA}
ENUMLOGFONTA = tagENUMLOGFONTA;
// ENUMLOGFONTW}
ENUMLOGFONTW = tagENUMLOGFONTW;
// ENUMLOGFONT}
ENUMLOGFONT = ENUMLOGFONTA;
PEnumLogFontExA = ^TEnumLogFontExA;
PEnumLogFontExW = ^TEnumLogFontExW;
PEnumLogFontEx = PEnumLogFontExA;
// tagENUMLOGFONTEXA}
tagENUMLOGFONTEXA = packed record
elfLogFont: TLogFontA;
elfFullName: array[0..LF_FULLFACESIZE - 1] of AnsiChar;
elfStyle: array[0..LF_FACESIZE - 1] of AnsiChar;
elfScript: array[0..LF_FACESIZE - 1] of AnsiChar;
end;
// tagENUMLOGFONTEXW}
tagENUMLOGFONTEXW = packed record
elfLogFont: TLogFontW;
elfFullName: array[0..LF_FULLFACESIZE - 1] of WideChar;
elfStyle: array[0..LF_FACESIZE - 1] of WideChar;
elfScript: array[0..LF_FACESIZE - 1] of WideChar;
end;
// tagENUMLOGFONTEX}
tagENUMLOGFONTEX = tagENUMLOGFONTEXA;
TEnumLogFontExA = tagENUMLOGFONTEXA;
TEnumLogFontExW = tagENUMLOGFONTEXW;
TEnumLogFontEx = TEnumLogFontExA;
// ENUMLOGFONTEXA}
ENUMLOGFONTEXA = tagENUMLOGFONTEXA;
// ENUMLOGFONTEXW}
ENUMLOGFONTEXW = tagENUMLOGFONTEXW;
// ENUMLOGFONTEX}
ENUMLOGFONTEX = ENUMLOGFONTEXA;
PExtLogFontA = ^TExtLogFontA;
PExtLogFontW = ^TExtLogFontW;
PExtLogFont = PExtLogFontA;
// tagEXTLOGFONTA}
tagEXTLOGFONTA = record
elfLogFont: TLogFontA;
elfFullName: array[0..LF_FULLFACESIZE - 1] of AnsiChar;
elfStyle: array[0..LF_FACESIZE - 1] of AnsiChar;
elfVersion: DWORD; { 0 for the first release of NT }
elfStyleSize: DWORD;
elfMatch: DWORD;
elfReserved: DWORD;
elfVendorId: array[0..ELF_VENDOR_SIZE - 1] of Byte;
elfCulture: DWORD; { 0 for Latin }
elfPanose: TPanose;
end;
// tagEXTLOGFONTW}
tagEXTLOGFONTW = record
elfLogFont: TLogFontW;
elfFullName: array[0..LF_FULLFACESIZE - 1] of WideChar;
elfStyle: array[0..LF_FACESIZE - 1] of WideChar;
elfVersion: DWORD; { 0 for the first release of NT }
elfStyleSize: DWORD;
elfMatch: DWORD;
elfReserved: DWORD;
elfVendorId: array[0..ELF_VENDOR_SIZE - 1] of Byte;
elfCulture: DWORD; { 0 for Latin }
elfPanose: TPanose;
end;
// tagEXTLOGFONT}
tagEXTLOGFONT = tagEXTLOGFONTA;
TExtLogFontA = tagEXTLOGFONTA;
TExtLogFontW = tagEXTLOGFONTW;
TExtLogFont = TExtLogFontA;
// EXTLOGFONTA}
EXTLOGFONTA = tagEXTLOGFONTA;
// EXTLOGFONTW}
EXTLOGFONTW = tagEXTLOGFONTW;
// EXTLOGFONT}
EXTLOGFONT = EXTLOGFONTA;
PDisplayDeviceA = ^TDisplayDeviceA;
PDisplayDeviceW = ^TDisplayDeviceW;
PDisplayDevice = PDisplayDeviceA;
// _DISPLAY_DEVICEA}
_DISPLAY_DEVICEA = packed record
cb: DWORD;
DeviceName: array[0..31] of AnsiChar;
DeviceString: array[0..127] of AnsiChar;
StateFlags: DWORD;
end;
// _DISPLAY_DEVICEW}
_DISPLAY_DEVICEW = packed record
cb: DWORD;
DeviceName: array[0..31] of WideChar;
DeviceString: array[0..127] of WideChar;
StateFlags: DWORD;
end;
// _DISPLAY_DEVICE}
_DISPLAY_DEVICE = _DISPLAY_DEVICEA;
TDisplayDeviceA = _DISPLAY_DEVICEA;
TDisplayDeviceW = _DISPLAY_DEVICEW;
TDisplayDevice = TDisplayDeviceA;
POutlineTextmetricA = ^TOutlineTextmetricA;
POutlineTextmetricW = ^TOutlineTextmetricW;
POutlineTextmetric = POutlineTextmetricA;
// _OUTLINETEXTMETRICA}
_OUTLINETEXTMETRICA = record
otmSize: UINT;
otmTextMetrics: TTextMetricA;
otmFiller: Byte;
otmPanoseNumber: TPanose;
otmfsSelection: UINT;
otmfsType: UINT;
otmsCharSlopeRise: Integer;
otmsCharSlopeRun: Integer;
otmItalicAngle: Integer;
otmEMSquare: UINT;
otmAscent: Integer;
otmDescent: Integer;
otmLineGap: UINT;
otmsCapEmHeight: UINT;
otmsXHeight: UINT;
otmrcFontBox: TRect;
otmMacAscent: Integer;
otmMacDescent: Integer;
otmMacLineGap: UINT;
otmusMinimumPPEM: UINT;
otmptSubscriptSize: TPoint;
otmptSubscriptOffset: TPoint;
otmptSuperscriptSize: TPoint;
otmptSuperscriptOffset: TPoint;
otmsStrikeoutSize: UINT;
otmsStrikeoutPosition: Integer;
otmsUnderscoreSize: Integer;
otmsUnderscorePosition: Integer;
otmpFamilyName: PAnsiChar;
otmpFaceName: PAnsiChar;
otmpStyleName: PAnsiChar;
otmpFullName: PAnsiChar;
end;
// _OUTLINETEXTMETRICW}
_OUTLINETEXTMETRICW = record
otmSize: UINT;
otmTextMetrics: TTextMetricW;
otmFiller: Byte;
otmPanoseNumber: TPanose;
otmfsSelection: UINT;
otmfsType: UINT;
otmsCharSlopeRise: Integer;
otmsCharSlopeRun: Integer;
otmItalicAngle: Integer;
otmEMSquare: UINT;
otmAscent: Integer;
otmDescent: Integer;
otmLineGap: UINT;
otmsCapEmHeight: UINT;
otmsXHeight: UINT;
otmrcFontBox: TRect;
otmMacAscent: Integer;
otmMacDescent: Integer;
otmMacLineGap: UINT;
otmusMinimumPPEM: UINT;
otmptSubscriptSize: TPoint;
otmptSubscriptOffset: TPoint;
otmptSuperscriptSize: TPoint;
otmptSuperscriptOffset: TPoint;
otmsStrikeoutSize: UINT;
otmsStrikeoutPosition: Integer;
otmsUnderscoreSize: Integer;
otmsUnderscorePosition: Integer;
otmpFamilyName: PWideChar;
otmpFaceName: PWideChar;
otmpStyleName: PWideChar;
otmpFullName: PWideChar;
end;
// _OUTLINETEXTMETRIC}
_OUTLINETEXTMETRIC = _OUTLINETEXTMETRICA;
TOutlineTextmetricA = _OUTLINETEXTMETRICA;
TOutlineTextmetricW = _OUTLINETEXTMETRICW;
TOutlineTextmetric = TOutlineTextmetricA;
// OUTLINETEXTMETRICA}
OUTLINETEXTMETRICA = _OUTLINETEXTMETRICA;
// OUTLINETEXTMETRICW}
OUTLINETEXTMETRICW = _OUTLINETEXTMETRICW;
// OUTLINETEXTMETRIC}
OUTLINETEXTMETRIC = OUTLINETEXTMETRICA;
PPolyTextA = ^TPolyTextA;
PPolyTextW = ^TPolyTextW;
PPolyText = PPolyTextA;
// tagPOLYTEXTA}
tagPOLYTEXTA = packed record
x: Integer;
y: Integer;
n: UINT;
PAnsiChar: PAnsiChar;
uiFlags: UINT;
rcl: TRect;
pdx: PINT;
end;
// tagPOLYTEXTW}
tagPOLYTEXTW = packed record
x: Integer;
y: Integer;
n: UINT;
PAnsiChar: PWideChar;
uiFlags: UINT;
rcl: TRect;
pdx: PINT;
end;
// tagPOLYTEXT}
tagPOLYTEXT = tagPOLYTEXTA;
TPolyTextA = tagPOLYTEXTA;
TPolyTextW = tagPOLYTEXTW;
TPolyText = TPolyTextA;
// POLYTEXTA}
POLYTEXTA = tagPOLYTEXTA;
// POLYTEXTW}
POLYTEXTW = tagPOLYTEXTW;
// POLYTEXT}
POLYTEXT = POLYTEXTA;
PGCPResultsA = ^TGCPResultsA;
PGCPResultsW = ^TGCPResultsW;
PGCPResults = PGCPResultsA;
// tagGCP_RESULTSA}
tagGCP_RESULTSA = packed record
lStructSize: DWORD;
lpOutString: PAnsiChar;
lpOrder: PUINT;
lpDx: PINT;
lpCaretPos: PINT;
lpClass: PAnsiChar;
lpGlyphs: PUINT;
nGlyphs: UINT;
nMaxFit: Integer;
end;
// tagGCP_RESULTSW}
tagGCP_RESULTSW = packed record
lStructSize: DWORD;
lpOutString: PWideChar;
lpOrder: PUINT;
lpDx: PINT;
lpCaretPos: PINT;
lpClass: PWideChar;
lpGlyphs: PUINT;
nGlyphs: UINT;
nMaxFit: Integer;
end;
// tagGCP_RESULTS}
tagGCP_RESULTS = tagGCP_RESULTSA;
TGCPResultsA = tagGCP_RESULTSA;
TGCPResultsW = tagGCP_RESULTSW;
TGCPResults = TGCPResultsA;
// GCP_RESULTSA}
GCP_RESULTSA = tagGCP_RESULTSA;
// GCP_RESULTSW}
GCP_RESULTSW = tagGCP_RESULTSW;
// GCP_RESULTS}
GCP_RESULTS = GCP_RESULTSA;
const
MM_MAX_AXES_NAMELEN = 16;
MM_MAX_NUMAXES = 16;
type
PAxisInfoA = ^TAxisInfoA;
tagAXISINFOA = packed record
axMinValue: Longint;
axMaxValue: Longint;
axAxisName: array[0..MM_MAX_AXES_NAMELEN-1] of AnsiChar;
end;
TAxisInfoA = tagAXISINFOA;
PAxisInfoW = ^TAxisInfoW;
// tagAXISINFOW}
tagAXISINFOW = packed record
axMinValue: Longint;
axMaxValue: Longint;
axAxisName: array[0..MM_MAX_AXES_NAMELEN-1] of WideChar;
end;
TAxisInfoW = tagAXISINFOW;
PAxisInfo = PAxisInfoA;
PAxesListA = ^TAxesListA;
// tagAXESLISTA}
tagAXESLISTA = packed record
axlReserved: DWORD;
axlNumAxes: DWORD;
axlAxisInfo: array[0..MM_MAX_NUMAXES-1] of TAxisInfoA;
end;
TAxesListA = tagAXESLISTA;
PAxesListW = ^TAxesListW;
// tagAXESLISTW}
tagAXESLISTW = packed record
axlReserved: DWORD;
axlNumAxes: DWORD;
axlAxisInfo: array[0..MM_MAX_NUMAXES-1] of TAxisInfoW;
end;
TAxesListW = tagAXESLISTW;
PAxesList = PAxesListA;
PEnumLogFontExDVA = ^TEnumLogFontExDVA;
PDesignVector = ^TDesignVector;
tagDESIGNVECTOR = packed record
dvReserved: DWORD;
dvNumAxes: DWORD;
dvValues: array[0..MM_MAX_NUMAXES-1] of Longint;
end;
TDesignVector = tagDESIGNVECTOR;
tagENUMLOGFONTEXDVA = packed record
elfEnumLogfontEx: TEnumLogFontExA;
elfDesignVector: TDesignVector;
end;
TEnumLogFontExDVA = tagENUMLOGFONTEXDVA;
PEnumLogFontExDVW = ^TEnumLogFontExDVW;
// tagENUMLOGFONTEXDVW}
tagENUMLOGFONTEXDVW = packed record
elfEnumLogfontEx: TEnumLogFontExW;
elfDesignVector: TDesignVector;
end;
TEnumLogFontExDVW = tagENUMLOGFONTEXDVW;
PEnumLogFontExDV = PEnumLogFontExDVA;
PEnumTextMetricA = ^TEnumTextMetricA;
// tagENUMTEXTMETRICA}
tagENUMTEXTMETRICA = packed record
etmNewTextMetricEx: TNewTextMetricExA;
etmAxesList: TAxesListA;
end;
TEnumTextMetricA = tagENUMTEXTMETRICA;
PEnumTextMetricW = ^TEnumTextMetricW;
// tagENUMTEXTMETRICW}
tagENUMTEXTMETRICW = packed record
etmNewTextMetricEx: TNewTextMetricExW;
etmAxesList: TAxesListW;
end;
TEnumTextMetricW = tagENUMTEXTMETRICW;
PEnumTextMetric = PEnumTextMetricA;
PDocInfoA = ^TDocInfoA;
PDocInfoW = ^TDocInfoW;
PDocInfo = PDocInfoA;
// _DOCINFOA}
_DOCINFOA = packed record
cbSize: Integer;
lpszDocName: PAnsiChar;
lpszOutput: PAnsiChar;
lpszDatatype: PAnsiChar;
fwType: DWORD;
end;
// _DOCINFOW}
_DOCINFOW = packed record
cbSize: Integer;
lpszDocName: PWideChar;
lpszOutput: PWideChar;
lpszDatatype: PWideChar;
fwType: DWORD;
end;
// _DOCINFO}
_DOCINFO = _DOCINFOA;
TDocInfoA = _DOCINFOA;
TDocInfoW = _DOCINFOW;
TDocInfo = TDocInfoA;
// DOCINFOA}
DOCINFOA = _DOCINFOA;
// DOCINFOW}
DOCINFOW = _DOCINFOW;
// DOCINFO}
DOCINFO = DOCINFOA;
PCreateStructA = ^TCreateStructA;
PCreateStructW = ^TCreateStructW;
PCreateStruct = PCreateStructA;
// tagCREATESTRUCTA}
tagCREATESTRUCTA = packed record
lpCreateParams: Pointer;
hInstance: HINST;
hMenu: HMENU;
hwndParent: HWND;
cy: Integer;
cx: Integer;
y: Integer;
x: Integer;
style: Longint;
lpszName: PAnsiChar;
lpszClass: PAnsiChar;
dwExStyle: DWORD;
end;
// tagCREATESTRUCTW}
tagCREATESTRUCTW = packed record
lpCreateParams: Pointer;
hInstance: HINST;
hMenu: HMENU;
hwndParent: HWND;
cy: Integer;
cx: Integer;
y: Integer;
x: Integer;
style: Longint;
lpszName: PWideChar;
lpszClass: PWideChar;
dwExStyle: DWORD;
end;
// tagCREATESTRUCT}
tagCREATESTRUCT = tagCREATESTRUCTA;
TCreateStructA = tagCREATESTRUCTA;
TCreateStructW = tagCREATESTRUCTW;
TCreateStruct = TCreateStructA;
// CREATESTRUCTA}
CREATESTRUCTA = tagCREATESTRUCTA;
// CREATESTRUCTW}
CREATESTRUCTW = tagCREATESTRUCTW;
// CREATESTRUCT}
CREATESTRUCT = CREATESTRUCTA;
PWndClassExA = ^TWndClassExA;
PWndClassExW = ^TWndClassExW;
PWndClassEx = PWndClassExA;
// tagWNDCLASSEXA}
tagWNDCLASSEXA = packed record
cbSize: UINT;
style: UINT;
lpfnWndProc: TFNWndProc;
cbClsExtra: Integer;
cbWndExtra: Integer;
hInstance: HINST;
hIcon: HICON;
hCursor: HCURSOR;
hbrBackground: HBRUSH;
lpszMenuName: PAnsiChar;
lpszClassName: PAnsiChar;
hIconSm: HICON;
end;
// tagWNDCLASSEXW}
tagWNDCLASSEXW = packed record
cbSize: UINT;
style: UINT;
lpfnWndProc: TFNWndProc;
cbClsExtra: Integer;
cbWndExtra: Integer;
hInstance: HINST;
hIcon: HICON;
hCursor: HCURSOR;
hbrBackground: HBRUSH;
lpszMenuName: PWideChar;
lpszClassName: PWideChar;
hIconSm: HICON;
end;
// tagWNDCLASSEX}
tagWNDCLASSEX = tagWNDCLASSEXA;
TWndClassExA = tagWNDCLASSEXA;
TWndClassExW = tagWNDCLASSEXW;
TWndClassEx = TWndClassExA;
// WNDCLASSEXA}
WNDCLASSEXA = tagWNDCLASSEXA;
// WNDCLASSEXW}
WNDCLASSEXW = tagWNDCLASSEXW;
// WNDCLASSEX}
WNDCLASSEX = WNDCLASSEXA;
PWndClassA = ^TWndClassA;
PWndClassW = ^TWndClassW;
PWndClass = PWndClassA;
// tagWNDCLASSA}
tagWNDCLASSA = packed record
style: UINT;
lpfnWndProc: TFNWndProc;
cbClsExtra: Integer;
cbWndExtra: Integer;
hInstance: HINST;
hIcon: HICON;
hCursor: HCURSOR;
hbrBackground: HBRUSH;
lpszMenuName: PAnsiChar;
lpszClassName: PAnsiChar;
end;
// tagWNDCLASSW}
tagWNDCLASSW = packed record
style: UINT;
lpfnWndProc: TFNWndProc;
cbClsExtra: Integer;
cbWndExtra: Integer;
hInstance: HINST;
hIcon: HICON;
hCursor: HCURSOR;
hbrBackground: HBRUSH;
lpszMenuName: PWideChar;
lpszClassName: PWideChar;
end;
// tagWNDCLASS}
tagWNDCLASS = tagWNDCLASSA;
TWndClassA = tagWNDCLASSA;
TWndClassW = tagWNDCLASSW;
TWndClass = TWndClassA;
// WNDCLASSA}
WNDCLASSA = tagWNDCLASSA;
// WNDCLASSW}
WNDCLASSW = tagWNDCLASSW;
// WNDCLASS}
WNDCLASS = WNDCLASSA;
HDEVNOTIFY = Pointer;
PHDEVNOTIFY = ^HDEVNOTIFY;
////
MakeIntAtom = MakeIntAtomA;
PWin32FindData = PWin32FindDataA;
TWin32FindData = TWin32FindDataA;
{$IFDEF _D3orHigher}
PHWProfileInfo = PHWProfileInfoA;
THWProfileInfo = THWProfileInfoA;
{$ENDIF}
POSVersionInfo = POSVersionInfoA;
TOSVersionInfo = TOSVersionInfoA;
PLogColorSpace = PLogColorSpaceA;
TLogColorSpace = TLogColorSpaceA;
PLogFont = PLogFontA;
TLogFont = TLogFontA;
PDeviceMode = PDeviceModeA;
TDeviceMode = TDeviceModeA;
TFNOldFontEnumProc = TFNOldFontEnumProcA;
TFNFontEnumProc = TFNFontEnumProcA;
MakeIntResource = PAnsiChar; // MakeIntResourceA;
//PMenuItemInfo = PMenuItemInfoA;
//TMenuItemInfo = TMenuItemInfoA;
//MENUITEMINFO = MENUITEMINFOA;
PMsgBoxParams = PMsgBoxParamsA;
TMsgBoxParams = TMsgBoxParamsA;
PMsgBoxParamsA = ^TMsgBoxParamsA;
PMsgBoxParamsW = ^TMsgBoxParamsW;
// tagMSGBOXPARAMSA}
tagMSGBOXPARAMSA = packed record
cbSize: UINT;
hwndOwner: HWND;
hInstance: HINST;
lpszText: PAnsiChar;
lpszCaption: PAnsiChar;
dwStyle: DWORD;
lpszIcon: PAnsiChar;
dwContextHelpId: DWORD;
lpfnMsgBoxCallback: TPRMsgBoxCallback;
dwLanguageId: DWORD;
end;
// tagMSGBOXPARAMSW}
tagMSGBOXPARAMSW = packed record
cbSize: UINT;
hwndOwner: HWND;
hInstance: HINST;
lpszText: PWideChar;
lpszCaption: PWideChar;
dwStyle: DWORD;
lpszIcon: PWideChar;
dwContextHelpId: DWORD;
lpfnMsgBoxCallback: TPRMsgBoxCallback;
dwLanguageId: DWORD;
end;
// tagMSGBOXPARAMS}
tagMSGBOXPARAMS = tagMSGBOXPARAMSA;
TMsgBoxParamsA = tagMSGBOXPARAMSA;
TMsgBoxParamsW = tagMSGBOXPARAMSW;
// MSGBOXPARAMSA}
MSGBOXPARAMSA = tagMSGBOXPARAMSA;
// MSGBOXPARAMSW}
MSGBOXPARAMSW = tagMSGBOXPARAMSW;
// MSGBOXPARAMS}
MSGBOXPARAMS = MSGBOXPARAMSA;
PMDICreateStruct = PMDICreateStructA;
TMDICreateStruct = TMDICreateStructA;
PMultiKeyHelp = PMultiKeyHelpA;
TMultiKeyHelp = TMultiKeyHelpA;
// HELPPOLY}
HELPPOLY = DWORD;
PMultiKeyHelpA = ^TMultiKeyHelpA;
PMultiKeyHelpW = ^TMultiKeyHelpW;
// tagMULTIKEYHELPA}
tagMULTIKEYHELPA = record
mkSize: DWORD;
mkKeylist: AnsiChar;
szKeyphrase: array[0..0] of AnsiChar;
end;
// tagMULTIKEYHELPW}
tagMULTIKEYHELPW = record
mkSize: DWORD;
mkKeylist: WideChar;
szKeyphrase: array[0..0] of WideChar;
end;
// tagMULTIKEYHELP}
tagMULTIKEYHELP = tagMULTIKEYHELPA;
TMultiKeyHelpA = tagMULTIKEYHELPA;
TMultiKeyHelpW = tagMULTIKEYHELPW;
// MULTIKEYHELPA}
MULTIKEYHELPA = tagMULTIKEYHELPA;
// MULTIKEYHELPW}
MULTIKEYHELPW = tagMULTIKEYHELPW;
// MULTIKEYHELP}
MULTIKEYHELP = MULTIKEYHELPA;
PHelpWinInfoA = ^THelpWinInfoA;
PHelpWinInfoW = ^THelpWinInfoW;
PHelpWinInfo = PHelpWinInfoA;
// tagHELPWININFOA}
tagHELPWININFOA = record
wStructSize: Integer;
x: Integer;
y: Integer;
dx: Integer;
dy: Integer;
wMax: Integer;
rgchMember: array[0..1] of AnsiChar;
end;
// tagHELPWININFOW}
tagHELPWININFOW = record
wStructSize: Integer;
x: Integer;
y: Integer;
dx: Integer;
dy: Integer;
wMax: Integer;
rgchMember: array[0..1] of WideChar;
end;
// tagHELPWININFO}
tagHELPWININFO = tagHELPWININFOA;
THelpWinInfoA = tagHELPWININFOA;
THelpWinInfoW = tagHELPWININFOW;
THelpWinInfo = THelpWinInfoA;
// HELPWININFOA}
HELPWININFOA = tagHELPWININFOA;
// HELPWININFOW}
HELPWININFOW = tagHELPWININFOW;
// HELPWININFO}
HELPWININFO = HELPWININFOA;
// tagNONCLIENTMETRICSA}
tagNONCLIENTMETRICSA = packed record
cbSize: UINT;
iBorderWidth: Integer;
iScrollWidth: Integer;
iScrollHeight: Integer;
iCaptionWidth: Integer;
iCaptionHeight: Integer;
lfCaptionFont: TLogFontA;
iSmCaptionWidth: Integer;
iSmCaptionHeight: Integer;
lfSmCaptionFont: TLogFontA;
iMenuWidth: Integer;
iMenuHeight: Integer;
lfMenuFont: TLogFontA;
lfStatusFont: TLogFontA;
lfMessageFont: TLogFontA;
end;
// tagNONCLIENTMETRICSW}
tagNONCLIENTMETRICSW = packed record
cbSize: UINT;
iBorderWidth: Integer;
iScrollWidth: Integer;
iScrollHeight: Integer;
iCaptionWidth: Integer;
iCaptionHeight: Integer;
lfCaptionFont: TLogFontW;
iSmCaptionWidth: Integer;
iSmCaptionHeight: Integer;
lfSmCaptionFont: TLogFontW;
iMenuWidth: Integer;
iMenuHeight: Integer;
lfMenuFont: TLogFontW;
lfStatusFont: TLogFontW;
lfMessageFont: TLogFontW;
end;
// tagNONCLIENTMETRICS}
tagNONCLIENTMETRICS = tagNONCLIENTMETRICSA;
TNonClientMetricsA = tagNONCLIENTMETRICSA;
TNonClientMetricsW = tagNONCLIENTMETRICSW;
PNonClientMetricsA = ^TNonClientMetricsA;
PNonClientMetrics = PNonClientMetricsA;
TNonClientMetrics = TNonClientMetricsA;
PNonClientMetricsW = ^TNonClientMetricsW;
// NONCLIENTMETRICSA}
NONCLIENTMETRICSA = tagNONCLIENTMETRICSA;
// NONCLIENTMETRICSW}
NONCLIENTMETRICSW = tagNONCLIENTMETRICSW;
// NONCLIENTMETRICS}
NONCLIENTMETRICS = NONCLIENTMETRICSA;
// tagICONMETRICSA}
tagICONMETRICSA = packed record
cbSize: UINT;
iHorzSpacing: Integer;
iVertSpacing: Integer;
iTitleWrap: Integer;
lfFont: TLogFontA;
end;
// tagICONMETRICSW}
tagICONMETRICSW = packed record
cbSize: UINT;
iHorzSpacing: Integer;
iVertSpacing: Integer;
iTitleWrap: Integer;
lfFont: TLogFontW;
end;
// tagICONMETRICS}
tagICONMETRICS = tagICONMETRICSA;
TIconMetricsA = tagICONMETRICSA;
TIconMetricsW = tagICONMETRICSW;
PIconMetricsA = ^TIconMetricsA;
PIconMetricsW = ^TIconMetricsW;
PIconMetrics = PIconMetricsA;
TIconMetrics = TIconMetricsA;
// ICONMETRICSA}
ICONMETRICSA = tagICONMETRICSA;
// ICONMETRICSW}
ICONMETRICSW = tagICONMETRICSW;
// ICONMETRICS}
ICONMETRICS = ICONMETRICSA;
PSerialKeys = PSerialKeysA;
TSerialKeys = TSerialKeysA;
PSerialKeysA = ^TSerialKeysA;
PSerialKeysW = ^TSerialKeysW;
// tagSERIALKEYSA}
tagSERIALKEYSA = packed record
cbSize: UINT;
dwFlags: DWORD;
lpszActivePort: PAnsiChar;
lpszPort: PAnsiChar;
iBaudRate: UINT;
iPortState: UINT;
iActive: UINT;
end;
// tagSERIALKEYSW}
tagSERIALKEYSW = packed record
cbSize: UINT;
dwFlags: DWORD;
lpszActivePort: PWideChar;
lpszPort: PWideChar;
iBaudRate: UINT;
iPortState: UINT;
iActive: UINT;
end;
// tagSERIALKEYS}
tagSERIALKEYS = tagSERIALKEYSA;
TSerialKeysA = tagSERIALKEYSA;
TSerialKeysW = tagSERIALKEYSW;
// SERIALKEYSA}
SERIALKEYSA = tagSERIALKEYSA;
// SERIALKEYSW}
SERIALKEYSW = tagSERIALKEYSW;
// SERIALKEYS}
SERIALKEYS = SERIALKEYSA;
PHighContrast = PHighContrastA;
THighContrast = THighContrastA;
PHighContrastA = ^THighContrastA;
PHighContrastW = ^THighContrastW;
// tagHIGHCONTRASTA}
tagHIGHCONTRASTA = packed record
cbSize: UINT;
dwFlags: DWORD;
lpszDefaultScheme: PAnsiChar;
end;
// tagHIGHCONTRASTW}
tagHIGHCONTRASTW = packed record
cbSize: UINT;
dwFlags: DWORD;
lpszDefaultScheme: PWideChar;
end;
// tagHIGHCONTRAST}
tagHIGHCONTRAST = tagHIGHCONTRASTA;
THighContrastA = tagHIGHCONTRASTA;
THighContrastW = tagHIGHCONTRASTW;
// HIGHCONTRASTA}
HIGHCONTRASTA = tagHIGHCONTRASTA;
// HIGHCONTRASTW}
HIGHCONTRASTW = tagHIGHCONTRASTW;
// HIGHCONTRAST}
HIGHCONTRAST = HIGHCONTRASTA;
PSoundsEntry = PSoundsEntryA;
TSoundsEntry = TSoundsEntryA;
PSoundsEntryA = ^TSoundsEntryA;
PSoundsEntryW = ^TSoundsEntryW;
// tagSOUNDSENTRYA}
tagSOUNDSENTRYA = packed record
cbSize: UINT;
dwFlags: DWORD;
iFSTextEffect: DWORD;
iFSTextEffectMSec: DWORD;
iFSTextEffectColorBits: DWORD;
iFSGrafEffect: DWORD;
iFSGrafEffectMSec: DWORD;
iFSGrafEffectColor: DWORD;
iWindowsEffect: DWORD;
iWindowsEffectMSec: DWORD;
lpszWindowsEffectDLL: PAnsiChar;
iWindowsEffectOrdinal: DWORD;
end;
// tagSOUNDSENTRYW}
tagSOUNDSENTRYW = packed record
cbSize: UINT;
dwFlags: DWORD;
iFSTextEffect: DWORD;
iFSTextEffectMSec: DWORD;
iFSTextEffectColorBits: DWORD;
iFSGrafEffect: DWORD;
iFSGrafEffectMSec: DWORD;
iFSGrafEffectColor: DWORD;
iWindowsEffect: DWORD;
iWindowsEffectMSec: DWORD;
lpszWindowsEffectDLL: PWideChar;
iWindowsEffectOrdinal: DWORD;
end;
// tagSOUNDSENTRY}
tagSOUNDSENTRY = tagSOUNDSENTRYA;
TSoundsEntryA = tagSOUNDSENTRYA;
TSoundsEntryW = tagSOUNDSENTRYW;
// SOUNDSENTRYA}
SOUNDSENTRYA = tagSOUNDSENTRYA;
// SOUNDSENTRYW}
SOUNDSENTRYW = tagSOUNDSENTRYW;
// SOUNDSENTRY}
SOUNDSENTRY = SOUNDSENTRYA;
PNumberFmt = PNumberFmtA;
TNumberFmt = TNumberFmtA;
PNumberFmtA = ^TNumberFmtA;
PNumberFmtW = ^TNumberFmtW;
// _numberfmtA}
_numberfmtA = packed record
NumDigits: UINT; { number of decimal digits }
LeadingZero: UINT; { if leading zero in decimal fields }
Grouping: UINT; { group size left of decimal }
lpDecimalSep: PAnsiChar; { ptr to decimal separator AnsiString }
lpThousandSep: PAnsiChar; { ptr to thousand separator AnsiString }
NegativeOrder: UINT; { negative number ordering }
end;
// _numberfmtW}
_numberfmtW = packed record
NumDigits: UINT; { number of decimal digits }
LeadingZero: UINT; { if leading zero in decimal fields }
Grouping: UINT; { group size left of decimal }
lpDecimalSep: PWideChar; { ptr to decimal separator WideString }
lpThousandSep: PWideChar; { ptr to thousand separator WideString }
NegativeOrder: UINT; { negative number ordering }
end;
// _numberfmt}
_numberfmt = _numberfmtA;
TNumberFmtA = _numberfmtA;
TNumberFmtW = _numberfmtW;
// NUMBERFMTA}
NUMBERFMTA = _numberfmtA;
// NUMBERFMTW}
NUMBERFMTW = _numberfmtW;
// NUMBERFMT}
NUMBERFMT = NUMBERFMTA;
PCurrencyFmt = PCurrencyFmtA;
PCurrencyFmtA = ^TCurrencyFmtA;
PCurrencyFmtW = ^TCurrencyFmtW;
// _currencyfmtA}
_currencyfmtA = packed record
NumDigits: UINT; { number of decimal digits }
LeadingZero: UINT; { if leading zero in decimal fields }
Grouping: UINT; { group size left of decimal }
lpDecimalSep: PAnsiChar; { ptr to decimal separator AnsiString }
lpThousandSep: PAnsiChar; { ptr to thousand separator AnsiString }
NegativeOrder: UINT; { negative currency ordering }
PositiveOrder: UINT; { positive currency ordering }
lpCurrencySymbol: PAnsiChar; { ptr to currency symbol AnsiString }
end;
// _currencyfmtW}
_currencyfmtW = packed record
NumDigits: UINT; { number of decimal digits }
LeadingZero: UINT; { if leading zero in decimal fields }
Grouping: UINT; { group size left of decimal }
lpDecimalSep: PWideChar; { ptr to decimal separator WideString }
lpThousandSep: PWideChar; { ptr to thousand separator WideString }
NegativeOrder: UINT; { negative currency ordering }
PositiveOrder: UINT; { positive currency ordering }
lpCurrencySymbol: PWideChar; { ptr to currency symbol WideString }
end;
// _currencyfmt}
_currencyfmt = _currencyfmtA;
TCurrencyFmtA = _currencyfmtA;
TCurrencyFmtW = _currencyfmtW;
TCurrencyFmt = TCurrencyFmtA;
// CURRENCYFMTA}
CURRENCYFMTA = _currencyfmtA;
// CURRENCYFMTW}
CURRENCYFMTW = _currencyfmtW;
// CURRENCYFMT}
CURRENCYFMT = CURRENCYFMTA;
PPValue = PPValueA;
{ Provider supplied value/context.}
PPValueA = ^TPValueA;
PPValueW = ^TPValueW;
// pvalueA}
pvalueA = packed record
pv_valuename: PAnsiChar; { The value name pointer }
pv_valuelen: BOOL;
pv_value_context: Pointer;
pv_type: DWORD;
end;
// pvalueW}
pvalueW = packed record
pv_valuename: PWideChar; { The value name pointer }
pv_valuelen: BOOL;
pv_value_context: Pointer;
pv_type: DWORD;
end;
// pvalue}
pvalue = pvalueA;
TPValueA = pvalueA;
TPValueW = pvalueW;
TPValue = TPValueA;
PValueEnt = PValueEntA;
TValueEnt = TValueEntA;
PValueEntA = ^TValueEntA;
PValueEntW = ^TValueEntW;
// value_entA}
value_entA = packed record
ve_valuename: PAnsiChar;
ve_valuelen: DWORD;
ve_valueptr: DWORD;
ve_type: DWORD;
end;
// value_entW}
value_entW = packed record
ve_valuename: PWideChar;
ve_valuelen: DWORD;
ve_valueptr: DWORD;
ve_type: DWORD;
end;
// value_ent}
value_ent = value_entA;
TValueEntA = value_entA;
TValueEntW = value_entW;
// VALENTA}
VALENTA = value_entA;
// VALENTW}
VALENTW = value_entW;
// VALENT}
VALENT = VALENTA;
TValEnt = TValueEnt;
PValEnt = PValueEnt;
PNetResource = PNetResourceA;
TNetResource = TNetResourceA;
PNetResourceA = ^TNetResourceA;
PNetResourceW = ^TNetResourceW;
// _NETRESOURCEA}
_NETRESOURCEA = packed record
dwScope: DWORD;
dwType: DWORD;
dwDisplayType: DWORD;
dwUsage: DWORD;
lpLocalName: PAnsiChar;
lpRemoteName: PAnsiChar;
lpComment: PAnsiChar;
lpProvider: PAnsiChar;
end;
// _NETRESOURCEW}
_NETRESOURCEW = packed record
dwScope: DWORD;
dwType: DWORD;
dwDisplayType: DWORD;
dwUsage: DWORD;
lpLocalName: PWideChar;
lpRemoteName: PWideChar;
lpComment: PWideChar;
lpProvider: PWideChar;
end;
// _NETRESOURCE}
_NETRESOURCE = _NETRESOURCEA;
TNetResourceA = _NETRESOURCEA;
TNetResourceW = _NETRESOURCEW;
// NETRESOURCEA}
NETRESOURCEA = _NETRESOURCEA;
// NETRESOURCEW}
NETRESOURCEW = _NETRESOURCEW;
// NETRESOURCE}
NETRESOURCE = NETRESOURCEA;
PDiscDlgStruct = PDiscDlgStructA;
PDiscDlgStructA = ^TDiscDlgStructA;
PDiscDlgStructW = ^TDiscDlgStructW;
// _DISCDLGSTRUCTA}
_DISCDLGSTRUCTA = packed record
cbStructure: DWORD; { size of this structure in bytes }
hwndOwner: HWND; { owner window for the dialog }
lpLocalName: PAnsiChar; { local device name }
lpRemoteName: PAnsiChar; { network resource name }
dwFlags: DWORD;
end;
// _DISCDLGSTRUCTW}
_DISCDLGSTRUCTW = packed record
cbStructure: DWORD; { size of this structure in bytes }
hwndOwner: HWND; { owner window for the dialog }
lpLocalName: PWideChar; { local device name }
lpRemoteName: PWideChar; { network resource name }
dwFlags: DWORD;
end;
// _DISCDLGSTRUCT}
_DISCDLGSTRUCT = _DISCDLGSTRUCTA;
TDiscDlgStructA = _DISCDLGSTRUCTA;
TDiscDlgStructW = _DISCDLGSTRUCTW;
TDiscDlgStruct = TDiscDlgStructA;
// DISCDLGSTRUCTA}
DISCDLGSTRUCTA = _DISCDLGSTRUCTA;
// DISCDLGSTRUCTW}
DISCDLGSTRUCTW = _DISCDLGSTRUCTW;
// DISCDLGSTRUCT}
DISCDLGSTRUCT = DISCDLGSTRUCTA;
PUniversalNameInfo = PUniversalNameInfoA;
TUniversalNameInfo = TUniversalNameInfoA;
PUniversalNameInfoA = ^TUniversalNameInfoA;
PUniversalNameInfoW = ^TUniversalNameInfoW;
// _UNIVERSAL_NAME_INFOA}
_UNIVERSAL_NAME_INFOA = packed record
lpUniversalName: PAnsiChar;
end;
// _UNIVERSAL_NAME_INFOW}
_UNIVERSAL_NAME_INFOW = packed record
lpUniversalName: PWideChar;
end;
// _UNIVERSAL_NAME_INFO}
_UNIVERSAL_NAME_INFO = _UNIVERSAL_NAME_INFOA;
TUniversalNameInfoA = _UNIVERSAL_NAME_INFOA;
TUniversalNameInfoW = _UNIVERSAL_NAME_INFOW;
// UNIVERSAL_NAME_INFOA}
UNIVERSAL_NAME_INFOA = _UNIVERSAL_NAME_INFOA;
// UNIVERSAL_NAME_INFOW}
UNIVERSAL_NAME_INFOW = _UNIVERSAL_NAME_INFOW;
// UNIVERSAL_NAME_INFO}
UNIVERSAL_NAME_INFO = UNIVERSAL_NAME_INFOA;
PRemoteNameInfo = PRemoteNameInfoA;
TRemoteNameInfo = TRemoteNameInfoA;
PRemoteNameInfoA = ^TRemoteNameInfoA;
PRemoteNameInfoW = ^TRemoteNameInfoW;
// _REMOTE_NAME_INFOA}
_REMOTE_NAME_INFOA = packed record
lpUniversalName: PAnsiChar;
lpConnectionName: PAnsiChar;
lpRemainingPath: PAnsiChar;
end;
// _REMOTE_NAME_INFOW}
_REMOTE_NAME_INFOW = packed record
lpUniversalName: PWideChar;
lpConnectionName: PWideChar;
lpRemainingPath: PWideChar;
end;
// _REMOTE_NAME_INFO}
_REMOTE_NAME_INFO = _REMOTE_NAME_INFOA;
TRemoteNameInfoA = _REMOTE_NAME_INFOA;
TRemoteNameInfoW = _REMOTE_NAME_INFOW;
// REMOTE_NAME_INFOA}
REMOTE_NAME_INFOA = _REMOTE_NAME_INFOA;
// REMOTE_NAME_INFOW}
REMOTE_NAME_INFOW = _REMOTE_NAME_INFOW;
// REMOTE_NAME_INFO}
REMOTE_NAME_INFO = REMOTE_NAME_INFOA;
AUDIT_EVENT_TYPE = DWORD;
{$IFDEF _D3orHigher}
PObjectTypeList = ^TObjectTypeList;
_OBJECT_TYPE_LIST = record
Level: WORD;
Sbz: WORD;
ObjectType: PGUID;
end;
TObjectTypeList = _OBJECT_TYPE_LIST;
OBJECT_TYPE_LIST = _OBJECT_TYPE_LIST;
{$ENDIF _D3orHigher}
{ Alt-Tab Switch window information. }
PAltTabInfo = ^TAltTabInfo;
tagALTTABINFO = packed record
cbSize: DWORD;
cItems: Integer;
cColumns: Integer;
cRows: Integer;
iColFocus: Integer;
iRowFocus: Integer;
cxItem: Integer;
cyItem: Integer;
ptStart: TPoint;
end;
TAltTabInfo = tagALTTABINFO;
function AbortSystemShutdown(lpMachineName: PKOLChar): BOOL; stdcall;
function AccessCheckAndAuditAlarm(SubsystemName: PKOLChar;
HandleId: Pointer; ObjectTypeName, ObjectName: PKOLChar;
SecurityDescriptor: PSecurityDescriptor; DesiredAccess: DWORD;
const GenericMapping: TGenericMapping; ObjectCreation: BOOL;
var GrantedAccess: DWORD; var AccessStatus, pfGenerateOnClose: BOOL): BOOL; stdcall;
{$IFDEF _D4orHigher}
function AccessCheckByTypeAndAuditAlarm(SubsystemName: PKOLChar;
HandleId: Pointer; ObjectTypeName, ObjectName: PKOLChar;
SecurityDescriptor: PSecurityDescriptor; PrincipalSelfSid: PSID; DesiredAccess: DWORD;
AuditType: AUDIT_EVENT_TYPE; Flags: DWORD; ObjectTypeList: PObjectTypeList;
ObjectTypeListLength: DWORD; const GenericMapping: TGenericMapping; ObjectCreation: BOOL;
var GrantedAccess: DWORD; var AccessStatus, pfGenerateOnClose: BOOL): BOOL; stdcall;
function AccessCheckByTypeResultListAndAuditAlarm(SubsystemName: PKOLChar;
HandleId: Pointer; ObjectTypeName, ObjectName: PKOLChar;
SecurityDescriptor: PSecurityDescriptor; PrincipalSelfSid: PSID; DesiredAccess: DWORD;
AuditType: AUDIT_EVENT_TYPE; Flags: DWORD; ObjectTypeList: PObjectTypeList;
ObjectTypeListLength: DWORD; const GenericMapping: TGenericMapping; ObjectCreation: BOOL;
var GrantedAccess: DWORD; var AccessStatusList: DWORD; var pfGenerateOnClose: BOOL): BOOL; stdcall;
{$ENDIF _D4orHigher}
function BackupEventLog(hEventLog: THandle; lpBackupFileName: PKOLChar): BOOL; stdcall;
function ClearEventLog(hEventLog: THandle; lpBackupFileName: PKOLChar): BOOL; stdcall;
function CreateProcessAsUser(hToken: THandle; lpApplicationName: PKOLChar;
lpCommandLine: PKOLChar; lpProcessAttributes: PSecurityAttributes;
lpThreadAttributes: PSecurityAttributes; bInheritHandles: BOOL;
dwCreationFlags: DWORD; lpEnvironment: Pointer; lpCurrentDirectory: PKOLChar;
const lpStartupInfo: TStartupInfo; var lpProcessInformation: TProcessInformation): BOOL; stdcall;
{$IFDEF _D3orHigher}
function GetCurrentHwProfile(var lpHwProfileInfo: THWProfileInfo): BOOL; stdcall;
{$ENDIF _D3orHigher}
function GetFileSecurity(lpFileName: PKOLChar; RequestedInformation: SECURITY_INFORMATION;
pSecurityDescriptor: PSecurityDescriptor; nLength: DWORD; var lpnLengthNeeded: DWORD): BOOL; stdcall;
function GetUserName(lpBuffer: PKOLChar; var nSize: DWORD): BOOL; stdcall;
function InitiateSystemShutdown(lpMachineName, lpMessage: PKOLChar;
dwTimeout: DWORD; bForceAppsClosed, bRebootAfterShutdown: BOOL): BOOL; stdcall;
function LogonUser(lpszUsername, lpszDomain, lpszPassword: PKOLChar;
dwLogonType, dwLogonProvider: DWORD; var phToken: THandle): BOOL; stdcall;
function LookupAccountName(lpSystemName, lpAccountName: PKOLChar;
Sid: PSID; var cbSid: DWORD; ReferencedDomainName: PKOLChar;
var cbReferencedDomainName: DWORD; var peUse: SID_NAME_USE): BOOL; stdcall;
function LookupAccountSid(lpSystemName: PKOLChar; Sid: PSID;
Name: PKOLChar; var cbName: DWORD; ReferencedDomainName: PKOLChar;
var cbReferencedDomainName: DWORD; var peUse: SID_NAME_USE): BOOL; stdcall;
function LookupPrivilegeDisplayName(lpSystemName, lpName: PKOLChar;
lpDisplayName: PKOLChar; var cbDisplayName, lpLanguageId: DWORD): BOOL; stdcall;
function LookupPrivilegeName(lpSystemName: PKOLChar;
var lpLuid: TLargeInteger; lpName: PKOLChar; var cbName: DWORD): BOOL; stdcall;
function LookupPrivilegeValue(lpSystemName, lpName: PKOLChar;
var lpLuid: TLargeInteger): BOOL; stdcall;
function ObjectCloseAuditAlarm(SubsystemName: PKOLChar;
HandleId: Pointer; GenerateOnClose: BOOL): BOOL; stdcall;
function ObjectDeleteAuditAlarm(SubsystemName: PKOLChar;
HandleId: Pointer; GenerateOnClose: BOOL): BOOL; stdcall;
function ObjectOpenAuditAlarm(SubsystemName: PKOLChar; HandleId: Pointer;
ObjectTypeName: PKOLChar; ObjectName: PKOLChar; pSecurityDescriptor: PSecurityDescriptor;
ClientToken: THandle; DesiredAccess, GrantedAccess: DWORD;
var Privileges: TPrivilegeSet; ObjectCreation, AccessGranted: BOOL;
var GenerateOnClose: BOOL): BOOL; stdcall;
function ObjectPrivilegeAuditAlarm(SubsystemName: PKOLChar;
HandleId: Pointer; ClientToken: THandle; DesiredAccess: DWORD;
var Privileges: TPrivilegeSet; AccessGranted: BOOL): BOOL; stdcall;
function OpenBackupEventLog(lpUNCServerName, lpFileName: PKOLChar): THandle; stdcall;
function OpenEventLog(lpUNCServerName, lpSourceName: PKOLChar): THandle; stdcall;
function PrivilegedServiceAuditAlarm(SubsystemName, ServiceName: PKOLChar;
ClientToken: THandle; var Privileges: TPrivilegeSet; AccessGranted: BOOL): BOOL; stdcall;
function ReadEventLog(hEventLog: THandle; dwReadFlags, dwRecordOffset: DWORD;
lpBuffer: Pointer; nNumberOfBytesToRead: DWORD;
var pnBytesRead, pnMinNumberOfBytesNeeded: DWORD): BOOL; stdcall;
function RegConnectRegistry(lpMachineName: PKOLChar; hKey: HKEY;
var phkResult: HKEY): Longint; stdcall;
function RegCreateKey(hKey: HKEY; lpSubKey: PKOLChar;
var phkResult: HKEY): Longint; stdcall;
function RegCreateKeyEx(hKey: HKEY; lpSubKey: PKOLChar;
Reserved: DWORD; lpClass: PKOLChar; dwOptions: DWORD; samDesired: REGSAM;
lpSecurityAttributes: PSecurityAttributes; var phkResult: HKEY;
lpdwDisposition: PDWORD): Longint; stdcall;
function RegDeleteKey(hKey: HKEY; lpSubKey: PKOLChar): Longint; stdcall;
function RegDeleteValue(hKey: HKEY; lpValueName: PKOLChar): Longint; stdcall;
function RegEnumKeyEx(hKey: HKEY; dwIndex: DWORD; lpName: PKOLChar;
var lpcbName: DWORD; lpReserved: Pointer; lpClass: PKOLChar;
lpcbClass: PDWORD; lpftLastWriteTime: PFileTime): Longint; stdcall;
function RegEnumKey(hKey: HKEY; dwIndex: DWORD; lpName: PKOLChar; cbName: DWORD): Longint; stdcall;
function RegEnumValue(hKey: HKEY; dwIndex: DWORD; lpValueName: PKOLChar;
var lpcbValueName: DWORD; lpReserved: Pointer; lpType: PDWORD;
lpData: PByte; lpcbData: PDWORD): Longint; stdcall;
function RegLoadKey(hKey: HKEY; lpSubKey, lpFile: PKOLChar): Longint; stdcall;
function RegOpenKey(hKey: HKEY; lpSubKey: PKOLChar; var phkResult: HKEY): Longint; stdcall;
function RegOpenKeyEx(hKey: HKEY; lpSubKey: PKOLChar;
ulOptions: DWORD; samDesired: REGSAM; var phkResult: HKEY): Longint; stdcall;
function RegQueryInfoKey(hKey: HKEY; lpClass: PKOLChar;
lpcbClass: PDWORD; lpReserved: Pointer;
lpcSubKeys, lpcbMaxSubKeyLen, lpcbMaxClassLen, lpcValues,
lpcbMaxValueNameLen, lpcbMaxValueLen, lpcbSecurityDescriptor: PDWORD;
lpftLastWriteTime: PFileTime): Longint; stdcall;
function RegQueryMultipleValues(hKey: HKEY; var ValList;
NumVals: DWORD; lpValueBuf: PKOLChar; var ldwTotsize: DWORD): Longint; stdcall;
function RegQueryValue(hKey: HKEY; lpSubKey: PKOLChar;
lpValue: PKOLChar; var lpcbValue: Longint): Longint; stdcall;
function RegQueryValueEx(hKey: HKEY; lpValueName: PKOLChar;
lpReserved: Pointer; lpType: PDWORD; lpData: PByte; lpcbData: PDWORD): Longint; stdcall;
function RegReplaceKey(hKey: HKEY; lpSubKey: PKOLChar;
lpNewFile: PKOLChar; lpOldFile: PKOLChar): Longint; stdcall;
function RegRestoreKey(hKey: HKEY; lpFile: PKOLChar; dwFlags: DWORD): Longint; stdcall;
function RegSaveKey(hKey: HKEY; lpFile: PKOLChar;
lpSecurityAttributes: PSecurityAttributes): Longint; stdcall;
function RegSetValue(hKey: HKEY; lpSubKey: PKOLChar;
dwType: DWORD; lpData: PKOLChar; cbData: DWORD): Longint; stdcall;
function RegSetValueEx(hKey: HKEY; lpValueName: PKOLChar;
Reserved: DWORD; dwType: DWORD; lpData: Pointer; cbData: DWORD): Longint; stdcall;
function RegUnLoadKey(hKey: HKEY; lpSubKey: PKOLChar): Longint; stdcall;
function RegisterEventSource(lpUNCServerName, lpSourceName: PKOLChar): THandle; stdcall;
function ReportEvent(hEventLog: THandle; wType, wCategory: Word;
dwEventID: DWORD; lpUserSid: Pointer; wNumStrings: Word;
dwDataSize: DWORD; lpStrings, lpRawData: Pointer): BOOL; stdcall;
function SetFileSecurity(lpFileName: PKOLChar; SecurityInformation: SECURITY_INFORMATION;
pSecurityDescriptor: PSecurityDescriptor): BOOL; stdcall;
function AddAtom(lpString: PKOLChar): ATOM; stdcall;
function BeginUpdateResource(pFileName: PKOLChar; bDeleteExistingResources: BOOL): THandle; stdcall;
function BuildCommDCB(lpDef: PKOLChar; var lpDCB: TDCB): BOOL; stdcall;
function BuildCommDCBAndTimeouts(lpDef: PKOLChar; var lpDCB: TDCB;
var lpCommTimeouts: TCommTimeouts): BOOL; stdcall;
function CallNamedPipe(lpNamedPipeName: PKOLChar; lpInBuffer: Pointer;
nInBufferSize: DWORD; lpOutBuffer: Pointer; nOutBufferSize: DWORD;
var lpBytesRead: DWORD; nTimeOut: DWORD): BOOL; stdcall;
function CommConfigDialog(lpszName: PKOLChar; hWnd: HWND; var lpCC: TCommConfig): BOOL; stdcall;
function CompareString(Locale: LCID; dwCmpFlags: DWORD; lpString1: PKOLChar;
cchCount1: Integer; lpString2: PKOLChar; cchCount2: Integer): Integer; stdcall;
function CopyFile(lpExistingFileName, lpNewFileName: PKOLChar; bFailIfExists: BOOL): BOOL; stdcall;
{$IFDEF _D3orHigher}
function CopyFileEx(lpExistingFileName, lpNewFileName: PKOLChar;
lpProgressRoutine: TFNProgressRoutine; lpData: Pointer; pbCancel: PBool;
dwCopyFlags: DWORD): BOOL; stdcall;
{$ENDIF _D3orHigher}
function CreateDirectory(lpPathName: PKOLChar;
lpSecurityAttributes: PSecurityAttributes): BOOL; stdcall;
function CreateDirectoryEx(lpTemplateDirectory, lpNewDirectory: PKOLChar;
lpSecurityAttributes: PSecurityAttributes): BOOL; stdcall;
function CreateEvent(lpEventAttributes: PSecurityAttributes;
bManualReset, bInitialState: BOOL; lpName: PKOLChar): THandle; stdcall;
function CreateFile(lpFileName: PKOLChar; dwDesiredAccess, dwShareMode: DWORD;
lpSecurityAttributes: PSecurityAttributes; dwCreationDisposition, dwFlagsAndAttributes: DWORD;
hTemplateFile: THandle): THandle; stdcall;
function CreateFileMapping(hFile: THandle; lpFileMappingAttributes: PSecurityAttributes;
flProtect, dwMaximumSizeHigh, dwMaximumSizeLow: DWORD; lpName: PKOLChar): THandle; stdcall;
function CreateHardLink(lpFileName, lpExistingFileName: PKOLChar;
lpSecurityAttributes: PSecurityAttributes): BOOL; stdcall;
function CreateMailslot(lpName: PKOLChar; nMaxMessageSize: DWORD;
lReadTimeout: DWORD; lpSecurityAttributes: PSecurityAttributes): THandle; stdcall;
function CreateNamedPipe(lpName: PKOLChar;
dwOpenMode, dwPipeMode, nMaxInstances, nOutBufferSize, nInBufferSize, nDefaultTimeOut: DWORD;
lpSecurityAttributes: PSecurityAttributes): THandle; stdcall;
function CreateProcess(lpApplicationName: PKOLChar; lpCommandLine: PKOLChar;
lpProcessAttributes, lpThreadAttributes: PSecurityAttributes;
bInheritHandles: BOOL; dwCreationFlags: DWORD; lpEnvironment: Pointer;
lpCurrentDirectory: PKOLChar; const lpStartupInfo: TStartupInfo;
var lpProcessInformation: TProcessInformation): BOOL; stdcall;
function CreateSemaphore(lpSemaphoreAttributes: PSecurityAttributes;
lInitialCount, lMaximumCount: Longint; lpName: PKOLChar): THandle; stdcall;
function CreateWaitableTimer(lpTimerAttributes: PSecurityAttributes; bManualReset: BOOL; lpTimerName: PKOLChar): THandle; stdcall;
function DefineDosDevice(dwFlags: DWORD; lpDeviceName, lpTargetPath: PKOLChar): BOOL; stdcall;
function DeleteFile(lpFileName: PKOLChar): BOOL; stdcall;
function EndUpdateResource(hUpdate: THandle; fDiscard: BOOL): BOOL; stdcall;
function EnumCalendarInfo(lpCalInfoEnumProc: TFNCalInfoEnumProc; Locale: LCID;
Calendar: CALID; CalType: CALTYPE): BOOL; stdcall;
function EnumDateFormats(lpDateFmtEnumProc: TFNDateFmtEnumProc;
Locale: LCID; dwFlags: DWORD): BOOL; stdcall;
function EnumResourceLanguages(hModule: HMODULE; lpType, lpName: PKOLChar;
lpEnumFunc: ENUMRESLANGPROC; lParam: Longint): BOOL; stdcall;
function EnumResourceNames(hModule: HMODULE; lpType: PKOLChar;
lpEnumFunc: ENUMRESNAMEPROC; lParam: Longint): BOOL; stdcall;
function EnumResourceTypes(hModule: HMODULE; lpEnumFunc: ENUMRESTYPEPROC;
lParam: Longint): BOOL; stdcall;
function EnumSystemCodePages(lpCodePageEnumProc: TFNCodepageEnumProc; dwFlags: DWORD): BOOL; stdcall;
function EnumSystemLocales(lpLocaleEnumProc: TFNLocaleEnumProc; dwFlags: DWORD): BOOL; stdcall;
function EnumTimeFormats(lpTimeFmtEnumProc: TFNTimeFmtEnumProc;
Locale: LCID; dwFlags: DWORD): BOOL; stdcall;
function ExpandEnvironmentStrings(lpSrc: PKOLChar; lpDst: PKOLChar; nSize: DWORD): DWORD; stdcall;
procedure FatalAppExit(uAction: UINT; lpMessageText: PKOLChar); stdcall;
function FillConsoleOutputCharacter(hConsoleOutput: THandle; cCharacter: KOLChar;
nLength: DWORD; dwWriteCoord: TCoord; var lpNumberOfCharsWritten: DWORD): BOOL; stdcall;
function FindAtom(lpString: PKOLChar): ATOM; stdcall;
function FindFirstChangeNotification(lpPathName: PKOLChar;
bWatchSubtree: BOOL; dwNotifyFilter: DWORD): THandle; stdcall;
function FindFirstFile(lpFileName: PKOLChar; var lpFindFileData: TWIN32FindData): THandle; stdcall;
{$IFDEF _D3orHigher}
function FindFirstFileEx(lpFileName: PKOLChar; fInfoLevelId: TFindexInfoLevels;
lpFindFileData: Pointer; fSearchOp: TFindexSearchOps; lpSearchFilter: Pointer;
dwAdditionalFlags: DWORD): BOOL; stdcall;
{$ENDIF _D3orHigher}
function FindNextFile(hFindFile: THandle; var lpFindFileData: TWIN32FindData): BOOL; stdcall;
function FindResource(hModule: HMODULE; lpName, lpType: PKOLChar): HRSRC; stdcall;
function FindResourceEx(hModule: HMODULE; lpType, lpName: PKOLChar; wLanguage: Word): HRSRC; stdcall;
function FoldString(dwMapFlags: DWORD; lpSrcStr: PKOLChar; cchSrc: Integer;
lpDestStr: PKOLChar; cchDest: Integer): Integer; stdcall;
function FormatMessage(dwFlags: DWORD; lpSource: Pointer; dwMessageId: DWORD; dwLanguageId: DWORD;
lpBuffer: PKOLChar; nSize: DWORD; Arguments: Pointer): DWORD; stdcall;
function FreeEnvironmentStrings(EnvBlock: PKOLChar): BOOL; stdcall;
function GetAtomName(nAtom: ATOM; lpBuffer: PKOLChar; nSize: Integer): UINT; stdcall;
function GetBinaryType(lpApplicationName: PKOLChar; var lpBinaryType: DWORD): BOOL; stdcall;
function GetCommandLine: PKOLChar; stdcall;
function GetCompressedFileSize(lpFileName: PKOLChar; lpFileSizeHigh: PDWORD): DWORD; stdcall;
function GetComputerName(lpBuffer: PKOLChar; var nSize: DWORD): BOOL; stdcall;
function GetConsoleTitle(lpConsoleTitle: PKOLChar; nSize: DWORD): DWORD; stdcall;
function GetCurrencyFormat(Locale: LCID; dwFlags: DWORD; lpValue: PKOLChar;
lpFormat: PCurrencyFmt; lpCurrencyStr: PKOLChar; cchCurrency: Integer): Integer; stdcall;
function GetCurrentDirectory(nBufferLength: DWORD; lpBuffer: PKOLChar): DWORD; stdcall;
function GetDateFormat(Locale: LCID; dwFlags: DWORD; lpDate: PSystemTime;
lpFormat: PKOLChar; lpDateStr: PKOLChar; cchDate: Integer): Integer; stdcall;
function GetDefaultCommConfig(lpszName: PKOLChar;
var lpCC: TCommConfig; var lpdwSize: DWORD): BOOL; stdcall;
function GetDiskFreeSpace(lpRootPathName: PKOLChar;
var lpSectorsPerCluster, lpBytesPerSector, lpNumberOfFreeClusters, lpTotalNumberOfClusters: DWORD): BOOL; stdcall;
function GetDiskFreeSpaceEx(lpDirectoryName: PKOLChar;
var lpFreeBytesAvailableToCaller, lpTotalNumberOfBytes; lpTotalNumberOfFreeBytes: PLargeInteger): BOOL; stdcall;
function GetDriveType(lpRootPathName: PKOLChar): UINT; stdcall;
function GetEnvironmentStrings: PKOLChar; stdcall;
function GetEnvironmentVariable(lpName: PKOLChar; lpBuffer: PKOLChar; nSize: DWORD): DWORD; stdcall; //overload;
function GetFileAttributes(lpFileName: PKOLChar): DWORD; stdcall;
{$IFDEF _D3orHigher}
function GetFileAttributesEx(lpFileName: PKOLChar;
fInfoLevelId: TGetFileExInfoLevels; lpFileInformation: Pointer): BOOL; stdcall;
{$ENDIF _D3orHigher}
function GetFullPathName(lpFileName: PKOLChar; nBufferLength: DWORD;
lpBuffer: PKOLChar; var lpFilePart: PKOLChar): DWORD; stdcall;
function GetLocaleInfo(Locale: LCID; LCType: LCTYPE; lpLCData: PKOLChar; cchData: Integer): Integer; stdcall;
function GetLogicalDriveStrings(nBufferLength: DWORD; lpBuffer: PKOLChar): DWORD; stdcall;
function GetModuleFileName(hModule: HINST; lpFilename: PKOLChar; nSize: DWORD): DWORD; stdcall;
function GetModuleHandle(lpModuleName: PKOLChar): HMODULE; stdcall;
function GetNamedPipeHandleState(hNamedPipe: THandle;
lpState, lpCurInstances, lpMaxCollectionCount, lpCollectDataTimeout: PDWORD;
lpUserName: PKOLChar; nMaxUserNameSize: DWORD): BOOL; stdcall;
function GetNumberFormat(Locale: LCID; dwFlags: DWORD; lpValue: PKOLChar;
lpFormat: PNumberFmt; lpNumberStr: PKOLChar; cchNumber: Integer): Integer; stdcall;
function GetPrivateProfileInt(lpAppName, lpKeyName: PKOLChar; nDefault: Integer; lpFileName: PKOLChar): UINT; stdcall;
function GetPrivateProfileSection(lpAppName: PKOLChar; lpReturnedString: PKOLChar; nSize: DWORD; lpFileName: PKOLChar): DWORD; stdcall;
function GetPrivateProfileSectionNames(lpszReturnBuffer: PKOLChar; nSize: DWORD; lpFileName: PKOLChar): DWORD; stdcall;
function GetPrivateProfileString(lpAppName, lpKeyName, lpDefault: PKOLChar;
lpReturnedString: PKOLChar; nSize: DWORD; lpFileName: PKOLChar): DWORD; stdcall;
function GetProfileInt(lpAppName, lpKeyName: PKOLChar; nDefault: Integer): UINT; stdcall;
function GetProfileSection(lpAppName: PKOLChar; lpReturnedString: PKOLChar; nSize: DWORD): DWORD; stdcall;
function GetProfileString(lpAppName, lpKeyName, lpDefault: PKOLChar;
lpReturnedString: PKOLChar; nSize: DWORD): DWORD; stdcall;
function GetShortPathName(lpszLongPath: PKOLChar; lpszShortPath: PKOLChar;
cchBuffer: DWORD): DWORD; stdcall;
procedure GetStartupInfo(var lpStartupInfo: TStartupInfo); stdcall;
function GetStringTypeEx(Locale: LCID; dwInfoType: DWORD;
lpSrcStr: PKOLChar; cchSrc: Integer; var lpCharType): BOOL; stdcall;
function GetSystemDirectory(lpBuffer: PKOLChar; uSize: UINT): UINT; stdcall;
function GetTempFileName(lpPathName, lpPrefixString: PKOLChar;
uUnique: UINT; lpTempFileName: PKOLChar): UINT; stdcall;
function GetTempPath(nBufferLength: DWORD; lpBuffer: PKOLChar): DWORD; stdcall;
function GetTimeFormat(Locale: LCID; dwFlags: DWORD; lpTime: PSystemTime;
lpFormat: PKOLChar; lpTimeStr: PKOLChar; cchTime: Integer): Integer; stdcall;
function GetVersionEx(var lpVersionInformation: TOSVersionInfo): BOOL; stdcall;
function GetVolumeInformation(lpRootPathName: PKOLChar;
lpVolumeNameBuffer: PKOLChar; nVolumeNameSize: DWORD; lpVolumeSerialNumber: PDWORD;
var lpMaximumComponentLength, lpFileSystemFlags: DWORD;
lpFileSystemNameBuffer: PKOLChar; nFileSystemNameSize: DWORD): BOOL; stdcall;
function GetWindowsDirectory(lpBuffer: PKOLChar; uSize: UINT): UINT; stdcall;
function GlobalAddAtom(lpString: PKOLChar): ATOM; stdcall;
function GlobalFindAtom(lpString: PKOLChar): ATOM; stdcall;
function GlobalGetAtomName(nAtom: ATOM; lpBuffer: PKOLChar; nSize: Integer): UINT; stdcall;
function IsBadStringPtr(lpsz: PKOLChar; ucchMax: UINT): BOOL; stdcall;
function LCMapString(Locale: LCID; dwMapFlags: DWORD; lpSrcStr: PKOLChar;
cchSrc: Integer; lpDestStr: PKOLChar; cchDest: Integer): Integer; stdcall;
function LoadLibrary(lpLibFileName: PKOLChar): HMODULE; stdcall;
function LoadLibraryEx(lpLibFileName: PKOLChar; hFile: THandle; dwFlags: DWORD): HMODULE; stdcall;
function MoveFile(lpExistingFileName, lpNewFileName: PKOLChar): BOOL; stdcall;
function MoveFileEx(lpExistingFileName, lpNewFileName: PKOLChar; dwFlags: DWORD): BOOL; stdcall;
{$IFDEF _D3orHigher}
function MoveFileWithProgress(lpExistingFileName, lpNewFileName: PKOLChar; lpProgressRoutine: TFNProgressRoutine;
lpData: Pointer; dwFlags: DWORD): BOOL; stdcall;
{$ENDIF _D3orHigher}
function OpenEvent(dwDesiredAccess: DWORD; bInheritHandle: BOOL; lpName: PKOLChar): THandle; stdcall;
function OpenFileMapping(dwDesiredAccess: DWORD; bInheritHandle: BOOL; lpName: PKOLChar): THandle; stdcall;
function OpenMutex(dwDesiredAccess: DWORD; bInheritHandle: BOOL; lpName: PKOLChar): THandle; stdcall;
function OpenSemaphore(dwDesiredAccess: DWORD; bInheritHandle: BOOL; lpName: PKOLChar): THandle; stdcall;
function OpenWaitableTimer(dwDesiredAccess: DWORD; bInheritHandle: BOOL;
lpTimerName: PKOLChar): THandle; stdcall;
procedure OutputDebugString(lpOutputString: PKOLChar); stdcall;
function PeekConsoleInput(hConsoleInput: THandle; var lpBuffer: TInputRecord;
nLength: DWORD; var lpNumberOfEventsRead: DWORD): BOOL; stdcall;
function QueryDosDevice(lpDeviceName: PKOLChar; lpTargetPath: PKOLChar; ucchMax: DWORD): DWORD; stdcall;
function QueryRecoveryAgents(p1: PKOLChar; var p2: Pointer; var p3: TRecoveryAgentInformation): DWORD; stdcall;
function ReadConsole(hConsoleInput: THandle; lpBuffer: Pointer;
nNumberOfCharsToRead: DWORD; var lpNumberOfCharsRead: DWORD; lpReserved: Pointer): BOOL; stdcall;
function ReadConsoleInput(hConsoleInput: THandle; var lpBuffer: TInputRecord;
nLength: DWORD; var lpNumberOfEventsRead: DWORD): BOOL; stdcall;
function ReadConsoleOutput(hConsoleOutput: THandle; lpBuffer: Pointer;
dwBufferSize, dwBufferCoord: TCoord; var lpReadRegion: TSmallRect): BOOL; stdcall;
function ReadConsoleOutputCharacter(hConsoleOutput: THandle; lpCharacter: PKOLChar;
nLength: DWORD; dwReadCoord: TCoord; var lpNumberOfCharsRead: DWORD): BOOL; stdcall;
function RemoveDirectory(lpPathName: PKOLChar): BOOL; stdcall;
function ScrollConsoleScreenBuffer(hConsoleOutput: THandle;
const lpScrollRectangle: TSmallRect; lpClipRectangle: PSmallRect;
dwDestinationOrigin: TCoord; var lpFill: TCharInfo): BOOL; stdcall;
function SearchPath(lpPath, lpFileName, lpExtension: PKOLChar;
nBufferLength: DWORD; lpBuffer: PKOLChar; var lpFilePart: PKOLChar): DWORD; stdcall;
function SetComputerName(lpComputerName: PKOLChar): BOOL; stdcall;
function SetConsoleTitle(lpConsoleTitle: PKOLChar): BOOL; stdcall;
function SetCurrentDirectory(lpPathName: PKOLChar): BOOL; stdcall;
function SetDefaultCommConfig(lpszName: PKOLChar; lpCC: PCommConfig; dwSize: DWORD): BOOL; stdcall;
function SetEnvironmentVariable(lpName, lpValue: PKOLChar): BOOL; stdcall;
function SetFileAttributes(lpFileName: PKOLChar; dwFileAttributes: DWORD): BOOL; stdcall;
function SetLocaleInfo(Locale: LCID; LCType: LCTYPE; lpLCData: PKOLChar): BOOL; stdcall;
function SetVolumeLabel(lpRootPathName: PKOLChar; lpVolumeName: PKOLChar): BOOL; stdcall;
function UpdateResource(hUpdate: THandle; lpType, lpName: PKOLChar;
wLanguage: Word; lpData: Pointer; cbData: DWORD): BOOL; stdcall;
function VerLanguageName(wLang: DWORD; szLang: PKOLChar; nSize: DWORD): DWORD; stdcall;
function WaitNamedPipe(lpNamedPipeName: PKOLChar; nTimeOut: DWORD): BOOL; stdcall;
function WriteConsole(hConsoleOutput: THandle; const lpBuffer: Pointer;
nNumberOfCharsToWrite: DWORD; var lpNumberOfCharsWritten: DWORD; lpReserved: Pointer): BOOL; stdcall;
function WriteConsoleInput(hConsoleInput: THandle; const lpBuffer: TInputRecord;
nLength: DWORD; var lpNumberOfEventsWritten: DWORD): BOOL; stdcall;
function WriteConsoleOutput(hConsoleOutput: THandle; lpBuffer: Pointer;
dwBufferSize, dwBufferCoord: TCoord; var lpWriteRegion: TSmallRect): BOOL; stdcall;
function WriteConsoleOutputCharacter(hConsoleOutput: THandle;lpCharacter: PKOLChar;
nLength: DWORD; dwWriteCoord: TCoord; var lpNumberOfCharsWritten: DWORD): BOOL; stdcall;
function WritePrivateProfileSection(lpAppName, lpString, lpFileName: PKOLChar): BOOL; stdcall;
function WritePrivateProfileString(lpAppName, lpKeyName, lpString, lpFileName: PKOLChar): BOOL; stdcall;
function WriteProfileSection(lpAppName, lpString: PKOLChar): BOOL; stdcall;
function WriteProfileString(lpAppName, lpKeyName, lpString: PKOLChar): BOOL; stdcall;
function lstrcat(lpString1, lpString2: PKOLChar): PKOLChar; stdcall;
function lstrcmp(lpString1, lpString2: PKOLChar): Integer; stdcall;
function lstrcmpi(lpString1, lpString2: PKOLChar): Integer; stdcall;
function lstrcpy(lpString1, lpString2: PKOLChar): PKOLChar; stdcall;
function lstrcpyn(lpString1, lpString2: PKOLChar; iMaxLength: Integer): PKOLChar; stdcall;
function lstrlen(lpString: PKOLChar): Integer; stdcall;
function MultinetGetConnectionPerformance(lpNetResource: PNetResource;
lpNetConnectInfoStruc: PNetConnectInfoStruct): DWORD; stdcall;
function WNetAddConnection2(var lpNetResource: TNetResource;
lpPassword, lpUserName: PKOLChar; dwFlags: DWORD): DWORD; stdcall;
function WNetAddConnection3(hwndOwner: HWND; var lpNetResource: TNetResource;
lpPassword, lpUserName: PKOLChar; dwFlags: DWORD): DWORD; stdcall;
function WNetAddConnection(lpRemoteName, lpPassword, lpLocalName: PKOLChar): DWORD; stdcall;
function WNetCancelConnection2(lpName: PKOLChar; dwFlags: DWORD; fForce: BOOL): DWORD; stdcall;
function WNetCancelConnection(lpName: PKOLChar; fForce: BOOL): DWORD; stdcall;
function WNetConnectionDialog1(var lpConnDlgStruct: TConnectDlgStruct): DWORD; stdcall;
function WNetDisconnectDialog1(var lpConnDlgStruct: TDiscDlgStruct): DWORD; stdcall;
function WNetEnumResource(hEnum: THandle; var lpcCount: DWORD;
lpBuffer: Pointer; var lpBufferSize: DWORD): DWORD; stdcall;
function WNetGetConnection(lpLocalName: PKOLChar;
lpRemoteName: PKOLChar; var lpnLength: DWORD): DWORD; stdcall;
function WNetGetLastError(var lpError: DWORD; lpErrorBuf: PKOLChar;
nErrorBufSize: DWORD; lpNameBuf: PKOLChar; nNameBufSize: DWORD): DWORD; stdcall;
function WNetGetNetworkInformation(lpProvider: PKOLChar;
var lpNetInfoStruct: TNetInfoStruct): DWORD; stdcall;
function WNetGetProviderName(dwNetType: DWORD; lpProviderName: PKOLChar;
var lpBufferSize: DWORD): DWORD; stdcall;
function WNetGetResourceParent(lpNetResource: PNetResource;
lpBuffer: Pointer; var cbBuffer: DWORD): DWORD; stdcall;
function WNetGetUniversalName(lpLocalPath: PKOLChar; dwInfoLevel: DWORD;
lpBuffer: Pointer; var lpBufferSize: DWORD): DWORD; stdcall;
function WNetGetUser(lpName: PKOLChar; lpUserName: PKOLChar; var lpnLength: DWORD): DWORD; stdcall;
function WNetOpenEnum(dwScope, dwType, dwUsage: DWORD;
lpNetResource: PNetResource; var lphEnum: THandle): DWORD; stdcall;
function WNetSetConnection(lpName: PKOLChar; dwProperties: DWORD; pvValues: Pointer): DWORD; stdcall;
function WNetUseConnection(hwndOwner: HWND;
var lpNetResource: TNetResource; lpUserID: PKOLChar;
lpPassword: PKOLChar; dwFlags: DWORD; lpAccessName: PKOLChar;
var lpBufferSize: DWORD; var lpResult: DWORD): DWORD; stdcall;
function GetFileVersionInfo(lptstrFilename: PKOLChar; dwHandle, dwLen: DWORD;
lpData: Pointer): BOOL; stdcall;
function GetFileVersionInfoSize(lptstrFilename: PKOLChar; var lpdwHandle: DWORD): DWORD; stdcall;
function VerFindFile(uFlags: DWORD; szFileName, szWinDir, szAppDir, szCurDir: PKOLChar;
var lpuCurDirLen: UINT; szDestDir: PKOLChar; var lpuDestDirLen: UINT): DWORD; stdcall;
function VerInstallFile(uFlags: DWORD;
szSrcFileName, szDestFileName, szSrcDir, szDestDir, szCurDir, szTmpFile: PKOLChar;
var lpuTmpFileLen: UINT): DWORD; stdcall;
function VerQueryValue(pBlock: Pointer; lpSubBlock: PKOLChar;
var lplpBuffer: Pointer; var puLen: UINT): BOOL; stdcall;
function GetPrivateProfileStruct(lpszSection, lpszKey: PKOLChar;
lpStruct: Pointer; uSizeStruct: UINT; szFile: PKOLChar): BOOL; stdcall;
function WritePrivateProfileStruct(lpszSection, lpszKey: PKOLChar;
lpStruct: Pointer; uSizeStruct: UINT; szFile: PKOLChar): BOOL; stdcall;
function AddFontResource(FileName: PKOLChar): Integer; stdcall;
function AddFontResourceEx(p1: PKOLChar; p2: DWORD; p3: PDesignVector): Integer; stdcall;
function CopyEnhMetaFile(p1: HENHMETAFILE; p2: PKOLChar): HENHMETAFILE; stdcall;
function CopyMetaFile(p1: HMETAFILE; p2: PKOLChar): HMETAFILE; stdcall;
function CreateColorSpace(var ColorSpace: TLogColorSpace): HCOLORSPACE; stdcall;
function CreateDC(lpszDriver, lpszDevice, lpszOutput: PKOLChar;
lpdvmInit: PDeviceMode): HDC; stdcall;
function CreateEnhMetaFile(DC: HDC; FileName: PKOLChar; Rect: PRect; Desc: PKOLChar): HDC; stdcall;
function CreateFont(nHeight, nWidth, nEscapement, nOrientaion, fnWeight: Integer;
fdwItalic, fdwUnderline, fdwStrikeOut, fdwCharSet, fdwOutputPrecision,
fdwClipPrecision, fdwQuality, fdwPitchAndFamily: DWORD; lpszFace: PKOLChar): HFONT; stdcall;
function CreateFontIndirect(const p1: TLogFont): HFONT; stdcall;
function CreateFontIndirectEx(const p1: PEnumLogFontExDV): HFONT; stdcall;
function CreateIC(lpszDriver, lpszDevice, lpszOutput: PKOLChar; lpdvmInit: PDeviceMode): HDC; stdcall;
function CreateMetaFile(p1: PKOLChar): HDC; stdcall;
function CreateScalableFontResource(p1: DWORD; p2, p3, p4: PKOLChar): BOOL; stdcall;
function DeviceCapabilities(pDriverName, pDeviceName, pPort: PKOLChar;
iIndex: Integer; pOutput: PKOLChar; DevMode: PDeviceMode): Integer; stdcall;
function EnumFontFamilies(DC: HDC; p2: PKOLChar; p3: TFNFontEnumProc; p4: LPARAM): BOOL; stdcall;
function EnumFontFamiliesEx(DC: HDC; var p2: TLogFont;
p3: TFNFontEnumProc; p4: LPARAM; p5: DWORD): BOOL; stdcall;
function EnumFonts(DC: HDC; lpszFace: PKOLChar; fntenmprc: TFNFontEnumProc;
lpszData: PKOLChar): Integer; stdcall;
function EnumICMProfiles(DC: HDC; ICMProc: TFNICMEnumProc; p3: LPARAM): Integer; stdcall;
function ExtTextOut(DC: HDC; X, Y: Integer; Options: Longint;
Rect: PRect; Str: PKOLChar; Count: Longint; Dx: PInteger): BOOL; stdcall;
function GetCharABCWidths(DC: HDC; FirstChar, LastChar: UINT; const ABCStructs): BOOL; stdcall;
function GetCharABCWidthsFloat(DC: HDC; FirstChar, LastChar: UINT; const ABCFloatSturcts): BOOL; stdcall;
function GetCharWidth32(DC: HDC; FirstChar, LastChar: UINT; const Widths): BOOL; stdcall;
function GetCharWidth(DC: HDC; FirstChar, LastChar: UINT; const Widths): BOOL; stdcall;
function GetCharWidthFloat(DC: HDC; FirstChar, LastChar: UINT; const Widths): BOOL; stdcall;
function GetCharacterPlacement(DC: HDC; p2: PKOLChar; p3, p4: BOOL;
var p5: TGCPResults; p6: DWORD): DWORD; stdcall;
function GetEnhMetaFile(p1: PKOLChar): HENHMETAFILE; stdcall;
function GetEnhMetaFileDescription(p1: HENHMETAFILE; p2: UINT; p3: PKOLChar): UINT; stdcall;
function GetGlyphIndices(DC: HDC; p2: PKOLChar; p3: Integer; p4: PWORD; p5: DWORD): DWORD; stdcall;
function GetGlyphOutline(DC: HDC; uChar, uFormat: UINT;
const lpgm: TGlyphMetrics; cbBuffer: DWORD; lpvBuffer: Pointer; const lpmat2: TMat2): DWORD; stdcall;
function GetICMProfile(DC: HDC; var Size: DWORD; Name: PKOLChar): BOOL; stdcall;
function GetLogColorSpace(p1: HCOLORSPACE; var ColorSpace: TLogColorSpace; Size: DWORD): BOOL; stdcall;
function GetMetaFile(p1: PKOLChar): HMETAFILE; stdcall;
function GetObject(p1: HGDIOBJ; p2: Integer; p3: Pointer): Integer; stdcall;
function GetOutlineTextMetrics(DC: HDC; p2: UINT; OTMetricStructs: Pointer): UINT; stdcall;
function GetTextExtentExPoint(DC: HDC; p2: PKOLChar;
p3, p4: Integer; p5, p6: PInteger; var p7: TSize): BOOL; stdcall;
function GetTextExtentPoint32(DC: HDC; Str: PKOLChar; Count: Integer;
var Size: TSize): BOOL; stdcall;
function GetTextExtentPoint(DC: HDC; Str: PKOLChar; Count: Integer;
var Size: TSize): BOOL; stdcall;
function GetTextFace(DC: HDC; Count: Integer; Buffer: PKOLChar): Integer; stdcall;
function GetTextMetrics(DC: HDC; var TM: TTextMetric): BOOL; stdcall;
function PolyTextOut(DC: HDC; const PolyTextArray; Strings: Integer): BOOL; stdcall;
function RemoveFontResource(FileName: PKOLChar): BOOL; stdcall;
function RemoveFontResourceEx(p1: PKOLChar; p2: DWORD; p3: PDesignVector): BOOL; stdcall;
function ResetDC(DC: HDC; const InitData: TDeviceMode): HDC; stdcall;
function SetICMProfile(DC: HDC; Name: PKOLChar): BOOL; stdcall;
function StartDoc(DC: HDC; const p2: TDocInfo): Integer; stdcall;
function TextOut(DC: HDC; X, Y: Integer; Str: PKOLChar; Count: Integer): BOOL; stdcall;
function UpdateICMRegKey(p1: DWORD; p2, p3: PKOLChar; p4: UINT): BOOL; stdcall;
function wglUseFontBitmaps(DC: HDC; p2, p3, p4: DWORD): BOOL; stdcall;
function wglUseFontOutlines(p1: HDC; p2, p3, p4: DWORD;
p5, p6: Single; p7: Integer; p8: PGlyphMetricsFloat): BOOL; stdcall;
function AnsiToOem(const lpszSrc: LPCSTR; lpszDst: LPSTR): BOOL; stdcall;
function AnsiToOemBuff(lpszSrc: LPCSTR; lpszDst: LPSTR; cchDstLength: DWORD): BOOL; stdcall;
function AnsiUpper(lpsz: LPSTR): LPSTR; stdcall;
function AnsiUpperBuff(lpsz: LPSTR; cchLength: DWORD): DWORD; stdcall;
function AnsiLower(lpsz: LPSTR): LPSTR; stdcall;
function AnsiLowerBuff(lpsz: LPSTR; cchLength: DWORD): DWORD; stdcall;
function AnsiNext(const lpsz: LPCSTR): LPSTR; stdcall;
function AnsiPrev(const lpszStart: LPCSTR; const lpszCurrent: LPCSTR): LPSTR; stdcall;
function AppendMenu(hMenu: HMENU; uFlags, uIDNewItem: UINT;
lpNewItem: PKOLChar): BOOL; stdcall;
//function BroadcastSystemMessage(Flags: DWORD; Recipients: PDWORD;
// uiMessage: UINT; wParam: WPARAM; lParam: LPARAM): Longint; stdcall;
//function BroadcastSystemMessageW(Flags: DWORD; Recipients: PDWORD;
// uiMessage: UINT; wParam: WPARAM; lParam: LPARAM): Longint; stdcall;
function CallMsgFilter(var lpMsg: TMsg; nCode: Integer): BOOL; stdcall;
function CallWindowProc(lpPrevWndFunc: TFNWndProc; hWnd: HWND; Msg: UINT; wParam: WPARAM; lParam: LPARAM): LRESULT; stdcall;
function ChangeDisplaySettings(var lpDevMode: TDeviceMode; dwFlags: DWORD): Longint; stdcall;
function ChangeDisplaySettingsEx(lpszDeviceName: PKOLChar; var lpDevMode: TDeviceMode;
wnd: HWND; dwFlags: DWORD; lParam: Pointer): Longint; stdcall;
function ChangeMenu(hMenu: HMENU; cmd: UINT; lpszNewItem: PKOLChar;
cmdInsert: UINT; flags: UINT): BOOL; stdcall;
function CharLower(lpsz: PKOLChar): PKOLChar; stdcall;
function CharLowerBuff(lpsz: PKOLChar; cchLength: DWORD): DWORD; stdcall;
function CharNext(lpsz: PKOLChar): PKOLChar; stdcall;
function CharNextEx(CodePage: Word; lpCurrentChar: LPCSTR; dwFlags: DWORD): LPSTR; stdcall;
function CharPrev(lpszStart: PKOLChar; lpszCurrent: PKOLChar): PKOLChar; stdcall;
function CharPrevEx(CodePage: Word; lpStart, lpCurrentChar: LPCSTR; dwFlags: DWORD): LPSTR; stdcall;
function CharToOem(lpszSrc: PKOLChar; lpszDst: PKOLChar): BOOL; stdcall;
function CharToOemBuff(lpszSrc: PKOLChar; lpszDst: PKOLChar; cchDstLength: DWORD): BOOL; stdcall;
function CharUpper(lpsz: PKOLChar): PKOLChar; stdcall;
function CharUpperBuff(lpsz: PKOLChar; cchLength: DWORD): DWORD; stdcall;
function CopyAcceleratorTable(hAccelSrc: HACCEL; var lpAccelDst; cAccelEntries: Integer): Integer; stdcall;
function CreateAcceleratorTable(var Accel; Count: Integer): HACCEL; stdcall;
function CreateDesktop(lpszDesktop, lpszDevice: PKOLChar;
pDevmode: PDeviceMode; dwFlags: DWORD; dwDesiredAccess:
DWORD; lpsa: PSecurityAttributes): HDESK; stdcall;
function CreateDialogIndirectParam(hInstance: HINST; const lpTemplate: TDlgTemplate;
hWndParent: HWND; lpDialogFunc: TFNDlgProc; dwInitParam: LPARAM): HWND; stdcall;
function CreateDialogParam(hInstance: HINST; lpTemplateName: PKOLChar;
hWndParent: HWND; lpDialogFunc: TFNDlgProc; dwInitParam: LPARAM): HWND; stdcall;
function CreateMDIWindow(lpClassName, lpWindowName: PKOLChar;
dwStyle: DWORD; X, Y, nWidth, nHeight: Integer;
hWndParent: HWND; hInstance: HINST; lParam: LPARAM): HWND; stdcall;
function CreateWindowEx(dwExStyle: DWORD; lpClassName: PKOLChar;
lpWindowName: PKOLChar; dwStyle: DWORD; X, Y, nWidth, nHeight: Integer;
hWndParent: HWND; hMenu: HMENU; hInstance: HINST; lpParam: Pointer): HWND; stdcall;
function CreateWindowStation(lpwinsta: PKOLChar; dwReserved, dwDesiredAccess: DWORD;
lpsa: PSecurityAttributes): HWINSTA; stdcall;
function DefDlgProc(hDlg: HWND; Msg: UINT; wParam: WPARAM; lParam: LPARAM): LRESULT; stdcall;
function DefFrameProc(hWnd, hWndMDIClient: HWND; uMsg: UINT; wParam: WPARAM; lParam: LPARAM): LRESULT; stdcall;
function DefMDIChildProc(hWnd: HWND; uMsg: UINT; wParam: WPARAM; lParam: LPARAM): LRESULT; stdcall;
function DefWindowProc(hWnd: HWND; Msg: UINT; wParam: WPARAM; lParam: LPARAM): LRESULT; stdcall;
function DialogBoxIndirectParam(hInstance: HINST; const lpDialogTemplate: TDlgTemplate;
hWndParent: HWND; lpDialogFunc: TFNDlgProc; dwInitParam: LPARAM): Integer; stdcall;
function DialogBoxParam(hInstance: HINST; lpTemplateName: PKOLChar;
hWndParent: HWND; lpDialogFunc: TFNDlgProc; dwInitParam: LPARAM): Integer; stdcall;
function DispatchMessage(const lpMsg: TMsg): Longint; stdcall;
function DlgDirList(hDlg: HWND; lpPathSpec: PKOLChar;
nIDListBox, nIDStaticPath: Integer; uFileType: UINT): Integer; stdcall;
function DlgDirListComboBox(hDlg: HWND; lpPathSpec: PKOLChar;
nIDComboBox, nIDStaticPath: Integer; uFiletype: UINT): Integer; stdcall;
function DlgDirSelectComboBoxEx(hDlg: HWND; lpString: PKOLChar;
nCount, nIDComboBox: Integer): BOOL; stdcall;
function DlgDirSelectEx(hDlg: HWND; lpString: PKOLChar; nCount, nIDListBox: Integer): BOOL; stdcall;
function DrawState(DC: HDC; Brush: HBRUSH; CBFunc: TFNDrawStateProc;
lData: LPARAM; wData: WPARAM; x, y, cx, cy: Integer; Flags: UINT): BOOL; stdcall;
function DrawText(hDC: HDC; lpString: PKOLChar; nCount: Integer;
var lpRect: TRect; uFormat: UINT): Integer; stdcall;
function DrawTextEx(DC: HDC; lpchText: PKOLChar; cchText: Integer; var p4: TRect;
dwDTFormat: UINT; DTParams: PDrawTextParams): Integer; stdcall;
function EnumDesktops(hwinsta: HWINSTA; lpEnumFunc: TFNDeskTopEnumProc; lParam: LPARAM): BOOL; stdcall;
function EnumDisplaySettings(lpszDeviceName: PKOLChar; iModeNum: DWORD;
var lpDevMode: TDeviceMode): BOOL; stdcall;
function EnumDisplayDevices(Unused: Pointer; iDevNum: DWORD;
var lpDisplayDevice: TDisplayDevice; dwFlags: DWORD): BOOL; stdcall;
function EnumProps(hWnd: HWND; lpEnumFunc: TFNPropEnumProc): Integer; stdcall;
function EnumPropsEx(hWnd: HWND; lpEnumFunc: TFNPropEnumProcEx; lParam: LPARAM): Integer; stdcall;
function EnumWindowStations(lpEnumFunc: TFNWinStaEnumProc; lParam: LPARAM): BOOL; stdcall;
function FindWindow(lpClassName, lpWindowName: PKOLChar): HWND; stdcall;
function FindWindowEx(Parent, Child: HWND; ClassName, WindowName: PKOLChar): HWND; stdcall;
function GetAltTabInfo(hwnd: HWND; iItem: Integer; var pati: TAltTabInfo;
pszItemText: PKOLChar; cchItemText: UINT): BOOL; stdcall;
function GetClassInfo(hInstance: HINST; lpClassName: PKOLChar;
var lpWndClass: TWndClass): BOOL; stdcall;
function GetClassInfoEx(Instance: HINST; Classname: PKOLChar; var WndClass: TWndClassEx): BOOL; stdcall;
function GetClassLong(hWnd: HWND; nIndex: Integer): DWORD; stdcall;
function GetClassName(hWnd: HWND; lpClassName: PKOLChar; nMaxCount: Integer): Integer; stdcall;
function GetClipboardFormatName(format: UINT; lpszFormatName: PKOLChar;
cchMaxCount: Integer): Integer; stdcall;
function GetDlgItemText(hDlg: HWND; nIDDlgItem: Integer;
lpString: PKOLChar; nMaxCount: Integer): UINT; stdcall;
function GetKeyNameText(lParam: Longint; lpString: PKOLChar; nSize: Integer): Integer; stdcall;
function GetKeyboardLayoutName(pwszKLID: PKOLChar): BOOL; stdcall;
function GetMenuItemInfo(p1: HMENU; p2: UINT; p3: BOOL; var p4: TMenuItemInfo): BOOL; stdcall;
function GetMenuString(hMenu: HMENU; uIDItem: UINT; lpString: PKOLChar;
nMaxCount: Integer; uFlag: UINT): Integer; stdcall;
function GetMessage(var lpMsg: TMsg; hWnd: HWND;
wMsgFilterMin, wMsgFilterMax: UINT): BOOL; stdcall;
function GetProp(hWnd: HWND; lpString: PKOLChar): THandle; stdcall;
function GetTabbedTextExtent(hDC: HDC; lpString: PKOLChar;
nCount, nTabPositions: Integer; var lpnTabStopPositions): DWORD; stdcall;
function GetUserObjectInformation(hObj: THandle; nIndex: Integer; pvInfo: Pointer;
nLength: DWORD; var lpnLengthNeeded: DWORD): BOOL; stdcall;
function GetWindowLong(hWnd: HWND; nIndex: Integer): Longint; stdcall;
function GetWindowModuleFileName(hwnd: HWND; pszFileName: PKOLChar; cchFileNameMax: UINT): UINT; stdcall;
function GetWindowText(hWnd: HWND; lpString: PKOLChar; nMaxCount: Integer): Integer; stdcall;
function GetWindowTextLength(hWnd: HWND): Integer; stdcall;
function GrayString(hDC: HDC; hBrush: HBRUSH; lpOutputFunc: TFNGrayStringProc;
lpData: LPARAM; nCount, X, Y, nWidth, nHeight: Integer): BOOL; stdcall;
function InsertMenu(hMenu: HMENU; uPosition, uFlags, uIDNewItem: UINT;
lpNewItem: PKOLChar): BOOL; stdcall;
function InsertMenuItem(p1: HMENU; p2: UINT; p3: BOOL; const p4: TMenuItemInfo): BOOL; stdcall;
function IsCharAlpha(ch: KOLChar): BOOL; stdcall;
function IsCharAlphaNumeric(ch: KOLChar): BOOL; stdcall;
function IsCharLower(ch: KOLChar): BOOL; stdcall;
function IsCharUpper(ch: KOLChar): BOOL; stdcall;
function IsDialogMessage(hDlg: HWND; var lpMsg: TMsg): BOOL; stdcall;
function LoadAccelerators(hInstance: HINST; lpTableName: PKOLChar): HACCEL; stdcall;
function LoadBitmap(hInstance: HINST; lpBitmapName: PKOLChar): HBITMAP; stdcall;
function LoadCursor(hInstance: HINST; lpCursorName: PKOLChar): HCURSOR; stdcall;
function LoadCursorFromFile(lpFileName: PKOLChar): HCURSOR; stdcall;
function LoadIcon(hInstance: HINST; lpIconName: PKOLChar): HICON; stdcall;
function LoadImage(hInst: HINST; ImageName: PKOLChar; ImageType: UINT; X, Y: Integer; Flags: UINT): THandle; stdcall;
function LoadKeyboardLayout(pwszKLID: PKOLChar; Flags: UINT): HKL; stdcall;
function LoadMenu(hInstance: HINST; lpMenuName: PKOLChar): HMENU; stdcall;
function LoadMenuIndirect(lpMenuTemplate: Pointer): HMENU; stdcall;
function LoadString(hInstance: HINST; uID: UINT; lpBuffer: PKOLChar; nBufferMax: Integer): Integer; stdcall;
function MapVirtualKey(uCode, uMapType: UINT): UINT; stdcall;
function MapVirtualKeyEx(uCode, uMapType: UINT; dwhkl: HKL): UINT; stdcall;
function MessageBox(hWnd: HWND; lpText, lpCaption: PKOLChar; uType: UINT): Integer; stdcall;
function MessageBoxEx(hWnd: HWND; lpText, lpCaption: PKOLChar;
uType: UINT; wLanguageId: Word): Integer; stdcall;
function MessageBoxIndirect(const MsgBoxParams: TMsgBoxParams): BOOL; stdcall;
function ModifyMenu(hMnu: HMENU; uPosition, uFlags, uIDNewItem: UINT;
lpNewItem: PKOLChar): BOOL; stdcall;
function OemToAnsi(const lpszSrc: LPCSTR; lpszDst: LPSTR): BOOL; stdcall;
function OemToAnsiBuff(lpszSrc: LPCSTR; lpszDst: LPSTR; cchDstLength: DWORD): BOOL; stdcall;
function OemToChar(lpszSrc: PKOLChar; lpszDst: PKOLChar): BOOL; stdcall;
function OemToCharBuff(lpszSrc: PKOLChar; lpszDst: PKOLChar; cchDstLength: DWORD): BOOL; stdcall;
function OpenDesktop(lpszDesktop: PKOLChar; dwFlags: DWORD; fInherit: BOOL;
dwDesiredAccess: DWORD): HDESK; stdcall;
function OpenWindowStation(lpszWinSta: PKOLChar; fInherit: BOOL;
dwDesiredAccess: DWORD): HWINSTA; stdcall;
function PeekMessage(var lpMsg: TMsg; hWnd: HWND;
wMsgFilterMin, wMsgFilterMax, wRemoveMsg: UINT): BOOL; stdcall;
function PostMessage(hWnd: HWND; Msg: UINT; wParam: WPARAM; lParam: LPARAM): BOOL; stdcall;
function PostThreadMessage(idThread: DWORD; Msg: UINT; wParam: WPARAM; lParam: LPARAM): BOOL; stdcall;
function RealGetWindowClass(hwnd: HWND; pszType: PKOLChar; cchType: UINT): UINT; stdcall;
function RegisterClass(const lpWndClass: TWndClass): ATOM; stdcall;
function RegisterClassEx(const WndClass: TWndClassEx): ATOM; stdcall;
function RegisterClipboardFormat(lpszFormat: PKOLChar): UINT; stdcall;
function RegisterDeviceNotification(hRecipient: THandle; NotificationFilter: Pointer; Flags: DWORD): HDEVNOTIFY; stdcall;
function RegisterWindowMessage(lpString: PKOLChar): UINT; stdcall;
function RemoveProp(hWnd: HWND; lpString: PKOLChar): THandle; stdcall;
function SendDlgItemMessage(hDlg: HWND; nIDDlgItem: Integer;
Msg: UINT; wParam: WPARAM; lParam: LPARAM): Longint; stdcall;
function SendMessage(hWnd: HWND; Msg: UINT; wParam: WPARAM; lParam: LPARAM): LRESULT; stdcall;
function SendMessageCallback(hWnd: HWND; Msg: UINT; wParam: WPARAM;
lParam: LPARAM; lpResultCallBack: TFNSendAsyncProc; dwData: DWORD): BOOL; stdcall;
function SendMessageTimeout(hWnd: HWND; Msg: UINT; wParam: WPARAM;
lParam: LPARAM; fuFlags, uTimeout: UINT; var lpdwResult: DWORD): LRESULT; stdcall;
function SendNotifyMessage(hWnd: HWND; Msg: UINT; wParam: WPARAM;
lParam: LPARAM): BOOL; stdcall;
function SetClassLong(hWnd: HWND; nIndex: Integer; dwNewLong: Longint): DWORD; stdcall;
function SetDlgItemText(hDlg: HWND; nIDDlgItem: Integer; lpString: PKOLChar): BOOL; stdcall;
function SetMenuItemInfo(p1: HMENU; p2: UINT; p3: BOOL; const p4: TMenuItemInfo): BOOL; stdcall;
function SetProp(hWnd: HWND; lpString: PKOLChar; hData: THandle): BOOL; stdcall;
function SetUserObjectInformation(hObj: THandle; nIndex: Integer;
pvInfo: Pointer; nLength: DWORD): BOOL; stdcall;
function SetWindowLong(hWnd: HWND; nIndex: Integer; dwNewLong: Longint): Longint; stdcall;
function SetWindowText(hWnd: HWND; lpString: PKOLChar): BOOL; stdcall;
function SetWindowsHook(nFilterType: Integer; pfnFilterProc: TFNHookProc): HHOOK; stdcall;
function SetWindowsHookEx(idHook: Integer; lpfn: TFNHookProc; hmod: HINST; dwThreadId: DWORD): HHOOK; stdcall;
function SystemParametersInfo(uiAction, uiParam: UINT;
pvParam: Pointer; fWinIni: UINT): BOOL; stdcall;
function TabbedTextOut(hDC: HDC; X, Y: Integer; lpString: PKOLChar; nCount, nTabPositions: Integer;
var lpnTabStopPositions; nTabOrigin: Integer): Longint; stdcall;
function TranslateAccelerator(hWnd: HWND; hAccTable: HACCEL; var lpMsg: TMsg): Integer; stdcall;
function UnregisterClass(lpClassName: PKOLChar; hInstance: HINST): BOOL; stdcall;
function VkKeyScan(ch: KOLChar): SHORT; stdcall;
function VkKeyScanEx(ch: KOLChar; dwhkl: HKL): SHORT; stdcall;
function WinHelp(hWndMain: HWND; lpszHelp: PKOLChar; uCommand: UINT; dwData: DWORD): BOOL; stdcall;
function wsprintf(Output: PKOLChar; Format: PKOLChar): Integer; stdcall;
function wvsprintf(Output: PKOLChar; Format: PKOLChar; arglist: {$IFDEF UNICODE} PAnsiChar {$ELSE} va_list {$ENDIF}): Integer; stdcall;
function CreateMutex(lpMutexAttributes: PSecurityAttributes; bInitialOwner: BOOL; lpName: PAnsiChar): THandle;
const
IDC_ARROW = MakeIntResource(32512);
IDC_IBEAM = MakeIntResource(32513);
IDC_WAIT = MakeIntResource(32514);
IDC_CROSS = MakeIntResource(32515);
IDC_UPARROW = MakeIntResource(32516);
IDC_SIZE = MakeIntResource(32640);
IDC_ICON = MakeIntResource(32641);
IDC_SIZENWSE = MakeIntResource(32642);
IDC_SIZENESW = MakeIntResource(32643);
IDC_SIZEWE = MakeIntResource(32644);
IDC_SIZENS = MakeIntResource(32645);
IDC_SIZEALL = MakeIntResource(32646);
IDC_NO = MakeIntResource(32648);
IDC_HANDs = MakeIntResource(32649);
IDC_APPSTARTING = MakeIntResource(32650);
IDC_HELP = MakeIntResource(32651);
{$ENDIF interface_part} ////////////////////////////////////////////////////////
{$IFDEF implementation_part} ///////////////////////////////////////////////////
function AbortSystemShutdown; external advapi32 name 'AbortSystemShutdownA';
function AccessCheckAndAuditAlarm; external advapi32 name 'AccessCheckAndAuditAlarmA';
{$IFDEF _D4orHigher}
function AccessCheckByTypeAndAuditAlarm; external advapi32 name 'AccessCheckByTypeAndAuditAlarmA';
function AccessCheckByTypeResultListAndAuditAlarm; external advapi32 name 'AccessCheckByTypeResultListAndAuditAlarmA';
{$ENDIF _D4orHigher}
function BackupEventLog; external advapi32 name 'BackupEventLogA';
function ClearEventLog; external advapi32 name 'ClearEventLogA';
function CreateProcessAsUser; external advapi32 name 'CreateProcessAsUserA';
{$IFDEF _D3orHigher}
function GetCurrentHwProfile; external advapi32 name 'GetCurrentHwProfileA';
{$ENDIF _D3orHigher}
function GetFileSecurity; external advapi32 name 'GetFileSecurityA';
function GetUserName; external advapi32 name 'GetUserNameA';
function InitiateSystemShutdown; external advapi32 name 'InitiateSystemShutdownA';
function LogonUser; external advapi32 name 'LogonUserA';
function LookupAccountName; external advapi32 name 'LookupAccountNameA';
function LookupAccountSid; external advapi32 name 'LookupAccountSidA';
function LookupPrivilegeDisplayName; external advapi32 name 'LookupPrivilegeDisplayNameA';
function LookupPrivilegeName; external advapi32 name 'LookupPrivilegeNameA';
function LookupPrivilegeValue; external advapi32 name 'LookupPrivilegeValueA';
function ObjectCloseAuditAlarm; external advapi32 name 'ObjectCloseAuditAlarmA';
function ObjectDeleteAuditAlarm; external advapi32 name 'ObjectDeleteAuditAlarmA';
function ObjectOpenAuditAlarm; external advapi32 name 'ObjectOpenAuditAlarmA';
function ObjectPrivilegeAuditAlarm; external advapi32 name 'ObjectPrivilegeAuditAlarmA';
function OpenBackupEventLog; external advapi32 name 'OpenBackupEventLogA';
function OpenEventLog; external advapi32 name 'OpenEventLogA';
function PrivilegedServiceAuditAlarm; external advapi32 name 'PrivilegedServiceAuditAlarmA';
function ReadEventLog; external advapi32 name 'ReadEventLogA';
function RegConnectRegistry; external advapi32 name 'RegConnectRegistryA';
function RegCreateKey; external advapi32 name 'RegCreateKeyA';
function RegCreateKeyEx; external advapi32 name 'RegCreateKeyExA';
function RegDeleteKey; external advapi32 name 'RegDeleteKeyA';
function RegDeleteValue; external advapi32 name 'RegDeleteValueA';
function RegEnumKeyEx; external advapi32 name 'RegEnumKeyExA';
function RegEnumKey; external advapi32 name 'RegEnumKeyA';
function RegEnumValue; external advapi32 name 'RegEnumValueA';
function RegLoadKey; external advapi32 name 'RegLoadKeyA';
function RegOpenKey; external advapi32 name 'RegOpenKeyA';
function RegOpenKeyEx; external advapi32 name 'RegOpenKeyExA';
function RegQueryInfoKey; external advapi32 name 'RegQueryInfoKeyA';
function RegQueryMultipleValues; external advapi32 name 'RegQueryMultipleValuesA';
function RegQueryValue; external advapi32 name 'RegQueryValueA';
function RegQueryValueEx; external advapi32 name 'RegQueryValueExA';
function RegReplaceKey; external advapi32 name 'RegReplaceKeyA';
function RegRestoreKey; external advapi32 name 'RegRestoreKeyA';
function RegSaveKey; external advapi32 name 'RegSaveKeyA';
function RegSetValue; external advapi32 name 'RegSetValueA';
function RegSetValueEx; external advapi32 name 'RegSetValueExA';
function RegUnLoadKey; external advapi32 name 'RegUnLoadKeyA';
function RegisterEventSource; external advapi32 name 'RegisterEventSourceA';
function ReportEvent; external advapi32 name 'ReportEventA';
function SetFileSecurity; external advapi32 name 'SetFileSecurityA';
function AddAtom; external kernel32 name 'AddAtomA';
function BeginUpdateResource; external kernel32 name 'BeginUpdateResourceA';
function BuildCommDCB; external kernel32 name 'BuildCommDCBA';
function BuildCommDCBAndTimeouts; external kernel32 name 'BuildCommDCBAndTimeoutsA';
function CallNamedPipe; external kernel32 name 'CallNamedPipeA';
function CommConfigDialog; external kernel32 name 'CommConfigDialogA';
function CompareString; external kernel32 name 'CompareStringA';
function CopyFile; external kernel32 name 'CopyFileA';
{$IFDEF _D3orHigher}
function CopyFileEx; external kernel32 name 'CopyFileExA';
{$ENDIF _D3orHigher}
function CreateDirectory; external kernel32 name 'CreateDirectoryA';
function CreateDirectoryEx; external kernel32 name 'CreateDirectoryExA';
function CreateEvent; external kernel32 name 'CreateEventA';
function CreateFile; external kernel32 name 'CreateFileA';
function CreateFileMapping; external kernel32 name 'CreateFileMappingA';
function CreateHardLink; external kernel32 name 'CreateHardLinkA';
function CreateMailslot; external kernel32 name 'CreateMailslotA';
function CreateNamedPipe; external kernel32 name 'CreateNamedPipeA';
function CreateProcess; external kernel32 name 'CreateProcessA';
function CreateSemaphore; external kernel32 name 'CreateSemaphoreA';
function CreateWaitableTimer; external kernel32 name 'CreateWaitableTimerA';
function DefineDosDevice; external kernel32 name 'DefineDosDeviceA';
function DeleteFile; external kernel32 name 'DeleteFileA';
function EndUpdateResource; external kernel32 name 'EndUpdateResourceA';
function EnumCalendarInfo; external kernel32 name 'EnumCalendarInfoA';
function EnumDateFormats; external kernel32 name 'EnumDateFormatsA';
function EnumResourceLanguages; external kernel32 name 'EnumResourceLanguagesA';
function EnumResourceNames; external kernel32 name 'EnumResourceNamesA';
function EnumResourceTypes; external kernel32 name 'EnumResourceTypesA';
function EnumSystemCodePages; external kernel32 name 'EnumSystemCodePagesA';
function EnumSystemLocales; external kernel32 name 'EnumSystemLocalesA';
function EnumTimeFormats; external kernel32 name 'EnumTimeFormatsA';
function ExpandEnvironmentStrings; external kernel32 name 'ExpandEnvironmentStringsA';
procedure FatalAppExit; external kernel32 name 'FatalAppExitA';
function FillConsoleOutputCharacter; external kernel32 name 'FillConsoleOutputCharacterA';
function FindAtom; external kernel32 name 'FindAtomA';
function FindFirstChangeNotification; external kernel32 name 'FindFirstChangeNotificationA';
function FindFirstFile; external kernel32 name 'FindFirstFileA';
{$IFDEF _D3orHigher}
function FindFirstFileEx; external kernel32 name 'FindFirstFileExA';
{$ENDIF _D3orHigher}
function FindNextFile; external kernel32 name 'FindNextFileA';
function FindResource; external kernel32 name 'FindResourceA';
function FindResourceEx; external kernel32 name 'FindResourceExA';
function FoldString; external kernel32 name 'FoldStringA';
function FormatMessage; external kernel32 name 'FormatMessageA';
function FreeEnvironmentStrings; external kernel32 name 'FreeEnvironmentStringsA';
function GetAtomName; external kernel32 name 'GetAtomNameA';
function GetBinaryType; external kernel32 name 'GetBinaryTypeA';
function GetCommandLine; external kernel32 name 'GetCommandLineA';
function GetCompressedFileSize; external kernel32 name 'GetCompressedFileSizeA';
function GetComputerName; external kernel32 name 'GetComputerNameA';
function GetConsoleTitle; external kernel32 name 'GetConsoleTitleA';
function GetCurrencyFormat; external kernel32 name 'GetCurrencyFormatA';
function GetCurrentDirectory; external kernel32 name 'GetCurrentDirectoryA';
function GetDateFormat; external kernel32 name 'GetDateFormatA';
function GetDefaultCommConfig; external kernel32 name 'GetDefaultCommConfigA';
function GetDiskFreeSpace; external kernel32 name 'GetDiskFreeSpaceA';
function GetDiskFreeSpaceEx; external kernel32 name 'GetDiskFreeSpaceExA';
function GetDriveType; external kernel32 name 'GetDriveTypeA';
function GetEnvironmentStrings; external kernel32 name 'GetEnvironmentStringsA';
function GetEnvironmentVariable(lpName: PKOLChar; lpBuffer: PKOLChar;
nSize: DWORD): DWORD; external kernel32 name 'GetEnvironmentVariableA';
function GetFileAttributes; external kernel32 name 'GetFileAttributesA';
{$IFDEF _D3orHigher}
function GetFileAttributesEx; external kernel32 name 'GetFileAttributesExA';
{$ENDIF _D3orHigher}
function GetFullPathName; external kernel32 name 'GetFullPathNameA';
function GetLocaleInfo; external kernel32 name 'GetLocaleInfoA';
function GetLogicalDriveStrings; external kernel32 name 'GetLogicalDriveStringsA';
function GetModuleFileName; external kernel32 name 'GetModuleFileNameA';
function GetModuleHandle; external kernel32 name 'GetModuleHandleA';
function GetNamedPipeHandleState; external kernel32 name 'GetNamedPipeHandleStateA';
function GetNumberFormat; external kernel32 name 'GetNumberFormatA';
function GetPrivateProfileInt; external kernel32 name 'GetPrivateProfileIntA';
function GetPrivateProfileSection; external kernel32 name 'GetPrivateProfileSectionA';
function GetPrivateProfileSectionNames; external kernel32 name 'GetPrivateProfileSectionNamesA';
function GetPrivateProfileString; external kernel32 name 'GetPrivateProfileStringA';
function GetProfileInt; external kernel32 name 'GetProfileIntA';
function GetProfileSection; external kernel32 name 'GetProfileSectionA';
function GetProfileString; external kernel32 name 'GetProfileStringA';
function GetShortPathName; external kernel32 name 'GetShortPathNameA';
procedure GetStartupInfo; external kernel32 name 'GetStartupInfoA';
function GetStringTypeEx; external kernel32 name 'GetStringTypeExA';
function GetSystemDirectory; external kernel32 name 'GetSystemDirectoryA';
function GetTempFileName; external kernel32 name 'GetTempFileNameA';
function GetTempPath; external kernel32 name 'GetTempPathA';
function GetTimeFormat; external kernel32 name 'GetTimeFormatA';
function GetVersionEx; external kernel32 name 'GetVersionExA';
function GetVolumeInformation; external kernel32 name 'GetVolumeInformationA';
function GetWindowsDirectory; external kernel32 name 'GetWindowsDirectoryA';
function GlobalAddAtom; external kernel32 name 'GlobalAddAtomA';
function GlobalFindAtom; external kernel32 name 'GlobalFindAtomA';
function GlobalGetAtomName; external kernel32 name 'GlobalGetAtomNameA';
function IsBadStringPtr; external kernel32 name 'IsBadStringPtrA';
function LCMapString; external kernel32 name 'LCMapStringA';
function LoadLibrary; external kernel32 name 'LoadLibraryA';
function LoadLibraryEx; external kernel32 name 'LoadLibraryExA';
function MoveFile; external kernel32 name 'MoveFileA';
function MoveFileEx; external kernel32 name 'MoveFileExA';
{$IFDEF _D3orHigher}
function MoveFileWithProgress; external kernel32 name 'MoveFileWithProgressA';
{$ENDIF _D3orHigher}
function OpenEvent; external kernel32 name 'OpenEventA';
function OpenFileMapping; external kernel32 name 'OpenFileMappingA';
function OpenMutex; external kernel32 name 'OpenMutexA';
function OpenSemaphore; external kernel32 name 'OpenSemaphoreA';
function OpenWaitableTimer; external kernel32 name 'OpenWaitableTimerA';
procedure OutputDebugString; external kernel32 name 'OutputDebugStringA';
function PeekConsoleInput; external kernel32 name 'PeekConsoleInputA';
function QueryDosDevice; external kernel32 name 'QueryDosDeviceA';
function QueryRecoveryAgents; external kernel32 name 'QueryRecoveryAgentsA';
function ReadConsole; external kernel32 name 'ReadConsoleA';
function ReadConsoleInput; external kernel32 name 'ReadConsoleInputA';
function ReadConsoleOutput; external kernel32 name 'ReadConsoleOutputA';
function ReadConsoleOutputCharacter; external kernel32 name 'ReadConsoleOutputCharacterA';
function RemoveDirectory; external kernel32 name 'RemoveDirectoryA';
function ScrollConsoleScreenBuffer; external kernel32 name 'ScrollConsoleScreenBufferA';
function SearchPath; external kernel32 name 'SearchPathA';
function SetComputerName; external kernel32 name 'SetComputerNameA';
function SetConsoleTitle; external kernel32 name 'SetConsoleTitleA';
function SetCurrentDirectory; external kernel32 name 'SetCurrentDirectoryA';
function SetDefaultCommConfig; external kernel32 name 'SetDefaultCommConfigA';
function SetEnvironmentVariable; external kernel32 name 'SetEnvironmentVariableA';
function SetFileAttributes; external kernel32 name 'SetFileAttributesA';
function SetLocaleInfo; external kernel32 name 'SetLocaleInfoA';
function SetVolumeLabel; external kernel32 name 'SetVolumeLabelA';
function UpdateResource; external kernel32 name 'UpdateResourceA';
function VerLanguageName; external kernel32 name 'VerLanguageNameA';
function WaitNamedPipe; external kernel32 name 'WaitNamedPipeA';
function WriteConsole; external kernel32 name 'WriteConsoleA';
function WriteConsoleInput; external kernel32 name 'WriteConsoleInputA';
function WriteConsoleOutput; external kernel32 name 'WriteConsoleOutputA';
function WriteConsoleOutputCharacter; external kernel32 name 'WriteConsoleOutputCharacterA';
function WritePrivateProfileSection; external kernel32 name 'WritePrivateProfileSectionA';
function WritePrivateProfileString; external kernel32 name 'WritePrivateProfileStringA';
function WriteProfileSection; external kernel32 name 'WriteProfileSectionA';
function WriteProfileString; external kernel32 name 'WriteProfileStringA';
function lstrcat; external kernel32 name 'lstrcatA';
function lstrcmp; external kernel32 name 'lstrcmpA';
function lstrcmpi; external kernel32 name 'lstrcmpiA';
function lstrcpy; external kernel32 name 'lstrcpyA';
function lstrcpyn; external kernel32 name 'lstrcpynA';
function lstrlen; external kernel32 name 'lstrlenA';
function MultinetGetConnectionPerformance; external mpr name 'MultinetGetConnectionPerformanceA';
function WNetAddConnection2; external mpr name 'WNetAddConnection2A';
function WNetAddConnection3; external mpr name 'WNetAddConnection3A';
function WNetAddConnection; external mpr name 'WNetAddConnectionA';
function WNetCancelConnection2; external mpr name 'WNetCancelConnection2A';
function WNetCancelConnection; external mpr name 'WNetCancelConnectionA';
function WNetConnectionDialog1; external mpr name 'WNetConnectionDialog1A';
function WNetDisconnectDialog1; external mpr name 'WNetDisconnectDialog1A';
function WNetEnumResource; external mpr name 'WNetEnumResourceA';
function WNetGetConnection; external mpr name 'WNetGetConnectionA';
function WNetGetLastError; external mpr name 'WNetGetLastErrorA';
function WNetGetNetworkInformation; external mpr name 'WNetGetNetworkInformationA';
function WNetGetProviderName; external mpr name 'WNetGetProviderNameA';
function WNetGetResourceParent; external mpr name 'WNetGetResourceParentA';
function WNetGetUniversalName; external mpr name 'WNetGetUniversalNameA';
function WNetGetUser; external mpr name 'WNetGetUserA';
function WNetOpenEnum; external mpr name 'WNetOpenEnumA';
function WNetSetConnection; external mpr name 'WNetSetConnectionA';
function WNetUseConnection; external mpr name 'WNetUseConnectionA';
function GetFileVersionInfo; external version name 'GetFileVersionInfoA';
function GetFileVersionInfoSize; external version name 'GetFileVersionInfoSizeA';
function VerFindFile; external version name 'VerFindFileA';
function VerInstallFile; external version name 'VerInstallFileA';
function VerQueryValue; external version name 'VerQueryValueA';
function GetPrivateProfileStruct; external kernel32 name 'GetPrivateProfileStructA';
function WritePrivateProfileStruct; external kernel32 name 'WritePrivateProfileStructA';
function AddFontResource; external gdi32 name 'AddFontResourceA';
function AddFontResourceEx; external gdi32 name 'AddFontResourceExA';
function CopyEnhMetaFile; external gdi32 name 'CopyEnhMetaFileA';
function CopyMetaFile; external gdi32 name 'CopyMetaFileA';
function CreateColorSpace; external gdi32 name 'CreateColorSpaceA';
function CreateDC; external gdi32 name 'CreateDCA';
function CreateEnhMetaFile; external gdi32 name 'CreateEnhMetaFileA';
function CreateFont; external gdi32 name 'CreateFontA';
function CreateFontIndirect; external gdi32 name 'CreateFontIndirectA';
function CreateFontIndirectEx; external gdi32 name 'CreateFontIndirectExA';
function CreateIC; external gdi32 name 'CreateICA';
function CreateMetaFile; external gdi32 name 'CreateMetaFileA';
function CreateScalableFontResource; external gdi32 name 'CreateScalableFontResourceA';
function DeviceCapabilities; external gdi32 name 'DeviceCapabilitiesA';
function EnumFontFamilies; external gdi32 name 'EnumFontFamiliesA';
function EnumFontFamiliesEx; external gdi32 name 'EnumFontFamiliesExA';
function EnumFonts; external gdi32 name 'EnumFontsA';
function EnumICMProfiles; external gdi32 name 'EnumICMProfilesA';
function ExtTextOut; external gdi32 name 'ExtTextOutA';
function GetCharABCWidths; external gdi32 name 'GetCharABCWidthsA';
function GetCharABCWidthsFloat; external gdi32 name 'GetCharABCWidthsFloatA';
function GetCharWidth32; external gdi32 name 'GetCharWidth32A';
function GetCharWidth; external gdi32 name 'GetCharWidthA';
function GetCharWidthFloat; external gdi32 name 'GetCharWidthFloatA';
function GetCharacterPlacement; external gdi32 name 'GetCharacterPlacementA';
function GetEnhMetaFile; external gdi32 name 'GetEnhMetaFileA';
function GetEnhMetaFileDescription; external gdi32 name 'GetEnhMetaFileDescriptionA';
function GetGlyphIndices; external gdi32 name 'GetGlyphIndicesA';
function GetGlyphOutline; external gdi32 name 'GetGlyphOutlineA';
function GetICMProfile; external gdi32 name 'GetICMProfileA';
function GetLogColorSpace; external gdi32 name 'GetLogColorSpaceA';
function GetMetaFile; external gdi32 name 'GetMetaFileA';
function GetObject; external gdi32 name 'GetObjectA';
function GetOutlineTextMetrics; external gdi32 name 'GetOutlineTextMetricsA';
function GetTextExtentExPoint; external gdi32 name 'GetTextExtentExPointA';
function GetTextExtentPoint32; external gdi32 name 'GetTextExtentPoint32A';
function GetTextExtentPoint; external gdi32 name 'GetTextExtentPointA';
function GetTextFace; external gdi32 name 'GetTextFaceA';
function GetTextMetrics; external gdi32 name 'GetTextMetricsA';
function PolyTextOut; external gdi32 name 'PolyTextOutA';
function RemoveFontResource; external gdi32 name 'RemoveFontResourceA';
function RemoveFontResourceEx; external gdi32 name 'RemoveFontResourceExA';
function ResetDC; external gdi32 name 'ResetDCA';
function SetICMProfile; external gdi32 name 'SetICMProfileA';
function StartDoc; external gdi32 name 'StartDocA';
function TextOut; external gdi32 name 'TextOutA';
function UpdateICMRegKey; external gdi32 name 'UpdateICMRegKeyA';
function wglUseFontBitmaps; external opengl32 name 'wglUseFontBitmapsA';
function wglUseFontOutlines; external opengl32 name 'wglUseFontOutlinesA';
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 AppendMenu; external user32 name 'AppendMenuA';
//function BroadcastSystemMessage; external user32 name 'BroadcastSystemMessageA';
//function BroadcastSystemMessageA; external user32 name 'BroadcastSystemMessageA';
function CallMsgFilter; external user32 name 'CallMsgFilterA';
function CallWindowProc; external user32 name 'CallWindowProcA';
function ChangeDisplaySettings; external user32 name 'ChangeDisplaySettingsA';
function ChangeDisplaySettingsEx; external user32 name 'ChangeDisplaySettingsExA';
function ChangeMenu; external user32 name 'ChangeMenuA';
function CharLower; external user32 name 'CharLowerA';
function CharLowerBuff; external user32 name 'CharLowerBuffA';
function CharNext; external user32 name 'CharNextA';
function CharNextEx; external user32 name 'CharNextExA';
function CharPrev; external user32 name 'CharPrevA';
function CharPrevEx; external user32 name 'CharPrevExA';
function CharToOem; external user32 name 'CharToOemA';
function CharToOemBuff; external user32 name 'CharToOemBuffA';
function CharUpper; external user32 name 'CharUpperA';
function CharUpperBuff; external user32 name 'CharUpperBuffA';
function CopyAcceleratorTable; external user32 name 'CopyAcceleratorTableA';
function CreateAcceleratorTable; external user32 name 'CreateAcceleratorTableA';
function CreateDesktop; external user32 name 'CreateDesktopA';
function CreateDialogIndirectParam; external user32 name 'CreateDialogIndirectParamA';
function CreateDialogParam; external user32 name 'CreateDialogParamA';
function CreateMDIWindow; external user32 name 'CreateMDIWindowA';
function CreateWindowEx; external user32 name 'CreateWindowExA';
function CreateWindowStation; external user32 name 'CreateWindowStationA';
function DefDlgProc; external user32 name 'DefDlgProcA';
function DefFrameProc; external user32 name 'DefFrameProcA';
function DefMDIChildProc; external user32 name 'DefMDIChildProcA';
function DefWindowProc; external user32 name 'DefWindowProcA';
function DialogBoxIndirectParam; external user32 name 'DialogBoxIndirectParamA';
function DialogBoxParam; external user32 name 'DialogBoxParamA';
function DispatchMessage; external user32 name 'DispatchMessageA';
function DlgDirList; external user32 name 'DlgDirListA';
function DlgDirListComboBox; external user32 name 'DlgDirListComboBoxA';
function DlgDirSelectComboBoxEx; external user32 name 'DlgDirSelectComboBoxExA';
function DlgDirSelectEx; external user32 name 'DlgDirSelectExA';
function DrawState; external user32 name 'DrawStateA';
function DrawText; external user32 name 'DrawTextA';
function DrawTextEx; external user32 name 'DrawTextExA';
function EnumDesktops; external user32 name 'EnumDesktopsA';
function EnumDisplaySettings; external user32 name 'EnumDisplaySettingsA';
function EnumDisplayDevices; external user32 name 'EnumDisplayDevicesA';
function EnumProps; external user32 name 'EnumPropsA';
function EnumPropsEx; external user32 name 'EnumPropsExA';
function EnumWindowStations; external user32 name 'EnumWindowStationsA';
function FindWindow; external user32 name 'FindWindowA';
function FindWindowEx; external user32 name 'FindWindowExA';
function GetAltTabInfo; external user32 name 'GetAltTabInfoA';
function GetClassInfo; external user32 name 'GetClassInfoA';
function GetClassInfoEx; external user32 name 'GetClassInfoExA';
function GetClassLong; external user32 name 'GetClassLongA';
function GetClassName; external user32 name 'GetClassNameA';
function GetClipboardFormatName; external user32 name 'GetClipboardFormatNameA';
function GetDlgItemText; external user32 name 'GetDlgItemTextA';
function GetKeyNameText; external user32 name 'GetKeyNameTextA';
function GetKeyboardLayoutName; external user32 name 'GetKeyboardLayoutNameA';
function GetMenuItemInfo; external user32 name 'GetMenuItemInfoA';
function GetMenuString; external user32 name 'GetMenuStringA';
function GetMessage; external user32 name 'GetMessageA';
function GetProp; external user32 name 'GetPropA';
function GetTabbedTextExtent; external user32 name 'GetTabbedTextExtentA';
function GetUserObjectInformation; external user32 name 'GetUserObjectInformationA';
function GetWindowLong; external user32 name 'GetWindowLongA';
function GetWindowModuleFileName; external user32 name 'GetWindowModuleFileNameA';
function GetWindowText; external user32 name 'GetWindowTextA';
function GetWindowTextLength; external user32 name 'GetWindowTextLengthA';
function GrayString; external user32 name 'GrayStringA';
function InsertMenu; external user32 name 'InsertMenuA';
function InsertMenuItem; external user32 name 'InsertMenuItemA';
function IsCharAlpha; external user32 name 'IsCharAlphaA';
function IsCharAlphaNumeric; external user32 name 'IsCharAlphaNumericA';
function IsCharLower; external user32 name 'IsCharLowerA';
function IsCharUpper; external user32 name 'IsCharUpperA';
function IsDialogMessage; external user32 name 'IsDialogMessageA';
function LoadAccelerators; external user32 name 'LoadAcceleratorsA';
function LoadBitmap; external user32 name 'LoadBitmapA';
function LoadCursor; external user32 name 'LoadCursorA';
function LoadCursorFromFile; external user32 name 'LoadCursorFromFileA';
function LoadIcon; external user32 name 'LoadIconA';
function LoadImage; external user32 name 'LoadImageA';
function LoadKeyboardLayout; external user32 name 'LoadKeyboardLayoutA';
function LoadMenu; external user32 name 'LoadMenuA';
function LoadMenuIndirect; external user32 name 'LoadMenuIndirectA';
function LoadString; external user32 name 'LoadStringA';
function MapVirtualKey; external user32 name 'MapVirtualKeyA';
function MapVirtualKeyEx; external user32 name 'MapVirtualKeyExA';
function MessageBox; external user32 name 'MessageBoxA';
function MessageBoxEx; external user32 name 'MessageBoxExA';
function MessageBoxIndirect; external user32 name 'MessageBoxIndirectA';
function ModifyMenu; external user32 name 'ModifyMenuA';
function OemToAnsi; external user32 name 'OemToCharA';
function OemToAnsiBuff; external user32 name 'OemToCharBuffA';
function OemToChar; external user32 name 'OemToCharA';
function OemToCharBuff; external user32 name 'OemToCharBuffA';
function OpenDesktop; external user32 name 'OpenDesktopA';
function OpenWindowStation; external user32 name 'OpenWindowStationA';
function PeekMessage; external user32 name 'PeekMessageA';
function PostMessage; external user32 name 'PostMessageA';
function PostThreadMessage; external user32 name 'PostThreadMessageA';
function RealGetWindowClass; external user32 name 'RealGetWindowClassA';
function RegisterClass; external user32 name 'RegisterClassA';
function RegisterClassEx; external user32 name 'RegisterClassExA';
function RegisterClipboardFormat; external user32 name 'RegisterClipboardFormatA';
function RegisterDeviceNotification; external user32 name 'RegisterDeviceNotificationA';
function RegisterWindowMessage; external user32 name 'RegisterWindowMessageA';
function RemoveProp; external user32 name 'RemovePropA';
function SendDlgItemMessage; external user32 name 'SendDlgItemMessageA';
function SendMessage; external user32 name 'SendMessageA';
function SendMessageCallback; external user32 name 'SendMessageCallbackA';
function SendMessageTimeout; external user32 name 'SendMessageTimeoutA';
function SendNotifyMessage; external user32 name 'SendNotifyMessageA';
function SetClassLong; external user32 name 'SetClassLongA';
function SetDlgItemText; external user32 name 'SetDlgItemTextA';
function SetMenuItemInfo; external user32 name 'SetMenuItemInfoA';
function SetProp; external user32 name 'SetPropA';
function SetUserObjectInformation; external user32 name 'SetUserObjectInformationA';
function SetWindowLong; external user32 name 'SetWindowLongA';
function SetWindowText; external user32 name 'SetWindowTextA';
function SetWindowsHook; external user32 name 'SetWindowsHookA';
function SetWindowsHookEx; external user32 name 'SetWindowsHookExA';
function SystemParametersInfo; external user32 name 'SystemParametersInfoA';
function TabbedTextOut; external user32 name 'TabbedTextOutA';
function TranslateAccelerator; external user32 name 'TranslateAcceleratorA';
function UnregisterClass; external user32 name 'UnregisterClassA';
function VkKeyScan; external user32 name 'VkKeyScanA';
function VkKeyScanEx; external user32 name 'VkKeyScanExA';
function WinHelp; external user32 name 'WinHelpA';
function wsprintf; external user32 name 'wsprintfA';
function wvsprintf; external user32 name 'wvsprintfA';
// 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: PAnsiChar): THandle; stdcall;
external kernel32 name 'CreateMutexA';
function CreateMutex(lpMutexAttributes: PSecurityAttributes; bInitialOwner: BOOL; lpName: PAnsiChar): THandle;
begin
Result := _CreateMutex(lpMutexAttributes, Integer(Boolean(bInitialOwner)), lpName);
end;
{$ENDIF implementation_part} ///////////////////////////////////////////////////