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

📄 netclient.h

📁 奇迹世界更新程序源代码,其中包括一些文档
💻 H
字号:
#pragma once

#include <winsock2.h>
#include <process.h>
#include <vector>
#include <string>
#include "PacketStruct.h"
#include "UpdateInfo.h"

#ifndef DLL_EXPORTS
#define WZ_DECLAREDLL			_declspec (dllexport)
#else
#define WZ_DECLAREDLL			_declspec (dllimport)
#endif

using namespace std;

unsigned int __stdcall RecvThread(void* pParam);
unsigned int __stdcall SendThread(void* pParam);

#define MAX_BUFFER_SIZE		1024		

class WZ_DECLAREDLL CNetClient
{
public:
	CNetClient(void);
	~CNetClient(void);

	BOOL	Init();
	BOOL	Connect();
	BOOL	DisConnect();
	BOOL	Run();
	BOOL	GetPacket( char* pData, int* pSize );
	BOOL	SendData( char* pData, int nSize );
	void	Close();

//Buffer包访 窃荐
protected:
	BOOL AddRecvBuf( char* pBuf, int nSize );
	BOOL AddSendBuf( char* pBuf, int nSize );

	friend unsigned int __stdcall RecvThread(void* pParam);
//	friend unsigned int __stdcall SendThread(void* pParam);

private:
	WSADATA 		m_wsaData;
	SOCKET			m_hSocket;
	HANDLE			m_hRecvThread;
	HANDLE			m_hSendThread;
	char			m_RecvBuf[MAX_BUFFER_SIZE];
	char			m_SendBuf[MAX_BUFFER_SIZE];
	BOOL			m_bRunThread;
	SOCKADDR_IN		m_servAddr;
	
	CRITICAL_SECTION	m_cs;
	vector<string>		m_vecRecv;
	CUpdateInfo			m_Info;

	//Recv Packet....
public:
	BOOL	m_bReqPacket;
	DWORD	m_dwKey;
};

⌨️ 快捷键说明

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