2012-10-04 15 views
9

tengo proyecto de VS 2012 con estructura como esta:salida a la carpeta específica mientras que la construcción del proyecto

Project 
    Folder1 
     file.xml 
     schema.xsd 
     code.cs 
    Folder2 
     code1.cs 
     code2.cs 

puse Copy to output directory propiedad de file.xml y schema.xsd-Copy always y quiero que la salida a la misma carpeta en asambleas outputed (bin\Debug) pero siempre se copian a la carpeta bin\Debug\Folder1. ¿Hay alguna manera de lograr mi objetivo sin mover los archivos a la raíz del proyecto?

+1

que no tienen una respuesta, pero tengo la misma pregunta para VS 2010. – Bobson

Respuesta

16

Te recomiendo que hagas esto con un script de evento Post-built. No es tan agitado como suena, y te da mucha flexibilidad.

  • Haga clic en su proyecto y seleccione Propiedades .
  • Ir a la pestañaEventos de generación y haga clic en Editar posterior a la generación ...

(Ver imágenes abajo)

Ahora puede especificar cáscara de comandos a ejecutar después de cada generación correcta de tu proyecto El siguiente logra el ejemplo en su pregunta:

copy "$(ProjectDir)Folder1\file.xml" "$(TargetDir)" 
copy "$(ProjectDir)Folder1\schema.xsd" "$(TargetDir)" 

$(ProjectDir) y $(TargetDir) son macros que se insertan los respectivos valores pertinentes a su proyecto. Puede seleccionar e insertar macros desde el menú de macro en la ventana de edición.

Las citas se incluyen arriba, porque su ProjectDir y TargetDir pueden resolverse en rutas completas que incluyen espacios, y eso romperá el comando copy si los espacios no están allí.

Opening Porject Properties

Editing Post Build

Cuestiones relacionadas