75 votes

VS2010 Comment inclure des fichiers dans le projet, afin de les copier pour construire répertoire de sortie automatiquement lors de la construction ou de la publier

La tâche est de former de projet Visual Studio 2010, de sorte que, pendant toute construction ou publier quelques - foo.exe utilitaire doit être copié à la sortie (bin) répertoire.

Au début j'ai fait PostBuildEvent tâche .csproj (MSBuild-fichier):

<PropertyGroup>
  <PostBuildEvent>
    Copy "$(SolutionDir)Tools\foo.exe" "$(ProjectDir)$(OutDir)foo.exe"
  </PostBuildEvent>
</PropertyGroup>

Mais ce n'est pas universelle. Lors de la publication (Visual Studio 2010) foo.exe apparaît en bin répertoire, mais n'est pas copié à la sortie de publier le répertoire. Peut-être que je fais tout tout à fait tort et il n'y a mécanisme standard pour inclure des fichiers dans des projets à plus tard, lors de la construction ou de publier, de copier à l' bin?

113voto

Oded Points 271275

Il y a et il ne dépend pas de post construire des événements.

Ajouter le fichier à votre projet, puis dans les propriétés du fichier, sélectionnez sous "Copie vers le Répertoire de Sortie" ou "Copy" ou "Copier si plus Récent".

Voir MSDN.

20voto

Matthew Piatt Points 31

Je n'ai que de la nécessité de pousser les fichiers lors d'une création, donc j'ai juste ajouté un Événement Post-build entrée de Ligne de Commande comme ceci:

Copy "$(SolutionDir)Third Party\SomeLibrary\*" "$(ProjectDir)$(OutDir)"

Vous pouvez les définir en cliquant-droit sur votre Projet dans l'Explorateur de solutions, puis Propriétés > Construire des Événements

7voto

user3110417 Points 1

Dans l'Explorateur de solutions, veuillez sélectionner les fichiers que vous souhaitez copiés vers le répertoire de sortie et d'attribuer deux propriétés: - Construire l'action = Contenu - Copier le Répertoire de Sortie = Copie Toujours

Cela fera l'affaire.

0voto

Joel Points 1531

Dans mon cas, le paramètre Copy to Output Directory de Copy Always et Construire fait pas l'affaire, tandis que la Reconstruction n'.

Espérons que cela aide quelqu'un!

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