VBS教程:VBscript语句-ExecuteGlobal 语句

ExecuteGlobal 语句

执行一个功多个在脚本全局名字空间中指定的语句。

ExecuteGlobal statement

statement 参数是一个包含一个或多个可执行语句的字符串表达式 。在statement 参数中可以包含多条语句, 使用冒号将其分开。

说明


在 VBScript 中, x = y 有两种解释方法。第一种方法是作为一条赋值语句, 将 y 的值赋给 x。第二种方法是作为一个表达式 ,用于测试 xy 是否具有相同的值。如果它们相等,则结果为 True; 如果他们不相等,其结果为 False.ExecuteGlobal 语句总是使用第一种方法,而 Eval 方法总是使用第二种方法。

注意  在 Microsoft? Visual Basic Scripting Edition?中, 赋值与比较之间不存在混消,因为赋值运算符(=) 不同于比较运算符。

在脚本的全局名字空间中,ExecuteGlobal 中的所有语句都有是可执行的。因此,允许您将代码添加到程序中,以便于任何 过程 能够对其进行访问。例如,一个 VBScript Class 语句在运行时可以执行。随之函数创造此类的一个新实例。

在运行时添加过程和类是非常有用的,但是也可能导致在运行时覆盖已有的全局 变量 和函数。因为这可能导致非常严重的程序问题,因此,当使用 ExecuteGlobal 语句时一定得非常谨慎。如果您无需访问过程之外的变量或函数,最好使用Execute 语句,因为它只影响主调函数的名字空间。

下面的例子解释了 ExecuteGlobal 语句的用法。

Dim X         ' 声明 X 为全局变量。X = "Global"      ' 给全局变量 X 赋值。Sub Proc1   ' 声明过程。  Dim X      ' 在局部变量中声明 X  X = "Local"   ' 给局部变量 X 赋值。         ' 此处的可执行语句         ' 创建一个过程, 当被调用时, 打印 X。         ' 此处将打印全局变量 X 的值,因为 Proc2         ' 继承了全局变量中的一切。  ExecuteGlobal "Sub Proc2: 打印 X: End Sub"  Print Eval("X")   ' 打印局部 X  Proc2      ' 在全局作用区域中调用 Proc2          ' 将打印 "Global" End SubProc2         ' 此行将导致错误          ' 因为 Proc2  Proc1 之外是不可用的。Proc1         ' 调用 Proc1  Execute "Sub Proc2: 打印 X: End Sub"Proc2         ' 此行调用成功,因为 Proc2         ' 在全局作用区域中是可用的。

下面的例子演示了 ExecuteGlobal 语句可以被重写,因此您无需将下面的整个过程都包括在引用标记之内。

S = "Sub Proc2" & vbCrLfS = S & "  Print X" & vbCrLf S = S & "End Sub"ExecuteGlobal S

(0)

相关推荐

  • VBS教程:VBscript语句-ExecuteGlobal 语句

    ExecuteGlobal 语句执行一个功多个在脚本全局名字空间中指定的语句. ExecuteGlobal statement statement 参数是一个包含一个或多个可执行语句的字符串表达式 .在statement 参数中可以包含多条语句, 使用冒号将其分开. 说明在 VBScript 中, x = y 有两种解释方法.第一种方法是作为一条赋值语句, 将 y 的值赋给 x.第二种方法是作为一个表达式 ,用于测试 x 和 y 是否具有相同的值.如果它们相等,则结果为 True; 如果他们不相

  • Eval 函数 | Execute 语句 | ExecuteGlobal 语句使用说明

    Eval 函数 计算一个表达式的值并返回结果.  [result = ]Eval(expression) 参数 result 可选项. 是一个变量,用于接受返回的结果.如果未指定结果,应考虑使用 Execute 语句代替. expression 必选项.可以是包含任何有效 VBScript 表达式的字符串. 说明 在 VBScript 中,x = y 可以有两种解释.第一种方式是赋值语句,将 y 的值赋予 x.第二种解释是测试 x 和 y 是否相等.如果相等,result 为 True:否则 r

  • VBS教程:VBscript语句-功能介绍

    VBScript 语句描述语言元素将控制权交给一个 Sub 或 Function 过程.Call 语句声明一个类的名称.Class 语句声明用于替换文字值的常数.Const 语句声明变量并分配存储空间.Dim 语句当某个条件为 True 时或在某个条件变为 True 之前重复执行一个语句块.Do...Loop 语句重新初始化固定大小的数组的元素和释放动态数组的存储空间.Erase 语句执行一条或多条指定语句.Execute 语句在一个脚本的全局命名空间中执行一条或多条语句.ExecuteGlob

  • MySQL5.7.14下载安装图文教程及MySQL数据库语句入门大全

    如何下载: 我先去MySQL首页下载最新版本的MySQL-链接:https://www.mysql.com/downloads/ 进入此界面下载: Downloads–>MySQL Community Edition (GPL)(这是免费版的,当然,有钱的可以用收费的,功能更强大)–>MySQL Community Server (GPL) –>选择对应的系统和电脑版本(在这里,我选择的是Window系统64位的下载) –>No thanks, just start my down

  • VBS教程:fso方法-CreateTextFile 方法

    CreateTextFile 方法 创建指定文件并返回 TextStream 对象,该对象可用于读或写创建的文件. object.CreateTextFile(filename[, overwrite[, unicode]]) 参数 object 必选项.应为 FileSystemObject 或 Folder 对象的名称. filename 必选项.字符串表达式,指明要创建的文件. overwrite 可选项.Boolean 值指明是否可以覆盖现有文件.如果可覆盖文件,该值为 True:如果不

  • Python 中的判断语句,循环语句,函数

    目录 1. 判断语句 1.1 布尔类型和比较运算符 1.1.1 布尔类型 1.1.2 比较运算符 1.2 if 语句 1.2.1 if 语句基本格式 1.2.2 if else 语句 1.2.3 if elif else 语句 1.2.4 判断语句的嵌套 2. 循环语句 2.1 while 循环 2.1.1 while 循环基础语法 2.1.2 while 循环嵌套使用 2.2 for 循环 2.2.1 for 循环基础语法 2.2.2 range 语句 2.2.3 变量作用域 2.2.4 fo

  • VBS教程:VBscript语句-Execute 语句

    Execute 语句执行一个或多个指定的语句. Execute statements 所需要的 statements 参数是一个字符串表达式,其中包含一个或多个要执行的语句.  如果要在 statements 参数中包含多条语句,应使用分号或嵌入的分行将其分隔开. 说明在 VBScript 中,x = y 可以有两种解释.首先是作为赋值语句,将 y 的值赋予 x.其次是作为表达式,测试x 和 y 的值是否相等.如果相等,结果为 True:否则,结果为 False.Execute 语句总是使用第一

  • VBS教程:VBscript语句-Const 语句

    Const 语句声明用于代替文字值的常数.  [Public | Private] Const constname = expression 参数Public 可选项.该关键字用于在 Script 级中声明可用于所有脚本中所有过程的常数.不允许在过程中使用. Private 可选项.该关键字用于在脚本级中声明只可用在声明所在的脚本中的常数.不允许在过程中使用. constname 必选项.常数的名称,根据标准的变量命名约定. expression 必选项.文字或其他常数,或包括除 Is 外的所有

  • VBS教程:VBScript 基础-使用循环语句

    使用循环语句循环用于重复执行一组语句.循环可分为三类:一类在条件变为 False 之前重复执行语句,一类在条件变为 True 之前重复执行语句,另一类按照指定的次数重复执行语句. 在 VBScript 中可使用下列循环语句: Do...Loop: 当(或直到)条件为 True 时循环. While...Wend: 当条件为 True 时循环. For...Next: 指定循环次数,使用计数器重复运行语句. For Each...Next:对于集合中的每项或数组中的每个元素,重复执行一组语句.(

  • VBS教程:VBscript语句-Function 语句

    Function 语句声明 Function 过程的名称.参数以及构成其主体的代码.  [Public [Default]| Private] Function name [(  arglist)][statements][name = expression][Exit Function] [statements][name = expression]End Function 参数Public 表示 Function 过程可被所有脚本中的所有其他过程访问. Default 只与 Class 块中

随机推荐