Freigeben über


TryCreatePackageDependency-Funktion (appmodel.h)

Erstellt einen Installationszeitverweis für eine Frameworkpaketabhängigkeit für die aktuelle App unter Verwendung des angegebenen Paketfamiliennamens, der angegebenen Mindestversion und zusätzlicher Kriterien.

Syntax

HRESULT TryCreatePackageDependency(
  PSID                                    user,
  PCWSTR                                  packageFamilyName,
  PACKAGE_VERSION                         minVersion,
  PackageDependencyProcessorArchitectures packageDependencyProcessorArchitectures,
  PackageDependencyLifetimeKind           lifetimeKind,
  PCWSTR                                  lifetimeArtifact,
  CreatePackageDependencyOptions          options,
  PWSTR                                   *packageDependencyId
);

Parameter

user

Typ: PSID

Der Benutzerbereich der Paketabhängigkeit. Bei NULL wird der Benutzerkontext des Aufrufers verwendet. Muss NULL sein, wenn CreatePackageDependencyOptions_ScopeIsSystem angegeben ist.

packageFamilyName

Typ: PCWSTR

Der Paketfamilienname des Frameworkpakets, von dem abhängigkeiten werden soll.

minVersion

Typ: PACKAGE_VERSION

Die Mindestversion des Frameworkpakets, von der Abhängigkeiten berücksichtigt werden sollen.

packageDependencyProcessorArchitectures

Typ: PackageDependencyProcessorArchitectures

Die Prozessorarchitekturen der Paketabhängigkeit.

lifetimeKind

Typ: PackageDependencyLifetimeKind

Der Artefakt, der verwendet werden soll, um die Lebensdauer der Paketabhängigkeit zu definieren. Weitere Informationen finden Sie in den Anmerkungen.

lifetimeArtifact

Typ: PCWSTR

Der Name des Artefakts, mit dem die Lebensdauer der Paketabhängigkeit definiert wird. Muss NULL sein, wenn der parameter lifetimeKindPackageDependencyLifetimeKind_Process ist. Weitere Informationen finden Sie in den Anmerkungen.

options

Typ: CreatePackageDependencyOptions

Die Optionen, die beim Erstellen der Paketabhängigkeit angewendet werden sollen.

packageDependencyId

Typ: PWSTR*

Wenn diese Methode zurückgibt, enthält die Adresse eines Zeigers auf eine Unicode-Zeichenfolge mit Null-Beendigung, die die ID der neuen Paketabhängigkeit angibt. Der Aufrufer ist für die Freigabe dieser Ressource verantwortlich, sobald sie nicht mehr benötigt wird, indem er HeapFree aufruft.

Rückgabewert

Typ: HRESULT

Wenn die Funktion erfolgreich ist, gibt sie ERROR_SUCCESS zurück. Andernfalls gibt die Funktion einen Fehlercode zurück. Zu den möglichen Fehlercodes gehören die folgenden:

Rückgabecode Beschreibung
E_INVALIDARG Der packageDependencyId-Parameter ist bei der Eingabe NULL.

Hinweise

Rufen Sie im Installationsprogramm Ihrer App oder während der ersten Ausführung Ihrer App diese Methode auf, um eine Reihe von Kriterien für ein Frameworkpaket anzugeben, das Sie in Ihrer App verwenden möchten. Dadurch wird das Betriebssystem darüber informiert, dass Ihre App von einem Frameworkpaket abhängig ist, das die angegebenen Kriterien erfüllt. Sind mehrere Frameworkpakete installiert, die die Kriterien erfüllen, stellt Windows sicher, dass mindestens eines dieser Frameworkpakete installiert bleibt, bis der Installationszeitverweis gelöscht wird. Weitere Informationen finden Sie unter Verwenden der dynamischen Abhängigkeits-API, um zur Laufzeit auf MSIX-Pakete zu verweisen.

Diese Funktion schlägt fehl, wenn die angegebenen Abhängigkeitskriterien nicht in ein bestimmtes Paket aufgelöst werden können. Diese Paketauflösungsprüfung wird übersprungen, wenn CreatePackageDependencyOptions_DoNotVerifyDependencyResolution für den Optionsparameter angegeben ist. Dies ist nützlich für Installationsprogramme, die als andere Benutzerkontexte als den Zielbenutzer ausgeführt werden (z. B. Installationsprogramme, die als LocalSystem ausgeführt werden).

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Windows 11 (eingeführt in 10.0.22000.0)
Kopfzeile appmodel.h

Weitere Informationen

Verwenden der API für dynamische Abhängigkeiten zum Verweisen auf MSIX-Pakete zur Laufzeit