使用chrome embedded将页面下载到内存中

时间:2012-11-06 14:32:09

标签: delphi chromium delphi-xe3 tchromium

我有DCEF(Chromium Embedded)的应用程序。

在浏览器会话期间,我想将特定页面下载到内存中,而不是在Chromium中显示(要下载的页面是一个xml文件,我想在将其写入磁盘之前进行加密)。

在下载过程中,Chromium中的当前页面应保持不变。

使用crm.Browser.MainFrame.LoadUrl和crm.onBeforeDownload如下:

procedure TMainForm.crmBeforeDownload(Sender: TObject;
  const browser: ICefBrowser; const downloadItem: ICefDownloadItem;
  const suggestedName: ustring; const callback: ICefBeforeDownloadCallback);
begin
  callback.Cont(ExtractFilePath(ParamStr(0)) + 'myfile.xml', False);
end;

..文件写入磁盘。

有没有办法把它记在内存中?

1 个答案:

答案 0 :(得分:0)

使用CefWebURLRequest类发出请求。一旦收到所有数据(通过CefWebURLRequestClient::OnData回调),您就可以对其进行加密并将其写入磁盘。