0

在 MFC VC++ 应用程序中实现 Webbrowser 控件。当页面上有脚本错误时,即使我在 Internet Explorer 中取消选择“显示有关每个脚本错误的通知”,它也会一直显示。此控件从 IE 继承其他选项,如“显示图像”,但不继承脚本错误。

我尝试调试“OnNavigateError()”和“OnNewBrowserWindow()”事件,但它仍然没有出现。我知道在 C# 中有一个名为“ScriptErrorsSuppressed”的属性可以禁用 webbrowser 控件中的脚本错误,但如何在 VC++ 中执行此操作。请帮忙。

4

2 回答 2

0

请注意,您永远无法捕获所有错误,您还应该考虑显示这些烦人的消息。毕竟,WebBrowser 控件不是浏览器,并且多次用于有限的目的(例如:我将此类用于映射项目)。所以你可以通过调用来关闭这些消息:

m_Browser.put_Silent(TRUE);

需要阅读 MSDN 文章:How to handle script errors as a WebBrowser control host and add several include files

#include <Docobj.h>
#include <Mshtml.h>

最后定义:

DEFINE_GUID(CGID_DocHostCommandHandler,0xf38bc242,0xb950,0x11d1,0x89,0x18,0x00,0xc0,0x4f,0xc2,0xc8,0x36);
于 2017-06-17T17:29:12.767 回答
-1

MSDN 提供了有关如何将脚本错误作为 WebBrowser 控件主机处理的一些信息。这些信息对我有用。

于 2013-04-08T00:58:23.060 回答