C DLL通过C#UWP应用程序中的Win运行时组件适用于ARM,但对于X86/X64不适用于

c++ dll via Win runtime component in c# UWP app works for Arm but not for x86/x64

本文关键字:适用于 ARM X86 不适用 X64 组件 C#UWP 通过 DLL 应用程序 运行时      更新时间:2023-10-16

我需要从C#UWP应用程序中调用Windows 10(在台式机和移动设备上运行的同一应用程序(,因为Win10 Sock Library有一些问题环境-VS2015更新3。

我创建了项目结构,如这里所述。因此呼叫如下..

c#uwp app-> c windowsruntimecomponent->通用dll(c ((C Win32 dll中的代码(

在dll中,我只需创建一个UDP服务器,然后在recvfrom(.....(

上等待UDP数据包

当我在WIN 10移动设备(ARM(上运行该应用时,这可以正常工作,但是当选择的架构为X86或X64时不起作用。我在recvfrom((中启动任何UDP数据包FORX64/x86,而Bind((成功。

相同的代码如何适用于ARM,而不是X64/X86。可能是什么。

Windows Store应用程序如果插座的两端在同一台计算机上,则无法在插座上收听或从UDP连接接收数据。在单独的机器上运行服务器和您的应用程序。

一个安全补丁正在等待在Clinet Machine上安装(Win 7 OS(是服务器在RecVfrom((呼叫中等待的服务器的原因...

安装了补丁并重新启动系统后,效果很好。

面对相同的问题。RECVFROM函数尚未从本地网络接收到数据包。通过将PrivateNetworkClientserver功能添加到应用程序清单(https://learn.microsoft.com/en-us/windows/uwdows/uwplect/package/package/app-capaging/app-capaging/pacp-capaging/app-capibality-declarations(。