Untiy動態載入 dll檔案

2021-08-19 05:46:26 字數 835 閱讀 2312

這裡先說一下反射

system.reflection命名空間

(2) assembly:程式集類

(3) module:模組

(4) type:使用反射得到型別資訊的最核心的類

我們用assembly類來載入已經打包好的dll檔案。

**實現

我在這裡呼叫的是dll檔案裡的class1類的myfun()方法;

協程的意義在於載入完此程式集後才獲取類。

執行結果

我的myfun()方法列印了2333。這裡執行正常。 小結

在assembly類裡有兩種載入dll檔案的方法:

1.assembly.loadfrom();已知程式集的檔名或路徑,引導程式集。

2.assembly.loadfile();載入指定路徑上的程式集檔案的內容。

一眼看下去沒什麼差別,但畢竟是兩種方法還是有些不同的,

assembly.loadfile只載入相應的dll檔案,比如assembly.loadfile("myfun.dll"),則載入

myfun

.dll,假如

myfun

.dll中引用了abc.dll的話,

abc.dll並不會被載入。 

assembly.loadfrom則不一樣,它會載入dll檔案及其引用的其他dll,比如上面的例子,abc.dll也會被載入。 

動態載入類(動態載入DLL檔案) zz

本人剛剛開始編寫程式不久,開發中發現一非常好的方法。大家共享。我們在編寫程式的時候經常會遇到這樣的情況 程式中要用到某種計算,而且這種計算的計算方式很多,我們不得不在編寫程式時就要考慮的十分全面,將各種情況到考慮到。但是這樣做又非常的費力,因為我們無法 到程式編好後,還會出現什麼樣的計算方式。如果計...

動態載入dll

利用反射進行動態載入和呼叫.assemblyass assembly.loadfrom dllpath 利用dll的路徑載入 載入dll後,需要使用dll中某類.type type ass.gettype typename 利用型別的命名空間和名稱獲得型別 需要例項化型別,才可以使用,引數可以人為的...

靜態載入dll和動態載入dll

一,首先編寫dll 建win32空dll工程 標頭檔案.h extern c declspec dllexport int max int a,int b extern c 解決函式名由於不同編譯器造成的名字匹配問題,通常c 編譯器編譯時會對函式進行改名,而c編譯器不會 extern c decls...