Telnet ne fonctionnera pas à partir de l'invite cmd dans Windows 7

11

Edit: j'utilise Windows 7, 64 bits.

J'ai installé le client Telnet et si je vais dans c: \ windows \ system32, je trouve le fichier "telnet.exe"; si je clique dessus, telnet fonctionne parfaitement.

Cependant, si je tape telnet dans l'invite cmd, cela me donne le message "commande non reconnue".

Je pense que c'est parce que c: \ windows \ system32 \ cmd.exe exécute en fait des fichiers à partir de windows \ sysWOW64 (qui a également un cmd.exe), et j'ai donc essayé de copier telnet.exe dans ce dossier; Lorsque je tape telnet dans la ligne cmd (quel que soit cmd.exe que j'utilise), je n'obtiens plus de message d'erreur et, à la place, je reçois ... eh bien, rien. Il se trouve juste là, comme en attendant une entrée, mais si je tape quelque chose (par exemple, "quitter"), il ne fait encore rien et attend une entrée.

Enfin, j'ai essayé, dans windows \ sysWOW64, de supprimer telnet.exe, de créer un raccourci telnet.lnk vers telnet.exe dans system32 et de créer un fichier telnet.bat dans windows \ sysWOW64, qui exécute telnet.lnk. Maintenant, si je double-clique sur telnet.bat, telnet démarre parfaitement (dans une fenêtre system32 \ cmd.exe); si je tape telnet dans l'invite cmd (encore une fois, peu importe lequel), il exécute telnet.bat sans aucun problème (vérifié cette vérification des autres commandes), mais renvoie "Accès refusé" lors de l'ouverture de Telnet.lnk.

Donc,

- telnet est installé et fonctionne lorsque vous double-cliquez

- les raccourcis fonctionnent parfaitement en double-cliquant

- ni telnet ni les raccourcis (ni les fichiers appelant des raccourcis) ne peuvent être exécutés à partir de l'une ou l'autre des invites cmd.

Et c'est jusqu'où je suis allé. Alors, oui ... Des idées?

Sampaio
la source
3
Votre répertoire PATH contient-il le dossier System32? Si c'est le cas, le chemin est-il vraiment très long avec d'autres choses aussi? J'ai personnellement eu des problèmes où un chemin trop long peut causer des problèmes.
Scott Chamberlain
La variable "Path" contient% SystemRoot% \ System32, ainsi que quelques autres répertoires, séparés par ";". (Exemple:% SystemRoot%;% SystemRoot% \ System32; C: \ Program Files (x86) \ Common Files \ Ulead Systems \ MPEG; etc.) J'espère que cela vous aidera.
Sampaio
quel répertoire apparaît en premier dans votre chemin? system32 ou syswow64? le premier élément dans PATH qui contient un exe avec le nom que vous spécifiez doit être l'instance exécutée.
Frank Thomas
De ces deux, le premier serait system32, car syswow64 n'est pas là du tout. Le premier absolu est un répertoire "Windows Live", avec system32 étant le deuxième répertoire répertorié
Sampaio
1
Que where telnet.exedit-on? Je viens d'activer le client Telnet sous les fonctionnalités Windows. Telnet.exe, un programme 64 bits, a été dûment ajouté à Windows \ System32. Aucune version 32 bits n'a été trouvée dans Windows \ SysWOW64. La saisie telnetà l'invite cmd a parfaitement fonctionné comme prévu. Je ne sais pas quel est le problème de votre côté.
Karan

Réponses:

8

Il semble que sur Win7 64 bits, telnet.exe est une commande 64 bits. Vous pouvez l'exécuter à partir d'un shell 64 bits (ou d'une invite cmd), mais un shell 32 bits tentera de le charger à partir de SysWOW64, et il ne sera pas trouvé là.

Je soupçonne que vous exécutez une invite de commande 32 bits (par exemple, à partir de SysWOW64). Si vous exécutez l'invite de commande 64 bits, telnet devrait fonctionner.

Vous pouvez tester cela en allant dans le menu Démarrer> Exécuter, tapez cmdpuis exécutez telnet à partir de cette invite de commande.

Comment démarrez-vous votre invite de commande? S'il s'agit d'un lien, jetez un œil aux propriétés. S'il s'agit d'un autre programme et que ce programme est en 32 bits, cela pourrait être le problème.

jdigital
la source
J'ai vérifié que c'est runnig l'invite de commande de system32. Je l'ai démarré avec Run, en tapant cmd, je l'ai en fait démarré à partir du dossier system32, en double-cliquant. Comme je l'ai dit dans la question, j'ai essayé de taper "telnet" dans les deux invites de commande: à partir des répertoires system32 et syswow64. Quel que soit celui que je choisis, il recherche les fichiers dans syswow64, pour une raison quelconque.
Sampaio
1
Le comportement que vous décrivez est ce que vous verriez si vous exécutiez une invite de commande 32 bits. Exécutez cmd.exe, puis accédez au Gestionnaire des tâches et cliquez sur l'onglet Processus. Triez par nom d'image (cliquez sur la colonne Nom d'image) et examinez tous les processus cmd.exe. Y en a-t-il à *32côté d'eux?
jdigital
Bonne idée. J'ai vérifié, et il y a bien * 32 à côté du processus. Toutefois, dans la fenêtre propt de commande réelle, le chemin d'accès est system32 \ cmd.exe. Uhm ... Edit: Parfois, le processus n'a pas le * 32, auquel cas telnet fonctionne très bien. Donc, la question, je crois, est pourquoi parfois 32bits cmd.exe est appelé, et pourquoi 32bits cmd.exe apparaît comme ayant le chemin system32 \ cmd.exe, sur la fenêtre de la console
Sampaio
Dans un processus 32 bits, system32est remappé SysWOW64, vous ne pouvez donc pas vous fier au chemin system32\cmd.exesans connaître le type du processus qui l'a appelé. En ce qui concerne la raison de l'appel de cmd.exe 32 bits, cela résulte de la façon dont il est appelé. Pouvez-vous fournir plus de détails?
jdigital
2
à partir d'un cmd 32 bits, vous pouvez exécuter %SystemRoot%\Sysnative\telnetpour obtenir le telnet 64 bits
phuclv
2

Sachez que ce message est (très!) En retard, mais vient d'avoir les mêmes problèmes. Résolu en copiant également C:\windows\system32\en-us\telnet.exe.muidans le dossier correspondant dans syswow64. J'espère que cela aidera quelqu'un d'autre à l'avenir.

dlinacre
la source
Hé, merci pour la réponse. Si cela fonctionne, mieux vaut tard que jamais! Je n'ai plus le PC que j'utilisais et, franchement, je ne me souviens même pas de ce que je faisais (ou essayais de faire) à l'époque. Peut-être que ce fichier était ce qui manquait lorsque j'ai essayé de copier. Je vous donnerai +1 pour que d'autres puissent le trouver facilement.
Sampaio
0

J'ai fait une chose très simple et tout a fonctionné pour moi, copiez simplement Telnet.exe de system32 et collez-le dans SysWOW64 et exécutez le cmd.exe qui excite dans le répertoire SysWOW64 et tout a parfaitement fonctionné. J'espère que cela fonctionnera pour vous. ...

Blackshine12
la source
0

Symptôme Sous Windows Vista et Windows 7, le lancement d'une configuration de débogage avec une plate-forme comme Cortex-A8 RTSM ou FVP peut donner l'erreur suivante: Windows ne peut pas trouver 'c: \ windows \ system32 \ telnet.exe CAUSE Le débogueur DS-5 utilise les capacités telnet de votre ordinateur pour une session de débogage via une connexion série au RTSM et au FVP. Cette erreur se produit lorsque vous essayez de vous connecter au RTSM et au FVP à partir du débogueur et que le client Telnet est désactivé. Le client telnet n'est pas activé par défaut sous Windows Vista et Windows 7.

RÉSOLUTION Activez le client Telnet sur votre ordinateur et redémarrez la session de débogage. Pour activer le client Telnet sur Windows Vista et Windows 7:

Ouvrez le Panneau de configuration à partir du menu Démarrer de Windows.

Sélectionnez Programmes.

Sous Programmes et fonctionnalités, cliquez sur Activer ou désactiver les fonctionnalités Windows.

Dans la liste qui apparaît, cochez la case Client Telnet pour activer telnet.

Cliquez sur OK pour fermer la boîte de dialogue.

Nguyen Dang Tung
la source
Veuillez relire attentivement la question. Votre réponse ne répond pas à la question d'origine. OP a déjà installé telnet.
DavidPostill