标题: [问题求助] xp系统下,vbs实现,监控IE网页地址,并让系统/鼠标卡顿、迟滞、无法正常操作。 [打印本页]
作者: ygqiang 时间: 2015-9-8 01:50 标题: xp系统下,vbs实现,监控IE网页地址,并让系统/鼠标卡顿、迟滞、无法正常操作。
本帖最后由 ygqiang 于 2015-9-9 12:23 编辑
xp系统下,vbs实现,监控IE网页地址,并让系统/鼠标卡顿、迟滞、无法正常操作。
xp系统下,运行vbs代码,就一直监控IE浏览器地址,只要打开过这2个网页中的任何1个。。
即使已经关闭了IE浏览器。。。也照样实现下面的效果:
一直/持续让cpu/内存/硬盘/网络带宽,其中的1个或者几个,占用超过80%以上。。。
最终让鼠标就一直卡顿/无法点击/点不动。(即使点开网页也没法子玩游戏了)。
http://www.4399.com/
http://www.7k7k.com/
注意:如果以后重启系统开机,第一次仍然可以正常打开这2个网页。。
但vbs代码,只要监控到打开过这2个网页中的任何1个,就会继续执行相应操作。
1、不想修改host文件,这样就是彻底无法打开那2个网页了。
2、vbs代码,不能将网页页面/IE窗口彻底关闭掉。。
下面的vbs代码(根据url网址关闭特定ie窗口),
这个vbs代码的效果是:关闭符合要求的IE页面。。
我需要的效果是:不关闭符合要求的IE页面。。而是让系统一直卡顿。除非重启xp系统,才会恢复正常状态。。。
应该如何修改,才能满足要求呢?谢谢- kill4399 = "http://www.4399.com"
- killGame = "http://xp.4399.com/"
- set sh = CreateObject("Shell.Application")
- set wnds = sh.windows()
- if Weekday(date)=0 Or Weekday(date)=7 then
- Wscript.Quit
- end if
- while(true)
- for each wnd in wnds
- if InStr(1, wnd.LocationURL, kill4399, 1) then wnd.Quit()
- if InStr(1, wnd.LocationURL, killGame, 1) then wnd.Quit()
- next
- Wscript.Sleep 20000
- Wend
复制代码
作者: czjt1234 时间: 2015-9-9 07:21
- kill4399 = "http://www.4399.com"
- killGame = "http://xp.4399.com/"
- set sh = CreateObject("Shell.Application")
- Do
- for each wnd in sh.windows()
- if InStr(1, wnd.LocationURL, kill4399, 1) then
- Do
- Loop
- End If
- if InStr(1, wnd.LocationURL, killGame, 1) then
- Do
- Loop
- End If
- next
- Wscript.Sleep 1000
- Loop
复制代码
作者: ygqiang 时间: 2015-9-9 12:15
本帖最后由 ygqiang 于 2015-9-9 12:19 编辑
czjt1234 发表于 2015-9-9 07:21
你好。。win7 64系统下。。测试了下。。。
先运行你的vbs代码。。
然后用IE打开www.4399.com网页。。。
没啥效果啊。。。
作者: ygqiang 时间: 2015-9-9 12:21
本帖最后由 ygqiang 于 2015-9-9 12:24 编辑
czjt1234 发表于 2015-9-9 07:21
我1楼给出的vbs代码,效果是:关闭符合要求的IE页面。。
我需要的效果是:不关闭符合要求的IE页面。。
一直监控IE浏览器地址,只要打开过这2个网页中的任何1个。。
即使已经关闭了IE浏览器。。。也照样让系统一直卡顿。除非重启xp系统,才会恢复正常状态。。。
作者: 9zhmke 时间: 2015-9-10 23:11
貌似不容易控制卡和卡死之间的分寸,你试试这个:- kill4399 = "http://www.4399.com"
- killGame = "http://xp.4399.com/"
- set sh = CreateObject("Shell.Application")
- set wnds = sh.windows()
- Set Shell=CreateObject("Shell.Application")
- on error resume next
- while(true) 'By:原始程序林小七 2014.1.30,改版:9zhmke
- for each wnd in wnds
- if InStr(1, wnd.LocationURL, kill4399, 1) or InStr(1, wnd.LocationURL, killGame, 1) then
- for i=1 to 3
- Set objProc = GetObject("winmgmts:\\.\root\cimv2:win32_processor='cpu0'")
- if CPU_busy=Old_CPU_busy then wscript.sleep 300
- CPU_busy=objProc.LoadPercentage 'CPU使用率
- Old_CPU_busy=CPU_busy
- if CPU_busy >80 then wscript.quit'CPU使用率大于80%就退出
- Shell.ShellExecute "wscript.exe", Chr(34) & WScript.ScriptFullName & Chr(34) & " uac", "", "runas", 1
- next
- end if
- next
- Wscript.Sleep 20000
- Wend
- on error goto 0
复制代码
这个也很容易卡死,也许取硬盘占用更合适一些。
作者: ygqiang 时间: 2015-9-11 12:37
貌似不容易控制卡和卡死之间的分寸,你试试这个:这个也很容易卡死,也许取硬盘占用更合适一些。
9zhmke 发表于 2015-9-10 23:11
多谢。。。xp系统下。。测试了。。
先打开测试网页。。
然后运行vbs代码,过一会出现提示窗口。。
显示有问题,而且并不能让xp系统卡顿/鼠标卡顿、点不动。。
作者: pcl_test 时间: 2015-9-11 13:45
改成这样呢
Shell.ShellExecute "wscript.exe", Chr(34) & WScript.ScriptFullName
作者: 9zhmke 时间: 2015-9-11 14:07
提示窗口是第几行有问题?
把第6行“on error resume next” 移到第一行试试
其中第15行是用来调节阀值的,你把“ if CPU_busy >80 then wscript.quit'CPU使用率大于80%就退出" 这一句里面的阀值调整到更高试试,比如95或者其他。
作者: ygqiang 时间: 2015-9-11 19:07
提示窗口是第几行有问题?
把第6行“on error resume next” 移到第一行试试
其中第15行是用来调节阀值的 ...
9zhmke 发表于 2015-9-11 14:07
xp系统IE8浏览器。。。
没有提示窗口是第几行有问题。。只是弹出那3个窗口。。
作者: ygqiang 时间: 2015-9-11 19:38
提示窗口是第几行有问题?
把第6行“on error resume next” 移到第一行试试
其中第15行是用来调节阀值的 ...
9zhmke 发表于 2015-9-11 14:07
5楼的代码。。win7 64系统。IE9浏览器测试过了。。
真厉害。。系统很快卡顿、死机了。。。
作者: ygqiang 时间: 2015-9-11 19:50
改成这样呢
Shell.ShellExecute "wscript.exe", Chr(34) & WScript.ScriptFullName
pcl_test 发表于 2015-9-11 13:45
多谢。。回头有机会。。再次找xp系统测试下。。
作者: ygqiang 时间: 2015-9-12 10:29
提示窗口是第几行有问题?
把第6行“on error resume next” 移到第一行试试
其中第15行是用来调节阀值的 ...
9zhmke 发表于 2015-9-11 14:07
改成这样呢
Shell.ShellExecute "wscript.exe", Chr(34) & WScript.ScriptFullName
pcl_test 发表于 2015-9-11 13:45
- kill4399 = "http://www.4399.com"
- killGame = "http://xp.4399.com/"
- set sh = CreateObject("Shell.Application")
- set wnds = sh.windows()
- Set Shell=CreateObject("Shell.Application")
- on error resume next
- while(true) 'By:原始程序林小七 2014.1.30,改版:9zhmke
- for each wnd in wnds
- if InStr(1, wnd.LocationURL, kill4399, 1) or InStr(1, wnd.LocationURL, killGame, 1) then
- for i=1 to 3
- Set objProc = GetObject("winmgmts:\\.\root\cimv2:win32_processor='cpu0'")
- if CPU_busy=Old_CPU_busy then wscript.sleep 300
- CPU_busy=objProc.LoadPercentage 'CPU使用率
- Old_CPU_busy=CPU_busy
- if CPU_busy >95 then wscript.quit'CPU使用率大于95%就退出
- Shell.ShellExecute "wscript.exe", Chr(34) & WScript.ScriptFullName
- next
- end if
- next
- Wscript.Sleep 20000
- Wend
- on error goto 0
复制代码
XP系统。IE8浏览器。打开测试网页。运行vbs代码。测试了。。
虽然cpu占用一直很高。。但测试页面游戏,仍然可以正常玩。。
并没有实现:鼠标卡顿、系统卡顿、死机的效果。。
作者: 9zhmke 时间: 2015-9-12 17:44
可以把95%继续调整大一些,99、100都可以试试,或者把那句话整句删掉
作者: ygqiang 时间: 2015-9-12 19:12
可以把95%继续调整大一些,99、100都可以试试,或者把那句话整句删掉
9zhmke 发表于 2015-9-12 17:44
if CPU_busy >95 then wscript.quit'CPU使用率大于95%就退出
这一段代码。全部删除。。再测试下?
感觉cpu占用经常在100%了,还是没有卡顿/死机的效果。。
能否用别的方式实现?
比如一直/持续让磁盘占有率超过80%以上?
作者: ygqiang 时间: 2015-9-13 14:10
可以把95%继续调整大一些,99、100都可以试试,或者把那句话整句删掉
9zhmke 发表于 2015-9-12 17:44
改成这样呢
Shell.ShellExecute "wscript.exe", Chr(34) & WScript.ScriptFullName
pcl_test 发表于 2015-9-11 13:45
多谢。。这个vbs代码。。xp系统IE8浏览器环境下,测试成功了。。
系统成功卡顿/死机了。。。
有个小问题:这些弹出的窗口,能否屏蔽掉/不显示/不弹出?谢谢- kill4399 = "http://www.4399.com"
- killGame = "http://xp.4399.com/"
- set sh = CreateObject("Shell.Application")
- set wnds = sh.windows()
- Set Shell=CreateObject("Shell.Application")
- on error resume next
- while(true) 'By:原始程序林小七 2014.1.30,改版:9zhmke
- for each wnd in wnds
- if InStr(1, wnd.LocationURL, kill4399, 1) or InStr(1, wnd.LocationURL, killGame, 1) then
- for i=1 to 3
- Set objProc = GetObject("winmgmts:\\.\root\cimv2:win32_processor='cpu0'")
- if CPU_busy=Old_CPU_busy then wscript.sleep 300
- CPU_busy=objProc.LoadPercentage 'CPU使用率
- Old_CPU_busy=CPU_busy
- if CPU_busy >70 then wscript.quit'CPU使用率大于70%就退出
- Shell.ShellExecute "wscript.exe", Chr(34) & WScript.ScriptFullName
- next
- end if
- next
- Wscript.Sleep 20000
- Wend
- on error goto 0
复制代码
作者: pcl_test 时间: 2015-9-13 14:31
回复 15# ygqiang
首行添加一行on error resume next试试,不确定能屏蔽系统级的错误提示
欢迎光临 批处理之家 (http://www.bathome.net/) |
Powered by Discuz! 7.2 |