我正在尝试使用WatIN IE自动化网站。 由于网站在几次请求后禁止了ip。因此,当ip被禁止时,我设置了一个bool ipbanned = true。在那种情况下,我希望改变IP。 SetProxy方法使用端口成功更改ip地址。 但是根据下一个要求我会看到这个屏幕: -
注意: - 第一个红色条带显示IP地址,第二个红色条带显示服务器名称
如何在程序中设置此对话框中的用户名和密码,以便用户无法看到此框并且设置正确
以下是我正在使用的代码段: -
private void Start_Thread()
{
Thread pop = new Thread(populate);
pop.SetApartmentState(ApartmentState.STA);
pop.Start();
}
bool ipbanned=false;
private void populate()
{
if(ipbanned)
SetProxy(proxies[0]);
///I wish to handle the dialog box here.
WatiN.Core.Settings.MakeNewIeInstanceVisible = false;
WatiN.Core.Settings.Instance.AutoMoveMousePointerToTopLeft = false;
using (IE browser = new IE(URLs.mainurl))
{
///code
}
}
private void SetProxy(string proxy)
{
//code which successfully changes the ip address.
}
任何帮助都将深表感谢。 谢谢:)
答案 0 :(得分:1)
您必须使用 AddDialogHandler 来处理对话框。
您可以参考SO问题watin-logondialoghandlers-not-working-correctly-in-windows-7获取代码示例