中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net  论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » vbs- appactivate 标题框获取问题--值得研究!
作者:
标题: vbs- appactivate 标题框获取问题--值得研究! 上一主题 | 下一主题
vcstone
初级用户





积分 98
发帖 39
注册 2007-3-16
状态 离线
『楼 主』:  vbs- appactivate 标题框获取问题--值得研究!

看了不少vbs教程...发现vbs里的sendkeys非常好用.很多教程都是说通过appactivate 获取到标题框后就进行sendkeys自动化操作.之前也屡试不爽.今天才发现..好像sendkeys根本不是对appactivate获取的特定程序进行操作的.而是对当前的活动窗口进行操作.
set s= WScript.CreateObject("WScript.Shell")
s.run "notepad"
WScript.Sleep 3000
s.AppActivate "无标题 - 记事本"
s.SendKeys "%{f4}"
当记事本打开的时候你再点击一下其它窗口,它关闭的就会是你点击的活动窗口而不是记事本.

另:
  有没哪位大侠能帮我解决这一问题呢.开机同时启动两个程序的,我之前希望用sendkeys对后面那个进行操作的.但现在这样的话它就把操作都应用到第一个程序上面了.(不想靠wscript.sleep延长时间来操作),救?

2007-11-23 16:49
查看资料  发短消息 网志   编辑帖子  回复  引用回复
slore
铂金会员





积分 5212
发帖 2478
注册 2007-2-8
状态 离线
『第 2 楼』:  

好像sendkeys根本不是对appactivate获取的特定程序进行操作的.而是对当前的活动窗口进行操作.

SENDKEYS就像你自己输入一样,是你激活的窗口,就是前台窗口……
是你以前理解错了……

appactivate就是避免这个情况,先让那个窗体成为当前窗体再sendkeys

你想后台的话脚本是不能实现的。你sendkeys的时候还是不要随便改变当前窗体。

2007-11-23 16:59
查看资料  发短消息 网志   编辑帖子  回复  引用回复
vcstone
初级用户





积分 98
发帖 39
注册 2007-3-16
状态 离线
『第 3 楼』:  

清楚明白..谢谢..非常感谢..再次感谢

2007-11-23 17:05
查看资料  发短消息 网志   编辑帖子  回复  引用回复

请注意:您目前尚未注册或登录,请您注册登录以使用论坛的各项功能,例如发表和回复帖子等。


可打印版本 | 推荐给朋友 | 订阅主题 | 收藏主题



论坛跳转: