PDA

Показать полную графическую версию : Модифицированный 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

timon45
04-12-2011, 12:22
gora, shao, пробовал так:
RunProgram="hidcon:cmd /c Move neon.dll \"%Programfiles%\\AIMP3\\Icons\" /y"
ошибка не появлялась, но команда не срабатывала.
решил сделать иначе, выполнить копирование а затем удаление файла. Но если вам все же интересно что не так сбрасываю вам свой установщик только без программы внутри.
скачать (http://rghost.ru/33117561)

wadimus
04-12-2011, 17:25
есть такая утилита:
robocopy.exe
в семерке она встроена в систему, под хр - внешняя (надо скачивать)
главная особенность:
- копирует (перемещает) всё и везде. файлы и каталоги со всеми аттрибутами, хидден-файлы в хидден-каталоги ...

параметры:
robocopy.exe <откуда> <куда> <что> <параметры копирования>

berkut_174
13-12-2011, 17:18
Подскажите пожалуйста что не правильно делаю, не получается...
Создаю архив 7z, в котором лежит файл *.exe. Далее кладу его в одну папку с модулем (http://7zsfx.info/files/7zsd_141_2100.7z) и config.txt (в кодировке UTF-8).
;!@Install@!UTF-8!
RunProgram="setup.exe /s"
;!@InstallEnd@!
Получается в одной папке 7zsd.sfx + config.txt + setup.7z. В командной строке выполняю команду
COPY /b 7zsd.sfx + config.txt + setup.7z setup.exe
Запускаю setup.exe и получаю ошибку: Невозможно прочитать или отсутствует файл конфигурации SFX архива.

Что не так то? Все вроде по Документации делаю... Помогите, пожалуйста!

P.S. 7-zip 9.20

MKN
14-12-2011, 08:56
berkut_174,
Не 7zsd.sfx , а 7ZSD_LZMA.sfx (или 7ZSD_LZMA2.sfx)

berkut_174
14-12-2011, 09:24
Не 7zsd.sfx , а 7ZSD_LZMA.sfx (или 7ZSD_LZMA2.sfx) »
Пробовал и 7ZSD_All.sfx, и 7ZSD_LZMA.sfx - результат тот же.
[hr]
Спасибо, MKN! Использовал 7ZSD_LZMA2.sfx! И пошло дело :-)

grey2
04-01-2012, 17:17
Если паковать в sfx запароленный 7z архив то при открытии пишет метод не поддерживается. тогда зачем у вас параметры :
PasswordTitle="new_title"
PasswordText="text"
?

Taran2ul
09-01-2012, 12:52
Скажите пожалуйста как сделать, чтобы exe созданный при помощи модифицированного модуля при простом запуске (enter, dbl.click), выводил сообщение, а при запуске с зажатым Shift выполнял запуск приложения лежащего рядом.

Oleg_Sch
21-01-2012, 14:22
BUG-FIX

1.4.3 (сборка 2367) 21.01.12
* Выбор папки на x64 платформах приводил к ошибке (gora:forum.oszone.net)

1.5 beta (сборка 2367) 21.01.12
* Выбор папки на x64 платформах приводил к ошибке (gora:forum.oszone.net)
+ В диалог "Обзор" добавлена кнопка создания "Новой папки".


Доступны только по прямым ссылкам
1.4.3.2367-Stable (http://7zsfx.info/files/7zsd_143_2367.7z )
1.5.0.2367-beta (http://7zsfx.info/files/7zsd_150_2367.7z )

Painkiller
27-01-2012, 21:44
Подскажите пример создание ярлыка в SendTo средствами модуля ???

gora
27-01-2012, 21:58
пример создание ярлыка в SendTo »
Попробуйте так (не проверялось):Shortcut="9,{src_file_path},{command_line_for_file},{folder_for_shortcut},decription},{shortcut_name},{working _directory},{icon_file},{icon_index}"

Painkiller
27-01-2012, 22:31
Попробуйте так (не проверялось): »
Не сработало Пришлось реализовать в nsis =(
Shortcut="9,{Converter.exe},{},{%UserProfile%\\AppData\\Roaming\\Microsoft\\Windows\\SendTo},{Converter},{Conv erter},{%PROGRAMFILES%\\Converter},{},{}"

specialist
27-01-2012, 23:07
%UserProfile%\\AppData\\Roaming\\Microsoft\\Windows\\SendTo »
во-первых, короче будет %AppData%\\Microsoft\\Windows\\SendTo
а во-вторых, это не сработает если будет запускать в Windows XP, так как там будет
%AppData%\Microsoft\Internet Explorer\Quick Launch
в-третьих, все что я до этого сказал неважно, потому как общим для всех систем будет такой вариант
%UserProfile%\SendTo

gora
27-01-2012, 23:11
Painkiller, specialist, внимательно читая справку, вы обнаружите:Только переменные модуля %CommonDesktop%, %CommonDocuments%, %MyDocuments%, %MyDocs%, %UserDesktop%, %%M, %%S %%T и %%P, а также переменные, определяемые пользователем в параметрах 'SetEnvironment', разбираются и подставляются (будут подставлены ЗНАЧЕНИЯ этих переменных) во всех параметрах команды 'Shortcut'.Переменные среды в Shortcut не разбираются.

specialist
27-01-2012, 23:57
gora, я предлагал Painkiller универсальный вариант значения переменных и конкретного адреса для скрипта nsis в рамках начавшегося офтопика :)
Painkiller, если еще интересен вариант развития событий с помощью 7zip sfx, от себя добавлю универсальный вариант - утилита nircmd, при использовании которой можно использовать любые значения внутренних переменных этой утилиты, переменных среды windows, а также переменных, передаваемых строке из параметров конфигурации к sfx
в справке к ней изучить примеры
nircmd shortcut [filename] [folder] [shortcut title] {arguments} {icon file} {icon resource number} {ShowCmd} {Start In Folder} {Hot Key}

Painkiller
28-01-2012, 00:08
gora, я предлагал Painkiller универсальный вариант значения переменных и конкретного адреса для скрипта nsis в рамках начавшегося офтопика
Painkiller, если еще интересен вариант развития событий с помощью 7zip sfx, от себя добавлю универсальный вариант - утилита nircmd, при использовании которой можно использовать любые значения внутренних переменных этой утилиты, переменных среды windows, а также переменных, передаваемых строке из параметров конфигурации к sfx
в справке к ней изучить примеры
nircmd shortcut [filename] [folder] [shortcut title] {arguments} {icon file} {icon resource number} {ShowCmd} {Start In Folder} {Hot Key} »
specialist, на nsis легко решил задачу. Там есть $SENDTO . Без проблем все реализовал. Вот хотел всё таки средствами модуля без использования сторонних утилит . За подсказку спасибо! Возьму на заметку

gora
28-01-2012, 09:24
Не сработало »
А у меня сработало:SetEnvironment="Path7zip=%ProgramFiles%\\7-Zip\\7zFM.exe"
Shortcut="9,{%Path7zip%},{},{},{Архиватор},{7-Zip},{},{%Path7zip%},{}"

МИШАНЧИК
31-01-2012, 13:47
Подскажите пожалуйста, можно ли это:
"prog.exe" /verysilent /norestart /LoadInf=".\set.ini"
как-то записать в RunProgram=?

gora
31-01-2012, 14:14
как-то записать в RunProgram=? »
RunProgram="\"prog.exe\" /verysilent /norestart /LoadInf=\".\\set.ini\""

МИШАНЧИК
31-01-2012, 14:28
gora, большое Вам спасибо.

Nun-Nun
03-02-2012, 10:31
Обратил внимание на вот это место в описании модулей:
В момент выполнения модулем своей работы, помимо основных переменных среды (%SYSTEMDRIVE%, %PROGRAMFILES% и т.д.), доступны переменные, определяемые пользователем в параметрах 'SetEnvironment', а также дополнительные переменные, которые указывают на расположение на диске следующих папок:

%CommonDesktop% - рабочий стол ДЛЯ ВСЕХ пользователей
%CommonDocuments% - ОБЩИЕ документы
%MyDocuments% - "Мои документы" ТЕКУЩЕГО пользователя (она же %MyDocs%)
%UserDesktop% - рабочий стол ТЕКУЩЕГО пользователя

Казалось бы всё здОрово, но в процессе использования обнаружил, что если в файле конфигурации 7z SFX файлов использую системные переменные типа %CommonAppData% (C:\Documents and Settings\All Users\Application Data) и %SystemDir% (C:\Windows\System32), то эти переменные игнорируются. Например:

SetEnvironment="PathInst1=%CommonAppData%"
SetEnvironment="PathInst2=%SystemDir%"
RunProgram="hidcon:xcopy AppDataFile\\*.* \"%PathInst1%\" /h /s /e /i /y"
RunProgram="hidcon:xcopy SysDll\\*.* \"%PathInst2%\" /h /s /e /i /y"

В связи с вышеизложенным хотелось бы узнать, возможно ли всё-таки использование %CommonAppData% и %SystemDir% или это безнадёжно?




© OSzone.net 2001-2012