我正在开发由三个分离的应用程序组成的应用程序。 (两个背景,一个带有GUI)在运行Windows 10 IOT Core的Raspberry PI 3B +上运行。原理图很简单
通讯器->数据转换->可视化
我的问题是,没有用户活动,我无法有效地将数据从一个应用程序发送到另一个应用程序。 Windows数据传输解决方案需要用户采取措施或启动其他应用。 (https://docs.microsoft.com/en-us/windows/uwp/app-to-app/)
数据是将JSON序列化为字符串的短对象。
我尝试了TCP协议,但是在一个设备跨应用程序上不允许使用它(为什么?我不理解)。
现在,我通过在“图片”文件夹中创建文本文件来执行此操作,下一个应用程序将读取该文件并删除该文件。这种方法很慢,经常崩溃。
还有其他解决方案吗?最好的选择是流或某种快速的文件传输。
感谢任何想法。
解决方案:https://docs.microsoft.com/en-us/windows/uwp/launch-resume/how-to-create-and-consume-an-app-service
这并不完美,因为在后台任务中,您将执行另一个后台任务。但是效果很好。
答案 0 :(得分:1)
看看这个:https://docs.microsoft.com/en-us/windows/uwp/launch-resume/how-to-create-and-consume-an-app-service
它可以让您在同一设备上将数据发送到其他应用程序的后台任务
答案 1 :(得分:1)
这是IMO最干净,最直接的示例,即从UWP到后台桌面应用的双向通信中使用服务,在解决方案的Win32部分中,“ Windows”引用是错误的,请删除并按照浏览选项进行尝试,通常在 c>程序文件x86> Windows Kits> UnionMetadata> yourversion> windows.winmd 中,该示例也很旧,因此您可能想更改NET和Min Windows的默认版本。
这个Windows.winmd文件是什么,它只是一个元数据文件,允许经典的win32桌面应用程序理解和读取UWP使用的较新的Apis。
该应用程序还使用UWP的runfulltrust功能,这是触发win32应用程序的一种可靠方法,可以检查一些文章并查看清单以了解是否有兴趣的模式。