Luna: Windows XP noch bunter

Programmiermodell

Bei bisherigen Windows-Versionen waren zwei verschiedene Komponenten für die Darstellung von Fenstern und Benutzerkontrollen zuständig. Die DLL namens User32 erzeugt die standardmäßigen Bestandteile wie Titelleiste, Ränder oder Menüs. Diese DLL ist tief ins Betriebssystem eingebettet und ist daher abhängig von der Version des Betriebssystems.

Komponenten wie Schaltflächen, Dialogboxen oder Tab-Controls fallen in den bereich der Common Controls (ComCtl32.dll). Diese werden häufig zusammen mit Applikationen ausgeliefert, weil viele Applikation eine spezielle Version der ComCtl32 benötigen. Die Folge ist, dass mit der Installation einer neuen Anwendung manche ältere Anwendungen nicht funktionieren, da die alten Common Controls nicht mehr vorhanden sind. Windows 2000 und Windows Me verwenden beispielsweise die Version 5 der ComCtl32.

Um das neue Themenmodell zu implementieren, bringt Windows XP die Version 6 der Common Controls mit. Sie kommuniziert über uxtheme.dll mit dem Themenmanager. Allerdings will Microsoft kein Developerkit zur Programmierung eigener Themen auf den Markt bringen. Die Begründung, dass man Probleme verhindern will, wird jedoch Systemprogrammierer nicht davon abhalten, dennoch eigene Themen zu erstellen.