有一个包含两个项目的解决方案。第一个是可执行文件,第二个是加载到可执行项目中的静态库。我所需要的(想要的)代码必须放在静态库中。为了帮助WinRT/C++ API,有必要加载并显示使用XAML-layout描述的窗口。
有many examples当在Win32项目中,窗口将使用新的项目从UWP,但这不是我需要的。此外,XAML岛技术(因此被称为)需要最新版本的Windows10 (1903)。
我还找到了几个似乎可以满足我需要的示例,但是由于可执行线程的问题(据我所知),我的代码不能在静态库中执行:https://youtu.be/eHCDTsQrTX8
因此,我请求帮助:如何在Win32的静态库中加载和调用XAML窗口,而不破坏线程的完整性。谢谢。
发布于 2019-07-30 23:23:41
从Windows101903开始,进程要么是Win32进程,要么是UWP进程。Win32进程可以创建Win32窗口(HWND),但不能创建UWP窗口(CoreWindow);对于UWP进程,情况正好相反。因此,Win32进程无法直接创建CoreWindow。
您可以选择(1)创建一个Win32窗口并使用XAML岛在其中托管XAML,或(2)使用Desktop Bridge将Win32应用程序与UWP应用程序捆绑在一起,并将它们作为一个组合应用程序显示给最终用户;然后,您可以使用进程间通信让UWP应用程序告诉Win32应用程序创建HWND,或让Win32应用程序告诉UWP应用程序创建CoreWindow。
https://stackoverflow.com/questions/57108241
复制相似问题