局域网共享文件夹需要用户名和密码才能访问,通过程序怎样才能获得文件夹访问权限呢?
这里主要利用了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(); }
如果大家还有更好的方法,欢迎指教哦