|  | @@ -27,6 +27,7 @@ void CSATClient::OnThreadExit(CSocketHandle* pSH)
 | 
	
		
			
				|  |  |  {
 | 
	
		
			
				|  |  |  	ASSERT(pSH == m_SocketClient);
 | 
	
		
			
				|  |  |  	DeleteCriticalSection(&pSH->m_hClient2SrvSection);
 | 
	
		
			
				|  |  | +	m_SocketClient.Close();
 | 
	
		
			
				|  |  |  	m_bSocket = FALSE;
 | 
	
		
			
				|  |  |  	TRACE(_T("======线程退出.\r\n"));
 | 
	
		
			
				|  |  |  	(pSH);
 | 
	
	
		
			
				|  | @@ -47,7 +48,7 @@ void CSATClient::OnConnectionDropped(CSocketHandle* pSH)
 | 
	
		
			
				|  |  |  	ASSERT(pSH == m_SocketClient);
 | 
	
		
			
				|  |  |  	(pSH);
 | 
	
		
			
				|  |  |  	TRACE(_T("======连接服务器断开.\r\n"));
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | +	m_SocketClient.Close();
 | 
	
		
			
				|  |  |  	m_bSocket = FALSE;
 | 
	
		
			
				|  |  |  }
 | 
	
		
			
				|  |  |  
 | 
	
	
		
			
				|  | @@ -56,7 +57,7 @@ void CSATClient::OnConnectionError(CSocketHandle* pSH, DWORD dwError)
 | 
	
		
			
				|  |  |  	ASSERT(pSH == m_SocketClient);
 | 
	
		
			
				|  |  |  	(pSH);
 | 
	
		
			
				|  |  |  	_com_error err(dwError);
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | +	m_SocketClient.Close();
 | 
	
		
			
				|  |  |  	m_bSocket = FALSE;
 | 
	
		
			
				|  |  |  }
 | 
	
		
			
				|  |  |  
 | 
	
	
		
			
				|  | @@ -70,6 +71,7 @@ CSATClient::CSATClient(void)
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  CSATClient::~CSATClient(void)
 | 
	
		
			
				|  |  |  {
 | 
	
		
			
				|  |  | +	m_SocketClient.Close();
 | 
	
		
			
				|  |  |  }
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  bool CSATClient::OnSend(const byte* pData, int nLen, BOOL bShowGif)
 |