Автор Тема: Запаковка файлов в *.CAB - архивы  (Прочитано 9751 раз)

0 Пользователей и 1 Гость смотрят эту тему.

Оффлайн KREKER12345

  • Ветеран
  • *****
  • Сообщений: 763
  • Пол: Мужской
    • Просмотр профиля
Запаковка файлов в *.CAB - архивы
« : 28 Февраля 2015, 22:19:43 »
САВ - архивы применяются в установочных дисках WINDOWS, так что эта инфа будет полезна начинающим создателям сборок.

*.САВ-архив распаковать можно даже WinRAR-ом, но не запаковать.

ila_rendered

Файлы в таких архивах нельзя изменять, как это привычно делается в том же WinRAR-е. Здесь нужно распаковать файл, изменить его, и потом запаковать. Самый простой способ сделать это - использовать встроенную функцию WINDOWS, которая предназначена специально для этого. Оказывается есть такая! Но нужны "прямые руки" чтобы суметь её задействовать хотя бы частично. Для этого нужно всего лишь применить файл реестра который добавит пункт Запаковать в *.cab в контекстное меню. Архив создаётся в той же папке что и файл, и ему присваивается то же название что и у файла, но с обрезанным последним символом заменённым на символ "подчёркивание". Архив файла abcde.dll будет иметь вид: abcde.dl_

Файл реестра для добавления:
 Спойлер:
Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\*\Shell]

[HKEY_CLASSES_ROOT\*\Shell\astext]
@="Как текст..."

[HKEY_CLASSES_ROOT\*\Shell\astext\command]
@="notepad.exe \"%1\""

[HKEY_CLASSES_ROOT\*\Shell\Expand]
@="Распаковать .cab"

[HKEY_CLASSES_ROOT\*\Shell\Expand\command]
@="expand -r \"%1\""

[HKEY_CLASSES_ROOT\*\Shell\MakeCab]
@="Запаковать в .cab"

[HKEY_CLASSES_ROOT\*\Shell\MakeCab\command]
@="makecab /D CompressionType=LZX /D CompressionMemory=21 \"%1\""

[HKEY_CLASSES_ROOT\Directory\shell\CabPack]
@="Запаковать папку в .cab"

[HKEY_CLASSES_ROOT\Directory\shell\CabPack\command]
@="cabs.cmd %L"


Файл реестра для отката настроек контекстного меню:
 Спойлер:
Windows Registry Editor Version 5.00

[-HKEY_CLASSES_ROOT\*\Shell\astext]

[-HKEY_CLASSES_ROOT\*\Shell\Expand]

[-HKEY_CLASSES_ROOT\*\Shell\MakeCab]

[-HKEY_CLASSES_ROOT\Directory\shell\CabPack]


То же можно делать с папками. Чего нельзя сделать с помощью этого способа - запаковать в один архив несколько файлов. Получается каждый файл - это отдельный архив.
« Последнее редактирование: 28 Февраля 2015, 22:25:47 от KREKER12345 »

Оффлайн KREKER12345

  • Ветеран
  • *****
  • Сообщений: 763
  • Пол: Мужской
    • Просмотр профиля
Re: Запаковка файлов в *.CAB - архивы
« Ответ #1 : 10 Августа 2016, 18:40:52 »
Ещё один вариант быстрой запаковки в  *.cab  -  утилита  CabTools,  вытащенная из сборки  ZverDVD v.1.6.  Не мусорит в контекстном меню, прописывая ярлыки в пункт  "Отправить".

ila_rendered

Особенностью является мгновенное преобразование файла в архивный (и наоборот), в отличие от других подобных утилит. То есть после распаковки  *.cab-архива будем лицезреть распакованный файл, но самого архива в текущей папке уже не будет.



* CabTools.rar (80.19 кБ - загружено 1755 раз.)