一、wscript对象

描述:提供对 Windows 脚本宿主对象模型根对象的访问。

详述:WScript 对象是 Windows 脚本宿主对象模型层次结构的根对象。它可在任何脚本文件中使用,不需要特定的声明。WScript 对象提供对以下信息的访问命令行参数, 脚本文件的名称,宿主文件名, 宿主版本信息。 WScript 对象可用来创建对象, 连接对象, 与对象断开连接, 同步事件, 以编程方式停止脚本的执行,将信息输出到默认输出设备(Windows 对话框或命令控制台)。 WScript 对象也可用来设置脚本运行的模式(交互模式或批处理模式)。

就像刚才我们说的一样,对象通过两种其自有的特性想我们提供工具,这两种特性分别是“属性”和“方法”。

二、属性

1、Arguments属性

描述:用于返回 Arguments 对象(这个对象我们以后会学,现在只需要了解就行)。

语法:object.Arguments

参数:object ,WScript 对象

例子:显示本vbs文件运行的参数

Set Arg=WScript.Arguments

For i=0 to Arg.Count-1

msgbox Arg(i)

Next

将上面这些代码保存为vbs文件,然后将一个或者数个任意的文件拖放到这个vbs文件上面上,那么他会逐个显示你拖放的文件。(这仅仅给出了一个实例,用到了Arguments对象,其的具体用法我们以后再了解)

2、FullName 属性

描述:返回主机可执行文件(CScript.exe 或 WScript.exe)的完全限定路径。

语法:object.FullName

参数:object ,WScript 对象

例子:显示本机wscript的路径

msgbox wscript.fullname

在默认的情况下会显示”C:\WINDOWS\system32\wscript.exe“

3、Interactive 属性

描述:设置或确定脚本模式。

语法:object.Interactive

参数:object ,WScript 对象

说明:Interactive 属性返回一个布尔值。

有批处理和交互两种模式。在交互模式(默认模式)下,该脚本为用户提供交互功能。启用对 Windows 脚本宿主的输入和输出。该脚本可以将信息显示在对话框中并等待用户提供反馈。在批处理模式下,不支持这种类型的用户交互,所有对 WSH 的输入和输出被禁用。还可以使用 Windows 脚本宿主命令行开关 //I(对于交互式)和 //B(对于批处理模式)来设置脚本模式。

例子:显示本机的脚本模式

msgbox WScript.Interactive

4、Name 属性

描述:返回 WScript 对象(主机可执行文件)的名称。

语法:object.Name

参数:object ,WScript 对象

例子:

msgbox WScript.name

5、Path 属性

描述:返回包含主机可执行文件(CScript.exe 或 WScript.exe)的路径名称

语法:object.Path

参数:object ,WScript 对象

例子:

msgbox WScript.Path

如果你的wscript.exe是在”C:\WINDOWS\system32\wscript.exe“那么本属性会显示”C:\WINDOWS\system32“

6、ScriptFullName 属性

描述:返回当前运行脚本的完整路径。

语法:object.ScriptFullName

参数:object ,WScript 对象

例子:显示本vbs的完整路径

msgbox WScript.ScriptFullName

神奇吧,这个vbs竟然知道他自己的名字。

7、ScriptName 属性

描述:返回当前运行脚本的文件名。

语法:object.ScriptName

参数:object ,WScript 对象

说明:刚才我们知道了用ScriptFullName可以获取vbs文件自身的完整路径,加入你只想要这个文件的名字改怎么办?看例子。

例子:显示本VBS文件的名字

msgbox WScript.ScriptName

怎么样?看到了吗?

8、Version 属性

描述:返回 Windows 脚本宿主的版本。

语法:object.Version

参数:object ,WScript 对象

例子:显示本机脚本宿主版本

msgbox WScript.version

三、方法

1、CreateObject方法

描述:创建一个对象

语法:CreateObject(appname.objecttype,[servername])

解释:appname 必需的,Variant(字符串)。提供该对象的应用程序名。

objecttype 必需的;Variant(字符串)。待创建对象的类型或类。

servername 可选的; Variant (String). 要在其上创建对象的网络服务器名称。

说明:要创建 ActiveX 对象,只需将 CreateObject 返回的对象赋给一个对象变量:

Set ExcelSheet = CreateObject("Excel.Sheet")'的引用。

每个支持自动化的应用程序都至少提供一种对象类型。

例如,一个字处理应用程序可能会提供 Application 对象,Document 对象,以及 Toolbar 对象。要创建 ActiveX 对象,只需将 CreateObject 返回的对象赋给一个对象变量:

例子:

Dim ExcelSheet As Object'声明一个对象变量来存放该对象

Set ExcelSheet = CreateObject("Excel.Sheet")

ExcelSheet.Application.Visible = True '设置 Application 对象使 Excel 可见

ExcelSheet.Cells(1, 1).Value = "This is column A, row 1"'在表格的第一个单元中写些文本

ExcelSheet.SaveAs "C:\ TEST.xls"'将该表格保存到 C:\test.xls 目录

ExcelSheet.Application.Quit'使用应用程序对象的 Quit 方法关闭 Excel。

Set ExcelSheet = Nothing'释放该对象变量

上述代码将启动该应用程序创建该对象,在本例中就是创建一个 Microsoft Excel 电子数据表。对象创建后,就可以在代码中使用自定义的对象变量来引用该对象。在下面的示例中,可以使用对象变量 ExcelSheet 来访问新建对象的属性和方法,以及访问 Microsoft Excel 的其它对象,包括应用程序对象和单元格集合。

2、GetObject方法

描述:从文件中检索一个 Automation 对象, 或检索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 中的 Word.Basic 对象),那么无论执行 CreateObject 多少次也只能创建对象的一个实例。此外,对于单实例的对象,如果用零长度的字符串语法("")调用,GetObject 总是返回同样的实例,而且如果省略路径参数将导致错误。使用 GetObject 不能获得对 Visual Basic 4.0 以及以前版本创建的 Microsoft Visual Basic(R)类的引用。

GetObject 适用于所有的 COM 类,不受创建对象所用语言的限制。

示例

在执行下列代码时,与指定的 strPathname 相关联的应用程序被启动,指定文件中的对象被激活。 如果 strPathname 是一个零长度的字符串 (""), GetObject 将返回指定类型的新对象实例。如果 strPathname 参数完全被省略,GetObject 将返回指定类型的当前活动对象。如果不存在指定类型的对象,将发生错误。

Dim MyObject As Object
Set MyObject = GetObject("C:\CAD\SCHEMA.CAD")
MyApp = MyObject.Application

某些应用程序允许激活一个文件的某些部分。如果要这样做,需要在文件名后添加一个惊叹号 (!),然后跟一个字符串,标识出文件中希望被激活的部分。关于如何创建该字符串的信息,请参阅创建对象的应用程序的有关文档。

例如,在一个绘图应用程序中,文件中存储的一幅图可能包含多层。可以使用下面的代码激活绘图文件中称为 schema.cad 的一层:

Set LayerObject = GetObject("C:\CAD\SCHEMA.CAD!Layer3")

如果不指定对象的类,COM 将根据所提供的文件名来确定要启动的应用程序和要激活的对象。但是,某些文件可能支持多个对象类。例如,一幅图纸可能支持三种不同类型的对象:一个应用程序对象,一个绘图对象,以及一个工具栏对象,它们都是同一个文件的组成部分。

在下例中,FIGMENT 是一个绘图应用程序的名称,DRAWING 是它支持的对象类型之一。

Dim MyObject As Object
Set MyObject = GetObject("C:\DRAWINGS\SAMPLE.DRW", "FIGMENT.DRAWING")

3、Quit方法

描述:退出执行,返回指定的错误代码。

语法:object.Quit [intErrorCode]

解释:object 必选项。 WScript 对象。

intErrorCode可选项。如果包含此参数,WScript 将把它作为进程终止码返回。如果省略了 intErrorCode,WScript 将返回零 (0) 作为进程终止码。

例子:

下例退出执行并返回错误代码 1:

WScript.Quit

4、Sleep方法

描述:使脚本进程在指定的毫秒数内处于非活动状态,然后继续执行。

语法:object.Sleep(intTime)

参数:object必选项。WScript 对象。

intTime脚本进程在非活动状态的时间长度,以毫秒为单位。

说明:

在睡眠状态下,脚本将继续执行所处理的事件。如果脚本引擎超时或被中断,睡眠将立即结束。

例子:

wscript.sleep(3000)

set apprun=createobject("wscript.shell")

apprun.run "%windir%\notepad.exe"

此例子将会延迟3秒启动记事本。

5、timeout方法

描述:设置脚本的生存时间

语法:wscript.timeout

例子:

wscript.timeout=10

msgbox "hello"

6、Echo方法

描述:将输出发送到对话框或控制台。

语法:object.Echo [Arg1] [,Arg2] [,Arg3] ...

参数:object必选项。WScript 对象。

Arg1, Arg2, Arg3 ...所显示的项的列表。

说明:

如果宿主为 WScript.exe,本方法将把输出显示在对话框中;如果宿主为 CScript.exe,结果将显示在控制台上。每一项将被一个空格隔开。 在 CScript.exe 下,输出的末尾被加上换行符。如果未提供任何项,显示的将是空行。

例子:

set fso=createobject("scripting.filesystemobject")

set f=fso.opentextfile("c:\test.txt")

wscript.echo f.readall

将会显示这个文件里面的所有内容。这么看来,他的功能跟msgbox一样,不过不如他强大。

7、ConnectObject方法

描述:将一个对象事件源连接到具有给定前缀的函数。

语法:object.ConnectObject strObject, strPrefix

参数:object必选项。WScript 对象。

strObject要连接的对象的名称。

strPrefix事件函数的前缀。

说明:

对象必须能够枚举自己类的事件集合。

例子:

下例实例化了一个假想的对象,并将其连接到脚本文件。然后脚本调用该对象的 "SomeMethod" 方法。如果对象中发生了名为 "Event"的事件,将调用 MyEvent_Event 子例程。

Set MyObject = WScript.CreateObject("SomeObject")
MyObject.SomeMethod
WScript.ConnectObject MyObject, "MyEvent"
Sub MyEvent_Event(strName)
    WScript.Echo strName
End Sub
WScript.DisconnectObject MyObject

8、DisconnectObject 方法

描述:将原先与 Windows 脚本宿主连接的对象断开。

语法:object.DisconnectObject obj

参数:object必选项。WScript 对象。

obj要断开连接的对象的名称。

说明:

如果所指定的对象尚未被连接到 Windows 脚本宿主,则此方法不起任何作用。

例子:

下例创建了一个假想的对象并将其连接到脚本文件。然后脚本调用对象的 "SomeMethod" 方法。如果对象中发生名为 "Event" 的错误,MyEvent_Event 子例程将被调用。

Set MyObject = WScript.CreateObject("SomeObject", "MyEvent")
MyObject.SomeMethod
Sub MyEvent_Event(strName)
    WScript.Echo strName
End Sub
WScript.DisconnectObject MyObject

摘自:网络


VB部分相关文章推荐:


※VB 释放资源文件到指定目录函数

※VB 读取资源文件里面的字符串

※VB中资源文件.res的使用方法详解

※VB6.0中创建和使用文本资源文件

※VB WindowsMediaPlayer 播放

※vb中WindowsMediaPlayer的常用属性和方法

※VB Environ系统环境变量函数大全

※VB 去除文本框粘贴功能

※VB LISTBOX

※VB 删除数组中的重复元素

※VB数组快速排序算法

※关于三个概念:ActiveX、OLE和COM

※VB 获得磁盘的文件系统

※VB中用API实现文件拖放

※加密算法-MD5算法

※VB中使用MD5算法

※VB 全局热键HOOK (不占系统资源版本)

※VB 小技巧自定义TextBox文本框右键菜单

※VB 写下载者代码

※VB 一行代码的诀窍

※VBS教程-wscript对象

※vb枚举进程

※在VB中如何让线程或进程在指定的CPU上运行

※VB判断指定的WORD文档是否被打开

※VB如何读取快捷方式的目标路径

※VB用API控制输入法状态

※为系统加载右键注册控件选项【VB 注册控件】

※VB如何根据窗口标题获得进程名称

※VB快速查找大型文件中包含的字符串

※VB实现可执行文件运行时自删除

※VB 打开txt,bat,jpg 任意后缀程序

※VB 写文件关联程序

※VB 自启动建立右键菜单

※VB 判断IP能否ping通

※VB FTP操作类(可上传、下载、创建文件夹等等)

※VB部分文件汇总B

※Vb 求素数最经典的方法也是最快的方法

※vb用数组方式快速导出MSFlexGrid表格数据到Excel表格中

※VB中MsFlexGrid控件的使用细则

※点击MSFlexGrid数据控件的标题进行数据排序

※VB 获取鼠标坐标

※VB中NEW的用法(申请内存空间)

※VB CreateObject函数

※VB中的New 与 CreateObject的区别

※VB ListBox 添加不重复的值

※VB 单击ListView控件某列表头进行排序

※VB 简单实现简体与繁体互转

※VB 阿拉伯数字转换为中文大写数值函数

※VB 获取Textbox文本框中的行数函数


更多精彩>>>

VBS教程-wscript对象相关推荐

  1. VBS基础篇 - wscript 对象

    VBS基础篇 - wscript 对象 一.wscript对象 描述:提供对 Windows 脚本宿主对象模型根对象的访问. 详述:WScript 对象是 Windows 脚本宿主对象模型层次结构的根 ...

  2. Wscript对象详解

    15.6  Windows脚本宿主的内建对象 每个编程环境都提供了自己的对象模型,开发人员 可以使用这些对象模型实现各种解决方案,WSH也不例外.WSH包含了一组核心对象,分别包含了属性和方法,可以用 ...

  3. Swift中文教程(五)--对象和类

    原文:Swift中文教程(五)--对象和类 Class 类 在Swift中可以用class关键字后跟类名创建一个类.在类里,一个属性的声明写法同一个常量或变量的声明写法一样,除非这个属性是在类的上下文 ...

  4. [Unity C#教程] 游戏对象和脚本

    文章转载自:https://www.cnblogs.com/UnityYork/p/7704803.html [Unity C#教程] 游戏对象和脚本 博主最近在学习Unity,发现一个英文教程很好. ...

  5. JavaScript强化教程—— RegExp 对象

    为什么80%的码农都做不了架构师?>>>    本文为 H5EDU 机构官方 HTML5培训 教程,主要介绍:JavaScript强化教程 --RegExp 对象   RegExp ...

  6. java属于面相_[Java教程]面相对象

    [Java教程]面相对象 0 2018-09-13 16:00:26 面向对象 那什么是面向对象? 在Java 中,我们是一切皆对象,所有的方法都是围绕着对象来的.面相对象是相对面向过程而来的,他们都 ...

  7. vbs 之 wscript

    https://www.jb51.net/article/20919.htm '''''''''''''''''''''''''''''''''''''''''''''''''''''''''' ' ...

  8. 遍历java对象属性_[Java教程]遍历对象属性

    [Java教程]遍历对象属性 0 2016-09-12 13:00:03 初始化对象:var person = function(name){ this._name = name;}var grand ...

  9. VBS之FileSystemObject对象详解

    目录 FileSystemObject的创建 FileSystemObject对象的属性和方法 属性 方法 FileSystemObject对象文件/文件夹相关的操作 复制文件/文件夹 Copy Co ...

最新文章

  1. 中流程图快速制作_GitMind教程 | 业务流程图怎么做?
  2. js关闭窗口无提示,不支持FF
  3. 微服务架构 — 服务治理 — 服务限流、服务降级、服务熔断
  4. arr.sort的排序原理
  5. 【渝粤教育】国家开放大学2018年春季 0105-22T酒店营销实务 参考试题
  6. established关键字
  7. 小霸王消失,好记星落灰,谁能“取悦”10后?
  8. ======第三章处理机调度与死锁======
  9. 二进制数转换为十进制数c语言程序代码,任意二进制数转换为十进制数
  10. NLP标注工具:【免费:doccano、标注精灵、brat、YEDDA、DeepDive、rasa-nlu-trainer】【收费:Prodigy】
  11. 微信小程序消息通知简单Demo
  12. C#应用程序界面开发基础——窗体控制(6)——菜单栏、工具栏和状态栏控件
  13. Access的密码以及如何连接有数据库密码的 Access
  14. 质量体系建设——环境治理
  15. c++之gbk和utf8编码转换
  16. pytorch做seq2seq注意力模型的翻译
  17. Django 学习 之ORM多表操作
  18. 科视Christie HS系列激光投影机为江苏园博园的夜晚增添亮丽风景线
  19. MT6765开机LOGO图片的显示原理
  20. 网众linux无盘服务器,网众无盘Linux常用命令介绍

热门文章

  1. 身为程序员的唐僧说:只要我不死,就能取到真经!
  2. 华为回应“停止社招”;iPhone XS 取消美颜; iCloud 大面积瘫痪 | 极客头条
  3. 用代码向 90 后逝去的青春致敬!
  4. Oracle 加快 Java 迭代速度,功能性版本只维护六个月
  5. 福利 | 2018 年,程序员全新的技术之路
  6. python编程输入,Python编程:输入变量返回nam
  7. springcloud入门实战进阶百度云,【MyBatis 5(1)
  8. gson和json-lib的区别
  9. java enum 长度限制_Java中的Enum的使用与分析
  10. python和ui设计哪个更好_Python主流IDE对比:Eric VS. PyCharm