2016-03-29 68 views
1

我想從IIS 8.5 & Windows Server 2012 64 bit server託管的ASMX webservice調用COM庫方法(COM interopablity)。但電話沒有迴應。我也做了以下更改,以確保我們在做正確的設置ASMX COM調用64位服務器

1.啓用32位應用程序=應用程序池的設置真正

2.註冊的COM在以下位置 C:\ Windows \ System32下& C:\ WINDOWS \ SYSWOW64

3.嘗試編譯Web服務項目的目標X86配置

4.改變了Web服務的執行超時10分鐘

5.難道這工作了我的Windows應用程序

設置應用程序池標識但沒有上述作品。

只是爲了驗證.Net和COM通訊,我已經創建的窗口 應用程序調用相同的方法,當我編譯X86平臺 項目它的工作原理。

如果我編譯Windows應用程序到目標平臺到任何CPU,我 得到相同的問題,如通過ASMX Web服務調用它。它不是 響應這個呼叫。

Finaly,它看起來像它是爲Windows應用程序目標x86 平臺工作。但不知道,爲什麼它不是從asmx服務工作時,我 設置啓用32位應用程序。

你能幫我找出ASMX到COM調用可能會出錯嗎?

參考:

Error 80040154 (Class not registered exception) when initializing VCProjectEngineObject (Microsoft.VisualStudio.VCProjectEngine.dll)

How to repair COMException error 80040154?

注:我得到COM異常80040154錯誤當C上未安裝COM:\ windows \ system32目錄。現在沒有得到這個錯誤,但沒有迴應。

Server是64位

回答

2

根據您調用COM服務器上,您可能需要specify an Identity for an Application Pool如果COM應用程序需要用戶配置文件,或檢查應用程序池的Load User Profile財產。 (例如I needed this運行ABCpdf)

+0

是的。正如你所提到的那樣,我設置了應用程序池標識。我使用Windows登錄憑據來運行應用程序池標識設置中的Windows應用程序x86平臺版本。 – Billa

+0

哇!偉大你救了我的一天:)它設置後加載用戶配置文件真正:)乾杯。 – Billa