[C/C++] Prozesse samt Pfad auslesen

Dieses Thema im Forum "Programmierung & Entwicklung" wurde erstellt von Mortuus, 11. Juni 2011 .

  1. Diese Seite verwendet Cookies. Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies. Weitere Informationen
  1. #1 11. Juni 2011
    Prozesse samt Pfad auslesen

    Hallo zusammen,
    ich hab mal wieder eine Frage ;-). Und zwar brauche ich eine Liste aller laufenden Prozesse und möchte diese gerne samt vollständigen Pfad angeben sprich z.B. "C:\Program Files\....".
    Ich starte das ganze als Admin und stelle noch Debug Privilegien ein.
    Mein Problem ist, dass ich von 2 Prozessen nicht den Pfad herausbekomme. Ich erstelle erst ein Snapshot öffne dann jeder dieser Prozesse OpenProcess(...) und benutze dann die Funktion GetModuleFileNameEx. Leider erhalte ich für die beiden Prozesse "vsmon.exe" und "zlclient.exe" keine gültiges Handle. Weiß jemand:
    a) Warum ich das trotz Admin und Debug Rechte nicht öffnen kann/darf?
    b) Wie ich trotzdem den Pfad herausbekomme? Ich habe aus Spaß einfach mal ImpRec geöffnet, dass ebenfalls eine komplette Liste der Prozesse erstellt und dort ist z.B. auch der Pfad der zlclient.exe vorhanden. Wenn man allerdings irgendwas was dran machen will kommt die Fehlermeldung, dass er den Prozess nicht öffnen kann, d.h. also er schafft es wohl irgendwie den Pfad herauszubekommen ohne den Prozess öffnen zu müssen, nur wie?

    Vielen Dank!
     

  2. Anzeige
    Dealz: stark reduzierte Angebote finden.
  3. #2 11. Juni 2011
    AW: Prozesse samt Pfad auslesen

    Ein Treiber verhindert das. Die Prozesse gehören doch zu Zonealarm (Firewallsoftware)? Der hat ein self-protection System.
    Je nachdem wie gut oder schlecht das ist kann man es auch austricksen.

    Probier einfach mal OpenProcess mit minimalen Rechten.

    PROCESS_QUERY_INFORMATION | PROCESS_VM_READ

    oder

    PROCESS_QUERY_INFORMATION | PROCESS_QUERY_LIMITED_INFORMATION

    und das mal:
    GetProcessImageFileName
    QueryFullProcessImageName

    nächste Schritt wäre mal native call:
    NtOpenProcess
     
  4. #3 11. Juni 2011
    AW: Prozesse samt Pfad auslesen

    Jap, richtig.

    Mit erstem kann ich den Pfad auslesen, beim zweiten kommt irgendwie nur Blödsinn raus :D. Weiteres hab ich sowieso nicht vor mit diesen beiden Prozessen.

    Vielen Dank und kann zu!
     

  5. Videos zum Thema
Die Seite wird geladen...