Войти

Показать полную графическую версию : Модифицированный SFX модуль 7-Zip'а для установок


Страниц : 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 [54] 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101

gora
10-08-2010, 17:38
в самом начале распаковки вывести пользователям картинку »
Команды исполнения выполняются только после полной распаковки sfx архива. Запустить что либо из модуля до распаковки невозможно без применения танцев с бубном ("матрешки" и т.п.).

Microteam
11-08-2010, 14:54
А это хорошое дополнение теперь можно заменять файлы в SFX архиве

peerj
17-08-2010, 01:43
Привет бывалым!

Некоторое время назад был несказанно счастлив найти полезную штуку - модифицированный 7zsfx
Почти прикрутил, и тут во время проверки на Win7 Home Premium Rus вылезло то самое чудесное сообщение о несовместимости. Обновил до 1.5 (1798). К ночи уже голова совсем плохо варит, но по-моему ситуация не изменилась.
Если в скрипте есть строка InstallPath, то вываливает такое, а если нет - сякое:
http://img514.imageshack.us/img514/2746/86847994.png

Сейчас дам линк на инсталлятор и запощу скрипт

инсталлятор http://www.sendspace.com/file/5y7z90

инсталл скрипт:
;!@Install@!UTF-8!
Title="Установка Агента BotHQ"
; Installation folder
;InstallPath="%ProgramFiles%\\BotHQ Агент"

SetEnvironment="PathBA=%ProgramFiles%\\BotHQ Агент"
SetEnvironment="Var1=%PathBA%\\"
SetEnvironment="Var2=\"%PathBA%\""

RunProgram="hidcon:cmd /c xcopy %%T %Var2% /s /e /i /y"
;RunProgram="hidcon:cmd /c \"regedit -s ForAutoplayTC.reg\""

GUIMode="1"
ExtractTitle="Идёт установка..."
;Shortcut="T,{cmd.exe},{/b %Var1%murgalua.exe proxy.lua}"
Shortcut="Tu,{%Var1%},{},{},{Bot HQ Агент},{BotHQ Агент},{%ProgramFiles%},{},{}"
FinishMessage="BotHQ Агент успешно установлен"
;!@InstallEnd@!

заранее прошу простить за тупость

PS Под XP пробовал только без InstallPath'а, работало без проблем

LonerD
17-08-2010, 19:26
peerj, uac отключен?

peerj
17-08-2010, 22:48
DPavlik82 »
На той машине, на которой пробовал - всё по умолчанию, то есть, как я понимаю не отключен.
А в общем целом инсталлятор делается для пользователей, а не для себя, и предугадать, будет он отключен или нет на их машине - невозможно, и хотелось бы добиться, чтобы инсталлятор срабатывал при любом раскладе.

Oleg_Sch
18-08-2010, 02:36
Oleg_Sch, есть просьба: добавить дополнительные команды RunPreSetup и RunPostSetup, которые запускались бы соответственно в самом начале работы модуля (первой командой) и в самом конце (последней командой) в любом случае, независимо от того, присутствуют ли RunProgram'ы и AutoInstall'ы это возможно? »
Я подумаю над этим.
Только, сами понимаете, RunPreSetup возможен только для файлов, которые присутствуют в системе до распаковки, т.е. файлы из архива не заиспользуешь.

Почти прикрутил, и тут во время проверки на Win7 Home Premium Rus вылезло то самое чудесное сообщение о несовместимости. Обновил до 1.5 (1798). К ночи уже голова совсем плохо варит, но по-моему ситуация не изменилась. »

Не хватает прав на создание папки. Это нормальное поведение при включенном UAC, необходимо запускать от администратора.
Обновите модуль до последней (на сегодняшний день) версии (http://svn.7zsfx.info/filedetails.php?repname=7zSfxMod&path=%2Ftags%2F1.5.0.1799%2Fbin%2F7zsd_150_1799.7z) и укажите в файле конфигурации

MiscFlags="4"


All
Последние версии лучше смотреть в svn (http://svn.7zsfx.info/listing.php?repname=7zSfxMod&path=%2Ftags%2F), т.к. здесь о новых сборках я отписываюсь не всегда.
В папках bin для конкретной версии лежат собранные модули.

Amigos
18-08-2010, 09:53
Только, сами понимаете, RunPreSetup возможен только для файлов, которые присутствуют в системе до распаковки, т.е. файлы из архива не заиспользуешь. » понимаем, но даже не смотря на это RunPreSetup очень востребован.

MKN
18-08-2010, 11:14
Только, сами понимаете, RunPreSetup возможен только для файлов, которые присутствуют в системе до распаковки, т.е. файлы из архива не заиспользуешь. »
А почему бы не сделать такой "псевдо режим", когда необходимые для PreSetup файлы, помещаются как обычно в архив ( в отдельную папку, со своей собственной переменной или индивидуальным именем...), а при запуске модуля, именно они в первую очередь копируются из архива во временную папку, откуда они же первоочерёдно и запускаются до начала обычного процесса работы модуля. Так сделано в некоторых инсталляторах.

greg_b
18-08-2010, 11:36
MKN, Amigos, вариант омега вас не устроит: сделайте инкапсуляцию: соберите нужный архив как вам надо, а потом заверните его в новый архив, уложив рядом нужные файлы для PreSetup, при запуске у вас получается архив+файлы для PreSetup. Многие инсталяторы так и делают, разворачивают себя, а потом сам дистриб под руководством юзера или ключей (конечно с точки зрения антивируса это не гут, да и не очень кравиво, зато просто).

Amigos
18-08-2010, 11:48
вариант омега вас не устроит: сделайте инкапсуляцию: соберите нужный архив как вам надо, а потом заверните его в новый архив, уложив рядом нужные файлы для PreSetup, при запуске у вас получается архив+файлы для PreSetup »для работы всего этого необходимо что-то куда-то распаковывать, а это не всегда возможно.

лично я иногда использую модуль как "компилятор CMD файлов", но сейчас этот компилятор в случае если "распаковать не получилось" ничего не выполняет.
в случае если будет реализован RunPreSetup что-то можно выполнить до распаковки и до того, как до модуля дойдёт "распаковать не получилось, делать ничего не буду" :)

gora
18-08-2010, 12:25
Мысли в слух...
Если добавлять некие файлы в SFX для PreSetup, то их нужно сжимать? Их может быть и много, помещать в спец. папку? Как будет выглядеть строка COPY /b в этом случае? Как будет сплитер извлекать из SFX эти файлы/папку? Куда должны они извлекаться (даже если не упакованы), в какую директорию? А если в нее не удастся поместить эти файлы (по ряду причин, как сейчас не возможно произвести распаковку), то как же их запускать? Что с ними делать после окончания работы SFX, удалять? Но ведь там могут быть и "нужные" файлы для последующей инсталляции ПО, держать в архиве их дубликаты?
Вопросов много, вариантов ответов еще больше!

Может, запрашивающим новый функционал у автора, стоит подумать и написать ТЗ, где подробно описать собственные предложения по решению, дабы не перекладывать все это на плечи автора?

Oleg_Sch
18-08-2010, 15:06
gora, верно сказано
Полноценное ТЗ - наполовину выполненная задача

greg_b
18-08-2010, 15:21
Amigos, :o , т.е. при установке аддона/программы - они у вас распаковываются и ставятся в папку "ВОЗДУХ"? Уж папка "Темp" обычно есть. Предложенный мной вариант не очень красив, но он работает и у меня и у других авторов.

gora, это точно, ставлю +

peerj
18-08-2010, 18:29
Олег, спасибо огромное за программу и за помощь!

С последним 1799 билдом и MiscFlags="4" всё отлично заработало под win7, никаких сообщений о несовместимости или невозможности что-то создать больше нет.

neitral72
18-08-2010, 23:06
Oleg_Sch, бросайте модуль, делайте GUI хотя бы детский, может при вашем стремлении к совершенству он вырастет в полноценный, да и модуль востребованнее будет, или может GUI доработает кто.

Amigos
19-08-2010, 07:30
т.е. при установке аддона/программы - они у вас распаковываются и ставятся в папку "ВОЗДУХ"? »это не установка аддона/программы, модифицированный SFX модуль 7-Zip можно много для чего использовать. Про "продвинутую установку" с использованием RunPreSetup не я, а MKN хлопочет.
Уж папка "Темp" обычно есть. » не всегда %temp% доступна для записи, а в некоторых PE средах она вообще отсутсвует http://s11.radikal.ru/i183/1008/92/28ec2c73eb50.png
как не трудно догадаться, F: это CD-ROM

greg_b
19-08-2010, 08:22
neitral72, на форуме была разработка GUI (http://forum.oszone.net/showthread.php?t=63909), пообщайтесь с автором - может даст исходники. Модуль и так прекрасно востребован. А вопросы отладки модуля более насущны чем GUI, тем более что есть онлайн генераторы конфигов - здесь (http://tools.oszone.net/7zsfx/conf/), читайте шапку.

Oleg_Sch, считаю, что отладка модуля более приоритетна, чем написание GUI. А целом на ваш выбор

Amigos, я и не исключал других вариаций, но обычно PE-системы имеют еще RAM-диск и возможность управлять его размером, хотя на все случаи жизни соломки не подстелишь. Я не указывал Вам на "продвинутую установку", а предложил вариант реализации :)

neitral72
19-08-2010, 19:36
Все таки мне кажется, что модуль прекрасно востребован, но в узких кругах. Сделать мастер типа iexpress, подвязать его кнопкой к архиватору, вроде создать sfx, чтобы такие как я, которые кафель лепят, тоже могли инсталляторы собирать :). Будет плюс и для архиватора и для модуля. Модуль уже достаточно отлажен для простых юзеров.

gora
19-08-2010, 19:42
чтобы такие как я, которые кафель лепят, тоже могли инсталляторы собирать »
7-Zip SFX Maker (http://teejee2008.wordpress.com/7-zip-sfx-maker/)

Amigos
20-08-2010, 07:22
мастер типа iexpress » много ли пользователей знают про iexpress ?
а ведь он всегда в XP был.




© OSzone.net 2001-2012