通过搜索日历图像(_ImageSearch)单击Outlook日历

时间:2015-02-23 08:17:53

标签: autoit

我使用Imagesearch.au3在outlook上搜索日历图片。以下是代码。

创建了一个新文件夹 - > ImageSearch.au3,ImageSearchDLL.dll以及日历的屏幕截图

#include <ImageSearch.au3>
$x=0
$y=0
start()
while 1
   sleep(1000)
WEnd
Func Start()
    while 1
        $result = _ImageSearch("cal.png",1,$x,$y,0)
        if $result=1 Then
            ConsoleWrite("Sucesfull")
            MouseMove($x,$y,10)
        Else
            ConsoleWrite("Img not found")
        EndIf
    WEnd
EndFunc

问题:引发错误消息 “C:\ Users ... \ Desktop \ AutoIT \ New folder \ img \ ImageSearch.au3”(44):==&gt;用于非可访问变量的下标: 如果$ result [0] =“0”则返回0 if $ result ^ ERROR

1 个答案:

答案 0 :(得分:0)

作为脚本运行时,dll不会加载。我不确定为什么,但似乎其他人也有同样的问题。我能够将脚本编译为64位应用程序,然后应用程序加载DLL。更改公差后,我能够找到图像。

另外,我会重写你的代码。你有两个无限的while循环无缘无故。我为while循环添加了一个睡眠。我会增加容忍度。

#include <ImageSearch.au3>

start()
Func Start()
     while 1
     $x=0
     $y=0
     $result = _ImageSearch("cal.png",1,$x,$y,20)
        if $result=1 Then
           MsgBox(0,"Found Image","moving mouse")
           MouseMove($x,$y,10)
        Else
            MsgBox(0,"Img not found","not found")
       EndIf
       sleep(10000)
    WEnd
EndFunc

我使用位于http://www.autoitscript.com/forum/topic/148005-imagesearch-usage-explanation/page-2

的64位图片搜索进行了测试