FarNet — плагин для написания плагинов на .NET языках

Здесь можно обсудить ваш любимый плагин.
Post Reply
User avatar
4ekucT
Posts: 507
Joined: Tue 05 Apr, 2005 23:44
Location: Беларусь, Минск

Post by 4ekucT »

Слухай, будь другом, сделай пути ко всем директориям настраиваемыми...
mugz
Posts: 181
Joined: Thu 02 Jun, 2005 13:36
Contact:

Post by mugz »

Можешь конкретизироват к каким и как? Вообще путь к директории lib настраивается в far.exe.config могу остальные пути туда же поместить
User avatar
4ekucT
Posts: 507
Joined: Tue 05 Apr, 2005 23:44
Location: Беларусь, Минск

Post by 4ekucT »

mugz wrote:Можешь конкретизироват к каким и как? Вообще путь к директории lib настраивается в far.exe.config могу остальные пути туда же поместить
В far.exe.config хотелось бы иметь слудующие пути (наскаолько я понимаю относительные указать сечас можно):
1) К каталогу lib (уже есть)
2) К каталогу plugins\Far.Net\bin
3) К каталогу Plugins.Net

PS: Незнаю как сейчас, но с прошлой версией этой цацки у меня не работали плагины с количеством префиксов больше 1. Тоесть срабатывал только 1й прификс, хотя The Underscope показывал, что у плагина этих префиксов несколько. Вообщем пока не будут пути конфигуряться, я к сожалению проверить не смогу, а как зарелизишь, тогда кину точный баг репорт (если он конечно будет).
mugz
Posts: 181
Joined: Thu 02 Jun, 2005 13:36
Contact:

Post by mugz »

ок. сделаю. вроде правил что-то такое.
mugz
Posts: 181
Joined: Thu 02 Jun, 2005 13:36
Contact:

Post by mugz »

см. атач
Attachments
customizing.rar
(4.02 KiB) Downloaded 900 times
User avatar
4ekucT
Posts: 507
Joined: Tue 05 Apr, 2005 23:44
Location: Беларусь, Минск

Post by 4ekucT »

Ок приду домой посмотрю и отпишусь...
mugz
Posts: 181
Joined: Thu 02 Jun, 2005 13:36
Contact:

Post by mugz »

только если хочешь plugins.net запихать в подпапку plugins - надо расширения dll заменить на что-нибудь еще.
User avatar
4ekucT
Posts: 507
Joined: Tue 05 Apr, 2005 23:44
Location: Беларусь, Минск

Post by 4ekucT »

Итак вот что получилось.
Структура каталогов следующая:
C:\Soft\Far\Bin\Far.exe - сам фар
C:\Soft\Far\Bin\Far.exe.config - конфиг твоего плугина
C:\Soft\Far\Lib - каталог lib из твоего плугина
C:\Soft\Far\Plugins.NET - каталог Plugins.NET из твоего плугина
C:\Soft\Far\Plugins\Script\.NET\FarNetPlugin.dll - сам плугин

Содержимое Far.exe.config (key="FarManager.Plugins" тоже лучше сделать относительным):

Code: Select all

<configuration>
  <runtime>
    <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
      <probing privatePath="..\Lib"/>
    </assemblyBinding>
  </runtime>
  <appSettings>
    <add key="FarManager.Plugins" value="С:\Soft\Far\Plugins.NET" />
  </appSettings>
</configuration>
При этом сразу получил:
Attachments
1.jpg
1.jpg (60.29 KiB) Viewed 35733 times
mugz
Posts: 181
Joined: Thu 02 Jun, 2005 13:36
Contact:

Post by mugz »

Конфиг не мой, а приложения Far.exe

судя по всему, он не может найти свои билиотеки.

см:
http://msdn.microsoft.com/library/defau ... robing.asp

http://msdn.microsoft.com/library/en-us ... mblies.asp

возможно он не понимает относительных путей (стандартный способ хранения в подпапках)

Насчет относительного пути для плагинов подумаю. Кстати, относитеьно чего хотелось бы его прописывать? Относительно плагина? Фара?

Вопрос: чем плохо помещать библиотеки в подпапки %FARHOME%?
mugz
Posts: 181
Joined: Thu 02 Jun, 2005 13:36
Contact:

Post by mugz »

потихоньку начал портировать скрипты на .NET и помещять их в список рассылки:
http://groups-beta.google.com/group/shp-dev
User avatar
4ekucT
Posts: 507
Joined: Tue 05 Apr, 2005 23:44
Location: Беларусь, Минск

Post by 4ekucT »

mugz wrote:Конфиг не мой, а приложения Far.exe
Насчет относительного пути для плагинов подумаю. Кстати, относитеьно чего хотелось бы его прописывать? Относительно плагина? Фара?
Относительто того, где ты их прописываешь конечно, тоеть относительно файла конфига.
mugz wrote: Вопрос: чем плохо помещать библиотеки в подпапки %FARHOME%?
Ай, извращенец я просто :lol:

Итог пока печальный, плагин не заработал...
mugz
Posts: 181
Joined: Thu 02 Jun, 2005 13:36
Contact:

Post by mugz »

попробуй положить lib на место - в качестве подпапки %FARHOME%

Еще можно попробовать заставить писать лог:

<configuration>
...
<system.diagnostics>
<trace autoflush="true" indentsize="0">
<listeners>
<add name="MyListener"
type="System.Diagnostics.TextWriterTraceListener"
initializeData="Far.Exe.log"/>
</listeners>
</trace>
</system.diagnostics>
</configuration>
User avatar
4ekucT
Posts: 507
Joined: Tue 05 Apr, 2005 23:44
Location: Беларусь, Минск

Post by 4ekucT »

mugz wrote:попробуй положить lib на место - в качестве подпапки %FARHOME%
Запахало.

Сделал еще вот так <add key="FarManager.Plugins" value="%FARHOME%\..\Plugins.NET" /> тоже раобтает.

Тогда раз уж есть <probing privatePath="Lib"/>, то почему
<probing privatePath="%FARHOME%\..\Lib"/> не хотит?
mugz
Posts: 181
Joined: Thu 02 Jun, 2005 13:36
Contact:

Post by mugz »

<add key="FarManager.Plugins" value="%FARHOME%\..\Plugins.NET" />
обрабатывает ЗагрузчикПлагинов (см. исходник посланный вчера), а
<probing privatePath="%FARHOME%\..\Lib"/> сам фреймфорк.

Может в список рассылки перейдем?
Post Reply

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