web-dev-qa-db-fra.com

Modification du registre sans droits d'administrateur

Je pensais que j'avais besoin de droits d'administrateur pour changer de registre (j'obtiens des erreurs si mon application n'en a pas). Peut-être qu'une partie seulement du registre nécessite des droits d'administrateur.

Pourriez-vous donner quelques informations? J'ai besoin de stocker mes données d'application quelque part sans droits d'administrateur.

21
John White

Vous avez besoin de privilèges administratifs pour écrire dans des emplacements partagés par plusieurs utilisateurs.
Dans le système de fichiers, cela signifie des dossiers comme \WINDOWS ou \Program Files. Dans le registre, cela signifie toutes les ruches qui ne sont pas par utilisateur.

Par conséquent, vous ne pouvez écrire que sur HKEY_CURRENT_USER.
Spécifiquement, vous devez écrire à HKCU\Software\Your Company.

24
SLaks

Connectez-vous en tant qu'utilisateur non administrateur normal. Ouvrez regedit, cliquez avec le bouton droit sur les clés de niveau supérieur et examinez les autorisations pour chacune, vous verrez celles sur lesquelles vous pouvez écrire en tant qu'utilisateur. Fondamentalement, c'est juste HKEY_CURRENT_USER comme le dit SLaks.

HKEY_LOCAL_MACHINE est hors limites, par exemple. Vous pouvez écrire sur HKEY_USERS/le SID de vos utilisateurs, car HKCU est essentiellement une image de cela.

7
Bob Moore