delphi 同时只能够运行一个程序。(网上搜的)

原创 2007年09月18日 14:07:00

首先在项目文件(*.dpr)uses段中添加Windows的引用,然后声明一个hWnd类型的变量hMutex

var

    hMutex:hWnd;

最后在项目文件的beginend中添加以下代码:

  Application.Initialize;

  Application.Title:='test';

  CreateMutex(nil,false,'test');

  if GetLastError<>Error_Already_Exists then

  begin

    Application.CreateForm(TForm1, Form1);

    Application.Run;

  end

  else

  begin

    Application.MessageBox('本程序只允许同时运行一个','Error');

  end;

Application对象的Title属性的值可以根据自己的需要设置。通过CreateMutex函数来创建一个互斥量,如果GetLastError不等于Error_Already_Exists,也就是本程序的实例没有运行,那么就正常启动程序,反之则表示本程序的实例已经在运行,那么就会弹出一个对话框提示用户,不启动程序。

 

相关文章推荐

python 学习笔记 14 -- 常用的时间模块之datetime

书接上文,这篇博文接着前面一篇(介绍时间管理模块time )介绍了另外一个非常好用也经常会用到的时间管理模块 datetime 。非常有用,希望可以好好帮你整理一下这一部分的内容。...

让程序只运行一个实例(Delphi篇)

Windows 下一个典型的特征就是多任务,我们可以同时打开多个窗口进行操作,也可以同时运行程序的多个实例,比如可以打开许多个资源管理器进行文件的移动复制操作。但有时出于某种考虑(比如安全性),我们要...
  • Nikos8
  • Nikos8
  • 2012年05月04日 16:00
  • 195

delphi_一次只运行一个程序原代码

  • 2010年10月28日 09:32
  • 160KB
  • 下载

delphi程序只允许运行一个实例的三种方法

一、        创建互斥对象   在工程project1.dpr中创建互斥对象Program project1Uses Windows,Form,FrmMain in 'FrmMain.pas' ...
  • god00
  • god00
  • 2011年05月06日 19:33
  • 333

Delphi中保证程序只运行一个实例的方法总结

在做Delphi的一个小工具的时候,要让自己的程序保证只启动一个实例如下有几种方法实现: 1.使用系统函数FindWindows()函数来实现: program Project1; uses   F...

【转】delphi程序只允许运行一个实例的三种方法:

一、        创建互斥对象    在工程project1.dpr中创建互斥对象 Program project1 Uses Windows,Form, FrmMain in 'Frm...

单片机C语言的主程序,通常要用一个while(1)语句来让程序进入一个无限循环,目的是为了让程序一直保持在我们需要运行的情况下。   虽然这种做法毋庸置疑,在网上还是有不少朋友有疑问,如果程序不加wh

单片机C语言的主程序,通常要用一个while(1)语句来让程序进入一个无限循环,目的是为了让程序一直保持在我们需要运行的情况下。  虽然这种做法毋庸置疑,在网上还是有不少朋友有疑问,如果程序不加whi...
  • sjong
  • sjong
  • 2017年07月11日 10:23
  • 700
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:delphi 同时只能够运行一个程序。(网上搜的)
举报原因:
原因补充:

(最多只允许输入30个字)