VBS调用VB的DLL,报错“无效的过程调用或参数”

VBScript在调用VB编译的DLL里的一个方法时,总是报错“无效的过程调用或参数”,而在VB中按同样方法调用时一点问题也没有,很是奇怪,VBS调用该类另一个方法却能成功,对比了两个方法,发现参数定义不同。

 

出错的方法参数定义类似这样ByVal SheetName As String,对参数指定了数据类型,而调用成功的方法没有指定数据类型,可能这就是原因所在,因为VBS里的变量都是同一种数据类型,所以传参的时候由于类型不一致而报错。

 

解决方法有两种:

1、对方法的参数不指定数据类型

2、对方法的参数指定为Object类型

你可能感兴趣的:(dll)