有许多应用程序只是基本的,但您可以安装插件来扩展其在该应用程序中的功能。例如:
他们如何设计这样的应用程序,应用程序如何接受模块以及如何自动集成。其次,我不知道上述过程是通用的还是与某种语言或工具相关的。我们能否在WPF或Winforms中创建这样的应用程序?Fire Bug in Mozilla Firefox.
有许多应用程序只是基本的,但您可以安装插件来扩展其在该应用程序中的功能。例如:
他们如何设计这样的应用程序,应用程序如何接受模块以及如何自动集成。其次,我不知道上述过程是通用的还是与某种语言或工具相关的。我们能否在WPF或Winforms中创建这样的应用程序?Fire Bug in Mozilla Firefox.
请查看MEF。
托管可扩展框架(MEF)是.NET中的一个新库,它可以更好地重用应用程序和组件。使用MEF,.NET应用程序可以从静态编译转变为动态组合。如果您正在构建可扩展的应用程序、可扩展的框架和应用程序扩展,那么MEF就是为您而设计的。
这真的取决于您的应用程序设计/布局/界面和所使用的语言。
在C、C++、C#和许多其他语言中都可以实现,但真正的实现取决于您希望它如何工作:
许多游戏(特别是MMORPG)允许用户使用一些组合的XML和脚本文件(例如Lua)修改和扩展其UI。这是更容易且更安全的方法,特别适用于经验不足的用户(更容易编辑/更新/使用,您的用户不必理解完整的语言,您决定公开什么)。
其他程序使用库文件进行插件。总体概念与上述类似,但使用起来更困难(要创建插件/扩展,您必须了解支持的编程语言),并且可能会公开比您想要的更多的内容(例如,插件可以修改您不想让它们接触的程序部分)。
通用过程始终类似:
由于您在C#下进行了标记,我猜您更喜欢dll/程序集方法。有其他问题具有工作解决方案,例如这个。