CBitmap:: Ошибка GetBitmap
Какие могут быть возможные причины получения кода возврата в виде 0 от GetBitmap()
?
BITMAP bmInfo;
int rc = bitmap->GetBitmap (&bmInfo);
int ec = GetLastError();
Значение, возвращаемое GetLastError()
также 0. MSDN не оказывает никакой помощи, и все форумы, где задавались подобные вопросы, молчат.
Чтобы дать вам некоторый контекст, у меня есть экземпляр CBitmap, и я присоединяю второй экземпляр CBitmap к тому же HBITMAP, используя код, подобный следующему:
CBitmap first;
:
:
CBitmap second;
second.Attach ((HBITMAP)first);
BITMAP bmInfo;
second.GetBitmap (&bmInfo);
Призыв к GetBitmap()
терпит неудачу для second
и не для first
,
1 ответ
Решение
Вызов GetBitmap() завершается с ошибкой для второго, а не для первого.
Если это так, то два экземпляра класса не могут иметь одинаковый дескриптор, и ваш фрагмент кода предлагает именно это. Вы можете порвать с отладчиком, чтобы проверить first
а также second
выяснить, что они на самом деле держат внутри.