이제 막 오토핫키를 접해서 사용하고 있는 뉴비인데요
간단하게 테스트를 위해 체크 박스 하나를 체크 해두어
그게 실행되면 블루스택내 제가 뜬 이미지를 클릭하는 걸 만들었는데요..
블루스택창 위에 아무것도 없고, 깨끗한 상태루 해놨는데 블루스택 이미지를 클릭 할 생각을 안하네요.. ㅠㅠ
코드입니다.
; global 변수
global 매크로시작 := false
WinActivate, BlueStacks App Player
WinGetPos, winX, winY, winW, winH, %ActiveID%
ActiveID := "BlueStacks App Player"
SysGet, WindowCaptionHeight, 4 ; 캡션Height
SysGet, WindowBorderWidth, 32 ; 보더Width
SysGet, WindowBorderHeight, 33 ; 보더Height
Button시작:
{
Gui, Submit, nohide
매크로시작 := true
While(매크로시작 = true)
{
CoordMode, pixel, Screen
CoordMode, Mouse, Screen
WinGetPos, pos_x, pos_y, Width, Height,%ActiveID%
x_right := Width + pos_x
x_bottom := Height + pos_y
if (honor =1)
{
명예보내기()
}
break
}
}
return
명예보내기()
{
Gui, Submit, nohide
Loop
{
if ( ClickImage( "img\honor\소셜.bmp" ) = 1)
{
ClickImage( "img\honor\친구.bmp" )
break
}
}
}
ClickImage(img, seconds=0, fromX=0, fromY=0, toX=0, toY=0) {
Sleep, 10
CoordMode, Pixel, Screen
result := CheckImage( img, seconds, x, y, fromX, fromY, toX, toY)
If (result = 1)
{
global ActiveID
WinGetPos, winX, winY, winW, winH, % ActiveID
px:=x-winX-WindowBorderWidth+10
py:=y-winY-WindowBorderHeight-WindowCaptionHeight+20
p := px|py<<16
PostMessage, 0x201, 0, %p%, , % ActiveID
PostMessage, 0x202, 0, %p%, , % ActiveID
}
Sleep, 200
Return result
}
CheckImage(img, seconds=0.3, ByRef imgX="", ByRef imgY="", fromX=0, fromY=0, toX=0, toY=0) {
global ActiveID
CoordMode, Pixel, Screen
Sleep, 10
If ( ActiveID)
WinGetPos, winX, winY, winW, winH, % ActiveID%
Else
winX := 0, winY := 0, winW := A_ScreenWidth, winH := A_ScreenHeight
sleepTime := 100
times := seconds * (1000 / sleepTime)
If ( times=0)
times := 1
x := winX, y := winY, w := winX+winW, h := winY+winH
If (fromX && fromY && toX && toY)
{
w := x+toX, h := y+toY, x := x+fromX, y := y+fromY
}
Loop, %times%
{
ImageSearch, oX, oY, x, y, w, h, *60 %A_ScriptDir%\%img%
If ( ErrorLevel = 0)
{
imgX := oX
imgY := oY
Return 1
}
Else If ( ErrorLevel = 2)
{
MsgBox, , , 이미지 없음 : %img% , 1
Return -1
}
Sleep, %sleepTime%
}
Return 0
}
입니다 부탁드려요!! ㅠㅠ
첫 몇줄만 읽어봐서 다른곳에선 무슨오류가 있는진 모르겠습니다만
블루스택 이름이 틀리셨을겁니다.
Bluestacks App Player
중간에 대문자가 아니라 소문자입니다