次の方法で共有


MddBootstrapInitialize2 関数 (mddbootstrap.h)

指定した条件に最も一致する Windows App SDK フレームワーク パッケージのバージョンをオプションと共に使用するように呼び出し元プロセスを初期化します。 この関数は、外部の場所と共にパッケージ化されているか、パッケージ化されていないデスクトップ アプリで使用されることを目的としています。

MddBootstrapInitialize2 は、MddBootstrapInitializeよりも使いやすさとトラブルシューティングの向上を提供します。

定数 も参照してください。

構文

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

パラメーター

majorMinorVersion

型: UINT32

Windows App SDK のメジャー バージョンとマイナー バージョンは、読み込む 製品です (例: 1.2)。 これは、一致するメジャーバージョンとマイナーバージョン 正確な です。最小値ではありません。

majorMinorVersion0xMMMMNNNNとしてエンコードされます。ここで、M = Major および N = Minor (たとえば、バージョン 1.2 は 0x00010002としてエンコードされます)。

versionTag

型: PCWSTR

読み込む Windows App SDK フレームワーク パッケージのバージョン タグ (存在する場合)。 たとえば、"prerelease" のようにします。

minVersion

型: PACKAGE_VERSION

使用する Windows App SDK ランタイム パッケージの最小バージョン (majorMinorVersion にも一致します)。

このバージョン (たとえば、0.319.455) は、Windows App SDK リリース バージョン (1.0.2 など) および 製品 バージョン (1.0 など) とは異なります。

Windows App SDK ランタイム バージョンの値は、C++ ヘッダー WindowsAppSDK-VersionInfo.hから取得できます。詳細については、例の を参照してください。

options

型: mddBootstrapInitializeOptions

ブートストラップ初期化のオプション。

戻り値

型: HRESULT

関数が成功した場合は、ERROR_SUCCESSを返します。 それ以外の場合、関数はエラー コードを返します。

注釈

エラーは、EventLog の アプリケーション チャネルに記録されます。

パラメーターに互換性がある場合は、この関数を複数回呼び出すことができます。 最初の呼び出しでは、Framework パッケージを解決する作業が行われます。以降の呼び出しは、パラメーターが最初の呼び出しによって解決された Framework パッケージと互換性がある場合に no-op です。 後続の呼び出しのパラメーターに互換性がない場合、API は失敗し、エラーを返します。

この関数は、指定された条件を満たす Windows App SDK フレームワーク パッケージを検索し、パッケージを現在のプロセスで使用できるようにします。 複数のパッケージが条件を満たしている場合、この関数は最適な候補を選択します。

ブートストラップ コンポーネントが Windows App SDK を適切に初期化し、ランタイム参照をフレームワーク パッケージに追加できるようにするには、他の Windows App SDK API を呼び出す前に、起動時にこの関数を呼び出す必要があります。

この関数は、動的依存関係有効期間マネージャー (DDLM)も初期化します。 DDLM は、パッケージ化されていないアプリで使用されている間に、オペレーティング システム (OS) が Windows App SDK フレームワーク パッケージにサービスを提供できないようにするためのインフラストラクチャを提供します。

外部の場所またはパッケージ化されていないでパッケージ化されたアプリに Windows App SDK ランタイムを使用する方法に関するページも参照してください。

この関数を呼び出す前に、COM を現在のスレッド用に初期化する必要があります。

オプション MddBootstrapInitializeOptions::MddBootstrapInitializeOptions_OnPackageIdentity_NOOP 指定しない場合は、外部の場所でパッケージ化されているか、パッケージ化されていないアプリでこの API が成功します。 Windows App SDK パッケージをデバイスにインストールする必要があります (「チュートリアル: 外部の場所でパッケージ化されたアプリまたは Windows App SDKを使用するパッケージ化されていないアプリでブートストラップ API を使用する」を参照してください)。

#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);
}

必要条件

要件 価値
サポートされる最小クライアント Windows 10 バージョン 1809 (Windows App SDK 1.0 以降を使用)
ヘッダー mddbootstrap.h
図書館 Microsoft.WindowsAppRuntime.Bootstrap.lib
DLL Microsoft.WindowsAppRuntime.Bootstrap.dll

こちらもご覧ください