오토핫키 :: 5강 변수와 조건
2013. 1. 23. 16:27
오토핫키/오토핫키 강좌
오토핫키 :: 5강 변수와 조건
카테고리 : 오토핫키/오토핫키 강좌
빠르게 강의를 진행하고 있습니다만, 부족한 강의 내용이나 궁금한점은
언제나 댓글을 남겨주시면 도움을 드리겠습니다.
오토핫키에서 변수는 상당히 중요합니다.
변수를 통해서 상당히 많은 일들을 할 수 있죠.
예를 들어서 다양하게 저장되는 임시 클립보드를 다른 변수들로 바꿔주면서, 여러가지의 복사문구를 사용할 수 도 있습니다.
변수에 대한 부분은 결국 직접적인 스크립트를 보시면 매우 빠르게 이해하실 수 있어요.
변수란 ? 특정 문자를 기입하여 숫자나 문자를 입력할 수 있게합니다.
변수의 사용형태 -> 대입 : test = 1515
위와 같은 형태로 변수를 사용합니다. "=" 이라는 수식기호를 사용하여 변수값을 지정해주는 것이죠.
그래서 변수 지정 이후의 test라는 문자에서 %%이부분을 앞뒤로 넣어줘 %test%로 사용한다면 그 값이 1515가 출력됩니다.
물론 그냥 test를 사용하신다면 문자그대로 출력되지요.
스크립트 예시문구입니다.
end::exitapp
Insert::reload
Home::
test = hello
run,notepad,exe ;메모장을 실행시킵니다. 실행에 관한 명령어 Run, Target [, WorkingDir, Max|Min|Hide|UseErrorLevel, OutputVarPID]
sleep,500
winactivate,notepad.exe ; 노트패드를 활성화시킵니다.
sleep,100
send, %test%
exitapp ; 스크립트 종료
위와 같이 작성되면 노트패드에 test가 아닌 hello를 입력하게 되겠죠.
변수 대입법에는 = 과 :=가 있습니다.
Var = 1 + 1
msgbox, %var% 이랬을때 결과는 1 + 1이 되죠.
Var := 1 + 1
msgbox, %var% 이랬을때 결과는 2가되죠.
연산 시에는 :=를 사용해주시면 됩니다.
조건문에 대해서 if와 else가 사용되죠. 앞서서 if와 else에 대해서는 설명한 바가 있습니다.
if를 사용해서 다양한 조건을 만들 수 있습니다.
loop,5 ; 문구를 5번 반복합니다.
{
if A_Index = 4 ; 루프를 4번 했을 경우
msgbox, 땡떙떙
}
이랬을 경우 루프를 4번 반복하면 땡떙땡이라는 메시지 박스가 출력되죠.
예를 들어서 변수를 활용해볼까요?
test = over
test1 = over1
if test = over
{
sleep,100
msgbox, 딩동댕
}
else
{
sleep,100
msgbox, 땡
}
이러한 형태가 되겠죠. 오토핫키의 무긍무진한 세계는 끝이 없습니다.
간단한 명령어로 놀라운 세계를 경험해 보시는건 어떨까요?
'오토핫키 > 오토핫키 강좌' 카테고리의 다른 글
오토핫키 :: 7강 서브루틴을 애용하세요 (39) | 2013.04.30 |
---|---|
오토핫키 :: 6강 Loop도 엣지있게 (19) | 2013.02.01 |
오토핫키 :: 5강 변수와 조건 (22) | 2013.01.23 |
오토핫키 4강 :: 이미지서치가 뭐야? (74) | 2013.01.23 |
[오핫넷] 오토핫키 및 테스커 정보 공유 사이트를 소개합니다! (0) | 2013.01.22 |
오토핫키 :: 3강 마우스와 키보드 (88) | 2012.10.04 |
댓글을 달아 주세요
구독인가 ? 했음 ㅋㅋ 다추천했어염 글고 점점어려워지네요 ㅠㅠ흑흑
어이쿠 ㅠㅠㅠ
감사합니다. 구독감사드려요!!! 조금씩 따라가시다 보면 끝이 보이실 겁니다.
역시 좋은 프로그램은 누군가는 열심히 쓰고 있군요.
저도 오토핫키 없으면 컴터 못 쓰겠어요 ㅋㅋㅋㅋㅋ
오토 핫키 때문에 걍 윈도우에 눌러 앉아 있습니다.
리눅스에서도 오토핫키 같은 킬러 프로그램이 있으면 좋을텐데...
제 블로그에 링크 할께요. 오토 핫키 좋아하는 한 사람으로서 자주 찾아 뵐께요~
오토핫키는 가히 최고의 프로그램이 아닐까 싶습니다.
못하는게 없네요~
ㅎㅎㅎ 감사합니다.
저도 자주 찾아뵙겠습니다.
본문에 오타가 있네요..^^ 예제에 winativate 가 아니라 winactivate 인거 같습니다.. c가 빠졌네요
오우 감사합니다. 바로 수정하겠습니다 ^^
저기요 Ctrl은 계속 연타하고 Shift는 4초에 1번씩하려면 어떻게 써야되요? jinhoun1999@naver.com으로 보내주셔도 되구요 아니면 댓글 달아주세요 ㅠㅠ
;스크립트입니다.
End::exitapp
Home::
settimer,SE,4000
loop
{
send.{ctrl}
sleep,300
}
retrun
SE:
Critical
send,{Shift}
sleep,300
return
활성화가안된다 ㅠㅠ
활성화가 안되요 ㅠㅠ어쩌징
글구 스크립트를 관리자권한으로 실행시키는법있을까영
Loop
{
send,{up down}s
sleep,1000
}
return
1. 위 스크립트를 입력하였을 시 어떠한 반응을 나타내는지요?
그리고 위의 스크립트는
키보드 위 방향키를 계속하여 누르고 있는 상태에서
s키는 반복적으로 계속 누르고 있게 할려는 스크립라고
만들어본건데 .. 맞나요?
2. 또 .. {up down} 명령어를 넣고난 후
또다른 방향키 명령어를 넣기위해서는 {up up} 명령어를
넣어주어야 하나요??
3 . 방향키 up 을 2초간 누르고 있다가 s를 누르는
반복적인 스크립트를 짤려고 하는데 잘 되지 않습니다
☞이는 위에 1번 질문을 해결하기 위함입니다
4. 제가 만들고 싶은 정확한 소스는 다음과 같습니다
마우스로는 임의의 좌표 100, 100을 10초 간격으로 계속하여
누르면서 이와 동시에 키보드는 방향키 up 을 2초간 누릅니다
이어서 키보드 s 를 10회 눌러준 후 d를 2번 눌러주게 하는
소스입니다
정리하자면 마우스의 임의 좌표클릭은 계속하고있고
이에 키보드 up2초, 이어서 s 10번, d 2q번
이를 반복하게 해주는 스크립트를 짜고 싶습니다
강좌를 살펴보고 살펴보며 만들어봣지만 번번히 실패하여
이렇게 질문글 남겨드립니다
거듭하여 확인할테지만 shadow2241@naver.com
으로도 메일 보내주시면 감사하겠습니다
좋은 강좌글 보고 매일같이 오토핫키를 공부하는 한 시람이
되었습니다. 계속하여 좋은 강좌글 부탁드리고 언제나 좋은정보
감사드립니다 ^^*
안녕하세요^^
강의를 보다가 궁금한게 있어서 질문드려요~~
------------------------------------------------------------------
end::exitapp
insert::reload
home::
test1=1+1
test2:=1+1
run,notepad.exe
sleep,500
winactivate,natepad.exe
sleep,100
send,%test1%
sleep,100
send,{enter}
sleep,100
send,%test2%
sleep,100
send,{enter}
sleep,100
send,test
exitapp
-----------------------------------------------------
이것을 실행하게되면
1!
2
test
가 나오더라구요.
1+1
2
test가 나와야 하는거 아닌가요?ㅠㅠ 어디가 잘못된거에요?
이런게 알아가는 재미군요 ㅋㅋㅋ
그리고 위에꺼 질문이요ㅠㅠ
예시처럼 msgbox로 하면 되는데
메모장으로 하면 안되네요ㅠㅠ
저기.. 4분마다 if 문안에 있는것을 실행할려고 하는데 if문 다음에 뭘 넣어야하죠? 그리고 변수선언은 어떻게?
안녕하세요 ^^
4분마다 if문 안에 것을 실행하고 싶으시다면
if문 안에는 실행하고자 하시는 내용을
4분이라는 것은 sleep을 통해서도 충분히 조정이 가능할 것 같습니다.
안녕하세요^^ 강의 꾸준히 보고있습니다.
학교에서 친구들이랑 오토핫키로 프로그램을 만들어서 같이 쓰기로 해서 질문드립니다..
만약 powerpnt(파워포인트).exe 라는 프로세스가 run 되었을 때
msgbox를 띄우려 하는데요, if문 어찌 해야할 지 모르겠네요 힌트좀 주세요
;--이러한 방법으로 가능합니다 ^^
ifwinexist,ahk_class PPTFrameClass
msgbox,파워포인트가 실행중입니다.
;--- 아래는 예제입니다.
if WinExist("ahk_class Notepad")
msgbox, Something is good
정말 내일컴키자마자 오토핫키 확 파버릴것같아요 후훗 이번편도 잘봤습니다^^
지정 시간까지 엔터 만 계속 클릭하게 만들수있나요 ?ㅇ
지정 시간까지 엔터 만 계속 클릭하게 만들수있나요 ?ㅇ
좌표에서 변수를 줄때 어떤씩으로 명령어를써줘야되나요?
좌표를 변수로 주신다는건 어떤점일까요?
xpos = 1
ypos =
mouseclick,left,%xpos%,%ypos% 이런건가요?