📄 serverthread.h
字号:
#if !defined(AFX_SERVERTHREAD_H__890AB2C8_429F_11D4_93A3_0000E86DCAD8__INCLUDED_)
#define AFX_SERVERTHREAD_H__890AB2C8_429F_11D4_93A3_0000E86DCAD8__INCLUDED_
#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
// ServerThread.h : header file
//
#include "TCPSocket.h"
#define SERVER_ORIGIN 0
#define SERVER_CREATE 1
#define SERVER_WAITING 2
#define SERVER_ACCEPTING 3
#define SERVER_QUITING 4
#define SERVER_CLOSED 5
/////////////////////////////////////////////////////////////////////////////
// CServerThread thread
class CServerThread : public CWinThread
{
DECLARE_DYNCREATE(CServerThread)
protected:
CServerThread(); // protected constructor used by dynamic creation
public:
CServerThread( HWND hWnd, UINT nPort=CHAT_PORT);
// Attributes
public:
// Operations
public:
void KillThread();
// Overrides
// ClassWizard generated virtual function overrides
//{{AFX_VIRTUAL(CServerThread)
public:
virtual BOOL InitInstance();
virtual int ExitInstance();
//}}AFX_VIRTUAL
// Implementation
public:
CString GetHost();
SOCKET GetSocket();
SOCKET GetListenSocket();
virtual ~CServerThread();
// Generated message map functions
//{{AFX_MSG(CServerThread)
// NOTE - the ClassWizard will add and remove member functions here.
afx_msg void OnThreadConnect(WPARAM wParam, LPARAM lParam);
afx_msg void OnSocketRead(WPARAM wParam, LPARAM lParam);
afx_msg void OnSocketWrite(WPARAM wParam, LPARAM lParam);
afx_msg void OnSocketClose(WPARAM wParam, LPARAM lParam);
afx_msg void OnThreadData(WPARAM wParam, LPARAM lParam);
afx_msg void OnThreadQuit(WPARAM wParam, LPARAM lParam);
afx_msg void OnThreadShut(WPARAM wParam, LPARAM lParam);
//}}AFX_MSG
DECLARE_MESSAGE_MAP()
private:
BOOL m_bHaveClient;
int m_bState;
CTCPSocket m_cTCPSocket; //accept后接收数据
CTCPSocket m_cWaitTCPSocket; //等待连接
CTCPSocket m_cExceptTCPSocket; //应付忙时
UINT m_nPort;
HWND m_hMainWnd;
};
/////////////////////////////////////////////////////////////////////////////
//{{AFX_INSERT_LOCATION}}
// Microsoft Visual C++ will insert additional declarations immediately before the previous line.
#endif // !defined(AFX_SERVERTHREAD_H__890AB2C8_429F_11D4_93A3_0000E86DCAD8__INCLUDED_)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -