WebBrowser上载文件-选择文件对话框问题
本文关键字:文件 对话框 问题 选择 上载 WebBrowser | 更新日期: 2023-09-27 17:57:35
我有一个win表单应用程序,我正在该应用程序中打开一个webBrowser。我必须使用浏览器,因为我正在自动化网站的实际浏览器UI流。我在上传文件时遇到了一个障碍。输入元素类型是"file",正如我所发现的,用程序填充它的唯一方法是点击浏览按钮,从"选择要上传的文件"对话框中选择实际的文件。
我在这个话题上找到了有用的答案,比如:上传文件不起作用-需要帮助
我尝试使用上面的解决方案,但我的代码没有超出file.InvokeMember("Click");
。因此,基本上,一旦"选择要上传的文件"对话框打开,代码就会暂停并等待对话框关闭。我不知道如何从这里开始。非常感谢在这方面的帮助,也许还有关于处理<input type="file"..."
元素的更好建议。
我希望下面的答案能对你有所帮助。将计时器控件添加到表单中。在将单击事件调用到上载文件对话框之前,请启动计时器。
timer1.Interval = 3000;
timer1.Start();
file.InvokeMember("Click");
在计时器勾选事件中添加以下编码
private void timer1_Tick(object sender, EventArgs e)
{
try
{
timer1.Stop();
SendKeys.SendWait("D:''testing.txt"); // enter the file path, which suppose to upload.
SendKeys.SendWait("{TAB 2}");
SendKeys.SendWait("{ENTER}");
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}