如何判断一个程序是否在运行? 如何判断一个程序是否在运行?请高手为我支招,谢谢! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 试试这样:HWD:= FindWindow('TFrm_dcb_main',nil); if HWD>0 then begin SetForegroundWindow(HWD); // DBEBarcode //Application.MessageBox('该程序已在系统中运行,请确认退出后再启动!','系统提示'); halt; //退出程序 end; 在程序运行时用FINDWINDOW判断是否已运行,如已运行则Application.Terminate; HANDLE hMutex = CreateMutex( NULL, FALSE, "RunOnlyOneInstance") ; if( hMutex==NULL||ERROR_ALREADY_EXISTS==::GetLastError() ) { Warnning( "程序已经启动!") ; SendMessage(Application->Handle, WM_SYSCOMMAND, SC_RESTORE, 0); //ShowWindow(Application->Handle, SW_RESTORE); return 0 ; } >>>那如何取消正在运行的程序的进程呢?2种方法:1、先取它名柄,然后SendMessage(..,wm_close..);2、结束进程 分享:《Delphi串口通信编程 》 关于DELPHI7的问题 DBGrid启动显示怎么做? 怎样才能知道自己得到了多少总的专家分?? Ado.sql:select * from tbl open 后的dbgrid 数据不可选(鼠标点击,像死机)是什么情况造成的? 在线期待大家的回复,谢谢!! 一简单的窗体装载问题??? 怎么编程强制激活一个窗体。急 那有TeeChart增强版DOWNLOAD? RAR自解压文件解密! 如何判断一个字符串是否为有效的日期格式??? 关于网页中的OCX用IOleClientSite::GetContainer获取本网页的IHtmlDocument2的问题
HWD:= FindWindow('TFrm_dcb_main',nil);
if HWD>0 then
begin
SetForegroundWindow(HWD);
// DBEBarcode
//Application.MessageBox('该程序已在系统中运行,请确认退出后再启动!','系统提示');
halt; //退出程序
end;
if( hMutex==NULL||ERROR_ALREADY_EXISTS==::GetLastError() )
{
Warnning( "程序已经启动!") ;
SendMessage(Application->Handle, WM_SYSCOMMAND, SC_RESTORE, 0);
//ShowWindow(Application->Handle, SW_RESTORE);
return 0 ;
}