我有一个带有嵌入式Web浏览器的C#.NET 3.5应用程序。浏览器旨在指向远程站点(而不是本地的任何东西)。一切正常,但当页面响应缓慢时,这会导致整个应用程序无响应,直到页面加载完毕。
我不介意浏览器在做它的事情时没有反应,但是应用程序也远非理想。
有没有好办法防止这种情况发生?在单独的线程上运行WebBrowser是否有益 - 这有点超出我的技能组合,我不认为WebBrowser控件真的喜欢多线程?但是如果需要,我可以学习。
答案 0 :(得分:2)
关于如何在单独的线程上运行它的解决方案,请参阅此问题的答案#2:BackgroundWorker and WebBrowser Control
您也可以阅读答案#1,它解释了您所看到的行为(WebBrowser控件阻止UI thead)。
答案 1 :(得分:0)
碰巧我发现其根本原因是我的应用程序以管理员身份运行。使用Internet Explorer时出现了完全相同的问题 - 因此,我只是重写了需要管理员权限的位,所以我现在不再看到原始问题了。
答案 2 :(得分:0)
这只发生在win7上;我使用fiddler2来监控HTTP / HTTPs流量。我发现嵌入式Web浏览器访问此网站:http://ctldl.windowsupdate.com/msdownload/update/v3/static/trustedr/en/disallowedcertstl.cab?50ff94e72ac1a75c;the解决方案如下:http://support.microsoft.com/kb/2730040/en(方法2或方法3)你可以尝试一下。其他你可以使用.net framework4.0,那你没有这个问题。