【发布时间】:2011-04-01 21:51:20
【问题描述】:
我使用 WatiN 自动向/从多个网站传输文件(EDI 交易),不幸的是,FTP 或任何更自动化的工具都不是一个选项。对于下载,我使用此示例的变体:
FileDownloadHandler download = new FileDownloadHandler(fullFilename);
using (new UseDialogOnce(ie.DialogWatcher, download))
{
lnkFile.ClickNoWait();
download.WaitUntilFileDownloadDialogIsHandled(15);
download.WaitUntilDownloadCompleted(150);
}
这很好用,唯一的问题是它需要焦点。下载几十个文件可能需要一段时间才能完成的情况并不少见。我在远程会话中运行它,因此我的机器不会无法使用,但如果有任何方法可以消除对焦点的需求,它会很方便。
【问题讨论】:
-
你能解释一下 lnkFile 应该是什么吗?谢谢!
-
lnkFile 是一个链接,在这种情况下需要单击以启动文件下载。假设您的 WatiN.Core.IE 实例被称为 ie,您可以将 lnkFile 实例化为: lnkFile = ie.Link(Find.ById("download"));
-
我已经按照您的建议设置了一个链接文件,但它仍然无法在 IE9 中下载该文件。还有其他想法吗?我应该在我的链接文件中使用“下载”以外的东西吗?谢谢!
-
我有一段时间没有使用 WatiN,但我看到邮件列表电子邮件说文件下载在 IE9 中无法正常工作。
标签: c# automation focus download watin