- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我第一次尝试新的 TEdgeBrowser
失败并显示“系统找不到文件”
procedure TFrmTEdgeBrowser.BtnNavigateClick(Sender: TObject);
var lErrCode: Integer;
begin
if not EdgeBrowser.Navigate('https://www.google.com') then
begin
lErrCode := EdgeBrowser.LastErrorCode;
ShowMessage(IntToStr(lErrCode) + ': ' + SysErrorMessage(lErrCode));
end;
end;
错误代码 -2147024894 = $80070002 is indeed ERROR_FILE_NOT_FOUND
顺序(例如根据 https://www.delphipraxis.net/204266-new-vcl-tedgebrowser-component-coming-rad-studio-10-4-a.html 或 http://docwiki.embarcadero.com/RADStudio/Sydney/en/Using_TEdgeBrowser_Component_and_Changes_to_the_TWebBrowser_Component ):
c:\Program Files (x86)\Embarcadero\Studio\21.0\Redist\win32\WebView2Loader.dll
到应用目录配置:Delphi 10.4.3 Sydney,在 Win10 VM 中运行 32 位应用程序,安装了 Edge 84.0.522.52
尝试:前面没有 https:
,重新启动,尝试从 TApplicationEvents.OnException
获取更多信息
然后我尝试运行演示 c:\Users\Public\Documents\Embarcadero\Studio\21.0\Samples\Object Pascal\VCL\WebBrowser\Edge\EdgeBrowser.dproj
(使用 dll也复制到该目录中)但这会从其末尾给出初始化错误:
procedure TfrmMain.EdgeBrowserCreateWebViewCompleted(Sender: TCustomEdgeBrowser; AResult: HResult);
begin
{$IFDEF DEBUG}
OutputDebugString('EdgeBrowser OnCreateWebViewCompleted');
{$ENDIF}
if Succeeded(AResult) then
begin
tbCancel.Enabled := True;
tbReload.Enabled := True;
tbGo.Enabled := True;
edtAddress.Enabled := True;
Sender.AddWebResourceRequestedFilter('*', COREWEBVIEW2_WEB_RESOURCE_CONTEXT_IMAGE);
end
else
begin
if AResult = HResultFromWin32(ERROR_FILE_NOT_FOUND) then
Application.MessageBox('Could not find Edge installation. ' +
'Do you have a version installed that''s compatible with this WebView2 SDK version?',
'Edge initialisation error', MB_OK or MB_ICONERROR)
else
Application.MessageBox('Failed to initialise Edge browser control',
'Edge initialisation error', MB_OK or MB_ICONERROR)
end;
end;
但现在 AResult 是 -2147467259 = $80004005
这似乎与数据/ODBC 相关。
更新到更高版本的 Microsoft.Web.Webview2 0.9.579(2020 年 7 月 20 日)没有帮助。
最佳答案
我下载了 Edge 的测试版并为我修复了它。
我使用的是 84.0.522.59 版本(官方构建)(64 位),并且遇到了与您相同的问题。
我下载的版本是85.0.564.30(正式版)beta(64位)。
此外,我回顾了文档,它说要获取金丝雀 channel 版本。因此,虽然我下载了测试版,但我假设金丝雀版本是您应该下载的,并且也会解决问题。
The Microsoft Edge Chromium-based browser currently available fromhttps://www.microsoftedgeinsider.com/download (Canary channelversion whilst the WebView2 SDK is in pre-release, currently theminimum required version is 82.0.430.0).
关于delphi - TEdgeBrowser 导航失败,出现错误 "File not found",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63230261/
如何覆盖 TEdgebrowser 组件中的上下文菜单?属性(property)检查员不为此提供事件。 最佳答案 可以使用 Javascript 停用上下文菜单。此解决方案不涵盖所有用例。这足以解决我
通过 TEdgeBrowser.OnNewWindowRequested 事件,我可以清楚地知道一个新窗口即将打开,但是我如何使用第二个 TEdgeBrowser 组件将输出捕获到我自己的自定义 TF
我需要在 TEdgeBrowser 中更改用户代理 如何在新的 Delphi TEdgeBrowser VCL 中设置用户代理? 也欢迎任何解决方法! 最佳答案 根据 Microsoft docume
我第一次尝试新的 TEdgeBrowser 失败并显示“系统找不到文件” procedure TFrmTEdgeBrowser.BtnNavigateClick(Sender: TObject); v
目前我们使用TWebBrowser将 IE 嵌入到我们的桌面应用程序的组件。为了从在嵌入式浏览器中运行的脚本调用 Delphi 代码,我们实现了对 window.external 的支持。此处描述的对
我是一名优秀的程序员,十分优秀!