2 ycw565 ycw565 于 2015.07.24 22:28 提问

我用VB6做了一个activex exe,但是参数经过了一次中转,有没有好的办法解决这个问题?
dim check4 as integer,acadapp1a as object

'GetCADdata1 获取CAD数用~~~~~~~~~~~~~~~
Public Sub GetCADdata1(ByRef ck4 As Integer, ByRef AcadApp1 As Object)
    Check4 = ck4
    Set AcadApp1a = AcadApp1
    GCADTimer1.Interval = 100
    GCADTimer1.Enabled = True
End Sub

Private Sub GCADTimer1_Timer()
    GCADTimer1.Enabled = False
    Call GetCADdata1a(Check4, AcadApp1a)    
End Sub

Private Sub GetCADdata1a(ByRef Check4 As Integer, ByRef AcadApp1a As Object)
    一大堆代码。。。。
end sub

其中的ck4,和AcadApp1经过了一次中转,有什么办法可以不用中转提高效率呢?

还有如果传入的参数是数组的话,总是调用不成功,不知道为什么,难道activex exe不能传入数组吗?

1个回答

caozhy
caozhy   Ds   Rxr 2015.07.24 22:59

可以传数组,但是要看你的类型是不是对。
GetCADdata1a如果本身很耗时,那么多调用一次没有什么开销,你传的又是引用。

Csdn user default icon
上传中...
上传图片
插入图片