VB.NET質問スレ (Part18)
■ このスレッドは過去ログ倉庫に格納されています
0755デフォルトの名無しさん
2006/12/26(火) 21:17:52Const WM_COPYDATA As Integer = &H4A
Declare Ansi Function FindWindow Lib "user32.dll" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Integer
Declare Unicode Function SendMessage Lib "user32.dll" Alias "SendMessageW" (ByVal hWnd As Integer, ByVal MSG As Integer, ByVal wParam As Integer, ByRef lParam As System.IntPtr) As Integer
Sub main()
Dim sendMes As New COPYDATASTRUCT
Dim str As String = "TestAPP" + ChrW(0).ToString + "Music" + ChrW(0).ToString + "1" + ChrW(0).ToString + "{0} - {1}" + ChrW(0).ToString + "TEST" + ChrW(0).ToString + "TEST"
Dim ptr As IntPtr
sendMes.lpData = System.Runtime.InteropServices.Marshal.AllocHGlobal(System.Runtime.InteropServices.Marshal.StringToHGlobalAuto(str))
sendMes.cbData = (str.Length + 1) * 2
System.Runtime.InteropServices.Marshal.StructureToPtr(sendMes, ptr, True)
SendMessage(FindWindow("MsnMsgrUIManager", Nothing), WM_COPYDATA, Nothing, ptr)
System.Runtime.InteropServices.Marshal.FreeHGlobal(sendMes.lpData)
System.Runtime.InteropServices.Marshal.FreeHGlobal(ptr)
End Sub
Public Structure COPYDATASTRUCT
Const dwData As Integer = 1351
Public cbData As Integer
Public lpData As System.IntPtr
End Structure
■ このスレッドは過去ログ倉庫に格納されています