您的位置:首页 > 其它

如何从网页获取验证码并显示在窗口控件上呢?

2014-12-24 17:15 197 查看
BOOL LoadMemImage(void *pMemData, ULONG nLen, CImage& imgObj)
{
BOOL bRet = FALSE;
HGLOBAL hGlobal = GlobalAlloc(GMEM_MOVEABLE, nLen);
void *pData = GlobalLock(hGlobal);
memcpy(pData, pMemData, nLen);
GlobalUnlock(hGlobal);

IStream *pStream = NULL;
if(CreateStreamOnHGlobal(hGlobal, TRUE, &pStream) == S_OK) {
if (SUCCEEDED(imgObj.Load(pStream))) bRet = TRUE;
pStream->Release();
}
GlobalFree(hGlobal);

return bRet;
}


 
_variant_t body = HttpRe->GetResponseBody();
ULONG dataLen = body.parray->rgsabound[0].cElements;
char *pContentBuffer = (char *)body.parray->pvData;

CImage img;
BOOL bRet = LoadMemImage(pContentBuffer, dataLen, img);
CStatic *pStaticPic = (CStatic *)GetDlgItem(IDC_PIC);
if (bRet && pStaticPic)
{
HBITMAP retBitmap = pStaticPic->SetBitmap(img.Detach());
}


                     先获取响应信息。然后调用 LoadMemImage 将图片数据从char*转化为CImage. 然后控件调用 SetBitmap 来让图片显示在控件上面。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐