大话Windows Script Host编程 | |||
---|---|---|---|
http://www.sina.com.cn 2006年07月12日 10:31 天极yesky | |||
作者:郑建标 1.引言
而vbs与js文件就不用任何额外的内容,直接写VBscript及Jscript语句即可。 2.2 WSH脚本文件的运行: 上面所讲的3种wsh文件都可以直接在Windows中双击运行,他们关联的执行文件是wscript.exe文件。另外执行脚本的程序还有一个,它是cscript.exe,是一个可以在DOS下运行的程序。当然DOS下运行的程序与Windows的大部分功能是相同的,只是稍微有点不同,如同样是Wscript.Echo输出语句,wscript.exe的结果是以窗口方式显示,而cscript.exe是以标准控制台方式输出,并可以进行DOS改向。 另外运行WSH脚本时也支持文件的拖放操作。具体的操作步骤是:选中若干个文件,把它们拖到包含下面脚本的文件,那么下面vbs脚本就会执行,并获取拖过来的文件名,把它们显示出来:
2.3 WSH的主要对象 WSH的脚本不支持API功能,WSH除了提供若干脚本语言外,还提供了一些编程可以使用的对象,利用这些对象,可以方便地进行一些脚本语言本身不具备的功能,如系统、网络等操作。 2.3.1 Wscript对象 Wscript对象是WSH本身具有的对象,在脚本中不需要建立,可以直接使用。它的最常用的一个方法CreateObject,用于创建一个COM对象,可以调用其他COM程序。WSH的Echo方法、Quit方法、Sleep方法,以及Path属性、ScriptFullName属性都可以在脚本中使用,为脚本的编写提供方便。 2.3.2 WshShell对象 WshShell对象是WSH提供的最有用的一个对象,有许多系统功能平时只能用API方式才能实现,用WshShell的方法即可简单地实现。它可用Wscript.Createobject(“wscript.shell”)方法建立。其常用方法与属性有:CreateShortcut方法用于创建一个快捷方式或URL快捷方式; Run方法用于执行程序,功能比VB的Shell命令功能要强,可以直接打开关联文件、文件夹、网页等;RegDelete/RegRead/RegWrite方法是对注册表项的删除、读取与写入,是非常有用的;SendKeys方法将指定的按键序列送至活动窗口;SpecialFolders属性返回特殊的文件夹名,如桌面、我的文档等。 2.3.3 WshNetwork对象 WshNetwork对象主要涉及网络及打印机方面的功能,其主要方法与属性有:建立或删除网络打印机的连接,映射及删除网络驱动器,枚举网络驱动器及网络打印机等方法。 2.3.4 WshShortcut/ WshUrlShortcut对象: WshShortcut/WshUrlShortcut对象并不能由Createobject方法来产生,而是由WshShell的CreateShortcut方法建立。先设置快捷方式的相关属性,再用Save方法建立即可。 2.3.5 FSO对象: FSO是File System Object的缩写,它提供磁盘、文件夹及文件的有关操作,是由WScript.CreateObject("Scripting.FileSystemObject")产生。FSO对象对于使用过动态网页制作的人是不陌生的,后台程序对于文件操作基本上都是用FSO来实现的。由于VBscript脚本语言是VB语言的一个简易版,去掉了VB的一些功能,其中所有的文件功能都去掉了,所以脚本中只能用COM的方法调用FSO对象来解决文件夹及文件的一些操作。从严格意义上来讲,FSO对象不是WSH所带的,而是VBscript所带的,但由于WSH本身带了VBscript,而且FSO在WSH的作用 非常大,所以说WSH带了FSO也未尝不可。但由于介绍FSO的文章很多了,所以这里就不再对它进行细述了。 2.3.6 调用其它对象: WSH是可以调用其它的COM对象的,所以只要机器上已经安装的软件,并提供COM服务器方式的,都可以在WSH中调用。包括ODBC数据库操作对象、各种EXE方式的对象等,如可以直接操作Word的“Word.Application”对象。即WSH能使用的对象就是无穷的了。 2.4 WSH文件的编辑 由于WSH文件是一个纯文本文件,从理论上讲,可以用任何的文本编辑器均可进行编辑。但由于现在一些网页制作软件都为一些脚本程序提供属性及方法的智能提示功能,所以选择一些这样的工具会方便许多的。其中微软的Visual InterDev是不错的选择,毕竟它与WSH都是微软的产品,互相配合比较好。当然若输入是按网页的方式进行,最后可能要去掉一些HTML标签。 |