Share via


MddBootstrapInitialize2-Funktion (mddbootstrap.h)

Initialisiert den aufrufenden Prozess, um die Version des Windows App SDK Frameworkpakets zu verwenden, die den angegebenen Kriterien mit Optionen am besten entspricht. Diese Funktion ist für die Verwendung von Desktop-Apps vorgesehen, die entweder mit externem Speicherort gepackt oder entpackt sind.

MddBootstrapInitialize2 bietet Verbesserungen bei der Benutzerfreundlichkeit und Problembehandlung gegenüber MddBootstrapInitialize.

Siehe auch Konstanten.

Syntax

HRESULT MddBootstrapInitialize2(
  UINT32                        majorMinorVersion,
  PCWSTR                        versionTag,
  PACKAGE_VERSION               minVersion,
  MddBootstrapInitializeOptions options
);

Parameter

majorMinorVersion

Typ: UINT32

Die Haupt- und Nebenversion des Windows App SDK zu ladenden Produkt (z. B. 1.2). Dies ist eine exakte Haupt- und Nebenversion, für die sie übereinstimmen. kein Minimum.

majorMinorVersion wird als 0xMMMMNNNNcodiert, wobei M = Haupt und N = Nebenwert (z. B. Version 1.2 als 0x00010002codiert ist).

versionTag

Typ: PCWSTR

Das Versionstag des Windows App SDK Frameworkpakets, das (falls vorhanden) geladen werden soll. Beispiel: "prerelease".

minVersion

Typ: PACKAGE_VERSION

Die Mindestversion des zu verwendenden Windows App SDK Runtimepakets (die auch majorMinorVersion entspricht).

Diese Version (z. B. 0.319.455) unterscheidet sich von der Windows App SDK Releaseversion (z. B. 1.0.2) und der Produktversion (z. B. 1.0).

Die werte der Windows App SDK Runtimeversion können aus dem C++-Header WindowsAppSDK-VersionInfo.habgerufen werden. Weitere Informationen finden Sie unter Beispiel.

options

Typ: MddBootstrapInitializeOptions

Optionen für die Bootstrapperinitialisierung.

Rückgabewert

Typ: HRESULT

Wenn die Funktion erfolgreich ist, gibt sie ERROR_SUCCESS zurück. Andernfalls gibt die Funktion einen Fehlercode zurück.

Hinweise

Alle Fehler werden im Anwendungskanal des EventLog protokolliert.

Sie können diese Funktion mehrmals aufrufen, vorausgesetzt, die Parameter sind kompatibel. Der erste Aufruf erledigt die Arbeit, um ein Framework-Paket aufzulösen. nachfolgende Aufrufe sind ein No-Op, vorausgesetzt, die Parameter sind mit dem Framework-Paket kompatibel, das durch den ersten Aufruf aufgelöst wurde. Wenn die Parameter für nachfolgende Aufrufe nicht kompatibel sind, schlägt die API fehl und gibt einen Fehler zurück.

Diese Funktion findet ein Windows App SDK Frameworkpaket, das die angegebenen Kriterien erfüllt, und stellt das Paket für die Verwendung durch den aktuellen Prozess zur Verfügung. Wenn mehrere Pakete die Kriterien erfüllen, wählt diese Funktion den besten Kandidaten aus.

Diese Funktion muss beim Start aufgerufen werden, bevor andere Windows App SDK-APIs aufgerufen werden, um sicherzustellen, dass die Bootstrapperkomponente die Windows App SDK ordnungsgemäß initialisieren und den Laufzeitverweis zum Frameworkpaket hinzufügen kann.

Diese Funktion initialisiert auch den DDLM -Manager (Dynamic Dependency Lifetime Manager). Der DDLM stellt eine Infrastruktur bereit, um zu verhindern, dass das Betriebssystem das Windows App SDK Frameworkpakets verwaltet, während es von einer unverpackten App verwendet wird.

Weitere Informationen finden Sie unter Verwenden der Windows App SDK Runtime für Apps, die mit einem externen Speicherort verpackt oder entpackt sind.

Hinweis

COM muss für den aktuellen Thread initialisiert werden, bevor Sie diese Funktion aufrufen.

Hinweis

Wenn Sie in Den Optionen nicht MddBootstrapInitializeOptions::MddBootstrapInitializeOptions_OnPackageIdentity_NOOP angeben, müssen die Windows App SDK-Pakete auf dem Gerät installiert werden (siehe Tutorial: Verwenden der Bootstrapper-API in einer App, die mit einem externen Speicherort gepackt oder entpackt ist. Windows App SDK).

Beispiel

#include <WindowsAppSDK-VersionInfo.h>
#include <MddBootstrap.h>
// ...

if (FAILED(MddBootstrapInitialize(Microsoft::WindowsAppSDK::Release::MajorMinor, Microsoft::WindowsAppSDK::Release::VersionTag, Microsoft::WindowsAppSDK::Runtime::UInt64))) {
    throw std::exception("Error in Bootstrap initialization");
}
#include <WindowsAppSDK-VersionInfo.h>
#include <MddBootstrap.h>
// ...

HRESULT hr = MddBootstrapInitialize(WINDOWSAPPSDK_RELEASE_MAJORMINOR, WINDOWSAPPSDK_RELEASE_VERSION_TAG_W, WINDOWSAPPSDK_RUNTIME_VERSION_UINT64);
if (FAILED(hr))
{
    wprintf(L"Error 0x%X in Bootstrap initialization\n", hr);
}

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Windows 10, Version 1809 (mit Windows App SDK 1.0 oder höher)
Kopfzeile mddbootstrap.h
Bibliothek Microsoft.WindowsAppRuntime.Bootstrap.lib
DLL Microsoft.WindowsAppRuntime.Bootstrap.dll

Weitere Informationen