![]() |
Применение настроек ветки реестра HKCU для всех новых пользователей
Добрый день, возьмём windows 10 и парочку правок реестра для текущего пользователя в powershell, например
Код:
#добавление значка моего компьютера на рабочий стол Как сделать так, чтобы можно было прописывать подобное 1 раз и эти правки автоматически бы применялись для любого свежесозданного пользователя на этом компьютере? |
Править реестр для дефолтного юзера.
|
А можно точнее, какие ключи, взяв в пример из первого поста?
|
Тоже самое, тока замени на HKLM\
Если пральна помню, то там такой механизм: - если есть ключи в HKLM - они применяются для всех. - если есть в HKLM и в HKCU одинаковые данные - применяется то что записано в HKCU (настройки юзера имеют приоритет при наличии) |
zegordo, Вам нужно определить местоположение каталога куста реестра для шаблонного пользователя в параметре Default раздела HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\WINDOWS NT\CurrentVersion\ProfileList. Затем найти по этому пути файл куста реестра NTUSER.DAT. Загрузить этот куст из файла в реестр, обычно в раздел HKEY_USERS, дав имя подгруженному разделу. Затем импортировать в этот раздел Ваш файл реестра, либо создать разделы/задать в нём значения искомых параметров. Затем выгрузить ранее загруженный куст из реестра. Примерно так, как это описано в: Применение твиков реестра ко всем учетным записям после установки ОС, только там — ручками, а Вам нужно будет это делать программно.
Не вздумайте что-нибудь импортировать в раздел HKEY_USERS\.DEFAULT — это отнюдь не шаблонная учётная запись (как может показаться из именования в реестре), а системная — Local System, и профиль её расположен совсем в другом месте, типично — в C:\Windows\system32\config\systemprofile. Цитата:
|
Iska, я так понимаю, загружать куст можно только неактивного пользователя?
Кроме того, не совсем понял что нужно сделать с итоговым кустом реестра после выгрузки, чтобы он применялся ко всем пользователям, создаваемым впоследствии? |
и чего вдруг? хочешь сказать что не применится настройка? надо проверить.
еще можно запихнуть этот твой батнег в автозапуск, тудаже в HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run и он будет вносить данные для каждого юзера компа. |
Цитата:
Цитата:
|
Цитата:
|
Цитата:
Цитата:
Цитата:
|
Iska,, если я правильно понял, то чтобы настройки применялись ко всем в будущем созданным пользователям, нужно брать путь строго из этого ключа?(т.е. прописать в скрипте захват пути именно из него)
Скрытый текст
![]() В целом получается так: скрипт берёт путь, загружает из него куст реестра, правит этот куст и загружает обратно, верно? Если всё верно, то второй вопрос. Пользователь создаётся с настройками, которые не всегда можно править через реестр. например панель быстрого доступа Скрытый текст
![]() а так же, ярлыки рабочего стола и панели задач(возле пуска) Возможно ли это сделать через загрузку куста реестра, или эти настройки уже не хранятся в реестре? |
Цитата:
Цитата:
Цитата:
Цитата:
|
Получился такой код:
Код:
#взятие в переменную пути файла куста реестра для дефолтного юзера Get/New/Set-Item[Property] и если использовать их на этот загруженный куст, будут следующие ошибки: New-ItemProperty
![]() Set-ItemProperty
![]() New-Item во всех случаях выполняется без ошибок
![]() Где может быть ошибка? |
Тут целый вагон ошибок и неверных предположений.
В общем и целом: используйте reg.exe. |
Цитата:
|
Доступ к HKEY_USERS через провайдера Registry:
Код:
Get-ChildItem Registry::HKEY_USERS\.Default |
|
mwz, лучше бы заметили, а ещё лучше - знали бы, что советуете:
Цитата:
|
Busla, упустил... В семёрке, насколько помню, она как раз и была умолчальной.
|
mwz, насколько я помню, принцип не менялся с первых NT. И в последних ОС, надо полагать, то же самое.
|
Можно взглянуть в сторону Group Policy Management Console, если не принципиально осуществлять задуманное именно посредством PS.
Цитата:
|
Цитата:
однако проблему решил итоговый код: Код:
#загрузка в переменную пути default куста реестра |
Время: 22:47. |
Время: 22:47.
© OSzone.net 2001-