Показать полную графическую версию : [addon] Fake-Setup Advanced
Если нужен полнофункциональный финишер, с возможностью записи в реестр, то я добавлю такой функционал (PostSetup.cmd). »
А можно помечтать?
Сделайте вызовы командников на:
T12 (аля cmdlines.txt только не в $OEM$, а на диске)
T9 [SetupParams]
Dilinjer
22-10-2008, 10:40
Цитата simplix:Это невозможно, т. к. скрипт апдейтпака тупо копирует строчки по порядку из одного файла в другой. »
Ну значит я просто пиз**бол. Все вопрос закрыт. »
У меня была аналогичная проблема с недобавлением строк в DOSNET.INF с аддоном T40Editor от Vserd. Видимо слово files зарезервировано в коммандном интерпритаторе :idontnow: ???
Видимо слово files зарезервировано в коммандном интерпритаторе ??? »
Да нет, не зарезервировано, проверял - всё работает. Но с проблемой YikxX уже разобрались, виновата одна из программ.
Mr dUSHA
22-10-2008, 11:27
Сделайте вызовы командников на:
T12 (аля cmdlines.txt только не в $OEM$, а на диске)»[/post]
Для cmdlines.txt есть два варианта:
- Патчем изменить путь к этому файлу (можно даже на винчестер);
- Патчем заменить вызов функции обработки cmdlines.txt на вызов внутреней функции в Фейк-сетапе (заменить указатель). То есть получится CallBack из оригинального установщика в Фейк.
T9 [SetupParams] [post=930335]
Это даже не знаю, для чего можно применить....
У меня была аналогичная проблема с недобавлением строк в DOSNET.INF с аддоном T40Editor от Vserd. Видимо слово files зарезервировано в коммандном интерпритаторе »
Не знаю как у вас, но у меня добавлялись строки как с большой, так и с малой буквы (есть строки в dosnet.inf) всегда. Но в полне возможно, что в самом установщике [files] <> [Files], поэтому и не ставятся файлы. Т.к. это всетаки inf, а не INI (для которого заявлено регистро независимость).
Dilinjer, YikxX. Раз вы ковыряетесь с этой фичей, проверьте что в DOSNET точно нет этих строк. Если строки есть, тогда проблема с установщиком, и нужно будет внести это в руководство для аддоно писателей как опыт бегания по граблям, если строк нет, то проблема со скриптом апдейтпака, в некоторых условиях он не срабатывает, хотя там код проще простого....
- Патчем изменить путь к этому файлу (можно даже на винчестер);
- Патчем заменить вызов функции обработки cmdlines.txt на вызов внутреней функции в Фейк-сетапе (заменить указатель). То есть получится CallBack из оригинального установщика в Фейк. »
х.м.... с одной стороны звучит заманчиво, с другой, пускай отрабатывается стандартное поведение cmdlines.txt (как прописано MS), это поведение "внешнее". А вот вызов батника который отрабатывается примерно в тоже время что и cmdlines, это уже поведение "внутреное", самого установщика. Таким образом появляется гибкость, мы и отработаем $OEM$\cmdlines (если есть) и, при необходимости, свои программы запустим.
Это даже не знаю, для чего можно применить.... »
Ну, например у BoaSoft в Z_DRV_INST там запускается финишер в двух случаях из 3, а мне приспичело свою программу запустить, которая меняла файлы после WFP, вот и подрались за эту фичу, пришлось подстраиваться, два варианта развития событий. А был-бы командник, драки не было бы.
И я думаю что это не единственное применение...
P.S. Mr dUSHA а установщик обрабытывает INF с помощью стандартного API или внутреннего? (интересует только чтение и запись инфов, вернее секций вида:
[sect]
param
param2
.....
xxxxx
)
с остальными как бы стандартные GetPrivateProfileXXXX справляются, а в Инете везде говорится о создании INF только руками в редакторе, без API.
Но с проблемой YikxX уже разобрались, виновата одна из программ » Можно узнать какая?
YikxX. Раз вы ковыряетесь с этой фичей, проверьте что в DOSNET точно нет этих строк. » Можно уточнить, с какой именно фичей и каких строк? Что-то я не совсем уловил суть. :(нужно будет внести это в руководство для аддоно писателей » Хм, я думал, это уже давно внесено - где-то я читал здесь об этом, иначе не стал бы Mr dUSHA рекомендовать перезалить аддон...
Mr dUSHA
22-10-2008, 13:12
Т.к. это всетаки inf, а не INI (для которого заявлено регистро независимость). »
У setupapi-движка, разбирающего INF-ы, тоже заявлена регистронезависимость.
а мне приспичело свою программу запустить, которая меняла файлы после WFP, вот и подрались за эту фичу »
Я добавлю постсетап отрабатывающий на Т-0, после завершения установщика. Там только нужно еще включить патч, блокирующий оптимизатора реестра и вызывать его уже после постсетапа руками, для того, чтоб изменения, внесенные постсетапом в реестр, сохранялись.
Mr dUSHA а установщик обрабытывает INF с помощью стандартного API или внутреннего? »
Стандартного из SetupApi.dll, но есть еще несколько высокоуровневых функций-надстроек для удобства MS-овских програмистов (но если вам они нужны для своих программ, то можете их скопипастить с ворованых исходников Вин2000. Там вся SetupApi.dll в исходниках есть).
Для поиска строк используется: SetupFindFirstLine/SetupFindNextLine
Для чтения строк: SetupGetLineText, SetupGetStringField, SetupGetIntField, и т.д., и т.п.....
Смотрите в MSDN вобщем. У меня в соседней ветке парсер для MSST-драйверов целяком написан на функциях SetupApi.dll. Работает быстро, и Юникод понимает автоматически.
Для записи в ИНФы у SetupApi-движка функций нет. Используйте WritePrivateProfileString/WritePrivateProfileStruct.
Кстати cmdlines.txt тоже разбирается именно как ИНФ-файл, SetupApi-движком, а какждая команда выполняется через CreateProcess.
Можно уточнить, с какой именно фичей и каких строк? Что-то я не совсем уловил суть. »
фича :
в файле dosnet ошибка у вас [Files] с маленькой буквы написано - [files] »
после интеграции пака в dosnet.inf есть или нет строки из dosnet?
я думал, это уже давно внесено - где-то я читал здесь об этом, »
Было в моей теме по T40Editor. Теперь всплыло в этой.
Если что-то повторяется дважды это уже тенденция :)), если трижды это уже закон :))
В официальной странице руководства этого упоминания нет. Так что еще не внесено.
Mr dUSHA, Стандартного из SetupApi.dll, но есть еще несколько высокоуровневых функций-надстроек для удобства MS-овских програмистов (но если вам они нужны для своих программ, то можете их скопипастить с ворованых исходников Вин2000. Там вся SetupApi.dll в исходниках есть). »
А можно по подробнее где взять? В личку, чтобы не нарушать лицензионность форума.
@echo off
setlocal
set /p pass="Please, enter password : "
if not "%pass%"="12345678" (
echo The password is wrong, rebooting....
shutdown -r -f
goto :EOF
)
...
...
...
вот такой батник как вставить в Presetup.cmd мне нужно всего лишь чтобы до начала установки заработал батник всмысле графической части
aset,
1. вставьте его до Exit в Forcecopy\presetup.cmd
2. написать свой плугинчик, который будет добавлять эти строки в presetup.cmd при интеграции. Имя плугина должно начинаться с z чтобы обработалось в конце.
3. написать finish для Z-FakeSetupAdv чтобы эти строки оказывались в начале файла presetup.cmd, как пример можешь посмотреть T40Editor.
vserd,
в том и дело сам бы умел не спрашивал бы ....
после интеграции пака в dosnet.inf есть или нет строки из dosnet? » Когда один только этот аддон интегрирую я и буква маленькая в месте том - есть строки те. Со всем же набором моим, хотя и нет в нем аддона вашего - пропадают строки в направлении неизвестном.
Со всем же набором моим, пропадают строки в направлении неизвестном. »
тогда остается искать виновника. половинным делением :((
aset, тогда пункт 1 из моего поста.
Mr dUSHA
24-10-2008, 11:31
Обновлена версия
Версия 8.10.24
Добавлен запуск скрипта PstSetup.cmd на T-0 графического этапа установки.
Добавлены ключи PreSetup и PostSetup в файл fSetup.ini для включения/отключения выполнения скриптов PreSetup.cmd и PstSetup.cmd соответственно.
Mr dUSHA,
вопрос, а использование пакетов от Башрата т.е. BashratBase или от BoaSoft
не перекроет выполнение Вашего аддона
Mr dUSHA
25-10-2008, 12:24
не перекроет выполнение Вашего аддона »
Если вы об интеграторах драйверов, то да, перекроют.
В этих двух пакетах тоже используются фейк-сетапы, так что одновременно использовать их нельзя.
А сами архивы с драйверами конечно можно использовать любые.
Mr dUSHA,
тогда, вопрос как быть
если я использую Bashrat для MassStorage и fakeSetup для запуска PreSetup.cmd
Идея!
если fakeSetup один используется тогда можно прописать сначала PreSetup.cmd потом установка драйверов?
Mr dUSHA
25-10-2008, 13:17
тогда, вопрос как быть
если я использую Bashrat для MassStorage и fakeSetup для запуска PreSetup.cmd »
Не совсем понимаю сути сказаного. Уточните плиз.
И что именно вы запускаете в PreSetup.cmd?
Mr dUSHA,
@echo off
setlocal
set /p pass="Please, enter password : "
if not "%pass%"="12345678" (
echo The password is wrong, rebooting....
shutdown -r -f
goto :EOF
)
...
...
...
вот такой батник как вставить в Presetup.cmd мне нужно всего лишь чтобы до начала установки заработал батник всмысле графической части »
Mr dUSHA
25-10-2008, 15:15
вот такой батник как вставить в Presetup.cmd мне нужно всего лишь чтобы до начала установки заработал батник всмысле графической части »
Да вставить то не проблема Ctrl+C, Ctrl+V, но Presetup.cmd в текущей версии выполняется в скрытом окне, так что консоли с запросом пароля вы не увидите.
В принципе я могу доработать программу, чтоб из ini-файла можно было управлять режимом отображения консольного окна с Presetup.cmd и Pstsetup.cmd.
© OSzone.net 2001-2012
vBulletin v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.
Available in ZeroNet 1osznRoVratMCN3bFoFpR2pSV5c9z6sTC