每当我调用 FileUpload.Set 时,IE8 都会打开文件浏览器窗口,然后就坐在那里而不输入任何文本。这是在 Windows XP 上,它曾经工作得很好,直到我从 Ie7 升级到 IE8。还有其他人遇到这个吗?
问问题
1758 次
3 回答
1
原来 WatiN 源代码中的这一行是问题所在: if (Process.GetProcessById(window.ProcessID).ProcessName != "iexplore") return;
出于某种原因,这台机器上的 iexplore 进程全部大写显示为“IEXPLORE”。在进程名称中添加 .ToLower() 可以解决问题。
编辑:看起来这个错误已经被报告了。
于 2009-06-22T00:59:16.197 回答
0
由于 WatiN 查找对话框的方式(按样式编号),IE8 在低于 2.0 的版本中会被破坏是可以理解的。您可能想尝试使用 2.0 测试版。
或者,您可以在 FileUpload DialogHandler 上查看样式编号并添加 IE7 和 8(96CC20C4 和 96CC02C4)的样式编号。
于 2009-06-21T18:38:48.610 回答
0
我想发布此问题的更新,因为它在 Win7 操作系统中再次出现。
如果您在最新的 WatiN 版本中遇到同样的问题,您可以覆盖FileUploadDialogHandler类中的函数CanHandleDialog:
public override bool CanHandleDialog(Window window, System.IntPtr mainWindowHwnd)
{
return true;
}
这不是一个干净的解决方案,但它简单且有效。
于 2010-12-02T07:18:48.497 回答