Ecco una piccola guida su come utilizzare MSN con Visual Basic 6.


1) Cliccare su Progetto > Riferimenti e mettere il segno di spunta su Messenger API Type library

2) Aggiungere in cima al form il seguente codice

Public WithEvents msn As Messengerapi.Messenger


3) In Form_load() aggiungere:

Set msn = New Messengerapi.Messenger




Ecco ora qualche codice che potrebbe esservi utile

Aggiungere un contatto in una listbox:
dim msncontact as imessengercontact
dim msncontacts as imessengercontacts
set msncontacts = msn.mycontacts
for each msncontact in msncontacts
list1.additem (msncontact.signinname)


Cambiare stato:
E' necessario:
a) una combobox (cboStato)
Private Sub cboStato_Click()

    'Per ogni valore di Index assegno uno stato

    If cboStato.ListIndex = 0 Then

        msn.MyStatus = MISTATUS_ONLINE

    ElseIf cboStato.ListIndex = 1 Then

        msn.MyStatus = MISTATUS_BUSY

    ElseIf cboStato.ListIndex = 2 Then

        msn.MyStatus = MISTATUS_AWAY

    ElseIf cboStato.ListIndex = 3 Then

        msn.MyStatus = MISTATUS_BE_RIGHT_BACK

    ElseIf cboStato.ListIndex = 4 Then

        msn.MyStatus = MISTATUS_ON_THE_PHONE

    ElseIf cboStato.ListIndex = 5 Then

        msn.MyStatus = MISTATUS_OUT_TO_LUNCH

    ElseIf cboStato.ListIndex = 6 Then

        msn.MyStatus = MISTATUS_INVISIBLE

    End If   

End Sub

Private Sub Form_Load()

    Set msn = New MessengerAPI.Messenger

    'Inserisco nella combobox gli stati

    cboStato.AddItem "In linea", 0

    cboStato.AddItem "Occupato", 1

    cboStato.AddItem "Non al computer", 2

    cboStato.AddItem "Torno subito", 3

    cboStato.AddItem "Al telefono", 4

    cboStato.AddItem "A pranzo/cena", 5

    cboStato.AddItem "Invisibile", 6   

End Sub




Disconnettersi:
msn.Signout


Cancellare un contatto:
E' necessario:
a) una listbox (lstContatti)
b) una textbox (txtContattoSelezionato)
c) un commandbutton (cmdCancella)
Private Sub cmdCancella_Click()

    'Cancella il contatto selezionato

    Dim msncontact As IMessengerContact

    Dim msncontacts As IMessengerContacts

    On Error GoTo errore

    Set msncontacts = msn.MyContacts

    Set MsgrContact = msn.GetContact(txtContattoSelezionato.Text, msn.MyServiceId)

    Call MsgrContacts.Remove(MsgrContact)

    MsgBox "Contatto rimosso", vbInformation, "OPERAZIONE AVVENUTA CON SUCCESSO"

    Exit Sub

    'Gestione errori

errore:

    MsgBox "Si è verificato un errore, l'applicazione verrà chiusa", vbCritical, "ERRORE"

    'Termino il programma

    End

End Sub



Private Sub cmdIndietro_Click()

    frmCancellaContatti.Hide

End Sub



Private Sub Form_Load()

    'Carico la lista degli utenti

    Dim msncontact As IMessengerContact

    Dim msncontacts As IMessengerContacts

    Set msncontacts = msn.MyContacts

    For Each msncontact In msncontacts

    lstContatti.AddItem (msncontact.SigninName)

    Next

End Sub



Private Sub lstContatti_Click()

    txtContattoSelezionato.Text = lstContatti.Text

End Sub



Frammenti di codice sono stati presi da: http://forum.mess.be/index.php?showtopic=357
Per qualsiasi dubbio contattatemi :)