.NetCore 3和UWP进程之间的双向通信

时间:2019-11-22 15:49:39

标签: c# .net visual-studio .net-core uwp

我们正在使用 .Net Core 3 开发应用程序。但是,我们的依赖项之一仅支持 UWP 。到目前为止,我们的计划是拥有一个“主要” .Net Core 3进程来处理我们的大部分逻辑,并拥有一个“侧面” UWP进程来连接到所需的库。

到目前为止已进行了调查:

  • IPC(匿名/命名管道),由于UWP应用程序在其自己的沙箱中运行,因此无法运行
  • App Services在理论上应该可以工作...但是即使如此,由于连接是由特定于UWP的FullTrustProcessLauncher启动的,他们似乎仍然依赖UWP应用作为“主机”。

总而言之,.Net Core 3进程与UWP进程之间是否存在某种双向关系,其中.Net Core 3是“父”进程?

1 个答案:

答案 0 :(得分:0)

  

我们正在使用.Net Core 3开发应用程序。但是,我们的一个依赖项仅支持UWP。到目前为止,我们的计划是拥有一个“主要” .Net Core 3进程来处理我们的大部分逻辑,并拥有一个“侧面” UWP进程来连接到所需的库。

通常,我们有两种用于在UWP平台内进行通信的方式。其中一个是App Services,在uwp与桌面应用程序通信之前,需要FullTrustProcessLauncher才能运行该应用程序。

另一个是Launch an app for results Windows 10中新的应用程序间通信API使Windows应用程序(和Windows Web应用程序)可以启动应用程序并交换数据和文件。这使您可以从多个应用程序构建混搭解决方案。使用这些新的API,现在可以无缝处理需要用户使用多个应用程序的复杂任务。例如,您的应用程序可以启动社交网络应用程序以选择联系人,或者启动结帐应用程序以完成付款过程。您可以从.Net Core 3进程中启动UWP应用程序,然后获得退款。