![]() |
Support für IndyTelnet Delphi 7, Absturz?
Liste der Anhänge anzeigen (Anzahl: 1)
Hallo Liebe Community!
Auch wenn ich ertst seit kurzem angemeldet bin, habe ich hier schon desöfteren rumgestöbert, da die meisten Beiträge doch sehhhr hilfreich sind! Ich hoffe, auch wenn ich newbie in diesem forum bin, Unterstützung zu bekommen. Also, nun zum Prioblem: Ich habe ein Programm, über das ich auf Telnet zugreifen möchte/muss. Dieses Programm schickt bei einer Verbindung folgendes: Tante_EDIT:Bild in den Anhzang verschoben Im Programm, welches die Verbindungen annehmen soll steht dann etwas in der Art:
Code:
Mein Programm verbindet sich über port 81, deswegen bin ich über die erste Aussage des Programms schon verwundert, dann Klappt aber anscheinend die Verbindung (Remote Autoresierung ok), jedoch stürzt dann mein geschriebenes Programm ab.
Fernverbindung vom 127.0.0.1:1518
Remote Autoresierung ok Der Quellcode für diesen teil des Programms ist:
Code:
nach dem Autoresieren bleibt er hängen und macht NIX.
procedure TForm1.Button1Click(Sender: TObject);
begin Tel.host:=Edit1.Text;/localhost Tel.Port:=StrToInt(Edit3.Text);/port (81) Pass:=MaskEdit1.Text;//passwort("halloXD" falls es hilft. . ) tel.Connect; tel.Sendcmd(Pass); end; Ich hoffe nun also auf eure Unterstützung, und ich hoffe, dass mein Gehirn grade etwas hackt und es an einer simplen 'Kleinigkeit liegt :gruebel: :P :glaskugel: P.S:Das Programm das annehmen soll lauscht übrigens auch auf port 81 EDIT: Bild in den Anhang verschoben, aber Hilfestellung wäre nicht schlecht :wink: |
Re: Support für IndyTelnet Delphi 7, Absturz?
Hi!
Herzlich Willkommen in der DP! Könntest du das Bild bitte in den Anhang packen? Dann bliebe es uns auch erhalten, wenn der externe Server mal nicht erreichbar ist und die Anzeigezeit für den Thread verkürzt sich doch etwas... Danke! Ciao, Frederic |
Re: Support für IndyTelnet Delphi 7, Absturz?
Ich bekomme übrigens die gleiche Situation, wenn ich die TCP/IP kompo verwende ... . falls das hilft :cry:
|
Re: Support für IndyTelnet Delphi 7, Absturz?
.. und was passiert wenn Du mit einem "normalen" TelnetClient (putty, telnet aus cmd box) zugreifst?
Grüße Klaus |
Re: Support für IndyTelnet Delphi 7, Absturz?
ich hab doch screen erstellt, dann kann ich nach der autorisierung commands schicken, zb. /? für eine liste der befehle etc.
|
Re: Support für IndyTelnet Delphi 7, Absturz?
Delphi-Quellcode:
.. und dann mal gucken wo es dann hängt.
procedure TForm1.Button1Click(Sender: TObject);
begin Tel.host:=Edit1.Text; //localhost Tel.Port:=StrToInt(Edit3.Text);///port (81) Pass:=MaskEdit1.Text;//passwort("halloXD" falls es hilft. . ) <-- Breakpunkt setzen, dann mit F7 oder F8 weiter tel.Connect; tel.Sendcmd(Pass); end; Aber solltest Du nicht erst das auswerten was Dir der Server schickt. Darauf dann das gewünschte senden - und nicht einfach nach dem Connect gleich das Passwort. Grüße Klaus |
Re: Support für IndyTelnet Delphi 7, Absturz?
Ich weiß ja schon, was der server mir schickt, nen leeren screen, ich was ja auch schon, dass das pw geschickt wird und somit mein kollege client auch verbindet, siehe hier:
Code:
das breakpoint setzten bringt nix, selbst wenn ich es überall setzte (ja, ich neige zum übertreiben . . .)
Fernverbindung vom 127.0.0.1:1109
Remote Autoresierung ok Fernverbindung vom 127.0.0.1:1194 Remote Autoresierung ok ich beschreib ma, was passiert, wenn ich ne anfrage über cmd mache ( mit telnet 127.0.0.1 81) der verbindet ( seh ich ja nich), dann changed das Fenster und heißt telnet 127.0.0.1, dann wird alles "leer" und wenn ich das passwort dann eingebe, kommt "Authenticated ok" und ich kann meine befehle schicken (soweit komme ich ja gar nicht) Ich hatte auch schonmal irgendwo ne andere möglichkeit gesehen, befehle zu schicken mit ner schleife, ich finds aber net mehr. . . |
Re: Support für IndyTelnet Delphi 7, Absturz?
Guten Abend,
so kann ich mich in mein Linuxsystem per telnet anmelden:
Delphi-Quellcode:
Im ObjectInspector habe ich beim idTelnet1 noch ThreadedEvent auf true gesetzt.
procedure TForm1.Button1Click(Sender: TObject);
begin idTelnet1.Host:='192.168.189.128'; idTelnet1.Connect(); if idTelnet1.Connected then memo1.Lines.Add('connected'); end; procedure TForm1.IdTelnet1DataAvailable(Sender: TIdTelnet; const Buffer: String); begin memo1.Lines.add(buffer); if pos('ogin',buffer) > 0 then (sender as TidTelnet).SendCmd('klaus'); if pos('assword',buffer) > 0 then (sender as TidTelnet).SendCmd('klaus'); end; Grüße Klaus |
Re: Support für IndyTelnet Delphi 7, Absturz?
Bei mri stürzt er auch da ab, vor allem bringt mir dasd buffer-warten nichts, da er ja einfach nur uf das pw wartet, ohne i-was anzugeben . .. .
Ich hoffe, irgendwer da draußen kann mir noch helfen, ich poste jetzt einfach mal aus verzweiflung meinen null-kommentierten und un-formqatierten quelltext
Code:
Hoffe, jemand kann mir noch helfen. . .
unit Unit1;
interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, ShellAPI, Mask, StdCtrls, IdBaseComponent, IdComponent, IdTCPConnection, IdTCPClient, IdTelnet, XPMan, IdAntiFreezeBase, IdAntiFreeze; type TForm1 = class(TForm) XPManifest1: TXPManifest; Label1: TLabel; Label2: TLabel; Edit1: TEdit; Label3: TLabel; Label5: TLabel; Edit3: TEdit; Label4: TLabel; Button1: TButton; Edit2: TEdit; Memo1: TMemo; IdTelnet1: TIdTelnet; Button2: TButton; procedure Button1Click(Sender: TObject); procedure FormCreate(Sender: TObject); procedure FormClose(Sender: TObject; var Action: TCloseAction); procedure IdTelnet1Connect(Sender: TObject); procedure IdTelnet1DataAvailable(Sender: TIdTelnet; const Buffer: String); procedure Button2Click(Sender: TObject); private { Private-Deklarationen } public { Public-Deklarationen } end; function RandomString(strlength: integer): string; var Form1: TForm1; Pass: String; implementation {$R *.dfm} function RandomString(strlength: integer): string; var temp : integer; begin randomize; repeat temp := random(122); //ggf. erhöhen if temp in [0..127] then begin//Kann um beliebige ASCII-Zeichen erweitert werden, //ggf. den Wert in Random hochsetzen result := result + Chr(temp); end; until length(result) = strlength; end; procedure TForm1.Button1Click(Sender: TObject); begin IdTelnet1.Host:=Edit1.Text; IdTelnet1.Port:=StrtoInt(Edit3.Text); IdTelnet1.Connect(); if IdTelnet1.Connected then memo1.Lines.Add('connected'); end; procedure TForm1.FormCreate(Sender: TObject); begin edit1.Text:='127.0.0.1'; edit3.text:='3207'; end; procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction); begin IdTelnet1.Disconnect; end; procedure TForm1.IdTelnet1Connect(Sender: TObject); begin Label2.Font.Color:=clLime; Label2.Caption:='Connected'; end; procedure TForm1.IdTelnet1DataAvailable(Sender: TIdTelnet; const Buffer: String); begin memo1.Lines.add(buffer); if pos('',buffer) > 0 then (sender as TidTelnet).SendCmd(''); if pos('Authenticated ok',buffer) > 0 then (sender as TidTelnet).SendCmd('/?'); end; procedure TForm1.Button2Click(Sender: TObject); begin try idtelnet1.sendcmd(''); //Das ist im moemnt das passwort,also einfach leer, geht aber auch nicht mit normalen pw, an dieser stelle bleibt er hängen! except end; end; end. |
Re: Support für IndyTelnet Delphi 7, Absturz?
.. hast Du auch diese Einstellungen vorgenommen?
Zitat:
Grüße Klaus |
Alle Zeitangaben in WEZ +1. Es ist jetzt 04:24 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