首页 > 代码库 > MFC下AfxSocketInit()正确初始化套接字

MFC下AfxSocketInit()正确初始化套接字

初始化Socket,这是mfc封装的类调用之前必须进行套接字动态链接库的装载,但是如果你错过了向导中的选项,而是自己手动添加,如果不了解情况,导致程序运行失败。
//Socket功能初始化
 if (!AfxSocketInit())
 {
  AfxMessageBox(IDP_SOCKETS_INIT_FAILED);
  return FALSE
BOOL CMyApp::InitInstance()
{
。。。。。。。。。。。。。
。。。。。。。。。。。。。。。。。。;
 }
正确的初始化应该是这样:
BOOL CMyApp::InitInstance()
{
//初始化必须放在开头
 if (!AfxSocketInit())
 {
  AfxMessageBox(IDP_SOCKETS_INIT_FAILED);
  return FALSE;
 }
 AfxEnableControlContainer();
。。。。。。。。。。。。。。。。。
}
然后在头文件 stdafx.h中加入 #include<afxsock.h>
                                          ////////////////////////////、MFC下Socket的端口扫描
 // TODO: Add your control notification handler code here
  CSocket* pSocket;
pSocket=new CSocket;
 if(!pSocket->Create())
 {
  delete pSocket;
  pSocket=NULL;
  return ;
 }
 //
 if(!pSocket->Connect("127.0.0.1",20))
 {
  delete pSocket;
  pSocket=NULL;
  return ;
 }
 else
 {
  MessageBox("主机端口80已经打开");
 }
 //
pSocket->Close();
 delete pSocket;
 return ;
}

MFC下AfxSocketInit()正确初始化套接字