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 ?

Comment corriger les erreurs « L'accès au registre demandé n'est pas autorisé » dans Windows lors de la modification de HKEY_CLASSES_ROOT ?

Mary-Kate Olsen
Mary-Kate Olsenoriginal
2024-12-29 02:32:10202parcourir

How to Fix

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 La section spécifie le niveau d'exécution requis pour votre application, dans ce cas, "requireAdministrator". Ce niveau indique que l'application doit être exécutée avec des privilèges administratifs pour accéder aux clés de registre protégées.

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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn