Vb.net 两次运行代码行会导致activeX错误0x8000ffff

Vb.net 两次运行代码行会导致activeX错误0x8000ffff,vb.net,variables,crash,activex,Vb.net,Variables,Crash,Activex,如果执行两次,以下代码将导致ActiveX错误0x8000ffff 这一切归结为这两行代码,因为其余的代码运行平稳。 特别是,如果我只运行一次代码行,它的效果会非常好。如果我运行代码行两次,就会得到错误。请注意,该行仅读取变量,因此我不理解为什么它在第二次读取时不可读。如果s_Var发生变化,那么它就工作了,基本上我可以读取每一列一次 这项工作: obj_Dlr = GetDataLoggerRecipe(s_Dlr) If Not s_Var = "" Th

如果执行两次,以下代码将导致ActiveX错误0x8000ffff

这一切归结为这两行代码,因为其余的代码运行平稳。 特别是,如果我只运行一次代码行,它的效果会非常好。如果我运行代码行两次,就会得到错误。请注意,该行仅读取变量,因此我不理解为什么它在第二次读取时不可读。如果s_Var发生变化,那么它就工作了,基本上我可以读取每一列一次

这项工作:

         obj_Dlr = GetDataLoggerRecipe(s_Dlr)
         If Not s_Var = "" Then

            Debug.Print obj_Dlr.GetColumn(s_Var).Name

         End If
这不是:

         obj_Dlr = GetDataLoggerRecipe(s_Dlr)
         If Not s_Var = "" Then

            Debug.Print obj_Dlr.GetColumn(s_Var).Name
            Debug.Print obj_Dlr.GetColumn(s_Var).Name

         End If
此外,重新分配变量也不起作用

         obj_Dlr = GetDataLoggerRecipe(s_Dlr)
         If Not s_Var = "" Then

            Debug.Print obj_Dlr.GetColumn(s_Var).Name

         End If

         obj_Dlr = GetDataLoggerRecipe(s_Dlr)
         If Not s_Var = "" Then

            Debug.Print obj_Dlr.GetColumn(s_Var).Name

         End If
我有兴趣了解正在发生的事情,因为这有助于我解决另一个问题


谢谢

如果将变量设置为列名,然后将变量打印两次会怎么样?它应该仍然有效,对吗?是的,它有效,但这只是解释问题的一个简短示例。实际上,我并没有两次调用调试。。我将调用整个脚本两次。但结果是一样的,我明白。我只是好奇,看看是不是印刷品。但它确实在召唤。你有那个对象的代码吗(
obj_Dlr
)?没有。。。我所拥有的只是贴花
Dim obj\Dlr As DLRCmdTarget
。这是movicon脚本的一部分。对不起,我帮不了什么忙。我想这一定是在他们这边。你是否打算每本书只能读一次?这似乎没有多大意义。