_7ZipExtractEx
Извлекает файлы из архива с их полными путями в текущий или указанный каталог (x).
#Include <7Zip.au3>
_7ZipExtractEx($hWnd, $sArcName[, $sOutput = 0[, $sHide = 0[, $sOverwrite = 0[, $sRecurse = 1[, _
$sIncludeArc[, $sExcludeArc[, $sIncludeFile = 0[, $sExcludeFile = 0[, $sPassword = 0[, $sYes = 0]]]]]]]]]])
Параметры
$hWnd | Дескриптор родительского окна или окна владельца |
$sArcName |
Путь к архиву |
$sOutput |
[необязательный] (-o) Каталог, в который будет извлечён архив |
$sHide |
[необязательный] (-hide) Включите этот флаг, если хотите вызвать CallBack функцию |
$sOverwrite |
[необязательный] (-ao) Режим перезаписи существующих файлов 0 - (по умолчанию) (-aoa) Перезаписывает все существующие файлы без подсказки 1 - (-aos) Пропускает извлечение существующих файлов 2 - (-aou) Автоматически переименует извлекаемый файл (добавляет индекс копии _1 и т.д.) 3 - (-aot) Автоматически переименует существующий файл (добавляет индекс копии _1 и т.д.) |
$sRecurse |
[необязательный] Режим рекурсии (вложенных каталогов) 0 - (-r-) Отключает рекурсию подкаталогов 1 - (по умолчанию) (-r) Включает рекурсию подкаталогов 2 - (-r0) Включает рекурсию подкаталогов, только для имен подстановочных знаков (wildcard) |
$sIncludeArc |
[необязательный] (-ai) Включает дополнительные имена архивов. |
$sExcludeArc |
[необязательный] (-ax) Исключает имена архивов. |
$sIncludeFile |
[необязательный] (-i) Включает имена извлекаемых файлов. Определяет имена файлов и подстановочные знаки (wildcard) или файл содержащий список извлекаемых файлов. |
$sExcludeFile |
[необязательный] (-x) Исключает имена извлекаемых файлов. Указывает, какие имена файлов или (и) имена с подстановочными знаками (wildcard) должны быть исключены из операции извлечения |
$sPassword |
[необязательный] (-p) Пароль |
$sYes |
[необязательный] (-y) Отвечает "Да" на все вопросы |
Возвращаемое значение
Успех: | Возвращает строку с результатом. |
Ошибка: | Возвращает 0 и устанавливает @error равным 1 |
Примечания
Учтите, что UDF должна находится в одной папке с запускаемым скриптом.См. также
_7ZIPExtractПример
; rasim
; http://www.autoitscript.com/forum/topic/85094-7zip/
#include <7Zip.au3>
; Пример 1
$ArcFile = FileOpenDialog("Выберите архив", "", "Архивы (*.7z;*.zip;*.gzip;*.bzip2;*.tar)")
If @error Then Exit
$Output = FileSelectFolder("Выберите каталог для извлечения", "")
If @error Then Exit
$retResult = _7ZIPExtractEx(0, $ArcFile, $Output)
If @error = 0 Then
MsgBox(64, "_7ZIPExtractEx", $retResult)
Else
MsgBox(64, "_7ZIPExtractEx", "Ошибка")
EndIf
; Пример 2
$ArcFile = FileOpenDialog("Выберите архив", "", "Архивы (*.7z;*.zip;*.gzip;*.bzip2;*.tar)")
If @error Then Exit
$Output = FileSelectFolder("Выберите каталог для извлечения", "")
If @error Then Exit
$sExclude = "*.bmp"
$retResult = _7ZIPExtractEx(0, $ArcFile, $Output, 0, 1, 1, 0, 0, 0, $sExclude)
If @error = 0 Then
MsgBox(64, "_7ZIPExtractEx", $retResult)
Else
MsgBox(64, "_7ZIPExtractEx", "Ошибка")
EndIf