首页 文章

通过c#UWP应用程序中的Win运行时组件的c dll适用于Arm,但不适用于x86 / x64

提问于
浏览
-1

我需要从Windows10的C#UWP应用程序调用win32 socket apis(在桌面和移动设备上运行相同的应用程序)因为win10 sock库有一些问题环境 - VS2015 Update 3 .

我创建的项目结构为explaind here . 所以呼叫如下..

C#UWP app - > C WindowsRuntimeComponent - > Universal dll(c)(来自c win32 dll的代码)

在DLL中我只是创建一个UDP服务器并在recvfrom等待udp数据包(.....)

这在我在Win 10移动设备(ARM)上运行应用程序时工作正常,但在选择的体系结构是x86或x64时不起作用 . 当bind()成功时,我不会在recvfrom()中重新获取任何udp数据包forx64 / x86 .

相同的代码如何适用于ARM而不适用于x64 / x86 . 可能是什么问题 .

2 回答

  • 0

    如果套接字的两端都在同一台计算机上,则Windows应用商店应用程序无法侦听套接字或从UDP连接接收数据 . 在不同的计算机上运行服务器和应用程序 .

  • 0

    等待安装在clinet机器上的安全补丁(Win 7 OS)是服务器在recvfrom()调用中等待的原因...

    安装补丁并重新启动系统后,它运行正常 .

相关问题