首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

是否可以调用名称存储在vbscript中的字符串中的函数?

是的,可以在VBScript中调用名称存储在字符串中的函数。这可以通过使用CallByName函数实现。CallByName函数允许您根据运行时计算的名称调用对象的方法或属性。

以下是一个简单的示例,说明如何使用CallByName函数调用名称存储在VBScript中的字符串中的函数:

代码语言:vb
复制
Option Explicit

Sub MyFunction()
    MsgBox "Hello, world!"
End Sub

Sub Main()
    Dim functionName As String
    functionName = "MyFunction"
    
    CallByName Nothing, functionName, VbMethod, Array()
End Sub

Main

在这个示例中,我们定义了一个名为MyFunction的函数,它会弹出一个包含“Hello, world!”的消息框。然后,我们在Main子程序中使用CallByName函数根据functionName变量中存储的名称调用MyFunction函数。

注意,CallByName函数的第一个参数是一个对象,在这种情况下,我们不需要传递任何对象,因此我们传递了Nothing。第二个参数是函数名称,第三个参数是调用类型,我们在这里使用VbMethod表示我们正在调用一个方法,第四个参数是一个参数数组,我们在这里没有使用任何参数,因此传递了一个空数组。

这种方法可以让您根据运行时计算的名称调用函数,非常适合在VBScript中处理动态函数调用。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

  • VBS终极教程(2)

    =================================== VBS例子讲解--1: 用 run运行文件 set shl="createobject"("WScript.Shell") shl.run"regedit.exe" set shl="nothing" VBS例子讲解--2: 用 FSO复制文件 Set shl = CreateObject("Scripting.FileSystemObject") shl.CopyFile "c:\1.txt","d:\" set shl = nothing ========================================================= CreateObject 描述创建并返回对象的引用。语法 CreateObject(class) class 参数使用语法 servername.typename,有以下部分: 部分描述 servername 提供对象的应用程序名称。 typename 要创建的对象类型或类。 说明 Automation 服务器至少提供一种对象类型。例如,字处理应用程序可以提供应用程序对象、文档对象和工具条对象。要创建 Automation 对象,将 CreateObject 函数返回的对象赋值给某对象变量: Dim ExcelSheet Set ExcelSheet = CreateObject("Excel.Sheet") ' 使 Excel 在整个 Application 对象中都可见。 ExcelSheet.Application.Visible = True ' 将一些文本放入工作表的第一个单元格中。 ExcelSheet.ActiveSheet.Cells(1,1).Value = "This is column A, row 1" ' 保存工作表。 ExcelSheet.SaveAs "C:\TEST.XLS" ' 关闭 Excel,使 Quit 方法处于 Application 对象中。 ExcelSheet.Application.Quit ' 释放对象变量。 Set ExcelSheet = Nothing ================================== Set 将对象引用赋给一个变量或属性,或者将对象引用与事件关联。 createobject("WScript.Shell").run"regedit.exe" 和下面的 3句句有同样效果。 set shl="createobject"("WScript.Shell") shl.run"regedit.exe" set shl="nothing" 但如果我要使用多个 CreateObject对象的时候,就要写很多个 CreateObject("WScript.Shell")出来。内容如下: createobject("WScript.Shell").run"regedit.exe" CreateObject("WScript.Shell").popup"注册表已经被运行" 上面例子会给我们造成很多麻烦和工作量。这个时候我们可以使用 set来吧 CreateObject("WScript.Shell")对象付给一个变量。 以后只要对变量访问就相当于对 CreateObject("WScript.Shell")访问了。 set shl="createobject"("WScript.Shell") shl.run"regedit.exe" shl.popup"注册表已经被运行" set shl="nothing" Nothing 可选项。断开 shl与任何指定对象或类的关联。当没有其它变量引用前面的引用对象时,将 shl赋值为 Nothing 以释放与前面的引用对象相关联的系统或内存资源。 WScript 对象介绍属性/方法/对象。属性=一个物体本身具有的一种特性。方法=一个物体能够做某件事情,完成某件事情的时候就要用到方法。 WScript属性的演示例子:运行 WScript属性的格式为: WScript.属性名。 关于属性--实例: WScript.Echo (WScript.FullName) 'FullName 属性是代表主机可执行文件的完全限定路径的只读字符串。 WScript.Echo (WScript.Name) '返回 WScript 对象(主机可执行文件)的名称 WScript.Echo (WScript.Path) '返回包含主机可执行文件(CScript.exe 或 WScript.exe)的路径名称。 WScript.Echo WScript.ScriptName '返回当前运行脚本的文件名。 wscript.echo WScript.ScriptF

    01
    领券