Propiedades comunes de proyectos de MSBuild
La tabla siguiente se enumeran las propiedades utilizadas con frecuencia definidos en los archivos de proyecto de Visual Studio o se incluyen en los archivos .targets que MSBuild proporciona.
Los archivos de proyecto en Visual Studio (.csproj, .vbproj, vcxproj, etc.) contienen código de MSBuild XML que se ejecuta cuando se compila un proyecto mediante el IDE de.Normalmente, los proyectos importan uno o más archivos .targets para definir su proceso de compilación.Para obtener más información, vea Archivos .Targets de MSBuild.
Lista de propiedades y parámetros comunes
Nombre de la propiedad o parámetro |
Descripción |
---|---|
AdditionalLibPaths |
Especifica carpetas adicionales en las que los compiladores deben buscar ensamblados de referencia. |
AddModules |
Hace que el compilador facilite la información de tipos presente en los archivos especificados al proyecto que se compila actualmente.Esta propiedad es equivalente al modificador de compilador /addModules. |
ALToolPath |
Ruta de acceso donde se puede encontrar AL.exe.Esta propiedad invalida la versión actual de AL.exe para habilitar el uso de una versión diferente. |
ApplicationIcon |
Archivo de icono .ico que se va a pasar al compilador para incrustarlo como un icono de Win32.Esta propiedad es equivalente al modificador de compilador /win32icon. |
ApplicationManifest |
Especifica la ruta de acceso del archivo que se utiliza para generar la información externa del manifiesto Control de cuentas de usuario (UAC).Sólo se aplica a los proyectos de Visual Studio que tienen como destino Windows Vista. En la mayoría de los casos, el manifiesto se incrusta.Sin embargo, si utiliza una implementación de COM sin registro o de ClickOnce, el manifiesto puede ser un archivo externo que se instala junto con los ensamblados de aplicación.Para obtener más información, vea la propiedad NoWin32Manifest en este tema. |
AssemblyOriginatorKeyFile |
Especifica el archivo que se utiliza para firmar el ensamblado (.snk o .pfx) y que se pasa a ResolveKeySource (Tarea) para generar la clave real que se utiliza para firmar el ensamblado. |
AssemblySearchPaths |
Lista de ubicaciones donde se realizarán las búsquedas durante la resolución de ensamblados en tiempo de compilación.El orden en que aparecen las rutas de acceso en esta lista es importante porque las rutas de acceso situadas antes en la lista tienen prioridad sobre las entradas posteriores. |
AssemblyName |
Nombre del ensamblado resultante final una vez compilado el proyecto. |
BaseAddress |
Especifica la dirección base del ensamblado resultante principal.Esta propiedad es equivalente al modificador de compilador /baseaddress. |
BaseOutputPath |
Especifica la ruta de acceso base del archivo de salida.Si está establecido, MSBuild utilizará OutputPath = $(BaseOutputPath)\$(Configuration)\.Ejemplo de sintaxis: <BaseOutputPath>c:\xyz\bin\</BaseOutputPath> |
BaseIntermediateOutputPath |
Carpeta de nivel superior donde se crean todas las carpetas de resultados intermedios específicas de la configuración.El valor predeterminado es obj\.El código siguiente es un ejemplo: <BaseIntermediateOutputPath>c:\xyz\obj\</BaseIntermediateOutputPath> |
BuildInParallel |
Valor booleano que indica si las referencias del proyecto se compilan o limpian en paralelo cuando se utiliza MSBuild con varios procesadoresEl valor predeterminado es true, que significa que los proyectos se compilarán en paralelo si el sistema tiene varios núcleos o procesadores. |
BuildProjectReferences |
Valor booleano que indica si MSBuild compilará las referencias de proyecto.Establezca su valor en false si va a compilar su proyecto en el entorno de desarrollo integrado (IDE) de Visual Studio; en caso contrario, utilice true. |
CleanFile |
Nombre del archivo que se utilizará como "caché limpia". La caché limpia es una lista de archivos generados que se eliminarán durante la operación de limpieza.El proceso de compilación coloca el archivo en la ruta de acceso intermedia de los resultados. Esta propiedad sólo especifica nombres de archivo sin información sobre su ruta de acceso. |
CodePage |
Especifica la página de códigos que debe utilizarse para todos los archivos de código fuente en la compilación.Esta propiedad es equivalente al modificador de compilador /codepage. |
CompilerResponseFile |
Archivo de respuesta opcional que se puede pasar a las tareas del compilador. |
Configuración. |
Configuración que está compilando, "Debug" o "Release". |
CscToolPath |
Ruta de acceso de csc.exe, el compilador Visual C#. |
CustomBeforeMicrosoftCommonTargets |
Nombre de un archivo de proyecto o archivo de destinos que se importará automáticamente antes de importar los destinos comunes. |
DebugSymbols |
Valor booleano que indica si la compilación genera los símbolos. Al establecer /p:DebugSymbols=false en la línea de comandos, se deshabilita la compilación de archivos de símbolos de base de datos de programas (.pdb). |
DefineConstants |
Permite definir constantes condicionales para el compilador.Los pares símbolo-valor van separados por punto y coma, y se especifican con la siguiente sintaxis: símbolo1 = valor1; símbolo2 = valor2 Esta propiedad es equivalente al modificador de compilador /define. |
DefineDebug |
Valor booleano que indica si desea definir la constante DEBUG. |
DefineTrace |
Valor booleano que indica si desea definir la constante TRACE. |
DebugType |
Define el nivel de información de depuración que desea generar.Los valores válidos son "full", "pdbonly", y "none". |
DelaySign |
Valor booleano que indica si desea retrasar la firma del ensamblado en lugar de firmarlo completamente. |
DisabledWarnings |
Suprime las advertencias especificadas.Sólo hay que especificar la parte numérica del identificador de advertencia.Las advertencias múltiples están separadas con punto y coma.Este parámetro corresponde al modificador /nowarn del compilador de vbc.exe. |
DisableFastUpToDateCheck |
Valor booleano que sólo se aplica a Visual Studio.El administrador de compilación de Visual Studio utiliza un proceso denominado FastUpToDateCheck para determinar si es necesario recompilar un proyecto para actualizarlo.Este proceso es más rápido que utilizar MSBuild.Al establecer la propiedad DisableFastUpToDateCheck en true, puede omitir el generador de compilación de Visual Studio y obligarlo a usar MSBuild para determinar si el proyecto está actualizado. |
DocumentationFile |
Nombre del archivo que se genera como archivo de documentación XML.Este nombre sólo incluye el nombre de archivo sin información sobre la ruta de acceso. |
ErrorReport |
Especifica cómo debe el compilador documentar los errores internos del compilador.Los valores válidos son "prompt", "send" o "none". Esta propiedad es equivalente al modificador de compilador /errorreport. |
ExcludeDeploymentUrl |
GenerateDeploymentManifest (Tarea) agrega una etiqueta deploymentProvider en el manifiesto de implementación si el archivo de proyecto incluye un de los elementos siguientes:
Mediante ExcludeDeploymentUrl, sin embargo, puede evitar que la etiqueta deploymentProvider se agregue al manifiesto de implementación aunque es un de los sobre direcciones URL se especifica. Para ello, agregue la siguiente propiedad al archivo de proyecto: <ExcludeDeploymentUrl>true</ExcludeDeploymentUrl>
Nota
ExcludeDeploymentUrl no se expone en Visual Studio el IDE y sólo se puede establecer editar manualmente el archivo de proyecto. Establecer esta propiedad no afecta a la publicación dentro de Visual Studio; es decir, la etiqueta deploymentProvider todavía se agregará a la dirección URL especificada por PublishUrl.
|
FileAlignment |
Especifica, en bytes, dónde alinear las secciones del archivo de salida.Los valores válidos son 512, 1024, 2048, 4096, 8192.Esta propiedad es equivalente al modificador de compilador /filealignment. |
FrameworkPathOverride |
Especifica la ubicación de mscorlib.dll y microsoft.visualbasic.dll.Este parámetro es equivalente al modificador /sdkpath del compilador de vbc.exe. |
GenerateDocumentation |
Parámetro booleano que indica si la compilación generará la documentación.Si es true, la compilación genera la información de documentación y la coloca en un archivo .xml junto con el nombre del archivo ejecutable o la biblioteca creada por la tarea de compilación. |
IntermediateOutputPath |
Ruta de acceso intermedia completa de los resultados derivada de BaseIntermediateOutputPath, si no se especificó ninguna ruta de acceso.Por ejemplo, \obj\debug\.Si se invalida esta propiedad, establecer BaseIntermediateOutputPath no tiene ningún efecto. |
KeyContainerName |
Nombre del contenedor de claves de nombre seguro. |
KeyOriginatorFile |
Nombre del archivo de claves de nombre seguro. |
NoWin32Manifest |
Determina si el compilador genera el manifiesto predeterminado de Win32 en el ensamblado resultante.El valor predeterminado false indica que el manifiesto de Win32 predeterminado se genera para todas las aplicaciones.Esta propiedad es equivalente al modificador /nowin32manifest del compilador de vbc.exe. |
ModuleAssemblyName |
Nombre del ensamblado al que se incorporará el módulo compilado.Esta propiedad es equivalente al modificador de compilador /moduleassemblyname. |
NoLogo |
Valor booleano que indica si desea desactivar el logotipo del compilador.Esta propiedad es equivalente al modificador de compilador /nologo. |
NoStdLib |
Valor booleano que indica si se debe evitar hacer referencia a la biblioteca estándar (mscorlib.dll).El valor predeterminado es false. |
NoVBRuntimeReference |
Valor booleano que indica si el motor en tiempo de ejecución de Visual Basic (Microsoft.VisualBasic.dll) debe incluirse como una referencia en el proyecto. |
NoWin32Manifest |
Un valor booleano que indica si la información del manifiesto Control de cuentas de usuario (UAC) se incrustará en el archivo ejecutable de la aplicación.Sólo se aplica a los proyectos de Visual Studio que tienen como destino Windows Vista.En los proyectos implementados mediante ClickOnce y COM sin registro, se omite este elemento. False (valor predeterminado) especifica que la información de manifiesto de Control de cuentas de usuario (UAC) se incrusta en el ejecutable de la aplicación.True especifica que la información de manifiesto UAC no debe incrustarse. Esta propiedad sólo se aplica a los proyectos de Visual Studio que tienen como destino Windows Vista.En los proyectos que se implementan con ClickOnce y COM sin registro, se omite esta propiedad. Sólo debe agregar NoWin32Manifest si no desea que Visual Studio incruste información del manifiesto en el archivo ejecutable de la aplicación; este proceso se denomina virtualización.Para utilizar la virtualización, establezca <ApplicationManifest> junto con <NoWin32Manifest> como sigue:
|
Optimize |
Valor booleano que cuando se establece en true, permite la optimización del compilador.Esta propiedad es equivalente al modificador de compilador /optimize. |
OptionCompare |
Especifica la forma de realizar las comparaciones de cadenas.Los valores válidos son "binary" o "text". Esta propiedad es equivalente al modificador /optioncompare del compilador de vbc.exe. |
OptionExplicit |
Valor booleano que cuando se establece en true, requiere la declaración explícita de variables en el código fuente.Esta propiedad es equivalente al modificador de compilador /optionexplicit. |
OptionInfer |
Valor booleano que cuando se establece en true, permite la inferencia de tipos de variables.Esta propiedad es equivalente al modificador de compilador /optioninfer. |
OptionStrict |
Valor booleano que cuando se establece en true, hace que la tarea de compilación exija una semántica de tipos estricta para restringir las conversiones de tipos implícitas.Esta propiedad es equivalente al modificador /optionstrict del compilador de vbc.exe. |
OutputPath |
Especifica la ruta de acceso del directorio de salida con respecto al directorio del proyecto, por ejemplo "bin\Debug". |
OutputType |
Especifica el formato del archivo de salida.Este parámetro puede tener uno de los valores siguientes:
Esta propiedad es equivalente al modificador /target del compilador de vbc.exe. |
OverwriteReadOnlyFiles |
Valor booleano que indica si desea que la compilación sobrescriba los archivos de sólo lectura o active un error. |
PdbFile |
Nombre del archivo .pdb que está emitiendo.Esta propiedad es equivalente al modificador /pdb del compilador de csc.exe. |
Plataforma |
Sistema operativo para el que se está compilando.Los valores válidos son "AnyCPU", "x86", "x64" o "Itanium". |
RemoveIntegerChecks |
Valor booleano que indica si se van a deshabilitar las comprobaciones de los errores de desbordamiento de enteros.El valor predeterminado es false.Esta propiedad es equivalente al modificador /removeintchecks del compilador de vbc.exe. |
SGenUseProxyTypes |
Valor booleano que indica si SGen.exe debe compilar los tipos de proxy. El destino SGen usa esta propiedad para establecer la marca UseProxyTypes.Esta propiedad tiene el valor predeterminado true y no hay ninguna interfaz de usuario para cambiarlo.Para generar el ensamblado de serialización para tipos que no son de servicio web, agregue esta propiedad al archivo de proyecto y establézcalo en false antes de importar Microsoft.Common.Targets o C#/VB.targets. |
SGenToolPath |
Ruta de acceso opcional de la herramienta que indica dónde obtener SGen.exe cuando se invalida la versión actual de SGen.exe. |
StartupObject |
Especifica la clase o módulo que contiene el método Main o el procedimiento Main Sub.Esta propiedad es equivalente al modificador de compilador /main. |
ProcessorArchitecture |
Arquitectura de procesador utilizada cuando se resuelven las referencias de ensamblado.Los valores válidos son "msil", "x86", "amd64" o "ia64". |
RootNamespace |
Espacio de nombres raíz que se utilizará al asignar nombre a un recurso incrustado.Este espacio de nombres forma parte del nombre de manifiesto del recurso incrustado. |
Satellite_AlgorithmId |
Id. del algoritmo hash de AL.exe que se utilizará al crear los ensamblados satélite. |
Satellite_BaseAddress |
Dirección base que se utilizará al compilar los ensamblados satélite específicos de la referencia cultural mediante el destino CreateSatelliteAssemblies. |
Satellite_CompanyName |
Nombre de la compañía que se pasará a AL.exe durante la compilación del ensamblado satélite. |
Satellite_Configuration |
Nombre de la configuración que se pasará a AL.exe durante la compilación del ensamblado satélite. |
Satellite_Description |
Texto de descripción que se pasará a AL.exe durante la compilación del ensamblado satélite. |
Satellite_EvidenceFile |
Incrusta el archivo especificado en el ensamblado satélite con el nombre de recurso "Security.Evidence". |
Satellite_FileVersion |
Especifica una cadena para el campo File Version del ensamblado satélite. |
Satellite_Flags |
Especifica un valor para el campo Flags del ensamblado satélite. |
Satellite_GenerateFullPaths |
Hace que la tarea de compilación use rutas de acceso absolutas para los archivos que se enumeran en un mensaje de error. |
Satellite_LinkResource |
Vincula los archivos de recursos especificados a un ensamblado satélite. |
Satellite_MainEntryPoint |
Especifica el nombre completo (es decir, class.method) del método que se usará como punto de entrada cuando un módulo se convierte en un archivo ejecutable durante la compilación del ensamblado satélite. |
Satellite_ProductName |
Especifica una cadena para el campo Product del ensamblado satélite. |
Satellite_ProductVersion |
Especifica una cadena para el campo ProductVersion del ensamblado satélite. |
Satellite_TargetType |
Especifica el formato del archivo de salida del ensamblado satélite como "library", "exe" o "win". El valor predeterminado es "library". |
Satellite_Title |
Especifica una cadena para el campo Title del ensamblado satélite. |
Satellite_Trademark |
Especifica una cadena para el campo Trademark del ensamblado satélite. |
Satellite_Version |
Especifica la información de versión del ensamblado satélite. |
Satellite_Win32Icon |
Inserta un archivo de icono .ico en el ensamblado satélite. |
Satellite_Win32Resource |
Inserta un archivo de recursos (.res) de Win32 en el ensamblado satélite. |
SubsystemVersion |
Especifica la versión mínima del subsistema que el archivo ejecutable generado puede utilizar.Esta propiedad es equivalente al modificador de compilador /subsystemversion.Para obtener información sobre el valor predeterminado de esta propiedad, vea /subsystemversion (Visual Basic) o /subsystemversion (Opciones del compilador de C#). |
TargetCompactFramework |
Versión de .NET Compact Framework necesaria para ejecutar la aplicación que se está compilando.Especificar esto permite hacer referencia a ciertos ensamblados de .NET Framework que, de otro modo, quizá no podría. |
TargetFrameworkVersion |
Versión de .NET Framework necesaria para ejecutar la aplicación que se está compilando.Especificar esto permite hacer referencia a ciertos ensamblados de .NET Framework que, de otro modo, quizá no podría. |
TreatWarningsAsErrors |
Parámetro booleano que, si es true, hace que todas las advertencias se traten como errores.Este parámetro es equivalente al modificador de compilador /nowarn. |
UseHostCompilerIfAvailable |
Parámetro booleano que, si es true, hace que la tarea de compilación utilice el objeto de compilador en proceso, si está disponible.Sólo Visual Studio utiliza este parámetro. |
Utf8Output |
Parámetro booleano que, si es true, registra el resultado del compilador utilizando la codificación UTF-8.Este parámetro es equivalente al modificador de compilador /utf8Output. |
VbcToolPath |
Ruta de acceso opcional que indica otra ubicación para vbc.exe cuando se invalida la versión actual de vbc.exe. |
VbcVerbosity |
Especifica el nivel de detalle de los resultados del compilador de Visual Basic.Los valores válidos son "Quiet", "Normal" (valor predeterminado) o "Verbose". |
VisualStudioVersion |
Especifica la versión de Visual Studio en la que este proyecto se debería ejecutar.Si esta propiedad no se especifica, MSBuild la establece en un valor predeterminado razonable. Esta propiedad se utiliza en varios tipos de proyecto para especificar el conjunto de destinos que se utilizan para la compilación.Si ToolsVersion se establece en 4,0 o más alto para un proyecto, VisualStudioVersion se utiliza para especificar que sub- conjunto de herramientas a utilizar.Para obtener más información, vea Conjunto de herramientas de MSBuild (ToolsVersion). |
WarningsAsErrors |
Especifica una lista de advertencias que se tratarán como errores.Este parámetro es equivalente al modificador de compilador /warnaserror. |
WarningsNotAsErrors |
Especifica una lista de advertencias que no se tratarán como errores.Este parámetro es equivalente al modificador de compilador /warnaserror. |
Win32Manifest |
Nombre del archivo manifiesto que se debe incrustar en el ensamblado final.Este parámetro es equivalente al modificador de compilador /win32Manifest . |
Wint32Resource |
Nombre del archivo de recursos de Win32 que se va a incrustar en el ensamblado final.Este parámetro es equivalente al modificador de compilador /win32resource. |