桌面应用程序可以通过Visual Studio调用UWP API桥接桌面吗?

桌面应用程序可以通过Visual Studio调用UWP API桥接桌面吗?,uwp,windows-10,desktop-bridge,Uwp,Windows 10,Desktop Bridge,打电话来我有点困惑。该链接第一段的最后一句话指出: a WPF, Windows Forms, or Win32 app cannot call UWP API unless the app is packaged in an MSIX package. 使用VS2019我已将桌面桥接我的WPF应用程序(在VS2019中开发)。此过程创建了一个文件夹(在..\AppPackages文件夹下),其内容如下所示。双击此文件夹中的.appxbundle,我可以在我的Windows 10上成功地侧载该

打电话来我有点困惑。该链接第一段的最后一句话指出:

a WPF, Windows Forms, or Win32 app cannot call UWP API unless the app is packaged in an MSIX package.
使用
VS2019
我已将
桌面桥接
我的WPF应用程序(在
VS2019
中开发)。此过程创建了一个文件夹(在
..\AppPackages
文件夹下),其内容如下所示。双击此文件夹中的
.appxbundle
,我可以在我的
Windows 10
上成功地侧载该应用程序(它还提供了上载到Microsoft Store的选项):

问题:在满足一些其他要求后,此应用程序现在可以调用
uwpapi
?如上链接所述,应用程序需要打包在MSIX包中。我在下图中没有看到任何
MSIX
文件:


您可以从桌面网桥应用程序调用UWP API,无论它是打包为APPX还是MSIX

因此,如果API需要包标识、WPF和Windows 窗体或Win32应用程序无法调用它,除非该应用程序打包在 MSIX包

我猜打包在MSIX包中的意思是打包在MSIX或APPX包中。他们只是没有提到APPX,因为MSIX是新的格式


但是,请注意,某些UWP API(主要是与UI相关的API)只能从真正的UWP应用程序调用,而不能从打包的Win32或Wpf应用程序调用。

是。APPX和MSIX包之间没有重要区别,或者您是否使用桌面网桥、
Windows应用程序打包项目
或手动使用
MakeAppx.exe
打包了应用程序

如果目标版本设置为1809/2018年10月更新/构建17763/RS5或更高版本,则程序包文件扩展名为
.msix
(或
.msixbundle
,如果您正在创建)。否则它就是
.appx


APPX和MSIX软件包都已安装,并且可以完全相同的方式使用。

自1903年更新以来,这不再是事实。现在,由于XAML岛,所有UWP API都可以使用了。至少微软是这么告诉我们的。测试在我的日程上,但除了阅读和编译样本之外,到目前为止还没有完成。但这似乎是向前迈出的一大步。@MehrzadChehraz感谢您分享您的想法并澄清关于
…MSIX或APPX包…
@Lothar的可能混淆。我认为
1903更新
扩展了桌面应用程序的
XAML托管API
,至少不一定是桌面应用程序的所有UWP API还没有。