Telnet wird in Windows 7 nicht über die cmd-Eingabeaufforderung ausgeführt


11

Bearbeiten: Ich verwende Windows 7, 64 Bit.

Ich habe Telnet Client installiert, und wenn ich zu c: \ windows \ system32 gehe, finde ich die Datei "telnet.exe"; Wenn ich darauf klicke, läuft Telnet perfekt.

Wenn ich jedoch Telnet in die cmd-Eingabeaufforderung eingebe, wird die Meldung "Befehl nicht erkannt" angezeigt.

Ich denke , das liegt daran, dass c: \ windows \ system32 \ cmd.exe tatsächlich Dateien aus Windows \ sysWOW64 ausführt (das auch eine cmd.exe hat), und deshalb habe ich versucht, telnet.exe in diesen Ordner zu kopieren. Wenn ich Telnet in die cmd-Zeile eingebe (unabhängig davon, welche cmd.exe ich verwende), erhalte ich keine Fehlermeldung mehr und stattdessen ... naja, nichts. Es sitzt einfach da, wie beim Warten auf Eingabe, aber wenn ich etwas eingebe (z. B. "Beenden"), tut es wieder nichts und wartet auf Eingabe.

Schließlich habe ich in Windows \ sysWOW64 versucht, telnet.exe zu löschen, eine telnet.lnk-Verknüpfung zu telnet.exe in system32 zu erstellen und eine telnet.bat-Datei in windows \ sysWOW64 zu erstellen, in der telnet.lnk ausgeführt wird. Wenn ich jetzt auf telnet.bat doppelklicke, wird Telnet perfekt gestartet (in einem system32 \ cmd.exe-Fenster). Wenn ich telnet in die cmd-Eingabeaufforderung eingebe (auch hier spielt es keine Rolle), wird telnet.bat ohne Probleme ausgeführt (dies wurde beim Testen anderer Befehle überprüft), aber beim Öffnen von Telnet.lnk wird "Zugriff verweigert" zurückgegeben.

Damit,

- Telnet ist installiert und wird beim Doppelklicken ausgeführt

- Verknüpfungen funktionieren einwandfrei, wenn Sie darauf doppelklicken

- Weder Telnet noch Verknüpfungen (noch Dateien, die Verknüpfungen aufrufen) können an einer der cmd-Eingabeaufforderungen ausgeführt werden.

Und so weit bin ich gegangen. Also, ja ... Irgendwelche Ideen?


3
Enthält Ihr PATH- Verzeichnis den System32-Ordner? Wenn ja, ist der Weg mit anderen Dingen wirklich sehr lang? Ich persönlich hatte Probleme, bei denen ein zu langer Weg Probleme verursachen kann.
Scott Chamberlain

Die Variable "Path" enthält% SystemRoot% \ System32 sowie einige andere Verzeichnisse, die durch ';' getrennt sind. (Beispiel:% SystemRoot%;% SystemRoot% \ System32; C: \ Programme (x86) \ Gemeinsame Dateien \ Ulead Systems \ MPEG; usw.) Hoffe, dies hilft.
Sampaio

Welches Verzeichnis kommt zuerst in Ihrem Pfad vor? system32 oder syswow64? Das erste Element in PATH, das eine Exe mit dem von Ihnen angegebenen Namen enthält, sollte die ausgeführte Instanz sein.
Frank Thomas

Von diesen beiden wäre das erste system32, da syswow64 überhaupt nicht vorhanden ist. Das absolute erste ist ein "Windows Live" -Verzeichnis, wobei system32 das zweite aufgeführte Verzeichnis ist
Sampaio

1
Was where telnet.exesagt das aus? Ich habe gerade den Telnet-Client unter Windows-Funktionen aktiviert. Telnet.exe, ein 64-Bit-Programm, wurde ordnungsgemäß zu Windows \ System32 hinzugefügt. In Windows \ SysWOW64 war keine 32-Bit-Version zu finden. Das Tippen telnetan der cmd-Eingabeaufforderung funktionierte wie erwartet einwandfrei. Ich weiß nicht, wo das Problem liegt.
Karan

Antworten:


8

Es scheint, dass telnet.exe unter Win7 64-Bit ein 64-Bit-Befehl ist. Sie können es über eine 64-Bit-Shell (oder eine Cmd-Eingabeaufforderung) ausführen, aber eine 32-Bit-Shell versucht, es von SysWOW64 zu laden, und es wird dort nicht gefunden.

Ich vermute, dass Sie eine 32-Bit-Eingabeaufforderung ausführen (z. B. von SysWOW64). Wenn Sie eine 64-Bit-Eingabeaufforderung ausführen, sollte Telnet funktionieren.

Sie können dies testen, indem Sie über cmddiese Eingabeaufforderung auf Startmenü> Ausführen, Telnet eingeben und dann Telnet ausführen.

Wie starten Sie Ihre Eingabeaufforderung? Wenn es sich um einen Link handelt, sehen Sie sich die Eigenschaften an. Wenn es von einem anderen Programm stammt und dieses Programm 32 Bit umfasst, könnte dies das Problem sein.


Ich habe überprüft, ob die Eingabeaufforderung von system32 ausgeführt wird. Ich habe es mit Ausführen gestartet und cmd eingegeben. Ich habe es tatsächlich aus dem Ordner system32 durch Doppelklicken gestartet. Wie ich in der Frage sagte, habe ich versucht, "telnet" in beide Befehlsansagen einzugeben: aus den Verzeichnissen system32 und syswow64. Unabhängig davon, welche ich wähle, sucht sie aus irgendeinem Grund nach den Dateien in syswow64.
Sampaio

1
Das Verhalten, das Sie beschreiben, wird angezeigt, wenn Sie eine 32-Bit-Eingabeaufforderung ausführen. Führen Sie aus cmd.exe, gehen Sie zum Task-Manager und klicken Sie auf die Registerkarte Prozesse. Sortieren Sie nach Bildname (klicken Sie auf die Spalte Bildname) und sehen Sie sich alle cmd.exe-Prozesse an. Hat einer von ihnen *32neben sich?
jdigital

Gute Idee. Ich habe nachgesehen, und es gibt tatsächlich * 32 neben dem Prozess. Im eigentlichen Befehlsfenster lautet der Pfad jedoch system32 \ cmd.exe. Ähm ... Bearbeiten: Manchmal hat der Prozess nicht die * 32, in welchen Fällen funktioniert Telnet einwandfrei. Ich glaube also, die Frage ist, warum manchmal 32 Bit cmd.exe aufgerufen wird und warum 32 Bit cmd.exe im Konsolenfenster den Pfad system32 \ cmd.exe enthält
Sampaio

system32Wird in einem 32-Bit-Prozess neu zugeordnet SysWOW64, sodass Sie sich nicht auf den Pfad verlassen können, system32\cmd.exeohne den Typ des Prozesses zu kennen, der ihn aufgerufen hat. In Bezug darauf, warum 32-Bit-cmd.exe aufgerufen wird, ist dies ein Ergebnis dessen, wie es aufgerufen wird. Können Sie weitere Details angeben?
jdigital

2
Von einem 32-Bit-Cmd können Sie ausführen %SystemRoot%\Sysnative\telnet, um das 64-Bit-Telnet zu erhalten
phuclv

2

Erkenne, dass dieser Beitrag (sehr!) Spät ist, aber nur die gleichen Probleme hatte. Es wurde behoben, indem auch C:\windows\system32\en-us\telnet.exe.muiin den entsprechenden Ordner in kopiert wurde syswow64. Hoffe, das hilft jemand anderem in Zukunft.


Hey, danke für die Antwort. Wenn das funktioniert, besser spät als nie! Ich habe nicht mehr den PC, den ich benutzt habe, und ehrlich gesagt erinnere ich mich nicht einmal daran, was ich damals getan habe (oder versucht habe). Vielleicht fehlte diese Datei, als ich versuchte zu kopieren. Ich gebe dir +1, damit andere das leicht finden können.
Sampaio

0

Ich habe eine sehr einfache Sache gemacht und alles hat für mich funktioniert. Kopieren Sie einfach Telnet.exe von system32 und fügen Sie es in SysWOW64 ein. Führen Sie die cmd.exe aus, die im SysWOW64-Verzeichnis aufregend ist, und alles hat perfekt funktioniert. Ich hoffe, es wird für Sie funktionieren. ...


0

SYMPTOM Unter Windows Vista und Windows 7 kann das Starten einer Debug-Konfiguration mit einer Plattform wie Cortex-A8 RTSM oder FVP den folgenden Fehler verursachen: Windows kann 'c: \ windows \ system32 \ telnet.exe nicht finden URSACHE DS-5 Debugger verwendet Telnet-Funktionen von Ihr Computer für eine Debug-Sitzung über eine serielle Verbindung mit RTSM und FVP. Dieser Fehler tritt auf, wenn Sie versuchen, vom Debugger aus eine Verbindung zu RTSM und FVP herzustellen, und der Telnet-Client deaktiviert ist. Der Telnet-Client ist unter Windows Vista und Windows 7 standardmäßig nicht aktiviert.

LÖSUNG Aktivieren Sie den Telnet-Client auf Ihrem Computer und starten Sie die Debug-Sitzung neu. So aktivieren Sie den Telnet-Client unter Windows Vista und Windows 7:

Öffnen Sie die Systemsteuerung über das Windows-Startmenü.

Wählen Sie Programme.

Klicken Sie unter Programme und Funktionen auf Windows-Funktionen aktivieren oder deaktivieren.

Aktivieren Sie in der angezeigten Liste das Kontrollkästchen Telnet-Client, um Telnet zu aktivieren.

Klicken Sie auf OK, um den Dialog zu schließen.


Bitte lesen Sie die Frage noch einmal sorgfältig durch. Ihre Antwort beantwortet nicht die ursprüngliche Frage. OP hat bereits Telnet installiert.
DavidPostill
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.