Start >> Anleitungen >> Unattended (unbeaufsichtigte) Installation - Teil 2 von 3
Verwandte Themen:
Bootfähige CD mit Service Pack
Unbeaufsichtigte (unattended) Installation von Windows XP SP 2 - Teil 1
Unbeaufsichtigte (unattended) Installation von Windows XP SP 2 - Teil 3

Im ersten Teil dieser Anleitung habe ich beschrieben, wie man eine Windows CD mit integrierten Service Pack 2 erstellt, wie die Verzeichnisstruktur der Unattended CD aussehen soll, wie man Platz für Anwendungen, Hotfixes usw. schafft und wie man eine Antwortdatei Datei erstellt. Die Größe des C:\XPCD Verzeichnisses ist nun ca 430 MB. Also Platz genug für Anwendungen. Diese Anwendungen sollen aber auch ohne irdendwelche Benutzerangaben installiert werden. Hierzu müssen wir uns zunächst Gedanken machen, wann Registry Tweaks und Anwendungen installiert werden sollen. Dazu muss man einiges zum Installationsablauf wissen.

Text-mode Setup
1. Lädt Treiber
2. Kopiert für Setup benötigte Dateien auf die Festplatte
3. Kopiert den Inhalt des $OEM$ Verzeichnisses auf die Festplatte
4. Startet den Computer neu

GUI-mode Setup

1. DetachedProgram wird bei T-39 Minuten ausgeführt
2. Installiert Geräte
3. Installiert Netzwerk
4. Installiert Startmenü
5. Registriert Komponenten
6. cmdlines.txt wird bei T-12 Minuten ausgeführt
7. [SetupParams] in winnt.sif wird T-9 Minuten abgearbeitet
9. Speichert Einstellungen
10. Löscht Temporäre Dateien und startet den Computer neu

Erster Login

1. Windows XP lädt das Benutzerkonto und dessen persönliche Einstellungen
2. [GuiRunOnce] aus winnt.sif und RunOnceEx werden ausgeführt
3. Desktop lädt zu Ende

Die Verzeichnisstruktur von C:\XPCD sieht immer noch so aus



Erstellen Sie als erstes unter $OEM$ die Verzeichnisse $1 mit dem Unterverzeichnissen apps (für die Anwendungen) und Postinstall und $$ mit dem Unterverzeichnis system32.

Das muss dann so aussehen



Das '$OEM$' Verzeichnis liegt parallel zum i386 Verzeichnis, nicht innerhalb. Während des Text-mode Setups wird das gesamte Verzeichnis auf die Festplatte kopiert.



Die Ordner und Dateien innerhalb '$1' werden in das Hauptverzeichnis der Festplatte kopiert auf der Windows installiert wird. So wird beispielsweise aus 'apps' = 'C:\apps'.
'$$' - Alles was sich hier befindet wird in das Windows Verzeichnis kopiert.

Das Kopieren der Anwendungen auf die Festplatte hat folgenden Sinn. Im weiteren Verlauf wird mit Umgebungsvariablen in Batch-Dateien gearbeitet. So kann man Systempartition frei bestimmen. Vorwiegend wird die Variable '%systemdrive%' benutzt. Wenn z.B. Windows auf der 'D:\' Partition installiert wird, würde die Umgebungsvariable '%systemdrive%' = 'D:\' entsprechen.

Sicherlich stellt sich nun die Frage: "Warum nicht einfach die Anwendungen von der CD direkt starten?" Da der CD-ROM Laufwerksbuchstabe an jedem Computer anders sein kann, gibt es deshalb keine dauerhafte '%CDROM%' Variable. Man könnte jedoch eine Batch-Datei schreiben, die die CD nach einer bestimmten Datei überprüft, und dieser CD dann einem bestimmten Laufwerksbuchstaben zuteilt. Dies werde ich in einer separaten Anleitung beschreiben.

cmdlines.txt

Jetzt werden die gerade erstellten Verzeichnisse mit Leben gefüllt. In dieser Anleitung wird statt den eher tristen Eingabeaufforderungs Batches



mit dem optisch schöneren RunOnceEx Fenster gearbeitet.



Hier wird erklärt wie dies gemacht wird. Zuerst öffnen Sie die 'winnt.sif' Datei mit dem Notepad und entfernen alle [GuiRunOnce] Einträge, da RunOnceEx [GuiRunOnce] vollständig ersetzen wird.

Damit RunOnceEx beim einloggen ausgeführt wird, muss ein Registry Eintrag dafür verwendet werden. Dafür wird die Datei 'cmdlines.txt' benutzt, die in der T-12 Minuten Phase vom Windows Setup ausgeführt wird. Windows XP Setup scannt die 'cmdlines.txt' Datei automatisch nach Befehlen und führt diese aus. Öffnen Sie den Editor und schreiben folgendes:

[COMMANDS]
"RunOnceEx.cmd"

Speichern Sie diese Datei als cmdlines.txt in C:\XPCD\$OEM$\ ab.

RunOnceEx.cmd Datei erstellen

Diese Datei verwendet einen Befehl namens REG um Einträge in die Registry zu importieren. Diese Methode des Registry Importiervorgangs erlaubt es die %systemdrive% Umgebungs-Variablen zu nutzen. Bei der regedit /s regdatei.reg Methode funktioniert das nicht, da der Laufwerksbuchstabe und der Richtige Pfad explizit angegeben werden muss, was unpraktisch ist, wenn Windows auf 'D:\' installiert wird.

Hier die 'RunOnceEx.cmd' aus obigem Beispiel:

cmdow @ /HID
@echo off

SET KEY=HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnceEx

REG ADD %KEY% /V TITLE /D "Installation von diversen Anwendungen" /f

REG ADD %KEY%\001 /VE /D "Installationen werden vorbereitet..." /f
REG ADD %KEY%\001 /V 1 /D "%systemdrive%\apps\prepare.cmd" /f
REG ADD %KEY%\001 /V 2 /D "REGEDIT /S %systemdrive%\apps\user.reg" /f

REG ADD %KEY%\005 /VE /D "ACDSee 6.02" /f
REG ADD %KEY%\005 /V 1 /D "%systemdrive%\apps\acdsee\acdsee.msi REBOOT=REALLYSUPPRESS /qb-" /f
REG ADD %KEY%\005 /V 2 /D "REGEDIT /S %systemdrive%\apps\acdsee\acdsee.reg" /f

REG ADD %KEY%\010 /VE /D "Adaware 6" /f
REG ADD %KEY%\010 /V 1 /D "%systemdrive%\apps\Adaware\aaw6.exe /s" /f

REG ADD %KEY%\015 /VE /D "Adobe Reader 6" /f
REG ADD %KEY%\015 /V 1 /D "%systemdrive%\apps\AdobeReader6\AR6.msi /qn" /f

REG ADD %KEY%\020 /VE /D "ClickTray Kalender" /f
REG ADD %KEY%\020 /V 1 /D "%systemdrive%\apps\clicktraycal\clicktraycal.exe " /f

REG ADD %KEY%\025 /VE /D "DivX Codecs" /f
REG ADD %KEY%\025 /V 1 /D "%systemdrive%\apps\Divx\register.cmd" /f
REG ADD %KEY%\025 /V 2 /D "REGEDIT /S %systemdrive%\apps\DivX\codecreg.reg" /f

REG ADD %KEY%\030 /VE /D "Fish ScreenSaver" /f
REG ADD %KEY%\030 /V 1 /D "REGEDIT /S %systemdrive%\apps\fish\fish.reg" /f

REG ADD %KEY%\035 /VE /D "Irfan View 3.80" /f
REG ADD %KEY%\035 /V 1 /D "REGEDIT /S %systemdrive%\apps\iview\Irfanview.reg" /f

REG ADD %KEY%\040 /VE /D "IsoBuster" /f
REG ADD %KEY%\040 /V 1 /D "%systemdrive%\apps\isobuster\IsoBuster.exe /VERYSILENT /SP-" /f
REG ADD %KEY%\040 /V 2 /D "taskkill /F /IM isobuster.exe" /f

REG ADD %KEY%\045 /VE /D "Media Player 9" /f
REG ADD %KEY%\045 /V 1 /D "%systemdrive%\apps\MediaPlayer\mpsetup.exe /Q:A /R:N" /f

REG ADD %KEY%\050 /VE /D "Nero Burning ROM 6" /f
REG ADD %KEY%\050 /V 1 /D "%systemdrive%\apps\Nero\Nero6009.exe /SN=Seriennummer /WRITE_SN /SILENT /NOREBOOT" /f

REG ADD %KEY%\055 /VE /D "Norton Antivirus" /f
REG ADD %KEY%\055 /V 1 /D "%systemdrive%\apps\NAV2004\nav\nav.msi /QN" /f
REG ADD %KEY%\055 /V 2 /D "taskkill /F /IM CfgWiz.exe" /f


Speichern Sie die Datei als 'RunOnceEx.cmd' in C:\XPCD\$OEM$\ ab.

Zwischen den einzelnen Aufwendungen gibt in dem Beispiel immer 5er Sprünge (erstes was ausgeführt wird: REG ADD %KEY%\001; zweites: REG ADD %KEY%\005; drittes: REG ADD %KEY%\010, usw.). Dies hilft einem im nachhinein noch Anwendungen hinzuzufügen, wenn die Anwendungen alphabetisch sortiert sein sollen. So kann man zwischen 2 bestehenden Registry Keys noch einen hinzufügen, z.B. wir haben 010 und 015, dazwischen können noch die Schlüssel 011, 012, 013 und 014 benutzt werden. Wenn die RunOnceEx.cmd beim ersten Login ausgeführt wird, wird das ganze in nummerischer Reihenfolge ablaufen.

RunOnceEx.cmd im Detail:

cmdow @ /HID
Verhindert, das man das Eingabeaufforderungsfenster zu sehen bekommt. cmdow.zip extrahieren und 'cmdow.exe' nach 'C:\XPCD\$OEM$\$$\System32\' kopieren. Der Eingabeaufforderung wird es dadurch ermöglicht 'cmdow.exe' aus jedem Verzeichnis zu starten.

@echo off
Versteckt das C:\> und jeden Befehl der in der .cmd ausgeführt wird

SET KEY=HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnceEx
Legt fest wo in der Registry Werte geschrieben werden - so muss nicht immer den kompletten Pfad angeben. Der Registry-Wert weist Windows an, die einzelen Befehle einmalig (RunOnceEx) beim Einloggen auszuführen.

REG ADD %KEY% /V TITLE /D "Installation von diversen Anwendungen" /f
Legt den Titel des RunOnceEx Fensters fest. Was zwischen in den Hochkommas (" ") steht ist anpassbar.

REG ADD %KEY%\055 /VE /D "Norton Antivirus" /f
Legt den Namen des Befehles fest.

REG ADD %KEY%\055 /V 1 /D "%systemdrive%\apps\NAV2004\nav\nav.msi /QN" /f
Die Installationsdatei, die ausführt wird mit dem Schalter '/QN'. Die Installation läuft ohne Benutzereingaben ab.

REG ADD %KEY%\055 /V 2 /D "taskkill /F /IM CfgWiz.exe" /f
Mit diesem Befehl wird ein autom atrischer Neustart unterbunden. 'Taskkill ist in XP Prof. enthalten

Man kann also einer Anwendung mehrere Befehle zuteilen indem man /V E, V 1, V 2 usw. benutzt. Der kleine schwarze Pfeil wird erst zur nächsten Anwendung weiterspringen wenn alle Befehle der Sektion abgearbeitet sind.

Für mehr Informationen hierzu geben 'REG ADD /?' in der Eingabeaufforderung ein.

Um Ihre eigene 'RunOnceEx.cmd' zu testen, führen Sie einen Doppelklick auf die Datei aus. Es werden dann Registry-Einträge in
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnceEx\

geschrieben. Öffnen Sie danach die Registry und navigieren Sie zu dem Pfad. Jetzt können Sie überprüfen, ob alle Einträge einwandfrei importiert wurden. Sie können die Einträge löschen, es sei denn Sie wollen mal zum Test das RunOnceEX Fenster beim nächsten Neustart sehen. Wenn die Dateien nicht existieren, bekommt man dann eine Meldung das die Datei nicht gefunden werden konnte.

Vorteile von RunOnceEx:
Schlicht und professionell.
Einfacher zu bearbeiten bzw. aktualisieren.

Silent Switche für Anwendungen

Bei fast jedem Installationsprogramm gibt es sogenannte "unattend switches". Soll heissen, dass die Software ohne die lästige 'WEITER' Klickerei installiert wird. Da die Anwendungen in unserer Unattended Windows XP SP2 CD natürlich auch ohne Klickerei installiert werden sollen, müssen diese Schalter gesetzt werden. In dem vorigen Kapitel sind schon einige vorhanden. Hier noch ein paar:

Diskeeper 8.0
Setup.exe /s /v/qn

OO Defrag pro
oo_defrag.msi /QN
00_DefragPro\register.reg

Sun Java 1.4.2
j2re-1_4_2_03-windows-i586-p.exe /s /v/qn

Winamp 5.02
Winamp.msi /QN

WinRAR 3.20
WnRAR320.exe /s

ZoneAlarm Free 3.7.202
zasetup37_202.exe /s /noreboot

Um zu testen, welche Switches unterstützt werden, klicken Sie auf Start-> Ausführen und ziehen die Datei per Drag and Drop in die Ausführenzeile. Hinter der Datei dann noch /? angeben, dann wird Installer seine Switches verraten.

Wenn Sie keine Switches kennen, sollten Sie mal in diesem Forum nachsehen. Ist in englischer Sprache.

Microsoft Windows Installer
Anwendungen erkennt man an der *.MSI Datei. Diese Anwendungen können meist mit den Schaltern /QB und /QN installiert werden.
/qb Zeigt ein "Fortschritt" Fenster an
/qn Zeigt kein "Fortschritt" Fenster an, es wird kein Fenster zum Vorschein kommen.

Reboot verhindern
Um zu verhindern das nach der Installation neugestartet wird, muss der Schalter REBOOT=Suppress, in Verbindung mit /qn oder /qb, umgeben von Hochklammern benutzt werden, Beispiel:setup.msi "/qn REBOOT=Suppress"

OEM Infos und Logo

Man kann seine OEM Infos & Logo ebenfalls unbeaufsichtigt installieren. Sie müssen 2 Dateien erstellen - 'oeminfo.ini' und 'oemlogo.bmp'. Öffnen Sie den Editor und kopieren das folgende Beispiel. Die Angaben können natürlich angepasst werden.

[General]
Manufacturer=Unattended XP CD
Model=
[OEMSpecific]
SubModel=
SerialNo=
OEM1=
OEM2=
[Support Information]
Line1=Support + Kontakt:
Line2=
Line3= norbert@heisig-it.de
Line4= www.heisig-it.de

Speichern Sie die Datei als 'oeminfo.ini'

Erstellen Sie ein neues Bild mit Pixelgrösse 180x114 (Breite x Höhe). Dieses Bild wird als 'oemlogo.bmp' gespeichert. Es empfiehlt sich Transparenz zu behalten, damit sich das Bild dem Hintergrund des Systemeigenschaften Fensters anpasst!

Test der beiden Dateien:
Kopieren Sie die Dateien in das Verzeichnis 'Windows\system32'. Anschließend öffnen Sie das Systemeigenschaften Fenster über Start-> Einstellungen-> Systemsteuerung-> System oder Rechtsklick auf Arbeitsplatz-> Eigenschaften um das Ergebnis zu betrachten.





Kopieren Sie beide Dateien, 'oeminfo.ini' und 'oemlogo.bmp' nach 'C:\XPCD\$OEM$\$$\System32\'. Während Windows Setup werden die beiden Dateien ins Windows\system32 Verzeichnis kopiert.

Im dritten Teil geht es um das Verzeichnis 'PostInstall', Einbindung von Patches und Hotfixes, Treiber, Registry Tweaks und wie man dann schließlich die unattended CD erstellt.

Verwandte Themen:
Bootfähige CD mit Service Pack
Unbeaufsichtigte (unattended) Installation von Windows XP SP 2 - Teil 1
Unbeaufsichtigte (unattended) Installation von Windows XP SP 2 - Teil 3

Copyright © 2002 - 2014 Norbert Heisig
Impressum | Datenschutz | Disclaimer | Sitemap