标题: [系统相关] BAT或VBS如何关闭多个指定标题的IE窗口? [打印本页]
作者: wh1234567 时间: 2015-3-2 20:07 标题: BAT或VBS如何关闭多个指定标题的IE窗口?
1.用VBS代码如何关闭多个指定标题的IE窗口?
2.用bat代码如何关闭多个指定标题的IE窗口?
高手能不能帮我分别写个代码,顺便祝福大家新春快乐万事如意。
多个指定标题例如:关键词“完成”“激 活”“go ber”
作者: gm8800 时间: 2015-3-2 20:49
我有个用AU3做的脚本,只要在配置文件里添加想要关闭的窗口的标题关键词,就可以实现自动关闭,但是必须该窗口在最前面
作者: wh1234567 时间: 2015-3-3 01:04
Dim a,b
Set a=WScript.CreateObject("WScript.shell")
b=1
Do
if b=30 then exit do
wscript.sleep 800
If a.AppActivate("完成") = True Then
a.SendKeys "%{F4}{F4}{F4}"
b=b+1
Else
exit do
End If
Loop
set a=nothing
哪位能帮我修改下,可以加多个窗口标题的关键词的那种。上面这个代码只能处理一个关键词"完成")
作者: wh1234567 时间: 2015-3-3 01:06
期待坛友们版主大人们帮助下我吧
作者: happyxxdhaha 时间: 2015-3-3 12:05
回复 3# wh1234567 - Dim a, b
- Set a = WScript.CreateObject("WScript.Shell")
- b=1
- Do
- If b=100 then Exit Do
- If a.AppActivate("完成") Or a.AppActivate("激 活") Or a.AppActivate("go ber") Then
- WScript.Sleep 800
- a.SendKeys "%{F4}"
- b=b+1
- Else
- Exit Do
- End If
- Loop
- Set a=Nothing
- Set b=Nothing
复制代码
作者: happyxxdhaha 时间: 2015-3-3 12:07
本帖最后由 happyxxdhaha 于 2015-3-3 15:31 编辑
- @echo off&setlocal
- set str="完成" "激 活" "go ber"
- for %%i in (%str%) do call :sub %%i
- goto:eof
-
- :sub
- for /f "tokens=2" %%i in ('tasklist /nh /v^|findstr /c:"%~1"') do taskkill /fi "imagename eq iexplore.exe" /pid %%i
复制代码
作者: wh1234567 时间: 2015-3-3 13:30
回复 5# happyxxdhaha
很感谢您的帮助,这个代码不知道为什么会将别的窗口也会关闭掉的,但我将我发的代码按照你的或者关系只修改了上面的这个代码才正常了,不知道为什么? If a.AppActivate("完成") = True Then
作者: wh1234567 时间: 2015-3-3 13:31
本帖最后由 wh1234567 于 2015-3-3 13:42 编辑
回复 6# happyxxdhaha
这个批处理无法执行,不知道咋回事?另外多个指定标题的关键词“完成”“激 活”“go ber”在批处理代码里能不能弄成按逗号隔开?例如 set str=完成,激 活,go ber 或者用引号隔开也行“完成”,“激 活”,“go ber”
防止关键词包含空格而导致无法正常处理。也防止错误将别的窗口误关闭。
作者: DAIC 时间: 2015-3-3 13:32
回复 8# wh1234567
你认为6楼哪个命令是第三方?
作者: happyxxdhaha 时间: 2015-3-3 15:34
回复 8# wh1234567
6楼的代码我又改了一下,你测试下,不能执行的话,你看看报错信息是什么?
作者: wh1234567 时间: 2015-3-3 17:06
回复 10# happyxxdhaha
依然不行, 显示
错误: 系统找不到指定的文件。.
错误: 系统找不到指定的文件。.
作者: happyxxdhaha 时间: 2015-3-3 18:05
本帖最后由 happyxxdhaha 于 2015-3-3 18:06 编辑
回复 11# wh1234567
你把@echo off去掉 ,看看是哪段代码报错,最好截个图。
作者: wh1234567 时间: 2015-3-3 18:51
回复 12# happyxxdhaha
作者: wh1234567 时间: 2015-3-8 13:25
on error resume next
Title="完成,激 活,go ber"
set s=createobject("shell.application")
for each w in s.windows
if instr(1,w.type,"HTML") > 0 then
if instr(1,Title,w.locationname) >0 then w.quit
end if
next
这段代码为什么不能有效执行呢?
欢迎光临 批处理之家 (http://bbs.bathome.net/) |
Powered by Discuz! 7.2 |