Light-electric.com

IT Журнал
166 просмотров
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд
Загрузка...

Ошибка при доступе к реестру

Как получить полный доступ к разделу реестра

Содержание

Причины отсутствия доступа к реестру

В некоторые разделы реестра Windows 7 изменения не может внести даже администратор, работающий в редакторе реестра, который запущен с полными правами. Это происходит потому, что у группы «Администраторы» нет прав на запись в этот раздел реестра. Причин для этого может быть три:

    • Группа «Администраторы» является владельцем раздела, но не имеет полных прав на него. В этом случае достаточно просто выдать группе «Администраторы» полные права.
    • Владельцем раздела является системная служба TrustedInstaller. Эта служба работает в рамках комплекса по укреплению безопасности операционной системы, но для любителей «поковырять» реестр она представляет собой досадную помеху на пути к цели. В этом случае нужно сначала стать владельцем раздела, а затем выдать своей группе полные права.
    • Владельцем раздела является системная учетная запись «Система». В этом случае можно поступить так же, как и с TrustedInstaller, но я также расскажу, как использовать другой способ, не связанный с изменениями разрешений.

Далее я покажу, как внести изменения в реестр при недостатке прав. Я также объясню, как восстановить исходные разрешения, и почему это нужно делать

Получение полных прав и смена владельца

Я полагаю, что в редакторе реестра у вас уже открыт нужный раздел.

    1. Щелкните правой кнопкой мыши на разделе реестра и выберите из меню пункт Разрешения.
    2. Выделите группу «Администраторы»:
      • Если доступен флажок Полный доступ, установите его и нажмите кнопку ОК. Этого может оказаться достаточно, если группа является владельцем раздела

      • Если флажок недоступен или вы видите сообщение об ошибке, переходите к пункту 3.
    1. Нажмите кнопку Дополнительно и перейдите на вкладку Владелец.
    2. Здесь я рекомендую различный подход в зависимости от владельца раздела.
      • Если владельцем является TrustedInstaller, выделите свою учетную запись, установите флажок Заменить владельца подконтейнеров и объектов и нажмите кнопку ОК.

    • Если владельцем является Система, можно поступить так же

Теперь ничто не препятствует записи в этот раздел реестра. Однако я рекомендую восстановить права, когда вы закончите редактирование раздела

Возвращение исходных прав и восстановление владельца

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

  1. Щелкните правой кнопкой мыши на разделе реестра и выберите из меню пункт Разрешения.
  2. Выделите группу «Администраторы», снимите флажок Полный доступ и нажмите кнопку Применить.

  • Нажмите кнопку Дополнительно и перейдите на вкладку Владелец. Вы увидите, что в отличие от вашей учетной записи, в списке нет служебных учетных записей Система и TrustedInstaller. Их нужно добавлять в список, как описано ниже.
  • Нажмите кнопку Другие пользователи и группы и в качестве имени объекта введите:
    • NT ServiceTrustedInstaller, если владельцем являлась учетная запись TrustedInstaller
    • система, если владельцем являлась учетная запись Система (в английской ОС нужно вводить System)
    • Нажмите кнопку ОК.

    Теперь нужная учетная запись есть в списке. Выделите ее, установите флажок Заменить владельца подконтейнеров и объектов и нажмите кнопку ОК.

    Исходные права и владелец раздела реестра восстановлены.

    Внесение изменений в реестр от имени учетной записи «Система»

    Если владельцем раздела реестра является специальная учетная запись «Система», существует способ внести изменения в раздел, не изменяя владельца и разрешений. Для этого используется утилита PsExec, входящая в набор утилит Марка Руссиновича PsTools. Суть способа сводится к запуску редактора реестра от имени системы.

    1. Загрузите набор PsTools и распакуйте утилиту PsExec в папку Windows, чтобы не указывать к ней путь в командной строке.
    2. Откройте командную строку от имени администратора и выполните команду:

    psexec -i -s regedit

    Запустится редактор реестра, причем от имени системы, что задается параметром — s.

    В этом легко убедиться с помощью другой утилиты Марка Руссиновича – Process Explorer. В свойствах процесса видно, от чьего имени он запущен.

    Теперь вы можете вносить изменения в разделы реестра, владельцем которых является учетная запись «Система».

    К сожалению, я не нашел способа запустить редактор реестра от имени TrustedInstaller.

    Ошибка при доступе к реестру

    ОС: Windows 7 Корпоративная, русская.

    Есть файл *.reg, запускается из файла *.bat

    Состав *.reg:
    [HKEY_CLASSES_ROOTVirtualStoreMACHINESOFTWAREFBT]
    «43952787493»=-
    [HKEY_LOCAL_MACHINESOFTWAREFBT]
    «43952787493»=-

    После запуска ключи не удаляются. На хрюше все работало. В чем причина?

    Georg III
    После запуска ключи не удаляются.

    Georg III
    Первой строкой файла должна быть:

    Windows Registry Editor Version 5.00

    В Вашем тексте ее нет.

    Нашел причину. Имхо, недоработка MS.

    При запуске .reg вручную, выдается предупреждение Редактора реестра: «Добавление сведений может привести к непреднамеренному. » Жмем ОК — все пучком.

    При запуске .reg из .bat предупреждение не выдается и, соответственно, система тупо отказывает в доступе. При этом абсолютно неважно, как настроен UAC.

    Вопрос: как сделать, чтобы указанное сообщение реестра появлялось и при запуске из .bat, либо не появлялось, но система не резала бы доступ к реестру? Еще раз подчеркну, UAC ваааще не влияет

    Georg III
    Есть ключ подавления запроса на подтверждение при импорте файла:

    regedit /s имя.reg

    Georg III
    Где находится файл *.reg относительно файла *.bat? Т.е. пути указаны правильно?
    заключите имя файла reg с путем в кавычки, может у Вас там есть специальные символу, например, пробел.

    А лучше показали бы здесь весть текст командного файла.

    Да в той же папке находится.

    Вот текст .bat-ника:

    @echo on
    attrib -h «c:UsersAll Users43952787493»
    del «c:UsersAll Users43952787493»
    attrib -h «c:ProgramData43952787493»
    del «c:ProgramData43952787493»
    regedit «FB A.reg»
    start «» «FB A.exe»

    Georg III
    Если вначале в соответствующую директорию перейти

    Val238
    заключите имя файла reg с путем в кавычки

    Georg III
    regedit «FB A.reg»
    start «» «FB A.exe»

    Не только в первой, но и во второй процитированной строке файл надо указывать с путём.

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

    Рецепт по приведённой ссылке при его бездумном использовании на постоянной основе достоин занесения в книгу «Вредные советы». Нормальные администраторы и продвинутые пользователи прекрасно знают, что нужно делать в каждом (не таком уж частом) конкретном случае, когда UAC не даёт возможности выполнить какое-то действие, не отключая его.

    Тем более что у спрашивающего в этой теме проблема абсолютно не в нём, а в неполном знании принципов исполнения командных файлов — в т.ч. в того, какой каталог является рабочим при исполнении пакетного файла.

    Вадим Стеркин

    В некоторые разделы реестра Windows изменения не может внести даже администратор, работающий в редакторе реестра, который запущен с полными правами. Это происходит потому, что у группы «Администраторы» нет прав на запись в этот раздел реестра. Причин для этого может быть две:

    • Группа «Администраторы» является владельцем раздела, но не имеет полных прав на него. В этом случае достаточно просто выдать группе «Администраторы» полные права.
    • Владельцем раздела являются системная учетная запись Система или TrustedInstaller (Вторая служит в рамках комплекса по укреплению безопасности операционной системы, но для любителей «поковырять» реестр она представляет собой досадную помеху на пути к цели). В этом случае можно сначала стать владельцем раздела, а затем выдать своей группе полные права. Но есть и более интересные альтернативы — утилиты для запуска исполняемых файлов от имени этих учетных записей.

    Далее я покажу, как внести изменения в реестр при недостатке прав. Я также объясню, как восстановить исходные разрешения, и почему это нужно делать.

    На этой странице

    В Windows 8 слегка изменился графический интерфейс смены владельца, что стало непреодолимым препятствием для ряда читателей, судя по комментариям. Мне претит, когда на одной странице дублируются практически одинаковые инструкции, но другие варианты еще хуже. Поэтому выбирайте инструкции для своей ОС. Я полагаю, что в редакторе реестра у вас уже открыт нужный раздел реестра.

    Получение полных прав и смена владельца

    По ходу дела вы увидите, кто является владельцем раздела реестра. Если это Система или TrustedInstaller, можно воспользоваться подходящей утилитой ↓

    Windows 8 и новее

    1. Щелкните правой кнопкой мыши на разделе реестра и выберите из меню пункт Разрешения.
    2. Выделите группу «Администраторы»:
      • Если доступен флажок Полный доступ, установите его и нажмите кнопку ОК. Этого может оказаться достаточно, если группа является владельцем раздела.
      • Если флажок недоступен или вы видите сообщение об ошибке, переходите к пункту 3.
    3. Нажмите кнопку Дополнительно, нажмите ссылку Изменить вверху окна, введите адрес электронной почты учетной записи Microsoft или имя локальной учетной записи, проверьте имя и нажмите кнопку ОК.
    4. Установите флажок Заменить владельца подконтейнеров и объектов вверху окна и нажмите кнопку ОК.
    5. Установите флажок «Полный доступ», как описано в пункте 2.

    Windows 7

    1. Щелкните правой кнопкой мыши на разделе реестра и выберите из меню пункт Разрешения.
    2. Выделите группу «Администраторы»:
      • Если доступен флажок Полный доступ, установите его и нажмите кнопку ОК. Этого может оказаться достаточно, если группа является владельцем раздела.
      • Если флажок недоступен или вы видите сообщение об ошибке, переходите к пункту 3.
    3. Нажмите кнопку Дополнительно и перейдите на вкладку Владелец.
    4. Здесь я рекомендую различный подход в зависимости от владельца раздела.
      • Если владельцем является TrustedInstaller, выделите свою учетную запись, установите флажок Заменить владельца подконтейнеров и объектов и нажмите кнопку ОК.
      • Если владельцем является Система, можно поступить так же, но лучше сделать иначе.
    5. Установите флажок «Полный доступ», как описано в пункте 2.

    Теперь ничто не препятствует записи в этот раздел реестра. Однако я рекомендую восстановить права, когда вы закончите редактирование раздела.

    Возвращение исходных прав и восстановление владельца

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

    Windows 8 и новее

    1. Щелкните правой кнопкой мыши на разделе реестра и выберите из меню пункт Разрешения.

  • Нажмите кнопку Дополнительно, нажмите ссылку Изменить вверху окна и введите имя учетной записи:
    • NT ServiceTrustedInstaller, если владельцем являлась учетная запись TrustedInstaller
    • система, если владельцем являлась учетная запись Система (в английской ОС нужно вводить System)

  • Установите флажок Заменить владельца подконтейнеров и объектов вверху окна и нажмите кнопку ОК.
  • Выделите группу «Администраторы», снимите флажок Полный доступ и нажмите кнопку Применить.
  • Windows 7

    1. Щелкните правой кнопкой мыши на разделе реестра и выберите из меню пункт Разрешения.
    2. Выделите группу «Администраторы», снимите флажок Полный доступ и нажмите кнопку Применить.
    3. Нажмите кнопку Дополнительно и перейдите на вкладку Владелец. Вы увидите, что в отличие от вашей учетной записи, в списке нет служебных учетных записей Система и TrustedInstaller. Их нужно добавлять в список, как описано ниже.
    4. Нажмите кнопку Другие пользователи и группы и в качестве имени объекта введите:
      • NT ServiceTrustedInstaller, если владельцем являлась учетная запись TrustedInstaller
      • система, если владельцем являлась учетная запись Система (в английской ОС нужно вводить System)
      • Нажмите кнопку ОК.

    Теперь нужная учетная запись есть в списке. Выделите ее, установите флажок Заменить владельца подконтейнеров и объектов и нажмите кнопку ОК.

    Исходные права и владелец раздела реестра восстановлены.

    Внесение изменений в реестр от имени учетной записи «Система»

    Если владельцем раздела реестра является специальная учетная запись «Система», существует способ внести изменения в раздел, не изменяя владельца и разрешений. Для этого используется утилита PsExec, входящая в набор утилит Марка Руссиновича PsTools. Суть способа сводится к запуску редактора реестра от имени системы.

    1. Загрузите набор PsTools и распакуйте утилиту PsExec в папку Windows, чтобы не указывать к ней путь в командной строке.
    2. Откройте командную строку от имени администратора и выполните команду:

    Запустится редактор реестра, причем от имени системы, что задается параметром -s (параметр -i обеспечивает интерактивный запуск приложения).

    В этом легко убедиться с помощью другой утилиты Марка Руссиновича – Process Explorer. В свойствах процесса видно, от чьего имени он запущен.

    Теперь вы можете вносить изменения в разделы реестра, владельцем которых является учетная запись «Система».

    Внесение изменений в реестр от имени учетной записи TrustedInstaller

    Попробуйте эти утилиты:

    • Trusted Shell (64-разрядная версия в архиве, пароль: tshell ). Достаточно запустить утилиту с правами администратора, затем в командной строке ввести regedit. Автор, Дмитрий Стариков, рассказывает о принципах работы в комментариях к этой записи.
    • DevxExec. Краткие инструкции в комментариях.

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

    Метки: sysinternals, реестр Информация в статье применима к Windows 7 и новее

    Об авторе

    Вадим является владельцем этого блога, и большинство записей здесь вышло из-под его пера. Подробности о блоге и авторе здесь.

    Вас также может заинтересовать:

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

    Windows 10 — Как получить полный доступ к конкретной записи реестра для редактирования или удаления.

    В многопользовательской системе такой как Windows 10, администратор может предоставить или аннулировать разрешение вносить изменения для любых пользователей. Это касается и реестра Windows при удалении или редактировании.

    Что же делать, если вы не можете изменить или удалить важный параметр реестра, просто необходимо сменить владельца ветки реестра! Достаточно сменить владельца один раз и вам будет предоставлен полный контроль.

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

    Как изменить владельца ветки реестра Windows 10.

    Примечание: Ваша учетная запись пользователя должна иметь права администратора.

    Вы, возможно уже сталкивались с проблемой при удалении или внесения изменений для записи реестра, получая сообщение «Не удается удалить. Ошибка при удалении ключа», «Не удается удалить все выделенные параметры» «Ошибка при записи нового параметра» и тд.. Это происходит потому, что вы не имеете достаточных прав для редактирования или удаления данного раздела реестра.

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

    Давайте предположим, вы выбрали ключ «Attributes», который находится в разделе реестра:

    Изменив запись «Attributes», мы удалим Панель быстрого доступа из проводника Windows, но если вы попытаетесь изменить ее, вы получите сообщение, «Не удаётся изменить параметр «Attributes» Ошибка при записи нового параметра».

    Изменить владельца для определенного раздела реестра Windows 10.

    Шаг 1. Кликните правой кнопкой мыши на разделе реестра (папке) в которой находится нужный вам параметр (ключ) реестра и выберите в контекстном меню «Разрешения».

    Шаг 2. В открывшемся окне нажмите на кнопку «Дополнительно».

    Шаг 3. В окне дополнительных параметров безопасности, Вы видите, что владельцем данного раздела и объектов в нем является «Система».

    Шаг 4. В строке Владелец нажмите надпись «Изменить».

    Шаг 5. В диалоговом окне «Выбор: Пользователь или Группа» нажмите кнопку «Дополнительно».

    Шаг 6. В следующем окне нажмите кнопку «Поиск».

    Шаг 7. В нижней части окна найдите и кликните мышкой надпись «Администраторы» (см. картинку) и нажмите «Ок».

    Шаг 8. Вернувшись в окно «Выбор: Пользователь или Группа», снова нажмите кнопку «ОК».

    Шаг 9. В окне «Дополнительных параметров безопасности» необходимо установить флажки в два чекбокса (см картинку ниже):

    • Заменить владельца подконтейнеров и объектов
    • Заменить все записи разрешений дочернего объекта наследуемыми от этого объекта

    Шаг 10. Нажмите кнопку «Применить» → «ОК». Подтвердите запрос безопасности.

    Шаг 11. Вы вернетесь к диалоговому окну «Разрешение для Группы». Выберите группу «Администраторы», в разрешениях группы необходимо также установить флажки в чекбоксы в пункте «Полный доступ», «Чтение» и нажмите «Применить» → «ОК».

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

    Теперь вы знаете, как получить полный доступ к конкретной записи реестра для редактирования или удаления, не забывайте делать резервную копию реестра если что то пойдет не так.

    Как получить доступ к разделу реестра и вернуть все на свои места

    В некоторые разделы реестра Windows 7 и Windows Vista изменения не может внести даже администратор, работающий в редакторе реестра, который запущен с полными правами. Это происходит потому, что у группы «Администраторы» нет прав на запись в этот раздел реестра.

    Причин для этого может быть три:

    • Группа «Администраторы» является владельцем раздела, но не имеет полных прав на него. В этом случае достаточно просто выдать группе «Администраторы» полные права.
    • Владельцем раздела является системная служба TrustedInstaller. Эта служба работает в рамках комплекса по укреплению безопасности операционной системы, но для любителей «поковырять» реестр она представляет собой досадную помеху на пути к цели. В этом случае нужно сначала стать владельцем раздела, а затем выдать своей группе полные права.
    • Владельцем раздела является системная учетная запись «Система». В этом случае можно поступить так же, как и с TrustedInstaller, но я также расскажу, как использовать другой способ, не связанный с изменениями разрешений.

    Далее я покажу, как внести изменения в реестр при недостатке прав. Я также объясню, как восстановить исходные разрешения, и почему это нужно делать.

    Я полагаю, что в редакторе реестра у вас уже открыт нужный раздел.

    1. Щелкните правой кнопкой мыши на разделе реестра и выберите из меню пункт Разрешения.
    2. Выделите группу «Администраторы»:
      • Если доступен флажок Полный доступ, установите его и нажмите кнопку ОК. Этого может оказаться достаточно, если группа является владельцем раздела.

    • Если флажок недоступен или вы видите сообщение об ошибке, переходите к пункту 3.
    1. Нажмите кнопку Дополнительно и перейдите на вкладку Владелец.
    2. Здесь я рекомендую различный подход в зависимости от владельца раздела.
      • Если владельцем является TrustedInstaller, выделите свою учетную запись, установите флажок Заменить владельца подконтейнеров и объектов и нажмите кнопку ОК.

    • Если владельцем является Система, можно поступить так же, но лучше сделать иначе.
    1. Установите флажок «Полный доступ», как описано в пункте 2.

    Теперь ничто не препятствует записи в этот раздел реестра. Однако я рекомендую восстановить права, когда вы закончите редактирование раздела.

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

    1. Щелкните правой кнопкой мыши на разделе реестра и выберите из меню пункт Разрешения.
    2. Выделите группу «Администраторы», снимите флажок Полный доступ и нажмите кнопку Применить.

    1. Нажмите кнопку Дополнительно и перейдите на вкладку Владелец. Вы увидите, что в отличие от вашей учетной записи, в списке нет служебных учетных записей Система иTrustedInstaller. Их нужно добавлять в список, как описано ниже.
    2. Нажмите кнопку Другие пользователи и группы и в качестве имени объекта введите:
      • NT ServiceTrustedInstaller, если владельцем являлась учетная запись TrustedInstaller
      • система, если владельцем являлась учетная запись Система (в английской ОС нужно вводить System)
      • Нажмите кнопку ОК.

    Теперь нужная учетная запись есть в списке. Выделите ее, установите флажок Заменить владельца подконтейнеров и объектов и нажмите кнопку ОК.

    Исходные права и владелец раздела реестра восстановлены.

    Если владельцем раздела реестра является специальная учетная запись «Система», существует способ внести изменения в раздел, не изменяя владельца и разрешений. Для этого используется утилита PsExec, входящая в набор утилит Марка Руссиновича PsTools. Суть способа сводится к запуску редактора реестра от имени системы.

    1. Загрузите набор PsTools и распакуйте утилиту PsExec в папку Windows, чтобы не указывать к ней путь в командной строке.
    2. Откройте командную строку от имени администратора и выполните команду:

    Запустится редактор реестра, причем от имени системы, что задается параметром — s.

    В этом легко убедиться с помощью другой утилиты Марка Руссиновича – Process Explorer. В свойствах процесса видно, от чьего имени он запущен.

    Теперь вы можете вносить изменения в разделы реестра, владельцем которых является учетная запись «Система».

    К сожалению, я не нашел способа запустить редактор реестра от имени TrustedInstaller. Если вы знаете, как этого добиться, сообщите мне.

    0 0 голоса
    Рейтинг статьи
    Читать еще:  Непредвиденная ошибка 0x8000ffff
    Ссылка на основную публикацию
    ВсеИнструменты