Создать папку o Сохранить в Temp - PullRequest
4 голосов
/ 15 сентября 2011

У меня Visual Studio 11 (Windows 8 Developer), я создал файл загрузчика:

string sUrlToReadFileFrom = "http://mysite/1.mp3";
int iLastIndex = sUrlToReadFileFrom.LastIndexOf('/');
string sDownloadFileName = sUrlToReadFileFrom.Substring(iLastIndex + 1, (sUrlToReadFileFrom.Length - iLastIndex - 1));
client.DownloadProgressChanged += new DownloadProgressChangedEventHandler(client_DownloadProgressChanged);
client.DownloadFileCompleted += new AsyncCompletedEventHandler(client_DownloadFileCompleted);
client.DownloadFileAsync(new Uri("http://mysite/1.mp3"), "C:\\Windows\\Temp" + "\\" + sDownloadFileName);

Но это не сработает! Если я поменяю папку «C: \ Windows \ Temp» на «E: \ Temp», начнется загрузка. Диск C: \ не работает, почему? Можно сохранить во временную папку или у вас есть другая идея?

Ответы [ 5 ]

4 голосов
/ 15 сентября 2011

Пока не играл с Widnows 8, это всего лишь предположение, но, скорее всего, у вас нет прав на запись в это место на C: \ как пользователь с обычными привилегиями.

3 голосов
/ 15 сентября 2011

попробуйте с этим:

string tempPath = System.IO.Path.GetTempPath();

это работает?

2 голосов
/ 15 сентября 2011

Вы можете использовать путь к временной папке:

string tempPath = System.IO.Path.GetTempPath();
2 голосов
/ 15 сентября 2011

Вместо этого используйте переменную среды

Environment.GetFolderPath(Environment.LocalApplicationData)
0 голосов
/ 15 сентября 2011

Используйте одно из следующего:

...