MFC之csocket

1、一般使用流程(阻塞模式)

1)添加頭文件

#include "afxsock.h"

2)初始化

一般在InitInstance()的開始部分增加:

 if (!AfxSocketInit())
 {
  AfxMessageBox("Windows 通信端口初始化失敗");
  return FALSE;
 }

3)定義對象

CSocket m_socketRec;

4)發送端:

 if (m_socketListenS.Create(::atoi(sendPort)))
 {
  GetDlgItem(IDC_BUTTON1)->EnableWindow(FALSE);
  
  m_socketListenS.Bind(::atoi(sendPort),sendIp);
  if (m_socketListenS.Listen())
  {
   m_socketListenS.Accept(m_socketSend);
   m_socketListenS.Close();
   static int nIdex = 100;
   CString str;
   str.Format("%010d",nIdex);
   m_socketSend.Send(str,10,0);
         m_edit_send.SetWindowText(str);
   //SetTimer(1,3000,NULL);
  }
 }
 else
 {
  AfxMessageBox("socket創建失敗");
  return;
 }

5)接收端

 if (m_socketRec.Create())
 {
  m_socketRec.Connect(recIp,atoi(recPort));
  CString str;
  m_socketRec.Receive((LPVOID)str.GetBuffer(10),10,0);
     m_edit_rec.SetWindowText(str);
  //SetTimer(2,1000,NULL);
 }

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章