在某些2008 R2环境中,而不是其他环境中,我在使用COMExceptions
控件时获得了System.Windows.Forms.WebBrowser
。无论是通过DocumentText
属性指定内容还是使用URL参数调用Navigate
方法,我都会得到相同的异常:
COMException - 错误HRESULT E_FAIL已从调用COM组件返回。
在System.Windows.Forms.UnsafeNativeMethods.IWebBrowser2.Refresh()
我发现在指定ScrollBarsEnabled
之前在WebBrowser
上设置DocumentText
属性会导致此异常,而这似乎是调用Refresh
的结果浏览器没有内容时的方法(上面引用)(最后发表here)。解决方法是设置一些模拟内容并调用Application.DoEvents()
。但即使有了这个,它也会在稍后加载内容时导致上述异常(在另一个线程中完成)。
请注意,我指定的DocumentCompleted
代理 被点击,但其WebBrowser.axIWebBrowser2.StatusText
表示发生了异常,WebBrowser.Document
为空。< / p>
我可以提出一个简单的应用来重现问题,但我必须找到一个2008 R2实例,其中错误可重现以便调试。我更想问是否有人对可能影响或导致问题的想法有所了解,可能与COM安全等有关。
请注意,我正在WebBrowser
状态执行STA Apartment
。
任何想法或建议将不胜感激。提前致谢! -max