gpt4 book ai didi

c# - 等待 : Textfields are not getting automated while running the code as

转载 作者:行者123 更新时间:2023-11-28 20:04:10 25 4
gpt4 key购买 nike

WatiN.Core.IE window = new WatiN.Core.IE();

            // Frames



// Model

TextField txt_txtName = window.TextField(Find.ByName("txtName"));

TextField txt_txtPassword = window.TextField(Find.ByName("txtPassword"));

Button btn_btnLogin = window.Button(Find.ByName("btnLogin"));



// Code

window.GoTo("http://134.554.444.55/asdfgfghh/");

txt_txtName.TypeText("fghfjghm");

txt_txtPassword.TypeText("gfhgjfgh");

btn_btnLogin.Click();

}

只有window.GoTo("http://134.554.444.55/asdfgfghh/");代码工作,其余的什么都不做,

当我使用 catch block 时,它会抛出异常

找不到 INPUT(隐藏)或 INPUT(密码)或 INPUT(文本)或 INPUT(文本区域)或 TEXTAREA 元素标签匹配条件:属性“名称”等于“http://134.554.444.55/asdfgfghh/(内部异常:无法将类型为“System.__ComObject”的 COM 对象转换为接口(interface)类型“mshtml.IHTMLElement”。此操作失败,因为 COM 组件上的 QueryInterface 调用用于 IID 为“{3050F1FF-98B5-11CF”的接口(interface)-BB82-00AA00BDCE0B}' 由于以下错误而失败:加载类型库/DLL 时出错。(HRESULT 异常:0x80029C4A (TYPE_E_CANTLOADLIBRARY))。)

最佳答案

我的答案与 Pavlo 的非常相似,但我必须建议使用 Page这是对 Model 的内置支持正如 Pavlo 所描述的那样。

创建一个类MyPage

public class MyPage : WatiN.Core.Page
{
public TextField NameField
{
get { return Document.TextField(Find.ByName("txtName")); }
}

public TextField PasswordField
{
get { return Document.TextField(Find.ByName("txtPassword")); }
}

public TextField LoginButton
{
get { return Document.Button(Find.ByName("btnLogin")); }
}
}

然后你可以调用.Page<MyClass>方法。

using(var browser = new IE("http://134.554.444.55/asdfgfghh/"))
{
var page = browser.Page<MyClass>();
page.NameField.TypeText("name field");
page.PasswordField.TypeText("password field");
page.LoginButton.Click();
}

关于c# - 等待 : Textfields are not getting automated while running the code as,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7524862/

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