Webクライアントdownloadfileasyncが動作しません
-
21-09-2019 - |
質問
私は、WPFアプリケーションを持って、私は、ファイルをダウンロードしたい。
私はSystem.Netを使用しています。そして私は、次のコードを持っています:
WebClient ww = new WebClient();
ww.DownloadFileAsync(
new Uri("http://www.sinvise.net/tester/1.jpg"),
AppDomain.CurrentDomain.BaseDirectory + "\\1.jpg");
問題があり、それはファイルをダウンロードしない、それだけ0キロバイトのファイルとして表示してダウンロードしていないということです、私は、問題が何であるか缶誰の助けを知らないのか?
解決 3
答えが見つかり、私はIPアドレスを使用している場合DownloadFileチェックDNSは、最初は何も前に、それはチェックを行わないことを読んで、すぐに動作します。
このしかし上のeveryonesの助けてくれてありがとう。
他のヒント
どのように DownloadFileCompleted のリスニングについてイベントや AsyncCompletedEventArgs.Error のプロパティのインクルードをチェックしますイベント転送ハンドラに?
public static void DownLoadFileInBackground(string address)
{
WebClient client = new WebClient();
Uri uri = new Uri(address);
client.DownloadFileCompleted += (sender,e)=>
{
//inspect e here:
//e.Error
};
client.DownloadProgressChanged += (sender,e)=>
{
//e.ProgressPercentage
};
client.DownloadFileAsync(uri, "blabla");
}
一部のWebサイトは、要求内の特定のヘッダを持っていけない要求をブロック。 特定の一つには、私が過去に発見したが、「ユーザーエージェント」ヘッダーで、ブラウザ要求からヘッダをコピーしようとすると、あなたのWebクライアント
にそれを追加WebClient.Headers.Add("User-Agent", "Mozilla/4.0 (compatible; MSIE 8.0)");
私はあなたが同じファイルの既存および閉じていないWebRequestクラスを持っているときDownloadFileAsync
方法は、(私はDownloadFile
のために話すことができない)動作しないことを追加したいと思います。少なくともそれは私の経験です。それはそれは、フレームワークまたはサーバーによって許可されていないことがあります。
所属していません StackOverflow