Freigeben über


MddTryCreatePackageDependency-Funktion (msixdynamicdependency.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 MddTryCreatePackageDependency(
  PSID                                       user,
  PCWSTR                                     packageFamilyName,
  PACKAGE_VERSION                            minVersion,
  MddPackageDependencyProcessorArchitectures packageDependencyProcessorArchitectures,
  MddPackageDependencyLifetimeKind           lifetimeKind,
  PCWSTR                                     lifetimeArtifact,
  MddCreatePackageDependencyOptions          options,
  PWSTR                                      *packageDependencyId
) noexcept;

Parameter

user

Typ: PSID

Der Benutzerbereich der Paketabhängigkeit. Bei NULL wird der Benutzerkontext des Aufrufers verwendet. Muss NULL sein, wenn ScopeIsSystem für den Optionsparameter 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 lifetimeKind-ParameterProcess lautet. Weitere Informationen finden Sie in den Anmerkungen.

options

Typ: CreatePackageDependencyOptions

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

packageDependencyId

Typ: PWSTR*

Die ID der neuen Paketabhängigkeit. Verwenden Sie die HeapAlloc-Funktion , um Arbeitsspeicher für diesen Parameter zuzuweisen, und verwenden Sie HeapFree , um die Zuordnung des Arbeitsspeichers zu beheben.

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 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 10, Version 1809 (mit Windows App SDK 1.0 oder höher)
Kopfzeile msixdynamicdependency.h