HKEY_CLASSES_ROOT Schlüssel

Der HKEY_CLASSES_ROOT-Schlüssel (HKCR) enthält Dateinamenerweiterungszuordnungen und COM-Klassenregistrierungsinformationen wie ProgIDs, CLSIDs und IIDs. Es ist in erster Linie für die Kompatibilität mit der Registrierung in 16-Bit-Windows vorgesehen.

Klassenregistrierungs- und Dateinamenerweiterungsinformationen werden sowohl unter dem HKEY_LOCAL_MACHINE - als auch unter HKEY_CURRENT_USER-Schlüsseln gespeichert. Der HKEY_LOCAL_MACHINE\Software\Classes-Schlüssel enthält Standardeinstellungen, die für alle Benutzer auf dem lokalen Computer gelten können. Der HKEY_CURRENT_USER\Software\Classes Schlüssel enthält Einstellungen, die nur für den interaktiven Benutzer gelten. Der HKEY_CLASSES_ROOT-Schlüssel bietet eine Ansicht der Registrierung, die die Informationen aus diesen beiden Quellen zusammenführt. HKEY_CLASSES_ROOT stellt diese zusammengeführte Ansicht auch für Anwendungen bereit, die für frühere Versionen von Windows entwickelt wurden.

Die benutzerspezifischen Einstellungen haben Vorrang vor den Standardeinstellungen. Beispielsweise kann die Standardeinstellung eine bestimmte Anwendung angeben, die .doc Dateien verarbeiten soll. Ein Benutzer kann diese Einstellung jedoch überschreiben, indem er eine andere Anwendung in der Registrierung angibt.

Mit Registrierungsfunktionen wie RegOpenKeyEx oder RegQueryValueEx können Sie den HKEY_CLASSES_ROOT Schlüssel angeben. Wenn Sie diese Funktionen von einem Prozess aufrufen, der im interaktiven Benutzerkonto ausgeführt wird, führt das System die Standardeinstellungen in HKEY_LOCAL_MACHINE\Software\Classes mit den Einstellungen des interaktiven Benutzers unter HKEY_CURRENT_USER\Software\Classeszusammen. Weitere Informationen zum Zusammenführen dieser Einstellungen finden Sie unter Zusammengeführte Ansicht von HKEY_CLASSES_ROOT.

Um die Einstellungen für den interaktiven Benutzer zu ändern, speichern Sie die Änderungen unter HKEY_CURRENT_USER\Software\Classes und nicht unter HKEY_CLASSES_ROOT.

Um die Standardeinstellungen zu ändern, speichern Sie die Änderungen unter HKEY_LOCAL_MACHINE\Software\Classes. Wenn Sie unter HKEY_CLASSES_ROOT Schlüssel in einen Schlüssel schreiben, speichert das System die Informationen unter HKEY_LOCAL_MACHINE\Software\Classes. Wenn Sie Werte in einen Schlüssel unter HKEY_CLASSES_ROOT schreiben und der Schlüssel bereits unter HKEY_CURRENT_USER\Software\Classesvorhanden ist, speichert das System die Informationen dort anstelle von unterHKEY_LOCAL_MACHINE\Software\Classes.

Prozesse, die in einem anderen Sicherheitskontext als dem des interaktiven Benutzers ausgeführt werden, sollten nicht den HKEY_CLASSES_ROOT Schlüssel mit den Registrierungsfunktionen verwenden. Stattdessen können solche Prozesse den HKEY_LOCAL_MACHINE\Software\Classes-Schlüssel explizit öffnen, um auf die Standardeinstellungen zuzugreifen. Um einen Registrierungsschlüssel zu öffnen, der den Inhalt von HKEY_LOCAL_MACHINE\Software\Classes mit den Einstellungen für einen angegebenen Benutzer zusammenführt, können diese Prozesse die RegOpenUserClassesRoot-Funktion aufrufen. Beispielsweise kann ein Thread, der die Identität eines Clients angibt , RegOpenUserClassesRoot aufrufen, wenn er eine zusammengeführte Ansicht für den Client abrufen muss, der identitätswechselt wird. Beachten Sie, dass RegOpenUserClassesRoot fehlschlägt, wenn das Benutzerprofil für den angegebenen Benutzer nicht geladen wurde. Das System lädt das Profil für den interaktiven Benutzer automatisch beim Anmelden. Für andere Benutzer müssen Sie die LoadUserProfile-Funktion aufrufen, um das Profil des Benutzers explizit zu laden.

Wenn eine Anwendung mit Administratorrechten ausgeführt wird und die Benutzerkontensteuerung deaktiviert ist, ignoriert die COM-Runtime die COM-Konfiguration pro Benutzer und greift nur auf die computerspezifische COM-Konfiguration zu. Anwendungen, die Administratorrechte erfordern, sollten während der Installation abhängige COM-Objekte im computerspezifischen COM-Konfigurationsspeicher (HKEY_LOCAL_MACHINE\Software\Classes) registrieren. Weitere Informationen finden Sie unter AC: UAC: COM Per-User Configuration.

Windows Server 2003 und Windows XP/2000: Anwendungen können abhängige COM-Objekte entweder im COM-Konfigurationsspeicher pro Computer oder benutzerspezifischen COM-Konfigurationsspeicher (HKEY_LOCAL_MACHINE\Software\Classes oder HKEY_CURRENT_USER\Software\Classes) registrieren.

HKEY_CLASSES_ROOT (Resource Kit-Registrierungsreferenz)