Pour le moment, mon fichier batch ressemble à ceci:
myprogram.exe param1
Le programme démarre mais la fenêtre DOS reste ouverte. Comment puis-je le fermer?
windows
batch-file
Monsieur Dev
la source
la source
Réponses:
Vous pouvez utiliser le mot-clé exit. Voici un exemple de l'un de mes fichiers batch:
la source
exit
dans un fichier batch.start "VPN" "C:\Program Files (x86)\Cisco\Cisco AnyConnect Secure Mobility Client\vpnui.exe"
Utilisez la commande de démarrage pour empêcher le fichier de commandes d'attendre le programme. N'oubliez pas de mettre un double guillemet vide devant le programme que vous souhaitez exécuter après "Démarrer". Par exemple, si vous souhaitez exécuter Visual Studio 2012 à partir d'une commande par lots:
remarquez le double guillemet après le début.
la source
start <window name> <program name>
Regardez la commande START, vous pouvez faire ceci:
Par exemple, ce fichier de commandes attendra la fermeture du bloc-notes:
Cependant, cela ne va pas:
la source
De ma propre question :
fonctionne si vous démarrez le programme à partir d'une session DOS existante.
Sinon, appelez un script vb
La méthode Windows Script Host Run () prend:
Voici invis.vbs:
la source
C'est la seule chose qui a fonctionné pour moi lorsque j'ai essayé d'exécuter une classe java à partir d'un fichier batch:
start "cmdWindowTitle" /B "javaw" -cp . testprojectpak.MainForm
Vous pouvez personnaliser la
start
commande comme vous le souhaitez pour votre projet, en suivant la syntaxe appropriée:la source
Vous devriez essayer ceci. Il démarre le programme sans fenêtre. Il clignote en fait pendant une seconde mais disparaît assez rapidement.
la source
"title"
option est importante. Si le chemin du programme comprend des espaces, il doit être entouré de guillemets, nous devons donc en ajouter"title"
pour éviter l'échec.Comment résoudre le "problème d'espace" et les dépendances locales:
la source
Des tas de réponses à cette question déjà, mais je publie ceci pour clarifier quelque chose d'important, bien que ce ne soit pas toujours le cas:
Peut causer des problèmes dans certaines versions de Windows, car il
Start
s'attend en fait à ce que le premier jeu de guillemets soit un titre de Windows. Il est donc conseillé de commencer par citer un commentaire ou un commentaire vide:ou
la source
Ma solution pour faire cela à partir de l'interface graphique:
Créez un raccourci vers le programme que vous souhaitez exécuter;
Modifiez les propriétés du raccourci;
Remplacez le
TARGET
champ par%COMSPEC% /C "START "" "PROGRAMNAME""
;Modifiez le
RUN
champ en minimisé.Prêt! Voyez comment vous l'aimez ...
PS: les paramètres du programme peuvent être insérés entre les deux guillemets finaux; la
PROGRAMNAME
chaîne peut être un nom de fichier, un chemin relatif ou un chemin absolu - si vous mettez un chemin absolu et effacez la lettre du lecteur et le point-virgule, cela fonctionnera dans une clé USB, quelle que soit la lettre que l'ordinateur hôte lui attribue. . (De plus, si vous placez le raccourci dans le même dossier et précédez le nom de fichier du programmePROGRAMNAME
avec la%CD%
variable, les chemins correspondront toujours; la même astuce peut être utilisée dans leSTART IN
champ).la source
Si ce fichier de commandes est quelque chose que vous souhaitez exécuter comme prévu ou toujours; vous pouvez utiliser l'outil de planification de Windows et il ne s'ouvre pas dans une fenêtre lorsqu'il démarre le fichier de commandes.
Pour ouvrir
Task Scheduler
:'cmd'
taskschd.msc
-> entrezDu côté droit, cliquez
Create Basic Task
et suivez les menus.J'espère que cela t'aides.
la source
Voici ma solution préférée. Il est tiré d'une réponse à une question similaire.
Utilisez un script VBS pour appeler le fichier de commandes:
Copiez les lignes ci-dessus dans un éditeur et enregistrez le fichier avec l'extension .VBS.
la source