C#判断某程序是否运行的方法
本文实例讲述了C#判断某程序是否运行的方法,分享给大家供大家参考。
具体实现方法如下:
[DllImport("user32.dll")]
privatestaticexternbool
SetForegroundWindow(IntPtrhWnd);
[DllImport("user32.dll")]
privatestaticexternboolShowWindowAsync(IntPtrhWnd,intnCmdShow);
[DllImport("user32.dll")]
privatestaticexternboolIsIconic(IntPtrhWnd);
//消息函数
[DllImport("user32.dll",EntryPoint="PostMessageA")]
publicstaticexternboolPostMessage(IntPtrhWnd,intMsg,intwParam,intlParam);
[DllImport("user32.dll")]
publicstaticexternIntPtrFindWindow(stringstrclassName,stringstrWindowName);
[DllImportAttribute("user32.dll")]
publicstaticexternintSendMessage(IntPtrhWnd,intMsg,intwParam,intlParam);
publicconstintWM_SYSCOMMAND=0x0112;
publicconstintSC_MAXIMIZE=0xF030;
privatestringexeName="SaoMiaoApp";
publicvoidSetForm()
{
Process[]processes=Process.GetProcessesByName(exeName);
if(processes.Length>0)
{
IntPtrhWnd=processes[0].MainWindowHandle;
if(IsIconic(hWnd))
ShowWindowAsync(hWnd,9);//9就是SW_RESTORE标志,表示还原窗体
//SendMessage(hWnd,WM_SYSCOMMAND,SC_MAXIMIZE,0);
SetForegroundWindow(hWnd);
}
else
{
Process.Start(exeName+".exe");
}
}
希望本文所述对大家的C#程序设计有所帮助。