下面簡單用VB距離說明怎么調(diào)用它:
首先當然是引用對象Messenger API Type Library了。
然后聲明一個對象MessengerAPI.Messenger:
Private WithEvents oMSN As MessengerAPI.Messenger
我們需要的東西都在這里邊,簡單介紹幾個:
MyContacts:IMessengerContacts 對象
MyFriendlyName: 當前的昵稱
MyGroups: IMessengerGroupss對象
MyPhoneNumber:返回電話號碼
MyProperty:現(xiàn)在沒有使用
MyServiceId :返回Service id應(yīng)該是{9b017612-c9f1-11d2-8d9f-0000f875c541}]
MyServiceName:返回Service name應(yīng)該是 .NET Messenger Service
MySigninName:返回當前的簽名,eMail地址
MyStatus:返回當前狀態(tài),MISTATUS枚舉值
其實本地屬性和通過PrimaryService得到的一樣
做幾個簡單的演示:
首先是登陸演示,使用MessengerAPI.Messenger的 SignIn 或者AutoSignin方法:
Public Sub SignIn(ByVal bAuto As Boolean, Optional ByVal sSignInName As String, Optional ByVal sPassword As String)
On Error GoTo ErrorHandle
If bAuto = True Then
oMSN.AutoSignin
Else
ManualSignIn:
oMSN.SignIn 0, sSignInName, sPassword
End If
Exit Sub
ErrorHandle:
Dim MConstants As MSGRConstants
MConstants = err.Number
If MConstants = MSGR_E_FAIL Then
GoTo ManualSignIn
ElseIf MConstants = MSGR_E_ALREADY_LOGGED_ON Then
’已經(jīng)登陸
End If
End Sub
獲取全部用戶列表:
通過Messenger的MyContacts對象(它是只讀的)
它其實就是一個IMessengerContacts對象,而IMessengerContacts類又是IMessengerContact類的一個集合,在IMessengerContact中保存聯(lián)系人信息。
因此可以這樣遍歷聯(lián)系人。
Dim oContacts As IMessengerContacts
Dim oContact As IMessengerContact
Dim iCount As Integer
Dim i As Long
Set oContacts = oMSN.MyContacts
iCount = oContacts.Count
For i = 0 To iCount - 1
Set oContact = MsgrContacts.Item
List1.AddItem MsgrContact.FriendlyName & vbTab & "(" & getStatusDesc(MsgrContact.Status) & ")"
Next
首先當然是引用對象Messenger API Type Library了。
然后聲明一個對象MessengerAPI.Messenger:
Private WithEvents oMSN As MessengerAPI.Messenger
我們需要的東西都在這里邊,簡單介紹幾個:
MyContacts:IMessengerContacts 對象
MyFriendlyName: 當前的昵稱
MyGroups: IMessengerGroupss對象
MyPhoneNumber:返回電話號碼
MyProperty:現(xiàn)在沒有使用
MyServiceId :返回Service id應(yīng)該是{9b017612-c9f1-11d2-8d9f-0000f875c541}]
MyServiceName:返回Service name應(yīng)該是 .NET Messenger Service
MySigninName:返回當前的簽名,eMail地址
MyStatus:返回當前狀態(tài),MISTATUS枚舉值
其實本地屬性和通過PrimaryService得到的一樣
做幾個簡單的演示:
首先是登陸演示,使用MessengerAPI.Messenger的 SignIn 或者AutoSignin方法:
Public Sub SignIn(ByVal bAuto As Boolean, Optional ByVal sSignInName As String, Optional ByVal sPassword As String)
On Error GoTo ErrorHandle
If bAuto = True Then
oMSN.AutoSignin
Else
ManualSignIn:
oMSN.SignIn 0, sSignInName, sPassword
End If
Exit Sub
ErrorHandle:
Dim MConstants As MSGRConstants
MConstants = err.Number
If MConstants = MSGR_E_FAIL Then
GoTo ManualSignIn
ElseIf MConstants = MSGR_E_ALREADY_LOGGED_ON Then
’已經(jīng)登陸
End If
End Sub
獲取全部用戶列表:
通過Messenger的MyContacts對象(它是只讀的)
它其實就是一個IMessengerContacts對象,而IMessengerContacts類又是IMessengerContact類的一個集合,在IMessengerContact中保存聯(lián)系人信息。
因此可以這樣遍歷聯(lián)系人。
Dim oContacts As IMessengerContacts
Dim oContact As IMessengerContact
Dim iCount As Integer
Dim i As Long
Set oContacts = oMSN.MyContacts
iCount = oContacts.Count
For i = 0 To iCount - 1
Set oContact = MsgrContacts.Item
List1.AddItem MsgrContact.FriendlyName & vbTab & "(" & getStatusDesc(MsgrContact.Status) & ")"
Next