Avatar billede dakine Nybegynder
05. november 2002 - 11:30 Der er 4 kommentarer

Telnet client

Hej med jer.

Jeg arbejder på en Telnet client hvor jeg meget gerne vil holde mig til standard komponenter i Delphi6 (så vidt hvis muligt). Der findes en TIdTelnet. Er den ikke udemærket.- Har nogle erfaringer med det?

Min foreløbige test-kode:
procedure TForm1.ConnectButtonClick(Sender: TObject);
begin
  IDTelnet1.Host := '10.1.20.129';
  IDTelnet1.Port := 23;
  IDTelnet1.SocksInfo.UserID := 'HFR';
  IDTelnet1.SocksInfo.Password := <****>;
  try
    IDTelnet1.Connect;
  except
    on EIDTelnetServerOnDataAvailableIsNIL do
      MessageBox(0,'En eller anden fejl'TELNET',MB_OK);
  end;
end;

Det ser ud til jeg godtnok bliver connected til Host'en. Efter hvad jeg videre har kunnet forstå modtager jeg resultat fra Host'en via DataAvailable Event'en.- Men hvordan og hvorledes læser jeg det resultat?
F.eks hvis jeg nu vil køre en ll command i Telnet der lister indhold af directory. Hvordan får jeg så det resultat at se i Delphi?
Avatar billede klasker Nybegynder
06. november 2002 - 09:35 #1
Jeg kender ikke den kompenent, men prøv noget af dette:
Kik på hvilke events den har, find noget i retningen af en OnRead event.
Prøv deri at kalde
Telnet1.Socket.ReceiveText eller ReceiveData eller noget i den retning for at få en string med den modtagne text.
For at sende vil jeg umiddelbart skyde på Socket.SendText('bla..bla..');

Som sagt kender jeg ikke komponenten men jeg kender til sockets og TCP/IP så jeg tror og håber at det kan hjælpe dig lidt på vej...
Avatar billede dakine Nybegynder
06. november 2002 - 12:02 #2
Er der nogen der kender komponenten TTnCnx?
Den kan jeg connect via Telnet men så kommer jeg hellere ikke videre pt.
Det undre mig også lidt med følgende kode:
TnC.Host    := '10.1.20.129';
TnC.Port    := 'Telnet';
TnC.Location := '10.1.21.127';
TnC.Connect;

.... Jeg angiver ikke noget som helst UserName/Password men kommer åbenbart på. Men som hvem?
Jeg er nu heller ikke sikker på Location property'en. Jeg har angivet min PC's IP-nr som modtager af svar!
Avatar billede dakine Nybegynder
02. april 2004 - 09:16 #3
Oprydning i spørgsmål :o)
Avatar billede screwdriver Nybegynder
14. november 2007 - 10:40 #4
Man skal lave en procedure som eventet kan kalde

Procedure TForm1.DataFromTelNet (Sender: TIdTelnet; const Buffer: String) ;
begin
  ShowMessage( Buffer) ;
end ;

Og efter IDTelnet1 er created sættes eventet til at pege på den procedure:
  IDTelnet1.OnDataAvailable := DataFromTelNet ;
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester