VBS 的 Hello World 只要一行:MsgBox "Hello World",不用编译,保存为 *.VBS 即可。语言大概也是最简单的一种语言了,很快就可以学会。当然这不是重点,前面说了它可以很方便调用 COM,调用 COM 又能做什么呢?太多了,说不完,比如可以连接数据库,然后很方便的操作它;可以控制微软的 Office 来完成一些自动化工作;可以方便地调用 WMI 来管理 Windows 系统,基本上鼠标键盘可以做的,WMI 都可以做;只要是标准安装的 Windows 都有(Windows 9597 没有,98 开始和之后都有)支持的特性可以让我们随时写一些小程序方便我们的其他工作,就像一些人喜欢用 bat/cmd 脚本,其实 bat/cmd 可以做的,VBS 都可以做。
如果看过 网盘里的脚本作品,就知道,那些程序都是 .VBE 后缀的文件,这其实是 VBS 程序加密后的文件,经过解密后就可以看到代码了。这些脚本都是比较实用的,在我的作品展示里有部分脚本作品的详细介绍(可以在我的空间里找 Script)。我之所以喜欢用 VBS 来写这些工具,就是因为它方便,代码量小可以完成比较多的功能,同样功能用 C 来写要写不止 23 倍的代码。
个人觉得,如果是个好奇、敏感的人,学 WSH 对理解 COM 也是有很大帮助的。比如 本人吧,看到 CreateObject 的字符串参数,就要想为什么这个字符串可以表示一个对象?然后去找答案,原来是在注册表里有注册,于是挖掘出 ProgID 和 CLSID 等 COM 的概念。后来很了解怎么调用 COM 组件了,于是开始不爽,一直在调用,也该自己写个组件玩玩了,这样就可以随心所欲扩展自己想要的功能,然后开始学习怎么写 COM:听说 VB 写 COM 几乎和调用 COM 一样简单,一用,还真的是这样,根本就和用 VB 做普通程序一样!可后来发现了,还是不懂 COM 的内部实现,改用 VC 来写吧,马上就有微软军团的人告诉您应该用 ATL,那就看看了,发现 ATL 把内部实现也给隐藏了,那就看看 ATL 的代码吧,靠,高手基本定型了!再来就直接用纯 C 实现 COM,果然天下无敌!
学习 WSH 的理由只有:兴趣、好奇、方便写小工具。







