首页 > 其他 > 详细

网络编程socket套接字及其使用(二)

时间:2019-10-28 09:45:51      阅读:80      评论:0      收藏:0      [点我收藏+]

这里给出一个最简单的网络编程入门实例----消息发送机制(基于Visual C++)。

当用户在对话框中输入字符后,回车,则将输入字符显示在应用程序中,步骤如下:

  1. 新建---项目----MFC App---Single document----Windows Scokets---Finish.
  2. 在IDD_ABOUTBOX对话框中添加编辑对话框控件,并为该控件添加CString类型成员变量---m_edit;
  3. Insert----New Class添加Socket类,名称mysock基于CSocket类.
  4. 为mysock类添加消息成员函数OnReceive.技术分享图片
  5. 为该函数添加如下代码:
  6.  1 /////////////////////////////////////////////////////////////////////////////
     2 // mysock member functions
     3 char aa[100];
     4 CString mm;
     5 CDC* pdc;
     6 void mysock::OnReceive(int nErrorCode) 
     7 {
     8     static unsigned int Line=0;
     9     // TODO: Add your specialized code here and/or call the base class
    10     CSocket::Receive((void*)aa,100,0);
    11     mm=aa;
    12     pdc->TextOut(0,Line,mm);
    13     Line+=20;
    14     CSocket::OnReceive(nErrorCode);
    15 }

     

  7. 为CAboutDlg类添加消息成员函数OnKillFocus,添加如下代码:
  8.  1 /////////////////////////////////////////////////////////////////////////////
     2 // CQQApp message handlers
     3 
     4 extern CString bb;
     5 void CAboutDlg::OnKillFocus(CWnd* pNewWnd) 
     6 {
     7     CDialog::OnKillFocus(pNewWnd);
     8     
     9     // TODO: Add your message handler code here
    10     bb=m_edit;
    11 }

     

  9. 为CxxView添加消息成员函数:OnCreate,和OnSetFocus,分别为这两函数添加如下代码:
  10.  1 /////////////////////////////////////////////////////////////////////////////
     2 // CQQView message handlers
     3 extern CDC* pdc;
     4 mysock sock1;
     5 CString bb;
     6 int CQQView::OnCreate(LPCREATESTRUCT lpCreateStruct) 
     7 {
     8     if (CView::OnCreate(lpCreateStruct) == -1)
     9         return -1;
    10     
    11     // TODO: Add your specialized creation code here
    12     sock1.Create(5050,SOCK_DGRAM,NULL);
    13     static CClientDC wdc(this);
    14     pdc=&wdc;
    15     return 0;
    16 }
    17 
    18 void CQQView::OnSetFocus(CWnd* pOldWnd) 
    19 {
    20     CView::OnSetFocus(pOldWnd);
    21     
    22     // TODO: Add your message handler code here
    23     bb="milo:"+bb;
    24     sock1.SendTo(bb,100,5050,"192.168.222.111",0);//IPv4 Address
    25 }

     

  11. 编译运行该实例:
  12. 技术分享图片技术分享图片技术分享图片

End.

谢谢!

网络编程socket套接字及其使用(二)

原文:https://www.cnblogs.com/lumao1122-Milolu/p/11750365.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!