>>58
hBitmap が256色のビットマップだから
24ビットカラーを指定した GetDIBits が失敗するのでは?
(NT系なら GetLastError の値を確認してみて)

俺は >>52 じゃないけど
256色で GetDIBits して、自前で24ビットカラーに変換しろ、
と言ってるんじゃないかな。