高分紧急求助:运行一个程序前判断该程序是否已经运行,如果运行则不再运行!怎样判断??

trueman3000 2005-09-09 10:26:29
高分紧急求助:运行一个程序前判断该程序是否已经运行,如果运行则不再运行!怎样判断??
...全文
172 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
xixuemao 2005-09-09
  • 打赏
  • 举报
回复
program Project1;

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

{$R *.res}
var
hMutex:hWnd;
begin
Application.Initialize;
Application.Title:='test';
hMutex:=CreateMutex(nil,false,'test');
if GetLastError<>Error_Already_Exists then
begin
Application.CreateForm(TForm1, Form1);
Application.Run;
end
else
begin
Application.MessageBox('本程序只允许同时运行一个','Error');
ReleaseMutex(hMutex);
end;
end.
jinjazz 2005-09-09
  • 打赏
  • 举报
回复
var
hmutex:hwnd;
ret:integer;
begin
Application.Initialize;
hmutex:=createmutex(nil,false,'project1');
ret:=getlasterror;
if ret<>error_already_exists then
begin
Application.CreateForm(TForm1, Form1);
end
else
begin
messagedlg('程序已运行。',mtinformation,[mbok],0);
releasemutex(hmutex);
end;

1,183

社区成员

发帖
与我相关
我的任务
社区描述
Delphi Windows SDK/API
社区管理员
  • Windows SDK/API社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧