Je suis en train de configurer CruiseControl.NET. Le problème que je rencontre est que j'exécute CC en tant qu'application console et que lorsque mon build se termine avec succès et s'exécute (en utilisant exec), il se lance dans l'invite DOS de CruiseControl. J'utilise de simples fichiers batch pour lancer mon application, mais le fait de l'exécuter dans la même invite que CC fait croire à CC que la construction se poursuit tant que mon application s'exécute.
Existe-t-il des paramètres de ligne de commande pour cmd.exe
qui fera apparaître une autre fenêtre d'invite séparée ?
1 votes
Cmd.exe est un shell CUI, pas une interface graphique. Il ne crée pas de fenêtres. Il utilise une fenêtre de console qui est créée et gérée par une instance de conhost.exe, le processus hôte de la console. Si un programme CUI est démarré normalement, le code d'initialisation dans la DLL du client de base (kernel32.dll ou kernelbase.dll) hérite de la console du parent, le cas échéant, ou alloue une nouvelle console, à moins qu'il ne soit démarré avec l'indicateur de création
DETACHED_PROCESS
(c'est-à-dire pas de console). S'il est lancé avec l'indicateur de créationCREATE_NEW_CONSOLE
(comme le CMDstart
utilise), la DLL de base alloue toujours une nouvelle console au lieu d'hériter de celle du parent.