Konuyu Oyla:
  • Derecelendirme: 3.5/5 - 2 oy
  • 1
  • 2
  • 3
  • 4
  • 5
WM_NCPAINT - delphi ile caption değiştirme.
#1
Merhaba arkadaşlar delphi ile WM_NCPAINT kullanmak istiyorum bir türlü başaramadım yapmak istediğim olay şu,

caption kısmına resim veya progressbar eklemişler ve istediği yazıyı renkli yapabiliyorlar.

MkWQB1.jpg
caption.dll'yi -> client.exe -> inject ediyorum.

client.exe'nin kaynak kodları yok o yüzden düzenleme şansımız yok.

Bu şekil'de benim dll ile onun caption'unu değiştirebilirmiyiz ben bir türlü başaramadım bu yüzden yardımınıza ihtiyacım var.

D3Vmrm.jpg

EJ7BJn.jpg

70 ila 100 arası => YEŞİL.
40 ila 70 arası => SARI.
0 ila 40 arası => KIRMIZI.

Renk olarak gösteriyor değerleri.

c# kaynak kodları var programın baktım inceledim baya ama c# bilmiyorum biraz karışık geldi ve bunu delphi projem olduğu için delphi'de yapmak istiyorum lütfen yardımcı olursanız sevinirim, teşekkürler.
Cevapla
#2
(26-08-2016, Saat: 08:50)Shou Adlı Kullanıcıdan Alıntı:
Merhaba arkadaşlar delphi ile WM_NCPAINT kullanmak istiyorum bir türlü başaramadım yapmak istediğim olay şu,

caption kısmına resim veya progressbar eklemişler ve istediği yazıyı renkli yapabiliyorlar.

MkWQB1.jpg
caption.dll'yi -> client.exe -> inject ediyorum.

client.exe'nin kaynak kodları yok o yüzden düzenleme şansımız yok.

Bu şekil'de benim dll ile onun caption'unu değiştirebilirmiyiz ben bir türlü başaramadım bu yüzden yardımınıza ihtiyacım var.

D3Vmrm.jpg

EJ7BJn.jpg

70 ila 100 arası => YEŞİL.
40 ila 70 arası => SARI.
0 ila 40 arası => KIRMIZI.

Renk olarak gösteriyor değerleri.

c# kaynak kodları var programın baktım inceledim baya ama c# bilmiyorum biraz karışık geldi ve bunu delphi projem olduğu için delphi'de yapmak istiyorum lütfen yardımcı olursanız sevinirim, teşekkürler.

 Neden başka bir uygulama için bunu yapmak istediğinizi anlamamakla beraber; istediğiniz işin yazılım jargonunda adı subclassing'tir. Bunun için öncelikle GetWindowLong API'si vasıtası ile ilgili pencerenin mesaj yöneticisinin(GWL_WNDPROC) adresini elde etmelisiniz ardından SetWindowLong ile yeni mesaj yöneticisini atamalısınız. Küçük bir örneğe buradan ulaşabilirsiniz.
Mal sahibi, mülk sahibi
Hani bunun ilk sahibi ?
Mal da yalan mülk de yalan
Var biraz da sen oyalan...
WWW
Cevapla
#3
Teşekkür ederim hocam cevabınız için şimdi bu bir uygulama ve böyle bir özellik yapmak istiyorum ben'de o programı yazan kişi öyle bir özellik yapmış fakat o program sadece kendi programında çalışıyor yani benim yapmak istediğim bende kendim kullandığım client.exe için yapmak istiyorum.
Cevapla


Konu ile Alakalı Benzer Konular
Konular Yazar Yorumlar Okunma Son Yorum
  Delphi 7- 4 Adet Tablo Döngü Problemi bsrgmsy 2 139 20-05-2019, Saat: 17:17
Son Yorum: bsrgmsy
  C# -> Delphi ... Gürcan 2 113 20-05-2019, Saat: 14:41
Son Yorum: Gürcan
  Kelime Değiştirme quiet1day 23 2.273 04-05-2019, Saat: 17:51
Son Yorum: Halil Han Badem
  Delphi XE6'da oluşan XML XE'de farklı. WSDL Wizard hata yapar mı ? boreas 7 348 22-04-2019, Saat: 12:55
Son Yorum: boreas
  Delphi proje sorunu wiseman 3 120 19-04-2019, Saat: 13:56
Son Yorum: Fesih ARSLAN



Konuyu Okuyanlar: 1 Ziyaretçi