首页 > 代码库 > AfxSocketInit()

AfxSocketInit()

作用:初始化Windows套接字

原型:BOOL AfxSocketInit(WSADATA* lpwsaData = NULL );

参数lpwsaData 指向WSADATA结构的指针。

     如果lpwsaData不等于NULL,那么调用::WSAStartup将填充WSADATA结构。

   这个函数同时也保证在应用程序结束之前调用::WSACleanup

返回值:如果函数成功执行,则返回非零值,否则为0。

说明

  

  1)在调用 AfxSocketInit() 之前,需要包含 afxsock.h 头文件

  2)AfxSocketInit()CWinApp::InitInstance 的重写函数中调用。

  3)一般来说 ,在调用任何winsock api之前,必须调用wsastartup()进行初始化,最后调用WSACleanup()做清理工作。

        MFC中的函数 AfxSocketInit() 包装了函数 WSAStartup(), 在支持WinSock的应用程序的初始化函数IninInstance()中调用AfxSocketInit()进行初始化, 程序则不必调用WSACleanUp(). 

  4)示例:

 

    if ( !AfxSocketInit() )
    {
      AfxMessageBox( _T("Failed to Initialize Sockets"), MB_OK | MB_ICONSTOP);
      return FALSE;
    }

 

AfxSocketInit()