Unity3d 载入 C++/CLI (托管模式c++) 的动态库(DLL)

打开vs.然后新建. 这时候选择. CLR库项目.

Unity3d 载入 C++/CLI (托管模式c++) 的动态库(DLL)

之后就进入了项目.然后加入如下代码 用来测试 是否dll 被使用. a 和 b 相加返回结果.很简单的程序.

 

Unity3d 载入 C++/CLI (托管模式c++) 的动态库(DLL)

之后就是需要改一些项目的属性. 因为unity使用mono的原因. 

1.Framework3.5 是 unity的版本. 这里本人的vs是2012/2013 使用fw 4.5了. 所以高了这里需要降下来.由于IDE里面没有选项所以需要打开 proj文件来修改版本.

Unity3d 载入 C++/CLI (托管模式c++) 的动态库(DLL)

Unity3d 载入 C++/CLI (托管模式c++) 的动态库(DLL)

把v4.5 改成 v3.5就ok.

2.clr也是很多版本的. unity支持 safe的clr. 所以这个也需要改.

 

Unity3d 载入 C++/CLI (托管模式c++) 的动态库(DLL)

项目上面 右键属性.

 

Unity3d 载入 C++/CLI (托管模式c++) 的动态库(DLL)

选成 safe的clr.就可以了. 然后编译出来 dll.

 

Unity3d 载入 C++/CLI (托管模式c++) 的动态库(DLL)

最后就是.把dll copy到unity里面去使用.unity需要建一个plugin的文件夹来存放dll.

放到这个文件夹里 之后.unity就可以使用了.

然后我们创建一个unity的c#脚本.来调用TSEngineCLI.

 

Unity3d 载入 C++/CLI (托管模式c++) 的动态库(DLL)


原文:https://blog.****.net/spiritring/article/details/22942839