ALT + A an fremde Anwendung senden.
Servus,
habe hier die Funktion PostKeyExHWND gefunden. Mit dieser Funktion kann ich eine Taste an eine bestimmte Anwendung senden, nur leider klappt das so nicht ganz :( Fenster finden
Delphi-Quellcode:
und dann die Tasten senden
h := WindowFromPoint(pt);
Windows.ScreenToClient(h, pt); h := ChildWindowFromPoint(h, pt);
Delphi-Quellcode:
habe auch schon probiert
PostKeyExHWND(h, ORD('A'), [ssAlt], false);
Delphi-Quellcode:
Aber nichts funktioniert, kann mir da einer weiterhelfen?
PostKeyExHWND(h, $41, [ssAlt], false);
Gruß |
Re: ALT + A an fremde Anwendung senden.
ok weis jetzt wieso das kommt, die Anwendung braucht den Focus.
Also wenn ich in der Anwendung bleibe und die Anwendung ist aktiv, derzeit sende ich dann aus meiner Anwendung die Tasten funktioniert es. Es funktioniert nicht wenn ich die Funktion BringToFront und setfocus aufrufe. Hat da eventuell jemand ne idee, wie man das ganze lösen könnte, eventuell ohne das die Anwendung sichtbar sein muss. gruß |
Re: ALT + A an fremde Anwendung senden.
Was willst du denn genau machen? In einem Eingabefeld den ganzen Text auswählen? Dann sende doch an das Fenster die Nachricht EM_SETSEL.
|
Re: ALT + A an fremde Anwendung senden.
nein möchte das der Button gedrückt wird. Und mit alt + x geht es weiter.
Möchte gerne von einem Programm ein Script erstellen wo alles drin steht und mein Programm sendet dann die Daten an das Programm. Somit braucht der User nichts einzugeben, sondern das Programm wird auf dem Rechner ohne eingriffe installiert. |
Re: ALT + A an fremde Anwendung senden.
Simuliere Klicks auf die Buttons.
|
Re: ALT + A an fremde Anwendung senden.
Habe aber doch nur das Handel von der Anwendung. Wie soll ich dann bei einem bestimmten Button ein klick Simulieren.
|
Re: ALT + A an fremde Anwendung senden.
Zitat:
|
Re: ALT + A an fremde Anwendung senden.
Kannst ja auch mal HIER gugn .. sollte/könnte weiterhelfen.
|
Re: ALT + A an fremde Anwendung senden.
Zitat:
Zitat:
|
Re: ALT + A an fremde Anwendung senden.
Zitat:
|
Re: ALT + A an fremde Anwendung senden.
Also ideal wäre eine Kombination der hier gefallenen Vorschläge:
Handle des Edit/Memo-Control ermitteln und dann mit den rischtigen Botschaften arbeiten, wie Lukie vorgeschlagen hat (EM_SETSEL, WM_CUT etc.) Das Control (Classname und evtl. Name) ermittelt man einmal per WinSpy, danach kann man das vor jedem Botschaft senden bei Bedarf kurz suchen. |
Re: ALT + A an fremde Anwendung senden.
Zitat:
Delphi-Quellcode:
procedure PostKeyExHWND(hWindow: HWnd; key: Word; const shift: TShiftState; specialkey: Boolean);
|
Re: ALT + A an fremde Anwendung senden.
Zitat:
|
Re: ALT + A an fremde Anwendung senden.
oh :oops:
Und du kannst damit nicht an Andere Anwendungen was senden? |
Re: ALT + A an fremde Anwendung senden.
doch das kann ich. Wenn ich was sende sieht es so aus als ob die Alt Taste im Programm gedrückt wurde. Aber der Buchstabe kommt nicht an.
An einem Notepad kann ich senden. |
Re: ALT + A an fremde Anwendung senden.
|
Re: ALT + A an fremde Anwendung senden.
Hi,
Vielleicht bringt es auch was, wenn du zuerst nur Alt schickst und dann direkt das A hinterher. Bzw. Vielleicht musst du auch ein kleines a senden, also $61 oder du brauchst den Scancode der A-Taste.. Gruß Neutral General |
Alle Zeitangaben in WEZ +1. Es ist jetzt 17:58 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz