Manifesto dell'applicazione ClickOnce

Un manifesto dell'applicazione è un file XML che descrive un'applicazione distribuita mediante ClickOnce.

I manifesti delle applicazioni dispongono degli elementi e degli attributi riportati di seguito.

Elemento

Oggetto di descrizione

Attributi

Elemento <assembly> (applicazione ClickOnce)

Obbligatoria. Elemento di primo livello.

manifestVersion

Elemento <assemblyIdentity> (applicazione ClickOnce)

Obbligatoria. Identifica l'assembly primario dell'applicazione ClickOnce.

name

version

publicKeyToken

processorArchitecture

language

Elemento <trustInfo> (applicazione ClickOnce)

Identifica i requisiti di sicurezza dell'applicazione.

Nessuna correzione

Elemento <entryPoint> (applicazione ClickOnce)

Obbligatoria. Identifica il punto di ingresso del codice dell'applicazione.

name

Elemento <dependency> (applicazione ClickOnce)

Obbligatoria. Identifica ciascuna dipendenza richiesta per l'esecuzione dell'applicazione. Può anche identificare gli assembly che è necessario preinstallare.

Nessuna correzione

Elemento <file> (applicazione ClickOnce)

Facoltativo. Identifica ciascun file non assembly utilizzato dall'applicazione. Può includere i dati sull'isolamento COM (Component Object Model) associati al file.

name

size

group

optional

writeableType

Elemento <fileAssociation> (applicazione ClickOnce)

Facoltativo. Identifica un'estensione di file da associare all'applicazione.

extension

description

progid

defaultIcon

Note

Il file manifesto dell'applicazione identifica un'applicazione distribuita mediante ClickOnce. Per ulteriori informazioni su ClickOnce, vedere Sicurezza e distribuzione di ClickOnce.

Percorso file

Un manifesto dell'applicazione è specifico per una singola versione di una distribuzione. Per questo motivo, i manifesti dell'applicazione devono essere memorizzati separatamente da quelli di distribuzione. Di solito vengono inseriti in una sottodirectory a cui viene assegnato un nome in base alla versione associata.

Il manifesto dell'applicazione deve essere sempre firmato prima della distribuzione. Se si modifica un manifesto dell'applicazione manualmente, è necessario utilizzare mage.exe per firmare di nuovo tali manifesti dell'applicazione, per aggiornare il manifesto di distribuzione e quindi firmare nuovamente il manifesto di distribuzione. Per ulteriori informazioni, vedere Procedura dettagliata: distribuzione manuale di un'applicazione ClickOnce.

Sintassi del nome file

Il nome di un file manifesto dell'applicazione deve essere composto dal nome completo e dall'estensione dell'applicazione identificati nell'elemento assemblyIdentity, seguiti dall'estensione manifest. Per un manifesto dell'applicazione che fa riferimento, ad esempio, all'applicazione Example.exe verrà utilizzata la sintassi del nome di file riportata di seguito.

example.exe.manifest

Esempio

Nell'esempio di codice riportato di seguito viene illustrato un manifesto per un'applicazione 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>

Vedere anche

Concetti

Pubblicazione di applicazioni ClickOnce