C# 通过用户名和密码获取共享文件夹访问权限

时间:2021-03-09 15:27:31

局域网共享文件夹需要用户名和密码才能访问,通过程序怎样才能获得文件夹访问权限呢?

这里主要利用了DOS命令中的“NET USE”命令来实现。

public static void GetAccessControl(string path,string user,string pwd)
{       
      Process p = new Process();
            
      p.StartInfo.FileName = System.Environment.GetEnvironmentVariable("ComSpec");
            
      p.StartInfo.UseShellExecute = false;
      p.StartInfo.RedirectStandardInput = true;
      p.StartInfo.RedirectStandardOutput = true;
      p.StartInfo.CreateNoWindow = true;

      p.Start();           
      p.StandardInput.WriteLine(@"Net Use {0} /del", path); //必须先删除,否则报错
      p.StandardInput.WriteLine(@"Net Use {0} ""{1}"" /user:{2}", path, pwd, user);
      p.StandardInput.WriteLine("exit"); //如果不加这句WaitForExit会卡住

      p.WaitForExit();
      p.Close();
 }

 

如果大家还有更好的方法,欢迎指教哦