Проблемы, оставшиеся неисправленными

Обсуждение Total Commander. Установка, использование, настройка, решение проблем, скрытые функции. Обсуждение новых версий.

Модераторы: Avada, CaptainFlint, Nik, d-view, Моторокер

Аватара пользователя
alexey65536
Сообщения: 1056
Зарегистрирован: Пт янв 20, 2006 10:58
Откуда: Taganrog

1

Сообщение alexey65536 »

Проблема: при распаковке из ТС запароленного архива RAR, где пароль содержит в себе пробел(ы) - архив не распаковывается (видимо, пароль из-за пробелов передается неверно).
Возможно, это вопрос к авторам unrar.dll, хотя WinRAR распаковывает такие архивы успешно.
#199018
DrShark
Сообщения: 911
Зарегистрирован: Сб окт 21, 2006 20:27
Откуда: Kyiv, Ukraine
Контактная информация:

Сообщение DrShark »

alexey65536 писал(а):Проблема: при распаковке из ТС запароленного архива RAR, где пароль содержит в себе пробел(ы) - архив не распаковывается (видимо, пароль из-за пробелов передается неверно).
Возможно, это вопрос к авторам unrar.dll, хотя WinRAR распаковывает такие архивы успешно.
Баг не подтверждаю.
Для распаковки запароленных архивов должен использоватся внешний распаковщик, т.е. Winrar.exe. Проверь, правильно ли прописан путь к Winrar.exe в диалоге настроек архиваторов в TC.
з.ы. поддержка запароленных архивов через unrar.dll, вероятнее всего, будет в TC 7.5.
Аватара пользователя
alexey65536
Сообщения: 1056
Зарегистрирован: Пт янв 20, 2006 10:58
Откуда: Taganrog

2

Сообщение alexey65536 »

Путь к винрару прописан. Могу скинуть на мыло архив с известным паролем, который не распаковывается через ТС.
#199018
DrShark
Сообщения: 911
Зарегистрирован: Сб окт 21, 2006 20:27
Откуда: Kyiv, Ukraine
Контактная информация:

Сообщение DrShark »

Попробуй взять путь к Winrar.exe в кавычки.
Если не поможет, выложи файл на рапиду, посмотрим.
Аватара пользователя
alexey65536
Сообщения: 1056
Зарегистрирован: Пт янв 20, 2006 10:58
Откуда: Taganrog

Сообщение alexey65536 »

Кавычки не помогли.
Ссылка на файл: _http://rapidshare.com/files/65822338/BWMeter_3.3.0.rar.html
Пароль:
Rostov`s Blog
#199018
DrShark
Сообщения: 911
Зарегистрирован: Сб окт 21, 2006 20:27
Откуда: Kyiv, Ukraine
Контактная информация:

Сообщение DrShark »

Дело не в пробелах, а в этом знаке:
`
Аватара пользователя
alexey65536
Сообщения: 1056
Зарегистрирован: Пт янв 20, 2006 10:58
Откуда: Taganrog

3

Сообщение alexey65536 »

А чем ему знак-то не угодил? Ведь чистый винрар распаковывает, а вызываемый из ТС - фиг..:(
#199018
DrShark
Сообщения: 911
Зарегистрирован: Сб окт 21, 2006 20:27
Откуда: Kyiv, Ukraine
Контактная информация:

Сообщение DrShark »

Я ещё проверю TC на совместимость с другими знаками, потом багрепорт на оф. форум отправлю. Подозреваю, что проблемы возникнут и с юникодными паролями.
DrShark
Сообщения: 911
Зарегистрирован: Сб окт 21, 2006 20:27
Откуда: Kyiv, Ukraine
Контактная информация:

Сообщение DrShark »

2alexey65536
Проблема, вероятно, всё же с пробелами, хотя тот архив вообще странный какой-то :)
Проблема с распаковкой подобных архивов должна решится в TC 7.5, т.к. тогда будет использоватся dll для распаковки с поддержкой зашифрованных архивов. Вот пояснение Гислера:
Using a space in the password is a very bad idea. Why? Command line
parameters are passed to RAR separated by spaces, so RAR will think
that only the first part up to the space is the password, and the rest are
some parameters!
С упаковкой также есть свои ньюансы: если в пароле используется несколько слов, разделённых пробелами, то WinRar покажет окно с "ошибкой упаковки", но в итоге архив с паролем будет правильным.
Если в качестве пароля используется пробел, то пароль нужно вводить четырежды - дважды в диалоге TC и ещё дважды в диалоге WinRar.
Аватара пользователя
Alextp
Сообщения: 4957
Зарегистрирован: Вс фев 06, 2005 17:21

Сообщение Alextp »

DrShark
Гислер опять выеживается. :-\
Ясно, что если пароль содержит пробел, ТС должен передавать его рару в двойных кавычках.

Код: Выделить всё

rar x "-pSome Pwd" file.rar
А он "отмазки лепит", что идея плохая - напиши ему плс..
DrShark
Сообщения: 911
Зарегистрирован: Сб окт 21, 2006 20:27
Откуда: Kyiv, Ukraine
Контактная информация:

Сообщение DrShark »

Кто-то на этом форуме (Флинт, кажется) выкладывал прогу, которая, если её прописать архиватором в TC, будет параметры отображать. Можете её выложить, если она есть ещё у кого-то?
Аватара пользователя
Alextp
Сообщения: 4957
Зарегистрирован: Вс фев 06, 2005 17:21

Сообщение Alextp »

DrShark
Сообщения: 911
Зарегистрирован: Сб окт 21, 2006 20:27
Откуда: Kyiv, Ukraine
Контактная информация:

Сообщение DrShark »

Это решение не совсем подходит.
Надо как-то поймать тот момент, когда пароль передаётся из TC в rar.exe/winrar.exe. Желательно это в лог записывать. Надо проверить, добавляет TC к паролю кавычки или нет.
Edit: При упаковке TC кавычек действительно не добавляет. Прога не подходит для варианта с распаковкой.
Аватара пользователя
Alextp
Сообщения: 4957
Зарегистрирован: Вс фев 06, 2005 17:21

Сообщение Alextp »

DrShark писал(а):Это решение не совсем подходит.
Почему? ты же можешь положить ее вместо Winrar.exe и смотреть, что ей передается.
DrShark писал(а):Прога не подходит для варианта с распаковкой.
Почему?
DrShark
Сообщения: 911
Зарегистрирован: Сб окт 21, 2006 20:27
Откуда: Kyiv, Ukraine
Контактная информация:

Сообщение DrShark »

Проблема была в том, что при Alt+F6 TC не просил пароль, а сразу запускал прогу. Вопрос решился просмотром запакованого файла из архива. Итог: TC не использует кавычки.
После тестов я решил, что в текущем поведении TC тоже есть рациональное звено. Возьмём самый тяжёлый случай - я хочу упаковать архив с паролем
" "

Код: Выделить всё

"c:\Program Files\WinRAR\WinRAR.exe" -m5 a -c
- "D:\test\RarPack_quote.rar" -p"" "" "d:\Music\Other\RarPack.au3"
WinRar не принимает пароль в таком виде и выводит поле для ввода пароля. После ввода пароля WinRar запакует мне вместо одного файла RarPack.au3 все файлы из его папки, включая подпапки.
Если в даном случае winrar.exe заменить на консольный rar.exe, то ситуация вообще смешная: он просит ввести пароль, но ввод в командную строку не работает. Жму Enter и получаю ту же упакованую папку, но распаковать такой архив не получится, т.к. пароль вообще неизвестен.
Ответить