File.Copy访问路径被拒绝

时间:2016-12-15 11:16:29

标签: c# winforms

我正在尝试将特定目录中的文件从我的电脑复制到远程电脑(服务器) 如下所示,但我收到一条错误消息 access to path denied

我试图将文件复制到我的本地电脑而不是远程电脑,并提交相同的原因

我还尝试以管理员格式exe foleder运行Debug,但我收到了同样的错误消息

现在另一个问题远程电脑没有密码或用户名 我可以使用相同的方式,但使用密码验证?

private void PatchUpdates()
{
    try
    {
        string[] array = Directory.GetFiles(Sfilespath, "*.txt");

        foreach (string name in array)
        {
            MessageBox.Show(Path.GetFileNameWithoutExtension(name));
            MessageBox.Show(@"D:\" + Path.GetFileNameWithoutExtension(name));
            File.Copy(Sfilespath, @"D:\" + Path.GetFileNameWithoutExtension(name), true);
        //File.Copy(SBankfilespath, "\\\\192.168.1.28\\Files");


        }
    }
    catch (Exception ex)
    {
        MessageBox.Show(ex.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
    }
}

2 个答案:

答案 0 :(得分:2)

问题可能是复制命令的来源,而不是目标。尝试传递找到的文件名,而不是您要查找文件的路径:File.Copy(name, @"D:\" + Path.GetFileNameWithoutExtension(name), true);

您可以在复制文件之前使用net use \\\\192.168.1.28\\Files /user:username password运行Process.Start。或者查看Accessing a Shared File (UNC) From a Remote, Non-Trusted Domain With Credentials以获得正确的解决方案。

答案 1 :(得分:0)

从一个网络文件夹复制到另一个网络文件夹时,出现“访问被拒绝”的情况。 我通过为相关的应用程序池定义了一个特定的身份(可以访问该路径的用户)解决了该问题。