Windows-7-Installation mit "D:\Dokumente", "E:\Einstellungen" und "E:\Programme"

1. Vorraussetzungen
2. Vorbereitung
3. ändern der Pfade für Programme
4. ändern der Nutzerpfade
5. Abschluss
6. Diskussion/Fragen/Anregungen
7. Anmerkungen/Kritikpunkte

1. Vorraussetzungen

- ein funktionsfähiges Windows 7 Image
- ein Texteditor mit automatisierter "Suchen/Erstetzen-Funktion"
(ich empfehle "Notepad++ portable")
- das Tool Imegex aus dem "Windows SIM" o.ä.
- das Tool Oscdimg aus dem "Windows SIM" oder ein Brennprogramm, mit dem man eine bootbare DVD erstellen kann
- ein Brennprogramm oder ein InstallFromUSBCreator

sonstige Vorraussetzungen:
- Administratorrechte (oder die Möglichkeit *.cmd-files mittels "Ausführen als" bzw. "runas" zu starten, kann in der Registry eingestellt werden)
- die Berechtigung Besitzrechte zu übernehmen (bei "Ausführen als" muss nur der ausführende Benutzer diese Berechtigung haben)
- einen möglichst Wachen Verstand um unnötiges mounten/unmounten/brennen oder andere zeitaufwendige Vorgänge so selten wie möglich wiederholen zu müssen (an diesem Punkt hänge ich derzeit selbst noch^^)

2. Vorbereitung

- Kopieren des Inhalts der Windows-Installations-DVD bzw. des Installations-Images nach "beliebigerPfad\7DVD"
-
erstellen einer WimMount.cmd mit folgendem Inhalt:
imagex /check /mountrw [beliebigerPfad\7DVD\sources\install.wim] [Imagenummer] [beliebigerPfad\Wim]
pause
die Imagenr. der gewünschten Installationsform findet man mit
imegex /info [beliebigerPfad\7DVD\sources\install.wim]
-
erstellen einer WimSave.cmd mit folgendem Inhalt:
imagex /unmount /commit [beliebigerPfad\Wim]
imagex /cleanup
pause
- optional: erstellen einer WimReject.cmd identisch zur WimSave.cmd allerdings ohne "/commit"
-
erstellen einer PeMount.cmd mit folgendem Inhalt:
imagex /check /mountrw [beliebigerPfad\7DVD\sources\boot.wim] 1 [beliebigerPfad\PE]
-
erstellen einer PeSave (PeReject) mit folgendem Inhalt:
imagex /unmount /commit [beliebigerPfad\PE]
imagex /cleanup
pause
- erstellen einer SetupMount/SetupSave identisch zur PeMount/PeSave nur mit 2 statt 1 als Imagenr. und einem andern Zielverzeichnis (z.B. Setup)

Das Erstellen so vieler Scripte erscheint auf den ersten Blick vielleicht unnötig, erspart aber so manchen Frust einer Neueingabe, wenn mal was schief geht (jeder vertippt sich mal, bei mir ist das eine Systemkomponente im Stammhirn)

Als abschließenden Punkt in unserer Vorbereitung legen wir eine Sicherheitskopie der "install.wim", der "boot.wim" sowie aller "*.clg"-Dateien im source Verzeichnis an. Wenn man der Meinung ist man ist in der Bearbeitung soweit fortgeschritten, dass man etwas funktionsfähiges zustande gebracht und dies auch erfolgreich getestet hat, sollte man diesen Schritt mit den bearbeiteten Dateien wiederholen. Es gilt:
Lieber zweimal zu viel als einmal zu wenig gesichert.

3. ändern der Pfade für Programme

Wir mounten nun das zu installierende Image mit unserer WimMount.cmd. Wer, so wie ich, mit eingeschränkten Rechten arbeitet, muss diese über "Ausführen als" starten. Wenn das Image fehlerfrei gemountet wurde, starten wir RegEdit mit Admin-Rechten. In der Schlüsselleiste (links) den Schlüssel "HKEY_LOCAL_MACHINE" anwählen und unter "Datei" -> "Struktur laden" die Datei "beliebigerPfad\Wim\Windows\system32\config\software" auswählen.



Als Name des geladenen Registrierungsarmes z.B. "WimSoftware" angeben.
Den Schlüssel "WimSOFTWARE" mit einem Rechtsklick anwählen und "exportieren" auswählen. Als Speicherort "beliebigerPfad\WimSOFTWARE.reg" angeben.




Die "WimSOFTWARE.reg" mit "Notepad++" oder äquivalentem Editor öffnen und...

... Tastenkombination STRG + F -> den Reiter Ersetzen ansteuern ->
Suchen nach:"Program Files (x86)"
Ersetzen durch: "Programme32"
-> "Alle ersetzen"
... Tastenkombination STRG + F -> den Reiter Ersetzen ansteuern ->
Suchen nach:"Program Files"
Ersetzen durch: "Programme64"
-> "Alle ersetzen"
... Tastenkombination STRG + F -> den Reiter Ersetzen ansteuern ->
Suchen nach:"D:\\Programme"
Ersetzen durch: "E:\\Programme"
-> "Alle ersetzen"


Unbedingt die Reihenfolge und den Doppel-Backslash beachten!

Wer die Ordner nicht umbenennen will, lässt die ersten beiden Schritte aus und ersetzt "C:\\Program Files" mit "E:\\Program Files" (das habe ich allerdings nicht getestet).
Zurück in den RegEdit und über "Datei" -> "Importieren" die "WimSOFTWARE.reg" auswählen und somit den bearbeiteten Stand laden. Es folgt eine Fehlermeldung deren Beschriebene Auswirkung ich nicht feststellen konnte. Die bearbeiteten Schlüssel wurden jedenfalls alle geladen und die restlichen wurden sicherlich entweder mit identischen Werten überschrieben oder behielten ihre Ursprünglichen. Da sich diese so oder so nicht ändern spielt die Meldung also keine Rolle.

Wer die Verzeichnisse nicht umbenannt, sondern lediglich die Laufwerksbuchstaben geändert hat, kann schon jetzt die weiter unten beschribene "unattend.xml" erstellen und der Anleitung von dieser Stelle an folgen. Für alle anderen heißt es jetzt den Explorer öfnen und die physischen Pfade anpassen.


Das heißt in das Verzeichnis "beliebigerPfad\7DVD\Wim" wechseln und die Ordner "program files" und "program files (x86)" in "Programme64" bzw. "Programme32" umbenennen. Vorher muss in jedem der beiden Ordner die desktop.ini gelöscht werden, da sonst nicht der korrekte Verzeichnisname angezeigt wird.
Als nächstes wechseln wir wieder in den RegEdit und laden das WindowsPE- und das WindowsSetup-Image in die Registrierung, und zwar nach dem selben Prinzip wie bei der install.wim. Die Schlüsselleiste sollte dann wie folgt aussehen:



Diesmal müssen wir nicht die kompletten Arme exportieren. Es genügt jeweils für jedes Image in den Unterschlüssel "\Microsoft\Windows\CurrentVersion" zu wechseln und dort die Verzeichnisnamen wie mittlerweile gewohnt anzupassen. Es ist unbedingt zu beachten, dass die Laufwerksbezeichner hier nicht verändert werden dürfen! Sprich mindestens "X:\" bzw "X:\$windows.~bt\" bleiben unverändert. Nach getaner Arbeit ergeben sich an dieser Stelle folgende Bilder:




Und zum zweiten mal müssen wir nun nach den änderungen in der Regitry auch bei den physischen Pfaden nachlegen, mit dem Unterschied, dass es diesmal keine "desktop.ini's" gibt und auch jeweils nur ein Verzeichnis "program files" existiert. Wir wechseln also in den Explorer und nach "beliebigerPfad\7DVD\Pe" bzw. "beliebigerPfad\7DVD\Software" und benennen dieses in "Programme64" um.

Damit haben wir das Kapitel "Programmverzeichnisse verlegen" auch schon fast abgeschlossen. Als krönenden Abschluss dieser Lektion müssen wir lediglich noch ein Skript erstellen. Dieses soll den selbsterklärenden Namen "move.cmd" tragen und während der Installation nachhelfen die Programmverzeichnisse von C:\ nach E:\ zu verschieben, für den Fall das dies nicht automatisch geschieht. Damit die "move.cmd" während der Installation ausgeführt werden kann, muss in einer unattend.xml auf diese verwiesen werden. Weiterhin muss sie in einem zum Installationszeitpunkt erreichbaren Pfad liegen. Dazu legen wir einen Ordner "$oem$" innerhalb des Verzeichnisses "7DVD\sources" an. Darin erstellen wir einen Ordner "$1" dessen gesamter Inhalt vor der Installation automatisch auf die Systempartition kopiert werden. Darin könnten wir nun die move.cmd erstellen, machen wir aber nicht. Zur besseren übersichtlichkeit erstellen wir nämlich noch einen Unterordner "4spezialise" benannt nach der Installationsphase, in der wir die Verzeichnisse verschieben. Hier erstellen wir nun die mehrfach erwähnte move.cmd mit nachfolgendem Inhalt:
ATTRIB -s -a -r -h "%systemdrive%\Programme32" /S /D
ATTRIB -s -a -r -h "%systemdrive%\Programme64" /S /D
ECHO J|CACLS "%systemdrive%\Programme32" /t /c /g Administratoren:F
ECHO J|CACLS "%systemdrive%\Programme32" /t /c /g Administrators:F
ECHO J|CACLS "%systemdrive%\Programme64" /t /c /g Administratoren:F
ECHO J|CACLS "%systemdrive%\Programme64" /t /c /g Administrators:F
ATTRIB -s -a -r -h "%systemdrive%\Programme32" /S /D
ATTRIB -s -a -r -h "%systemdrive%\Programme64" /S /D
XCOPY "%systemdrive%\Programme32" "E:\Programme32\" /E /H /K /Q /Y
XCOPY "%systemdrive%\Programme64" "E:\Programme64\" /E /H /K /Q /Y
TASKKILL /IM Taskhost.exe /F
TASKKILL /FI "services eq iphlpsvc" /F
DEL /F /S /Q "%systemdrive%\Programme32\*"
DEL /F /S /Q "%systemdrive%\Programme64\*"
RD /S /Q "%systemdrive%\Programme32"
RD /S /Q "%systemdrive%\Programme64"
CALL "%Systemdrive%\7oobeSystem\Users.cmd"
Exit

Und weil das Ganze ja auch funktionieren soll, verknüpfen wir die move.cmd jetzt in einer unattend.xml. Diese sollte direkt im Verzeichnis 7DVD liegen. Wenn schon eine vorhanden ist, muss diese ergänzt werden, ansonsten erstellen wir eine Neue. So oder so, es müssen mindestens folgende Zeilen darin vorkommen:
<unattend xmlns="urn:schemas-microsoft-com:unattend">
      <servicing></servicing>
      <settings pass="specialize">
            <component name="Microsoft-Windows-Deployment" processorArchitecture="amd64" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS" xmlns:wcm="https://schemas.microsoft.com/WMIConfig/2002/State" xmlns:xsi="https://www.w3.org/2001/XMLSchema-instance">
                  <RunSynchronous>
                        <RunSynchronousCommand wcm:action="add">
                        <Path>cmd /c mkdir %systemdrive%\log</Path>
                        <Order>1</Order>
                  </RunSynchronousCommand>
                  <RunSynchronous>
                        <RunSynchronousCommand wcm:action="add">
                        <Path>%Systemdrive%\4Spezialize\move.cmd 1&gt;%systemdrive%\log\1_Move.log 2&gt;&gt;&amp;1</Path>
                        <Order>2</Order>
                  </RunSynchronousCommand>
            </component>
      </settings>
Kommando 1 erstellt übrigens den Ordner "log" auf der Systempartition, in dem automatisch Dateien zur Anzeige- und Fehlerausgabeumleitung der Skripte erstellt werden. Schaut man sich diese Dateien später an, können Einstellungs-, Skript- oder Tippfehler besser identifiziert werden. Sollte die Installation abbrechen und keine Möglichkeit bestehen von einem Betriebssystem auf der Festplatte zu booten, empfehle ich Ubuntu auf einen USB-Stick zu laden. Von diesem kann dann Ubuntu live gestartet und die Windows-Systempartition gemountet werden, auf welcher die Log-Dateien nun gelesen werden können. Ubuntu bekommt man von folgender Website:
https://www.ubuntu.com/download/desktop
Anleitungen zur Erstellung von Live-USB-Sticks findet man für die folgenden Betriebssysteme ebenfalls auf "ubuntu.com":
Windows
Mac OS X
Ubuntu

4. ändern der Nutzerpfade

Standardmäßig liegen unter Windows 7 alle Nutzerspezifischen Dateien an einem Pfad %Userprofiles%. Das sind sowohl die Anwendungsdaten als auch temporäre Dateien und die ganz normalen "Eigenen Dateien". Um diese allesamt von "C:\" nach "E:\" zu verschieben, gehen wir ausnahmsweise mal nach dem Standardprinzip vor und erweitern unsere unattend.xml unter der Zeile
      </settings>
um weitere folgende Zeilen:
      <settings pass="oobeSystem">
            <component name="Microsoft-Windows-Shell-Setup" processorArchitecture="amd64" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS" xmlns:wcm="https://schemas.microsoft.com/WMIConfig/2002/State" xmlns:xsi="https://www.w3.org/2001/XMLSchema-instance">
                  <FolderLocations>
                        <ProfilesDirectory>E:\Einstellungen</ProfilesDirectory>
                  </FolderLocations>
Ich persönlich finde es aber schlimm, wenn sich Laien mit einem Wirrwarr in ihrem pesönlichen Ordner rumschlagen müssen. Nicht zuletzt neigen viele Nutzer in Konsequenz dazu diesen gar nicht zu benutzen. Deshalb habe ich schon unter XP den alt bekannten Ordner "Dokumente und Einstellungen" in die Pfade "D:\Dokumente" und "E:\Einstellungen" aufgeteilt. Vorteil eins liegt dabei auf der Hand: das Ganze wird übersichtlicher und überschaubarer. Vorteil Nr. zwei ist, dass Einstellungen und Temporäre Dateien mit den Programmen, die ja auf diese zugreifen, auf einer Partition liegen, während sich alle Nutzerdateien unabhängig davon auf einer anderen Partition befinden.
Realisieren lässt sich dieses Konzept unter Windows 7, indem zuerst alle existierenden Nutzer angepasst werden (momentan nur der Administrator und Public) und die Standardeinstellungen des Users Default verändert werden. Für beides gelten wieder sowohl die Anpassungen in der Registry als auch der physischen Pfade.

Anpassen von Jeder:
Jeder? Ja, richtig: Jeder! Meiner einer mag die neue Bezeichnung Public nicht, und da ich ja rausgefunden habe wie man das ändert, möchte ich das auch nutzen. Außerdem gibt es eine Benutzergruppe Jeder, somit existiert hier ein Wiedererkennungswert. Wie für alle anderen Nutzer auch sollen sich die Anwendungsdaten für Jeder später im Ordner "E:\Einstellungen" befinden. Momentan liegen die allgemeinen Anwendungsdaten allerdings noch im Ordner "C:\ProgramData". Ich weiß nicht wer sich das für Windows 7 hat einfallen lassen und warum das geändert werden musste, aber das ist mir persönlich auch egal solange ich es rückgängig machen kann. Und das mache ich so:
Ich wechsle in den RegEdit und für jedes der noch gemounteten drei Images in den Unterschlüssel "Microsoft\WindowsNT\ProfileList". Hier wird dem Schlüssel "Public" jeweils der Wert "%SystemDrive%\Users\Jeder" zugewiesen. "ProgramData" wird überall außer unter WimSoftware entsprechend zu "%SystemDrive%\Users\Jeder\AppData" geändert. Unter WimSoftware geben wir hier das später entgültige Zielverzeichnis "E:\Einstellungen\Jeder\AppData" an. Aussehen sollte das ganze dann so:


Ja, ja die Pest,... Entschuldigung ich schweife schon wieder ab. Um das Ganze registrierungsmäßig abzuschließen müssen jetzt noch die Schlüssel "HKEY_LOCAL_MACHINE\WimSoftware\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders" und "HKEY_LOCAL_MACHINE\WimSoftware\Wow6432Node\Microsoft\Windows\CurrentVersion\explorer\Shell Folders" angepasst werden. Wir ändern hier alle Werte, in denen "ProgramData" vorkommt, auf "E:\Einstellungen\Jeder\AppData". Es folgen noch die Nutzerpfade. Diese sind hier schon zu sehen, aber das sind noch längst nicht alle. Trotzdem können wir sie anpassen. Zielverzeichnis ist "D:\Dokumente\Jeder", denn alle Nutzer sollen später im Ordner "D:\Dokumente" erscheinen. Wir erhalten folgendes Bild für die geänderten Shell-Folders:
Wie man auf dem Bild unschwer erkennen kann, habe ich die deutschen Bezeichner für die Verzeichnisse eingestzt. Dies ist Geschmackssache, muss aber wenn hier geändert später auch überall geändert werden. Des weiteren verweist "CommonDocuments" nicht auf "D:\Dokumente\Jeder\Dokumnente" sondern direkt auf "D:\Dokumente\Jeder". Grund hierfür ist, dass es für alle anderen Nutzer keinen Schlüssel "MyDocuments" sondern den Schlüssel "Personal" gibt. Dieser bildet das Standardverzeichnis für nutzerspezifische Dateien und da Später nicht alles standardmäßig im Ordner "Nutzer\Dokumente", sondern wirklich im Ordner "Nutzer" liegen soll, erfolgt hier diese Anpassung. Für Dokumente wird später ein anderer Unterordner erstellt.

Die restlichen Schlüsselwerte für Nutzerdateien finden wir in jedem der drei Images im Unterschlüssel "\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders". Diese müssen in allen Images angepasst werden. Zusätzlich kommt für "WimSoftware" noch Schlüssel "HKEY_LOCAL_MACHINE\WimSoftware\Wow6432Node\Microsoft\Windows\CurrentVersion\explorer\User Shell Folders" hinzu. Das ändern hier ist dafür aber leichter. Wir müssen lediglich "%USERPROFILE%\Public" durch "D:\Dokumente\Jeder" ersetzen. Wer deutsche Bezeichnungen lieber hat, sollte diese hier wieder anpassen. Selbes gilt für den Schlüssel CommonDocuments.
Ob ihr's glaubt oder nicht, mit diesen eiiinfachen Maßnahmen ist die Anpassung der Registrierungswerte für die öffentlichen Dateien auch jetzt schon abgeschlossen. (Habt ihr schonmal versucht Sarkasmus auf Papier zu bringen? Ich sage euch, einfach ist das nicht, auch nicht wenn das Papier ein Bildschirm ist.) Wer aufmerksam liest, hat es sicher schon mitbekommen: Ich sagte die Anpassung der Registrierungswerte! Und weil wir wollen, dass die ganze Sache funktioniert, machen wir jetzt auch nichts anderes als vorhin und passen im Zuge unseres Registrierungserfolges auch die physischen Pfade an. Dazu wechseln wir nacheinander in die Verzeichnisse "Wim", "Pe" und "Setup" und erstellen hier einen Ordner "Dokumente". Weiterhin gehen wir in den Ordner "Benutzer" und löschen die "desktop.ini" und siehe da, auf einmal heißt der Ordner "Benutzer" nun "Users". In diesem Ordner "Users" gehen wir in den Ordner "Public" und löschen die "desktop.ini". Anschließend benennen wir ihn in "Jeder" um und wechseln wieder zurück nach "Jeder". Hier schneiden wir die folgenden Ordner aus: "Documents", "Pictures", "Music", "Videos", "Desktop" und "Downloads". Oh ja richtig, diese heißen, wer hätte das nicht geahnt, auch noch anders als in der Realität. Deshalb gehen wir jetzt nacheinander in jeden Ordner (z.B. öffentliche Documente) und öffnen die "desktop.ini". öffnen deshalb, da nach Löschen die mit den Ordnern Verknüpften Icons nicht mehr verknüppft wären (wer nicht auf bunte Bilder steht kann auch hier die desktop.ini löschen). In der offenen "desktop.ini" löschen wir die komplette Zeile "localizedRecourceName=" und gehen in die nächste. Danach machen wir das, was wir eigentlich vorhatten und verschieben die genannten Ordner (und nur die) von "Users\Jeder" nach "Dokumente\Jeder". Hier können wir alle auch auf die deutsche Bezeichnung umbennennen, sofern das auch in der Registrierung geschehen ist. Zum Schluss wechseln wir nocheinmal ins Stammverzeichnis des jeweiligen Images und schneiden den Ordner "ProgramData" (ja, den hatten wir auch verändert) aus und setzen ihn unter "Users\Jeder" wieder ein. Zusätzlich muss er noch in "AppData" umbenannt werden. Das war es auch schon für unseren öffentlichen Nutzer "Jeder". Wer denkt, dass war kompliziert sollte jetzt einen Kaffee trinken, bevor er mit dem "Default User" weitermacht...


Anpassen des Default Users:
Um die Verwirrung perfekt zu machen, müssen wir jetzt noch mehr Registrierungsarme laden. Diese liegen auch teilweise anderswo als gewohnt, deshalb Ohren, pardon Augen auf und aufmerksam durchlesen (und bloß keine Fehler machen). Zuerst wechseln wir also in den RegEdit und wählen diesmal den Schlüssel "HKEY_USERS" an. über "Datei" -> "Struktur laden" wählen wir diesmal zwei Registrierungsdateien pro Image aus. Einmal die Datei "Default" unter dem Pfad "Windows\system32\config" und einmal die Datei "NTUSERS.DAT" unter dem Pfad "Users\Default". Ersten Schlüssel benennen wir je nach gemountetem Image, z.B "WimDefault", den zweiten um Verwechslungsgefahr zu vermeiden beispielsweise mit "WimDefaultUser".

Ganz nach dem Prinzip von "Jeder" auch gehen wir in jedem der sechs Arme in den Unterschlüssel "Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders". Zu unserem Glück spielen die Schlüssel "Shell Folders" und "Wow6432Node" hier keine Rolle. Es handelt sich also tatsächlich um "nur" sechs Schlüssel. Und hier müssen nur die Pfade für die Ordner "Downloads", "Desktop", "MyMusic", "MyVideo", "MyPictures" und "Personal" angepasst werden. Wir tauschen in den Werten jeweils den Bezeichner "%USERPROFILE%" mit "D:\Dokumente\%SUERNAME%". "%USERNAME%" deshalb, weil jeder Nutzer anders heißt und im Regelfall auch nicht nur einer auf dem PC erstellt wird (außer man ist tollkühn und ständig als Administrator unterwegs, wovon ich nur dringend abraten kann). Aussehen sollte das Ganze am Ende in jedem der sechs Schlüssel gleich, nämlich so:

Und weil wir ja jetzt, wo es allmählich dem Ende zugeht (die Hälfte ist immerhin geschafft^^) nichts Neues erfinden wollen, wechseln wir mal wieder in den Explorer. Hier werden die physischen Pfade angepasst. Dazu erstellen wir einen Ordner "Default" unter dem Ordner "Dokumente" und setzen ihm das Attribut versteckt. Abschließend wechseln wir nocheinmal nach "Users\Default" und verschieben unsere sechs Ordner nach dem selben Prinzip wie schon bei Jeder nach "Dokumente\Default" (also auch "desktop.ini's" bearbeiten usw.). Ich denke ein weiteres Notieren der Abfolgen ist aufgrund unserer mittlerweile gesammelten Erfahrungen nicht mehr notwendig.

Anpassen des Administrators:
Ausnahmsweise ist der Administrator hier mal der einfachste Kandidat, was ja für die Person des Administrators nicht immer zutrifft... Einbinden müssen wir diesmal nur einen Schlüssel! Er befindet sich in "Users\Administrator". Angepasst werden müssen dann sowohl "\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders" als auch "\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders". "%USERPROFILE%" wird diesmal durch "D:\Dokumente\Administrator" ersetzt (aber nur für die bekannten sechs Ordner). Ist die Prozedur in der Registry abgeschlossen geht sie auch diesmal im Explotrer weiter. Die genannten, bekannten sechs Ordner müssen wieder von "Users" nach "Dokumente" verschoben werden (nach genanntem, bekannten Prinzip).

Skripte:
Wie bei den Programmen sind auch hier Skripte notwendig. Wir könnten hierfür die uns bekannte "move.cmd" erweitern, machen dies aber nicht (mehr), da dem ein oder anderen scheinbar gern Fehler beim einfügen passieren... Wir erstellen daher im Pfad "$oem$\$1" erstellen wir den Ordner "7oobeSystem" und in diesem dann die Datei "Users.cmd", die automatisch durch die "move.cmd" aufgerufen wird.
SET KEY="HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders"
REG ADD %KEY% /V "Common Documents" /T REG_EXPAND_SZ /D "D:\Dokumente\Jeder" /F
REG ADD %KEY% /V "Common Desktop" /T REG_EXPAND_SZ /D "D:\Dokumente\Jeder\Desktop" /F
REG ADD %KEY% /V "CommonPictures" /T REG_EXPAND_SZ /D "D:\Dokumente\Jeder\Bilder" /F
REG ADD %KEY% /V "CommonMusic" /T REG_EXPAND_SZ /D "D:\Dokumente\Jeder\Musik" /F
REG ADD %KEY% /V "CommonVideo" /T REG_EXPAND_SZ /D "D:\Dokumente\Jeder\Videos" /F
REG ADD %KEY% /V "{3D644C9B-1FB8-4f30-9B45-F670235F79C0}" /T REG_EXPAND_SZ /D "D:\Dokumente\Jeder\Downloads" /F
SET KEY="HKLM\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\explorer\User Shell Folders"
REG ADD %KEY% /V "Common Documents" /T REG_EXPAND_SZ /D "D:\Dokumente\Jeder" /F
REG ADD %KEY% /V "Common Desktop" /T REG_EXPAND_SZ /D "D:\Dokumente\Jeder\Desktop" /F
REG ADD %KEY% /V "CommonPictures" /T REG_EXPAND_SZ /D "D:\Dokumente\Jeder\Bilder" /F
REG ADD %KEY% /V "CommonMusic" /T REG_EXPAND_SZ /D "D:\Dokumente\Jeder\Musik" /F
REG ADD %KEY% /V "CommonVideo" /T REG_EXPAND_SZ /D "D:\Dokumente\Jeder\Videos" /F
REG ADD %KEY% /V "{3D644C9B-1FB8-4f30-9B45-F670235F79C0}" /T REG_EXPAND_SZ /D "D:\Dokumente\Jeder\Downloads" /F
SET KEY="HKU\.DEFAULT\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders"
REG ADD %KEY% /V "Personal" /T REG_EXPAND_SZ /D "D:\Dokumente\%%USERNAME%%" /F
REG ADD %KEY% /V "Desktop" /T REG_EXPAND_SZ /D "D:\Dokumente\%%USERNAME%%\Desktop" /F
REG ADD %KEY% /V "My Pictures" /T REG_EXPAND_SZ /D "D:\Dokumente\%%USERNAME%%\Bilder" /F
REG ADD %KEY% /V "My Music" /T REG_EXPAND_SZ /D "D:\Dokumente\%%USERNAME%%\Musik" /F
REG ADD %KEY% /V "My Video" /T REG_EXPAND_SZ /D "D:\Dokumente\%%USERNAME%%\Videos" /F
REG ADD %KEY% /V "{374DE290-123F-4565-9164-39C4925E467B}" /T REG_EXPAND_SZ /D "D:\Dokumente\%%USERNAME%%\Downloads" /F
REG LOAD HKU\.DEFAULTUSER E:\Einstellungen\Default\NTUSER.DAT
SET KEY="HKU\.DEFAULTUSER\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders"
REG ADD %KEY% /V "Personal" /T REG_EXPAND_SZ /D "D:\Dokumente\%%USERNAME%%" /F
REG ADD %KEY% /V "Desktop" /T REG_EXPAND_SZ /D "D:\Dokumente\%%USERNAME%%\Desktop" /F
REG ADD %KEY% /V "My Documents" /T REG_EXPAND_SZ /D "D:\Dokumente\%%USERNAME%%\Dokumente" /F
REG ADD %KEY% /V "My Pictures" /T REG_EXPAND_SZ /D "D:\Dokumente\%%USERNAME%%\Bilder" /F
REG ADD %KEY% /V "My Music" /T REG_EXPAND_SZ /D "D:\Dokumente\%%USERNAME%%\Musik" /F
REG ADD %KEY% /V "My Video" /T REG_EXPAND_SZ /D "D:\Dokumente\%%USERNAME%%\Videos" /F
REG ADD %KEY% /V "{374DE290-123F-4565-9164-39C4925E467B}" /T REG_EXPAND_SZ /D "D:\Dokumente\%%USERNAME%%\Downloads" /F
REG UNLOAD HKU\.DEFAULTUSER
SET KEY="HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders"
REG ADD %KEY% /V "Personal" /T REG_EXPAND_SZ /D "D:\Dokumente\GelberMeister" /F
REG ADD %KEY% /V "Desktop" /T REG_EXPAND_SZ /D "D:\Dokumente\GelberMeister\Desktop" /F
REG ADD %KEY% /V "My Pictures" /T REG_EXPAND_SZ /D "D:\Dokumente\GelberMeister\Bilder" /F
REG ADD %KEY% /V "My Music" /T REG_EXPAND_SZ /D "D:\Dokumente\GelberMeister\Musik" /F
REG ADD %KEY% /V "My Video" /T REG_EXPAND_SZ /D "D:\Dokumente\GelberMeister\Videos" /F
REG ADD %KEY% /V "{374DE290-123F-4565-9164-39C4925E467B}" /T REG_EXPAND_SZ /D "D:\Dokumente\GelberMeister\Downloads" /F
ECHO J|REGEDIT /S "%Systemdrive%\7oobeSystem\Users.reg"

ECHO J|XCOPY "%systemdrive%\Users" "D:\Dokumente\" /E /H /K /Q /Y
ECHO J|XCOPY "%systemdrive%\Dokumente" "D:\Dokumente\" /E /H /K /Q /Y
ECHO J|XCOPY "%systemdrive%\Users\Jeder\AppData" "E:\Einstellungen\Jeder\AppData\" /E /H /K /Q /Y

ECHO J|CACLS "D:\Dokumente" /c /g Administratoren:F System:F Benutzer:R
ECHO J|CACLS "D:\Dokumente" /c /g Administrators:F System:F Users:R
ECHO J|CACLS "D:\Dokumente\%username%" /c /t /g Administratoren:F System:F %username%:F
ECHO J|CACLS "D:\Dokumente\%username%" /c /t /g Administrators:F System:F %username%:F
ECHO J|CACLS "D:\Dokumente\Jeder" /c /t /g Administratoren:F System:F Benutzer:C
ECHO J|CACLS "D:\Dokumente\Jeder" /c /t /g Administrators:F System:F Users:C

ECHO J|CACLS "%userprofile%" /c /t /g Administratoren:F System:F %username%:F
ECHO J|CACLS "%userprofile%" /c /t /g Administrators:F System:F %username%:F
Exit

Und ein letztes Script brauchen wir doch noch! Im Pfad "$oem$\$1\7oobeSystem" erstellen wir eine Datei "Users.reg". Wer alles so gemacht hat, wie ich gesagt habe, kann die folgenden Zeilen übernehmen, wer nicht muss sie eben entsprechend anpassen.
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders]
"Common Desktop"="D:\\Dokumente\\Jeder\\Desktop"
"Common Documents"=D:\\Dokumente\\Jeder"
"CommonPictures"="D:\\Dokumente\\Jeder\\Bilder"
"CommonMusic"="D:\\Dokumente\\Jeder\\Musik"
"CommonVideo"="D:\\Dokumente\\Jeder\\Videos"
"{3D644C9B-1FB8-4f30-9B45-F670235F79C0}"="D:\\Dokumente\\Jeder\\Downloads"
[HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\explorer\Shell Folders]
"Common Desktop"="D:\\Dokumente\\Jeder\\Desktop"
"Common Documents"=D:\\Dokumente\\Jeder"
"CommonPictures"="D:\\Dokumente\\Jeder\\Bilder"
"CommonMusic"="D:\\Dokumente\\Jeder\\Musik"
"CommonVideo"="D:\\Dokumente\\Jeder\\Videos"
"{3D644C9B-1FB8-4f30-9B45-F670235F79C0}"="D:\\Dokumente\\Jeder\\Downloads"
[HKEY_USERS\.DEFAULT\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders]
"Desktop"="D:\\Dokumente\\%%USERNAME%%\\Desktop"
"Personal"=D:\\Dokumente\\%%USERNAME%%"
"My Pictures"="D:\\Dokumente\\%%USERNAME%%\\Bilder"
"My Music"="D:\\Dokumente\\%%USERNAME%%\\Musik"
"My Video"="D:\\Dokumente\\%%USERNAME%%\\Videos"
"{374DE290-123F-4565-9164-39C4925E467B}"="D:\\Dokumente\\%%USERNAME%%\\Downloads"
[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders]
"Desktop"="D:\\Dokumente\\GelberMeister\\Desktop"
"Personal"="D:\\Dokumente\\GelberMeister"
"My Documents"="D:\\Dokumente\\GelberMeister\\Dokumente"
"My Pictures"="D:\\Dokumente\\GelberMeister\\Bilder"
"My Music"="D:\\Dokumente\\GelberMeister\\Musik"
"My Video"="D:\\Dokumente\\GelberMeister\\Videos"
"{374DE290-123F-4565-9164-39C4925E467B}"="D:\\Dokumente\\GelberMeister\\Downloads"
"GelberMeister" steht hier für den ersten Benutzer, der auf dem System später angemeldet wird. Der Name muss natürlich angepasst werden. Die Registrierungseinstellungen hier erscheinen doppelt, wirken aber dem entgegen, dass während der Installation der Bezeichner von "D:\" auf "C:\" geändert wird, was in der Regel der Fall ist.

Abschließend für diesen Abschnitt müssen nun die Skripte und einige weitere Einstellungen in die "unattend.xml" eingetragen werden. Dafür muss unter der Zeile

                  </FolderLocations>
folgender weiterer Abschnitt eingefügt werden:
                  <UserAccounts>
                        <LocalAccounts>
                              <LocalAccount wcm:action="add">
                                    <Name>GelberMeister</Name>
                                    <Group>Administrators</Group>
                                    <Password>
                                          <Value>UABhAHMAcwB3AG8AcgBkAA==</Value>
                                          <PlainText>false</PlainText>
                                    </Password>
                              </LocalAccount>
                        </LocalAccounts>
                  </UserAccounts>
                  <AutoLogon>
                        <Username>GelberMeister</Username>
                        <Enabled>true</Enabled>
                  </AutoLogon>
                  <FirstLogonCommands>
                        <SynchronousCommand wcm:action="add">
                              <Order>1</Order>
                              <CommandLine>%systemdrive%\7oobeSystem\Users.cmd 1&gt;%systemdrive%\log\2_Users.log 2&gt;&gt;&amp;1</CommandLine>
                              <RequiresUserInput>false</RequiresUserInput>
                        </SynchronousCommand>
                  </FirstLogonCommands>
            </component>
      </settings>
</unattend>

5. Abschluss

Bevor wir die gemachten änderungen an den Images erfolgreich speichern können, müssen wir vorher alle aus den Images geladenen Registrierungs-Arme wieder entfernen. Dazu wählen wir diese nacheinander an (maximal sollten das sein "WimSoftware", "WimDefault", "WimDefaultUser", "WimAdmin", "PeSoftware", "PeDefault", "PeDefaultUser", "SetupSoftware", "SetupDefault", "SetupDefaultUser") und speichern sie jeweils über "Datei" -> "Struktur entfernen".
Als nächstes müssen alle Programme geschlossen werden, die irgendwie auf Dateien oder Verzeichnisse der geladenen Images zugreifen. Erst jetzt können unsere Images mit Hilfe der vorbereiteten Scripte gespeichert werden. Welche "*Save.cmd" dabei für welches Image steht, erklärt sich hoffentlich von selbst^^.
Nun können wir mit dem Tool "Oscdimg" noch das Image zu unserer bootbaren DVD erstellen. Der Befehl dazu lautet:
Oscdimg /beliebigerPfad\7DVD\boot\etfsboot.com /h /lWIN7 /u2 /o beliebigerPfad\7DVD beliebigerPfad\Win7.iso
Zum Abschluss muss die entstandene "Win7.iso" nur noch mit einem Brennprogramm auf eine DVD oder mit einem InstallFromUsbCreator auf ein entsprechendes Speichermedium gebracht werden.
Die Installation kann beginnen!

6. Diskussion/Fragen/Anregungen

Für Diskussionen, Fragen und Anregungen zu dieser Anleitung habe ich einen Thread im Forum von win-lite.de, auch bekannt als "German Win-Lite" eingerichtet. Dieser kann unter dem folgenden Link erreicht werden:
  Diskussion zum Thema auf win-lite.de

Da es sich hier um ein Diskussionsforum handelt, auf dessen inhaltliche Gestaltung ich keinen Einfluss habe, distanziere ich mich hiermit ausschließlich von allen Inhalten innerhalb des Internetangebots von win-lite.de sowie von Verweisen auf Seiten dritter. Dies betrifft auch Beiträge innerhalb des von mir eröffneten Threads, die von anderen Forenmitgliedern stammen. Weiterhin gebe ich keine Garantie, dass ich über dieses Forum in Bezug auf Fragen zu dieser Anleitung regelmäßig erreichbar bin.

7. Anmerkungen/Kritikpunkte

- Der erste Teil dieser Anleitung ist eine Beispielanleitung zur Verschiebung der Programmverzeichnisse auf eine existierende Partition E. Statt E: können, mit Ausnahme von D:, theoretisch auch beliebige andere Partitionen genutzt werden. Der Bezeichner D: wird während der Installation durch %systemdrive% (in den meisten Fällen C:) ersetzt, d.h. bei einem Verweis auf D: würden lediglich die Namen der Verzeichnisse geändert werden. Installiert man auf eine andere Partition als C, können die Verzeichnisse mit meiner Methode theoretisch auch auf eine existierende Partition C: verschoben werden (wurde nicht getestet).
- Weitere Ergänzungen bzw. Kritikpunkte werden aus zeitlichen Gründen erst demnächst folgen.
- Auch die Rechtschreibung und andere sprachliche Aspekte werde ich erst später vollständig korrigieren können! ^^

So, und noch eins, nämlich dass mir am Ende bloß keiner sagt "ich habe alles so gemacht wie du gesagt hast und mein System funktioniert nicht mehr..." Dazu kann ich nur prophylaktisch sagen, dass ich alles getestet habe, was ich zu testen im Stande war und als zu testen sinnvoll angesehen habe. Für die ausgleichende Gerechtigkeit im Universum bin ich nicht verantwortlich. Bei mir hat es jedenfalls geklappt. Im Zweifelsfall mal am eigenen Karma schrauben (oder nach belieben auch an der Hardware des Rechners, ...die verfluchten Binärhamster haben schon so manchen Festplattensektor zerfressen oder waren Schuld an anderen unerklärlichen Vorfällen der binären Welt).
Will sagen: Sofern ich nicht selbst die änderungen am Zielcomputersystem vorgenommen habe, sind Haftung durch mich oder GELB Computer ausgeschlossen. Wie so oft sei auch an dieser Stelle nocheinmal darauf hingewiesen, dass Registrierungänderungen in eigener Verantwortung stehen und mit vorsicht zu genießen sind. Mit dieser Anleitung sei nicht automatisch ein Erfolg für die Bearbeitung eines Windows 7 Images garantiert. Um änderungen im Problemfall rückgängig zu machen, empfehle ich eine Neuinstallation mit dem originalen Image. Zu diesem Zweck habe ich darauf hingewiesen, dass es sinnvoll ist regelmäßig Sicherheitskopien anzulegen.
Um näheres über Projekte von meiner Unternehmung und mir zu erfahren, sei jeder Interessierte hiermit gerne dazu eingeladen, die von hier aus verlinkten Internetpräsenzen von GELB Computer zu besuchen. über die angegebenen Kontaktmöglichkeiten gebe ich allerdings keinerlei Auskünfte zu dieser Anleitung. Möglichkeiten für Diskussion/Fragen/Anregungen wurden in Punkt 6 dieser Anleitung erläutert.

Soweit so gut. Damit sollte an dieser Stelle alles Nötige gesagt sein.
Ich wünsche allen Tüftlern und Tüftlerinnen unter euch viel Spaß beim Probieren und Anpassen!


Grüße

Tommes Städter
(alias Gelber Meister)