Forum: Win32/Win64 API (native code)
by kuba,
4. Jan 2012
Ich denke das hier war gemeint...
function IsExeRunning(const AExeName: string): boolean;
var
h: THandle;
P: TProcessEntry32;
begin
P.dwSize := SizeOf(P);
h := CreateToolhelp32Snapshot(TH32CS_SnapProcess, 0);
try
Forum: Win32/Win64 API (native code)
by kuba,
22. Sep 2011
verstehe ich jetzt nicht ganz ...
habs so gemacht und geht:
//if not IsExeRunning ('ax.exe') then
hProcess := GetProcessHandleFromID(GetProcessID('ax.exe'));
if hProcess = 0 then
oder:
//if IsExeRunning ('ax.exe') then
Forum: Win32/Win64 API (native code)
by kuba,
22. Sep 2011
Habe inzwischen eine Lösung gefunden ...
KUBA
Forum: Win32/Win64 API (native code)
by kuba,
21. Sep 2011
Ja bin ganz sicher, das hat mich total verblüfft. Vor allem habe ich dann ein kleines Testprogramm geschrieben und als Benutzer gestartet. Im Testprogramm verwende ich genau die gleiche IsExeRunning Routine und das Testprogramm findet die Anwendung in der Taskliste. Sowohl vor der Anmeldung als auch nach der Anmeldung am Server. Wie kann das nur sein ??
KUBA
Forum: Win32/Win64 API (native code)
by kuba,
21. Sep 2011
Ach ja, Betriebssystem ist Windows XP
Mit Anmeldebildschirm meine ich, dass es sich um eine Client-Anwendung handelt. Da kommt dann nach dem Start ein Anmeldebildschirm und wenn man die Zugangsdaten richtig eingegeben hat wird eine Verbindung zum Server hergestellt.
KUBA
Forum: Win32/Win64 API (native code)
by kuba,
21. Sep 2011
Hallo,
ich nutze seit längerer Zeit die Routine IsExeRunning um festzustellen ob ein Programm gestartet ist:
function IsExeRunning(const AExeName: string): boolean;
var
h: THandle;
P: TProcessEntry32;
begin
P.dwSize := SizeOf(P);