一、MFC网络编程

a)CAsyncSocket用于异步非阻塞类,用UDP通信;

b)CAsyncSocket的子类(派生类);Csocket同步阻塞类,用于TCP通信;

c)通信前,必须调用AfxSocketInit()进行初始化

二、CAsyncSocket类UDP通信

2.1 服务器端通信步骤:

a)在.h文件中创建CAsyncSocket类对象;

b)创建套接字CAsyncSocket::Create();

c)发送数据CAsyncSocket::SentTo();

d)关闭套接字CAsyncSocket::Close();

2.2 MFC界面

MFC- 网络编程

2.3 代码实例:

a)01_UDPServerDlg.h中添加CAsyncSocket对象

 1 // 01_UDPServerDlg.h : 头文件
 2 //
 3 
 4 #pragma once
 5 #include "afxcmn.h"
 6 #include "afxwin.h"
 7 
 8 
 9 // CMy01_UDPServerDlg 对话框
10 class CMy01_UDPServerDlg : public CDialogEx
11 {
12 // 构造
13 public:
14     CMy01_UDPServerDlg(CWnd* pParent = NULL);    // 标准构造函数
15 
16 // 对话框数据
17     enum { IDD = IDD_MY01_UDPSERVER_DIALOG };
18 
19     protected:
20     virtual void DoDataExchange(CDataExchange* pDX);    // DDX/DDV 支持
21 
22 
23 // 实现
24 protected:
25     HICON m_hIcon;
26 
27     // 生成的消息映射函数
28     virtual BOOL OnInitDialog();
29     afx_msg void OnSysCommand(UINT nID, LPARAM lParam);
30     afx_msg void OnPaint();
31     afx_msg HCURSOR OnQueryDragIcon();
32     DECLARE_MESSAGE_MAP()
33 private:
34     //自定义添加代码,MFC界面对应控件变量
35     UINT peerPort;
36     UINT localPort;
37     CIPAddressCtrl addrCtrl;
38     CString sendBuf;
39     int sendLen;
40     CButton startButton;
41     CButton stopButton;
42 
43     //套接字对象
44     CAsyncSocket socket;
45 public:
46     afx_msg void OnBnClickedButton1();
47     afx_msg void OnTimer(UINT_PTR nIDEvent);
48     afx_msg void OnBnClickedButton2();
49 };
View Code

相关文章:

  • 2022-02-17
  • 2022-12-23
  • 2021-10-26
  • 2021-06-14
  • 2022-01-24
  • 2022-12-23
  • 2022-12-23
猜你喜欢
  • 2021-08-25
  • 2021-08-09
  • 2022-01-21
  • 2022-12-23
  • 2022-01-12
  • 2021-11-28
相关资源
相似解决方案