frage zu createprocess



  • hallo,

    ich starte aus meiner mfc-anwendung mit createprocess zwei unterschiedliche programme mit dem gleichen namen.
    nun soll ich - abhängig von meiner anwendung - einmal eine nachricht an das erste programm bzw. mal an das zweite schicken.
    ich weiss zwar, dass ich mit PROCESS_INFORMATION einen handle auf die anwendungen habe-aber WIE kann ich das richtige Window identifizieren ?
    danke !



  • EnumWindows um alle Desktop-Windows zu enumerieren und GetWindowThreadProcessId bzw. GetWindowModuleFileName



  • vorerst danke für die antwort. allerdings blicke ich da noch nicht ganz durch.

    nachdem ich nun 2 unterschiedliche programme (aber gleicher name) mit createprocess gestartet habe, habe ich mir mit PROCESS_INFO.hProcess die Prozesshandles "gemerkt".
    Allerdings find ich nicht raus - wie bzw. ob ich nun mit den prozesshandles zugriff auf die jeweiligen windows-handles bekomme.

    bitte dringend um hilfe !!!



  • Du mußt andersherum vorgehen:

    1. Alle Desktop-Fenster enumerieren (mit EnumWindows)
    2. Jedes Fenster checken ob es zu dem entsprechenden Prozeß gehört. (mit GetWindowThreadProcessId)


  • danke - habs hingekriegt ! 🤡


Anmelden zum Antworten