[C/C++] PID (Process ID) vom Browser bekommen

Dieses Thema im Forum "Programmierung & Entwicklung" wurde erstellt von IronSnake, 12. September 2008 .

Schlagworte:
  1. 12. September 2008
    PID (Process ID) vom Browser bekommen

    moin moin,
    ich habe vor mich nu nen bissel mit dem "Process Injection" Ablauf auseinander zu setzen. Allerdings scheitert es scho beim Auslesen der PID vom Browser.

    Habe mir das ganze so gedacht:
    - Ich starte den Browsre im suspended Mode.
    - lese PID aus
    - injecte meinen Prozess in den Browser.


    Den Prozess zu erstellen ist ja easy going:

    CreateProcess(prog,NULL,0,0,TRUE,CREATE_SUSPENDED,0,".",&si,&pi);

    Nur wi ebekomme ich nun die PID von dem erstellten Prozess ? - bin da über MSDNAA auf "getprocessid()" aufmerksam geworden. Alleridngs verstehe ich die Syntax nicht so richtig. Bin generell ziemlich unerfahren was WinAPI anbelangt.
     
  2. 12. September 2008
    AW: PID (Process ID) vom Browser bekommen

    Erst musst du den Handle des Fensters bekommen ( FindWindow ) und danach kansnt
    mit dem Handle an die PID kommen ( GetProcessID ).
     
  3. 12. September 2008
    AW: PID (Process ID) vom Browser bekommen

    Jo aber im Suspended Mode gibt es doch kein Window oO - will scho das dat ganze im Hintergrund passiert
     
  4. 12. September 2008
    AW: PID (Process ID) vom Browser bekommen

    Fenster != Handle.

    Schau in der MSDN mal genau nach

    CreateProcess function (Windows) <- CreateProcess
    Ein Parameter davon ist: lpProcessInformation und ist vom Typ eine Struktur ( PROCESS_INFORMATION ).

    Also mal auf die Seite zur definition dieser Struktur gegangen:
    PROCESS_INFORMATION structure (Windows)

    Und jetzt schau dir mal die Member an .
     
  5. 12. September 2008
    AW: PID (Process ID) vom Browser bekommen


    Ein großes Danke von mir!! BW bekommse gleich - habs nun so gelöst:

    Code:
    int main()
    {
     STARTUPINFO si;
     PROCESS_INFORMATION pi;
    
     memset(&si,0,sizeof(si));
     memset(&pi,0,sizeof(pi));
     si.cb =sizeof(si);
     si.wShowWindow = SW_HIDE;
     si.dwFlags = STARTF_USESTDHANDLES;
    
     char prog[MAX_PATH] = "d:\\Programme\\Mozilla firefox\\Firefox.exe";
    
    
     CreateProcess(prog,NULL,0,0,TRUE,CREATE_SUSPENDED,0,".",&si,&pi);
     
     cout << pi.dwProcessId;
     
     CloseHandle(pi.hProcess); 
    
    
     return 0;
    }
     
  6. Video Script

    Videos zum Themenbereich

    * gefundene Videos auf YouTube, anhand der Überschrift.