⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 clientdlg.h

📁 WInsock32的客户端哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈
💻 H
字号:
// ClientDlg.h : header file
//

#if !defined(AFX_CLIENTDLG_H__F7EB6ACC_8633_4637_B8D0_9EA51F55F6C1__INCLUDED_)
#define AFX_CLIENTDLG_H__F7EB6ACC_8633_4637_B8D0_9EA51F55F6C1__INCLUDED_

#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000

/////////////////////////////////////////////////////////////////////////////
// CClientDlg dialog

#include "ChatDlg.h"
class CChatSocket;
class CListenSocket;

class CClientDlg : public CDialog
{
// Construction
public:
	CClientDlg(CWnd* pParent = NULL);	// standard constructor
	virtual ~CClientDlg(void);
// Dialog Data
	//{{AFX_DATA(CClientDlg)
	enum { IDD = IDD_CLIENT_MAIN_DIALOG };
	CListCtrl	m_ctlUserList;
	//}}AFX_DATA

	// ClassWizard generated virtual function overrides
	//{{AFX_VIRTUAL(CClientDlg)
	protected:
	virtual void DoDataExchange(CDataExchange* pDX);	// DDX/DDV support
	//}}AFX_VIRTUAL
public:
	BOOL	Init(void);								//初始化
	BOOL	InitListCtrlSetting(void);				//初始列表控件
	BOOL	ConnectToServer(void);					//连接服务器
	BOOL	BegingListen(void);						//监听

	void	ProcessPendingAccept(void);				//接受对方连接
	void	ProcessPendingRead(void);				//接收数据包
	void	ReadPacket(void);						//接收服务器数据
	void	SendPacket(CChatPacket &packet);		//发送数据

	void	UpdateClientListCtl(void);				//更新用户列表
	void	ShowOfflineMsg(CChatPacket* pPacket);	//显示离线消息

	void	CreateUserList(CObList *pObList);		//创建用户链表
	void	CreateChatDlg(CString strUserName);		//创建聊天窗口

	void	SaveChatLog(CChatDlg *pChatDlg);		//保存聊天记录


// Implementation
protected:
	HICON m_hIcon;
	
	// Generated message map functions
	//{{AFX_MSG(CClientDlg)
	virtual BOOL OnInitDialog();
	afx_msg void OnPaint();
	afx_msg HCURSOR OnQueryDragIcon();
	//afx_msg void OnDestroy();
	afx_msg void OnDblclkClientList(NMHDR* pNMHDR, LRESULT* pResult);
	//}}AFX_MSG
	DECLARE_MESSAGE_MAP()

private:
	SOCKADDR_IN		m_servAddr;			//服务器地址
	SOCKADDR_IN		m_hostAddr;			//本机地址
	CChatSocket		*m_pSocket;			//连接服务套接字指针
	CListenSocket	*m_pListenSocket;	//监听套接字指针
	CSocketFile		*m_pFile;			//文件指针	
	CArchive		*m_pArchiveIn;		//读文档指针
	CArchive		*m_pArchiveOut;		//写文档指针
	CUserInfo		m_UserInfo;			//用户信息
	CObList			m_UserList;			//用户列表
	CImageList		*m_pImageList;		//图标列表
	//CObList		m_ChatterList;		//chat链表
};

//{{AFX_INSERT_LOCATION}}
// Microsoft Visual C++ will insert additional declarations immediately before the previous line.

#endif // !defined(AFX_CLIENTDLG_H__F7EB6ACC_8633_4637_B8D0_9EA51F55F6C1__INCLUDED_)

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -