![]() |
telnetclient mit synapse und separaten befehlen
hallo, ich bin am versuchen mir einen telnetclient zu basteln..
der login geht habe aber mehrere probleme hier mal der code für den login
Code:
das funktioniert auch soweit...
procedure TForm1.TelnetConnect;
var telnet: TTelnetsend; begin memo6.Lines.Clear; telnet:= TTelnetsend.Create; try telnet.TargetHost:=ComboBox1.Text; telnet.Login; telnet.WaitFor('login:'); telnet.Send(Edit3.Text+#$0d+#$0a); telnet.WaitFor('word:'); telnet.Send(Edit4.Text+#$0d+#$0a); telnet.WaitFor('>'); memo1.lines.Add('Telnet-Verbindung zu '+ComboBox1.Text+' hergestellt...'); Memo6.Lines.Text:=telnet.sessionlog; finally end; end; nun möchte ich aber über ein editfeld die comannds eintragen und mit einem button senden da komm ich nicht weiter wie muss sowas aussehen? der code bringt mir eine leere ausgabe das programm wird aber durch kompiliert und keine zugriffsverletzung
Code:
vielleicht hat ja jemand sowas schon mal gemacht und könnte mir dabei helfen
procedure TForm1.Button15Click(Sender: TObject);
var telnet: TTelnetsend; begin TelnetConnect; memo6.Lines.Clear; telnet:= TTelnetsend.Create; try telnet.WaitFor('>'); telnet.Send(Edit14.Text+#10); Memo6.Lines.Text:=telnet.sessionlog; finally end; end; danke |
AW: telnetclient mit synapse und separaten befehlen
WaitFor vergessen?
Ich benutze allgemein lieber TCP statt Telnet für soetwas (ich habe einen spezialisieren Telnet-Client geschrieben, den etwa 100.000 Leute nutzen), da hat man mehr Konstrolle drüber. Ist wohl Geschmackssache. |
AW: telnetclient mit synapse und separaten befehlen
waitfor hatte ich auch schon dabei...
keine änderung wie funktioniert das mit dem tcp client von dir? wie gesagt will mit dem telnet client auf meine box zugreifen können , wie die standard befehle und box spezifische wie opkg list_installed usw ich hab schon soviel gelesen und komm einfach nicht weiter |
AW: telnetclient mit synapse und separaten befehlen
Hab mal markiert, was ich meine, dass es fehlt:
Delphi-Quellcode:
Du musst halt immer auf eine Antwort warten.
procedure TForm1.Button15Click(Sender: TObject);
var telnet: TTelnetsend; begin TelnetConnect; memo6.Lines.Clear; telnet:= TTelnetsend.Create; try telnet.WaitFor('>'); telnet.Send(Edit14.Text+#10); telnet.WaitFor('>'); // DAS HIER MEINE ICH Memo6.Lines.Text:=telnet.sessionlog; finally end; end; |
AW: telnetclient mit synapse und separaten befehlen
Liste der Anhänge anzeigen (Anzahl: 1)
ja ich weiss was du meinst..
hatte ich auch schon drin stehen... übergibt aber eine leere seite...nix drin wenn ich einen befehl mit in die procedure TelnetConnect schreibe gehts bringt mir aber auch sonderzeichen... root@dm7080:~# [6n so wie hier aber wenn ich das auslagere so wie du es gerade in den code geschrieben hast ...gehts nicht... leere seite da hänge ich nun schon seit tagen wenn ich den befehl mit oben in die procedure schreibe gehts... aber die sonderzeichen halt siehe bild ausserdem will ich ja separat befehle über die edit schreiben können |
AW: telnetclient mit synapse und separaten befehlen
Warum erstellst du überhaupt dein Telnet-Teil jedes Mal neu? So eine Wegwerfmentalität ist nicht OK! Beim Button15Click hat es überhaupt keine Informationen zur Anmeldung und wohin es sich verbinden soll.
|
AW: telnetclient mit synapse und separaten befehlen
Beim Button 15 (ausführen) wird doch die Procedure für das Telnet mit geladen
Wo ja die Anmeldedaten drin sind Siehe oben procedure telnetconnect Wie kann ich das besser machen? |
AW: telnetclient mit synapse und separaten befehlen
Zitat:
![]() Hier muss man mit Instanzfeldern oder globalen Variablen arbeiten. |
AW: telnetclient mit synapse und separaten befehlen
ok,würde das ja gern anders lösen
hab da aber momentan keinen ansatz für, hast du vielleicht mal ein beispiel? mir gehts eigentlich darum das telnet offen bleibt und ich über das editfeld die commands senden kann mann könnte ja ein timeout einfügen das sagen wir nach 60 sec unaktivität die verbindung abgebaut wird so,hab jetzt mal die procedure telnetconnect gelöscht und die benutzerdaten unter button 15 mit eingetragen... es geht dauert aber ne gefühlte minute bis er den befehl umsetzt und ich habe im promt noch die sonderzeichen drin root@dm7080:~# [6n frage 1) wie bekomm ich die sonderzeichen weg oder unterdrückt? 2) wie kann ich das beschleunigen das er die befehle sofort umsetzt? |
AW: telnetclient mit synapse und separaten befehlen
Delphi enthält bei den Indy-Komponenten auch einen Telnet-Client (TIdTelnet) :wink:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 14:12 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz