用按键精灵如何知道窗口是否无响应或卡屏呢?

窗口无响应,卡屏,浏览器崩溃……一直是脚本作者们头疼的问题。大多数人在遇到无响应等问题的时候,如果是重要的数据只能选择等待,忍无可忍时强制关闭程序。可是,下一次遇到无响应问题该怎么办呢?如何一劳永逸解决这个头疼点呢?

操作方法

  • 01

    1. 硬件配置问题 如:硬盘坏道、cpu过热等等(扫描硬盘、检查CPU风扇)。还有可能是驱动不兼容问题(扫描显卡或其他驱动,判断是否是最适应的)

  • 02

    内存消耗问题 程序运行时,消耗的内存太大,导致窗口无响应、卡屏等情况发生。(更换内存,加大内存)

  • 03

    电脑机箱长期未清理 电脑机箱里面内存条进灰尘,拆开机箱,拆下内存条,清洁下内存金手指(用橡皮擦擦拭,或者用浸泡过酒精,拧干的湿布),重新装回去,就可能可以了。

  • 04

    方案一:API Private Declare Function IsHungAppWindow Lib "user32.dll" ( ByVal hWnd As Long) As Long Hwnd = Plugin.Window.Find(0, "无") TracePrint Hwnd Do If IsHungAppWindow(Hwnd)=0 Then i=0'窗口正常,次数归零 TracePrint "窗口正常" Else i=i+1 If i = 60 Then'如果窗口未响应60次,就弹出窗口 MsgBox "窗口未响应" End If End If Delay 1000 Loop 思路解析:以上方法通过调用系统win32的窗口通用控制类API:IsHungAppWindow,用来检测窗口是否为未响应。 通过要判断的窗口的句柄,进行IsHungAppWindow检测。若检测到窗口响应,则说明窗口正常响应,返回消息“窗口正常”。若检测到窗口无响应,则返回消息“窗口未响应”。

  • 05

    '方案二:发消息 '给程序发消息,得到回应则说明有响应 Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long Declare Function SendMessageTimeout Lib "user32" Alias "SendMessageTimeoutA" (ByVal hwnd As Long, ByVal msg As Long, ByVal wParam As Long, ByVal lParam As Long, ByVal fuFlags As Long, ByVal uTimeout As Long, lpdwResult As Long) As Long Cjb = FindWindow(vbNullString, 要检测进程窗体的标题名) Qqq = SendMessageTimeout(Cjb, WM_NULL, 0, 0, SMTO_ABORTIFHUNG And SMTO_BLOCK, 3000, lngResult) If Qqq = 0 Then TracePrint "进程不正常" else TracePrint "进程正常" end if 注:Cjb = FindWindow(vbNullString, 要检测进程窗体的标题名),这里需要用双引号输入要检测进程窗体的标题名,例如"按键精灵"。

  • 06

    思路解析:以上方法调用了2个系统API。 调用系统API:findwindow,该函数获得一个顶层窗口的句柄,该窗口的类名和窗口名与给定的字符串相匹配。这个函数不查找子窗口。 调用系统API:SendMessageTimeout,该函数将指定的消息发送到一个或多个窗口。 通过给进程窗体发消息来判断窗口是否响应是否正常。若能检测到进程窗体的标题,则返回“进程正常”,若检测不到,则返回“进程不正常”。 注:Qqq = SendMessageTimeout(Cjb, WM_NULL, 0, 0, SMTO_ABORTIFHUNG And SMTO_BLOCK, 3000, lngResult)这里的3000是延迟时间,程序运行到这一段的时候,软件会有3s的延迟时间。这个参数的设置,大大们可以根据自己电脑的配置来进行设置哦。要是配置ok,反应迅速,500的延迟也就够了。

(0)

相关推荐

  • 《狙击精英纳粹僵尸部队》无响应、黑屏解决方法

    操作方法 01 <狙击精英:纳粹僵尸部队>无响应.黑屏解决方法大部分玩家遇到的问题主要有"双击游戏源程序无响应"或"进入游戏后黑屏"这两大问题.现已 ...

  • 按键精灵怎么切换窗口

    请问怎样使用按键精灵切换多个窗口. 如开4个游戏窗口,由窗口A中执行完脚本后切换到窗口B中执行脚本,然后由窗口B切换到窗口C中,然后由窗口C中切换到窗口D.由窗口D切换... 方法/步骤2 01 步骤 ...

  • 电脑死机、重启、开机无响应、显示器色斑故障

    操作方法 01 死机是电脑的常见故障之一,每个使用过电脑的人恐怕都遇到过死机现象,电脑的死机确实是一件很烦人的事,有时还会给您带来不小的损失. 在笔者的实际维修生涯中,造成死机的硬件故障最常见就是:C ...

  • 用按键精灵制作游戏脚本之前后台坐标关联教程

    各位大大在切换前后台命令的时候,有没有遇到坐标切换呢~ 有没有发现前后台的命令,对同一个窗体内容,居然坐标不同!! 今天~院刊就跟大家普及下前台坐标与相对应的后台坐标知识~ 操作方法 01 什么是前台 ...

  • 按键精灵使用图文教程 按键精灵脚本

    如果你还为一些枯燥、繁琐的电脑操作而烦恼,按键精灵绝对会是你最好的帮手。 那么,按键精灵具体能帮我们干什么呢?我们来列举几个例子来说明下。 * 网络游戏中可作脚本实现自动打怪,自动补血,自动说话等; ...

  • 如何实现按键精灵键盘改键

    按键精灵,按键精灵是一个模拟鼠标键盘动作的软件。通过制作脚本,可以让按键精灵代替双手,自动执行一系列鼠标键盘动作。如果我们键盘中的其中一个键坏了或者其他的,那么如何通过命令,实现将键盘中的任意一个键改 ...

  • 按键精灵怎么用?按键精灵使用方法

    按键精灵是一个模拟鼠标键盘动作的软件。通过制作脚本,可以让按键精灵代替双手,自动执行一系列鼠标键盘动作。按键精灵简单易用,不需要任何编程知识就可以作出功能强大的脚本。只要在电脑前用双手可以完成的动作, ...

  • 用网页按键精灵自动申请QQ号秘笈

    由此我们也不难看出这款多次获得过优秀软件大奖的国产精品软件是多么的风靡。 的确,“按键精灵”是一款非常不错的免费脚本软件,它不仅在各类网络游戏中有着上千种不同的精妙应用,而且在普通的电脑操作中,它也可 ...

  • 按键精灵9.1强势来临:告别1234

    玩网络游戏,大家最常用的除了鼠标,就是键盘上的1234吧,无限技能循环,无限1234!“啪啦啪啦”按得键盘都哭了,这还是其次,最重要的是你的手酸了没!说句实话,我们玩游戏图的是什么?图的就是一个字“爽 ...