Delphi CreateMutex建立互斥对象,并且给互斥对象起一个唯一的名字


本文整理自网络,侵删。

 
program GuardDas;

uses
  Vcl.Forms,
  System.SysUtils,
  Winapi.Windows,
  Winapi.Messages,
  UntGuard in 'UntGuard.pas' {frmGuard};

{$R *.res}

var
  myMutex: HWND;

begin
  // CreateMutex建立互斥对象,并且给互斥对象起一个唯一的名字。
  myMutex := CreateMutex(nil, false, 'FS8000守护程序');
  // 程序没有被运行过
  if WaitForSingleObject(myMutex, 0) <> wait_TimeOut then
  begin
    Application.Initialize;
    Application.MainFormOnTaskbar := True;
    Application.CreateForm(TfrmGuard, frmGuard);
    Application.Run;
  end
  else
  begin
    // Application.MessageBox(PChar('软件已运行,请勿重复打开运行!'), '提示', mb_ok + MB_ICONWARNING);
  end;
  ReleaseMutex(myMutex);
  Application.Terminate;

end.

相关阅读 >>

Delphi adoconnection连接 sqlserver

Delphi issameday、istoday - 判断是不是同一天、判断是不是今天

Delphi 的按位运算详解

Delphi 在减少占用资源的情况下,等待msecs毫秒

Delphi之数组

Delphi 字符串变形替换

Delphi10.3通过json.serializers单元对大量数据序列化

Delphi ansiendstext 用法之一(路径结尾自动加\)

Delphi 系统托盘组件 ttrayicon 简介

Delphi7 中tstringlist的delimiter delimitedtext有bug,字符串分割有问题

更多相关阅读请进入《Delphi》频道 >>



打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...