Partager via


MddTryCreatePackageDependency, fonction (msixdynamicdependency.h)

Crée une référence au moment de l’installation pour une dépendance de package d’infrastructure pour l’application actuelle, à l’aide du nom de famille de packages, de la version minimale et des critères supplémentaires spécifiés.

Syntaxe

HRESULT MddTryCreatePackageDependency(
  PSID                                       user,
  PCWSTR                                     packageFamilyName,
  PACKAGE_VERSION                            minVersion,
  MddPackageDependencyProcessorArchitectures packageDependencyProcessorArchitectures,
  MddPackageDependencyLifetimeKind           lifetimeKind,
  PCWSTR                                     lifetimeArtifact,
  MddCreatePackageDependencyOptions          options,
  PWSTR                                      *packageDependencyId
) noexcept;

Paramètres

user

Type : PSID

Étendue utilisateur de la dépendance de package. Si la valeur est NULL, le contexte utilisateur de l’appelant est utilisé. Doit avoir la valeur NULL si ScopeIsSystem est spécifié pour le paramètre options .

packageFamilyName

Type : PCWSTR

Nom de la famille de packages du package d’infrastructure sur lequel la dépendance doit être prise.

minVersion

Type : PACKAGE_VERSION

Version minimale du package d’infrastructure sur laquelle la dépendance doit être prise.

packageDependencyProcessorArchitectures

Type : PackageDependencyProcessorArchitectures

Architectures de processeur de la dépendance de package.

lifetimeKind

Type : PackageDependencyLifetimeKind

Type d’artefact à utiliser pour définir la durée de vie de la dépendance de package. Pour plus d’informations, consultez les remarques.

lifetimeArtifact

Type : PCWSTR

Nom de l’artefact utilisé pour définir la durée de vie de la dépendance de package. Doit être NULL si le paramètre lifetimeKind est Process. Pour plus d’informations, consultez les remarques.

options

Type : CreatePackageDependencyOptions

Options à appliquer lors de la création de la dépendance de package.

packageDependencyId

Type : PWSTR*

ID de la nouvelle dépendance de package. Utilisez la fonction HeapAlloc pour allouer de la mémoire à ce paramètre et utilisez HeapFree pour libérer la mémoire.

Valeur retournée

Type : HRESULT

Si la fonction réussit, elle retourne ERROR_SUCCESS. Sinon, la fonction retourne un code d’erreur. Les codes d’erreur possibles sont les suivants.

Code de retour Description
E_INVALIDARG Le paramètre packageDependencyId a la valeur NULL lors de l’entrée.

Remarques

Dans le programme d’installation de votre application ou lors de la première exécution de votre application, appelez cette méthode pour spécifier un ensemble de critères pour un package d’infrastructure que vous souhaitez utiliser dans votre application. Cet appel permet d’indiquer au système d’exploitation que votre application comporte une dépendance vis-à-vis d’un package d’infrastructure qui répond aux critères spécifiés. Si un ou plusieurs packages d’infrastructure répondant aux critères sont installés, Windows veille à ce qu’au moins un de ces packages reste installé jusqu’à la suppression de la référence au moment de l’installation. Pour plus d’informations, consultez Utiliser l’API de dépendance dynamique pour référencer des packages MSIX au moment de l’exécution.

Cette fonction échoue si les critères de dépendance spécifiés ne peuvent pas être résolus en un package spécifique. Cette résolution de package case activée est ignorée si DoNotVerifyDependencyResolution est spécifié pour le paramètre options. Cela est utile pour les programmes d’installation s’exécutant en tant que contextes utilisateur autres que l’utilisateur cible (par exemple, les programmes d’installation s’exécutant en tant que LocalSystem).

Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows 10, version 1809 (avec SDK d'application Windows 1.0 ou version ultérieure)
En-tête msixdynamicdependency.h