使用C#在cmd中执行命令时出现问题

时间:2013-05-01 10:54:29

标签: c# cmd

我在C#应用程序的cmd中执行两个命令。

  1. 重命名文件

    string commandToExecute;
    commandToExecute = @"/c ren E:\filename filename.rar";
    Process.Start("cmd.exe", commandToExecute);
    
  2. 取消文件

    commandToExecute = @"/c unrar e E:\filename.rar";
    Process.Start("cmd.exe", commandToExecute);
    
  3. 代码的第一部分有效,但第二部分没有,但是当我在cmd中手动编写命令时,它正在工作。我注意到在C#中执行时它会再次运行应用程序(如递归)。我不知道为什么。

    注意:我使用的是64位Windows 7.

1 个答案:

答案 0 :(得分:2)

请记住,Process.Start会启动另一个进程。如果命令需要串行运行,则需要从Process.Start获取Process对象并调用WaitForExit方法。