在VBScript中使用DLL

时间:2012-03-23 13:04:11

标签: c# dll vbscript

我已将C#代码编译成DLL,但对它们几乎没有经验。我的C#代码包含一个带有静态方法HelloWorld的类Print()。我想在VBScript中使用这个DLL来调用方法Print()。我知道这是基础,但我正在使用它作为一个大规模项目的测试,最终将编译为DLL。什么是声明的样子以及方法调用的外观如何?

3 个答案:

答案 0 :(得分:20)

如果您的dll已在系统中注册,请使用CreateObject和它的ProgID。

Set myObject = CreateObject("MyReallyCoolObject.HelloWorld")
myObject.Print

如果您的对象未在系统上注册,请使用GetObject以及包含对象的文件的路径。确保您的对象公开正确的界面。 (第二个参数是可选的。如果你的对象暴露了多个参数,你可以在这里提供一个类名。)

Set myObject = GetObject("C:\some\path\helloworld.dll", "appname.HelloWorld")
myObject.Print

答案 1 :(得分:1)

答案 2 :(得分:1)

我想你可能在寻找Registration-Free COM。关于Microsoft.Windows.ActCtx的这个SO答案应该特别有助于VBScript。

请记住,COM不支持静态方法,因此您必须将Print方法转换为实例方法。