2011-11-07 63 views
21

所以,我已經建立了一個自動更新程序,以我的程序「例外」,而使用C#ASP.NET

了在這裏運行的代碼是:

new WebClient().DownloadFile("XXXX", checkingfolder.SelectedPath); 

的XXX是我的web服務器運行在一個Verio的VPS服務器,與最新的IIS和一切

當用戶點擊下載按鈕,它說:

'An exception occurred during a WebClient request. 

事情是,我甚至不知道爲什麼 - 我只是在嘗試捕捉。

任何人在這裏有任何想法,爲什麼發生這種情況?

感謝您給我的任何幫助,您不知道您有多少幫助我 - 再次感謝!

+2

日誌的*細節*異常的那就是d顯示正在發生的事情。 –

+0

這是日誌.. – user1032254

+0

我*非常*懷疑包括「停止」WebClient請求的例外的細節。您確定沒有吞下WebClient異常的代碼,只是記錄該消息而沒有對異常做任何事情? –

回答

41

我可以重現這個如果我指定,如似乎是在你的榜樣,一個文件夾名稱,而不是文件名目的地的情況。改爲提供文件名稱。

另外;如果我看InnerException,它告訴我,這個問題涉及到的文件路徑:

using(var client = new WebClient()) 
{ 
    try 
    { 
     client.DownloadFile(
      "http://stackoverflow.com/questions/8033619/an-exception-occurred-durning-a-webclient-request-c-sharp-asp-net/8033687#8033687", 
      @"j:\MyPath"); 
    } 
    catch (Exception ex) 
    { 
     while (ex != null) 
     { 
      Console.WriteLine(ex.Message); 
      ex = ex.InnerException; 
     } 
    } 
} 

其中給出:

An exception occurred during a WebClient request. 
Access to the path 'j:\MyPath' is denied. 

如果我將其更改爲文件,它工作正常:

client.DownloadFile(
    "http://stackoverflow.com/questions/8033619/an-exception-occurred-durning-a-webclient-request-c-sharp-asp-net/8033687#8033687", 
    @"j:\MyPath\a.html"); 
+0

非常感謝!我正在尋找。希望它有效:) –

3

當其他類或進程正在訪問你剛剛下載

的文件有時會出現此錯誤
2

它給出例外,如果目錄路徑不存在。

例如路徑爲@「。J:\文件夾\子文件夾\ 123.pdf不存在,它會拋出異常

2

我就遇到了這個錯誤,當我試圖下載一個文件,其中所得的下載文件的路徑將是長於一些任意限制

改變下載的文件的路徑名是250個字符後,問題消失