개발 이야기

오토핫키 ImageSearch, Send, Sleep

ANDYLION 2020. 5. 8. 23:52
728x90
반응형

안녕하세요. 앤디라이언입니다.

 

이번에는 오토핫키의 꽃, 메인인 이미지 서칭에 대해 배워봅시다.

준비물은 24비트 BMP의 이미지 파일입니다.

 

ImageSearch

ImageSearch, PosX, PosY, 0, 0, A_ScreenWidth, A_ScreenHeight, Option + FilePath + FileName

PosX, PosY 는 찾은 이미지의 x, y 좌표값을 저장할 변수입니다.

0,0 은 이미지를 찾을 시작점

A_ScreenWidth, A_ScreenHeight 는 이미지를 찾을 종료점이라고 생각하시면 됩니다.

0,0,A_ScreenWidth, A_ScreenHeight의 의미는 현재 모니터의 전체크기라고 생각하시면 됩니다.

ImageSearch를 실행하면 ErrorLevel이라는 값을 돌려줍니다.

ErrorLevel = 0 이면 이미지를 찾았다는 의미이고, 1이면 이미지 찾기를 실패한 경우입니다.

 

Send

Send {Option %Width% %Height%}

Send는 Option을 Click으로 변경하면 마우스 클릭을 위해 사용하는 명령어입니다.

 

Sleep

Sleep, number(ms)

슬립은 하던 업무를 잠깐 중지하라는 것입니다.

 

그럼 위 내용을 바탕으로 코드를 한번 작성해보도록 하겠습니다.

MacroStart := false #boolean
return

Button시작:
{
	MacroStart := true
    Loop
    {
    	ImageSearch, PosX, PosY, 0, 0, A_ScreenWidth, A_ScreenHeight, *100 "c:\image\google.bmp"
        if (ErrorLevel = 0) #이미지를 찾으면,
        {
        	Send {Click %PosX% %PosY% } #해당 이미지 클릭
            Sleep, 1000 	#1초간 정지
        }
        
        if (MacroStart = false)
        {
        	break
        }
    }
}
return

Button종료:
{
	MacroStart := false
    ExitApp
}
return

버튼 시작과 종료를 만들고 버튼 시작시 Loop를 통해 이미지 서치 후

이미지를 찾으면 클릭하고 1초간 중지상태에 있다가

다음 작업을 반복하다가 종료버튼을 누르면 프로그램이 종료하는 코드입니다.

 

다음은 게임 매크로를 어떻게 적용하는지 알아보겠습니다.

 

728x90
반응형
SMALL

'개발 이야기' 카테고리의 다른 글

[파이썬 완전정복] 제어문 - 조건문  (0) 2020.05.10
[RTOS] QNX  (0) 2020.05.09
메세지 큐 (Message Queue)  (0) 2020.05.08
IPC 종류와 특징  (0) 2020.05.08
POSIX pthread_mutex  (0) 2020.05.07