오토핫키 커뮤니티

조회 수 816 추천 0 댓글 4



#include Gdip.ahk


ImageSearch_Inactive(Title, ImgFileName)

{

If !pToken := Gdip_Startup()

{

MsgBox, 48, gdiplus error!, Gdiplus failed to start. Please ensure you have gdiplus on your system

ExitApp

}

OnExit, Exit


pBitmapHayStack := Gdip_BitmapFromHWND(hwnd := WinExist(Title)) 

pBitmapNeedle := Gdip_CreateBitmapFromFile(ImgFileName)


Width1 := Gdip_GetImageWidth(pBitmapHayStack), Height1 := Gdip_GetImageHeight(pBitmapHayStack)

Width2 := Gdip_GetImageWidth(pBitmapNeedle), Height2 := Gdip_GetImageHeight(pBitmapNeedle)

E1 := Gdip_LockBits(pBitmapHayStack, 0, 0, Width1, Height1, Stride1, Scan01,BitmapData1)

E2 := Gdip_LockBits(pBitmapNeedle, 0, 0, Width2, Height2, Stride2, Scan02,BitmapData2)


MCode(Gdip_ImageSearch, "83EC148B4424309983E20303C28BC88B442434995383E2035503C2C1F80256C1F902837C24"

. "30005789442420C7442410000000000F8EBE0000008B5C24288B7C24388D048D00000000894424188B442430895C241CE"

. "B098DA424000000008BFFC74424440000000085C07E6D895C24148B6C242CC7442440000000008D6424008B4C24403B4C"

. "243C0F8D8600000033C985FF7E158BD58BF38B063B02751F4183C20483C6043BCF7CEF8B442420035C2418FF44244003C"

. "003C003E8EBC38B4C24448B5C24148B4424304183C3043BC8894C2444895C24147C978B4C24108B5C241C035C2418413B"

. "4C2434894C2410895C241C0F8C68FFFFFF8B5424488B44244C5F5E5DC702FFFFFFFFC700FFFFFFFF5B83C414C38B4C244"

. "48B5424488B44244C5F495E890A8B4C24085D89085B83C414C3")


Time1 := A_TickCount

VarSetCapacity(x, 8, 0), VarSetCapacity(y, 8, 0)

Loop, 100

DllCall(&Gdip_ImageSearch, "uint", Scan01, "uint", Scan02, "int", Width1, "int", Height1, "int", Width2, "int", Height2, "int", Stride1, "int", Stride2, "int*", x, "int*", y)

MsgBox, % "Time for 100 searches: " A_TickCount-Time1 "ms`nx: " x "`ny: " y ;%

Gdip_UnlockBits(pBitmapHayStack,BitmapData1), Gdip_UnlockBits(pBitmapNeedle,BitmapData2)

Gdip_DisposeImage(pBitmapHayStack), Gdip_DisposeImage(pBitmapNeedle)

return

}


MCode(ByRef code, hex)

{

VarSetCapacity(code, StrLen(hex)//2)

Loop % StrLen(hex)//2 ;%

NumPut("0x" SubStr(hex, 2*A_Index-1, 2), code, A_Index-1, "char")

}


F9::

ImageSearch_Inactive("Nox","Nox.bmp")

return


Exit:

Gdip_Shutdown(pToken)

ExitApp

return




사용한 코드는 이 코드입니다. ( 출처 : kjinhyun88 이라는 분의 블로그에서 가져온 코드입니다 )

이 코드를 사용했을 때 블루스택은 바로 찾는데 유독 녹스만 못찾네요

녹스는 3.7.1.0 버전에 스피드모드 설정 돼있습니다.


그리고 검색했을 때 나오는 셋쇼마루님 코드를 참고해서 사용해보려고 했는데

Gdip를 include 했음에도 불구하고 관련 함수들이 없다는 등 에러가 나서 포기했습니다.


gdip가 녹스 버전마다 되는 버전이 있고 안되는 버전이 있는건가요?


adb 로는 속도문제로 사용하기가 좀 어려운 게임이라 gdip 붙잡고 있는데 녹스가 말썽이네요.

혹시 지금 녹스로 gdip 사용중이신 분 이미지 서치 함수 참고 가능할까요?


아니면 블루스택 외에 gdip 사용이 가능한 앱 플레이어가 있는지 궁금합니다.





  • 크루세이덩 2016.10.28 20:14

    다이렉트x에서 작동이 안된다면 타이틀 관련 부분에서

    문제가 되는 경우가 많으니 타이틀 관련 검색하셔서

    테스트해보세요.

  • profile
    셋쇼마루 2016.10.31 16:36
    녹스 최신버전 스피드모드 되요우

    1초전까지 확인하고왔습니다
  • profile
    셋쇼마루 2016.10.31 16:37
    얼마전에 아무것도 건든게 없는데 왠지 모르게 갑자기 안되던 경우가있었는데 녹스 완전히 삭제후 재 다운로드하니깐 되더라구요
  • profile
    비둘기둘기 2016.11.05 10:17
    댓글 이제야 확인했네요 답변 감사합니다.

List of Articles
분류 제목 글쓴이 최근변경 추천
질문 Gui edit 에 대해 궁금한게 있어요 4 스웨이스 2016.10.29 0/0
질문 이미지서치 명령어에 대해 궁금한게 있어요 7 스웨이스 2016.11.15 0/0
질문 dllcall로 autohotkey.dll이 호출 안되는 현상 하연데디 2016.10.28 0/0
질문 녹스 스피드모드에서 gdip 이제 안되나요? 4 비둘기둘기 2016.11.05 0/0
질문 비활성 관련 질문드립니다. 뽕눈 2016.10.28 0/0
질문 오토핫키 이미지서치 급 질문입니다 답변기다리겠습니다. 8 케이디 2016.11.15 0/0
질문 블택2와 블택의 adb 활용법이 틀린가요? 11 flem 2016.10.30 0/0
질문 Gui에 설정 불러와 적용 시키는 법좀 도움부탁드려요 12 가족오락관 2016.10.31 0/0
질문 메m 블루스택2만 지금 되는건가요? 2 호규흐규 2016.10.27 0/0
자유 하.. 오토핫키 꽤어렵네요 호규흐규 2016.10.27 0/0
질문 확장모니터에서 controlclick질문드립니다 레나류륜 2016.10.27 0/0
질문 Loop문과 이미지 서치 질문 2 심장의중심 2016.10.28 0/0
자유 항상 네이버 카페에서만 배우다가.. 1 거므사마 2016.10.28 0/0
질문 메이플m 다크나이트 1자맵 매크로 4 배워요 2017.10.25 0/0
질문 치트엔진으로 얻은 메모리주소를 오핫키로 읽어올 수 ... 6 크농 2016.10.27 0/0
질문 gdip 이미지서치 질문드립니다. 5 영창이염 2016.10.29 0/0
질문 2일된 오토핫키 초보 질문입니다 1 배워요 2016.10.28 0/0
질문 이미지서치 관련 질문입니다. (봉봉님 소스 관련) 6 심장의중심 2016.10.27 0/0
질문 오토핫키 이제 막 시작하는 초보입니다. 새로만들기 스... 심장의중심 2016.10.26 0/0
질문 OS나 32/64비트 환경에따라 작동여부가 갈리기도하나요? 라미첼 2016.10.26 0/0
Board Pagination Prev 1 ... 103104105106107108109110111 ... 209 Next
/ 209

전체 최신 인기글

전체 주간 인기글