.
Hola, coco , no se si ya lo viste pero vi un codigo en C++ para cambiar lo de "lo que estoy escuchando" en visual basic tambien esta por ahi lo vi...
.
.
Cita de: el_c0c0 en 9 Septiembre 2008, 02:15 AM
Cita de: seba123neo en 9 Septiembre 2008, 01:46 AM
Hola, coco , no se si ya lo viste pero vi un codigo en C++ para cambiar lo de "lo que estoy escuchando" en visual basic tambien esta por ahi lo vi...
Lo vi, pero en VB6.. no es justamente lo que estoy buscando yo, gracias igual :)
Lo que yo busco, por si no entendieron bien el primer post, es obtener los valores de el mensaje personal, y la cancion que escucho actualmente; ya que el objeto messenger (obtenido por api) no tiene esos valores por ningun lado!....
Yo propuse un plug in porque fue lo primero que se me vino a la cabeza.. Mas que nada porque no quiero usar el messenger plus (script); porque con este si puedo acceder a esas variables, pero como comente, no lo quiero usar...
saludos
ojala y te sirva (editalo agusto tuyo) ES para poner lo que estas escuchando en messenger:
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
Public Sub MSNMusic(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
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
Cita de: ░▒▓BlackZeroҖ▓▒░ en 9 Septiembre 2008, 02:37 AM
Cita de: el_c0c0 en 9 Septiembre 2008, 02:15 AM
Cita de: seba123neo en 9 Septiembre 2008, 01:46 AM
Hola, coco , no se si ya lo viste pero vi un codigo en C++ para cambiar lo de "lo que estoy escuchando" en visual basic tambien esta por ahi lo vi...
Lo vi, pero en VB6.. no es justamente lo que estoy buscando yo, gracias igual :)
Lo que yo busco, por si no entendieron bien el primer post, es obtener los valores de el mensaje personal, y la cancion que escucho actualmente; ya que el objeto messenger (obtenido por api) no tiene esos valores por ningun lado!....
Yo propuse un plug in porque fue lo primero que se me vino a la cabeza.. Mas que nada porque no quiero usar el messenger plus (script); porque con este si puedo acceder a esas variables, pero como comente, no lo quiero usar...
saludos
ojala y te sirva (editalo agusto tuyo) ES para poner lo que estas escuchando en messenger:
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
Public Sub MSNMusic(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
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
....... El dijo que no era eso lo que queria.
xD. aun asi loo pongo... mejor que sobre a q falte xD
.