我正在尝试通过websockets使我的商店应用与桌面应用进行通信。 我知道我们可以将metro应用程序作为客户端并以WinRT方式进行通信。 对于桌面服务器部分,我打算编写一个包含服务器代码的dll,并接收发送的城域文本。
有人可以告诉我这是否可行以及如何在dll中编写服务器代码,如果是这样,我们是否应该在服务器端使用winhttp作为wbesockets?
答案 0 :(得分:0)
Windows应用商店(WInRT)应用程序正在沙箱中执行,它将它们与本地计算机上的其他应用程序(localhost
)进行网络通信隔离开来。话虽这么说,可以使用CheckNetIsolation.exe
禁用此保护。 Visual Studio会自动执行相同的调试,以便您调用,例如开发期间本地计算机上的Web服务。
桌面方面;与Web套接字客户端通信,您可以利用WinHTTP。 MSDN上有一个有效的例子。
请注意,与localhost
通信的任何应用程序都不会获得Windows应用商店认证,并且需要几个额外的步骤来安装它:
CheckNetIsolation.exe
环回免除功能。如果可以避免,我绝对建议您不要尝试直接与Windows Store应用程序中的桌面应用程序通信。