![]() |
Window Handle
Hallo ich möchte gerne ein Javafenster auslesen stoße aber leider dabei auf große Probleme
zur Zeit versuche ich es so
Code:
Aber wie lese ich dieses Fenster nun aus und schreibe den Inhalt in ein Memo ?// Fenster suchen. iWindow := FindWindow(nil, PChar('entsprechende Fensterbezeichnung'); // damit schreibe ich in das Editfeld des Fensters und sende es anschließend EnumChildWindows(iWindow, @EnumWindowsProc, LongWord(Edit1)); SendMessage(iWindow,WM_KEYDOWN,VK_RETURN, 0); SendMessage(iWindow,WM_KEYUP,VK_RETURN, 0) MFG: DelphiUser88 |
Re: Window Handle
Java kennt keine Fenster, wie man sie unter Windows üblicherweise kennen würde. Java zeichnet alles komplett selber. Vergleichbar mit einm TLabel aus der VCL. Dem zu folge haben sie auch keine Handles und der Zugriff mit Hilfe der Windows API-Funktionen ist nicht möglich.
|
Re: Window Handle
Hallo Michael
Das Senden funktioniert aber der Text wird in das Editfeld des Applet Fenster (Chat) geschrieben und anschließend gesendet Wenn dieser nun im Fenster zusehen ist möchte ich ihn wieder auslesen und in ein Memo schreiben geht das ? |
Re: Window Handle
Welche URL betrifft es denn?
|
Re: Window Handle
URL tut nichts zur Sache hier noach einmal der gesamte Code
Delphi-Quellcode:
Wie schon erwähnt das senden funktioniert nur wie Auslesen ?// globale Variablen searchNr : Integer; gewuenschteNr : Integer; iWindow : THandle; function EnumWindowsProc(Handle: THandle; Edit: TEdit): Boolean; stdcall; begin if Assigned(Edit) and (searchNr = gewuenschteNr) then begin SendMessage(Handle, WM_SETTEXT, 0, integer(PChar(Edit.Text))); Result := false; end else begin Result := true; Inc(searchNr); end; end; //--------------------------------------------------------------------------------- procedure TForm1.SendBtnClick(Sender: TObject); begin // Fenster suchen. iWindow := FindWindow(nil, PChar('entsprechende Fensterbezeichnung'); searchNr := 0; gewuenschteNr := 5; // damit schreibe ich in das Editfeld des Fensters und sende es anschließend EnumChildWindows(iWindow, @EnumWindowsProc, LongWord(Edit1)); SendMessage(iWindow,WM_KEYDOWN,VK_RETURN, 0); SendMessage(iWindow,WM_KEYUP,VK_RETURN, 0); end; |
Re: Window Handle
setzen: WM_SETTEXT
Text auslesen... WM_GETTEXT |
Re: Window Handle
Danke Toms für die schnelle Antwort bekomme ich aber leider nicht hin :(
|
Re: Window Handle
Zitat:
|
Re: Window Handle
Wie gesagt möchte ja das Fenster auslesen und in ein Memo übertragen also hab ich die Funktion verändert
Delphi-Quellcode:
Bin ich den jetzt überhaupt auf dem richtigen Wege :-D
/----------------------
function GETTXT(Handle: THandle; Memo: TMemo): Boolean; stdcall; begin if Assigned(Memo) and (searchNr = gewuenschteNr) then begin SendMessage(Handle, WM_GETTEXT, 0, Integer(PChar(Memo.Text))); Result := false; end else begin Result := true; Inc(searchNr); end; end; //----------------------- procedure TForm1.GetTextBtnClick(Sender: TObject); begin // Fenster suchen. iWindow := FindWindow(nil, PChar('entsprechende Fensterbezeichnung'); searchNr := 0; gewuenschteNr := 5; // jetzt möchte ich aber Auslesen und in Memo1 schreiben EnumChildWindows(iWindow, @EnumWindowsProc, LongWord(Memo1.Text)); SendMessage(iWindow,WM_KEYDOWN,VK_RETURN, 0); SendMessage(iWindow,WM_KEYUP,VK_RETURN, 0); end; |
Re: Window Handle
keiner eine Idee ?
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:21 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz