begin process at 2012 05 29 23:59:13
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive C/C++

 > 

Archives

 > 

API

 > 

ligne de commande


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

ligne de commande

jeudi 23 février 2006 à 15:14:29 | ligne de commande

Kangourou_Nomade

pour executer une ligne de commande j'utilise
int system(char *)
cela dit, je n'ai pas de retour.
J'aimerai obtenir le retour de ma commande
(exemple : pour dir/p, la liste de des fichiers et dossiers d'un repertoire)

dans Shell32.dll j'ai vu une fonction qui s'appelait PathProcessCommand
qui a comme argument les chaines d'entree et de sortie.
Ca parait correspondre a mon besoin.
Mais je n'arrive pas a l'utiliser correctement (je n'ai pas bien pige quels pointeur elle voulait)
Si vous avez des exemples je suis preneur (ou une autre fonction repondant a mon besoin)
merci.

Le Rasta fou rien, vous le savez bien

jeudi 23 février 2006 à 15:25:37 | Re : ligne de commande

DeAtHCrAsH

Apparement ca serait :

char *pszCommand = new char[1024];
char *pszRet = new char[1024];

strcpy(pszCommand, "dir/p");

if (PathProcessCommand(pszCommand, pszRet, 1024, PPCF_ADDARGUMENTS) < 0)
{
      // La fonction a échoué
}
else
{
      // Tout est OK
}

Shell
jeudi 23 février 2006 à 15:36:17 | Re : ligne de commande

Kangourou_Nomade

nan c'est ce qu j'ai essaye mais deja les deux premiers arguments sont en unsigned short * donc on peut pas faire comme ca. De plus, si le deuxieme est la chaine out, il faudrait lui envoyer une reference et non une copie. c'est la ou je suis perdu en fait.

***********************************

**********Jah

jeudi 23 février 2006 à 16:29:59 | Re : ligne de commande

DeAtHCrAsH

Ah vi en effet, ca prend marche avec de l'UNICODE.
Va voir ici tu trouveras comment déclarer tes variables :
[ Lien ]

Shell
jeudi 23 février 2006 à 16:38:04 | Re : ligne de commande

Kangourou_Nomade

merci c'est cool mais c'est l'unique doc que j'avais deja.
et c'est la que j'ai vu que c'etait du unsigned short *

***********************************

**********Jah

jeudi 23 février 2006 à 16:45:51 | Re : ligne de commande

Arnotic

Administrateur CodeS-SourceS
Réponse acceptée !
Sinon tu peux faire des CreateProcess qui te permet de contrôler le processus et de récupérer n'importe quelle sortie.

@+
Arnotic,
Admin CS,
[ Lien ]
MVP Visual C++
jeudi 23 février 2006 à 16:51:21 | Re : ligne de commande

Kangourou_Nomade

Ah oui ca m'a l'air nickel


***********************************

**********Jah

jeudi 23 février 2006 à 18:05:50 | Re : ligne de commande

yserver

Bonjour
Tu peux aussi tout simplement utiliser un redirecteur pour ta commande. Cela donne system("ping localhost >c:\log.txt")
Ainsi dans le fichier log.txt tu a tres exactement la meme chose que ce que tu aurais dans la consol.
Bonne soiré.

vendredi 24 février 2006 à 12:54:37 | Re : ligne de commande

Kangourou_Nomade

oue sauf que, si je fe un system,  jouvre un cmd, or moi ce que je veux c'est balancer une commande dans une boite noire qui ne cree pas de nouvelle fenetre et qui renvoi le resultat dans un char * ou un string.
C'est pourquoi l'idee de l'API me semblait seduisante.
avec CreateProcess j'ai la possibilite de cacher la fenetre, donc c'est deja un peu mieux.
Mais c'est pas ce que je cherchais en fait.

***********************************

**********Jah

vendredi 24 février 2006 à 17:13:43 | Re : ligne de commande

yserver

Autre suguestion ShellExecuteEx qui me semble plus aisé à utiliser. Si c'est juste pour une petite commande.


Cette discussion est classée dans : ligne, fonction, commande, retour


Répondre à ce message

Sujets en rapport avec ce message

ligne de commande [ par payen ] Salut a tous,j'au ecrit plusieurs programmes que je lance depuis la ligne de commande. j'aimerais pouvoir les appeller depuis n'importe quel dossier, Arguments en ligne de commande [ par Fantoooom ] Salut,Je débute dans le C++. J'ai lu dans un livre un truc à propos des arguments en ligne de commande, mais je ne sais pas du tout ce que c'est, quel control entre vers de C++ [ par bolix ] je recherche la ligne de commande qui puisse me faire appeler à partir du c++ des programme en asembleurs.je recherche aussi la ligne de commande pou lecture de fichier [ par Machuet ] Hello, j'ai plusieurs question concernant la manipulation de fichier. En effet venant de VB, j'aimerais savoir si il existe des fonction pour lire un retour chariot???????(saut de ligne dans en edit)??? [ par asik38 ] j'ai un edit et à l'interieur je veux inserer 3 chaines de caractaires mais avec des saut de ligne!!!Merci!!! retour à la ligne [ par msoin ] 'jour, je debute en c++ et je fais quelques petits programmes pour voir comment ça marche.en l'occurence, celui ci:int main(){int loopcount;cout &lt Recuperation des Parametres passés en ligne de commande [ par fortran ] Bonjour.Voila, dans un programme win32, j'essaye de recuperer le chemin, et nom de mon executable, ainsi que les parametres qui lui ont été passés en rediriger le retour d'une fonction ?! [ par kod32 ] Salut,je souhaiterais dans mon programme (en C) stocker le résultat de la fonction system() dans un buffer.Malheureusement j'ai constaté que la foncti Parametre sur la ligne de commande [ par payen ] Salut a tous,j'ai un petit souci en C++ ...alors voila : j'ai ecrit un code qui prend comme parametres sur la ligne de commande 2 entiers. Ensuite, pl Creation de dll [ par matraca ] Bonjour,J'aurais besoin de compiler un dll mais en utilisant un ligne de commande. Je cherche donc un compilateur C/C++ gratuit qui permettent de comp


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,562 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales