我使用WatiN从多个网站自动进行文件传输(EDI交易),不幸的是FTP或任何更自动化的东西都不是一种选择。对于下载,我使用这个例子的变化:可以在不需要关注的情况下下载文件吗?
FileDownloadHandler download = new FileDownloadHandler(fullFilename);
using (new UseDialogOnce(ie.DialogWatcher, download))
{
lnkFile.ClickNoWait();
download.WaitUntilFileDownloadDialogIsHandled(15);
download.WaitUntilDownloadCompleted(150);
}
这工作正常,唯一的问题是,它需要重点。有几十个文件需要下载,这可能需要一段时间才能完成,这并不罕见。我在远程会话中运行它,所以我的机器无法使用,但如果有任何方法可以消除对焦需求,它会很方便。
你能解释一下lnkFile应该是什么吗?谢谢! – buzzzzjay 2012-03-15 19:42:08
lnkFile是一个链接,在这种情况下,需要单击以启动文件下载。假设你的WatiN.Core.IE实例被调用,即你可以实例化lnkFile为:lnkFile = ie.Link(Find.ById(“download”)); – 2012-03-15 20:30:33
我建立了一个链接文件,正如你所建议的,但它仍然不会在IE9中下载该文件。任何其他想法?我应该在链接文件中使用除“下载”以外的内容吗?谢谢! – buzzzzjay 2012-03-15 20:34:52