在C#代码中执行没有窗口形式的独立exe

时间:2014-10-22 04:30:52

标签: c#

      System.Diagnostics.ProcessStartInfo procStartInfo =
                new System.Diagnostics.ProcessStartInfo("C://test.exe", "/c ");
              procStartInfo.RedirectStandardOutput = true;
            procStartInfo.UseShellExecute = false;
            procStartInfo.CreateNoWindow =true;                                       System.Diagnostics.Process proc = new System.Diagnostics.Process();
               proc.StartInfo = procStartInfo;
               proc.Start();      
                foreach (Process p in Process.GetProcesses())
            {

                if (p.ProcessName == "test.exe")
                {
                    p.Kill();
                }

此代码打开我的exe并在后台运行。但我没有得到所需的输出。它也没有关闭。 (功能上我的exe应该打开并读取两个文本文件并在输出文本文件上生成一些值。)

1 个答案:

答案 0 :(得分:0)

你尝试过这样的事吗?

ProcessStartInfo ProcessInfo = new ProcessStartInfo(PathToExe, MyArgs);
ProcessInfo.CreateNoWindow = true;
ProcessInfo.WindowStyle = ProcessWindowStyle.Hidden;
Process MyProc = Process.Start(ProcessInfo);
MyProc.WaitForExit();