Registrierungsänderungen in x64-basierten Versionen von Windows

In diesem Artikel werden einige der Registrierungsänderungen beschrieben, die in x64-basierten Versionen von Microsoft Windows Server 2003 und Microsoft Windows XP Professional x64 Edition vorgenommen wurden. Es wird beschrieben, wie das Betriebssystem Windows x64 Edition Registrierungsinformationen für 32-Bit-Programme und 64-Bit-Programme speichert.

Gilt für: Windows 10 (alle Editionen), Windows Server 2012 R2
Ursprüngliche KB-Nummer: 896459

Zusammenfassung

Wichtig

Dieser Abschnitt, diese Methode bzw. diese Aufgabe enthält eine Beschreibung der Schritte zum Bearbeiten der Registrierung. Durch die falsche Bearbeitung der Registrierung können schwerwiegende Probleme verursacht werden. Daher ist es wichtig, bei der Ausführung der folgenden Schritte sorgfältig vorzugehen. Für zusätzlichen Schutz sichern Sie die Registrierung, bevor Sie sie ändern. Sie können die Registrierung wiederherstellen, wenn ein Problem auftritt. Weitere Informationen zum Sichern und Wiederherstellen der Registrierung finden Sie im folgenden Artikel der Microsoft Knowledge Base: 322756 Sichern und Wiederherstellen der Registrierung unter Windows.

Computer mit einer x64-basierten Version von Microsoft Windows Server 2003 oder Microsoft Windows XP Professional x64 Edition verwenden ein anderes Registrierungslayout, um sowohl 32-Bit- als auch 64-Bit-Programme zu verarbeiten. Die Änderungen des Registrierungslayouts in x64 Edition-Versionen des Windows-Betriebssystems stellen sicher, dass die .dll Pfaden, Programmeinstellungen und anderen Parameterwerten hartcodierten Programme nicht überschrieben werden.

Um zu verhindern, dass 32-Bit-Registrierungseinstellungen die 64-Bit-Registrierungseinstellungen überschreiben, müssen Computer, auf denen eine x64-basierte Version von Microsoft Store ausgeführt wird, die Einstellungen für 32-Bit-Programme in einem neuen Branch in der Registrierung verwenden. Benutzer bemerken während der Programminstallation keine Änderungen. Der Registrierungsumleitungsprozess ermöglicht Programminstallationen und Programmkonfigurationseinstellungen den Zugriff auf den richtigen Registrierungsunterschlüssel ohne Benutzereingriff.

32-Bit-Programme und 64-Bit-Programme, die unter einer x64-basierten Version von Windows ausgeführt werden, arbeiten in verschiedenen Modi und verwenden die folgenden Abschnitte in der Registrierung:

  • 64-Bit-Programme im einheitlichen Modus werden im einheitlichen Modus ausgeführt und greifen auf Schlüssel und Werte zu, die im folgenden Registrierungsunterschlüssel gespeichert sind:

    HKEY_LOCAL_MACHINE\Software

  • 32-Bit-Programme werden im WOW64-Modus ausgeführt und greifen auf Schlüssel und Werte zu, die im folgenden Registrierungsunterschlüssel gespeichert sind:

    HKEY_LOCAL_MACHINE\Software\WOW6432node

Registrierungsumleitung

Um die Koexistenz von 32-Bit- und 64-Bit-COM-Registrierungen und Programmzuständen zu unterstützen, stellt das WOW64-Subsystem 32-Bit-Programme mithilfe einer anderen Ansicht der Registrierung bereit. Das WOW64-Subsystem verwendet die Registrierungsumleitung, um Registrierungsaufrufe auf Bitebene abzufangen. Die Registrierungsumleitung stellt auch sicher, dass die Registrierungsaufrufe an die richtigen Branches in der Registrierung weitergeleitet werden.

Wenn Sie ein neues Programm installieren oder ein Programm auf einem Windows x64 Edition-Computer ausführen, greifen Registrierungsaufrufe von 64-Bit-Programmen ohne Umleitung auf den HKEY_LOCAL_MACHINE\Software Registrierungsunterschlüssel zu. WOW64 fängt Registrierungsaufrufe an HKEY_LOCAL_MACHINE\Software ab, die von 32-Bit-Programmen vorgenommen werden, und leitet sie dann an den HKEY_LOCAL_MACHINE\Software\WOW6432node Unterschlüssel um. Indem nur die 32-Bit-Programmaufrufe umgeleitet werden, stellt WOW64 sicher, dass Programme immer in den entsprechenden Registrierungsunterschlüssel schreiben. Für die Registrierungsumleitung ist keine Änderung des Programmcodes erforderlich, und dieser Vorgang ist für den Benutzer transparent.

Registrierungsunterschlüssel, die in der Umleitung enthalten sind

Die folgenden Registrierungsunterschlüssel werden in aktuellen Versionen des Windows x64 Edition-Betriebssystems umgeleitet:

  • HKEY_LOCAL_MACHINE\Software\Classes
  • HKEY_LOCAL_MACHINE\Software\Microsoft\Ole
  • HKEY_LOCAL_MACHINE\Software\Microsoft\Rpc
  • HKEY_LOCAL_MACHINE\Software\Microsoft\COM3
  • HKEY_LOCAL_MACHINE\Software\Microsoft\EventSystem

Wichtig

Die Umleitung von Registrierungsschlüsseln kann sich in späteren Betriebssystemversionen ändern. Softwareentwickler sollten das Schreiben von Programmcode vermeiden, der auf zuvor dokumentierten Listen umgeleiteter Schlüssel basiert. Stattdessen sollte Code geschrieben werden, um die Umleitung status zu überprüfen, bevor die logische 32-Bit- oder 64-Bit-Ansicht der Registrierung aufgerufen wird.

Registrierungsreflektion

Die Registrierungsreflektion bietet eine Echtzeitmethode, um die 32-Bit- und 64-Bit-Abschnitte der Registrierung jederzeit offen zu halten. Betrachten Sie beispielsweise ein 32-Bit-Programm mit dem Namen Hello.exe, das als 32-Bit-OLE-Server fungiert, aber auch Anforderungen von 64-Bit-Clients verarbeiten kann. Die Registrierungsreflektion ermöglicht es dem Hello.exe-Programm, sowohl die 32-Bit-Registrierung als auch die 64-Bit-Registrierung geöffnet zu lassen, um sowohl 32-Bit- als auch 64-Bit-Programmaufrufe zu verarbeiten.

Reflektion ermöglicht das Vorhandensein von zwei physischen Kopien derselben Registrierung, um gleichzeitige native und WOW64-Vorgänge zu unterstützen. Die meisten der reflektierten Schlüssel sind Klassenschlüssel. Klassenschlüssel werden mit der Philosophie "Last Writer wins" geschrieben, und das Handle für den Schlüssel wird geschlossen, wenn entweder der 32-Bit- oder der 64-Bit-Klassenschlüssel geschrieben und geschlossen wird.

Die folgende Liste enthält einige Beispiele für die Philosophie "Letzter Schreiber gewinnt":

  • Nachdem Sie eine sauber Installation des Windows x64 Edition-Betriebssystems durchgeführt haben, wird die 64-Bit-Version von Wordpad.exe registriert, um .doc Dateien zu verarbeiten. Der Registrierungsreflektor kopiert die .doc Registrierung aus dem 64-Bit-Registrierungsabschnitt in den 32-Bit-Registrierungsabschnitt.
  • Wenn Sie eine 32-Bit-Version von Microsoft Office installieren, wird Winword.exe registriert, um .doc Dateien in der 32-Bit-Registrierungsansicht zu verarbeiten. Der Registrierungsreflektor kopiert diese Informationen in den 64-Bit-Registrierungsabschnitt. Daher starten sowohl 32-Bit- als auch 64-Bit-Programme die 32-Bit-Version von Winword.exe für .doc Dateien.
  • Wenn Sie die 64-Bit-Version von Microsoft Office installieren, wird die 64-Bit-Version von Winword.exe im 64-Bit-Registrierungsabschnitt registriert, um .doc Dateien zu verarbeiten. Der Registrierungsreflektor kopiert diese Informationen auch in den 32-Bit-Registrierungsabschnitt, sodass sowohl 32-Bit- als auch 64-Bit-Programme die 64-Bit-Version von Winword.exe für .doc Dateien starten.

Hinweis

Entwickler können die RegQueryReflectionKey-Funktion verwenden, um den Reflektionszustand für einen bestimmten Schlüssel zu bestimmen, und die RegDisableReflectionKey-Funktion und die RegEnableReflectionKey-Funktion verwenden, um die Registrierungsreflektion für einen bestimmten Schlüssel programmgesteuert zu deaktivieren und zu aktivieren.

Freigegebene Registrierungsschlüssel

Bestimmte Registrierungsunterschlüssel enthalten konstante Informationen, die nur in einer Kopie der Registrierung vorhanden sind, obwohl diese Schlüssel sowohl in der 32-Bit- als auch in der 64-Bit-Registrierungsansicht angezeigt werden. Dies wird als Registrierungsreflektion bezeichnet.

In aktuellen Versionen der Windows x64 Edition-Betriebssysteme werden die folgenden Registrierungsunterschlüssel für 32-Bit- und 64-Bit-Programme gemeinsam verwendet und nicht basierend auf der 32-Bit- oder 64-Bit-Ebene des Programms oder Prozesses neu geschrieben:

  • HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\SYSTEMCERTIFICATES
  • HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\CRYPTOGRAPHY\SERVICES
  • HKEY_LOCAL_MACHINE\SOFTWARE\CLASSES\HCP
  • HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\ENTERPRISECERTIFICATES
  • HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\MSMQ
  • HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\WINDOWS NT\CURRENTVERSION\NETWORKCARDS
  • HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\WINDOWS NT\CURRENTVERSION\PROFILELIST
  • HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\WINDOWS NT\CURRENTVERSION\PERFLIB
  • HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\WINDOWS NT\CURRENTVERSION\PRINT
  • HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\WINDOWS NT\CURRENTVERSION\PORTS
  • HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\WINDOWS\CURRENTVERSION\CONTROL PANEL\CURSORS\SCHEMES
  • HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\WINDOWS\CURRENTVERSION\TELEPHONY\LOCATIONS
  • HKEY_LOCAL_MACHINE\SOFTWARE\POLICIES
  • HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\WINDOWS\CURRENTVERSION\GROUP POLICY
  • HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\WINDOWS\CURRENTVERSION\POLICIES
  • HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\WINDOWS\CURRENTVERSION\SETUP\OC MANAGER
  • HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\SOFTWARE\MICROSOFT\SHARED TOOLS\MSINFO
  • HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\WINDOWS\CURRENTVERSION\SETUP
  • HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\CTF\TIP
  • HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\CTF\SYSTEMSHARED
  • HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\WINDOWS NT\CURRENTVERSION\FONTS
  • HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\WINDOWS NT\CURRENTVERSION\FONTSUBSTITUTES
  • HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\WINDOWS NT\CURRENTVERSION\FONTDPI
  • HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\WINDOWS NT\CURRENTVERSION\FONTMAPPER
  • HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\RAS
  • HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\DRIVER SIGNING
  • HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\NON-DRIVER SIGNING
  • HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\CRYPTOGRAPHY\CALAIS\CURRENT
  • HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\CRYPTOGRAPHY\CALAIS\READERS
  • HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\WINDOWS NT\CURRENTVERSION\TIME ZONE
  • HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\TRANSACTION SERVER
  • HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\DFS
  • HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\TERMSERVLICENSING

Wichtig

Die Reflektion von Registrierungsschlüsseln kann sich in späteren Betriebssystemversionen ändern. Softwareentwickler sollten das Schreiben von Programmcode vermeiden, der auf zuvor dokumentierten Listen mit reflektierten Schlüsseln basiert. Stattdessen sollte Code geschrieben werden, um die Reflektion status zu überprüfen, bevor das Programm aufruft die logische 32-Bit- oder 64-Bit-Ansicht der Registrierung.

Änderungen Editor Registrierung

Sowohl 32-Bit- als auch 64-Bit-Versionen von Registry Editor sind in x64 Edition-Betriebssystemen enthalten. Verwenden Sie eine der folgenden Methoden, um die 64-Bit- und 32-Bit-Programmabschnitte der Registrierung auf einem Windows x64 Edition-Computer besser zu verstehen.

So starten Sie die 64-Bit-Version von Registry Editor

  1. Melden Sie sich beim Windows x64 Edition-Computer mit einem Konto an, das über Administratorberechtigungen verfügt.
  2. Klicken Sie auf Start, klicken Sie auf Ausführen, und geben im Feld Öffnen die Zeichenfolge regedit ein. Klicken Sie anschließend auf OK.
  3. Suchen Und untersuchen Sie unter Registrierungs-Editor den folgenden Registrierungsunterschlüssel:HKEY_LOCAL_MACHINE\Software\WOW6432node

So starten Sie die 32-Bit-Version von Registry Editor

Klicken Sie auf Start, klicken Sie auf Ausführen, geben Sie den Laufwerkbuchstaben an der Stelle ein, an der Sie Windows x64 Edition\Windows\syswow64\regedit.exe m installiert haben, in das Feld Öffnen , und klicken Sie dann auf OK. Mit dem m-Schalter können Sie mehrere Instanzen von Registry Editor ausführen.

Hinweis

Wenn Sie sich bei einem Computer mit Microsoft Windows Server 2003 Service Pack 1 (SP1) oder höher oder einem Windows x64 Edition-basierten Computer anmelden und das Remotedesktopprotokoll (RDP) verwenden, um eine Verbindung mit einem anderen Windows Server 2003 SP1- oder höher-basierten Computer oder windows x64 Edition-basierten Computer herzustellen, können Sie den 64-Bit-Abschnitt der Registrierung auf dem Remotecomputer anzeigen. Wenn Sie sich jedoch bei einem Microsoft Windows Server 2003-Computer anmelden, der nicht auf SP1 oder ein anderes 32-Bit-Windows-Betriebssystem aktualisiert wurde, können Sie nur den 32-Bit-Abschnitt der Registrierung auf dem Remotecomputer anzeigen.

Technischer Support für x64-basierte Versionen von Windows

Wenn Ihre Hardware bereits mit einer Windows x64-Edition geliefert wurde, bietet Ihr Hardwarehersteller technischen Support und Unterstützung für die Windows x64 Edition. Da eine Windows-x64-Edition zusammen mit Ihrer Hardware geliefert wurde, ist der Hersteller der Hardware für den technischen Support zuständig. Möglicherweise hat der Hersteller der Hardware die Windows x64 Edition durch einzelne Komponenten verändert. Dazu gehören beispielsweise bestimmte Gerätetreiber oder optionale Einstellungen zur Leistungsoptimierung der Hardware. Microsoft bietet Unterstützung mit angemessenem Aufwand, wenn Sie technische Hilfe zu einer Windows x64-Edition benötigen. Sie müssen sich jedoch möglicherweise direkt an den Hersteller wenden. Der Hersteller kann Ihnen den besten Support für die von ihm auf der Hardware installierte Software bieten. Wenn Sie eine Windows x64-Edition wie eine Windows Server 2003 x64-Edition separat erworben haben, wenden Sie sich an Microsoft, um technischen Support zu erhalten.