关于超想
本站导航
邮件列表
  首页 | 本站产品 | Delphi资料 | 免费资源 | 程序人生 | 软件工程 | 网站设计 | 推荐网站
你所在的位置 -> 主页 -> 超想软件 -> 编程资料 -> delphi -> 开发技巧 -> API相关 ->详细
相关内容  
 
 
如何检测BDE是否安装
 
【新品推荐】

  详细内容
 

检测程序是否运行
作者: 评价: 上站日期: 2001-05-09
内容说明:
来源: (转载于“学程序来旋风”)

  在某些情况下,我们编写的应用程序同时只能有一个实例在内存中运行,例如服务器程序、需要独占某设备的程序,甚至我们仅仅是让程序同时只有一个实例运行(如UltraEdit就是这样做的,让你不能同时运行多个UltraEdit)。要实现此功能,需要在程序中加一点判断的代码,在Windows 95或Win32环境下的Delphi版本中实现的程序如下:
按Ctrl+F12键,选择Project1,加入下列语句
program Project1;

uses
windows, {加入该句才能调用函数}
Forms,
Unit1 in 'Unit1.pas'{Form1};

{$R *.RES}
const classname='TForm1'; {声明为主窗体的类名}
var handle:integer; {变量}

begin
{-----------------主要为该判断部分----------------------}
handle:=findwindow(classname,nil);{查找是否有此类的窗体}
if handle< > 0 then {不为0则程序已运行}
begin
messagebox(0,'该程序已经有一个在运行中!','运行',0);{提示程序已运行}
halt; {退出程序}
end;
{------------------------------------------------------}
Application.Initialize;
Application.CreateForm(TForm1, Form1);
Application.Run;
end.
  该程序在测试时由于Delphi也生成了此类实例窗体,所以会出现提示框,只有关闭Delphi后单独运行程序才能实现。

 
你所在的位置 -> 主页 -> 超想软件 -> 编程资料 -> delphi -> 开发技巧 -> API相关 ->详细
  首页 | 本站产品 | Delphi资料 | 免费资源 | 程序人生 | 软件工程 | 网站设计 | 推荐网站
声明:本站内容除注明原创以外均从网上摘抄,如有侵权请指明。
  如果您对我们的网站有什么意见或者建议,请与我们联系
powered by 建站易上手- V2.0