Vorwort
Nachdem wir uns in einem früheren Artikel mit der Modifikation des Bootlogos unter Windows 2000 Professional beschäftigt haben, wollen wir euch nun im Zuge der bevorstehenden Windows XP Einführung diese Anpassung beim neusten Spross der Windows Familie erläutern. Und eins gleich vorne weg; so einfach wie bei Windows 2000 hat es uns Microsoft leider nicht gemacht. Der im Folgenden beschriebene Weg sollte sich auf alle Windows XP Versionen, die seit der Beta 2 erschienen sind, anwenden lassen.
Allgemeines
Zum Verändern des Bootlogos von Windows XP ist die Veränderung einer Systemdatei des Betriebssystems nötig. Wir übernehmen keine Verantwortung für jegliche Art von Schäden oder Dateiverlusten, die bei der Manipulation der Datei auftreten können. Um Fehler schon im vornherein zu vermeiden, solltet ihr jeden Schritt zwei Mal überprüfen, um so die Problemstellen auf ein Minimum zu reduzieren.
Überblick
Wie bereits erwähnt, ist es unser Ziel, dass Bootlogo von Windows XP an unsere eigenen Bedürfnisse anzupassen. Von der grundsätzlichen Herangehensweise hat sich im Vergleich zur Modifikation des Windows 2000 Bootlogos auch unter Windows XP nicht viel verändert. Auch diesmal ist es wieder unser Ziel, das Bootlogo erst einmal zu finden. Auch bei Windows XP ist das Bootlogo in der ersten Anwendung gespeichert, welche beim Systemstart ausgeführt wird. Die Rede ist hier von der ntoskrnl.exe die im Folgenden unsere ganze Aufmerksamkeit erhält. Um die in der Datei vorhandenen Bilder auslesen und bearbeiten zu können, bedienen wir uns eines Tools, das als Shareware kostenlos im Internet zur Verfügung steht. Das Programm trägt den Namen Resource Hacker und kann in 32bit Dateien verborgene Ressourcen wie Cursors, Icons, Grafiken, Menüs und Dialogboxen übersichtlich ausgeben. Für uns sind in diesem Fall natürlich nur die Grafiken interessant, wenn man sich jedoch eingehender mit dem Programm und den Windows Systemdateien beschäftigt, wird man noch weitaus mehr als nur den Startbildschirm verändern können. Um nun jedoch bei dem Windows Start zu unserem eigenen Logo zu kommen, müssen wir im Schnellüberblick folgende Schritte abarbeiten.
- Das Bootlogo von Windows XP und dazu gehörende Komponenten müssen aus der Startanwendung ausgelesen werden.
- Wir müssen ein neues Bootlogo erstellen, das die gleichen Farben und Eigenschaften wie das Original von Microsoft besitzt.
- Unser Bootlogo muss in die Startanwendung von Windows XP geschrieben werden.
- Die System File Protection von Windows XP muss umgangen oder ausgehebelt werden.
- Das Original der ntoskrnl.exe muss mit unserer modifizierten Version ausgetauscht werden.
Die Punkte die uns an dieser Stelle noch größere Kopfschmerzen bescheren werden, sind hierbei lediglich Punkt 1 und 2, die übrigen stellen uns vor keine größeren Probleme, da wir sie bereits bei Windows 2000 umgangen haben und sich die dazu nötigen Arbeitsschritte unter Windows XP nicht verändert haben.
Schritt für Schritt (Teil 1)
Um die Sache etwas zu vereinfachen, gehen wir im Folgenden davon aus, das Windows XP im Standardpfad C:\Windows installiert wurde. Des Weiteren solltet ihr euch etwas Zeit für die folgende Anleitung nehmen, um auch wirklich keine Fehler zu machen. Denn die Rettung über die Windows Recovery Console dauert deutlich länger, als einen Schritt vor dem Ausführen zwei Mal zu überprüfen.
Schritt 1: Bevor wir auch nur einer Systemdatei verändern, solltet ihr von der ntoskrnl.exe eine Sicherheitskopie erstellen, die ihr auf der Windowsfestplatte im Windowspfad unter System32\ntoskrnl.exe findet. Kopiert diese Datei jedoch keinesfalls auf euren Windows Desktop, da ihr in der Recovery Console im Falle eines Falles keinen Zugriff auf den Pfad habt. Stattdessen solltet ihr die Datei z.B. direkt auf C: unter dem Namen ntoskrnl_kopie.exe speichern. Und nach dem Motto, doppelt hält besser, ist es auch anzuraten die Datei nochmals unter C:\Windows\System32 mit dem Namen ntoskrnl_kopie2.exe abzulegen.
Schritt 2: Ladet euch das vorhin bereits erwähnte Programm „Resource Hacker [1]“ herunter, entpackt es und führt die „ResHacker.exe“ aus. Mit dem Resource Hacker öffnen wir nun die Datei ntoskrnl.exe im Pfad C:\Windows\System32, was mit „File“ und „Open“ in Windeseile erledigt ist.
Schritt 3: Wenn das geschafft ist, sehen wir auf der rechten Seite des Programms eine Baumstruktur mit den Ressourcen der ntoskrnl.exe. Die für den Startbildschirm verantwortlichen Grafiken sind hierbei im Gegensatz zu Windows 2000 in mehreren Dateien verteilt. Des Weiteren solltet ihr euch nicht wundern, dass der Resource Hacker den Großteil der Grafiken die unter den Positionen 1 bis 12 stehen, als völlig schwarz anzeigt. Ob es nun böse Absicht von Microsoft war, um uns das Modifizieren des Logos zu erschweren, oder nur ein Mittel um das Bootlogo von Windows XP aus einen schwarzen Hintergrund einzublenden spielt hierbei keine Rolle. Im Späteren werde ich euch zeigen, wie ihr diesen schwarzen Ungetümen etwas Farbe verpasst. Um jedoch nicht jeden Schritt wiederholen zu müssen, ist hier eine Auflistung der Funktionen der einzelnen Grafiken:
- Position 1: Grundlayout des Windows XP Bootlogos mit Windows Symbol, Microsoft-Schriftzug und Rahmen für den Ladebalken. Der Betriebssystem Typ wie Professional oder Home Edition sowie der eigentliche Ladebalken ist hier nicht zu finden. Die Grafiken selber sind versteckt und werden im nächsten Schritt entschlüsselt.
- Position 2: Hier wird der Hibernating Text, sowie der aktuelle Hibernating-Balken gespeichert. Beide haben jedoch nur sehr wenig mit dem Systemstart zu tun, da sie erst beim Shutdown, d.h. nur beim Hibernate benötigt werden. Der Text und die Grafiken sind nicht versteckt.
- Position 3: An dieser Position findet ihr einen Text der für die meisten Nutzer mit ATX-Netzteil keine Bedeutung mehr haben sollte. Die Rede ist vom „Sie können den Rechner jetzt Ausschalten“ Dialog, der bei einem funktionierenden System nur in Ausnahmefällen erscheinen sollte. Da er jedoch auch nur beim Shutdown erscheint, hat er keine besondere Bedeutung für uns. Der Text und die Grafiken sind nicht versteckt.
- Position 4: Grauer Ladebalken der vermutlich bei Windows XP Server verwendet wird. Hat jedoch keine Bedeutung für Nutzer der Home oder Professional Edition.
- Position 5: Hier findet sich ein Windows Logo, das beim Herunterfahren von Windows XP angezeigt wird. Es ist nicht codiert und kann somit auf einfache Weise modifiziert werden. Relevanz der Datei für unser Vorhaben ist jedoch gleich null.
- Position 6: Diese Grafik wird angezeigt, wenn Scandisk beim Booten ausgeführt wird, weil z.B. zuvor ein Fehler aufgetreten ist. Bastler können sich gerne an diesem Logo versuchen, werden es jedoch nur in Ausnahmefällen zu Gesicht bekommen.
- Position 7/8/9: Diese drei Positionen enthalten die Ladebalken in versteckter Form, der anschließend in einem bestimmten Bereich beim Starten bewegt wird. Position sieben findet bei Windows XP Embedded, acht bei Professional und neun bei Home Edition Anwendung. Für unsere späteren Modifikationen sollten wir uns diese Position bereits vormerken.
- Position 10/11/12: Hier finden sich die Schriftzüge der einzelnen Windows XP Versionen. Unter zehn der für Professional, hinter elf hat sich die Home Edition versteckt und zwölf ist für Embedded reserviert. Neben den Grafiken auf Position 1 und 7-9 eine absolut wichtige Bitmap auf dem Weg zum perfekten Bootlogo. Wie ihr seht, sind damit jedoch alle für uns relevanten Grafiken codiert. Im Folgenden werden wir uns deshalb mit der Verschlüsselung etwas genauer befassen.



Schritt 4: Zunächst solltet ihr die Bitmaps, die ihr für euer Windows modifizieren müsst, auf der Festplatte speichern. Dazu könnt ihr eine im Resource Hacker enthaltene Funktion nutzen. Unter Action > Save Bitmap [x] könnt ihr ein Bitmap, welches an einer bestimmten Position in der ntoskrnl.exe enthalten ist auf der Festplatte speichern. Ihr solltet als Namen die Positionsnummer wählen, um spätere Verwechslungen ausschließen zu können. Ich würde für noch folgende Prozeduren einen Ordner Bootlogo anlegen um dort die Bitmaps abzulegen, doch das muss jeder für sich selbst entscheiden. Windows XP Professional Nutzer müssten die Bitmaps an den Positionen 1, 8 und 10 einzeln auf der Festplatte speichern. Für glückliche Besitzer von Windows XP Home Edition sind Position 1, 9 und 11 von größerer Bedeutung.
Schritt für Schritt (Teil 2)
Schritt 5: Nun wird es Zeit ein Grafikprogramm zu starten. Ich persönlich kann hier Paint Shop Pro [2] wärmstens empfehlen, Versuche mit anderen Programmen hatten im Endeffekt nur ein Misslingen zur Folge. Auch Besitzer von Photoshop sollten an dieser Stelle zu dem von mir empfohlenen Programm schwenken, euer späteres Logo könnt ihr jedoch gerne mit Photoshop gestalten. Aktuell gehen wir jedoch erst einmal mit Paint Shop Pro zu Werke, das leider auch seine Macken hat. Startet das Programm und öffnet die Bitmap die in der ntoskrnl.exe an Position 1 war. Wenn ihr meinen Empfehlungen gefolgt seid, wäre dies 1.bmp im Ordner Bootlogo. Wie ihr seht, zeigt auch Paint Shop Pro ein völlig schwarzes Bild an. Wenn man jedoch etwas genauer hinsieht, dann erkennt man, dass das Windows Bootlogo sowie die anderen verschlüsselten Grafiken eine Farbpalette mit 16 Farben enthalten. Da das Bild jedoch völlig schwarz ist, hätte eigentlich eine Farbe in der Palette vollkommen ausgereicht. Wenn man den Gedanken nun weiter spinnt und etwas mit den Palettenfarben herumexperimentiert, so sieht man, dass das Bootlogo zwar schwarz ist, jedoch bei manchen Pixel eine andere Farbe aus der Palette genutzt wird. Da jedoch jede Palettenfarbe schwarz ist, sehen wir hier keinen Unterschied. Doch das wird sich gleich ändern. Wechselt nun zu Paint Shop Pro, wo ihr die erste Grafik geöffnet habt und wählt Colors » Edit Palette aus.



Ihr könnt nun jede Palettenfarbe mit einen Doppelklick auf die Farbe verändern. Im Prinzip machen wir jetzt genau das, was Windows XP beim Booten selber macht, denn wir weisen jeder Palettenfarbe ihre Bestimmungsfarbe zu. Da die Funktion von Paint Shop Pro, mit der man eine Farbpalette laden kann, im Zusammenhang mit den Windowsbootlogos etwas spinnt, müsst ihr die folgenden Farben per Hand unter Edit Palette an die entsprechende Stelle setzen. Die Farben sind im RGB Modus angegeben:
| Position | Rot | Gelb | Blau | Dargestellt |
|---|---|---|---|---|
| 1. | 0 | 0 | 0 | █ |
| 2. | 0 | 0 | 0 | █ |
| 3. | 32 | 26 | 21 | █ |
| 4. | 45 | 62 | 210 | █ |
| 5. | 83 | 101 | 1 | █ |
| 6. | 178 | 53 | 5 | █ |
| 7. | 70 | 70 | 70 | █ |
| 8. | 137 | 146 | 0 | █ |
| 9. | 94 | 127 | 252 | █ |
| 10. | 247 | 107 | 32 | █ |
| 11. | 141 | 166 | 255 | █ |
| 12. | 142 | 220 | 4 | █ |
| 13. | 243 | 188 | 27 | █ |
| 14. | 188 | 188 | 188 | █ |
| 15. | 255 | 255 | 255 | █ |
| 16. | 255 | 255 | 255 | █ |
Wenn ihr alles richtig gemacht habt, dann sollte aus dem schwarzen Frosch nun ein verwunschenes buntes Bootlogo von Windows XP geworden sein. Wiederholt den Vorgang für die zwei anderen Grafiken die wir vorhin aus der Startdatei extrahiert haben. Ist das geschehen, haben wir drei Grafiken mit denen wir arbeiten können.


Schritt 6: An dieser Stelle ist nun der künstlerisch begabte Teil in euch gefragt. Ihr habt nun vorerst die freie Wahl des Grafikprogramms. Für den Anfang würde ich euch empfehlen, lediglich kleine Logos zu erstellen, die beim Start nicht den gesamten Bildschirm einnehmen. Für diese Empfehlung gibt es zwei einfache Gründe. Zum einen könnt ihr nur die 16 Farben des bestehenden Bootlogos nehmen, wodurch es natürlich schwer wird große Bilder mit den entsprechenden Farben zu versorgen, und zum anderen wird in der unteren Bildmitte der Name der Windowsversion, der, wie bereits erwähnt, an Position 10 bis 12 gespeichert ist, über das Bootlogo gelegt, der somit einen Teil der Grafik verdecken würde. Man kann diesen Effekt natürlich bewusst einsetzen und den Teil der überlagert werden würde direkt in die Grafik die den Windowsnamen enthält abspeichern. Eine Erklärung würde jedoch den Rahmen des Artikels sprengen. Ich gehe daher davon aus, dass ihr lediglich eine kleine Grafik im Bootlogo ablegen wollt.



Schritt für Schritt (Teil 3)
Schritt 7: Wenn ihr eine Grafik für das Bootlogo erstellt habt, so solltet ihr diese ebenfalls mit Paint Shop Pro öffnen. Um Platz für euer Logo zu haben, solltet ihr zunächst das Windows XP Logo mit dem Auswahlwerkzeug auswählen und dann ausschneiden. Beachtet dabei, dass ihr den Hintergrund mit dem Füllwerkzeug wieder mit Schwarz füllt. Anschließend markiert ihr mit dem Auswahlwerkzeug euer neues Logo und wählt Edit » Copy oder betätigt die Tastenkombination Strg+C. Wechselt zum Windows XP Bootlogo und wählt Edit » Paste » As New Selection, beziehungsweise nutzt die Tastenkombination Strg+E. Ihr solltet nun euer Logo im Hauptbootlogo von Windows XP haben. Mitunter sollten sich die Farben von eurem Logo leicht verändert haben, falls die Farben eures Logos nicht in der Farbpalette des Windows XP Bootlogos vorkamen. Ihr solltet auch darauf achten, dass euer Logo in etwa in der gleichen Höhe wie das alte Windows XP Logo ist, da es sonst vom Windowsnamensschriftzug beim Booten überdeckt wird. Im nächsten Schritt werden wir diesen Schriftzug einschwärzen, doch auch das Schwarz würde euer Logo überdecken. Damit müssen wir jedoch leben. Unser neues Bootlogo, d.h. unsere Grafik für Position 1 der ntoskrnl.exe, wäre damit soweit fertig. Wir müssen nun lediglich die Ausgangsfarben wiederherstellen. Dafür müsst ihr im Menü Color » Edit Palette auswählen. Anschließend müsst ihr jede Palettenfarbe auf schwarz (RGB 0 0 0) setzen. Adobe Photoshop hat mit dieser Funktion einige Probleme, weshalb ich eingangs Paint Shop Pro für diese Bearbeitungen empfohlen habe. Nun können wir unser neues Bild mit Datei » Speichern unter auf der Festplatte mit dem Namen 1.bmp im Ordner Bootlogo ablegen. Ihr solltet dabei bei den Optionen Run Length Encoding (RLE) aktivieren. Damit wäre unser Hauptbootlogo fertig.



Schritt 8: Um nun den Namensschriftzug von Windows, wie z.B. Professional, los zu werden, müsst ihr 10.bmp oder 11.bmp, je nach dem ob ihr Windows XP Professional oder Windows XP Home Edition besitzt, mit Paint Shop Pro öffnen. Ziel ist es jetzt, zum einen den Text sichtbar zu machen, und ihn anschließend zu löschen.



Dafür müssen wir erneut die Palettenfarben editieren. Also Color » Edit Palette auswählen und folgende Palettenfarben verändern. Da der Namensschriftzug größtenteils weiß ist, brauchen wir nur drei Farben zu verändern.
| Position | Rot | Gelb | Blau | Dargestellt |
|---|---|---|---|---|
| 3. | 32 | 26 | 21 | █ |
| 7. | 70 | 70 | 70 | █ |
| 14. | 188 | 188 | 188 | █ |
| 15. | 255 | 255 | 255 | █ |
| 16. | 255 | 255 | 255 | █ |
Wir sollten nun den Schriftzug sehen. Mit dem Auswahlwerkzeug können wir den Text markieren und mit „entfernen“ ganz einfach löschen. Beachtet hierbei, dass die Hintergrundfarbe von der ersten Palettenfarbe stammen sollte. Setzt nun alle Palettenfarben wieder auf schwarz und speichert die Grafik mit RLE unter ihrem alten Namen. Um die Sache zu vereinfachen, habe ich diese leeren Grafiken bereits vorbereitet. Ihr könnt die Grafiksammlung zusammen mit meinem eigenen Bootlogo vom ComputerBase Server herunterladen.


Schritt für Schritt (Teil 4)
Schritt 9: An für sich haben wir an dieser Stelle alle Pflichtgrafiken verändert. Wer nun noch einen anderen Statusstreifen haben will, der muss die Grafiken 8.bmp oder 9.bmp, je nach dem welches Betriebssystem verwendet wird, ebenfalls verändern. Ihr solltet hierfür die Farbpalette wie in Schritt 5 beschrieben verändern. Ich werde jedoch nicht weiter darauf eingehen, denn schließlich wollt ihr ja auch noch ein wenig damit herum experimentieren.


Schritt 10: Wenn ihr nun alle neuen Grafiken in alle fertigen Grafiken auf der Festplatte gespeichert habt und diese auch alle eine völlig schwarze Farbpalette besitzen, so müssen wir diese nun nur noch in die ntoskrnl.exe bringen. Dazu nutzen wir wieder unseren Resource Hacker. Falls wir das Programm in der Zwischenzeit geschlossen haben, sollten wir nun erneut das Programm starten und die ntoskrnl.exe öffnen. Wir wählen nun „Action“ und anschließend „Replace Bitmap“. Im folgenden Dialog wählen wir das Bild mit der jeweiligen Ziffer aus, das wir ersetzen möchten und wählen mit „Open File with new Bitmap“ unser eben erstelltes Bild für diese Position aus und drücken „Replace“. Das Bild sollte nun in der Datei gespeichert sein. Windows XP Professional Nutzer müssten somit Position 1 und 10 ersetzen, Windows XP Home Edition Besitzer dagegen 1 und 11. Wenn ihr zusätzlich noch die Ladestatus-Grafik verändert habt, müsst ihr noch Grafik 8 (Pro) bzw. Grafik 9 (Home) ersetzen.


Schritt 11a: Als nächstes müssen wir die Datei speichern. Da die System File Protection jedoch das Überschreiben der alten ntoskrnl.exe verhindert. Speichern wir unsere neue *.exe am besten auf C:\ unter dem Namen ntoskrnl_neu.exe ab.
Schritt 12a: Im nächsten Schritt müssen wir nun die System File Protection austricksen. Da ich den Dateischutz persönlich nicht abstellen möchte, gehen wir einen kleinen Umweg. Da alle für uns wichtigen Dateien gespeichert sind, starten wir nun das System neu. Wir drücken jedoch F8 am Anfang und booten nur in den abgesicherten Modus mit Eingabeaufforderung. Ist das erledigt, sehen wie die klassische Eingabeaufforderung. Da die System File Protection zu diesem Zeitpunkt nicht aktiviert ist, können wir nun unsere neue Datei mit der alten überschrieben. Dazu geben wir in der Kommandozeile copy c: toskrnl_neu.exe c:\windows\system32\ntoskrnl.exe ein. Bei der Frage ob die vorhandene Datei überschrieben werden soll, tippen wir hoffnungsvoll ein „J“ ein.


Schritt 13a: Beim anschließenden Neustart sollten wir nun unser eigenes Logo sehen. Sollte Windows nun aus irgendeinem Grund nicht mehr starten, so können wir mit der Windows XP Installations-CD in die Recovery Console booten. Wir haben nun zwei Originale der ntoskrnl.exe und zwar c:\ntoskrnl_kopie.exe und c:\windows\system32\ntoskrnl_kopie.exe. Für den Fall das nichts mehr geht, müssen wir wir nur noch die c:\windows\system32\ntoskrnl.exe mit einer Sicherheitskopie überschreiben.
Update: Schritt 11b:
Wer die System File Protection nicht überlisten möchte, schließlich hat sich Microsoft bei dieser Funktion schon etwas gedacht, kommt auch mit einer Modifikation der boot.ini mit dem Notepad ans Ziel.
Hierfür sollte die modifizierte ntoskrnl.exe als beispielsweise ntoskrnl_neu.exe im Pfad c:\windows\system32 abgespeichert werden. Anschließend muss man die boot.ini öffnen. Diese Datei befindet sich versteckt auf c: und kann mit dem Notepad, oder einem anderen Texteditor, mit der direkten Eingabe des Dateinamens (auch wenn man die Datei nicht zu sehen scheint) geöffnet werden. Die in der boot.ini enthaltenen Werte sehen in etwa wie folgt aus:
Zitat[boot loader]
timeout=30default=multi(0)disk(0)rdisk(0)partition(1)Windows
[operating systems]
multi(0)disk(0)rdisk(0)partition(1)Windows="Windows XP" /fastdetect
Um Windows wahlweise auch mit dem modifizierten Bootlogo starten zu können, muss folgende Zeile hinzugefügt werden:
Zitatmulti(0)disk(0)rdisk(0)partition(1)Windows="Mein Bootlogo" /fastdetect /KERNEL=ntoskrnl_neu.exe
Es ist wichtig, dass die Groß- und Kleinschreibung genau übereinstimmen. Mit dem Parameter /KERNEL= weißt man dem Boot-Loader dem zu ladenden Kernel zu. Nach Abschluss der Modifikationen müsste die boot.ini in etwa folgendermaßen aussehen:
Zitat[boot loader]
timeout=30default=multi(0)disk(0)rdisk(0)partition(1)Windows
[operating systems]
multi(0)disk(0)rdisk(0)partition(1)Windows="Windows XP" /fastdetectmulti(0)disk(0)rdisk(0)partition(1)Windows="Mein Bootlogo" /fastdetect /KERNEL=ntoskrnl_exe.exe
In diesem Fall ist Windows XP mit klassischem Bootlogo allerdings nach wie vor die Option, die beim Startvorgang automatisch ausgewählt werden wird. Wer per default mit seinem Bootlogo starten möchte, muss die neu hinzu gefügte Zeile vor der bereits in der boot.ini vorhandenen Zeile aber nach [operating systems] einfügen.
Fazit
Durch ein paar kleine Tricks sind wir nun auf relativ einfache Weise an unser eigenes Bootlogo gekommen. Wenn es noch Fragen oder Probleme bei dem oberen beschriebenen Prozedere geben sollte, so könnt ihr diese gerne in einen Extra für diesen Artikel erstellen Forumbeitrag [3] schreiben. Dort findet ihr auch einige weitere Startlogos, die andere Leser freundlicherweise bereitgestellt haben. Für spezielle Fragen zu diesem Artikel sollte auch das Forum [4] genutzt werden.
