我目前正在评估创建C#插件体系结构的不同方法(主要是MEF与MAF)。 System.Addin(MAF)似乎很有趣,但是在网络上没有太多有关它的信息。 为了更好地理解System.Addin的工作方式,我将非常高兴地看到其源代码。 我用Google搜索没有成功,你知道微软是否在某 ...
我目前正在评估创建C#插件体系结构的不同方法(主要是MEF与MAF)。 System.Addin(MAF)似乎很有趣,但是在网络上没有太多有关它的信息。 为了更好地理解System.Addin的工作方式,我将非常高兴地看到其源代码。 我用Google搜索没有成功,你知道微软是否在某 ...
在 System.AddIn(又名 MAF)管道适配器中,有大量的手动将值从一种 DTO 类型复制到另一种类型 - 从 HostView 类型到 Pipeline Contract 类型以及从 Pipeline Contract 类型到 AddIn 视图类型(然后再返回)。 这似乎是使用 autom ...
我设计了使用System.AddIn(MAF)的API,以允许独立于主机加载WPF插件。 目前,API使用AppDomains提供分隔,但是由于与AppDomains相关的限制,我试图将实现切换为使用AddInProcesses。 我一直使用以下项目作为模板: http : //www. ...
我开发的应用程序使用具有System.AddIn提供的.NET加载项功能的加载项。 我的宿主应用程序和加载项共享一些资源,例如WPF嵌入式字体和XAML图标。 我想避免在主机和插件中都包含它们 。 有没有什么办法可以做到而又没有太多的复杂性呢? 我的应用程序已经包含7个部分:主机,主 ...
我们正在使用System.AddIn结构来创建用于托管应用程序的应用程序。 我们想要的是让TextBox专注于这些单独的应用程序。 我们该怎么做? 我知道这些过程,因此我可以访问这些过程,也许可以收听消息泵? 但是如何? 要侦听哪些消息以及如何确定该控件是否获得焦点实际上是Te ...
我们正在测试MAF插件以用作我们的插件框架。 但是我们陷入了一个基本问题。 我们可以使用可序列化类型作为IContract参数吗? 合同和参数类型都在同一个程序集中定义: public interface IHostContract : IContract { ...
我正在尝试使用.NET4 System.AddIn命名空间编写MAF AddIn。 AddIn具有一个属性,该属性是称为“ ReportParameters”的自定义类型的集合。 AddIn上还有其他属性,它们是mscorlib中包含的本机类型(即:int,bool,字符串等),我在下面的代 ...
使用System.AddIn,有没有一种方法可以在不锁定.dll文件的情况下加载和激活AddIn? 我想删除或覆盖文件以加载我的AddIn的新版本。 此时解锁文件的唯一方法是关闭AddIn。 但是我需要让它始终保持来电状态(异步服务,是的,噩梦)。 也许还有另一种在运行时更新Ad ...
我有一个在Windows Service上运行的调度程序。 对于每个新事件,它都会创建一个新线程。 然后,每个线程都使用AddIn Framework加载DLL并执行任务。 它运行良好,但是现在,但是根据新的要求,如果我们决定这样做,或者事件需要花费很多时间,我希望能够杀死任何事件。 ...
我已经开发了一个调度程序,它在每个新事件中创建新线程。 在基于某些ID的线程中,使用System.AddIn加载了一个dll。 现在我想中途终止该事件? 在这种情况下如何实现此功能 ...
我已经建立了一个使用System.AddIn API的应用程序。 加载项当前在具有Internet信任的外部AppDomain中被激活。 为了提高性能,我为所有管道组件添加了强名称。 但是,一旦这样做,我在尝试激活加载项时会收到以下异常: System.Security.Secu ...
我正在使用System.AddIn将新组件添加到我的应用程序。 应用程序成功选择了新添加的加载项。 当前,如果我要添加新的插件,那么我需要创建类库类型的新项目,然后为该插件编写代码。 是否可以在同一个类库中添加多个插件,以便每次我都不需要添加新项目时? 如果可能的话,那么我在 ...
我已经阅读了很多关于 System.AddIn(又名托管加载项框架)的内容。 它允许您以不同的隔离模式激活加载项,包括单独的 AppDomain 或单独的进程。 我发现的大多数文章都暗示了进程隔离可用于实现应用程序可靠性这一事实,其中加载项可能会因未处理的异常而崩溃,但应用程序不会崩溃并且可以卸载有 ...
我有一些来自System.AddIn的插件。 但是在运行AddInStore.Rebuild时, 然后我得到一个警告字符串: 该文件不是有效的二进制文件:D:\\ AK \\ AS \\ ConverterModule \\ output \\ AddIns \\ Compo ...
我正在使用MAF(System.Addin)在共享的主窗体上显示WPF控件。 当我添加telerik reportviewer时,出现一个异常,我尝试访问的线程不同于拥有该控件的线程。 如果查看异常堆栈,则可以看到对Application.Mainwindow的引用,但是由于我位于Addin ...
我目前正在为我正在编写的程序开发一个加载项系统,并且遇到了主机和加载项应如何在同一基础上进行通信的问题。 我使用System.AddIn命名空间(以前称为MAF)来发现,隔离和激活加载项。 现在,由于我希望(需要?)加载项与主机存在于单独的AppDomain中,因此存在一个问题,即无法在 ...
我的应用程序正在动态加载插件,当我添加一个新模块时,我需要重建管道段缓存,但该应用程序在程序文件夹中没有写入权限并导致UnauthorizedAccessException。 我不想在临时目录或用户应用程序目录中复制插件。 有没有办法找到/激活新添加的插件而无需重建管道段缓存? ...
有谁知道如何处理使用System.AddIn创建的AddIns。 在线的所有示例似乎都显示了如何轻松加载和使用插件,但没有一个显示如何在它们活着时处置它们。 我的问题是我在新进程中创建插件,这些进程永远不会被垃圾收集,显然是一个问题。 下面是一些说明我的问题的示例代码。 假设用户从不 ...
我正在使用WPF应用程序,该应用程序使用System.AddIn解决了包装在WindowsFormsHost控件中的基于Windows Forms的控件遇到的内存泄漏问题。 加载项用于根据需要加载和卸载基于Windows Forms的控件,以避免WindowsFormsHost的开销,该开销会 ...
有谁知道将System.AddIn与ASP.NET和/或ASP.NET MVC应用程序一起使用的任何文章/示例吗? 我希望使用System.AddIn使ASP.NET MVC应用程序可扩展。 ...