YexuanXiao.CppWinRTPlus.Ext
0.9.0.3
Requires NuGet 2.5 or higher.
dotnet add package YexuanXiao.CppWinRTPlus.Ext --version 0.9.0.3
NuGet\Install-Package YexuanXiao.CppWinRTPlus.Ext -Version 0.9.0.3
<PackageReference Include="YexuanXiao.CppWinRTPlus.Ext" Version="0.9.0.3" />
<PackageVersion Include="YexuanXiao.CppWinRTPlus.Ext" Version="0.9.0.3" />
<PackageReference Include="YexuanXiao.CppWinRTPlus.Ext" />
paket add YexuanXiao.CppWinRTPlus.Ext --version 0.9.0.3
#r "nuget: YexuanXiao.CppWinRTPlus.Ext, 0.9.0.3"
#:package YexuanXiao.CppWinRTPlus.Ext@0.9.0.3
#addin nuget:?package=YexuanXiao.CppWinRTPlus.Ext&version=0.9.0.3
#tool nuget:?package=YexuanXiao.CppWinRTPlus.Ext&version=0.9.0.3
YexuanXiao.CppWinRTPlus.Ext
CppWinRTPlus.Ext provides a set of C++20 module interface extensions for C++/WinRT and the Windows App SDK.
Module winrtplus_coroutine
Provides coroutine helpers:
winrtplus::resume_foreground(dispatcher, priority)co_await dispatcher
Supported dispatchers:
Windows::System::DispatcherQueueMicrosoft::UI::Dispatching::DispatcherQueueWindows::UI::Core::CoreDispatcher
WinUI Interop Modules
The following module wrapper wraps the WinUI Interop header files from Microsoft.WindowsAppSDK.InteractiveExperiences as C++ modules.
All declarations remain in the original namespace.
winrtplus.Microsoft.UI.Interop
Wraps winrt/Microsoft.UI.Interop.h:
GetWindowIdFromWindow(HWND)GetWindowFromWindowId(WindowId)GetDisplayIdFromMonitor(HMONITOR)GetMonitorFromDisplayId(DisplayId)GetIconIdFromIcon(HICON)GetIconFromIconId(IconId)
winrtplus.Microsoft.UI.Composition.Interop
Wraps winrt/Microsoft.UI.Composition.Interop.h:
ICompositionDrawingSurfaceInteropICompositionDrawingSurfaceInterop2ICompositionGraphicsDeviceInteropICompositorInteropICompositorSwapChainInteropIVisualInteractionSourceInterop
winrtplus.Microsoft.UI.Designer.Interop
Wraps winrt/Microsoft.UI.Designer.Interop.h:
IDesignerOutputHostInterop
winrtplus.Microsoft.UI.Dispatching.Interop
Wraps winrt/Microsoft.UI.Dispatching.Interop.h:
ContentPreTranslateMessage(const MSG*)
winrtplus.Microsoft.UI.Input.InputCursor.Interop
Wraps winrt/Microsoft.UI.Input.InputCursor.Interop.h:
IInputCursorStaticsInterop
winrtplus.Microsoft.UI.Input.InputPreTranslateSource.Interop
Wraps winrt/Microsoft.UI.Input.InputPreTranslateSource.Interop.h:
IInputPreTranslateKeyboardSourceHandlerIInputPreTranslateKeyboardSourceInterop
Requirements
- Microsoft.Windows.CppWinRT 3.0.
- Microsoft.WindowsAppSDK.InteractiveExperiences 2.0 (optional).
- Enable C++/WinRT module generation with
CppWinRTBuildModule. - Enable STL module support with
BuildStlModules. - Define
WINRT_ENABLE_LEGACY_COMglobally.
If Microsoft.WindowsAppSDK.InteractiveExperiences is not installed, the relevant module will still exist, but will not contain any content.
Example project settings:
<PropertyGroup>
<CppWinRTBuildModule>true</CppWinRTBuildModule>
</PropertyGroup>
<ItemDefinitionGroup>
<ClCompile>
<BuildStlModules>true</BuildStlModules>
<PreprocessorDefinitions>WINRT_ENABLE_LEGACY_COM;%(PreprocessorDefinitions)</PreprocessorDefinitions>
</ClCompile>
</ItemDefinitionGroup>
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| native | native is compatible. |
-
- Microsoft.Windows.CppWinRT (> 3.0.0 && < 4.0.0)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.