F
Ich habe es jetzt anders gelöst. Langsam beginne ich diesen ganzen Wirrwarr um DCs und Handles zu verstehen. Der ganze Code zum Speichern eines beliebigen Fensterinhalts in ein Image beschränkt sich nun (mit Parametern aus dc2bitmap) auf:
CImage Test;
Test.Create(width,height,32);
HDC hdc3 = Test.GetDC();
BitBlt(hdc3,0,0,width,height,hdc,0,0,SRCCOPY);