循环判断问题
本帖最后由 qzdisk 于 2009-6-27 21:22 编辑While 1
$varh = 5
If $varh = "5" Then
MsgBox(48," 提示","连接正常")
Else
Run(@ScriptDir & "\1.bat")
EndIf
WEnd我想在 $varh 不等于5的情况用IF判断给出结果然后 运行一个批处理!
但是我发现在我要是这样写的话$varh不等于5的时候 劲会无限运行1.bat!
怎让他无限次判断 但是只运行一次 1.bat 再把 $varh 改成初始值就好了
While 1
$varh = 5
If $varh = "5" Then
MsgBox(48," 提示","连接正常")
Else
Run(@ScriptDir & "\1.bat")
$varh = 0
EndIf
WEnd
$cc = 1
While 1
$varh = 5
If $varh = "5"and $ccThen
MsgBox(48," 提示","连接正常")
$cc = 0
Else
Run(@ScriptDir & "\1.bat")
EndIf
WEnd
这个是前几天版内版友教偶的,现分享给你 上述2位朋友给的好像都不行!我试过了还是不行!
我的意思是 Run(@ScriptDir & "\1.bat") 这部能让他只运行一次吗? While 1
$varh = 5
If $varh = "5" Then
MsgBox(48," 提示","连接正常")
Else
Run(@ScriptDir & "\1.bat")
exitloop
EndIf
WEnd While 1
$varh = 5
If $varh = "5" Then
MsgBox(48," 提示","连接正常")
Else
Run(@ScriptDir & "\1.bat")
exitloop
EndIf
WEnd[/ ...
jhun 发表于 2009-6-27 16:32 http://www.autoitx.com/images/common/back.gif
这个确实能达到那个效果!但是似乎程序就停止实时运行判断了! $a=6
While 1
Select
Case $a=5
MsgBox(48," 提示","连接正常")
Run("notepad.exe")
EndSelect
WEnd
这个确实能达到那个效果!但是似乎程序就停止实时运行判断了!
qzdisk 发表于 2009-6-27 17:26 http://www.autoitx.com/images/common/back.gif
那你不是自相矛盾了吗,你不让BAT继续运行却又要继续侦测然后再运行?除非你再加其他条件,运行完了BAT这个变量会改变,又或者间隔多长时间再来判断 。。。。我是要做一个实时检测的程序!当进程断开后用批处理启动他! 那很简单啊,只要加个延迟就可以了 本帖最后由 jhun 于 2009-6-27 19:33 编辑
While 1
$varh = 5
If $varh = "5" Then
MsgBox(48," 提示","连接正常")
Else
Run(@ScriptDir & "\1.bat")
sleep(2000)
EndIf
sleep(500)
WEnd 我明白了
谢谢! 你明白了 我怎么看不明白呢? 你明白了 我怎么看不明白呢?
刘强 发表于 2009-9-22 08:01 http://www.autoitx.com/images/common/back.gif
有问题自己发帖好了,这样无意义
页:
[1]