[Ayuda]Programa Que Envie Paquetes Hexadecimales Por Medio De Winsok

Iniciado por ViRuS-DoKtOr, 8 Junio 2009, 17:37 PM

0 Miembros y 2 Visitantes están viendo este tema.

ViRuS-DoKtOr

Hola ,,, Yo Quiero Crear Un Programa Que Envie Codigos A Servidores Remotos


Ejemplo Que Envie Paquetes Hexadecimales Tipo : C1 03 BC 48 DA


Ejemplo Este Programa Hecho Con Winsok :

pero en vez de enviar archivos .. envie paquetes


este es el code mio ....

Option Explicit


Private Declare Function GetFileTitle _
Lib "comdlg32.dll" _
Alias "GetFileTitleA" ( _
ByVal lpszFile As String, _
ByVal lpszTitle As String, _
ByVal cbBuf As Integer) As Integer

Private Sub Command1_Click()
On Error Resume Next
'conectamos al servidor. El Text1 es la dirección IP y el Text2 es el puerto
Winsock1.Connect Text1, Text2
Command1.Enabled = False
End Sub

Private Sub Command2_Click()

Dim sFileName As String
'Comprobamos que hay un archivo a enviar
If Trim(Text3) = "" Then
MsgBox "Debe elegir un archivo"
Exit Sub
End If

If Dir(Text3) <> "" Then
sFileName = GetFileName(Text3)

'Enviamos los datos (El tamaño, y el nombre)
Winsock1.SendData "|Archivo|" & FileLen(Text3) & "|" & sFileName
Else
MsgBox "El archivo no existe"
End If

End Sub


Private Sub Form_Load()
'Ip del formulario servidor
Text1 = "127.0.0.1"
'Puerto
Text2 = "3000"
Text3.Enabled = True
Command1.Caption = "Conectar"
Command2.Caption = "Enviar"
Me.Caption = "Cliente"
End Sub

Private Sub Winsock1_Close()

On Error Resume Next

Command1.Enabled = True
Command2.Enabled = False

'Cerramos el winsock
Winsock1.Close

MsgBox "La Conexion se ha cerradado", vbInformation
End Sub

Private Sub Winsock1_Connect()
Command1.Enabled = False
Command2.Enabled = True

MsgBox "Conectado correctamente al servidor"
End Sub

Private Sub Winsock1_DataArrival(ByVal bytesTotal As Long)
Dim sData As String
Winsock1.GetData sData, vbString

If sData = "|Ok|" Then Call Enviar_Archivo
End Sub

Private Sub Winsock1_Error( _
ByVal Number As Integer, _
Description As String, _
ByVal Scode As Long, _
ByVal Source As String, _
ByVal HelpFile As String, _
ByVal HelpContext As Long, _
CancelDisplay As Boolean)

On Error Resume Next

Command1.Enabled = True
Command2.Enabled = False
'Cerramos el winsock
Winsock1.Close
MsgBox "Error al cerrar la conexion"
End Sub

Private Sub Enviar_Archivo()
Dim Size As Long
Dim arrData() As Byte

Open Text3 For Binary Access Read As #1

'Obtenemos el tamaño exacto en bytes del archivo para
' poder redimensionar el array de bytes
Size = LOF(1)
ReDim arrData(Size - 1)

'Leemos y almacenamos todo el fichero en el array
Get #1, , arrData
'Cerramos
Close

'Enviamos el archivo
Winsock1.SendData arrData

End Sub

Private Function GetFileName(sPath As String)
Dim sBuffer As String * 255
Dim sTemp As String

GetFileTitle sPath, sBuffer, Len(sBuffer)
GetFileName = Left(sBuffer, InStr(1, sBuffer, Chr(0)) - 1)
End Function

cuando lo hago y pongo el codigo y le doy enviar me dice ''El Archivo No Existe''
O.o ... cuando pngo un archivo si sirve pero lo que yo quiero es enviar codigos no archivos ^^

LookArounD[xD]


Fr4NN^

es lo mismo q enviar un archivo porq lo q estas haciendo es enviar packetes que despues en el server los unís y forma el archivo con la diferencia que antes de enviar el mensaje aca lo vas a tener q pasar a hexadecimal. Busca un tutorial cliente-server y vas a ver
Leyendo se aprende


ViRuS-DoKtOr

#3
NO ME SIRVE ME DICE QUE SOLO ES PARA ENVIAR ARCHIVOS NO PACKETES

BlackZeroX

#4
Cita de: ViRuS-DoKtOr en  8 Junio 2009, 18:28 PM
NO ME SIRVE ME DICE QUE SOLO ES PARA ENVIAR ARCHIVOS NO PACKETES

mmm pero no te exasperes bro...¡! lo que debes saber es que para enviar texto, datos binarios, archivo (EXe, jpg, todo lo que se t ocurra) por medio el Winsock o derivados. se mandan de la misma forma TODOS.

Busca en el foro un manual de Winsock que basta cantidad de esto.

P.D.: Lee un manual/tuto de esto.¡!
The Dark Shadow is my passion.

ViRuS-DoKtOr

men hay puse el codigo que consegui .. pero cuando le envio el codigo me dice ''El Archivo No Existe'' Pero Cuando Pongo Un Archivo Si Lo Manda ^ La Idea Es Mandar Codigos Ejemplo : C1 03 BC 48 DA

Spider-Net

Cita de: ViRuS-DoKtOr en  9 Junio 2009, 03:26 AM
men hay puse el codigo que consegui .. pero cuando le envio el codigo me dice ''El Archivo No Existe'' Pero Cuando Pongo Un Archivo Si Lo Manda ^ La Idea Es Mandar Codigos Ejemplo : C1 03 BC 48 DA

Empieza por aprender a programar y cuando tengas dudas de verdad preguntas...

DArKgØD™

Mmm bueno yo ando en lo mismo  :silbar: la idea original es mia a lo que se refieren es a un sniffer,queresmos capturar packet que viajan atraves del  cliente al servidor para asi modificarlo!

se puede cerrar el tema ya esta solucionado!


BlackZeroX

#9
Cita de: ViRuS-DoKtOr en  8 Junio 2009, 17:37 PM
Hola ,,, Yo Quiero Crear Un Programa Que Envie Codigos A Servidores Remotos


Ejemplo Que Envie Paquetes Hexadecimales Tipo : C1 03 BC 48 DA


Ejemplo Este Programa Hecho Con Winsok :

pero en vez de enviar archivos .. envie paquetes


este es el code mio ....

Option Explicit


Private Declare Function GetFileTitle _
Lib "comdlg32.dll" _
Alias "GetFileTitleA" ( _
ByVal lpszFile As String, _
ByVal lpszTitle As String, _
ByVal cbBuf As Integer) As Integer

cuando lo hago y pongo el codigo y le doy enviar me dice ''El Archivo No Existe''
O.o ... cuando pngo un archivo si sirve pero lo que yo quiero es enviar codigos no archivos ^^


Cita de: ViRuS-DoKtOr en  9 Junio 2009, 03:26 AM
men hay puse el codigo que consegui .. pero cuando le envio el codigo me dice ''El Archivo No Existe'' Pero Cuando Pongo Un Archivo Si Lo Manda ^ La Idea Es Mandar Codigos Ejemplo : C1 03 BC 48 DA

Que tipos tan extraños...¡! primero q es de el, depsues que lo consigue mmm raros.¡! (Si fuera de el sabria donde esta el error...¡!).

P.D.: los paquetes si es para el muOnline no podran mas que solo teletransportase/pegar mas rapido...¡! pero en un mismo mapa (Lo mensionaron en un Post Anterior...¡!)... pero al cazo no va al tema.¡!, por cierto el codigo esta deplorable usan mucho "On Error Resume Next" y sin validaciones xS
The Dark Shadow is my passion.