Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Сфера Microsoft » Программное обеспечение Windows » Система - [решено] Ограничения доступа к реестру Windows

Ответить
Настройки темы
Система - [решено] Ограничения доступа к реестру Windows

Новый участник


Сообщения: 3
Благодарности: 0

Профиль | Отправить PM | Цитировать


Здравствуйте.

Наткнулся на ограничение по доступу на чтение к ветвям реестра Windows (Win7, Win server 2008) такого вида:

Команды экспорта реестра в файл:
reg export "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Installer"
и
reg export "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Installer\Folders"

Первая отрабатывает, если запускать ее из командной строки (cmd.exe) и из стороннего коммандера (unreal commander).
Вторая команда отрабатывает только из командной строки. Запуск из других приложений - приводит к сообщению "Ошибка: Не удается найти указанный раздел или параметр в реестре.".

Все запускается под пользователем, который является на машинах Локальным админом.
Проставление полного доступа к вложенным веткам для "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Installer" в редакторе реестра - ни к чему не приводит. Собственно, доступ имеется, т.к. из командной строки экспорт реестра работает нормально.

Подскажите пожалуйста, что это может быть за ограничение.

Отправлено: 12:03, 16-05-2016

 

Ветеран


Сообщения: 27449
Благодарности: 8086

Профиль | Отправить PM | Цитировать


mrFduch, разрядность ОС — x64? А:
Цитата mrFduch:
других приложений »
предполагаю — x86, да?!
Это сообщение посчитали полезным следующие участники:

Отправлено: 14:58, 16-05-2016 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Новый участник


Сообщения: 3
Благодарности: 0

Профиль | Отправить PM | Цитировать


Верное предположение!
Хотя мне не хватает знаний о работе x86-приложений под ОС 64-bit, что бы за него зацепиться.

Отправлено: 15:35, 16-05-2016 | #3


Ветеран


Сообщения: 27449
Благодарности: 8086

Профиль | Отправить PM | Цитировать


mrFduch, тогда, полагаю, дело вот в чём: при работе x86-приложений в x64-окружении включается т.н. редирект — ОС перенаправляет обращения функций WinAPI к ряду предопределённых папок каталогов файловой системы в другое расположение, то же происходит и при работе с реестром (подобное поведение ОС приложение, со своей стороны, может, в принципе, отключить).

То есть, исполняя:
Код: Выделить весь код
reg export "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Installer\Folders"
из-под x86-приложения («unreal commander») в x64-окружении («Win7, Win server 2008»), Вы исполняете не x64-версию «C:\Windows\System32\reg.exe», а на самом деле — исполняете x86-версию «C:\Windows\SysWOW64\reg.exe», которая, соответственно, обращается в реальности не к разделу «HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Installer\Folders», а к разделу «HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Installer\Folders», которого, вероятно, не находит (у меня, во всяком случае, подраздела «Folders» там нет). Отсюда, надо полагать, и сообщение об ошибке.

Скучные подробности (вкратце):
File System Redirector (Windows)
Registry Redirector (Windows)
WoW64 - Wikipedia, the free encyclopedia
(ну, и по ссылкам оттуда погулять).

Какой выход из данной ситуации? Самое правильное — использовать x64-версию файлового менеджера (вроде как заявлена на сайте).

На скриншоте в плагине Registry Browser файлового менеджера Far Manager показано содержимое обеих подразделов реестра:
Скрытый текст

На панели слева — как выглядит раздел «HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Installer» для x64-приложения, на панели справа — что видят в том же разделе при перенаправлении x86-приложения.
Это сообщение посчитали полезным следующие участники:

Отправлено: 23:28, 16-05-2016 | #4


Новый участник


Сообщения: 3
Благодарности: 0

Профиль | Отправить PM | Цитировать


Спасибо, я с ограничением на доступ к реестру конечно заблуждался!
После Вашего вопроса начал думать примерно в том же направлении.

Но т.к. меня интересует получение информации об установленных приложениях и не хочется привязываться к разрядности сервера 1С на котором будет выполняться код, буду брать информацию из ветки реестра "SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall".
Протестирую только, доступна ли она для x64 сервера приложений.

За ссылки благодарю, с утра подходящее время для небольшого саморазвития!

Отправлено: 09:26, 17-05-2016 | #5



Компьютерный форум OSzone.net » Сфера Microsoft » Программное обеспечение Windows » Система - [решено] Ограничения доступа к реестру Windows

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
http/web - ограничения доступа к интернет сайтам, или открытие доступа только к определенным сай reddenya Сетевые технологии 5 08-10-2009 10:21
Ошибка доступа к реестру GimnasT Автоматическая установка приложений 3 12-11-2007 09:07
Ошибка доступа к реестру Windows terabit Microsoft Windows 95/98/Me (архив) 7 23-04-2004 18:23
Блокирование доступа к реестру Guest Защита компьютерных систем 19 28-10-2003 14:08
Блокирование доступа к реестру Guest Microsoft Windows 95/98/Me (архив) 13 17-10-2003 18:58




 
Переход