这是我的代码:
string command ="attrib +s +h " + dir + " /S /D";
System.Diagnostics.Process process = new System.Diagnostics.Process();
System.Diagnostics.ProcessStartInfo startInfo=new System.Diagnostics.ProcessStartInfo();
startInfo.WindowStyle = System.Diagnostics.ProcessWindowStyle.Normal;
startInfo.FileName = "cmd.exe";
startInfo.Arguments = command;
process.StartInfo = startInfo;
process.Start();
但是这段代码不起作用。命令提示符在不执行任何命令的情况下执行。
答案 0 :(得分:6)
attrib
已经是.exe本身了。您无需通过cmd
调用它。如果你想让cmd执行一些OTHER程序,那么你需要/c
参数:
string command = "/C attrib etc..."
^^--- CMD argument
或者只是:
startInfo.FileName = "attrib.exe";
startInfo.Arguments = "+s +h " + dir + " /S /D";