Maison >développement back-end >C++ >Comment corriger les erreurs « L'accès au registre demandé n'est pas autorisé » dans Windows lors de la modification de HKEY_CLASSES_ROOT ?
Prise en charge de l'UAC pour les modifications du registre
Lors de l'exécution de modifications du registre sous la ruche HKEY_CLASSES_ROOT dans les versions de Windows au-delà de XP, telles que Windows 7, Vista, et 2008, les utilisateurs peuvent rencontrer l'erreur « L'accès au registre demandé n'est pas autorisé ». Cette erreur provient de l'introduction du contrôle de compte d'utilisateur (UAC) dans ces systèmes d'exploitation, qui applique des mesures de sécurité plus strictes pour les modifications au niveau du système en exigeant des privilèges élevés.
Pour garantir une prise en charge appropriée de l'UAC pour les modifications du registre, il est nécessaire d'ajouter les éléments suivants au fichier manifeste de votre application (.manifest) :
<?xml version="1.0" encoding="utf-8"?> <asmv1:assembly manifestVersion="1.0" xmlns="urn:schemas-microsoft-com:asm.v1" xmlns:asmv1="urn:schemas-microsoft-com:asm.v1" xmlns:asmv2="urn:schemas-microsoft-com:asm.v2" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <assemblyIdentity version="1.0.0.0" name="MyApplication.app" /> <trustInfo xmlns="urn:schemas-microsoft-com:asm.v2"> <security> <requestedPrivileges xmlns="urn:schemas-microsoft-com:asm.v3"> <requestedExecutionLevel level="requireAdministrator" uiAccess="false" /> </requestedPrivileges> </security> </trustInfo> </asmv1:assembly>
Le fichier
En incorporant cette modification du manifeste, votre application gérera correctement l'élévation UAC et vous permettra d'effectuer des modifications de registre sous HKEY_CLASSES_ROOT dans les versions Windows. avec UAC activé.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!