Einzelnen Beitrag anzeigen

PLuS

Registriert seit: 3. Nov 2005
Ort: Dortmund
1 Beiträge
 
#9

Re: Teamspeak Log FensterHandle ermitteln

  Alt 5. Feb 2007, 18:13
Du musst bedenken, dass das Log-Window noch auf einem Panel ist, also nicht direkt ein Child des Main-Windows ist.
Ich habe mir das auch irgendwann mit WinSpy gesucht und dann daraus diese Funktion gebastelt:

Delphi-Quellcode:
function FindWindowEx2(hParent: HWND; ChildClassName: string; ChildNr: Word): HWND;
var
  i: Word;
  hChild: HWND;
begin
  hChild := 0;
  Result := 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;

function FindTS2LogHandle: THandle;
var
  Form, Panel: THandle;
begin
  Form:=FindWindow('TMainForm', 'TeamSpeak 2');
  Panel:=FindWindowEx2(Form, 'TPanel', 2);
  Result := FindWindowEx(Panel, 0, 'TRichEditWithLinks', NIL);
end;
Thomas Pathmann
  Mit Zitat antworten Zitat