AS>>Не надо выделять массив malloc'ом, надо просто использовать указатель на поверхность, возвращаемый функцией CreateDIBSection.
Xo>malloc'ом я выделяю память только под структуру BITMAPINFO+палитра.
Xo>А при работе с изображением использую указатель AdibBits:
У вас размер выделяемой памяти фиксирован ( sizeof( BITMAPINFO ) + sizeof( RGBQUAD ) * 0xff). Зачем тут malloc?
Xo>Выбор растра, кисти и отрисовка:
Xo>Xo> SelectObject( AdibDC, AdibBitmap );
Xo> SelectObject( AdibDC, GetStockObject( WHITE_BRUSH ) );
Xo> Ellipse( AdibDC, 0, 0, 20, 10 );
Xo>
Xo>Где я не прав
?
Хотя бы в том, что надо сохранять старые объекты, возвращаемые SelectObject, и потом обратно назначать их. Но не суть важно — приведеный код должен отрисовывать эллипс на битмапе. Он это делает или таки нет? Если нет — смотрите возвращаемые значения и GetLastError.