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 ^^
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 ^^