Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Eingabe in Programmexternem Editfeld (https://www.delphipraxis.net/63498-eingabe-programmexternem-editfeld.html)

Safran 19. Feb 2006 19:45


Eingabe in Programmexternem Editfeld
 
Hallo Community,

Eins vorweg, ich bin kein Delphifreak! ;-) Also ich programmiere nicht häufig in Delphi.

Mein Ziel ist es ein Programm zu schreiben welches in bestimmten Zeitintervallen ein Text in ein anderes Programm schreibt.
Mein Problem ist dabei das versenden des Textes, nicht die Zeitintervalle oder sonstiges.
Ich habe mich jetzt mal ein bischen schlau gemacht und das ganze für den Editor programmiert, da dies wohl das einfachste Programm auf meinem Rechner ist. Dabei kam folgendes raus:

Delphi-Quellcode:
var
  wnd : HWND;
  i  : Integer;
  s  : string;
begin
  wnd := FindWindow('notepad',nil);
  if wnd <> 0 then begin
    wnd := FindWindowEx(wnd,0,'Edit',nil);
    s := 'Das ist mein Text';
    For i := 1 to Length(s) do
      SendMessage(wnd, WM_CHAR, Word(s[i]), 0);
  end;
end;
Jetzt wollte ich mal eine Stufe höher gehen und wollte mich an einem Firefoxfenster probieren (Java).

Das Programm X-Spy liefert mir für das Editfeld folgende Daten:

Delphi-Quellcode:
  wnd := FindWindow('J', nil);
  wnd := FindWindowEx(wnd, 0, 'SunAwtCanvas', nil);
  wnd := FindWindowEx(wnd, 0, 'Edit', nil);
Wenn ich die Notepadzeile durch "wnd := FindWindow('J', nil);" ersetze passiert nichts, außer das mein Prozessor ausgelastet ist, also habe ich mir gedacht das ich das Editfeld wohl direkt ansprechen muss.
Allerdings habe ich keine Ahnung wie, habe jetzt schon zwei Stunden daran rumprobiert.

Danke für eure Hilfe!

fG Safran


Alle Zeitangaben in WEZ +1. Es ist jetzt 02:28 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