Partager via


TryCreatePackageDependency, fonction (appmodel.h)

Crée une référence au moment de l’installation pour une dépendance de package framework 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 prendre la dépendance.

minVersion

Type : PACKAGE_VERSION

Version minimale du package d’infrastructure sur laquelle prendre la dépendance.

packageDependencyProcessorArchitectures

Type : PackageDependencyProcessorArchitectures

Architectures du 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 Descriptif
E_INVALIDARG Le paramètre packageDependencyId est 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. Cela informe le système d’exploitation que votre application a une dépendance sur un package d’infrastructure qui répond aux critères spécifiés. Si un ou plusieurs packages d’infrastructure sont installés qui répondent aux critères, Windows s’assure qu’au moins l’un de ces packages d’infrastructure reste installé jusqu’à ce que la référence au moment de l’installation soit supprimée. 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 vérification de résolution de package est ignorée si CreatePackageDependencyOptions_DoNotVerifyDependencyResolution est spécifiée pour le paramètre d’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).

Spécifications

Requirement Valeur
Client minimum requis Windows 11 (introduit dans la version 10.0.22000.0)
Header appmodel.h
Library OneCoreUAP.Lib

Voir aussi

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