首页 文章

尝试在Unity 5中使用DLL特定功能时出错

提问于
浏览
0

我已经将一个DLL导入Unity,我相信它已成功导入 . 我在DLL上定义了一个函数供Unity使用,但无论何时调用它,Unity都会抛出一个:

DllNotFoundException:k8055d.dll

DLL的功能是通过定义的

[DllImport("k8055d")]
public static extern int Version();

当这一行运行时我收到错误:

Debug.Log (Version().ToString());

我知道它发现DLL的原因是如果我将DLL设置为在导入设置中使用x64和x86架构,我会收到此错误:

无法加载'Assets / Plugins / k8055d.dll',预期64位架构(IMAGE_FILE_MACHINE_AMD64),但是IMAGE_FILE_MACHINE_I386 . 您必须重新编译64位架构的插件 .

但是当我将其设置为仅在导入设置中使用x86架构时,此错误消失,控制台只提供DLLNotFoundException .

有关DLL的信息可以在here找到 .

1 回答

  • 0

    IMAGE_FILE_MACHINE_I386. You must recompile your plugin for 64 bit architecture. 的第一个google结果告诉您尝试安装并使用32位版本的Unity(编辑器)来处理32位dll (right here) . 谷歌搜索第二次你的特定DLL(“ K8055D.DLL x64 ”)会打开一个论坛帖子,其中一些人为x64编译你的dll(here,直接下载链接here)以及here上有趣的东西 . 希望这会给你一些指示 .

相关问题