Einblenden einer Alpha-gemischten PNG-Form in Delphi

Ich habe vor einigen Jahren, als Vista zum ersten Mal veröffentlicht wurde, eine Frage dazu gestellt, das Problem jedoch nie gelöst und es als etwas zurückgestellt, das später in Betracht gezogen werden sollte.

Ich habe einen Begrüßungsbildschirm, den ich mit großer Mühe gemacht habe, damit er toll aussieht. Es ist ein 32bpp Alpha-Blended PNG. Ich habe einen Code (den ich bei Bedarf ausgraben kann!), Der unter Windows XP oder unter Vista + funktioniert, wenn die Desktop-Komposition deaktiviert ist. Unter Vista + sind jedoch alle transparenten Teile schwarz und zerstören alles, was gut aussieht!

Meine Frage lautet also: Da jeder in der Lage war, einen 32-bpp-Alpha-gemischten PNG als Begrüßungsbildschirm auf eine Weise anzuzeigen, die funktioniertSowohl mit als auch ohne aktivierter Desktop-Komposition? Ich bin nicht gegen die Verwendung von Komponenten von Drittanbietern, falls erforderlich, kostenlos oder anderweitig.

Idealerweise würde dies in Delphi 7 funktionieren.

Update: Neben den unten stehenden Antworten, die sehr gut funktionieren, stellte ich fest, dass die TMS TAdvSmoothSplashScreen-Komponente diese Aufgabe auch sehr gut, wenn auch etwas komplexer, erledigt.

Antworten auf die Frage(2)

Ihre Antwort auf die Frage