// ====================== 从管道中读取客户端的请求数据 ==============================
// 接收缓冲数据块
CString strRecv = "";
// 先取出数据块的长度
if ( !ReadFile ( m_hPipe, szBuf, 10, &nReadByte, NULL ) )
{
m_errorinfo="读取管道错误!";
return FALSE;
}
int nAllLen = atoi( szBuf ); //总的数据长度,最大为 2147483647
int nCountLen = 0;
while ( nCountLen<nAllLen )
{
memset( szBuf, 0x00, MAX_BUFFER_SIZE );
if ( !ReadFile ( m_hPipe, szBuf, MAX_BUFFER_SIZE-1, &nReadByte, NULL ) )
{
m_errorinfo="读取管道错误!";
break;
}
nCountLen += nReadByte;
strRecv += szBuf;
if ( nReadByte==0 )
break;
}
// ====================== end of 从管道中读取客户端的请求数据 ==============================