WScript对象是Windows脚本宿主对象模型层次结构的根对象。它可以在任何脚本文件中使用,无需特定声明。
一、wscript对象
描述:提供对Windows脚本宿主对象模型的根对象的访问。
详细信息:WScript对象是Windows脚本宿主对象模型层次结构的根对象。它可以在任何脚本文件中使用,无需特定声明。
WScript对象为以下信息提供了access命令行参数、脚本文件名、主机文件名和主机版本信息。
WScript对象可用于创建对象、连接对象、断开对象连接、同步事件、以编程方式停止脚本执行,以及将信息输出到默认输出设备(Windows对话框或命令控制台)。
WScript对象还可以用来设置脚本运行的模式(交互模式或批处理模式)。
刚才我们说了,对象通过自己的特性给我们提供工具,这些特性就是“属性”和“方法”。
二、属性
1、Arguments 属性
描述:用于返回Arguments对象(我们将在后面学习这个对象,现在我们只需要知道它)。
语法:object。争论
参数:对象,WScript对象
示例:显示此vbs文件的参数。
Set Arg=WScript。争论
对于i=0到Arg。计数- 1
MsgBox参数(I)
然后
将上述代码保存为vbs文件,然后将一个或多个任意文件拖放到该vbs文件上,它将逐个显示您拖放的文件。(这里只给出一个例子,使用Arguments对象,具体用法后面会了解。)
2、FullName 属性
描述:返回宿主可执行文件的完全限定路径(WScript.exe或WScript.exe)。
语法:object。全名
参数:对象,WScript对象
示例:显示本地wscript的路径
MsgBox wscript.fullname
默认情况下,将显示“c:\ windows \ system32 \ wscript . exe”。
3、Interactive 属性
描述:设置或确定脚本模式。
语法:object。相互作用的
参数:对象,WScript对象
描述:Interactive属性返回一个布尔值。
有两种模式:批处理和交互。在交互模式(默认模式)下,该脚本为用户提供交互功能。启用对Windows脚本主机的输入和输出。这个脚本可以在对话框中显示信息,并等待用户的反馈。在批处理模式下,不支持这种类型的用户交互,所有到WSH的输入和输出都被禁用。您还可以使用Windows脚本主机命令行开关//I(用于交互模式)和//B(用于批处理模式)来设置脚本模式。
示例:显示该机器的脚本模式
MsgBox WScript。相互作用的
4、Name 属性
描述:返回WScript对象(宿主可执行文件)的名称。
语法:object。名字
参数:对象,WScript对象
示例:
MsgBox WScript.name
5、Path 属性
描述:返回包含宿主可执行文件(WScript.exe或WScript.exe)的路径名。
语法:object。小路
参数:对象,WScript对象
示例:
MsgBox WScript。小路
如果您的wscript.exe位于“C: \ WINDOWS \ system32 \ wscript . exe”中,则该属性将显示“C:\ WINDOWS \ System32”
6、ScriptFullName 属性
描述:返回当前运行脚本的完整路径。
语法:object。脚本全名
参数:对象,WScript对象
示例:显示此vbs的完整路径
MsgBox WScript。脚本全名
太神奇了,这个vbs居然知道自己的名字。
7、ScriptName 属性
描述:返回当前运行脚本的文件名。
语法:object。脚本名
参数:对象,WScript对象
说明:刚才我们知道了vbs文件本身的完整路径可以通过使用ScriptFullName获得。如果你只想改变这个文件的名字呢?看例子。
示例:显示VBS文件的名称
MsgBox WScript。脚本名
最近怎么样?看到了吗?
8、Version 属性
描述:返回Windows脚本宿主的版本。
语法:object。版本
参数:对象,WScript对象
示例:显示本机脚本主机版本
MsgBox WScript.version
三、方法
1.CreateObject方法
描述:创建一个对象。
语法:CreateObject(appname . object type,[servername])
解释:对于appname,Variant (string)是必需的。提供此对象的应用程序名称。
必需的类型;变量(字符串)。要创建的对象的类型或类。
Servername可选;变量(字符串)。要在其上创建对象的网络服务器的名称。
解释:要创建ActiveX对象,只需将CreateObject返回的对象赋给一个对象变量:
set excel sheet=createobject(' excel . sheet ')'。
每个支持自动化的应用程序都至少提供一种对象类型。
例如,文字处理应用程序可以提供应用程序对象、文档对象和工具栏对象。要创建ActiveX对象,只需将CreateObject返回的对象赋给一个对象变量:
“Dim ExcelSheet As Object”声明一个对象变量来存储对象。
set Excel sheet=CreateObject(' Excel。工作表’)
Excelseit。' Application.visible=true '设置Application对象以使Excel可见。
Excelsit.cells (1,1)。value='这是a列,第1行''在表格的第一个单元格中写一些文本。
ExcelSheet。另存为“C:\ TEST.xls”将表格保存到C:\test.xls目录中。
ExcelSheet。“Application.Quit”使用Application对象的Quit方法关闭Excel。
' Set ExcelSheet=Nothing '释放此对象变量。
上面的代码将启动应用程序来创建对象,在本例中是一个Microsoft Excel电子表格。创建对象后,可以使用自定义对象变量在代码中引用它。在下面的示例中,可以使用对象变量ExcelSheet来访问新建对象的属性和方法,以及Microsoft Excel中的其他对象,包括application对象和单元格集合。
2、GetObject方法
描述:从文件或strProgID参数指定的对象中检索自动化对象。
语法:object.getobject (strpathname [,strprogid],[strprefix])
参数:object必需。WScript对象。
StrPathname是必需的。包含要获取的对象的完整路径和名称。
StrProgID可选。表示对象的程序标识符(ProgID)的字符串。
StrPrefix可选。如果指定了参数strPrefix,Windows脚本宿主将在创建对象后将对象的输出接口与脚本文件连接起来。当在对象中触发事件时,Windows脚本宿主将调用一个子例程,该子例程的名称包括strPrefix和事件的名称。
例如,如果strPrefix为' MYOBJ_ ',对象生成的事件为' OnBegin ',则Windows脚本宿主将调用脚本中的' MYOBJ_OnBegin '子例程。
注意:如果有一个对象的实例,或者您想使用已经加载的文件创建一个对象,您可以使用GetObject方法。如果没有当前实例,并且您不想从已经加载的文件中启动该对象,请使用CreateObject方法。
如果一个对象将自己注册为单实例对象(例如,单词。Microsoft Word 7.0中的基本对象),无论执行多少次CreateObject,都只能创建该对象的一个实例。另外,对于单实例对象,如果用零长度字符串语法(')调用,GetObject总是返回同一个实例,如果省略path参数,会导致错误。使用GetObject无法获取对由Visual Basic 4.0和早期版本创建的Microsoft Visual Basic(R)类的引用。
GetObject适用于所有COM类,不管创建该对象使用的语言是什么。
示例:当执行以下代码时,将启动与指定strPathname关联的应用程序,并激活指定文件中的对象。如果strPathname是零长度字符串(“”),GetObject将返回指定类型的新对象实例。如果完全省略strPathname参数,GetObject将返回指定类型的当前活动对象。如果没有指定类型的对象,将会发生错误。
将我的对象作为对象变暗
set my object=GetObject(' C:\ CAD \ SCHEMA。CAD’)
MyApp=MyObject。应用
有些应用程序允许激活文件的某些部分。为此,您需要添加一个感叹号(!),然后跟随一个字符串来标识您想要激活的文件部分。有关如何创建该字符串的信息,请参考创建该对象的应用程序的文档。
例如,在绘图应用程序中,存储在文件中的图片可能包含多个层。您可以使用以下代码激活图形文件中名为schema.cad的图层:
set layer object=GetObject(' C:\ CAD \ SCHEMA。CAD!第3层’)
如果没有指定对象的类,COM将根据提供的文件名确定要启动的应用程序和要激活的对象。但是,某些文件可能支持多个对象类。例如,图纸可能支持三种不同类型的对象:应用程序对象、绘图对象和工具栏对象,它们都是同一文件的一部分。
在以下示例中,FIGMENT是绘图应用程序的名称,而DRAWING是其支持的对象类型之一。
将我的对象作为对象变暗
set my object=GetObject(' C:\ DRAWINGS \ SAMPLE。DRW,虚构的人物。绘图’)
3、Quit 方法
描述:退出执行并返回指定的错误代码。
语法:object。退出[intErrorCode]
解释:需要对象。WScript对象。
IntErrorCode可选。如果包含此参数,WScript会将其作为进程终止代码返回。如果省略intErrorCode,WScript将返回零(0)作为进程终止代码。
示例:
以下示例退出执行并返回错误代码1:
WScript。放弃
4、Sleep 方法
描述:使脚本进程在指定的毫秒数内不活动,然后继续执行。
语法:object。睡眠(intTime)
参数:object必需。WScript对象。
int脚本进程不活动的时间长度,以毫秒为单位。
注意:在睡眠状态下,脚本将继续执行已处理的事件。如果脚本引擎超时或被中断,睡眠将立即结束。
示例:
wscript.sleep(3000)
set apprun=CreateObject(' wscript . shell ')
apprun . run“% windir % \ notepad . exe”
本示例将记事本的启动延迟3秒。
5、timeout 方法
描述:设置脚本的生存期。
语法:wscript.timeout
示例:
wscript.timeout=10
MsgBox '你好'
6、Echo 方法
描述:将输出发送到对话框或控制台。
语法:object.echo [arg1] [,arg2] [,arg3].
参数:object必需。WScript对象。
1,arg2,arg3.显示项目的列表。
注意:如果主机是WScript.exe,这个方法会在对话框中显示输出;如果主机是CScript.exe,结果将显示在控制台上。每一项都用空格隔开。在CScript.exe下,输出的末尾会添加一个换行符。如果没有提供任何项目,将显示一个空行。
示例:
set FSO=CreateObject(' scripting . file system object ')
设置f=fso。OpenTextFile('c:\test.txt ')
wscript.echo f.ReadAll
将显示该文件中的所有内容。所以,他的功能和msgbox一样,但是没有他的强大。
7、ConnectObject 方法
描述:将对象事件源连接到具有给定前缀的函数。
语法:object.connect object strobject,strprefix
参数:object必需。WScript对象。
要连接的对象的名称。
strPrefix事件函数的前缀。
描述:
对象必须能够枚举它们自己的类的事件集合。
示例:以下示例实例化一个假设的对象,并将其连接到一个脚本文件。然后脚本调用对象的“SomeMethod”方法。如果对象中发生名为“Event”的事件,将调用MyEvent_Event子例程。
设置MyObject=WScript。CreateObject(“SomeObject”)
我的对象。某种方法
WScript。ConnectObject MyObject,' MyEvent '
子MyEvent_Event(strName)
WScript。回声字符串
末端接头
WScript。DisconnectObject我的对象
8、DisconnectObject 方法
描述:断开最初连接到Windows脚本主机的对象。
语法:object。断开对象对象
参数:object必需。WScript对象。
要断开连接的对象的名称。
描述:
如果指定的对象尚未连接到Windows脚本宿主,则此方法无效。
示例:
以下示例创建一个虚构的对象,并将其连接到脚本文件。然后脚本调用对象的“SomeMethod”方法。如果对象中出现名为“Event”的错误,将调用MyEvent_Event子例程。
设置MyObject=WScript。CreateObject('SomeObject ',' MyEvent ')
我的对象。某种方法
子MyEvent_Event(strName)
WScript。回声字符串
末端接头
WScript。DisconnectObject我的对象
本文到此结束。有需要的朋友可以参考一下。
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。