Unit uCEFMiscFunctions

Description
Uses
Classes, Interfaces, Objects and Records
Functions and Procedures
Types
Constants
Variables

Description

This item has no description.

Overview

Functions and Procedures

function CefColorGetA(color: TCefColor): Byte;
function CefColorGetR(color: TCefColor): byte;
function CefColorGetG(color: TCefColor): Byte;
function CefColorGetB(color: TCefColor): Byte;
function CefColorSetARGB(a, r, g, b: Byte): TCefColor;
function CefInt64Set(int32_low, int32_high: Integer): Int64;
function CefInt64GetLow(const int64_val: Int64): Integer;
function CefInt64GetHigh(const int64_val: Int64): Integer;
function CefGetObject(ptr: Pointer): TObject; inline;
function CefGetData(const i: ICefBaseRefCounted): Pointer; inline;
function CefStringAlloc(const str: ustring): TCefString;
function CefStringClearAndGet(str: PCefString): ustring;
function CefString(const str: ustring): TCefString; overload;
function CefString(const str: PCefString): ustring; overload;
function CefUserFreeString(const str: ustring): PCefStringUserFree;
procedure CefStringFree(const str: PCefString);
function CefStringFreeAndGet(const str: PCefStringUserFree): ustring;
procedure CefStringSet(const str: PCefString; const value: ustring);
procedure CefStringInitialize(const aCefString : PCefString); inline;
function CefRegisterExtension(const name, code: ustring; const Handler: ICefv8Handler): Boolean;
function CefPostTask(aThreadId : TCefThreadId; const aTask: ICefTask) : boolean;
function CefPostDelayedTask(aThreadId : TCefThreadId; const aTask : ICefTask; aDelayMs : Int64) : boolean;
function CefCurrentlyOn(aThreadId : TCefThreadId) : boolean;
function CefTimeToSystemTime(const dt: TCefTime): TSystemTime;
function SystemTimeToCefTime(const dt: TSystemTime): TCefTime;
function FixCefTime(const dt : TCefTime): TCefTime;
function CefTimeToDateTime(const dt: TCefTime): TDateTime;
function DateTimeToCefTime(dt: TDateTime): TCefTime;
function DateTimeToCefBaseTime(dt: TDateTime): TCefBaseTime;
function CefTimeToDouble(const dt: TCefTime): double;
function DoubleToCefTime(const dt: double): TCefTime;
function CefTimeToUnixTime(const dt: TCefTime): int64;
function UnixTimeToCefTime(const dt: int64): TCefTime;
function CefTimeNow: TCefTime;
function DoubleTimeNow: double;
function CefTimeDelta(const cef_time1, cef_time2: TCefTime): int64;
function CefBaseTimeNow: TCefBaseTime;
function CetTimeToCefBaseTime(const ct: TCefTime) : TCefBaseTime;
function CetTimeFromCefBaseTime(const cbt: TCefBaseTime) : TCefTime;
function CefBaseTimeToDateTime(const cbt: TCefBaseTime) : TDateTime;
function GetTimeIntervalMilliseconds(const from_: TCefTime): integer;
procedure InitializeCefTime(var aTime : TCefTime);
function cef_string_wide_copy(const src: PWideChar; src_len: NativeUInt; output: PCefStringWide): Integer;
function cef_string_utf8_copy(const src: PAnsiChar; src_len: NativeUInt; output: PCefStringUtf8): Integer;
function cef_string_utf16_copy(const src: PChar16; src_len: NativeUInt; output: PCefStringUtf16): Integer;
function cef_string_copy(const src: PCefChar; src_len: NativeUInt; output: PCefString): Integer;
procedure WindowInfoAsChild(var aWindowInfo : TCefWindowInfo; aParent : TCefWindowHandle; aRect : TRect; const aWindowName : ustring = ''; aExStyle : DWORD = 0);
procedure WindowInfoAsPopUp(var aWindowInfo : TCefWindowInfo; aParent : TCefWindowHandle; const aWindowName : ustring = ''; aExStyle : DWORD = 0);
procedure WindowInfoAsWindowless(var aWindowInfo : TCefWindowInfo; aParent : TCefWindowHandle; const aWindowName : ustring = ''; aExStyle : DWORD = 0);
function ProcessUnderWow64(hProcess: THandle; Wow64Process: PBOOL): BOOL; stdcall; external Kernel32DLL name 'IsWow64Process';
function PathIsRelativeAnsi(pszPath: LPCSTR): BOOL; stdcall; external SHLWAPIDLL name 'PathIsRelativeA';
function PathIsRelativeUnicode(pszPath: LPCWSTR): BOOL; stdcall; external SHLWAPIDLL name 'PathIsRelativeW';
function GetGlobalMemoryStatusEx(lpBuffer: LPMEMORYSTATUSEX): BOOL; stdcall; external Kernel32DLL name 'GlobalMemoryStatusEx';
function PathCanonicalizeAnsi(pszBuf: LPSTR; pszPath: LPCSTR): BOOL; stdcall; external SHLWAPIDLL name 'PathCanonicalizeA';
function PathCanonicalizeUnicode(pszBuf: LPWSTR; pszPath: LPCWSTR): BOOL; stdcall; external SHLWAPIDLL name 'PathCanonicalizeW';
function PathIsUNCAnsi(pszPath: LPCSTR): BOOL; stdcall; external SHLWAPIDLL name 'PathIsUNCA';
function PathIsUNCUnicode(pszPath: LPCWSTR): BOOL; stdcall; external SHLWAPIDLL name 'PathIsUNCW';
function PathIsURLAnsi(pszPath: LPCSTR): BOOL; stdcall; external SHLWAPIDLL name 'PathIsURLA';
function PathIsURLUnicode(pszPath: LPCWSTR): BOOL; stdcall; external SHLWAPIDLL name 'PathIsURLW';
function ShutdownBlockReasonCreate(hWnd: HWND; Reason: LPCWSTR): Bool; stdcall; external User32DLL;
function ShutdownBlockReasonDestroy(hWnd: HWND): Bool; stdcall; external User32DLL;
function NetServerGetInfo(servername: LPWSTR; level: DWORD; out bufptr: Pointer): DWORD; stdcall; external Netapi32DLL;
function NetApiBufferFree(Buffer: Pointer): DWORD; stdcall; external Netapi32DLL;
function SetWindowLongPtr(hWnd: HWND; nIndex: Integer; dwNewLong: LongInt): LongInt; stdcall; external user32 name 'SetWindowLongW';
function CustomPathIsRelative(const aPath : string) : boolean;
function CustomPathCanonicalize(const aOriginalPath : string; var aCanonicalPath : string) : boolean;
function CustomAbsolutePath(const aPath : string; aMustExist : boolean = False) : string;
function CustomPathIsURL(const aPath : string) : boolean;
function CustomPathIsUNC(const aPath : string) : boolean;
function GetModulePath: string;
function CefIsCertStatusError(Status : TCefCertStatus) : boolean;
function CefCrashReportingEnabled: boolean;
procedure CefSetCrashKeyValue(const aKey, aValue : ustring);
procedure CefLog(const aFile : string; aLine, aSeverity : integer; const aMessage : string);
procedure CefDebugLog(const aMessage : string; aSeverity : integer = CEF_LOG_SEVERITY_ERROR);
procedure CefKeyEventLog(const aEvent : TCefKeyEvent);
procedure CefMouseEventLog(const aEvent : TCefMouseEvent);
procedure OutputDebugMessage(const aMessage : string);
function CustomExceptionHandler(const aFunctionName : string; const aException : exception) : boolean;
function CefGetMinLogLevel: integer;
function CefGetVLogLevel(const file_start : string): integer;
function CefGetLogSeverityName(aSeverity: integer): ustring;
function CefRegisterSchemeHandlerFactory(const SchemeName, DomainName : ustring; const handler: TCefResourceHandlerClass = nil): Boolean;
function CefClearSchemeHandlerFactories: boolean;
function CefAddCrossOriginWhitelistEntry(const SourceOrigin, TargetProtocol, TargetDomain: ustring; AllowTargetSubdomains: Boolean): Boolean;
function CefRemoveCrossOriginWhitelistEntry(const SourceOrigin, TargetProtocol, TargetDomain: ustring; AllowTargetSubdomains: Boolean): Boolean;
function CefClearCrossOriginWhitelist: Boolean;
procedure UInt64ToFileVersionInfo(const aVersion : uint64; var aVersionInfo : TFileVersionInfo);
function GetExtendedFileVersion(const aFileName : ustring) : uint64;
function GetDLLVersion(const aDLLFile : ustring; var aVersionInfo : TFileVersionInfo) : boolean;
procedure OutputLastErrorMessage;
function GetRegistryWindowsVersion(var aMajor, aMinor: cardinal) : boolean;
function GetRealWindowsVersion(var aMajor, aMinor: cardinal) : boolean;
function CheckRealWindowsVersion(aMajor, aMinor: cardinal) : boolean;
function SplitLongString(aSrcString : string) : string;
function GetAbsoluteDirPath(const aSrcPath : string; var aRsltPath : string) : boolean;
function CheckSubprocessPath(const aSubprocessPath : string; var aMissingFiles : string) : boolean;
function CheckLocales(const aLocalesDirPath : string; var aMissingFiles : string; const aLocalesRequired : string = '') : boolean;
function CheckResources(const aResourcesDirPath : string; var aMissingFiles : string) : boolean;
function CheckDLLs(const aFrameworkDirPath : string; var aMissingFiles : string) : boolean;
function CheckDLLVersion(const aDLLFile : ustring; aMajor, aMinor, aRelease, aBuild : uint16) : boolean;
function GetDLLHeaderMachine(const aDLLFile : ustring; var aMachine : integer) : boolean;
function GetFileTypeDescription(const aExtension : ustring) : ustring;
function FileVersionInfoToString(const aVersionInfo : TFileVersionInfo) : string;
function CheckFilesExist(var aList : TStringList; var aMissingFiles : string) : boolean;
function Is32BitProcess: boolean;
function CefResolveUrl(const base_url, relative_url: ustring): ustring;
function CefParseUrl(const url: ustring; var parts: TUrlParts): Boolean;
function CefCreateUrl(var parts: TUrlParts): ustring;
function CefFormatUrlForSecurityDisplay(const originUrl: string): string;
function CefGetMimeType(const extension: ustring): ustring;
procedure CefGetExtensionsForMimeType(const mimeType: ustring; var extensions: TStringList);
function CefBase64Encode(const data: Pointer; dataSize: NativeUInt): ustring;
function CefBase64Decode(const data: ustring): ICefBinaryValue;
function CefUriEncode(const text: ustring; usePlus: Boolean): ustring;
function CefUriDecode(const text: ustring; convertToUtf8: Boolean; unescapeRule: TCefUriUnescapeRule): ustring;
function CefGetPath(const aPathKey : TCefPathKey) : ustring;
function CefIsRTL: boolean;
function CefCreateDirectory(const fullPath: ustring): Boolean;
function CefGetTempDirectory(out tempDir: ustring): Boolean;
function CefCreateNewTempDirectory(const prefix: ustring; out newTempPath: ustring): Boolean;
function CefCreateTempDirectoryInDirectory(const baseDir, prefix: ustring; out newDir: ustring): Boolean;
function CefDirectoryExists(const path: ustring): Boolean;
function CefDeleteFile(const path: ustring; recursive: Boolean): Boolean;
function CefZipDirectory(const srcDir, destFile: ustring; includeHiddenFiles: Boolean): Boolean;
procedure CefLoadCRLSetsFile(const path : ustring);
function GetDefaultCEFUserAgent: string;
function CefIsKeyDown(aWparam : WPARAM) : boolean;
function CefIsKeyToggled(aWparam : WPARAM) : boolean;
function GetCefMouseModifiers: TCefEventFlags; overload;
function GetCefMouseModifiers(awparam : WPARAM) : TCefEventFlags; overload;
function GetCefKeyboardModifiers(aWparam : WPARAM; aLparam : LPARAM) : TCefEventFlags;
procedure CefCheckAltGrPressed(aWparam : WPARAM; var aEvent : TCefKeyEvent);
procedure DropEffectToDragOperation(aEffect : Longint; var aAllowedOps : TCefDragOperations);
procedure DragOperationToDropEffect(const aDragOperations : TCefDragOperations; var aEffect: Longint);
function GetWindowsMajorMinorVersion(var wMajorVersion, wMinorVersion : DWORD) : boolean;
function GetIsWow64Process2(var aProcessMachine, aNativeMachine : WORD) : boolean;
function IsWowProcess: boolean;
function RunningWindows10OrNewer: boolean;
function GetDPIForHandle(aHandle : HWND; var aDPI : UINT) : boolean;
function DeviceToLogical(aValue : integer; const aDeviceScaleFactor : double) : integer; overload;
function DeviceToLogical(aValue : single; const aDeviceScaleFactor : double) : single; overload;
procedure DeviceToLogical(var aEvent : TCEFMouseEvent; const aDeviceScaleFactor : double); overload;
procedure DeviceToLogical(var aEvent : TCefTouchEvent; const aDeviceScaleFactor : double); overload;
procedure DeviceToLogical(var aPoint : TPoint; const aDeviceScaleFactor : double); overload;
function LogicalToDevice(aValue : integer; const aDeviceScaleFactor : double) : integer; overload;
procedure LogicalToDevice(var aRect : TCEFRect; const aDeviceScaleFactor : double); overload;
function GetScreenDPI: integer;
function GetDeviceScaleFactor: single;
function DeleteDirContents(const aDirectory : string; const aExcludeFiles : TStringList = nil) : boolean;
function DeleteFileList(const aFileList : TStringList) : boolean;
function MoveFileList(const aFileList : TStringList; const aSrcDirectory, aDstDirectory : string) : boolean;
function CefGetDataURI(const aString, aMimeType : ustring) : ustring; overload;
function CefGetDataURI(aData : pointer; aSize : integer; const aMimeType : ustring; const aCharset : ustring = '') : ustring; overload;
function ValidCefWindowHandle(aHandle : TCefWindowHandle) : boolean;
procedure InitializeWindowHandle(var aHandle : TCefWindowHandle);
function GetCommandLineSwitchValue(const aKey : string; var aValue : ustring) : boolean;
function IsCEFSubprocess: boolean;

Constants

Kernel32DLL = 'kernel32.dll';
SHLWAPIDLL = 'shlwapi.dll';
NTDLL = 'ntdll.dll';
User32DLL = 'User32.dll';
Netapi32DLL = 'Netapi32.dll';
GWLP_WNDPROC = GWL_WNDPROC;
GWLP_HWNDPARENT = GWL_HWNDPARENT;

Description

Functions and Procedures

function CefColorGetA(color: TCefColor): Byte;

Return the alpha byte from a cef_color_t value.

function CefColorGetR(color: TCefColor): byte;

Return the red byte from a cef_color_t value.

function CefColorGetG(color: TCefColor): Byte;

Return the green byte from a cef_color_t value.

function CefColorGetB(color: TCefColor): Byte;

Return the blue byte from a cef_color_t value.

function CefColorSetARGB(a, r, g, b: Byte): TCefColor;

Return an cef_color_t value with the specified byte component values.

function CefInt64Set(int32_low, int32_high: Integer): Int64;

Return an int64_t value with the specified low and high int32_t component values.

function CefInt64GetLow(const int64_val: Int64): Integer;

Return the low int32_t value from an int64_t value.

function CefInt64GetHigh(const int64_val: Int64): Integer;

Return the high int32_t value from an int64_t value.

function CefGetObject(ptr: Pointer): TObject; inline;

This item has no description.

function CefGetData(const i: ICefBaseRefCounted): Pointer; inline;

This item has no description.

function CefStringAlloc(const str: ustring): TCefString;

This item has no description.

function CefStringClearAndGet(str: PCefString): ustring;

This item has no description.

function CefString(const str: ustring): TCefString; overload;

Converts ustring to TCefString.

function CefString(const str: PCefString): ustring; overload;

Converts PCefString to ustring.

function CefUserFreeString(const str: ustring): PCefStringUserFree;

This item has no description.

procedure CefStringFree(const str: PCefString);

This item has no description.

function CefStringFreeAndGet(const str: PCefStringUserFree): ustring;

This item has no description.

procedure CefStringSet(const str: PCefString; const value: ustring);

This item has no description.

procedure CefStringInitialize(const aCefString : PCefString); inline;

This item has no description.

function CefRegisterExtension(const name, code: ustring; const Handler: ICefv8Handler): Boolean;

Register a new V8 extension with the specified JavaScript extension code and handler. Functions implemented by the handler are prototyped using the keyword 'native'. The calling of a native function is restricted to the scope in which the prototype of the native function is defined. This function may only be called on the render process main thread.

Example JavaScript extension code: <pre> // create the 'example' global object if it doesn't already exist. if (!example) example = {}; // create the 'example.test' global object if it doesn't already exist. if (!example.test) example.test = {}; (function() { // Define the function 'example.test.myfunction'. example.test.myfunction = function() { // Call CefV8Handler::Execute() with the function name 'MyFunction' // and no arguments. native function MyFunction(); return MyFunction(); }; // Define the getter function for parameter 'example.test.myparam'. example.test.__defineGetter__('myparam', function() { // Call CefV8Handler::Execute() with the function name 'GetMyParam' // and no arguments. native function GetMyParam(); return GetMyParam(); }); // Define the setter function for parameter 'example.test.myparam'. example.test.__defineSetter__('myparam', function(b) { // Call CefV8Handler::Execute() with the function name 'SetMyParam' // and a single argument. native function SetMyParam(); if(b) SetMyParam(b); });

// Extension definitions can also contain normal JavaScript variables // and functions. var myint = 0; example.test.increment = function() { myint += 1; return myint; }; })(); </pre>

Example usage in the page: <pre> // Call the function. example.test.myfunction(); // Set the parameter. example.test.myparam = value; // Get the parameter. value = example.test.myparam; // Call another function. example.test.increment(); </pre>

function CefPostTask(aThreadId : TCefThreadId; const aTask: ICefTask) : boolean;

Post a task for execution on the specified thread. Equivalent to using TCefTaskRunnerRef.GetForThread(threadId).PostTask(task).

function CefPostDelayedTask(aThreadId : TCefThreadId; const aTask : ICefTask; aDelayMs : Int64) : boolean;

Post a task for delayed execution on the specified thread. Equivalent to using TCefTaskRunnerRef.GetForThread(threadId).PostDelayedTask(task, delay_ms).

function CefCurrentlyOn(aThreadId : TCefThreadId) : boolean;

Returns true (1) if called on the specified thread. Equivalent to using TCefTaskRunnerRef.GetForThread(threadId).BelongsToCurrentThread().

function CefTimeToSystemTime(const dt: TCefTime): TSystemTime;

Converts a TCefTime value to TSystemTime.

function SystemTimeToCefTime(const dt: TSystemTime): TCefTime;

Converts a TSystemTime value to TCefTime.

function FixCefTime(const dt : TCefTime): TCefTime;

Returns a new TCefTime with a valid time in case the original has errors.

function CefTimeToDateTime(const dt: TCefTime): TDateTime;

Converts a TCefTime value to TDateTime.

function DateTimeToCefTime(dt: TDateTime): TCefTime;

Converts a TDateTime value to TCefTime.

function DateTimeToCefBaseTime(dt: TDateTime): TCefBaseTime;

Converts a TDateTime value to TCefBaseTime.

function CefTimeToDouble(const dt: TCefTime): double;

Converts TCefTime to a double which is the number of seconds since epoch (Jan 1, 1970). Webkit uses this format to represent time. A value of 0 means "not initialized".

<see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/internal/cef_time.h">CEF source file: /include/internal/cef_time.h (cef_time_to_doublet))

function DoubleToCefTime(const dt: double): TCefTime;

Converts TCefTime from a double which is the number of seconds since epoch (Jan 1, 1970). Webkit uses this format to represent time. A value of 0 means "not initialized".

<see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/internal/cef_time.h">CEF source file: /include/internal/cef_time.h (cef_time_from_doublet))

function CefTimeToUnixTime(const dt: TCefTime): int64;

Converts cef_time_t to time_t. time_t is almost always an integral value holding the number of seconds (not counting leap seconds) since 00:00, Jan 1 1970 UTC, corresponding to POSIX time.

<see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/internal/cef_time.h">CEF source file: /include/internal/cef_time.h (cef_time_to_timet))

function UnixTimeToCefTime(const dt: int64): TCefTime;

Converts cef_time_t from time_t. time_t is almost always an integral value holding the number of seconds (not counting leap seconds) since 00:00, Jan 1 1970 UTC, corresponding to POSIX time.

<see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/internal/cef_time.h">CEF source file: /include/internal/cef_time.h (cef_time_from_timet))

function CefTimeNow: TCefTime;

Retrieve the current system time in a TCefTime type.

<see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/internal/cef_time.h">CEF source file: /include/internal/cef_time.h (cef_time_now))

function DoubleTimeNow: double;

Retrieve the current system time in a double type.

<see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/internal/cef_time.h">CEF source file: /include/internal/cef_time.h (cef_time_now))

function CefTimeDelta(const cef_time1, cef_time2: TCefTime): int64;

Retrieve the delta in milliseconds between two time values.

<see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/internal/cef_time.h">CEF source file: /include/internal/cef_time.h (cef_time_delta))

function CefBaseTimeNow: TCefBaseTime;

Retrieve the current system time in a TCefBaseTime type.

<see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/internal/cef_time.h">CEF source file: /include/internal/cef_time.h (cef_basetime_now))

function CetTimeToCefBaseTime(const ct: TCefTime) : TCefBaseTime;

Converts TCefTime to TCefBaseTime.

<see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/internal/cef_time.h">CEF source file: /include/internal/cef_time.h (cef_time_to_basetime))

function CetTimeFromCefBaseTime(const cbt: TCefBaseTime) : TCefTime;

Converts TCefBaseTime to TCefTime.

<see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/internal/cef_time.h">CEF source file: /include/internal/cef_time.h (cef_time_from_basetime))

function CefBaseTimeToDateTime(const cbt: TCefBaseTime) : TDateTime;

Converts TCefBaseTime to TDateTime.

<see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/internal/cef_time.h">CEF source file: /include/internal/cef_time.h (cef_time_from_basetime))

function GetTimeIntervalMilliseconds(const from_: TCefTime): integer;

Returns the time interval between now and from_ in milliseconds. This funcion should only be used by TCEFTimerWorkScheduler.

procedure InitializeCefTime(var aTime : TCefTime);

Initialize a TCefTime variable.

function cef_string_wide_copy(const src: PWideChar; src_len: NativeUInt; output: PCefStringWide): Integer;

This item has no description.

function cef_string_utf8_copy(const src: PAnsiChar; src_len: NativeUInt; output: PCefStringUtf8): Integer;

This item has no description.

function cef_string_utf16_copy(const src: PChar16; src_len: NativeUInt; output: PCefStringUtf16): Integer;

This item has no description.

function cef_string_copy(const src: PCefChar; src_len: NativeUInt; output: PCefString): Integer;

This item has no description.

procedure WindowInfoAsChild(var aWindowInfo : TCefWindowInfo; aParent : TCefWindowHandle; aRect : TRect; const aWindowName : ustring = ''; aExStyle : DWORD = 0);

This item has no description.

procedure WindowInfoAsPopUp(var aWindowInfo : TCefWindowInfo; aParent : TCefWindowHandle; const aWindowName : ustring = ''; aExStyle : DWORD = 0);

This item has no description.

procedure WindowInfoAsWindowless(var aWindowInfo : TCefWindowInfo; aParent : TCefWindowHandle; const aWindowName : ustring = ''; aExStyle : DWORD = 0);

This item has no description.

function ProcessUnderWow64(hProcess: THandle; Wow64Process: PBOOL): BOOL; stdcall; external Kernel32DLL name 'IsWow64Process';

This item has no description.

function PathIsRelativeAnsi(pszPath: LPCSTR): BOOL; stdcall; external SHLWAPIDLL name 'PathIsRelativeA';

This item has no description.

function PathIsRelativeUnicode(pszPath: LPCWSTR): BOOL; stdcall; external SHLWAPIDLL name 'PathIsRelativeW';

This item has no description.

function GetGlobalMemoryStatusEx(lpBuffer: LPMEMORYSTATUSEX): BOOL; stdcall; external Kernel32DLL name 'GlobalMemoryStatusEx';

This item has no description.

function PathCanonicalizeAnsi(pszBuf: LPSTR; pszPath: LPCSTR): BOOL; stdcall; external SHLWAPIDLL name 'PathCanonicalizeA';

This item has no description.

function PathCanonicalizeUnicode(pszBuf: LPWSTR; pszPath: LPCWSTR): BOOL; stdcall; external SHLWAPIDLL name 'PathCanonicalizeW';

This item has no description.

function PathIsUNCAnsi(pszPath: LPCSTR): BOOL; stdcall; external SHLWAPIDLL name 'PathIsUNCA';

This item has no description.

function PathIsUNCUnicode(pszPath: LPCWSTR): BOOL; stdcall; external SHLWAPIDLL name 'PathIsUNCW';

This item has no description.

function PathIsURLAnsi(pszPath: LPCSTR): BOOL; stdcall; external SHLWAPIDLL name 'PathIsURLA';

This item has no description.

function PathIsURLUnicode(pszPath: LPCWSTR): BOOL; stdcall; external SHLWAPIDLL name 'PathIsURLW';

This item has no description.

function ShutdownBlockReasonCreate(hWnd: HWND; Reason: LPCWSTR): Bool; stdcall; external User32DLL;

This item has no description.

function ShutdownBlockReasonDestroy(hWnd: HWND): Bool; stdcall; external User32DLL;

This item has no description.

function NetServerGetInfo(servername: LPWSTR; level: DWORD; out bufptr: Pointer): DWORD; stdcall; external Netapi32DLL;

This item has no description.

function NetApiBufferFree(Buffer: Pointer): DWORD; stdcall; external Netapi32DLL;

This item has no description.

function SetWindowLongPtr(hWnd: HWND; nIndex: Integer; dwNewLong: LongInt): LongInt; stdcall; external user32 name 'SetWindowLongW';

This item has no description.

function CustomPathIsRelative(const aPath : string) : boolean;

Returns true if aPath is a relative path.

<see href="https://learn.microsoft.com/en-us/windows/win32/api/shlwapi/nf-shlwapi-pathisrelativew">See the PathIsRelativeW article.)

function CustomPathCanonicalize(const aOriginalPath : string; var aCanonicalPath : string) : boolean;

Simplifies a path by removing navigation elements such as "." and ".." to produce a direct, well-formed path.

<see href="https://learn.microsoft.com/en-us/windows/win32/api/shlwapi/nf-shlwapi-pathcanonicalizew">See the PathCanonicalizeW article.)

function CustomAbsolutePath(const aPath : string; aMustExist : boolean = False) : string;

Returns the absolute path version of aPath.

function CustomPathIsURL(const aPath : string) : boolean;

Tests aPath to determine if it conforms to a valid URL format.

<see href="https://learn.microsoft.com/en-us/windows/win32/api/shlwapi/nf-shlwapi-pathisurlw">See the PathIsURLW article.)

function CustomPathIsUNC(const aPath : string) : boolean;

Determines if aPath is a valid Universal Naming Convention (UNC) path, as opposed to a path based on a drive letter.

<see href="https://learn.microsoft.com/en-us/windows/win32/api/shlwapi/nf-shlwapi-pathisuncw">See the PathIsUNCW article.)

function GetModulePath: string;

Retrieves the fully qualified path for the current module.

<see href="https://learn.microsoft.com/en-us/windows/win32/api/libloaderapi/nf-libloaderapi-getmodulefilenamew">See the GetModuleFileNameW article.)

function CefIsCertStatusError(Status : TCefCertStatus) : boolean;

Returns true (1) if the certificate status represents an error.

function CefCrashReportingEnabled: boolean;

Crash reporting is configured using an INI-style config file named "crash_reporter.cfg". On Windows and Linux this file must be placed next to the main application executable. On macOS this file must be placed in the top-level app bundle Resources directory (e.g. "<appname>.app/Contents/Resources"). File contents are as follows:

<pre> # Comments start with a hash character and must be on their own line.

[Config] ProductName=<Value of the "prod" crash key; defaults to "cef"> ProductVersion=<Value of the "ver" crash key; defaults to the CEF version> AppName=<Windows only; App-specific folder name component for storing crash information; default to "CEF"> ExternalHandler=<Windows only; Name of the external handler exe to use instead of re-launching the main exe; default to empty> BrowserCrashForwardingEnabled=<macOS only; True if browser process crashes should be forwarded to the system crash reporter; default to false> ServerURL=<crash server URL; default to empty> RateLimitEnabled=<True if uploads should be rate limited; default to true> MaxUploadsPerDay=<Max uploads per 24 hours, used if rate limit is enabled; default to 5> MaxDatabaseSizeInMb=<Total crash report disk usage greater than this value will cause older reports to be deleted; default to 20> MaxDatabaseAgeInDays=<Crash reports older than this value will be deleted; default to 5>

[CrashKeys] my_key1=<small|medium|large> my_key2=<small|medium|large> </pre>

Config section:

If "ProductName" and/or "ProductVersion" are set then the specified values will be included in the crash dump metadata. On macOS if these values are set to NULL then they will be retrieved from the Info.plist file using the "CFBundleName" and "CFBundleShortVersionString" keys respectively.

If "AppName" is set on Windows then crash report information (metrics, database and dumps) will be stored locally on disk under the "C:\Users\[CurrentUser]\AppData\Local\[AppName]\User Data" folder. On other platforms the cef_settings_t.root_cache_path value will be used.

If "ExternalHandler" is set on Windows then the specified exe will be launched as the crashpad-handler instead of re-launching the main process exe. The value can be an absolute path or a path relative to the main exe directory. On Linux the cef_settings_t.browser_subprocess_path value will be used. On macOS the existing subprocess app bundle will be used.

If "BrowserCrashForwardingEnabled" is set to true (1) on macOS then browser process crashes will be forwarded to the system crash reporter. This results in the crash UI dialog being displayed to the user and crash reports being logged under "~/Library/Logs/DiagnosticReports". Forwarding of crash reports from non-browser processes and Debug builds is always disabled.

If "ServerURL" is set then crashes will be uploaded as a multi-part POST request to the specified URL. Otherwise, reports will only be stored locally on disk.

If "RateLimitEnabled" is set to true (1) then crash report uploads will be rate limited as follows: 1. If "MaxUploadsPerDay" is set to a positive value then at most the specified number of crashes will be uploaded in each 24 hour period. 2. If crash upload fails due to a network or server error then an incremental backoff delay up to a maximum of 24 hours will be applied for retries. 3. If a backoff delay is applied and "MaxUploadsPerDay" is > 1 then the "MaxUploadsPerDay" value will be reduced to 1 until the client is restarted. This helps to avoid an upload flood when the network or server error is resolved. Rate limiting is not supported on Linux.

If "MaxDatabaseSizeInMb" is set to a positive value then crash report storage on disk will be limited to that size in megabytes. For example, on Windows each dump is about 600KB so a "MaxDatabaseSizeInMb" value of 20 equates to about 34 crash reports stored on disk. Not supported on Linux.

If "MaxDatabaseAgeInDays" is set to a positive value then crash reports older than the specified age in days will be deleted. Not supported on Linux.

CrashKeys section:

A maximum of 26 crash keys of each size can be specified for use by the application. Crash key values will be truncated based on the specified size (small = 64 bytes, medium = 256 bytes, large = 1024 bytes). The value of crash keys can be set from any thread or process using the CefSetCrashKeyValue function. These key/value pairs will be sent to the crash server along with the crash dump file.

procedure CefSetCrashKeyValue(const aKey, aValue : ustring);

Sets or clears a specific key-value pair from the crash metadata.

procedure CefLog(const aFile : string; aLine, aSeverity : integer; const aMessage : string);

Add a log message. See the LogSeverity defines for supported |severity| values.

<see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/base/cef_logging.h">CEF source file: /include/base/cef_logging.h (cef_log))

<see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/base/cef_logging.h">CEF source file: /include/base/cef_logging.h (LogSeverity))

procedure CefDebugLog(const aMessage : string; aSeverity : integer = CEF_LOG_SEVERITY_ERROR);

This item has no description.

procedure CefKeyEventLog(const aEvent : TCefKeyEvent);

This item has no description.

procedure CefMouseEventLog(const aEvent : TCefMouseEvent);

This item has no description.

procedure OutputDebugMessage(const aMessage : string);

This item has no description.

function CustomExceptionHandler(const aFunctionName : string; const aException : exception) : boolean;

This item has no description.

function CefGetMinLogLevel: integer;

Gets the current log verbose level (LogSeverity).

<see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/base/cef_logging.h">CEF source file: /include/base/cef_logging.h (cef_get_min_log_level))

<see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/base/cef_logging.h">CEF source file: /include/base/cef_logging.h (LogSeverity))

function CefGetVLogLevel(const file_start : string): integer;

Gets the current vlog level for the given file.

<see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/base/cef_logging.h">CEF source file: /include/base/cef_logging.h (cef_get_vlog_level))

function CefGetLogSeverityName(aSeverity: integer): ustring;

Gets the log severity name.

<see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/base/cef_logging.h">CEF source file: /include/base/cef_logging.h (LogSeverity))

function CefRegisterSchemeHandlerFactory(const SchemeName, DomainName : ustring; const handler: TCefResourceHandlerClass = nil): Boolean;

Register a scheme handler factory with the global request context. An NULL |DomainName| value for a standard scheme will cause the factory to match all domain names. The |DomainName| value will be ignored for non-standard schemes. If |SchemeName| is a built-in scheme and no handler is returned by |factory| then the built-in scheme handler factory will be called. If |SchemeName| is a custom scheme then you must also implement the ICefApp.OnRegisterCustomSchemes function in all processes. This function may be called multiple times to change or remove the factory that matches the specified |SchemeName| and optional |DomainName|. Returns false (0) if an error occurs. This function may be called on any thread in the browser process. Using this function is equivalent to calling cef_reques t_context_t::cef_request_context_get_global_context()->register_scheme_handl er_factory().

function CefClearSchemeHandlerFactories: boolean;

Clear all scheme handler factories registered with the global request context. Returns false (0) on error. This function may be called on any thread in the browser process. Using this function is equivalent to calling cef_request_context_t::cef_request_context_get_global_context()->clear_schem e_handler_factories().

function CefAddCrossOriginWhitelistEntry(const SourceOrigin, TargetProtocol, TargetDomain: ustring; AllowTargetSubdomains: Boolean): Boolean;

Add an entry to the cross-origin access whitelist.

The same-origin policy restricts how scripts hosted from different origins (scheme + domain + port) can communicate. By default, scripts can only access resources with the same origin. Scripts hosted on the HTTP and HTTPS schemes (but no other schemes) can use the "Access-Control-Allow-Origin" header to allow cross-origin requests. For example, https://source.example.com can make XMLHttpRequest requests on http://target.example.com if the http://target.example.com request returns an "Access-Control-Allow-Origin: https://source.example.com" response header.

Scripts in separate frames or iframes and hosted from the same protocol and domain suffix can execute cross-origin JavaScript if both pages set the document.domain value to the same domain suffix. For example, scheme://foo.example.com and scheme://bar.example.com can communicate using JavaScript if both domains set document.domain="example.com".

This function is used to allow access to origins that would otherwise violate the same-origin policy. Scripts hosted underneath the fully qualified |source_origin| URL (like http://www.example.com) will be allowed access to all resources hosted on the specified |target_protocol| and |target_domain|. If |target_domain| is non-NULL and |allow_target_subdomains| is false (0) only exact domain matches will be allowed. If |target_domain| contains a top- level domain component (like "example.com") and |allow_target_subdomains| is true (1) sub-domain matches will be allowed. If |target_domain| is NULL and |allow_target_subdomains| if true (1) all domains and IP addresses will be allowed.

This function cannot be used to bypass the restrictions on local or display isolated schemes. See the comments on CefRegisterCustomScheme for more information.

This function may be called on any thread. Returns false (0) if |source_origin| is invalid or the whitelist cannot be accessed.

function CefRemoveCrossOriginWhitelistEntry(const SourceOrigin, TargetProtocol, TargetDomain: ustring; AllowTargetSubdomains: Boolean): Boolean;

Remove an entry from the cross-origin access whitelist. Returns false (0) if |source_origin| is invalid or the whitelist cannot be accessed.

function CefClearCrossOriginWhitelist: Boolean;

Remove all entries from the cross-origin access whitelist. Returns false (0) if the whitelist cannot be accessed.

procedure UInt64ToFileVersionInfo(const aVersion : uint64; var aVersionInfo : TFileVersionInfo);

This item has no description.

function GetExtendedFileVersion(const aFileName : ustring) : uint64;

This item has no description.

function GetDLLVersion(const aDLLFile : ustring; var aVersionInfo : TFileVersionInfo) : boolean;

This item has no description.

procedure OutputLastErrorMessage;

This item has no description.

function GetRegistryWindowsVersion(var aMajor, aMinor: cardinal) : boolean;

This item has no description.

function GetRealWindowsVersion(var aMajor, aMinor: cardinal) : boolean;

This item has no description.

function CheckRealWindowsVersion(aMajor, aMinor: cardinal) : boolean;

This item has no description.

function SplitLongString(aSrcString : string) : string;

This item has no description.

function GetAbsoluteDirPath(const aSrcPath : string; var aRsltPath : string) : boolean;

This item has no description.

function CheckSubprocessPath(const aSubprocessPath : string; var aMissingFiles : string) : boolean;

This item has no description.

function CheckLocales(const aLocalesDirPath : string; var aMissingFiles : string; const aLocalesRequired : string = '') : boolean;

This item has no description.

function CheckResources(const aResourcesDirPath : string; var aMissingFiles : string) : boolean;

This item has no description.

function CheckDLLs(const aFrameworkDirPath : string; var aMissingFiles : string) : boolean;

This item has no description.

function CheckDLLVersion(const aDLLFile : ustring; aMajor, aMinor, aRelease, aBuild : uint16) : boolean;

This item has no description.

function GetDLLHeaderMachine(const aDLLFile : ustring; var aMachine : integer) : boolean;

This item has no description.

function GetFileTypeDescription(const aExtension : ustring) : ustring;

This item has no description.

function FileVersionInfoToString(const aVersionInfo : TFileVersionInfo) : string;

This item has no description.

function CheckFilesExist(var aList : TStringList; var aMissingFiles : string) : boolean;

This item has no description.

function Is32BitProcess: boolean;

This item has no description.

function CefResolveUrl(const base_url, relative_url: ustring): ustring;

Combines specified |base_url| and |relative_url| into a ustring.

function CefParseUrl(const url: ustring; var parts: TUrlParts): Boolean;

Parse the specified |url| into its component parts. Returns false (0) if the URL is invalid.

function CefCreateUrl(var parts: TUrlParts): ustring;

Creates a URL from the specified |parts|, which must contain a non-NULL spec or a non-NULL host and path (at a minimum), but not both.

function CefFormatUrlForSecurityDisplay(const originUrl: string): string;

This is a convenience function for formatting a URL in a concise and human- friendly way to help users make security-related decisions (or in other circumstances when people need to distinguish sites, origins, or otherwise- simplified URLs from each other). Internationalized domain names (IDN) may be presented in Unicode if the conversion is considered safe. The returned value will (a) omit the path for standard schemes, excepting file and filesystem, and (b) omit the port if it is the default for the scheme. Do not use this for URLs which will be parsed or sent to other applications.

function CefGetMimeType(const extension: ustring): ustring;

Returns the mime type for the specified file extension or an NULL string if unknown.

procedure CefGetExtensionsForMimeType(const mimeType: ustring; var extensions: TStringList);

Get the extensions associated with the given mime type. This should be passed in lower case. There could be multiple extensions for a given mime type, like "html,htm" for "text/html", or "txt,text,html,..." for "text/*". Any existing elements in the provided vector will not be erased.

function CefBase64Encode(const data: Pointer; dataSize: NativeUInt): ustring;

Encodes |data| as a base64 string.

function CefBase64Decode(const data: ustring): ICefBinaryValue;

Decodes the base64 encoded string |data|. The returned value will be NULL if the decoding fails.

function CefUriEncode(const text: ustring; usePlus: Boolean): ustring;

Escapes characters in |text| which are unsuitable for use as a query parameter value. Everything except alphanumerics and -_.!~*'() will be converted to "%XX". If |use_plus| is true (1) spaces will change to "+". The result is basically the same as encodeURIComponent in Javacript.

function CefUriDecode(const text: ustring; convertToUtf8: Boolean; unescapeRule: TCefUriUnescapeRule): ustring;

Unescapes |text| and returns the result. Unescaping consists of looking for the exact pattern "%XX" where each X is a hex digit and converting to the character with the numerical value of those digits (e.g. "i%20=%203%3b" unescapes to "i = 3;"). If |convert_to_utf8| is true (1) this function will attempt to interpret the initial decoded result as UTF-8. If the result is convertable into UTF-8 it will be returned as converted. Otherwise the initial decoded result will be returned. The |unescape_rule| parameter supports further customization the decoding process.

function CefGetPath(const aPathKey : TCefPathKey) : ustring;

Retrieve the path associated with the specified |aPathKey|. Can be called on any thread in the browser process.

function CefIsRTL: boolean;

Returns true (1) if the application text direction is right-to-left.

function CefCreateDirectory(const fullPath: ustring): Boolean;

Creates a directory and all parent directories if they don't already exist. Returns true (1) on successful creation or if the directory already exists. The directory is only readable by the current user. Calling this function on the browser process UI or IO threads is not allowed.

function CefGetTempDirectory(out tempDir: ustring): Boolean;

Get the temporary directory provided by the system. WARNING: In general, you should use the temp directory variants below instead of this function. Those variants will ensure that the proper permissions are set so that other users on the system can't edit them while they're open (which could lead to security issues).

function CefCreateNewTempDirectory(const prefix: ustring; out newTempPath: ustring): Boolean;

Creates a new directory. On Windows if |prefix| is provided the new directory name is in the format of "prefixyyyy". Returns true (1) on success and sets |newTempPath| to the full path of the directory that was created. The directory is only readable by the current user. Calling this function on the browser process UI or IO threads is not allowed.

function CefCreateTempDirectoryInDirectory(const baseDir, prefix: ustring; out newDir: ustring): Boolean;

Creates a directory within another directory. Extra characters will be appended to |prefix| to ensure that the new directory does not have the same name as an existing directory. Returns true (1) on success and sets |newDir| to the full path of the directory that was created. The directory is only readable by the current user. Calling this function on the browser process UI or IO threads is not allowed.

function CefDirectoryExists(const path: ustring): Boolean;

Returns true (1) if the given path exists and is a directory. Calling this function on the browser process UI or IO threads is not allowed.

function CefDeleteFile(const path: ustring; recursive: Boolean): Boolean;

Deletes the given path whether it's a file or a directory. If |path| is a directory all contents will be deleted. If |recursive| is true (1) any sub- directories and their contents will also be deleted (equivalent to executing "rm -rf", so use with caution). On POSIX environments if |path| is a symbolic link then only the symlink will be deleted. Returns true (1) on successful deletion or if |path| does not exist. Calling this function on the browser process UI or IO threads is not allowed.

function CefZipDirectory(const srcDir, destFile: ustring; includeHiddenFiles: Boolean): Boolean;

Writes the contents of |srcDir| into a zip archive at |destFile|. If |includeHiddenFiles| is true (1) files starting with "." will be included. Returns true (1) on success. Calling this function on the browser process UI or IO threads is not allowed.

procedure CefLoadCRLSetsFile(const path : ustring);

Loads the existing "Certificate Revocation Lists" file that is managed by Google Chrome. This file can generally be found in Chrome's User Data directory (e.g. "C:\Users\[User]\AppData\Local\Google\Chrome\User Data\" on Windows) and is updated periodically by Chrome's component updater service. Must be called in the browser process after the context has been initialized. See https://dev.chromium.org/Home/chromium-security/crlsets for background.

function GetDefaultCEFUserAgent: string;

Return a user-agent string.

This function tries to replicate the BuildUserAgentFromOSAndProduct function in Chromium but it's safer to call the 'Browser.getVersion' DevTools method.

<see href="https://source.chromium.org/chromium/chromium/src/+/main:content/common/user_agent.cc">Chromium source file: content/common/user_agent.cc (BuildUserAgentFromOSAndProduct))

<see href="https://chromedevtools.github.io/devtools-protocol/tot/Browser/#method-getVersion">See the Browser.getVersion article.)

function CefIsKeyDown(aWparam : WPARAM) : boolean;

This item has no description.

function CefIsKeyToggled(aWparam : WPARAM) : boolean;

This item has no description.

function GetCefMouseModifiers: TCefEventFlags; overload;

This item has no description.

function GetCefMouseModifiers(awparam : WPARAM) : TCefEventFlags; overload;

This item has no description.

function GetCefKeyboardModifiers(aWparam : WPARAM; aLparam : LPARAM) : TCefEventFlags;

This item has no description.

procedure CefCheckAltGrPressed(aWparam : WPARAM; var aEvent : TCefKeyEvent);

This item has no description.

procedure DropEffectToDragOperation(aEffect : Longint; var aAllowedOps : TCefDragOperations);

This item has no description.

procedure DragOperationToDropEffect(const aDragOperations : TCefDragOperations; var aEffect: Longint);

This item has no description.

function GetWindowsMajorMinorVersion(var wMajorVersion, wMinorVersion : DWORD) : boolean;

This item has no description.

function GetIsWow64Process2(var aProcessMachine, aNativeMachine : WORD) : boolean;

This item has no description.

function IsWowProcess: boolean;

This item has no description.

function RunningWindows10OrNewer: boolean;

This item has no description.

function GetDPIForHandle(aHandle : HWND; var aDPI : UINT) : boolean;

This item has no description.

function DeviceToLogical(aValue : integer; const aDeviceScaleFactor : double) : integer; overload;

This item has no description.

function DeviceToLogical(aValue : single; const aDeviceScaleFactor : double) : single; overload;

This item has no description.

procedure DeviceToLogical(var aEvent : TCEFMouseEvent; const aDeviceScaleFactor : double); overload;

This item has no description.

procedure DeviceToLogical(var aEvent : TCefTouchEvent; const aDeviceScaleFactor : double); overload;

This item has no description.

procedure DeviceToLogical(var aPoint : TPoint; const aDeviceScaleFactor : double); overload;

This item has no description.

function LogicalToDevice(aValue : integer; const aDeviceScaleFactor : double) : integer; overload;

This item has no description.

procedure LogicalToDevice(var aRect : TCEFRect; const aDeviceScaleFactor : double); overload;

This item has no description.

function GetScreenDPI: integer;

This item has no description.

function GetDeviceScaleFactor: single;

This item has no description.

function DeleteDirContents(const aDirectory : string; const aExcludeFiles : TStringList = nil) : boolean;

This item has no description.

function DeleteFileList(const aFileList : TStringList) : boolean;

This item has no description.

function MoveFileList(const aFileList : TStringList; const aSrcDirectory, aDstDirectory : string) : boolean;

This item has no description.

function CefGetDataURI(const aString, aMimeType : ustring) : ustring; overload;

Returns a URI with a DATA scheme using |aString| as the URI's data.

function CefGetDataURI(aData : pointer; aSize : integer; const aMimeType : ustring; const aCharset : ustring = '') : ustring; overload;

Returns a URI with a DATA scheme encoding |aData| as a base64 string.

function ValidCefWindowHandle(aHandle : TCefWindowHandle) : boolean;

This item has no description.

procedure InitializeWindowHandle(var aHandle : TCefWindowHandle);

This item has no description.

function GetCommandLineSwitchValue(const aKey : string; var aValue : ustring) : boolean;

Returns a command line switch value if it exists.

function IsCEFSubprocess: boolean;

Returns true if the command line switch has a "type" value.

Constants

Kernel32DLL = 'kernel32.dll';

This item has no description.

SHLWAPIDLL = 'shlwapi.dll';

This item has no description.

NTDLL = 'ntdll.dll';

This item has no description.

User32DLL = 'User32.dll';

This item has no description.

Netapi32DLL = 'Netapi32.dll';

This item has no description.

GWLP_WNDPROC = GWL_WNDPROC;

This item has no description.

GWLP_HWNDPARENT = GWL_HWNDPARENT;

This item has no description.


Generated by PasDoc 0.16.0-snapshot.