1. 程式人生 > >C# 試圖載入格式不正確的程式。 (異常來自 HRESULT:0x8007000B)

C# 試圖載入格式不正確的程式。 (異常來自 HRESULT:0x8007000B)

C# 在呼叫C++dll時,可能會出現 :試圖載入格式不正確的程式。 (異常來自 HRESULT:0x8007000B)這個錯誤。

一般情況下是C#目標平臺跟C++dll不相容,64位跟32位相容性問題,

a.客戶端呼叫C++dll報的錯則,

1)允許的話把C#客戶端專案平臺修改為32位

2)客戶端平臺不允許修改,則選擇AnyCPU,勾選首選32位,如圖(在.netFramework4.5上,勾選32位才可以進行選擇)

b.服務端呼叫C++ dll的話,則

1).生成時選擇AnyCPU。

2).在IIS配置裡面啟用32位應用程式。

其中啟用32位應用程式的方法如圖:

圖中的False 修改為 True.