Показать полную графическую версию : [addon] my custom
ProkVS
Если импортировать на T13, то должно работать из HKCU.
Когда происходит первый вход в систему настройки беруться из HKU,.DEFAULT, но в эту ветвь ключи, насколько я понимаю, импортируются из HKCU еще в процессе установки.
Сгенерированный inf имеет такой код:
[Version]
Signature= "$Windows NT$"
[PEBuilder]
Name=""
Enable=1
[SetupReg.AddReg]
0x4, "ControlSet001\Services\wscsvc","Start", 0x00000004
0x4, "ControlSet001\Services\SharedAccess","Start", 0x00000004
[Default.AddReg]
0x1, "Keyboard Layout\Preload","1","00000409"
0x1, "Keyboard Layout\Preload","2","00000419"
0x1, "Keyboard Layout\Toggle","Hotkey","2"
0x1, "Keyboard Layout\Toggle","Language Hotkey","2"
0x1, "Keyboard Layout\Toggle","Layout Hotkey","1"
0x1, "Keyboard Layout\Preload","1","00000409"
..................
..........
.....
..
Смущают цифири в начале типа 0x4, да и вооще Signature= "$Windows NT$", а не signature = $CHICAGO$
Всё ок?
(Модеры да простят меня, видимо вопрос мой в самом конце 2-й стр. и его не увидили)
Boa Soft
27-03-2006, 11:56
Смущают цифири в начале типа 0x4, да и вооще Signature= "$Windows NT$", а не signature = $CHICAGO$
Возми другой конвертор, этот у тебя адаптированный для BartPe. Поэтому и неправильно.
Возми другой конвертор
не посоветуешь?
Grenky
mainreg5 (370Kb) Залил сюда:
Необходима регистрация библиотеки comdlg32.ocx (есть в архиве)
http://webfile.ru/880184
vek Класс, спасибо. На первый взляд никаких проблем.
Не совсем коректно работает твик - "Установка и удаление программ" в меню 'Мой компьютер", в меню написанно - "appwiz"
Надо заменить две строки в файле CUSTOM.INF на вот эту:
;"Установка и удаление программ" в меню 'Мой компьютер'
HKLM,"SOFTWARE\Classes\CLSID\{20D04FE0-3AEA-1069-A2D8-08002B30309D}\shell\Установка и удаление программ\command",,0x00000000,"control appwiz.cpl"
Boa Soft
; удалить переменные окружения (будет использоваться %windir%\temp для всех пользователей)
HKU,".DEFAULT\Environment","TEMP",
HKU,".DEFAULT\Environment","TMP", Стал на те же грабли :) На самом деле там параметр REG_EXPAND_SZ, поэтому строчка (привожу пример для HKCU) должна выглядеть так:
HKCU,"Environment","TEMP",131072,"%SYSTEMROOT%\Temp"
HKCU,"Environment","TMP",131072,"%SYSTEMROOT%\Temp"
Да и вообще у тебя отсутствует "%SYSTEMROOT%\Temp"...
P. S. Попробуй поработать с программами, которые используют Temp (например WinRAR) при DWORD вместо EXPAND_SZ - увидишь о каких приколах я говорил. Ну а в .reg данная строчка вообще должна выглядеть так:
[HKEY_CURRENT_USER\Environment]
"TEMP"=hex(2):25,00,53,00,59,00,53,00,54,00,45,00,4d,00,52,00,4f,00,4f,00,54,00,25,00,5c,00,54,00,65,00,6d ,00,70,00,00,00
"TMP"=hex(2):25,00,53,00,59,00,53,00,54,00,45,00,4d,00,52,00,4f,00,4f,00,54,00,25,00,5c,00,54,00,65,00,6d ,00,70,00,00,00
Boa Soft
03-04-2006, 01:46
Стал на те же грабли На самом деле там параметр REG_EXPAND_SZ, поэтому строчка (привожу пример для HKCU) должна выглядеть так:
А при чем тут тип. Там же секция удаления. Удаляем узерскую - работает системная %TEMP%.
Темп есть для всех общий. Из HKLM. Естественно, при работе с секретами этого делать НЕ НАДО. Но, для home системы - самое простое решение всех вопросов с старыми прогами, не понимающими пробелы в пути к %temp%.
[HKEY_CURRENT_USER\Environment]
"TEMP"=hex
Так делал ранее. Теперь - как выше. Теже гениталии, только с другого ракурса. Работает так же, как и с удалением узерской переменной.
PS Если не знаеш - переменные есть узерские, свои для каждого юзера и общесистемные для всех. Если есть две одинаековых - то для юзера работает его переменная. Если ее удалить - работает общесистемная. Мы этим твиком убираем юзверскую.
PS2 Набери set в консоли после твика и все поймеш, почему рар и прочее работает.
Точно, не глянул что там секция удаления, а по умолчанию при RegAdd создаётся Dword. Насчёт использования системной переменной идея интересная, обязательно попробую, а то до этого прописывал как ты раньше ;)
Boa Soft
04-04-2006, 11:30
а то до этого прописывал как ты раньше
Норрмально работает и так и так. Смысл один - короткий, без пробелов, путь к темпам.
Не совсем коректно работает твик - "Установка и удаление программ" в меню 'Мой компьютер", в меню написанно - "appwiz"
Надо заменить две строки в файле CUSTOM.INF на вот эту:
;"Установка и удаление программ" в меню 'Мой компьютер'
HKLM,"SOFTWARE\Classes\CLSID\{20D04FE0-3AEA-1069-A2D8-08002B30309D}\shell\Установка и удаление программ\command",,0x00000000,"control appwiz.cpl"
Соответственно "Диспетчер устройств" должен выглядеть так:
;"Диспетчер устройств" в меню 'Мой компьютер'
HKLM,"SOFTWARE\Classes\CLSID\{20D04FE0-3AEA-1069-A2D8-08002B30309D}\shell\Диспетчер устройств\command",,0x00020000,"%windir%\system32\mmc.exe /s %windir%\system32\devmgmt.msc"Вот только не уверен что 0x00020000 - это REG_EXPAND_SZ, именно он должен стоять значением по умолчанию, иначе не сработает. Когда проверю - отпишусь.
Нет не надо пробовать, как раз диспетчер устройств с твиками по умолчанию из custom.ini нормально пишется.
А насчет "установки удаления программ" я методом тыка дошел... Чтобы не проверять на новой винде, просто создай эти ключи вручную, у меня все работает..
Сделал оба твика своим способом - он немного проще, а если оба работают то пусть каждому будет на выбор.
Некоторые твики срабатывают только после первого входа пользователя в систему. Вот мой вариант структуры файла с твиками:
[RegTweak]
OptionDesc = "Настройки реестра"
Tip = "Настройки реестра для Windows XP SP2"
Modes = 0,1,2,3
AddReg = Tweak.AddReg
[DefaultInstall]
;Благодаря тому, что основная секция называется DefaultInstall, можно при необходимости быстро применить твики к уже работающей системе
AddReg = HKLM.AddReg, HKCU.AddReg
DelReg = HKLM.DelReg
[User]
AddReg = User.AddReg
DelReg = User.DelReg
[Tweak.AddReg]
;Запуск основной cекции с твиками при выполнении RunOnce на T13
; %17% = %SystemRoot%\inf
;Последний параметр в командной строке ("1") отвечает за тихое выполнение INF-файла, никаких диалоговых окон, даже в случае ошибки.
HKLM,%RunOnce%,"regtweak",,"rundll32.exe advpack.dll,LaunchINFSection %17%\regtweak.inf,DefaultInstall,1"
;Запуск секции с твиками из автозагрузки при первом входе юзера
;RunOnce здесь не подходит по любому, твики работают только после загрузки рабочего стола
HKCU,%Run%,"regtweak",,"rundll32.exe advpack.dll,LaunchINFSection %17%\regtweak.inf,User,1"
[User.AddReg]
;Отображение системных файлов, твик состоит из двух параметров - 1) SuperHidden, отвечает за собственно показ файлов в проводнике, и 2) ShowSuperHidden - отвечает за отсутствие галочки "скрывать защищенные системные файлы" в настройках "Свойства папки - Вид", второй параметр работает только после первого входа пользователя в систему
HKCU,Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced,ShowSuperHidden,0x10001,0x1
;Отображение мелких или крупных иконок на панели инструментов эксплорера. По умолчанию они и так большие, твик приведен для примера
HKCU,Software\Microsoft\Windows\CurrentVersion\Explorer\SmallIcons,SmallIcons,,no
[User.DelReg]
;Чистим автозагрузку после применения твиков для юзера
HKCU,%Run%,"regtweak"
[HKLM.AddReg]
;Здесь были твики
[HKLM.DelReg]
;Здесь были твики
[HKCU.AddReg]
;Здесь были твики
[Strings]
RunOnce="SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnce"
Run="SOFTWARE\Microsoft\Windows\CurrentVersion\Run"
HKLM,%RunOnce%,......
HKCU,%Run%......
не срабатывают... надо писать полносью, и соответственно не срабатывает
[User.DelReg]
;Чистим автозагрузку после применения твиков для юзера
HKCU,%Run%,"regtweak"
ЗЫ.Странно... но у меня [User] сработал только после второй перезагрузки Винды (строчки прописаны полностью)...
а автозагрузка так и не очистилась...))
Ну да, конечно, забыл скопировать из конца файла строчки
[Strings]
RunOnce="SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnce"
Run="SOFTWARE\Microsoft\Windows\CurrentVersion\Run"
По поводу второго замечания - надо будет дополнительно проверить. У меня после первого RunOnceEx - перезагрузка, затем отрабатывает второй RunOnceEx, идет загрузка рабочего стола и, соответственно, выполняется то записано в Run, при этом все срабатывает, добавляется и удаляется то, что нужно.
EDIT: Проверил, все отлично отрабатывает и при первой загрузке.
Небольшое примечание - не знаю, имеет ли это значение, но пользователей я создаю вручную, при помощи стандартного интерфейса oobe, того самого, который также предлагает включить автообновление и активировать Windows через интернет. Соответственно, первый логон происходит от новосозданного пользователя, а не от Администратора или кого-либо ещё.
EDIT: Проверил, все отлично отрабатывает и при первой загрузке.
Небольшое примечание - не знаю, имеет ли это значение, но пользователей я создаю вручную, при помощи стандартного интерфейса oobe, того самого, который также предлагает включить автообновление и активировать Windows через интернет. Соответственно, первый логон происходит от новосозданного пользователя, а не от Администратора или кого-либо ещё.
Если заменить начало строки
HKCU,%Run%,"....
на HKLM,%Run%,".... то срабатывает и под Администратором, при полностью автоматической установке..))
Смысл в том, что эти два твика, а также, возможно, ещё какие-нибудь, не вошедшие в мой персональный список, необходимо применять в первом входе в систему каждого пользователя, поэтому и HKCU, а не HKLM.
Добавил в custom.inf схему курсоров - на дефолтном профиле все срабатывает,
а у юзеров берется дефолтный от Microsoft. В чем загвоздка может кто знает?
© OSzone.net 2001-2012
vBulletin v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.
Available in ZeroNet 1osznRoVratMCN3bFoFpR2pSV5c9z6sTC