读书人

写的异步通信CAsyncSocket程序m_hsoce

发布时间: 2012-08-29 08:40:14 作者: rapoo

写的异步通信CAsyncSocket程序m_hsoceket总是非法,请教!

写的异步通信CAsyncSocket程序m_hsoceket总是非法,请教!


MySocket.h

// DemoNetDlg.cpp : 实现文件//#include "stdafx.h"#include "DemoNet.h"#include "DemoNetDlg.h"#ifdef _DEBUG#define new DEBUG_NEW#endif// CDemoNetDlg 对话框CDemoNetDlg::CDemoNetDlg(CWnd* pParent /*=NULL*/): CDialog(CDemoNetDlg::IDD, pParent){m_hIcon = AfxGetApp()->LoadIcon(IDR_MAINFRAME);m_strServName = _T("127.0.0.1");m_nServPort = 8009;}void CDemoNetDlg::DoDataExchange(CDataExchange* pDX){CDialog::DoDataExchange(pDX);}BEGIN_MESSAGE_MAP(CDemoNetDlg, CDialog)ON_WM_PAINT()ON_WM_QUERYDRAGICON()//}}AFX_MSG_MAPON_BN_CLICKED(IDOK, &CDemoNetDlg::OnBnClickedOk)END_MESSAGE_MAP()// CDemoNetDlg 消息处理程序BOOL CDemoNetDlg::OnInitDialog(){CDialog::OnInitDialog();// 设置此对话框的图标。当应用程序主窗口不是对话框时,框架将自动//  执行此操作SetIcon(m_hIcon, TRUE);// 设置大图标SetIcon(m_hIcon, FALSE);// 设置小图标ShowWindow(SW_MINIMIZE);m_MySocket.SetParent(this);// TODO: 在此添加额外的初始化代码return TRUE;  // 除非将焦点设置到控件,否则返回 TRUE}// 如果向对话框添加最小化按钮,则需要下面的代码//  来绘制该图标。对于使用文档/视图模型的 MFC 应用程序,//  这将由框架自动完成。void CDemoNetDlg::OnPaint(){if (IsIconic()){CPaintDC dc(this); // 用于绘制的设备上下文SendMessage(WM_ICONERASEBKGND, reinterpret_cast<WPARAM>(dc.GetSafeHdc()), 0);// 使图标在工作区矩形中居中int cxIcon = GetSystemMetrics(SM_CXICON);int cyIcon = GetSystemMetrics(SM_CYICON);CRect rect;GetClientRect(&rect);int x = (rect.Width() - cxIcon + 1) / 2;int y = (rect.Height() - cyIcon + 1) / 2;// 绘制图标dc.DrawIcon(x, y, m_hIcon);}else{CDialog::OnPaint();}}//当用户拖动最小化窗口时系统调用此函数取得光标//显示。HCURSOR CDemoNetDlg::OnQueryDragIcon(){return static_cast<HCURSOR>(m_hIcon);}void CDemoNetDlg::OnBnClickedOk(){// TODO: 在此添加控件通知处理程序代码m_MySocket.Create();m_MySocket.Connect(m_strServName,m_nServPort);OnOK();}void CDemoNetDlg::OnClose(){m_MySocket.Close();}void CDemoNetDlg::OnConnect(){}void CDemoNetDlg::OnReceive(){}


读书人网 >编程

热点推荐