我在Windows服务进程中激活了几个插件。我有另一个运行GUI应用程序的进程。我想要的是以某种方式获得激活的插件形成服务。问题是我无法在服务进程中获得激活的addins事件。有什么想法吗?
PS:我说的是System.Addin
编辑:
我真正想要的是关闭插件。一种方法就是下面的代码。问题是我需要引用插件。 GUI应用程序没有这样的引用。我应该在服务中序列化并在GUI中反序列化吗?
// Retreive the AddInController for my add-in and then shut it down
AddInController.GetAddInController(addin).Shutdown();
答案 0 :(得分:2)
这实际上是一个进程间通信问题。尽管您的服务可以在激活它们时保留加载项列表,但除非服务明确公开,否则其他应用程序无法看到该列表。这意味着问题与暴露任何对象列表没有什么不同。
您可以通过多种方式执行此操作,例如公开WCF服务,共享数据库或内存映射文件。