Autor
|
Tema: mostrar lo qe estoy escuchando ¿como? (Leído 2,196 veces)
|
SERBice
|
desearia saber como hacer para ue mi programa (un reproductor) muestre lo que esta reproduciendo en "lo que estoy escuchando" del msn
¿alguna api?, necesitaria algo que no provoque un error critico y tire el prgorama e casod e que el msn no este instalado o no se pueda comunicar con el mismo.
he buscado y no encontre nada, si alguien peude darme una manito estare agradecido.
desde ya, muchas gracias.
|
|
|
En línea
|
|
|
|
naderST
|
Option Explicit
Private Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, ByVal lParam As Long) As Long 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 Type COPYDATASTRUCT dwData As Long cbData As Long lpData As Long End Type
Private Const WM_COPYDATA = &H4A
'Private Sub Form_Load() 'Call SetMusicInfo("Myself", "Debut", "The Song That Never Ends") 'End Sub
' eg: Call SetMusicInfo("artist", "title", "album") ' eg: Call SetMusicInfo("artist", "title", "album", "WMContentID") ' eg: Call SetMusicInfo("artist", "title", "album", , "{1} by {0}") ' eg: Call SetMusicInfo("", "", "", , , False) Public Sub SetMusicInfo(ByRef r_sArtist As String, ByRef r_sAlbum As String, ByRef r_sTitle As String, Optional ByRef r_sWMContentID As String = vbNullString, Optional ByRef r_sFormat As String = "{0} - {1}", Optional ByRef r_bShow As Boolean = True)
Dim udtData As COPYDATASTRUCT Dim sBuffer As String Dim hMSGRUI As Long 'Total length can not be longer then 256 characters! 'Any longer will simply be ignored by Messenger. sBuffer = "\0Music\0" & Abs(r_bShow) & "\0" & r_sFormat & "\0" & r_sArtist & "\0" & r_sTitle & "\0" & r_sAlbum & "\0" & r_sWMContentID & "\0" & vbNullChar udtData.dwData = &H547 udtData.lpData = StrPtr(sBuffer) udtData.cbData = LenB(sBuffer) Do hMSGRUI = FindWindowEx(0&, hMSGRUI, "MsnMsgrUIManager", vbNullString) If (hMSGRUI > 0) Then Call SendMessage(hMSGRUI, WM_COPYDATA, 0, VarPtr(udtData)) End If Loop Until (hMSGRUI = 0)
End Sub
|
|
|
En línea
|
|
|
|
SERBice
|
Wow.... que rapidez, gracis colega. lo pruebo y te cuento cmo me fue.
neuvamente gracias.
|
|
|
En línea
|
|
|
|
SERBice
|
Ha funcionado de mil maravillas, muchisima gracias.
EDIT: Alguien sabe cmo hacer el proceso apuesto?, es decir, leer lo que ya esta puesto en "Lo que estoy escuchando" del msn.
|
|
« Última modificación: 17 Abril 2008, 03:27 am por SERBice »
|
En línea
|
|
|
|
|
|