juergi66 Geschrieben 24. Juni 2001 Geschrieben 24. Juni 2001 Hi, ich habe ein Problem. Und zwar starte ich einen Prozess mit "CreateProcess". Diesen kann ich nach getaner Arbeit auch sauber beenden. Jedoch läuft dieser Prozeß in der DOS-Box ab. Diese schließt sich leider nicht automatisch. Wie kann ich an ihre ProzeßID kommen, um sie zu killen. Ich müll mir ja sonst den Speicher mit geöffneten DOS-Boxen zu und irgendwann schmiert mir die Kiste ab. Hab schon mit GetCurrentProcessID etc. versucht, aber damit kann ich nur auf Prozesse zugreifen, die ich auch selber gestartet habe. Gruß an alle..vom Onkel Zitieren
gajUli Geschrieben 24. Juni 2001 Geschrieben 24. Juni 2001 Oha, Programme, die ihre eigene Laufzeitumgebung abschiessen, spassig... Ich wuerde mal die dazugelinkten Runtime-Biblitotheken durchsehen. Von Borland-Compilern weiss ich, dass die erzeugten DOS-Boxen defaultmaessig wieder geschlossen werden bei Programmende. Uli Zitieren
WasserWichtel Geschrieben 26. Juni 2001 Geschrieben 26. Juni 2001 Das macht auch der Microsoft-Compiler. Bei Visual C++ gibt es in der winbase.h ein struct, daß sich PROCESS_INFORMATION nennt. In dieser Struktur findest du die ProcessID, die ThreadID und Handels für den Process und den Thread, der mit CreateProcess gestartet wurde. Mit ExitProcess() kannst due den Prozess wieder beenden. CU WW Zitieren
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.