Ein Process - unterschiedliche PID's

  • Hallo, Ihe alle,

    in meinem Script (unten beigefügt) starte ich den Windows Explorer mit Run() und lasse mir die PID via Rückgabewert übergeben.
    Dieser Rückgabewert soll dazu dienen, den speziellen Prozess mittels ProzessClose(#ID) wieder zu schließen.
    Zu meinem großen Erstaunen stellte ich fest, dass der Prozess nicht geschlossen wird. Bei der Fehleranalyse fiel mir auf, dass PID, ermittelt durch Run(), und die im Taskmgr ausgewiesene PID nicht identisch sind. Ich habe dafür keine Erklärung, bin auch nicht so der Profi vor dem Herrn.
    Vielleicht kann mir jemand erklären, wie es dazu kommen und wie ich die richtige PID zum Weiterbenutzen ermitteln kann.

    Hier der Code:

    Vielen Dank schon mal vorab.

    Lege dich nie schlafen ohne zu wissen,
    dass du an diesem Tag etwas Gutes getan hast.

    2 Mal editiert, zuletzt von AutoItler (30. August 2016 um 18:46) aus folgendem Grund: kommentierte Stellen mußten überarbeitet werden ...

    • Offizieller Beitrag

    Zu meinem großen Erstaunen stellte ich fest, dass der Prozess nicht geschlossen wird. Bei der Fehleranalyse fiel mir auf, dass PID, ermittelt durch Run(), und die im Taskmgr ausgewiesene PID nicht identisch sind.

    Das liegt daran, dass der Prozeß die "explorer.exe" ist. Das ist ein Windows-systemprozeß, der auch immer läuft. Du öffnest nur eine weitere Instanz dieses Prozesses. Mit ProcessList("explorer.exe") bekommst du ein Array mit allen PID aller Instanzen.

    Für "normale" Prozesse findest du in der Regel nur eine PID.

  • Danke für die Antwort, BugFix.
    Nun bleibt für mich die weiterführende Frage: Wie kann ich die PID der durch das Script geöffneten Instanz ermitteln um diese wieder zu schließen "ProcessClose($PID)".
    Oder gibt es vielleicht einen anderen Weg, diese Inszanz zu schließen?
    Dank schon mal für einen eventuellen Tip ....

    Lege dich nie schlafen ohne zu wissen,
    dass du an diesem Tag etwas Gutes getan hast.

  • Schaue dir mal an, was ich hier für Dich gebastelt habe...

    Spoiler anzeigen

    7 Mal editiert, zuletzt von Bitnugger (3. September 2016 um 03:35)