lhy6456210 发表于 2010-10-5 13:35:28

关于While...Wend的不解

while 1
IF FileExists (@DesktopDir & "\酷狗音乐2010.lnk") then
FileSetAttrib (@DesktopDir & "\酷狗音乐2010.lnk","+Rh")
Exit
Endif
WEnd我写了上面的代码后,测试了后,发现如果不存在“酷狗音乐2010.lnk”进程就占用CPU100%,这个如何解决??

水木子 发表于 2010-10-5 13:43:05

While 1
        If FileExists(@DesktopDir & "\酷狗音乐2010.lnk") Then
                FileSetAttrib(@DesktopDir & "\酷狗音乐2010.lnk", "+Rh")
                Exit
        EndIf
        Sleep(250) ;跑累了,歇一下。
WEnd

hzxymkb 发表于 2010-10-5 13:56:40

关键字参考
While...WEnd
--------------------------------------------------------------------------------

基于表达式进行循环.


While <表达式>
    语句
    ...
WEnd




参数

表达式 若该表达式的值为true(真)则重复执行循环体语句(以WEnd为结束标志),否则循环结束.



注意/说明

While...WEnd 中的语句允许嵌套使用.
由于程序在每次执行循环体语句前需计算循环控制表达式的值,只有当其为(true)真时才执行循环语句,因此循环体语句可能会被执行0次或者多次.
要创建一个无限循环, 您只需设置 表达式 为非0数字.




相关

ContinueLoop, ExitLoop


示例/演示


$i = 0
While $i <= 10
    MsgBox(0, "$i 的值为:", $i)
    $i = $i + 1
WEnd







不懂的看帮助!

lhy6456210 发表于 2010-10-5 14:44:04

回复 2# 水木子


    非常感谢!果然是要让它休息一下!估计很累

蜘蛛抱蛋 发表于 2010-10-5 18:40:51

换用Onevent模式吧   像这种简单的读取操作不要用循环了吧
页: [1]
查看完整版本: 关于While...Wend的不解