@@ -77,6 +77,14 @@ typedef void* LPVOID, * HANDLE;
|
||||
|
||||
#define TALK_DLG_MAXLEN 1024 // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ַ<EFBFBD><D6B7><EFBFBD><EFBFBD><EFBFBD>
|
||||
|
||||
// <20>ͻ<EFBFBD><CDBB><EFBFBD>״̬: 1-<2D><><EFBFBD>ض<EFBFBD><D8B6>˳<EFBFBD> 2-<2D><><EFBFBD>ض<EFBFBD><D8B6>˳<EFBFBD>
|
||||
enum State {
|
||||
S_CLIENT_NORMAL = 0,
|
||||
S_CLIENT_EXIT = 1,
|
||||
S_SERVER_EXIT = 2,
|
||||
S_CLIENT_UPDATE = 3,
|
||||
};
|
||||
|
||||
// <20><><EFBFBD><EFBFBD>ö<EFBFBD><C3B6><EFBFBD>б<EFBFBD>
|
||||
enum
|
||||
{
|
||||
@@ -150,6 +158,8 @@ enum
|
||||
COMMAND_REGEDIT,
|
||||
COMMAND_TALK, // <20><>ʱ<EFBFBD><CAB1>Ϣ<EFBFBD><CFA2>֤
|
||||
COMMAND_UPDATE = 53, // <20>ͻ<EFBFBD><CDBB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
COMMAND_SHARE = 59, // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
COMMAND_PROXY = 60, // <20><><EFBFBD><EFBFBD>ӳ<EFBFBD><D3B3>
|
||||
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD>˷<EFBFBD><CBB7><EFBFBD><EFBFBD>ı<EFBFBD>ʶ
|
||||
TOKEN_AUTH = 100, // Ҫ<><D2AA><EFBFBD><EFBFBD>֤
|
||||
@@ -206,6 +216,17 @@ enum
|
||||
CMD_HEARTBEAT_ACK = 216, // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӧ
|
||||
};
|
||||
|
||||
enum ProxyManager {
|
||||
TOKEN_PROXY_CONNECT_RESULT,
|
||||
TOKEN_PROXY_BIND_RESULT,
|
||||
TOKEN_PROXY_CLOSE,
|
||||
TOKEN_PROXY_DATA,
|
||||
COMMAND_PROXY_CLOSE,
|
||||
COMMAND_PROXY_CONNECT,
|
||||
COMMAND_PROXY_DATA,
|
||||
COMMAND_PROXY_CONNECT_HOSTNAME,
|
||||
};
|
||||
|
||||
enum
|
||||
{
|
||||
CLIENT_TYPE_DLL = 0, // <20>ͻ<EFBFBD><CDBB>˴<EFBFBD><CBB4><EFBFBD><EFBFBD><EFBFBD>DLL<4C><4C><EFBFBD><EFBFBD>
|
||||
@@ -217,6 +238,11 @@ enum
|
||||
CLIENT_TYPE_LINUX = 6, // LINUX <20>ͻ<EFBFBD><CDBB><EFBFBD>
|
||||
};
|
||||
|
||||
enum {
|
||||
SHARE_TYPE_YAMA = 0, // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͬ<EFBFBD><CDAC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
SHARE_TYPE_HOLDINGHANDS = 1, // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> HoldingHands: https://github.com/yuanyuanxiang/HoldingHands
|
||||
};
|
||||
|
||||
inline const char* GetClientType(int typ) {
|
||||
switch (typ)
|
||||
{
|
||||
@@ -272,8 +298,10 @@ public:
|
||||
return iType;
|
||||
}
|
||||
void SetServer(const char* ip, int port) {
|
||||
strcpy_s(szServerIP, ip);
|
||||
sprintf_s(szPort, "%d", port);
|
||||
if (ip && strlen(ip) && port > 0) {
|
||||
strcpy_s(szServerIP, ip);
|
||||
sprintf_s(szPort, "%d", port);
|
||||
}
|
||||
}
|
||||
bool IsValid()const {
|
||||
return strlen(szServerIP) != 0 && atoi(szPort) > 0;
|
||||
@@ -283,6 +311,23 @@ public:
|
||||
}
|
||||
} CONNECT_ADDRESS ;
|
||||
|
||||
// <20><><EFBFBD>ַ<EFBFBD><D6B7><EFBFBD><EFBFBD><EFBFBD>ָ<EFBFBD><D6B8><EFBFBD>ַ<EFBFBD><D6B7>ָ<EFBFBD>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD>
|
||||
inline std::vector<std::string> StringToVector(const std::string& str, char ch, int reserved = 1) {
|
||||
// ʹ<><CAB9><EFBFBD>ַ<EFBFBD><D6B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ָ<EFBFBD><D6B8>ַ<EFBFBD><D6B7><EFBFBD>
|
||||
std::istringstream stream(str);
|
||||
std::string item;
|
||||
std::vector<std::string> result;
|
||||
|
||||
// <20><><EFBFBD>ֺŷָ<C5B7><D6B8>ַ<EFBFBD><D6B7><EFBFBD>
|
||||
while (std::getline(stream, item, ch)) {
|
||||
result.push_back(item); // <20><><EFBFBD>ָ<EFBFBD><D6B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ַ<EFBFBD><D6B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ӵ<EFBFBD><D3B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
}
|
||||
while (result.size() < reserved)
|
||||
result.push_back("");
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ߺ<EFBFBD><DFBA><EFBFBD><EFBFBD>͵ļ<CDB5><C4BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ
|
||||
// <20>˽ṹ<CBBD><E1B9B9>һ<EFBFBD><D2BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>仯<EFBFBD><E4BBAF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>С<EFBFBD><D0A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǰ<EFBFBD>汾<EFBFBD>Ŀͻ<C4BF><CDBB><EFBFBD><EFBFBD><EFBFBD><DEB7><EFBFBD><EFBFBD><EFBFBD><EFBFBD>°<EFBFBD><C2B0><EFBFBD><EFBFBD><EFBFBD>.
|
||||
// <20>°<EFBFBD><C2B0>ͻ<EFBFBD><CDBB><EFBFBD>Ҳ<EFBFBD><EFBFBD><DEB7><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϰ汾<CFB0><E6B1BE><EFBFBD><EFBFBD><EFBFBD>س<EFBFBD><D8B3><EFBFBD>.
|
||||
@@ -309,6 +354,31 @@ typedef struct LOGIN_INFOR
|
||||
dwSpeed = speed;
|
||||
return *this;
|
||||
}
|
||||
void AddReserved(const char* v) {
|
||||
if (strlen(szReserved))
|
||||
strcat_s(szReserved, "|");
|
||||
if (strlen(szReserved) + strlen(v) < sizeof(szReserved))
|
||||
strcat_s(szReserved, v);
|
||||
}
|
||||
void AddReserved(int n) {
|
||||
if (strlen(szReserved))
|
||||
strcat_s(szReserved, "|");
|
||||
char buf[24] = {};
|
||||
sprintf_s(buf, "%d", n);
|
||||
if (strlen(szReserved) + strlen(buf) < sizeof(szReserved))
|
||||
strcat_s(szReserved, buf);
|
||||
}
|
||||
void AddReserved(double f) {
|
||||
if (strlen(szReserved))
|
||||
strcat_s(szReserved, "|");
|
||||
char buf[24] = {};
|
||||
sprintf_s(buf, "%.2f", f);
|
||||
if (strlen(szReserved) + strlen(buf) < sizeof(szReserved))
|
||||
strcat_s(szReserved, buf);
|
||||
}
|
||||
std::vector<std::string> ParseReserved(int n = 1) const {
|
||||
return StringToVector(szReserved, '|', n);
|
||||
}
|
||||
}LOGIN_INFOR;
|
||||
|
||||
// <20>̶<EFBFBD>1024<32>ֽ<EFBFBD>
|
||||
|
||||
Reference in New Issue
Block a user