HKEY_CURRENT_USER vs HKEY_LOCAL_MACHINE
HKEY_CURRENT_USER und HKEY_LOCAL_MACHINE sind zwei Stammschlüssel in der Windows-Registrierung, die seit Windows 3.1 ein wesentlicher Bestandteil jeder Windows-Betriebssysteminstallation sind. Die Windows-Registrierung enthält Geräteeinstellungen, Softwareoptionen und andere Informationen zum Computer, zum Betriebssystem und den darauf befindlichen Anwendungen. Der Hauptunterschied zwischen HKEY_CURRENT_USER und HKEY_LOCAL_MACHINE ist das, worauf sie sich beziehen. HKEY_LOCAL_MACHINE enthält Informationen, die für den gesamten Computer relevant sind, während HKEY_CURRENT_USER Informationen enthält, die für den Benutzer spezifisch sind. Daher gibt es nur eine Kopie von HKEY_LOCAL_MACHINE, während mehrere Kopien von HKEY_CURRENT_USER mit unterschiedlichen Werten vorhanden sind.
Wenn ein Benutzer die Registrierungseinträge in HKEY_CURRENT_USER bearbeiten möchte, ändert er nur die Einstellungen für sich. Wenn er jedoch die Einträge in HKEY_LOCAL_MACHINE ändert, ändert er die Einstellungen für alle Benutzer, die diesen Computer verwenden. Ein gutes Beispiel dafür wäre die Installation einer neuen Software. Viele Software fragt bei der Installation, ob es nur für den aktuellen Benutzer oder für jeden wäre. Die Auswahl nur für den aktuellen Benutzer würde dazu führen, dass Einträge in HKEY_CURRENT_USER gemacht werden, während die Auswahl für jeden die Einträge in HKEY_LOCAL_MACHINE einfügen würde. Die Auswahl der ersten Option bedeutet natürlich, dass nur der Benutzer, der die Software installiert hat, sie verwenden kann, während die letztere Option jedem die Software anzeigen und verwenden kann.
Ein weiterer wichtiger Unterschied zwischen HKEY_LOCAL_MACHINE und HKEY_CURRENT_USER ist, wer es bearbeiten kann. Ersteres kann von jedem Benutzer bearbeitet werden, der Zugriff auf die Registrierung hat, während letzteres nur vom einzelnen Benutzer bearbeitet werden kann. Sie können sich nicht bei einem Konto anmelden und die HKEY_CURRENT_USER-Einträge für ein anderes Konto bearbeiten.
Schließlich ist es wichtig, wann die Registrierungseinträge geladen werden. HKEY_LOCAL_MACHINE werden beim Start des Betriebssystems geladen. Im Vergleich dazu wird HKEY_CURRENT_USER erst geladen, nachdem sich der Benutzer bei seinem Konto angemeldet hat. Dies ist durchaus sinnvoll, da das Betriebssystem nicht weiß, welchen HKEY_CURRENT_USER es laden würde. Wenn sich der Benutzer nicht bei einem bestimmten Konto anmeldet oder sich beim Gastkonto anmeldet, werden die Standardeinstellungen von HKEY_CURRENT_USER geladen. Für einen neuen Benutzer sind die HKEY_CURRENT_USER-Einträge ebenfalls die Standardeinstellungen.
Zusammenfassung:
1.HKEY_CURRENT_USER gilt nur für einen Benutzer, während HKEY_LOCAL_MACHINE für alle Benutzer gilt
2.HKEY_LOCAL_MACHINE ist immer verfügbar, während HKEY_CURRENT_USER für einen bestimmten Benutzer nur verfügbar ist, wenn er sich anmeldet
3.HKEY_LOCAL_MACHINE werden beim Start geladen, während HKEY_CURRENT_USER beim Anmelden geladen wird