正文

预防打开多个窗口的小程序2006-05-24 18:42:00

【评论】 【打印】 【字体: 】 本文链接:http://blog.pfan.cn/hofy/14798.html

分享到:

以下红字部分是比一般程序多加入的部分,在编写时把相应部分加入工程文件的原代码并替换相应部分即可: program HotelSMS; uses  Windows,  Forms,  fmHotelSMS in 'fmHotelSMS.pas' {fmHotelSMSF},  dmData in 'dmData.pas' {dmDataM: TDataModule},  uReadWriteReg in 'uReadWriteReg.pas',  uProgLog in 'uProgLog.pas'; {$R *.res} const  strCaption = '酒店系统短信发送';var  MainHWnd,ChildHWnd: THandle;begin  //以查找窗口以保证只能同时启动一个实例  MainHWnd := FindWindow('TApplication', strCaption);  if IsWindow(MainHWnd) then  begin    ChildHWnd := GetLastActivePopUp(MainHWnd);    //激活已有的实例    SetForeGroundWindow(MainHWnd);    if (IsWindow(ChildHWnd)) and (ChildHWnd <> MainHWnd) and       IsWindowVisible(ChildHWnd) and IsWindowEnabled(ChildHWnd) then    begin      SetForeGroundWindow(ChildHWnd);    end;    Halt;  end;   Application.Initialize;  Application.Title := '酒店系统短信发送';  Application.CreateForm(TdmDataM, dmDataM);  Application.CreateForm(TfmHotelSMSF, fmHotelSMSF);  Application.Run;end.

阅读(2598) | 评论(0)


版权声明:编程爱好者网站为此博客服务提供商,如本文牵涉到版权问题,编程爱好者网站不承担相关责任,如有版权问题请直接与本文作者联系解决。谢谢!

评论

暂无评论
您需要登录后才能评论,请 登录 或者 注册