Итак, как и предполагалось вначале, ларчик просто открывался.
Метод использования формата CF_BITMAP работает, но, поскольку, это устройствозависимый формат, ему необходимо окно -> ::OpenClipboard(m_hWnd). А если его нет под рукой и хочется таки использовать CF_DIB?
Код, из первого сообщения, работает замечательно, если прога, поместившая, DIB в буфер обмена "правильно" разместила инфу для "пол-литры" ((с) Лёшик). Тогда смещение +1 в
void* pDIBBits = (void*)(lpBI+1);
указывает на нужный блок.
Как показали результаты рентгеноструктурного анализа (микроскопа оказалось недостаточно), так делают далеко не все проги. Поэтому ПРАВИЛЬНО использовать поле структуры
LPBITMAPINFO bmiColors. Вот такая поправка, делает код рабочим и для Paint, и для, например, Print Screen:
LPBITMAPINFO lpBI = (LPBITMAPINFO)GlobalLock(hGlobal);
Bitmap gdibmp(lpBI, lpBI->bmiColors);
Странно, что нигде на это не натолкнулся, в отличие от смещения +1.