Autor Beitrag
estrella1410
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 46



BeitragVerfasst: Mi 16.01.08 15:27 
Hallo,

also ich habe folgendes Problem.

Ich möchte gerne eine telnet verbindung herstellen, was aber bei mir absolut nicht funktioniert. Kann mir jemand einen Ansatz dafür geben, wie ich das mache. Habe den namen des servers und natürlich die login daten, heißt host und password.

Vielleicht kann mir da jemand einen Tipp geben bitte?

Wäre dankbar für hilfe

Gruß,
Jessy


Moderiert von user profile iconChristian S.: Topic aus Sonstiges (C# / .NET) verschoben am Mi 23.01.2008 um 09:54
estrella1410 Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 46



BeitragVerfasst: Mi 23.01.08 10:41 
Also ich habe nun viel im net recherchiert zu der Thematik und versuche nun eine Telnet verbindung via tcp-client aufzubauen, weis aber nicht recht ob das überhaupt möglich ist ..habe mal nen code-ausschnitt...:

ausblenden C#-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
          
            string server = "server";
            string anmeldename = "user";
            string psw = "abc";
            int port = 23;

            TcpClient client = new TcpClient(server, port);
          
            NetworkStream ns = client.GetStream();
            
            byte[] bytes = new byte[1024];
            int bytesRead = ns.Read(bytes, 0, bytes.Length);
            Console.WriteLine("Connected value is {0}", client.Connected);


aber ich weis dass man sich bei telnet via user und passwort anmelden muss wie kann ich dass da denn machen ?
und ist der weg überhaupt richtig oder bin ich völlig aufm falschen dampfer?

könnte wirklich mal einen rat gebrauchen....

Moderiert von user profile iconChristian S.: Code- durch C#-Tags ersetzt


Zuletzt bearbeitet von estrella1410 am Mo 18.02.08 13:00, insgesamt 1-mal bearbeitet
Christian S.
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 20451
Erhaltene Danke: 2264

Win 10
C# (VS 2019)
BeitragVerfasst: Mi 23.01.08 10:53 
Hallo!

Ich habe vor einiger Zeit mal mit Telnet in C# gearbeitet und dabei diese Klasse verwendet:
www.c-sharpcorner.co...82-82ee-8cb4c110f9a0

Leider ist Telnet ein ziemlicher Krampf, wenn man damit in einem Programm arbeiten will. Ein Login sieht z.B. bei mir so aus:
ausblenden Delphi-Prism-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
method FibsWrapper.Connect(Username : String; Password : String) : Boolean; 
begin  
  result := fTelnet.Connect; //Verbindung aufbauen
    
  if result then //Falls Verbindung da, ...
  begin    
    fTelnet.SendAndWait(Username, 'password'); //Username "eintippen" und auf den String "password" warten.
    try
      fTelnet.SendAndWait(Password, 'User '+Username+' authenticated.'); //Passwort "eintippen" und auf die Bestätigung warten
      fUsername := Username; //Wir sind eingeloggt
    except
      result := false//Kam keine Bestätigung -> Login fehlgeschlagen
    end;
  end;
end;


Grüße
Christian

_________________
Zwei Worte werden Dir im Leben viele Türen öffnen - "ziehen" und "drücken".
estrella1410 Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 46



BeitragVerfasst: Mi 06.02.08 15:08 
Hm also ersteinmal danke für die antwort! .. habe mir die zip datei von dem link mal runtergeladen.

aber ich hab ein problem auszuprobieren ob das klappt weil ich diese chrome sprache mnit kenn un irgendwie das nit in c# umsetzen kann...

könntest du mir da nochmal helfen?

Lieben Gruß,

Jessy
Christian S.
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 20451
Erhaltene Danke: 2264

Win 10
C# (VS 2019)
BeitragVerfasst: Mi 06.02.08 15:24 
Hm, das ist eigentlich 1:1 umzusetzen, mal schauen:

ausblenden C#-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
public class FibsWrapper
{
  private ScriptingTelnet fTelnet;
    private string fUsername;

    public FibsWrapper()
    {
    fTelnet = new ScriptingTelnet(fServer, fPort, fTimeout);
    }
  

    public bool Connect(string Username, string Password)
    {
        bool result = fTelnet.Connect;
        if (result)
        {
            fTelnet.SendAndWait(Username, "password");
            try
            {
                fTelnet.SendAndWait(Password, "User "+Username+" authenticated.");
                fUsername = Username;
            }
            catch
            {
                result = false;
            }
        }
        return result;
    }
}

Ist ungetestet, sollte aber soweit stimmen. Die verschiedenen Strings, auf die gewartet wird, dürften bei verschiedenen Servern variieren, da musst Du dann schauen, wie das bei Deinem geht.

_________________
Zwei Worte werden Dir im Leben viele Türen öffnen - "ziehen" und "drücken".
estrella1410 Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 46



BeitragVerfasst: Mi 06.02.08 15:42 
nochmal eine dumme frage....

das was du mir da übersetzt hast ist das jetzt eine klasse die ich einbinden muss oder muss ich das was ich runtergeladen habe als klasse ienbinden oder gar beides ?


oder gehört dein teil in den quellcode meines programms um diese verbindung aufzubauen?


steh voll aufm schlauch ich glaub is wat viel heute ...
Christian S.
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 20451
Erhaltene Danke: 2264

Win 10
C# (VS 2019)
BeitragVerfasst: Mi 06.02.08 15:46 
Ich habe oben die ScriptingTelnet-Klasse verlinkt. Der Code, den ich gepostet habe, ist ein Beispiel dafür, wie man damit arbeitet. Ich habe in der C#-Version doch extra noch die Deklaration von fTelnet hingeschrieben, das ja vom Typ ScriptingTelnet ist.

Wie Du jetzt Dein spezifisches Problem mit der Klasse lösen kannst, da musst Du schon selber noch ein bisschen dran rumschrauben. ;-)

_________________
Zwei Worte werden Dir im Leben viele Türen öffnen - "ziehen" und "drücken".
estrella1410 Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 46



BeitragVerfasst: Fr 08.02.08 09:11 
HELP!!

Also ich hab jetzt rumprobiert wie ne wilde ..habe deinen code sozusagen in meinen code angefügt und die klasse die du verlinkt hast auch hinzugefügt ...

aber der springt gar net in den teil rein den ich in meinen code integriert habe :(

gott ich bin eindeutig noch net fit genug in c#...

Kannst du mir noch mal helfen ?

Gruß,
Jessy
Christian S.
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 20451
Erhaltene Danke: 2264

Win 10
C# (VS 2019)
BeitragVerfasst: Fr 08.02.08 10:37 
Und wie? Du musst schon mehr Informationen geben als "klappt nicht" :nixweiss:

_________________
Zwei Worte werden Dir im Leben viele Türen öffnen - "ziehen" und "drücken".
estrella1410 Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 46



BeitragVerfasst: Fr 08.02.08 13:56 
also ...

ich habe den code den du gepostet hast in meinen code integriert.
Habe ja dann diese klasse hinzugefügt: normalerweise hab ich gelsen dass ich dann auf diese klasse zugreifen kann und ich dachte das tue ich durch den code ausschnitt, wie du ihn gepostet hast.

nur bei mir springt der gar nicht erst in die prozedur rein, was er dich eigentlich sollte wenn ich das programm starte. weil da sind ja dich "stichworte" wie "connect" mit gegeben in dem code ausschnitt und ich dachte dass durch dieses " public bool Connect(string username , string password)" er dann sozusagen in die klasse springt und das auch macht ..also laut deinem codeausschnitt die verbindung herstellt.

mir geht es ja prinzipiell auch ersteinmal um die verbindung simpel herzustellen.
Habe noch nie vorher so ne klasse benutzt also aus nem eigenen code auf das zuzugreifen aber habe nach anweisung diese neue klasse ScriptingTelnet mit eingebunden....

hier mal mein code...den ich angefügt habe...

ausblenden volle Höhe C#-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
    public class telnet
    {
        private ScriptingTelnet fTelnet;
        private string fUsername;

        string Server="server";
        int Port = 25;
        int Timeout = 100;

        public telnet()
        {
            fTelnet =  new ScriptingTelnet (Server, Port, Timeout);
        }

        public  bool Connect(string username , string password)
        {
            username = "root";
            password = "cpx";


            bool result = fTelnet.Connect();
            if (result)
            {
                fTelnet.SendAndWait(username, "password");
                try
                {
                    fTelnet.SendAndWait(password, "User " + username + " authenticated.");
                    fUsername = username;
                }
                catch
                {
                    result = false;
                }
            }
            return result;
        }

        public void SendMessage(string Message)
        {
            Message = "df -m";
        }


Moderiert von user profile iconChristian S.: Code- durch C#-Tags ersetzt


Zuletzt bearbeitet von estrella1410 am Mo 18.02.08 13:41, insgesamt 1-mal bearbeitet
Christian S.
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 20451
Erhaltene Danke: 2264

Win 10
C# (VS 2019)
BeitragVerfasst: Fr 08.02.08 14:50 
Wo instanzierst Du denn Deine telnet-Klasse und rufst die Methoden auf?

Inzwischen habe ich den Eindruck, Du solltest Dich erstmal mit den Grundlagen von C# beschäftigen und dann erst schwierigere Projekte angehen :gruebel:

_________________
Zwei Worte werden Dir im Leben viele Türen öffnen - "ziehen" und "drücken".
estrella1410 Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 46



BeitragVerfasst: Mo 11.02.08 07:39 
Ich habe mir das doch nicht ausgesucht .....
aber ich möchte das gerne schaffen brauch abe rhalt hilfe...dass es nicht eine einfache aufgabe ist, dem bin ich mir bewusst...