[Unity3d]調用本身封裝的dll,僞裝讓本身也牛B一把吧

以前總感受會封裝dll組件的都是大牛級別的程序員作的事情,而後供給菜鳥級別的調用。感受爲了保護本身的源碼不會被他人知道,而後就封裝一個dll供人家調用,那樣就以爲很牛,今天我也嘗試摸索了一下,感受也就那麼回事,但只是簡單的測試而已,其實會寫封裝的,封裝的好的仍是很牛的,哈哈,那讓咱們也來僞裝「牛」一次吧! 程序員

首先要申明的是,unity3d支持C#語言,但只有pro版本才支持.net2.0,其餘版本是不支持的,但也只有pc平臺才支持,切記 工具

操做步驟:

1.封裝dll

打開vs2010,新建項目,選擇類庫,而後命名(這裏的命名就是你封裝的dll的名字),下面我就簡單的封裝一個方法,只作爲演示,這樣你就能夠封裝更多更好的屬於本身「私有」的方法,這裏私有是有侷限性的,由於有反編譯工具能查看到你編譯的源碼的,下面我就演示一下一個神器,.net的反編譯工具(.NET Reflector)。
測試

我先在vs中建立一個類,就一個簡單的靜態方法和靜態類: spa

[csharp]  view plain copy print ? 在CODE上查看代碼片 派生到個人代碼片
  1. namespace dingxiaowei  
  2. {  
  3.     public static class dxw  
  4.     {  
  5.         public static string showName(string name)  
  6.         {  
  7.             return name;  
  8.         }  
  9.     }  
  10. }  
而後進行編譯,編譯成的dll,名字爲dingxiaowei.dll,而後咱們將這個dll文件拖到反編譯器,咱們看一下反編譯出來的是啥?

類:,反編譯能看到dxw類中的一些方法。 .net

點擊方法,就能看到具體方法的實現: 3d


2.在unity中使用自定義的dll組件

在unity中建立一個Plugins文件夾,全部的外部引用的dll組件必需要放在這個文件下,才能被using。若是是C#封裝的dll,就用using的方式引用,若是是C++的dll,就DllImport["dxw.dll"]的方式來添加對dll的引用。而後我在C#腳本中用這個dll, code

運行結果:看到可以正確輸出了! blog

相關文章
相關標籤/搜索