在VB6中创建COM对象数组

问题描述

我有一个COM对象,可以通过执行CreateObject("COMPANYNAMESPACE.COM.Models.Job")来使用。到目前为止,这一切正常,我可以声明所有必需的属性。但是,在VisualBasic 6中尝试使用类COMPANYNAMESPACE.COM.Models.Job创建对象数组时,我失败了。我需要SendJobs将此数组传递给方法COMPANYNAMESPACE.COM.StorageSystemManager。声明Dim Jobs(1) As COMPANYNAMESPACE.COM.Models.Job之类的对象数组时,代码将失败。

Set Job = CreateObject("COMPANYNAMESPACE.COM.Models.Job")
Job.JobIdentification = "JOB02_VB6"

' Invalid code declaring the array of COM objects
Dim Jobs(1) As COMPANYNAMESPACE.COM.Models.Job
Jobs(0) = Job

Set StorageSystemManager = CreateObject("COMPANYNAMESPACE.COM.StorageSystemManager")
StorageSystemManager.SendJobs (Jobs)

如果我不使用数组并将Job对象传递给名为StorageSystemManager.SendJob(Job)的方法,则该方法很好,因此错误必须在数组声明中。

在执行此脚本时,Visual Basic抛出错误“未定义用户定义的类型”(指向所提到的数组声明行)。

我尝试使用VariantObject声明不带任何类型声明的数组。所有这些都会导致“错误13:不兼容的类型”,因为SendJobs方法期望使用COMPANYNAMESPACE.COM.Models.Job数组。

Dim Jobs(1)
Dim Jobs(1) As Variant
Dim Jobs(1) As Object

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...