【发布时间】:2017-03-06 06:05:52
【问题描述】:
我想通过代码在运行时使用我的 dll。(不要将 dll 放在插件资产中) 所以我在下面写了这段代码:
Assembly dll = Assembly.LoadFrom("D:\HaoranZhu\workspace\UnityProjects\ViveDRMSDKTest\Assets\Plugins\x86_64\vita_api.dll");
但它在 Unity 控制台中显示错误:
BadImageFormatException:无法加载文件或程序集 'D:\HaoranZhu\workspace\UnityProjects\ViveDRMSDKTest\Assets\Plugins\x86_64\vita_api.dll' 或其依赖项之一。试图加载格式不正确的程序。 System.Reflection.Assembly.LoadFrom (System.String assemblyFile) (在 /Users/builduser/buildslave/mono/build/mcs/class/corlib/System.Reflection/Assembly.cs:520) loadExternalDll.Start () (在 Assets/TestScripts/loadExternalDll.cs:16)
这里有什么问题?
【问题讨论】:
-
您确定 vita_api.dll 对其他程序集没有任何依赖关系吗?你试过用 32 位代替吗?
-
您是否尝试过先将其加载到插件中以确保其正常工作?