外掛程式式程式開發及其應用(C ) 2 完成)

2021-04-08 12:44:30 字數 802 閱讀 5121

昨天寫出了個基於assembly的外掛程式式結構模型,整體上有三個部分組成:

1)外掛程式協議(iplugin)

定義了作為外掛程式必須實現的幾個方法(見下面的**),並通過這個介面來判斷;另外包含了對外掛程式的一些基本操作,定義在pluginutil類中

using system;

using system.data;

using system.windows.forms;

namespace pluginprotocol

}2)各種外掛程式

和一般的類庫開發沒什麼不同,只是增加了乙個基於iplugin的類,實現一些必須實現的介面,需要注意的是,createmainform方法是介面的入口

3)主程式

要呼叫介面非常簡單,只要兩句話:

pluginprotocol.iplugin p = pluginprotocol.pluginutil.getpluginobject(@"e:/開發/測試/plugintest/plugin1/bin/debug/plugin1.dll");

control c = p.createmainform(null, this, null);

--------------

以上模型可以實現動態載入外掛程式,但解除安裝外掛程式卻碰到些問題,後來查了些資料,原來是assembly本身不提供unload方法的,不過,可以通過別的方法模擬這個unload(不太爽:()

參考以下資料

外掛程式式程式開發及其應用(C )

1 定義所謂 外掛程式模型 指應用程式由一些動態的獨立模組構成,每個模組均具有乙個或多個服務,並滿足一定的外掛程式協議,能夠借助主程式實現主程式 外掛程式 外掛程式 外掛程式之間的通訊。應用該模型的系統,具有以下特點 1 所有業務功能均是 磚塊 更新及維護簡便 2 子系統的概念變得模糊,子系統是多個...

C 外掛程式式程式開發

c 外掛程式式程式開發 在網上找了下外掛程式式程式設計的資料,這裡自己先借鑑下別人的,同時發現有自己的看法,不過由於本人水平有限,不一定有參考價值,寫出來一方面是為了總結自己,以求提高,另一方面也希望各為朋友看到我的不足,給我提出寶貴意見。外掛程式的本質在於不修改程式主體 平台 的情況下對軟體功能進...

C 外掛程式式程式開發

什麼是外掛程式式程式設計 外掛程式的本質在於不修改程式主體 平台 的情況下對軟體功能進行拓展與加強,當外掛程式的介面公開後,任何公司或個人都可以製作自己的外掛程式來解決一些操作上的不便或增加新功能,也就是真正意義上實現 即插即用 軟體開發。平台 外掛程式軟體結構是將乙個待開發的目標軟體分為兩部分,一...