大叔 发表于 2011-6-11 12:52:30

代码如果。高手帮忙looklook

$a=0
While 1
$a=$a+1
Sleep(1000)
$b=FileReadLine("d:\ip.ini",$a)
        If $b='' Then
        $a=1
        $b=FileReadLine("d:\ip.ini",$a)
        EndIf
        $c = StringSplit($b," ")
        $var = Ping($c,300)
        $t=IniRead("d:\myfile.ini","显示状态", $c, "NotFound")
If $var=0 Then
If Not $t = 0 Then
        $say="离线"
        sendmail()
        EndIf
EndIf
If Not $var=0 Then
If $t = 0 Then
        $say="上线"
        sendmail()
EndIf
EndIf
WEnd
       
Func sendmail()
                MsgBox(0, "",$c&"描述:"&$say&$t&$var)
                IniWrite("d:\myfile.ini", "显示状态",$c, $var)
EndFunc问题是跑到If Not $t = 0 Then
        $say="离线"
        sendmail()
        EndIf
这块的时候。$t为0 $var 为0可他条件还成立。不直接跳过往下跑。。不知道为什么 加not 和不加NOT效果一样

SciTE
汉化增强版本 2.03
Build On: Mar9 2010 12:58:52
by Neil Hodgson.

ip.ini内容
一层服务器 127.0.0.1
二层服务器 192.168.200.243 随便填个ping 不通的IP就行。

大叔 发表于 2011-6-11 12:57:58

手动新建以下代码正常$t=0
$var=0
If $var=0 Then
If Not $t = 0 Then
        $say="离线"
        MsgBox('','','我动了','')
        EndIf
EndIf
        MsgBox('','','我没动','')
页: [1]
查看完整版本: 代码如果。高手帮忙looklook