我有一个用 C 编写的源代码,它使用了很多套接字发送者和侦听器调用,然后是几个操作函数。套接字是多播和单播。
很多读写操作都发生在它上面。我使用 cygwin 编译它,生成了一个 exe,它在所有 Windows 变体上都能正常工作。同时,当我从中生成一个 dll 并尝试通过 DLLimport 在 C# 中使用它时,它可以正常工作,直到它到达以下行
if((sendFd = socket(AF_INET,SOCK_DGRAM,0)) < 0)
Visual Studio 报错:
Attempt to read write protected memory, or other memory is corrupt.
没有所有套接字的东西或 fork() 它可以很好地执行基本操作,例如字符串操作等。