Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1279 connectés 

  FORUM HardWare.fr
  Programmation
  C

  Redirection de la console d'un programme appelé à l'appelant

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Redirection de la console d'un programme appelé à l'appelant

n°2193214
sade
Posté le 06-06-2013 à 20:29:25  profilanswer
 

Hello,
 
Je dois coder sous win une expece de wrapper pour un compilateur C (non Gcc) afin qu'il renvoir vers l'IDE (Netbeans) les messages d'erreurs du compilateur mais 'formatés' GCC
En gros :
 
Netbeans
commande build   ----------> Wrapper ---------   Compilateur C  --- erreurs / warning ----> Wrapper ----- erreurs formatées gcc ----> Netbeans
 
En gros , il y a une redirection de console (le compilateur appelé ne doit rien afficher sur la console mais rebalancer les infos au wrapper qui lui les rebalancera vers la console.
 
Mais voila , je n'ai pas pas trop de connaissance sur le sys windows , et j'avoue que je ne vois pas trop comment faire . Des idees ? :)

mood
Publicité
Posté le 06-06-2013 à 20:29:25  profilanswer
 

n°2193228
tpierron
Posté le 06-06-2013 à 22:58:00  profilanswer
 

http://msdn.microsoft.com/en-us/li [...] 71%29.aspx ?
 
Attention: cette fonction a besoin de la variable d'environnement CMD, si elle est pas là = crash.
 
Chuis pas sûr que les _ sont nécessaires. Sous MinGW, on peut s'en passer (mais j'imagine que les fonctions ne sont pas complètement conforme au standard).

n°2193229
Profil sup​primé
Posté le 06-06-2013 à 23:20:40  answer
 

tpierron a écrit :

Attention: cette fonction a besoin de la variable d'environnement CMD, si elle est pas là = crash.


Hmm, pas si tu verifies qu'elle n'est pas la ! :)

n°2193237
theshockwa​ve
I work at a firm named Koslow
Posté le 07-06-2013 à 00:46:10  profilanswer
 

J'aurais plutôt tendance à recommander d'utiliser CreateProcess, dont le paramètre LPSTARTUPINFO lpStartupInfo te permet de spécifier tes propres HANDLE pour les entrées et sorties standard. Attention cependant à bien consommer la sortie du programme créé pendant son exécution (suivant ce que tu fourniras en guise de handle, les écritures de la part du processus généré pourront être bloquantes, tu ne dois donc surtout pas considérer que tu consulteras le résultat une fois le programme terminé !)


Message édité par theshockwave le 07-06-2013 à 00:46:57

---------------
last.fm
n°2193243
sade
Posté le 07-06-2013 à 07:22:14  profilanswer
 

Ok merci pour vos réponses ! Je vais tester ça dans la journée :)

n°2193245
sade
Posté le 07-06-2013 à 08:56:46  profilanswer
 

Bon je viens de tester la première solution (la plus simple me semble t'il) et ca a l'air de fonctionner dans mon cas.
Par contre ca n'a l'air que de rediriger la sortie console et pas le stderr .Du coup malgre la pipe on peut avoir  
une sortie non désirée sur la console qui n'est pas redirigée vers le prog parent (lui aussi application console) :-/

n°2193253
theshockwa​ve
I work at a firm named Koslow
Posté le 07-06-2013 à 10:33:12  profilanswer
 

C'est pour ca qu'on utilise CreateProcess :o


---------------
last.fm
n°2193254
sade
Posté le 07-06-2013 à 10:49:59  profilanswer
 

@theshockWave : j'allais tester au si mais je n'avais encore point eu le temps ;-)


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  C

  Redirection de la console d'un programme appelé à l'appelant

 

Sujets relatifs
[Résolu] DNS - Site Web - Redirection...Aide Programme Distance
[Résolu] Déplacer le curseur dans un programme shellredirection 301
Problème programme ( raspberry + arduino )projet en programme c en urgence !!
Beug de programmeAmélioration de programme
Aide programme démineuraide programme fortran
Plus de sujets relatifs à : Redirection de la console d'un programme appelé à l'appelant


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR