Копирование файлов на временную панель

Здесь обсуждается всё, что касается макросов.
Post Reply
buniak_a_h
Posts: 1241
Joined: Sat 20 Apr, 2013 00:17
Location: Питер
Has thanked: 89 times
Been thanked: 79 times
Contact:

Копирование файлов на временную панель

Post by buniak_a_h » Sun 24 Nov, 2019 04:04

Здравствуйте!
Предлагаю к обсуждению скрипт для копирования отмеченных файлов на временную панель.
Суть скрипта такова:
1. Вешается обработчик событий на инициализацию и закрытие стандартного диалога копирования файлов
2. При инициализации в историю добавляется имя временной панели (в зависимости от язка может быть разное)
3. При закрытии диалога, если нажата кнопка "по умолчанию" и в качестве приёмника указана временна панель, то происходит отказ от реального копирования, а помеченные элементы добавляются на временную панель. После этого состояние панелей (видимость, тип) восстанавливается.
--
Отсюда ограничение: не гарантируется корректность работы скрипта, если пассивная панель открыта плагином, не поддерживающим функцию far.SetPanelDirectory (я знаю один такой: MultiArc). Также не проверялась работа скрипта, если активная панель - плагиновая. НО! Даже если работать не будет, полезность скрипта лично у меня не вызывает сомнений, т.к. постоянно приходится переключаться на временную панель и добавлять…


CopySelectedToTempPanel.v1_0_3.7z
(16.85 KiB) Downloaded 8 times
Last edited by buniak_a_h on Mon 25 Nov, 2019 00:18, edited 2 times in total.

citRiks
Posts: 79
Joined: Fri 25 Oct, 2019 18:18
Has thanked: 8 times
Been thanked: 5 times

Копирование файлов на временную панель

Post by citRiks » Sun 24 Nov, 2019 10:49

buniak_a_h,

Макрос нужный, но на Win10 в сегодняшней ночной сборке .

buniak_a_h
Posts: 1241
Joined: Sat 20 Apr, 2013 00:17
Location: Питер
Has thanked: 89 times
Been thanked: 79 times
Contact:

Копирование файлов на временную панель

Post by buniak_a_h » Sun 24 Nov, 2019 17:41

citRiks, у меня был такой вылет на одной из ранних стадий разработки. Более того! После того вылета весёлый Каспер решил, что Far - вирус и стёр его нафик. К счастью, только Far.exe :-) Но теперь, вроде, ничего не вылетает и работает как должно. Я на всякий случай залил новую версию, в которой убраны некоторые некорректности (хотя они не должны были приводить к вылету). Попробуйте… Если вылет повторится и Вам будет не влом - я попробую его поймать (с Вашей помощью - буду посылать скрипт с отладочным Show) Ну и предварительно:
1. Формируется ли имя временной панели и имеется ли оно в истории? Для чистоты эксперимента, если не жалко, почистите историю (кнопка Del при раскрытом списке-истории).
2. Есть ли у Вас средство для перехвата отладочного вывода (например, DbgView)? Если да - я тогда сразу "напичкаю" скрипт вызовами OutputDebugString, а Вы мне пришлёте "перехват".
3. Опять же если такое случится - давайте, чтоб тему не засорять, в личку. А сюда - только сигнал, что будем смотреть. А то трудно поймать багу, если она никак не проявляется...

citRiks
Posts: 79
Joined: Fri 25 Oct, 2019 18:18
Has thanked: 8 times
Been thanked: 5 times

Копирование файлов на временную панель

Post by citRiks » Sun 24 Nov, 2019 20:34

buniak_a_h wrote:
Mon 25 Nov, 2019 00:19
Сделал версию 1.0.3
Спасибо. Так макрос работает без выдачи ошибок. Подробнее — в личке.
Last edited by citRiks on Mon 25 Nov, 2019 15:23, edited 2 times in total.

buniak_a_h
Posts: 1241
Joined: Sat 20 Apr, 2013 00:17
Location: Питер
Has thanked: 89 times
Been thanked: 79 times
Contact:

Копирование файлов на временную панель

Post by buniak_a_h » Mon 25 Nov, 2019 00:19

Сделал версию 1.0.3. В основном оптимизация.

Post Reply

Return to “Обсуждение макросов”