19,469
社区成员
发帖
与我相关
我的任务
分享void CCheckCode::OnBnClickedButton1()
{
char *pszImageBuff =new char[3000];
memset(pszImageBuff,0,3000);
DWORD RetnSize = DownloadsByUlr("127.0.0.1/j.jpg",pszImageBuff); //下载图片文件
HRESULT hr;
IStream * pStream = NULL;
IPicture * pPicture = NULL;
CDC* pDc =GetDC();
hr = ::CreateStreamOnHGlobal( pszImageBuff, TRUE, &pStream );
ASSERT ( SUCCEEDED(hr));
hr = ::OleLoadPicture( pStream, RetnSize, TRUE, IID_IPicture, ( LPVOID * )&pPicture );
ASSERT(hr==S_OK);
long nWidth,nHeight; // 宽高,MM_HIMETRIC 模式,单位是.01毫米
pPicture->get_Width( &nWidth ); // 宽
pPicture->get_Height( &nHeight ); // 高
CSize sz( nWidth, nHeight );
pDc->HIMETRICtoDP( &sz );
pPicture->Render(pDc->m_hDC,10,10,100,100,0,nHeight,nWidth,-nHeight,NULL); //在指定的DC上绘出图片
if ( pPicture ) pPicture->Release();// 释放IPicture 指针
if ( pStream ) pStream->Release(); // 释放IStream 指针,同时释放了hMem
//OnOK();
}