Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Автоматическая установка приложений (http://forum.oszone.net/forumdisplay.php?f=61)
-   -   Синтаксис setup.iss (http://forum.oszone.net/showthread.php?t=55012)

ags 11-10-2005 12:00 363269

Синтаксис setup.iss
 
Пусть все на примере установки приложения AVerTV. Все сделал как по учебнику:-). Распаковал, прогнал с ключем /r, получил setup.iss Но вот его изучение навело на размышления: в нем прописан путь установки как C:\Program Files\AVerTV Но мне нужно устанвавливать систему не только на С:, но и еще и на D: например. Размещение в Program Files вполне устраивает, не устраивает только буква диска. Переменную %systemdrive% хавать не хочет. Что делать? Этот путь можно както универсализировать?

Debugger 11-10-2005 16:08 363369

ags

Можно попробовать создать дополнительный setup.iss и положить его в подпапку, когда нужно будет запустить установку с его участием, явно прописать путь к нему через ключик f1:

Код:

setup.exe -s -f1c:\install\avertv\setupiss\setup.iss

ags 12-10-2005 17:40 363676

Debby

Спасибо, натолкнул на мысль. Конечно это не выход, но полвыхода. Ведь мы же не знаем букву HDD заранее, а для всех букв этих setup.iss не сильно ИМХО верно делать. Правда может кому поможет еще вот что нарыл: ключ /f1 вполне нормально хавает не только абсолютный путь, но и еще схавал переменную %systemdrive%. Да, еще путь после /f1 должен быть в кавычках! У меня сработало вот так (для AVerTV):

Код:

setup.exe /s /sms /f1"%systemdrive%\temp\setup_d.iss" /v/qn
Будем думать дальше...

ags 13-10-2005 16:24 363980

Итак, последнее исследование выявило работу следующего синтаксиса команды:
Код:

setup.exe /s /sms /f1"%systemdrive%\InstallTemp\setup_%systemdrive:~0,-1%.iss" /v/qn
Это при условии, что SFX распаковывается в %systemdive%\InstallTemp к примеру. Это первое неудобство - задание определенной папки распаковки. Второе неудобство - WinRAR категорически не хочет выполнять эту команду после распаковки. Приходится пихать ее в командный файл и уже его запускать из SFX'а. Пока не могу победить... И третье неудобство - в состав SFX'а приходится включать кучу setup_?.iss, где ? - варианты буквы HDD. Тоже пока не знаю что делать...

ПРОШУ ПОМОЩИ!!! ПОМОГИТЕ победить хотя бы второе неудобство...

Debugger 13-10-2005 16:58 363989

ags

Цитата:

Второе неудобство - WinRAR категорически не хочет выполнять эту команду после распаковки. Приходится пихать ее в командный файл и уже его запускать из SFX'а. Пока не могу победить...
А зачем побеждать? Добавь в архив hidcon.exe (его можно найти на сайте у Oleg_Sch - http://unattended.solta.ru/unattended.ru.htm), и запускай батник с его помощью - консоль не будет видно.

Dimus 09-11-2005 16:17 371922

Тема кстати очень актуальная, сам над этим долго парюсь. Пляски с кучей файлов setup_*.iss не устаивают. Должны существовать встроенные средства инсталятора для таких вещей.
Как например у Inno Setup /DIR="xxx"
Кто знает - делитесь!

boss911 09-11-2005 19:34 371981

Dimus

Если что надо, по поводу Inno Setup, так пожалуйста спрашивайте (только не много), я просто занимаюсь этой программой для создания инсталяторов!!

ghostman 24-01-2006 09:06 396477

InstallShield и setup.iss
 
Вот нарыл, параметр <ProgramFiles> эквивалентен параметру %ProgramFiles% в винде, к сожалению пременной <systemdrive> в инсталлщиелде не предусмотренно, но и на этом спасибо.
Выглядит это примерно так:

Код:

szDir=<ProgramFiles>\ATI Technologies\ATI Control Panel
2 Vadikan.
Думаю стоит добавить это в статью.

Vadikan 25-01-2006 01:55 396766

ghostman
А в статье синтаксис вообще не рассматривается. Там даны общее представление об инсталляторах.

CTEPBA 21-02-2006 00:08 408849

Извените у меня появилась одна проблемка:
Как сделать так что бы при выборе какого либо компанента делалась просто какая-то запись в файле ini, который не состоит из блоков, строк и папраметров, а просто имеет формат обычного текстового файла и нужно чтобы в этот файл была вставлена строчка.
И как это сделать?

ags 26-02-2006 10:25 411022

ghostman
Не торопись... Дело в том что в последних (где-то с ноября) версиях ATI-шных дров действительно в упаковщике/распаковщике можно использовать этот папраметр. НО ТОЛЬКО В ПОСЛЕДНИХ! Т.е. смею предположить что он появился только в 11-й версии InstallShield'а. А выложив это в качестве параметра ты собьешь с толку очень многих, т.к. многие используют софт запакованный InstallShield'ом более ранних версий, которые не поддерживают <ProgramFiles>. Проверено лично мной...

elakt 06-03-2006 07:58 414259

Решил данную проблему следующим образом:

1. В файле setup.iss оставил все строки ДО той, где прописывается путь установки.
2. В файле setup.bat написал:
echo [{6811CAA0-BF12-11D4-9EA1-0050BAE317E1}-SdAskDestPath-0] >> setup.iss
echo szDir=%ProgramFiles%\CyberLink\PowerDVD >> setup.iss
echo Result=1 >> setup.iss
(...)
start /wait setup.exe /s /sms
3. Всё это упаковал модифицированной версией SFX модуля 7-Zip, с соответствующими параметрами. Команда на установку программы: hidcon.exe setup.bat.

Буду рад услышать другие решения.


Время: 08:16.

Время: 08:16.
© OSzone.net 2001-