Кнопка для создания и работы с SFX архивами (на базе 7z архивов).


 

ВАЖНО!

Возможности кнопки


С помощью кнопки можно:

Ссылка для загрузки и содержимое архива


Последняя версия 4.2.5.2009 от 17.06.2012

 

Все необходимое для создания этой кнопки находиться в архиве.

Кнопка [x86\x64] с инсталлятором на сайте (1.38 МБ).

Язык интерфейса при установке выбирается автоматически: русский - для русской Windows, украинский - для украинской, белорусский - для белорусской, болгарский - для болгарской, английский - для остальных.

В архиве находится файл setup_button_x86_x64.exe, который является 7z SFX архивом. После установки, в указанном Вами месте (лучше оставить путь предложенный инсталлятором), будет создана папка SFX Tool в которой появятся:

Установка кнопки и подготовка к работе


Обе версии кнопки (x86 и x64) объединены в один инсталлятор. Кнопка может быть установлена в двух вариантах, которые выбираются интерактивно при установке:
 

Вариант работы в Total Commander (кнопка добавляется на панель ТС)
  • Директория установки кнопки - %COMMANDER_PATH%\Utilites, может быть изменена пользователем при запуске инсталлятора
  • Разрядность устанавливаемой кнопки определяется разрядностью ТС из которого произведен запуск инсталлятора
  • Для корректной работы инсталлятора в этом режиме должны быть соблюдены условия:
    • ТС х64 должен быть версии 8 beta 10 и выше, ТС х86 может быть любой версии
    • Файлы ТС должны иметь оригинальные имена Default.bar, TOTALCMD64.EXE или TOTALCMD.EXE
  • Удаление вручную
Кнопка в ТС

Для установки варианта работы в Total Commander требуется запустить TC и из него запустить инсталлятор - файл setup_button_x86_x64.exe. При этом сам файл, может располагаться где угодно.

При работе инсталлятора, в папке установки TC (у меня это E:\totalcmd64), будет создана (если ее нет) папка Utilites и в ней будет размещена папка SFX Tool со всеми необходимыми файлами. Должно получиться, что-то вроде E:\totalcmd64\Utilites\SFX Tool. Если Вы размещаете утилиты в другой папке в TC или вообще в другом месте, то при установке можете указать свою папку. Все необходимые изменения путей в кнопке будут сделаны автоматически. Файл Default.bar так же будет изменен (на всякий случай оригинальный файл будет сохранен под именем Default.bar.bak). На панели TC появиться новая кнопка , как показано на рисунке выше.

 

Вариант работы в оболочке (ярлыки добавляются в контекстное меню "Отправить")
  • Директория установки %ProgramFiles%
  • Разрядность устанавливаемой кнопки определяется разрядностью ОС
  • С ярлыками можно работать без использования спец. клавиш
  • При использовании спец. клавиш число ярлыков может быть сокращено (с шести до трех)
  • Удаление через апплет "Установка и удаление программ"
Кнопка в оболочке

Для установки варианта работы в оболочке требуется запустить инсталлятор - файл setup_button_x86_x64.exe.

При работе инсталлятора, в директории %ProgramFiles% будет создана (если ее нет) папка SFX Tool со всеми необходимыми файлами. Ярлыки добавляются в контекстное меню "Отправить", как показано на рисунке выше.

 

Дополнительные ключи установка кнопки


Строка запуска:

setup_button_x86_x64.exe -ai1 -gm2

Путь к исполняемому файлу TC, разрядность ТС (x86 или x64) и директория установки кнопки могут быть изменены.
Для этого нужно рядом с файлом setup_button_x86_x64.exe положить файл TCdataAl.txt следующего содержания:

c:\Program Files\totalcmd64\TOTALCMD64.EXE,x64,c:\Program Files (x86)\My Utilites

где перечисленные выше три параметра указаны через запятую, без пробелов и кавычек в одну строку.

Примечание: x64 версия кнопки может работать ТОЛЬКО на x64 ОС.


Строка запуска:

setup_button_x86_x64.exe -ai3 -gm2

Оба варианта (для TC и для оболочки) могут быть установлены в ОС одновременно, но работать с ними лучше по очереди.

О возможных проблемах при установке см. ниже.

Если при установке у Вас возникли проблемы, то внимательно прочтите эту справку и, если проблемы не исчезли, напишите письмо автору: gora

 

В работе кнопки используются:

Все перечисленные утилиты (кроме архиватора 7-Zip, UPX и signtool) скачивать НЕ требуется (они уже имеются в архиве) и перечислены здесь как знак моей благодарности их создателям и на случай если кому-то захочется познакомиться с ними поближе или обновить их.

Архиватор 7-Zip должен быть у каждого, кто захочет скачать и использовать кнопку.


Использование кнопки


ВАЖНО!

Ни какие файлы не удаляются и не изменяются, кроме временных, создаваемых программой во время работы. Все ваши исходные файлы останутся в неизмененном состоянии.


Описание сделано для варианта работы в Total Commander, но все функции кнопки доступны и для варианта работы в оболочке.
 
Комбинация спец. клавиш в TC Пункт в меню "Отправить" Действие
Button Основной, многофункциональный режим кнопки:
[Alt]+ Button [Options] Вызов диалога Опции для настроек кнопки.
[Ctrl]+ Button [Extract icons] Извлечение иконок из любого файла .exe, .dll, .ico и т.д.
[Shift]+ Button [Compression] Упаковка файлов и\или папок основным методом сжатия.
[Shift]+[Ctrl]+ Button [Compression +] Упаковка файлов и\или папок альтернативным методом сжатия.
[Shift]+[Alt]+ Button [Test archive] Тестирование или просмотр информацию об архиве.

 

Чтобы упаковать нужные файл(ы) и/или папку(и) в 7z архив, надо выделить всё подлежащее упаковке, или просто поместить курсор на файл/папку, если упаковать нужно только один объект. Затем нажать на кнопку , удерживая клавишу [Shift] или клавиши [Shift]+[Ctrl].

При сжатии может использоваться метод Deflate, LZMA, LZMA2 или PPMd. Если используется один из наиболее популярных методов (LZMA или LZMA2), то основной метод (любой из этих двух) выбирается в Опциях кнопки и используется при удерживании клавиши [Shift], а альтернативный - при удерживании клавиш [Shift]+[Ctrl].

В появившемся окне можно выбрать способ сжатия:

  1. Solid (непрерывный) архив дает максимальное сжатие. Пользователь видит процесс сжатия.
  2. Non-solid архив полезен, если Вы в дальнейшем собираетесь обновлять его или созданный на его основе SFX архив.
  3. Упаковка без сжатия полезна, если ваши объекты уже сильно сжаты, а надо выложить или переслать их одним файлом. В этом случае размер архива, полученный без сжатия, обычно меньше, чем размер со сжатием.
  4. Solid (непрерывный) архив дает максимальное сжатие. Архивирование производится консольным архиватором, что некоторых случаях, при больших размерах словаря, позволяет системе использовать бОльшую часть не фрагментированной памяти. Пользователь видит процесс сжатия в консольном окне.
Создание 7z архива

По умолчанию активной кнопкой в этом окне становиться кнопка "1 вариант", но если будет выбран максимальный размер словаря 128 Мб (для x86 систем), то активной кнопкой становиться кнопка "4 вариант".

Можно выбрать шифрование архива, отметив соответствующие чекбоксы, выбрать пароль из списка или задать новый пароль.

Можно выбрать создание файла контрольной суммы (.md5) для создаваемого архива, отметив соответствующий чекбокс.

Выбор параметров для сжатия производится автоматически исходя из возможности максимального использования ОЗУ компьютера. Размер выделенных папок/файлов и максимальный размер словаря Вы можете видеть в первом окне. Если последний Вас не устраивает, можете закрыть все неиспользуемые программы, и перезапустить сжатие.

В Опциях можно изменить число потоков, и некоторые параметры архивирования, которые будет использовать архиватор при сжатии.

После выбора и нажатия необходимого варианта (1, 2, 3) Вы увидите стандартное окно хода упаковки архиватора 7-Zip. Все кнопки управления процессом упаковки в этом окне доступны и работают как в стандартным режиме 7-Zip.

Окно процесса упаковки 7-Zip

В случае выбора варианта 4 сжатия консольным архиватором Вы увидите стандартное окно консольного архиватора. Вы можете отменить создание архива нажатием [Ctrl]+[C] на клавиатуре или закрытием консольного окна.

Окно консоли процесса упаковки

Чтобы создать SFX архива без замены иконки, надо выделить 2 файла:

  • 7z-архив (.7z)
  • файл конфигурации (расширение любое)

Чтобы создать SFX архив с заменой иконки, надо выделить 3 файла:

  • 7z-архив (.7z)
  • файл конфигурации (.txt)
  • файл иконки (.ico, .exe, .dll, и т.д.)

Чтобы создать SFX архив с заменой "копирайтов", надо выделить 3 файла:

  • 7z-архив (.7z)
  • файл конфигурации (.txt)
  • файл ресурсов (.res)

Чтобы создать SFX архив с заменой иконки и "копирайтов", надо выделить 4 файла:

  • 7z-архив (.7z)
  • файл конфигурации (.txt)
  • файл иконки (.ico, .exe, .dll, и т.д.)
  • файл ресурсов (.res)

По окончании появится окно с параметрами созданного SFX архива.

Вид окна зависит от использования в Опциях: UPX-а для сжатия модуля при создании SFX архива, пароля, цифровой подписи. Показанный второй вариант окна получен при использовании UPX, пароля и цифровой подписи.

Сообщение об окончании создания SFX архива

Сообщение об окончании создания SFX архива

При создании SFX архива: после выделения файлов, на одной из панелей TC (панель должна быть активной), и нажатия кнопки , SFX архив будет создан в том же каталоге (открытом в этой панели TC) с именем, полученным из имени 7-z архива заменой расширения с .7z на .exe.
Если SFX архив с таким именем уже существует, он будет перезаписан.

До создания SFX архива кнопка "на лету" производит определение методов сжатия, использованных в конкретном 7z архиве. По результатам этой проверки автоматически выбирается один из имеющихся модифицированных модулей, который и используется при создании SFX архива.

После успешного создания SFX архива появиться окно с информацией о размерах: созданного архива, ресурсов, использованного модуля, пароля, цифровой подписи.


Чтобы просмотреть ВСЕ диалоговые окна будущего архива (не создавая его) без замены иконки, надо выделить 1 файл или просто поместить курсор на:

  • файл конфигурации (расширение любое)

Чтобы просмотреть ВСЕ диалоговые окна будущего архива (не создавая его) с заменой иконки, надо выделить 2 файла:

  • файл конфигурации (.txt)
  • файл иконки (.ico, .exe, .dll, и т.д.)

При просмотре диалоговых окон будущего SFX архива: после выделения файлов (или просто помещении курсора на нужный файл конфигурации) на одной из панелей TC, и нажатия кнопки будут выведены ВСЕ диалоговые окна будущего SFX архива СРАЗУ в том виде, в каком они прописаны в файле конфигурации.

Сам SFX архив при этом создан, а тем более запущен, НЕ будет!

  Просмотр диалогов будущего SFX архива.

Чтобы просмотреть файл конфигурации созданного SFX архива, или извлечь и сохранить составные части SFX архива, надо выделить 1 файл или просто поместить курсор на:

  • файл SFX архива (.exe)

Это могут быть 7z, RAR, CAB и ZIP как с файлом конфигурации, так и без него.

Вид окна и число извлекаемых компонентов определяются типом SFX архива. Тип архива будет указан в окне.

Если хотите извлечь и просмотреть файл конфигурации, то необходимо поместить курсор на файл SFX архива и нажать кнопку .

В появившемся окне можно выбрать вариант извлечения компонентов:

  1. Извлечет и сохранит от трех до пяти компонентов присутствующих в SFX архиве (архив, файл конфигурации, иконку, файл ресурсов и SFX модуль). Число извлекаемых компонентов определяется в файле Settings.ini (отображается в скобках).
  2. Извлечет и сохранит все содержимое SFX архива в папку с именем архива. Дополнительно в этой папке будет сохранен файл конфигурации в имени которого будет использован суффикс _config.
  3. Извлечет, не сохраняя, файл конфигурации и откроет его в установленном по умолчанию текстовом редакторе.
  4. Извлечет, не сохраняя, "рабочий" файл конфигурации и откроет его в установленном по умолчанию текстовом редакторе.
  5. Покажет версию используемого в SFX архиве модифицированного модуля, версию исходников архиватора, на базе которых создан модуль и поддерживаемых модулем методах и фильтрах сжатия, а также опциях сборки модуля.
    ВАЖНО! Не пытайтесь просмотреть версию, если не уверены, что в SFX архиве используется модифицированный модуль (версия 1.1 beta сборка 301 и выше), т.к., в этом случае SFX архив будет запущен.

Версия модифицированного модуля

Извлечение компонентов 7z SFX архива
Извлечение компонентов RAR SFX архива
Извлечение компонентов CAB SFX архива
Извлечение компонентов ZIP SFX архива

Если файл не будет распознан как SFX архив, то будет предложено извлечение содержимого файла силами архиватора 7-Zip.

Частичное извлечение компонентов

   

Если файл не будет распознан как поддерживаемый архив, то Вы увидите следующее окно.

Извлечение компонентов невозможно


Чтобы извлечь и сохранить иконку из любого файла .exe, .dll, ico и т.д., надо выделить 1 файл или просто поместить курсор на:

  • файл иконки (.ico, .exe, .dll, и т.д.)

Затем нажать на кнопку , удерживая клавишу [Ctrl].

В появившемся окне можно выбрать вариант извлечения иконки(ок):

  1. Иконка со всеми форматами может вам потребоваться, для редактирования и выбора необходимых форматов.
  2. Иконка с выбранными пользователем форматами (например, 16х16 и 32х32, обычно достаточная для целей создания SFX архива). Хотя и она может содержать несколько вариантов этих форматов с разной глубиной цвета. Можете отредактировать и удалить ненужные вам варианты.
  3. Сразу несколько иконок. Каждая из них будет содержать выбранные пользователем форматы по размеру (например, 16х16, 32х32 и 48х48 пикселя) и один формат по глубине цвета (1, 4, 8, 16, 24, 32 бита), если таковые имеются в исходном файле. Если ваш SFX архив предназначен для установки приложения на Т-13/Т-12 этапе установки Windows, то вряд ли Вам нужны иконки с 16, 24, 32 битами цвета. Можно выбрать менее "увесистые" иконки.
Извлечение иконки из произвольного файла

Чтобы распаковать архив в папку с именем архива (будет создана) надо выделить 1 файл или просто поместить курсор на:

  • файл архива (001 7z zip rar cab chm iso arj tar bz2 wim msi msp)

Папка с именем архива будет создана в директории, в которой расположен файл архива. Если папка с таким именем уже существует, то вновь созданная папка будет иметь в имени штамп дата/время (при условии что штамп дата/время разрешен в ini файле). В противном случае извлекаемые файлы перезапишут одноименные файлы в папке приемнике без предупреждения.

Если архив зашифрован, то будет проверен пароль, введенный в Опциях. В случае если пароль подходит, то архив распаковывается без запроса пароля. В противном случае появится окно ввода пароля необходимого для распаковки.


Если Вы ошиблись и выделили неподходящие по задаче (создание/просмотр диалоговых окон SFX архива) файлы - будет выведено сообщение с предположительными причинами ошибки.

Здесь же Вы можете нажать кнопку "Справка" и прочитать про кнопку подробнее.

Окно ошибки со справкой

Чтобы протестировать архив и\или получить о нем техническую информацию, нужно выделить 1 файл или просто поместить на него курсор, и нажать на кнопку , удерживая клавиши [Shift]+[Alt]. При этом появится окно, в котором Вы сможете выбрать режим тестирования архива.

Окно тестирования архива

Создание аддона

Этот режим предназначен для автоматизации процесса сборки и обновления аддонов со способом интеграции SVCPACK.

Для его использования нужно произвести некоторые подготовительные операции:

1 В папке, где будет создаваться аддон (назовем ее просто - "Addon_example"), должны лежать:

Наличие папки и всех перечисленных файлов (кроме опциональных) обязательно. Названия файлов изменять нельзя кроме слова name. Вместо name нужно будет подставить короткое имя аддона. Что это такое, смотрите ниже.
 

2 В папку name положите все файлы вашей программы. Назначение файлов: Run, addon.nfo, name.ico, Html.nfo, Required, Conflict - думаю понятно.
 

3 Файл name_config.txt - обыкновенный файл конфигурации для модифицированного модуля от Oleg_Sch с нужными Вам параметрами.
 

4 Файл name.res - файл "копирайтов". В нем только добавлены несколько строк для работы в режиме создания аддона (на примере аддона Universal_Extractor_1.6.1.59):

 
;@Resources@ANSI-1251@
;fstbildat=26.08.2008
;name=UExtract
;fullname=Universal_Extractor_1.6.1.59
;vers=v1.6.1.59
;versInf=1.6.1.59
;FstLinAddNfo=Universal Extractor 1.6.1 Release (build 59 *)
;certificate=gora sah
;parcompres=pb2:lp0:lc4:fb157
;Pass=1
-pv "1.6.1.%autobuild%"
-fv "1.6.1.%autobuild%"
-vs "FileVersion=Version of a file %versInf%"
-vs "ProductName=Universal Extractor %vers%"
-vs "ProductVersion=Version of a product %versInf%"
-vs "FileDescription=Universal Extractor %vers% 7zSFX archive"
-vs "Comments=Extract data from any type of installers"
-vs "CompanyName=Company 'gora-sah'"
-vs "InternalName="
-vs "LegalCopyright=http://forum.oszone.net/thread-81059.html"
-vs "LegalTrademarks=Still is not present"
-vs "OriginalFilename=UExtract.exe"
-vs "PrivateBuild=%date%"
-vs "SpecialBuild=Only for users 'oszone.net' & 'ryanvm.net'"
Окно создания аддона
  • Первая строка (fstbildat) - дата первого релиза вашего аддона. (опционально)
     
  • Вторая строка (name) - как раз тот самый name, который должен быть во всех именах папки и файлов. Имя должно содержать не более 8 символов и не сдержать пробелов! Это будет имя инсталлятора - 7z SFX архива.
     
  • Третья строка (fullname) - полное имя вашего аддона. Имя может содержать любое число символов (в разумных пределах конечно) и не сдержать пробелов! (желательно)
     
  • Четвертая строка (vers) - версия. (опционально)
    Предназначена для замены строки в файле конфигурации в котором она должна иметь следующий формат: 
  • SetEnvironment="Vers= v1.6.1.59"

  • Пятая строка (versInf) - версия. (опционально)
    Предназначена для замены строки в файле name.inf в котором она должна иметь следующий формат:
  • PROG_VERS	 ="1.6.1.59"
    После PROG_VERS должен следовать знак табуляции, а не пробел. Сам файл name.inf должен находиться в папке <name>.
     
  • Шестая строка (FstLinAddNfo) - предназначена для замены целиком первой строки в файле addon.nfo, чтобы ее не приходилось менять вручную. (опционально)
    Дополнительно в файле addon.nfo корректируется дата в последней строке, которая должна иметь следующий формат:
  • © gora, 24.11.2011
    Дата должна стоять в строке последней и иметь указанный формат, в этом случае она будет автоматически заменена на текущую дату.
     
  • Седьмая строка (certificate) - имя издателя сертификата для добавления цифровой подписи. (опционально)
     
  • Восьмая строка (parcompres) - параметры сжатия. (опционально)
    Здесь можно указать оптимальные параметры сжатия для конкретного аддона. Параметры могут быть определены экспериментально на вкладке 'Тест сжатия'.
    Данные в строке должны иметь следующий формат:
  • pb2:lp0:lc4:fb157
    Подробнее о параметрах и их значениях можно прочитать в справке архиватора.
    Примечание
    : Любые неточности в формате записи или неправильно выбранные значения параметров могут привести к ошибке архивирования.
     
  • Девятая строка (Pass) - режим однопроходного сжатия. (опционально)
    Выходной архив аддона будет упакован без сжатия (режим Copy). Полезно для аддонов в несколько десятков МБ и более.

Примечание: Переменные %vers% и %versInf% могут использоваться в текстовых строках копирайтов (-vs) файла name.res.

После того как Вы подготовите все описанные файлы и папку, установите курсор на файл name.res и нажмите кнопку

После этого в указанной папке будет создан полноценный аддон, со всей структурой папок и файлов, запакованный в "транспортировочный" архив и файл инсталлятора для возможности оперативной проверки аддона.

Если была отмечена опция 'Создавать файл .md5 для архива', то автоматически будет создан файл контрольной суммы с именем архива и расширением .md5.

 

Описание настроек (диалог Опции)


Чтобы вызвать диалог Опции для редактирования, нужно нажать на кнопку , удерживая клавишу [Alt]. После окончания редактирования его нужно сохранить, нажав кнопку OK.

Если Вы устанавливали кнопку с помощью инсталлятора (неважно меняли или не меняли путь по умолчанию), то изменять ни чего не надо! Все должно работать.

ВАЖНО! Изменять вручную параметры в файле Settings.ini НЕЛЬЗЯ!
 

Окно Опции, вкладка Настройки Окно Опции, вкладка Свойства


Большинство параметров интуитивно понятны, однако некоторые требуют комментариев.

x86 \ x64

Определяет набор модулей, которые будут использованы при создании SFX. Модули x86 могут использоваться на системах x86 и x64, модули x64 могут использоваться только на системах x64. Некоторые возможности кнопки (Сжатие модулей UPX и Объединение секций ресурсов) в режиме x64 использоваться не могут и отключаются.

 

Штамп добавляемый к имени архива

Штамп имени выходных файлов создаваемых кнопкой: filename_MC_DT_TM (filename - постоянная часть)

  1. MC - ModeCompression, состоит из трех групп. Первые две обязательно присутствуют, а третья опциональна.
  1. DT - DaTe (_yyMMdd)
  2. TM - TiMe (_hh-mm)

Любой из трех компонентов штампа или все сразу могут отсутствовать. Последовательность компонентов в имени выходного файла ПОСТОЯННАЯ.
 

Максимальный размер иконки

Определяет максимальный размер иконки, с которыми будут производиться операции. Допустимые значения: 32 (32х32), 48 (48х48), 64 (64х64), 96 (96x96), 128 (128x128). В кнопке используется следующий ряд значений форматов 16, 20, 24, 32, 40, 48, 64, 96, 128, поэтому выбор значения, например, 48 означает, что будут использованы иконка всех форматов 16, 20, 24, 32, 40, 48 которые будут найдены в файле источнике.

Имеет приоритет перед параметром 'Набор форматов иконок'.

 

Набор форматов иконок

Собственный набор размеров иконок, любые значения могут отсутствовать. Максимальный размер иконки - 128. Извлечены будут иконки с указанными размерами только в случае их наличия в файле источнике.

Работает только если в параметре 'Максимальный размер иконки' выбрано использовать 'Набор форматов ...'.

 

Размер словаря при архивировании

Прямое указание используемого при сжатии размера словаря в МБ. При наличии этого параметра размер словаря не будет автоматически вычисляться и оптимизироваться под конкретный размер архивируемых данных и памяти компьютера.

Имеет приоритет перед параметром 'Использование RAM при архивировании'.
 

Использование RAM при архивировании

"Процент" использования памяти при выборе размера словаря для сжатия архива:

Число извлекаемых компонентов

Число извлекаемых из SFX архива компонентов (3...5) при нажатии "Да" в окне "Извлечение компонентов SFX архива". Список компонентов, которые могут быть извлечены:

  1. 7z архив
  2. Файл конфигурации
  3. Иконка
  4. Файл ресурсов
  5. SFX модуль

Число 3 означает, что будут извлечены только первые 3 компонента по списку, а число 4 означает, что будут извлечены только первые 4 компонента по списку.
 

Время показа сообщения о создании SFX

Таймер на автоматическое закрытие окна сообщения об успешном создании SFX архива. Время в секундах.
 

Время показа сообщения 'ExtractTitle'

Выдержка для имитации процесса распаковки архива в диалоговом окне 'ExtractTitle' SFX архива. Время в секундах.
 

Время показа сообщения 'FinishMessage'

Выдержка для имитации работы таймера в диалоговом окне 'FinishMessage' SFX архива.

Допустимый диапазон 1...999, при 1 - окно будет отображаться постоянно, без таймера. Значение 0 НЕ используйте т.к. это запретит вывод окна даже при его наличии. Время в секундах.
 

Сжимать модуль UPX-ом. Командная строка

Если Вы хотите еще больше уменьшить размер SFX архива, можно сжать модуль бесплатной утилитой UPX. Однако, SFX архивы, созданные при помощи сжатых модулей, МОГУТ вызвать ложное срабатывание некоторых антивирусных программ, о чем Вы теперь предупреждены.

Для включения этой опции необходимо наличие файла упаковщика (UPX.exe) в папке кнопки рядом с файлом Button.exe (в комплект кнопки не входит и скачивается пользователем самостоятельно)

Имеет приоритет перед параметром 'Применять UPX, только если архив менее'.

 

Применять UPX, только если архив менее

Размер 7z архива в килобайтах. Если размер 7z архива будет больше указанной в этом параметре величины, то UPX сжатие модуля, при изготовлении SFX архива, применяться не будет. Удаление этого параметра означает, что UPX сжатие модуля будет применяться всегда.

При отсутствии параметра cmdlinUPX данный параметр игнорируется.

 

Добавлять цифровую подпись. Сертификат

Добавляет цифровую подпись из сертификата от выбранного издателя. Для включения этой опции необходимо наличие файла signtool.exe с соответствующей библиотекой в папке кнопки рядом с файлом Button.exe (в комплект кнопки не входит и скачивается пользователем самостоятельно), а также наличие в системе установленного сертификата от выбранного издателя и возможности использования его для цифровой подписи.

 

Добавлять время в цифровую подпись

Добавляет штамп дата/время в цифровую подпись, требует наличия доступа в интернет.

 

Объединять секции ресурсов SFX

Объединение секций ресурсов модуля. Позволяет немного уменьшить (до 512) размер получаемого SFX.

 

Создавать файл .md5 для архива

Автоматически создает файл формата .md5 для создаваемого архива формата .7z. Этот файл создается рядом с файлом архива и имеет имя этого архива.

 

Облегченный режим компилятора

Создает SFX архив без создания структуры папок аддона, не добавляет ни каких дополнительных файлов требующихся полноценному аддону, и упаковывает этот SFX в архив. Удобно для отладки SFX или, если Вы не собираетесь использовать его в качестве аддона.

 

Описание вкладки 'Свойства SFX', файла ресурсов (.res) и его использования


Здесь можете указать Ваши данные. Можно использовать кириллицу.

Любой из этих параметров может отсутствовать. В файле .res параметры можно закомментировать (символ ';' в начале строки). При этом, в созданном Вами SFX архиве, останется информация наследуемая из модифицированного модуля, соответствующая отсутствующему параметру. Исключением из этого правила являются параметры 'ProductVersion' и 'FileVersion' на вкладке 'Свойства SFX' и их аналоги '-pv' и '-fv' в файле .res см. ниже.

Значения в параметрах 'ProductVersion' и 'FileVersion' на вкладке 'Свойства SFX' и их аналоги '-pv' и '-fv' в файле .res отсутствовать НЕ могут и должны быть представлены в следующем формате. Значение должно состоять из четырех чисел разделенных точками. Каждое число может быть в диапазоне 0...65535. Данный формат изменять НЕЛЬЗЯ.

Во всех остальных параметрах может быть произвольный текст, или значения могут отсутствовать (в файле .res после знак равно '=' ничего нет). В последнем случае, в созданном Вами SFX архиве, информация, соответствующая параметру, будет пустой (будут стерты значения, наследуемые из модифицированного модуля).

 

;@Resources@ANSI-1251@
-pv "0.6.1.170"
-fv "0.6.1.170"
-vs "ProductVersion=Версия продукта 6.1"
-vs "FileVersion=Версия файла 6.1 сборка 170"
-vs "Comments=Кнопка для работы с 7z SXF архивами"
-vs "CompanyName=Компания 'gora-sah'"
-vs "FileDescription=7z SFX archive tool"
-vs "InternalName=Button for TC"
-vs "LegalCopyright=Ни каких прав нет (пока?)"
-vs "LegalTrademarks=Еще нет"
-vs "OriginalFilename=Button.exe"
-vs "PrivateBuild=31.05.2007"
-vs "ProductName=Button TC #6"
-vs "SpecialBuild=Только для пользователей TC ;)"

 

Вот так может выглядеть файл .res, извлеченный из SFX архива, или созданный кнопкой 'Сохранить'.

Его формат не является стандартным форматом файла ресурсов, поэтому, не пытайтесь использовать его в других программах и наоборот.

Файл ресурсов, применяемый в кнопке, - простой текстовый файл, сохраненный в кодировке ANSI-1251 (кодировка по умолчанию в которой сохраняет "Блокнот"), но имеет расширение .res.

Первая строка (;@Resources@ANSI-1251@) является сигнатурой, изменять ее написание или переносить в другое место нельзя. Все остальные параметры могут быть закомментированы или удалены.

В файле допускаются комментарии, которые должны предваряться символом (;).

Допускается использование параметра 'fstbildat' в виде закомментированной строки (лучше второй строкой), например: ;fstbildat=17.12.2006. При этом, заключать в кавычки ничего не надо. Работает этот параметр так же, как параметр 'Дата первого выпуска Вашего SFX' на вкладке 'Cвойства SFX', но имеет перед ним приоритет.
Использование переменных %autobuild% и %date% допускается.

При одновременном использование параметров из вкладки 'Cвойства SFX' и файла .res одноименные параметры в файле .res будут иметь приоритет. Это можно использовать следующим образом.

Вы можете оставить на вкладке 'Cвойства SFX' параметры, имеющие постоянное значение, например, 'CompanyName', 'LegalCopyright', 'LegalTrademarks' и т.д., а в файле .res опустить эти параметры и оставить только те, которые непосредственно касаются создаваемого Вами SFX архива.
Это позволит Вам не корректировать файл Settings.ini каждый раз, а иметь для каждого проекта свой файл ресурсов меньшего размера.

Описание вкладки 'Тест сжатия'


Здесь можете произвести тестовое сжатие папки (путь к ней указывается в строке Папка для тестового сжатия) для подбора оптимальных параметров сжатия для выбранных данных. Тестирование доступно для методов LZMA и LZMA2 (метод выбирается на вкладке Настройки).

Лог тестирования может быть сохранен в файл (путь к нему указывается в строке Сохранять лог тестирования в) для дальнейшего анализа результатов. Лог постоянно дописывается и может содержать результаты нескольких тестов. Лог дополнительно отображается в окне на вкладке.

В ходе тестирования кнопки в диалоговом окне временно блокируются (их действие отсрочено до завершения тестирования), поэтому не рекомендуется нажимать на них до окончания тестирования. Прервать тестирование можно нажатием клавиши [Esc] на клавиатуре.

Лучшие параметры сжатия будут показаны в строке Параметры сжатия после окончания тестирования. В этой же строке, в квадратных скобках [pb2:lp0:lc3:fb64], указаны параметры сжатия, используемые архиватором по умолчанию.

 

Удаление кнопки для варианта работы в ТС


Для удаления кнопки и всех файлов, установленных при работе инсталлятора для варианта работы в ТС, достаточно удалить папку SFX Tool и кнопку с панели TC (щёлкните правой кнопкой мыши по кнопке и выберите пункт "Удалить").

Ни каких дополнительных файлов и записей в реестре ни инсталлятор, ни кнопка во время работы не делают!

 

Возможные проблемы для варианта работы в ТС


Могут возникнуть проблемы с установкой кнопки, если Вы используете не оригинальный TC, а одну из многочисленных сборок. Авторы сборок зачастую позволяют себе удалять или переименовывать фалы оригинального TC и предугадать все их "фантазии" в инсталляторе невозможно. В любом случае, папка кнопки (папка SFX Tool со всеми необходимыми файлами) будет установлена в указанное (инсталлятором или Вами) место, а вот кнопку на панели TC, возможно, придется сделать вручную.

Код кнопки

TOTALCMD#BAR#DATA
Button.exe
%L
%COMMANDER_PATH%\Utilites\SFX Tool\Button.exe
7z SFX tool v4.2.5 [x64]
%COMMANDER_PATH%\Utilites\SFX Tool\

-1

 

Чтобы создать кнопку, скопируете ее код в буфер обмена, затем щёлкните правой кнопкой по пустому месту на панели инструментов TC, и выберите пункт "Вставить" (этот пункт появится только в том случае, если в буфере обмена у вас правильный код кнопки).

Ручная установка кнопки

На панели появится новая кнопка . В некоторых случаях у кнопки может не появиться иконка - тогда попробуйте выбрать пункт "Изменить..." на этой кнопке, но не применяйте никаких изменений (это заставит TC обновить иконки на панели).

Если Вы установили кнопку не в папку, предложенную инсталлятором, а в свою, то нужно будет поправить пути в строках 4 и 6 кода кнопки.

 


 

Все, можете пользоваться!

Всем желаю успехов.

© gora, 17.06.2012

Рейтинг@Mail.ru