描述:
请问一下代码有什么错
long totalbytes;
this->m_piRequest->get_TotalBytes(&totalbytes);
COleVariant vartotalbytes;
COleSafeArray pret;
vartotalbytes=totalbytes;
pret.CreateOneDim(VT_UI1,totalbytes);
HRESULT hr=this->m_piRequest.p->BinaryRead(&vartotalbytes,&pret);
if(FAILED(hr))
{
pret.Clear();
return hr;
}
LPVOID pData;
LPBYTE m_lpbytesdata;
m_lpbytesdata=new BYTE[totalbytes];
pret.AccessData(&pData);
memcpy(m_lpbytesdata,pData,totalbytes);
pret.UnaccessData();
UCHAR szHeaderEnd[] = { 13, 10, 13, 10 };
UCHAR* posend=_mbsstr(m_lpbytesdata,szHeaderEnd);
long lpose=0;
LPBYTE m_lpboundary;
if(posend)
{
lpose=posend-m_lpbytesdata+1;
m_lpboundary=new BYTE[lpose+1];
memccpy(m_lpboundary,m_lpbytesdata,0,lpose+1);
}
pret.Clear();
VARIANT outvar;
::VariantInit(&outvar);
outvar.vt=VT_BYREF|VT_UI1;
outvar.pbVal=m_lpbytesdata;
this->m_piResponse.p->BinaryWrite(outvar);********
我把打*******的那行改为
this->m_piResponse.p->BinaryWrite(pret);
就有输出结果,为什么
我的代码究竟哪错了?我刚学com编程