我尝试在 vbscript 中进行小测试,因此在 C#(我是新手)中创建了非常非常简单的 dll,并希望在 vbscript 中使用它。
C# 代码
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Runtime.InteropServices;
namespace myNamespace
{
public class myClass1
{
public string sVariable1="Variable content";
}
public class myClass2
{
public myClass1 myMethod2(myClass1 test)
{
return test;
}
}
}
和VBScript
Set oClass1 = CreateObject("myNamespace.myClass1")
Set oClass2 = CreateObject("myNamespace.myClass2")
WScript.Echo oClass1.sVariable1
Set return = oClass2.myMethod2(oClass1)
WScript.Echo return.sVariable1
运行 vbscript 后,在控制台上我通过第一个回显显示“变量内容”,接下来我有错误“microsoft vbscript 运行时错误无效过程调用或参数:'oClass2.myMethod2'”。
我可以这样传递对象吗?
参考MK2的注释。问题不在于方法的返回类型,因为以下代码正在运行。
public myClass1 myMethod2()
{
myClass1 test = new myClass1();
return test;
}
和vbs
Set return = oClass2.myMethod2()
现在在控制台上我有
Variable content
Variable content
但是如何在 vbs 中传递 myClass1 对象?