2013-11-28 57 views
2

我有一个在C#4.0中开发的Windows应用程序,我在其中使用了多个WebBrowser控件,其中所有WebBrowsers加载相同的网站URL并执行某种搜索,方法是设置搜索值文本框并单击搜索按钮。运行多个彼此独立的WebBrowsers

所有WebBrowsers都假设一次搜索不同的关键字。它们在每个单独运行时都能正确工作,但是当它们一起运行时,它们都在搜索相同的关键字而不是不同的关键字!关键字不是第一个/最后一个;这是一个随机选择的。我已经在DocumentCompleted内部实现了代码。

我相信网站本身就是识别先搜索的关键字之一并将其设置在所有WebBrowser窗口中。有没有办法让所有这些WebBrowser孤立地并行运行,以便每个“会话”不会影响另一个?

回答

1

WebBrowser控件使用URLMon Windows库,它基于每个进程共享HTTP会话(更多信息here)。因此,WebBrowser控件的所有实例都在相同的会话上运行。

据我所知,使WebBrowser成为可能的唯一方法是使用多进程架构,每个WebBrowser生活在它自己的进程中。

相关问题