[Delphi] Program w pamięci - uruchamiam go jeszcze raz i

0

to jest sposób na zakończenie nowej aplikacji, która się otworzy.

hMapping:=CreateFileMapping(THANDLE($FFFFFFFF),nil,
PAGE_READONLY,0,32,'ApplicationTestMap');
if GetLastError=ERROR_ALREADY_EXISTS then
begin
Application.MessageBox('Program jest już uruchomiony','Informacja',
mb_OK+MB_IconInformation);
Application.Terminate;
end;

Ale - jak zakończyć starą aplikację, by dać miejscę pod nową? hmm...

0

Proponuje znalezc jej glowne okno przez FindWindow i zamknac je.--Pawel {Delphi 6 Personal}

Po pierwsze: naciśnij F1

0

niestety nie mam pojęcia jak to zrobić hmm...

0

Nazwałeś główne okno GlowneOkno, jego klasa to TGlowneOkno.
Więc w pliku dpr:

Var hWnd:LongWord;

Begin
hWnd:=FindWindow('TGlowneOkno',nil);
If hWnd&lt&gt0 Then
SendMessage(hWnd,WM_CLOSE,0,0);
{...}
End;
--Szymek

Doświadczenie - jest to coś co zdobywasz tuż po chwili kiedy go potrzebowałeś.

0

A dlaczego zamykasz stara a nie nowa...???

--Pawel {Delphi 6 Personal}

Po pierwsze: naciśnij F1

1 użytkowników online, w tym zalogowanych: 0, gości: 1