vscode visual update tutorial tag studio how español code closing close brackethighlighter visual-studio visual-studio-2008 post-build-event

visual-studio - update - visual studio code tutorial español pdf



Visual Studio Post Build Event-Copiar en la ubicación relativa del directorio (5)

¿No tendría sentido usar msbuild directamente? Si está haciendo esto con cada compilación, ¿puede agregar una tarea msbuild al final? Si solo desea ver si no puede encontrar otro valor de macro que no se muestre en el IDE de Visual Studio, puede activar las opciones de msbuild para el diagnóstico y le mostrará todas las variables que podría usar, como así como su valor actual.

Para activar esto en visual studio, vaya a Herramientas / Opciones y luego desplácese hacia abajo en la vista de árbol a la sección llamada Proyectos y soluciones, expanda eso y haga clic en Generar y Ejecutar, a la derecha hay un menú desplegable que especifica la verbosidad de los resultados de la construcción , configurándolo para diagnóstico, le mostrará qué otros valores de macro podría utilizar.

Debido a que no sé bien a qué nivel te gustaría ir y qué tan complejo quieres que sea tu construcción, esto podría darte una idea. Recientemente he estado haciendo scripts de compilación, que incluso ejecutan código SQL como parte de la compilación. Si desea más ayuda o incluso algunas secuencias de comandos de compilación de muestra, hágamelo saber, pero si es solo un pequeño proceso que desea ejecutar al final de la compilación, la secuencia de comandos msbuild completa es un poco más .

Espero que ayude a Rihan

En una compilación exitosa, deseo copiar el contenido del directorio de salida en una ubicación diferente bajo la misma carpeta "base" . Esta carpeta principal es una parte relativa y puede variar según la configuración del control de fuente.

He enumerado algunos de los valores de macro disponibles para mí ...

$ (SolutionDir) = D: / GlobalDir / Version / AppName / Solution1 / build

$ (ProjectDir) = D: / GlobalDir / Version / AppName / Solution1 / Version / ProjectA /

Quiero copiar los contenidos de Dir de salida a la siguiente carpeta:

D: / GlobalDir / Version / AppName / Solution2 / Project / Dependency

La ubicación base "D: / GlobalDir / Version / AppName" se debe buscar desde una de las macros anteriores. Sin embargo, ninguno de los valores de macro solo muestra la ubicación principal.

¿Cómo extraigo solo la ubicación base para el comando post build copy?


Creo que esto está relacionado, pero tuve un problema al msbuild directamente usando la línea de comandos msbuild (desde un archivo por lotes) contra msbuild desde VS.

Usando algo como lo siguiente:

<PostBuildEvent> MOVE /Y "$(TargetDir)something.file1" "$(ProjectDir)something.file1" start XCOPY /Y /R "$(SolutionDir)SomeConsoleApp/bin/$(ConfigurationName)/*" "$(ProjectDir)App_Data/Consoles/SomeConsoleApp/" </PostBuildEvent>

(nota: start XCOPY lugar de utilizar XCOPY para XCOPY un problema de permisos que impidió la copia)

La macro $(SolutionDir) evaluó a ../ al ejecutar msbuild desde un archivo de proceso por lotes, lo que provocó la falla del comando XCOPY . De lo contrario, funcionó bien cuando se construyó desde Visual Studio. Confirmado con /verbosity:diagnostic para ver la salida evaluada.

Usando la macro $(ProjectDir)../ lugar, que equivale a lo mismo, funcionó bien y retuvo la ruta completa en ambos escenarios de compilación.


Esto es lo que quiere poner en la línea de comandos del evento Post-build del proyecto:

copy /Y "$(TargetDir)$(ProjectName).dll" "$(SolutionDir)lib/$(ProjectName).dll"

EDITAR: O si su nombre de destino es diferente al nombre del proyecto.

copy /Y "$(TargetDir)$(TargetName).dll" "$(SolutionDir)lib/$(TargetName).dll"


Si ninguno de los TargetDir u otras macros apuntan al lugar correcto, use el directorio ".." para retroceder en la jerarquía de carpetas.

es decir. Use $(SolutionDir)/../.. para obtener su directorio base.

Para la lista de todas las macros, vea aquí:

http://msdn.microsoft.com/en-us/library/c02as0cs.aspx


Tu podrías intentar:

$(SolutionDir)../../