Partager via


TryCreatePackageDependency, fonction (appmodel.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 TryCreatePackageDependency(
  PSID                                    user,
  PCWSTR                                  packageFamilyName,
  PACKAGE_VERSION                         minVersion,
  PackageDependencyProcessorArchitectures packageDependencyProcessorArchitectures,
  PackageDependencyLifetimeKind           lifetimeKind,
  PCWSTR                                  lifetimeArtifact,
  CreatePackageDependencyOptions          options,
  PWSTR                                   *packageDependencyId
);

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 être NULL si CreatePackageDependencyOptions_ScopeIsSystem est spécifié.

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

Lorsque cette méthode est retournée, contient l’adresse d’un pointeur vers une chaîne Unicode terminée par null qui spécifie l’ID de la nouvelle dépendance de package. L’appelant est chargé de libérer cette ressource une fois qu’elle n’est plus nécessaire en appelant HeapFree.

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 case activée de résolution de package est ignorée si CreatePackageDependencyOptions_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 11 (introduit dans 10.0.22000.0)
En-tête appmodel.h

Voir aussi

Utiliser l’API de dépendance dynamique pour référencer des packages MSIX au moment de l’exécution