Ver Mensaje Individual
  #3  
Antiguo 28-04-2018
koalasoft koalasoft is offline
Miembro
 
Registrado: oct 2004
Ubicación: Tenosique Tabasco
Posts: 86
Reputación: 20
koalasoft Va por buen camino
Cita:
Empezado por orodriguezca Ver Mensaje
Lo más aconsejable para automatizar la interacción con una sesión telnet es colocar un sniffer para "ver" el flujo de caracteres que se intercambian con el servidor a medida que se ejecutan las diferentes acciones y así poder duplicar eso mismo desde nuestra aplicación. La mayoría de los servidores telnet inmediatamente, después de establecer la conexión, quedan esperando que se le envíe el usuario, a lo que el servidor responde con una petición de contraseña; es solo en este momento en que se puede enviar la contraseña.

En algunos servidores telnet es posible enviar el usuario y la contraseña separando ambos con el ascii 9 (caracter tab). En el caso de tu código sería:

Código Delphi [-]
procedure TForm1.TelnetConnect(Sender: TObject); 
begin 
  Log.Lines.Add( 'Conectando con ' + Telnet.Host + '.' ); 
  Log.Lines.Add( '' ); 
  Telnet.WriteLn(Trim(Edit1.Text) + #9 +Trim(Edit2.Text));  
end;

Pero que lo anterior funcione o no depende de la implementación del servidor.

En mi caso al conectarse al servidor te pide primero el usuario y después de esto la contraseña, intenté hacerlo como su ejemplo per veo que no envia el dato del Edit1 a la terminal ya que al conectarse solicita el usuario. intente con el ascii 13 (enter) ya que al ingresar anualmente el usuario hay que pulsar enter lo mismo que la contraseña..
Responder Con Cita