在VBScript中使用DLL
本文关键字:DLL VBScript | 更新日期: 2023-09-27 18:29:00
我已经将C#代码编译到DLL中,但对它们几乎没有经验。我的C#代码包含一个带有静态方法Print()
的类HelloWorld
。我想在VBScript中使用这个DLL来调用方法Print()
。我知道这是基础,但我正在使用它作为一个更大规模项目的测试,该项目最终将被编译为DLL。声明是什么样子的?方法调用是什么样子?
重要:只有当DLL公开COM接口时,这两种方法才能工作。
如果您的dll已在系统中注册,请使用带有ProgID的CreateObject
。
Set myObject = CreateObject("MyReallyCoolObject.HelloWorld")
myObject.Print
如果您的对象未在系统中注册,请使用GetObject
,其中包含包含您的对象的文件的路径。确保您的对象公开了正确的接口。(第二个参数是可选的。如果您的对象暴露了多个类名,您可以在这里提供类名。)
Set myObject = GetObject("C:'some'path'helloworld.dll", "appname.HelloWorld")
myObject.Print
我认为您可能正在寻找无注册COM。这个关于Microsoft.Windows.ActCtx的SO答案应该特别有助于VBScript。
请记住,COM不支持静态方法,因此您必须将Print方法转换为实例方法。
如何从VBScript 调用.NET DLL