消息过滤器表明应用程序正忙,同时使用多个网络浏览器控件
感谢您抽出时间,我正在创建一个应用程序,需要 5 时间 来自数据库的 URL,然后在 5 个浏览器控件中导航 分别。此活动是在“后台工作控件的 do”中完成的 工作功能”。第一次加载此窗口窗体时,一切 一切顺利,我有一个离开这个表格的功能(它将去 返回主窗体)。当我再次导航到此表单时,我有 在 Web 浏览器控件中加载文档时发生以下异常。
“消息过滤器表明应用程序正忙。(HRESULT 异常:0x8001010A (RPC_E_SERVERCALL_RETRYLATER))”
Thanks for your time, i am creating an application which will take 5
URL's from database and then navigate each in 5 browser-controls
respectively. This activity is done in "background worker control's do
work function". On first time load of this window form, everything
goes fine, i am having a function of leave this form (which will go
back to main form). when i again navigate to this form, i am having
following exception on loading document in web-browser control.
"The message filter indicated that the application is busy. (Exception from HRESULT: 0x8001010A (RPC_E_SERVERCALL_RETRYLATER))"
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
来自 http://msdn.microsoft.com/en- us/library/system.componentmodel.backgroundworker.dowork.aspx
您必须小心,不要在 DoWork 事件处理程序中操作任何用户界面对象。相反,通过BackgroundWorker 事件与用户界面进行通信。
From http://msdn.microsoft.com/en-us/library/system.componentmodel.backgroundworker.dowork.aspx
You must be careful not to manipulate any user-interface objects in your DoWork event handler. Instead, communicate to the user interface through the BackgroundWorker events.
我在backgroundworker_DoWork函数中打开每个web浏览器控件中的每个文档,解决我的问题是通过从backgroundWorker_DoWork中的数据库加载数据并在backgroundWorker_Completed函数中加载每个web浏览器控件中的文档。
I was opening each document in each web-browser-control in the backgroundworker_DoWork function, what solved my problem is by loading data from database in backgroundWorker_DoWork and loading documents in each web-browser-control in backgroundWorker_Completed function.