以下错误来自仅包含windows和winsock2的文件。winsock编译错误
C:\Users\ioil\Desktop\dm\bin>dmc sockit.c
typedef struct fd_set {
^
C:\Users\ioil\Desktop\dm\bin\..\include\win32\WINSOCK2.H(85) : Error: 'fd_set' is already defined
} fd_set;
^
C:\Users\ioil\Desktop\dm\bin\..\include\win32\WINSOCK2.H(88) : Error: identifier or '(declarator)' expected
struct timeval {
^
C:\Users\ioil\Desktop\dm\bin\..\include\win32\WINSOCK2.H(129) : Error: 'timeval' is already defined
};
^
C:\Users\ioil\Desktop\dm\bin\..\include\win32\WINSOCK2.H(132) : Error: identifier or '(declarator)' expected
struct hostent {
^
C:\Users\ioil\Desktop\dm\bin\..\include\win32\WINSOCK2.H(185) : Error: 'hostent' is already defined
Fatal error: too many errors
--- errorlevel 1
C:\Users\ioil\Desktop\dm\bin>
什么是已经尝试:放置WINSOCK.DLL文件在同一目录中的编译器和程序进行编译,将其放置在system32目录下,并与regsrv32命令注册表输入密码。真的不知道该从哪里出发,欣赏任何建议。 。 。
这不会是任何与您的DLL。你能发布你的代码吗? – Anthony 2010-06-17 05:46:56
尝试在windows.h之前包括winsock2.h – INS 2010-06-17 07:18:43
请勿移动winsock.dll。它是Windows的一部分。您可能会发现任何建议,建议您将解决方案的历史追溯到Windows 3.1的日子。对于这个问题,winsock.dll也是如此 - 我的意思是从Windows 3.1开始的日期;在32位平台上,您使用wsock32.dll(Winsock 1.1)或ws2_32.dll(Winsock 2.x)。正如Duracell所说,你的问题无论如何都是别的。 – 2010-06-17 19:34:12