Une autre méthode consiste à laisser les éléments tels quels. None
. Dans l'explorateur de solutions, cliquez sur celles que vous souhaitez déployer et définissez les paramètres suivants Content
à la propriété True
.
Note : J'ai fait ceci dans VS2019, et les choses peuvent changer de version en version.
Pour que cela fonctionne, cliquez avec le bouton droit de la souris sur votre projet, et sélectionnez "Décharger le projet". Ensuite, faites un clic droit sur le projet déchargé et sélectionnez "Edit project_name.vcxproj".
Dans l'éditeur, allez jusqu'au bas du fichier et insérez cette cible juste avant la fin de l'élément suivant </Project>
étiquette :
<Target Name="CopyContent" AfterTargets="Build">
<Copy SourceFiles="@(None)" Condition="'%(None.DeploymentContent)' == 'true'" DestinationFolder="$(OutputPath)" ContinueOnError="true" />
</Target>
Maintenant, faites un clic droit sur le projet déchargé et sélectionnez "Reload Project". Sélectionnez pour enregistrer et fermer si vous y êtes invité.
J'ai également réglé le OutputDirectory
à :
$(SolutionDir)bin\$(Configuration)\$(Platform)\
et le IntermediateDirectory
à :
$(SolutionDir)obj\$(Configuration)\$(ProjectName)\$(Platform)\
dans la page générale des propriétés du projet. Cela place la sortie dans un dossier "bin", et les intermédiaires dans un dossier "obj" dans la racine de votre solution.
Note : Le $(SolutionDir)
n'est pas défini lorsque vous exécutez MSBuild à partir de la ligne de commande. Il y a une astuce que vous pouvez utiliser pour définir le dossier où se trouve le fichier .sln en utilisant GetDirectoryNameOfFileAbove. (laissé comme un exercice pour le lecteur). De plus, il semble qu'en 2019, ils gèrent cela correctement sur la ligne de commande de toute façon. Ouais :) Le site $(SolutionDir)
contient une barre oblique inversée à la fin, donc aucune après elle. Les résultats de chacun d'eux doivent avoir une barre oblique inversée de fin.
Maintenant, si vous possédez Pro ou plus, s'il vous plaît ne faites pas cela chaque fois que vous devez créer un projet. Ce serait nul. Au lieu de cela, une fois que vous avez configuré votre projet comme vous le souhaitez, sélectionnez Project -> Export Template
. Vous lui donnez un nom, et la prochaine fois que vous voulez créer un projet similaire, il suffit de choisir ce nom dans la boîte de dialogue Nouveau projet. (Dans les anciennes versions, je pense que c'était Files -> Export Teamplate...
.)