在IIS上运行时,ASP.NET Web服务中的奇怪异常

时间:2011-12-22 11:50:59

标签: asp.net .net web-services iis vb6

有一些奇怪的问题。 我正在开发一些使用VB6 .dll的复杂Web服务网络。在我之前的帖子中,我遇到了一些dll的问题,但我们已经解决了它们。

所以,新问题是: 当我在Visual Studio的开发服务器上调试我的服务(使用VB6 dll的那些)时 - 一切正常,当我在IIS上发布我的服务时,问题开始了(我尝试了我的本地IIS)。之后,当我调用.dll方法时(据我所知,我需要通过引用调用它 - 这就是编译器告诉我的)我得到了一个异常:

  

“System.Runtime.InteropServices.COMException(0x800A000D):类型不匹配...”

实际上这是在第三行发生的:

Object s = (Object)OrderId;
Object s1 = (Object)lines.Length;
proxy.OrderRead(ref s, ref s1);

OrderId和Legth是整数。

据我所知,这是来自vb6:/

的.dll的异常

问题可能是什么?为什么它在调试时运行但在IIS上失败?

1 个答案:

答案 0 :(得分:0)

在vb6中调试时,IDE将为您注册dll。发布后,您是否可以在服务器上注册您的vb6 dll。打开命令提示符并切换到dll的位置并运行regsvr32 myvb6.dll

另外,请检查这些设置。 http://support.microsoft.com/kb/281630