|
Компьютерный форум OSzone.net » Автоматическая установка Windows » Автоматическая установка приложений » .: Файлы конфигурации 7z SFX. Помощь и советы :. |
|
.: Файлы конфигурации 7z SFX. Помощь и советы :.
|
Ушёл из жизни Сообщения: 6021 |
Эта тема создается специально для вопросов по 7z SFX архивам на базе модифицированных модулей от Oleg_Sch. Перед тем, как задать вопрос, обратите внимание, на перечисленные ниже ссылки.
Домашняя страница модулей: Обсуждение модулей: http://forum.oszone.net/showthread.php?t=51547 В теме предполагается обсуждать вопросы написания файлов конфигурации для 7z SFX архивов, делится своими наработками, нестандартными и оригинальными решениями, расширяющими возможности использования модулей и т.п.. Лучшие варианты файлов конфигурации и оригинальные решения могут быть включены в справку по модифицированным модулям. Полезные ссылки: Список переменных, которые могут быть использованы в файле конфигурации модифицированного модуля. |
|
Отправлено: 09:16, 21-03-2012 |
Ушёл из жизни Сообщения: 6021
|
Профиль | Отправить PM | Цитировать timon45
1 Это не конфиг, а синтаксис cmd. 2 А зачем проверять наличие процесса? Завершайте его в любом случае это будет проще. |
Отправлено: 10:26, 19-01-2016 | #331 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Пользователь Сообщения: 141
|
Профиль | Отправить PM | Цитировать ...
|
------- Последний раз редактировалось minutka15, 30-01-2016 в 05:19. Отправлено: 00:47, 22-01-2016 | #332 |
Пользователь Сообщения: 55
|
Профиль | Отправить PM | Цитировать Приветствую всех!
Первый вопрос: Существует ли документация по разметке и оформлению текста в модулях с диалогами ? Имеется ввиду это
![]() BeginPrompt="{\rtf1\ansi\ansicpg1251\deff0\deflang1049{\fonttbl{\f0\fswiss\fprq2\fcharset204 Century Gothic;}{\f1\fswiss\fprq2\fcharset204 Tahoma;}} {\colortbl ;\red36\green88\blue178;\red255\green0\blue0;} \viewkind4\uc1\pard\b\f0\fs26 Архив содержит инструменты для 7z SFX: \f1\cf2\b0\i\fs18\par\par \bullet Модифицированные 7z SFX модули\par \bullet Специальный модифицированный модуль с диалогами\par \bullet 7z SFX Splitter для извлечения компонентов из SFX архива\par \bullet Файл справки для модуля (CHM формат)\par \i0\fs16\par \cf1 Ярлык к файлу справки будет помещен на ваш Рабочий стол.\par Файл справки откроется автоматически после извлечения. }" На офсайте на нашел и даже не уверен как это искать (и что искать), а изучения методом тыка и выборочного удаления параметров проходит менее продуктивно, чем хотелось бы. Прошу меня простить, если уже было. Второй вопрос: Есть ли способ (или обходной путь) научить модуль раскрывать переменные, такие как %DATE% ? Автор модуля мне ответил следующее Цитата:
Суть вопроса в картинках
![]() ![]() Заранее благодарю ![]() |
|
------- Отправлено: 02:26, 03-02-2016 | #333 |
Пользователь Сообщения: 55
|
Профиль | Отправить PM | Цитировать Еще один вопрос. Но тут интерес больше спортивный, чем практический
![]() Длиннопост
Допустим:
Имеется main.bat, который запускается модулем после распаковки. config.txt ;!@Install@!UTF-8! BeginPrompt="Install this program?" FinishMessage="Done" RunProgram="hidcon:waitall:main.bat" ;!@InstallEnd@! @echo off SetLocal EnableExtensions REM В процессе работы скрипта создаются некоторые переменные, REM которые должны быть перезадны двум консольным программам. REM При этом работа данного скрипта должна быть продолжена REM без ожидания завершения консольных пррограмм и вне зависимости REM от результатов выполения этих программ. set /a var1=2+2 start "First" cmd /c "Console_1.bat %var1%" set /a var2=4+6 start "Second" cmd /c "Console_2.bat %var2%" REM тем временем работа основного скрипта продолжается timeout 3 echo.Result: Any text >%UserDesktop%\main.txt exit /b Так что еще одним RunProgram не отделаться (или я просто не знаю как) И работа всех трех (main.bat, Console_1.bat и Console_2.bat) должна продолжиться параллельно и независимо друг от друга Console_1.bat @echo off SetLocal EnableExtensions REM имитация бурной деятельности timeout 10 echo.The arguments is: %* >>%UserDesktop%\Console_1.txt exit /b @echo off SetLocal EnableExtensions REM имитация бурной деятельности timeout 7 echo.The arguments is: %* >>%UserDesktop%\Console_2.txt exit /b ![]() Вопрос1: как скрыть эти консольные окна средствами модуля? (при этом не распаковывая sfx.exe заново) Console_1.bat и Console_2.bat обязательно должны быть запущены из main.bat, чтобы можно было передать им переменные созданные main.bat в качестве аргументов и Вопрос2: Как можно передать модулю некую переменную полученную в результате работы запущенной им программы из предыдущего RunProgram, для использования её в следующем по порядку RunProgram ? Пример: На данный момент пришло в голову только создание следующего костыля: Скрытый текст
В конфигурационном файле объявляется переменная содержащая полный путь к sfx.exe
Допустим так SetEnvironment="WRAP=%%S//%%M" config.txt ;!@Install@!UTF-8! BeginPrompt="Install this program?" FinishMessage="Done" SetEnvironment="WRAP=%%S//%%M" RunProgram="hidcon:waitall:main.bat" ;!@InstallEnd@! Вызов Console_1.bat и Console_2.bat из main.bat происходит следующим образом: main.bat @echo off SetLocal EnableExtensions REM В процессе работы скрипта создаются некоторые переменные, REM которые должны быть перезадны двум консольным программам. REM При этом работа данного скрипта должна быть продолжена REM без ожидания завершения консольных пррограмм и вне зависимости REM от результатов выполения этих программ. set /a var1=2+2 REM start "First" cmd /c "Console_1.bat %var1%" start "" "%WRAP%" -sfxwaitall:1 cmd /c "Console_1.bat %var1%" set /a var2=4+6 REM start "Second" cmd /c "Console_2.bat %var2%" start "" "%WRAP%" -sfxwaitall:1 cmd /c "Console_2.bat %var2%" REM тем временем работа основного скрипта продолжается timeout 3 echo.Result: Any text >%UserDesktop%\main.txt exit /b Console_1.bat и Console_2.bat остаются без изменений и более не показывают консольные окна и переменные полученные в результате работы main.bat передаются далее. sfx.exe как положено дожидается завершения последнего дочернего процесса и рапортует "Done". Опять же хочу напомнить, что интерес больше спортивный, чем практический ![]() Заранее благодарю за ответы |
------- Отправлено: 05:19, 03-02-2016 | #334 |
Ушёл из жизни Сообщения: 6021
|
Профиль | Отправить PM | Цитировать Цитата vavun:
Открыл WordPad, написал нужный текст, подобрал нужные размеры и типы шрифта, цвета, отступы и т.д. Получил следующее: ![]() Сохранил текст в формате rtf, вставил его в конфиг, удалил теги, которые мне показались лишними (каждый раз проверяя полученный результат запуском конфига через Кнопку). Все! ![]() Цитата vavun:
Цитата vavun:
|
|||
Отправлено: 12:44, 03-02-2016 | #335 |
Пользователь Сообщения: 55
|
Профиль | Отправить PM | Цитировать Цитата gora:
![]() Поглядим, что из этого получится ) Цитата gora:
Цитата gora:
Практическая цель на данный момент одна: изучение возможностей модуля ) С реальными практическими целями пока трудностей не возникло, благо все довольно неплохо задокументировано ) Наверно вставить ссылку (кликабельную) таким образом не получится, а жаль ![]() BeginPrompt="{\rtf1\ansi\ansicpg1251\deff0\deflang1049{\fonttbl{\f0\fnil\fcharset0 Calibri;}} {\colortbl ;\red0\green0\blue255;} {\*\generator Msftedit 5.41.21.2510;}\viewkind4\uc1\pard\sa200\sl276\slmult1\lang9\f0\fs22{\field{\*\fldinst{HYPERLINK "http://forum.oszone.net/post-2602130-335.html"}}{\fldrslt{\ul\cf1 http://forum.oszone.net/post-2602130-335.html}}}\f0\fs22\par }" |
|||
------- Отправлено: 13:05, 03-02-2016 | #336 |
Пользователь Сообщения: 55
|
Профиль | Отправить PM | Цитировать Блин, никак
![]() Скрин
![]() |
------- Отправлено: 13:36, 03-02-2016 | #337 |
Ушёл из жизни Сообщения: 6021
|
Профиль | Отправить PM | Цитировать Цитата vavun:
Вот как пример использования переменной %DATE% в диалогах модуля. ;!@Install@!UTF-8! RunProgram="fm0:hidcon:cmd /c \"\"%%S\\%%M\" -ai -SetEnvironment=\"dat=%DATE%\"\"" AutoInstall="fm20:hidcon:cmd /c Echo" FinishMessage="Сегодня %dat%" GUIMode="2" ;!@InstallEnd@! Цитата vavun:
|
||
Отправлено: 15:04, 03-02-2016 | #338 |
Пользователь Сообщения: 55
|
Профиль | Отправить PM | Цитировать Цитата gora:
Только условный sfx.exe дважды распаковывается, а это минус в случае больших архивов. Поковыряюсь вечерком, может что придумаю Цитата gora:
|
||
------- Отправлено: 15:11, 03-02-2016 | #339 |
Пользователь Сообщения: 55
|
Профиль | Отправить PM | Цитировать Еще интересно, какие еще есть параметры на подобие -sfxwaitall ?
-sfxwaitall:0 равноценно RunProgram=" -sfxwaitall:1 равноценно RunProgram="hidcon: Больше пока выяснить не удалось. В исходниках смотрел, но я в этом ничерта не понимаю. Пробовал действовать по логике -sfxnowait -sfxforcenowait Но это не сработало ) Куда смотреть ? |
------- Отправлено: 15:43, 03-02-2016 | #340 |
![]() |
Участник сейчас на форуме |
![]() |
Участник вне форума |
![]() |
Автор темы |
![]() |
Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
Система - VMware (все вопросы) | 1 bit | Программное обеспечение Windows | 382 | 10-10-2019 23:34 | |
WinRAR SFX .:[все вопросы]:. | Devil-91 | Автоматическая установка приложений | 85 | 28-08-2013 15:37 | |
Доступ - Никак не удаляются файлы (AVI и все остальные форматы) .:[все вопросы]:. | Microsoft Windows 2000/XP | 105 | 30-06-2010 11:58 | ||
Все вопросы о Wi-Fi | vovikrus | Хочу все знать | 0 | 18-04-2010 09:53 | |
Вопросы по теме "Кнопка для работы с 7z SFX архивами в Total Commander." | ya158 | Автоматическая установка Windows 2000/XP/2003 | 4 | 18-11-2009 22:20 |
|