biork
Цитата:
мне чаще встречаются варианты где есть запись только в разделе HKU или их количество там явно преобладает
|
все ветки HKU (кроме .DEFAULT) представляют HKCU конкретных учетных записей... точнее наоборот - HKCU есть лишь ссылка на ветку в HKU, не думаю чтобы эти расхождения касались установки ПО.
по поводу обработки различных
Identities, вариантов можно придумать много:
-
REG-файл. Придется по всему файлу проводить замену вхождений Identity на текущее, одним батником тут пожалуй не обойтись... потребуется подключать дополнительные CMD-утилиты или AutoIT-скрипты.
-
INF-файл. Тут проще - достаточно заменить/добавить одну строчку в секции [Strings], хотя на то чтобы сваять свой INF из REG-файла придется потратить некоторое время.
- если параметров немного можно ограничиться несколькими строчками "REG ADD" в
CMD-файле, подставив Identity через переменную окружения.
пример реализации второго варианта для обработки Identity по умолчанию, имена INF и CMD-файлов должны быть одинаковыми и находиться в одном каталоге, дополнительное копирование файла во временную папку позволяет запускать твик непосредственно с CD-диска.
INF-файл:
Код:

[Version]
Signature="$Windows NT$"
[DefaultInstall]
AddReg = OE.AddReg
[OE.AddReg]
HKCU,"%ID_OE50%\Mail","Welcome Message",0x00010001,1
[Strings]
CMD-файл:
Код:

@echo off
SET OE50=Software\Microsoft\Outlook Express\5.0
FOR /F "skip=4 tokens=2 delims={}" %%i IN ('REG QUERY HKCU\Identities /v "Default User ID"') DO (
COPY /V /Y %~dpns0.inf %TEMP%\%~ns0.inf
ECHO ID_OE50="Identities\{%%i}\%OE50%">>%TEMP%\%~ns0.inf
)
rundll32 setupapi,InstallHinfSection DefaultInstall 128 %TEMP%\%~ns0.inf