Wpf에서 msix 버전 가지고 오기

WPF로 MSIX 패키징을 사용하고 있습니다.
MSIX 버전을 가지고 오기 위해서는 WinRT 기능을 사용해야 한다고 합니다.
WPF에서 WinRT 기능을 사용하기 위해서는 Microsoft.Windows.SDK.Contracts를 사용해야 한다고 합니다. Stackoverflow

하지만 제 Visual Studio 2019에서 인식을 못하는건지 컴파일이 빨간줄이 떠서 WPF 버그겠거니 하고 일단 빌드를 했더니,

NETSDK1135 SupportedOSPlatformVersion 10.0.19041.0은 TargetPlatformVersion 7.0보다 높을 수 없습니다. 라는 에러메세지가 발생하여, 지금 링크한 게시글처럼 Project 파일에서 TargetFramework를 Microsoft.SDK.Contracts가 지원하는 버전 으로 수정하고, Microsoft.Windows.CsWinRT 라는 모듈도 설치했습니다.

하지만 여전히 인식을 못하네요.

아래는 WPF에서 WinRT 사용에 관하여 찾아본 추가 문서들입니다.

WinRT라는게 좀 찾아보니 그 옛날 Win32 API 같은 네이티브 기능을 Windows10에 맞게 현대적으로 다시 만든 모듈 같은 느낌이네요. WinUI 3.0도 2.x 버전 대에서는 Win32 API를 포함하지 않았다가 3.0 때 포함하는거 같구요…아직 뭐가 뭔지 잘 모르겠네요.

WinRT를 찾아보면 계속 UWP가 연관 키워드로 나오던데 WPF에서 UWP API를 사용하도록 하는게 WinRT라고 보면 될까요?

WPF에서 WinRT 사용해보신 분의 노하우를 기다립니다.

좋아요 1