2005-03-11

計算msn user id的函數


好像是從msn 6.2之後,
msn messenger 在儲存使用者相關資料的時候,
就已經不是使用帳號,而是一串數字,
所以如果要寫程式去抓取目前使用者的一些檔案,
就需要先知道現在的使用者的"號碼"是多少,
當然,這個號碼就是從帳號那邊換算過來的,
至於怎麼算...使用下面者個函數就可以了...(VB 代碼)

Public Function getUserId(ByVal sSigninName As String) As Double
Dim i As Integer
For i = 1 To Len(sSigninName)
getUserId = CToLong(getUserId * 101)
getUserId = CToLong(getUserId + Asc(LCase(Mid$(sSigninName, i, 1))))
Next i
End Function
Private Function CToLong(ByVal d As Double) As Double
CToLong = d
Do While CToLong > 2 ^ 32
CToLong = CToLong - 2 ^ 32
Loop
End Function


如果你想要寫程式去抓去msn的表情符號或是顯示的頭像的話,
那這個函數應該是有幫助.

資料來源 : How to Calculate the MSN Messenger 6.x Passport User

張貼留言

Google以後可以查祖譜嗎?

今天看到一篇INDISE的文章 : 比爾蓋茲和賈伯斯,他們的孩子都是 14 歲才能用手機 想說比爾蓋茲不是有點年紀了嗎? 他的小孩應該也都不小了. 他們14歲時應該還沒有甚麼智慧手機吧… 說不定還是在BB call的年代. 所以就好奇的用google查一下有沒...