Что нового

Поиск по изображению на экране (bmpsearch.au3)

sterro_sasha

Новичок
Сообщения
45
Репутация
1
Подскажите пожалуйста, с чем может быть связана странная ошибка.

Есть файл TEST.bmp, нормальный, не конвертация из jpeg. Скажите, как найти область на экрана, которая соответствует изображению в TEST.bmp?

Код:
#include <WinAPISys.au3>
#include <GDIPlus.au3>
#include "bmpsearch.au3"
#include <ScreenCapture.au3>


Sleep(1111)
_GDIPlus_Startup()

$hSource = _ScreenCapture_Capture()
$Bitmap = _GDIPlus_BitmapCreateFromFile('D:\TEST.bmp')
$hFind = _GDIPlus_BitmapCreateHBITMAPFromBitmap($Bitmap)


Local $aCords = _BmpSearch($hSource, $hFind)
For $i = 1 To $aCords[0][0]
    ConsoleWrite($aCords[$i][0] & ',' & $aCords[$i][1] & ',' & $aCords[$i][2] & ',' & $aCords[$i][3] & @LF)
Next


Выскакивает странная ошибка:

Код:
Local $iRowInc = ($tSizeSource.X - $tSizeFind.X) * 4
Local $iRowInc = ($tSizeSource.X - $tSizeFind^ ERROR


D:\TEST.bmp - точно корректный файл.
 

InnI

AutoIT Гуру
Сообщения
4,922
Репутация
1,432

 
Автор
S

sterro_sasha

Новичок
Сообщения
45
Репутация
1

Оказалось все намного проще. Чувствовал, что дело не в коде. Когда устанавливал AutoIt - выбрал по умолчанию работу в 64-битном режиме, а код библиотеки работает в 32-битном режиме. Вот и вся причина.
 
Верх