WSH脚本宿主

WSH,是“Windows Scripting Host”的缩略形式,其通用的中文译名为“Windows 脚本宿主”。

Wscript脚本主对象

WScript.Echo WScript.BuildVersion
'WSH脚本宿主的生成版本号
WScript.Echo WScript.FullName
'返回WSCRIPT或CSCRIPT脚本宿主所在的位置路径
WScript.Echo WScript.Interactive
'返回脚本模式,仅返回交互模式和批处理模式,默认为交互模式
WScript.Echo WScript.Name '返回 WScript
对象(主机可执行文件)的名称
Wscript.Echo WScript.Path
'返回包含主机可执行文CScript.exe或WScript.exe的路径名称
WScript.Echo WScript.ScriptName
'返回当前双击执行的WSF或VBS或JS文件的文件名
WScript.Echo WScript.Version
'返回WSCRIPT或CSCRIPT的版本号
WScript.Echo WScript.ScriptFullName
'返回当前运行脚本的完整路径
WScript.Echo WScript.Arguments.count
'返回用户所拖放文件至脚本时的拖放文件个数
WScript.Echo WScript.Arguments(0)
'返回用户所拖放文件第1个单个文件的完整路径和名称
WScript.Sleep 3000
'使程序间隔一段时间后继续执行,单位豪秒,这里1000=1秒
Set objname=WScript.CreateObject("??")
'WSH创建COM对象,??是创建对象函数前缀,如WScript.Network
WScript.ConnectObject
连接正与外部脚本连接的变量名, "表示函数前缀的字符串值"
WScript.DisconnectObject
需要断开连接的正与外部脚本连接的变量
WScript.Echo "弹出对话框后显示的消息文字或变量"[,可选第二消息,第三消息......]
Set
myobj=GetObject(?[,??],[???])
'?=文件的完全限定路径名,??=可选。对象的程序标识符,???=启动的关联应用程序名
WScript.Quit [?]
'终止程序继续运行的函数,在其下语句则不会执行,?=可不添的,代表退出后的返回值

'请将此程序少加修改存为wsf后缀的文件,然后及可运行,其中当然可以使用VBS的msgbox等函数,同样也可以使用FSO,ADO等技术,但是首先你必须保证你的机器已经装有Wscript.exe和Cscript.exe,还有也可以在HTML网页中使用WSH的诸如Shell对象。此句为注释,你可以删除.Shell对象
Set
WshShell=WScript.CreateObject("WScript.Shell")
WScript.Echo
WshShell.CurrentDirectory '返回或更改当前的活动目录
Set sys=WshShell.Environment
'显示系统状态,详细请看网络程序员伴侣WSH实例
Wscript.Echo WshShell.SpecialFolders("Desktop")
'对WINDOW特殊文件夹的简易引用,详细见实例
WScript.Echo
WshShell.ExpandEnvironmentStrings("%WinDir%") '返回环境变量的扩展值,详细见实例
WshShell.Run
"calc",0-10 '运行一个程序,详细见实例
WshShell.AppActivate "网络程序员伴侣-Lshdic2002"
'使指定标题的程序或文件获得焦点
WshShell.SendKeys "{del}"
'按键(仿佛是在键盘上击键一样),详细见实例
WshShell.Popup
"弹出对话框正文",0-5/16/32/48/64,"弹出对话框标题",0-5/16/32/48/64 '弹出对话框
WshShell.RegWrite
"HKCU\Software\ACME\FortuneTeller\",1,"REG_BINARY"
'写注册表见实例
WshShell.RegDelete "HKCU\Software\ACME\FortuneTeller\MindReader"
'删除注册表见实例
key=WshShell.RegRead("HKCU\Software\ACME\FortuneTeller\")
'读注册表见实例

'请将此程序少加修改存为wsf后缀的文件,然后及可运行,其中当然可以使用VBS的msgbox等函数,同样也可以使用FSO,ADO等技术,但是首先你必须保证你的机器已经装有Wscript.exe和Cscript.exe,还有也可以在HTML网页中使用WSH的诸如Shell对象。此句为注释,你可以删除.

Network对象

Set
WshNetwork = WScript.CreateObject("WScript.Network")
WScript.Echo "你的域名是: "
& WshNetwork.UserDomain '返回用户的域名
WScript.Echo "你的计算机系统名称是:" &
WshNetwork.ComputerName '返回计算机系统的名称
WScript.Echo "你是:" &
WshNetwork.UserName
'返回计算机用户名

'请将此程序少加修改存为wsf后缀的文件,然后及可运行,其中当然可以使用VBS的msgbox等函数,同样也可以使用FSO,ADO等技术,但是首先你必须保证你的机器已经装有Wscript.exe和Cscript.exe,还有也可以在HTML网页中使用WSH的诸如Shell对象。此句为注释,你可以删除.

完整WSH实例
wscript.echo
"这便是一简单的WSH程序,从此你又多学了一项新技术[WSH]"
msgbox "怎么样?VBS中的msgbox也起作用哦" & vc &
vc & "少等1500毫秒,弹出JS语言版的对话框",32,"WSH实例"
WScript.Sleep 1500
'使程序停顿1500毫秒

pop=WScript.CreateObject("Wscript.Shell")
pop.Popup
("恭喜!你终于懂了",48,"这是JS哦")

快捷方式操作实例

Set Shell =
CreateObject("WScript.Shell")
paths = Shell.SpecialFolders("Desktop")
'用函数指定特殊文件夹,这里是[桌面]
Set link = Shell.CreateShortcut(paths &
"\快捷方式名称.lnk")
link.Description = "此句为注释,这是用WSH创建的快捷方式"
link.HotKey =
"CTRL+ALT+SHIFT+X" '这是为快捷方式定义快捷键
link.IconLocation = "pbrush.exe,0"
'指定快捷方式图标,这里勉强先用画图程序的图标
link.TargetPath = "http://www.lshdic.com"
'这里指定连接目标,先勉强用我以前的主页代替
link.WindowStyle = 3 '窗体弹出方式。
link.WorkingDirectory
= paths '指定快捷方式的工作目录
msg = msgbox("你确认要在桌面建立一个快捷方式吗?",32+1,"如何?")
if msg =
1 then
link.Save '保存使程序立即生效
end
if

'此文件运行请保存为wsf后缀的文件
'请将此程序少加修改存为wsf后缀的文件,然后及可运行,其中当然可以使用VBS的msgbox等函数,同样也可以使用FSO,ADO等技术,但是首先你必须保证你的机器已经装有Wscript.exe和Cscript.exe,还有也可以在HTML网页中使用WSH的诸如Shell对象。此句为注释,你可以删除.

注册表操作实例
Set
WshShell=WScript.CreateObject("WScript.Shell")

WshShell.RegWrite

"HKEY_CURRENT_USER\Software\Policies\Microsoft\Internet

Explorer\Control Panel\homepage",1,"REG_DWORD"

'写注册表(0=要写的值,REG_DWORD是16或10进制格式也可以是REG_SZ=字符串

REG_BINARY=二进制值整数REG_EXPAND_SZ=可扩展的字符串)

Msgbox
WshShell.RegRead

("HKEY_CURRENT_USER\Software\Policies\Microsoft\Internet

Explorer\Control Panel\homepage")
'读注册表操作

'注意,程序写到这里如果将homepage的值设为1,则IE浏览器internet选项的IE首页设置栏将变灰,确认请打开IE浏览器查看,如果想恢复,则把本程序的homepage的值改成0运行即可
, 由此可见WSH操作注册表的确是很实用的技术!此文件运行请保存为wsf后缀的文件模拟输入实例

Set
WshShell=WScript.CreateObject("WScript.Shell")
WshShell.Run "Notepad",1
'运行WINDOWS系统自带的记事本程序
wscript.sleep 1000
'停顿1秒种为了使记事本程序加载完毕
WshShell.AppActivate "无标题 - 记事本"
'使记事本程序获得焦点
WshShell.SendKeys "1234567890 hehe" '开始模拟按键了
wscript.sleep 500

wshshell.sendkeys "{enter}no not"
wscript.sleep 500
wshshell.sendkeys
"{bs 11}"
wscript.sleep 600
wshshell.sendkeys " hahahahahahaha!Bye bye my
boby ~0_0~ "

'此文件运行请保存为wsf后缀的文件

系统检测实例

Set
WshShell=WScript.CreateObject("WScript.Shell")
Set
sys=WshShell.Environment
for each i in sys
'采用VBS的穷尽方法,直至sys为空
WScript.Echo
i
next

'此文件运行请保存为wsf后缀的文件,如果在网络运行,请只保留VBS语句。

时间: 2024-09-22 13:24:19

WSH脚本宿主的相关文章

WSH 5.6(脚本宿主) 的新增功能_vbs

在这个最新版本的 Windows 脚本宿主(5.6 版)中,说明了若干方面的功能: 改进了参数处理 - 处理和记录命令行参数更为简单.简化了脚本与其他命令行脚本的集成过程,更容易创建可以为用户提供帮助信息的脚本.请参考下表中有关 WSH 语言功能的信息,以熟悉这一新功能. 要了解的信息 请参阅 将脚本开关组合到一起. <runtime> 元素 定义脚本的命名开关. <named> 元素 定义脚本的未命名开关. <unnamed> 元素 使脚本具有自我说明性. <e

打开磁盘时提示“Windows 脚本宿主无法找到脚本文件”

  故障现象:电脑中毒后,对整个硬盘查杀,查杀完病毒后,打开C.D.E.F等分区时,都会弹出一个对话框提示"脚本宿主无法找到脚本文件,下面是脚本:D:autorun.vbs/行: 10/字符: 8/错误:语法错误/代码:800A03EA/源:Microsoft VBScript编译器错误",无法进入C.D.E.F等分区. 故障处理:电脑原来中了Autorun病毒,虽然杀毒软件将Autorun病毒查杀掉,但由于其他文件(Autorun.*)和注册表引用键值指向了被杀毒软件查杀掉的Auto

“Windows脚本宿主”autorun.js的处理方法_常用工具

[问题故障描述]: 双击C.D.E盘就会出现一个"Windows脚本宿主"无法找到脚本文件,下面是脚本:D:\autorun.vbs 行: 25 字符: 4 错误: 错误的'Next' 代码: 800A041F 源: Microsoft VBScript编译器错误 [病毒信息说明]: 双击盘符后,会加载根目录下autorun.inf文件,再调用autorun.bat文件,根据autorun.bat编写内容,调用autorun.reg写入键值到注册表中.病毒有可能会修改以下键值: Cod

运行脚本之前,如何确定计算机上的默认脚本宿主的代码_vbs

问: 您好,脚本专家!我知道,在运行脚本时,可使用代码确定脚本是否在 WScript 或 CScript 中运行.但我想不明白的是:运行脚本之前,如何确定计算机上的默认脚本宿主? -- AT 答: 您好,AT.您知道,人们完全难倒脚本专家并不是常事:不过我们不得不承认这个问题的确有点挑战性.(嗯,嗯:那么,或许它并不足以能够难倒脚本专家:老实说,事实上它相当简单.不过你们无需知道这些.)我们还不知道如何回答这个问题,但我们知道,为了帮助您解决这个问题,我们将会需要大量辛勤的工作和奉献. 但是,在

JScript脚本技术基础

js|jscript|脚本 JScript 脚本技术 Microsoft 功能强大的脚本编写语言是专为 Internet 而设计的.JScript.NET 是 Microsoft ECMA 262 语言的下一代实施产品.与 ECMAScript Edition 4 一起开发的.JScript.NET 中的改进功能包括了准确编译的代码.类型与无类型的变量.类(内含继承.函数重载.属性访问器等等).包.跨语言支持,以及对 .NET 框架的访问. VBScript Microsoft Visual B

深入挖掘Windows脚本技术

window|脚本 [目录]1,前言2,回顾WSH对象3,WMI服务4,脚本也有GUI5,反查杀6,来做个后门7,结语8,参考资料 [前言]本文讲述一些Windows脚本编程的知识和技巧.这里的Windows脚本是指"Windows Script Host"(WSH Windows脚本宿主),而不是HTML或ASP中的脚本.前者由Wscript或Cscript解释,后两者分别由IE和IIS负责解释.描述的语言是VBScript.本文假设读者有一定的Windows脚本编程的基础.如果你对

一段利用WSH修改和查看IP配置的代码_javascript技巧

复制代码 代码如下: var WMI = GetObject("winmgmts://127.0.0.1");  var sql = "select * from Win32_NetworkAdapterConfiguration where IPEnabled=true";  var enmPing = new Enumerator(WMI.ExecQuery(sql));  var arrAdp = new Array;  while(!enmPing.atEn

Vbs脚本经典教材(最全的资料还是MSDN)_vbs

  -为什么要使用Vbs? 在Windows中,学习计算机操作也许很简单,但是很多计算机工作是重复性劳动,例如你每周也许需要对一些计算机文件进行复制.粘贴.改名.删除,也许你每天启动计算机第一件事情就是打开WORD,切换到你喜爱的输入法进行文本编辑,同时还要播放优美的音乐给工作创造一个舒心的环境,当然也有可能你经常需要对文本中的某些数据进行整理,把各式各样的数据按照某种规则排列起来--.这些事情重复.琐碎,使人容易疲劳. 第三方软件也许可以强化计算机的某些功能,但是解决这些重复劳动往往事倍功半,

vbs实用软件自造——Windows脚本应用实例_vbs

从Windows 98时代起,各种脚本文件不断出现,脚本文件的作用是为了实现各种脚本文件在 Windows 界面或 Dos 命令提示符下的直接运行,微软就在系统内植入了一个基于 32 位 Windows 平台.独立的脚本运行环境,并将其命名为"Windows Scripting Host(Windows 脚本宿主以下简称WSH)". WSH 诞生后,在 Windows 系列产品中很快得到了推广.除 Windows 98 外,微软在 Internet Information Server