Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Автоматическая установка Windows » Автоматическая установка Windows 2000/XP/2003 » Твики реестра через [GuiRunOnce] -> RunOnceEx

Ответить
Настройки темы
Твики реестра через [GuiRunOnce] -> RunOnceEx

Новый участник


Сообщения: 35
Благодарности: 4

Профиль | Отправить PM | Цитировать


Задача: затвикать реестр reg-файлами после установки XP SP2, которые находятся на дискете вместе c winnt.sif.
Но ничего не выходит, хотя cmdcons.cmd и bootcfg отрабатывают успешно. В чем может быть загвоздка?

winnt.sif
Код: Выделить весь код
[GuiRunOnce]
"A:\RunOnceEx.cmd"
RunOnceEx.cmd
Код: Выделить весь код
@ECHO OFF

SET KEY=HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnceEx
SET i=100

REG ADD %KEY% /V TITLE /D "Installing Applications" /f

REG ADD %KEY%\%i% /VE /D "Установка Recovery Console" /f
REG ADD %KEY%\%i% /V 1 /D "A:\cmdcons.cmd" /f
SET /A i+=1

REG ADD %KEY%\%i% /VE /D "Отображать список ОС, сек" /f
REG ADD %KEY%\%i% /V 1 /D "bootcfg.exe /timeout 5" /f
SET /A i+=1

REG ADD %KEY%\%i% /VE /D "Импорт настроек реестра" /f
REG ADD %KEY%\%i% /V 1 /D "A:\hklm_xpprof_sp2.cmd" /f
REG ADD %KEY%\%i% /V 1 /D "A:\hkcu_xpprof_sp2.cmd" /f
REG ADD %KEY%\%i% /V 1 /D "A:\hku_xpprof_sp2.cmd" /f
SET /A i+=1
hkcu_xpprof_sp2.cmd
Код: Выделить весь код
@echo off
title Импорт настроек HKCU

if exist hkcu_xpprof_sp2.reg regedit /s hkcu_xpprof_sp2.reg
hklm_xpprof_sp2.cmd
Код: Выделить весь код
@echo off
title Импорт настроек HKLM

if exist hklm_xpprof_sp2.reg regedit /s hklm_xpprof_sp2.reg
hku_xpprof_sp2.cmd
Код: Выделить весь код
@echo off
title Импорт настроек Default User

if not exist hku_xpprof_sp2.reg goto :EOF
reg load HKU\DefUser "%ALLUSERSPROFILE%\..\Default User\NTUSER.DAT"
if %errorlevel% EQU 0 (
   regedit /s hku_xpprof_sp2.reg
   reg unload HKU\DefUser
   if %errorlevel% NEQ 0 (
      echo Ошибка при выгрузке файла куста реестра!
      pause >nul
      goto :EOF
   )
) else (
   echo Ошибка при загрузке файла куста реестра!
   pause >nul
)

Отправлено: 09:26, 02-05-2007

 

Аватара для qeraser

Старожил


Сообщения: 387
Благодарности: 40

Профиль | Отправить PM | Цитировать


SPV82
Код: Выделить весь код
REG ADD %KEY%\%i% /V 1 /D "A:\hklm_xpprof_sp2.cmd" /f
REG ADD %KEY%\%i% /V 1 /D "A:\hkcu_xpprof_sp2.cmd" /f
REG ADD %KEY%\%i% /V 1 /D "A:\hku_xpprof_sp2.cmd" /f
Должно быть вот так
Код: Выделить весь код
REG ADD %KEY%\%i% /V 1 /D "A:\hklm_xpprof_sp2.cmd" /f
REG ADD %KEY%\%i% /V 2 /D "A:\hkcu_xpprof_sp2.cmd" /f
REG ADD %KEY%\%i% /V 3 /D "A:\hku_xpprof_sp2.cmd" /f

Отправлено: 10:20, 02-05-2007 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Новый участник


Сообщения: 35
Благодарности: 4

Профиль | Отправить PM | Цитировать


qeraser
Исправил неточность, но все равно импорта не происходит ни в одну из ветвей. Батники, вызываемые до и после в RunOnceEx отрабатывают успешно, а которые с реестром - нет

Прописал абслютные пути в *.cmd - заработало. Странно.
if exist A:\hkcu_xpprof_sp2.reg regedit /s A:\hkcu_xpprof_sp2.reg

Последний раз редактировалось SPV82, 02-05-2007 в 15:05.


Отправлено: 13:51, 02-05-2007 | #3


(*.*)


Administrator


Сообщения: 34692
Благодарности: 6091

Профиль | Сайт | Отправить PM | Цитировать


SPV82
Зачем так сложно? Не проще ли с дискеты установить на Т-12 из cmdlines.txt? И вообще, почему вы из GuiRunOnce вызываете RunOnceEx? Это же дублирующие друг друга функции. Просто пропишите свои батники в GuiRunOnce. И в твиках все пути к разделам реестра должны быть другие - там же HKU\Defuser...

-------
Канал Windows 10, etc | Чат @winsiders


Отправлено: 18:20, 02-05-2007 | #4


Новый участник


Сообщения: 35
Благодарности: 4

Профиль | Отправить PM | Цитировать


Vadikan
Цитата:
Не проще ли с дискеты установить на Т-12 из cmdlines.txt?
cmdlines.txt использовать не могу, т.к. системы устанавливаются с легальных ОЕМ-дистрибутивов в разных точках и времени на пересобирание образа c внедрением $OEM$ и т.д. тратить жалко, в этом случае проще заранее иметь дискету с winnt.sif и кучкой reg-файлов для HKLM, HKCU и Default User.
Цитата:
почему вы из GuiRunOnce вызываете RunOnceEx?
Чтобы выполнилось не после 1го входа в систему, а после 2го.
Цитата:
И в твиках все пути к разделам реестра должны быть другие - там же HKU\Defuser...
Разумеется, так оно и есть.
Проблема разрешилась - нужно было указать в батниках абсолютные пути до reg-файлов. Правда я так пока и не понял зачем полные пути, ведь батники запускаются из того же каталога, где лежат reg-файлы.

Последний раз редактировалось SPV82, 03-05-2007 в 09:22.


Отправлено: 08:34, 03-05-2007 | #5



Moderator


Сообщения: 50390
Благодарности: 14387

Профиль | Отправить PM | Цитировать


SPV82
Цитата:
cmdlines.txt использовать не могу, т.к. системы устанавливаются с легальных ОЕМ-дистрибутивов в разных точках и времени на пересобирание образа c внедрением $OEM$ и т.д. тратить жалко, в этом случае проще заранее иметь дискету с winnt.sif и кучкой reg-файлов для HKLM, HKCU и Default User.
Есть еще одна возможность выполнять cmd-файлы до первого логона (на T-9), параметр UserExecute:
Код: Выделить весь код
[SetupParams]
UserExecute="A:\hkcu_xpprof_sp2.cmd"
Цитата:
Правда я так пока и не понял зачем полные пути, ведь батники запускаются из того же каталога, где лежат reg-файлы.
Но текущая папка вовсе не обязательно та же, откуда они запускаются.
Это можно поправить, вставив в начало cmd-файлов строчку:
Код: Выделить весь код
CD /D "%~dp0"
(только надо иметь в виду, что с сетевыми путями команда CD не работает).

-------
«Компьютеру стало совсем худо, и он решил прекратить свои страдания».

Msgina.dll, диалог 2210


Последний раз редактировалось Petya V4sechkin, 03-05-2007 в 15:48.

Это сообщение посчитали полезным следующие участники:

Отправлено: 12:09, 03-05-2007 | #6


Новый участник


Сообщения: 35
Благодарности: 4

Профиль | Отправить PM | Цитировать


Цитата:
Есть еще одна возможность выполнять cmd-файлы до первого логона (на T-9), параметр UserExecute:
Попробовал через параметр UserExecute. Проблема - выполняется только cmdcons.cmd из T-9.cmd. Остальное не выполняется. В чем грабли? Не могу понять где я ступил, два раза пробовал, пол вечера убил...
winnt.sif
Код: Выделить весь код
[SetupParams]
UserExecute = "A:\T-9.cmd"
T-9.cmd
Код: Выделить весь код
@echo off

A:\cmdcons.cmd
bootcfg /timeout 5
regedit /s A:\hkcu_xpprof_sp2.reg
A:\RunOnceEx.cmd
RunOnceEx.cmd
Код: Выделить весь код
@ECHO OFF

SET KEY=HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnceEx
SET i=100

REG ADD %KEY% /V TITLE /D "Configuring system" /f

REG ADD %KEY%\%i% /VE /D "Импорт настроек реестра" /f
REG ADD %KEY%\%i% /V 1 /D "A:\hklm_xpprof_sp2.cmd" /f
SET /A i+=1

Отправлено: 20:58, 03-05-2007 | #7



Moderator


Сообщения: 50390
Благодарности: 14387

Профиль | Отправить PM | Цитировать


SPV82
Вы забыли привести содержимое cmdcons.cmd ;)
Если в конце Exit - удалите. Также попробуйте вызов с помощью Call:

T-9.cmd
Код: Выделить весь код
@echo off

call A:\cmdcons.cmd
bootcfg /timeout 5
regedit /s A:\hkcu_xpprof_sp2.reg
call A:\RunOnceEx.cmd

exit

-------
«Компьютеру стало совсем худо, и он решил прекратить свои страдания».

Msgina.dll, диалог 2210


Отправлено: 21:28, 03-05-2007 | #8


(*.*)


Administrator


Сообщения: 34692
Благодарности: 6091

Профиль | Сайт | Отправить PM | Цитировать


Почему бы все команды не собрать в один файл?

-------
Канал Windows 10, etc | Чат @winsiders


Отправлено: 23:50, 03-05-2007 | #9

SPV SPV вне форума

Новый участник


Сообщения: 8
Благодарности: 0

Профиль | Отправить PM | Цитировать


Цитата:
Вы забыли привести содержимое cmdcons.cmd
Код: Выделить весь код
@echo off
title Установка консоли восстановления Windows

for %%i in (c,d,e,f,g,q,w,r,t,y,u,i,o,p,s,h,j,k,l,z,x,v,n,m) do (
if exist %%i:\win51*.SP? %%i:\I386\winnt32.exe /cmdcons /unattend
)
Цитата:
Также попробуйте вызов с помощью Call
Попробовал, уже лучше - bootcfg и RunOnceEx отработали, но HKCU не отрабатывает даже вот так:
T-9.cmd
Код: Выделить весь код
@echo off

call A:\cmdcons.cmd
bootcfg /timeout 5
call A:\hkcu_xpprof_sp2.cmd
call A:\RunOnceEx.cmd

exit
hkcu_xpprof_sp2.cmd
Код: Выделить весь код
@echo off
title Импорт настроек HKCU

cd /D "%~dp0"
if exist hkcu_xpprof_sp2.reg regedit /s hkcu_xpprof_sp2.reg
Вот что происходит визуально как при "regedit /s A:\hkcu_xpprof_sp2.reg", так и при "call A:\hkcu_xpprof_sp2.cmd" в T-9.cmd



Расшифровать с графики не знаю как и не понимаю причем тут boot.ini. Неужели на T-9 экспорт в HKCU невозможен? Или опять я туплю...

Отправлено: 15:23, 04-05-2007 | #10



Компьютерный форум OSzone.net » Автоматическая установка Windows » Автоматическая установка Windows 2000/XP/2003 » Твики реестра через [GuiRunOnce] -> RunOnceEx

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Твики реестра .: [все вопросы] :. Vadikan Автоматическая установка Windows 2000/XP/2003 1809 24-02-2019 10:35
Icons and Твики реестра cs177s800 Автоматическая установка Windows 2000/XP/2003 3 28-03-2011 06:40
Твики реестра .: [архив] :. Vadikan Автоматическая установка Windows 2000/XP/2003 1781 24-05-2009 12:40
[решено] Чем отличаются GuiRunOnce и RunOnceEx? Wu-Tang Автоматическая установка Windows 2000/XP/2003 2 17-06-2008 23:17
[решено] Импорт твиков реестра: RunOnceEx vs. GuiRunOnce 7human7 Автоматическая установка Windows 2000/XP/2003 3 31-05-2008 21:35




 
Переход