안녕하세요. 이제 오토핫키 공부한지 한 3주 짬짬히 공부 해서 만들기는 했습니다.
근데 메모리를 엄청나게 잡아 먹더라구요.
이걸 간략하게 만들수 있는 방법이 있을까요?
현재 정상적인 동작은 합니다.
근데 이미지를 계속 검색해서 그런지 컴퓨터도 많이 버벅 거리고 힘들어 하네요.
어떤식으로 정리를 해야 하는지 도움좀 부탁드립니다. ^^
#INclude, C:\MLib\SkinForm.ahk
#NoTrayIcon
#singleinstance force
WinTitle := "NoxPlayer1"
WinGetPos, aX, aY, aW, aH, %WinTitle%
bX := aX + aW
bY := aY + aH
SkinForm(Apply, A_ScriptDir . "C:\Mlib\USkin.dll", A_ScriptDir . "C:\Mlib\Skin\Ayofe.msstyles")
Gui, Font, Bold
Gui, Add, Text, x10 y15 w120 h20 +center, 작업
Gui, Add, Text, x150 y15 w70 h20 +center, 동작시간 :
Gui, Add, Text, x225 y15 w130 h20 v동작시간, 0시간 0분 0초
Gui, Font
Gui, Add, Text, x20 y45 w69 h20, 호출완료 :
Gui, Add, Text, x90 y45 w40 h20 v횟수, 0 회
Gui, Add, ListView, x150 y40 w205 h105 v로그 +Grid, 시간|동작
LV_ModifyCol(1, 100)
LV_ModifyCol(2, 80)
Gui, Add, Button, x150 y155 w60 h20, 시작
Gui, Add, Button, x220 y155 w60 h20, 멈춤
Gui, Add, Button, x290 y155 w60 h20, 종료
Gui, Show, x2800 y0 AutoSize
Gui, Submit, NoHide
CoordMode, Mouse, Screen
CoordMode, Pixel, Screen
FormatTime, OutTime, , MM-dd HH:mm:ss
return
F6::
Button시작:
{
WinMove, %WinTitle%, , 3313, 0
로그추가("창 정렬")
sleep, 1000
로그추가("시작")
동작시간_ := 0
SetTimer, 시간측정, 1000
횟수카운트 := 0
time_count := 0
매크로상태 := true
While(매크로상태=true)
{
if(체크 = 0)
ImageSearch, , , aX, aY, bX, bY, *30 Image\1.bmp
if(ErrorLevel = 0)
{
검색 := 91|395<<16
PostMessage, 0x201, 1, 검색, , %WinTitle%
PostMessage, 0x202, 0, 검색, , %WinTitle%
Sleep, 500
}
ImageSearch, , , aX, aY, bX, bY, *30 Image\2.bmp
if(ErrorLevel = 0)
{
집 := 500|843<<16 ;1번 231, 10번 843
PostMessage, 0x201, 1, 집, , %WinTitle%
PostMessage, 0x202, 0, 집, , %WinTitle%
Sleep, 500
}
ImageSearch, , , aX, aY, bX, bY, *30 Image\3.bmp
if(ErrorLevel = 0)
{
호출 := 272|966<<16
PostMessage, 0x201, 1, 호출, , %WinTitle%
PostMessage, 0x202, 0, 호출, , %WinTitle%
Sleep, 500
}
ImageSearch, , , aX, aY, bX, bY, *30 Image\4.bmp
if(ErrorLevel = 0)
{
일반 := 272|966<<16
PostMessage, 0x201, 1, 일반, , %WinTitle%
PostMessage, 0x202, 0, 일반, , %WinTitle%
Sleep, 500
}
ImageSearch, , , aX, aY, bX, bY, *30 Image\5.bmp
if(ErrorLevel = 0)
{
현재 := 382|591<<16
PostMessage, 0x201, 1, 현재, , %WinTitle%
PostMessage, 0x202, 0, 현재, , %WinTitle%
Sleep, 500
완료시간 := A_TickCount
로그추가("완료")
}
ImageSearch, , , aX, aY, bX, bY, *30 Image\6.bmp
if(ErrorLevel = 0)
{
취소 := 272|966<<16
PostMessage, 0x201, 1, 취소, , %WinTitle%
PostMessage, 0x202, 0, 취소, , %WinTitle%
Sleep, 500
취소시간 := A_TickCount
로그추가("취소")
}
ImageSearch, , , aX, aY, bX, bY, *30 Image\7.bmp
if(ErrorLevel = 0)
{
편집 := 30|83<<16
PostMessage, 0x201, 1, 편집, , %WinTitle%
PostMessage, 0x202, 0, 편집, , %WinTitle%
Sleep, 500
}
ImageSearch, , , aX, aY, bX, bY, *30 Image\8.bmp
if(ErrorLevel = 0)
{
별점 := 519|285<<16
PostMessage, 0x201, 1, 별점, , %WinTitle%
PostMessage, 0x202, 0, 별점, , %WinTitle%
Sleep, 500
}
ImageSearch, , , aX, aY, bX, bY, *30 Image\9.bmp
if(ErrorLevel = 0)
{
평가 := 272|966<<16
PostMessage, 0x201, 1, 평가, , %WinTitle%
PostMessage, 0x202, 0, 평가, , %WinTitle%
Sleep, 500
평가완료시간 := A_TickCount
로그추가("평가")
횟수카운트++
GuiControl, , 횟수, %횟수카운트% 회
}
ImageSearch, , , aX, aY, bX, bY, *30 Image\10.bmp
if(ErrorLevel = 0)
{
재호출 := 274|427<<16
PostMessage, 0x201, 1, 재호출, , %WinTitle%
PostMessage, 0x202, 0, 재호출, , %WinTitle%
Sleep, 500
재호출완료시간 := A_TickCount
로그추가("재호출")
}
}
}
return
시간측정:
{
동작시간_++
시 := Floor(동작시간_/3600)
분 := Mod(Floor(동작시간_/60),60)
초 := Mod(동작시간_, 60)
GuiControl, , 동작시간, %시%시간 %분%분 %초%초
}
return
F7::
Button멈춤:
{
SetTimer, 시간측정, OFF
매크로상태 := false
로그추가("호출멈춤")
}
return
F8::
Button종료:
{
ExitApp
}
return
GuiClose:
{
ExitApp
}
return
로그추가(텍스트)
{
FormatTime, OutTime, , MM-dd HH:mm:ss
LV_Insert(1,"", OutTime, 텍스트)
return
}