我正在尝试使用 DCEF3 TChromium 作为 TWebbrowser 组件的替代品。我下载了这些软件包并将其安装在我的 IDE(Delphi 2007)上。
我正在 demos\guiclient 上测试演示,当我尝试打开某些网页时,我得到了大量的访问冲突异常并且我的应用程序崩溃了。如果我在 Delphi 中,我会在 Delphi 本身崩溃之前得到这个异常:
'断言失败:'item.src' in \win32scr\DBKIMPL.CPP' 在第 2691 行'
存在此问题的页面的一个示例是 www.whatsmyuseragent.com
正确打开的页面的一个示例是 www.google.com
经过大量测试后,我发现如果我将 TChromium.Options.Javascript 设置为 STATE_DISABLED,应用程序就不会再崩溃了。但它不会运行页面的 JS 代码,所以它没有用,因为页面本身无法正确加载。
任何想法都将不胜感激,这个问题让每个拥有使用 TWebbrowser 的应用程序并需要紧急更换它的人都感兴趣。因为 TWebbrowser 使用 Internet Explorer 并且它已经停产,即使 Microsoft 在未来的 Windows 版本中继续提供 MSHTML,它也不会遵循未来的 Web 标准,并且将来页面也不会正确加载。事实上,我已经在使用最新网络标准的页面中遇到了这种问题。