Msn Penceresine Yazı Yazma Yada Yazdırma ?
Forum kuralları
Forum kurallarını okuyup, uyunuz!
Forum kurallarını okuyup, uyunuz!
Msn Penceresine Yazı Yazma Yada Yazdırma ?
Msn Penceresine Yazı Yazma Yada Yazdırma ?
Bunu Programla Nasıl Yaparım ?
Bunu Programla Nasıl Yaparım ?
parmakları kırılan bu yazar yılmadı
bunu apilerden yararlanarak yapabiliriz soru hoşuma gitti. Ufak bir örnek yaptım.
Şimdi Adım adım yapalım
Örnek olarak
Nuisance Nickli arkadaşımın penceresinden yararlanacam
Bu cvp sadece bilgi amaçlıdır. Kötü niyetle kullanmamanız dileyimle
Kolay Gelsin...
Şimdi Adım adım yapalım
Örnek olarak
Nuisance Nickli arkadaşımın penceresinden yararlanacam
Kod: Tümünü seç
//HUSONET
procedure TForm1.Button1Click(Sender: TObject);
var
H,L: HWND;
i:boolean;
begin
H:=FindWindow(nil,PChar('nuisance - Konuşma')); //Aslında ben pencere ismini alarak handle numarasını aldım fakat delphi ile birlikte gelen winsight32 programı ile classname olarak alabilirsiniz.
if h=0 then
begin
showmessage('Handle nosu alınamadı');
exit;
end;
L:=FindWindowEx(H,0,PChar('DirectUIHWND'),nil); // DirectUIHWND winsight323 programından yararlanarak buldum gerçekten de window pencereleri ile işlem yapacaksanız çok güzel bir araç
if L=0 then
begin
showmessage('P handle nosu alınamadı!');
exit;
end;
PostMessage(H, WM_SETFOCUS, 1, 0); //Arakadaşımın penceresine focuslandım
PostMessage(L,wm_char,72,0); //buradada istediğim msjı Ascii codlarını karakter karakter yazıp gönderdim
PostMessage(L,wm_char,85,0);
PostMessage(L,wm_char,83,0);
PostMessage(L,wm_char,79,0);
PostMessage(L,wm_char,78,0);
PostMessage(L,wm_char,69,0);
PostMessage(L,wm_char,84,0);
PostMessage(L,wm_char,46,0);
PostMessage(L,wm_char,67,0);
PostMessage(L,wm_char,79,0);
PostMessage(L,wm_char,77,0);
PostMessage(L,WM_KEYDOWN,vk_return,0);//buradada entera basıp send işlemini yerine getirmiş bulundum...
end;
Kolay Gelsin...
Gazete manşetleri
* DİKKAT :Lütfen forum kurallarını okuyalım ve uyalım...!
* Warez,crack vs. paylaşımı kesinlikle yasaktır.
Selam,
Husonet'in yazdığı elbette bir çözüm olabilir, ama kabul etmek gerekiyor ki, çok da resmi ve kuralına uygun bir çözüm değil.
Bu işi yapmanın asıl yolu şu: MSN'in SDK'sını indirip, MSN'in API'sini kullanarak işlem yapma. Normalde MS'in sitesinden sadece MSN Activity SDK indirilebiliyor, ama MSN Plus'ın SDK'sını indirecek olursan, onun içinde MSN'in de SDK'sını göreceksin. Bu SDK ile MSN Plus benzer bir program da yazabilirsin. Bu arada MSN Plus'ın özellikleri arasında senin istediğin özellik de var (Diğer bir deyişle MSN SDK ile bu işlem yapılabiliyor).
Kolay gelsin,
Bahadır Alkaç
NOT: MSN'in SDK'sı tahmin edebileceğin gibi C++ kodu. Büyük ihtimalle de sadece Visual C++ ile compile edilebiliyordur. MSN Plus için örnek kodlar var, belki onlar sana yardımcı olur.
Husonet'in yazdığı elbette bir çözüm olabilir, ama kabul etmek gerekiyor ki, çok da resmi ve kuralına uygun bir çözüm değil.
Bu işi yapmanın asıl yolu şu: MSN'in SDK'sını indirip, MSN'in API'sini kullanarak işlem yapma. Normalde MS'in sitesinden sadece MSN Activity SDK indirilebiliyor, ama MSN Plus'ın SDK'sını indirecek olursan, onun içinde MSN'in de SDK'sını göreceksin. Bu SDK ile MSN Plus benzer bir program da yazabilirsin. Bu arada MSN Plus'ın özellikleri arasında senin istediğin özellik de var (Diğer bir deyişle MSN SDK ile bu işlem yapılabiliyor).
Kolay gelsin,
Bahadır Alkaç
NOT: MSN'in SDK'sı tahmin edebileceğin gibi C++ kodu. Büyük ihtimalle de sadece Visual C++ ile compile edilebiliyordur. MSN Plus için örnek kodlar var, belki onlar sana yardımcı olur.
Re: Msn Penceresine Yazı Yazma Yada Yazdırma ?
mc_rapier yazdı:Msn Penceresine Yazı Yazma Yada Yazdırma ?
Bunu Programla Nasıl Yaparım ?
başka bi soru
hocam benbim de buna benzer bi sorum wardı.
yeni konu açmaktansa burdan sorayım dedim.
çalıştıım işyerinde bazı bilgisayarların msn e girmesini engelemek gerekiyor.
server client değilde küçük bir programla bunu yapmak istiyorum.
mesela progeamı kurduum pc de msn programı açıldığında bir mesaj werip msn i kapamam gerekiyor.
delphide yeniyim.
msn programı açılınca programı nasıl tetikleyebilirim ve nasıl bi mesaj göndrebilirim msn e.
bu konuda yardım ederseniz sewinirim.
yeni konu açmaktansa burdan sorayım dedim.
çalıştıım işyerinde bazı bilgisayarların msn e girmesini engelemek gerekiyor.
server client değilde küçük bir programla bunu yapmak istiyorum.
mesela progeamı kurduum pc de msn programı açıldığında bir mesaj werip msn i kapamam gerekiyor.
delphide yeniyim.
msn programı açılınca programı nasıl tetikleyebilirim ve nasıl bi mesaj göndrebilirim msn e.
bu konuda yardım ederseniz sewinirim.
Selam,
Şu an MSN'le ilgili bir program için kodlama yapıyorum, mesajı yazmamın sebebi de bu zaten.
1. IMessenger Interface'ine bağlan
2. MyStatus değerini al.
3. MyStatus değeri mesaj göndermeye elverişli mi? (Offline veya Invisible olmamalı)
4. IMessengerContacts Interface'ini al
5. IMessengerContacts Interface'inden, IMessengerContact abstract yapısını al
6. pIMessengerContact->InstantMessage ile pencere bilgisini al
7. Pencere bilgisinden, pencerenin gerçek Handle bilgisini al (Bu kısım husonet'in örneğinde statik. Nuisance Nickli arkadaşının penceresi)
8. Geri kalan kısmı husonet'in yazdığı gibi
9. Bellek temizliği yap
Ayrıca MSN-Plus'ın da pencereye yazı yazdırma işlemini bu şekilde yaptığını tespit etmiş bulunuyoruz.
Kolay gelsin,
Bahadır Alkaç
Şu an MSN'le ilgili bir program için kodlama yapıyorum, mesajı yazmamın sebebi de bu zaten.
Daha önce bu soruyla ilgili cevap olabilecek bir şeyler yazmışım, ama elbette işin içine girince, aslında MS'in güvenlik sebeplerinden dolayı, API üzerinde pencereye yazı yazdırma, karşı tarafa mesaj gönderme vs işlemleri yapmıyor. Diğer bir değişle, eğer MSN penceresine birşeyler yazdırmak istiyorsanız, husonet'in çözümü biraz geliştirilmeli. Aşağıda, kendi çıkardığım C++ koduna göre neler yapılması gerektiğini yazıyorum.Selam,
Husonet'in yazdığı elbette bir çözüm olabilir, ama kabul etmek gerekiyor ki, çok da resmi ve kuralına uygun bir çözüm değil.
Bu işi yapmanın asıl yolu şu: MSN'in SDK'sını indirip, MSN'in API'sini kullanarak işlem yapma. Normalde MS'in sitesinden sadece MSN Activity SDK indirilebiliyor, ama MSN Plus'ın SDK'sını indirecek olursan, onun içinde MSN'in de SDK'sını göreceksin. Bu SDK ile MSN Plus benzer bir program da yazabilirsin. Bu arada MSN Plus'ın özellikleri arasında senin istediğin özellik de var (Diğer bir deyişle MSN SDK ile bu işlem yapılabiliyor).
Kolay gelsin,
Bahadır Alkaç
NOT: MSN'in SDK'sı tahmin edebileceğin gibi C++ kodu. Büyük ihtimalle de sadece Visual C++ ile compile edilebiliyordur. MSN Plus için örnek kodlar var, belki onlar sana yardımcı olur.
1. IMessenger Interface'ine bağlan
2. MyStatus değerini al.
3. MyStatus değeri mesaj göndermeye elverişli mi? (Offline veya Invisible olmamalı)
4. IMessengerContacts Interface'ini al
5. IMessengerContacts Interface'inden, IMessengerContact abstract yapısını al
6. pIMessengerContact->InstantMessage ile pencere bilgisini al
7. Pencere bilgisinden, pencerenin gerçek Handle bilgisini al (Bu kısım husonet'in örneğinde statik. Nuisance Nickli arkadaşının penceresi)
8. Geri kalan kısmı husonet'in yazdığı gibi
9. Bellek temizliği yap
Ayrıca MSN-Plus'ın da pencereye yazı yazdırma işlemini bu şekilde yaptığını tespit etmiş bulunuyoruz.
Kolay gelsin,
Bahadır Alkaç
- Trial_Cooder
- Üye
- Mesajlar: 236
- Kayıt: 17 Nis 2006 04:44
nasıl yani soruyu soran üye farklı bir user :STrial_Cooder yazdı:Soruyu Mart'ta Sordum Cevabı Mayısta Gelmiş Ama İşe Yaradı Thanx
Gazete manşetleri
* DİKKAT :Lütfen forum kurallarını okuyalım ve uyalım...!
* Warez,crack vs. paylaşımı kesinlikle yasaktır.