-1

我们有非常古老和复杂的 VB6 应用程序来启动 .NET 服务器对象,就像 CreateObject(sClassName, sServerName)。它在我们的生产服务器中成功运行。现在我们正试图将我们的生产转移到 Windows 2008 R2 64-bet 机器上,而那个调用不再工作了,没有错误,什么都没有,它只是总是返回空字符串。看起来我们的 .NET 对象没有被创建。所有对象都有 GUID 和 ProgId,在装配中重新注册,并全面模仿我们在生产中拥有的任何东西。任何建议将不胜感激。

4

1 回答 1

0

CreateObject 不能返回空字符串。它要么返回一个对象,要么引发一个错误

也许您不小心使用了旧版本的组件?放入一些日志记录并检查返回对象的 TypeName。

您是否使用 On Error Resume Next 忽略错误?

您可以在构建 .Net 组件时尝试显式定位 32 位,因为 VB6 只能以 32 位运行。

于 2013-08-20T08:39:14.217 回答