我有一程序A,是端口操作的,在本程序运行时,要防止用户再次重WINDOWS运行一个新的程序A,也就是说内存中只能有一个程序A运行。请各位指点一下。
解决方案 »
- 又一个组件开发中碰到的问题
- MDI子窗体ShowModal后的窗体,如何访问MDI子窗体的控件呢?
- 200分在线征答
- 如何用编程的方法清除 IE 的Form AutoComplete List和Saved username and password by IE
- 老大拿分!还有一问!
- 关于表同步刷新的问题?在线等待——————-
- 我们公司的数据库在台北,广州的用户要访问它,该用什么方案解决呢?
- 哪有DELPHI5 ADO PACK补丁下载,CSDN上下载不下来
- 报表出错
- Delphi多匿名线程运行时,线程没有运行完一直挂着,是不是操作同一全局变量的问题
- mdi 子窗体
- 用PrintDialog控件进行打印设置的问题?? 高分!!!!
implementation
var hnd: THandle;initialization
hnd := CreateMutex(nil, True, 'irgendwaseinmaliges');
if GetLastError = ERROR_ALREADY_EXISTS then Halt;finalization
if hnd <> 0 then CloseHandle(hnd);
end.
uses windows ;
var
hMutex:HWND;
Ret:Integer;
begin
Application.Title := 'aaa';
hMutex:=CreateMutex(nil,False,'aaa');
Ret:=GetLastError;
If Ret<>ERROR_ALREADY_EXISTS Then
begin
Application.CreateForm(TMainMenuFrm, MainMenuFrm);
Application.Run;
end
else
Application.MessageBox('你已经运行了<<aaa>>程序了!','提示',mb_ok+mb_iconinformation);
ReleaseMutex(hMutex);
end.
uses windows ;begin
Application.Initialize;
Application.Title := 'aaa';
if Findwindow(Nil,application.title)=nil then
begin
Application.CreateForm(TMainMenuFrm, MainMenuFrm);
Application.Run;
end
end.