[C++] Transparente Bilder im Bildschirmschoner zeichnen

Nochmal ein Problem (sorry :-( ):
ich zeichne jetzt mit der WM_PAINT-"Methode" (mit InvalidateRect von WM_TIMER aufgerufen) erst den Hintergrund und dann das PNG (jedes mal ein Stückchen verschoben) auf einen Zwischen-DC und blitte den dann auf den normalen DC.

Nach mehreren hundert Aufrufen bleibt das PNG dann plötzlich stehen....
Wieso?
Was kann ich dagegen machen?
 
Das Programm verbrät auch immer mehr CPU-Leistung, je öfters es gezeichnet hat, bei ca. 50% Auslastung hört es auf zu zeichnen.
 
Zurück