4

我有 Visual Studio 11(Windows 8 开发人员)我创建了一个下载器文件:

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);

但它不工作开始!如果我更改“E:\Temp”中的文件夹“C:\Windows\Temp”,则下载开始。驱动器 C:\ 不起作用,为什么?可以保存在临时文件夹中还是您有其他想法?

4

5 回答 5

4

还没有玩过 Widnows 8,这只是推测,但作为标准特权用户,您可能没有 C:\ 上该位置的写入权限。

于 2011-09-14T21:21:44.597 回答
3

试试这个:

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

它有效吗?

于 2011-09-14T21:21:14.363 回答
2

改用环境变量

Environment.GetFolderPath(Environment.LocalApplicationData)
于 2011-09-14T21:19:33.443 回答
2

您可以使用临时文件夹路径:

string tempPath = System.IO.Path.GetTempPath();
于 2011-09-14T21:21:37.993 回答
0

使用以下方法之一:

于 2011-09-14T21:23:09.330 回答