程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> VC >> 關於VC++ >> 如何給自己的程序增加插件功能-用DLL做插件

如何給自己的程序增加插件功能-用DLL做插件

編輯:關於VC++

現在很多程序都支持外掛插件,插件可以使程序容易擴展。插件一般來說都是要求有標准接口的。我們在這裡做個最簡單的插件。插件的結構定義如下:

這個是插件DLL的輸出函數,用於創建插件。

BOOL Plug_CreateObject(void ** pobj){
*pobj = new CMyPlug;
return *pobj != NULL;
}

插件的基類定義

class CPlugBase {
public:
CPlugBase(){};
public:
virtual HICON GetIcon() = 0; //用於顯示插件的圖標
virtual void Hello(int k) = 0; //插件的功能函數。
virtual void Release() = 0; //釋放插件。
};

插件的類必須基於CPlugBase,要實現上述三個函數,其他可以任意擴展。

本例子包括一個主程序和兩個插件程序。

主程序界面:

這是沒有插件時的界面,我們可點擊 插件-〉增加 來增加插件,程序彈出

我們輸入類別和插件的文件,按OK就可增加一個插件,增加後程序自動增加一個圖標:

這個圖標就代表剛才的那個插件,同樣我們可以再次增加一個插件

我們測試點擊一下圖標1,

我們測試點擊一下圖標2

上述兩個message是運行了插件的hello函數所顯示的。

程序下次啟動時,插件已自動增加了,不用再次注冊。

上述程序在Win2000 professional + VC6 + SP5 + Platform SDK 2001.11下編譯運行通過。

一般安裝了vc就可,以前我在VC5+win98做過類似的。

本文配套源碼

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved