Entwickler-Ecke
Windows API - hprocess für ein fremdes, schon laufendes Programm ermitteln
michasbaer - Mi 09.05.07 11:52
Titel: hprocess für ein fremdes, schon laufendes Programm ermitteln
Hallo,
mit einem kleinen Programm 'fernsteuere' ich Menüklicks in fremden Programmen.
Wenn diese Programme von meinem Programm aus mit CreateProcess gestartet werden,
bekomme ich in der Process_Information .hprocess geliefert und alles ist in Ordnung.
Wenn aber das fernzusteuernde Programm schon läuft, weiß ich nicht wie man den hprocess
ermittelt. Ich würde Ihn brauchen um durch waitforinputidle(hprocess,dwMilliseconds)
ein 'Überholen' des fremden Programmes zu verhindern.
Gib's da was ?, schon mal Danke für jede Hilfe
Delete - Mi 09.05.07 14:25
Mit OpenProcess bekommst du ein Handle auf den Prozess.
michasbaer - Mi 09.05.07 17:11
Hallo Michael,
schönen Dank für OpenProcess, aber ich glaube wenn man sich durch die
ganzen DesiredAccess-Parameter durchgekämpft hat, und dann den SYNCHRONIZE
auswählt (hab's aber auch mit anderen probiert) dann liefert OpenProcess nicht
hprocess, sondern ein handle auf ein Processobjekt, das man dann für Wait's ob
Single-, Multi- oder Alert-Objekte hernehmen kann.
Der WaitForInputIdle wartet erstens nicht, wenn man ihn mit Processobjekten
bedient, und blöderweise ist das der einzige Wait der mir bekannt ist, der
tatsächlich wartet, bis alle Rechenvorgänge, IO-Vorgänge abgeschlossen sind
und die Anwendung bereit ist, neue Tastatur- oder Mausaktivitäten entgegen-
zunehmen.
Mir ist aufgefallen, daß sich der hprocess für ein Programm nie ändert, wenn
man ihn mit CreateProcess anschmeisst - was ist hprocess - ???
Wenn Dir als Alternative zum WaitForInputIdle irgendetwas einfällt, nehm ich das
und wir können den Thread schließen.
Nochmal Danke
Gruß
Rainer
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2025 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!