1
0
mirror of https://github.com/salvadordf/CEF4Delphi.git synced 2025-04-17 06:57:13 +02:00
Salvador Díaz Fau 9e5b90303c Use the main cef.inc file in all demos
Remove unused uCEFSentinel references.
Remove duplicated licenses.
2023-11-27 18:21:07 +01:00

57 lines
1.7 KiB
ObjectPascal

program SubProcess;
{$MODE Delphi}
{$I ..\..\..\..\source\cef.inc}
uses
{$IFDEF DELPHI16_UP}
WinApi.Windows,
{$ELSE}
LCLIntf, LCLType, LMessages, Forms, Interfaces,
{$ENDIF}
uCEFApplicationCore,
uCEFConstants,
uCEFv8Value,
uCEFInterfaces;
// CEF3 needs to set the LARGEADDRESSAWARE flag which allows 32-bit processes to use up to 3GB of RAM.
{$SetPEFlags $20}
procedure GlobalCEFApp_OnContextCreated(const browser: ICefBrowser; const frame: ICefFrame; const context: ICefv8Context);
var
TempValue : ICEFv8Value;
begin
// This is the first JS Window Binding example in the "JavaScript Integration" wiki page at
// https://bitbucket.org/chromiumembedded/cef/wiki/JavaScriptIntegration.md
TempValue := TCefv8ValueRef.NewString('My Value!');
context.Global.SetValueByKey('myval', TempValue, V8_PROPERTY_ATTRIBUTE_NONE);
end;
begin
GlobalCEFApp := TCefApplicationCore.Create;
GlobalCEFApp.OnContextCreated := GlobalCEFApp_OnContextCreated;
// The main process and the subprocess *MUST* have the same FrameworkDirPath, ResourcesDirPath,
// LocalesDirPath, cache and UserDataPath paths
// The demos are compiled into the BIN directory. Make sure SubProcess.exe and JSSimpleWindowBinding.exe are in that
// directory or this demo won't work.
// In case you want to use custom directories for the CEF3 binaries, cache and user data.
{
GlobalCEFApp.FrameworkDirPath := 'cef';
GlobalCEFApp.ResourcesDirPath := 'cef';
GlobalCEFApp.LocalesDirPath := 'cef\locales';
GlobalCEFApp.cache := 'cef\cache';
GlobalCEFApp.UserDataPath := 'cef\User Data';
}
GlobalCEFApp.StartSubProcess;
GlobalCEFApp.Free;
GlobalCEFApp := nil;
end.