初始化呼叫程式,以使用最符合指定準則的 Windows 應用程式 SDK 架構套件版本。 此功能旨在供使用外部位置封裝或未封裝的傳統型應用程式使用。
MddBootstrapInitialize2 提供 MddBootstrapInitialize 的可用性和疑難排解改進。
另請參閱 常數。
語法
HRESULT MddBootstrapInitialize(
UINT32 majorMinorVersion,
PCWSTR versionTag,
PACKAGE_VERSION minVersion
);
參數
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取得,如需詳細資訊,請參閱 範例 。
傳回值
類型: HRESULT
如果函式成功,則會傳回 ERROR_SUCCESS。 否則,函式會傳回錯誤碼。
備註
任何錯誤都會記錄到 EventLog 的 應用程式 通道。
您可以多次呼叫此函式,前提是參數相容。 第一個呼叫會執行解析 架構 套件的工作;後續呼叫是 no-op 前提是參數與第一次呼叫所解析的 架構 套件相容。 如果後續呼叫的參數不相容,則 API 會失敗並傳回錯誤。
此函式會尋找符合指定準則的 Windows 應用程式 SDK 架構套件,並讓套件可供目前的進程使用。 如果多個套件符合條件,則此功能會選取最佳候選。
在呼叫任何其他 Windows 應用程式 SDK API 之前,必須在啟動時呼叫此函式,以確保啟動載入器元件可以正確初始化 Windows 應用程式 SDK,並將執行階段參考新增至架構套件。
此函式也會初始化動態相依性存留期管理員 (DDLM)。 DDLM 提供基礎結構,以防止作業系統 (OS) 在未封裝的應用程式使用時為 Windows 應用程式 SDK 架構套件提供服務。
另請參閱 將 Windows 應用程式 SDK 執行階段用於封裝為外部位置或未封裝的應用程式。
備註
您必須先初始化目前執行緒的 COM,才能呼叫此函式。
備註
若要讓此 API 在未封裝的應用程式中成功,必須在裝置上安裝 Windows 應用程式 SDK 套件 (請參閱 教學課程:在使用外部位置封裝的應用程式中使用啟動載入器 API 或使用 Windows 應用程式 SDK 的未封裝應用程式中的必要條件一節)。
Example
使用 C:
#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);
}
使用 C++:
#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");
}
需求
| Requirement | 價值觀 |
|---|---|
| 最低支援的用戶端 | Windows 10 版本 1809 (使用 Windows 應用程式 SDK 1.0 或更新版本) |
| Header | mddbootstrap.h |
| Library | Microsoft.WindowsAppRuntime.Bootstrap.lib 檔案 |
| DLL檔案 | Microsoft.WindowsAppRuntime.Bootstrap.dll |