2011-01-19 14 views
1

Winformsアプリケーションでは、サイトにログインしているWebブラウザコントロールがあります。 これで、プログラムでそのサイトにログインしたときにしかダウンロードできる画像をダウンロードしたいと思います。c#winforms webbrowser control - イメージのダウンロード方法?

どのように私のWebブラウザコントロールに画像をダウンロードするように指示しますか? http://www.example.com/image.jpg、それをどこかに保存しますか?

答えて

3

ファイルをハードドライブに直接保存しない場合は、ストリームにダウンロードできます。例えばあなたは、あなたのハードドライブに保存したい場合は

WebClient wc = new WebClient(); 
byte[] bytes = wc.DownloadData("http://www.example.com/image.jpg"); 
Bitmap b = new Bitmap(new MemoryStream(bytes)); 

、あなたはBitmap.Save()メソッドを呼び出すことができます。例えば

b.Save("bitmap.jpg"); 
0

私はWebブラウザーを使用してサイレントモードで行うことはできないと思います。最後にIEのインスタンスであることを忘れないでください。あなたにできることは次のとおりです。

WebBrowser wb = new WebBrowseR(); 
wb.Navigate("ImageURL"); 
wb.ShowSaveAsDialog(); 

より良い解決策は、Webクライアント

を使用して画像を取得することです:画像を保存するために、ユーザーに名前を付けて保存]ダイアログが表示されますIMAGEURL、[起動ShowSaveAsDialog()に移動します
System.Net.WebClient wc = new System.Net.WebClient(); 
wc.Credentials = new System.Net.NetworkCredential("username", "password"); //Authenticates to the website - Call it only if the image url needs authentication first 
wc.DownloadFile("imageURL", "downloadedImage.jpg"); //Downloads the imageURL to the local file downloadedImage.jpg 
関連する問題