Telnet et C++

Fermé
TrAsH - 15 juin 2004 à 13:56
 TrAsH - 16 juin 2004 à 16:03
Bonjour le t'chat

Voila le probleme

Je doit me connecter a plusieurs switch avec telnet avec une application ecrite en C++ mais le probleme c'est que je ne sais pas comment ecrire sur la fenetre telnet pour indiquer le mot de passe et autre renseignements.
Le but de cette application est de référencer les ports qui ne sont pas utilisés.

PS: il faut aussi que je saches comment récupérer des informations qui sont affichées à l'ecran.

En espérant que tout cela est possible.

Sur ce bye tout le monde et par avance merci.

8 réponses

Canard007 Messages postés 5929 Date d'inscription mercredi 26 mai 2004 Statut Contributeur Dernière intervention 18 septembre 2009 215
15 juin 2004 à 14:29
pour lancer telnet via le c++ je te conseil d utiliser la API win32 et la fonction create process:

tu la trouvera dans windows.h

BOOL CreateProcess(

    LPCTSTR lpApplicationName,	// pointer to name of executable module 
    LPTSTR lpCommandLine,	// pointer to command line string
    LPSECURITY_ATTRIBUTES lpProcessAttributes,	// pointer to process security attributes 
    LPSECURITY_ATTRIBUTES lpThreadAttributes,	// pointer to thread security attributes 
    BOOL bInheritHandles,	// handle inheritance flag 
    DWORD dwCreationFlags,	// creation flags 
    LPVOID lpEnvironment,	// pointer to new environment block 
    LPCTSTR lpCurrentDirectory,	// pointer to current directory name 
    LPSTARTUPINFO lpStartupInfo,	// pointer to STARTUPINFO 
    LPPROCESS_INFORMATION lpProcessInformation 	// pointer to PROCESS_INFORMATION  
   );


IpCommandLine ---> telnet +les parametres

Sinon pour recuperer les info j en ai aucune idée...peurt etre en utilisant un fichier vbs qui redirigerai la sortie telnet dans un fichier que tu lirai apres....
1
Utilisateur anonyme
15 juin 2004 à 15:06
C'est pas comme ca qu'il faut s'y prendre, il faut simplement ouvrir une socket sur le port telnet du serveur, et communiquer en texte avec le serveur (envoi et réception par la meme socket).
++

Fat_Cartman,
Parce que je le vaux bien...
1
Canard007 Messages postés 5929 Date d'inscription mercredi 26 mai 2004 Statut Contributeur Dernière intervention 18 septembre 2009 215
15 juin 2004 à 15:31
Oui effectivement c'est la meilleur solution..moi je me contente de repondre betement a la question et cartman reflechi ;p
0
L'idée d' ouvrir une socket m'interesse beaucoup
mais le probleme c est que mon niveau de programmation orientee "reseau" est limité.
Cependant g chercher des infos sur l'ouverture d'une socket et j'espere reussi dans ce mini-projet.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Utilisateur anonyme
15 juin 2004 à 16:22
C'est tres simple : si tu as deja utilisé des fichiers, c'est la meme chose pour lire et ecrire. Il faut simplement créer une socket en précisant l'hote et le port, et lire/ecrire dedans.

Fat_Cartman,
Parce que je le vaux bien...
0
Yes heureusement pour moi je sais ouvrir un fichier et ecrire dedans ou me deplacer ou lire...
Mais point de vue socket je ne sais pas par ou commencer ;)
0
En réalite je ne sais pas quel methode utilisé
Sur la MSDN je trouve rien sur les sockets (du style OpenSocket ou autre méthodes de ce genre).
0
Voila g commencer a coder une socket mais le probleme c est que g une erreur lors du bin.
G une erreur 10049 du type: l'adresse entree n'est pas disponible
Pourtant lors d'un ping dessus le switch me répond.
Alors je me demandais si le switch doit etre obligatoirment brancher en directe sur mon pc (ce qui n'est pas le cas).

Plz repondez moi
0
Utilisateur anonyme
16 juin 2004 à 15:39
T'as pas a t'inquiéter pour ca... Du moment où ton O.S. est en ligne, alors tous les programmes que tu lances le sont aussi... Enfin je crois :-)

Fat_Cartman,
Parce que je le vaux bien...
0
Oué g enfin reussi a me connecter sur le switch
Mais le bleme maintenant c'est lorsque je fais une lecture des données j'obtiens des vieilles choses (des Y avec un accent et je pige pas pkoi j'obtients ca) ...
:'(

Ca va etre dur mais je continue
0