Testen ob Programm schon läuft?
-
Hi,
wie kann man testen ob das Programm schon läuft?

-
''' schrieb:
Hi,
wie kann man testen ob das Programm schon läuft?
am besten, du eröffnest eine benamste semaphore.
-
@Pate:
Du solltest das Saufen sein lassen! Du bist ja grade so drauf wie TGGC? Erschreckend...

-
''' schrieb:
@Pate:
Du solltest das Saufen sein lassen! Du bist ja grade so drauf wie TGGC? Erschreckend...

sorry, wenn es so kam. ich hoffte, das sei völlig ausreichend, um in google den rest zu finden.
das könnte zum beispiel rauskommen:
http://www.codeguru.com/Cpp/W-P/system/processesmodules/article.php/c5745/
-
..
-
WinAPI-FAQ: doppeltes öffnen eines programmes vermeiden

-
Vielleicht sollte man das dort mit anhängen.

-
Du meinst jetzt deinen Beitrag, oder auch den Link von volkard?!
Ich könnte den Beitrag evtl. kurz zurück ins Forum schieben, damit du dann deinen Beitrag nochmal posten kannst - sonst steht halt mein Name dran (und ich will mich ja nicht mit fremden Lorbeeren schücken
)
-
Die Frage ist doppeldeutig:
Fall 1: Es geht um ein eignes Programm, dann sind die oben genannten Methoden, speziel mit Semaphor sehr gut
Fall 2: "Kaufprogramm" welches ich nicht recompiulieren kann, wie gehts dann??
-
PAD schrieb:
Fall 2: "Kaufprogramm" welches ich nicht recompiulieren kann, wie gehts dann??
FindWindow bzw. wenn du das Programm schon in der Startphase erkennen willst über die Prozess-Liste. Falls du die ganze Zeit im Hintergrund wachen willst: http://www.codeproject.com/threads/procmon.asp
-
#include <windows.h> int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR szCmdLine, int iCmdShow) { // von he ----------------------- HANDLE hMutex = OpenMutex(MUTEX_ALL_ACCESS, 0, "MingeProgramm1.0"); if (!hMutex) hMutex = CreateMutex(0, 0, "MingeProgramm1.0"); else return 0; ReleaseMutex(hMutex); // bis he ----------------------- // ... return 0; }