您好,
一旦我得到这个代码来处理任何错误,它就下载了文件
现在它给了我许可错误,
我没有得到窗口应显示的acesscontrol弹出窗口
的反正,
如何获取此代码以下载我的文件?
WebClient request = new WebClient();
request.Credentials = new NetworkCredential(txtFTPuser.Text, txtFTPpassword.Text);
byte[] fileData = request.DownloadData(fullDownloaPath);//dnoces.dreamhost.com
FileSecurity security = File.GetAccessControl(downloadTo);
FileSystemAccessRule rule = new FileSystemAccessRule(@"BUILTIN\Users",
FileSystemRights.FullControl, AccessControlType.Allow);
File.SetAccessControl(downloadTo, security);
try
{
FileStream f = File.Create(downloadTo/*+@"\"+file*/);
f.Write(fileData, 0, fileData.Length);
f.Close();
MessageBox.Show("Completed!");
}
catch(Exception e)
{
MessageBox.Show(e.Message);
}
答案 0 :(得分:1)
'downloadTo'变量中有什么内容?我对你的代码感到有些困惑。由于您可以执行GetAccessControl(),我认为它必须包含您的文件夹。如果它是您的文件,它将失败,因为它还不存在。
然后您的代码继续
FileStream f = File.Create(downloadTo/*+@"\"+file*/);
因为你写了/ * * /你的'file'变量被注释,这让我假设downloadTo而不是必须包含完整的路径,包括文件名。
您可以尝试对目标文件进行硬编码吗?
(例如FileStream f = File.Create(@“c:\\ users \\ your user \\ myfile.bin”);
据我解释你的代码,你试图在不指定文件名的情况下写入文件夹。