AutoHotKey(오토핫키) 설명서 Sin()

Posted by 발전소장
2014. 8. 14. 14:09 AutoHotKey/Commands

Sin()

주어진 각도에 대응하는 사인을 돌려주는 함수

Sin(Radian)

Parameters

인수명설명
Radian각도를 라디안으로 지정한다.3.14...하지만180도

Remarks

인수가 수치가 아니었던 경우나, 계산 불능인 값이 주어졌을 경우는 길이 제로의 공문자열이 돌아간다.

Related

함수


AutoHotKey(오토핫키) 설명서 Shutdown

Posted by 발전소장
2014. 8. 14. 14:08 AutoHotKey/Commands

Shutdown

시스템을 종료, 재기동, 로그 오프 한다

Shutdown, Code

Parameters

인수명설명
Code 이하의 것의 화
0
로그 오프
1
슛다운
2
재기동
4
강제적
8
실행 후 전원을 끈다

Remarks

OnExit써브루틴을 설정해 두어, 「A_ExitReason」변수를 조사하면, 유저가 슛다운이나 로그 오프를 실시하려고 한 것을 알 수 있다.

Related

Run, ExitApp, OnExit

Example(s)

; Force a reboot (reboot + force = 2 + 4 = 6):
Shutdown, 6
; 중지나 하이바네이트를 실시하고 싶은 경우는, 아래와 같이Windows의API(을)를 호출한다.
; Windows 95/NT4: Since this function does not exist, the following call would have no effect.
; Parameter #1: Pass 1 instead of 0 to hibernate rather than suspend.
; Parameter #2: Pass 1 instead of 0 to request permission from each application prior to suspending.
; Parameter #3: Pass 1 instead of 0 to disable all wake events.

DllCall("PowrProf\SetSuspendState", "int", 0, "int", 0, "int", 0)


AutoHotKey(오토핫키) 설명서 SetWorkingDir

Posted by 발전소장
2014. 8. 14. 14:08 AutoHotKey/Commands

SetWorkingDir

스크립트의 작업 디렉토리를 변경

SetWorkingDir, DirName

Parameters

인수명설명
DirName 패스를 지정.
상대 패스로 지정하면,%A_WorkingDir%(을)를 기준으로 한 패스가 된다.

ErrorLevel

성공시는 「0」, 실패시는 「1」.

Remarks

작업 디렉토리는, 커멘드로 파일 패스를 지정하는 (곳)중에 상대 패스로 지정했을 때에 기준이 되는 디렉토리이다.

현재의 작업 디렉토리 패스를 알려면 ,%A_WorkingDir%(을)를 참조한다.

기동시의 작업 디렉토리는 기동의 방법에 의해서 바뀐다.

한 번 작업 디렉토리를 변경하면, 그 후 스크립트 전체에 영향을 준다.

Related

%A_WorkingDir%, FileSelectFolder

Example(s)

SetWorkingDir, D:\My Folder\Temp


AutoHotKey(오토핫키) 설명서 SetWinDelay

Posted by 발전소장
2014. 8. 14. 14:08 AutoHotKey/Commands

SetWinDelay

윈도우 관련 커멘드의 후에 비우는 동안을 지정

SetWinDelay, Delay 

Parameters

인수명설명
Delay 간격을 밀리 세컨드로 지정.
디폴트는100.
-1그리고 모두 간격 없음.
0(이)라면, 다른 프로세스가 끼어드는 것이 가능하게 된다.

Remarks

각종 윈도우 조작 커멘드의 후에는, 윈도우가 조작에 응답하는 것을 기다리기 위해, 조금의 사이 처리가 정지된다.
「-1」(을)를 지정하면, 스크립트의 다음의 처리와 윈도우의 응답이 겹치게 되어 맛이 없기 때문에, 적어도 「0」(으)로 하는 편이 좋다.

이 설정의 기본치는, 스크립트의 최초의AutoExecute섹션그리고 설정한다.
hot key등에서 새롭게 기동되었다스렛드그럼, 설정은 기본치로 설정된다.

A_WinDelay변수로 현재의 설정치를 참조할 수 있다.

Related

SetControlDelay, SetKeyDelay, SetMouseDelay, SetBatchLines

Example(s)

SetWinDelay, 10


AutoHotKey(오토핫키) 설명서 SetTitleMatchMode

Posted by 발전소장
2014. 8. 14. 14:05 AutoHotKey/Commands

SetTitleMatchMode

윈도우 관련 커멘드로의 대상 윈도우 검색 방법을 설정한다

SetTitleMatchMode, MatchMode
SetTitleMatchMode, Fast|Slow

Parameters

인수명설명

MatchMode

타이틀의 매치 방법
1
전방 일치(WinTitle그리고 지정한 문자열로 시작되는 윈도우가 일치한다)(고속)(디폴트)
2
중간 일치(WinTitle그리고 지정한 문자열을 포함한 윈도우가 일치한다)
3
완전 일치(WinTitle그리고 지정한 문자열에 완전하게 일치하는 것이 일치한다)
RegEx
WinTitle,WinText,ExcludeTitle,ExcludeText의 조건을정규 표현그리고 지정한다.
예를 들면 「.* - 메모장」은 메모장의 타이틀에 매치한다.
「ahk_class」(이)나 「ahk_group」도 정규 표현으로 검사된다.
덧붙여WinText그럼, 컨트롤 등 한개씩에 그다지 정규 표현 검색을 한다.
Fast|Slow 텍스트의 검출 방법
Fast
일부의 컨트롤의 텍스트를 검출할 수 없다(디폴트)
Slow
보다 많은 컨트롤의 텍스트를 검출할 수 있다.늦다.

Remarks

「Slow」모드에서만 검출할 수 있는 텍스트는,AutoHotkey동고의AU3_Spy.exe그리고 알 수 있다.

「Slow」모드를 사용하면, 무응답의 윈도우가 있을 때 극단적으로 동작이 늦어지는 경우가 있다.
키보드 훅이나 마우스 훅을 사용하고 있으면, 조작의 응답이 늦는 등의 문제가 발생하는 경우도 있다.

이 설정의 기본치는, 스크립트의 최초의AutoExecute섹션그리고 설정한다.
hot key등에서 새롭게 기동되었다스렛드그럼, 설정은 기본치로 설정된다.

A_TitleMatchMode,A_TitleMatchModeSpeed변수로 현재의 설정을 참조할 수 있다.

Related

SetWinDelay, IfWinExist, WinActivate

Example(s)

SetTitleMatchMode, 2
SetTitleMatchMode, slow


AutoHotKey(오토핫키) 설명서 SetTimer

Posted by 발전소장
2014. 8. 14. 14:02 AutoHotKey/Commands

SetTimer

써브루틴을 지정 간격으로 실행한다

SetTimer, Label [, Period|On|Off, Priority]

Parameters

인수명설명
Label 라벨명.hot key 라벨등에서도 가능.
「%LabelName%」(와)과 같은 변수 참조라도 좋다.
Period|On|Off
간격
수치를 지정하면, 실행 간격을 밀리 세컨드로 설정할 수 있다.상한은4294967295밀리 세컨드(약49.7일)이다.
타이머는 자동적으로 유효하게 된다.
부의 값을 지정했을 경우, 그 절대치의 시간이 경과후에, 한 번만 써브루틴이 실행된다.
On
Off(으)로 한 타이머를 재차 유효하게 한다.
타이머가 신규 작성되는 경우, 간격은250(으)로 설정된다.
과거에 타이머 등록되었던 적이 있는 경우는, 그 때와 같은 간격으로 설정된다.(부의 값이 지정되어 있었을 경우도)
Off
타이머를 정지한다.
On(와)과 같다.다만,Priority하지만 설정되어 있는 경우, 경과시간의 리셋트는 행해지지 않는다.
Priority 스렛드의 세치기 우선도(을)를 지정.

Remarks

타이머를 사용하면, 정기적으로 처리를 실행하거나 무엇인가를 감시하거나 할 수 있다.

타이머를 설정해도 상주는 되지 않기 때문에, hot key를 등록하지 않는 스크립트를 상주시키고 싶은 경우#Persistent지령을 기술할 필요가 있다.

타이머는, 설정된 뒤 지정 시간이 경과하고 처음으로 실행된다.
On(으)로 하거나 간격을 설정하거나 하면, 전회 실행으로부터의 경과시간이 리셋트 되어 현재의 시간부터 지정 시간 경과후에 다음의 실행을 한다.

타이머는, 전회의 스렛드가 개시되었을 때로부터 지정 시간 경과후에 다음이 실행된다.
다만, 같은 타이마스렛드가 중복 해 실행될 것은 없다.
같은 타이머의 타이마스렛드가 실행중에, 다음의 시간이 왔을 경우, 기존의 타이마스렛드의 종료를 기다려 즉석에서 다음의 타이마스렛드가 개시된다.

Suspend되고 있는 동안도 타이머는 계속 움직인다.
Pause되면 모든 타이머는 정지한다.

OS의 제한에 의해,NT계에서는10밀리 세컨드,9x계에서는55밀리 세컨드보다 짧은 간격에서는 실행할 수 없다.
이것보다 짧은 간격을 지정했을 경우는, 최소 간격으로 설정된다.

타이머나 hot key가 확실히 지정 대로에 실행되도록(듯이) 하려면 ,SetBatchLines에 의한 처리 속도나Thread에 의한 스렛드 세치기의 설정등을 조절할 필요가 있다.

Related

Gosub, Return, Threads, Menu, #Persistent

Example(s)

; Example #1: Close unwanted windows whenever they appear:
SetTimer, CloseMailWarnings, 250
return

CloseMailWarnings:
WinClose, Microsoft Outlook, A timeout occured while communicating
WinClose, Microsoft Outlook, A connection to the server could not be established
return

; Example #2: Wait for a certain window to appear and then alert the user:
SetTimer, Alert1, 500
return
Alert1:
IfWinNotExist, Video Conversion, Process Complete
	return
; Otherwise:
SetTimer, Alert1, Off  ; i.e. the timer turns itself off here.
SplashTextOn, , , The video conversion is finished.
Sleep, 3000
SplashTextOff
return

; Example #3: Detection of single, double, and triple-presses of a hotkey. This
; allows a hotkey to perform a different operation depending on how many times
; you press it:
#c::
if winc_presses > 0 ; SetTimer already started, so we log the keypress instead.
{
	winc_presses += 1
	return
}
; Otherwise, this is the first press of a new series. Set count to 1 and start
; the timer:
winc_presses = 1
SetTimer, KeyWinC, 400 ; Wait for more presses within a 400 millisecond window.
return

KeyWinC:
SetTimer, KeyWinC, off
if winc_presses = 1 ; The key was pressed once.
{
	Run, m:\  ; Open a folder.
}
else if winc_presses = 2 ; The key was pressed twice.
{
	Run, m:\multimedia  ; Open a different folder.
}
else if winc_presses > 2
{
	MsgBox, Three or more clicks detected.
}
; Regardless of which action above was triggered, reset the count to
; prepare for the next series of presses:
winc_presses = 0
return


AutoHotKey(오토핫키) 설명서 SetStoreCapslockMode

Posted by 발전소장
2014. 8. 14. 14:02 AutoHotKey/Commands

SetStoreCapslockMode

Send커멘드 실행시에CapsLock상태를 자동적으로 변경할지를 설정

SetStoreCapslockMode, On|Off

Parameters

인수명설명
On|Off 자동 변경을On(으)로 할까Off(으)로 할까.초기설정은On.

Remarks

이 설정이On(이)가 되어 있으면,Send커멘드가 실행될 때,CapsLock하지만On(이)가 되어 있으면CapsLock(을)를Off(으)로 해, 종료시에On에 되돌려진다.
이것에 의해,CapsLock상태에 관계없이, 인수에 기술된 대로 알파벳열을 입력할 수 있다.
그러나, 종료시에 유무를 말하게 하지 않고On(으)로 되어 버리므로,CapsLock하지만On때에Send안으로{CapsLock}(을)를 송신해도,CapsLock(을)를Off(으)로 할 수 없다.

이 설정을Off(으)로 하면,Send커멘드 실행시의CapsLock의 자동 변환은 일절 행해지지 않게 된다.
CapsLock의 변환을 다른 키에 할당하고 싶은 경우 등은, 미리Off(으)로 해 두면 좋다.

Windows95/98/Me그럼, 이 기능은 정확하게 동작하지 않는 것이 있다.

이 설정의 기본치는, 스크립트의 최초의AutoExecute섹션그리고 설정한다.
hot key등에서 새롭게 기동되었다스렛드그럼, 설정은 기본치로 설정된다.

Related

SetCaps/Num/ScrollLockState, Send, ControlSend

Example(s)

SetStoreCapslockMode, off


AutoHotKey(오토핫키) 설명서 Set[Caps|Num|Scroll]LockState

Posted by 발전소장
2014. 8. 14. 14:01 AutoHotKey/Commands

Set[Caps|Num|Scroll]LockState

Capslock/NumLock/ScrollLock키의 락 상태를 설정하거나 항상On(이)나Off(으)로 하거나 한다

SetCapsLockState, State
SetNumLockState, State 
SetScrollLockState, State 

Parameters

인수명설명
State
On
On(으)로 한다
Off
Off(으)로 한다
AlwaysOn
항상On(이)가 되도록(듯이) 한다(NT계 전용)
AlwaysOff
항상Off(이)가 되도록(듯이) 한다(NT계 전용)

Remarks

상태의On/Off(을)를 바꾸려면 ,Send커멘드를 사용한다.

Related

SetStoreCapslockMode, GetKeyState

Example(s)

SetNumlockState, on
SetScrollLockState, AlwaysOff


AutoHotKey(오토핫키) 설명서 SetMouseDelay

Posted by 발전소장
2014. 8. 14. 14:01 AutoHotKey/Commands

SetMouseDelay

마우스 조작 관계 커멘드로 조작동안에 삽입되는 간격을 변경

SetMouseDelay, Delay, Play

Parameters

인수명설명
Delay 간격을 밀리 세컨드로 지정.「-1」(으)로 일절 사이를 비우지 않고 입력을 실시한다. 초기치는 「10」.
OS의 사양에 의해,10밀리 세컨드 단위보다 세세한 지정은 할 수 없다.
Play 제2인수에 「Play」(이)가 지정되어 있으면,SendPlay커멘드나SendMode그리고Play하지만 지정되어 있을 때의Send커멘드의 조작 간격이 변경된다.

Remarks

MouseMove,MouseClick,MouseClickDrag커멘드는, 어플리케이션이 확실히 키 조작에 응답할 수 있도록, 조작의 뒤에 짧은 시간 휴지 상태가 된다.

OS의 사양에 의해,10밀리 세컨드 단위보다 세세한 지정은 할 수 없다.

「0」(을)를 지정했을 경우,0밀리 세컨드의Sleep하지만 실행되어 다른 프로세스가 처리를 실시할 수 있다.
「-1」(을)를 지정하면, 일절 사이를 비우지 않고 입력되므로, 입력이 끝날 때까지 다른 프로세스에 처리가 돌지 않는 경우가 있다.

A_MouseDelay변수로 현재의 설정을 참조할 수 있다.

이 설정의 기본치는, 스크립트의 최초의AutoExecute섹션그리고 설정한다.
hot key등에서 새롭게 기동되었다스렛드그럼, 설정은 기본치로 설정된다.

Related

MouseMove, MouseClick, MouseClickDrag, SetKeyDelay, SetControlDelay, SetWinDelay, SetBatchLines

Example(s)

SetMouseDelay, 0


AutoHotKey(오토핫키) 설명서 SetKeyDelay

Posted by 발전소장
2014. 8. 14. 14:00 AutoHotKey/Commands

SetKeyDelay

Send(이)나ControlSend커멘드로의1키 마다 삽입되는 간격을 변경

SetKeyDelay[, Delay, PressDuration,Play]

Parameters

인수명설명
Delay 간격을 밀리 세컨드로 지정.「-1」(으)로 일절 사이를 비우지 않고 입력을 실시한다.
초기치는 「10」.
OS의 사양에 의해,10밀리 세컨드 단위보다 세세한 지정은 할 수 없다.
생략시는 변경되지 않는다.
PressDuration 키를 누르고 나서 떼어 놓을 때까지의 시간을 지정.「-1」(으)로 일절 간격을 열지 않고 즉석에서 떼어 놓는다.
초기치는 「-1」.
생략시는 변경되지 않는다.
덧붙여 수식 키를 눌러 내린 후의 대기 시간도 이 설정으로 변경된다.
Play 제3인수에 「Play」(이)가 지정되어 있으면,SendPlay커멘드나SendMode그리고Play하지만 지정되어 있을 때의Send커멘드의 조작 간격이 변경된다.

Remarks

Send커멘드 등은, 어플리케이션이 확실히 키 조작에 응답할 수 있도록,1키 마다 짧은 간격을 열면서 입력을 발생시킨다.

「0」(을)를 지정했을 경우,0밀리 세컨드의Sleep하지만 실행되어 다른 프로세스가 처리를 실시할 수 있다.
「-1」(을)를 지정하면, 일절 사이를 비우지 않고 입력되므로, 입력이 끝날 때까지 다른 프로세스에 처리가 돌지 않는 경우가 있다.

A_KeyDelay변수로 현재의 설정을 참조할 수 있다.

이 설정의 기본치는, 스크립트의 최초의AutoExecute섹션그리고 설정한다.
hot key등에서 새롭게 기동되었다스렛드그럼, 설정은 기본치로 설정된다.

Related

Send, ControlSend, SetMouseDelay, SetControlDelay, SetWinDelay, SetBatchLines, MouseClick

Example(s)

SetKeyDelay, 0