[C]/[C++] Execution d'une commande externe
Fermé
wAx
Messages postés
1596
Date d'inscription
lundi 26 mai 2003
Statut
Membre
Dernière intervention
21 novembre 2011
-
23 juil. 2003 à 10:26
dwyane346 Messages postés 147 Date d'inscription dimanche 11 janvier 2009 Statut Membre Dernière intervention 6 septembre 2012 - 27 janv. 2010 à 20:33
dwyane346 Messages postés 147 Date d'inscription dimanche 11 janvier 2009 Statut Membre Dernière intervention 6 septembre 2012 - 27 janv. 2010 à 20:33
A voir également:
- [C]/[C++] Execution d'une commande externe
- Invite de commande - Guide
- Commande terminal mac - Guide
- Chkdsk disque dur externe - Guide
- Commande dism - Guide
- Batterie externe clignote ne charge pas - Forum Mobile
7 réponses
wAx
Messages postés
1596
Date d'inscription
lundi 26 mai 2003
Statut
Membre
Dernière intervention
21 novembre 2011
202
23 juil. 2003 à 11:05
23 juil. 2003 à 11:05
Sisi, sous windows ça fonctionne
"dir > fichier.txt"
Et apres j'ouvre le fichier
Sinon, autre piste:
N'y a t'il pas moyen de rediriger le flux stdout non pas vers un fichier mais vers un autre flux ouvert pour le traiter directement ??
"dir > fichier.txt"
Et apres j'ouvre le fichier
Sinon, autre piste:
N'y a t'il pas moyen de rediriger le flux stdout non pas vers un fichier mais vers un autre flux ouvert pour le traiter directement ??
fiddy
Messages postés
11069
Date d'inscription
samedi 5 mai 2007
Statut
Contributeur
Dernière intervention
23 avril 2022
1 844
27 janv. 2010 à 19:08
27 janv. 2010 à 19:08
Salut,
Il vaut mieux éviter la fonction system.
Sous Windows, tu peux utiliser les API Win32.
Tu initialises le répertoire FindFirstFile() et tu utilises une boucle sur FindNextFile(). Et pour fermer tu utilises FindClose().
https://docs.microsoft.com/en-us/windows/win32/api/fileapi/nf-fileapi-findfirstfilea?redirectedfrom=MSDN
https://docs.microsoft.com/en-us/windows/win32/api/fileapi/nf-fileapi-findnextfilea?redirectedfrom=MSDN
https://docs.microsoft.com/en-us/windows/win32/api/fileapi/nf-fileapi-findclose?redirectedfrom=MSDN
Avec l'argument de type WIN32_FIND_DATA qui est une structure, tu trouveras facilement le nom du fichier à chaque itération en pointant sur cFileName.
Si tu veux un petit exemple, n'hésite pas à demander.
Cdlt,
Il vaut mieux éviter la fonction system.
Sous Windows, tu peux utiliser les API Win32.
Tu initialises le répertoire FindFirstFile() et tu utilises une boucle sur FindNextFile(). Et pour fermer tu utilises FindClose().
https://docs.microsoft.com/en-us/windows/win32/api/fileapi/nf-fileapi-findfirstfilea?redirectedfrom=MSDN
https://docs.microsoft.com/en-us/windows/win32/api/fileapi/nf-fileapi-findnextfilea?redirectedfrom=MSDN
https://docs.microsoft.com/en-us/windows/win32/api/fileapi/nf-fileapi-findclose?redirectedfrom=MSDN
Avec l'argument de type WIN32_FIND_DATA qui est une structure, tu trouveras facilement le nom du fichier à chaque itération en pointant sur cFileName.
Si tu veux un petit exemple, n'hésite pas à demander.
Cdlt,
Baltawar
Messages postés
470
Date d'inscription
lundi 7 avril 2003
Statut
Membre
Dernière intervention
5 décembre 2003
10
23 juil. 2003 à 10:32
23 juil. 2003 à 10:32
Salut wAx,
solution qui fonctionne sur Borland builder et Visual :
/* lance l'explorateur Windows */
ShellExecute ( NULL,"explore",".\\",NULL,NULL,SW_NORMAL);
/* ouvre le document */
ShellExecute
{NULL,"open","lisezmoi.htm",NULL,NULL,SW_NORMAL);
/* ouvre le repertoire contenant la documentation */
ShellExecute ( NULL,"open",".\\Docs",NULL,NULL,SW_NORMAL);
Voici quelques exemples ...
A+
Debout les crabes, la mer monte !
solution qui fonctionne sur Borland builder et Visual :
/* lance l'explorateur Windows */
ShellExecute ( NULL,"explore",".\\",NULL,NULL,SW_NORMAL);
/* ouvre le document */
ShellExecute
{NULL,"open","lisezmoi.htm",NULL,NULL,SW_NORMAL);
/* ouvre le repertoire contenant la documentation */
ShellExecute ( NULL,"open",".\\Docs",NULL,NULL,SW_NORMAL);
Voici quelques exemples ...
A+
Debout les crabes, la mer monte !
Baltawar
Messages postés
470
Date d'inscription
lundi 7 avril 2003
Statut
Membre
Dernière intervention
5 décembre 2003
10
23 juil. 2003 à 10:33
23 juil. 2003 à 10:33
Petite précision :
inclure :
/* header file pour "SHELL EXE" */
#include <ShellApi.h>
La c'est bon je pense ....
re - A++
Debout les crabes, la mer monte !
inclure :
/* header file pour "SHELL EXE" */
#include <ShellApi.h>
La c'est bon je pense ....
re - A++
Debout les crabes, la mer monte !
wAx
Messages postés
1596
Date d'inscription
lundi 26 mai 2003
Statut
Membre
Dernière intervention
21 novembre 2011
202
23 juil. 2003 à 10:41
23 juil. 2003 à 10:41
Vi mais je vois pas où je reccupere ce qui est renvoyé par la commande externe
Bien entendu mon exemple de fonctionne pas mais ce que j'essayais de montrer, c'etait de reccuperer la sortie de la commande externe dans une chaine pour pouvoir la traiter ensuite.
J'ai bien conscience que ceci ne peut s'appliquer qu'à des commandes console car sinon je ne vais rien reccuperer mais cela correspond tout à fait à ce dont j'ai besoin
Bien entendu mon exemple de fonctionne pas mais ce que j'essayais de montrer, c'etait de reccuperer la sortie de la commande externe dans une chaine pour pouvoir la traiter ensuite.
J'ai bien conscience que ceci ne peut s'appliquer qu'à des commandes console car sinon je ne vais rien reccuperer mais cela correspond tout à fait à ce dont j'ai besoin
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
jisisv
Messages postés
3645
Date d'inscription
dimanche 18 mars 2001
Statut
Modérateur
Dernière intervention
15 janvier 2017
934
23 juil. 2003 à 11:25
23 juil. 2003 à 11:25
Hi,
popen sou Unix.
Sous win$ I don't know (et je veux pas savoir)
The software said "Requires Windows98, Win2000, or better,
So I installed Unix.
popen sou Unix.
Sous win$ I don't know (et je veux pas savoir)
The software said "Requires Windows98, Win2000, or better,
So I installed Unix.
dwyane346
Messages postés
147
Date d'inscription
dimanche 11 janvier 2009
Statut
Membre
Dernière intervention
6 septembre 2012
18
27 janv. 2010 à 20:33
27 janv. 2010 à 20:33
sois nunux cherche man exec