当前位置:主页>Delphi教程>文章内容
防止程序多次运行
来源: 作者: 发布时间:2007-04-29  

网络ID:wnhoo or sos_admin
网名:e梦缘
Mail:wnhoo@163.com
风花雪月 e梦情缘

http://delphi.ur-solution.com/delphi_download/upload/33954_wnhoo.rar

[dpr部分]
program Project1;

uses
  Forms,
  Unit1 in 'Unit1.pas' {Form1}
   ,Windows, Messages;

const
hfck=wm_user+$1000;
appname='myname';
var
myhandle:hwnd;
{$R *.res}

begin
myhandle:=findwindow(appname,nil);
if myhandle>0 then
begin
postmessage(myhandle,hfck,0,0);
exit;
end;
  Application.Initialize;
  Application.CreateForm(TForm1, Form1);
  Application.Run;
end.

[form部分]
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs;
const
hfck=wm_user+$1000;
appname='myname';
type
  TForm1 = class(TForm)
  private
    { Private declarations }
  public
  procedure createparams(var params:tcreateparams);override;
  procedure restorerequest(var msg:tmessage);message hfck;


    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}
procedure TForm1.createparams(var params:tcreateparams);
begin
  inherited createparams(params);
  params.WinClassName:=appname;
end;
  procedure TForm1.restorerequest(var msg:tmessage);
  begin
  if isiconic(application.Handle )=true then
  application.Restore
  else
  application.BringToFront ;

  end;
end.


 
上一篇:Delphi与C++之间通过实现函数与对象共享   下一篇:用Delphi对SQL-DMO进行封装的一种实现
 
  相关文章
·Delphi与C++之间通过实现函数与对象共
·用Delphi对SQL-DMO进行封装的一种实现
·编译资源进入可执行程序
·將字串传入到Windows目前窗口Cursor所
·拖拉打开文件
·Format的用法
·注册文件类型,设置文件图标
·数字随机排序
·创建不规则窗口
·关于流的使用资料及相关实例
·2个不错的通配符比较函数
·使用TImage浏览与保存网络图像
 
【关闭窗口】
推荐本站资源
最新文章