![](/img/trans.png)
[英]Unity C#: Error when trying to call a class' functions in Update()
[英]Error when trying to use DLL specific functions in Unity 5
我已經將DLL導入到Unity中,並且我確信它已成功導入。 我已經在DLL上定義了一個函數供Unity使用,但是無論何時調用它,Unity都會向我拋出:
DllNotFoundException:k8055d.dll
DLL的功能通過以下方式定義
[DllImport("k8055d")]
public static extern int Version();
運行此行時出現錯誤:
Debug.Log (Version().ToString());
我知道找到DLL的原因是,如果我將DLL設置為在導入設置中同時使用x64和x86體系結構,則會收到此錯誤:
無法加載預期的64位體系結構(IMAGE_FILE_MACHINE_AMD64)的“資產/插件/k8055d.dll”,但為IMAGE_FILE_MACHINE_I386。 您必須為64位體系結構重新編譯插件。
但是,當我將其設置為在導入設置中僅使用x86體系結構時,該錯誤消失了,控制台僅給出了DLLNotFoundException。
有關DLL的信息可在此處找到。
Google對IMAGE_FILE_MACHINE_I386. You must recompile your plugin for 64 bit architecture.
第一個搜索結果IMAGE_FILE_MACHINE_I386. You must recompile your plugin for 64 bit architecture.
IMAGE_FILE_MACHINE_I386. You must recompile your plugin for 64 bit architecture.
告訴您嘗試安裝和使用32位版本的Unity(Editor)來與32位dll (在此處)一起使用 。 谷歌搜索第二次為特定的DLL(“ K8055D.DLL x64
”)帶來了一個論壇的帖子,其中一些人編譯您的DLL針對x64( 這里 ,直接downloadlink 這里 ),也有趣的東西怎么回事這里 。 希望這能給您一些指導。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.