您好,登錄后才能下訂單哦!
1 System.DllNotFoundException”類型的未經處理的異常在 test.exe 中發生 其他信息: 無法加載 DLL“DLL/AR_ALGORITHM.dll”: 找不到指定的模塊。 (異常來自 HRESULT:0x8007007E)。
該問題的原因是程序無法找到AR_ALGORITHM.dll,通常程序在bin目錄下,system32目錄下,和程序運行所處的當前目錄查找
2“System.EntryPointNotFoundException”類型的未經處理的異常在 test.exe 中發生
其他信息: 無法在 DLL“../../../DLL/AR_ALGORITHM.dll”中找到名為“WGStoGCJ”的入口點。
在C++的函數聲明中指定了WINAPI,而在C#重新定義相應的調用卻指定了Cdecl,實際上應該指定Winapi,或者簡單的方式是什么也不用指定
[DllImport("../../../DLL/AR_ALGORITHM.dll", EntryPoint = "WGStoGCJ", CallingConvention = CallingConvention.Cdecl)]
簡單正確
[DllImport("../../../DLL/AR_ALGORITHM.dll")]
那從應用上考慮,注明WINAPI和不注明WINAPI的函數在使用用上有什么差別或注意的地方?
那就是系統和不是系統函數的區別
從應用上講,區別不是很大,只要使用的聲明是正確的。
例如你寫了一個庫函數用的是WINAPI聲明的,而別人調用的時候用的聲明也要是WINAPI才行,否則運行期會出錯
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。