我有一个.NET程序集,用C#编写。它被标记为ComVisible,有一个GUID,被签名,regasm'd(/ codebase)。我没有正式定义COM部分的接口。如何调试“错误数量的参数或无效的属性分配”VBScript interop
我通过VBscript使用这个程序集。
有一个重载方法 - 一个表单接受一个字符串参数,第二个接受两个字符串。两者都从同一个程序集返回另一个.NET类型。我这样称呼它:
set foo = WScript.CreateObject("Prog.Id")
' the following succeeds
set bar = foo.Method1("string")
' the following fails
set baz = foo.Method1("string1", "string2")
第一次调用Method1成功。第二个失败, “参数数量错误或属性分配无效”。
我该如何调试?
在测试中,如果我定义一个大脑死亡的简单的.NET类,并带有这样的重载,我可以从VBScript调用它,没问题。还有一些关于我的“真实”组件会导致这种失败。我如何弄清楚它是什么?
啊,是的,我认为这是答案。 – Cheeso 2009-07-20 17:37:08