当我尝试运行一些VB6代码时,出现以下错误:

Microsoft VBScript runtime error: Invalid procedure call or argument: 'stx.ResolveAddress'


但是,在下面的代码中,如果我不将返回值“ stx.ResolveAddress”设置为变量,则不会得到上述错误。

Set stx = CreateObject("MyApp.Api.Wse3.STxTransactionService")
Set addr = CreateObject("MyApp.Api.Wse3.Address")
addr.Address1 = "1850 Table Mesa Dr"
addr.Address2 = "Boulder, CO 80305"
stx.ResolveAddress(addr)


但是,如果我将最后一行更改为如下所示:

result = stx.ResolveAddress(addr)


我收到“无效的过程调用”错误。有什么我想念的吗?为什么分配会导致错误发生?

最佳答案

我有一个似乎完全相同的问题,可以通过在传递给有问题的函数的参数周围添加一对额外的括号来解决,如下所示:

result = stx.ResolveAddress((addr))


4guysfromrolla上对此进行了讨论。

10-02 21:31