Game-Edition.Ru

Общение => О разном по чуть-чуть => Тема начата: KREKER12345 от 28 Февраля 2015, 22:19:43

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

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

[attach=1]

Файлы в таких архивах нельзя изменять, как это привычно делается в том же 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]


То же можно делать с папками. Чего нельзя сделать с помощью этого способа - запаковать в один архив несколько файлов. Получается каждый файл - это отдельный архив.
Название: Re: Запаковка файлов в *.CAB - архивы
Отправлено: KREKER12345 от 10 Августа 2016, 18:40:52
Ещё один вариант быстрой запаковки в  *.cab  -  утилита  CabTools,  вытащенная из сборки  ZverDVD v.1.6.  Не мусорит в контекстном меню, прописывая ярлыки в пункт  "Отправить".

[attach=1]

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



[attach=2]