一个简单的聊天程序

发表于:2007-07-01来源:作者:点击数: 标签:
派生一个类: class CMySocket : public CAsyncSocket { // Attributes public: // Operations public: CMySocket(); virtual ~CMySocket(); // Overrides public: void SetPar .net (CDialog* pwnd); // ClassWizard generated virtual function overrides


派生一个类:

class CMySocket : public CAsyncSocket
{
// Attributes
public:

// Operations
public:
 CMySocket();
 virtual ~CMySocket();

// Overrides
public:
 void SetPar.net(CDialog* pwnd);
 // ClassWizard generated virtual function overrides
 //{{AFX_VIRTUAL(CMySocket)
 public:
 virtual void OnAclearcase/" target="_blank" >ccept(int nErrorCode);
 virtual void OnConnect(int nErrorCode);
 virtual void OnSend(int nErrorCode);
 virtual void OnReceive(int nErrorCode);
 virtual void OnClose(int nErrorCode);
 //}}AFX_VIRTUAL

 // Generated message map functions
 //{{AFX_MSG(CMySocket)
  // NOTE - the ClassWizard will add and remove member functions here.
 //}}AFX_MSG

// Implementation
protected:
private:
 CDialog* m_pwnd;
};

主要代码:

void CMySocket::OnSend(int nErrorCode)
{

 if(nErrorCode==0)
  ((CInfoDlg*)m_pwnd)->OnSend();

 
 CAsyncSocket::OnSend(nErrorCode);
}

void CMySocket::OnReceive(int nErrorCode)
{

 if(nErrorCode==0)
  ((CInfoDlg*)m_pwnd)->OnReceive();

 
 CAsyncSocket::OnReceive(nErrorCode);
}

void CMySocket::OnClose(int nErrorCode)
{

  if(nErrorCode==0)
  ((CInfoDlg*)m_pwnd)->OnClose();

 
 CAsyncSocket::OnClose(nErrorCode);
}


原文转自:http://www.ltesting.net