我的方案是如下(Win7的,VS2010,.NET 4.0):BadImageFormatException在WCF語境
我有來自外部公司編制了 「任何CPU」(與corflags.exe驗證).NET程序集。該程序集也從外部公司加載本機dll。這個本地DLL存在兩個版本 - x86和x64。我有兩個可用。
當我創建控制檯應用程序時,添加.NET程序集(同時確保.NET程序集可以找到其中一個本機DLL),從該.NET庫創建其中一個類的實例並啓動程序一切都很好。
但是,當我遵循WCF服務中完全相同的步驟時,我得到一個BadImageFormatException。現在顯而易見的是在目標平臺(我嘗試過「任何CPU」,「x86」,「x64」)或試圖交換本地DLL(我嘗試x86和x64)中搜索錯誤,但這並不起作用。我嘗試所有組合btw ...
有沒有人有一個想法是什麼問題可能是什麼?
拉爾斯
P.S:我讀BadImageFormatException encountered with WcfSvcHost and IIS WCF host和撰文指出,他通過corflagging WcfSvcHost.exe爲32BIT解決了類似的問題,但WcfSvcHost.exe是強命名,所以我不能辭職了。不知道他是如何工作的...
是的,這是一個解決方法,爲我做的伎倆,thx!有趣的是,雖然我不能得到這個與WcfSvcHost一起工作... – larsbeck 2011-05-07 17:58:49
有人可以擺脫一些這方面的更多細節?我無法找到更改此AppPool設置的位置。在我的IIS管理器中,轉到高級設置,選擇DefaultAppPool選中的應用程序池。但其他三個選項是:Classic .NET AppPool,ASP.NET v4.0,ASP.NET v4.0 Classic。那麼哪一個意味着32或64? – newman 2011-11-29 02:21:59