Просмотр содержимого архива без его открытия

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

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

bobius
Сообщения: 22
Зарегистрирован: Сб ноя 19, 2005 21:21
Откуда: Киров

Сообщение bobius »

Batya писал(а):Тогда выходит, что 10-я бетка гючит
Вот и мне так кажется...
Batya писал(а):И что-то я не понял, что ты потом пытаешься скопировать и куда?
Вместо распаковки я выполняю копирование нужного архива (это не критично - распакую потом), но не вставляю заранее заданный путь, а предварительно открываю каталог назначения в противоположной панели - как делал бы это руками. Этот каталог назначения висит на следующей вкладке правой панели.
Batya писал(а):Идеальный вариант - распаковывать при помощи WinRar.
Я об этом же думаю. Если копирование перестанет устраивать, сделаю так.
Аватара пользователя
Volniy
Сообщения: 585
Зарегистрирован: Ср дек 15, 2004 00:17
Откуда: Местный

Сообщение Volniy »

Batya писал(а):Тогда выходит, что 10-я бетка гючит
Я думаю, что показ модального диалог распаковки сбрасывает блокировку окна Тотала. Наверное, надо указывать LockTC уже после закрытия диалога распаковки.

Я уже писАл, только может быть в старом форуме. Дело в том, что Тотал Коммандер совсем даже и не хочет чтобы им управляли. И, соответственно, не предоставляет никакого программного интерфейса для управления им (я даже не знаю откуда прознали о возможности отсыла ему внутренних команд через SendMessage, похоже это тоже недокументированная фича). И уж тем более, он никогда не сообщает результаты выполнения внешних команд. Так что все, что делает, ScriptHelper, он делает скорее вопреки чаяниям Тотала, и в какой-то мере это хак.

Поэтому я прошу не путать Script Helper с плагинами, где все происходит в тесном взаимодействии через специальное PluginsAPI и при полном взаимном согласии. Фактически все это означает, что при использовании любой комманды нужны проверять, а как же там на нее прореагировал этот Тотал.
Вот такие дела. :cry:
Аватара пользователя
Batya
Сообщения: 2236
Зарегистрирован: Ср дек 15, 2004 09:51
Откуда: Москва, Россия

Сообщение Batya »

Volniy
ОК. Понято. Никто и не требует от Хэлпера невозможного.
(с) "Всё равно его не брошу, потому что он хороший!" :)

bobius
Вместо распаковки я выполняю копирование нужного архива (это не критично - распакую потом), но не вставляю заранее заданный путь, а предварительно открываю каталог назначения в противоположной панели - как делал бы это руками. Этот каталог назначения висит на следующей вкладке правой панели.
А зачем столько мучений? Зачем в TC открывать такой каталог?
bobius
Сообщения: 22
Зарегистрирован: Сб ноя 19, 2005 21:21
Откуда: Киров

Сообщение bobius »

Batya писал(а):ОК. Понято. Никто и не требует от Хэлпера невозможного.
Согласен. :)
Batya писал(а):А зачем столько мучений? Зачем в TC открывать такой каталог?
Я уже объяснял: изначально мы находимся в правой панели - это содержимое архива; первый таб переводит нас в левую панель; если после этого запустить копирование (по команде Copy), то ТС запустит диалог "Добавление в архив" - он думает, что мы собираемся копировать файл в архив. Поэтому я сначала делаю так, чтобы правая панель содержала обычный каталог.
Аватара пользователя
Batya
Сообщения: 2236
Зарегистрирован: Ср дек 15, 2004 09:51
Откуда: Москва, Россия

Сообщение Batya »

bobius
Я уже объяснял: изначально мы находимся в правой панели - это содержимое архива; первый таб переводит нас в левую панель; если после этого запустить копирование (по команде Copy), то ТС запустит диалог "Добавление в архив" - он думает, что мы собираемся копировать файл в архив. Поэтому я сначала делаю так, чтобы правая панель содержала обычный каталог.
:) Этот способ называется "через одно место".
Только не обижайся. Просто ты выбрал действительно, мягко говоря, "не самый простой путь".
Во-первых, можно копировать средствами Windows. Во-вторых, можно воспользоваться сторонними программами (например, killcopy - рекомендую). Ну и наконец, очень просто обойтись средствами TC - надо послать не команду "Копировать" (ты, вероятно, просто генеришь нажатие F5), а послать команду "Копировать в текущий каталог" (Shift+F5). При этом никто тебе не запрещает сюда вставить путь (ограничение - каталог назначения уже должен существовать). И чтобы не мучиться с фоном, в wincmd.ini в секции [Configuration] укажи AlwaysCopyInBackground=1.
Примерный код:

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

Option Explicit
Dim MyDir
'=== Каталог для распаковки: ===
MyDir = "C:\Interesting"
'===============================
Dim TCS
Set TCS = CreateObject("TCScript.Helper")
TCS.LockTC True
TCS.SendKeystroke ("{Tab}")
TCS.SendCommand   ("cm_CopySamepanel")
TCS.SendKeystroke ("{HOME}" & MyDir & "\{Enter}")
TCS.SendCommand   ("cm_FocusRight")
TCS.LockTC False
Set TCS=Nothing
Wscript.Quit
bobius
Сообщения: 22
Зарегистрирован: Сб ноя 19, 2005 21:21
Откуда: Киров

Сообщение bobius »

Batya писал(а)::) Этот способ называется "через одно место".
Только не обижайся. Просто ты выбрал действительно, мягко говоря, "не самый простой путь".
Согласен. :) Это первое, что пришло в голову.
Batya писал(а):... надо послать не команду "Копировать" (ты, вероятно, просто генеришь нажатие F5)...
cm_Copy
Batya писал(а):... а послать команду "Копировать в текущий каталог" (Shift+F5). При этом никто тебе не запрещает сюда вставить путь (ограничение - каталог назначения уже должен существовать).
Кто ж знал... :)
Batya писал(а):... укажи AlwaysCopyInBackground=1.
Естественно, у меня в фоне всегда копирует.

Скрипт сегодня опробую, как с работы вернусь.
bobius
Сообщения: 22
Зарегистрирован: Сб ноя 19, 2005 21:21
Откуда: Киров

Сообщение bobius »

Работает. Изящно. На этом пока можно остановиться. Спасибо. :)
Ник
Сообщения: 1256
Зарегистрирован: Ср дек 15, 2004 09:33
Откуда: Москва

Сообщение Ник »

Хотелось бы, чтобы какой-нибудь архиваторный плагин всё-таки работал напрямую с <Ctrl-Q> и выдавал в противоположной панели список файлов...
Xubuntu
Аватара пользователя
Моторокер
Сообщения: 1517
Зарегистрирован: Пт май 06, 2005 08:22
Откуда: г. Пермь (читается Перьмь)
Контактная информация:

Сообщение Моторокер »

Ник, со всеми подпапками?
А когда на какой-нибудь объёмный rar встанешь?
И чтобы перемещаться по ним можно было?
А потом ещё и копировать из них/в них?
А потом ещё и просматривать файлы?
А потом…
или просто список папок с подпапками, файлами?
плагины для Total Commander, статьи Graphics Converter; NSCopy; SEO HTML; KillOK; Плагин на Delphi
ПармаСруб - строительство домов и бань в Перми
Ник
Сообщения: 1256
Зарегистрирован: Ср дек 15, 2004 09:33
Откуда: Москва

Сообщение Ник »

Просто список в корневой папок и подпапок - для "узнавания" архива.

Можно даже выводить первые 30 директорий и первые 50 файлов и писать "и так далее".

Переходы делать бессмысленно - есть же вход в архивы как в директории - нужен, ИМХО, именно быстрый листер-плагин.
Xubuntu
Аватара пользователя
Моторокер
Сообщения: 1517
Зарегистрирован: Пт май 06, 2005 08:22
Откуда: г. Пермь (читается Перьмь)
Контактная информация:

Сообщение Моторокер »

Можно задать ограничение по времени. Но первые файлы в архиве – это не первые видимые файлы и даже не папки, т.е. уже листер покажет корневую папку неверно, может даже вообще папки не показать. Будет ли это этого польза? Не будет ли это пугать?
плагины для Total Commander, статьи Graphics Converter; NSCopy; SEO HTML; KillOK; Плагин на Delphi
ПармаСруб - строительство домов и бань в Перми
Ник
Сообщения: 1256
Зарегистрирован: Ср дек 15, 2004 09:33
Откуда: Москва

Сообщение Ник »

Видимо, нужно для каждого типа архива продумывать свою стратегию показа...

Ведь нужен только список - без размера и дат (пока что).

В конце-концов, листер ArchView даёт полный список, насколько я помню - т.е. важен именно быстрый список "прикидочный".
Xubuntu
i1
Сообщения: 34
Зарегистрирован: Чт янв 13, 2011 19:28

Сообщение i1 »

Появились ли с 2007 года плагины для решения поставленного вопроса для редакции Total Commander x64?
Аватара пользователя
Avada
Сообщения: 10541
Зарегистрирован: Пт авг 01, 2008 16:17
Откуда: Россия, Саратов

Сообщение Avada »

i1
Здесь по мере обсуждения ставились разные вопросы. И для их решения никто ничего специально с тех пор не писал. Включая и 64-битный аналог ArchView.
Даже самая богатая фантазия
Не представит себе наши безобразия.
Ответить