web-dev-qa-db-fra.com

Exécuter un fichier exe avec des paramètres dans un fichier de commandes

S'il vous plaît jeter un oeil à mon fichier de commandes.

echo off
start "c:\program files\php\php.exe D:\mydocs\mp\index.php param1 param2"

mais ça ne marche pas. Des idées comment puis-je le faire fonctionner?

23
user1421214

Cela devrait fonctionner:

start "" "c:\program files\php\php.exe" D:\mydocs\mp\index.php param1 param2

La commande start interprète le premier argument comme un titre de fenêtre s'il contient des espaces. Dans ce cas, cela signifie que start considère votre argument entier comme un titre et ne voit aucune commande. Passer "" (un titre vide) comme premier argument de start résout le problème.

35
Andrew Medico

Si vous avez besoin de voir le résultat de l’exécution, utilisez CALL avec ou à la place de START.

Exemple:

CALL "C:\Program Files\Certain Directory\file.exe" -param PAUSE

Cela va exécuter le fichier.exe et imprimer ce qu’il génère dans la même fenêtre de commande. Rappelez-vous la PAUSE après l'appel ou la fenêtre pourrait se fermer instantanément.

9
Scopperloit

À moins que ce ne soit qu'un exemple simplifié de la question, mon conseil est de supprimer directement l'encapsuleur de lot PHP, plus précisément le programme php-win.exe, qui n'ouvrira pas les fenêtres inutiles.

Program: c:\program files\php\php-win.exe
Arguments: D:\mydocs\mp\index.php param1 param2

Sinon, citez des choses comme Andrew le fait remarquer.


Dans les anciennes versions de Windows, vous devriez pouvoir tout mettre dans la seule zone de texte "Exécuter" (tant que vous citez tout ce qui contient des espaces):

"c:\program files\php\php-win.exe" D:\mydocs\mp\index.php param1 param2
0
Álvaro González