opel431, я лишь пытался сделать так, как могут сделать "достаточно подготовленные пользователи" и, тем более, не призываю "городить комбайн" . в предыдущем моем посте ключевая фраза: "пытался моделировать..". просто на большее у меня не хватило фантазии (моск не настолько извратно мыслит). полагаю, что меня не верно поняли, ну да ладно...
вот и получается - хотели как лучше, а получилось как всегда. полагаете мало найдется "продвинутых" пользователей с их г-сборками, которые не будут переименовывать секции в "супер-пупер" или "мегагамес"? или на автомате отмечать "выбрать/снять все"? и т.д. и т.п.
часа 4 пытался моделировать различные ситуации использования. итого: при изменении имени секции, предустановки берутся из последнего профиля, в который входил - (переименовывать низяя); кнопка "применить" работает глобально, если что забыл или решил изменить, то... - (а вкладки-то две); может обработку вкладки "компоненты системы" привести к стандарту? отмечено - ставим, не отмечено - не ставим (ща запутаца мона). в общем и целом - все работает!
На данный момент реализовано автозанесение используемых аддонов в сборке в секцию [Hint] файла RunSetup.ini. Данные берутся из базы: файл AddonBASE.xls Вот его содержание для моих аддонов:
Имя_папки_аддона Имя_ФАЙЛА_без_расширения= Описание
1-FullFlash Flash= Плагин Adobe Flash
1-MSXML4 MSXML4= Поддержка ранних приложений
1-Rootsupd ROOTSUPD= Обновление корневых сертификатов
2gis 2gis= ДубльГИС - городская информационная система (автор $L!DER)
3-dllsfox dllsfox= Набор библиотек Visual Fox Pro
3-dllsfull dllsfull= Библиотеки, необходимые для работы программ
7_Zip 7zipArch= 7Z архиватор с поддержкой многих форматов
7z_Patch 7z_Patch= Графический патч для диалогов архиватора 7z
AIMP3 AIMP3Portable= Аудио плеер с поддержкой многих форматов (автор $L!DER)
Akelpad4 Akelpad4= Текстовый редактор с расширенными функциями
CDBurnerXP CDBurnerXPPortable= Программа для записи дисков и образов (автор $L!DER)
CPLDAPU CpldapuR= Расширение для панели задач
DEPAE DEPAE= Изменение ключа запуска Windows
DirectX32 DirectX= Набор мультимедийных библиотек DirectX
dopdf dopdf= Программа для перевода в формат PDF
DotNet11_40 DNet1140= Microsoft .NET Framework
DotNetNew4 DotNetLive= Microsoft .NET Framework
DXUpdate DXUpdate= Утилита для обновления DirectX
ERDNt ERDNT= Создание снимка реестра и настройки реестра
FSViewer FSViewerPortable= Программа для просмотра изображений (автор $L!DER)
Java_SE_JRE Java_SE_JRE_x86= Расширение для запуска JAVA программ
LouderIt LouderIt= Утилита изменения громкости из трея (автор $L!DER)
MassStor32 MassStor= Драйвера жестких дисков
MegaLF25 MegaLF25= Обновленные курсоры, обои, темы...
Office2007 office2007= Microsoft офис 2007 (автор $L!DER)
OperaMOD OperaMOD= Интернет браузер (автор $L!DER)
PDFXCview PDFXCViewPortable= Просмотр PDF (автор $L!DER)
PotPlayer PotPlayerPortable= Видео плеер с поддержкой многих форматов (автор $L!DER)
PuntoSwitcher PuntoSw3= Автоматическая раскладка клавиатуры
Scroller Scroller= Прокрутка неактивных окон колесом мыши (автор $L!DER)
Silverlight SLight= Расширение мультимедийных функций в интернете
ThermIcon ThermIcon= Показ температуры в Омске (автор $L!DER)
TotalCommander TotalCMD= Файловый менеджер с большим набором функций (автор $L!DER)
Universal_Extractor UExtract= Распаковка большинство инсталляторов
Unlocker Unlocker= Удаление неудаляемых файлов
Winstyle Fonts= Набор шрифтов
Winstyle Winstyle_Titanium= Радикальное изменение офомления Windows (автор $L!DER)
w-MyOun ReadMe= Ярлык на рабочий стол информации о сборке (автор $L!DER)
w-MyOun RegTweak= Многочисленные настройки системы (автор $L!DER)
w-MyOun Themes= Темы Windows (автор $L!DER)
w-MyOun Toolbar= Настройка панелей в проводнике (автор $L!DER)
XPrights XPrights= Настройка прав доступа
x-Reset10 xReset10= Автоперезагрузка по окончании установки
Касаемо 1 секции AddonBASE.xls - если папка с аддоном записана как PuntoSwitcher_v3.1.1.72 - необходимо занести только PuntoSwitcher
Приводите варианты в таком же виде для своих аддонов - добавлю. Дабы не засорять ветку - присылайте в ПМ
В ЛС исправленный exe-файл для GUI. Устранена проблема описанная saavaage (Аддон z-KeepPrefSVC). Разделены функции сохранения для SVCPACK и компонентов. Загляни пожалуйста.
На данный момент реализовано автозанесение используемых аддонов в сборке в секцию [Hint] файла RunSetup.ini. Данные берутся из базы: файл AddonBASE.xls Вот его содержание для моих аддонов:
Имя_папки_аддона Имя_ФАЙЛА_без_расширения= Описание
1-FullFlash Flash= Плагин Adobe Flash
1-MSXML4 MSXML4= Поддержка ранних приложений
1-Rootsupd ROOTSUPD= Обновление корневых сертификатов
2gis 2gis= ДубльГИС - городская информационная система (автор $L!DER)
3-dllsfox dllsfox= Набор библиотек Visual Fox Pro
3-dllsfull dllsfull= Библиотеки, необходимые для работы программ
7_Zip 7zipArch= 7Z архиватор с поддержкой многих форматов
7z_Patch 7z_Patch= Графический патч для диалогов архиватора 7z
AIMP3 AIMP3Portable= Аудио плеер с поддержкой многих форматов (автор $L!DER)
Akelpad4 Akelpad4= Текстовый редактор с расширенными функциями
CDBurnerXP CDBurnerXPPortable= Программа для записи дисков и образов (автор $L!DER)
CPLDAPU CpldapuR= Расширение для панели задач
DEPAE DEPAE= Изменение ключа запуска Windows
DirectX32 DirectX= Набор мультимедийных библиотек DirectX
dopdf dopdf= Программа для перевода в формат PDF
DotNet11_40 DNet1140= Microsoft .NET Framework
DotNetNew4 DotNetLive= Microsoft .NET Framework
DXUpdate DXUpdate= Утилита для обновления DirectX
ERDNt ERDNT= Создание снимка реестра и настройки реестра
FSViewer FSViewerPortable= Программа для просмотра изображений (автор $L!DER)
Java_SE_JRE Java_SE_JRE_x86= Расширение для запуска JAVA программ
LouderIt LouderIt= Утилита изменения громкости из трея (автор $L!DER)
MassStor32 MassStor= Драйвера жестких дисков
MegaLF25 MegaLF25= Обновленные курсоры, обои, темы...
Office2007 office2007= Microsoft офис 2007 (автор $L!DER)
OperaMOD OperaMOD= Интернет браузер (автор $L!DER)
PDFXCview PDFXCViewPortable= Просмотр PDF (автор $L!DER)
PotPlayer PotPlayerPortable= Видео плеер с поддержкой многих форматов (автор $L!DER)
PuntoSwitcher PuntoSw3= Автоматическая раскладка клавиатуры
Scroller Scroller= Прокрутка неактивных окон колесом мыши (автор $L!DER)
Silverlight SLight= Расширение мультимедийных функций в интернете
ThermIcon ThermIcon= Показ температуры в Омске (автор $L!DER)
TotalCommander TotalCMD= Файловый менеджер с большим набором функций (автор $L!DER)
Universal_Extractor UExtract= Распаковка большинство инсталляторов
Unlocker Unlocker= Удаление неудаляемых файлов
Winstyle Fonts= Набор шрифтов
Winstyle Winstyle_Titanium= Радикальное изменение офомления Windows (автор $L!DER)
w-MyOun ReadMe= Ярлык на рабочий стол информации о сборке (автор $L!DER)
w-MyOun RegTweak= Многочисленные настройки системы (автор $L!DER)
w-MyOun Themes= Темы Windows (автор $L!DER)
w-MyOun Toolbar= Настройка панелей в проводнике (автор $L!DER)
XPrights XPrights= Настройка прав доступа
x-Reset10 xReset10= Автоперезагрузка по окончании установки
Касаемо 1 секции AddonBASE.xls - если папка с аддоном записана как PuntoSwitcher_v3.1.1.72 - необходимо занести только PuntoSwitcher
Приводите варианты в таком же виде для своих аддонов - добавлю. Дабы не засорять ветку - присылайте в ПМ
в Стандартный входят все аддоны на диске? Если так, то не понятна логика. У меня ряд аддонов дублируют функционал, но отличаются содержанием (tweaks1, tweak2, например). Получается,что все они автоматически попадут в профиль Стандартный, что приведет к его бесполезности (и даже глючности, в случае если диском пользуется неподготовленный человек).
Предлагаю 2 варианта:
а) оставляем все как есть, но скрываем профиль из списка гуи. Т.е. данный профиль будет чисто техническим (программным);
б) делаем туже структуру, только наоборот: Стандартный содержит все аддоны, которые есть во всех профилях (желательный рабочий минимум), все остальные профили - содержат только те аддоны, которые характерны только для них. Таким образом, будут работать все 5 профилей. Кроме того, имхо, список добавления лучше воспринимается, чем список изъятия.
2. вопрос по эргономике гуи - можно ли реализовать задание выводимых на экран названий профилей под конкретного пользователя? Имхо, у каждого юзера в голове свои профили и, желательно, иметь возможность пользователю работать именно с ними , а не использования дефолтных (заданных автором гуи). Как вариант - использовать те же хинты (программные названия профилей - стабильны, выводимые на экран названия - считка из хинтов, задаваемых пользователем).
3. Неплохо бы было предусмотреть невозможность выбора взаимоисключающих аддонов (пример с твиками системы). Как вариант, создать секцию, где будут перечислены аддоны, которые невозможно использовать одновременно, например:
[Exclude]
Tweak1, Tweak1, Tweak3
Skype4, Skype5
Adobe3, Adobe4, Adobe5
и т.д.
3. не совсем понятен механизм работы с Компонентами - каким образом происходит активация/блокировка установки (через файл winnt.sif?)
2. Независимые изменения на страницах "Дополнения" и "Компоненты" - авто применение только для "Дополнения". Если не работать со страницей "Компоненты", то никаких изменений в состав устанавливаемых системных компонентов не вносится.
3. Переработаны профили, их теперь 5 - Стандартный, многопользовательский, однопользовательский, офисный и игровой. Этого, думаю, достаточно на все случаи. В соответствующие профили, вносить только не нужные для установки дополнения - это значительно сокращает количество необходимых строк в настройках (предложение sLiDeR-X).