![]() |
(solved) RunOnceEx и WHS
Добрай всем день. Возможно то, о чем я спрошу, уже обсуждалось на форуме, однако я этого, к сожалению, не нашел.
Делаю unattended установку WindowsXP с использованием RunOnceEx. Но CMD формат меня не устраивает в силу того, что мне надо взять значение из HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders\Common Programs и подставить его в HKCU\Environment\COMMONPROGRAMSLNK. Все мои эксперементы с REG COPY закончились ничем в силу того, что я не понял как скопировать ExpandedStringValue из одного ключа реестра в другой. соотвественно в исходнике этот ExpandedStringValue называется Common Programs, а в приемнике COMMONPROGRAMSLNK. Попробовал JS и VBS, но они в момент установки винды не срабатывали. Кто что может подсказать на этот предмет? PS: в RunOnceEx.CMD указать при запуске выполнить VBS скрипт - не прокатит, потому как переопределяются макропеременные, а видны они станут только при следующем логоне. PPS: как в VBS реализовано вот такое сочетание символов: \" Тупая подстановка ничего не дает кроме ошибок. Решение |
UnDetect
Это видимо вы мне задавали вопрос по эл. почте, забыв упомянуть, что тема уже создана... Непонятен следующий моемнт. Цитата:
Если же нужно узнать какое значение находится в определенном ключе реестра, то можно использовать команду FOR в сочетании с REG QUERY. Вот, например, фрагмент из HotFixes Installer VseDoFeni, в котором он определяет установлена ли XP и установлен ли на нее SP2 Код:
FOR /F "usebackq tokens=* delims==" %%i IN (`REG QUERY "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion" /v CurrentVersion`) do set CV=%%i |
UnDetect
Цитата:
при следующем логоне - это при втором логоне? или при первом? |
Petya V4sechkin:
Цитата:
|
Vadikan:
Цитата:
По поводу REG QUERY - ну руки у меня кривые, не могу я подобрать подходящих ключиков. Либо "ERROR: More data is available.", либо "End of search: 0 match(es) found." |
UnDetect
Цитата:
скажем, если в Cmdlines.txt вставить строчку "wscript.exe Myscript.vbs", неужели оно не сработает? Что-то не верится. Далее, может, вместо "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders\Common Programs" использовать "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders\Common Programs"? Если так уж хочется через батник, то пожалуйста: Код:
@Echo Off Кодовые страницы приходится менять (иначе крякозябры будут в русской винде). А если через VBS, то так: Код:
Dim Sh |
проверяю вариан "wscript.exe Myscript.vbs"
Сервер сценариев Windows: Цитата:
"HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders\Common Programs" не спасает |
Надо же..
Кстати, прошу прощения, там же REG_EXPAND_SZ Ну вот тебе 6 вариантов, хоть один должен работать :) Если на T-12 не пашут, придется после первого логона запускать. Дело в том, что на T-12 Explorer еще не запущен, поэтому многих записей в реестре попросту не существует. 1) батник: Код:
@Echo Off Код:
@Echo Off Код:
@Echo Off Код:
@Echo Off Код:
Dim Sh Код:
Dim Sh, Env |
Батник не пробовал, а вот по VBS имеем следующее:
Цитата:
|
UnDetect
Вообще-то варианты номер 3 и 4 должны работать по-любому, даже на T-12. Если ты так любишь VBS, то вот еще парочка: Код:
Dim Sh Код:
Dim Sh, Env Для английской винды заменить "Главное меню\Программы" на "Start Menu\Programs". |
Цитата:
|
UnDetect
Объясню повторно, для особо непонятливых. Цитирую себя: Цитата:
|
UnDetect
Воспользуйся вариантом номер 6, только запускай его не на T-12, а после первого логона. |
Цитата:
Пример скрипта тем, кому оно надо: Цитата:
|
Время: 06:00. |
Время: 06:00.
© OSzone.net 2001-