FarNet — плагин для написания плагинов на .NET языках
- NightRoman
- Posts: 6173
- Joined: Fri 18 Aug, 2006 13:52
- Location: Cambridge, UK
- Has thanked: 32 times
- Been thanked: 62 times
- Contact:
В far.exe.config хотелось бы иметь слудующие пути (наскаолько я понимаю относительные указать сечас можно):mugz wrote:Можешь конкретизироват к каким и как? Вообще путь к директории lib настраивается в far.exe.config могу остальные пути туда же поместить
1) К каталогу lib (уже есть)
2) К каталогу plugins\Far.Net\bin
3) К каталогу Plugins.Net
PS: Незнаю как сейчас, но с прошлой версией этой цацки у меня не работали плагины с количеством префиксов больше 1. Тоесть срабатывал только 1й прификс, хотя The Underscope показывал, что у плагина этих префиксов несколько. Вообщем пока не будут пути конфигуряться, я к сожалению проверить не смогу, а как зарелизишь, тогда кину точный баг репорт (если он конечно будет).
Итак вот что получилось.
Структура каталогов следующая:
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" тоже лучше сделать относительным):
При этом сразу получил:
Структура каталогов следующая:
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 (60.29 KiB) Viewed 35457 times
Конфиг не мой, а приложения Far.exe
судя по всему, он не может найти свои билиотеки.
см:
http://msdn.microsoft.com/library/defau ... robing.asp
http://msdn.microsoft.com/library/en-us ... mblies.asp
возможно он не понимает относительных путей (стандартный способ хранения в подпапках)
Насчет относительного пути для плагинов подумаю. Кстати, относитеьно чего хотелось бы его прописывать? Относительно плагина? Фара?
Вопрос: чем плохо помещать библиотеки в подпапки %FARHOME%?
судя по всему, он не может найти свои билиотеки.
см:
http://msdn.microsoft.com/library/defau ... robing.asp
http://msdn.microsoft.com/library/en-us ... mblies.asp
возможно он не понимает относительных путей (стандартный способ хранения в подпапках)
Насчет относительного пути для плагинов подумаю. Кстати, относитеьно чего хотелось бы его прописывать? Относительно плагина? Фара?
Вопрос: чем плохо помещать библиотеки в подпапки %FARHOME%?
потихоньку начал портировать скрипты на .NET и помещять их в список рассылки:
http://groups-beta.google.com/group/shp-dev
http://groups-beta.google.com/group/shp-dev
Относительто того, где ты их прописываешь конечно, тоеть относительно файла конфига.mugz wrote:Конфиг не мой, а приложения Far.exe
Насчет относительного пути для плагинов подумаю. Кстати, относитеьно чего хотелось бы его прописывать? Относительно плагина? Фара?
Ай, извращенец я простоmugz wrote: Вопрос: чем плохо помещать библиотеки в подпапки %FARHOME%?

Итог пока печальный, плагин не заработал...
попробуй положить 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>
Еще можно попробовать заставить писать лог:
<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>