m765555 发表于 2010-11-14 09:07:24

关于循环检测事件的问题[已解决]

本帖最后由 m765555 于 2011-3-6 11:46 编辑

各位高手们:
    利用au3的循环检测很占系统资源和内存,把电脑弄得很慢,au3有没有办法不用循环来做检测,举个例子,比如说我写个禁止某程序运行,然后加入启动项,它一开机就运行循环检测,让系统很慢,有没有别的方法解决一下呢?

netegg 发表于 2010-11-14 11:27:20

本帖最后由 netegg 于 2010-11-14 11:30 编辑

#include<winapiex.au3>
do
_WinAPI_EmptyWorkingSet()
until processexists($pro)

m765555 发表于 2010-11-15 09:36:47

回复 2# netegg


兄弟,可以举个简单的例子吗,有些看不懂,用不来这个?

m765555 发表于 2010-11-15 09:43:41

回复 2# netegg
对了我原来写的那个程序的源码这样的,怎么嵌入你的那个代码呢?#Region ;**** 参数创建于 ACNWrapper_GUI ****
#AutoIt3Wrapper_icon=mycom.ico
#AutoIt3Wrapper_UseUpx=n
#EndRegion ;**** 参数创建于 ACNWrapper_GUI ****
#Include <Array.au3>
#Include <WinAPIEx.au3>
Opt("trayiconhide","1")
While 1
$list = ProcessList()
$var = WinList()
For $i=1 To $list
    If StringInStr($list[$i],"小分队") Then         
      ProcessClose($list[$i])
    EndIf
Next
For $i1 = 1 To $var
      ; 仅显示带标题的可见窗口
      If $var[$i1] <> "" And IsVisible($var[$i1]) Then
                If StringInStr($var[$i1], "小说") Then
                        
                                                WinClose($var[$i1])
                EndIf
      EndIf
Next
WEnd
Func IsVisible($handle)
      If BitAND(WinGetState($handle), 2) Then
                Return 1
      Else
                Return 0
      EndIf
EndFunc   ;==>IsVisible

3mile 发表于 2010-11-15 09:50:55

24行加sleep(50)

m765555 发表于 2010-11-15 11:23:25

哦,谢谢,除此之外还有其它的方法吗
页: [1]
查看完整版本: 关于循环检测事件的问题[已解决]