编译lib项目的时候,出现如下便宜错误:error C3646 : "inet_ntoa":unknown override specifier  winsock2.h
error C2091 : function returns function 
error C4430 : missing type specifier - int assumed. Note: C++ does not support default-int
error C2733 : second C linkage of overloaded function 'DECLARE_STDCALL_P' not allowed
error C2556 : 'int (_cdecl * DECLARE_STDCALL_P(hostent *))(const char *)' : overloaded functions only differ by return type 'int (_cdecl * DECLARE_STDCALL_P(hostent *))'我加了ws2_32.lib. 但是好象没有效果啊.请给个解决方案吧. 

解决方案 »

  1.   

    不关ws2_32.lib的事,是不是你的代码的问题。。没见过这种错误。。
      

  2.   

    你的winsock2.h与其他头文件有冲突了吧?
      

  3.   

    这个项目原来是linux下面编译的.请大家帮忙啊.解决问题.:-)
      

  4.   

    linux下面很多函数,定义等跟windows不一样的,所以windows上不支持,需要修改成符合windows格式的定义以及函数等
      

  5.   


    估计你inet_ntoa 等函数的使用的是linux版本的socket函数吧。改成winsok2.h 定义的那样就行了。
      

  6.   

    我编译的这个项目,有人在2005下面成功过,但是没有winsoch2.h的问题.是不是2005和2008winsock2.h有变化了?或者说是2008的编译器有改变?
      

  7.   

    是不是有加了afxsock.h的头文件,如果有的话,把他放到winsock.h的下面
      

  8.   

    Linux下的Socket编程和Windows下使用的函数是不相同的
      

  9.   

    问题解决,在.NET 2005下面编译成功.应该是2008编译器和库文件有了更新.谢谢诸位帮忙