这两天在做一个unity打开文件选择框的功能。网上找到两种方法,
第一种是调用win32打开对话框,这个挺好,但是有个致命的问题,没办法多选!!!多选的话返回的是根目录的路径,文件名返回不了,找了半天答案,自己改了半天也搞不定。所以就放弃了。
第二种就是引用System.Windows.Forms,这个遇到的坑更多,首先是引用老是报错,然后在unity里运行正常,打包出去不是oops奔溃,就是失效。网上找了半天效果都不是太好,最后自己研究半天终于搞定了,把容易遇到的坑总结下把~
1、关于System.Windows.Forms这个dll,必须引用这个路径下的:X:\Unity安装目录\Editor\Data\Mono\lib\mono\2.0,其他的统统不行,因为在Unity安装目录下有好多个System.Windows.Forms,必须是这个目录下的!!!!其他目录下的dll或许能运行,但是打包出去会各种报错!!!
2、dll必须得放在工程根目录下,网上别人说都要放在plugins文件夹下,但是我放在里面会报错,运行都运行不了。
3、Player Settings-Optimization的API Compatibilty level必须选择.Net 2.0,否则也会报错。