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

Delphi 如何使用Chromium Embedded(CEF)加载本地html文件?,delphi,chromium-embedded,delphi-10-seattle,cef4delphi,Delphi,Chromium Embedded,Delphi 10 Seattle,Cef4delphi,我想把一个html文件加载到Chromium中,但是没有显示任何内容,只有一个白色页面 是否可以使用以下方法加载本地html文件 是html文件 还有其他的问题就是每次Chromium被执行时,我的应用程序的其他实例也被执行。如何解决这个问题 使用的代码: var Form1: TForm1; FStarted: Boolean; implementation {$R *.dfm} function CEFApplication: TCefApplication; var sP

我想把一个html文件加载到Chromium中,但是没有显示任何内容,只有一个白色页面

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

是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;

版本:

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;
相对于我对正在执行的应用程序的多个实例的怀疑,这是正常的,基于
文章。

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

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

使用铬。打开相同的本地HTML文件,然后查看位置栏。那里的文件名是什么样子的?它与您的格式匹配吗?@KenWhite,完全正确(文件名和路径)。