May 1, 2010 08:56 PM
(This post was last modified: May 2, 2010 02:12 PM by codepoet.)
originally posted on dotnet-snippets.com
Description:
This class allows you to send a string to Windows Live Messenger to let other users see what you are just listening, like Windows Media Player.
If You Like this tutorial, please check out my other tutorials by clicking ==> H3R3
Description:
This class allows you to send a string to Windows Live Messenger to let other users see what you are just listening, like Windows Media Player.
Code
Imports System.Runtime.InteropServices
Public Class MSNStatusMessage
Private Declare Function FindWindowEx Lib "user32" Alias "FindWindowExA" ( _
ByVal hWnd1 As Integer, _
ByVal hWnd2 As Integer, _
ByVal lpsz1 As String, _
ByVal lpsz2 As String) _
As Integer
Private Declare Function SendMessage Lib "user32" Alias "SendMessageA" ( _
ByVal Hwnd As Integer, _
ByVal wMsg As Integer, _
ByVal wParam As Integer, _
ByVal lParam As Integer) _
As Integer
Private Const WM_COPYDATA As Short = 74
Private Structure COPYDATASTRUCT
Public dwData As Integer
Public cbData As Integer
Public lpData As Integer
End Structure
Public Enum EnumCategory As Integer
Music = 0
Games = 1
Office = 2
End Enum
Public Shared Sub SendStatusMessage(ByVal Enable As Boolean, ByVal Category As EnumCategory, Optional ByVal Message As String = "")
Dim Data As COPYDATASTRUCT
Dim Buffer As String = "\0" & Category.ToString + "\0" & IIf(Enable, "1", "0") & "\0{0}\0" & Message & "\0\0\0\0" & Chr(0) & ""
Dim Handle As Integer = 0
Data.dwData = 1351
Data.lpData = VarPtr(Buffer)
Data.cbData = Buffer.Length * 2
Handle = FindWindowEx(0, Handle, "MsnMsgrUIManager", Nothing)
If Handle > 0 Then
SendMessage(Handle, WM_COPYDATA, 0, VarPtr(Data))
End If
End Sub
Private Shared Function VarPtr(ByVal e As Object) As Integer
Dim GC As GCHandle = GCHandle.Alloc(e, GCHandleType.Pinned)
Dim GC2 As Integer = GC.AddrOfPinnedObject.ToInt32
GC.Free()
Return GC2
End Function
End ClassIf You Like this tutorial, please check out my other tutorials by clicking ==> H3R3
PHP & .NET Contributor.

