msn apileri (alıntıdır)

Yazdığınız makaleleri ve üyelerimizin işine yarayacağını düşündüğünüz kodlarınızı gönderebilirsiniz. Bu foruma soru sormayın!
Cevapla
serkan
Üye
Mesajlar: 666
Kayıt: 10 Tem 2003 12:08
Konum: bursa

msn apileri (alıntıdır)

Mesaj gönderen serkan »

Başka bir siteden gördüm burdaki arkadaşlarada lazım olur düşüncesiyle veriyorum.MSN benim ilgimi çekmediği için oturup çalışma yapmadım..

Aşağıdaki linkden Api Kütüphanesini indirin.İçerisinde çalışan exe de var.

http://www.tekkalem.com.tr/files/MsnApi.zip
kullanımı aşağıdadır..

Kod: Tümünü seç



Project ->import type library

TYPELIB_1.tlb

install


sırayla TYPELIB_7.tlb e kadar bütün dosyaları import edin.


Not :  5 te hata [ ] leri ( ) yaparsanız hatayı giderebilirsiniz.



--- MSN Durumunu Değiştirme

uses MessengerAPI_TLB;


procedure TForm1.Button3Click(Sender: TObject);
begin
    MessengerAPI_TLB.CoMessenger.Create.MyStatus := MISTATUS_//;
end;


Kullanılabilir Durumlar :

MISTATUS_ONLINE (online) 
MISTATUS_BE_RIGHT_BACK (be right back) 
MISTATUS_BUSY (busy) 
MISTATUS_AWAY (away) 
MISTATUS_ON_THE_PHONE (on the phone) 
MISTATUS_OUT_TO_LUNCH (out to lunch) 
MISTATUS_INVISIBLE (appear offline) 
MISTATUS_OFFLINE (not signed in) 
MISTATUS_LOCAL_FINDING_SERVER 
MISTATUS_LOCAL_CONNECTING_TO_SERVER 
MISTATUS_LOCAL_SYNCHRONIZING_WITH_SERVER 
MISTATUS_LOCAL_DISCONNECTING_FROM_SERVER 



--- Bağlı Kullanıcının Bilgilerini Alma

uses MessengerAPI_TLB;


procedure TForm1.Button3Click(Sender: TObject);
var
        MyFriendlyName: String;
        MySigninName: String;
        NumberOfEmails: Integer;
        ReceivedFilesDir: String;
        Status: String;
        Messenger: IMessenger3;
    begin
        //Create the IMessenger component.
        Messenger := MessengerAPI_TLB.CoMessenger.Create;
        //Assign the correct values to the variables we created.
        MyFriendlyName := Messenger.Get_MyFriendlyName;
        MySigninName := Messenger.Get_MySigninName;
        NumberOfEmails := Messenger.UnreadEmailCount[0];
    
        case Messenger.MyStatus of
            MISTATUS_ONLINE: Status := 'Çevimişi';
            MISTATUS_INVISIBLE: Status := 'Çevrim Dışı';
            MISTATUS_BUSY: Status := 'Meşgul';
            MISTATUS_BE_RIGHT_BACK: Status := 'Hemen Dönecek';
            MISTATUS_IDLE: Status := 'Meşgul';
            MISTATUS_AWAY: Status := 'Dışarıda';
            MISTATUS_ON_THE_PHONE: Status := 'Telefonda';
            MISTATUS_OUT_TO_LUNCH: Status := 'Öğle Yemeğinde';
        end;
memo1.clear;
memo1.lines.add('Görüntü İsmi : '+MyFriendlyName);
memo1.lines.add('Bağlantı İsmi : '+MySigninName);
memo1.lines.add('Mail Sayısı : '+inttostr(NumberOfEmails));
memo1.lines.add('Alınan Dosyalar Klasörü : '+ReceivedFilesDir);
memo1.lines.add('Durum : '+Status);

end;


--- Konuşma Penceresi Açma

uses MessengerAPI_TLB;

var
User: String;
begin
    MessengerAPI_TLB.CoMessenger.Create.InstantMessage(User); //mail adresi
end;




--- Kullanıcı İleti Geçmişini Görüntüleme

uses MessengerAPI_TLB;

procedure TForm1.Button5Click(Sender: TObject);
var
User: String;
Messenger: IMessenger3;
MsgrIMWindow: ImessengerConversationWnd;
begin
memo2.Clear;
Messenger := MessengerAPI_TLB.CoMessenger.Create;
MsgrIMWindow:=IMessengerConversationWnd(Messenger.InstantMessage(User));
Memo2.Lines.add(MsgrIMWindow.History);
end;




--- Msn Api Olaylarını Kullanma

http://www.tycooneden.com/delphi/MessengerAPIEvents.zip -> Adresinden MessengerAPIEvents 

Componentini indirerek yükleyin.




--- Kontak Listesini Alma

uses MessengerAPI_TLB;

procedure TForm1.Button6Click(Sender: TObject);
var
msnContacts : IMessengerContacts;
msnContact : IMessengerContact;
SignInList, FriendlyNameList: TStringList;
n : Integer;
begin
  msnContacts := IMessengerContacts(MessengerAPI_TLB.CoMessenger.Create.MyContacts);
  SignInList := TStringList.Create;
  FriendlyNameList := TStringList.Create;
  for n := 0 to msnContacts.Count - 1 do
    begin
      msnContact := IMessengerContact(msnContacts.Item(n));
      SignInList.Add(msnContact.SigninName);
      FriendlyNameList.Add(msnContact.FriendlyName);
    end;
  SigninList.Free;
  FriendlyNameList.Free;
end;
Cevapla