Использование исходников FAR в стороннем продукте

Разработка Far.
Dec
Posts: 67
Joined: Wed 14 Jul, 2010 08:59
Been thanked: 3 times

Использование исходников FAR в стороннем продукте

Post by Dec »

Ищу помощи (оплачиваемой мной (в разумных пределах)).

Я являюсь разработчиком небольшой утилитки под названием TC4Shell. Ее суть в том, что она позволяет пользователю открывать прямо в обычном виндовом Проводнике различные архивы, такие как 7z или rar, аналогично встроенной по умолчанию в Проводник поддержке формата zip. TC4Shell поддерживает работу с WCX-плагинами Total Commander, и еще я решил добавить в TC4Shell поддержку FAR-овских панельных плагинов. В принципе, TC4Shell уже поддерживает плагины FAR, но с некоторыми ограничениями. Как это выглядит можно посмотреть на анимированной гифке (4 MB).

Сам я пишу на Delphi, с C++ знаком не очень (точнее очень не знаком), поэтому исходные коды фара могу только читать, и то с большими ограничениями. В данное время в SetStartupInfoW для некоторых функция я передаю просто заглушки, поскольку некоторые функций я не могу реализовать в силу ограничений языка (например, sprintf или snprintf) или в силу того, что просто не знаю, как их реализовывать (например, RegExpControl).

Собственно, суть моего поста. Ищу человека, который согласится сделать для меня dll на основе исходников FAR, которая бы экспортировала бы следующие функции:

RegExpControl
sprintf (A и W варианты)
sscanf (A и W варианты)
snprintf (A и W варианты)
GetPathRoot
FarInputRecordToName
FarNameToInputRecord
ConvertPath

Эти функции, кроме ConvertPath, будут передаваться в SetStartupInfoW. Отдельное замечание о ConvertPath. Я бы хотел, что бы она имела прототип вида

size_t WINAPI ConvertPath(
enum CONVERTPATHMODES Mode,
const wchar_t *Src,
const wchar_t *CurrentDirectory,
wchar_t *Dest,
size_t DestSize
);

CurrentDirectory - это дополнительный параметр, который бы использовался в этой функции вместо вызова os::GetCurrentDirectory.

В идеале хотелось бы иметь проект, например, для VS 2015, который бы я смог сам скомпилировать. Возможно, в будущем будут найдены какие либо неточности или ошибки в коде FAR этих функций, что бы я мог самостоятельно подправить и скомпилировать новую версию.

Повторюсь, я готов оплатить создание такой dll. Как то так.
2useven10
Posts: 5192
Joined: Mon 07 Sep, 2009 10:40
Has thanked: 18 times
Been thanked: 309 times

Использование исходников FAR в стороннем продукте

Post by 2useven10 »

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

Не понял сразу для чего это нужно.
Last edited by 2useven10 on Tue 10 Oct, 2017 04:01, edited 3 times in total.
Dec
Posts: 67
Joined: Wed 14 Jul, 2010 08:59
Been thanked: 3 times

Использование исходников FAR в стороннем продукте

Post by Dec »

2useven10 wrote: Tue 10 Oct, 2017 03:52В SetStartupInfoW фар передаёт плагину
Я не спорю с утверждением. Но я реализую не плагин, а хост для плагинов, т.е. ПО, которое использует плагины FAR и эмулирует FAR api.
2useven10
Posts: 5192
Joined: Mon 07 Sep, 2009 10:40
Has thanked: 18 times
Been thanked: 309 times

Использование исходников FAR в стороннем продукте

Post by 2useven10 »

Уже понял, не успел удалить :)
Dec
Posts: 67
Joined: Wed 14 Jul, 2010 08:59
Been thanked: 3 times

Использование исходников FAR в стороннем продукте

Post by Dec »

Господа, скажите, а вообще существует ли какая либо сумма, которая способна заинтересовать вас решить мою проблему? 8000 руб, 16000 руб, 32000 руб, 64000 руб... Или есть какие то идеологические мотивы, типа "Нечего наше ФАРовское добро разбазаривать, уж тем более ради тех, кто пользуется Проводником, не к ночи будучи упомянутым".
Shmuel
Posts: 6815
Joined: Thu 23 Mar, 2006 21:36
Location: Israel
Has thanked: 41 times
Been thanked: 526 times

Использование исходников FAR в стороннем продукте

Post by Shmuel »

- Нет никаких идеологических мотивов.
- У меня, например, на данном "этапе" тупо нет времени.
- Насчёт отсутствия реакции от других - не знаю.
- Нормальная сумма может заинтересовать любого.
Dec
Posts: 67
Joined: Wed 14 Jul, 2010 08:59
Been thanked: 3 times

Использование исходников FAR в стороннем продукте

Post by Dec »

Shmuel, спасибо за ответ. Я с самого начала писал, что готов оплатить свои хотелки. Но тем не менее, к моему сожалению, желающих не возникло. Вот я и подумал, что существуют идеологические мотивы. Или те, кто могут реализовать задачу, думают, что я априори не соглашусь оплатить озвученную ими сумму, поэтому даже и не писали. Вот я и пытаюсь понять, что является "нормальной" суммой.
Last edited by Dec on Wed 22 Nov, 2017 23:25, edited 1 time in total.
Shmuel
Posts: 6815
Joined: Thu 23 Mar, 2006 21:36
Location: Israel
Has thanked: 41 times
Been thanked: 526 times

Использование исходников FAR в стороннем продукте

Post by Shmuel »

Dec wrote: Wed 22 Nov, 2017 23:24Вот я и пытаюсь понять, что является "нормальной" суммой.
Если кто-то откликнется, он озвучит эту величину (не в форуме, разумеется) :)
2useven10
Posts: 5192
Joined: Mon 07 Sep, 2009 10:40
Has thanked: 18 times
Been thanked: 309 times

Использование исходников FAR в стороннем продукте

Post by 2useven10 »

Dec, Пробуйте...
Вырезано ножницами (#ifndef TC4FSF).
Тянет много лишнего, но фигурной кройкой заниматься времени нет.
Отрезано от b5101.
Проект и дополнительные файлы надо поместить в каталог far/
Last edited by 2useven10 on Mon 27 Nov, 2017 14:36, edited 2 times in total.
2useven10
Posts: 5192
Joined: Mon 07 Sep, 2009 10:40
Has thanked: 18 times
Been thanked: 309 times

Использование исходников FAR в стороннем продукте

Post by 2useven10 »

Была опечатка. Поправлю - перевыложу.
2useven10
Posts: 5192
Joined: Mon 07 Sep, 2009 10:40
Has thanked: 18 times
Been thanked: 309 times

Использование исходников FAR в стороннем продукте

Post by 2useven10 »

Опечатку убрал. Проверять надо всё, я не тестировал никак.
Attachments
TC4FSF.7z
(55.55 KiB) Downloaded 169 times
Last edited by 2useven10 on Sun 10 Dec, 2017 11:15, edited 2 times in total.
Dec
Posts: 67
Joined: Wed 14 Jul, 2010 08:59
Been thanked: 3 times

Использование исходников FAR в стороннем продукте

Post by Dec »

Большое спасибо! Буду пробовать.
Dec
Posts: 67
Joined: Wed 14 Jul, 2010 08:59
Been thanked: 3 times

Использование исходников FAR в стороннем продукте

Post by Dec »

2useven10, к сожалению, моих мозгов не хватит, что бы собрать.

2useven10
Posts: 5192
Joined: Mon 07 Sep, 2009 10:40
Has thanked: 18 times
Been thanked: 309 times

Использование исходников FAR в стороннем продукте

Post by 2useven10 »

Dec, Лучше бы 'по горячим следам' ...
В выложенном архиве вместо изменённого network.cpp нетронутый network.hpp, можно diff накатить на b5101.
чтобы получить все изменения. diff полный, остальные файлы вроде на месте.
Можно и руками перенести изменения - там всего 2 пары #ifndef TC4FSF / #endif.
Я у себя проект уже удалил, но если будут сложности - завтра восстановлю.
Dec
Posts: 67
Joined: Wed 14 Jul, 2010 08:59
Been thanked: 3 times

Использование исходников FAR в стороннем продукте

Post by Dec »

2useven10, С ifdef собралось. Буду тестировать, спасибо.
Post Reply

Return to “Development”