Често задавани въпроси (FAQ)

Често задавани въпроси за потребителя

Мога ли да използвам 7-Zip в търговска организация?

Да, 7-Zip е свободен софтуер. Можете да го използвате на всеки компютър. Не е нужно да се регистрирате или да плащате за 7-Zip.

Как мога да задам файлови асоциации на 7-Zip в Windows 7 и Windows Vista?

Трябва да изпълните 7-Zip файлов мениджър в администраторски режим. Щракнете с десния бутон върху иконата на 7-Zip файловия мениджър и след това щракнете върху Изпълнявай като администратор. След това можете да промените файловите асоциации и някои други опции.

Защо 7z архивите, създадени от новата версия на 7-Zip, могат да бъдат по-големи от архивите, създадени от старата версия на 7-Zip?

Новите версии на 7-Zip (започвайки от версия 15.06) използват друг ред за сортиране на файлове по подразбиране за твърди 7z архиви.

Старата версия на 7-Zip (преди версия 15.06) използва сортиране на файлове "по тип" ("по разширение").

Новата версия на 7-Zip поддържа две поръчки за сортиране:

  • Сортиране по име - ред по подразбиране.
  • сортиране по тип, ако "qs" е посочено в полето Параметри в прозореца "Добавяне към архива" (или -mqs превключвател за версия на командния ред).

Можете да получите голяма разлика в степента на компресия за различните методи на сортиране, ако размерът на речника е по-малък от общия размер на файловете. Ако има подобни файлове в различни папки, сортирането "по тип" може да осигури по-добро съотношение на компресия в някои случаи.

Имайте предвид, че сортирането "по тип" има някои недостатъци. Например, NTFS томовете използват ред на сортиране "по име", така че ако архивът използва друго сортиране, тогава скоростта на някои операции за файлове с необичаен ред може да падне на HDD устройства (HDD имат ниска скорост за операции "търсене").

Можете да увеличите степента на компресия със следните методи:

  • Увеличете размера на речника. Тя може да помогне, когато "qs" не се използва.
  • Задайте 'qs' в полето Параметри (или използвайте -mqs ключ за версия на командния ред).

Ако смятате, че необичайният ред на файловете не е проблем за вас и ако по-доброто съотношение на компресия с малък речник е по-важно за вас, използвайте режим "qs".

Защо 7-Zip не може да отвори някои ZIP архиви?

В 99% от тези случаи това означава, че архивът съдържа неправилни заглавки. Други ZIP програми могат да отворят някои архиви с неправилни заглавки, тъй като тези програми просто игнорират грешките.

Ако имате такъв архив, моля, не се обаждайте на разработчиците на 7-Zip за това. Вместо това се опитайте да намерите програмата, която е била използвана за създаване на архива и да информирате разработчиците на тази програма, че техният софтуер не е съвместим с ZIP.

Има и някои ZIP архиви, които са кодирани с методи, които не се поддържат от 7-Zip, например WAVPack (WinZip).

Защо 7-Zip не може да отвори някои RAR архиви?

7-Zip 9.20 поддържа само RAR 2/3/4 формати и не поддържа RAR5 архиви. Но най-новите версии на 7-Zip поддържат RAR5 архиви.

Защо извличането на архив с плъзгане и пускане от 7-Zip към Explorer използва временни файлове?

7-Zip не знае пътя на папката на целта за пускане. Само Windows Explorer знае точната цел за пускане. А Windows Explorer се нуждае от файлове (източник на плъзгане) като декомпресирани файлове на диска. Така че 7-Zip извлича файлове от архив в временна папка и след това 7-Zip уведомява Windows Explorer за пътищата на тези временни файлове. След това Windows Explorer копира тези файлове, за да пусне целевата папка.

За да избегнете използването на временни файлове, можете да използвате командата Извличане на 7-Zip или плъзгане и пускане от 7-Zip до 7-Zip.

Защо версията на командния ред не добавя файлове без разширения към архив?

Вероятно използвате заместващ символ *.*. 7-Zip не използва анализатора на заместващи маски на операционната система и следователно третира *.* като всеки файл, който има разширение. За да обработите всички файлове, трябва да използвате заместващия символ * или да пропуснете заместващия символ напълно.

Защо превключвателят -r не работи според очакванията?

В повечето случаи не се нуждаете от -r превключвател. 7-Zip може да компресира подпапки дори без -r превключвател.

Пример 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 не може да използва голям речник в 32-битов Windows?

32-битовата версия на Windows разпределя само 2 ГБ виртуално пространство за едно приложение. Също така този блок от 2 GB може да бъде фрагментиран (например от някакъв DLL файл), така че 7-Zip не може да разпредели един голям съседен блок виртуално пространство. Няма такива ограничения в 64-битовия Windows. Така че можете да използвате всеки речник в Windows x64, ако имате необходимото количество физическа RAM.

Как мога да инсталирам 7-Zip в тих режим?

За инсталатора на exe: Използвайте параметъра "/S", за да извършите тиха инсталация, и параметъра /D="C:\Program Files\7-Zip", за да зададете "изходната директория". Тези опции са чувствителни към малки и главни букви.

За инсталатора на msi: Използвайте параметрите /q INSTALLDIR="C:\Program Files\7-Zip".

Как мога да възстановя повреден 7z архив?

Има някои възможни случаи, когато архивът е повреден:

  • Можете да отворите архива и да видите списъка с файлове, но когато натиснете командата Извличане или Тест, има някои грешки: Грешка в данните или CRC грешка.
  • Когато отворите архива, получавате съобщение "Не може да се отвори файл "а.7z" като архив"

Възможно е да се възстановят някои данни. Прочетете за процедурата за възстановяване:

Възстановяване на повреден 7z архив



Често задавани въпроси за разработчици

Защо има грешки при свързване, когато компилирам 7-Zip или LZMA SDK с Visual C++ 6.0?

За да компилирате източници, ще ви е необходим Visual C++ 6.0 или по-нова версия. Някои файлове също изискват нов SDK на платформата от microsoft.com:

Ако използвате MSVC, посочете SDK директориите в горната част на списъците с директории "Включване на файлове" и "Библиотечни файлове". Те могат да бъдат намерени в "Инструменти / Опции / Директории".

Най-новият SDK на платформата не е съвместим с MSVC6. Така че трябва да използвате Windows Server 2003 PSDK (февруари 2003 г.) с MSVC6.

Мога ли да използвам EXE или DLL файлове от 7-Zip в търговско приложение?

Да, но от вас се изисква да посочите във вашата документация (1), че сте използвали части от програмата 7-Zip, (2) че 7-Zip е лицензиран под лиценза GNU LGPL и (3) трябва да дадете връзка към www.7-zip.org, където може да бъде намерен изходният код.

Как мога да добавя поддръжка за 7z архиви към моето приложение?

Един от начините е да използвате 7z.dll или 7za.dll (достъпно от sf.net за изтегляне). 7za.dll работи чрез COM интерфейси. Той обаче не използва стандартни COM интерфейси за създаване на обекти. Можете да намерите малък пример в папката "CPP\7zip\UI\Client7z" в изходния код. Пълен пример е самият 7-Zip, тъй като 7-Zip работи и чрез този dll. Има и други приложения, които използват 7za.dll като WinRAR, PowerArchiver и други.

Другият начин е да се обадите на версията на командния ред: 7za.exe.

Мога ли да използвам изходния код на 7-Zip в търговско приложение?

Тъй като 7-Zip е лицензиран под GNU LGPL, трябва да следвате правилата на този лиценз. Накратко, това означава, че всеки LGPL'ed код трябва да остане лицензиран под LGPL. Например, можете да промените кода от 7-Zip или да напишете обвивка за някакъв код от 7-Zip и да го компилирате в DLL; но изходният код на този DLL (включително вашите модификации / допълнения / обвивка) трябва да бъде лицензиран под LGPL или GPL. Всеки друг код във вашето приложение може да бъде лицензиран, както желаете. Тази схема позволява на потребителите и разработчиците да променят LGPL'ed кода и да прекомпилират този DLL. Това е идеята на свободния софтуер. Прочетете повече тук: https://www.gnu.org/. Можете също така да прочетете за LZMA SDK, който е достъпен под по-либерален лиценз.


Copyright (C) 2023 7zip.com