📄 socketclient.h
字号:
#if !defined(AFX_SOCKETCLIENT_H__F25829F8_EFFB_4D11_9D58_889B45139518__INCLUDED_)
#define AFX_SOCKETCLIENT_H__F25829F8_EFFB_4D11_9D58_889B45139518__INCLUDED_
#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
// SocketClient.h : header file
//
//
// 注意:
// 在 InitInstance() 函数中调用 AfxSocketInit();函数来初始化网络接口,在
// ExitInstance() 函数中调用 WSACleanup (); 关闭网络接口
//
/////////////////////////////////////////////////////////////////////////////
// CSocketClient command target
#include <afxsock.h>
#include "PublicFunction.h"
#include "Log.h"
#define NET_BUFFER_SIZE 4096 // 默认缓冲大小
class CSocketClient : public CSocket
{
// Attributes
public:
BOOL Is_Connected() { return m_bConnected; }
// Operations
public:
CSocketClient ();
virtual ~CSocketClient();
CString GetDigitStrAtHead ( LPCTSTR lpszStr );
int GetResponse ( CString *pcsResponseStr=NULL, BOOL bBlock=TRUE );
BOOL GetResponse ( int nVerifyCode, CString *pcsResponseStr=NULL );
CString GetResponseHistoryString () { return m_csResponseHistoryString; }
void ClearResponseHistoryString () { m_csResponseHistoryString.Empty(); }
// Overrides
public:
int m_nIndex;
void Disconnect();
int Receive ( char *szBuf, int size, BOOL bBlock=TRUE );
BOOL GetIPAndPortByPasvString ( LPCTSTR lpszPasvString, OUT CString &csIP, OUT USHORT &nPort );
void SetEventOfEndModule ( HANDLE hEvtEndModule );
BOOL Send ( char *data, int size );
BOOL SendString ( LPCTSTR lpszData, ... );
BOOL Connect ( LPCTSTR lpszHost, USHORT nPort );
// ClassWizard generated virtual function overrides
//{{AFX_VIRTUAL(CSocketClient)
//}}AFX_VIRTUAL
// Generated message map functions
//{{AFX_MSG(CSocketClient)
// NOTE - the ClassWizard will add and remove member functions here.
//}}AFX_MSG
// Implementation
protected:
virtual BOOL ConnectHelper(const SOCKADDR* lpSockAddr, int nSockAddrLen);
private:
BOOL PumpMessagesMy(UINT uStopFlag);
CString m_csResponseHistoryString;
HANDLE m_hEvtEndModule;
BOOL m_bConnected;
};
/////////////////////////////////////////////////////////////////////////////
//{{AFX_INSERT_LOCATION}}
// Microsoft Visual C++ will insert additional declarations immediately before the previous line.
#endif // !defined(AFX_SOCKETCLIENT_H__F25829F8_EFFB_4D11_9D58_889B45139518__INCLUDED_)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -