Пожалуй, я выскажу несколько общих замечаний.
Очевидно, для решения этой и подобных задач требуется настроить групповые политики. Настройку можно производить при помощи
- редактора групповых политик
- *.adm файлов
- системного реестра
Любым из трех способов можно достичь желаемого результата, поскольку их суть одинакова - настройка групповых политик. В этом легко убедиться, открыв справочник по групповым политикам
Group Policy Reference (!parameter означает parameter=dword:00000001 (запрещено) или dword:00000000 (разрешено)).
Выполняя настройки на компьютере, не подключенном к домену, нужно отчетливо понимать, что групповые политики применяются ко всем пользователям системы, включая администраторов. Можно обойти это неудобство, и этот вопрос неоднократно задавался на форуме, а
ответ у меня уже в избранном.
Настраивая политики в реестре, необходимо помнить, что внося изменения в раздел HKCU, в котором расположены многие политики, вы применяете изменения только к учетной записи, из под которой производятся изменения. Соответственно, для применения изменений ко всем пользователям нужно действовать несколько иначе. Во-первых, необходимо внести изменения в профиль Default User, чтобы все пользователи, создаваемые впоследствии получали уже настроенный профиль. Во-вторых, нужно внести изменения в профиль существующих учетных записей. Этого можно осуществив, загрузив раздел реестра желаемого пользователя в редактор реестра и внеся изменения в этот раздел. Инструкция с картинками есть в статье
Customizing the Default User Profile (учетные записи других пользователей настраиваются аналогично). Наиболее эффективным подходом будет подготовка REG-файла с необходимыми параметрами реестра и его импорт в пользовательский раздел реестра всех учетных записей при помощи пакетного файла. Ниже приводится пример такого файла
Код:

call :ReadReg ProfilesDirectory
for /f "usebackq delims==" %%i in (`echo %TMP1%`) do set TMP2=%%i
call :ReadReg AllUsersProfile
set ALL=%TMP1%
for /f "usebackq tokens=1,1* delims==" %%i in (`dir /b "%TMP2%"`) do (
if /i "%%i" neq "%ALL%" (
reg load HKU\custom "%TMP2%\%%i\NTUSER.DAT"
regedit /s tweak.reg
reg unload HKU\custom
)
)
set ALL=
set TMP1=
set TMP2=
pause
goto :eof
:ReadReg
for /f "usebackq tokens=3,3* delims== " %%i in (`reg query "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList" /v %1 ^| find "%1"`) do set TMP1=%%i
goto :eof
Во-первых, файл подразумевает, что параметры реестра собраны в файле tweak.reg. Во-вторых, загрузка пользовательского раздела реестра учетных записей производится в раздел HKU\custom. Это означает, что в файле tweak.reg все HCKU должны быть заменены на HKU\custom. Запуск пакетного файла внесет изменения во все учетные, кроме той, из под которой производится его запуск (очевидно, NTUSER.DAT текущей записи используется и не может быть загружен).
Внесение изменений в раздел HKEY_USERS\.DEFAULT\ не совсем верно, посколько он скорее относится к настройкам, регулирующим процессы до входа пользователя в систему (например, раскладка клавиатуры по умолчанию).
Ссылки по теме: