2012-07-25 37 views
0

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

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

+0

我手中有完全相似的情况。尝试了WebBrowser的SetSilent()属性,但是这往往会阻止字面上的一切,包括身份验证对话框。如果你发现了什么,请告诉我。 – 2012-09-10 15:43:57

回答

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); 
相关问题