Тема: AHK: Нахождение пикселя
Всех приветствую кто читает данный пост. Суть в том что мой скрипт должен находить пиксель и после этого нажимать кнопку D на клавиатуре, но при запуске выдаёт ошибку . текст ошибки :
Error at line 1.
Line Text: #Include <Gdip.ahk>
Error: Function library not found.
The program will exit.
Сам скрипт :
#Include <Gdip_All.ahk>
#SingleInstance, Force
#NoEnv
CoordMode, Pixel, Screen
; Загрузка изображения
PicPath := "autoblkpic.png"
Pic := ImageLoad(PicPath)
; Бесконечный цикл
Loop
{
; Поиск изображения на экране
Coord := ImageSearch(Pic, 0, 0, A_ScreenWidth, A_ScreenHeight, "0|0|A|B")
; Если изображение найдено, нажать клавишу "D"
if Coord
{
SendInput, d
Sleep, 100
}
; Пауза перед следующей проверкой
Sleep, 100
}
; Функция для загрузки изображения
ImageLoad(Path)
{
Static GdipToken := Gdip_Startup()
Bitmap := Gdip_CreateBitmapFromFile(Path)
Return Bitmap
}
; Функция для поиска изображения на экране
ImageSearch(Bitmap, X1, Y1, X2, Y2, Color)
{
Static GdipToken := Gdip_Startup()
Gdip_GetImageWidth(Bitmap, Width)
Gdip_GetImageHeight(Bitmap, Height)
BitmapData := Gdip_LockBits(Bitmap, 0, 0, Width, Height, 3, 0)
Scan0 := NumGet(BitmapData + 8)
Stride := NumGet(BitmapData + 12)
PixelFormat := NumGet(BitmapData + 16)
ColorDepth := PixelFormat >> 8
PixelSize := ColorDepth >> 3
if (PixelSize != 3)
Return 0
VarSetCapacity(ARGB, 4)
VarSetCapacity(Pixel, 3)
Loop % Y2-Y1
{
Y := Y1 + A_Index - 1
Loop % X2-X1
{
X := X1 + A_Index - 1
Pixel := NumGet(Scan0 + (Y * Stride) + (X * PixelSize), 3)
Pixel := (Pixel & 0xFF) | ((Pixel >> 16) & 0xFF00) | ((Pixel << 16) & 0xFF0000)
ARGB := Pixel | 0xFF000000
if (Color = "0|0|A|B")
{
if (Gdip_BitmapGetPixel(Bitmap, X, Y, Pixel) = 0)
Return X "|" Y
}
else
{
if (Pixel = Color)
Return X "|" Y
}
}
}
Gdip_UnlockBits(Bitmap, BitmapData)
Return 0
}
; Функция для освобождения ресурсов
OnExit("Cleanup")
Cleanup()
{
Gdip_DisposeImage(Pic)
Gdip_Shutdown(GdipToken)
}в одной папке находится так же Gdip.ahk и картинка с пикселем , в чем проблема я не понимаю .

