CreateProcess startet Programm 2x HILFE!!!



  • Ich starte mit CreateProcess meine Apache.exe.
    Allerdings wird das lustige Teil immer ZWEIMAL gestartet.
    Wenn ich dann TerminateProcess aufrufe wird dann auch nur eins (wahrscheinlich das, von dem ich ein Handle hab) beendet. Das andere fliegt dann noch nerviger Weise im taskmanager rum!

    Was kann ich da machen????
    Ist nur bei der Apache.exe



  • Wie wär's mit Code zeigen?
    a) deine CreateProcess-Implementierung
    b) Aufruf derselben (wie und wann/wo)



  • Der Apache Webserver unter Windows besteht in der Tat aus 2 gleichlautenden Prozessen. Der eine ist der "Mainprozess" und der andere der "Workerprozess" welcher eine Anzahl von Threads aufmacht und die Requests behandelt. Der "Workerprozess" wird vom "MainProzess" überwacht und ggf. neu gestartet.



  • Beende den Indianer, indem du die stop.exe über shell aufrufst und nicht über TerminateProcess.



  • Jansen schrieb:

    Wie wär's mit Code zeigen?
    a) deine CreateProcess-Implementierung
    b) Aufruf derselben (wie und wann/wo)

    Aufruf mit Createprocess wie in der FAQ beschrieben (mit minimaler Anpassung, die aber an der Tatsache nix ändert).

    Peter schrieb:

    Der Apache Webserver unter Windows besteht in der Tat aus 2 gleichlautenden Prozessen. Der eine ist der "Mainprozess" und der andere der "Workerprozess" welcher eine Anzahl von Threads aufmacht und die Requests behandelt. Der "Workerprozess" wird vom "MainProzess" überwacht und ggf. neu gestartet.

    mmm... Wenn ich den Apache aber auf die herkömmliche Art starte (benutze EasyPHP 1.6), dann ist da nur 1 Process bzw. nur einer im Taskmanager zu sehen...

    AndreasW schrieb:

    Beende den Indianer, indem du die stop.exe über shell aufrufst und nicht über TerminateProcess.

    Häh? Sorry, versteh ich nich... Was für ne stop.exe?


Anmelden zum Antworten