0

我正在使用这里的教程: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 以及如何解决它。

4

1 回答 1

0

如果您使用的是 Win10,此行可能会导致错误:

string sPathToWriteFilesTo = Application.StartupPath + "\\App_Data";

由于其中一项更新,您无法将文件从网络位置直接复制到某些文件夹中。尝试下载文件夹或直接在 C 驱动器上的一些文件夹(例如c:\TMP)。

于 2018-07-24T14:39:44.220 回答