2009-09-14 28 views
6

MSDN:Error de BaseOutputPath en Visual Studio 2008?

BaseOutputPath: Especifica la ruta de la base para el archivo de salida. Si se trata de conjunto, MSBuild utilizará OutputPath = $ (BaseOutputPath) \ $ (Configuración) \

He intentado utilizar el MSBuild Proyecto Propiedad BaseOutputPath en lugar de especificar OutputPath para cada configuración de la plataforma & combinación pero Visual Studio se queja cuando compilo:

La propiedad OutputPath no está establecida para en este proyecto. Verifique para hacer que asegúrese de haber especificado una combinación válida de configuración/plataforma .

Puse <BaseOutputPath>..\Binaries</BaseOutputPath> en el primer incondicional <ProjectProperty>.

¿Lo estoy usando incorrectamente, o se trata de un error conocido en Visual Studio?

Respuesta

7

Es más probable que sea un error en los documentos que en VS2008/MSBuild.

Siempre puede razonar lo que quiere hacer con la (greuling) inspección de p. Ej. su archivo de proyecto y el archivo Microsoft.Common.Targets que importa (generalmente a través de, por ejemplo, Microsoft.CSharp.targets; estos archivos viven en, por ejemplo,

c: \ Windows \ Microsoft.NET \ Framework \ v2.0.50727 \ Microsoft.Common .targets

) y encuentra toda la lógica de MSBuild que eventualmente rellena OutputPath.

En este caso, creo que los documentos están mintiendo directamente, y usted debe p. Ej. decir explícitamente

<OutputPath>$(BaseOutputPath)\$(Configuration)</OutputPath> 

en propiedades incondicionales de su archivo de proyecto (y eliminar OutputPath de propiedades condicionales) para hacer este trabajo.

+0

Veo, pero esto realmente niega el beneficio de utilizar BaseOutputPath en primer lugar. Podría simplemente usar .. \ Binaries \ $ (Configuración). ¡Gracias por la aclaración! –

Cuestiones relacionadas