Питання і відповіді (FAQ)

Зміст
  1. Питання користувачів
  2. Чи можу я використовувати 7-Zip в комерційних організаціях?
  3. Як я можу встановити асоціації файлів на 7-Zip у Windows 7 та Windows Vista?
  4. Чому архіви 7z, створені новою версією 7-Zip, можуть бути більшими, ніж архіви, створені старою версією?
  5. Чому версія командного рядка не додає файли без розширень до архіву?
  6. Чому 7-Zip не відкриває деякі архіви ZIP?
  7. Чому 7-Zip не може відкрити деякі архіви RAR?
  8. Чому для отримання файлів з архіву шляхом перетягування з інтерфейсу 7-Zip до Провідника Windows використовуються тимчасові файли?
  9. Чому 7-Zip не підтримує великі словники у Windows 32-bit?
  10. Чому -r switch не працює так, як потрібно?
  11. Як мені зберегти повний шлях файлу в архіві?
  12. Як встановити 7-Zip в тихому режимі?
  13. Як я можу відновити пошкоджений 7z архів?
  14. Питання розробників
  15. Чому при компіляції в Visual C++ 6.0 архіватора 7-Zip або LZMA SDK виникає помилка?
  16. Чи можу я використовувати файли EXE або DLL архіватора 7-Zip в комерційних застосуваннях?
  17. Як мені додати підтримку архівів 7z до мого ПЗ?
  18. Чи можу я використовувати початковий код 7-Zip в комерційних програмах?

Питання користувачів

Чи можу я використовувати 7-Zip в комерційних організаціях?

Так, 7-Zip це безкоштовна програма. Ви можете використовувати її на будь-якому комп’ютері. Ви не повинні реєструвати або платити за 7-Zip.

Як я можу встановити асоціації файлів на 7-Zip у Windows 7 та Windows Vista?

Потрібно запустити 7-Zip File Manager в режимі адміністратора. Клацніть правою кнопкою миші іконку 7-Zip File Manager і оберіть пункт «Запустити як адміністратор». Там ви можете змінити асоціації файлів та деякі інші параметри.

Чому архіви 7z, створені новою версією 7-Zip, можуть бути більшими, ніж архіви, створені старою версією?

Нові версії 7-Zip (починаючи з версії 15.06) використовують інший порядок сортування файлів за замовчуванням для безперервних 7z архівів.

Стара версія 7-Zip (до версії 15.06) використовувала сортування файлів «за типом» (розширенням).

Нова версія 7-Zip підтримує два типи сортування:

  • Сортування за назвою (за замовчуванням);
  • Сортування за типом, якщо в полі Параметри у вікні «Додати в архів» вказано ‘qs’ (або -mqs перемикач для версії командного рядка).

Ви можете отримати велику різницю в коефіцієнті стиснення для різних методів сортування, якщо розмір словника менший за загальний розмір файлів. Якщо в різних папках є подібні файли, сортування «за типом» може забезпечити кращий коефіцієнт стиснення в деяких випадках.

Зауважте, що сортування «за типом» має деякі недоліки. Наприклад, томи NTFS використовують порядок сортування «за назвою», тому якщо в архіві використовується інше сортування, то швидкість деяких операцій для файлів з незвичним порядком може падати на пристрої HDD (жорсткі диски мають низьку швидкість для операцій «шукати»).

Можна збільшити коефіцієнт стиснення за допомогою таких методів:

  • Збільшити розмір словника. Це може допомогти, коли ‘qs’ не використовується.
  • Вкажіть ‘qs’ у полі Параметри (або використовуйте перемикач -mqs для версії командного рядка).

Якщо ви вважаєте, що незвичний порядок файлів для вас не є проблемою, і якщо кращий коефіцієнт стиснення з невеликим словником для вас важливіший, скористайтеся режимом ‘qs’.

Чому версія командного рядка не додає файли без розширень до архіву?

Можливо ви використовуєте шаблон *.*. 7-Zip не використовує парсер маскування операційної системи, і тому приймає шаблон *.* як файл, що має розширення. Для обробки всіх файлів ви повинні використовувати шаблон * або відмінити шаблони взагалі.

Чому 7-Zip не відкриває деякі архіви ZIP?

У 99% випадків це означає, що архів містить неправильні заголовки. Деякі інші програми для роботи з архівами ZIP уміють відкривати архіви з неправильними заголовками, якщо вони ігнорують ці помилки.

Якщо ви зіткнулися з такими архівами, будь ласка не намагайтеся повідомити про це розробникам 7-Zip. Замість цього спробуйте знайти програму, яка використовувалася для створення цього архіву і проінформуйте її розробників про те, що їх програмне забезпечення не сумісне з форматом zip.

Існує також кілька типів архівів ZIP, що закодовано непідтримуваними 7-Zip методами. Серед них: PPMd (WinZip), WAVPack (WinZip), pkAES (PkZip).

Чому 7-Zip не може відкрити деякі архіви RAR?

7-Zip 9.20 підтримує лише формати RAR 2/3/4 і не підтримує архіви RAR5. Але останні версії 7-Zip підтримують архіви RAR5.

Чому для отримання файлів з архіву шляхом перетягування з інтерфейсу 7-Zip до Провідника Windows використовуються тимчасові файли?

7-Zip не знає шлях до папки, яка є ціллю перетягування. Тільки Провідник Windows знає його, і він потребує для перенесення в цю папку розархівованих файлів. Тож 7-Zip витягує файли з архіву в папку temp, а потім 7-Zip повідомляє Провіднику Windows про шлях до цих тимчасових файлів. Потім Провідник Windows копіює ці файли, щоб перемістити в цільову папку.

Щоб уникнути використання тимчасових файлів, ви можете скористатися командою «Видобути файли…» 7-Zip або здійснити перетягування з 7-Zip в 7-Zip.

Чому 7-Zip не підтримує великі словники у Windows 32-bit?

Windows 32-bit виділяє тільки 2 GB віртуальної пам’яті для однієї програми. Крім того блок розміром 2 GB може бути фрагментовано (наприклад, за допомогою деяких файлів DLL), тому 7-Zip не може виділити один великий безперервний блок віртуального простору. Таких обмежень немає в Windows 64-bit. Тому ви можете використовувати будь-який словник в Windows x64, якщо це дозволяє його фізичний RAM.

Чому -r switch не працює так, як потрібно?

В більшості випадків вам не потрібен -r switch. 7-Zip може стискати вкладені теки навіть без -r switch.

Приклад 1:

  7z.exe a c:\a.7z "C:\Program Files"

стискає “C:\Program Files” повністю, включно з вкладеними теками.

Приклад 2:

  7z.exe a -r c:\a.7z "C:\Program Files"

шукає та стискає “Program Files” в усіх теках C:\ (наприклад, в “C:\WINDOWS”).

Якщо ви бажаєте стиснути лише файли з визначеним розширенням, ви можете використовувати перемикач -r:

  7z a -r c:\a.zip c:\dir\*.txt

стисне усі файли *.txt з теки c:\dir\ і її вкладених тек.

Як мені зберегти повний шлях файлу в архіві?

7-Zip зберігає лише відносні шляхи до файлів (без префікса букви диска). Ви можете змінити поточну теку на теку, яка є загальною для всіх файлів, які ви хочете стиснути, а потім використовувати відносні шляхи:

  cd /D C:\dir1\
  7z.exe a c:\a.7z file1.txt dir2\file2.txt

Як встановити 7-Zip в тихому режимі?

Використовуйте параметр “/S” для тихої установки і параметр /D=”C:\Program Files\7-Zip” для вибору директорії установки. Ці опції залежать від регістра. Для msi-інсталятора використовуйте параметр /q INSTALLDIR=”C:\Program Files\7-Zip”.

Як я можу відновити пошкоджений 7z архів?

Можливі випадки, коли архів пошкоджений:

  • Ви відкриваєте  архів і бачите список файлів, але при спробі витягнути або протестувати файли отримуєте помилку даних або помилку CRC.
  • Ви намагаєтесь відкрити архів, але отримуєте повідомлення «Не вдається відкрити файл як архів».

В деяких випадках такі архіви можна відновити. Як це зробити читайте тут (на англійській мові).

Питання розробників

Чому при компіляції в Visual C++ 6.0 архіватора 7-Zip або LZMA SDK виникає помилка?

Для компіляції вихідних файлів вам потрібно використовувати Visual C++ 6.0 або вище. Деякі файли також вимагають нову платформу SDK від microsoft.com.

Якщо ви використовуєте MSVC, встановіть директорію SDK зверху списку директорій «Include files» і «Library files». Це може бути знайдено в «Tools / Options / Directories».

Останні версії платформи SDK не сумісні з MSVC6. Тому ви повинні використовувати Windows Server 2003 PSDK (лютий 2003) з MSVC6.

Чи можу я використовувати файли EXE або DLL архіватора 7-Zip в комерційних застосуваннях?

Так, але ви повинні дотримуватися наступних вимог:

  • Вказати в документації, що ви використовуєте частку програми 7-Zip;
  • Вказати в документації, що 7-Zip знаходиться під ліцензією GNU LGPL;
  • Ви повинні поставити посилання на сайт www.7-zip.org, де можна знайти початковий код.

Як мені додати підтримку архівів 7z до мого ПЗ?

Єдиний шлях — використовувати 7za.dll (можна завантажити на sf.net). 7za.dll працює з інтерфейсом COM. При цьому він не використовує стандартний інтерфейс COM для створення об’єктів. Ви можете знайти маленький приклад в початковому коді. Повним прикладом може служити сам архіватор 7-Zip, оскільки він використовує цей dll. Також 7za.dll використовують архіватори WINRAR, PowerArchiver та інші.

Ще один шлях – викликати версію для командного рядка 7za.exe.

Чи можу я використовувати початковий код 7-Zip в комерційних програмах?

Оскільки 7-Zip знаходитися під ліцензією GNU LGPL ви повинні слідувати правилам цієї ліцензії. В основному це означає, що будь-який код, що містить код LGPL, має бути під цією дією цієї ліцензії. Наприклад, ви можете змінити код 7-Zip, або використовувати частку коду 7-Zip і компілювати це в DLL.

При цьому початковий код цього DLL (у тому числі з вашими модифікаціями / додаваннями / обгортками) має бути під ліцензією LGPL або GPL. Будь-який інший код у вашій програмі може бути ліцензований як вам буде бажано. Ця схема дозволяє користувачам і розробникам змінювати код LGPL і переробляти DLL. Більше про ліцензування безкоштовних програм можна дізнатися тут. Також ви можете дізнатися більше про LZMA SDK, який доступний в ліберальнішій ліцензії.

7-Zip
Коментарі: 6
  1. Максим

    Планируется ли поддержка drug-n-drop в проводнике? Для добавления файлов к существующему архиву?

    1. Лёня

      Я только за drug-n-drop)

  2. Олександр

    Перекладати з англійської або української на собачу — збочення. Козломорді зобов’язані вчити українську, якщо хочуть стати хоча б схожими на людей.

  3. Михаил

    Подскажите, как решить проблему, если к примеру у меня установлена версия 7-Zip 19.00 и я ставлю по верх новую версию 21.07, то при просмотре информации об установленных программах (в панели Программы и компоненты) в системе отображается 2 установленные версии и 19.00 и 21.07, а не одна 21.07?

  4. Kohkodeva

    Як мову то змінити?

    1. admin (автор)

      Інструменти/Налаштування/Мова

Додати коментар