2023年11月30日发(作者:)
VBS脚本编程(6)——对象的创建与调⽤
对象:严格的说,对象是复杂数据和程序结构在内存中的表现,只有在程序运⾏时才存在。包含有⽅法和属性。
对象的创建及⽤法
1. Set 语句
将对象引⽤赋给⼀个变量或属性,或者将对象引⽤与事件关联。
Set objectvar = {objectexpression | New classname | Nothing}
-或者-
Set ame = GetRef(procname)
参数
objectvar
必选项,变量或属性名称;符合标准变量命名规则。
objectexpression
可选项,与对象名称⼀致的表达式,另⼀个相同对象类型、函数或⽅法的已声明变量,它们返回相同对象类型的对象。
New
⽤于创建⼀个类的新实例的关键字。如果 objectvar 包含⼀个对某个对象的引⽤,当⼀个新的引⽤被赋给这个对象之后,则这个引⽤将
被释放。New 关键仅⽤于创建⼀个类的实例。
classname
可选项. 创建的类名称。使⽤ Class 语句定义类及其语句。
Nothing
可选项。断开 objectvar 与任何指定对象或类的关联。当没有其他变量引⽤前⾯的引⽤对象时,将 objectvar 赋值为 Nothing 以释放与前
⾯的引⽤对象相关联的系统或内存资源。
object
必选项。与 event 相关联的对象名称。
event
必选项。函数作⽤域的事件名称。
procname
必选项。包含与event 相关联的 Sub 或 Function 名称的字符串。
说明
为了使其有效,objectvar 必须与赋值的对象类型相⼀致。
Dim、Private、Public 或 ReDim 语句仅声明⼀个引⽤对象的变量。在使⽤. Set 语句为⼀个具体对象赋值之前,没有实际对象可以引
⽤。
通常, 当您使⽤ Set 语句将⼀个对象引⽤赋给⼀个变量之前,不会创建那个变量的对象的副本。实际上,只创建了⼀个对象的引⽤。多个引
⽤对象变量可以引⽤相同的对象。因为这些变量都是对象的引⽤,⽽不是对对象副本的引⽤,因此对象中所作的任何变化都可以在引⽤该对
象的所有变量中反映出来。
利⽤ New 关键字,您可以随时创建⼀个类的实例,并将⼀个对象引⽤变量赋值给它。赋给类的实例的变量⼀定利⽤ Dim (或相似的语
句)语句事先已经声明。
2. CreateObject 函数
创建并返回对 Automation 对象的引⽤。
CreateObject(me [, location])
参数
servername
必选项。提供对象的应⽤程序名称。
typename
必选项。要创建的对象类型或类。
location
可选项。对象所在的⽹络服务器将被创建。
说明
Automation 服务器⾄少提供⼀种对象类型。例如,字处理应⽤程序可以提供应⽤程序对象、⽂档对象和⼯具条对象。
要创建 Automation 对象,将 CreateObject 函数返回的对象赋值给某对象变量
举例,创建Excel表格对象:
Dim ExcelSheet
Set ExcelSheet = CreateObject("")
' 上述代码启动创建对象(在此实例中,是 Microsoft Excel 电⼦表格)的应⽤程序。
' 对象创建后,就可以在代码中使⽤定义的对象变量引⽤此对象。
' 在下⾯的⽰例中,可使⽤对象变量、ExcelSheet 和其他 Excel 对象,包括 Application 对象和 Cells 集合访问新对象的属性和⽅法。
' 例如:
' 使 Excel 在整个 Application 对象中都可见。
e = True
' 将⼀些⽂本放⼊⼯作表的第⼀个单元格中。
(1,1).Value = "This is column A, row 1"
' 保存⼯作表。
"C:"
' 关闭 Excel,使 Quit ⽅法处于 Application 对象中。
' 释放对象变量。
Set ExcelSheet = Nothing
在远程服务器上创建⼀个对象,当 Internet 安全关闭时只能完成。通过传递计算机名到 CreateObject 服务器名的参数,能在远程⽹络上
创建对象。该名称如同共享部份的机器名。例如⽹络共享名命名为: "myserverpublic", servername 是 "myserver"。另外,只能指定
servername 使⽤ DNS 格式或 IP 地址。
3. GetObject 函数
返回对⽂件中 Automation 对象的引⽤。
GetObject([pathname] [, class])
参数
Pathname
可选项。字符串,包含待检索对象的⽂件的完整路径和名称。如果省略 pathname 则必须有 class。
Class
可选项。字符串,对象的类。
class 参数的语法格式为 ype,其中包括以下部分:
参数
appname
必选项。字符串,提供对象的应⽤程序名称。
objectype
必选项。字符串,要创建的对象的类型或类。
说明
使⽤ GetObject 函数可以访问⽂件中的 Automation 对象,⽽且可以将该对象赋值给对象变量。使⽤ Set 语句将 GetObject 返回的对象赋值
给对象变量。
常⽤的VBS调⽤对象
⽂件系统对象相关: ("stemobject")
字典相关: ("nary")
脚本外壳相关: ("")
windows外壳相关: ("ation")
正则表达式相关: ("")
asp相关: ("tor") ("nk") ("")
公⽤对话框相关: ("dialog")
编码与密码相关: ("rd") ("r")
邮件发送的组件相关: ("e") ("l") ("uration") ("ication.1")
("novellgroupwaresession")
⽔晶报表相关: ("ation")
ie浏览器相关: ("ation")
windows媒体播放相关: ("") (".7")
助⼿⾓⾊相关: ("l")
ado相关: ("tion") ("d") ("set") ("") ("") ("ne.35")
("g") ("")
sql相关: ("ver") ("") ("") ("") ("device") ("se")
("e") ("ation") office相关: ("ation") ("ation") ("ation")
("") ("ation") ("ation") ("ation") ("ation")
图像图形相关: ("") ("") (".1")("") ("t") ("")
("ation")
语⾳朗读相关: ("ext") ("ext.1") ("e") ("stream") ("speech")
("speech.1") ("voice") ("voice.1")
操作系统相关: ("r") ("ops") ("") ("") ("") ("t")
("lication") ("l") ("ler") ("ation") ("dialog")
("log.1") ("dialog")
wmi相关: ("atetime") ("ocator") ("amedvalueset")
("ink","sink_")("efresher") ("asterror")


发布评论