天天看点

C#如何调用外部exe程序

1.在主界面添加调用外部exe程序的Button,双击此Button进入代码编辑页面。

在程序的开始using System.Diagnostics;

然后在初始化函数的上方定义private static System.Diagnostics.Process p;

2.在Button的双击事件中,添加如下代码:

 if (p == null)

            {

                p = new System.Diagnostics.Process();

                p.StartInfo.FileName = "应用程序名字.exe";

                p.Start();

            }

            else

                if (p.HasExited) //是否正在运行

                {

                    p.Start();

                }

            p.StartInfo.WindowStyle = System.Diagnostics.ProcessWindowStyle.Normal;

        }

3.若想关闭主程序的同时也关闭调用的程序,需要在退出程序的按钮事件中添加如下代码:

           Process[] pProcess;

            pProcess = Process.GetProcesses();

            for (int i = 1; i <= pProcess.Length - 1; i++)

                if (pProcess[i].ProcessName == "应用程序名字")   //任务管理器应用程序的名

                    pProcess[i].Kill();

                    break;

    但是这里有个问题,点击Button调用外部exe程序后,若将外部exe程序最小化,此时再点击主界面的调用按钮时,exe程序不能显示在屏幕的最前端,只能手动从任务栏将其窗口正常化。一时不知如何解决,不过也无伤大雅。