我正在使用这里的教程:http://www.devtoolshed.com/content/c-download-file-progress-bar并且我在以下代码行中收到了UnauthorizedAccessException
using (Stream streamLocal = new FileStream(sPathToWriteFilesTo,
FileMode.Create, FileAccess.Write, FileShare.None))
{
//...
}
也许这是我试图阅读的文件的权限?它只是一个使用FTP请求的简单文本文件(而不是教程所示的HTTP)。
string sFtpToReadFilesFrom = "ftp://<user>:<pass>@mysite.tk/updates/App_Data/output_log.txt";
string sPathToWriteFilesTo = Application.StartupPath + "\\App_Data";
Uri url = new Uri(sFtpToReadFilesFrom);
FtpWebRequest request = (FtpWebRequest)FtpWebRequest.Create(url);
request.Timeout = 10000;
request.ReadWriteTimeout = 10000;
request.Method = WebRequestMethods.Ftp.GetFileSize;
FtpWebResponse response = (FtpWebResponse)request.GetResponse();
response.Close();
如果有人看到FtpWebRequest立即出现红旗,请告诉我。我主要关注UnauthorizedAccessException以及如何解决这个问题。
答案 0 :(得分:0)
如果您使用的是Win10,则此行可能会导致错误:
string sPathToWriteFilesTo = Application.StartupPath + "\\App_Data";
由于更新之一,您不能将文件从网络位置直接复制到某些文件夹中。尝试直接从C盘下载文件夹或某些文件夹(例如c:\TMP
)。