Это неполный и плохо сформулированный вопрос.Смешивать и сопоставлять Windows API, MFC и GdiPlus - это хорошо, но без достаточного количества соответствующего кода или объяснения все, что кто-либо может сделать, это угадать вашу проблему.
Тем не менее, это мое предположение.Симптом черного растрового изображения обычно означает, что ваша битовая глубина была неправильной.Я понятия не имею, что вы делаете с CImage
, но приведенный выше код выглядит нормально, хотя и пропускает какую-либо проверку успешности API под названием.
Далее я предполагаю, что m_imgLst
- это MFC CImageList
объект, в этом случае вероятная ошибка была в вызове .Create
в другом месте этого объекта с несовместимой битовой глубиной или размерами для изображения, которое вы сейчас пытаетесь добавить.
Вы можете проверить мою теорию, проверив возвратзначение .Add
должно быть индексом вновь вставленного изображения или -1, если это не удалось.