Suppression de la réflexion du registre Windows
Plateforme
Clients : Windows 7
Serveurs : Windows Server 2008 R2
Impact de la fonctionnalité
Gravité : faible
Fréquence : faible
Description
Le processus de réflexion du registre copie les clés et les valeurs du registre entre deux vues du registre pour les garder synchronisées. Dans les précédentes installations 64 bits de Windows, le processus reflétait un sous-ensemble des clés de registre redirigées entre les vues 32 bits et 64 bits. Cependant, la mise en œuvre de ceci a causé certaines incohérences dans l’état du registre. Pour plus de détails sur la réflexion du registre, veuillez consulter la section Réflexion du registre.
À partir de Windows 7, nous avons complètement supprimé la réflexion du registre et fusionné les clés qui étaient reflétées :
- HKEY_LOCAL_MACHINE\Software\Classes
- HKEY_LOCAL_MACHINE\Software\Microsoft\COM3
- HKEY_LOCAL_MACHINE\Software\Microsoft\EventSystem
- HKEY_LOCAL_MACHINE\Software\Microsoft\Ole
- HKEY_LOCAL_MACHINE\Software\Microsoft\Rpc
- HKEY_USERS\*\Software\Classes
- HKEY_USERS\*_Classes
Effectivement, cela fournit le même comportement de réflexion, puisque les changements apportés à ces clés sont immédiatement disponibles pour les applications 32 bits et 64 bits.
Les clés qui étaient reflétées de manière conditionnelle restent séparées :
- HKEY_LOCAL_MACHINE\Software\Classes\CLSID
- HKEY_LOCAL_MACHINE\Software\Classes\Interface
- HKEY_USERS\*\Software\Classes\CLSID
- HKEY_USERS\*\Software\Classes\Interface
- HKEY_USERS\*_Classes\CLSID
- HKEY_USERS\*_Classes\Interface
Elles sont utilisées pour conserver les données qui ne doivent pas être partagées entre les applications 32 bits et 64 bits.
Manifestation
Les clés CLSID et Interface de la liste ci-dessus ne sont plus reflétées bien qu’elles soient toujours redirigées. Bien que ce soit le comportement souhaité dans la plupart des cas, il est possible que des applications puissent dépendre de leur comportement reflété sous Vista.
Les fonctions permettant aux applications de contrôler la réflexion (RegDisableReflectionKey et RegEnableReflectionKey) sont inopérantes sous Windows 7.
Atténuation de l’impact
COM est le principal consommateur de la réflexion du registre. COM et d’autres consommateurs ont été mis à jour pour tenir compte de ce changement. Ce changement n’affecte pas les applications qui utilisent les API COM standard.
Solution
Appliquez l’une des options suivantes si vous dépendez de la réflexion du registre pour synchroniser les vues 32 bits et 64 bits :
Créez explicitement les clés dans les deux vues lors de l’installation.
Déplacez les clés hors du champ des clés reflétées.
Vérifiez les deux vues du registre lors de la requête pour une clé reflétée.
Remarque : les indicateurs KEY_WOW64_32KEY et KEY_WOW64_64KEY ne peuvent pas être combinés.
Appliquez l’une des options suivantes si vous dépendez des fonctions RegDisableReflectionKey pour désactiver la réflexion du registre :
- Créez explicitement les clés dans les deux vues lors de l’installation.
- Déplacez les clés hors du champ des clés reflétées.
- Utilisez des sous-clés spécifiques à la plateforme (comme x86, amd64 et ia64) pour séparer les données spécifiques à une architecture.
Liens vers d’autres ressources
- Article sur la réflexion du registre
- Liste des clés redirigées dans l’article sur le redirigeur de registre
- Bonnes pratiques pour Wow64
Remarque
Ces ressources peuvent ne pas être disponibles dans certaines langues et certains pays/régions.