chiave HKEY_CLASSES_ROOT
La chiave HKEY_CLASSES_ROOT (HKCR) contiene associazioni di estensioni del nome file e informazioni di registrazione della classe COM, ad esempio ProgIDs, CLSID e ID. È principalmente destinato alla compatibilità con il Registro di sistema in Windows a 16 bit.
Le informazioni sull'estensione del nome di classe e di registrazione dei file vengono archiviate sia in HKEY_LOCAL_MACHINE che nelle chiavi di HKEY_CURRENT_USER. La chiave HKEY_LOCAL_MACHINE\Software\Classes contiene le impostazioni predefinite che possono essere applicate a tutti gli utenti nel computer locale. La chiaveHKEY_CURRENT_USER\Software\Classes contiene le impostazioni che si applicano solo all'utente interattivo. La chiave HKEY_CLASSES_ROOT fornisce una visualizzazione del Registro di sistema che unisce le informazioni di queste due origini. HKEY_CLASSES_ROOT fornisce anche questa visualizzazione unita per le applicazioni progettate per le versioni precedenti di Windows.
Le impostazioni specifiche dell'utente hanno la priorità sulle impostazioni predefinite. Ad esempio, l'impostazione predefinita potrebbe specificare un'applicazione specifica per gestire i file .doc. Tuttavia, un utente può eseguire l'override di questa impostazione specificando un'applicazione diversa nel Registro di sistema.
Le funzioni del Registro di sistema, ad esempio RegOpenKeyEx o RegQueryValueEx , consentono di specificare la chiave di HKEY_CLASSES_ROOT . Quando si chiamano queste funzioni da un processo in esecuzione nell'account utente interattivo, il sistema unisce le impostazioni predefinite in HKEY_LOCAL_MACHINE\Software\Classes con le impostazioni dell'utente interattivo in HKEY_CURRENT_USER\Software\Classes. Per altre informazioni sulla modalità di unione di queste impostazioni, vedere Visualizzazione unita di HKEY_CLASSES_ROOT.
Per modificare le impostazioni per l'utente interattivo, archiviare le modifiche in HKEY_CURRENT_USER\Software\Classes anziché HKEY_CLASSES_ROOT.
Per modificare le impostazioni predefinite, archiviare le modifiche in HKEY_LOCAL_MACHINE\Software\Classes. Se si scrivono chiavi in una chiave in HKEY_CLASSES_ROOT, il sistema archivia le informazioni in HKEY_LOCAL_MACHINE\Software\Classes. Se si scrivono valori in una chiave in HKEY_CLASSES_ROOT e la chiave esiste già in HKEY_CURRENT_USER\Software\Classes, il sistema archivierà le informazioni invece di in HKEY_LOCAL_MACHINE\Software\Classes.
I processi in esecuzione in un contesto di sicurezza diverso da quello dell'utente interattivo non devono usare la chiave HKEY_CLASSES_ROOT con le funzioni del Registro di sistema. Tali processi possono invece aprire in modo esplicito la chiave HKEY_LOCAL_MACHINE\Software\Classes per accedere alle impostazioni predefinite. Per aprire una chiave del Registro di sistema che unisce il contenuto di HKEY_LOCAL_MACHINE\Software\Classes alle impostazioni per un utente specificato, questi processi possono chiamare la funzione RegOpenUserClassesRoot . Ad esempio, un thread che rappresenta un client può chiamare RegOpenUserClassesRoot se deve recuperare una visualizzazione unita per il client rappresentato. Si noti che RegOpenUserClassesRoot ha esito negativo se il profilo utente per l'utente specificato non è stato caricato. Il sistema carica automaticamente il profilo per l'utente interattivo durante l'accesso. Per altri utenti, è necessario chiamare la funzione LoadUserProfile per caricare in modo esplicito il profilo dell'utente.
Se un'applicazione viene eseguita con diritti di amministratore e Controllo account utente è disabilitata, il runtime COM ignora la configurazione COM per utente e accede solo alla configurazione COM per computer. Le applicazioni che richiedono diritti di amministratore devono registrare oggetti COM dipendenti durante l'installazione nell'archivio di configurazione COM per computer (HKEY_LOCAL_MACHINE\Software\Classes). Per altre informazioni, vedere AC: UAC: COM Per-User Configuration.
Windows Server 2003 e Windows XP/2000: Le applicazioni possono registrare oggetti COM dipendenti nell'archivio di configurazione COM per computer o per utente (HKEY_LOCAL_MACHINE\Software\Classes o HKEY_CURRENT_USER\Software\Classes).
Argomenti correlati