MddBootstrapInitialize2 함수(mddbootstrap.h)

지정된 조건과 가장 일치하는 Windows 앱 SDK 프레임워크 패키지 버전을 옵션과 함께 사용하도록 호출 프로세스를 초기화합니다. 이 함수는 외부 위치로 패키지되거나 패키지되지 않은 데스크톱 앱에서 사용됩니다.

MddBootstrapInitialize2MddBootstrapInitialize보다 유용성 및 문제 해결 개선 사항을 제공합니다.

상수도 참조하세요.

구문

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의 애플리케이션 채널에 기록됩니다.

매개 변수가 호환되는 경우 이 함수를 여러 번 호출할 수 있습니다. 첫 번째 호출은 프레임워크 패키지를 resolve 작업을 수행합니다. 후속 호출은 매개 변수가 첫 번째 호출로 확인된 Framework 패키지와 호환되는 경우 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 사용 또는 를 사용하는 패키지되지 않은 앱에서 부트스트래퍼 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

추가 정보