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

📄 chatserver.h

📁 网络编程
💻 H
字号:
// ChatServer.h : header file
//

/////////////////////////////////////////////////////////////////////////////
// CChatServer dialog
#if !defined CHATSERVER_INCLUDED_
#define CHATSERVER_INCLUDED_

//#ifndef AFX_PERSISTENT_H__CFB81142_8E63_4F72_BB09_9097BD9230FB__INCLUDED_
//#define AFX_PERSISTENT_H__CFB81142_8E63_4F72_BB09_9097BD9230FB__INCLUDED_
//#endif

//#ifndef UTILITY_INCLUDED_
//#define UTILITY_INCLUDED_
//#endif
//#include "mainsheet.h"
#include "resource.h"
#include "ClientListCtrl.h"

class CMainSheet;
class CListeningSocket;
class CClientSocket;
class CPkg;



const UINT UNDEFINED = 0;
const UINT NEW = 1;
const UINT SVRSTART = 2;
const UINT SVRSTOP = 3;
const UINT SIGNOUT = 4;
//const UINT SERVER = 5;
const UINT CONN = 6;
const UINT AWAY = 7;
const UINT MESG = 8;
const UINT OFF = 9;

class CChatServer : public CPropertyPage
{
	DECLARE_DYNCREATE(CChatServer)

// Construction
public:
	CString GetServerIP();
	CChatServer();
	~CChatServer();
	void ProcessAccept();		
	void ProcessClientPkg(CClientSocket* pSocket);
	void SetOwner(CMainSheet* pMainSheet);


	virtual BOOL PreTranslateMessage (MSG* pMsg);

// Dialog Data
	//{{AFX_DATA(CChatServer)
	enum { IDD = IDD_CHATSERVER };
	CClientListCtrl	m_ClientListCtrl;
	//}}AFX_DATA


// Overrides
	// ClassWizard generate virtual function overrides
	//{{AFX_VIRTUAL(CChatServer)
	protected:
	virtual void DoDataExchange(CDataExchange* pDX);    // DDX/DDV support
	//}}AFX_VIRTUAL

// Implementation
protected:
	
	CString m_clientNames;
	CMainSheet* m_pMainSheet;
	CListeningSocket* m_pListenSocket;
	CPtrList m_ContactList;
	BOOL bListening ;
	CImageList m_imgComputer;

	BOOL BeginListening(UINT port);
	void CloseAllClients();
	void CloseListening();
	void DeleteIndivisual(CString name);
	void Send2AllClients(CPkg* pkg);
	void UpdateListCtrl();
	void UpdateClientInfo(CPkg* pPkg,CClientSocket* pSocket);
	void Server2Indivisual(CString name,CString strMessage, int request = UNDEFINED);
	void UpdateInfo2All(CString msg,int request);
	void Server2Indivisual(CClientSocket* pSocket, CString strMessage,int request = UNDEFINED);
	BOOL IsThisNameBeingUsed(CPkg& pkg,CClientSocket* pSocket);

	// Generated message map functions
	//{{AFX_MSG(CChatServer)
	virtual BOOL OnInitDialog();
	afx_msg void OnStart();
	//}}AFX_MSG
	DECLARE_MESSAGE_MAP()

protected:
	CToolTipCtrl m_tooltip;
};

#endif

⌨️ 快捷键说明

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