W jaki sposób spawdzić działanie procesu, tak że jak proces jest uruchomiony wyswietlona została widomość ze jest aktywny a jak wyłaczony error. Jak to zapisać. Znalazłem w necie cos na ten temat i przerobilem na wlasne potrzeby ale mam lopot bo jak proces jest nawet wlaczony
to wiadomosc pokaze sie dopiero po trzecim kliknieciu. Co moze byc nie tak.

procedure TForm3.Button8Click(Sender: TObject);
var
  hMapping : THANDLE;

begin

hMapping:=CreateFileMapping(THANDLE($FFFFFFFF),nil,PAGE_READONLY,0,32,'gg.exe');
Handle(hMapping);

if GetLastError=ERROR_ALREADY_EXISTS then
begin
  Application.MessageBox('program jest uruchomiony','Informacja',
                         mb_OK+MB_IconInformation);
end
  else
  Application.MessageBox('program nie jest uruchomiony','Informacja',
                         mb_OK+MB_IconInformation);
end;