Bir başka programdaki richedit e mesaj gönderme.

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
Kullanıcı avatarı
Shou
Üye
Mesajlar: 260
Kayıt: 26 Ağu 2011 02:00

Bir başka programdaki richedit e mesaj gönderme.

Mesaj gönderen Shou »

Merhaba ben bir başka programdaki richedit e mesaj göndermek istiyorum mesajı gönderiyorum ama rengini ayarlıyamıyorum ve şöyle bir sorun var. Şimdi mesaj gönderdik örnek,

Kod: Tümünü seç

deneme mesaj
Mesaj gidiyor ondan sora yeni mesaj varsa richedit de bu deneme mesaj üstünde çıkıyor yani altında çıkması gerekirken en sonda kalıyor hep.

Kod: Tümünü seç

  type
  PColor = ^TColor;
  TColor = -$7FFFFFFF-1..$7FFFFFFF;

Kod: Tümünü seç

procedure TForm1.Button1Click(Sender: TObject);
var
cf:CHARFORMAT2;
zaman:tsystemtime;
begin
getlocaltime(zaman);
ZeroMemory(@cf, sizeof(CHARFORMAT2));
cf.cbSize := sizeof(cf);
cf.dwMask := CFM_COLOR;
cf.crTextColor := TColor($0000FF);
SendMessage(findwindowex(findwindow('SphereSvr',nil),0,pchar('RichEdit20A'),nil),em_setsel,$7FFFFFF, $7FFFFFFF);
SendMessage(findwindowex(findwindow('SphereSvr',nil),0,pchar('RichEdit20A'),nil),em_setsel,$7FFFFFF, $7FFFFFFF);
sendmessage(findwindowex(findwindow('SphereSvr',nil),0,pchar('RichEdit20A'),nil), EM_SETCHARFORMAT, SCF_SELECTION, LPARAM(@cf));

sendmessage(findwindowex(findwindow('SphereSvr',nil),0,pchar('RichEdit20A'),nil),em_replacesel,0,longint('## ['+(int2str(zaman.wHour)+':'+int2str(zaman.wMinute)+':'+int2str(zaman.wSecond)+'] - ['+
int2str(zaman.wDay)+':'+int2str(zaman.wMonth)+':'+int2str(zaman.wYear)+'] : "127.0.0.1" ip adresi giris denedi.'+#13#10)));

SendMessage(findwindowex(findwindow('SphereSvr',nil),0,pchar('RichEdit20A'),nil),em_setsel,$7FFFFFF, $7FFFFFFF);
SendMessage(findwindowex(findwindow('SphereSvr',nil),0,pchar('RichEdit20A'),nil),em_setsel,$7FFFFFF, $7FFFFFFF);
end;
Birde renkli göndermeyi bir türlü başaramadım.
Kullanıcı avatarı
mrmarman
Üye
Mesajlar: 4741
Kayıt: 09 Ara 2003 08:13
Konum: İstanbul
İletişim:

Re: Bir başka programdaki richedit e mesaj gönderme.

Mesaj gönderen mrmarman »

Merhaba.

SphereSvr isimli üçüncü bir programa özel bir çalışma yapıyor olduğunuzu görüyorum. Buradakinin RichEdit olup olmadığını dahi bilemeyeceğimden yorum yapamayacağım. Ne yazsak o programa özel bir farklılık ile sonuç alınamayabilir.

Kaldı ki, fikrimce örneğinizde belirttiğiniz türden bir mesajı ilgili RichEdit üzerine yazı yazmak, o projede neye fayda sağlayacak onu da merak ettim. Fake bir loglama işlemi gibi geldi bana.

Kendiniz bu linkte örnekleri var. Bir inceleyiniz. :idea:
Böyle çalışmalarda yapılmasını salık verdiğimiz yöntem, kendinize özel bir yapı oluşturup demelerinizi onun üzerinde gerçekleştirdikten sonra üçüncü parti platformlara geçiş yapmanız. Suyun üzerine yazı yazıyor olmaz, yere basan bir teknik ile ilerleme sağlamış olursunuz.

Başarılar.
Resim
Resim ....Resim
Cevapla