Einzelnen Beitrag anzeigen

Benutzerbild von Assun
Assun

Registriert seit: 3. Feb 2005
Ort: Hilzingen am Bodensee
469 Beiträge
 
Delphi 2005 Personal
 
#11

Re: xFire Chatfenster Text senden !?!

  Alt 8. Okt 2005, 16:25
also mit

Delphi-Quellcode:
const
  mystring: string = 'Ich bin gerade nicht am PC !';
var
  wh,textfeld: HWND;
  i: Integer;
begin
  wh := FindWindow('ChatSkinWnd', 'assun - Gruppen-Chat'); // Window finden
 Windows.SetFocus(wh); // Focus auf das empfangende Prg. damit es auch Keys verarbeitet ?
  if wh <> 0 then
  begin
     Windows.SetFocus(Handle); // Focus auf dein Prog.

    SendMessage(wh, WM_Settext,0,Integer(Pchar(myString)));
end else
  ShowMessage('Sorry, Window not found, start the Notepad pleace ?');
  
end;
hat xFire danach die caption "Ich bin gerade nicht am PC" bzw im Taskmanager wird dann der Text angezeigt.


wenn ich

Delphi-Quellcode:
const
  mystring: string = 'Ich bin gerade nicht am PC !';
var
  wh,textfeld: HWND;
  i: Integer;
begin
  wh := FindWindow('ChatSkinWnd', 'assun - Gruppen-Chat'); // Window finden
 Windows.SetFocus(wh); // Focus auf das empfangende Prg. damit es auch Keys verarbeitet ?
  if wh <> 0 then
  begin
     Windows.SetFocus(Handle); // Focus auf dein Prog.
     textfeld := FindWindowEx(wh, 0, 'RichEdit20W', nil);
    SendMessage(textfeld, WM_Settext,0,Integer(Pchar(myString)));
end else
  ShowMessage('Sorry, Window not found, start the Notepad pleace ?');
  end;

Verwende, bleibt zwar die Caption von xFire normal, aber der text wird auch nicht angezeigt.

Mir ist aber gerade etwas aufgefallen !!!

und zwar hat xFire ja 2 "EditFelder". eines indem der Chat an sich abläuft, also indem man das sieht was man und sien chatpartner schreibt und noch ein editfeld, indem man schreiben und dann absenden kann.

das problem : BEIDE !! Felder heissen "RichEdit20W"

Nur dass das eine Readonly (das indem der chat abläuft) ist und das andere normal.

Nun ist es warscheinlich so dass mein code sich das erste von beiden krallt und seinen text hinein klatscht. nun ist warscheinlich dummerweise das erste feld aber das readonly --> deswegen denkt man auch es geschieht einfach gar nix und das eigentliche feld bleibt leer.

Doch wie kann ich dieses Problem umgehen, sodass in das richtige feld geschrieben wird ?

Wiegesagt beide heissen gleich.

Vielen Dank für Eure hilfe !!
Sebastian Dietrich
http://Assun.de - bald komplett überarbeitet
  Mit Zitat antworten Zitat