una suprimido salida ruta resolvieron proyecto otra nombres mover misma línea gravedad estado descripción código carpeta archivos archivo acceso c# visual-studio

c# - suprimido - Copia de archivos en la carpeta de la aplicación en tiempo de compilación



gravedad código descripción proyecto archivo línea estado suprimido (6)

Si tengo algunos archivos que quiero copiar desde mi proyecto en la carpeta ./bin/debug/ en la compilación, entonces parece que tengo que ponerlos en la raíz del proyecto. Ponerlos en una subcarpeta parece copiarlos en la carpeta ./bin/debug/ en la misma estructura en la que están almacenados.

Hay alguna manera de evitar esto?

Para que quede claro: si tengo MyFirstConfigFile.txt y MySecondConfigFile.txt en una carpeta ConfigFiles y configuro Copy to Output para que sea Copy ... , entonces aparecen en la carpeta. ./bin/debug/ConfigFiles/ . Quiero que aparezcan en la carpeta. ./bin/debug/ .


Desea utilizar un evento Post-Build en su proyecto. Puede especificar el resultado allí y hay valores de macro para elementos de uso frecuente como la ruta del proyecto, el nombre del elemento, etc.


Encontré esta pregunta buscando "copiar archivos en la carpeta de la aplicación en el momento de la compilación". OP parece tener esto ordenado ya, pero si no lo hace:

En Visual Studio, haga clic derecho en el archivo, seleccione propiedades, luego cambie la opción ''copiar a salida'' a ''siempre''. Ver http://msdn.microsoft.com/en-us/library/0c6xyb66.aspx


Podrías hacer esto con un evento de compilación posterior. Establezca los archivos en ninguna acción en la compilación, luego en la macro copie los archivos en el directorio que desee.

Aquí hay una macro de compilación posterior que creo que funcionará copiando todos los archivos en un directorio llamado Configuración a la carpeta de compilación raíz:

copy $(ProjectDir)Configuration/* $(ProjectDir)$(OutDir)


Puede usar el evento PostBuild del proyecto. Una vez completada la compilación, puede ejecutar un archivo por lotes de DOS y copiar los archivos deseados en la carpeta que desee.


Puedes usar una tarea MSBuild en tu csproj, así.

Edite su archivo csproj

<Target Name="AfterBuild"> <Copy SourceFiles="$(OutputPath)yourfiles" DestinationFolder="$(YourVariable)" ContinueOnError="true" /> </Target>


También puede colocar los archivos o enlaces en la raíz del explorador de soluciones y luego establecer las propiedades de los archivos:

Build action = Content

y

Copy to Output Directory = Copy if newer (por ejemplo)

Para un enlace, arrastre el archivo desde el explorador de Windows al explorador de soluciones manteniendo presionadas las teclas Mayús y Control.