Как WinXP «Отправить в сжатую (заархивированную) папку» решает, что включать в zip-файл? - PullRequest
4 голосов
/ 27 августа 2008

Я не слишком удивлюсь, если меня уволят за то, что я задал вопрос "не программирования", но, возможно, кто-то знает ...

Я заархивировал содержимое своей песочницы subversion, используя встроенную в WinXP функцию «Отправить в сжатую (zip) папку», и с удивлением обнаружил, что созданный файл .zip не содержит каталогов .svn и их содержимого.

Я всегда предполагал, что все файлы были включены, и я не могу определить, какое свойство / опция / атрибут контролирует включение или нет. Кто-нибудь может помочь?

Спасибо, Том

EDIT:

Так, нет ли умного способа решить проблему? Настоящая проблема (показывать скрытые файлы со значением true. Папки .svn не сжимаются, поскольку Windows не считает их действительными папками) до сих пор остается без ответа.

Спасибо ...

Ответы [ 7 ]

4 голосов
/ 27 августа 2008

Отправить в zip-папку не перемещается в папки без имен перед точкой (например, ".svn"). Если бы у вас были другие папки, начинающиеся с точек, они также не были бы включены. Файлы без имен не исключаются. Скрытый атрибут не входит в игру.

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

1 голос
/ 07 января 2010

Реализация «Отправить в сжатую папку» в Windows 7 ведет себя по-разному - она ​​включает в себя файлы / папки, начинающиеся с точки (например, «.SVN») в zip-файле.

1 голос
/ 27 августа 2008

«Отправить в -> Сжатая (заархивированная) папка» создает zip-файл. То, что он вставляет туда, зависит от ваших настроек. Он не включает скрытые файлы с настройками по умолчанию. Если у вас установлены настройки просмотра проводника, в которых Kibbee упоминается как «Показывать скрытые файлы и папки», то «Отправить в -> Сжатую (сжатую) папку» поместит скрытые файлы в zip-файл.

В XP есть то, что я бы назвал ошибкой, когда скрытые папки не включаются при повторном использовании дерева папок. Вы можете получить их, если они находятся в той папке, в которой вы находитесь. Повторение работает в Vista.

Файлы, начинающиеся с "." не имеет ничего особенного для Windows, за исключением того, что Windows Explorer не позволит вам его создать. Это допустимое имя файла.

Я бы рекомендовал использовать что-то вроде 7-Zip , если ваши папки содержат скрытые / системные файлы / папки.

1 голос
/ 27 августа 2008

Может не включать файлы, которые вы обычно не видите. Или файлы могут быть там, но вы не сможете увидеть их при повторном открытии .zip файла в проводнике, потому что они скрыты. Вы можете перейти в Сервис-> Параметры папки, перейти на вкладку Вид и выбрать переключатель, чтобы просмотреть скрытые файлы и папки.

0 голосов
/ 28 июля 2009

Наконец, я обнаружил, что не существует простого способа ZIP-архивации папок .svn, и поэтому я перешел на winRAR. Альтернативно вы также можете использовать winZip.

0 голосов
/ 27 августа 2008

Похоже, что расширение оболочки «Сжатая папка» игнорирует каталоги (но не файлы), имена которых начинаются с точки, если явно не задан в качестве параметра (т. Е. Выбран для команды «Отправить»).

Трудно выяснить, что еще исключается, поскольку я даже не могу узнать, что элемент sendto «сжатой папки» делает в первую очередь, не обращаясь к сторонней документации.

Edit:

ОК, ярлык sendto для «Отправить в сжатую папку» имеет расширение .ZFSendToTarget, которое обрабатывается zipfldr.dll, который выполняет всю работу.

@ Kibbee:
У меня во время архивирования есть скрытые папки, хотя у меня включено «показывать скрытые файлы».

0 голосов
/ 27 августа 2008

Сжатая папка не означает, что это будет файл .ZIP, сжато только содержимое папки, и она будет выглядеть как обычная папка

...