codeproject原文:http://www.codeproject.com/KB/cpp/ExtendedWebBrowser.aspx
网上找到的翻译:http://www.cnblogs.com/reinstallsys/archive/2008/07/19/1246864.html
ExtendedWebBrowser对于捕捉脚本错误的解决方案
1. 实现DWebBrowserEvents接口
2. 创建一个DownloadComplete事件
3. 当DownloadComplete事件触发时,订阅HtmlWindow.Error事件
4. 利用这个Error事件来获得脚本出错的详细信息
5. 设置Handled属性为True来阻止脚本出错
但实际使用发现并不好用,因为内嵌窗口里面的脚本错误捕捉不出来。
网上的解决方案,无不就是把Silent 设置成True
无错世界清静了,但你需要看的信息也没了。ExtendedWebBrowser,的JS错误捕获功能也失效了。
其实ExtendedWebBrowser的想法很好,只是忽略了网中有内嵌窗口的情况,我们稍稍改一改代码。
OK,现在内嵌页面也可以正常捕获JS错误了。