Bei dieser Funktion wird von innerhalb(!) des Prozesses ExitProcess aufgerufen was ansich sauberer ist weil die Dll´s die vom Prozess geladen sind über das Programmende informiert werden.Dadurch können diese noch ihre Aufräumarbeiten ausführen. Nen Beispiel wäre jetzt zuviel verlangt.Schreib dir ne Dll die in Ihrer DllMain bei ProcessDetach ne MessageBox anzeigt lade diese Dll mit nem Test Prozess und dann beende diesen Prozess erst mit TerminateProcess und dann mit ExitProcessEx. Dann siehst du wo der Unterschied liegt.
MfG Spacelord -- .....Ich mach jetzt nämlich mein Jodeldiplom.Dann hab ich endlich was Eigenes.
Ach ja,TerminateProcess erwartet nur das HANDLE des entsprechenden Prozesses. In dem kleinen Beispiel hinter dem Link wird dieses in der Funktion GetProcessHandle besorgt,allerdings mit gewissen "Sonderrechten".Benötigt wird OpenProcess und die ProzessID die man unter anderem mit den Toolhelp Funktionen(im Beispiel in DisplayProcesses) besorgen kann.
MfG Spacelord -- .....Ich mach jetzt nämlich mein Jodeldiplom.Dann hab ich endlich was Eigenes.
ich dachte ja eigentlich daran ein Programm zu schreiben welches meinen explorer beenden und wieder neu startet, weil der sich immer aufhängt deshalb soll er auch gnadenlos bbeendet werden weil er ja eh hängt!
Geht das nicht einfacher????????????? Ich will den scheiss ja einfach nur beenden
ich hoffe ich kann den Befehl trotzdem nutzen?! So geht das aber auch nicht -->
TerminateProcess("explorer.exe");
dann kommt immer das hier: error C2660: 'TerminateProcess' : Funktion akzeptiert keine 1 Parameter
das ist doch kein 1 Parameter! -- Get nicht gibs nicht!Dieser Post wurde am 25.09.2005 um 21:10 Uhr von Octron editiert.
rofl ich könnte sterben vor lachen wenn ich dran denke das ausgerechnet Spacelord der erste war der hier TerminateProcess in den Mund genommen hat -- ...fleißig wie zwei Weißbrote