?? tcpclient_ft.h
字號:
// TCPClient_FT.h: interface for the CTCPClient_FT class.
//
//////////////////////////////////////////////////////////////////////
#if !defined(AFX_TCPCLIENT_FT_H__D1CD6225_FE1E_4086_984B_FE43FAFC7C67__INCLUDED_)
#define AFX_TCPCLIENT_FT_H__D1CD6225_FE1E_4086_984B_FE43FAFC7C67__INCLUDED_
#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
#define WM_RECVFILELIST WM_USER + 1005 //接收文件列表
#define WM_FILESTATUS WM_USER + 1006 //反映文件下載狀態
#define WM_CONNECTERROR WM_USER + 1007 //連接失敗
#define FILELIST 1000 //請求文件列表
#define FILEDATA 2000 //請求文件數據
#define RECVSIZE 1024*16 //一次性發送/接收的數據塊大小
//與服務器通信語言結構
typedef struct
{
int iCommand;
long lFileOffset;
long lFileLength;
char sClientPath[128];
char sServerPath[128];
}MSGREQUEST;
//請求線程參數
typedef struct
{
char sIP[15];
int iPort;
MSGREQUEST msgRequest;
LPVOID ptr;
}PARAMREQUEST;
//文件列表結構
typedef struct
{
long lFileLength;
char sServerPath[128];
}MSGFILELIST;
//反映文件狀態的結構
typedef struct
{
long lFileOffset;
char sServerPath[128];
}MSGFILESTATUS;
class CTCPClient_FT
{
public:
CTCPClient_FT();
virtual ~CTCPClient_FT();
//重載構造函數,添加指向窗口指針
CTCPClient_FT(CString strFileName,LPVOID ptr);
//設置服務器ip
BOOL SetServerIP(char* sIP);
//設置服務器端口
void SetServerPort(int iPort);
//創建請求線程
void RequestFile(MSGREQUEST msgRequest);
//發送請求并接收反饋信息的線程
static DWORD WINAPI ThreadRequestFile(LPVOID lpParam);
//停止所有接收線程
static void StopAllRecvThread(void);
private:
//服務器地址
char m_sIP[15];
//服務器端口
int m_iServerPort;
//指向窗口的指針
CWnd* m_pWnd;
//接收線程結束符
static BOOL m_bEndRecvThread;
CString m_strFileName;
};
#endif // !defined(AFX_TCPCLIENT_FT_H__D1CD6225_FE1E_4086_984B_FE43FAFC7C67__INCLUDED_)
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -