! 为了简化事情,我将把Windows应用商店应用程序的缘故(也被称为地铁或现代UI)的“应用程序”和普通桌面应用程序的“应用程序”!
我相信这仍然是谁已经建立了市场上的应用程序有关的应用程序开发的开发者最清楚但重要的问题之一:如何管理Windows 8系统上的应用程序和应用程序之间的通信? (请让我们无法开始原则争论 - 那里是哪里的,这是真的需要这么多的用例!)
我基本上都看过的文章hundrets在过去的几天里,但仍然是如何进行正确的从第一次做,目前还不清楚。 主要是因为我发现了几个相互矛盾的信息。 在这里我的问题,我想从最终的Windows 8的可能性的角度来重新解决这个问题。
鉴于情况:
- 同一个系统上的应用程序和应用程序运行
- 1:1的通信
- 应用程序是本地(Delphi写的)
- 管理员或者如果需要的话,甚至系统权限可用于应用程序
- 在用例90%以上的应用程序请求对由应用程序执行的动作,并接收一些文本结果。 该应用程序不应该离开,也没有冻结这个!
- 在10%的应用程序执行的操作(通过某些事件触发),并通知应用程序 - 结果可能是:显示在瓷砖上,或在已经运行和活跃的应用程序,或者如果可能的运行应用程序的某些信息/将它带到前景。
现在的“简单”的问题是,如何实现这一目标?
- 是本地的Web服务器的访问实际上现在允许吗? (我相信这不是很长一段时间,但现在是因为最终版本)
- WCF? ( - >显然MS不建议再 )
- 本地REST / SOAP服务器上的HTTP请求?
- WinRT的联合API ? (与RSS /原子响应的web服务接入的另一种形式)
- WebSockets的 (如MessageWebSocket )?
- TCP / IP通信的一些其他形式?
- 共享文本文件的输入和输出(实际上只是在想这伤害,但至少这是一个可能性MS不能阻止...)
- 命名管道是不允许的,对不对?
这里有一些关于这个论题的讨论上SO,但他们大多都达不到最新的了,因为MS发布的Windows 8的最终版本,而不是混合了新老信息我想之前发生了很大变化找到一个明确的和当前的回答这个问题,我和所有其他Windows应用程序和应用程序开发人员。 谢谢!