Since GetImage can change the third parameter, you need to give it something to change:
BYTE **ppImage = &pImage;
m_pMyInterface->GetImage(i, &imageSize, ppImage);
, , &pImage ppImage ( , pImage *ppImage ). :
if (ppImage)
pImage = *ppImage;
, .
CMyInterface::GetImage - , , , . - :
a_ppbImage = ...;
:
*a_ppbImage = ...;
, , . (BYTE *&image), (BYTE **image)