Mono.Addins:一个主应用程序可以注册一个扩展点由另一个应用程序注册的扩展吗?

fah*_*ash 6 mono.addins

我有以下场景:

共同项目

  • 注册几个扩展点(所有接口)有一个公共扩展管理器类,它返回已注册的扩展

图书馆计划

  • 注册为addin root注册一个扩展点,其扩展点由Common Project Registers注册一个扩展点

  • 有一个扩展管理器,它提供注册到上面扩展点的扩展

  • 查询用于检索一种类型的扩展并且什么也得不到的公共项目(扩展由主应用程序注册,未尝试在exeins目录中放置exe的副本)

主要应用(exe)

  • 已注册的ass addin root注册扩展点位于Common Project中的扩展
  • 查询扩展点,其中扩展点和扩展名都在Library Project中注册.
  • 仅当Library.dll位于./addins目录中时才成功获取扩展名.

我的问题是

  1. 我们不能有一个单独的项目,只注册扩展点,并有其他程序集,包括这些点的主要应用程序导出/注册扩展?
  2. 我们是否应该将所有扩展点保留在主应用程序或某些插件根目录中?如果扩展开发人员发布他们的扩展,引用注册点的主要程序集的过时版本会怎么样?