System.BadImageFormatException 未處理
Message=無法載入檔案或組件 'your project' 或其相依性的其中之一。
試圖載入格式錯誤的程式。
解法一:
使用 64-bit 的 DLL,如果有的話.....
解法二:
C#專案 → 滑鼠右鍵 → 屬性 → (標籤)建置 → 平台目標 → Any CPU 改成 x86
→ 上面的標籤 → 滑鼠右鍵 → 儲存選取項目
.NET 程式被編譯成 Any CPU,其中引用32位元Unmanaged DLL。
在 x86 環境程式以 32 位元模式執行執行無誤。
當程式跑在 x64 OS,Any CPU 程式會以 64 位元模式執行,一旦載入 32 位元 Unmanaged DLL,轟!
.NET 程式被編譯成 Any CPU,其中引用32位元Unmanaged DLL。
在 x86 環境程式以 32 位元模式執行執行無誤。
當程式跑在 x64 OS,Any CPU 程式會以 64 位元模式執行,一旦載入 32 位元 Unmanaged DLL,轟!
我使用 VS 2019,
回覆刪除> C++ DLL: platform (Win32) + Target Machine(MachineX86 (/MACHINE:X86))
> C# application: Platform: Active (Any CPU) + Platform Target (x86)
為什麼我還是得到: HRESULT: 0x8007000B 的錯誤?
順便請問 C++ configuration,platform 跟 Target Machine 有何差別?
回覆刪除C# configuration,platform 跟 Platform Target 有何差別?