-win32manifest (Opciones del compilador de C#)-win32manifest (C# Compiler Options)

Use la opción -win32manifest para identificar un archivo de manifiesto de aplicación Win32 definido por el usuario que se va a incluir en un archivo portable ejecutable (PE) del proyecto.Use the -win32manifest option to specify a user-defined Win32 application manifest file to be embedded into a project's portable executable (PE) file.

SintaxisSyntax

-win32manifest: filename  

ArgumentosArguments

filename
Nombre y ubicación del archivo de manifiesto personalizado.The name and location of the custom manifest file.

ComentariosRemarks

De forma predeterminada, el compilador de Visual C# inserta un manifiesto de aplicación que especifica un nivel de ejecución solicitado de "asInvoker".By default, the Visual C# compiler embeds an application manifest that specifies a requested execution level of "asInvoker." Crea el manifiesto en la misma carpeta en la que se ha compilado el archivo ejecutable, normalmente la carpeta bin\Debug o bin\Release cuando se usa Visual Studio.It creates the manifest in the same folder in which the executable is built, typically the bin\Debug or bin\Release folder when you use Visual Studio. Si quiere proporcionar un manifiesto personalizado, por ejemplo para especificar un nivel de ejecución solicitado de "highestAvailable" o "requireAdministrator", use esta opción para especificar el nombre del archivo.If you want to supply a custom manifest, for example to specify a requested execution level of "highestAvailable" or "requireAdministrator," use this option to specify the name of the file.

Nota

Esta opción y -win32res (Opciones del compilador de C#) son mutuamente excluyentes.This option and the -win32res (C# Compiler Options) option are mutually exclusive. Si intenta usar ambas en la misma línea de comandos, obtendrá un error de compilación.If you try to use both options in the same command line you will get a build error.

Una aplicación sin manifiesto de aplicación que especifique un nivel de ejecución solicitado estará sujeta a virtualización de archivos y Registro conforme a la característica Control de cuentas de usuario de Windows.An application that has no application manifest that specifies a requested execution level will be subject to file/registry virtualization under the User Account Control feature in Windows. Para más información, vea User Account Control (Control de cuentas de usuario).For more information, see User Account Control.

La aplicación estará sujeta a virtualización si se cumple cualquiera de estas condiciones:Your application will be subject to virtualization if either of these conditions is true:

  • Se usa la opción -nowin32manifest y no se proporciona ningún manifiesto en un paso de compilación posterior o como parte de un archivo de recursos de Windows (.res) mediante la opción -win32res.You use the -nowin32manifest option and you do not provide a manifest in a later build step or as part of a Windows Resource (.res) file by using the -win32res option.

  • Se proporciona un manifiesto personalizado que no especifica un nivel de ejecución solicitado.You provide a custom manifest that does not specify a requested execution level.

Visual Studio crea un archivo de manifiesto predeterminado y lo almacena en los directorios de depuración y versión junto con el archivo ejecutable.Visual Studio creates a default .manifest file and stores it in the debug and release directories alongside the executable file. Puede agregar un manifiesto personalizado si crea uno en cualquier editor de texto y luego lo agrega al proyecto.You can add a custom manifest by creating one in any text editor and then adding the file to the project. También puede hacer clic con el botón derecho en el icono Proyecto del Explorador de soluciones, hacer clic en Agregar nuevo elemento y luego en Archivo de manifiesto de aplicación.Alternatively, you can right-click the Project icon in Solution Explorer, click Add New Item, and then click Application Manifest File. Después de haber agregado el archivo de manifiesto nuevo o existente, aparecerá en la lista desplegable Manifiesto.After you have added your new or existing manifest file, it will appear in the Manifest drop down list. Para más información, vea Página de aplicación, Diseñador de proyectos (C#).For more information, see Application Page, Project Designer (C#).

Puede proporcionar el manifiesto de aplicación como un paso personalizado posterior a la compilación o como parte de un archivo de recursos Win32 mediante la opción -nowin32manifest (Opciones del compilador de C#).You can provide the application manifest as a custom post-build step or as part of a Win32 resource file by using the -nowin32manifest (C# Compiler Options) option. Use esa misma opción si quiere que la aplicación esté sujeta a virtualización de archivos y Registro en Windows Vista.Use that same option if you want your application to be subject to file or registry virtualization on Windows Vista. Esto evitará que el compilador cree e incruste un manifiesto predeterminado en el archivo portable ejecutable (PE).This will prevent the compiler from creating and embedding a default manifest in the portable executable (PE) file.

EjemploExample

En el ejemplo siguiente se muestra el manifiesto predeterminado que el compilador de Visual C# inserta en un archivo PE.The following example shows the default manifest that the Visual C# compiler inserts into a PE.

Nota

El compilador inserta un nombre de aplicación estándar "MyApplication.app" en el archivo xml.The compiler inserts a standard application name " MyApplication.app " into the xml. Se trata de una solución alternativa para permitir que las aplicaciones se ejecuten en Windows Server 2003 Service Pack 3.This is a workaround to enable applications to run on Windows Server 2003 Service Pack 3.

<?xml version="1.0" encoding="utf-8" standalone="yes"?>  
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">  
  <assemblyIdentity version="1.0.0.0" name="MyApplication.app"/>  
  <trustInfo xmlns="urn:schemas-microsoft-com:asm.v2">  
    <security>  
      <requestedPrivileges xmlns="urn:schemas-microsoft-com:asm.v3">  
        <requestedExecutionLevel level="asInvoker"/>  
      </requestedPrivileges>  
    </security>  
  </trustInfo>  
</assembly>  

Vea tambiénSee Also

Opciones del compilador de C#C# Compiler Options
-nowin32manifest (Opciones del compilador de C#)-nowin32manifest (C# Compiler Options)
Administrar propiedades de soluciones y proyectosManaging Project and Solution Properties