So, I have built an auto update program to my program.
The code that is running in here is:
new WebClient().DownloadFile(\"XXXX\", checkingfolder.Select
If Directory does not exist,this error message comes as 'An exception occurred during a WebClient request" Because Web Client Does not find the Folder to store downloaded files.
Hope it Helps-:)
Beside other answers, beware that the same WebException might also occur if the client process does not have needed permission to create output file.
I would suggest you to take the following strategy:
Hope it helps :-)
it gives exception, if directory to path does not exist.
for example path is @"j:\Folder\SubFolder\123.pdf and SubFolder does not exist ,it will throw exception.
I can reproduce this if I specify, as seems to be the case in your example, a folder name rather than a file name the destination. Supply a file name instead.
As an aside; if I look at the InnerException
, it tells me that the problem relates to the file path:
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;
}
}
}
Which gives:
An exception occurred during a WebClient request.
Access to the path 'j:\MyPath' is denied.
If I change it to a file, it works fine:
client.DownloadFile(
"http://stackoverflow.com/questions/8033619/an-exception-occurred-durning-a-webclient-request-c-sharp-asp-net/8033687#8033687",
@"j:\MyPath\a.html");
I ran into this error when I was trying to download a file, where the resulting downloaded file path would have been longer than some arbitrary limit
After changing the downloaded file's path name to be 250 characters long, the problem went away
Sometimes this error can occur when another class or process is accessing the file you've just downloaded