NetBox — SFTP/SCP/FTP/FTPS/WebDAV client

Здесь можно обсудить ваш любимый плагин.
User avatar
Michael Lukashov
Posts: 484
Joined: Mon 23 Jan, 2006 09:38
Been thanked: 10 times
Contact:

NetBox — SFTP/SCP/FTP/FTPS/WebDAV client

Post by Michael Lukashov »

C 2013/02/28 плагин входит в дистрибутив FAR 3, заменяя собой FarFTP.

Полезные ссылки:

При возникновении проблем:
Last edited by Michael Lukashov on Sat 19 Sep, 2015 10:22, edited 2 times in total.
igor_20
Posts: 2
Joined: Wed 25 Nov, 2020 10:25

NetBox — SFTP/SCP/FTP/FTPS/WebDAV client

Post by igor_20 »

Latest post of the previous page:

Забыл добавить, что если убрать галочку с "Разрешать символьные ссылки", проблема исчезает.
Maximus
Posts: 31
Joined: Thu 08 Oct, 2009 15:20

NetBox — SFTP/SCP/FTP/FTPS/WebDAV client

Post by Maximus »

Maximus wrote: Wed 25 Nov, 2020 10:31 С релизами 5709 есть проблемы, возможно regression. Сравнение более или менее глубоких папок вызывает access violation
Exception: 0xC0000005 - EXCEPTION_ACCESS_VIOLATION

Немного побродил под дебаггером, как пример, это возникает на каком-то этапе в вызове CMStringData->IsLocked когда FStrings, созданные на основе векторного расширяются (grow) с 16 до 32 и перемещают с позиции 14 два элемента для того, чтобы сюда вставить, но там столько всего реализовано, чтобы повторить функциональность VCL-льных классов, что въехать очень сложно. Мое ощущение, что где-то не обнуляется буфер при появлении новых элементов и поэтому доступ к грязным данным происходит. При этом судя по логу, TStringList в новом режиме довольно много успешно добавляет. То есть AddObject-то по логике правильно работает, но какой-то менеджмент памяти подводит. Автора бы реализации этих классов сюда бы...
Last edited by Maximus on Wed 25 Nov, 2020 16:31, edited 1 time in total.
qwerty
Posts: 12
Joined: Fri 03 Apr, 2009 13:23

NetBox — SFTP/SCP/FTP/FTPS/WebDAV client

Post by qwerty »

Dzirt2005 wrote: Thu 02 Jun, 2016 19:25
zone51 wrote:А никто не знает, можно ли, чтобы плагин до начала работы автоматически после логина выполнял команду "sudo su"? Или требуется доимплемент?
Это разве не оно?
Тоже хотелось бы поиметь данную опцию для SFTP
Maximus
Posts: 31
Joined: Thu 08 Oct, 2009 15:20

NetBox — SFTP/SCP/FTP/FTPS/WebDAV client

Post by Maximus »

В борьбе с exception-ами кое-что выяснилось. Но я не знаю где лучше обсуждать до предложения pull-а и видимо по-русски для оперативности, дайте знать.

В методе TStringList::InsertItem заменил вызов

Code: Select all

  FStrings.insert(FStrings.begin() + Index, S);
на альтернативный по смыслу

Code: Select all

  FStrings.insert(FStrings.begin() + Index, 1, S);
но который использует другу реализацию из vector.h

Code: Select all

  void insert(iterator it, size_type n, const T& val)
AV исчез, список на синхронизацию показывается. То есть некорректный код был в реализации вставки через итератор. С момента передачи в 2013- году было серьзеное изменение, где могла появится ошибка (коммит, где менялся код в реализации с итератором без количества).

Я так понимаю Michael Lukashov не пишет здесь уже три года и не вовлечен в проект все это время. Я бы предложил pull этот на изменение, потому что не хочется темплейт вектора трогать, если там этот метод с ошибкой. Но хотелось бы еще чье-нибудь мнение.
Last edited by Maximus on Fri 27 Nov, 2020 11:05, edited 1 time in total.
User avatar
DrKnS
Posts: 5788
Joined: Thu 04 Aug, 2005 06:44
Location: Kyiv
Has thanked: 10 times
Been thanked: 332 times

NetBox — SFTP/SCP/FTP/FTPS/WebDAV client

Post by DrKnS »

Maximus wrote: Fri 27 Nov, 2020 11:05 не хочется темплейт вектора трогать, если там этот метод с ошибкой
Учитывая, что "RDESTL is library providing small subset of STL functionality" и то, что оно не обновлялось уже лет 5, я бы предложил закопать стюардессу глобально заменить rde:: на std::. Возможно, проблема на этом и уйдет, вместе с библиотекой.
Maximus
Posts: 31
Joined: Thu 08 Oct, 2009 15:20

NetBox — SFTP/SCP/FTP/FTPS/WebDAV client

Post by Maximus »

DrKnS wrote: Fri 27 Nov, 2020 19:04
Maximus wrote: Fri 27 Nov, 2020 11:05 не хочется темплейт вектора трогать, если там этот метод с ошибкой
Учитывая, что "RDESTL is library providing small subset of STL functionality" и то, что оно не обновлялось уже лет 5, я бы предложил закопать стюардессу глобально заменить rde:: на std::. Возможно, проблема на этом и уйдет, вместе с библиотекой.
Предложение интересное. Я даже и не сразу понял, что это производная проекта rdestl. Как первый чек я сделал diff vector.h в нем и в NetBox, разница по мелочи, но похоже включения типа algorithm.h все-таки значительно отличаются. Это я к тому, что оригинальный может не содержать ошибку (или иметь уже исправление), но это снова выкапывать стюардессу...

По поводу замены на std, у меня были сомнения, нет ли там чего-то более позднего, что потребует повысить минимальные требования VS 2010. Но сегодня попробовал под VS Express 2010

Code: Select all

#include <vector> 
....
std::vector<UnicodeString> FStrings;
и по старому вернуть

Code: Select all

FStrings.insert(FStrings.begin() + Index, S);
все скомпилялось и работает похоже без ошибок. Но там еще rde классы и в classes, где надо заменять и проверять. То есть путь-то, в общем-то, правильный, но, возможно, муторный

Из другого.
заметил, что когда в тестах моих было включено удалять в корзину и какой-то странный результат был под Windows 7, неполное исполнение списка синхронизации, потом увидел в дебаггере, что для семерки при удалении в корзину применяется нотация \\?\ которая судя по докам SHFileOperation вообще не поддерживается. Результат странный, честно говоря, вроде такое должны были раньше заметить, семерка уходящая натура, но не совсем еще ушла.
User avatar
Wave
Posts: 1792
Joined: Thu 04 Aug, 2005 18:47
Has thanked: 5 times
Been thanked: 17 times

NetBox — SFTP/SCP/FTP/FTPS/WebDAV client

Post by Wave »

https://github.com/FarGroup/Far-NetBox/ ... /ChangeLog — вот здесь последняя запись датирована трёхлетней давностью. При этом в самом https://github.com/FarGroup/Far-NetBox вроде как что-то делают. Возникают и правятся баги. Нельзя ли в чейнджлоге писать, что именно делается? Чисто чтобы ориентироваться на минном поле.
Пользуюсь ФАРом больше 20 лет © собирательный.
fps
Posts: 219
Joined: Wed 20 Apr, 2005 06:39
Has thanked: 18 times
Been thanked: 6 times

NetBox — SFTP/SCP/FTP/FTPS/WebDAV client

Post by fps »

При копировании файла с WebDAV на локальный диск не работает перезапись.
После ответа Yes на запрос **Overwrite local file 'file.txt'?** ничего не происходит. Ошибок не выводится и создается впечатление, что перезапись файла произошла.
В логе видно Copying finished: Transferred: 0

Копирование без перезаписи этого же файла в тот же каталог работает нормально.
Перезапись при подключении к серверу по FTP, SCP работает нормально.
v3.0.5730.0 x64 Win7
Last edited by fps on Thu 21 Jan, 2021 07:02, edited 2 times in total.
Post Reply

Return to “Обсуждение плагинов”