2016-03-29 66 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