![]() |
Telnet Client Problem
Hallo,
ich hatte vor eine Telnet Verbindung aufzubauen und darüber ein paar Befehle abzusetzen aber irgendwie stützt das Programm nach dem absetzen des ersten Befehls (Der vom Server Korrekt ausgeführt wird) ab. Hier seht ihr meinen bisherigen Code: Verbinden:
Code:
Befehl Senden:
procedure TForm2.Button1Click(Sender: TObject);
begin telnet.Host:=edit1.Text; telnet.Port:= strtoint(edit2.Text); telnet.Connect; button1.Caption:='Connected'; button1.Enabled:=false; end;
Code:
Verbinden geht ohne Probleme (Trennen macht nicht richtig). Aber sobald ich den
telnet.Sendcmd('echo hi');
zweiten Button zum absetzten des Befehls drücke wird der Befehl ausgeführt, dass Programm stützt allerdings komplett ab. Hoffe ihr könnt mir helfen Danke |
AW: Telnet Client Problem
Der Fehler liegt in Zeile 42.
Ein paar mehr Infos können nie schaden. - immernoch XE3? (das kann man übrigens auch im Profil angeben, wenn man das in den Posts nicht immer angeben möchte) - was ist "telnet"? (wenn TidTelnet ... das im Delphi integrierte, oder gab's ein Upgrade) - Und auch wenn ich mich manchmal wiederhole: Was sagt dein Debugger dazu, wo das Programm abstürzt? (notfalls die ensprechenden Debug-DCUs aktivieren, falls möglich) Vermutung: Da das Senden scheinbar geht, wird das Problem wohl beim Response liegen, also dem Empfangen und der Auswertung der Antwort des Servers. |
AW: Telnet Client Problem
Ich nutze delphi XE6 und es geht um idTelnet was Standartmäßig dabei ist.
Habe vorher IdTCPClient verwendet doch das Ergebnis war das selbte, nach dem absetzen des Befehls, stürtzt das Programm ab. Das sind die Infos die ich von Delphi während der Ausführung bekomme
Code:
Thread-Start: Thread-ID: 4668. Prozess Project2.exe (1084)
Prozessstart: C:\Users\nixlos\Documents\Embarcadero\Studio\Projekte\Win32\Debug\Project2.exe. Basisadresse: $00400000. Prozess Project2.exe (1084) Modul laden: Project2.exe. Enthält Debug-Infos. Basisadresse: $00400000. Prozess Project2.exe (1084) Modul laden: ntdll.dll. Ohne Debug-Infos. Basisadresse: $77830000. Prozess Project2.exe (1084) Modul laden: KERNEL32.dll. Ohne Debug-Infos. Basisadresse: $752F0000. Prozess Project2.exe (1084) Modul laden: KERNELBASE.dll. Ohne Debug-Infos. Basisadresse: $76340000. Prozess Project2.exe (1084) Modul laden: OLEAUT32.dll. Ohne Debug-Infos. Basisadresse: $772E0000. Prozess Project2.exe (1084) Modul laden: ole32.dll. Ohne Debug-Infos. Basisadresse: $77150000. Prozess Project2.exe (1084) Modul laden: msvcrt.dll. Ohne Debug-Infos. Basisadresse: $75AA0000. Prozess Project2.exe (1084) Modul laden: GDI32.dll. Ohne Debug-Infos. Basisadresse: $757E0000. Prozess Project2.exe (1084) Modul laden: USER32.dll. Ohne Debug-Infos. Basisadresse: $76020000. Prozess Project2.exe (1084) Modul laden: ADVAPI32.dll. Ohne Debug-Infos. Basisadresse: $763A0000. Prozess Project2.exe (1084) Modul laden: SECHOST.dll. Ohne Debug-Infos. Basisadresse: $757C0000. Prozess Project2.exe (1084) Modul laden: RPCRT4.dll. Ohne Debug-Infos. Basisadresse: $75400000. Prozess Project2.exe (1084) Modul laden: SspiCli.dll. Ohne Debug-Infos. Basisadresse: $75230000. Prozess Project2.exe (1084) Modul laden: CRYPTBASE.dll. Ohne Debug-Infos. Basisadresse: $75220000. Prozess Project2.exe (1084) Modul laden: LPK.dll. Ohne Debug-Infos. Basisadresse: $75550000. Prozess Project2.exe (1084) Modul laden: USP10.dll. Ohne Debug-Infos. Basisadresse: $770B0000. Prozess Project2.exe (1084) Modul laden: VERSION.dll. Ohne Debug-Infos. Basisadresse: $70AD0000. Prozess Project2.exe (1084) Modul laden: COMCTL32.dll. Ohne Debug-Infos. Basisadresse: $707A0000. Prozess Project2.exe (1084) Modul laden: SHLWAPI.dll. Ohne Debug-Infos. Basisadresse: $75570000. Prozess Project2.exe (1084) Modul laden: SHELL32.dll. Ohne Debug-Infos. Basisadresse: $76450000. Prozess Project2.exe (1084) Modul laden: WINSPOOL.DRV. Ohne Debug-Infos. Basisadresse: $6C400000. Prozess Project2.exe (1084) Modul laden: IMM32.dll. Ohne Debug-Infos. Basisadresse: $754F0000. Prozess Project2.exe (1084) Modul laden: MSCTF.dll. Ohne Debug-Infos. Basisadresse: $76270000. Prozess Project2.exe (1084) Modul laden: nvinit.dll. Ohne Debug-Infos. Basisadresse: $72E60000. Prozess Project2.exe (1084) Modul laden: detoured.dll. Ohne Debug-Infos. Basisadresse: $0F000000. Prozess Project2.exe (1084) Modul laden: nvd3d9wrap.dll. Ohne Debug-Infos. Basisadresse: $6B740000. Prozess Project2.exe (1084) Modul laden: SETUPAPI.dll. Ohne Debug-Infos. Basisadresse: $75E80000. Prozess Project2.exe (1084) Modul laden: CFGMGR32.dll. Ohne Debug-Infos. Basisadresse: $772B0000. Prozess Project2.exe (1084) Modul laden: DEVOBJ.dll. Ohne Debug-Infos. Basisadresse: $755E0000. Prozess Project2.exe (1084) Modul laden: nvdxgiwrap.dll. Ohne Debug-Infos. Basisadresse: $6B6F0000. Prozess Project2.exe (1084) Modul laden: UxTheme.dll. Ohne Debug-Infos. Basisadresse: $69F60000. Prozess Project2.exe (1084) Modul laden: dwmapi.dll. Ohne Debug-Infos. Basisadresse: $69EB0000. Prozess Project2.exe (1084) Modul laden: WTSAPI32.dll. Ohne Debug-Infos. Basisadresse: $72640000. Prozess Project2.exe (1084) Modul laden: WINSTA.dll. Ohne Debug-Infos. Basisadresse: $714D0000. Prozess Project2.exe (1084) Thread-Start: Thread-ID: 5332. Prozess Project2.exe (1084) Thread-Start: Thread-ID: 4500. Prozess Project2.exe (1084) Modul laden: WS2_32.dll. Ohne Debug-Infos. Basisadresse: $75D00000. Prozess Project2.exe (1084) Modul laden: NSI.dll. Ohne Debug-Infos. Basisadresse: $755D0000. Prozess Project2.exe (1084) Modul laden: fwpuclnt.dll. Ohne Debug-Infos. Basisadresse: $69BB0000. Prozess Project2.exe (1084) Modul laden: IdnDl.dll. Ohne Debug-Infos. Basisadresse: $550E0000. Prozess Project2.exe (1084) Modul laden: Normaliz.dll. Ohne Debug-Infos. Basisadresse: $76260000. Prozess Project2.exe (1084) Modul laden: IPHLPAPI.DLL. Ohne Debug-Infos. Basisadresse: $71330000. Prozess Project2.exe (1084) Modul laden: WINNSI.DLL. Ohne Debug-Infos. Basisadresse: $71320000. Prozess Project2.exe (1084) Modul laden: ole32.dll. Ohne Debug-Infos. Basisadresse: $040A0000. Prozess Project2.exe (1084) Modul entladen: ole32.dll. Prozess Project2.exe (1084) Modul laden: ole32.dll. Ohne Debug-Infos. Basisadresse: $043B0000. Prozess Project2.exe (1084) Modul entladen: ole32.dll. Prozess Project2.exe (1084) Modul laden: CLBCatQ.DLL. Ohne Debug-Infos. Basisadresse: $761A0000. Prozess Project2.exe (1084) Modul laden: MSWSOCK.dll. Ohne Debug-Infos. Basisadresse: $6D550000. Prozess Project2.exe (1084) Modul laden: WSHTCPIP.dll. Ohne Debug-Infos. Basisadresse: $6D540000. Prozess Project2.exe (1084) |
AW: Telnet Client Problem
Da werden sehr schöne viele dlls geladen, doch interessant ist das irgendwie überhaupt nicht. Um dir weiterhelfen zu können postest entweder den kompletten relevanten Quelltext oder du setzt dir mal verschiedene Haltepunkte und debuggst dein Programm um zu sehen was "stürzt ab" eigentlich so im Detail ist.
|
AW: Telnet Client Problem
So habe das Problem gelöst.
statt: idtcpclient.Sendcmd('echo hi'); habe ich: idtcpclient.Socket.WriteLn('echo hi'); dann läufts |
AW: Telnet Client Problem
Das da oben sind die Debuger-Meldungen.
Wobei dort noch bissl was fehlt, denn die Exception ist da noch nicht drin erwähnt. Der Stack-Trace ist aber nochmal ein anderes Fenster. Zitat:
Dennoch bleibt hier ein Problem, da dann die Rückantwort nicht ausgewertet wird. Mehrere Befehle und/oder eine längere Laufzeit des Programms wird so irgendwann zu Problemen führen. Vorallem dann, wenn man auch mal eine Antwort vom Server haben möchte. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 11:16 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 by Thomas Breitkreuz