c# - 可升级和基于插件的应用程序开发

标签 c# c++ plugins

我一直在用 VC++ 和 VC# 编写应用程序。

我知道如何为用户提供对整个应用程序及其功能的定制。

但给我留下深刻印象的是 Mozilla Firefox 及其插件。我几乎可以找到任何我想要的自定义插件:

多行书签、自动保存文件夹、阻止站点、用户配置文件、Flash 视频保护程序、网页排名工具、Facebook 更新以及您想要在浏览器中添加的所有其他愚蠢\巧妙的东西。

这让我开始思考 Mozilla 在开发基本程序(即具有自定义设置的“Firefox”)之前考虑了多远。我的意思是他们提供了灵 active ,以便可以有多行书签,用户可以选择显示多少行,其余的将在向下滚动中显示。还有这个和所有其他的东西。

所有这些功能都来自插件,如何实现。

如果我想制作一个可以升级\插件\补丁的软件\应用程序。怎么弄。

  • 我需要从哪里开始学习?

我这样做的想法是为应用程序\软件的很多东西编写单独的 DLL,软件的所有内容都在 DLL 中定义,无论更新\补丁\插件,只需修改\升级\替换DLL,你可以做到这一点。

最佳答案

这是一个复杂的主题,但您可能想在 http://mef.codeplex.com/ 查看 MEF这是一个框架,可指导您创建可插入的托管应用程序。我记得动手实验是一个很好的开始,尽管我上次查看它是在几个版本之前。

关于c# - 可升级和基于插件的应用程序开发,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6398259/

相关文章:

c# - 哪些场景最大限度地发挥了 x64 系统中更高寄存器数量对 C# 代码的性能影响?

c# - 应用程序未等待完成任务

c++ - 如何用 C++ 中的控制台替换 ​​txt 文件中的一行?

c++ - 在没有布局的 "hidden"QGLWidget 中触发 PaintEvent?

flutter - 未处理的异常 : MissingPluginException(No implementation found for method check on channel plugins. flutter.io/connectivity)

许多插件的 JQuery 性能?

c# - WinForms:驱动器中没有磁盘。请将磁盘插入驱动器

c# - 如何仅通过 Win32 API 实现 .NET Process.Exited 事件

C++ "Function"未在此范围内声明

tomcat maven插件升级到tomcat 7