Какой доступ к реестру можно получить без Прав администратора?

это может быть не лучшим образом, но для большинства небольших случаев это должно быть приемлемым:

"создать второй пустой массив и добавить только те, которые вы хотите keep "

Я не помню, где я это читал ... для справедливости я сделаю эту вики в надежде, что кто-то найдет ее или просто не заработает репутацию Я не заслуживаю.

49
задан Guy Avraham 24 June 2018 в 23:28
поделиться

2 ответа

В целом у пользователя неадминистратора есть этот доступ к реестру:

Чтение-запись к:

  • HKEY_CURRENT_USER

Только для чтения:

  • HKEY_LOCAL_MACHINE
  • HKEY_CLASSES_ROOT (который является просто ссылка к HKEY_LOCAL_MACHINE\Software\Classes)

возможно изменить некоторые из этих полномочий на основе ключа ключом, но это чрезвычайно редко. Вам не придется волноваться об этом.

В Ваших целях, Ваше приложение должно писать настройки и конфигурацию к HKEY_CURRENT_USER. Каноническое место где угодно в HKEY_CURRENT_USER\Software\YourCompany\YourProduct\

, Вы могли потенциально держать настройки, которые глобальны (для всех пользователей) в HKEY_LOCAL_MACHINE. Очень редко должно сделать это, и необходимо избежать его. Проблема состоит в том, что любой пользователь может "считать" тех, но только администратор (или следовательно, Ваша программа установки/установки) может "установить" их.

Другой общий источник проблемы: Ваше приложение ни во что не должно писать в Program files или эти Windows каталоги. Если необходимо записать в файлы, под рукой существует несколько опций; описание всех их было бы более длительным обсуждением. Все опции заканчивают тем, что писали в подпапку или другого под %USERPROFILE% для рассматриваемого пользователя.

Наконец, Ваше приложение должно остаться вне [1 110]. Этот улей содержит аппаратную конфигурацию, сервисные конфигурации и другие объекты, на которые 99,9999% приложений не должен должен быть смотреть (например, это содержит текущий список устройств Plug and Play). При необходимости в чем-нибудь оттуда большая часть информации доступна через поддерживаемые API в другом месте.

83
ответ дан Andrey Moiseev 7 November 2019 в 11:44
поделиться

Да, необходимо быть в состоянии записать в любое место под HKEY_CURRENT_USER, не имея Прав администратора. Но это - эффективно частное хранилище, к которому никакой другой пользователь на этой машине не будет в состоянии получить доступ, таким образом, Вы не сможете поместить общую конфигурацию там.

3
ответ дан Curt Hagenlocher 7 November 2019 в 11:44
поделиться
Другие вопросы по тегам:

Похожие вопросы: