Einzelnen Beitrag anzeigen

Benutzerbild von toms
toms
(CodeLib-Manager)

Registriert seit: 10. Jun 2002
4.648 Beiträge
 
Delphi XE Professional
 
#7

Re: Textinhalt eines Objekts einer anderen Anwendung

  Alt 1. Mai 2008, 09:18
Bist du sicher, dass das Handle richtig ist?

Denn der Klassenname vom Garena Hauptfenster ändert sich jeweils.

Dein Code zum Suchen des Fensters wird etwa so aussehen (Erzeugt mit WinSpy)

Delphi-Quellcode:
var
  wndMain, wndChild: HWND;
begin
  wndMain := FindWindow('Afx:00400000:b:00010011:00000006:031B08B5','Garena 2.3');
  if wndMain <> 0 then
  begin
    wndChild := FindWindowEx(wndMain, 0, 'AfxMDIFrame80u', nil);
    wndChild := FindWindowEx(wndChild, 0, '#32770', nil);
    wndChild := FindWindowEx(wndChild, 0, 'RichEdit20W', nil);
    if wndMain <> 0 then
    begin
      ShowMessage('Window found. Handle: ' + IntToStr(wndChild));
    end;
  end;
end;

Schreibe einfach mal:
wndMain := FindWindow(nil ,'Garena 2.3'); Besser wäre eine EnumWindows Funktion, welche die Fenster auf Klassenname "Afx:" und den Titel auf "Garena " überprüft.
Thomas
  Mit Zitat antworten Zitat