我记得以前看文章,好像说要WSAStartUp()
可是,我的程序中并没有进行初始化也能运行,
哪为告诉我为什么?
多谢!

解决方案 »

  1.   

    你应该用了AfxSocketInit函数吧,这也是初始化socket的
      

  2.   

    任何windows网络应用程序在使用windows socket API时,首先必须调用函数WSAStartup进行Sockets环境的初始化,然后才能使用其它Socket API函数.int WSAStartup(
      WORD wVersionRequested,   //windows socket版本
      LPWSADATA  lpWSAData     //用于存储执行Sockets API 所需的信息
    );
      

  3.   

    老大们,我真的没有调用,我用find in files搜索也找不到afxsockinit()和WSAStartup
    我的os是Win2000 Server,
    我connect,send , recv都是正常的
    我是和某个模拟telnet的软件进行通信
    (我以前别的程序没有WSAStartup确实不行,真的很奇怪!)
      

  4.   

    不可能吧,太夸张了
    你创建工程时是否选择了socket支持?
      

  5.   

    好象不用明着调用,不过使用过程中会出现问题:有时send无效
      

  6.   

    好象不用明着调用,不过使用过程中会出现问题,有时send无效:
    当你拨号上网时,这时运行你的程序,应该没问题,而当断开网络再拨号再send时,send怎么样都发不了信息,不知为什么?
      

  7.   

    如果是直接关闭modem电源,有时候和直接拔掉网线有点类似(特别是modem+hub的情况),socket是不知道已经断线了。所以send和recv会没有任何反应。我还是觉得你一定在某些地方调用了afxsockinit或WSAStartup *^_^*
      

  8.   

    把CODE贴出来,大家看了,不就都明白了:)