Je voudrais créer un fichier de commandes pour créer les constructions de mon projet VS en un clic. Tous les jours, je fais les étapes suivantes:
- Ouvre une console cmd en tant qu’administrateur
- Accédez au chemin de mon projet / solution (à l'aide du CD .., commandes du CD)
Ecrivez la commande suivante pour créer le build:
msbuild mySolution.sln / p: configuration = débogage
Comme indiqué précédemment, "j'aimerais faire tout ce processus en un simple clic. Je tente donc de créer un fichier .bat pour le faire.
C'est le code de mon fichier batch:
set location="C:myPath..MyFolderSolution"
set pathMSBuild = "C:WindowsMicrosoft.NETFramework64v4.0.30319MSBuild.exe"
@echo off
cls
call %pathMSBuild%
cd %location%
msbuild.exe "lucre.sln" /p:configuration=debug
pause
Cependant, lorsque j'essaie d'exécuter le fichier de commandes, l'erreur suivante apparaît: "msbuild" n'est pas reconnu comme une commande interne ou externe, un programme utilisable ou un fichier de commandes.
Tout indice ou aide pour savoir si c'est possible et si oui, comment le faire sera très apprécié
Cordialement!
Réponses:
17 pour la réponse № 1Vous n'êtes pas dans le bon répertoire, vous devez vous connecter au répertoire dans lequel se trouve msbuild. Essayez ceci:
set pathMSBuild="C:WindowsMicrosoft.NETFramework64v4.0.30319"
@echo off
cls
cd %pathMSBuild%
msbuild.exe "C:myPath..MyFolderSolutionlucre.sln" /p:configuration=debug
pause
Ou vous pouvez ajouter le répertoire msbuild à votre chemin et ignorer les lignes avec set et cd.
2 pour la réponse № 2
Si vous ne voulez pas vous connecter au répertoire d’installation de msbuild, vous pouvez également charger les variables d’environnement Visual Studio comme ceci:
call "C:Program Files (x86)Microsoft Visual Studio 11.0VCvcvarsall.bat" x86_amd64
(Voir aussi ce Question)
2 pour la réponse № 3
Les deux réponses utilisent des chemins codés en dur, qui peuvent ne pas toujours fonctionner. Utilisez ceci à la place:
@if exist "%VS100COMNTOOLS%vsvars32.bat" call "%VS100COMNTOOLS%vsvars32.bat"
Changement VS100
Pour toute autre version, vous pouvez également insérer ces lignes une par une pour prendre en charge plusieurs versions de VS simultanément:
@if exist "%VS100COMNTOOLS%vsvars32.bat" call "%VS100COMNTOOLS%vsvars32.bat"
@if exist "%VS140COMNTOOLS%vsvars32.bat" call "%VS140COMNTOOLS%vsvars32.bat"
Si cela est fait, vous ne dépendez plus d’une version spécifique de .Net Framework ou de Visual Studio
1 pour la réponse № 4
Vous pouvez également ajouter le répertoire dans lequel se trouve MSBuild.exe à la variable d'environnement PATH afin d'appeler msbuild n'importe où.
Donc, dans le fichier chauve-souris, cela peut ressembler à ceci:
cd C:PathToSoultion
msbuild TheSolutionName.sln /p:configuration=debug
pause
Je sais que la question se pose déjà dans plusieurs années, mais j'espère que cela pourra aider quelqu'un.