Войти

Показать полную графическую версию : Прошу помощи с реестром !


white_drakon
13-02-2013, 10:13
Все день добрый !
итак есть задача... есть некая программа которая была кем-то написана, но ей активно пользуются в компании.
Она при запуске лезет в реестр и проверяет ветку "hklm\hardware\description\system" на запись, если нет доступа то посылает и тут же требует регистрацию
что самое интресное... как только даешь доступ пользователю на запись этой ветки ... она тут же запускается и все отлично....

но ... эта ветка при перезапуске перезаписывается и теряются права на ветку ... давать юзерам права администратора не выход и это не правильно ... (хотя человек до меня так и поступил)
выгружать ветку и потом после загрузки ее заново грузить через батник не помогает :( права не восстанавливаются....

У кого может быть решение или куда копать ?

Заранее спасибо !

van1985
13-02-2013, 13:00
Раздать права групповыми политиками ?
Конф компьютера - Политики - Конф Windows - Параметры безопасности - Реестр

Anton04
13-02-2013, 13:44
white_drakon,

Самый верный способ это действительно, как говорил van1985, GPO. Но если ли у Вас домен вы не сказали, поэтому пример cmd:


%SYSTEMROOT%\subinacl.exe /subkeyreg "HKEY_LOCAL_MACHINE\hardware\description\system" /grant="пользователи"=f /noverbose /display


Кодировка DOS.

Но запускать Вам сиё чудо нужно из под админа или SYSTEM. Как это реализовать? Есть несколько Вариантов, при веду два самых простых.

1. Создание cmd файла и конвертирование его в exe где прописывается логин и пароль.
2. Создания задания в планировщике Windows и запуск задания от имени админа системы/домена. Само собой с настройкой запускать каждый раз при загрузки системы.

sov44
20-02-2013, 21:36
Необходимо получить значение прокси.
В Windows XP если после delims= стоит tab, значение прокси выводится, однако в Windows 7 код не работает. В чем ошибка? Нужен универсальный код для Windows XP и Windows 7
@echo off
For /F "skip=2 Tokens=3 delims= " %%A In ('Reg Query "HKCU\Software\Microsoft\Windows\CurrentVersion\Internet Settings" /V ProxyServer 2^>nul') Do Echo Proxy=%%A
pause

Petya V4sechkin
20-02-2013, 22:08
sov44, а чего вдруг в этой теме? Название "Прошу помощи с реестром !" понравилось? :)
Delims там не нужен:
@echo off
for /f "tokens=2*" %%i in ('reg.exe query "HKCU\Software\Microsoft\Windows\CurrentVersion\Internet Settings" /v ProxyServer 2^>nul ^|find.exe /i "ProxyServer"') do echo Proxy=%%j
pause

sov44
20-02-2013, 22:25
Petya V4sechkin, благодарю, код работает. Как-то сразу не подумал про find :)




© OSzone.net 2001-2012