MddBootstrapInitialize2 関数 (mddbootstrap.h)

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

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

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

構文

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

パラメーター

majorMinorVersion

種類: UINT32

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

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

versionTag

種類: PCWSTR

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

minVersion

種類: PACKAGE_VERSION

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

このバージョン (0.319.455 など) は、Windows アプリ SDK リリース バージョン (1.0.2 など) と製品バージョン (1.0 など) とは異なります。

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

options

種類: MddBootstrapInitializeOptions

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

戻り値

種類: HRESULT

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

注釈

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

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

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

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

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

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

注意

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

注意

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

#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 Version 1809 (Windows アプリ SDK 1.0 以降)
Header mddbootstrap.h
Library Microsoft.WindowsAppRuntime.Bootstrap.lib
[DLL] Microsoft.WindowsAppRuntime.Bootstrap.dll

こちらもご覧ください