Automate WebBrowser.ShowSaveAsDialog() 或其他方法
本文关键字:其他 方法 WebBrowser ShowSaveAsDialog Automate | 更新日期: 2023-09-27 18:31:07
基本上我不想保存加载在WebBrowser控件中的图像。目前我可以让它工作的唯一方法是显示另存为对话框。
有没有办法通过路径并使其自我保存?(隐藏我要求显示的对话框!
有没有其他方法可以保存图像?我似乎无法让文档流工作。我也尝试过webclient.filedownload(...)
但收到错误 302("(302) 找到重定向。
DownloadFileAsync
没有给出错误,但有一个空的 jpeg 文件?
文件始终是 JPEG,但并不总是位于同一位置。
你应该使用 HttpWebRequest。
它具有自动跟随 302 的功能。
var myHttpWebRequest = (HttpWebRequest)WebRequest.Create("http://www.contoso.com");
//increase this number if there are more then one redirects.
myHttpWebRequest.MaximumAutomaticRedirections = 1;
myHttpWebRequest.AllowAutoRedirect = true;
var myHttpWebResponse = (HttpWebResponse)myHttpWebRequest.GetResponse();
var buff = new byte[myHttpWebResponse.ContentLength];
// here you specify the path to the file. The path in this example is : image.jpg
// if you want to store it in the application root use:
// AppDomain.CurrentDomain.BaseDirectory + "''image.jpg"
using (var sw = new BinaryWriter(File.Open("c:''image.jpg", FileMode.OpenOrCreate)))
{
using (var br = new BinaryReader (myHttpWebResponse.GetResponseStream ()))
{
br.Read(buff, 0, (int)myHttpWebResponse.ContentLength);
sw.Write(buff);
}
}