Ms-dos

Teclis01 Messages postés 1423 Date d'inscription mardi 14 décembre 2004 Statut Membre Dernière intervention 29 décembre 2012 - 15 juil. 2005 à 08:42
Teclis01 Messages postés 1423 Date d'inscription mardi 14 décembre 2004 Statut Membre Dernière intervention 29 décembre 2012 - 16 juil. 2005 à 07:48
Bonjour,
Je cherche a lancer une fenetre ms-dos et ecrire des commandes dos dessus.
Est-ce possible ? ya t il comme en vb la fonction SendKeys pour ecrire?
Merci d'avance
Teclis


-------------------------------------------------------------------------------------------------------
Il vaut mieux poser une question et passer pour bête que le rester toute sa vie

7 réponses

Teclis01 Messages postés 1423 Date d'inscription mardi 14 décembre 2004 Statut Membre Dernière intervention 29 décembre 2012 4
15 juil. 2005 à 08:55
Bon pour lancer ms-dos il suffit d'ecrire:
system("cmd");
Par contre je cherche toujours comment ecrire dessus et maintenant aussi recuperer le resultat (d'un dir par exemple)


-------------------------------------------------------------------------------------------------------
Il vaut mieux poser une question et passer pour bête que le rester toute sa vie
0
Teclis01 Messages postés 1423 Date d'inscription mardi 14 décembre 2004 Statut Membre Dernière intervention 29 décembre 2012 4
15 juil. 2005 à 09:08
Bon euh pour lancer un dir, il suffit d'ecrire
system("dir");
mais on peut pas la faire apres un system("cmd");
sinon pour recuperer ce que la commande renvoie on peut utiliser l 'ecriture d'un fichier en faisant un dir >c:\dir.txt
Bon passons a la 2eme etape !


-------------------------------------------------------------------------------------------------------
Il vaut mieux poser une question et passer pour bête que le rester toute sa vie
0
Teclis01 Messages postés 1423 Date d'inscription mardi 14 décembre 2004 Statut Membre Dernière intervention 29 décembre 2012 4
15 juil. 2005 à 09:30
euh petit probleme ...
Comment peut-on faire pour lancer les commande que l'on veut en faisant:
cout<<commande;
system(commande);
Ceci ne fonctionnant pas,a cause de cette erreur ...
cannot convert parameter 1 from 'char' to 'const char *'
c'est quoi le probleme ?


-------------------------------------------------------------------------------------------------------
Il vaut mieux poser une question et passer pour bête que le rester toute sa vie
0
julienbj Messages postés 452 Date d'inscription jeudi 4 décembre 2003 Statut Membre Dernière intervention 19 décembre 2008 15
15 juil. 2005 à 09:55
N'aurais tu pas declarer commande comme un char au lieu d'un char*?

Vive le C
Tchao
[mailto:julienbj@hotmail.com Savon]
0

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

Posez votre question
Teclis01 Messages postés 1423 Date d'inscription mardi 14 décembre 2004 Statut Membre Dernière intervention 29 décembre 2012 4
15 juil. 2005 à 10:21
alors oui le probleme venait de ca mais je viens d essayer et ca fonctionne pas non plus.(j ai gardé le cin>>commande;
voici l erreur:

'class ostream_withassign' does not define this operator or a conversion to a type acceptable to the predefined operator

sinon j ai essayer getch mais erreur:

cannot convert from 'int' to 'char *'

Comment je peux faire ?!?


-------------------------------------------------------------------------------------------------------
Il vaut mieux poser une question et passer pour bête que le rester toute sa vie
0
julienbj Messages postés 452 Date d'inscription jeudi 4 décembre 2003 Statut Membre Dernière intervention 19 décembre 2008 15
15 juil. 2005 à 10:52
Je ne fais pas du tout de c++, donc je ne garantis pas ce aui suit, mais il semble que ca doit etre juste



string s;

cin >> s;

cout << "chaine entree: " << endl <<s <<endl



Tu as donc la chaine entree dans une string. Il te reste plus qu'a la
concvertir en char *, peut etre meme qu'un simple cast suffit.
Autrement, tu dois avoir la methode c_str. Il ne te reste alors plus
qu'a le passer a la fonction system.

Vive le C
Tchao
[mailto:julienbj@hotmail.com Savon]
0
Teclis01 Messages postés 1423 Date d'inscription mardi 14 décembre 2004 Statut Membre Dernière intervention 29 décembre 2012 4
16 juil. 2005 à 07:48
En fait le probleme vient de la fonction system(const char*);
l utilisation peut se faire ainsi system("dir"); pour faire un dir néanmoins le probleme reside dans ce qu'il y a dans une variable que je lui donne. A savoir:
system(com);
Alors je vois 2 choses.Soit il lui manque les guillemets , soit il n envois pas ce que j ai defini dans la variable com
Si qqun a une idée ...parce que là je bloque dessus :O/
Teclis

-------------------------------------------------------------------------------------------------------
Il vaut mieux poser une question et passer pour bête que le rester toute sa vie
0