WebBrowser控件中的脚本错误

时间:2012-07-25 14:26:34

标签: visual-c++ mfc

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

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

2 个答案:

答案 0 :(得分:0)

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

m_Browser.put_Silent(TRUE);

您需要阅读MSDN文章:How to handle script errors as a WebBrowser control host并添加几个包含文件

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

最后定义:

DEFINE_GUID(CGID_DocHostCommandHandler,0xf38bc242,0xb950,0x11d1,0x89,0x18,0x00,0xc0,0x4f,0xc2,0xc8,0x36);

答案 1 :(得分:-1)

MSDN提供有关How to handle script errors as a WebBrowser control host的一些信息。这些信息对我有用。