C#如何调用外部exe程序

时间:2024-10-26 07:50:04

/cyamazing/article/details/52849106


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

在程序的开始using ;

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

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

 if (p == null)
            {
                p = new ();
                = "应用程序名字.exe";
                ();
            }
            else
            {
                if () //是否正在运行
                {
                    ();
                }
            }
            = ;
        }

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

           Process[] pProcess;
            pProcess = ();
            for (int i = 1; i <= - 1; i++)
            {
                if (pProcess[i].ProcessName == "应用程序名字")   //任务管理器应用程序的名
                {
                    pProcess[i].Kill();
                    break;
                }
            }

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


如果只是简单的调用外部的EXE程序文件,只需要下面一行代码就可以搞定。

                ( + “你的应用程序.exe”);

如果是等待这个EXE程序执行完毕再执行下面的代码其实也是很简单的,只需要在后面使用WaitForExit()方法即可。

代码如下
( + “你的应用程序.exe”).WaitForExit();


//调用外部程序导cmd命令行
    Process p = new Process();
     = "";
     = false;
     = true;
     = true;
     = false;
    (); 
    / /向输入command 
    ("cd C:\\Inetpub\\wwwroot\\Paicdom\\PaWebService\\PaWeb\\Manage\\Exportcsv");
    //cmd又调用了
    ("");
    ("exit"); //需要有这句,不然程序会挂机
    //string output = (); 这句可以用来获取执行命令的输出结果