[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

相关文章
相关标签/搜索