最近在做Winform 与 u3d 的结合开发,被u3d引用winform的dll的问题困扰了几天了。
一般个人生成的dll文件,通过直接拖到项目中Plugins文件就可以直接引用运行,以及导出生成一条龙。
但是如果你需要引用windows的dll文件,则会遇到各样为题,如你能成功地引用到文件,在编辑器中运行也会正常运行。但是当你进行导出文件的时候,你会发现console中的红色字体让你懵逼,如图
然后开始网上各种查找,然后找到一堆乱七八糟的办法或者是对付旧版本的方法,然后开始自己慢慢找问题,开始意识到可能跟.NET版本相关,最终猜测可能跟引用到的windows的dll相关,然后开始查找引用问题,最终在https://www.jianshu.com/p/3d4ca2215a51这位大哥的jianshu中得到了救赎。
然后顺便贴出我自己的解决的流程(引用WIndows的DLL)https://blog.csdn.net/Terrell21/article/details/95618731
1. 找到自己Unity的对应编辑器的路径
例:E:\UnityEditor\Unity3.5f1\Editor\Data\MonoBleedingEdge\lib\mono
若对应版本文件中的DLL无法使用,排除其他情况后,可尝试以下文件夹的DLL
例:E:\UnityEditor\Unity3.5f1\Editor\Data\MonoBleedingEdge\lib\mono\unityjit
然后从文件中找到.net版本对应的 并且是你所需要的dll文件
(粗暴的方法)...找到文件后直接拖到Plugins文件夹中,完事。
在Unity Vs项目中 双击任意分析器文件
对象浏览器中
...根据所知路径,添加,然后添加引用。