• C# Winform 拷贝共享文件夹文件包含输入共享用户及密码


     string filePath = Application.StartupPath;
                if (!Directory.Exists(filePath))
                {
                    Directory.CreateDirectory(filePath);
                }
                try
                {
                    CopyDirectory("\\\\192.168.0.23\\printUpdateFile", filePath);
                    MessageBox.Show("更新成功!");
                    Application.Exit();
                }
                catch (Exception)
                {
                    MessageBox.Show("更新失败!");
                    Application.Exit();
                }
               
    
     private void CopyDirectory(string srcdir, string desdir)
            {
                string[] filenames = Directory.GetFileSystemEntries(srcdir);
                foreach (string file in filenames)// 遍历所有的文件和目录
                {
                    if (Directory.Exists(file))// 先当作目录处理如果存在这个目录就递归Copy该目录下面的文件
                    {
                        string currentdir = desdir + "\\" + file.Substring(file.LastIndexOf("\\") + 1);
                        if (!Directory.Exists(currentdir))
                        {
                            Directory.CreateDirectory(currentdir);
                        }
                        CopyDirectory(file, desdir);
                    }
                    else // 否则直接copy文件
                    {
                        string srcfileName = file.Substring(file.LastIndexOf("\\") + 1);
                        srcfileName = desdir + "\\" + srcfileName;
                        if (!Directory.Exists(desdir))
                        {
                            Directory.CreateDirectory(desdir);
                        }
                        File.Copy(file, srcfileName, true);
                    }
                }
            }

    如果访问共享文件夹需要输入验证添加下面代码

    方法1:
      ManagementScope   ms   =   new   ManagementScope(@"\\<IP>");  
      ConnectionOptions   conn   =   new   ConnectionOptions();  
      conn.Username   =   "";  
      conn.Password   =   "";  
      ms.Options   =   conn;  
      ms.Connect();
    方法2:
    System.Diagnostics.Process.Start("net.exe","use   \\\\"+   strServer   +"     /user:\""+   strUserName   +"\"   \""+   strUserPD   +"\"");  
      然后就可以随时访问这台机器上的共享文件夹了  
      string   strPath   =   "\\\\10.1.12.3\\MS\\";  
      ......
  • 相关阅读:
    小白详细解析C#反射特性实例
    几种快速排序算法实现
    Redis中算法之——Raft算法
    redis中算法之——MurmurHash2算法
    关于typedef的用法
    gdb调试工具常用命令
    gcc 常用命令
    Linux 远程登录ssh服务器
    Linux 构建ftp服务器
    知乎话题结构以及相关内容抓取二(Redis存储)
  • 原文地址:https://www.cnblogs.com/junjie94wan/p/3046641.html
Copyright © 2020-2023  润新知