Compartir a través de


/win32manifest (Importar un archivo del manifiesto de Win32 personalizado) (Opciones del compilador de C#)

Actualización: noviembre 2007

Utilice la opción /win32manifest para especificar que un archivo de manifiesto de la aplicación Win32 definido por el usuario se incruste en el archivo portable ejecutable (PE) de un proyecto.

/win32manifest: filename

Arguments

  • filename
    El nombre y la ubicación del archivo de manifiesto personalizado.

Comentarios

De forma predeterminada, el compilador de Visual C# incrusta un manifiesto de aplicación que especifica un nivel de ejecución solicitado de "asInvoker". Crea el manifiesto en la misma carpeta en la que se genera el archivo ejecutable, normalmente la carpeta bin\Debug o bin\Release cuando se utiliza Visual Studio. Si desea proporcionar un manifiesto personalizado, por ejemplo para especificar un nivel de ejecución solicitado de "highestAvailable" o "requireAdministrator", utilice esta opción para especificar el nombre del archivo.

Nota:

Esta opción y la opción /win32res (Importar un archivo de recursos Win32) (Opciones del compilador de C#) se excluyen mutuamente. Si intenta utilizar ambas opciones en la misma línea de comandos obtendrá un error de compilación.

Una aplicación sin un manifiesto de aplicación que especifique un nivel de ejecución solicitado se someterá a la virtualización de archivos y del Registro bajo la característica Control de cuentas de usuario de Windows Vista. Para obtener más información sobre la virtualización, vea The Windows Vista Developer Story: Windows Vista Application Development Requirements for User Account Control (UAC).

Su aplicación se someterá a la virtualización si se cumple cualquiera de estas condiciones:

  • Utiliza la opción /nowin32manifest y no proporciona un manifiesto en un paso de compilación posterior o como parte de un archivo de recursos Windows (.res) utilizando la opción /win32res.

  • Proporciona un manifiesto personalizado que no especifica un nivel de ejecución solicitado.

Visual Studio crea un archivo .manifest predeterminado y lo almacena en los directorios de depuración y lanzamiento junto con el archivo ejecutable. Para agregar un manifiesto personalizado, cree uno en cualquier editor de texto y agregue el archivo al proyecto a continuación. Como alternativa, puede hacer clic con el botón secundario en el icono Proyecto del Explorador de soluciones, hacer clic en Agregar nuevo elementoy, a continuación, en Archivo de manifiesto de aplicación. Después de haber agregado el archivo de manifiesto nuevo o existente, éste aparecerá en la lista desplegable Manifiesto. Para obtener más información, consulte Página de aplicación, Diseñador de proyectos (C#).

Puede proporcionar el manifiesto de aplicación como paso personalizado posterior a la compilación o como parte de un archivo de recursos Win32 mediante la opción /nowin32manifest (No usar manifiesto de Win32) (Opciones del compilador de C#). Utilice esa misma opción si desea que la aplicación se someta a la virtualización de archivos o del Registro en Windows Vista. De esta forma se evitará que el compilador cree e incruste un manifiesto predeterminado en el archivo portable ejecutable (PE).

Ejemplo

En el ejemplo siguiente se muestra el manifiesto predeterminado que el compilador de Visual C# inserta en un archivo PE.

Nota:

El compilador inserta un nombre de aplicación estándar "MyApplication.app" en el archivo xml. Ésta es una solución alternativa para habilitar las aplicaciones para que se ejecuten en 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én

Referencia

/nowin32manifest (No usar manifiesto de Win32) (Opciones del compilador de C#)

Otros recursos

Opciones del compilador de C#

Propiedades del proyecto (Visual Studio)