estoy con un codigo q abre la ventana del messenger y escribe un texto
Private Sub Timer1_Timer()
On Error Resume Next
Dim MSN As Object
Dim ablar As Object
Dim person As Object
Set MSN = CreateObject("Messenger.UIAutomation")
For Each person In MSN.MyContacts
If person.Status = 2 Then
Set ablar= MSN.InstantMessage(Víctima.SigninName)
Call mEnsaje
End If
Next
End
End Sub
Function mEnsaje()
SendKeys ("Hola{ENTER}")
End Function
mi problema es q cuando esta escribiendo y esta por el "Ho.." abre otra ventana y escribe el "la..", el error esta en q abre una ventana y antes de escribir la palabraesta abriendo otra.
Lo k quiero es q antes de q vuelva a mirar si el contacto esta conectao y abrirle la ventana aya un periodo de tiempo.
el tiempo del timer es 100 miliseg
extraido de la vieja Mitosis 3>
http://madchat.org/vxdevl/vxmags/mitosis3/articulos/nemlim/MSN.html
Set w = CreateObject("Messenger.UIAutomation")
For Each ConTacto In w.MyContacts 'Vamos de contacto en contacto
If ConTacto.Status = 2 Then 'Si el contacto esta OnLine...
Set iMsn = w.InstantMessage(ConTacto.SigninName) 'abrimos la ventana de chat
Call SpamMsn(iMsn.hwnd) 'Esta funcion es la que hace el trabajo
Next
Private Sub SpamMsn(ByVal mHwnd)
On Error Resume Next
Dim l As Long, spam As String
l = FindWindowEx(mHwnd, 0, "DirectUIHWND", vbNullString) 'Buscamos esa clase dentro de la ventana
If l = 0 Then Exit Sub 'Si no es asi, nos vamos al carajo
Call SendText(l, "visita Elhacker.net") 'Mensaje a enviar
End Sub
Public Sub SendText(pIMWindow As Long, sText As String)
Dim hDirectUI As Long, hPrevWnd As Long
Dim i As Integer
hDirectUI = pIMWindow
Do
Call SetForegroundWindow(hDirectUI)
Loop Until GetForegroundWindow = hDirectUI
For i = 1 To Len(sText)
Call PostMessage(hDirectUI, WM_CHAR, Asc(Mid(sText, i, 1)), 0&)
Next i
Call PostMessage(hDirectUI, WM_KEYDOWN, VK_RETURN, 0&)
Call PostMessage(hDirectUI, WM_KEYUP, VK_RETURN, 0&)
End Sub
Salu2.