同一个程序只允许一个实例同时运行
program Project1; //注意,这是工程文件(工程源码) uses //引用 Winapi.Windows,如果还要弹窗就引用 Vcl.Dialogs Vcl.Forms, Winapi.Windows, Vcl.Dialogs, Unit1 in 'Unit1.pas' {Form1}; {$R *.res} var hMutex: THandle; //定义一个变量 begin //插入下面这一段代码 hMutex := CreateMutex(nil, False, 'TheStandard'); if GetLastError = ERROR_ALREADY_EXISTS then begin CloseHandle(hMutex); ShowMessage('本软件的另一个副本已经在运行中'); application.Terminate; //ExitProcess(0); 也是终止程序的意思 end; //---------以上------------- Application.Initialize; Application.MainFormOnTaskbar := True; Application.CreateForm(TForm1, Form1); Application.Run; end.
Copyright © 2014 DelphiW.com 开发 源码 文档 技巧 All Rights Reserved
晋ICP备14006235号-8 晋公网安备 14108102000087号
执行时间: 0.041723966598511 seconds