c 實現動態載入Dll

2021-05-17 16:17:44 字數 667 閱讀 9808

原理如下:

1、利用反射進行動態載入和呼叫.

assembly assembly=assembly.loadfrom(dllpath); //利用dll的路徑載入,同時將此程式集所依賴的程式集載入進來,需後輟名.dll

assembly.loadfile 只載入指定檔案,並不會自動載入依賴程式集.assmbly.load無需後輟名

2、載入dll後,需要使用dll中某類.

type type=ass.gettype(「typename」);//用型別的命名空間和名稱獲得型別

3、需要例項化型別,才可以使用,引數可以人為的指定,也可以無引數,靜態例項可以省略

object obj = activator.createinstance(type,params);//利用指定的引數例項話型別

4、呼叫型別中的某個方法:

需要首先得到此方法

methodinfo mi=type.getmethod(「mehtodname」);//通過方法名稱獲得方法

5、然後對方法進行呼叫,多型性利用引數進行控制

mi.invoke(obj,params);//根據引數直線方法,返回值就是原方法的返回值

以下摘自msdn

c 實現動態載入Dll

基本思路 1 利用反射進行動態載入和呼叫.assembly assembly assembly.loadfrom dllpath 利用dll的路徑載入,同時將此程式集所依賴的 程式集載入進來,需後輟名.dll assembly.loadfile 只載入指定檔案,並不會自動載入依賴程式集.assmbl...

c 實現動態載入Dll

原文 c 實現動態載入dll 原理如下 1 利用反射進行動態載入和呼叫.assembly assembly assembly.loadfrom dllpath 利用dll的路徑載入,同時將此程式集所依賴的程式集載入進來,需後輟名.dll assembly.loadfile 只載入指定檔案,並不會自動...

c 實現動態載入Dll

c 實現動態載入dll 原文 c 實現動態載入dll 原理如下 1 利用反射進行動態載入和呼叫.assembly assembly assembly.loadfrom dllpath 利用dll的路徑載入,同時將此程式集所依賴的程式集載入進來,需後輟名.dll assembly.loadfile 只...