日期:2014-05-17  浏览次数:20868 次

C#调用cmd执行命令的问题
正常操作:打开cmd后,手动输入 cd 可以打开文件夹,然后输入abaqus job=XX 就可以开始我的程序运行

但是,用C#调用cmd的时候,打开的cmd窗口毫无变化,也没有执行程序。。
代码如下,烦请指导:
            Process cmd = new Process();

            cmd.StartInfo.FileName = "cmd.exe";

            cmd.StartInfo.UseShellExecute = false; 

            cmd.StartInfo.RedirectStandardInput = true; 
            cmd.StartInfo.RedirectStandardOutput = true; 
            cmd.StartInfo.RedirectStandardError = true;

            cmd.StartInfo.CreateNoWindow = false;
            cmd.StartInfo.WindowStyle = ProcessWindowStyle.Normal;

            cmd.Start(); 

            cmd.StandardInput.WriteLine("g:");
            cmd.StandardInput.WriteLine("cd TEST");
            cmd.StandardInput.WriteLine("abaqus job=0713 inter");
            cmd.WaitForExit();
            cmd.Close();
C# 命令提示符

------解决方案--------------------
直接
Process.Start(@"cmd /k g:\test\abaqus job=0713 inter");
------解决方案--------------------
lz做一个.bat文件并将相关的cmd命令都写在里面。然后在程序里面用Process.Start去执行.bat文件。