![]() |
In fremdes Fenster schreiben [SunAwtCanvas]
hallo,
ich versuche per SENDMESSAGE einen Text an ein Edit von einem Chat zu senden. Um das Handle zu bekommen habe ich WinSpy benutzt, das mir dann folgenden Code erstellt hat:
Code:
function FindWindowEx2(hParent: HWND; ChildClassName: string; ChildNr: Word): HWND;
var i: Word; hChild: HWND; begin ChildNr := ChildNr - 1; for i := 0 to ChildNr do begin hChild := FindWindowEx(hParent, hChild, PChar(ChildClassName), nil); if hChild = 0 then Exit; Result := hChild; end; end;
Code:
ich habe testweise dieses versucht:
var
wnd: HWND; begin wnd := FindWindow('COM.volano.vau','Aachen Flirt (fdfdfd)'); wnd := FindWindowEx2(wnd,'SunAwtCanvas', 2); wnd := FindWindowEx(wnd, 0, 'Edit', nil); if wnd <> 0 then begin writeln('Window found. Handle: ' + IntToStr(wnd)); FlashWindow(wnd); end; end.
Code:
nur leider wird meine showmessage nicht ausgeführt,
if wnd <> 0 then
ShowMessage('Fenster gefunden'); end; was mich zu dem schluss bringt das, das fenster bzw. die editbox nicht gefunden werden kann. nur ist die frage -> wieso? wenn ich den quelltext mit WinSpy kompiliere und ausführe wird die editbox zum blinken gebracht. was mache ich falsch, bzw. warum funktioniert es nicht. ich kann in andere fenster problemlos reinschreiben. nur sobald diese fenster irgendwas mit "SunAwtCanvas" zutun haben gehts nichts mehr. In Google konnte ich nichts über "SunAwtCanvas" finden. Zumindest nichts was mich weitergebracht hätte. Bin für jeden Vorschlag und Lösungsweg dankbar. greetz Wishy |
Re: In fremdes Fenster schreiben [SunAwtCanvas]
hallo nochmal,
hatte leider vergessen die meldungen vom compiler anzugeben:
Code:
greetz
Variable 'hChild' ist möglicherweise nicht initialisiert worden
Rückgabewert der Funktion 'FindWindowEx2' könnte undefiniert sein Wishy |
Re: In fremdes Fenster schreiben [SunAwtCanvas]
Hi,
Ich vermute, dass die Funktion FindWindowEx2 nicht mit der internen FindWindowEx2 übereinstimmt, welche ja anscheinend das Fenster findet. Werde das heute Abend überprüfen. |
Re: In fremdes Fenster schreiben [SunAwtCanvas]
\\edit: War Quatsch. Ich bin von einer Application ausgegangen...
|
Re: In fremdes Fenster schreiben [SunAwtCanvas]
Zitat:
Hatte tatsaechlich etwas mit der Initialisation von hChild zu tun. Brauchst nur noch hChild := 0; hinzuzufuegen, dann sollte die Funktion korrekt ausgefuehrt werden.
Delphi-Quellcode:
function FindWindowEx2(hParent: HWND; ChildClassName: string; ChildNr: Word): HWND;
var i: Word; hChild: HWND; begin hChild := 0; // <------------- ChildNr := ChildNr - 1; for i := 0 to ChildNr do begin hChild := FindWindowEx(hParent, hChild, PChar(ChildClassName), nil); if hChild = 0 then Exit; Result := hChild; end; end; |
Re: In fremdes Fenster schreiben [SunAwtCanvas]
Für alle, die es intersssiert, in einem anderem Forum wurde dem Threadersteller bereits geholfen:
![]() :roll: |
Alle Zeitangaben in WEZ +1. Es ist jetzt 01:42 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-2025 by Thomas Breitkreuz