오토핫키 비활성서치로 세나2(녹스플레이어) 메크로를 간단하게 만들어서
쓰고 있는데 구역 이미지 서치시에만 녹스 테두리가 깜박거리는데
이유가 뭔지 아시는분 답변 부탁드립니다.
이미지검색에 사용한 로직입니다.
ImageSearch( byref vx, byref vy, image, errorRange, Trans, sX=0, sY=0, eX=0, eY=0 ) {
errorRanger := errorRange / 10
IfNotExist, %Image%
{
log := " @ 이미지파일 없음: " Image, AddLog(log)
return false
}
pToken:=Gdip_Startup()
snap:=Gdip_BitmapFromhwnd(WinExist("NoxPlayer"))
RealWinSize(posX, posY, width, height, "NoxPlayer")
if(sX = 0 && sY = 0 && eX = 0 && eY = 0){
posX := posy := 0, width := width, height := height
; log := "sX = " sX ", sy = " sy ", ex =" width ", ey =" ey, AddLog(log)
pBitmapHayStack:=snap
}
else{
posX := sX, posY := sY, width := eX - sX, height := eY - sY
; log := "posX = " posX ", posy = " posy ", width =" width ", height =" height, AddLog(log)
pBitmapHayStack:= Gdip_CropImage(snap, posX, posY, width, height)
}
pBitmapNeedle:=Gdip_CreateBitmapFromFile(image)
If(Trans = "White")
Trans := 0xFFFFFF
else If(Trans = "Black")
Trans := 0x000000
else
Trans := ""
; Sleep, %Time_Refresh%
if Gdip_ImageSearch(pBitmapHayStack,pBitmapNeedle,list,0,0,0,0, errorRanger, Trans,1,1) {
StringSplit, LISTArray, LIST, `,
vx:=LISTArray1 + sX + 1
vy:=LISTArray2 + sy + 1
Gdip_DisposeImage(pBitmapHayStack), Gdip_DisposeImage(pBitmapNeedle)
Gdip_Shutdown(pToken)
log := " @ 이미지찾음 : " Image, AddLog(log)
return true
}
else {
vx := vy := 0
Gdip_DisposeImage(pBitmapHayStack), Gdip_DisposeImage(pBitmapNeedle)
Gdip_Shutdown(pToken)
return false
}
}