Sub Test()
Dim MyAddin '创建一个变量
Set MyAddin = CreateObject("MyActiveXDemo.VBSAddin")
MyAddin.MyTest(400)
End Sub
这个已经试验成功了,成功之后就困惑了
MyAddin.MyTest(canshu)
这个参数必须是常量啊 数组啊,变量啊 包括两个常量都传递不进去,非常像线程的传递参数,但是限制比线程的传递参数还多。
请问下 是我理解有问题 还是测试有问题 或者说 金字塔本身不支持这样的结构
变量传递不过去啥意思?报什么错?
可否问题描述的详细一些?
Sub Test()
Dim MyAddin '创建一个变量
Set MyAddin = CreateObject("MyActiveXDemo.VBSAddin")
dim a
a=400
MyAddin.MyTest(a)
End Sub
就会报错 报错是类型不匹配
Sub Test()
Dim MyAddin '创建一个变量
Set MyAddin = CreateObject("MyActiveXDemo.VBSAddin")
dim a,b
a=400
b=300
MyAddin.MyTest(a,b)
End Sub
报错 就是 SUB过程里面 不允许传递括号,若改成 msgbox MyAddin.MyTest(a,b) 就会报错为 a.mytest 参数错误
Sub Test()
Dim MyAddin '创建一个变量
Set MyAddin = CreateObject("MyActiveXDemo.VBSAddin")
MyAddin.MyTest(400)
End Sub
Sub Test()
Dim MyAddin '创建一个变量
Set MyAddin = CreateObject("MyActiveXDemo.VBSAddin")
dim a
a=400
MyAddin.MyTest(a)
msgbox 11
End Sub
就是什么都不管 也不执行下去 msgbox 都不执行了
使用系统自带的C++范例编译的的Activex控件测试,未发现你说的4楼的情况
至于3楼你的描述,我们不清楚你的C++代码中的接口是如何定义的,只要类型匹配是不会报这种错的,建议你还是多检查你的C++代码
Sub Test()
Dim MyAddin '创建一个变量
Set MyAddin = CreateObject("MyActiveXDemo.VBSAddin")
dim a(),b()
redim a(1)
a(0)=1
a(1)=2
'要求此处传递一个数组进去 返回一个数组出来
b=MyAddin.MyTest(a)
End Sub
谢啦
我们只有C++的数组传递方案,没有VB6的