C#打开和关闭外部exe程序。
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C#打开和关闭外部exe程序。相关的知识,希望对你有一定的参考价值。
假设有一个按钮 按下的时候它可以判断进程中是否已经运行了这个程序,如果运行了则关闭程序,如果没有运行则运行这个程序(有点类似那种软键盘按钮,点一下可以打开,再点一下可以关闭),假设程序名为a.exe
麻烦给出botton click中的详细代码 谢谢。
/// <summary>
/// 启动其他程序
/// </summary>
/// <param name="FileName">需要启动的外部程序名称</param>
public static bool OpenPress(string FileName, string Arguments)
Process pro = new Process();
if (System.IO.File.Exists(FileName))
pro.StartInfo.FileName = FileName;
pro.StartInfo.Arguments = Arguments;
pro.Start();
return true;
return false;
//这个是判断,关闭
//获得任务管理器中的所有进程
Process[] p = Process.GetProcesses();
foreach (Process p1 in p)
try
string processName = p1.ProcessName.ToLower().Trim();
//判断是否包含阻碍更新的进程
if (processName == "a" )
p1.Kill();
catch
参考技术B 用Process类
Process[] myprocess=Process.GetProcessesByName("a");
if(myprocess.length>0)
myprocess[0]. CloseMainWindow();
myprocess[0].Close();
else
Process.Start("a.exe");
本回答被提问者采纳
Qt QProcess启动和关闭外部程序
//适用于关闭后台进程的方法
QString c = "taskkill /im notepad.exe /f"; int pInt = QProcess::execute(c); //关闭后台notepad.exe进程,阻塞式运行,一直占用cpu,成功返回0,失败返回1 qDebug()<<"pInt:"<<pInt;
一、启动外部程序的两种方式:
(1)一体式:void QProcess::start(const QString & program, const QStringList & arguments, OpenMode mode = ReadWrite)
外部程序启动后。将随主程序的退出而退出。
(2)分离式:void QProcess::startDetached(const QString & program, const QStringList & arguments, const QString & workingDirectory = QString(), qint64 * pid = 0)
外部程序启动后,当主程序退出时并不退出。而是继续执行。
//1-不带空格。能够启动 process->start("F:/AppInst/115/115com/115com.exe"); //2-带空格,无法启动 process->start("C:/Program Files/HaoZip/HaoZip.exe"); //3-带空格,使用带參模式。能够启动 process->start("C:/Program Files/HaoZip/HaoZip.exe", QStringList("C:/Program Files/HaoZip/HaoZip.exe"));
以上是关于C#打开和关闭外部exe程序。的主要内容,如果未能解决你的问题,请参考以下文章
MFC下如何关闭外部程序,例如关闭一个以notepad.exe D:\\text.txt打开的进程