如何修复“请求的资源正在使用中。 (HRESULTexception:0x800700AA)“
我该如何解决这个错误?
“请求的资源正在使用中。(HRESULTexception:0x800700AA)”。
在使用C#.NET中的WebBrowser控件导航到其他网站时出现。 为什么?
如果当前正在处理导航操作,或者当前打开控件的任何阻止对话框(包括上下文菜单,Javascript警报,NTLM登录对话框等),则WebBrowser控件被视为“正在使用”。 您可以使用WebBrowser.IsBusy
属性来检测这些状态。
如果由于当前未完成的导航操作,您可以尝试停止当前导航(如果确实要在页面未完成加载时停止)或将新导航添加到请求队列并使用计时器等待WebBrowser.IsBusy
返回false。
如果繁忙状态是由一个或多个打开的阻塞对话框引起的,则可以执行相同的等待技术,也可能是Messagebox.Show()
用户一条消息,由于打开的对话框窗口导致挂起导航被延迟。
我有同样的问题。 调用WebBrowser.Stop()
没有帮助, WebBrowser.IsBusy
从未变为false。
事实certificate,如果页面创建任何类型的对话框( alert()
弹出窗口,javascript错误,NTLM登录弹出窗口等) ,则在对话框关闭之前,您无法离开页面。
我的解决方案是阻止对话框首先显示。 显然阻止所有这些弹出窗口很简单; 刚设置
webBrowser.ScriptErrorsSuppressed = true;
bool go = false; string SiteContent1 = string.Empty; string SiteContent2 = string.Empty; int index = 0; WebBrowser wb = new WebBrowser(); void wb_DocumentCompleted(object sender, WebBrowserDocumentCompletedEventArgs e) { try { if (go) { SiteContent2 = wb.DocumentText; // Code to compare to contents of the webbrowser index++; go = false; steps = 1; } if (!go) { if (index >= TotalSiteCount) { Stop(); } else if (steps == 1) { wb.Navigate(UrltocompareList[index].Url1); } else if (steps == 2) { SiteContent1 = wb.DocumentText; wb.Navigate(UrltocompareList[index].Url2); go = true; } steps++; } } catch (Exception ex) { MessageBox.Show(ex.Message); } }
UrltocompareList是要比较的2个站点的集合。
TotalSiteCount是UrltocompareList中的项目数。
这种formsinheritanceIOleClientSite以删除媒体,如图像,video和没有活动的X下载,以便在webbrowser控件中具有更快的渲染时间。
我用这个方法代替system.net.webclient来获取网页的html然后比较它们。
当它遇到wb.Navigate方法时我遇到了这个错误。
我在Windows 10中使用watin运行specflow测试时遇到的一个问题是win10默认使用MS Edge,所以我从未打开IE,当watin启动时,IE卡在使用默认设置的提示上。 选择选项,关闭浏览器和运行测试再次为我工作。
只是值得关注的东西
第一次尝试
1- 请检查导航URL (如果您检查,请再次检查已编译的文件夹)
2-删除WebBrowser控件并添加新内容
我忘了复制原始文件App.Path +“ error.html”并看到这个问题。
保证方法
我修复了VB6中的此错误
添加WebBrowserControl wb(0)(名称wb,索引= 0)
以前和之前导航
For i = 1 To wb.UBound Unload wb(i) Next Load wb(1) wb(0).Visible = False wb(1).Visible = true wb(1).Navigate URL
这很容易解决。 当浏览器在执行操作时提交操作时,会发生此错误。 例如,当您在Web浏览器中右键单击时,您将导航到某个网站。 为了解决这个问题,我做了以下几点:
上述就是C#学习教程:如何修复“请求的资源正在使用中。 (HRESULTexception:0x800700AA)“分享的全部内容,如果对大家有所用处且需要了解更多关于C#学习教程,希望大家多多关注—计算机技术网(www.ctvol.com)!
//if my webbrowser isn't performing any actions if(!myWebBrowser.IsBusy) { //Navigate myWebBrowser.Navigate("https://www.google.com"); }
本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。
ctvol管理联系方式QQ:251552304
本文章地址:https://www.ctvol.com/cdevelopment/1019946.html