Manifeste d’application ClickOnce
Un manifeste de l’application ClickOnce est un fichier XML qui décrit une application déployée à l’aide de ClickOnce.
Les manifestes de l’application ClickOnce possèdent les éléments et attributs suivants.
Élément | Description | Attributs |
---|---|---|
<assembly> Élément | Obligatoire. Élément de niveau supérieur. | manifestVersion |
<assemblyIdentity> Élément | Obligatoire. Identifie l’assembly principal de l’application ClickOnce. | name version publicKeyToken processorArchitecture language |
<trustInfo> Élément | Identifie les exigences de sécurité de l’application. | None |
<entryPoint> Élément | Obligatoire. Identifie le point d’entrée de code d’application. | name |
<dépendance> Élément | Obligatoire. Identifie chaque dépendance requise pour l’exécution de l’application. Identifie éventuellement les assemblys qui doivent être préinstallés. | None |
<fichier> Élément | facultatif. Identifie chaque fichier non assembly utilisé par l’application. Peut inclure les données d’isolation COM (Component Object Model) associées au fichier. | name size group optional writeableType |
<fileAssociation> Élément | facultatif. Identifie une extension de fichier à associer à l’application. | extension description progid defaultIcon |
Remarques
Le fichier manifeste de l’application ClickOnce identifie une application déployée à l’aide de ClickOnce. Pour plus d’informations sur ClickOnce, consultez Sécurité et déploiement ClickOnce.
Emplacement du fichier
Un manifeste de l’application ClickOnce est propre à une seule version d’un déploiement. Pour cette raison, ils doivent être stockés à l’écart des manifestes de déploiement. La convention courante consiste à les placer dans un sous-répertoire nommé d’après la version associée.
Le manifeste de l’application doit toujours être signé avant le déploiement. Si vous modifiez manuellement un manifeste de l’application, vous devez utiliser mage.exe pour signer à nouveau le manifeste de l’application, mettre à jour le manifeste de déploiement, puis signer à nouveau le manifeste de déploiement. Pour plus d’informations, consultez Procédure pas à pas : déployer manuellement une application ClickOnce.
Syntaxe du nom de fichier
Le nom d’un fichier de manifeste de l’application ClickOnce doit reprendre le nom complet et l’extension de l’application telle qu’identifiée dans l’élément assemblyIdentity
, suivi de l’extension .manifest. Par exemple, un manifeste de l’application qui ferait référence à l’application Example.exe utiliserait la syntaxe de nom de fichier suivante.
example.exe.manifest
Exemple
L’exemple de code suivant montre un manifeste de l’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>