net不是内部或外部命令,也不是可运行程序或批处理文件

在c#程序中用net use访问共享文件夹,错误信息:net不是内部或外部命令,也不是可运行程序或批处理文件
将代码生成的net use命令复制出来,直接在cmd中执行,命令可以执行没有问题

 public bool Connect(string remoteHost, string userName, string passWord)
        {
            bool Flag = true;
            Process proc = new Process();
            proc.StartInfo.FileName = "cmd.exe";
            proc.StartInfo.UseShellExecute = false;
            proc.StartInfo.RedirectStandardInput = true;
            proc.StartInfo.RedirectStandardOutput = true;
            proc.StartInfo.RedirectStandardError = true;
            proc.StartInfo.CreateNoWindow = true;
            try
            {
                proc.Start();
                string command = @" net use * /del /y ";
                proc.StandardInput.WriteLine(command);
                command = @"net use  \\" + remoteHost + "  " + passWord + "  " + "  /user:" + userName + ">NUL";
                proc.StandardInput.WriteLine(command);
                command = "exit";
                proc.StandardInput.WriteLine(command);
                while (proc.HasExited == false)
                {
                    proc.WaitForExit(1000);
                }
                string errormsg = proc.StandardError.ReadToEnd();//这里返回值是两遍net不是内部或外部命令
                if (errormsg != "")
                    Flag = false;
                proc.StandardError.Close();
            }
            catch (Exception ex)
            {
                Flag = false;
            }
            finally
            {
                proc.Close();
                proc.Dispose();
            }
            return Flag;
        }
查看全部
qq158876572
qq158876572
2017/03/27 13:00
  • shell
  • 点赞
  • 收藏
  • 回答
    私信

4个回复