共用方式為


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) 。

您可以從 C++ 標頭WindowsAppSDK-VersionInfo.h取得 Windows 應用程式 SDK 執行時間版本值,如需詳細資訊,請參閱範例

options

類型: MddBootstrapInitializeOptions

啟動載入器初始化的選項。

傳回值

類型: HRESULT

如果函式成功,它會傳回 ERROR_SUCCESS。 否則,函式會傳回錯誤碼。

備註

任何錯誤都會記錄到 EventLog 的應用程式 通道。

您可以多次呼叫此函式,前提是參數相容。 第一次呼叫會執行工作來解析 Framework 套件;後續呼叫是 no-op,前提是參數與第一次呼叫解析的 Framework 套件相容。 如果後續呼叫的參數不相容,API 會失敗並傳回錯誤。

此函式會尋找符合指定準則的 Windows 應用程式 SDK 架構套件,並使套件可供目前進程使用。 如果多個套件符合準則,此函式會選取最佳候選專案。

在啟動時必須呼叫此函式,才能呼叫任何其他 Windows 應用程式 SDK API,以確保啟動載入器元件可以正確地初始化 Windows 應用程式 SDK,並將運行時間參考新增至架構套件。

此函式也會初始化 動態相依性存留期管理員 (DDLM) 。 DDLM 提供基礎結構,以防止操作系統 (作業系統) 在未封裝的應用程式使用 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 版本 1809 (Windows 應用程式 SDK 1.0 或更新版本)
標頭 mddbootstrap.h
程式庫 Microsoft.WindowsAppRuntime.Bootstrap.lib
Dll Microsoft.WindowsAppRuntime.Bootstrap.dll

另請參閱