createmutex(nil,false,'mailfinder'); if getlasterror=ERROR_ALREADY_EXISTS then begin messagedlg('邮件小帮手已经运行!',mterror,[mbok],0); halt(0); end;
program Project1;uses Forms, Unit1 in 'Unit1.pas' {Form1};{$R *.res}begin createmutex(nil,false,'mailfinder'); if getlasterror=ERROR_ALREADY_EXISTS then begin messagedlg('邮件小帮手已经运行!',mterror,[mbok],0); halt(0); end; Application.Initialize; Application.CreateForm(TForm1, Form1); Application.Run; end.
通过系统API检查有没有标题相同和程序在运行或者松检查进程列表,已经存在就退出
createmutex ERROR_ALREADY_EXISTS
program Project1; uses Forms, Unit1 in 'Unit1.pas' {Form1}; {$R *.res} begin createmutex(nil,false,'mailfinder'); if getlasterror=ERROR_ALREADY_EXISTS then begin messagedlg('邮件小帮手已经运行!',mterror,[mbok],0); halt(0); end; Application.Initialize; Application.CreateForm(TForm1, Form1); Application.Run; end.可以是可以 但会一直跳出 错误
http://topic.csdn.net/t/20041130/11/3601156.html
if getlasterror=ERROR_ALREADY_EXISTS then
begin
messagedlg('邮件小帮手已经运行!',mterror,[mbok],0);
halt(0);
end;
Forms,
Unit1 in 'Unit1.pas' {Form1};{$R *.res}begin
createmutex(nil,false,'mailfinder');
if getlasterror=ERROR_ALREADY_EXISTS then
begin
messagedlg('邮件小帮手已经运行!',mterror,[mbok],0);
halt(0);
end;
Application.Initialize;
Application.CreateForm(TForm1, Form1);
Application.Run;
end.
ERROR_ALREADY_EXISTS
Forms,
Unit1 in 'Unit1.pas' {Form1}; {$R *.res} begin
createmutex(nil,false,'mailfinder');
if getlasterror=ERROR_ALREADY_EXISTS then
begin
messagedlg('邮件小帮手已经运行!',mterror,[mbok],0);
halt(0);
end;
Application.Initialize;
Application.CreateForm(TForm1, Form1);
Application.Run;
end.可以是可以 但会一直跳出 错误