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

Identifie une dépendance de plateforme ou d’assembly nécessaire pour l’application.

Syntax


      <dependency>
   <dependentOS
      supportURL
      description
   >
      <osVersionInfo>
         <os
            majorVersion
            minorVersion
            buildNumber
            servicePackMajor
            servicePackMinor
            productType
            suiteType
         />
      </osVersionInfo>
   </dependentOS>
   <dependentAssembly
      dependencyType
      allowDelayedBinding
      group
      codeBase
      size
   >
      <assemblyIdentity
         name
         version
         processorArchitecture
         language
      >
         <hash>
            <dsig:Transforms>
               <dsig:Transform
                  Algorithm
            />
            </dsig:Transforms>
            <dsig:DigestMethod />
            <dsig:DigestValue>
            </dsig:DigestValue>
    </hash>

      </assemblyIdentity>
   </dependentAssembly>
</dependency>

Éléments et attributs

L’élément dependency est obligatoire. Il peut exister plusieurs instances de dependency dans un même manifeste d’application.

L’élément dependency ne comporte aucun attribut et contient les éléments enfants suivants.

dependantOS

facultatif. Contient l’élément osVersionInfo. Les éléments dependentOS et dependentAssembly s’excluent mutuellement : l’un ou l’autre doit exister pour un élément dependency, mais pas les deux.

dependentOS prend en charge les attributs suivants.

Attribut Description
supportUrl facultatif. Spécifie une URL de prise en charge pour la plateforme dépendante. Cette URL est montrée à l’utilisateur si la plateforme nécessaire est trouvée.
description facultatif. Décrit de façon explicite le système d’exploitation décrit par l’élément dependentOS.

osVersionInfo

Obligatoire. Cet élément est un enfant de l’élément dependentOS et contient l’élément os . Cet élément n’a pas d’attributs.

os

Obligatoire. Cet élément est un enfant de l’élément osVersionInfo . Cet élément comprend les attributs suivants.

Attribut Description
majorVersion Obligatoire. Spécifie le numéro de version majeure du système d’exploitation.
minorVersion Obligatoire. Spécifie le numéro de version mineure du système d’exploitation.
buildNumber Obligatoire. Spécifie le numéro de build du système d’exploitation.
servicePackMajor Obligatoire. Spécifie le numéro principal du service pack du système d’exploitation.
servicePackMinor facultatif. Spécifie le numéro mineur du service pack du système d’exploitation.
productType facultatif. Identifie la valeur du type de produit. Les valeurs correctes sont server, workstation et domainController. Par exemple, pour Windows 10, cette valeur d’attribut est workstation.
suiteType facultatif. Identifie une suite de produits disponible sur le système ou le type de configuration du système. Les valeurs valides sont backoffice, blade, datacenter, enterprise, home, professional, smallbusiness, smallbusinessRestricted et terminal. Par exemple, pour Windows 2000 Professionnel, cette valeur d’attribut est professional.

dependentAssembly

facultatif. Contient l’élément assemblyIdentity. Les éléments dependentOS et dependentAssembly s’excluent mutuellement : l’un ou l’autre doit exister pour un élément dependency, mais pas les deux.

dependentAssembly a les attributs suivants.

Attribut Description
dependencyType Obligatoire. Spécifie le type de dépendance. Les valeurs valides sont prerequisite et install. Un assembly install est installé avec l’application ClickOnce. Un assembly prerequisite doit être présent dans le Global Assembly Cache (GAC) avant que l’application ClickOnce puisse être installée.
allowDelayedBinding Obligatoire. Spécifie si l’assembly peut être chargé par programmation au moment de l’exécution.
group facultatif. Si l’attribut dependencyType est défini sur install, désigne un groupe nommé d’assemblys qui s’installent uniquement à la demande. Pour plus d’informations, consultez Procédure pas à pas : téléchargement d’assemblys à la demande avec l’API du déploiement ClickOnce à l’aide du concepteur.

Si la valeur est définie sur framework et que l’attribut dependencyType a la valeur prerequisite, désigne l’assembly comme faisant partie du .NET Framework. Le Global Assembly Cache (GAC) n’est pas case activée ed pour cet assembly lors de l’installation sur .NET Framework 4 et versions ultérieures.
codeBase Obligatoire quand l’attribut dependencyType est défini sur install. Chemin de l’assembly dépendant. Il peut s’agir d’un chemin absolu ou d’un chemin relatif menant à la base de code du manifeste. Ce chemin doit être un URI valide pour que le manifeste d’assembly soit valide.
size Obligatoire quand l’attribut dependencyType est défini sur install. Taille de l’assembly dépendant, en octets.

assemblyIdentity

Obligatoire. Cet élément est un enfant de l’élément dependentAssembly et comprend les attributs suivants.

Attribut Description
name Obligatoire. Identifie le nom de l’application.
version Obligatoire. Spécifie le numéro de version de l’application dans le format suivant : major.minor.build.revision
publicKeyToken facultatif. Spécifie une chaîne hexadécimale de 16 caractères qui représente les 8 derniers octets de la valeur de hachage SHA-1 de la clé publique sous laquelle l’application ou l’assembly sont signés. La clé publique utilisée pour signer le catalogue doit être de 2 048 bits ou plus.
processorArchitecture facultatif. Spécifie le processeur. Les valeurs valides sont x86 pour Windows 32 bits et I64 pour Windows 64 bits.
language facultatif. Identifie les codes de langue en deux parties, tels que FR-FR, de l’assembly.

hash

L’élément hash est un enfant facultatif de l’élément assemblyIdentity. L’élément hash ne comporte pas d’attributs.

ClickOnce utilise un hachage algorithmique de tous les fichiers dans une application en guise de vérification de sécurité, et s’assure ainsi qu’aucun des fichiers n’a été modifié après le déploiement. Si l’élément hash n’est pas inclus, cette vérification n’est pas effectuée. Il est donc déconseillé d’omettre l’élément hash.

dsig:Transforms

L’élément dsig:Transforms est un enfant obligatoire de l’élément hash. L’élément dsig:Transforms ne comporte pas d’attributs.

dsig:Transform

L’élément dsig:Transform est un enfant obligatoire de l’élément dsig:Transforms. L’élément dsig:Transform a les attributs suivants.

Attribut Description
Algorithm Algorithme utilisé pour calculer le code de hachage pour ce fichier. Actuellement, la seule valeur utilisée par ClickOnce est urn:schemas-microsoft-com:HashTransforms.Identity.

dsig:DigestMethod

L’élément dsig:DigestMethod est un enfant obligatoire de l’élément hash. L’élément dsig:DigestMethod a les attributs suivants.

Attribut Description
Algorithm Algorithme utilisé pour calculer le code de hachage pour ce fichier. Actuellement, la seule valeur utilisée par ClickOnce est http://www.w3.org/2000/09/xmldsig#sha1.

dsig:DigestValue

L’élément dsig:DigestValue est un enfant obligatoire de l’élément hash. L’élément dsig:DigestValue ne comporte pas d’attributs. Sa valeur texte est le hachage calculé pour le fichier spécifié.

Remarques

Tous les assemblys utilisés par votre application doivent avoir un élément dependency correspondant. Parmi les assemblys dépendants ne figurent pas les assemblys qui doivent être préinstallés dans le Global Assembly Cache en tant qu’assemblys de plateforme.

Exemple

L’exemple de code suivant illustre les éléments dependency d’un manifeste d’application ClickOnce. Cet exemple de code fait partie d’un exemple plus étoffé fourni pour la rubrique Manifeste d’application ClickOnce.

<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>

Voir aussi