delphi - 如何使用 Chromium Embedded (CEF) 加载本地 html 文件?

标签 delphi chromium-embedded delphi-10-seattle cef4delphi

我想将 html 文件加载到 Chromium ( CEF4Delphi ) 但没有显示任何内容,只显示一个白色页面。

是否可以使用以下方法加载本地 html 文件?

Here是html文件。

还有其他麻烦,即每次执行 Chromium 时,也会执行我的应用程序的其他实例。怎么解决这个问题?

使用的代码:

var
  Form1: TForm1;
  FStarted: Boolean;

implementation

{$R *.dfm}

function CEFApplication: TCefApplication;
var
  sPath: String;
begin
  sPath := ExtractFilePath(ParamStr(0));
  if not assigned(GlobalCEFApp) then
  begin
    GlobalCEFApp := TCefApplication.Create;
    GlobalCEFApp.FlashEnabled := False;
    GlobalCEFApp.FastUnload := True;

    GlobalCEFApp.FrameworkDirPath := sPath + 'cef';
    GlobalCEFApp.ResourcesDirPath := sPath + 'cef';
    GlobalCEFApp.LocalesDirPath := sPath + 'cef\locales';
    GlobalCEFApp.Cache := sPath + 'cef\cache';
    GlobalCEFApp.Cookies := sPath + 'cef\cookies';
    GlobalCEFApp.UserDataPath := sPath + 'cef\User Data';
    GlobalCEFApp.EnableGPU := False;
  end;
  if not FStarted then
    FStarted := GlobalCEFApp.StartMainProcess;

  result := GlobalCEFApp;
end;

initialization

CEFApplication;

end.

表格2:

procedure TForm2.FormShow(Sender: TObject);
begin
  while not(Chromium1.CreateBrowser(CEFWindowParent1, '')) and
    (Chromium1.Initialized) do
  begin
    Sleep(100);
    Application.processMessages;
  end;
  Chromium1.LoadURL(ExtractFilePath(ExtractFilePath(Application.ExeName)) + 'gmaps.html');
end;
<小时/>

版本:

相对于我对正在执行的应用程序的多个实例的怀疑,这是正常且正确的,基于 this 文章。

最佳答案

这就是我在代码中的做法:

CBrowser.Load('file:///' + ReplaceStr(fpath, '\', '/'));

关于delphi - 如何使用 Chromium Embedded (CEF) 加载本地 html 文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52240610/

相关文章:

cefsharp - 如何包含 CEFSharp 所需的 VC++ 可再发行文件

teechart - TeeChart中不同系列的不同轴

delphi - Delphi应用程序可以像Visual Studio一样有双快捷键吗? (即 Ctrl-k Ctrl-k)

arrays - 如何创建具有二维或多维数组参数的过程?

delphi - 如何将 TFileAttribute 开关添加到 IOUtils 函数

delphi - 结果始终相同的 SortCompareFunction 会创建 EAccessViolation

c# - CefSharp 加载HTML

wpf - 如何将 Selenium ChromeDriver 附加到 WPF 应用程序中的嵌入式 CefSharp 浏览器?

delphi - 使用 Delphi 构建大于 100MB 的 exe 是否有任何风险?

delphi - 从 Delphi 应用程序接收 MS Word 的自动化事件