매크로

조회 수 947 추천 0 댓글 3

반갑습니다 선배님들

얼마전에 오토핫키를 알고 공부하던중


이미지 서치에 대해서는 이게시판에 많은글들이 있는건 알고 있으며

비활성 이미지서치에서 며칠동안 이곳저곳 많은곳을 검색했으나

다른분들이 올려놓은 코드 그대로 복붙으로 해도 저만 안되서 어느부분의 문제인지 도무지 모르겠어서

염치불구하고 질문드립니다.


비활성 이미지서치중 범위지정 문제입니다.


최종적으로 복붙에서 테스트하던코드는 이곳 게시판에 다른분이 올리신건데 아래와 같습니다.


search_rimg(image, hwnd, byref vx, byref vy, fromX, fromY, toX, toY) {
pToken := Gdip_Startup() ;필수
pBitmapHayStack := Gdip_BitmapFromhwnd(hwnd) ;화면비트맵
pBitmapNeedle := Gdip_CreateBitmapFromFile(image) ;찾을이미지
Sleep, 100
if Gdip_ImageSearch(pBitmapHayStack,pBitmapNeedle,list,fromX,fromY,toX,toY,10,0x000000,1,1) {  
StringSplit, LISTArray, LIST, `,  
vx:=LISTArray1 
vy:=LISTArray2
Gdip_DisposeImage(pBitmapHayStack), Gdip_DisposeImage(pBitmapNeedle) ;화면,찾을이미지삭제
Gdip_Shutdown(pToken)
return true
}
else 
{
Gdip_DisposeImage(pBitmapHayStack), Gdip_DisposeImage(pBitmapNeedle) ;화면,찾을이미지삭제
Gdip_Shutdown(pToken)
return false
}
}

여기서 범위의 끝지점 지정부분
toX, toY 이부분에 0을 제외한 다른숫자만 들어가면 이미지를 못찾습니다.
시작점
fromX, fromY 부분은 정상작동합니다.

제가 출력 테스트한 코드는 아래와같습니다.

#Include Gdip_all.ahk
#Include Gdip_ImageSearch.ahk
#Include Sch_img.ahk ;위 코드가 있는파일

;아래는 실행파일

F1::

    Title = 타이틀 
 WinGet,winid,ID,%Title%

  if(Search_rimg("img/폴더.bmp",winid,x,y,18,79,100,100)){
  MsgBox, success!! x=%x% y=%y% %ErrorLevel%
  ControlClick, x%x% y%y%, %Title%
 }
 else
 {
  MsgBox, 못찾음 %ErrorLevel%
 }
 
}
return

F12::
ExitApp
return

위에서 말씀드렸다시피 시작좌표는 수치를 바꿔도 정상작동합니다.
끝좌표만 들어가면 이미지를 못찾습니다.

도움을 주시면 감사하겠습니다.

  • Hangoon 2018.09.27 08:55

    "img/폴더.bmp" -> "img\폴더.bmp"

    이렇게 해야 되지 않을까요?

  • 짜근햄 2018.09.27 17:09
    답변 감사합니다.
    하지만 그문제는 아닌것 같습니다.
  • Hangoon 2018.09.29 01:14
    코드는 문제 없어보이는데요.. 좌표범위 안에 이미지가 위치해 있는지 확인해보세요

    위에 사용하신 search_rimg라는 함수는 Gdip_ImageSearch 함수 리턴값에 대한 이해가 별로 없으신 상태로 작성된거 같습니다
    Gdip_ImageSearch.ahk 열어서 주석처리된 설명을 잘 읽어보시면 써치 실패시 각종 에러코드를 리턴합니다.
    그런것들을 사용하면서 확인할 수 있도록 작성해야 하는데 Gdip_ImageSearch가 True이면 True를 리턴하는것은 Gdip_ImageSearch가 에러코드를 리턴했을때도 search_rimg는 True를 리턴하기 때문에 별로 좋은 함수 구성은 아닌 것 같네요

    여튼 search_rimg 가 false로 잡히는걸로 봐선 Gdip_ImageSearch 함수 실행 시 오류는 안났다는 이야기고 단순히 써치결과가 0이라는 뜻이 되는데, 동일한 상황에서 끝좌표를 0으로 놨을때는 써치가 잘 된다면 찾고자 하는 이미지가 시작좌표~끝좌표 안에 안에 없다는 얘기가 되겠지요.

최근 추천글

오핫 제작합니다 1 설입 2024-06-18 23:45 +2
List of Articles
분류 제목 글쓴이 최근변경 추천
자유 우회에 대한 이모저모 3 암드래 2023.02.24 1/0
자유 우회에 대한 글들을 읽어보았습니다. 4 bkvcqr 2023.02.24 0/0
질문 우회관련 질문드립니다. 5 쓰뜨 2018.10.21 0/0
질문 우회건은 다들어떻게하시나요 1 눈모찡 2017.01.29 0/0
질문 우회 리더기 못구하나요 3 우리나라만세 2021.09.04 0/0
질문 우회 관해 질문합니다 닉니임 2018.08.08 0/0
질문 우회 관련 알고싶네요 7 갓철 2018.12.21 0/0
질문 우클릭 하는 동안 키 연타하는 매크로가 작동을 안하네... 3 빈스3678 2023.02.24 0/0
질문 요즘은 오토핫키 오버워치 에임핵 다 막혔죠? 2 스탠리베이 2017.06.28 0/0
자유 요즘들어.. 성운이 님의..매크로관련해서 질문이 많이 ... 5 제발등업좀2 2022.12.14 0/0
질문 요즘도 단풍잎 매크로돌아가나요? 세나블텍 2017.09.13 0/0
자유 요즘 할만한 모바일게임 있을까요??? 1 fehskjf 2021.03.27 0/0
자유 요즘 왜이렇게 바쁜지 모르겠어요. 2 외치기 2015.02.16 1/0
자유 요즘 오핫 계시판이.. 썰렁 ~ 하네요 ㅎㅎ; 11 제발등업좀2 2016.01.22 0/0
자유 요즘 오토핫키 공부중입니다 36 고파사탕 2015.08.17 1/0
자유 요즘 몬길매크로 뭐쓰시나요다들? limsungm 2016.12.31 0/0
질문 요즘 PC자체실행기로 많이나오는데 어케 매크로 돌리죠? 가느가다 2021.03.12 0/0
자유 요새 오토핫키로 매크로 만드는 재미에 빠졌어요 3 퓨쥬 2016.08.07 0/0
자유 요새 돌키우기 게임 많이하시나요? 21 깜장별 2022.01.16 0/0
질문 요기를 처음 알게되어 궁금한게 있어서 질문드려요~ 1 totoro 2015.02.04 0/0
Board Pagination Prev 1 ... 495051525354555657 ... 209 Next
/ 209

전체 최신 인기글

전체 주간 인기글