2008-11-08 85 views
2

我希望能够更改Live Messenger的状态消息,但是我发现的所有内容仅适用于音乐消息(请参阅this screenshot以查看两者之间的区别)。如何以编程方式设置Live Messenger的状态消息?

可以这样做,因为有些程序可以更改它,而且一些Live Messenger的备用客户端也可以自己设置状态消息。我只需要知道如何自己做到这一点。

澄清:该解决方案需要使用最新版本的Live Messenger(即wave 3 beta)。使用旧版本也不错,但是它是我正在使用的14.x版本。

回答

1

没有设置与包容性活波3

1

当然,从任何对话窗口,简单的“/psm new message”将更新消息状态字段。

编程

你会发现这里VB source file发出了一个新的消息,你的Live Messenger的窗口的PSM(个人萨特斯消息)。可能会有所帮助。

提取物:

Attribute VB_Name = "Form1" 
Attribute VB_GlobalNameSpace = False 
Attribute VB_Creatable = False 
Attribute VB_PredeclaredId = True 
Attribute VB_Exposed = False 
Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long 
Private Declare Function FindWindowEx Lib "user32" Alias "FindWindowExA" (ByVal hWnd1 As Long, ByVal hWnd2 As Long, ByVal lpsz1 As String, ByVal lpsz2 As String) As Long 
Private Declare Function PostMessage Lib "user32" Alias "PostMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, ByVal lParam As Long) As Long 
Private Const WM_COMMAND = &H111 
Private Const WM_CHAR = &H102 
Private Const VK_RETURN = &HD 

Private Function SetPSM(ByVal text As String) As Boolean 
    Dim hParentWnd, hChildWnd As Long 
    SetPSM = False 
    hParentWnd = FindWindow("MSBLWindowClass", vbNullString) 
    If hParentWnd <> 0 Then 
     hChildWnd = FindWindowEx(hParentWnd, 0, "DirectUIHWND", vbNullString) 
     If hChildWnd <> 0 Then 
     PostMessage hParentWnd, WM_COMMAND, 56606, 0 
     Dim i As Integer 
     For i = 1 To Len(text) 
      Call PostMessage(hChildWnd, WM_CHAR, Asc(Mid$(text, i, 1)), 0) 
     Next i 
     PostMessage hChildWnd, WM_CHAR, VK_RETURN, 0 
     SetPSM = True 
     End If 
    End If 
End Function 

Private Sub cmdSetPSM_Click() 
    SetPSM txtPSM.text 
End Sub 
+0

/psm“技巧”不起作用。刚刚在14.0.5027.908(目前的公开测试版)上尝试过。 – 2008-11-10 12:36:34

+0

同样,代码也没有。 FindWindow为MSBLWindowClass返回0。 – 2008-11-10 12:44:13

1

你可以安装在你的MSN MsgPlus会给你一个API来编写的MSN上。然后,您可以创建一个调用您的程序或调用MSN的程序的脚本。

0

你可能去的杂乱的工作,各地,使用Windows API函数来模拟用户输入的版本工作的Live Messenger的状态消息中没有编程方法。

1

Chris,如何以编程方式设置音乐信息?

相关问题