gpt4 book ai didi

c# - 使用 BackGroundWorker 运行 WatiN 打开 IE 浏览器

转载 作者:行者123 更新时间:2023-11-28 20:42:43 26 4
gpt4 key购买 nike

我只是使用 WatIn,没有使用任何其他测试框架,例如 NUnit 或其他。

当我尝试运行 BackGroundWorker打开IE浏览器,出现错误

An exception of type 'System.Threading.ThreadStateException' occurred in WatiN.Core.dll but was not handled in user code

Additional information: The CurrentThread needs to have it's ApartmentState set to ApartmentState.STA to be able to automate Internet Explorer.

我在 stackoverflow 上阅读了一些线程,但是所有测试都因相同的错误而失败。

有人可以帮助我吗?

代码

BackgroundWorker _worker = new BackgroundWorker();
_worker.WorkerReportsProgress = true;
_worker.ProgressChanged += new ProgressChangedEventHandler(_worker_ProgressChanged);
_worker.RunWorkerCompleted += new RunWorkerCompletedEventHandler(_worker_RunWorkerCompleted);
_worker.DoWork += (s, e2) =>
{
Loga(usuario, senha);
};
_worker.RunWorkerAsync();

protected void Loga(string usuario, string senha)
{
using (var browser = new IE("my page here"))
{
//Code here
}
}

最佳答案

您不能使用 Watin 启动多个线程。但你可以触发多个 IE 实例:

IE browser1 = new IE();
IE browser2 = new IE();

browser1.GoTo("http://www.google.com");
browser2.GoTo("http://www.yahoo.com");

关于c# - 使用 BackGroundWorker 运行 WatiN 打开 IE 浏览器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26319780/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com