오토클릭, 키보드 매크로



안녕하세요 :)


직접 나만의 매크로를 쉽고 빠르게

만들수있는 프로그램을 소개 하려 합니다.


녹화형식 매크로는 아니지만, 정해진 키입력이나

마우스 클릭이벤트를 지정해두고 반복된 행동을

도와주는 매크로 프로그램 입니다.



흔히 마우스매크로, 오토클릭이라고 알려져있고 요근래에는 헬퍼라는 말이 더 많이는것 같습니다.







전문적으로 사용할만한 툴은 아닙니다.

고급명령어나 함수가 들어가있는 매크로가 아니라..


단순 키보드와 마우스 클릭에 한정된 매크로 입니다.

하지만 비활성 입력 방식이라 최소화나 창이 가려진 상태에서도 작동 합니다.

영화나 미드볼때, 혹은 컴퓨터 작업중일사용하실수도 있습니다


C Helper는 매크로 프로그래밍을 전혀 모르는 사람도 쉽고 빠르게 자신이 원하는 매크로를 

제작할 수 있는툴 로 방향을 잡아 제작하게되었습니다.





다운로드

C Helper.zip


오토핫키 스크립트 작성법이나 다른 스크립트 제작의뢰도 같이 받고있습니다.
이메일 : cai6452@naver.com





[ C헬퍼 ] 설치및 사용방법




◆ C Helper 실행 후 원하는 윈도우를 " [ " 를 눌러 적용 시켜 줍니다.

    (적용된 윈도우 이름이 텍스트에 표시됨.)


Macro 만들기 버튼을 눌러줍니다.


◆ 원하는 좌표 or 키값을 입력후 "List 입력" 버튼을 누르면 좌측 리스트에 추가 되는데,

    매크로 시작시  입력하였던 순서대로 마우스클릭 or 키보드 입력을 반복 하게 됩니다.


◆ 딜레이 값은 리스트에 표기된 입력을 다한 후 설정된 시간만큼 지연 시킵니다.

    (1초= 1000 입니다)


◆ 적용버튼 클릭 후 ~ 버튼을 누르면 매크로가 시작 됩니다.


◆ 아래 스크립트는 프로그램을 구성하는 스크립트 코드이며 직접 제작하셔도 됩니다.




Script 



#NoEnv
#NoTrayIcon
#SingleInstance force
SetKeyDelay, -1
SetWinDelay,-1
SetBatchLines,-1
SetControlDelay,-1


FileMoveDir, CImage, C:\CImage, 2

Gui,2: +LastFound +AlwaysOnTop -Caption +ToolWindow
Gui,2: Color, E0FFFF
Gui,2: Add, Picture, x80 y40 ,C:\CImage\chelper.png
Gui,2: Add, Button, x280 y150 w110 h25 gB1, 설명서
Gui,2: Add, Button, x280 y180 w110 h25 gB2, Macro 만들기
Gui,2: Add, Text, x15 y160 w180 vT2,
Gui,2: Add, Text, x15 y181 vT1 ,"  [  "  눌러서 Window를 적용시켜주세요
Gui,2: Show, x500 y200 w400 h215, C Helper

Gui,1: Color, E0FFFF
Gui,1: Add, ListView, x1 y40 w200 h210 r30 +Grid, x좌표|y좌표|key값
Gui,1: Add, Picture, x10 y7, C:\CImage\chelper2.png
Gui,1: Add, Text, x212 y30 cRed,  " [ "  Key  :   Window 적용
Gui,1: Add, Text, x212 y52 cRed,  " ] "  Key  :   좌표 따기
Gui,1: Add, Text, x212 y92, Delay 값
Gui,1: Add, Text, x212 y120, Key 값
Gui,1: Add, Text, x212 y152, 좌표 값
Gui,1: Add, Edit, x273 y149 w35 h22 vE1,
Gui,1: Add, Edit, x313 y149 w35 h22 vE2,
Gui,1: Add, Edit, x285 y117 w60 h22 vE3,
Gui,1: Add, Edit, x285 y85 w60 h22 vE4,
Gui,1: Add, Button, x207 y185 w70 h30 gB3, List 입력
Gui,1: Add, Button, x280 y185 w85 h30 gB4, List 지우기
Gui,1: Add, Button, x207 y222 w157 h28 gB5, 적용

OnMessage(0x201, "WM_LBUTTONDOWN")
WM_LBUTTONDOWN()
{
PostMessage, 0xA1, 2,,, A
}
WinSet, Transparent, 210 , C Helper
WinSet, Region, R20-20 w400 h215 0-0
Pause
return


[::
WinGetActiveTitle, WindowTitleN
Guicontrol,2:, T1, %WindowTitleN%
GUicontrol,2:, T2, 시작/일시정지 Key :  ~
return


]::
coordmode, mouse, relative
mousegetpos, x1, y1
guicontrol, , E1, %x1%
guicontrol, , E2, %y1%
return



B1:
run, http://haha92.tistory.com/10
return


B2:
Gui,1: +LastFound +AlwaysOnTop -Caption +ToolWindow
Gui,1: Show, h260 w370, option
WinSet, Transparent, 220 , option
WinSet, Region, R20-20 W370 H260 0-0
Gui,Submit,nohide
return


B3:
Gui, Submit, Nohide
xData = %E1%
yData = %E2%
kData = %E3%
LV_Add("", xData, yData, kData)
Guicontrol,1:, E1,
Guicontrol,1:, E2,
Guicontrol,1:, E3,
return


B4:
LV_Delete()
return


B5:
Gui,Submit,hide
Settimer, a, on
return



a:
Gui, Submit, Nohide
list := LV_GetCount()
i = 1
Loop, %list% {
LV_GetText(xd, i, 1)
LV_GetText(yd, i, 2)
LV_GetText(kd, i, 3)
gosub, b
i++
}
Sleep, %E4%
return



b:
vx := xd
vy := yd-30
c:= (vy*65536)+vx
PostMessage, 0x200, 0, %c%, , %WindowTitleN%
PostMessage, 0x201, 1, %c%, , %WindowTitleN%
PostMessage, 0x202, 0, %c%, , %WindowTitleN%
ControlSend,, {%kd%}, %WindowTitleN%
Sleep, 100
return



GuiClose:
ExitApp
return



2GuiContextMenu:
ExitApp

`::Pause




Posted by Khan64
,