4

Можно ли изменить функцию «Отправить в сжатую (заархивированную) папку», чтобы создать zip-файл в заданном каталоге, а не в текущем каталоге?

Кроме того, любая информация, которой может поделиться кто-либо о том, как работает эта функция (Ярлык, кажется, открывает Compressed (zipped) Folder.ZFSendToTarget , который выглядит как 0-байтовый файл ?!), был бы признателен.

1 ответ1

1

Одним из простых решений является установка 7-zip (или другого стороннего инструмента, но, в частности, 7-zip поддерживается в хорошем состоянии, бесплатен и поддерживает обычные zip-файлы, а также другие форматы.)

И при установке убедитесь, что опция включена, чтобы сделать ее обработчиком по умолчанию для zip, что также сделает ее обработчиком для этих сжатых файлов. Но что действительно делает это хорошее решение IMO, так это то, что оно включает несколько настраиваемых параметров контекстного меню, в том числе один для сжатия в папку в заданном месте.

Еще один более сложный вариант, если вы не хотите использовать 7zip, может состоять в том, чтобы создать командный файл для архивирования из командной строки, а затем переместить в нужное место. Затем добавьте этот файл bat в контекстное меню вручную.

Редактирование и обновление на основе комментариев

Встроенная утилита сжатия называется "сжатые папки Windows" и запускается с использованием очень ограниченной функциональности «zipfldr.dll», которая не включает в себя такую возможность как есть через rundll32.exe. Тем не менее, кажется, что есть интерфейс VBScript для него.

Также я должен добавить, что если вы хотите распространять приложение или что-то в этом роде, не требуя от пользователя загрузки другого приложения, другой возможностью было бы включить dll 7zip как часть вашего собственного пакета с оговоркой, которая вам понадобится придерживайтесь того же GPL для вашего приложения.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .