Что нового

Как просмотреть в архиве размер папок? или воспользоваться кодом ошибки?

kserg-2002

Новичок
Сообщения
18
Репутация
0
Есть архив WinRar, в нем содержатся папки.
При извлечении человек может нажать кнопку "Отмена", например.
Соответственно, для проверки надо либо воспользоваться кодами ошибок WinRar (вроде, там есть errorlevel при исполнении), либо просмотреть размер содержимого архива. Искал в консольной версии ключи - вроде, показывает, что есть ключ, но почему-то его нет. И в справке его нет.
v[t,b] Вывести подробный список содержимого архива [с технической
информацией].

Отображаются следующие сведения о файлах: полное имя,
комментарий файла, размер (несжатый и в архиве), степень сжатия,
дата и время последнего изменения, атрибуты, CRC, метод сжатия
и минимальная версия RAR, необходимая для извлечения. Если
указан модификатор 't', то также будут отображены дополнительные
технические сведения (наличие информации для восстановления,
ОС, в которой был создан архив, флаги непрерывного архивирования
и старой версии файла).
Модификатор 'b' предназначен для вывода только имён файлов без
всякой дополнительной информации.

Чтобы просмотреть содержимое всех томов архива, укажите вместо
расширения архива звёздочку ('*') или используйте ключ '-v'.

Примеры:

1) Вывести список содержимого архива system.rar (с техническими
подробностями) и перенаправить вывод в файл techlist.lst

rar vt system >techlist.lst

2) Вывести список содержимого архива tutorial.rar (в режиме
показа одних только имён файлов)

rar vb tutorial
Каким образом это сделать?
 

FlatX007

Tattoo!
Сообщения
197
Репутация
35
Код:
#Include <Process.au3>

$RunDos = _RunDOS(@ScriptDir & '\' & "rar vt system >techlist.lst")
MsgBox(0, "", _ReturnErrorWinRar($RunDos))

Func _ReturnErrorWinRar($Error)

	Switch $Error
		Case 0
			Return "Операция успешно завершена."
		Case 1
			Return "Предупреждение. Произошли некритические ошибки."
		Case 2
			Return "Произошла критическая ошибка."
		Case 3
			Return "При распаковке обнаружена ошибка CRC."
		Case 4
			Return "Предпринята попытка изменить заблокированный архив."
		Case 5
			Return "Произошла ошибка записи на диск."
		Case 6
			Return "Произошла ошибка открытия файла."
		Case 7
			Return "Ошибка при указании параметра в командной строке."
		Case 8
			Return "Недостаточно памяти для выполнения операции."
		Case 9
			Return "Ошибка при создании файла."
		Case 255
			Return "Операция была прервана пользователем."
	EndSwitch

EndFunc   ;==>_ReturnErrorWinRar
 
Автор
K

kserg-2002

Новичок
Сообщения
18
Репутация
0
Спасибо, НО команды "rar v" - НЕТ в ВинРаре, просто в консольной справке отображает ее!
Гхм, если только просто отдельно воспользоваться... командами завершения.
 

FlatX007

Tattoo!
Сообщения
197
Репутация
35
Всмысле нет ?

"rar vt - у меня срабатывает команда!
 
Автор
K

kserg-2002

Новичок
Сообщения
18
Репутация
0
Понял ошибку. Пользовался обычным WinRar, а не консольной версией...
Так. Другой вопрос. В архиве есть несколько папок. В них находятся еще файлы и папки.
Вот каким образом получить размер только этих папок в корне архива?
 
Верх