c#中怎样判断一个程序是否正在运行?

c#中怎样判断一个程序是否正在运行?,第1张

判断代码如下:

string name = "进程名"

if (GetPidByProcessName(name) == 0)

{

MessageBox.Show("程序未运行")

return

            }             

public static int GetPidByProcessName(string processName)

{

            Process[] arrayProcess = Process.GetProcessesByName(processName) 

foreach (Process p in arrayProcess)

{

return p.Id

}

return 0

}

扩展资料:

注意事项

/获取欲启动进程名

          string strProcessName

          strProcessName = System.Diagnostics.Process.GetCurrentProcess().ProcessName   

          //检查进程是否已经启动,已经启动则退出程序。

          if (System.Diagnostics.Process.GetProcessesByName(strProcessName).Length >1)

          {

              Application.Exit()

              return

          }

          Application.EnableVisualStyles()

          Application.SetCompatibleTextRenderingDefault(false)         

          Application.Run(new  frmMainPlatform())

cmd是 command的缩写.即 命令提示符(CMD),是在OS / 2 , Windows CE与Windows NT平台为基础的 *** 作系统(包括Windows 2000和XP中, Vista中,和Server 2003 )下的“MS-DOS 方式”。中文版Windows XP 中的命令提示符进一步提高了与DOS 下 *** 作命令的兼容性,用户可以在命令提示符直接输入中文调用文件。

asklist >a.txt<回车>type a.txt | find /i "%进程名%" &&goto b<回车>第一句是将当前进程保存到文件,第二句是检测进程是否运行,是否跳转到B处运行。

tasklist /nh>d:\1.txt   find /i "QQ.exe" d:\1.txt if ERRORLEVEL 1 ("C:\software\Tencent\qq\QQQ.exe" ) else (exit)      意思是检测"QQ.EXE"有没有在进程里,大家都知道QQ打开后进程名是"QQ.EXE"如果有在进程里则执行"EXIT"退出,如果没有在进程里,说明QQ没有打开,则运行QQ程序"C:\software\Tencent\qq\QQQ.exe"       第二种写法     tasklist /nh|find /i "QQ.exe" if ERRORLEVEL 1 ("C:\software\Tencent\qq\QQQ.exe") else (exit)


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/11421722.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-16
下一篇 2023-05-16

发表评论

登录后才能评论

评论列表(0条)

保存