Изменение реестра без прав администратора
Я думал, что мне нужны права администратора для изменения реестра (я получаю ошибки, если у моего приложения нет таких). Возможно, только часть реестра требует прав администратора.
Не могли бы вы дать некоторую информацию? Мне нужно хранить данные приложения где-нибудь без прав администратора.
Ответы
Ответ 1
Вам нужны административные привилегии для записи в местоположения, которые используются несколькими пользователями.
В файловой системе это означает, что такие папки, как \WINDOWS
или \Program Files
.
В реестре это означает все ульи, которые не принадлежат пользователю.
Поэтому вы можете писать только HKEY_CURRENT_USER
.
В частности, вы должны написать HKCU\Software\Your Company
.
Ответ 2
Войдите в систему как обычный пользователь, не являющийся администратором. Откройте regedit, щелкните правой кнопкой мыши на клавишах верхнего уровня и просмотрите разрешения для каждого, вы увидите, какие из них вы можете записать в качестве пользователя. В основном, это просто HKEY_CURRENT_USER, как говорит Слакс.
HKEY_LOCAL_MACHINE, например, выключен. Вы можете написать HKEY_USERS/вашим пользователям SID, потому что HKCU в основном является имиджем.