| |
|
|
Timotheus | ¡Hola,
Yo habe una Cuestión. ¿Es posible irgendwie el Systemfocus a ermitteln? Der en el Profanfenster es sí posible, aber va el auch en otro Fenstern?
Timo |
|
|
| |
|
|
|
| ¡Hola Timo...
Wozu necesidad du el Focus? Tal vez hay una bessere Solución..,. |
|
|
| |
|
|
|
| ¡Hola Timo...
Hab veces grad qué zusammengeschrieben: KompilierenMarcaSeparaciónDEF @AttachThreadInput(3) !"USER32","AttachThreadInput"
DEF @GetWindowThreadProcessId(2) !"USER32","GetWindowThreadProcessId"
DEF @APIGetFocus(0) !"user32","GetFocus"
DEF @GetAsyncKeyState(1) !"user32","GetAsyncKeyState"
Windowstyle 31
Windowtitle "Focus auf Fremdfenster"
Window 0,0-640,80
Declare Merker&,Thread1&,Thread2&,PR_ID1&,PR_ID2&,ControlHandle&
LET THREAD1&=@GetWindowThreadProcessId(%HWND,@ADDR(PR_ID1&))
@GetAsyncKeyState(1) Reset => Mausklick links
While 0=0
sleep 10
IF @GetAsyncKeyState(1)<>0 Wenn Mausklick links
LET THREAD2&=@GetWindowThreadProcessId(@GetactiveWindow(),@ADDR(PR_ID2&)) ID der Befehlsschleife des Programms, das im Vordergrund läuft, ermitteln
IF THREAD2&<>THREAD1&
LET MERKER&=@AttachThreadInput(Thread2&,Thread1&,1) Eingabe an eigenes Programm umleiten
LET ControlHandle&=@APIGetFocus() Jetzt geht GetFocus!
endif
IF MERKER&
@AttachThreadInput(Thread2&,Thread1&,0) Umleitung aufheben
endif
Drawtext 0,0,@GETTEXT$(ControlHandle&)+@space$(255)
Drawtext 0,30,@STR$(ControlHandle&)+" "+@STR$(@APIGetFocus())+@space$(255)
endif
wend
Nochmals: Was hast du genau antes? Tal vez gibts qué besseres? |
|
|
| |
|
|
|
Frank Abbing | Hi,
y veces en aller Kürze: Usted puede el API GetFocus() uso... |
|
|
| |
|
|
|
| ¡Hola Franco... [quote:899866a8ff=Frank Abbing]Hi,
y veces en aller Kürze: Usted puede el API GetFocus() uso...[/quote:899866a8ff] Schön wärs. Aus el WIN32.HLP: The GetFocus function retrieves the handle of the keyboard focus window associated with the thread that called the function.
Tiempo ausprobiert, si el wirklich siempre klappt? Beim me (Windows98) scheinbar con el API GetFocus alleine no... |
|
|
| |
|
|
|
Timotheus | Sí, klappt!!! Exactamente el Yo quería!
Timo |
|
|
| |
|
|
|
| ¡Hola Timo...
Nochmals Yo: Wozu necesidad Si es usted el Handle genau - tal vez gehts anders auch... |
|
|
| |
|
|
|
Timotheus | Yo denke no dass lo anders va. Yo möchte nähmlich en un determinado Ventana una bestimmtes Fensterobjekt auslesen. Como se el Ventana no ändert kann I el Objeft el Fokus legen, y erhalte el Handle. Den kann Yo entonces como Konstante en una variable eintragen, y ya kann Yo dieses Objeto auslesen. Aber Yo hätte ni Cuestión. Nämlich a Eingaben con el Tastatur. In el API-Biblioteca hay dazu auch ya algo ähnliches. Diese son aber sólo en el Cuestión antwort, si seit el letzten Aufruf el Función una cierto Taste gedrückt wurde. Wenn Yo ahora aber el Taste incluso herausfinden möchte va el no sin weiteres, porque GetAsyncKeyState() después de el nächsten Aufruf el gedrückte otra vez löscht, y yo sonach no una vez el todo Tastatur abfragen podría. Gibt lo una Möglichkeit el el direkten Valor el gedrückten Taste zurückgibt?
Timo |
|
|
| |
|
|
|
| ¡Hola Timo...
Puedo me ya vorstellen, qué du möchtest . Frank Abbing ha veces a la muy guten Keylogger programmiert - con Hook-DLL. Tal vez ha él ni Concepto. |
|
|
| |
|
|
|
| ¡Hola Timo, si Usted nichts ausmacht una extra DLL einzusetzen, kann Yo Usted el AutoItX.dll empfehlen. El erlaubt vollen Zugriff en fremde Ventana, auch en cada Controls. Setze Me gusta una, nimmt una nee Menge a API-Proggerei de. Diese Freeware DLL findest Usted bajo: [...] El Doku Aunque english, aber con el DLL-Importer usw. debería uno klarkommen. |
|
|
| |
|
|
|
Timotheus | Ausmachen tut me nichts, aber könntest du me eventuell el Namen el Función geben? Das einzige Yo en Keyboardkontrolle fand, waren Befehle para Eingeben en cierto Objetos.
Timo |
|
|
| |
|
|
|
| Yo bezog mich sí eigentlich el con el Handles (Foco) usw de Fremdfenstern. Con el Keylogging tener Yo liso übersehen. |
|
|
| |
|
|