Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Скриптовые языки администрирования Windows (http://forum.oszone.net/forumdisplay.php?f=102)
-   -   [решено] Применение твиков реестра ко всем учетным записям после установки ОС Windows 7 (http://forum.oszone.net/showthread.php?t=179154)

SANIOK_AV 25-06-2010 15:49 1441566

Применение твиков реестра ко всем учетным записям после установки ОС Windows 7
 
Доброго времени суток!
Раньше в ХР для применения твиков реестра ко всем учетным записям после установки ОС пользовался батником:
Код:

@echo off
:: Извлекаем из реестра полный путь к папке, содержащей профили пользователей
for /f "usebackq tokens=3,3* delims==        " %%i in (`reg query "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList" /v ProfilesDirectory`) do set profiles=%%i
:: Полученный путь используем в качестве новой переменной %profiles%
for /f "usebackq delims==" %%i in (`echo %profiles%`) do set profiles=%%i
:: Для всех профилей пользователей (кроме All Users и %Username%) поочередно загружаем пользовательский
 :: куст реестра, представляющий собой файл NTUSER.DAT и импортируем в него заранее подготовленный
 :: REG-файл, содержащий твики реестра.
For /F "usebackq tokens=* delims==" %%i in (`DIR /B /AD-S "%profiles%" ^| FINDSTR /V /B /I /C:"All Users" /C:"%username%"`) DO (
  reg load HKEY_USERS\Custom "%profiles%\%%i\NTUSER.DAT"
  reg import tweak.reg
  reg unload HKEY_USERS\Custom
)
exit

из статьи

Но вот в Windows 7 он у меня не захотел работать :(
Подскажите пожалуйста как в Windows 7 можно реализовать применение твиков реестра ко всем учетным записям.
Заранее благодарен!!!

SANIOK_AV 16-09-2011 15:33 1754332

Делал поиск по своим темам и наткнулся на эту...
Как оказывается, ларчик открывался просто :) :
В строке
Код:

:: Извлекаем из реестра полный путь к папке, содержащей профили пользователей
for /f "usebackq tokens=3,3* delims==        " %%i in (`reg query "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList" /v ProfilesDirectory`) do set profiles=%%i

после "delims==" нужно было всего лишь навсего символ табуляции поменять на пробел :)

Ну и (не обязательно, но во избежанеие вывода лишних ошибок на экран) в строке
Код:

For /F "usebackq tokens=* delims==" %%i in (`DIR /B /AD-S "%profiles%" ^| FINDSTR /V /B /I /C:"All Users" /C:"%username%"`) DO (
ключ /C:"All Users" поменять на /C:"Public"


Время: 19:31.

Время: 19:31.
© OSzone.net 2001-