|
如题:
IImagingFactory *g_pImgFactory;
//COM初始化省略
IImage *pImage;
//装载资源
HRSRC hr;//资源句柄
hr = FindResource(hInst,MAKEINTRESOURCE(dwImageID),RT_RCDATA);
HGLOBAL hglobal= LoadResource( hInst, hr );
LPVOID lpVoid = NULL;
lpVoid = LockResource(hglobal);
int nSize = 0;
nSize = (UINT)SizeofResource(hInst, hr);
if(nSize <= 0){return FALSE;}
HRESULT ret1 =g_pImgFactory->CreateImageFromBuffer((BYTE*)hglobal, nSize, BufferDisposalFlagGlobalFree , (IImage**)pImage);
UnlockResource(hglobal);
//画大到DC中
m_pImage->Draw(dc->GetSafeHdc(), &rc, NULL);
以上代码都无问题,而且可以正确显示图片,但是为什么 我接下来调用m_pImage->Release()程序就会出现异常?
如果不释放IIMAGE资源的话整个程序不停的在两个窗体间切换,会造成严重的内存泄露(经试验是油资源图片引起的)
谁能帮帮我啊???
|
|