【问题标题】:Can a Windows 8 Store App communicate with a Windows 7 Desktop App through UDP/TCP sockets?Windows 8 应用商店应用程序能否通过 UDP/TCP 套接字与 Windows 7 桌面应用程序通信?
【发布时间】:2013-03-16 10:35:29
【问题描述】:

详细说明一下情况:我们有两个应用程序,为了简单起见,我们称它们为 A 和 B。两者都在 Windows 7 上开发和运行,它们可以使用 UDP/TCP 很好地连接和通信。现在我们要将 App B 转换为 Windows 8 以利用 Metro UI。我们是否需要对 App A 中的网络代码进行大量更改?它甚至可以继续在 Windows 7 上运行并与在 Windows 8 上运行的 App B 通信吗?据我了解,Win8 处理套接字的方式与以前的 Windows 略有不同,因此我对此表示怀疑。

【问题讨论】:

  • 我看不出这有什么不可行的原因。

标签: windows sockets networking websocket


【解决方案1】:

换个角度来看,通信在技术上是可行的,但explicitly forbidden(假设您想在 Windows 应用商店中发布您的应用):

3 Windows 应用商店应用的行为可预测

3.1 您必须仅使用 Windows 运行时 API 来实现您的 Windows 应用商店应用的功能

我们在 Windows 应用商店应用 API 参考中描述了这些 API。您的应用可能仅依赖于 Windows 应用商店中列出的软件。

Windows 应用商店应用不得通过本地机制(包括文件和注册表项)与本地桌面应用程序或服务通信。

如果这是您为企业使用而侧载的东西,那么请忽略此答案。

【讨论】:

  • 我们不打算发布到 Windows 应用商店,但无论如何感谢您提供的信息。
【解决方案2】:

我们是否需要对 App A 中的网络代码进行大量更改?

不,您不需要更改 A 中的任何内容。

它甚至可以继续在 Windows 7 上运行,并与在 Windows 8 上运行的 App B 通信吗?

当然。

据我了解,Win8 处理套接字的方式与以前的 Windows 略有不同。

在 IO 完成端口方面,Windows 7 和 Windows 8 之间存在 some differences,但不,我认为这不会有问题。

【讨论】:

    【解决方案3】:

    没有理由不这样做。

    我已经拥有使用套接字与服务器通信的 Windows 8 Metro 应用程序,出于测试目的,我还在 Windows 8 机器上运行该服务器,同时让 Metro 应用程序连接到 127.0.0.1。它完美无瑕。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-09-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-11-28
      • 1970-01-01
      相关资源
      最近更新 更多