Manifeste d'application ClickOnce

Un manifeste d'application est un fichier XML qui décrit une application déployée avec ClickOnce.

Les manifestes d'application ont les éléments et attributs suivants.

Élément

Description

Attributs

<assembly>, élément (Application ClickOnce)

Obligatoire. Élément du niveau le plus haut.

manifestVersion

<assemblyIdentity>, élément (Application ClickOnce)

Obligatoire. Identifie l'assembly principal de l'application ClickOnce.

name

version

publicKeyToken

processorArchitecture

language

<trustInfo>, élément (Application ClickOnce)

Identifie la configuration de sécurité requise de l'application.

Aucun

<entryPoint>, élément (Application ClickOnce)

Obligatoire. Identifie le point d'entrée de code d'application.

name

<dependency>, élément (Application ClickOnce)

Obligatoire. Identifie chaque dépendance requise pour que l'application s'exécute. Identifie éventuellement les assemblys à préinstaller.

Aucun

<file>, élément (Application ClickOnce)

Facultatif. Identifie chaque fichier, autre que les fichiers d'assembly, utilisé par l'application. Il peut inclure des données d'isolation COM associées au fichier.

name

size

group

optional

writeableType

<fileAssociation>, élément (Déploiement ClickOnce)

Facultatif. Identifie une extension de fichier à associer à l'application.

extension

description

progid

defaultIcon

Notes

Le fichier manifeste d'application identifie une application déployée avec ClickOnce. Pour plus d'informations sur ClickOnce, consultez Sécurité et déploiement ClickOnce.

Emplacement du fichier

Un manifeste d'application est spécifique à une seule version d'un déploiement. Pour cette raison, les manifestes d'application doivent être stockés séparément des manifestes de déploiement. Il est généralement convenu de les placer dans un sous-répertoire prenant le nom de la version associée.

Le manifeste d'application doit toujours être signé avant son déploiement. Si vous modifiez un manifeste de l'application manuellement, vous devez utiliser mage.exe pour ré-signer le manifeste de l'application, mettre à jour le manifeste de déploiement, puis ré-signer le manifeste de déploiement. Pour plus d'informations, consultez Procédure pas à pas : déploiement manuel d'une application ClickOnce.

Syntaxe des noms de fichier

Le nom d'un fichier manifeste d'application doit représenter le nom complet et l'extension de l'application, tel qu'il est identifié dans l'élément assemblyIdentity, suivi de l'extension .manifest. Par exemple, le manifeste d'une application faisant référence à la solution Exemple.exe doit respecter la syntaxe de nom suivante.

example.exe.manifest

Exemple

L'exemple de code suivant illustre un manifeste d'application pour une application ClickOnce.

<?xml version="1.0" encoding="utf-8"?>
<asmv1:assembly xsi:schemaLocation="urn:schemas-microsoft-com:asm.v1 assembly.adaptive.xsd" manifestVersion="1.0" xmlns:asmv3="urn:schemas-microsoft-com:asm.v3" xmlns:dsig="http://www.w3.org/2000/09/xmldsig#" xmlns:co.v2="urn:schemas-microsoft-com:clickonce.v2" xmlns="urn:schemas-microsoft-com:asm.v2" xmlns:asmv1="urn:schemas-microsoft-com:asm.v1" xmlns:asmv2="urn:schemas-microsoft-com:asm.v2" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:co.v1="urn:schemas-microsoft-com:clickonce.v1">
  <asmv1:assemblyIdentity name="My Application Deployment.exe" version="1.0.0.0" publicKeyToken="43cb1e8e7a352766" language="neutral" processorArchitecture="x86" type="win32" />
  <application />
  <entryPoint>
    <assemblyIdentity name="MyApplication" version="1.0.0.0" language="neutral" processorArchitecture="x86" />
    <commandLine file="MyApplication.exe" parameters="" />
  </entryPoint>
  <trustInfo>
    <security>
      <applicationRequestMinimum>
        <PermissionSet Unrestricted="true" ID="Custom" SameSite="site" />
        <defaultAssemblyRequest permissionSetReference="Custom" />
      </applicationRequestMinimum>
      <requestedPrivileges xmlns="urn:schemas-microsoft-com:asm.v3">
        <!--
          UAC Manifest Options
          If you want to change the Windows User Account Control level replace the 
          requestedExecutionLevel node with one of the following.

        <requestedExecutionLevel  level="asInvoker" uiAccess="false" />
        <requestedExecutionLevel  level="requireAdministrator" uiAccess="false" />
        <requestedExecutionLevel  level="highestAvailable" uiAccess="false" />

         If you want to utilize File and Registry Virtualization for backward 
         compatibility then delete the requestedExecutionLevel node.
    -->
        <requestedExecutionLevel level="asInvoker" uiAccess="false" />
      </requestedPrivileges>
    </security>
  </trustInfo>
  <dependency>
    <dependentOS>
      <osVersionInfo>
        <os majorVersion="4" minorVersion="10" buildNumber="0" servicePackMajor="0" />
      </osVersionInfo>
    </dependentOS>
  </dependency>
  <dependency>
    <dependentAssembly dependencyType="preRequisite" allowDelayedBinding="true">
      <assemblyIdentity name="Microsoft.Windows.CommonLanguageRuntime" version="4.0.20506.0" />
    </dependentAssembly>
  </dependency>
  <dependency>
    <dependentAssembly dependencyType="install" allowDelayedBinding="true" codebase="MyApplication.exe" size="4096">
      <assemblyIdentity name="MyApplication" version="1.0.0.0" language="neutral" processorArchitecture="x86" />
      <hash>
        <dsig:Transforms>
          <dsig:Transform Algorithm="urn:schemas-microsoft-com:HashTransforms.Identity" />
        </dsig:Transforms>
        <dsig:DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1" />
        <dsig:DigestValue>DpTW7RzS9IeT/RBSLj54vfTEzNg=</dsig:DigestValue>
      </hash>
    </dependentAssembly>
  </dependency>
<publisherIdentity name="CN=DOMAINCONTROLLER\UserMe" issuerKeyHash="18312a18a21b215ecf4cdb20f5a0e0b0dd263c08" /><Signature Id="StrongNameSignature" xmlns="http://www.w3.org/2000/09/xmldsig#">
…
</Signature></r:issuer></r:license></msrel:RelData></KeyInfo></Signature></asmv1:assembly>

Voir aussi

Concepts

Publication d'applications ClickOnce