nbouard
Messages postés4Date d'inscriptionjeudi 9 septembre 2004StatutMembreDernière intervention26 novembre 2004
-
24 nov. 2004 à 15:14
nbouard
Messages postés4Date d'inscriptionjeudi 9 septembre 2004StatutMembreDernière intervention26 novembre 2004
-
26 nov. 2004 à 16:11
Bonjour,
Je développe actuellement une application sous Visual C++, et j'aimerais lancer une commande MS-DOS de ce type :
"C:\pv.exe -perf -localhost -wave "E:\ex_grammaire" -option sigFormat=PCM16,externalVAD=true,asrServersListenPort=32001 "E:\ex_grammaire\Document1.spk" > C:\toto".
Il n'y a pas de problème avec la commande system( ), mais celle-ci fait apparaître une fenêtre MS-DOS par dessus mon interface graphique, ce que je souhaîterais éviter.
Donc si quelqu'un sait comment ne pas faire apparaître cette fenêtre, ou bien connaît un autre moyen d'exécuter ma commande, je suis preneur...
Merci d'avance!
yserver
Messages postés203Date d'inscriptionlundi 2 août 2004StatutMembreDernière intervention 8 septembre 2006 24 nov. 2004 à 15:47
ShellExecute devrait te permetre de faire ce que tu souhaite
ca donnerait :
ShellExecute ( NULL , "open" , "C:\\pv.exe" , "-perf -localhost -wave "E:\\ex_grammaire" -option sigFormat=PCM16,externalVAD=true,asrServersListenPort=32001 "E:\\ex_grammaire\\Document1.spk" > C:\\toto" , NULL , SW_HIDE );
Voila la syntaxe (plus d'info sur msdn)
HINSTANCE ShellExecute(
HWND hwnd, // handle to parent window
LPCTSTR lpOperation, // pointer to string that specifies operation to perform
LPCTSTR lpFile, // pointer to filename or folder name string
LPCTSTR lpParameters, // pointer to string that specifies executable-file parameters
LPCTSTR lpDirectory, // pointer to string that specifies default directory
INT nShowCmd // whether file is shown when opened
);
nbouard
Messages postés4Date d'inscriptionjeudi 9 septembre 2004StatutMembreDernière intervention26 novembre 2004 24 nov. 2004 à 15:55
Merci, mais j'avais déjà essayé, et mes options ne sont pas prises en compte par ShellExecute : en fait c'est comme s'il faisait seulement C:\pv.exe...
Une autre solution peut-être?
nbouard
Messages postés4Date d'inscriptionjeudi 9 septembre 2004StatutMembreDernière intervention26 novembre 2004 26 nov. 2004 à 16:11
Merci à tous. J'ai finalement réussi avec Create Process. Désol pour le temps de réponse mais je ne bosse pas tous les jours sur ce projet... Pour ceux que ça intéresse, voici ma solution:
char *commande =
"E:\\pv.exe -perf -localhost "
"-wave "E:\\ex_grammaire"
"-option SigFormat=PCM16,externalVAD=true,asrServersListenPort=32001 ""E:\\ex_grammaire\\Document1.spk"";