js玩一玩WSH吧


Posted in Javascript onFebruary 23, 2007

Windows Script Host(Windows 脚本宿主)为 ActiveX 脚本引擎提供了一个不依赖于语言的脚本宿主。它允许通过 Windows 桌面或命令行来运行脚本。用来做一些需要批处理的事情是很方便的。
[玩一玩] 把下面代码保存为sendkeys.js,然后双击运行。

var WshShell = new ActiveXObject("WScript.Shell"); 
WshShell.Run("Notepad"); 
WScript.Sleep(100); 
WshShell.AppActivate("Notepad"); 
WScript.Sleep(100); 
WshShell.SendKeys("Hello World!{ENTER}"); 
WScript.Sleep(500); 
WshShell.SendKeys("^s"); 
WScript.Sleep(500); 
WshShell.SendKeys("c:\\savedWorld.txt"); 
WScript.Sleep(500); 
WshShell.SendKeys("%s");

WSH本身涉及的内容并不多,如果你基础好的话可以在40分钟以内基本掌握(也就是把教程浏览了一遍)。

这里有一个中文的教程,是 秋水 前辈留下的东西:http://www.blueidea.com/user/qswh/WSH.CHM

这个教程比较老了,新的资料可见于http://msdn.microsoft.com/library/en-us/script56/html/d78573b7-fc96-410b-8fd0-3e84bd7d470f.asp

剩下的就是调用你需要的 ActiveX 组件了,这也是Windows Scripting主要的乐趣所在。使 ActiveX 技术不过时的原因之一正是其在脚本中的应用。

除了直接的脚本应用之外,WSH还可以嵌入到其他程序中,Delphi和VB(6.0)程序通过这种办法来使用正则表达式。

Javascript 相关文章推荐
JQuery获取当前屏幕的高度宽度的实现代码
Jul 12 Javascript
一个JQuery操作Table的代码分享
Mar 30 Javascript
jQuery焦点图切换简易插件制作过程全纪录
Aug 27 Javascript
基于javascript实现按圆形排列DIV元素(三)
Dec 02 Javascript
bootstrapValidator.min.js表单验证插件
Feb 09 Javascript
jQuery在header中设置请求信息的方法
Mar 06 Javascript
angular-cli修改端口号【angular2】
Apr 19 Javascript
浅谈struts1 & jquery form 文件异步上传
May 25 jQuery
zTree异步加载展开第一级节点的实现方法
Sep 05 Javascript
微信小程序在地图选择地址并返回经纬度简单示例
Dec 03 Javascript
Vue使用lodop实现打印小结
Jul 06 Javascript
Js实现粘贴上传图片的原理及示例
Dec 09 Javascript
用Javascript做flash做的事..才完成的一个类.Auntion Action var 0.1
Feb 23 #Javascript
javascript知识点收藏
Feb 22 #Javascript
根据判断浏览器类型屏幕分辨率自动调用不同CSS的代码
Feb 22 #Javascript
用YUI做了个标签浏览效果
Feb 20 #Javascript
懒就要懒到底——鼠标自动点击(含时间判断)
Feb 20 #Javascript
初探jquery——表单应用范例
Feb 20 #Javascript
动态调用css文件——jquery的应用
Feb 20 #Javascript
You might like
第九节--绑定
2006/11/16 PHP
破解图片防盗链的代码(asp/php)测试通过
2010/07/02 PHP
PHP在innodb引擎下快速代建全文搜索功能简明教程【基于xunsearch】
2016/10/14 PHP
DEFER怎么用?
2006/07/01 Javascript
JavaScript高级程序设计(第3版)学习笔记13 ECMAScript5新特性
2012/10/11 Javascript
js数组常见操作及数组与字符串相互转化实例详解
2015/11/10 Javascript
深入剖析JavaScript:Object类型
2016/05/10 Javascript
vue-router:嵌套路由的使用方法
2017/02/21 Javascript
关于angular js_$watch监控属性和对象详解
2017/04/24 Javascript
详解vue2.0 使用动态组件实现 Tab 标签页切换效果(vue-cli)
2017/08/30 Javascript
浅谈HTTP 缓存的那些事儿
2018/10/17 Javascript
Javascript 对象(object)合并操作实例分析
2019/07/30 Javascript
javascript浅层克隆、深度克隆对比及实例解析
2020/02/09 Javascript
Vue 根据条件判断van-tab的显示方式
2020/08/03 Javascript
[46:53]Secret vs Liquid 2019国际邀请赛小组赛 BO2 第一场 8.15
2019/08/17 DOTA
[01:21:58]守擂赛DOTA2第一周决赛
2020/04/22 DOTA
Python类的基础入门知识
2008/11/24 Python
python基础教程之循环介绍
2014/08/29 Python
python模拟Django框架实例
2016/05/17 Python
python定向爬虫校园论坛帖子信息
2018/07/23 Python
python 剪切移动文件的实现代码
2018/08/02 Python
解决Python设置函数调用超时,进程卡住的问题
2019/08/08 Python
Python实现Wordcloud生成词云图的示例
2020/03/30 Python
Pycharm连接gitlab实现过程图解
2020/09/01 Python
python中spy++的使用超详细教程
2021/01/29 Python
Hotter Shoes英国官网:英伦风格,舒适的鞋子
2017/12/28 全球购物
几个Linux面试题笔试题
2016/08/01 面试题
教师实习自我鉴定
2013/12/14 职场文书
关于工资低的辞职信
2014/01/14 职场文书
英语专业个人求职信范文
2014/02/01 职场文书
婚礼主持结束词
2014/03/13 职场文书
个人租房协议书
2014/04/09 职场文书
Pytorch 使用tensor特定条件判断索引
2021/04/08 Python
MySQL官方导出工具mysqlpump的使用
2021/05/21 MySQL
Nginx HTTP跳转至HTTPS
2022/05/15 Servers
win10频率超出范围怎么办?win10老显示超出工作频率范围的解决方法
2022/07/07 数码科技