Подмена NTUSR.DAT в Default User во время установки

Аватара пользователя
Danila-GFX

Подмена NTUSR.DAT в Default User во время установки

Сообщение Danila-GFX »

Я решил попробовать так:



настроил полностью винду, вытащил из своего профиля NTUSER.DAT, подредактировал немного, заменил им родной в Default User. Попробовал зайти новым юзером - все прекрасно, все работает как задумано.



Сделал SFX архив с этим NTUSER.DAT, указал распаковывать без вопросов и перезаписывать файлы, путь для распаковки - %systemdrive%\Documents and Settings\Default User.



И указал запустить его в cmdlines.txt.



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



Во время установки архив срабатывает (100%), но после установки Default User почему-то оказывается со своим стандартным NTUSER.DAT.



Почему так происходит?
Аватара пользователя
Vadikan

Re: Подмена NTUSR.DAT в Default User во время установки

Сообщение Vadikan »

Попробуй сделать или через GuiRunOnce или через RunOnce. Видимо, профиль полностьюсоздается позже T12, когда отрабатывает CmdLines. Если ставиш драйвера автоматом с подменой Setup.exe, то можно все воткнуть в presetup.cmd, только посмотри, их было две версии. В первой сетап переименовывать и запускать надо из Cmd, вторая же переименовывала и запускала его автоматом. Тебе нужна первая. Если разберешся, то первый пользоатель уже будет на основе твоих настроек.
Аватара пользователя
Aushkin

Re: Подмена NTUSR.DAT в Default User во время установки

Сообщение Aushkin »

А можно ли заменить всю папку Default User ещё на этапе установки, что бы что бы не только HKKU, но и ярлыки, ссылки, SendTo и пр. для всех создаваемых пользователей уже были готовы и одинаковы для всех?

Будет ли работоспособным такой вариант:

1. Создаем профиль по умолчанию согласно:
http://support.microsoft.com/kb/319974/ru


2. Далее архивируем папку тем же WinRar, в SFX сценарии указываем путь для автоматической скрытой распаковки: %systemdrive%\Documents and Settings\

3. Делаем батник:



Код:

Код: Выделить всё

REM Удаление исходной папки Default User
RD /S /Q "%systemdrive%\Documents and Settings\Default User"
REM Запуск и распаковка нашего SFX с настроенным профилем
DEFUS.EXE
REM Возвращаем атрибуты папке
attrib +H +S "%systemdrive%\Documents and Settings\Default User"
EXIT

4. Ну и прописываем запуск батника со своими путями в GuiRunOnce

Жизнеспособно или есть поравки и дополнения?

Можно в батник добавить так же сразу и создание нового пользователя с последующей перезагрузкой.

Не тестировал, но мне кажется должно сработать, если ошибаюсь, поправьте.
Аватара пользователя
Boa Soft

Re: Подмена NTUSR.DAT в Default User во время установки

Сообщение Boa Soft »

Попробуй сделать или через GuiRunOnce или через RunOnce. Видимо, профиль полностьюсоздается позже T12, когда отрабатывает CmdLines. Если ставиш драйвера автоматом с подменой Setup.exe, то можно все воткнуть в presetup.cmd, только посмотри, их было две версии. В первой сетап переименовывать и запускать надо из Cmd, вторая же переименовывала и запускала его автоматом. Тебе нужна первая. Если разберешся, то первый пользоатель уже будет на основе твоих настроек.
Аватара пользователя
Vadikan

Re: Подмена NTUSR.DAT в Default User во время установки

Сообщение Vadikan »

Aushkin

GuiRunOnce не годится (равно как и RunOnceEx)- они срабатывают при первом входе в систему, а значит первый пользователь войдет с дефолтными настройками пользователя Default User, если считать произошедшее у Danila-GFX нормальным поведением по причине, озвученной Boa Soft. Ну если Т-12 не работает, есть еще Т-9 - [SetupParams] (см. ref.chm).
Аватара пользователя
Aushkin

Re: Подмена NTUSR.DAT в Default User во время установки

Сообщение Aushkin »

А если первый вход осуществляется автоматически под встроенной учеткой администратора, отрабатывает GuiRunOnce, устанавливаются все нужные приложения, а в конце отрабатывает предложенный мной вариант, который заканчивается созданием нового юзера и последующей перезагрузкой?

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



Или же, если я верно понял, можно добавить в Winnt.sif дополнительно:



Код:

Код: Выделить всё

[SetupParams]
UserExecute="%SYSTEMDRIVE%\Install\DEFUS.EXE"

И тогда на T-9 отработает SFX, как следствие все пользователи уже подхватят нужный профайл и в этом случае также не требуется дополнительного экспорта HKLU.reg, так как все параметры и так подхватятся из дефолтного профиля?
Аватара пользователя
Vadikan

Re: Подмена NTUSR.DAT в Default User во время установки

Сообщение Vadikan »

Aushkin

В теории оба варианта описаны верно (во втором случае речь, видимо, идет о HKCU.reg, а не о HKLU.reg). Осталось проверить на практике и сообщить нам о результатах Изображение
Аватара пользователя
Aushkin

Re: Подмена NTUSR.DAT в Default User во время установки

Сообщение Aushkin »

Проверил.

Вариант с [SetupParams] в Winnt.sif не прокатил. Очевидно T-9 профайл Default User уже используется. Батник стартует,

RD /S /Q "%systemdrive%\Documents and Settings\Default User"

не отрабатывает, так как некоторые файлы заняты, соответсвенно и при распаковке DEFUS.EXE возникают проблемы, так как перезаписать занятые файлы тоже невыходит и дальнейшая установка застревает. Пришлось пойти другим путем. Положил DEFUS.BAT и DEFUS.EXE в $OEM$\$$, как следствие они во время установки скопировались в %WINDIR%,

а в самом конце RUNONCEEX.CMD добавил следующее:





Код:

Код: Выделить всё

REG ADD %KEY%\%i% /VE /D "Создание пользователя User" /f
REG ADD %KEY%\%i% /V 1 /D "DEFUS.BAT" /f
SET /A i+=1
REG ADD %KEY%\%i% /VE /D "Перезагрузка" /f
REG ADD %KEY%\%i% /V 1 /D "shutdown /r /f /t 00" /f
SET /A i+=1

DEFUS.BAT содержит:







Код:

Код: Выделить всё

cmdow @ /HID
@echo off
RD /S /Q "%systemdrive%\Documents and Settings\Default User"
DEFUS.EXE
attrib +H +S "%systemdrive%\Documents and Settings\Default User"
net user User password /add
net localgroup Администраторы User /add
net accounts /maxpwage:unlimited
REG ADD "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon" /V DefaultUserName /t REG_SZ /D "User" /f
REG ADD "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon" /V DefaultPassword /t REG_SZ /D password /f
REG ADD "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon" /V AutoAdminLogon /t REG_SZ /D 1 /f
REG ADD "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon" /V AutoLogonCount /t REG_DWORD /D 1 /f
EXIT

Вот этот вариант отыграл, как по нотам. Исходный дефолтный профайл удалился, заменился моим, создался новый пользователь, который подхватил уже правильные настройки и комп пошел на перезагрузку. Следующий вход произошел автоматом под пользователем "User", пользовательские настройки всех софтинок действовали, все необходимые ярлыки были на своих местах.

Были грабли, User почему-то сначала оказался с ограниченными правами, но потом я понял, что сохранил батник не в OEM кодировке, и группа "Администраторы" превратилась непонятно во что :-) Пришлось в нормальном редакторе переписать сразу в OEM, с этим батником всё отработало правильно.
Аватара пользователя
coolD

Re: Подмена NTUSR.DAT в Default User во время установки

Сообщение coolD »

Цитата:



DEFUS.EXE где это взять?



Это заархивированная папка default user
Ответить

Вернуться в «Автоматическая установка Windows 2000/XP/2003»