1. Ваш же вопрос на другом форуме. И там же ответ
2. И вообще. Попробуйте убрать всё, что кончается на x86, а не на x64.
У меня работает (голый ФАР). Увы, при перетаскивании из GUI-приложения на панель ФАРа, запущенного из ConEmu, вместо копирования просто в командную строку вводится путь к исходному файлу.
Кстати, никто не знает, как "подружить" этот замечательный плагин с ФАРом, запущенным из-под ConEmu ?
Drag-n-Drop — тяни-и-бросай (перетаскивание)
Posted: Fri 02 Nov, 2018 11:03
by dmitrik
buniak_a_h wrote: ↑Fri 02 Nov, 2018 10:51
1. Ваш же вопрос на другом форуме. И там же ответ
Ну так получив ответ там и поняв, что проблема в плагине Drag-n-Drop, я пришел сюда, к автору плагина.
buniak_a_h wrote: ↑Fri 02 Nov, 2018 10:51
2. И вообще. Попробуйте убрать всё, что кончается на x86, а не на x64.
Эм... У меня Far x86, я же выше написал.
Drag-n-Drop — тяни-и-бросай (перетаскивание)
Posted: Fri 02 Nov, 2018 11:11
by John Doe
buniak_a_h wrote: ↑Fri 02 Nov, 2018 10:51
Кстати, никто не знает, как "подружить" этот замечательный плагин с ФАРом, запущенным из-под ConEmu ?
Мне казалось что Conemu и сам обладает подобной функциональностью, из коробки.
Drag-n-Drop — тяни-и-бросай (перетаскивание)
Posted: Fri 02 Nov, 2018 11:28
by buniak_a_h
dmitrik wrote: ↑Fri 02 Nov, 2018 11:03
Эм... У меня Far x86, я же выше написал.
Сорри... Зрение ни к чёрту...
John Doe wrote: ↑Fri 02 Nov, 2018 11:11
Мне казалось что Conemu и сам обладает подобной функциональностью, из коробки.
Да, так написано. Но без плагина ИЗ ФАРа в GUI-приложение перетащить не удалось, а в обратную сторону - вообще никак. Возможно, дело в настройках самого ConEmu, я уже много чего перепробовал (связанного с мышкой) - отчаялся. Даже написал макрос, чтоб после Drop-а на панель вызывать банальный move из временной папи в папку панели, используя ту строку с именем файла, что пишется при перетаскивании.
Drag-n-Drop — тяни-и-бросай (перетаскивание)
Posted: Fri 02 Nov, 2018 12:07
by HaRT
dmitrik wrote: ↑Fri 02 Nov, 2018 09:41
Судя по ошибкам, происходит разадресация нулевого указателя.
Сообщения об ошибках были бы информативнее и практичнее, если бы вы потрудились (1) как подсказывает повторяющийся в тексте ошибок фрагмент get the pdb, подложить соответствующий Far.pdb (скачать по соответствующей кнопке pdb со страницы загрузки Фара) рядом с Far.exe и (2) выложить текстовый снимок сообщений об ошибках, как указано в Far FAQ 1.3 и тут.
Drag-n-Drop — тяни-и-бросай (перетаскивание)
Posted: Fri 02 Nov, 2018 13:59
by dmitrik
HaRT wrote: ↑Fri 02 Nov, 2018 12:07
Сообщения об ошибках были бы информативнее и практичнее, если бы вы потрудились (1) как подсказывает повторяющийся в тексте ошибок фрагмент get the pdb, подложить соответствующий Far.pdb (скачать по соответствующей кнопке pdb со страницы загрузки Фара) рядом с Far.exe и (2) выложить текстовый снимок сообщений об ошибках, как указано в Far FAQ 1.3 и тут.
О, вот за этим я в тот тред с утра и пришел. Спасибо.
Картинки (раз уж у меня на данный момент есть только они) в обоих тредах спрятал под спойлер. Far.pdb положил куда полагается, как в очередной раз всё упадет, выложу уже более информативный и текстовый снимок сообщений об ошибках.
Удостоверьтесь, пожалуйста, что Far.pdb и Far.exe строго для одного номера сборки и одной битности, иначе ничего не выйдет.
А чтобы при цитировании не терялось форматирование, можно нажать кнопку “Цитата” у сообщения и удалить из получившегося текста лишнее.
Drag-n-Drop — тяни-и-бросай (перетаскивание)
Posted: Fri 02 Nov, 2018 21:55
by dmitrik
HaRT wrote: ↑Fri 02 Nov, 2018 14:08
Удостоверьтесь, пожалуйста, что Far.pdb и Far.exe строго для одного номера сборки и одной битности, иначе ничего не выйдет.
Да, еще раз перепроверил, всё точно соответствует.
Падение, собственно, не заставило себя долго ждать:
Exception: 0xC0000005 - EXCEPTION_ACCESS_VIOLATION
Details: Memory at 048BEAC4 could not be read
Address: 0x23431E - Far.exe!FileList::GetCurName
Source: c:\src\far\filelist.cpp:3893
Function: main
Module: D:\Utils\FileManagers\Far\Far\x86\Far.exe
Вот это всё выглядит так, будто плагин хукает PeekConsoleInput и вызывается в тот момент, когда фар перечитывает панели.
В этот момент внутреннее состояние не инвариантно - списка файлов уже нет, а текущий индекс еще не обновлён и указывает куда-то в космос.
Конкретно в этом случае можно, наверное, перетасовать код внутри фара и падать не будет, но я не уверен, что стоит вообще пытаться поддерживать такие сценарии.
Drag-n-Drop — тяни-и-бросай (перетаскивание)
Posted: Sun 04 Nov, 2018 11:16
by dmitrik
DrKnS wrote: ↑Fri 02 Nov, 2018 22:57
Вот это всё выглядит так, будто плагин хукает PeekConsoleInput и вызывается в тот момент, когда фар перечитывает панели.
Под окном с сообщением об ошибке видно, как содержимое панелей портится, да.
DrKnS wrote: ↑Fri 02 Nov, 2018 22:57
Конкретно в этом случае можно, наверное, перетасовать код внутри фара и падать не будет, но я не уверен, что стоит вообще пытаться поддерживать такие сценарии.
Я понимаю. Я, собственно, больше надеюсь на помощь автора плагина.
Но всё-таки задам вопрос. Я понимаю, что Far — это не комбайн с вертикальным взлетом "всё в одном", а платформа для плагинов. Но всё-таки это файловый менеджер под Windows, а задача перетаскивания файлов из него в другие приложения — очевидно нужная для такого класса приложений. Может (просто интересуюсь ) подумать о реализации такой функциональности в самом Far'е?
Вот это всё выглядит так, будто плагин хукает PeekConsoleInput и вызывается в тот момент, когда фар перечитывает панели.
В этот момент внутреннее состояние не инвариантно - списка файлов уже нет, а текущий индекс еще не обновлён и указывает куда-то в космос.
Конкретно в этом случае можно, наверное, перетасовать код внутри фара и падать не будет, но я не уверен, что стоит вообще пытаться поддерживать такие сценарии.
Да, хукает. https://github.com/karbazol/far-drag-n- ... cs.cpp#L76 .
А как вообще плагин может догадаться, что Far в неконсистентном состоянии? Пользователь вполне может начать/закончить что-нибудь тащить ровно в момент, когда Far обновляет состояние.
Drag-n-Drop — тяни-и-бросай (перетаскивание)
Posted: Tue 06 Nov, 2018 12:53
by dmitrik
grechnik wrote: ↑Sun 04 Nov, 2018 12:29
А как вообще плагин может догадаться, что Far в неконсистентном состоянии? Пользователь вполне может начать/закончить что-нибудь тащить ровно в момент, когда Far обновляет состояние.
Что характерно, у меня эти падения всегда происходят не в момент перетаскивания. Более того, даже не в те моменты, когда я непосредственно работаю с данным экземпляром Far'а. Это происходит в фоне, т.е., в те моменты, когда фокус либо вообще не у окна Far'а, либо у окна другого его экземпляра, в котором всё продолжает быть ок.
Drag-n-Drop — тяни-и-бросай (перетаскивание)
Posted: Tue 06 Nov, 2018 13:30
by DrKnS
grechnik wrote: ↑Sun 04 Nov, 2018 12:29А как вообще плагин может догадаться, что Far в неконсистентном состоянии?
Хороший вопрос.
А как фар может догадаться, когда ему можно быть в неконсистентном состоянии, если ему хукать шопопало?
Drag-n-Drop — тяни-и-бросай (перетаскивание)
Posted: Thu 31 Jan, 2019 14:27
by alandr967
Перетащил файл в скайп и он пропал из директории а в скайпе не появился,где его искать?:/
Drag-n-Drop — тяни-и-бросай (перетаскивание)
Posted: Thu 14 Feb, 2019 18:19
by grechnik
alandr967 wrote: ↑Thu 31 Jan, 2019 14:27
Перетащил файл в скайп и он пропал из директории а в скайпе не появился,где его искать?:/
Похоже, отдельные программы считают, что плагин запрашивает перемещение файла вместо копирования. Если таскать правой кнопкой мыши и явно выбирать копирование, воспроизводится? Если таскать левой кнопкой из Explorer вместо Far, воспроизводится?