System auf andere Plattform umziehen / Bluescreen 0x0000007B

Kowa

Captain
Registriert
Dez. 2008
Beiträge
3.151
Da es mich oft trifft und die Infos bisher nirgends an einer Stelle zusammengetragen wurden, möchte ich mal ein ein Problem mitsamt Lösung beschreiben.

Ich bin jemand, der Windows nur 1x installiert und dann nach Möglichkeit immer wieder umzieht und migriert, weil mir die Neueinrichtung aller Hints, Einstellungen und Tools ein Graus ist. Wie immer wird zuerst ein Backup erstellt!

Normalerweise packt man die HDD einfach in den neuen Rechner und Windows installiert all die neuen Treiber von ganz alleine. Leider funktioniert das nicht, wenn ein anderer Festplattencontroller zum Einsatz kommt. Windows verwendet nur die Treiber, die es kennt. Ein generischer Basic-Treiber, wie er in den ersten Sekunden verwendet wird, wird selbst im abgesicherten Modus nicht verwendet. Im Ergebnis erhält man wenige Sekunden nach dem Einschalten einen Bluescreen, der durch keinen mir bekannten Trick zu vermeiden ist.

Hardwarelösung:
Ich verwendete bisher deshalb einen externen Controller vom Typ Sil3112. Diesen muß man in den alten PC stecken und irgendein Gerät (außer der Boot-HDD) anschließen. Windows installiert daraufhin die fehlenden Treiber. Anschließend kann man diesen Controller mitsamt HDD in das neue System verpflanzen.
Diese Variante funktioniert leider nicht, wenn der neue PC z.B. keinen PCI-Steckplatz mehr hat oder gar VMware ist.
Es gibt PCI-PCIe-Adapter, welche im übrigen hervorragend funktionieren, aber die Softwarelösung ist dann wohl oft einfacher.

Softwarelösung:
In einem solchen Problemfall muß man das I/O-System in der Registry zurücksetzen, obwohl das System ja selber nicht starten will.
Dazu muß man die HDD an einen anderen PC anbinden, bzw. das virtuelle Laufwerk an den Host mappen,
Per regedit kann man die jeweilige Registrierung bearbeiten (detailiert ist das unter dem Stichwort offline-Registrierung im Netz beschrieben).

Kurz: man startet regedit und wählt HKEY_LOCAL_MACHINE aus. Im Menü "Datei" findet sich dann der Punkt "Struktur laden". Dann wählt man auf der anzupassenden Installation die Datei n:\WINDOWS\system32\config\SYSTEM und vergibt im nächsten Dialogfenster einen beliebigen Namen, z.B. "Test". Es entsteht ein neuer Zweig, der mit dem Gastsystem verbunden ist.
Hier werden nun 2 Keys geändert:
\SYSTEM\ControlSet001\Services\intelide und
\SYSTEM\ControlSet001\Services\pciide
jeweils wird der Wert von "Start" auf 0 zurückgestellt.
Danach geht man wieder auf den importierten Zweig "Test" zurück und kann diesen über das "Datei"-Menü ausbinden.

Anschließend sollte das System wieder hochfahren, wenn es über einen gängigen IDE-Controller verfügt.
 
Nicht ganz ....

CurrentControlSet ist die geladene Instanz von ControlSet001 und wird beim Herunterfahren genau dorthin auch gespeichert.

Lade ich den Registry Hive offline gibt es auch kein CurrentControlSet aus diesem Hive sondern entweder gar keinen (weil ich zB per LiveLinux System gebootet habe) oder den CurrentControlSet meines gebooteten Systems (und damit nicht die Registry der umzuziehenden Platte, sondern die Registry des gebooteten Windows PE) dann aktiv geladen habe.

Grüsse

Gulp
 
Hallo Kowa,

hört sich ja alles ziemlich einfach an.

Ich habe diesen Wechsel jetzt vor mir.

Mir ist es recht wichtig, W7 nicht neu aufzusetzen, weil das Herstellen des Zustandes vor dem Wechsel auf der neuen Maschine bei mir so um die 40-50 h dauern würde. Das ganze dann 2 mal ...
Es geht ja nicht nur um das installieren alleine, sondern auch darum, die Einstellungen in den zu installierenden Programmen vorzunehmen und das kostet richtig Zeit.

Seit Einführung der Registry in Windows ist die Immigration leider sehr kompliziert geworden.
Bis W3.11 lief alles ohne Registry und die programmspezifischen Daten wurden einfach in den dazugehörigen Programmordnern abgelegt und konnten so ganz einfach mitgenommen werden.
Auch hätte Microsoft eine strukturiertere Registry an den Start bringen können.
Ein Teil systemspezifisch, der andere programmspezifisch.
Bei einer Neuinstallation würde der systemspezifische erneuert werden, der programmspezifische könnte aus einer Sicherung, bei Bedarf gemergt werden und nix ginge verloren.
Nun gut, es ist müßig, darüber zu philosophieren. Ist halt so, wie es ist.

Ich habe aktuell ein Motherboard von ASUS P5QPL-AM mit einem Core2Quad Q9550 mit einem Chipsatz von Intel G41 /ICH7.
Im BIOS kann ich AHCI NICHT einstellen !!!
Die SATA Schnittstellen werden im IDE Mode betrieben. Das System ist aus dem Jahr 2009.

Die Festplatte mit W7 soll jetzt auf einem ASUS ProGaming Z170 mit einem Core i7 6700k und einem Intel Z170 Express Chipsatz betrieben werden.
Im BIOS kann ich lediglich zwischen AHCI und RAID wählen. Auf eine Abwärtskompabilität ( IDE ) wurde seitens ASUS gnädigerweise :mad: verzichtet.

Schließe ich die Platte mit der Systempartition an und fahre den Rechner hoch, so erscheint kurz vor dem Ende des Aufbaus des Windows Logos ein Bluescreen mit der Fehlermeldung 0x0000007B usw.

Ich hab deine Softwarevariante durchgeführt. Bei beiden Schlüsseln steht der Wert O aber der bluescreen bleibt.
Ich habe da noch einen Schlüssel adpahci gefunden, der steht auf 3.
Welchen Einfluß hat hier die Änderung des Wertes oder hat der Schlüssel nicht wirklich etwas mit dem AHCI zu tun ?

Über eine Antwort würde ich mich sehr freuen ...
Bis dahin

LG
 
Von einem uralt-Chipsatz direkt auf Skylake. Das wird spaßig.
Selbst wenn du Windows zum booten bringst, werden deine USB-Geräte nicht funktionieren, da Windows keine USB2/3-Treiber für diese Plattform mitbringt.

Für eine Systemmigration gibt es sysprep von Microsoft, dass sich auch um die Treiberproblematik kümmert. Eine Alternative wäre evtl. noch Acronis (Universal Restore). Ob das ganze aber schneller geht als eine saubere Neuinstallation?
 
Ich hab da noch zwei Ideen und würde mir mal gerne eure meinung zur Umsetzung anhören.

1 )
Ich lese die für den BlueScreen vermutlich verantwortlichen Schlüsselwerte auf dem alten Windows im alten Rechner aus.
Dann nehme ich mir eine neue HDD, istalliere W7 erstmal auf dem neuen Rechner und lese auch hier die entsprechenden Schlüsselwerte zum Vergleich aus.

Im Anschluß ändere ich die Schlüsselwerte auf dem alten W7, fahre den Rechner herunter, installiere die Platte im neuen Rechner und boote.


2 )
Ich installiere W7 auf einer neuen Platte auf dem neuen Rechner.
Anschließend stelle ich mein OS auf dem neuen Rechner aus einem Sicherrungsabbild wieder her.

Die Variante halte ich allerdings für weniger aussichtsreich.
Eine Systemwiederherstellung durch Paragon erfolgt vor dem eigentlichen Start von Windows mit Hilfe einer "RettungsCD", auf der sich ein einfaches OS, ich glaube Linux, befindet, um die Wiederherstellung durchzuführen.
Hier sollten auch wieder die alten Registry Einträge erstellt werden und es beim Neustart zum bluescreen kommen.


Anzumerken ist, daß es nur ein Einstellungsproblem sein kann, denn W7 läuft nach einer Neuinstallation problemlos auf dem neuen rechner.
W7 bringt also alle notwendigen Treiber von Hause aus mit. Es läuft sowohl in der alten, als auch in der neuen Hardwareumgebung.
Demzufolge muß ein Umzug ohne Neuinstallation weiterhin möglich sein.
 
So, es ist geschafft.

Die alte Installation läuft nun in der neuen Hardwareumgebung.
Ich hab zwar an die 15 Stunden recherchiert und probiert, aber letztendlich hab ich mir für 2 Rechner dadurch jeweils 30-40 Stunden, also insgesamt an die 70 Stunden für die jkompletten Neuinstallationen gespart.

Ich bin begeistert.

Aber ich war von Anfang an davon überzeugt, daß es funzen muß, da W7 sowohl in der alten auch nach einer Neuinstallation auf einer leeren Platte gelaufen ist.

Danke auch, für eure Hilfe ...

Hier im Detail der Vergleich der alten und neuen Schlüssel ...
Übrigens kann man Änderungen an der registry auch offline durchführen. Man muß dazu keine eingeschaltetes System haben.
Man muß hierzu nur die Platte an einen angeschalteten Rechner anschließen und die Registry in die vorhandene Struktur laden.
Näheres hierzu gerne auf Nachfrage.

Die Reihenfolge lautet Start/Tag/Type wobei nV nicht als DWORD vergeben gilt.
Alle keys sind in HeyKeyLocalMachine/System/CurrentControlSet/Services bzw. falls die Platte über USB angeschaltet ist, bei ControlSet01/Services zu finden.

alter Wert neuer Wert
adpahci 3/nV/1 0/nV/1
atapi 0/25/1 0/33/1
intelide 0/4/1 3/6/1
msahci 3/nV/1 0/64/1
pciide 0/3/1 3/nV/1

Vorhandene Keys bzw. da wo jetzt nV steht, wurden gelöscht.
Alle anderen wurden ersetzt.

Ich habe W7 komplett auf eine leere Platte installiert.
Dann habe ich mir alle in Frage kommenden keys aus dieser funzenden Installation notiert.
Danach habe ich die alte Platte als externe Platte an das funktionierende System angeschlossen, die registry des alten Systems als Struktur mit dem Namen Test in die aktive Registry geladen.
Jetzt habe ich die Veränderungen, die ich mir vorher notiert habe, im alten System durchgeführt.
Im Anschluß daran habe ich die Struktur aus der aktiven entfernt.
Dann habe ich den rechner runter gefahren, die neue Installation entfernt und die alte Installation mit der überarbeiteten registry angeschlossen, den Rechner gestartet und siehe da ... es funzt.
Der Startbildschirm iist identisch, die Programme lassen sich wie gewohnt aufrufen etc.
Es ist so, alls wenn nichts gewesen wäre, außer, daß alles natürlich erheblich flotter funktioniert.
Ergänzung ()

Darlis schrieb:
Von einem uralt-Chipsatz direkt auf Skylake. Das wird spaßig.
Selbst wenn du Windows zum booten bringst, werden deine USB-Geräte nicht funktionieren, da Windows keine USB2/3-Treiber für diese Plattform mitbringt.

Für eine Systemmigration gibt es sysprep von Microsoft, dass sich auch um die Treiberproblematik kümmert. Eine Alternative wäre evtl. noch Acronis (Universal Restore). Ob das ganze aber schneller geht als eine saubere Neuinstallation?


Danke Dir für den Hinweis mit Acronis. Das hört sich ganz vernünftig an.
In der Tat, ich habe Probleme mit den USB Ports ( USB2.0/3.0/3.1), aber, da die Neuinstallation diese Probleme nicht hat, sondern lediglich das System, daß umgezogen ist, gehe ich auch hier davon aus, daß es sich nur um Einstellungen/Treiber handeln kann.

Denn ich bleibe weiter dabei ... da sich W7 ja einwandfrei in der neuen Umgebung installieren läßt, bringt es auch alles mit, um dort funktionieren zu können. Ich hab eine leere HDD dazu genommen, um es vorher auszuprobieren.
Du sagst ja selber, daß Du eine Neuinstallation durchgeführt hättest, um es zum laufen zu bringen.

Und von der Zeit ... im Moment hinke ich ein wenig :lol:
Aber ich hab ewig viele Proggis, die ich nicht neu installieren möchte, da nicht nur das installieren, sondern auch das einrichten ewig Zeit kostet. Ich habs beim Wechsel von XP auf W7 hinter mir.
Und das ganze dann mal 2, weils zwei Rechner betrifft :(
Dann dürfte ich von der Zeit wieder vorne sein :p

Aber beim nächsten Wechsel werd ich nicht um eine Neuinstallation rum kommen, da ich in 7-8 Jahren für W7 keinen Support/Treiber mehr bekommen werde.
Und wer weiß, wie dann die Hardware aussehen wird ???:rolleyes:

Bis dahin
Ergänzung ()

Mittlerweile sind auch die Probleme mit den USB Schnittstellen gelöst.

Hier war es hilfreich, die mitgelieferte DVD von ASUS komplett drauf zu bügeln und nicht nur gezielt einzelne Treiber auszuwählen.
Abgewählt hab ich lediglich die Norton Suite und irgendeine andere kostenlose Beilage.

Einfach alle Treiber auswählen, 15 Minuten warten und dann paßt´s :lol:

Jetzt laß ich die Kiste erst einmal mit der alten HDD laufen, auf der das OS drauf ist und am nächsten Wochenende wird dann das System gesichert und auf einer SSD wieder hergestellt.
 
Zurück
Oben