Программа не может записать в реестр

Добрый день. Сегодня потребовалось создать функцию анализа приложений, однако возникла проблема записи реестра в ветку HKLMSOFTWAREMicrosoftWindows NTCurrentVersionWindows, UAC отключал, запускал от администратора (тоже не помогло), манифест исправил вот так:

level=»requireAdministrator»
uiAccess=»false»/>

ОС: Windows 7 Professional x64

Не изменяет ключ через Delphi:

Registry := TRegistry.Create(KEY_WRITE);
Registry.RootKey := HKEY_LOCAL_MACHINE;
Registry.OpenKey(‘SOFTWAREMicrosof tWindows NTCurrentVersionWindows’, True);
Registry.WriteInteger(‘LoadAppInit_ DLLs’,1);
Registry.CloseKey;
Registry.Free;

Попытка запуска bat файла из моего exe, тоже не дала успеха (ручной запуск — работает):

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


PS: Это не будущий троян, а программа для локальной слежки за компьютером. Частный заказ.
Участник клуба
Регистрация: 09.11.2007
Сообщений: 1,752
У меня тоже не работало, пока не поставил слеши тут, может и тебе поможет

Registry.OpenKey(‘SOFTWAREMicrosoftWindows NTCurrentVersionWindows’, True);
Регистрация: 15.02.2010
Сообщений: 15,401
Итак, ваше приложение 64х битное?
Пользователь
Регистрация: 17.08.2012
Сообщений: 17
нет, просто проверял на XP x32 работает, но win7 x64 не хочет
Пользователь
Регистрация: 17.08.2012
Сообщений: 17
У меня тоже не работало, пока не поставил слеши тут, может и тебе поможет
Registry.OpenKey(‘SOFTWAREMicrosoftWindows NTCurrentVersionWindows’, True);
Не работает (( C HKCU все как надо. Записать в HKLMSOFTWARELanSpy тоже не выходит.
Регистрация: 15.02.2010
Сообщений: 15,401

нет, просто проверял на XP x32 работает, но win7 x64 не хочет

Вы думаете я просто так спросил? http://msdn.microsoft.com/en-us/libr. (v=vs.85).aspx
Пользователь
Регистрация: 24.07.2009
Сообщений: 87

Может смениш параметр с Registry.OpenKey(‘SOFTWAREMicrosof tWindows NTCurrentVersionWindows’, True); на Registry.OpenKey(‘SOFTWAREMicrosof tWindows NTCurrentVersionWindows’, False); ты же не создаёшь ключ в реестре а просто проверяеш.

Пользователь
Регистрация: 17.08.2012
Сообщений: 17

Может смениш параметр с Registry.OpenKey(‘SOFTWAREMicrosof tWindows NTCurrentVersionWindows’, True); на Registry.OpenKey(‘SOFTWAREMicrosof tWindows NTCurrentVersionWindows’, False); ты же не создаёшь ключ в реестре а просто проверяеш.

А ты думаешь я не пробовал? Не работает, вопрос открыт
Регистрация: 30.12.2009
Сообщений: 11,442

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

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


А вообще не суйтесь в HKLM, это системный раздел, туда только полный «рут» может ходить. А под пользователем, в HKCU лучше сидеть. Если уж надо HKLM, то проверяйте наличие соотв. прав у юзера и закрывайте программу если там все неок, выдав юзеру сообщение «только админ может меня использовать!!111 адынъ».

На 7-ке вообще проблематично «полного рута» добиться, а на деле чуть ли не у всех, поголовно, UAC кричит, за попытку писать в свою папку, если ПО установлено на системный диск, или лезть в HKLM раздел.

Последний раз редактировалось Человек_Борща; 12.09.2012 в 00:56 .
Пользователь
Регистрация: 17.08.2012
Сообщений: 17

Как минимум вас UAC на юг пошлет за попытку пройти в HKLM из ограниченой учетки или не адм. пользователя.
Читайте про манифесты, чтобы сделать UAC дружелюбнее..
А вообще не суйтесь в HKLM, это системный раздел, туда только полный «рут» может ходить. А под пользователем, в HKCU лучше сидеть. Если уж надо HKLM, то проверяйте наличие соотв. прав у юзера и закрывайте программу если там все неок, выдав юзеру сообщение «только админ может меня использовать!!111 адынъ».

На 7-ке вообще проблематично «полного рута» добиться, а на деле чуть ли не у всех, поголовно, UAC кричит, за попытку писать в свою папку, если ПО установлено на системный диск, или лезть в HKLM раздел.

Вы наверно не обратили внимание на первую цитату, главного поста

Источник: www.programmersforum.ru

не удается создать параметр ошибка при записи в реестр windows 10

Помощь в написании контрольных, курсовых и дипломных работ здесь.

Не проверяется раздел реестра
Всем привет. Помогите пожалуйста, вот код: RegistryKey Zona =.

Устаревший раздел реестра
Здравствуйте.Подскажите пожалуйста если кто знает,почему после удаления устаревшего раздела.

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

Добавлено через 2 минуты

просьба подробнее описать, что необходимо сделать

Добавлено через 2 минуты

да, назвал 123, как было в видео, это же не имеет значения, хоть abc назвать. Загрузка была с флешки, восстановление, командная строка, regedit, куст не выгружал, т.к. не дало отредактировать, ошибку показал вам на фото

Читайте также:
Программы проектирования печатных плат обзор

Добавлено через 6 минут

делал, по этой инструкции https://remontka.pro/windows-defender-turn-off/ соответственно пункт, который Вы описали, был выполнен (и несколько других), и после этого идет: В завершение требуется отключить службу антивирусной программы защитника Windows. Отключение возможно следующим методом:

Зайдите в редактор реестра и перейдите к разделу
HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesWinDefe nd
Дважды кликните мышью по параметру Start в правой панели редактора реестра и задайте для него значение 4.

Именно то, что у меня не получается сделать

Необходимо скопировать раздел реестра
Кто-нибудь решал подобную задачу? Необходимо скопировать раздел реестра (например.

tick

Как скопировать раздел реестра?
какой функцией можно переместить/скопировать раздел?

невозможно удалить раздел реестра
Уважаемые спецы! На компе под управлением WinXP c правами администратора после удаления червя не.

Как переименовать раздел реестра?
Допустим раздел HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindows NTCurrentVersionProfileList, я.

Копирование раздела реестра в другой раздел
Здравствуйте. Необходимо разработать программу для копирования заданного раздела реестра в другой.

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

Не могу отредактировать раздел реестра WinDefend

Помощь в написании контрольных, курсовых и дипломных работ здесь.

Не проверяется раздел реестра
Всем привет. Помогите пожалуйста, вот код: RegistryKey Zona =.

Устаревший раздел реестра
Здравствуйте.Подскажите пожалуйста если кто знает,почему после удаления устаревшего раздела.

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

Страдаю такой же бедой, как стало известно, в новом обновлении Microsoft сделали полное отключение Windows Defender невозможным, Windows 10 Билд 2004.

Делал раза 3 чётко по пунктам 1 в 1, как описано в статье. После перезагрузки во время экрана загрузки появляется внизу строка с восстановлением Windows Defender. То есть ОС сама восстанавливает и не даёт после отключить службу Windows Defender.

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

AddDefenderONOFF v.1.2.zip (161.9 Кб, 47 просмотров)
AddDefenderONOFF v.2.0.zip (303.5 Кб, 109 просмотров)

Спасибо, програмка работает

Управление запуском служб при старте Windows

Список служб находится в ветке Реестра Windows «HKEY_LOCAL_MACHINE SYSTEM CurrentControlSet Services». Значения параметра «Start» имеют тип «REG_DWORD» и могут принимать значения:
0 — Низкоуровневые драйверы, например драйверы дисков, которые загружаются на самом раннем этапе загрузки — загрузки ядра;
1 — Драйверы, которые загружаются после инициализации ядра ОС;
2 — Службы, которые должны быть загружены диспетчером управления службами (равен параметру — «Авто»);
3 — Службы, запускаемые диспетчером управления службами только в случае получения явной инструкции на загрузку (равен параметру — «Вручную»);
4 — Службы, которые не загружаются (равен параметру — «Отключено»).

Ошибки при записи в реестр. Как их обойти

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

Причины проблемы

Причина проста и банальна — у текущей учётной записи пользователя недостаточно прав для изменения реестра, в то время, как для изменения параметров реестра необходимы наивысшие права. А прав в свою очередь может быть недостаточно либо потому, что данная учётная запись не входит в группу Администраторы, либо из-за внесения изменений в политики безопасности компьютера.

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

Существует несколько способов получения прав для внесения изменений в реестр.

Способ 1. Запустите командную строку от имени администратора:

registry access error 0021

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

registry access error 0022

Запустите редактор реестра из командной строки, запущенной от имени администратора:

registry access error 0023

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

Способ №2. Проблему решить можно с помощью Microsoft Diagnostics and Recovery Toolset (MSDaRT). Этот способ пригодится, если:

Загрузитесь с диска DaRT и выберите Редактор реестра:

dart registry 008

Проведите нужные действия и перезагрузите компьютер.

Подробнее читайте в статье:

3 комментария к “Ошибки при записи в реестр. Как их обойти”

«В редакторе реестра, который вы только что запустили с «наивысшими» правами…»: У администратора не высшие права, это надо залезать в разрешения реестра и смотреть, высшие права только у системы.

Система это такой же пользователь, с правами в скрытых местах. По большей части можно считать Администратором.

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

Реестр в Windows 10, устранить баги и ошибки

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

Читайте также:
Айко для ресторанов как пользоваться программой

Здесь мы покажем вам, как работает реестр, что вызывает ошибки реестра, и предложим несколько современных и проверенных решений о том, как исправить ошибки реестра в Windows 10, чтобы ваш компьютер снова работал нормально.

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

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

Не все приложения в Windows используют реестр. Некоторые хранят свои конфигурации в файлах XML, в то время как переносимые типы хранят данные в исполняемых файлах.

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

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

Или щелкните правой кнопкой мыши по меню «Пуск» и выберите «Выполнить». Введите regedit.exe, нажмите OK или нажмите Enter на клавиатуре, чтобы открыть редактор реестра.

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

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

Есть несколько разных способов, которыми реестр Windows получает ошибки, и это не всегда решается очистителем реестра.

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

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

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

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

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

Вот быстрый способ сделать копию реестра:

В окне редактора реестра щелкните правой кнопкой мыши Компьютер в верхнем левом углу и выберите Экспорт.

Дайте файлу резервной копии имя и сохраните его на флэш-накопителе или в облачном хранилище.

Для этого откройте панель управления и нажмите «Система и безопасность».

Нажмите вкладку «Защита системы», выберите «Создать» и нажмите ОК.

Восстановите реестр из резервной копии или точки восстановления

Для этого вернитесь в окно «Выполнить» (щелкните правой кнопкой мыши «Пуск»> «Выполнить») и введите regedit. Нажмите ОК или нажмите Enter.

В редакторе реестра выберите Файл➣ Импорт.

Для этого нажмите «Пуск» и введите «создать точку восстановления» в строке поиска.

Выберите создать точку восстановления из результатов, а затем выберите Восстановление системы.

Введите sfc / scannow и нажмите ввод.

Если вы хотите, чтобы в будущем компьютер не содержал ошибок реестра, вот что вы можете сделать:

Правильно удаляйте программы и приложения, которые вы не используете. Используйте окно «Установка и удаление программ» на панели управления.

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

Удалите ненужные записи реестра и исправьте отсутствующие файлы и расширения ActiveX, используя любимый очиститель реестра.

Как обойти “Ошибка при записи нового значения параметра”

Вам нужно отредактировать реестр, изменить какое-то значение и вам пишет “Ошибка при записи нового значения параметра”? Тогда сегодняшняя статья для вас, в ней мы рассмотрим как получить полный доступ к недоступным для редактирования разделам.

Читайте также:
Ограничения включены некоторые программы функции

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

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

Откройте редактор реестра: в строке поиска или в меню выполнить (выполнить вызывается клавишами Win+R) введите regedit и нажмите клавишу Enter.

2016022623 min

Теперь найдите тот раздел, который не дает Вам редактировать (если вам не дает менять какой-то параметр, то нужно внести изменения для раздела, который содержит этот параметр) => нажмите на него правой клавишей мыши и выберите “Разрешения”. К примеру есть раздел DefaultMediaCost и в нём не дает изменить значения параметра “Ethernet”, нажмите на “DefaultMediaCost” правой клавишей мыши и выберите “Разрешения”.

2016071812 min

В следующем окне нажмите на “Дополнительно”.

2016071813 min

Далее вам нужно изменить параметры владельца для раздела DefaultMediaCost, нажмите “Изменить”( в Windows 7 нужно выбрать вкладку “Владелец” => Другие пользователи или группы).

2016071814 min

В следующем окошке выберите “Дополнительно” (если вы в домене то сначала нужно выбрать “Размещение” и выбрать ваш домен).

2016071815 min

Нажмите на “Поиск” и среди найденных пользователей выберите свою учетную запись, после чего нужно нажать “ОК”.

2016071816 min

В следующих двух окошках нажмите “ОК”

2016071817 min2016071818 min

Выберите “Пользователи” => поставьте галочки на “Полный доступ” => нажмите “ОК”. Можно давать права не всем пользователям этого компьютера, а только одному, для этого нужно нажать “Добавить” => найти пользователя => и потом дать ему полный доступ на редактирование.

2016071819 min

Теперь пробуйте редактировать реестр в разделе, который взяли себе в собственность, и на который дали себе полные права. В принципе с запрещенными разделами для редактирования вы будете сталкиваться редко, но все же, если столкнетесь то теперь уже будете знать, что делать На сегодня всё, если есть дополнения – пишите комментарии! Удачи Вам

Источник: windorez.ru

Отказ в праве приложения на запись в реестр Windows

В Windows 7 или более поздней версии есть ли способ отказать программе в праве на запись в любом месте реестра?

Пожалуйста, укажите, к какой версии Windows относится ваш ответ.

изменён RockPaperLizard 3k
задан RockPaperLizard 3k

2 ответа 2

В Windows Vista и более поздних версиях вы можете сделать это, установив уровень целостности рассматриваемой программы на Низкий или Ненадежный.

Один из способов сделать это — использовать утилиту iacls.exe для установки уровня целостности программы. Например, предположим, что вы хотите установить для notepad.exe низкую целостность. В командной строке с повышенными привилегиями введите:

iacls notepad.exe /setintegritylevel low

Это предотвращает влияние блокнота на объекты системного уровня со средним или высоким уровнем целостности, такие как системные файлы, различные кусты реестра и т.д.

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

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

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

изменён jonsca 3k
ответ дан Lance Leonard 369

Не напрямую, но возможно создать ситуацию, где это будет работать.

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

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

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

Установить права

Откройте реестр и перейдите к ключу, где вы хотите изменить права. Щелкните правой кнопкой мыши по ключу (папка штука) и выберите «Разрешения» .

Отсюда вы можете дать права. Примечание Полный контроль = делать все, в том числе: значение запроса, установить значение, создать подраздел, перечислить подразделы, уведомить, создать ссылку, удалить, записать dac, записать владельца и управлять чтением.

Специальные разрешения позволяют вам устанавливать индивидуальные права. Для этого нажмите кнопку « Дополнительно» .

Источник: poweruser.guru

Рейтинг
( Пока оценок нет )
Загрузка ...
EFT-Soft.ru