将文件复制到远程服务器会导致配置错误?

时间:2018-08-02 06:47:58

标签: asp.net web-applications server

在我的程序中,我试图将文件从本地文件夹复制到远程服务器上的文件夹。但是我得到了错误:

配置错误 说明:在处理服务于此请求所需的配置文件期间发生错误。请查看下面的特定错误详细信息,并适当修改您的配置文件。

解析器错误消息:无法根据配置文件中指定的凭据创建Windows用户令牌。操作系统错误'用户名或密码不正确。 '

aspx.cs代码:

 [System.Web.Services.WebMethod(EnableSession = true)]
    public static void MoveImages(string imageData)
    {
        string fileName = "";
        // get computer name

        string clientMachineName;
        clientMachineName = Dns.GetHostName();
        string computerName = clientMachineName.Split('-').First();

        // get download location

        string pathUser = Environment.GetFolderPath(Environment.SpecialFolder.UserProfile);
        string sourcePath = Path.Combine(pathUser, "Downloads");


        string pathstring = @"\\servername\shared folder";



        string cls = HttpContext.Current.Session["class"].ToString().Trim();
        string sub = HttpContext.Current.Session["subject"].ToString().Trim();
        string targetPath = System.IO.Path.Combine(pathstring, cls);
        string pathstring1 = targetPath;
        string sourceFile = System.IO.Path.Combine(sourcePath, fileName);
        string destFile = System.IO.Path.Combine(pathstring1, sub);


        if (System.IO.Directory.Exists(sourcePath))
        {

            string[] jpg = System.IO.Directory.GetFiles(sourcePath, "*.jpg");
            string[] png = System.IO.Directory.GetFiles(sourcePath, "*.png");
            string[] files = jpg.Concat(png).ToArray();

            // Copy the files and overwrite destination files if they already exist.
            foreach (string s in files)
            {
                // Use static Path methods to extract only the file name from the path.
                if (s.Length > 0)
                {
                    fileName = System.IO.Path.GetFileName(s);
                    sourceFile = Path.Combine(sourcePath, fileName);

                    destFile = System.IO.Path.Combine(destFile, fileName);
                    if (File.Exists(destFile))
                    {
                        File.Delete(sourceFile);

                    }
                    else
                    {


                       File.Copy(sourceFile, destFile);

                    }
                }
            }
         }

web.config:

    <system.web>

    <authentication mode="Windows"/>
  <identity impersonate="true" userName="servrdomain\ADMINISTRATOR" 
   password="pswrd"/>
    <customErrors mode="RemoteOnly" defaultRedirect="someustompage.htm"/>
    </system.web>

我在做什么错了?

仅供参考: 远程服务器上共享文件夹的路径类似于: E:\ parentfolder \ sharedfolder

在共享文件夹的属性中,网络路径指定为:\\ servername \ sharedfolder

任何人都可以说出路径字符串的正确格式是什么: @“ \服务器名\共享文件夹”或@“ \服务器名\ E $ \ parentfolder \共享文件夹”?

共享文件配置与所有人共享,并授予所有权限。

0 个答案:

没有答案