【发布时间】:2013-11-07 17:19:44
【问题描述】:
我遇到了一个我似乎无法解决的问题。背景:多年前,我使用 ASP 2.0 和 Ajax 为我的一位客户开发了一个网站。该网站的一项功能是按需生成客户发票。他们的内部生产系统是用 Visual Foxpro 8 编写的,后端是 SQL Server 2005。因为我已经有一个可以生成 PDF 文件的发票生成对象,所以我汇总了一个 COM EXE 并创建了一个 COM 包装器以在我的 ASP 页面中使用。它多年来一直运行良好,但现在我们正试图将页面移动到不同的位置,但效果并不好。
网络技术人员重新制作了环境,网站的其余部分运行良好。我什至可以实例化 COM 对象(我已经记录了 init 并且一切都很好),但是对其中一个对象方法的第一次调用会导致“来自 HRESULT 的异常:0x80010105 (RPC_E_SERVERFAULT))”。我只是卡住了!
以下是有效的:
1) 使用来自同一服务器的可视化 foxpro 程序,我可以实例化对象,调用生成发票方法并生成 PDF - 没问题。
2) 在一个非常简单的 ASP 页面中使用 VBScript 我可以使用 Server.CreateObject() 来实例化对象并从那里成功生成发票。
目前我知道:
1) 对象已正确注册,并以正确用户身份启动,拥有开展业务所需的所有权利。
2) COM EXE 和 COM 对象版本的包装器匹配。
我为这篇冗长的帖子道歉。长话短说:为什么 ASP.NET 在成功实例化后无法调用 VFP COM 对象的任何方法?
在此先感谢 - 我严重卡在这个问题上。
埃里克
【问题讨论】:
标签: asp.net com .net-2.0 foxpro