[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖
在你提问之前有没有仔细检查过你的代码是不是只有无法确定标题的问题,
也就是说在你明确知道标题的情况下此代码是否能正常工作?

根据我的经验你 Run 之后系统默认就是把那个窗口弹到最顶端的,
你都不需要 Appactivate,
还有就是在 Run 之后马上 Appactivate 显然不行,
因为你的浏览器不可能那么快,
在输入网址之后瞬间就能知道网站的标题,不需要 sleep 延时一下吗?

我现在在网吧的机器上试了一下,如果在延时的那段时间里切到其他浏览器窗口的话,Appactivate 并不能强制把指定的窗口置顶,不知道你试过没有。

TOP

由于 Run 方法只返回命令执行是否成功的信息,因此无法通过它来获取更多的东西,
可以改用 Exec 方法,它返回一个运行的程序对象,可以不管程序的标题直接定位,
但是没有 Run 那样的运行参数,而且必须明确指定可执行程序,
最后我试了一下,不能置顶,还是只能在下面闪。。。
示例:
  1. Dim ObjShell, ObjExecuting
  2. Set ObjShell = CreateObject("Wscript.Shell")
  3. Set ObjExecuting = ObjShell.Exec("""C:\Program files\Internet Explorer\iexplore.exe"" http://www.bathome.net/")
  4. WScript.Sleep 300 '给程序启动留一点时间
  5. ObjShell.AppActivate ObjExecuting.ProcessID
  6. ObjShell.Sendkeys "{enter}"
复制代码

TOP

返回列表