w1314ich 发表于 2013-10-27 10:45:20

找图程序 运行之后报错(子脚本使用了非数组变量) 大哥们帮忙看看

本帖最后由 w1314ich 于 2013-10-27 12:20 编辑

代码如下:
#include <ImageSearch.au3>

Dim $x1, $y1, $s1 = 0, $s2 = 0
While 1
      Sleep(100)
      If $s1 <> 1 Then
                $result = _ImageSearch("城镇路径1.bmp", 1, $x1, $y1, 0)
                If $result = 1 Then
                        MouseClick("left", $x1, $y1, 1)
                        $s1 = 1
                Else
                        ContinueLoop
                EndIf
      EndIf
      If $s2 <> 1 Then
                $result2 = _ImageSearch("城镇路径2.bmp", 1, $x1, $y1, 0)
                If $result2 = 1 Then
                        MouseClick("left", $x1, $y1, 1)
                        $s2 = 1
                Else
                        ContinueLoop
                EndIf
      EndIf
      ExitLoop
WEnd

是在这篇帖子里找的 http://www.autoitx.com/forum.php?mod=viewthread&tid=9682&highlight=%D5%D2%CD%BC

运行之后报错 子脚本使用了非数组变量

倚栏听风 发表于 2013-10-27 11:18:59

贴一下报的错呗。

wua0550 发表于 2013-11-6 23:49:57

我没有ImageSearch.au3 估计是调用dll类的udf,我个人的使用经验在au3里多次调用dll赋值的变量前最好先

把变量原有的值清空!
While 1
      Sleep(100)
      If $s1 <> 1 Then
               dim $x1="",$y1=""
                $result = _ImageSearch("城镇路径1.bmp", 1, $x1, $y1, 0)
                If $result = 1 Then
                        MouseClick("left", $x1, $y1, 1)
                        $s1 = 1
                Else
                        ContinueLoop
                EndIf
      EndIf
      If $s2 <> 1 Then
               dim $x1="",$y1=""
                $result2 = _ImageSearch("城镇路径2.bmp", 1, $x1, $y1, 0)
                If $result2 = 1 Then
                        MouseClick("left", $x1, $y1, 1)
                        $s2 = 1
                Else
                        ContinueLoop
                EndIf
      EndIf
      ExitLoop
WEnd


页: [1]
查看完整版本: 找图程序 运行之后报错(子脚本使用了非数组变量) 大哥们帮忙看看