187 votes

Comment puis-je exécuter un programme depuis un fichier batch, sans avoir la console à ouvrir après le début du programme ?

Pour l’instant mon regard de fichier de lot comme ceci :

Le démarrage du programme, mais la fenêtre Dos s’ouvre toujours... comment je peux le fermer ?

270voto

Marshall Points 331

Mec : Il suffit de mettre les guillemets doubles vide devant le programme à exécuter après « Start »
par exemple, si vous voulez exécuter Visual Studio 2012 à partir d’une commande batch

Remarquez les guillemets après le démarrage.

168voto

Patrick Desjardins Points 51478

Vous pouvez utiliser le mot-clé de sortie. Voici un exemple d’un de mes fichiers batch :

53voto

Lasse V. Karlsen Points 148037

Regardez à la commande de démarrage, vous pouvez faire ceci :

Par exemple, ce fichier batch attendra jusqu'à ce que sort le bloc-notes :

Toutefois, cela ne sera pas :

31voto

VonC Points 414372

À partir de ma propre question:

start /b myProgram.exe params...

si vous démarrez le programme à partir d'une session DOS.

Si pas, appeler un script vb

wscript.exe invis.vbs myProgram.exe %*

Le Windows Script Host méthode Run() prend:

  • intWindowStyle : 0 signifie "invisible"de windows
  • bWaitOnReturn : false signifie que votre premier script n'a pas besoin d'attendre pour votre deuxième script pour finir

Voici invis.vbs:

set args = WScript.Arguments
num = args.Count

if num = 0 then
    WScript.Echo "Usage: [CScript | WScript] invis.vbs aScript.bat <some script arguments>"
    WScript.Quit 1
end if

sargs = ""
if num > 1 then
    sargs = " "
    for k = 1 to num - 1
    	anArg = args.Item(k)
    	sargs = sargs & anArg & " "
    next
end if

Set WshShell = WScript.CreateObject("WScript.Shell")

WshShell.Run """" & WScript.Arguments(0) & """" & sargs, 0, False

18voto

Chris Dail Points 11406

Vous devriez essayer cela. Il démarre le programme sans fenêtre. Elle en fait clignote pendant une seconde, mais disparaît assez rapidement.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X