diff --git a/src/AutoHotkey.chm b/src/AutoHotkey.chm new file mode 100644 index 0000000..bc13859 Binary files /dev/null and b/src/AutoHotkey.chm differ diff --git a/src/Index.hhk b/src/Index.hhk new file mode 100644 index 0000000..32678f2 --- /dev/null +++ b/src/Index.hhk @@ -0,0 +1,914 @@ + + + + + + diff --git a/src/Project.hhp b/src/Project.hhp new file mode 100644 index 0000000..5427eed --- /dev/null +++ b/src/Project.hhp @@ -0,0 +1,339 @@ +[OPTIONS] +Binary Index=No +Compatibility=1.1 or later +Compiled file=AutoHotkey.chm +Contents file=Table of Contents.hhc +Default Window=Contents +Default topic=docs\AutoHotkey.htm +Display compile progress=No +Full-text search=Yes +Index file=Index.hhk +Language=0x412 Korean +Title=AutoHotkey Help + +[WINDOWS] +Contents="AutoHotkey Help: ÇѱÛÆÇ jojhnsonj 151111","Table of Contents.hhc","Index.hhk","docs\AutoHotkey.htm","docs\AutoHotkey.htm",,,,,0x73520,,0x10200e,[200,0,1080,700],0,,,,0,,0 + + +[FILES] +docs\AHKL_ChangeLog.htm +docs\AHKL_DBGPClients.htm +docs\AHKL_Features.htm +docs\AutoHotkey.htm +docs\ChangeLogHelp.htm +docs\Compat.htm +docs\FAQ.htm +docs\Functions.htm +docs\HotkeyFeatures.htm +docs\Hotkeys.htm +docs\Hotstrings.htm +docs\KeyList.htm +docs\license.htm +docs\Objects.htm +docs\Scripts.htm +docs\Tutorial.htm +docs\Variables.htm +docs\Welcome.htm +docs\commands\index.htm +docs\commands\_AllowSameLineComments.htm +docs\commands\_ClipboardTimeout.htm +docs\commands\_CommentFlag.htm +docs\commands\_ErrorStdOut.htm +docs\commands\_EscapeChar.htm +docs\commands\_HotkeyInterval.htm +docs\commands\_HotkeyModifierTimeout.htm +docs\commands\_Hotstring.htm +docs\commands\_If.htm +docs\commands\_IfTimeout.htm +docs\commands\_IfWinActive.htm +docs\commands\_Include.htm +docs\commands\_InputLevel.htm +docs\commands\_InstallKeybdHook.htm +docs\commands\_InstallMouseHook.htm +docs\commands\_KeyHistory.htm +docs\commands\_MaxHotkeysPerInterval.htm +docs\commands\_MaxMem.htm +docs\commands\_MaxThreads.htm +docs\commands\_MaxThreadsBuffer.htm +docs\commands\_MaxThreadsPerHotkey.htm +docs\commands\_MenuMaskKey.htm +docs\commands\_NoEnv.htm +docs\commands\_NoTrayIcon.htm +docs\commands\_Persistent.htm +docs\commands\_SingleInstance.htm +docs\commands\_UseHook.htm +docs\commands\_Warn.htm +docs\commands\_WinActivateForce.htm +docs\commands\AutoTrim.htm +docs\commands\Block.htm +docs\commands\BlockInput.htm +docs\commands\Break.htm +docs\commands\Catch.htm +docs\commands\Click.htm +docs\commands\ClipWait.htm +docs\commands\ComObjActive.htm +docs\commands\ComObjArray.htm +docs\commands\ComObjConnect.htm +docs\commands\ComObjCreate.htm +docs\commands\ComObjError.htm +docs\commands\ComObjFlags.htm +docs\commands\ComObjGet.htm +docs\commands\ComObjQuery.htm +docs\commands\ComObjType.htm +docs\commands\ComObjValue.htm +docs\commands\Continue.htm +docs\commands\Control.htm +docs\commands\ControlClick.htm +docs\commands\ControlFocus.htm +docs\commands\ControlGet.htm +docs\commands\ControlGetFocus.htm +docs\commands\ControlGetPos.htm +docs\commands\ControlGetText.htm +docs\commands\ControlMove.htm +docs\commands\ControlSend.htm +docs\commands\ControlSetText.htm +docs\commands\CoordMode.htm +docs\commands\Critical.htm +docs\commands\DetectHiddenText.htm +docs\commands\DetectHiddenWindows.htm +docs\commands\DllCall.htm +docs\commands\Drive.htm +docs\commands\DriveGet.htm +docs\commands\DriveSpaceFree.htm +docs\commands\Edit.htm +docs\commands\Else.htm +docs\commands\EnvAdd.htm +docs\commands\EnvDiv.htm +docs\commands\EnvGet.htm +docs\commands\EnvMult.htm +docs\commands\EnvSet.htm +docs\commands\EnvSub.htm +docs\commands\EnvUpdate.htm +docs\commands\Exit.htm +docs\commands\ExitApp.htm +docs\commands\FileAppend.htm +docs\commands\FileCopy.htm +docs\commands\FileCopyDir.htm +docs\commands\FileCreateDir.htm +docs\commands\FileCreateShortcut.htm +docs\commands\FileDelete.htm +docs\commands\FileEncoding.htm +docs\commands\FileGetAttrib.htm +docs\commands\FileGetShortcut.htm +docs\commands\FileGetSize.htm +docs\commands\FileGetTime.htm +docs\commands\FileGetVersion.htm +docs\commands\FileInstall.htm +docs\commands\FileMove.htm +docs\commands\FileMoveDir.htm +docs\commands\FileOpen.htm +docs\commands\FileRead.htm +docs\commands\FileReadLine.htm +docs\commands\FileRecycle.htm +docs\commands\FileRecycleEmpty.htm +docs\commands\FileRemoveDir.htm +docs\commands\FileSelectFile.htm +docs\commands\FileSelectFolder.htm +docs\commands\FileSetAttrib.htm +docs\commands\FileSetTime.htm +docs\commands\For.htm +docs\commands\Format.htm +docs\commands\FormatTime.htm +docs\commands\GetKeyState.htm +docs\commands\Gosub.htm +docs\commands\Goto.htm +docs\commands\GroupActivate.htm +docs\commands\GroupAdd.htm +docs\commands\GroupClose.htm +docs\commands\GroupDeactivate.htm +docs\commands\Gui.htm +docs\commands\GuiControl.htm +docs\commands\GuiControlGet.htm +docs\commands\GuiControls.htm +docs\commands\Hotkey.htm +docs\commands\IfBetween.htm +docs\commands\IfEqual.htm +docs\commands\IfExist.htm +docs\commands\IfExpression.htm +docs\commands\IfIn.htm +docs\commands\IfInString.htm +docs\commands\IfIs.htm +docs\commands\IfMsgBox.htm +docs\commands\WinActive.htm +docs\commands\WinExist.htm +docs\commands\ImageSearch.htm +docs\commands\IniDelete.htm +docs\commands\IniRead.htm +docs\commands\IniWrite.htm +docs\commands\Input.htm +docs\commands\InputBox.htm +docs\commands\KeyHistory.htm +docs\commands\KeyWait.htm +docs\commands\ListHotkeys.htm +docs\commands\ListLines.htm +docs\commands\ListVars.htm +docs\commands\ListView.htm +docs\commands\Loop.htm +docs\commands\LoopFile.htm +docs\commands\LoopParse.htm +docs\commands\LoopReadFile.htm +docs\commands\LoopReg.htm +docs\commands\Menu.htm +docs\commands\MouseClick.htm +docs\commands\MouseClickDrag.htm +docs\commands\MouseGetPos.htm +docs\commands\MouseMove.htm +docs\commands\MsgBox.htm +docs\commands\NumGet.htm +docs\commands\NumPut.htm +docs\commands\ObjAddRef.htm +docs\commands\ObjBindMethod.htm +docs\commands\OnClipboardChange.htm +docs\commands\OnExit.htm +docs\commands\OnMessage.htm +docs\commands\OutputDebug.htm +docs\commands\Pause.htm +docs\commands\PixelGetColor.htm +docs\commands\PixelSearch.htm +docs\commands\PostMessage.htm +docs\commands\Process.htm +docs\commands\Progress.htm +docs\commands\Random.htm +docs\commands\RegDelete.htm +docs\commands\RegExMatch.htm +docs\commands\RegExReplace.htm +docs\commands\RegisterCallback.htm +docs\commands\RegRead.htm +docs\commands\RegWrite.htm +docs\commands\Reload.htm +docs\commands\Return.htm +docs\commands\Run.htm +docs\commands\RunAs.htm +docs\commands\Send.htm +docs\commands\SendLevel.htm +docs\commands\SendMode.htm +docs\commands\SetBatchLines.htm +docs\commands\SetControlDelay.htm +docs\commands\SetDefaultMouseSpeed.htm +docs\commands\SetEnv.htm +docs\commands\SetExpression.htm +docs\commands\SetFormat.htm +docs\commands\SetKeyDelay.htm +docs\commands\SetMouseDelay.htm +docs\commands\SetNumScrollCapsLockState.htm +docs\commands\SetRegView.htm +docs\commands\SetStoreCapslockMode.htm +docs\commands\SetTimer.htm +docs\commands\SetTitleMatchMode.htm +docs\commands\SetWinDelay.htm +docs\commands\SetWorkingDir.htm +docs\commands\Shutdown.htm +docs\commands\Sleep.htm +docs\commands\Sort.htm +docs\commands\SoundBeep.htm +docs\commands\SoundGet.htm +docs\commands\SoundGetWaveVolume.htm +docs\commands\SoundPlay.htm +docs\commands\SoundSet.htm +docs\commands\SoundSetWaveVolume.htm +docs\commands\SplashTextOn.htm +docs\commands\SplitPath.htm +docs\commands\StatusBarGetText.htm +docs\commands\StatusBarWait.htm +docs\commands\StringCaseSense.htm +docs\commands\StringGetPos.htm +docs\commands\StringLeft.htm +docs\commands\StringLen.htm +docs\commands\StringLower.htm +docs\commands\StringMid.htm +docs\commands\StringReplace.htm +docs\commands\StringSplit.htm +docs\commands\StringTrimLeft.htm +docs\commands\StrPutGet.htm +docs\commands\Suspend.htm +docs\commands\SysGet.htm +docs\commands\Thread.htm +docs\commands\Throw.htm +docs\commands\ToolTip.htm +docs\commands\Transform.htm +docs\commands\TrayTip.htm +docs\commands\TreeView.htm +docs\commands\Trim.htm +docs\commands\Try.htm +docs\commands\Until.htm +docs\commands\URLDownloadToFile.htm +docs\commands\VarSetCapacity.htm +docs\commands\While.htm +docs\commands\WinActivate.htm +docs\commands\WinActivateBottom.htm +docs\commands\WinClose.htm +docs\commands\WinGet.htm +docs\commands\WinGetActiveStats.htm +docs\commands\WinGetActiveTitle.htm +docs\commands\WinGetClass.htm +docs\commands\WinGetPos.htm +docs\commands\WinGetText.htm +docs\commands\WinGetTitle.htm +docs\commands\WinHide.htm +docs\commands\WinKill.htm +docs\commands\WinMaximize.htm +docs\commands\WinMenuSelectItem.htm +docs\commands\WinMinimize.htm +docs\commands\WinMinimizeAll.htm +docs\commands\WinMove.htm +docs\commands\WinRestore.htm +docs\commands\WinSet.htm +docs\commands\WinSetTitle.htm +docs\commands\WinShow.htm +docs\commands\WinWait.htm +docs\commands\WinWaitActive.htm +docs\commands\WinWaitClose.htm +docs\misc\Acknowledgements.htm +docs\misc\Arrays.htm +docs\misc\AutoIt2Compat.htm +docs\misc\Clipboard.htm +docs\misc\CLSID-List.htm +docs\misc\ErrorLevel.htm +docs\misc\FontsStandard.htm +docs\misc\Labels.htm +docs\misc\Languages.htm +docs\misc\Macros.htm +docs\misc\Override.htm +docs\misc\Performance.htm +docs\misc\RegExCallout.htm +docs\misc\RegEx-QuickRef.htm +docs\misc\Remap.htm +docs\misc\RemapJoystick.htm +docs\misc\SendMessage.htm +docs\misc\SendMessageList.htm +docs\misc\Styles.htm +docs\misc\Threads.htm +docs\misc\Winamp.htm +docs\misc\WinTitle.htm +docs\objects\Enumerator.htm +docs\objects\File.htm +docs\objects\Func.htm +docs\objects\Functor.htm +docs\objects\Object.htm +docs\scripts\ContextSensitiveHelp.htm +docs\scripts\EasyWindowDrag.htm +docs\scripts\EasyWindowDrag_(KDE).htm +docs\scripts\FavoriteFolders.htm +docs\scripts\index.htm +docs\scripts\IntelliSense.htm +docs\scripts\JoystickMouse.htm +docs\scripts\JoystickTest.htm +docs\scripts\KeyboardOnScreen.htm +docs\scripts\MinimizeToTrayMenu.htm +docs\scripts\MouseGestures.htm +docs\scripts\MsgBoxButtonNames.htm +docs\scripts\Numpad000.htm +docs\scripts\NumpadMouse.htm +docs\scripts\Seek_(SearchTheStartMenu).htm +docs\scripts\TooltipMouseMenu.htm +docs\scripts\VolumeOSD.htm +docs\scripts\WindowShading.htm +docs\scripts\WinLIRC.htm + +[INFOTYPES] + diff --git a/src/Table of Contents.hhc b/src/Table of Contents.hhc new file mode 100644 index 0000000..7ef2c00 --- /dev/null +++ b/src/Table of Contents.hhc @@ -0,0 +1,446 @@ + + + + + + + + + + + + + diff --git a/src/compile_chm.ahk b/src/compile_chm.ahk new file mode 100644 index 0000000..bbb3a7a --- /dev/null +++ b/src/compile_chm.ahk @@ -0,0 +1,36 @@ +if (A_PtrSize = 8) { + try + RunWait "%A_AhkPath%\..\AutoHotkeyU32.exe" "%A_ScriptFullPath%" + catch + MsgBox 16,, This script must be run with AutoHotkey 32-bit, due to use of the ScriptControl COM component. + ExitApp +} + +; Change this path if the loop below doesn't find your hhc.exe, +; or leave it as-is if hhc.exe is somewhere in %PATH%. +hhc := "hhc.exe" + +; Try to find hhc.exe, since it's not in %PATH% by default. +for i, env_var in ["ProgramFiles", "ProgramFiles(x86)", "ProgramW6432"] +{ + EnvGet Programs, %env_var% + if (Programs && FileExist(checking := Programs "\HTML Help Workshop\hhc.exe")) + { + hhc := checking + break + } +} + +SetWorkingDir %A_ScriptDir%\docs\static + +; Rebuild Index.hhk and Table of Contents.hhc. +RunWait "%A_AhkPath%" source\CreateFiles4Help.ahk +FileMove content.js, content.temp.js, 1 +FileMove content.chm.js, content.js + +; Compile AutoHotkey.chm. +RunWait %hhc% "%A_ScriptDir%\Project.hhp" + +; Put it back so that local viewing works. +FileMove content.js, content.chm.js +FileMove content.temp.js, content.js \ No newline at end of file diff --git a/src/docs/AHKL_ChangeLog.htm b/src/docs/AHKL_ChangeLog.htm new file mode 100644 index 0000000..1fb1862 --- /dev/null +++ b/src/docs/AHKL_ChangeLog.htm @@ -0,0 +1,1194 @@ + + +Changes & New Features + + + + + + + +

º¯°æ »çÇ× & »õ·Î¿î Ư¡

+

ÇöÀç ¿ÀÅäÇÖÅ° °³¹ß ºÐ±â¿¡ (À̸¥¹Ù AutoHotkey_L¿¡) µµÀÔµÈ º¯°æ»çÇ×°ú »õ·Î¿î Ư¡À» ¾Æ·¡¿¡ ³ª¿­ÇÕ´Ï´Ù.

+

¿¹Àü º¯°æ »çÇ×Àº º¯°æ »çÇ× º¸°ü¼Ò¸¦ ÂüÁ¶ÇϽʽÿÀ.

+ + +

1.1.22.07 - September 27, 2015

+

Fixed Gui control w-1 and h-1 options failing when DPI is 150+% and the Gui has not applied -DPIScale.

+

Fixed ~key up hotkeys to not perform an automatic Send {key down}. This was occurring only if the hotkey was turned on after the key was pressed down.

+

1.1.22.06 - September 13, 2015

+

Fixed Input and hotstrings to catch Unicode/non-key character events.

+

Fixed auto-sizing of Edit controls to include the last line if blank.

+

Fixed handling of out-of-memory in ComObj functions.

+

Fixed ComObjArray to ignore excess parameters rather than crashing (only applies to dynamic calls).

+

Fixed GuiControl to append--not prepend--tabs, as documented.

+

Fixed XP64 support.

+ +

1.1.22.05 - September 10, 2015

+

Fixed icons which have non-numeric IDs loading with sub-optimal quality.

+

Fixed Gui Destroy not releasing function objects which were set by the +g option.

+

Fixed Gui Show to avoid attempting to force-activate a child GUI.

+

Fixed failure to set Caps/Num/ScrollLock state while the key is down.

+

Fixed Gui Color causing incorrect text color (usually black).

+

Changed Gui Show to improve the odds of GuiSize executing immediately.

+

For developers:

+ +

1.1.22.04 - August 19, 2015

+

Fixed ObjRawSet() to return nothing.

+

Added Windows 10 supportedOS tag to the exe manifest (avoids some issues with the Program Compatibility Assistant and similar).

+

Added detection of syntax errors after ")" in a function declaration.

+ +

1.1.22.03 - July 12, 2015

+

Fixed A_EndChar returning a truncated value for Unicode end chars.

+

Small implementation changes:

+ + +

1.1.22.02 - May 27, 2015

+

Fixed TreeView to not raise * events for unknown notifications.

+

Fixed crashing/bad behaviour when a timer deletes itself.

+

Fixed RWin-up being masked in some rare cases where LWin-up wouldn't have been.

+

1.1.22.01 - May 24, 2015

+

Fixed Text/Edit/Button control sizing to compensate for character overhang.

+

Fixed registry commands to allow : in the SubKey when combined with RootKey.

+

Fixed hotkey prioritization to take modifiers into consideration.

+

Refactored else/try/catch/finally handling to support hotkey::try cmd.

+

Added a workaround for the script's dialogs acting as though Ctrl or Shift is pressed after they are blocked by the keyboard hook.

+ +

1.1.22.00 - May 1, 2015

+

Added SetErrorMode(SEM_FAILCRITICALERRORS) on program startup to suppress system-level error messages such as "There is no disk in the drive". Calling Drive or DriveGet no longer affects the process' error mode.

+

Changed MonthCal controls to have tab-stop by default on Vista or later.

+

Improved ComObjConnect to use IProvideClassInfo when available.

+

Fixed some issues with method/property definitions following an end brace on the same line.

+

Fixed Text/Link control auto-sizing to compensate for the +Border (WS_BORDER) style.

+

Fixed Break N when Loop is used directly below If/Else/Try/Catch.

+ +

1.1.21.03 - April 12, 2015

+

Fixed detection of naming conflicts between properties and methods.

+ +

1.1.21.02 - April 4, 2015

+

Fixed OnMessage(msg, fnobj, 0) to do nothing if fnobj wasn't previously registered.

+ +

1.1.21.01 - April 3, 2015

+

Fixed StrReplace() to allow ReplaceText to be omitted.

+

Fixed class variables to allow non-ASCII names.

+ +

1.1.21.00 - March 28, 2015

+

Added Loop, Reg, RootKey[\Key, Mode].

+

Added Loop, Files, FilePattern [, Mode].

+

Changed InputVar parameters to allow % expression (except with If commands).

+

Revised Object methods:

+ +

Added Ord() and updated Chr() to support supplementary chars (>0xFFFF).

+

Added StrReplace().

+

Removed the obsolete and undocumented 5-parameter mode of RegRead, which was exclusively for AutoIt v2 compatibility (the extra parameter was unused).

+

Changed RegRead, RegWrite and RegDelete so that the RootKey and SubKey parameters can optionally be combined.

+ +

1.1.20.03 - March 21, 2015

+

Fixed MouseGetPos (OutputVarControl), GuiContextMenu and GuiDropFiles (A_GuiControl) to not ignore disabled controls [broken by v1.1.20.00].

+ +

1.1.20.02 - March 11, 2015

+

Fixed add-first mode of OnMessage.

+

Fixed A_OSVersion for unrecognized OSes on x64 builds.

+

Fixed ExitApp to unpause the script before releasing objects in case a __delete meta-function is called.

+

Trivial optimizations and code maintenance.

+ +

1.1.20.01 - March 10, 2015

+

Reverted the changes made in v1.1.20.00 to saving and restoring of ErrorLevel on thread interrupt, due to unintended consequences.

+ +

Re-fixed timers sometimes causing ErrorLevel to be formatted as hex.

+

Fixed class methods to retain a counted reference to the class.

+ +

1.1.20.00 - March 8, 2015

+

New features:

+

Enhanced Hotkey, Menu, SetTimer, Gui events and Gui control events to accept a function instead of a label, if no label is found.

+

Enhanced Hotkey, Menu, SetTimer and Gui control events to accept a function object. Added a Delete sub-command for SetTimer to allow the object to be released.

+

Enhanced OnMessage() to allow any number of functions or function objects to monitor a single message.

+

Added OnExit() and OnClipboardChange(), which accept a function name or object.

+

Added capability to point hotkey labels at a function definition.

+

Added U/L/T modifiers to perform case conversion with Format().

+

Added the E option to the Input command, for handling end keys by character instead of keycode.

+

Added ** (stderr) support to FileAppend.

+

Added ObjBindMethod(obj, method, args*) and Func.Bind(args*).

+ +

Changes:

+

Changed the default behavior when the main script file is not found:

+ +

Changed WinActivate to restore the window if already active but minimized.

+

Changed WinActivate to look for a visible window to activate if DetectHiddenWindows is off and the active window is hidden, instead of doing nothing.

+

Changed the method used by A_CaretX/A_CaretY to retrieve the caret position.

+ +

Changed A_OSVersion to use RtlGetVersion(), so that it can detect Windows 10 and hopefully future versions.

+

Changed A_OSVersion to return a version number of the form "major.minor.build" if it doesn't have a name for the OS.

+

Changed objects to support x[,y], x.y[,z] and x[](y).

+ +

Several under-the-hood changes to fix bugs, reduce code size or improve performance, including:

+ + +

Bug-fixes:

+

Fixed VK to keyname conversions for keys 'A' to 'Z' to respect layout.

+ +

Fixed FileAppend to * (stdout) to respect the encoding parameter instead of always outputting ANSI text.

+

Fixed auto-sizing of GUIs with only one scrollbar.

+

Fixed Exception(m, n) crashing when n is too far out of bounds.

+

Fixed GuiContextMenu to set A_GuiEvent correctly on x64.

+

Fixed FileGetSize sometimes giving an indeterminate result if the file doesn't exist or can't be opened.

+

Fixed thread interrupts to save and restore ErrorLevel more fully [reverted in v1.1.20.01 due to unintended consequences].

+

Fixed ControlClick Pos mode to ignore disabled controls.

+

Fixed odd behaviour when Gui +MaxSize is smaller than +MinSize.

+

Fixed GuiControl/Get requiring a Gui name when given a control HWND.

+

Fixed meta-functions interfering with the line number reported by Exception().

+ +

1.1.19.03 - February 11, 2015

+

Improved remapping to allow scXXX::Y when the current keyboard layout does not map scXXX to a VK code. However, Y must still exist on the current keyboard layout.

+

Fixed break n to work correctly when until is present, instead of terminating the thread.

+

Fixed ControlGetFocus disrupting the user's ability to double-click (thanks HotKeyIt).

+

Fixed ListView to not call the control's g-label for unsupported (and previously unknown) notifications such as LVN_GETEMPTYMARKUP.

+

Fixed #Include *i <X> to exit the program as intended if X has a syntax error.

+

Fixed for var in expression sometimes crashing the program when expression calls a script function.

+ +

1.1.19.02 - January 25, 2015

+

Removed the 16-color icons which were used on Win9x/Win2k.

+

Removed the separate tray icon resources.

+

Improved selection of icon size when loading icons from DLL/EXE files.

+ +

Fixed some issues with hotkey validation at load time.

+ +

Fixed /iLib switch to write the file even if there's a syntax error.

+

Fixed return/break/continue/goto in try..finally.

+ +

1.1.19.01 - January 5, 2015

+

Fixed Hotkey command crashing the program when trying to create new variants of existing hotkeys (broken by v1.1.19.00).

+

Made some minor optimizations to the Hotkey command and A_TimeIdle, relating to removal of Win9x support.

+ +

1.1.19.00 - January 4, 2015

+

Added a name for Func.Call(). Func.() still works but is deprecated.

+

Fixed some issues with X.Y and X.Y(Z) in VBScript/JScript/C#:

+ +

Fixed the Hotkey command ignoring the ~ (pass-through) prefix if Label was omitted.

+

Fixed the Hotkey command ignoring the $ (use-hook) prefix if the hotkey variant was already created without $.

+

Fixed %Fn%() syntax to work with JavaScript Function objects.

+

Fixed EXE manifest to disable UAC installer detection heuristics (broken by v1.1.17).

+

Improved the way threads are represented on the debugger's call stack.

+ + +

1.1.18.00 - December 30, 2014

+

Improved IDispatch implementation for AutoHotkey objects:

+ +

Added support for creating new properties in JavaScript/IE DOM objects.

+

Fixed FileAppend, %VarContainingClipboardAll%, File causing crashes.

+ +

1.1.17.01 - December 28, 2014

+

Fixed COM event handlers not receiving the final object parameter.

+ +

1.1.17.00 - December 27, 2014

+

New features:

+

Added Format().

+

FileOpen() can now be used to read from stdin or write to stdout or stderr by passing "*" or "**" as the filename. AutoHotkey.exe * can be used to execute script text piped from another process instead of read from file. For an example, see ExecScript().

+

Added support for passing AutoHotkey objects to COM APIs as IDispatch.

+

Added support for VT_BYREF in ComObject wrappers. Use obj[] to access the referenced value.

+

Bug-fixes:

+

Fixed blue-screening on XP SP2.

+

Fixed owned ComObjArrays to be returned by value, not by pointer. That is, a copy of the array is returned instead of a pointer to an array which is about to be deleted.

+

Changed the URL in the sample script which is created when you first run AutoHotkey.

+

Fixed sc15D to map to vk5D/AppsKey (Send, GetKeyName, etc.).

+

Fixed Edit controls to not treat AltGr+A as Ctrl+A.

+

Fixed static class vars to not act as a target for labels which immediately precede the class.

+ +

1.1.16.05 - September 28, 2014

+

Fixed x.y/[]/{} sometimes falsely being flagged as variadic.

+ +

1.1.16.04 - September 16, 2014

+

Fixed a crash which occurred when overwriting a non-writable property.

+

Fixed a crash which occurred when a RegExMatch object is created with uncaptured subpatterns during a regex callout.

+ +

1.1.16.03 - September 11, 2014

+

Fixed some bad behaviour in Abs() and Mod() caused by a broken bug-fix in v1.1.16.01.

+ +

1.1.16.02 - September 11, 2014

+

Fixed parser to allow #include inside a class (broken by a6ea27f).

+

Fixed Clipboard returning binary CF_HDROP data in some instances.

+

Improved accuracy of FileGetSize on files which are still open.

+

Improved for-loop compatibility with COM objects.

+ +

1.1.16.01 - September 10, 2014

+

Added syntax for defining dynamic properties in classes.

+

Added x+m and y+m options for Gui control positioning.

+

Added the #InputLevel of each hotkey to ListHotkeys (when non-zero).

+

Optimized RegExMatch with the O (object) option; capturing part of a long string is much faster than before in some cases.

+

Fixed objects to check for new methods after __Call completes (consistent with __Set and __Get).

+

Fixed some undefined behaviour occurring after VarSetCapacity fails.

+

Fixed FileRead to correctly report an error with files over 4GB, instead of truncating even when it wasn't requested.

+

Fixed FileRead *c to null-terminate correctly when byte length is odd.

+

Fixed some ClipboardAll issues and changed behaviour:

+ +

Fixed A_EventInfo for TreeView items with negative screen coords.

+

Fixed a possible ListView/TreeView message filtering issue.

+

Fixed A_LineFile/A_LineNumber in #If expressions.

+

Fixed #If to add itself to ListLines (though as "If").

+

Fixed Abs(["-"]*) and similar crashing the program.

+

Fixed } funcdef(){ globally and }} ending a method/property/class.

+

1.1.15.04 - August 12, 2014

+

Fixed a performance issue with &var_containing_long_string_of_digits.

+

Fixed built-in variables corrupting memory when an object is assigned.

+

Fixed parser to disallow continue where appropriate even if the current function is defined inside a Loop.

+

Fixed File.Encoding := x "-RAW" breaking encoding/decoding of non-ASCII characters. The -RAW suffix is now ignored.

+ +

1.1.15.03 - August 2, 2014

+

Fixed meta-functions to exit the thread correctly after using Exit or Throw.

+

Fixed FileInstall to use A_WorkingDir when Dest is relative in a non-compiled script.

+ +

1.1.15.02 - July 7, 2014

+

Fixed debugging negative integer keys in objects.

+ +

1.1.15.01 - June 30, 2014

+

Changed built-in error and warning dialogs to be always-on-top.

+

Fixed Until not breaking out of recursive file/registry loops.

+ +

1.1.15.00 - May 4, 2014

+

Added A_OSVersion value WIN_8.1.

+

Changed the Hotkey command to apply/remove passthrough behavior on existing hotkey variants depending on whether the tilde (~) prefix is present.

+

Changed exe manifest to allow GetVersion/GetVersionEx to detect Windows 8.1.

+ +

1.1.14.04 - April 25, 2014

+

Fixed DllCall() crashing the script when Function is pure integer 0.

+

Fixed IsFunc("ComObj(") to return false instead of throwing an exception.

+

Fixed ControlClick to send XButton1/XButton2 correctly.

+ +

1.1.14.03 - February 14, 2014

+

Fixed a memory leak in new X when X.__Init aborts the thread.

+

Fixed breakpoints shifting onto class var initializers when they are interspersed with method definitions.

+ +

1.1.14.02 - January 30, 2014

+

Fixed x:: and x up:: both firing on key-up if the state of the modifier keys prevented x from firing on key-down. The intended behaviour as of v1.1.14 is for both hotkeys to fire on key-up if x is also used in a custom combination like x & y::.

+ +

1.1.14.01 - January 15, 2014

+

Fixed Try without Catch/Finally crashing if no exception was thrown.

+ +

1.1.14.00 - January 15, 2014

+

Added Finally statement for performing cleanup after try/catch. [fincs]

+

Changed behaviour of ~ prefix with custom combos to be more intuitive.

+

Fixed x & y:: to fire both x:: and x up:: when x is released.

+

Fixed ImageSearch to set ErrorLevel=2, not 0, when a GDI call fails.

+

Fixed EnvGet crashing the program when the var exceeds 32767 chars.

+

Fixed a minor error-handling bug with StatusBarWait's ErrorLevel.

+

Fixed a cause of heap corruption with FileRead *c on ANSI builds.

+

Fixed passing of local vars in recursive calls to variadic functions.

+

Fixed script failing to load if the first line is an expression in parentheses.

+

Fixed PixelSearch Fast mode to set OutputVarX/Y only on success.

+ +

1.1.13.01 - October 11, 2013

+

Fixed variadic function calls with named values for required parameters.

+ +

1.1.13.00 - August 27, 2013

+

Ported StrSplit() from v2 alpha.

+ +

1.1.12.00 - August 14, 2013

+

Optional parameters can be omitted by writing two consecutive commas, as in InStr(a, b,, 2). Unlike previous versions, this now works for objects (including COM objects) and built-in functions. [a,,b] can be used to create a sparse array.

+

Object properties can now be set using variadic syntax, as in x[y*]:=z, where y contains an array of keys/indices or parameters.

+ +

1.1.11.02 - July 28, 2013

+

Fixed GuiControl/Get to accept the ClassNN of a ComboBox's child Edit. Specifying the HWND of a ComboBox's child Edit was already supported as a means of identifying the ComboBox.

+ +

1.1.11.01 - June 25, 2013

+

Fixed InputBox default width/height (broken by v1.1.11.00 - commit 7373cc6443).

+

Fixed DllCall arg type validation to handle SYM_OBJECT safely, and to respect #Warn UseUnset (when var name is not a valid type).

+

Changed VarSetCapacity(var) to never warn about uninitialized vars.

+ +

1.1.11.00 - June 21, 2013

+

Added support for %A_LineFile% in #Include.

+

Reduced the file size of AutoHotkeySC.bin by reducing the resolution of the (rarely used) filetype icon.

+

Fixed class X extends Y to allow Y to be defined after X.

+

Developed by fincs: AutoHotkey is now DPI-aware. The Gui commands automatically compensate when DPI is not 96. See Gui -DPIScale.

+

1.1.10.01 - May 17, 2013

+

Improved RegRead to support REG_BINARY values larger than 64K.

+

Improved RegWrite to support REG_BINARY/REG_MULTI_SZ values larger than 64K.

+

Fixed Process Close (and possibly other things) on Windows XP.

+ +

1.1.10.00 - May 11, 2013

+

Added basic support for custom Gui control types.

+

Revised SoundSet, SoundGet and 'WaveVolume commands to better support Windows Vista and later.

+

Fixed Run "<file>" <args> to not pass the space as part of the args.

+

Fixed some issues with reading from console input (CONIN$).

+ +

1.1.09.04 - March 14, 2013

+

Fixed Gui menu accelerator keys not working when the Gui itself (not a control) has focus.

+ +

1.1.09.03 - February 9, 2013

+

Fixed two bugs which affected certain assignments where the target variable contains an unflushed binary number but has zero capacity.

+

Fixed GuiControl and GuiControlGet acting on the wrong control when given a HWND which does not belong to the current Gui. Instead, the condition is treated as an error.

+

Fixed OnMessage functions to set A_Gui and A_GuiControl correctly when the target Gui is a child window.

+ +

1.1.09.02 - December 24, 2012

+

Fixed MsgBox to show an error message when given invalid Options, instead of silently exiting the thread.

+

Fixed syntax errors in class var initializers causing the program to crash without the proper error message.

+ +

1.1.09.01 - December 15, 2012

+

Fixed AND/OR following a multi-statement comma, like ((x, y) and z).

+

Fixed RegExReplace to support duplicate subpattern names correctly.

+

Fixed Object.Remove() not freeing string keys.

+

Fixed base.Invoke() to not depend on dynamic variable resolution.

+ +

1.1.09.00 - November 7, 2012

+ +

Breaking changes:

+

Removed .aut file compatibility and #AllowSameLineComments.

+

Removed undocumented AutoIt v2 commands.

+ +

Backward-compatible changes:

+

Allow optional parameters to be declared with := instead of =, for consistency with variable declarations and expressions.

+

Allow non-ASCII characters in unquoted keys ({key: x} and obj.key).

+

Changed name in version info from "AutoHotkey_L" to "AutoHotkey".

+ +

Bug-fixes:

+

Fixed instability caused by warning dialogs appearing part-way through evaluation of a command's args.

+

Fixed PixelSearch Fast mode treating "not found" as an error.

+

Fixed ahk_exe to allow other ahk_ criteria after it.

+

Fixed else continue 2 and similar requiring braces around the loop.

+

Fixed RegRead indicating failure after successfully reading binary data.

+

Fixed File.Length to compensate for or flush any buffered data.

+

Fixed Gui sizing to account for scrollbars when present.

+ +

Debugger:

+

Added support for asynchronous commands.

+

Improved handling of breakpoints on lines like else foo() or { bar() so that the debugger will actually break when appropriate.

+

Optimized code size, fixed several bugs and made the debugger generally more robust.

+ + +

1.1.08.01 - August 3, 2012

+

Debugger: Fixed max_depth being either half the intended limit or unlimited.

+ +

1.1.08.00 - July 14, 2012

+ +

Breaking changes:

+

Changed the default script codepage to ANSI, as the previous behaviour was a common source of confusion. UTF-8 files must now have a byte order mark (BOM) to be recognized correctly. Notepad adds a BOM to any file saved as UTF-8.

+

Changed return x to preserve formatting of numeric strings; it is now equivalent to return (x).

+

Changed Gui, Name: New to set the new GUI as the default.

+ +

Other changes:

+

Changed ClipboardAll to prefer CF_UNICODETEXT over other text formats.

+

Changed Gui Show to allow floating-point numbers.

+

Changed A_OSVersion to return WIN_8 on Windows 8.

+

Changed AutoHotkey.exe file description to include "ANSI/Unicode 32/64-bit".

+

Changed the parser to allow lines like new MyObject() with no assignment.

+

Upgraded PCRE to 8.30.

+

Improved wording of some warnings and added a pointer to the documentation at the bottom of the warning dialog.

+

Improvements to the debugger:

+ + +

New features:

+

Added support for the PCRE construct (*MARK:NAME) via RegExMatchObject.Mark.

+

Added support for classvar.x := y assignments in class definitions (after declaring classvar).

+

Added A_Is64bitOS.

+

Added SetRegView and A_RegView.

+ +

Fixes:

+

Fixed Func.() to merely skip the function call if mandatory parameters were omitted instead of causing the thread to silently exit.

+

Fixed Object.Remove() not releasing object keys.

+

Fixed key-down/key-up hotkey pairs to suppress input correctly when only one hotkey in the pair is enabled.

+

Fixed #Include <Lib> to not affect the working directory used by subsequent #include directives.

+

Fixed objaddref() acting like ObjRelease() when called with a lower-case 'a'.

+

Fixed A_AhkPath in 32-bit compiled scripts to detect 64-bit AutoHotkey installations and vice versa.

+

Fixed TreeView controls with -Background option rendering incorrectly on older OSes.

+

Fixed error messages shown during execution of While/Until to identify the appropriate line.

+ +

1.1.07.03 - March 25, 2012

+

Fixed Ctrl/Alt/Shift key-down hotkey breaking any corresponding key-up hotkey defined before it.

+

Fixed key-down hotkeys to always use the hook if defined after a key-up hotkey of the same key. If the key-down hotkey used the "reg" method, the hook would block the key-down event and trigger only the key-up hotkey.

+

Fixed load-time checks interpreting expressions with no derefs as raw text. For example, gosub % "foo" resolved to "foo": at load-time. Similarly, % "" was seen as invalid in various cases even if an empty string should be allowed.

+ +

1.1.07.02 - March 22, 2012

+

Fixed a rare crash which can occur when GetClipboardData() fails.

+

Fixed ComObjArray() to return an empty string on failure instead of an arbitrary integer.

+

Fixed Object.Remove(i, "") affecting integer keys when !Object.HasKey(i).

+ +

1.1.07.01 - March 2, 2012

+

Fixed FileRead to ignore #MaxMem when reading UTF-16 on Unicode builds.

+

Fixed dynamic function calls with built-in vars such as %A_ThisLabel%().

+ +

1.1.07.00 - February 27, 2012

+

Enhanced %var%() to support function references, objects imitating functions and the default __Call meta-function.

+

Fixed ControlGet List to work for ListViews where the script and the target process aren't both 32-bit or both 64-bit.

+

Fixed SendEvent with a key delay of 0; a change introduced by v1.1.05.04 caused it to be slower than intended.

+

Fixed Object.Remove(i) not adjusting keys if Object[i] doesn't exist.

+

Fixed an error in ComObjType() which may have caused unpredictable behaviour when it is called via an alternative name.

+

Fixed ExitApp to exit the thread if an OnExit subroutine prevents the script from terminating, instead of resuming execution after the block which contained ExitApp.

+

Calling a function via an object no longer acts as a barrier to exiting the thread. Consequently, if Exit is used or a runtime error occurs within a class method, the entire thread exits instead of just the function.

+

Calling a base-class method using base.Method() or similar inside a class definition no longer causes a UseUnset warning if the method doesn't exist. Consequently, instantiating an object which has instance variables no longer causes a warning about the internal base.__Init method if the base class has no instance variables.

+ +

1.1.06.02 - February 13, 2012

+

Fixed IniRead crashing when Section is omitted but Key isn't.

+

Fixed accuracy of FileGetSize with files which are 4GB or larger.

+ +

1.1.06.01 - February 12, 2012

+

Fixed MsgBox smart comma handling to require numeric Options, not Title.

+ +

1.1.06.00 - February 12, 2012

+

New features:

+

Integrated #InputLevel directive and SendLevel command by Russell Davis.

+

Integrated support for Link controls by ChrisS85.

+

Breaking changes:

+

Changed command parser to avoid trimming escaped characters such as `t or at the beginning or end of an arg.

+

Changed MsgBox's smart comma handling to improve flexibility and consistency.

+ +

Changed A_IsUnicode/A_IsCompiled to be defined as an empty string in ANSI versions/uncompiled scripts instead of being left undefined. This allows them to be checked without triggering #Warn warnings. Side effects include:

+ +

Changed Send and related commands to respect #MenuMaskKey when changing modifier keystates.

+

Other changes:

+

Changed GuiControl Choose to remove the ListBox/ComboBox/DDL's current selection when N=0.

+

Changed RegisterCallback to allow a Func object in place of a name.

+

Changed ListLines to show filenames (except when compiled).

+

Improved Run to output a process ID if possible when ShellExecuteEx is used.

+

Fixes:

+

Fixed handle leaks in RegRead.

+

Fixed x.y++ and similar to assign an empty string if x.y is non-numeric.

+

Fixed SendInput Win+L workaround causing Win key to "stick down".

+

Fixed Ahk2Exe auto-including the wrong file if an auto-include used #Include <Lib>.

+ +

1.1.05.06 - December 31, 2011

+

Fixed inc (++) and dec (--) having no effect when used on an object field containing a string.

+

Fixed inc (++) and dec (--) to cause a warning when used on an uninitialized variable.

+ +

1.1.05.05 - December 17, 2011

+

Fixed continue n misbehaving when an inner loop has no braces.

+

Fixed RegExMatchObject[Name] to work correctly with duplicate names.

+ +

1.1.05.04 - December 5, 2011

+

Fixed: Selected sub-command of ControlGet was unreliable on x64.

+

Fixed: CPU was maxed out while waiting if an underlying thread displayed a dialog (and possibly in other cases).

+ +

1.1.05.03 - November 30, 2011

+

Fixed Loop ... Until VarContainingObject.

+ +

1.1.05.02 - November 20, 2011

+

Fixed false detection of end-of-file when loading a compiled script in some cases.

+

Fixed SendInput to automatically release modifier keys when sending special characters or {U+xxxx} (which was broken by v1.1.00.01).

+

Fixed ComObjConnect to filter out non-dispatch interfaces instead of allowing the script to crash.

+

Fixed new %VarContainingClassName%().

+ +

1.1.05.01 - October 16, 2011

+

Fixed class declarations to allow directives such as #Include.

+ +

1.1.05.00 - October 8, 2011

+

Added Client coordinate mode.

+

Added object output mode for RegExMatch and RegEx callouts.

+

Added super-global declarations, which avoid the need to repeat global declarations.

+

Breaking change: Class declarations such as Class c now create a super-global variable instead of an ordinary global.

+

Added more detail to unhandled exception error dialogs.

+

Changed Gui +Owner to work even after the GUI is created.

+

Changed instance var declarations in class definitions to avoid leaving empty key-value pairs in the class object.

+

Changed #Include to use standard error message formatting when it fails (more detail; also respects ErrorStdOut).

+

Changed Throw to throw an Exception object by default when its parameter is omitted.

+

Changed format of runtime error messages slightly to improve consistency and code size.

+

Modified PCRE to use UTF-16 for input on Unicode builds, for performance.

+

Upgraded PCRE to 8.13.

+

Fixed thread not exiting as intended when an assignment in an expression fails.

+

Fixed #MaxMem preventing assignments to variables which don't require expansion.

+

Fixed inability of Try/Catch to catch COM errors.

+

Fixed GuiControlGet incorrectly treating parameter #2 as invalid in some cases.

+

Fixed input vars being resolved too soon, allowing them to be invalidated by an expression later on the same line.

+

Fixed RegEx callouts not causing matching to abort when an exception is thrown.

+

Fixed DllCall setting ErrorLevel to -4 when it should be -3.

+

Fixed While appearing twice in ListLines for its first iteration.

+

Fixed Try/Catch to allow If/Loop/For/While with no enclosing block.

+

Fixed enumerator object not being released when Until is used to break a For-loop.

+ +

1.1.04.01 - September 15, 2011

+

Fixed FileRemoveDir setting ErrorLevel incorrectly.

+ +

1.1.04.00 - September 11, 2011

+

This release contains a number of potentially script-breaking changes.

+

Added exception handling support: try/catch/throw and Exception().

+

Added StdOut mode for #Warn.

+

Added Gui +HwndVARNAME option.

+

Added Gui, New [, Options, Title].

+

Added automatic support for keyboard accelerators such as Ctrl+O in Gui menus.

+

Changed handling of #Include <Lib> when the /iLib command-line switch is present to resolve a problem with Ahk2Exe.

+

Changed GuiControl to retain the Progress control's current value when its style is changed.

+

Changed GuiControl and GuiControlGet to allow a HWND to be passed in the ControlID parameter.

+

Removed the 1GB limit from FileRead.

+

Improved error detection:

+ +

Fixed a bug affecting recursive variadic functions.

+ +

1.1.03.00 - August 28, 2011

+

Added support for GUI names.

+

Added support for identifying a GUI by its HWND.

+

Added +Parent%ParentGui% Gui option.

+

Added support for external windows as Gui owners via +Owner%HWND%.

+

Added Name sub-command for GuiControlGet.

+

Added support for ActiveX controls via the Gui command.

+

Fixed: Empty hotkey control returned "vk00".

+

Fixed: Crashes and memory leaks related to COM events/ComObjConnect.

+

Fixed: GuiControlGet OutputVar, Subcmd, %OutputVar% always failed.

+

Changed "Missing (/[/{" error messages to "Unexpected )/]/}" for greater clarity.

+

Changed ListLines to display While and Until lines which are executed each iteration.

+

Changed ~= to have higher precedence than =/!=/</>/<=/>= but lower than concat, and added it to the documentation.

+ +

1.1.02.03 - August 21, 2011

+

Fixed (Debugger): numchildren attribute did not include Object.Base.

+ +

1.1.02.02 - August 20, 2011

+

Fixed: Variable capacity was capped at 2GB on x64 builds.

+

Fixed: Last Found Window not set by #if WinExist(T).

+ +

1.1.02.01 - August 13, 2011

+

Changed A_PriorKey to exclude key-up events.

+

Fixed process name/path retrieval in certain cases, including:

+ + +

1.1.02.00 - August 6, 2011

+

Added TV_SetImageList().

+

Characters which require non-standard shift states 16 and 32 now use a fallback method instead of producing the wrong keystrokes.

+

Revised handling of dead keys to solve problems which occur when multiple scripts with hotstrings are active.

+ +

1.1.01.00 - July 30, 2011

+

Added support for instance variables in class definitions, using simple assignment syntax.

+

Removed var keyword used in class definitions; use static instead.

+

Added new built-in variables: A_ScriptHwnd and A_PriorKey.

+

Added new built-in functions: GetKeyName(), GetKeyVK(), GetKeySC() and IsByRef().

+

Added new sub-command: WinGet, OutputVar, ProcessPath.

+

Added the capability to specify a window by process name or path: ahk_exe %Name%.exe or ahk_exe %FullPath%.

+

Optimized ProcessName sub-command of WinGet.

+

Changed SetTimer to use A_ThisLabel if Label is omitted.

+

Updated ComObjConnect() to support using an object in place of a function name prefix.

+

Improved ComObjConnect() to allow the prefix/object to be updated without first disconnecting.

+

Improved parsing of continuation sections to allow expressions like (x.y)[z]() without escaping "(".

+

Replaced the method used to store script text in 32-bit compiled scripts; now consistent with 64-bit.

+

Fixed detection of AltGr in the active window's keyboard layout (on Unicode builds).

+

Fixed SendInput applying a redundant LCtrl-up some time after AltGr-up.

+ + + +

1.1.00.01 - July 17, 2011

+

Fixed: Modifier keys weren't auto-released when sending special chars.

+

Fixed: Scancode/modifier-key mapping conflicts such as sc1xx vs ^sc0xx.

+

Fixed: $ and #UseHook had no effect if used only on the second or subsequent instance(s) of a hotkey.

+

Fixed: Potential crash when returning a value from a __Delete meta-function.

+

Fixed: "Uninitialized variable" warnings were triggered by the debugger.

+

Changed: base.Method() no longer triggers a default meta-function or a warning.

+

Changed: Gui +(Ex)Style no longer hides/shows the Gui.

+

Changed the debugger to report type="undefined" for uninitialized variables.

+

Added check to avoid incorrectly sending keystrokes for characters which actually require the "hankaku" key.

+

Added support for integers as class variable names.

+

Added "Static" keyword for declaring class variables.

+ +

1.1.00.00 - May 1, 2011

+

New features:

+

Implemented basic class definition syntax.

+

Implemented the new keyword for creating a derived object.

+

Added Func() for retrieving a reference to an existing function and improved IsFunc to recognize function references.

+

Added support for ++ and -- with object fields, such as x.y[z]++.

+ +

Changes:

+

Changed __Delete to not trigger __Call.

+

Changed OnClipboardChange to use AddClipboardFormatListener when available (i.e. on Windows Vista and later) to improve reliability.

+

Auto-concat with ( is more selective, so some invalid expressions like 12(34) will no longer work.

+ +

Fixes:

+

Fixed SetTimer Label, -0 to be treated as "run-once, very soon".

+

Fixed A_MyDocuments etc. to use SHGetFolderPath instead of undocumented registry keys.

+

Fixed non-empty ExcludeText causing windows with no text to be excluded.

+ +

1.0.97.02 - April 14, 2011

+

Fixed misinterpretation of comma as an arg delimiter when enclosed in {} in an expression.

+

Fixed For-loop to set A_Index only after the Expression arg is evaluated, so that the outer loop's value can be used.

+

Fixed default script location to be based on the directory containing the EXE (as documented), not the working directory.

+

Improved load-time validation to detect invalid attempts to jump out of a function with Goto.

+ +

1.0.97.01 - April 2, 2011

+

Fixed the 64-bit build to not truncate HWNDs or SendMessage/PostMessage params to 32 bits.

+

Fixed */:: being treated as an invalid hotkey (broken since L54).

+

Fixed the icons.

+

1.0.97.00 - March 28, 2011

+

Added {key: value} as syntax sugar for Object("key", value).

+

Added [x, y, z] as syntax sugar for Array(x, y, z), which is a new function equivalent to Object(1, x, 2, y, 3, z).

+

Added slight optimization: resolve any reference to True, False, A_PtrSize or A_IsUnicode in expressions at load-time.

+

Fixed hotkey parser to treat x & ^y as an error instead of ignoring ^.

+ +

1.0.96.00 - March 21, 2011

+

New features:

+

ComObjQuery: Queries a COM object for an interface or service.

+

ComObjFlags: Retrieves or changes flags which control a COM wrapper object's behaviour.

+

ComObjCreate allows non-dispatch objects to be created if an interface identifier (IID) is given.

+

COM arrays support for-loops and the Clone() method.

+

ListVars shows the inner variant type and value of each COM wrapper object, in addition to the wrapper's address.

+

Changes:

+

When a literal integer or variable containing both a numeric string and cached binary integer is assigned to a field of an object, an integer is stored instead of a string. This particularly benefits scripts calling COM methods which accept integers but not strings, or have different behaviour depending on the type of value.

+

NULL values are now allowed with ComObjParameter for the VT_UNKNOWN and VT_DISPATCH types.

+

Improved support for Common Language Runtime (.NET) objects via COM.

+

FileRecycle should now warn before deleting a file which is too large to recycle.

+

When a SafeArray created with ComObjArray is assigned to an element of another SafeArray, a separate copy is created. This prevents the script from crashing due to a second attempt at "destroying" the array. ComObjFlags allows this behaviour to be avoided.

+

Fixes:

+

Assigning to a COM array of VT_DISPATCH or VT_UNKNOWN crashed the script.

+

Break and Continue were tolerated outside of loops in some cases.

+

Standalone carriage-return (`r) was not correctly interpreted as end-of-line.

+

MouseMove miscalculated negative coordinates with the Input and Event send modes.

+

Selecting Edit This Script from the tray menu or using the Edit command crashed the script (broken by v1.0.95).

+

Error dialogs pointed at irrelevant lines of code in some cases.

+ +

1.0.95.00 - March 12, 2011

+

All file I/O has been heavily optimized.

+

Added #Warn to assist with debugging; initial design by ac.

+

By default, if name_var contains a function name, name_var.() calls the function. This can be overidden via the default base object, as before.

+

Run supports verbs with parameters, such as Run *RunAs %A_ScriptFullPath% /Param.

+

If an operator which can accept either one operand (&x) or two numeric operands (x & y) follows a quoted literal string, auto-concat occurs and the operator is applied only to the right-hand operand. This is because quoted literal strings are always considered non-numeric and are therefore not valid input for numeric operators. For example, expressions like "x" &y and "x" ++y now work.

+

Fixed:

+ +

1.0.92.02 - January 19, 2011

+

Fixed a memory leak which occurred when the return value of an object invocation or built-in function was not used, such as file.ReadLine() or SubStr(x,y,z) alone on a line.

+

Replaced the fix from v1.0.92.01 with a better fix, which also fixes k::MsgBox(),x:=y and doesn't break if().

+

1.0.92.01 - January 18, 2011

+

Changed: FileCreateDir now sets A_LastError.

+

Fixed: GuiControl() or similar was sometimes misinterpreted as a command.

+ +

1.0.92.00 - January 13, 2011

+

Added support for compound assignments with objects, such as x.y += z.

+

Improved IniWrite in Unicode builds to prevent an empty line from appearing at the top of each new file.

+

Improved the parser to be more permissive about what can follow {/}/Else, especially when combined.

+ +

1.0.91.05 - January 1, 2011

+

Fixed: Cleanup code in COM method calls was freeing the wrong parameters.

+

Fixed (ANSI): DllCall set incorrect length for wstr parameters on output.

+

Fixed: Variadic function calls were unstable when param object was empty.

+ +

1.0.91.04 - December 29, 2010

+

Fixed (Unicode): RegExReplace omitted all text up to StartingPosition (broken by v1.0.90.00).

+ +

1.0.91.03 - December 27, 2010

+

Fixed: RegEx callout subpattern vars - broken by v1.0.90.00.

+ +

1.0.91.02 - December 26, 2010

+

COM: Added protection against NULL IDispatch/IUnknown pointers.

+

COM: Skip QueryInterface for IDispatch if VT_DISPATCH is passed explicitly.

+

Minor fix for maintainability: obj.field := var now correctly yields SYM_STRING, not SYM_OPERAND.

+ +

1.0.91.01 - December 24, 2010

+

Fixed: Unexpected results with File.Write(Str) after text-reading.

+

Fixed: UTF BOM check caused unexpected results in files without a BOM.

+

Fixed (ANSI): Parsing loops and File.ReadLine() treated Chr(255) as EOF.

+

Fixed (Unicode): RegExReplace errors where the UTF-8 and UTF-16 lengths differed.

+

Fixed: Disabling the last hook hotkey breaks Input.

+

Added: Simple optimization for RegExMatch/Replace.

+ +

1.0.91.00 - December 21, 2010

+

All changes in this release are COM-related.

+

Added: ComObjError now returns the previous setting.

+

Added: ComObjType(co) and ComObjValue(co).

+

Added: ComObjMissing().

+

Added: ComObjArray() and basic SAFEARRAY support.

+

Added: "Take ownership" parameter for ComObjParameter().

+

Changed: Values passed to COM functions via ComObjParameter are no longer freed in the process of calling the function.

+

Changed: ComObj.x() now falls back to PROPERTYGET if member 'x' is not found. This fixes for-loops for some objects.

+

Changed: Wrap unhandled variant types in an object rather than returning integer value.

+

Changed: Manage VT_UNKNOWN/VT_ARRAY lifetime automatically, by default.

+ +

1.0.90.00 - November 27, 2010

+

Fixed: UrlDownloadToFile in Unicode builds on Windows < 7.

+

Fixed: Upper-ANSI characters were sent as Alt+0 in ANSI build.

+

Fixed: File.Pos was incorrect after attempting to read past EOF.

+

Fixed: Escape sequences in #If expressions and static initializers.

+

Fixed: ClipboardAll sometimes crashed the script with certain formats.

+

Fixed: Transform HTML calculated length incorrectly for &#NNN; entities.

+

Fixed: VarSetCapacity now correctly ignores #MaxMem for ByRef variables.

+

Fixed: FileAppend,,file.txt set ErrorLevel=1 even on success.

+

Fixed: Match length was miscalculated for RegEx callouts with the P) option.

+

Integrated Sean's improvements to number handling in COM interop.

+

Optimized RegExReplace and RegExMatch in Unicode builds.

+ +

Revision 61 - October 3, 2010

+

Added: ObjClone(Object), forgotten when Object.Clone() was implemented.

+

Added: Support for RegEx Unicode properties in Unicode builds. Also upgraded PCRE to 8.10.

+

Added: Object.Remove(int, "") removes Object[int] without affecting other keys.

+

Changed: ComObj.xyz() is now always treated as a method-call.

+

Changed: Var := 123 is now left as an expression, for consistency. This makes Var := 123 and Var := (123) equivalent, whereas previously the former assigned only a string and the latter assigned both a string and a cached binary integer. In particular, this avoids some confusing type mismatch errors with COM objects.

+

Fixed: Dynamic variadic calls to functions with mandatory parameters.

+

Fixed: The final parameter of an assume-global variadic function had to be explicitly declared local.

+

Fixed: Static initializers interfering with setting of breakpoints.

+

Fixed: More pointer size-related errors with PCRE callouts on x64 builds.

+

Fixed: Input with 'M' option treated Ctrl-M (`r) as Ctrl-J (`n).

+

Fixed: Object.Remove(n) returned 0 (not "") if Object[n] didn't exist.

+ +

Revision 60 - September 24, 2010

+

Added: File.Encoding for changing or retrieving the codepage in use by a File object.

+

Added: Variadic functions and function-calls and indirect mode for callbacks.

+

Added: Object.Clone()

+

Changed: ByRef parameters no longer require the caller to supply a variable.

+

Changed: Obj.foo := "" now frees foo's contents as originally intended (but still doesn't remove the field).

+

Changed: OnMessage functions now tolerate optional and ByRef parameters.

+

Changed: RegisterCallback now enables execute access on callbacks in 32-bit builds (already did in 64-bit builds).

+

Changed: RegisterCallback now treats explicit ParamCount="" as omitted.

+

Fixed: For-loop was treating non-expression "0" as true for scripted enumerators.

+

Fixed: ComEvent (ComObjConnect) not working on the ANSI build.

+

Fixed: ComEvent (ComObjConnect) not correctly backing up/restoring local vars when calling a function which is already running.

+

Fixed: Buffer overflow in A_EndChar when there is no end char.

+

Fixed: Func->mNextFunc not inititialized to NULL (used only by LowLevel scripts).

+

Debugger: Added the capability to retrieve an object's contents (with a supported debugger client).

+

Debugger: Fixed a few bugs.

+ +

Revision 59 - September 12, 2010

+

Fixed: #If expression should now evaluate each expression at most once per keypress in all cases.

+

Changed: SplashImage uses common image-loading routines; now supports PNG and similar, but results may differ from before for icon files.

+

Added: For x,y in z.

+

Added: Loop .. Until expression, usable with any Loop or For-loop.

+

Added: Named loops; continue outer_loop, break 2, etc.

+

Debugger: Encode stdout and stderr packets as UTF-8.

+

Debugger: Allow user to Abort, Retry or Ignore when the initial connection fails.

+

Debugger: Allow attaching a debugger client by sending the script a registered window message.

+

Debugger: Allow detaching debugger client by sending the "detach" DBGp command.

+ +

Revision 58 - September 5, 2010

+

Added: static var := expression.

+

Revision 57 - September 4, 2010

+

Fixed Str*, WStr* and AStr* DllCall return types on x64.

+

Added functionality to InStr to bring it in line with StringGetPos:

+ +

Added #include <LibName> for explicitly including a script from a function library folder.

+

Added functionality to IniRead and IniWrite allowing an entire section to be read or written.

+

Added functionality to IniRead allowing a list of section names to be retrieved.

+

Added support for custom verbs to Run/RunWait: Run *verb file.

+

Made improvements to the way Run/RunWait extracts the action and its parameters from the Target parameter.

+

Changed NumGet/NumPut to allow Offset to be omitted entirely since Type is always non-numeric.

+

Removed the restriction that a label can't point to the end of a block.

+ +

Revision 56 - August 29, 2010

+

Added support for x64 compiled scripts. Requires Ahk2Exe_L and x64 AutoHotkeySC.bin.

+

Fixed: Deref operator (*addr) rejected addresses outside 32-bit range.

+

Fixed: #If expression memory allocation error on x64.

+

Fixed: Custom hotstring end chars with code points greater than U+00FF.

+

Fixed: Special characters being sent out of sequence by SendInput/Play.

+

Fixed: */ being discarded in continuation sections (see L54).

+ +

Revision 55 - August 19, 2010

+

Fixed: GroupActivate not setting ErrorLevel=1 if no Label was specified.

+

Fixed: Tab controls in x64 build.

+

Fixed: String-copy mode of StrPut when length is omitted; broken by L53.

+

Fixed: Data-alignment issues in x64 builds.

+

Changed: Set A_LastError for more File* commands to assist debugging.

+

Includes FileAppend, FileRead, FileReadLine, FileDelete, FileCopy, FileMove, FileGetAttrib/Time/Size/Version and FileSetAttrib/Time.

+

Excludes FileCopyDir, FileRecycle, FileMoveDir, FileRemoveDir, FileRecycleEmpty, FileCreateDir and FileInstall as the APIs used do not consistently set or return a Win32 error code.

+ +

Revision 54 - August 15, 2010

+

Fixed: RunAs in Unicode build. [jackieku]

+

Fixed: RegisterCallback in x64 build. [fincs]

+

Fixed: Executables failing to run on Win2k and WinXP prior to SP2. Win2k requires SP4 and updates (probably KB 816542). XP not tested.

+

Fixed: Dialogs such as MsgBox became unresponsive when interrupted by another script thread. Message filter/workaround added in L45 had to be removed. [Bug report]

+

Fixed: Multi-byte characters in default ANSI codepage; this was also causing a memory leak. [Bug report]

+

Fixed: ComObject now allows purely numeric property/method names. [Bug report]

+

Enhanced usability and capabilities of FileOpen/File object.

+ +

Changed: GroupAdd's Label parameter now applies to the whole group. [Discussion]

+

Changed: GroupActivate sets ErrorLevel on success/failure. (Same thread as above.)

+

Changed: */ at the beginning of a line is ignored if there was no /*. [Discussion]

+

Removed ToCodePage and FromCodePage subcommands of Transform.

+ +

Revision 53 - August 8, 2010

+ +

Merged AutoHotkey64 - COM support and x64 compatibility.

+

x64 (changes since AutoHotkey64):

+ +

COM (changes since AutoHotkey64):

+ +

Implemented common syntax validation code for enumerators. Enum[] and Enum.Next() are now supported with or without parameters. Enum[]:=val and similar obscure forms which worked in AutoHotkey_COM/AutoHotkey64 are not allowed.

+

"Ptr" type is still signed (unlike AutoHotkey64), for maximum flexibility and consistency.

+

Other changes:

+

Added: Object.HasKey(key).

+

Added: Object(obj) increments obj's reference count and returns its address.

+

Added: ObjAddRef() and ObjRelease().

+

Fixed: A_ThisHotkey now has the expected value when used with #If.

+

Fixed: RunAs in Unicode build (fixed by jackieku).

+

Changed: Default script codepage for ANSI builds is now CP0 (ANSI).

+

Changed: x.y[] is now equivalent to (x.y)[] rather than x["y"].

+

Changed: Built-in methods can now be called with or without the underscore prefix (e.g. obj.MaxIndex() or obj._MaxIndex()).

+ +

Revision 52 (again) - July 10, 2010

+

Added support for built-in and environment variables in double-derefs.

+

Improved support for multi-byte characters in certain codepages (previously only 932, 936, 949, 950 and 1361 were supported).

+

Fixed: StrPut failed for codepages which don't support WC_NO_BEST_FIT_CHARS, such as UTF-7.

+

Fixed: Double-deref as object - literal%var%.literal.

+

Fixed: StrPut("", Encoding) null-terminated an invalid address.

+ +

Revision 52 - June 12, 2010

+

Fixed: ObjRemove's Key parameter is now optional, as with Object._Remove.

+

Fixed: Files were improperly locked while reading, unlike in older versions.

+

Fixed: Uppercase Hex format caused negative integers to become unsigned.

+

Fixed: RegExMatch was corrupting output array items when specific conditions were met. See bug report.

+ +

Revision 51 - April 11, 2010

+

Changed: Use <EXENAME>.ahk instead of AutoHotkey.ini or AutoHotkey.ahk.

+

Changed: Default to UTF-8 for script files; override with /CPnnn.

+

Fixed: Unpause when the script exits so that object __Delete meta-functions can run.

+ +

Revision 50 - March 27, 2010

+

Improved flexibility of Object._Insert.

+ +

Improved flexibility of Object._Remove.

+ +

Added file share mode flags to FileOpen [by jackieku].

+

Fixed: 'P' option of RegExMatch incorrectly output 1 for subpatterns which did not match anything.

+

Fixed: Object._SetCapacity(key,n) was not null-terminating in some cases.

+

Fixed: StatusBarGetText returned only half of the text in Unicode builds.

+ +

Revision 49 - March 14, 2010

+

Added obj._NewEnum().

+

Added ObjMethod(obj) for each built-in obj._Method().

+

Changed: ObjSet/Get/Call can no longer be called/overridden by script.

+

Fixed: Potential crash caused by VK_PACKET check added in L48.

+

Fixed: Character codes in VK_PACKET events were potentially misinterpreted as scancodes.

+

Fixed: ExcludeText was ineffective after the first matching control.

+ +

Revision 48 - February 21, 2010

+

Fixed: Standalone obj.() was not recognized as a valid expression.

+

ControlSend now uses WM_CHAR to support characters which have no associated keycode. For instance, this applies to "…" (en-US), "∞" in a Unicode build and {U+221e} in either build.

+

KeyHistory now shows the full 16-bit character code for VK_PACKET (VK=E7) events. Send may indirectly cause these to be generated for Unicode characters.

+ +

Revision 47 - February 13, 2010

+

Fixed (Unicode): ControlGet,List with ListView controls.

+ +

Revision 46 - February 11, 2010

+

Added A_FileEncoding, which returns the current default file encoding.

+

Added StrPut and extended StrGet with additional features.

+ +

Revision 45 - February 8, 2010

+

Added _GetAddress; _SetCapacity/_GetCapacity may now operate on a given field. [more info]

+

Added workaround for WM_PAINT infinite loop often caused by subclassing.

+

Allow obj.() as a means to call the default method of an object; equivalent to obj[""]().

+

Dev: Added solution and project files for MSBuild 4.0 & VS2010. [more info]

+

Fixed (Unicode): 'Running' column in ListHotkeys.

+ +

Revision 44 - February 7, 2010

+

Fixed: Attempting to set "nothing" crashed the script. For instance, x[]:=z.

+

Fixed (Unicode): Unable to find default script (Documents\AutoHotkey.ahk).

+

Fixed (Unicode): A_Desktop, A_ProgramFiles and several other built-in variables which read their value from the registry caused strings to be incorrectly terminated.

+

Fixed (ANSI): Characters in the range 0x80-0xFF couldn't be found by InStr or StringReplace.

+

Changed (ANSI): Treat ToCodePage/FromCodePage like other unsupported/invalid subcommands.

+ +

Revision 43 - January 29, 2010

+

Fixed: obj.Func() resulting in a random integer when it should be an empty string.

+ +

Revision 42 - January 28, 2010

+

Merged with AutoHotkeyU.

+

Numerous bug-fixes and improvements, some relating to the merge.

+ +

Revision 41 - December 20, 2009

+

Fixed: Floating-point numbers were equivalent to an empty string when used as keys in objects. They are now converted to numeric strings in the current float format, as originally intended.

+ +

Revision 40 - December 13, 2009

+

Changed meta-functions and multi-param behaviour to improve flexibility. Meta-functions are now invoked *before* searching for an appropriate field in each base object; however, values in x.base will override meta-functions defined in x.base.base. Chaining meta-functions (inheritence) is now possible by avoiding "Return"

+

Improved Default Base functionality to be more consistent with real objects.

+

Changed (Debugger): While stepping through code, skip all braces except those which end a function.

+

Changed (Debugger): When stepping onto the hidden "Exit" at end of the script, consider it to be *below* the last physical line to avoid confusion.

+ +

Revision 39 - December 2, 2009

+

Fixed (Debugger): Error in Base64 decoding used by property_set.

+ +

Revision 38 - November 17, 2009

+

Added: #MenuMaskKey directive to change which key is used to mask Alt/Win keyup events. See this thread for background information.

+

Changed: If x[1,2]:=3 creates an object for x[1], it's base is no longer automatically set to x.base. See the documentation for a method of controlling this behaviour.

+ +

Revision 37 - November 7, 2009

+

Added: Support for obj[method_name](params) object-call syntax.

+ +

Revision 36 - November 4, 2009

+

Changed: If x.y or similar is immediately followed by an open-bracket ([), the right-most identifier preceding the bracket is treated as the first parameter of the operation. For instance, a.b.c[d] is equivalent to ObjGet(a.b,"c",d) and x.y[z]:=v is equivalent to ObjSet(x,"y",z,v). Previously each sub-expression preceding a bracket was evaluated separately.

+

Changed: If a method-call such as x.y() is followed immediately by an assignment, the parentheses are treated as brackets. For instance, x.y(z):=v is now equivalent to ObjSet(x,"y",z,v).

+

Fixed: If(expr) and While(expr) with no delimiting space or comma.

+ +

Revision 35 - October 25, 2009

+

Fixed: Standalone expressions beginning with two or more "dots", such as x.y.z(). (Broken by L34.) Note that '(' or '[' or ':=' is still required.

+ +

Revision 34 - October 24, 2009

+

Changed: Setting a value within an object to an empty string now stores the empty string rather than removing the key-value pair from the object. _Remove can still be used to completely remove key-value pairs.

+

Changed: Command names must be terminated with a space, tab or comma. The following characters no longer bypass this requirement: <>:+-*/!~&|^[]. For instance, syntax errors such as MsgBox< foo and If!foo are now caught at load-time.

+

Fixed: Return now properly handles expressions which result in a variable containing an object. For instance, Return x:=y, Return (x), Return x,... and similar should work now (Return x already worked).

+

Fixed: Multi-parameter get/set did not correctly support meta-functions for multiple objects (such as for x and x[y] in the expression x[y,z]).

+

Fixed: Cascading object-assignments such as the x[y]:=z in r:=x[y]:=z could not yield numbers or objects - broken by L33.

+

Fixed: x._Remove(y) crashed the script or removed the wrong item if x did not contain y.

+

Fixed: x.=y, if x.y=... and similar. May affect other expressions.

+

Fixed: Standalone ternary expressions no longer requires spaces. For instance, x? F(1) : F(2) is now allowed.

+

Debugger: On script exit, disconnect debugger *after* releasing objects to allow debugging of __Delete handlers.

+ +

Revision 33 - October 3, 2009

+

Fixed: Local variables were not automatically freed for functions which return objects or pure numbers.

+

Fixed: Two separate reference-counting errors related to ternary operator and Object().

+

Fixed: If a string returned by a scripted object function was assigned directly to a variable, the variable's length was set incorrectly.

+

Fixed: If the last operation in an expression retrieved a string from a temporary object, the object and string were freed prematurely.

+

Fixed: Numeric strings with special formatting were not preserved when returned from a function via a variable or passed to a recursive function.

+

Fixed: If the final result of an expression (other than for Return) is an object, correctly yield an empty string instead of silently aborting the thread.

+

Fixed: __Delete meta-functions sometimes overwrote temporary values in the deref buffer.

+

Added: An address retrieved via &object may be cast back into an object reference by using Object(address).

+ +

Revision 32 - September 26, 2009

+

Fixed: Send/PostMessage crash when less than three parameters were specified.

+ +

Revision 31 - September 26, 2009

+

Added: Object/array support and numerous minor changes to make this possible.

+

Added: Support for While(expression) with no delimiting space.

+

Added: Trim, LTrim, RTrim.

+

Added: A ~= B; equivalent to RegExMatch(A, B). May be removed in a future revision.

+

Fixed: An incompatibility with LowLevel.

+

Changed: Characters [, ] and ? are no longer valid in variable names. Consequently, ? (ternary) no longer requires a space on either side.

+

Changed: Optional parameters may now be omitted at any position in the parameter list of a non-dynamic function call. Since this works by automatically inserting the parameter's default value at load-time, it is not supported or allowed for dynamic function-calls.

+

Debugger: Various minor changes to make program flow easier to follow while stepping through code.

+

Optimization: If DllCall's first parameter is a literal string which identifies a function already present in memory, it is replaced with the actual address of the function.

+

Updated from v1.0.48.03 to v1.0.48.04.

+ +

Revision 30 - May 31, 2009

+

Updated from v1.0.48.02 to v1.0.48.03.

+ +

Revision 29 - May 2, 2009

+

All supported image formats may now be used as menu icons. Currently it is necessary to specify "actual size" when setting the icon to preserve transparency on Windows Vista and later. For example:

+
Menu, Icon, MenuItemName, Filename.png,, 0
+ +

Revision 28 - May 2, 2009

+

Improved average-case performance of dynamic function calls by implementing binary search for function name look-ups. This change also applies to other areas, such as load-time resolution of function references in expressions and run-time resolution by OnMessage, RegisterCallback, etc.

+ +

Revision 27 - April 26, 2009

+

Updated from v1.0.48.00 to v1.0.48.02.

+ +

Revision 26 - April 11, 2009

+

Fixed: Menu icons were not drawn on items which have sub-menus if owner-drawing was in use.

+

Fixed: Menu icons were not freed if all menu items were deleted at once.

+

Changed (Source): Renamed AutoHotkey.sln to AutoHotkey_L.sln to allow VS window to be identified more easily.

+ +

Revision 25 - March 30, 2009

+

Fixed: Send {U+xxxx} correctly sets modifier key-state as with any normal key.

+

Fixed: Send {U+..xx} no longer triggers hotkey SCxx.

+ +

Revision 24 - March 30, 2009

+

Added: Support for Send {U+xxxx}. SendInput() is used where available for proper unicode support, otherwise falls back to Alt+Numpad.

+ +

Revision 23 - March 30, 2009

+

Fixed: GuiControl, Enable/Disable now only resets focus if the focused control was disabled.

+ +

Revision 22 - March 26, 2009

+

Optimized If var [not] in/contains MatchList, especially for long lists containing shorter fields.

+ +

Revision 21 - March 16, 2009

+

Minor optimizations to While. [thanks Chris]

+

Fixed (Debugger): Revisions 19 and 20 omitted timer threads from the call stack.

+

Fixed (Debugger): XML-reserved characters were not escaped in most situations.

+

Fixed (Debugger): Incorrect command and transaction_id were used in the final response before exiting the script.

+ +

Revision 20 - February 27, 2009

+

Changed: If an icon cannot be loaded with the new method, fall back to the old method.

+ +

Revision 19 - February 26, 2009

+

Added: Gui, Font, qN option to set font quality/control anti-aliasing, where N is between 0 and 5.

+

Fixed: IL_Add now loads icons at the most appropriate size when multiple sizes exist.

+

Merged with AutoHotkey v1.0.48, introducing bug fixes, optimizations and other changes by Chris. Some AutoHotkey_L features were integrated into the mainstream release; changes to these features since previous revisions are as follows:

+ + +

Revision 18 - February 21, 2009

+

Fixed: Incomplete bug-fix in previous revision causing concat followed by assignment to skip the rest of the expression in some cases.

+ +

Revision 17 - February 20, 2009

+

Added: Menu icons via Icon and NoIcon sub-commands of the Menu command.

+

Changed: Negative icon numbers can now be used to indicate a resource ID within an executable.

+

Changed: Set default style of menus to include MNS_CHECKORBMP.

+

Changed: Load both small and large versions of custom tray icons to allow the correct icons to be shown in the appropriate places.

+

Fixed: Loading of icons from executable files at sizes other than the system small/large.

+ +

Revision 16 - February 4, 2009

+

Fixed: Deleting a menu item partially deleted its associated sub-menu.

+ +

Revision 15 - February 1, 2009

+

Fixed: SetFormat's presence in a *compiled* script was not disabling binary number write-caching. SetFormat should now work correctly in compiled scripts.

+ +

Revision 14 - February 1, 2009

+

Numerous bug-fixes and optimizations by Chris (pre-v1.0.48 beta).

+

Added: Support for regex callouts and the auto-callout option 'C'.

+

Changed: A_AhkVersion now includes the revision number. For instance, this is 1.0.47.07.L14.

+

Fixed: HWND's/window ID's were sign-extended to 64-bit. For instance, 0xb482057e became 0xffffffffb482057e.

+ +

Revision 13 - November 29, 2008

+

Fixed: Invalid DllCall types were treated as INT in some build environments.

+

Added: Workaround for GuiEscape issue when disabling focused control.

+

Changed version info: InternalName, ProductName and FileDescription are now "AutoHotkey_L" instead of "AutoHotkey".

+ +

Revision 12 - September 6, 2008

+

Fixed: Potential access violation when using property_get on a built-in variable. -- DBGP

+ +

Revision 11 - September 5, 2008

+

Fixed: Remove checksum from AutoHotkeySC.bin via post-build script (AutoHotkey must be installed).

+

Added: .L suffix to A_AhkVersion.

+

Added: Preliminary support for DBGp (interactive debugging).

+ +

Revision 10 - August 2, 2008

+

Fixed: WheelLeft/WheelRight support, which was broken in revision 9.

+ +

Revision 9 - July 29, 2008

+

Fixed: Allow Break/Continue in While.

+

Fixed: TrayTip in non-English Windows and possibly other side-effects of using Vista headers.

+ +

Revision 8 - July 27, 2008

+

Added: #IfTimeout directive to set the timeout for evaluation of #If expressions, in milliseconds. Default is 1000.

+

Added: Assume-static mode for functions. "Static" must precede any local/global variable declarations.

+

Added: One-true-brace support for While.

+

Changed: While now sets A_Index to the iteration about to begin.

+ +

Revision 7 - July 26, 2008

+

Added: IsFunc(FuncName) - Returns a non-zero number if FuncName exists in the script or as a built-in function.

+ +

Revision 5 - July 19, 2008

+

Cleaned up obsolete references to test scripts.

+

Added basic default test script.

+ +

Revision 4 - July 18, 2008

+

Added: #if (expression) - Similar to #IfWinActive, but for arbitrary expressions.

+

Added: WheelLeft, WheelRight - Support for WM_MOUSEHWHEEL, which was introduced with Windows Vista. (Requires Vista.)

+

Added: While, expression - Loop while a condition is true.

+

Added: A_IsPaused - True if the underlying thread is paused.

+

Added: A_IsCritical - True if the current thread has been marked uninterruptible by the "Critical" command.

+

Changed: Allow any number of parameters to be passed in dynamic function calls.

+

Fixed: Access Violation caused by WinGetClass and subclassed windows.

+

Fixed: Access Violation caused by empty dynamic function references.

+ +

 

+ + diff --git a/src/docs/AHKL_DBGPClients.htm b/src/docs/AHKL_DBGPClients.htm new file mode 100644 index 0000000..f5d3645 --- /dev/null +++ b/src/docs/AHKL_DBGPClients.htm @@ -0,0 +1,113 @@ + + +Debugging Features + + + + + + + +

µð¹ö°Å Ŭ¶óÀ̾ðÆ®

+ +

Ãß°¡ µð¹ö±ë Ư¡Àº DBGp¸¦ ÅëÇÏ¿© Áö¿øÇÕ´Ï´Ù. DBGp´Â ÇÁ·Î±×·¡¹Ö ¾ð¾î¿Í »ç¿ëÀÚ »çÀÌÀÇ µð¹ö°Å UI Åë½ÅÀ» À§ÇÑ °øÅë µð¹ö°Å ÇÁ·ÎÅäÄÝÀÔ´Ï´Ù. ´õ ÀÚ¼¼ÇÑ °ÍÀº »óÈ£´ëÈ­ µð¹ö±ëÀ» ÂüÁ¶ÇϽʽÿÀ. ¿ÀÅäÇÖÅ°¿Í ȣȯµÈ´Ù°í ¾Ë·ÁÁø "Ŭ¶óÀ̾ðÆ®"¸¦ ÀÌ ÆäÀÌÁö¿¡ ³ª¿­ ÇÕ´Ï´Ù.

+ +

SciTE4AutoHotkey

+

+SciTE4AutoHotkey´Â ¹«·áÀÇ, SciTE-±â¹ÝÀÇ AutoHotkey ½ºÅ©¸³Æ® ÆíÁý±âÀÔ´Ï´Ù. DBGp Áö¿ø ¿Ü¿¡µµ, ±¸¹® °­Á¶, ÄÝÆÁ/¸Å°³º¯¼ö Á¤º¸ ±×¸®°í ÀÚµ¿ ¿Ï¼º, ±×¸®°í ±âŸ À¯¿ëÇÑ ÆíÁý Ư¡°ú ½ºÅ©¸³Æà µµ±¸¸¦ Áö¿øÇÕ´Ï´Ù.

+ +

µð¹ö±ë Ư¡Àº ´ÙÀ½°ú °°½À´Ï´Ù:

+ +

http://fincs.ahk4.net/scite4ahk/

+ +

XDebugClient

+

+XDebugClient´Â °£´ÜÇÑ ¿ÀÇ ¼Ò½º Àü¹æ DBGp Ŭ¶óÀ̾ðÆ®·Î¼­ .NET Framework 2.0¿¡ ±â¹ÝÇÏ°í ÀÖ½À´Ï´Ù. XDebugClient´Â ¿ø·¡ Xdebug·Î PHP¸¦ À§ÇØ ¼³°èµÇ¾úÁö¸¸, AutoHotkey¿Í ȣȯµÇµµ·Ï ¸ÂÃã ºôµå¸¦ ÇÏ¿´½À´Ï´Ù.

+

º¯°æ:

+ +

³»·Á¹Þ±â: ÀÌÁøÆÄÀÏ; ¼Ò½º ÄÚµå (´ÙÀ½µµ ÂüÁ¶ SharpDevelop, Dockpanel ¸ðµë ±×¸®°í Advanced Treeview.)

+

»ç¿ë¹ý:

+ +

Ư¡:

+ +

¹®Á¦:

+ + +

Notepad++ DBGp Ç÷¯±×ÀÎ

+

+Notepad++ÀÇ Ç÷¯±×ÀÎÀ¸·Î »ç¿ëÇÒ ¼ö ÀÖ´Â DBGp Ŭ¶óÀ̾ðÆ®°¡ ÀÖ½À´Ï´Ù. PHP ¿ëÀ¸·Î µðÀÚÀεǾúÁö¸¸, AutoHotkey¿Íµµ Àß ÀÛµ¿ÇÕ´Ï´Ù.

+

³»·Á¹Þ±â: Notepad++ Ç÷¯±×ÀÎ µð·ºÅ丮¸¦ ÂüÁ¶ÇϽʽÿÀ.

+

»ç¿ë¹ý:

+ +

Ư¡:

+ +

¹®Á¦:

+ + +

½ºÅ©¸³Æ®-±â¹ÝÀÇ Å¬¶óÀ̾ðÆ®

+

½ºÅ©¸³Æ®-±â¹ÝÀÇ DBGp ¶óÀ̺귯¸®¿Í ¿¹Á¦ Ŭ¶óÀ̾ðÆ®´Â GitHub¿¡¼­ ¾òÀ» ¼ö ÀÖ½À´Ï´Ù.

+

GitHub: Lexikos / dbgp

+ +

¸í·É Á٠Ŭ¶óÀ̾ðÆ®

+

¸í·É Á٠Ŭ¶óÀ̾ðÆ®´Â xdebug.org¿¡¼­ ¾òÀ» ¼ö ÀÖ½À´Ï´Ù. ±×·¸Áö¸¸ ÀÌ°ÍÀº ´ëºÎºÐÀÇ »ç¿ëÀÚ¿¡°Ô ¾Ë¸ÂÁö ¾Ê½À´Ï´Ù. ¿Ö³ÄÇϸé DBGp (ÇÁ·ÎÅäÄÝ)¸¦ ±íÀÌ ÀÌÇØÇϱ⸦ ¿ä±¸Çϱ⠶§¹®ÀÔ´Ï´Ù.

+ +

±âŸ

+

¼ö ¸¹Àº DBGp Ŭ¶óÀ̾ðÆ®°¡ ÀÖÁö¸¸, AutoHotkey¿Í Å×½ºÆ®ÇØ º¸Áö ¾Ê¾Ò½À´Ï´Ù. ÀÚ¼¼ÇÑ ¸ñ·ÏÀº Xdebug: ¹®¼­¸¦ ÂüÁ¶ÇϽʽÿÀ.

+ + + diff --git a/src/docs/AHKL_Features.htm b/src/docs/AHKL_Features.htm new file mode 100644 index 0000000..bef8bbc --- /dev/null +++ b/src/docs/AHKL_Features.htm @@ -0,0 +1,176 @@ + + +AutoHotkey_L New Features + + + + + +

AutoHotkey_L New Features

+ +

ÀÌ ¹®¼­´Â AutoHotkey_L ºÐ±â¿¡ Ãß°¡µÈ Ư¡À» ±â¼úÇÕ´Ï´Ù. ÀÌ ºÐ±â´Â Áö±ÝÀº °£´ÜÇÏ°Ô "AutoHotkey 1.1"¶ó°í ºÎ¸¨´Ï´Ù.

+

ÁÖÀÇ: ÀÌ ¹®¼­´Â ¸î ³â°£ ¹æÄ¡µÇ¾î ¿ÔÀ¸¸ç ÃÖ±ÙÀÇ º¯È­·Î ¾ø¾îÁö°Å³ª ´õ Ãß°¡µÈ °ÍÀÌ ÀÖÀ» ¼ö ÀÖ½À´Ï´Ù.

+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Á¦¾î È帧 
Break LoopLabel³»Æ÷ ȸµ¹À̷κÎÅÍ ±íÀÌ¿¡ »ó°ü¾øÀÌ ºüÁ® ³ª¿É´Ï´Ù.
Continue LoopLabelȸµ¹À̸¦ °è¼ÓÇÕ´Ï´Ù. ±íÀÌ¿¡ »ó°üÀÌ ¾ø½À´Ï´Ù.
For x,y in z°´Ã¼ÀÇ ³»¿ëÀ» ȸµ¹ÀÌÇÕ´Ï´Ù.
Loop UntilÁ¶°ÇÀÌ ÂüÀÎ µ¿¾È ȸµ¹ÀÌ ÇÕ´Ï´Ù. ¾î¶² Á¾·ùÀÇ È¸µ¹ÀÌ¿¡µµ Àû¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù.
Try...Catch...Finally±¸Á¶È­ µÈ ¿¹¿Ü 󸮸¦ Á¦°øÇÕ´Ï´Ù.
Throw¿¹¿Ü¸¦ ´øÁý´Ï´Ù.
¸í·É¾î 
FileEncoding±âº» ÀÎÄÚµùÀ» ¼³Á¤ÇÕ´Ï´Ù: FileRead, FileReadLine, Loop Read, FileAppend, ±×¸®°í FileOpen.
´ÙÀ½ ÂüÁ¶: ÅؽºÆ® ÀÎÄÚµù
Gui¾Æ·¡ÀÇ GUI °³¼±À» ÂüÁ¶ÇϽʽÿÀ.
IniRead/Write/DeleteÀüü ¼½¼ÇÀ» Àаí, ¾²°í, Áö¿ó´Ï´Ù. ¶Ç´Â ¸ðµç ¼½¼Ç À̸§ ¸ñ·ÏÀ» ¿­¶÷ÇÕ´Ï´Ù.
Menu, Icon¸Þ´º ¾ÆÀÌÅÛÀÇ ¾ÆÀÌÄÜÀ» ¼³Á¤Çϰųª Á¦°ÅÇÕ´Ï´Ù.
Run¸Å°³º¯¼ö¸¦ Çؼ®Çϵµ·Ï °³¼±µÇ¾ú½À´Ï´Ù.
SendInput {U+nnnn}À¯´ÏÄÚµå ¹®ÀÚ¸¦ Àü¼ÛÇÕ´Ï´Ù. À¯´ÏÄÚµå ¹®ÀÚ´Â À¯´ÏÄÚµå ºôµå¿¡¼­ Á÷Á¢ÀûÀ¸·Î »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù.
SendLevelÇÖÅ°¿Í ÇÖ½ºÆ®¸µÀÌ ¹«½ÃÇÒ ÀÎÀ§ÀûÀÎ Å°º¸µå À̺¥Æ®¿Í ¸¶¿ì½º À̺¥Æ®¸¦ Á¦¾îÇÕ´Ï´Ù.
SetFormat, IntegerFast, h|H¼Ò¹®ÀÚ³ª ´ë¹®ÀÚ·Î ½ÊÀ°Áø ¼öÀÇ Çü½ÄÀ» ¼³Á¤ÇÕ´Ï´Ù.
SetRegView, RegView·¹Áö½ºÆ®¸® ¸í·É¾î°¡ 32-ºñÆ® ½ºÅ©¸³Æ®¿¡¼­ 64-ºñÆ® ·¹Áö½ºÆ®¸® ºä¿¡ ¶Ç´Â ±× ¹Ý´ë·Î Á¢±ÙÇϵµ·Ï ÇØ ÁÝ´Ï´Ù.
Transform, HTMLÄÚµå ÆäÀÌÁö³ª HTML º¯È¯À» ¼öÇàÇÕ´Ï´Ù.
WinGet, ..., ProcessPathÁÖ¾îÁø âÀ» ¼ÒÀ¯ÇÑ ÇÁ·Î¼¼½ºÀÇ À̸§°ú Àüü °æ·Î¸¦ ¿­¶÷ÇÕ´Ï´Ù.
Áö½Ã¾î 
#If expression#IfWinActive¿Í ºñ½ÁÇÏÁö¸¸, ¾î¶² Ç¥Çö½Ä¿¡µµ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù.
#IfTimeout#If Ç¥Çö½Ä Çϳª¸¦ Æò°¡ÇÏ´Â µ¥ ¼ÒºñµÉ ÃÖ´ë ½Ã°£À» ¼³Á¤ÇÕ´Ï´Ù.
#MenuMaskKeyWin À̺¥Æ®³ª Alt Å°¶À À̺¥Æ®¸¦ ¸¶½ºÅ©Çϱâ À§ÇØ »ç¿ëµÉ Å°¸¦ º¯°æÇÕ´Ï´Ù.
#Include <Lib>½ºÅ©¸³Æ® ÆÄÀÏÀ» ÇÔ¼ö ¶óÀ̺귯¸® Æú´õ·ÎºÎÅÍ Æ÷ÇÔÇÕ´Ï´Ù.
#InputLevelÇÖ½ºÆ®¸µ°ú ÇÖÅ°°¡ ¹«½ÃÇÒ Å°º¸µå À̺¥Æ®¿Í ¸¶¿ì½º À̺¥Æ®¸¦ Á¦¾îÇÕ´Ï´Ù.
#Warn¼±ÅÃµÈ Á¶°Ç¿¡ ´ëÇÏ¿© °æ°í¸¦ ÄÑ°í ²ü´Ï´Ù. ÀÌ ¿¡·¯´Â °³¹ßÀÚ ¿¡·¯¸¦ °¡¸®Åµ´Ï´Ù.
ÇÔ¼ö 
ComObj... --
ComObjActive
ComObjEnwrap/Unwrap
ComObjParameter
ComObjType

µî·ÏµÈ COM °´Ã¼¸¦ ¿­¶÷ÇÕ´Ï´Ù.
COM °´Ã¼¸¦ Æ÷ÀåÇϰųª/DZ´Ï´Ù.
¸Å°³º¯¼ö·Î °Ç³Ú °ª°ú À¯ÇüÀ» Æ÷ÀåÇÕ´Ï´Ù.
COM °´Ã¼ÀÇ À¯Çü Á¤º¸¸¦ ¿­¶÷ÇÕ´Ï´Ù.
ComObjArrayCOM¿¡ »ç¿ëÇϱâ À§ÇØ SAFEARRAY¸¦ »ý¼ºÇÕ´Ï´Ù.
ComObjConnectCOM °´Ã¼ÀÇ À̺¥Æ®¸¦ ÁÖ¾îÁø Á¢µÎ»ç¸¦ °¡Áø ÇÔ¼ö¿¡ ¿¬°áÇÕ´Ï´Ù.
ComObjCreateCOM °´Ã¼¸¦ »ý¼ºÇÕ´Ï´Ù.
ComObjErrorCOM ¿¡·¯ÀÇ °íÁö¸¦ ÄÑ°í ²ü´Ï´Ù.
ComObjFlagsCOM Æ÷Àå °´Ã¼ÀÇ ÇàÀ§¸¦ Á¦¾îÇÏ´Â Ç÷¡±×¸¦ ¿­¶÷Çϰųª º¯°æÇÕ´Ï´Ù.
ComObjGetCOM ÄÞÆ÷³ÍÆ®°¡ Á¦°øÇÏ´Â °´Ã¼ ÁÖ¼Ò¸¦ µ¹·ÁÁÝ´Ï´Ù.
ComObjQueryCOM °´Ã¼¿¡ ÀÎÅÍÆäÀ̽º ¶Ç´Â ¼­ºñ½º¸¦ ÁúÀÇÇÕ´Ï´Ù.
ComObjTypeÀ¯Çü Á¤º¸¸¦ COM °´Ã¼·ÎºÎÅÍ ¿­¶÷ÇÕ´Ï´Ù.
ComObjValueCOM Æ÷Àå °´Ã¼¿¡ ÀúÀåµÈ °ªÀ̳ª Æ÷ÀÎÅ͸¦ ¿­¶÷ÇÕ´Ï´Ù.
ExceptionThrow¿¡ ´ëÇÏ¿© ¿¹¿Ü °´Ã¼¸¦ »ý¼ºÇÕ´Ï´Ù (È£Ãâ ½ºÅÿ¡ Á¦ÇÑÀûÀ¸·Î Á¢±ÙÀ» Á¦°øÇÕ´Ï´Ù).
FileOpen°´Ã¼-ÁöÇâÀû ÆÄÀÏ ÀÔ/Ãâ·ÂÀ» Á¦°øÇÕ´Ï´Ù.
FuncÇÔ¼ö¸¦ °¡¸®Å°´Â ÂüÁ¶¸¦ ¿­¶÷ÇÕ´Ï´Ù.
GetKeyName/VK/SCÅ°ÀÇ °¡»ó Å° Äڵ峪 ½ºÄµ ÄÚµå ¶Ç´Â ÅؽºÆ®³ª À̸§À» ¿­¶÷ÇÕ´Ï´Ù.
InStr ¿ÞÂÊÀ̳ª ¿À¸¥ÂÊÀ¸·ÎºÎÅÍ ÁÖ¾îÁø ¹®ÀÚ¿­ÀÌ ³ªÅ¸³ª´ÂÁö °Ë»öÇÕ´Ï´Ù.
IsByRefByRef ¸Å°³º¯¼ö¿¡ º¯¼ö°¡ Á¦°øµÇ´ÂÁö °áÁ¤ÇÕ´Ï´Ù.
IsObject°ªÀÌ °´Ã¼ÀÎÁö °áÁ¤ÇÕ´Ï´Ù.
StrPut / StrGet¹®ÀÚ¿­À» ¸Þ¸ð¸®¿¡ ¶Ç´Â ¸Þ·Î¸®·ÎºÎÅÍ º¹»çÇÕ´Ï´Ù. ¼±ÅÃÀûÀ¸·Î ÄÚµå ÆäÀÌÁö »çÀÌ¿¡ º¯È¯ÇÕ´Ï´Ù.
Trim¹®ÀÚ¿­ÀÇ Ã³À½°ú ³¡À¸·ÎºÎÅÍ ¾î¶² ¹®ÀÚµéÀ» °È¾î³À´Ï´Ù.
RegEx (?CNum:Func)regex ÆÐÅÏÀ» Æò°¡ÇÏ´Â µ¿¾È ÇÔ¼ö¸¦ È£ÃâÇÕ´Ï´Ù.
ÇÔ¼ö ¶óÀ̺귯¸®»õ·Î¿î "Áö¿ª ¶óÀ̺귯¸®" ±×¸®°í #Include <LibName>.
°¡º¯ ÇÔ¼öÇÔ¼ö´Â ¹è¿­À» ÅëÇÏ¿© °¡º¯ °³¼öÀÇ ¸Å°³º¯¼ö¸¦ ¹ÞÀ» ¼ö ÀÖ½À´Ï´Ù.
Á¤Àû ÃʱâÈ­ÀÚÁ¤Àû º¯¼ö´Â ÀÌÁ¦ ¾î¶² Ç¥Çö½ÄÀ¸·Îµµ ÃʱâÈ­ÇÒ ¼ö ÀÖ½À´Ï´Ù.
°´Ã¼ 
ÀϹÝÀϹÝÀûÀÎ °´Ã¼ÀÇ »ç¿ë¹ý°ú ÇàÀ§.
°´Ã¼´Ù¸¥ ±â´ÉÀ¸·Î È®ÀåÇÒ ¼ö ÀÖ´Â ¿¬°ü ¹è¿­.
¿­°ÅÀÚÁý´Ü ¾ÈÀÇ Ç׸ñÀ» ¿­°ÅÇÕ´Ï´Ù.
ÆÄÀÏÆÄÀÏ¿¡ Á¢±ÙÇÒ ¼ö ÀÖµµ·Ï ÀÎÅÍÆäÀ̽º¸¦ Á¦°øÇÕ´Ï´Ù. FileOpenÀº ÀÌ À¯ÇüÀÇ °´Ã¼¸¦ µ¹·ÁÁÝ´Ï´Ù.
ÇÔ¼ö½ºÅ©¸³Æ®°¡ È£ÃâÇÒ ¼ö ÀÖ´Â »ç¿ëÀÚ Á¤ÀÇ ÇÔ¼ö ¶Ç´Â ³»Àå ÇÔ¼ö¸¦ °¡¸®Åµ´Ï´Ù.
ComObjectÀ§ÀÇ ComObj ÇÔ¼ö¸¦ ÂüÁ¶ÇϽʽÿÀ.
º¯¼ö 
A_Is64bitOSOS°¡ 64-ºñÆ®À̸é 1 (true)ÀÌ, 32-ºñÆ®À̸é 0 (false)ÀÌ ´ã±é´Ï´Ù.
A_IsUnicodeÀ¯´ÏÄÚµå ºôµå¿¡¼­ À̺¯¼ö´Â 1 (true)ÀÌ ´ã±é´Ï´Ù. ANSI ºôµå´Â Á¤ÀǵǾî ÀÖÁö ¾Ê½À´Ï´Ù. ±×·¡¼­ ±× È¿°ú»ó °ÅÁþ(false)ÀÔ´Ï´Ù.
A_FileEncoding´Ù¾çÇÑ ¸í·É¾î¿¡ ´ëÇÏ¿© ±âº» ÀÎÄÚµùÀ» ´ã°í ÀÖ½À´Ï´Ù; FileEncodingÀ» ÂüÁ¶ÇϽʽÿÀ.
A_OSVersionWindows 7°ú Windows 8À» Áö¿øÇÕ´Ï´Ù; A_OSVersionÀ» ÂüÁ¶ÇϽʽÿÀ.
A_PriorKey°¡Àå ÃÖ±Ù¿¡ Å°-´©¸§À̳ª Å°-¶À ¹Ù·Î Àü¿¡ ¸¶Áö¸·À¸·Î ´­·ÁÁø Å°ÀÇ À̸§ ... (ÀÚ¼¼ÇÑ °ÍÀº ¿©±â¸¦ ÂüÁ¶)
A_PtrSize¹ÙÀÌÆ® ´ÜÀ§·Î Æ÷ÀÎÅÍÀÇ Å©±â°¡ ´ã±é´Ï´Ù. ÀÌ°ÍÀº 4 (32-bit) ¶Ç´Â 8 (64-bit)ÀÔ´Ï´Ù.
A_RegViewSetRegView°¡ ¼³Á¤ÇÑ ÇöÀç ·¹Áö½ºÆ®¸® ºä.
A_ScriptHwnd½ºÅ©¸³Æ®ÀÇ ¼ûÀº ¸ÞÀΠâÀÇ À¯ÀÏÇÑ ID (HWND/ÇÚµé).
µ¥ÀÌÅÍÀ¯Çü 
Ptr32-ºñÆ® ºôµå¿¡¼­ Int¿Í µ¿µîÇÏ°í 64-ºñÆ® ºôµå¿¡¼­´Â Int64°ú µ¿µîÇÕ´Ï´Ù. DllCall, NumPut ±×¸®°í NumGetÀÌ Áö¿øÇÕ´Ï´Ù.
AStr, WStrDllCall¸¸ Áö¿øÇÕ´Ï´Ù; ½ºÅ©¸³Æ® ȣȯ¼º ÂüÁ¶.
À¯´ÏÄÚµå 
ȣȯ¼ºDllCall µîµî¿¡¼­ À¯´ÏÄڵ带 ´Ù·ç´Â ¹ý
½ºÅ©¸³Æ® ÆÄÀϽºÅ©¸³Æ® ÆÄÀÏ¿¡ À¯´ÏÄÚµå »ç¿ëÇϱâ.
SendInputSendInput¿¡ À¯´ÏÄÚµå »ç¿ëÇϱâ.
±âŸ 
ahk_exeâÀ» ¼ÒÀ¯ÇÏ°í ÀÖ´Â ÇÁ·Î¼¼½º (EXE ÆÄÀÏ)ÀÇ °æ·Î³ª À̸§À¸·Î âÀ» ½Äº°ÇÒ ¼ö ÀÖ½À´Ï´Ù.
µð¹ö±ë»óÈ£´ëÈ­ µð¹ö±ë Ư¡ (ÁÙ ´ÜÀ§·Î ½ÇÇà µîµî.).
¿¡·¯ ó¸®Try/catch/throw ±×¸®°í A_LastErrorÀÇ À¯¿ë¼º Áõ°¡.
GUI °³¼±Gui °ü·Ã ¸í·É¾î¸¦ °³¼±.
¾ÆÀÌÄÜ Áö¿øÀÚ¿ø ½Äº°ÀÚ Áö¿ø ±×¸®°í ´Ù¾çÇÑ ¾ÆÀÌÄÜ Å©±â Áö¿ø °³¼±.
±âŸ º¯°æ½ºÅ©¸³Æ®ÀÇ È£È¯¼º¿¡ ¿µÇâÀ» ¹ÌÄ¡´Â º¯°æµé.
¹öÀü ÀÌ·ÂAutoHotkey_L °³Á¤ÆÇ ÀÌ·Â.
+ + +

¿¡·¯ ó¸®

+

+¿¡·¯ 󸮸¦ À§ÇØ ¸¹Àº ¸í·É¾î°¡ ErrorLevel ´ë½Å¿¡ try/catchÀÇ »ç¿ëÀ» Áö¿øÇÕ´Ï´Ù:

+
try
+{
+    FileCopy, file1.txt, C:\folder
+    FileDelete, C:\folder\old.txt
+}
+catch
+    MsgBox ¿¡·¯°¡ ÀϾ½À´Ï´Ù!
+

+Ãß°¡·Î, ´ÙÀ½ ¸í·É¾î´Â ÀÌÁ¦ A_LastError¸¦ ¼³Á¤ÇØ µð¹ö±ëÀ» µ½½À´Ï´Ù: FileAppend, FileRead, FileReadLine, FileDelete, FileCopy, FileMove, FileGetAttrib/Time/Size/Version, FileSetAttrib/Time, FileCreateDir, RegRead, RegWrite, RegDelete.

+ +

ÇÔ¼ö ¶óÀ̺귯¸®

+

+%A_MyDocuments%\AutoHotkey\LibÀÇ »ç¿ëÀÚ ¶óÀ̺귯¸®¿Í AutoHotkey µð·ºÅ丮ÀÇ Ç¥ÁØ ¶óÀ̺귯¸® ¸»°íµµ, %A_ScriptDir%\Lib¿¡ À§Ä¡ÇÏ´Â "Áö¿ª ¶óÀ̺귯¸®"·ÎºÎÅÍ ÇÔ¼ö¸¦ ÀÚµ¿ »ðÀÔÇÒ ¼ö ÀÖ½À´Ï´Ù. + +´õ ÀÚ¼¼ÇÑ Á¤º¸´Â ÇÔ¼ö ¶óÀ̺귯¸®¸¦ ÂüÁ¶ÇϽʽÿÀ.

+

#Include <LibName>´Â ÇÔ¼ö ¶óÀ̺귯¸® Áß Çϳª¿¡ À§Ä¡ÇÑ ¶óÀ̺귯¸® ÆÄÀÏÀ» ¸í½ÃÀûÀ¸·Î Æ÷ÇÔÇÕ´Ï´Ù.

+ +

GUI °³¼±

+

Gui ¸í·É¿Í ±âŸ °ü·ÃµÈ Ç׸ñ¿¡ ¼ö ¸¹Àº °³¼±ÀÌ ÀÌ·ç¾îÁ³½À´Ï´Ù:

+ + +

Á¤Àû º¯¼ö

+

Á¤Àû º¯¼ö´Â ÀÌÁ¦ ¾î¶² Ç¥Çö½ÄÀ¸·Îµµ ÃʱâÈ­ÇÒ ¼ö ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î:

+
Sleep 500
+MsgBox % Time() "ms since the script started."
+Time() {
+    static Tick := A_TickCount
+    return A_TickCount - Tick
+}
+ +

ÅؽºÆ® ÀÎÄÚµù

+

FileRead, FileReadLine, Loop Read ±×¸®°í FileAppend´Â À©µµ¿ìÁî°¡ Áö¿øÇÏ´Â ÅؽºÆ® ÀÎÄÚµùÀ» ´ëºÎºÐ Áö¿øÇÕ´Ï´Ù. ´Ü, ½Ã½ºÅÛÀÇ ±âº» ANSI ÄÚµå ÆäÀÌÁö´Â Áö¿øÇÏÁö ¾Ê½À´Ï´Ù. FileEncodingÀ» »ç¿ëÇÏ¸é ±âº» ÀÎÄÚµùÀ» ¼³Á¤ÇÒ ¼ö ÀÖ½À´Ï´Ù. ´ÙÀ½°ú °°ÀÌ FileRead¿Í FileAppend¸¦ ¿À¹ö¶óÀ̵å ÇÕ´Ï´Ù:

+
FileRead, OutputVar, *Pnnn Filename
+FileAppend [, Text, Filename, Encoding]
+

+nnn´Â ¼ýÄ¡ ÄÚµå ÆäÀÌÁö ½Äº°ÀÚ°¡ µÇ¾î¾ß Çϸç, EncodingÀº FileEncoding°ú °°Àº Çü½ÄÀ» µû¶ó¾ß ÇÕ´Ï´Ù.

+

´ÙÀ½µµ ÂüÁ¶ÇϽʽÿÀ: ½ºÅ©¸³Æ® ȣȯ¼º

+ +

°¡º¯ ÇÔ¼ö ±×¸®°í °¡º¯ ÇÔ¼ö-È£Ãâ

+

°¡º¯ ÇÔ¼ö´Â ¹è¿­À» ÅëÇÏ¿© °¡º¯ °³¼öÀÇ ÀÎÀÚ¸¦ ¹ÞÀ» ¼ö ÀÖ½À´Ï´Ù. ¹Ý¸é¿¡, °¡º¯ ÇÔ¼ö-È£ÃâÀ» »ç¿ëÇÏ¸é °¡º¯ °³¼öÀÇ ¸Å°³º¯¼ö¸¦ ÇÔ¼ö¿¡ °Ç³Ú ¼ö ÀÖ½À´Ï´Ù.

+ + +

¾ÆÀÌÄÜ Áö¿ø °³¼±

+ +

ºñÁ¤»óÀûÀÎ Å©±â

+

+Å©±â¿¡ »ó°ü¾øÀÌ ¿î¿µÃ¼Á¦°¡ Áö¿øÇÏ´Â ¾ÆÀÌÄÜ ÀÚ¿øÀÌ¸é ¾ó¸¶µçÁö ½ÇÇàÆÄÀϷκÎÅÍ ÃßÃâÇÒ ¼ö ÀÖ½À´Ï´Ù. ¾ÆÀÌÄÜ ±×·ì¿¡ ¿©·¯ Å©±âÀÇ ¾ÆÀÌÄÜ ÀÚ¿øÀÌ Á¸ÀçÇϸé, °¡Àå ÀûÀýÇÑ Å©±â°¡ »ç¿ëµË´Ï´Ù. 17 ÀÌÀü ¹öÀü¿¡¼­´Â ÀÓÀÇÀÇ ¾ÆÀÌÄÜ ÀÚ¿øÀ» ¿î¿µÃ¼Á¦°¡ ¼±ÅÃÇØ ÁÖ¾ú°í, ½Ã½ºÅÛ Å©±âÀÇ ¾ÆÀÌÄÜÀ¸·Î È®´ëµÇ¾ú´Ù°¡, ´Ù½Ã ¿äûÇÑ Å©±â·Î º¯°æµÇ¾ú½À´Ï´Ù.

+ +

ÀÚ¿ø ½Äº°ÀÚ

+

+À½¼öÀÇ ¾ÆÀÌÄÜ ¹øÈ£¸¦ »ç¿ëÇÏ¸é ½ÇÇà ÆÄÀÏ ¾È¿¡¼­ ±×·ì ¾ÆÀÌÄÜÀ» ½Äº°ÇÒ ¼ö ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î, ´ÙÀ½Àº Æ®·¹ÀÌ ¾ÆÀÌÄÜÀ» ahk ÆÄÀÏÀÌ »ç¿ëÇÒ ±âº» ¾ÆÀÌÄÜÀ¸·Î ¼³Á¤ÇÕ´Ï´Ù:

+
Menu, Tray, Icon, %A_AhkPath%, -160
+ + diff --git a/src/docs/AutoHotkey.htm b/src/docs/AutoHotkey.htm new file mode 100644 index 0000000..c47365f --- /dev/null +++ b/src/docs/AutoHotkey.htm @@ -0,0 +1,64 @@ + + +AutoHotkey + + + + + + + + +

Version v1.1.22.07

+

http://ahkscript.org

+

©2003-2014 Chris Mallett, portions ©AutoIt Team and the AHK community

+

ÇѱÛÆÇ johjnsonj 151111

+

Software License: GNU General Public License

+ +

Áß¿äÇÑ °íÁö »çÇ×

+

AutoHotkey 1.0°ú AutoHotkey 1.1 »çÀÌÀÇ ±Ùº»ÀûÀÎ Â÷ÀÌ ¶§¹®¿¡ (ƯÈ÷ À¯´ÏÄÚµå¿Í x64 ½ÇÇàÆÄÀÏ¿¡¼­), +AutoHotkey 1.0À¸·Î ÀÛ¼ºµÈ ½ºÅ©¸³Æ®´Â AutoHotkey 1.1 À§¿¡¼­ ¿¹»ó´ë·Î ÀÛµ¿ÇÏÁö ¾ÊÀ» ¼ö ÀÖ½À´Ï´Ù. +¾Ë·ÁÁø ȣȯ¼º ¹®Á¦¿Í ÇØ°áÃ¥¿¡ °üÇÑ ´õ ÀÚ¼¼ÇÑ Á¤º¸´Â ´ÙÀ½ ¸µÅ©¸¦ ÂüÁ¶ÇϽʽÿÀ:

+ + +

ºü¸¥ ÂüÁ¶

+

񃧯:

+ +

Å°º¸µå¿Í ¸¶¿ì½º:

+ +

±âŸ:

+ + +

°¨»çÀÇ ¸»

+

Á¶³ª´Ü º£³×Æ®(Jonathan Bennett)¿¡°Ô ƯÈ÷ °¨»çµå¸³´Ï´Ù. ±×´Â ³ÐÀº ¸¶À½À¸·Î AutoIt v2¸¦ 1999³â¿¡ ÀÚÀ¯ ¼ÒÇÁÆ®¿þ¾î·Î ¹èÆ÷ÇØ Áּ̽À´Ï´Ù. ±× ´öºÐ¿¡ ÇÊÀÚ´Â ¿µ°¨À» ¹Þ¾Ò°í º»ÀÎÀº ¹°·Ð ¼¼»óÀÇ ¸ðµç »ç¶÷µéÀº ½Ã°£À» Àý¾àÇÏ°Ô µÇ¾ú½À´Ï´Ù. °Ô´Ù°¡, ¿ÀÅäÇÖÅ°ÀÇ °³¼± »çÇ×µéÀ» AutoIt v2 ¸í·É¾î ¼¼Æ®¿¡ Àû¿ëÇØ Áּ̰í, »Ó¸¸ ¾Æ´Ï¶ó Window Spy ±×¸®°í ¿¹Àü ½ºÅ©¸³Æ® ÄÄÆÄÀÏ·¯¸¦ AutoIt v3 ¼Ò½º ÄÚµå·ÎºÎÅÍ Á÷Á¢ Àû¿ëÇØ Áּ˽À´Ï´Ù. ±×·¡¼­ Á¸°ú ±×ÀÇ AutoIt ÀúÀڵ鿡°Ôµµ °¨»çÀÇ ¸»¾¸À» ÀüÇÏ´Â ¹ÙÀÔ´Ï´Ù.
+
+¸¶Áö¸·À¸·Î, AutoHotkey´Â ¿À´Ã³¯ ÀÌ ºÐµéÀÌ ¾ø¾ú´Ù¸é Á¸ÀçÇÏÁö ¸øÇßÀ» °ÍÀÔ´Ï´Ù.
+
+~ Chris Mallett(Å©¸®½º ¸Ö¸´)

+ + diff --git a/src/docs/ChangeLogHelp.htm b/src/docs/ChangeLogHelp.htm new file mode 100644 index 0000000..6ad1c18 --- /dev/null +++ b/src/docs/ChangeLogHelp.htm @@ -0,0 +1,234 @@ + + +Archived Changes + + + + + + + +

º¯°æ ±â·Ï º¸°ü¼Ò

+

ÀÌ ¹®¼­´Â Å©¸®½º ¸Ö¸´(Chris Mallett)ÀÌ ÁÖµµÇÑ ¿ø·¡ÀÇ ¿ÀÅäÇÖÅ° °³¹ß ºÐ±âÀÇ º¯°æ ÀÌ·ÂÀ» ´ã°í ÀÖ½À´Ï´Ù.

+

»õ·Î¿î º¯°æ ±â·ÏÀº º¯°æ »çÇ× & »õ·Î¿î Ư¡À» Âü°íÇϽʽÿÀ.

+

1.0.48.05 - September 25, 2009

+

Fixed crash of SendMessage and PostMessage when wParam or lParam is omitted (broken by 1.0.48.04). [thanks Lexikos]

+

1.0.48.04 - September 25, 2009

+

Fixed StringSplit to work properly inside functions of compiled scripts (broken by 1.0.35.01). [thanks engunneer & Lexikos]

+

Fixed SendPlay not to wait for the release of the Windows key prior to sending an "L" keystroke (broken by 1.0.48.01). [thanks Lexikos]

+

Fixed A_EndChar to be valid when the B0 option is present, and to be empty when there is no ending character (broken by 1.0.44.09). [thanks Al2000]

+

Fixed FormatTime to yield a valid time of day even when the specified month is out-of-range (broken by 1.0.48.00). [thanks silveredge78]

+

Fixed FileCreateDir to support a leading backslash even when it is the only backslash; e.g. \dir. [thanks jaco0646]

+

Fixed GuiControl/GuiControlGet/Gui/SendMessage to work reliably even when they trigger a callback or OnMessage function. [thanks Lexikos]

+

Fixed RegExMatch() not to produce too few replacements when an empty-string match is followed by a non-empty-string match.

+

Changed While() to be recognized as a loop rather than a function. [thanks Crash&Burn]

+

Improved UrlDownloadToFile to support FTP and Gopher. [thanks Lexikos]

+

Improved the stdout/asterisk mode of FileAppend to write immediately rather than lazily to standard output. [thanks Lexikos]

+

Added full support for if % expression. [thanks kenomby]

+

1.0.48.03 - May 3, 2009

+

Fixed ListLines On not to erase the most recent log entry in the line history. [thanks Lexikos]

+

Fixed ListView to respond properly to mouse dragging when timers are running. [thanks Solar]

+

Fixed key-up hotkeys so that if one is created while its key is being held down, the release of the key doesn't trigger the wrong hotkey. [thanks Peter & engunneer]

+

1.0.48.02 - April 19, 2009

+

Changed and fixed Gosub and GroupActivate so that when a function calls an external/public subroutine, that subroutine will treat all dynamic variables as globals, and will have outside-of-function GUI behavior. [thanks kenomby & Lexikos]

+

Improved performance of True/False/A_EventInfo in expressions by treating them as integers vs. strings.

+

1.0.48.01 - April 15, 2009

+

Changed: For Windows Vista and later, hotkeys that include the Windows key (e.g. #a) will wait for LWin and RWin to be released before sending any text containing an "L" keystroke. This prevents such a hotkey from locking the PC. This behavior applies to all sending modes except SendPlay (which doesn't need it) and blind mode.

+

Fixed A_LoopFileExt to be blank for any filename having no extension but a period in its pathname. [thanks Yek-Toho-Tua].

+

Fixed the assignment of integers that are 19 or 20 characters long to work as they did prior to v1.0.48. [thanks Laszlo & Lexikos]

+

Fixed function definitions to work properly inside a block. [thanks rmarko]

+

Improved performance of A_Index in expressions by treating it as an integer rather than a string.

+

Improved performance of if var [not] in/contains. [developed by Lexikos]

+

Improved ListLines with an option to turn line-logging Off or On. [thanks kenomby & ruespe]

+

1.0.48 - February 25, 2009

+

Compatibility: The change most likely to affect backward compatibility is that floating point numbers stored in variables now have higher precision. Scripts that rely on tiny differences in precision would either need to be reviewed and updated, or have their compatibility improved by using SetFormat Float (e.g. SetFormat, Float, 0.6) anywhere in the script. SetFormat Float disables the higher precision, but gives up some of the new, faster floating point performance.

+

Performance: The main theme of this release is faster performance. Almost all scripts should run faster -- especially those that make heavy use of expressions and integer math/comparisons (which may run up to three times as fast). To achieve the full benefit, a script either should avoid using SetFormat or should use SetFormat's fast mode.

+

Performance improvements

+

Expressions and function calls are compiled more heavily, making them much faster (especially complex integer expressions, including those with commas).

+

Binary numbers are cached for variables to avoid conversions to/from strings. This makes numerical operations involving variables much faster.

+

Literal integers in expressions and math/comparison commands are replaced with binary integers, which makes them faster; e.g. X+5 and if x > 5.

+

LOOPs, IFs, and ELSEs that have blocks (braces) are faster due to skipping the opening '{'. A side-effect is that the '{' is omitted from ListLines.

+

Thread-creation performance is improved, which should help rapid-fire threads in OnMessage(), RegisterCallback(), and GUI events.

+

Changes that might affect existing scripts (other than higher-precision floating point described at the top)

+

When SetFormat, Integer, Hex is in effect, assigning a literal decimal integer to a variable also converts it to hex. Usually this is only a display issue.

+

For OnMessage() performance, the message number and HWND arrive as standard numbers rather than appearing unconditionally as hex. Usually this is only a display issue.

+

To achieve various improvements in performance, scripts now use slightly more memory (proportionate to the number of variables and expressions).

+

Changed and fixed if var is time and other uses of YYYYMMDDHHMISS date-time stamps to recognize that months outside the range 1-12 are invalid. [thanks Nick]

+

Changed and improved dynamic function calling to allow passing more parameters than defined by a function, in which case the parameters are evaluated but discarded. [developed by Lexikos]

+

Other improvements

+

Added function IsFunc(), which indicates whether a function may be called dynamically. [developed by Lexikos]

+

Added the while-loop, which repeats its commands until its expression evaluates to false. [developed by Lexikos]

+

Added an assume-static mode for functions. [developed by Lexikos]

+

Added built-in variables A_IsPaused and A_IsCritical. [developed by Lexikos]

+

Improved NumPut() to support UInt64 like DllCall(). [thanks Sean]

+

Improved mouse wheel support by adding WheelLeft and WheelRight as hotkeys and supporting them in Send, Click, and related commands. However, WheelLeft/Right has no effect on operating systems older than Windows Vista. [developed by Lexikos]

+

Upgraded compiled script compressor from UPX 3.00 to 3.03.

+

Fixes

+

Fixed inability to use MsgBox's timeout parameter when the "Text" parameter had an expression containing commas.

+

Fixed Menu, Delete, Item-that's-a-submenu not to disrupt the associated submenu. [thanks animeaime & Lexikos]

+

Fixed the GUI Hotkey control to return usable hotkey names even for dead keys (e.g. "^" instead of Zircumflex). [thanks DerRaphael]

+

Fixed RegDelete so that it won't delete an entire root key when SubKey is blank. [thanks Icarus]

+

Fixed registry loops to support subkey names longer than 259 (rare). In prior versions, such subkeys would either be skipped or cause a crash. [thanks Krzysztof Sliwinski & Eggi]

+

Fixed FileSelectFolder by providing an option to make it compatible with BartPE/WinPE. [thanks markreflex]

+

Fixed window/control IDs (HWNDs), which in rare cases wrongly started with 0xFFFFFFFF instead of just 0x. [thanks Micahs]

+

Fixed inability of Send commands to use the Down/Up modifiers with the "}" character. [thanks neovars]

+

1.0.47.06 - March 9, 2008

+

Fixed crash when a function was called concurrently with an optional ByRef parameter omitted by one thread but not omitted by the other. [thanks DeathByNukes]

+

Fixed Menu, Tray, MainWindow to enable the menu items in the main window's View menu. [thanks Lexikos]

+

Added dynamic function calling. [developed by Lexikos]

+

1.0.47.05 - November 21, 2007

+

Fixed the Sort command: 1) fixed the "function" option not to misbehave when it's the last option in the list; 2) fixed the "unique" option so that when the delimiter is CRLF, the last item can be detected as a duplicate even when it doesn't end in CRLF; 3) fixed the "unique" option not to append a trailing delimiter when the last item is a duplicate. [thanks Roland]

+

Fixed RegExMatch() and RegExReplace() to yield correct results even when Haystack and OutputVar are both the same variable. [thanks Superfraggle]

+

Fixed inability to pass a parameter that is "a variable to which ClipboardAll has been assigned". [thanks Joy2DWorld & Lexikos]

+

Updated RegEx/PCRE from 7.0 to 7.4. For a summary of the major changes, see www.pcre.org/news.txt. For full details of every change and fix, see www.pcre.org/changelog.txt.

+

Added GUI control "Tab2" that fixes rare redrawing problems in the original "Tab" control (e.g. activating a GUI window by clicking on a control's scrollbar). The original Tab control is retained for backward compatibility because "Tab2" puts its tab control after its contained controls in the tab-key navigation order. [thanks Xander]

+

1.0.47.04 - August 28, 2007

+

Fixed key-up hotkeys like a up:: not to block the pressing of the "a" key unless the hotkey's #IfWin criteria are met. [thanks Roland]

+

Fixed Round(Var, NegativeNumber), which in rare cases was off by 1. [thanks Icarus]

+

Fixed crash of scripts that end in a syntax error consisting of an orphaned IF-statement (broken by 1.0.47.00). [thanks msgbox of the German forum]

+

Eliminated the "GetClipboardData" error dialog. Instead, an empty string is retrieved when the data cannot be accessed within the #ClipboardTimeout period. [thanks ManaUser & Sean]

+

Changed GUI checkboxes and radio buttons to default to "no word-wrap" when no width, height, or CR/LF characters are specified. This solves display issues under certain unusual DPI settings. [thanks Boskoop]

+

1.0.47.03 - August 1, 2007

+

Fixed expressions to allow literal negative hexadecimal numbers that end in "E"; e.g. fn(-0xe). [thanks Laszlo]

+

Fixed block syntax to allow a function-call immediately to the right of a '}'. [thanks Roland]

+

1.0.47.02 - July 19, 2007

+

Fixed the Number option of Edit controls to properly display a balloon tip when the user types something other than a digit. [thanks tfcahm]

+

Fixed WM_TIMER not to be blocked unless it's posted to the script's main window. [thanks tfcahm]

+

Fixed wildcard hotkeys not to acquire tilde behavior when the same hotkey exists in the script with a tilde. [thanks Lexikos]

+

Fixed declaration initializers not to retain whitespace at the end of literal numbers. Also, they now allow spaces between a closing quote and the next comma. [thanks Hardeep]

+

1.0.47.01 - July 8, 2007

+

Fixed RunAs not to crash or misbehave when a domain is specified. [thanks Markus Frohnmaier]

+

Changed relational operators to yield integers even when the inputs are floating point; e.g. 1.0 < 2.0 yields 1 vs. 1.0. [thanks Lexikos]

+

1.0.47 - June 19, 2007

+

Added support for function libraries, which allow a script to call a function in an external file without having to use #Include.

+

Added RegisterCallback(), which creates a machine-code address that when called, redirects the call to a function in the script. [developed by Jonathan Rennison (JGR)]

+

Added NumGet() and NumPut(), which retrieve/store binary numbers with much greater speed than Extract/InsertInteger.

+

Improved Sort with an option to do custom sorting according to the criteria in a callback function. [thanks Laszlo]

+

Improved OnMessage() with an option to allow more than one simultaneous thread. [thanks JGR]

+

Improved Critical with an option to change the message-check interval, which may improve reliability for some usages. [thanks Majkinetor and JGR]

+

Changed Critical to put SetBatchLines -1 into effect.

+

Changed the error messages produced by #ErrorStdOut to contain a space before the colon. [thanks Toralf]

+

Fixed OnMessage() functions that return one of their own local variables to return the number in that variable, not 0.

+

Fixed potential crashing of built-in variables that access the registry (e.g. A_AppData, A_Desktop, A_MyDocuments, A_ProgramFiles). [thanks Tekl]

+

1.0.46.17 - May 31, 2007

+

Fixed A_UserName (broken by 1.0.46.16).

+

1.0.46.16 - May 30, 2007

+

Fixed Gui, Tab, TabName when used after a previous Gui Tab. [thanks Toralf]

+

Improved SetTimer to treat negative periods as "run only once". [thanks Majkinetor]

+

Added GuiControlGet Hwnd, which is a more modular/dynamic way to retrieve a control's HWND. [thanks Majkinetor]

+

Added built-in variables A_ThisLabel and A_ThisFunc, which contain the names of the currently-executing label/function. [thanks Titan & Majkinetor]

+

1.0.46.15 - May 9, 2007

+

Fixed GuiControl, GuiControlGet, and Gui ListView/TreeView to support static variables and ByRefs that point to globals/statics. [thanks Peter]

+

Fixed FileInstall causing the Random command to become non-random in compiled scripts. [thanks Velocity]

+

Reduced the size of compiled scripts by about 16 KB due to UPX 3.0. [thanks to atnbueno for discovering the optimal command-line switches]

+

1.0.46.14 - May 2, 2007

+

Added the "require administrator" flag to the installer to avoid a warning dialog on Windows Vista. [thanks Roussi Nikolov]

+

1.0.46.13 - May 1, 2007

+

Fixed hotkeys like *x to fire even when x is also a hotkey that is prevented from firing due to #IfWin. [thanks Joy2DWorld & Engunneer]

+

Improved optional parameters to accept quoted/literal strings as default values.

+

Improved ByRef parameters with the ability to be optional (i.e. they may accept default values). [thanks Corrupt]

+

1.0.46.12 - April 24, 2007

+

Fixed inability to recognize a literal scientific notation number that begins with 0, such as 0.15e+1. [thanks Laszlo]

+

1.0.46.11 - April 23, 2007

+

Fixed inability to have a function-call as the first item in certain comma-separated expressions. [thanks Majkinetor]

+

Fixed WinTitles like ahk_id %ControlHwnd% in ControlGet's FindString/Choice/List, and Control's Add/Delete/Choose. [thanks Freighter & PhiLho]

+

Improved floating point support to recognize scientific notation; e.g. 1.2e-5 (the decimal point is mandatory). Also improved "SetFormat Float" with an option to output in scientific notation. [thanks Laszlo]

+

1.0.46.10 - March 22, 2007

+

Fixed StringSplit inside assume-local functions so that it creates a local array even when OutputArray0 exists as a global but not a local. [thanks KZ]

+

Improved ListView's item-changed notification ("I") to indicate via ErrorLevel whether the item has been selected/deselected, focused/unfocused, and/or checked/unchecked. [thanks foom]

+

Added an additional layer of protection to compiled scripts. It is recommended that scripts containing sensitive data or source code be recompiled with the /NoDecompile switch.

+

1.0.46.09 - March 4, 2007

+

Fixed := deep inside expressions when used to assign the result of a recursive function to a local variable (broken by 1.0.46.06). [thanks Laszlo]

+

Fixed inability to pass certain ternary expressions to ByRef parameters. [thanks Titan]

+

Fixed GuiControlGet, OutputVar, Pos so that it doesn't make the OutputVar blank. [thanks PhiLho]

+

Changed and fixed continuation sections so that the "Comment" option doesn't force the LTrim option into effect. [thanks Titan]

+

Changed the Terminal Server Awareness flag back to "disabled" on AutoHotkey.exe and compiled scripts. This improves flexibility and backward compatibility (see discussion at forum).

+

1.0.46.08 - February 7, 2007

+

Fixed unreliability of ComSpec and environment variables on Windows 9x (broken by v1.0.46.07). [thanks Loriss]

+

Changed: When AutoHotkey.exe is launched without a script specified, it will now run (or prompt you to create) the file AutoHotkey.ahk in the My Documents folder. The only exception is when AutoHotkey.ini exists in the working directory, in which case it uses the old behavior of executing that file.

+

Improved DllCall to support an integer in place of the function name, which is interpreted as the address of the function to call. [thanks Sean]

+

1.0.46.07 - January 23, 2007

+

Fixed crash of illegally-named dynamic variables on the left of an equal-sign assignment (broken by v1.0.45). [thanks PhiLho]

+

Fixed FileMoveDir's "Option 2" to work properly even when the directory is being both renamed and moved. [thanks bugmenot]

+

Fixed inability to pass a variable ByRef if that same expression changed it from empty to non-empty (when #NoEnv is absent). [thanks Joy2DWorld]

+

Changed DllCall's A_LastError to reflect only changes made by the script, not by AutoHotkey itself. [thanks Azerty]

+

1.0.46.06 - January 16, 2007

+

Applied minor fixes and improvements to regular expressions by upgrading from PCRE 6.7 to 7.0. One of the most notable improvements is the `a option, which recognizes any type of newline (namely `r, `n, or `r`n). Similarly, the \R escape sequence means "any single newline of any type". See also: Full PCRE changelog

+

Changed and fixed all Control commands and StatusBarWait to obey SetTitleMatchMode RegEx as documented.

+

Changed RegExReplace() to return the original/unaltered string rather than "" when an error occurs.

+

Changed: Enabled the Terminal Server Awareness flag on AutoHotkey.exe and compiled scripts.

+

Improved performance when assigning large strings returned from user-defined functions. [thanks Laszlo]

+

1.0.46.05 - January 4, 2007

+

Fixed the Input command to allow named end keys like {F9} to work even when the shift key is being held down (broken by v1.0.45). [thanks Halweg]

+

Fixed inability of "Gui Show" to focus the GUI window when the tray menu is used both to reload the script and to show the GUI window. [thanks Rnon]

+

Fixed inability to pass some types of assignments (:=) to a ByRef parameter. [thanks Laszlo]

+

1.0.46.04 - January 2, 2007

+

Fixed inability to pass the result of an assignment (:=) to a ByRef parameter. [thanks Titan]

+

1.0.46.03 - December 18, 2006

+

Fixed ListView's floating point sorting to produce the correct ordering. [thanks oldbrother/Goyyah/Laszlo]

+

1.0.46.02 - December 17, 2006

+

Fixed environment variables to work properly as input variables in various commands such as StringLen and StringReplace (broken by 1.0.44.14). [thanks Camarade_Tux]

+

1.0.46.01 - December 15, 2006

+

NOTE: Although this release has been extensively tested, several low-level enhancements were made. If you have any mission-critical scripts, it is recommended that you retest them and/or wait a few weeks for any bugs to get fixed.

+

Fixed comma-separated declaration initializers such as local x = 1, y = 2 to work even when immediately below an if/else/loop statement.

+

Fixed comma-separated expressions so when the leftmost item is an assignment, it will occur before the others rather than after. [thanks Laszlo]

+

Changed and fixed function-calls so that any changes they make to dynamic variable names, environment variables, and built-in variables (such as Clipboard) are always visible to subsequent parts of the expression that called them.

+

Changed: When a multi-statement comma is followed immediately by a variable and an equal sign, that equal sign is automatically treated as a := assignment. For example, all of the following are assignments: x:=1, y=2, a=b=c.

+

Changed comma-separated expressions to produce the following effects: 1) the leftmost /= operator becomes true divide rather than EnvDiv; 2) blank values are not treated as zero in math expressions (thus they yield blank results).

+

Improved the performance of expressions by 5 to 20% (depending on type).

+

Improved the new assignment operators such as .= to support the Clipboard variable (even in comma-separated expressions).

+

Improved the .= operator so that it doesn't require a space to its left.

+

Improved GUI controls to accept static variables as their associated variables (formerly only globals were allowed).

+

Added option HwndOutputVar to Gui Add, which stores a control's HWND in OutputVar. [thanks Corrupt & Toralf]

+

1.0.46 - November 29, 2006

+

NOTE: Although this release has been extensively tested and is not expected to break any existing scripts, several low-level enhancements were made. If you have any mission-critical scripts, it is recommended that you retest them and/or wait a few weeks for any bugs to get fixed.

+

Added function SubStr(), which retrieves the specified number of characters at the specified position in a string.

+

Added assignment operators //=, .=, |=, &=, ^=, >>=, and <<=, which can be used anywhere in expressions. For example, Var .= "abc" appends the string "abc" to Var's current contents.

+

Added full support in expressions for the operators :=, ++, --, +=, -=, *=, and /= (formerly, they could be used only as the leftmost operator on a line). All assignment operators (especially ++ and --) behave in a C-like way when their result is used by some other operator.

+

Added the ternary operator (?:), which is a shorthand replacement for the if-else statement. For example, var := x>y ? 2 : 3 assigns the value 2 if x is greater than y; otherwise it assigns 3.

+

Added support for comma-separated expressions, which allow a single line to contain multiple assignments, function calls, and other expressions. [thanks PhiLho & Titan]

+

Improved variable declarations to support initialization on the same line. Note: A static variable's initialization occurs only once, before the script begins executing.

+

Improved line continuation to support all expression operators. For example, a line that starts with "?" or "+" is automatically appended to the line above it.

+

Improved performance of operators "." and ".=" to be as fast as the percent-sign method of appending a string.

+

Improved expressions to allow more types of consecutive unary operators such as !!Var. [thanks Laszlo]

+

Changed Critical to check messages less often (20 vs. 10ms), which improves the reliability of frequently-called OnMessage functions. [thanks Majkinetor]

+

Changed: A variable named simply "?" is no longer valid in expressions due to the new ternary operator.

+

Fixed hotkeys to support ::: (colon as a hotkey) and : & x (colon as a hotkey prefix).

+

Fixed the installer to remove psapi.dll from the AutoHotkey folder (except on Windows NT4). This avoids a conflict with Internet Explorer 7. [thanks to all who reported it]

+

1.0.45.04 - November 15, 2006

+

Fixed crash on Windows 9x when a script doesn't actually run (e.g. due to syntax error) (broken by v1.0.45). [thanks rogerg]

+

Changed Control Style|ExStyle to report ErrorLevel 0 vs. 1 when the requested style change wasn't necessary because it was already in effect.

+

Improved #Include to support %A_AppData% and %A_AppDataCommon%. [thanks Tekl]

+

1.0.45.03 - November 12, 2006

+

Fixed file-pattern loops not to crash when recursing into paths longer than 259 characters. In addition, such paths and files are now ignored (skipped over) by file-pattern loops, FileSetAttrib, and FileSetTime. [thanks PhilR]

+

Fixed functions that call themselves and assign the result to one of their own locals (broken by v1.0.45). [thanks bjennings]

+

Fixed crash of scripts containing regular expressions that have compile errors. [thanks PhiLho]

+

Fixed GuiControl not to convert checkboxes into 3-state unless requested. [thanks JBensimon]

+

Changed UrlDownloadToFile to announce a user-agent of "AutoHotkey" to the server rather than a blank string. [thanks jaco0646]

+

Improved continuation sections to support semicolon comments inside the section via the option-word Comments.

+

1.0.45.02 - November 8, 2006

+

Fixed StringUpper and StringLower to work when OutputVar is the clipboard (broken by v1.0.45). [thanks songsoverruins]

+

Fixed the hotkeys ~Alt, ~Control, and ~Shift to fire upon press-down rather than release (broken by v1.0.44).
+Background: Without the tilde, Alt/Control/Shift fire upon release to avoid taking over both the left and right key. But a specific left/right hotkey like LAlt or RShift fires upon press-down.

+

1.0.45.01 - November 7, 2006

+

Fixed FileReadLine and FileSelectFile not to crash or misbehave when other threads interrupt them (broken by v1.0.45). [thanks toralf]

+

Fixed RegExMatch() so that when there's no match, named subpatterns are properly set to "" in the output array. [thanks PhiLho]

+

Fixed RegExMatch()'s "J" option to properly write duplicate named subpatterns to the output array. [thanks PhiLho]

+

Changed SetWorkingDir and #Include DirName to succeed even for a root directory such as C: that lacks a backslash.

+

Improved DllCall() to display a warning dialog if the called function writes to a variable of zero capacity.

+

1.0.45 - November 4, 2006

+

NOTE: Although this release has been extensively tested and is not expected to break any existing scripts, several low-level performance enhancements were made. If you have any mission-critical scripts, it is recommended that you retest them and/or wait a few weeks for any bugs to get fixed.

+

Added support for regular expressions via RegExMatch(), RegExReplace(), and SetTitleMatchMode RegEx. [thanks Philip Hazel & PhiLho]

+

Improved performance and memory utilization of StringReplace.

+

Improved performance of the := operator for expressions and functions involving long strings.

+

Improved ControlClick with a new option "NA" that avoids activating the target window (this mode also improves reliability in some cases). In addition, it's been documented that SetControlDelay -1 can improve the reliability of ControlClick in some cases. [thanks nnesori]

+

Changed GUI buttons to default to "no word-wrap" when no width, height, or CR/LF characters were specified. This may solve button display issues under some desktop themes.

+

Fixed "Transform HTML" for the following characters: &`n><

+

Fixed misinterpretation of lines starting with "if not is" such as "if not IsDone".

+

Fixed inability of "Gui Show" to move a window vertically downward to where its bottommost row of pixels is now.

+

Fixed inability to use GroupActivate as the only line beneath an IF or ELSE.

+

Fixed inability of the Input command to differentiate between end-keys enclosed in braces and their (un)shifted counterparts; e.g. '{' vs. '['. [thanks Laszlo]

+ +

Visit www.autohotkey.com/changelog/ for even older changes.

+ + diff --git a/src/docs/Compat.htm b/src/docs/Compat.htm new file mode 100644 index 0000000..7a8a077 --- /dev/null +++ b/src/docs/Compat.htm @@ -0,0 +1,306 @@ + + +Script Compatibility + + + + + + + +

½ºÅ©¸³Æ®ÀÇ È£È¯¼º

+ +

+AutoHotkey 1.0À¸·Î ÀÛ¼ºµÈ ½ºÅ©¸³Æ®´Â ´ëºÎºÐ AutoHotkey 1.1 À§¿¡¼­ ¾Æ¹« º¯°æ¾øÀÌ ½ÇÇàµË´Ï´Ù. ±×·¯³ª ¸î °¡Áö ±â´ÉÀº µÎ ¹öÀü »çÀÌÀÇ ¾î¶³ ¼ö ¾ø´Â Â÷ÀÌÁ¡ ¶§¹®¿¡ Á¦´ë·Î ÀÛµ¿ÇÏÁö ¾ÊÀ» ¼ö ÀÖ½À´Ï´Ù. °¡Àå ¹®Á¦°¡ µÇ´Â Â÷ÀÌÁ¡Àº DllCall °°Àº °í±Þ ±â´É¿¡¸¸ ¿µÇâÀ» ¹ÌÄ¡±â ¶§¹®¿¡, ´ëºÎºÐÀÇ »ç¿ëÀÚ´Â ½Å°æ¾µ ÇÊ¿ä°¡ ¾ø½À´Ï´Ù.

+

+AutoHotkey 1.1Àº "AutoHotkey_L"À̶ó°íµµ ¾Ë·ÁÁ® Àִµ¥, ¹Ý¸é¿¡ AutoHotkey 1.0Àº ¿ªÀ¸·Î "AutoHotkey Basic"À̶ó´Â ¶óº§ÀÌ ºÙ¾ú½À´Ï´Ù. AutoHotkey_LÀÇ ¿¹Àü ¹öÀü Áß¿¡´Â 1.0.* ¹öÀü ¹øÈ£¸¦ »ç¿ëÇÕ´Ï´Ù. ±×·¡¼­ ¸íÈ®ÇÏ°Ô Çϱâ À§ÇØ, ÀÌ ¹®¼­´Â ¿ÀÅäÇÖÅ°ÀÇ µÎ ºÐ±â¸¦ ¹öÀü ¹øÈ£°¡ ¾Æ´Ï¶ó À̸§À¸·Î ÁöĪÇÕ´Ï´Ù.

+

ÁÖÀÇ: °¡Àå ÈçÇÑ ¹®Á¦´Â À¯´ÏÄÚµå ÅؽºÆ®¸¦ Áö¿øÇϵµ·Ï º¯°æÇÑ ¶§¹®Àε¥, ÀÌ´Â ±×³É ANSI ¹öÀüÀÇ AutoHotkey_L¸¦ »ç¿ëÇϸé ÇÇÇÒ ¼ö ÀÖ½À´Ï´Ù.

+ +

񃧯

+

Å« Ãæ°Ý:

+ +

Áß°£ Ãæ°Ý:

+ +

ÀÛÀº Ãæ°Ý:

+ + +

°í±Þ

+ + +

񃧯

+ +

±¸¹® ¿¡·¯

+

+AutoHotkey Basic¿¡¼­ ¿ëÀεǾú´ø ¾î¶² ±¸¹® ¿¡·¯´Â ÀÌÁ¦ ´õ ÀÌ»ó AutoHotkey_L¿¡¼­ ¿ë³³ÇÏÁö ¾Ê½À´Ï´Ù. ±×·± ¿¡·¯´Â ´ëºÎºÐ ½Äº°Çϱ⸸ ÇÏ¸é ½±°Ô ±³Á¤ÇÒ ¼ö ÀÖ½À´Ï´Ù. ´ÙÀ½ ¿¡·¯´Â ½ºÅ©¸³Æ®¸¦ AutoHotkey_L¿¡¼­ ±âµ¿ÇÏÀÚ ¸¶ÀÚ Áï½Ã ŽÁöµË´Ï´Ù. ±³Á¤ÇØ¾ß ½ºÅ©¸³Æ®¸¦ ½ÇÇàÇÒ ¼ö ÀÖ½À´Ï´Ù:

+ +

´Ù¸¥ ¾î¶² ±¸¹® ¿¡·¯´Â ½ºÅ©¸³Æ®°¡ ½ÇÇà ÁßÀÏ ¶§ ŽÁöµË´Ï´Ù. ¿¡·¯ ¸Þ½ÃÁö¸¦ ¸ÕÀú º¸¿©ÁØ ´ÙÀ½¿¡ ÇöÀç ¾²·¹µå¸¦ Á¾·áÇÕ´Ï´Ù:

+ +

¾î¶² ±¸¹® ¿¡·¯´Â ÇöÀç ŽÁöµÇÁö ¾ÊÁö¸¸, AutoHotkey_L¿¡ ¹®Á¦¸¦ ÀÏÀ¸Åµ´Ï´Ù:

+ + +

FileRead

+

FileRead´Â º¸ÅëÀÇ °æ¿ì ÄÚµå ÆäÀÌÁö »çÀÌ¿¡ ÅؽºÆ®¸¦ º¯È¯ÇÕ´Ï´Ù. ±×·¯¹Ç·Î ºÎÆÐÇÑ ÀÌÁø µ¥ÀÌÅ͸¦ Ãâ·ÂÇÒ °¡´É¼ºÀÌ ÀÖ½À´Ï´Ù. À̸¦ ÇÇÇÏ·Á¸é *c ¿É¼ÇÀ» Ãß°¡Çϰųª ´ë½Å¿¡ FileOpenÀ» »ç¿ëÇϽʽÿÀ.

+ +

º¯¼ö À̸§°ú ÇÔ¼ö À̸§

+

+[, ] ±×¸®°í ?´Â Ç¥Çö½Ä¿¡ »ç¿ëÀÌ ¿¹¾àµÇ¾î ÀÖ½À´Ï´Ù. ±×·¡¼­ ´õ ÀÌ»ó º¯¼ö À̸§À¸·Î À¯È¿ÇÏÁö ¾Ê½À´Ï´Ù. °á·ÐÀûÀ¸·Î, ?´Â (»ïÁø ¿¬»ê¿¡ »ç¿ëµÊ) ´õ ÀÌ»ó ¾çÂÊ¿¡ ½ºÆäÀ̽º°¡ ¾ø¾îµµ µË´Ï´Ù. °´Ã¼ ±¸¹®À» ÂüÁ¶ÇϽʽÿÀ.

+ +

¿¡·¯´Â ÀÚµ¿À¸·Î ŽÁöµÉ ¼öµµ ÀÖ°í ¾Æ´Ò ¼öµµ ÀÖ½À´Ï´Ù:

+ + +

Transform

+

Transform ÇÏÀ§-¸í·É¾î Áß ÀϺδ À¯´ÏÄÚµå ¹öÀüÀÇ AutoHotkey_L¿¡¼­ º¯°æµÇ°Å³ª »ç¿ëÇÒ ¼ö ¾ø½À´Ï´Ù:

+ + +

±âº» ½ºÅ©¸³Æ®

+

+AutoHotkey_L°¡ ½ºÅ©¸³Æ®¸¦ ÁöÁ¤ÇÏÁö ¾Ê°í ±âµ¿Çϸé, .ini ÆÄÀÏ ´ë½Å¿¡ .ahk ÆÄÀÏÀÌ ÀûÀçµË´Ï´Ù. ÀÌ ÆÄÀÏÀÇ À̸§Àº ÇöÀç ½ÇÇàÆÄÀÏÀÇ ÆÄÀÏÀ̸§¿¡ µû¶ó ´Ù¸¨´Ï´Ù. ´õ ÀÚ¼¼ÇÑ °ÍÀº ½ºÅ©¸³Æ®¿¡ ¸í·É¾î ÁÙ ¸Å°³º¯¼ö¸¦ °Ç³×±â¸¦ ÂüÁ¶ÇϽʽÿÀ.

+ +

SetFormat, Integer[Fast], H

+

+´ë¹®ÀÚ H°¡ »ç¿ëµÇ¸é, ½ÊÀ°Áø¼ö A-Fµµ ´ë¹®ÀÚ°¡ µË´Ï´Ù. AutoHotkey BasicÀº ¾ðÁ¦³ª ¼Ò¹®ÀÚ¸¦ »ç¿ëÇÕ´Ï´Ù. SetFormatÀ» ÂüÁ¶ÇϽʽÿÀ.

+ +

A_LastError

+

+´ÙÀ½ ¸í·É¾î´Â ÀÌÁ¦ A_LastError¸¦ ¼³Á¤ÇØ µð¹ö±ëÀ» µ½½À´Ï´Ù: FileAppend, FileRead, FileReadLine, FileDelete, FileCopy, FileMove, FileGetAttrib/Time/Size/Version, FileSetAttrib/Time, FileCreateDir, RegRead, RegWrite, RegDelete. +ÀÌ ¸í·É¾î¸¦ »ç¿ëÇϸé A_LastErrorÀÇ ÀÌÀü °ªÀÌ µ¤¾î ¾º¿©Áý´Ï´Ù.

+ +

MsgBox

+

+MsgBoxÀÇ ¶È¶ÈÇÑ ½°Ç¥ 󸮰¡ ´Ù¸¥ ¸ðµç ¸í·É¾î¿Í ÀÏ°ü¼ºÀÌ ÀÖ°Ô ±×¸®°í À¯¿¬ÇÏ°Ô °³¼±µÇ¾ú½À´Ï´ô. ´ëºÎºÐÀÇ °æ¿ì, MsgBox´Â ÀǵµÇÑ ´ë·Î Àß ÀÛµ¿ÇÕ´Ï´Ù. ¾î¶² °æ¿ì´Â ½ºÅ©¸³Æ®°¡ ¿¹ÀüÀÇ ±â¹¦ÇÑ ÇàÀ§¿¡ ÀÇÁ¸ÇÏ´Â °æ¿ì ÇàÀ§¿¡ º¯È­°¡ º¸ÀÏ ¼ö ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¸é:

+ +
; ´ÙÀ½Àº ÀÌÁ¦ Ç¥Çö½Ä (Options) ´ÙÀ½¿¡ ÅؽºÆ® (Title)·Î ¹ø¿ªµË´Ï´Ù.
+; ¿©·¯ ºÎ-Ç¥Çö½ÄÀ» °¡Áø ´ÜÀÏ Ç¥Çö½Ä (Text) À¸·Î ¹ø¿ªµÇÁö ¾Ê½À´Ï´Ù :
+MsgBox % x, y
+; ¹Ý°ýÈ£¸¦ Ãß°¡ÇÏ¸é ¿¹ÀüÀÇ ¹ø¿ªÀ» °­Á¦ÇÒ ¼ö ÀÖ½À´Ï´Ù:
+MsgBox % (x, y)
+
+; ´ÙÀ½Àº ÀÌÁ¦ ÅؽºÆ® "0, Title" ´ë½Å¿¡ ºó ´ëÈ­»óÀÚ¸¦ º¸¿©ÁÝ´Ï´Ù:
+MsgBox 0, Title
+; ´ÙÀ½Àº AutoHotkey_L ±×¸®°í AutoHotkey Basic¿¡¼­ ¸ðµÎ ¿¹»ó´ë·Î ÇàÀ§ÇÕ´Ï´Ù:
+MsgBox 0, Title, % ""   ; ºó ´ëÈ­»óÀÚ¸¦ º¸¿©ÁÝ´Ï´Ù.
+MsgBox 0`, Title        ; ÅؽºÆ® "0, Title"À» º¸¿©ÁÝ´Ï´Ù.
+
+; ´ÙÀ½Àº ÀÌÁ¦ ÅؽºÆ® ", Title" ´ë½Å¿¡ ºó ´ëÈ­»óÀÚ¸¦ º¸¿©ÁÝ´Ï´Ù:
+MsgBox,, Title
+
+ +

Gui +Owner

+

++Owner ¿É¼ÇÀ» Gui¿¡ Àû¿ëÇϸé WS_CHILD ½ºÅ¸ÀÏÀÌ Á¦°ÅµÇ°í WS_POPUP ½ºÅ¸ÀÏÀÌ ¼³Á¤µË´Ï´Ù. ÀÌ ¶§¹®¿¡ ½ºÅ¸ÀÏÀ» ¼³Á¤ÇÑ ´ÙÀ½¿¡ +Owner¸¦ »ç¿ëÇÏ¿© GuiÀÇ ºÎ¸ð âÀ» ¼³Á¤ÇÑ ½ºÅ©¸³Æ®´Â ±úÁú ¼ö ÀÖ½À´Ï´Ù.

+ +

DPI ½ºÄÉÀϸµ

+

DPI ½ºÄÉÀϸµÀº ±âº»ÀûÀ¸·Î ½ºÅ©¸³Æ® GUI¿¡ ÄÑÁý´Ï´Ù. ÀÌ ¶§¹®¿¡ DPI ¼³Á¤ÀÌ 96 (100%)ÀÌ ¾Æ´Ï¸é ½ºÅ©¸³Æ®¿¡ ¿µÇâÀ» ¹ÌĨ´Ï´Ù. À̸¦ ²ô·Á¸é, Gui -DPIScale¸¦ »ç¿ëÇϽʽÿÀ.

+ +

Windows Vista ÀÌÈÄÀÇ Sound ¸í·É¾î

+

+SoundSet, SoundGet, SoundSetWaveVolume ±×¸®°í SoundGetWaveVolume Windows Vista ÀÌÈÄ¿¡ °³¼±µÇ¾ú½À´Ï´Ù. ÀüÇüÀûÀÎ ÇàÀ§ÀÇ º¯È­·Î:

+ + +

~Æ¿µå¿Í ¸ÂÃã Á¶ÇÕ ÇÖÅ°

+

v1.1.14 ºÎÅÍ, Æ¿µå Á¢µÎ ½Éº¼Àº ¸ÂÃã Á¶ÇÕ¿¡ ¼ö½Ä Å°·Î »ç¿ëµÉ ¶§ Å°°¡ ÀÛµ¿ÇÏ´Â ¹æ½Ä¿¡ ¿µÇâÀ» ¹ÌĨ´Ï´Ù.

+ +

¸ÂÃã Á¶ÇÕÅ°¿Í Down/Up ÇÖÅ°

+

+Æ¿µå Á¢µÎ ½Éº¼ÀÌ »ç¿ëµÇ´Â °æ¿ì¸¦ Á¦¿ÜÇÏ°í, Å°-´Ù¿î°ú Å°-¾÷ ÇÖÅ°°¡ ¸ÂÃã ¼ö½Ä Å°·Î Á¤ÀǵǾî ÀÖ´Ù¸é, Å°¸¦ ¶¿ ¶§ µÑ ¸ðµÎ ÃË¹ß µË´Ï´Ù. ¿¹¸¦ µé¾î, x & y::À̸é x¸¦ ¶¿ ¶§ x::¿Í x up::°¡ ¸ðµÎ ÃË¹ß µË´Ï´Ù. ¿¹Àü¿¡´Â x::°¡ ÃË¹ß µÇÁö ¾Ê¾Ò½À´Ï´Ù.

+ +

If var is type

+

If var is type´Â ½Ã½ºÅÛ ·ÎÄÉÀÏÀ» ¹«½ÃÇÕ´Ï´Ù. ´Ü, StringCaseSense, LocaleÀÌ »ç¿ëµÇ¾ú´Ù¸é ¿¹¿ÜÀÔ´Ï´Ù.

+ +

â ±×·ì

+

+GroupActivate´Â È°¼ºÈ­ ÇÒ Ã¢À» ¹ß°ßÇÏÁö ¸øÇϸé ErrorLevel¿¡ 1À» ¼³Á¤ÇÕ´Ï´Ù, ±×·¸Áö ¾ÊÀ¸¸é 0À» ¼³Á¤ÇÕ´Ï´Ù. ÀÌÀü¿¡´Â ErrorLevelÀ» º¯°æÇÏÁö ¾Ê°í ±×´ë·Î µÎ¾ú½À´Ï´Ù.

+

+GroupAddÀÇ Label ¸Å°³º¯¼ö´Â â ±×·ì¿¡ ÀüüÀûÀ¸·Î Àû¿ëµË´Ï´Ù. ±×·ì ¾ÈÀÇ Æ¯Á¤ â ±Ô°Ý Çϳª¿¡¸¸ Àû¿ëµÇÁö ¾Ê½À´Ï´Ù. ÀÌ º¯°æ¿¡ °üÇÑ Åä·ÐÀÌ Æ÷·³¿¡ ÀÖ½À´Ï´Ù. ±×·¸Áö¸¸, ÀÌ ¸Å°³º¯¼ö¸¦ »ç¿ëÇÏ´Â °ÍÀº Ãßõ ÇÏÁö ¾Ê½À´Ï´Ù; ´ë½Å¿¡ GroupActivate¸¦ È£ÃâÇÑ ÈÄ¿¡ ErrorLevelÀ» Á¡°ËÇϽʽÿÀ.

+ +

Run / RunWait

+

+AutoHotkey_LÀº Run°ú RunWait ¸í·É¾î°¡ ¸ñÇ¥(Target) ¸Å°³º¯¼ö¸¦ ¹ø¿ªÇÏ´Â ¹æ½ÄÀÌ ¾à°£ °³¼±µÇ¾ú½À´Ï´Ù. ÀÌ ¶§¹®¿¡ ¾ÆÁÖ Èñ±ÍÇÑ °æ¿ìÀ̱â´Â ÇÏÁö¸¸, ¿¹Àü¿¡´Â ÀÛµ¿ÇÏÁö ¾Ê´ø °ÍµéÀÌ ÀÛµ¿ÇÏ°Ô µÇ¾î AutoHotkey Basic¿¡¼­ ÀÌ¹Ì Àß ÀÛµ¿ÇÏ´Â ½ºÅ©¸³Æ®¿¡ ¿µÇâÀ» ¹ÌÄ¥ ¼ö ÀÖ½À´Ï´Ù. »õ·Î¿î ÇàÀ§´Â ´ÙÀ½°ú °°½À´Ï´Ù:

+ + +

Control-Z

+

Loop Read ±×¸®°í FileReadLine´Â ´õ ÀÌ»ó ¹®ÀÚ Control-Z (0x1A)¸¦ ÆÄÀÏ ³¡ Ç¥½ÄÀ¸·Î ÀÌÇØÇÏÁö ¾Ê½À´Ï´Ù. Control-Z´Â ¸ðµÎ, ÆÄÀÏ ¸Ç ³¡¿¡ ¿À´õ¶óµµ, ±×´ë·Î ÀûÀçµË´Ï´Ù. FileRead´Â ÀÌ¹Ì ÀÌ ¹®ÀÚ¸¦ ¹«½ÃÇÕ´Ï´Ù. ±×·¡¼­ ÀÌ ¹®Á¦¿¡ ¿µÇâÀ» ¹ÞÁö ¾Ê½À´Ï´Ù.

+ +

ȣȯ ¸ðµå

+

+½ºÅ©¸³Æ®¸¦ ½ÇÇàÇÏ´Â µ¥ »ç¿ëµÈ EXE ÆÄÀÏÀÇ Æ¯¼º¿¡ ȣȯ ¸ðµå°¡ Windows 95, 98/ME ¶Ç´Â NT4·Î ¼³Á¤µÇ¾ú´Ù¸é, +±× ½ºÅ©¸³Æ®´Â ¿Ã¹Ù¸£°Ô ÀÛµ¿ÇÏÁö ¸øÇÕ´Ï´Ù. ¿Ö³ÄÇϸé ȣȯ ¸ðµå ¶§¹®¿¡ ƯÁ¤ ¹öÀüÀÇ Windows°¡ ¾îÇø®ÄÉÀ̼ǿ¡ º¸°íµÇÁö¸¸, AutoHotkey_LÀº ÀÌ·± ¹öÀüÀ» Áö¿øÇÏÁö ¾Ê±â ¶§¹®ÀÔ´Ï´Ù. ¿¹¸¦ µé¾î, ȣȯ ¸ðµå¸¦ Windows 95 or 98/ME¿¡ ¼³Á¤Çϸé MsgBox %A_OSVersion%´Â WIN_NT4¶ó°í º¸°íÇÕ´Ï´Ù.

+ +

A_IsCompiled

+

A_IsCompiled´Â ½ºÅ©¸³Æ®°¡ ÄÄÆÄÀϵÇÁö ¾Ê¾Ò´Ù¸é ºó ¹®ÀÚ¿­·Î Á¤Àǵ˴ϴÙ. ÀÌÀü¿¡´Â Á¤ÀǵÇÁö ¾ÊÀº ä ±×´ë·Î µÎ¾ú½À´Ï´Ù. ±× ¶§¹®¿¡ ½ºÅ©¸³Æ®°¡ ÄÄÆÄÀϵÇÁö ¾Ê¾ÒÀ½¿¡µµ A_IsCompiled := 1¿Í °°Àº ÇÒ´çÀÌ À¯È¿Çß¾ú½À´Ï´Ù. ÀÌÁ¦´Â ¸ðµç °æ¿ì¿¡ Àбâ Àü¿ë ³»Àå º¯¼ö·Î Ãë±ÞµË´Ï´Ù.

+ +

°ø¹é ¹®ÀÚ ÇǽÅ

+

+`t¿Í ` °°Àº ÇǽŠ°ø¹é¹®ÀÚ´Â ´õ ÀÌ»ó °¢ ÀÎÀÚÀÇ ¾Õ µÚ¿¡¼­ Á¦°ÅµÇÁö ¾Ê½À´Ï´Ù. ¿¹¸¦ µé¾î, StringReplace s, s, `t´Â ÀÌÁ¦ À¯È¿ÇÏ¸ç ¸ðµç ÅÇ ¹®ÀÚ¸¦ s·ÎºÎÅÍ Á¦°ÅÇÕ´Ï´Ù.

+ + +

Unicode vs ANSI

+

+ÅؽºÆ® °ªÀº Á¾Á¾ ¹®ÀÚ¿­(string)À̶ó°í ºÎ¸¨´Ï´Ù. °¢ ÅؽºÆ®ÀÇ °ªÀÌ ¹®ÀÚ¿­ÀÇ ¿¬¼Ó ¶Ç´Â ÁÙÁö¾î(string) ÀúÀåµÇ¾î Àֱ⠶§¹®ÀÔ´Ï´Ù. °¢ ¹®ÀÚÀÇ ¼ýÄ¡ ¹®ÀÚ ÄÚµå¿Í Å©±â (¹ÙÀÌÆ® ´ÜÀ§)´Â ¾î´À ¹öÀüÀÇ AutoHotkey¸¦ »ç¿ëÇÏ°í Àִ°¡¿¡ ´Þ·Á ÀÖ½À´Ï´Ù: Unicode ¶Ç´Â ANSI. ÀÌ·± ¼¼ºÎ »çÇ×Àº ´ÙÀ½°ú °°Àº ÀÏÀ» ÇÏ·Á´Â ½ºÅ©¸³Æ®¿¡ ÀüÇüÀûÀ¸·Î Áß¿äÇÕ´Ï´Ù:

+ +

+ÇÑ °¡Áö Çü½Ä¸¸ ¿°µÎ¿¡ µÎ°í ¼³°èµÈ ½ºÅ©¸³Æ®´Â Á¾Á¾ ¾û¶×ÇÑ ¹öÀüÀÇ AutoHotkey·Î ½ÇÇàÇÒ ¶§ ¹®Á¦¿¡ ºÀÂøÇÕ´Ï´Ù. ¿¹¸¦ µé¸é, ¾î¶² ½ºÅ©¸³Æ®°¡ AutoHotkey Basic¿ëÀ¸·Î ÀÛ¼ºµÇ¾ú´Ù¸é ANSI ¹öÀüÀÇ AutoHotkey_L¿¡¼­´Â Àß ÀÛµ¿ÇÏÁö¸¸ À¯´ÏÄÚµå ¹öÀü¿¡¼­´Â ½ÇÆÐÇÕ´Ï´Ù. ¾î´À ¹öÀüÀ» »ç¿ëÇÏ°í ÀÖ´ÂÁö Àß ¸ð¸£°Ú´Ù¸é, ´ÙÀ½ ½ºÅ©¸³Æ®¸¦ ½ÇÇàÇØ º¸½Ê½Ã¿À:

+ +
MsgBox % A_IsUnicode ? "Unicode" : "ANSI"
+

+ANSI: °¢ ¹®ÀÚ´Â ÇÑ ¹ÙÀÌÆ® (8 ºñÆ®)ÀÔ´Ï´Ù. 127À» ³Ñ´Â ¹®ÀÚ ÄÚµå´Â ½Ã½ºÅÛÀÇ ¾ð¾î ¼³Á¤¿¡ µû¶ó ´Þ¶óÁý´Ï´Ù.

+

Unicode: °¢ ¹®ÀÚ´Â µÎ ¹ÙÀÌÆ® (16 ºñÆ®)ÀÔ´Ï´Ù. ¹®ÀÚ ÄÚµå´Â UTF-16 Çü½ÄÀ¸·Î Á¤Àǵ˴ϴÙ.

+

Àṉ̀¸Á¶ ÁÖÀÇ: ±â¼úÀûÀ¸·Î, ¾î¶² À¯´ÏÄÚµå ¹®ÀÚ´Â µÎ °³ÀÇ 16-ºñÆ® ÄÚµå ´ÜÀ§·Î Ç¥ÇöµË´Ï´Ù. ÇÕÃļ­ "´ë¸® ½Ö(surrogate pair)"¶ó°í ºÎ¸¨´Ï´Ù. ºñ½ÁÇÏ°Ô, ¾î¶² ANSI ÄÚµå ÆäÀÌÁö´Â (º¸Åë DBCS(Double Byte Character Sets)¶ó°í ºÎ¸§) µÎ ¹ÙÀÌÆ® ¹®ÀÚ¸¦ ´ã°í ÀÖ½À´Ï´Ù. ±×·¸Áö¸¸, ½Ç¿ëÀûÀÎ ÀÌÀ¯·Î, À̰͵éÀ» °ÅÀÇ ¾ðÁ¦³ª µÎ °³ÀÇ °³º° ´ÜÀ§·Î Ãë±ÞÇÕ´Ï´Ù (´Ü¼øÇÏ°Ô Çϱâ À§ÇØ ±×³É "¹®ÀÚ(characters)"¶ó°í ºÎ¸¨´Ï´Ù).

+ +

VarSetCapacity

+

+VarSetCapacity´Â º¯¼öÀÇ °¡¿ë ´É·ÂÀ» ¹ÙÀÌÆ® ´ÜÀ§·Î ¼³Á¤ÇÕ´Ï´Ù. º¯¼öÀÇ °¡¿ë´É·ÂÀ» ¹®ÀÚÀÇ °³¼ö¿¡ ±â¹ÝÇÏ¿© ¼³Á¤ÇÏ·Á¸é, ¹®ÀÚÀÇ Å©±â¸¦ ¹Ýµå½Ã °í·ÁÇØ¾ß ÇÕ´Ï´Ù. ¿¹¸¦ µé¾î:

+
VarSetCapacity(ansi_var,    capacity_in_chars)
+VarSetCapacity(unicode_var, capacity_in_chars * 2)
+VarSetCapacity(native_var,  capacity_in_chars * (A_IsUnicode ? 2 : 1))
+VarSetCapacity(native_var,  t_size(capacity_in_chars))  ; ¾Æ·¡ ÂüÁ¶
+
+

´ÙÀ½Àº VarSetCapacityÀÇ µÎ °¡Áö ÁÖ¿ä »ç¿ë¹ýÀÔ´Ï´Ù:

+
    +
  1. ¿¹ÃøÇÑ °³¼öÀÇ ¹®ÀÚ¸¦ º¸À¯Çϵµ·Ï º¯¼ö¸¦ È®ÀåÇÕ´Ï´Ù. ±×¸®ÇÏ¿© Á¡ÁøÀû °áÇÕÀ» ÅëÇØ ¹®ÀÚ¿­À» ±¸¼ºÇÒ ¶§ ¼öÇ༺´ÉÀ» °³¼±ÇÒ ¼ö ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î, VarSetCapacity(var, 1000)´Â 1000 ¹ÙÀÌÆ®¸¦ Çã¿ëÇÕ´Ï´Ù. ÀÌ°ÍÀº À¯´ÏÄÚµå ¹öÀüÀÇ AutoHotkey_L¿¡¼­´Â 500 ¹®ÀÚ¿¡ ºÒ°úÇÕ´Ï´Ù. ÀÌ·¸°Ô ÇÏ¸é ¼öÇ༺´É¿¡ ¿µÇâÀ» ¹ÌÄ¥ ¼ö ÀÖÁö¸¸, ½ºÅ©¸³Æ®´Â ¿©ÀüÈ÷ ¿Ã¹Ù¸£°Ô ÀÛµ¿ÇÕ´Ï´Ù.
  2. +
  3. º¯¼ö Å©±â¸¦ Á¶Á¤ÇØ ÀÌÁø ±¸Á¶Ã¼¸¦ ´ã½À´Ï´Ù. ±¸Á¶Ã¼¿¡ Á÷Á¢ÀûÀ¸·Î ÅؽºÆ®°¡ ´ã°Ü ÀÖ´Ù¸é, ±× ÅؽºÆ®ÀÇ Çü½ÄÀ» ¹Ýµå½Ã °í·ÁÇØ¾ß ÇÕ´Ï´Ù. Çü½ÄÀº ±¸Á¶Ã¼¿¡ µû¶ó ´Ù¸¨´Ï´Ù - ¾î¶² °æ¿ì´Â À¯´ÏÄÚµå ¹öÀüÀÇ AutoHotkey_L¿¡¼­µµ ANSI ÅؽºÆ®°¡ »ç¿ëµË´Ï´Ù. º¯¼ö°¡ ³Ê¹« ÀÛÀ¸¸é, ½ºÅ©¸³Æ®´Â Ãæµ¹Çϰųª ¾Æ´Ï¸é ¿¹»óÇÏÁö ¸øÇÑ ÇàÀ§¸¦ ÇÒ ¼ö ÀÖ½À´Ï´Ù (±¸Á¶Ã¼¸¦ ¾î¶»°Ô »ç¿ëÇϴ°¡¿¡ µû¶ó).
  4. +
+ +

DllCall

+

+"Str" À¯ÇüÀÌ »ç¿ëµÉ ¶§, ÇöÀç ºôµåÀÇ °íÀ¯ À¯ÇüÀÇ ¹®ÀÚ¿­À̶ó´Â ¶æÀÔ´Ï´Ù. ¾î¶² ÇÔ¼ö´Â ƯÁ¤ÇÑ ÇüÅÂÀÇ ¹®ÀÚ¿­À» ¿ä±¸Çϰųª µ¹·ÁÁֱ⠶§¹®¿¡, ´ÙÀ½ÀÇ ¹®ÀÚ¿­ À¯ÇüÀ» »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù:

+ + + + + +
 ¹®ÀÚ Å©±âC / Win32 TypesÀÎÄÚµù
WStr16-ºñÆ®wchar_t*, WCHAR*, LPWSTR, LPCWSTRUTF-16
AStr8-ºñÆ®char*, CHAR*, LPSTR, LPCSTRANSI (½Ã½ºÅÛ ±âº» ANSI ÄÚµå ÆäÀÌÁö)
Str--TCHAR*, LPTSTR, LPCTSTRÀ¯´ÏÄÚµå ºôµåÀÇ WStr ±×¸®°í ANSI ºôµåÀÇ AStr°ú µ¿µî.
+

+"Str" ¶Ç´Â ÇöÀç ºôµå¿¡ ´ëÇÏ¿© ±×¿Í µ¿µîÇÑ À¯ÇüÀÌ ¸Å°³º¯¼ö·Î »ç¿ëµÇ¸é, ±× ¹®ÀÚ¿­ ¶Ç´Â º¯¼öÀÇ ÁÖ¼Ò°¡ ÇÔ¼ö¿¡ °Ç³×Áý´Ï´Ù. ±×·¸Áö ¾ÊÀ¸¸é ´ë½Å¿¡ ¹®ÀÚ¿­ÀÇ Àӽà »çº»ÀÌ ¿øÇÏ´Â Æ÷¸ËÀ¸·Î »ý¼ºµÇ°í °Ç³×Áý´Ï´Ù. ÀϹÝÀûÀ¸·Î, "AStr" ±×¸®°í "WStr"Àº ÇÔ¼ö°¡ ±× ¸Å°³º¯¼ö¿¡ º¯¼ö¸¦ ¾µ ¶§ »ç¿ëÇÏ¸é ¾È µË´Ï´Ù.

+

+ÁÖÀÇ: "AStr" ±×¸®°í "WStr"Àº ¸Å°³º¯¼ö¿¡ ´ëÇÏ¿© ±×¸®°í ±× ÇÔ¼öÀÇ ¹Ýȯ °ª¿¡ ´ëÇÏ¿© ¶È °°ÀÌ À¯È¿ÇÕ´Ï´Ù.

+

+ÀϹÝÀûÀ¸·Î, ½ºÅ©¸³Æ®°¡ ¹®ÀÚ¿­À» ¸Å°³º¯¼ö·Î ¹Þ´Â ÇÔ¼ö¸¦ DllCall¸¦ ÅëÇÏ¿© È£ÃâÇϸé, ´ÙÀ½ Á¢±Ù¹ý Áß Çϳª¸¦ ÃëÇØ¾ß ÇÕ´Ï´Ù:

+
    +
  1. +ÇÔ¼ö¸¦ Unicode (W) ¹öÀü°ú ANSI (A) ¹öÀüÀ¸·Î ¸ðµÎ »ç¿ëÇÒ ¼ö ÀÖÀ¸¸é, ÇöÀç ºôµå¿¡ ´ëÇÏ¿© ÀûÀýÇÑ ¹öÀüÀ» È£ÃâÇÕ´Ï´Ù. ´ÙÀ½ ¿¹Á¦¿¡¼­, "DeleteFile"Àº ³»ºÎÀûÀ¸·Î "DeleteFileA" ¶Ç´Â "DeleteFileW"À̶ó°í ºÎ¸¨´Ï´Ù. "DeleteFile" ÀÚü´Â ½ÇÁ¦·Î Á¸ÀçÇÏÁö ¾ÊÀ¸¹Ç·Î, DllCallÀº ÀÚµ¿À¸·Î ÇöÀç ºôµå¿¡ ´ëÇÏ¿© ÀûÀýÇÏ°Ô "A" ¶Ç´Â "W"¸¦ ½ÃµµÇÕ´Ï´Ù: + +
    DllCall("DeleteFile", "Ptr", &filename)
    +DllCall("DeleteFile", "Str", filename)
    +

    + ´ÙÀ½ ¿¹Á¦¿¡¼­, &filenameÀº ¹®ÀÚ¿­ÀÇ ÁÖ¼Ò¸¦ Á¤È®ÇÏ°Ô ÀÖ´Â ±×´ë·Î °Ç³Ü´Ï´Ù. ±×·¡¼­ ÇÔ¼ö´Â ¹®ÀÚ¿­À» "Str" À¯Çü°ú °°Àº Çü½ÄÀ̶ó°í ¿¹»óÇØ¾ß ÇÕ´Ï´Ù. AutoHotkey Basic¿¡¼­ "UInt"¸¦ "Ptr" ´ë½Å¿¡ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. ±×·¯³ª °á°ú ÄÚµå´Â 64-ºñÆ®¿Í ȣȯµÇÁö ¾Ê½À´Ï´Ù.

    +

    + ÁÖÀÇ: ÇÔ¼ö¸¦ Á¤È®ÇÏ°Ô ÁöÁ¤µÈ ´ë·Î ¹ß°ßÇÒ ¼ö ¾øÀ¸¸é, AutoHotkey_LÀº ¾î´À DLLÀÌ ÁöÁ¤µÇ¾î Àִ°¡¿¡ »ó°ü ¾øÀÌ "A" ¶Ç´Â "W" Á¢µÎ»ç¸¦ µ¡ºÙÀÔ´Ï´Ù. ±×·¸Áö¸¸, AutoHotkey BasicÀº User32.dll, Kernel32.dll, ComCtl32.dll, ¶Ç´Â Gdi32.dll¿¡ ÀÖ´Â ÇÔ¼ö¿¡ ´ëÇؼ­¸¸ "A" Á¢µÎ»ç¸¦ ºÙÀÔ´Ï´Ù.

  2. +
  3. ÇÔ¼ö°¡ ¿ÀÁ÷ ƯÁ¤ À¯ÇüÀÌ ¹®ÀÚ¿­¸¸ ÀÔ·ÂÀ¸·Î ¹Þ´Â´Ù¸é, ±× ½ºÅ©¸³Æ®´Â ÀûÀýÇÑ ¹®ÀÚ¿­ À¯ÇüÀ» »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù: +
    DllCall("DeleteFileA", "AStr", filename)
    +DllCall("DeleteFileW", "WStr", filename)
  4. +
  5. + ÇÔ¼ö°¡ (ºñ-°íÀ¯ Çü½ÄÀ¸·Î) ¹®ÀÚ¿­À» ¼öÁ¤ÇØ¾ß ÇÑ´Ù¸é, ½ºÅ©¸³Æ®´Â ¹öÆÛ¸¦ À§¿¡ ±â¼úÇÑ ´ë·Î ÇÒ´çÇÏ°í ±×ÀÇ ÁÖ¼Ò¸¦ ÇÔ¼ö¿¡ °Ç³×¾ß ÇÕ´Ï´Ù. ¸Å°³º¯¼ö°¡ ÀÔ·ÂÀ» ¹Þ´Â´Ù¸é, ½ºÅ©¸³Æ®´Â ¶ÇÇÑ ÀÔ·Â ¹®ÀÚ¿­µµ ÀûÀýÇÑ Çü½ÄÀ¸·Î º¯È¯ÇØ¾ß ÇÕ´Ï´Ù; StrPutÀ» »ç¿ëÇÏ¸é º¯È¯ÇÒ ¼ö ÀÖ½À´Ï´Ù.
  6. +
+ +

NumPut / NumGet

+

+NumPutÀ̳ª NumGetÀÌ ¹®ÀÚ¿­¿¡ »ç¿ëµÉ ¶§, ÁÖ¾îÁø À¯ÇüÀÇ ¹®ÀÚ¿­¿¡ ´ëÇÏ¿© ¿ÀÇÁ¼Â°ú À¯ÇüÀÌ Á¤È®ÇØ¾ß ÇÕ´Ï´Ù. ´ÙÀ½À» ÁöħÀ¸·Î »ïÀ¸½Ê½Ã¿À:

+
;  8-bit/ANSI   strings:  size_of_char=1  type_of_char="Char"
+; 16-bit/UTF-16 strings:  size_of_char=2  type_of_char="UShort"
+nth_char := NumGet(var, (n-1)*size_of_char, type_of_char)
+NumPut(nth_char, var, (n-1)*size_of_char, type_of_char)
+

+var¿¡ À½¼ö ÇüÅÂÀÇ ¹®ÀÚ¿­ÀÌ µé¾î ÀÖ´Ù¸é, ÀûÀýÇÑ °ªÀº A_IsUnicode¿¡ ±â¹ÝÇÏ¿© °áÁ¤ÇÒ ¼ö ÀÖ½À´Ï´Ù:

+
nth_char := NumGet(var, t_size(n-1), t_char())
+NumPut(nth_char, var, t_size(n-1), t_char())
+
+; Æí¸®¼º°ú ¸í·á¼ºÀ» À§ÇØ ÇÔ¼ö¸¦ Á¤ÀÇÇÕ´Ï´Ù:
+t_char() {
+    return A_IsUnicode ? "UShort" : "Char"
+}
+t_size(char_count=1) {
+    return A_IsUnicode ? char_count*2 : char_count
+}
+ +

Æ÷ÀÎÅÍ Å©±â

+

+Æ÷ÀÎÅÍ Å©±â´Â 32-ºñÆ® ºôµå¿¡ ´ëÇÏ¿© 4 ¹ÙÀÌÆ® (AutoHotkey Basic Æ÷ÇÔ) 64-ºñÆ® ºôµå¿¡ ´ëÇÏ¿© 8 ¹ÙÀÌÆ®ÀÔ´Ï´Ù. ±¸Á¶Ã¼³ª DllCallÀ» »ç¿ëÇÏ´Â ½ºÅ©¸³Æ®´Â µÎ Ç÷§Æû¿¡¼­ ¸ðµÎ ¿Ã¹Ù¸£°Ô ÀÛµ¿ÇÏ·Á¸é ÀÌ »ç½ÇÀ» °í·ÁÇÒ ÇÊ¿ä°¡ ÀÖ½À´Ï´Ù. ¿µÇâÀ» ¹Þ´Â ±¸Ã¼ÀûÀÎ ¿µ¿ªÀº ´ÙÀ½°ú °°½À´Ï´Ù:

+ +

+Å©±â¿Í ¿ÀÇÁ¼Â °è»êÀº A_PtrSizeÀ» »ç¿ëÇϽʽÿÀ. DllCall, NumPut ±×¸®°í NumGet¿¡´Â ÀûÀýÇÏ°Ô Ptr À¯ÇüÀ» »ç¿ëÇϽʽÿÀ.

+

+ÇʵåÀÇ ¿ÀÇÁ¼ÂÀº º¸Åë ±× ¾Õ¿¡ ÀÖ´Â ¸ðµç ÇʵåÀÇ Àüü Å©±âÀÓÀ» ±â¾ïÇϽʽÿÀ. ¶Ç Çڵ鵵 (HWND¿Í HBITMAP °°Àº À¯ÇüÀ» Æ÷ÇÔÇÏ¿©) º»ÁúÀûÀ¸·Î Æ÷ÀÎÅÍ-À¯ÇüÀÓÀ» ¸í½ÉÇϽʽÿÀ.

+
/*
+  typedef struct _PROCESS_INFORMATION {
+    HANDLE hProcess;    // Ptr
+    HANDLE hThread;
+    DWORD  dwProcessId; // UInt (4 bytes)
+    DWORD  dwThreadId;
+  } PROCESS_INFORMATION, *LPPROCESS_INFORMATION;
+*/
+VarSetCapacity(pi, A_PtrSize*2 + 8) ; Ptr + Ptr + UInt + UInt
+DllCall("CreateProcess", <omitted for brevity>, "Ptr", &pi, <omitted>)
+hProcess    := NumGet(pi, 0)         ; Defaults to "Ptr".
+hThread     := NumGet(pi, A_PtrSize) ;
+dwProcessId := NumGet(pi, A_PtrSize*2,     "UInt")
+dwProcessId := NumGet(pi, A_PtrSize*2 + 4, "UInt")
+
+ + +














+ + diff --git a/src/docs/FAQ.htm b/src/docs/FAQ.htm new file mode 100644 index 0000000..b9ef659 --- /dev/null +++ b/src/docs/FAQ.htm @@ -0,0 +1,382 @@ + + + + +AutoHotkey FAQ + + + + + +

ÀÚÁÖ ¹¯´Â Áú¹®(FAQ)

+ +

¿©·¯ºÐÀÇ Áú¹®ÀÌ ¾Æ·¡ ¸®½ºÆ®¿¡ ¾ø´Ù¸é, °øµ¿Ã¼°¡ ¿î¿µÇÏ´Â autoHotkey.netÀÇ FAQ¸¦ Á¡°ËÇØ º¸½Ê½Ã¿À.

+ +

¾ð¾î ±¸¹®

+ +

ÀϹÝÀû °ú¾÷

+ +

ÇÖÅ°, ÇÖ½ºÆ®¸µ, ±×¸®°í ¸®¸ÊÇÎ

+ +

¾ð¾î ±¸¹®

+

¾ðÁ¦ Àοë Ç¥½ÄÀ» ¸í·É¾î¿Í ±×ÀÇ ¸Å°³º¯¼ö¿¡ »ç¿ëÇϴ°¡?

+

+µÎ°ã µû¿ÈÇ¥ (")´Â Ç¥Çö½Ä ¾È¿¡¼­¸¸ Ưº°ÇÑ Àǹ̰¡ ÀÖ½À´Ï´Ù. ´Ù¸¥ °÷¿¡¼­´Â ¹®ÀÚ ±×´ë·Î ¸¶Ä¡ Á¤»ó ¹®ÀÚó·³ Ãë±ÞµË´Ï´Ù. ±×·¸Áö¸¸, ½ºÅ©¸³Æ®°¡ ÇÁ·Î±×·¥À» ±âµ¿½ÃÅ°°Å³ª ¹®¼­¸¦ ¿­¶§, ¿î¿µ üÁ¦´Â º¸Åë °ãµû¿ÈÇ¥°¡ ¸í·É¾î-ÁÙ ¸Å°³º¯¼ö¿¡ µÑ·¯Á® Àֱ⸦ ¿ä±¸ÇÕ´Ï´Ù. ´ÙÀ½ ¿¹Á¦Ã³·³, ¾È¿¡ °ø¹éÀÌ ÀÖÀ¸¸é ¸»ÀÔ´Ï´Ù: Run, Notepad.exe "C:\My Documents\Address List.txt".

+ +

Á¤È®ÇÏ°Ô ¾ðÁ¦ º¯¼ö À̸§À» ÆÛ¼¾Æ® ±âÈ£·Î µÑ·¯½Î´Â°¡?

+

+º¯¼ö À̸§Àº ¾ðÁ¦³ª ÆÛ¼¾Æ® ±âÈ£·Î µÑ·¯½Ô´Ï´Ù. ´Ü, ¾Æ·¡ÀÇ º¼µåü·Î º¸¿©ÁØ °ÍÀº Á¦¿ÜÇÕ´Ï´Ù:

+

1) ÀÔ·Â º¯¼ö³ª Ãâ·Â º¯¼öÀÎ ¸Å°³º¯¼ö¿¡: StringLen, OutputVar, InputVar
+ 2) ÇÒ´çÀÇ ¿ÞÂÊ¿¡: Var = 123abc
+ 3) ÀüÅëÀûÀÎ (ºñ-Ç¥Çö½Ä) if-¼­¼ú¹®ÀÇ ¿ÞÂÊ¿¡: If Var1 < %Var2%
+4) Ç¥Çö½ÄÀÇ ¸ðµç °÷¿¡. ¿¹¸¦ µé¾î:

+
If (Var1 <> Var2)
+    Var1 := Var2 + 100
+ +

¾ðÁ¦ ÆÛ¼¾Æ® ±âÈ£¿Í ¼ûÇ¥¸¦ ÇǽŽÃÄÑ¾ß Çϴ°¡?

+

+¹®ÀÚ ±×´ë·ÎÀÇ ÆÛ¼¾Æ® ±âÈ£´Â ¹Ýµå½Ã ÇǽŽÃÄÑ¾ß ÇÕ´Ï´Ù. ¾Õ¿¡´Ù ¾×¼¾Æ®/¹éƽÀ» ºÙÀÌ¸é µË´Ï´Ù. ¿¹¸¦ µé¾î: MsgBox ÇöÀç ¹éºÐ·üÀº 25`% ÀÔ´Ï´Ù. +¹®ÀÚ ±×´ë·ÎÀÇ ½°Ç¥µµ ¹Ýµå½Ã ÇǽŽÃÄÑ¾ß ÇÕ´Ï´Ù (`,). ´Ü, MsgBox ¶Ç´Â ¸í·É¾îÀÇ ¸¶Áö¸· ¸Å°³º¯¼ö·Î »ç¿ëµÉ ¶§´Â Á¦¿ÜÇÕ´Ï´Ù (ÀÌ °æ¿ì ¾×¼¾Æ®´Â Çã¿ëµÇÁö¸¸ Çʼö´Â ¾Æ´Õ´Ï´Ù).

+

+½°Ç¥³ª ÆÛ¼¾Æ® ±âÈ£°¡ Ç¥Çö½Ä ¾È¿¡¼­ µû¿ÈÇ¥·Î µÑ·¯ ½ÎÀ̸é, ¾×¼¾Æ®´Â Çã¿ëµÇÁö¸¸ Çʼö´Â ¾Æ´Õ´Ï´Ù. ¿¹¸¦ µé¾î: Var := "15%".

+ +

ÀϹÝÀûÀÎ °ú¾÷

+ +

°ø½Ä ºôµå ¶Ç´Â ¿¹Àü ¹èÆ÷º»Àº ¾îµð¿¡¼­ ãÀ» ¼ö Àִ°¡?

+

+¿ÀÅäÇÖÅ° ³»·Á¹Þ±â ÆäÀÌÁö¸¦ ÂüÁ¶ÇÕ´Ï´Ù.

+ +

¿Ö ½ºÅ©¸³Æ®¿¡¼­ ¾î¶² ÁÙÀº Àý´ë·Î ½ÇÇàµÇÁö ¾Ê´Â°¡?

+

+¾î¶² ÁÙÀ̵ç Áï½Ã ½ÇÇàÇÏ°í ½Í´Ù¸é ½ºÅ©¸³Æ®°¡ ½ÇÇàµÉ ¶§ »ó´Ü¿¡ ÀÖ¾î¾ß ÇÕ´Ï´Ù. ±× ´ÙÀ½¿¡ ÇÖÅ°, ÇÖ½ºÆ®¸µ, ¶Ç´Â ReturnÀÌ ³ª¿Í¾ß ÇÕ´Ï´Ù. ´õ ÀÚ¼¼ÇÑ °ÍÀº ÀÚµ¿-½ÇÇà ¼½¼ÇÀ» ÂüÁ¶ÇϽʽÿÀ.

+

¶ÇÇÑ, ÇÑ ÁÙ ÀÌ»ó ½ÇÇàÇÏ´Â ÇÖÅ°´Â ±×ÀÇ Ã¹ ¹ø° ÁÙÀÌ ÇÖÅ° ¹Ù·Î ¾Æ·¡¿¡ ³ªÅ¸³ª¾ß ÇÕ´Ï´Ù. °°Àº ÁÙÀÌ ¾Æ´Õ´Ï´Ù. ¿¹¸¦ µé¾î:

+
#space::  ; Win+Spacebar
+Run Notepad
+WinWaitActive Untitled - Notepad
+WinMaximize
+return
+ +

¿Ö ½ºÅ©¸³Æ®°¡ XP¿¡¼­´Â Àß ½ÇÇàµÇ´Âµ¥ Vista³ª Windows 7 ¶Ç´Â 8¿¡¼­´Â ½ÇÇàµÇÁö ¾Ê´Â°¡?

+

+¿î¿µÃ¼Á¦¸¦ ÀüȯÇϸé, ´Ù¸¥ ¹«¾ð°¡µµ ¿ª½Ã ¹Ù²ð °¡´É¼ºÀÌ ³ô½À´Ï´Ù. ±× ¶§¹®¿¡ ½ºÅ©¸³Æ®¿¡ ¿µÇâÀ» ³¢Ä¥ ¼ö ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¸é, »õ ÄÄÇ»Å͸¦ ±¸ÀÔÇß´Ù¸é, ¿¹Àü ÄÄÇ»ÅÍ¿Í ¾î¶»°Ôµç ´Ù¸¦ °Ì´Ï´Ù. ¶Ç »õ·Î¿î ¹öÀüÀÇ ¿ÀÅäÇÖÅ°·Î ¾÷±×·¹À̵åÇß´Ù¸é, ¿¹Àü¿¡´Â ¾î¶² ¹öÀüÀ̾ú´ÂÁö ¾Ë¾Æº¸°í º¯°æ ±â·Ï°ú ȣȯ¼º ³ëÆ®¸¦ Á¡°ËÇØ º¸½Ê½Ã¿À.

+

+XP¿¡¼­ ºñ½ºÅ¸³ª ±× ÀÌÈÄ ¹öÀüÀÇ À©µµ¿ìÁî·Î ÀÌÀüÇϸé ÀÚÁÖ ¹ß»ýÇÏ´Â ¹®Á¦´Â ÇÁ·Î±×·¥ÀÌ "½Â°ÝµÇ¾î ¹ö·Á¼­" (°ü¸®ÀÚ·Î ½ÇÇàµÇ¾î ¹ö¸®¹Ç·Î) ÇÖÅ°°¡ ¸·È÷°Å³ª ÀÚµ¿È­µÇ±â¸¦ °ÅºÎÇÕ´Ï´Ù. Àû¾îµµ ¼¼°¡Áö ÇØ°áÃ¥ÀÌ ÀÖ½À´Ï´Ù:

+ +

SoundGet, SoundSet, SoundGetWaveVolume ±×¸®°í SoundSetWaveVolume´Â ºñ½ºÅ¸ ÀÌÀü ÀÌÈÄ ¹öÀü¿¡ µû¶ó ´Ù¸£°Ô ÇൿÇÕ´Ï´Ù. ƯÈ÷, ÀåÄ¡ ¹øÈ£°¡ ´Ù¸£°í ¾î¶² ÄÄÆ÷³ÍÆ®´Â »ç¿ëÇÒ ¼öÁ¶Â÷ ¾ø½À´Ï´Ù. ÇàÀ§´Â ¿Àµð¿À µå¶óÀ̹ö¿¡ µû¶ó ´Ù¸¨´Ï´Ù. XP¿¡ »ç¿ëµÇ´Â µå¶óÀ̹ö¶ó¸é ´ç¿¬È÷ ´Ù¸¦ °Ì´Ï´Ù. »ç¿îµå Ä«µå ºÐ¼® ½ºÅ©¸³Æ®¸¦ »ç¿ëÇÏ¸é ¿Ã¹Ù¸¥ ÀåÄ¡ ¹øÈ£¸¦ ãÀ» ¼ö ÀÖ½À´Ï´Ù.

+ +

Æ®·¹ÀÌ ¾ÆÀÌÄÜÀ» ÅëÇÏ¿© ½ºÅ©¸³Æ®¸¦ ÆíÁýÇÒ ¼ö ¾ø´Ù. ¿¡·¯ ¶§¹®¿¡ ½ÃÀÛÁ¶Â÷ ÇÏÁö ¾Ê´Â´Ù. ¾î¶»°Ô ÇØ¾ß Çϴ°¡?

+

+½ºÅ©¸³Æ®ÀÇ ¿¡·¯¸¦ ¸ÕÀú ¼öÁ¤ÇÒ ÇÊ¿ä°¡ ÀÖ½À´Ï´Ù. ±× ´ÙÀ½¿¡ Æ®·¹ÀÌ ¾ÆÀÌÄÜÀ» ´Ù½Ã ¾òÀ» ¼ö ÀÖ½À´Ï´Ù. ±×·¯³ª ¸ÕÀú, ÇØ´ç ½ºÅ©¸³Æ® ÆÄÀÏÀ» ãÀ» ÇÊ¿ä°¡ ÀÖ½À´Ï´Ù.

+

´ÙÀ½ µð·ºÅ丮¿¡¼­ AutoHotkey.ahk¸¦ ã½À´Ï´Ù:

+ +

+¶Ç´Ù¸¥ ¿ÀÅäÇÖÅ° ½ÇÇàÆÄÀÏÀ» Á÷Á¢ÀûÀ¸·Î ½ÇÇàÇÏ°í ÀÖ´Ù¸é, ±× ½ºÅ©¸³Æ®ÀÇ À̸§Àº ½ÇÇàÆÄÀÏ¿¡ µû¶ó ´Ù¸¨´Ï´Ù. ¿¹¸¦ µé¾î, AutoHotkeyU32.exe¸¦ ½ÇÇàÇÏ°í ÀÖ´Ù¸é, AutoHotkeyU32.ahk¸¦ ã½À´Ï´Ù. ¿©·¯ºÐÀÇ ½Ã½ºÅÛ¿¡ µû¶ó ".ahk" ºÎºÐÀÌ °¨Ãß¾îÁ® ÀÖÀ» ¼ö ÀÖÁö¸¸, ±× ÆÄÀÏÀº ºÐ¸íÈ÷ [H]¿Í °°Àº ¾ÆÀÌÄÜÀÌ ÀÖ½À´Ï´Ù.

+

+º¸Åë ½ºÅ©¸³Æ® ÆÄÀÏ¿¡ ¿ìŬ¸¯Çؼ­ Edit Script¸¦ ¼±ÅÃÇϸé ÆíÁýÇÒ ¼ö ÀÖ½À´Ï´Ù. ±×·¸Áö ¾Ê´Ù¸é, ÆÄÀÏÀ» ³ëÆ®Æе峪 ±âŸ ´Ù¸¥ ÆíÁý±â·Î ¿­ ¼ö ÀÖ½À´Ï´Ù.

+

+AutoHotkey¸¦ ½ÃÀÛ ¸Þ´º·ÎºÎÅÍ ±âµ¿Ç߰ųª ¶Ç´Â Á÷Á¢ AutoHotkey.exe¸¦ (¸í·É¾î ÁÙ ¸Å°³º¯¼ö ¾øÀÌ) ½ÇÇàÇß´Ù¸é, À§¿¡ º¸¿©ÁØ À§Ä¡ Áß Çϳª¿¡¼­ ½ºÅ©¸³Æ®¸¦ ã½À´Ï´Ù. ´Ù¸¥ ¹æ¹ýÀ¸·Î ¾Æ¹«µ¥³ª ¿øÇÏ´Â °÷¿¡ ½ºÅ©¸³Æ® ÆÄÀÏÀ» ¸¸µé¾î¼­ (something.ahk), ¿ÀÅäÇÖÅ°¸¦ ½ÇÇàÇÏ´Â ´ë½Å¿¡ ±× ½ºÅ©¸³Æ® ÆÄÀÏÀ» ½ÇÇàÇÒ ¼ö ÀÖ½À´Ï´Ù.

+

+¶Ç ¸í·É¾î ÁÙ ¸Å°³º¯¼ö "½ºÅ©¸³Æ® ÆÄÀÏÀ̸§" ±×¸®°í AutoHotkey.exeÀÇ À̽ļºÀ» ÂüÁ¶ÇϽʽÿÀ.

+ +

Äڵ忡¼­ ¿¡·¯¸¦ ¾î¶»°Ô ¹ß°ßÇÏ°í °íÄ¥ ¼ö Àִ°¡?

+

+°£´ÜÇÑ ½ºÅ©¸³Æ®¶ó¸é ½ºÅ©¸³Æ® µð¹ö±ëÇϱ⸦ ÂüÁ¶ÇÕ´Ï´Ù. º¯¼öÀÇ ³»¿ëÀ» º¸¿©ÁÖ·Á¸é, MsgBox ¶Ç´Â ToolTipÀ» »ç¿ëÇÕ´Ï´Ù. +º¹ÀâÇÑ ½ºÅ©¸³Æ®¶ó¸é »óÈ£´ëÈ­ µð¹ö±ëÀ» ÂüÁ¶ÇÕ´Ï´Ù.

+ +

AHK¸¦ USB µå¶óÀ̺꿡¼­ ½ÇÇàÇÒ ¼ö Àִ°¡?

+

+AutoHotkey.exeÀÇ À̽ļºÀ» ÂüÁ¶ÇϽʽÿÀ. ÀÚµ¿-Æ÷ÇÔ ÇÔ¼ö ¶óÀ̺귯¸®¸¦ »ç¿ëÇÑ´Ù¸é, AutoHotkey.exe¿Í Lib Æú´õ´Â Ahk2Exe.exeº¸´Ù ÇÑ ´Ü°è ³ôÀº Æú´õ¿¡ À§Ä¡ÇØ¾ß ÇÕ´Ï´Ù (¿¹, \AutoHotkey.exe vs \Compiler\Ahk2Exe.exe). +¶Ç Ahk2Exe´Â ¼³Á¤À» ´ÙÀ½ ·¹Áö½ºÆ®¸® Å°¿¡ ÀúÀåÇÑ´Ù´Â °Í¿¡µµ ÁÖ¸ñÇϽʽÿÀ: HKEY_CURRENT_USER\Software\AutoHotkey\Ahk2Exe.

+ +

¿Ö Run ¸í·É¾î°¡ °ÔÀÓÀ̳ª ÇÁ·Î±×·¥À» ±âµ¿½ÃÅ°Áö ¸øÇϴ°¡?

+

+¾î¶² ÇÁ·Î±×·¥Àº ÀڽŸ¸ÀÇ µð·ºÅ丮¿¡¼­ ½ÃÀÛÇÒ ÇÊ¿ä°¡ ÀÖ½À´Ï´Ù (Àß ¸ð¸£°Ú´Ù¸é, º¸Åë ±×·¸°Ô ÇÏ´Â °ÍÀÌ °¡Àå ÁÁ½À´Ï´Ù). ¿¹¸¦ µé¾î:

+
Run, %A_ProgramFiles%\Some Application\App.exe, %A_ProgramFiles%\Some Application
+ +

¾î¶»°Ô ¸í·É ÁÙ ¿¬»êÀÇ Ãâ·Â °á°ú¸¦ ¿­¶÷ÇÒ ¼ö Àִ°¡?

+

+Å×½ºÆ®¿¡ ÀÇÇϸé ÆÄÀÏ Ä³½³ ¶§¹®¿¡, Àӽà ÆÄÀÏÀº »ó´ëÀûÀ¸·Î ÀÛÀº Ãâ·Â¿¡ ¾ÆÁÖ ºü¸¦ ¼ö ÀÖ½À´Ï´Ù. +»ç½Ç, ±× ÆÄÀÏÀÌ »ç¿ëµÈ ÈÄ °ð¹Ù·Î »èÁ¦µÈ´Ù¸é, ½ÇÁ¦·Î µð½ºÅ©¿¡ ¾º¿©ÁöÁö Á¶Â÷ ¾Ê´Â °æ¿ì°¡ Á¾Á¾ ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î:

+
RunWait %comspec% /c dir > C:\My Temp File.txt
+FileRead, VarToContainContents, C:\My Temp File.txt
+FileDelete, C:\My Temp File.txt
+

+Àӽà ÆÄÀÏÀÇ »ç¿ëÀ» ÇÇÇÏ·Á¸é (ƯÈ÷ Ãâ·ÂÀÌ Å¬ ¶§), Run ¸í·É¾î¿¡ ¿¹Á¦¿¡ º¸¿©ÁØ ¹Ù¿Í °°ÀÌ Shell.Exec() ¸Þ½îµåÀÇ »ç¿ëÀ» °í·ÁÇØ º¸½Ê½Ã¿À.

+ +

¾î¶»°Ô ½ºÅ©¸³Æ®°¡ ´Ù¸¥ ½ºÅ©¸³Æ®¸¦ ´Ý°í, ¸ØÃ߸ç, ¶Ç´Â º¸·ùÇϵµ·Ï ¸¸µé ¼ö Àִ°¡?

+

+¸ÕÀú, ´ÙÀ½Àº ¶Ç´Ù¸¥ ½ºÅ©¸³Æ®¸¦ ´Ý´Â ¿¹ÀÔ´Ï´Ù:

+ +
DetectHiddenWindows On  ; ½ºÅ©¸³Æ®ÀÇ ¼û°ÜÁø ¸ÞÀΠâÀ» ŽÁöµÇµµ·Ï Çã¿ëÇÕ´Ï´Ù.
+SetTitleMatchMode 2  ; ¾Æ·¡ ÆÄÀÏÀÇ Àüü °æ·Î¸¦ ÁöÁ¤ÇÒ Çʿ並 ȸÇÇÇÕ´Ï´Ù.
+WinClose Script's File Name.ahk - AutoHotkey  ; ÀÌ°ÍÀ» °»½ÅÇÏ¿© ½ºÅ©¸³Æ®ÀÇ À̸§À» ¹Ý¿µÇÕ´Ï´Ù (´ë¼Ò¹®ÀÚ ±¸ºÐ).
+ +

+¶Ç´Ù¸¥ ½ºÅ©¸³Æ®¸¦ º¸·ùÇϰųª ¶Ç´Â Á¤ÁöÇÏ·Á¸é, À§¿¡¼­ ¸¶Áö¸· ÁÙÀ» ´ÙÀ½À¸·Î ±³Ã¼ÇÕ´Ï´Ù:

+ +
PostMessage, 0x111, 65305,,, Script's File Name.ahk - AutoHotkey  ; Suspend.
+PostMessage, 0x111, 65306,,, Script's File Name.ahk - AutoHotkey  ; Pause.
+ +

½ºÅ©¸³Æ®¸¦ ³¡³»Áö ¾Ê°í ¾î¶»°Ô ¹Ýº¹ ÇàÀ§¸¦ ¸ØÃâ ¼ö Àִ°¡?

+

+Àüü ½ºÅ©¸³Æ®¸¦ Å°°¡ ´­¸± ¶§ Á¤ÁöÇϰųª Àç°³ÇÏ·Á¸é, ÇÖÅ°¸¦ Pause ¸í·É¾î¿¡ ÇÒ´çÇÕ´Ï´Ù. ´ÙÀ½ ¿¹Á¦¿Í °°ÀÌ:

+
^!p::Pause  ; Ctrl+Alt+P¸¦ ´­·¯ Á¤ÁöÇÕ´Ï´Ù. ´Ù½Ã ´©¸£¸é Àç°³ÇÕ´Ï´Ù.
+

+ȸµ¹ÀÌ ¾È¿¡¼­ ¹Ýº¹µÇ´Â ÇàÀ§¸¦ ¸ØÃß·Á¸é, ´ÙÀ½ÀÇ ÀÛµ¿ÇÏ´Â ¿¹Á¦¸¦ ¿¬±¸ÇØ º¸½Ê½Ã¿À. ÇÖÅ° Çϳª·Î ¹Ýº¹ ÇàÀ§¸¦ ½ÃÀÛÇÏ°í ¸ØÃä´Ï´Ù. ´Ù¸¥ ¸»·Î Çϸé, ÇÖÅ°¸¦ Çѹø ´©¸£¸é ȸµ¹À̸¦ ½ÃÀÛÇÕ´Ï´Ù. ±× ÇÖÅ°¸¦ ´Ù½Ã ´©¸£¸é ȸµ¹À̸¦ ¸ØÃä´Ï´Ù.

+
#MaxThreadsPerHotkey 3
+#z::  ; Win+Z ÇÖÅ° (ÀÌ ÇÖÅ°¸¦ ¿©·¯ºÐÀÇ ±âÈ£¿¡ ¸Â°Ô º¯°æÇÕ´Ï´Ù).
+#MaxThreadsPerHotkey 1
+if KeepWinZRunning  ; ÀÌ°ÍÀº ¾Æ·¡ÀÇ ¾²·¹µå°¡ ÀÌ¹Ì ¾Æ·¡ÀÇ È¸µ¹À̸¦ ½ÇÇàÁßÀ̶ó´Â ¶æÀÔ´Ï´Ù.
+{
+    KeepWinZRunning := false  ; ¾²·¹µåÀÇ È¸µ¹À̸¦ ¸ØÃß°Ô ÇÏ´Â ½ÅÈ£ÀÔ´Ï´Ù.
+    return  ; ÀÌ ¾²·¹µå¸¦ ³¡³À´Ï´Ù. ÀÌ ¾Æ·¡ÀÇ Äڵ尡 ½ÇÇàÀ» Àç°³ÇÕ´Ï´Ù. À§ÀÇ ÁÙ¿¡¼­ ¹Ù²ï °÷¿¡ ÁÖ¸ñÇϽʽÿÀ.
+}
+; ±×·¸Áö ¾ÊÀ¸¸é:
+KeepWinZRunning := true
+Loop
+{
+    ; ´ÙÀ½ ³× ÁÙÀº ¹Ýº¹ÇÏ°í ½ÍÀº ÇàÀ§ÀÔ´Ï´Ù (¿©·¯ºÐÀÇ ±âÈ£¿¡ ¸Â°Ô ¹Ù²ß´Ï´Ù):
+    ToolTip, Win-Z¸¦ ´Ù½Ã ´­·¯ ÀÌ°ÍÀÌ ¶³¸®´Â °ÍÀ» ¸ØÃä´Ï´Ù.
+    Sleep 1000
+    ToolTip
+    Sleep 1000
+    ; ±×·¯³ª ¾Æ·¡ÀÇ ³ª¸ÓÁö´Â ±×´ë·Î µÓ´Ï´Ù.
+    if not KeepWinZRunning  ; »ç¿ëÀÚ°¡ Win-Z¸¦ ´Ù½Ã ´­·¯ ȸµ¹À̸¦ ¸ØÃ߶ó°í ½ÅÈ£¸¦ º¸³Â½À´Ï´Ù.
+        break  ; ÀÌ È¸µ¹À̸¦ ºüÁ® ³ª°©´Ï´Ù.
+}
+KeepWinZRunning := false  ; ÀÌ ÇÖÅ°°¡ ´ÙÀ½¿¡ ´­¸± ¶§¸¦ ´ëºñÇÏ¿© Àç¼³Á¤ÇÕ´Ï´Ù.
+return
+ +

¾î¶»°Ô °ÔÀÓÀ» À§ÇØ ¼öÇ༺´ÉÀ» Çâ»ó½Ãų ¼ö Àִ°¡? CPU°¡ Å©°Ô ºÎ´ãÀÌ µÉ °æ¿ì ¾î¶»°Ô Çϴ°¡?

+

+½ºÅ©¸³Æ®ÀÇ ÇÖÅ°, Ŭ¸¯, ¶Ç´Â Àü¼ÛÀÌ º¸Åë ¶§º¸´Ù ÇöÀúÇÏ°Ô ´À¸®´Ù¸é, CPU°¡ ¾öû³­ ºÎ´ãÀ» Áö°í À־ ±×·¸´Ù¸é, ½ºÅ©¸³Æ®ÀÇ Ã³¸®-¿ì¼±¼øÀ§¸¦ ³ôÀÌ¸é µµ¿òÀÌ µÉ ¼ö ÀÖ½À´Ï´Ù. ÀÌ·¸°Ô ÇÏ·Á¸é, ´ÙÀ½ ÁÙÀ» ½ºÅ©¸³Æ® »ó´Ü ±Ùó¿¡ Æ÷ÇÔÇÕ´Ï´Ù:

+ +
Process, Priority, , High
+ +

¾î¶»°Ô ¿ÀÅäÇÖÅ° ¸í·É¾î¸¦ À§ÇÑ ¹®¸Æ °¨Áö µµ¿ò¸»À» ´Ù¸¥ ÆíÁý±â¿¡¼­ »ç¿ëÇÒ ¼ö Àִ°¡?

+ +

¶óÁ¬(Rajat) ¾¾°¡ ´ÙÀ½ ½ºÅ©¸³Æ®¸¦ ¸¸µé¾ú½À´Ï´Ù.

+ +

À¥ ÆäÀÌÁö°¡ ÀûÀ縦 ³¡³Â´ÂÁö ¾î¶»°Ô ¾Æ´Â°¡?

+

+ÀÎÅÍ³Ý ÀͽºÇ÷η¯¶ó¸é, ¾Æ¸¶µµ °¡Àå ¹ÏÀ»¸¸ÇÑ ¹æ¹ýÀº DllCall°ú COMÀ» www.autohotkey.com/forum/topic19256.html¿¡ ½Ã¿¬ÇÏ´Â °Íó·³ »ç¿ëÇÏ´Â °ÍÀÔ´Ï´Ù. °ü·ÃÇؼ­ ÇÑ°¡Áö µ¡ºÙÀ̸é, ÁÖ¼Ò ¹Ù¿Í »óÅ ¹ÙÀÇ ³»¿ëÀº www.autohotkey.com/forum/topic19255.html¿¡ º¸¿©ÁÖ´Â °Íó·³ ¿­¶÷ÇÒ ¼ö ÀÖ½À´Ï´Ù.

+

¿¹ÀüÀÇ, ½Å·Ú°¡ ´úÇÑ ¹æ¹ý: ´ÙÀ½ ¿¹Á¦¿¡¼­ÀÇ Å×Å©´ÐÀº ´ëºÎºÐÀÇ ÆäÀÌÁö¿¡ ´ëÇÏ¿© MS ÀÎÅÍ³Ý ÀͽºÇ÷η¯¿¡ ÀÛµ¿ÇÒ °ÍÀÔ´Ï´Ù. ºñ½ÁÇÑ Å×Å©´ÐÀ» ´Ù¸¥ ºê¶ó¿ìÀú¿¡¼­µµ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù:

+
Run, www.yahoo.com
+MouseMove, 0, 0  ; »óÅ ¹Ù¿¡ ¸¶¿ì½º¸¦ ¿Ã¸®¸é ¸µÅ©¸¦ º¸¿©ÁÖÁö ¸øÇÏ°Ô ¸·½À´Ï´Ù. ´ë½Å "Done"ÀÌ º¸ÀÔ´Ï´Ù.
+WinWait, Yahoo! - 
+WinActivate 
+StatusBarWait, Done, 30
+if ErrorLevel
+   MsgBox ´ë±â ½Ã°£ÀÌ ³¡³µ°Å³ª âÀÌ ´ÝÇû½À´Ï´Ù. 
+else 
+   MsgBox ÆäÀÌÁö°¡ ÀûÀ縦 ¸¶ÃƽÀ´Ï´Ù.
+ +

³¯Â¥¿Í ½Ã°£À» ¾î¶»°Ô ºñ±³ÇÏ°í Á¶ÀÛÇϴ°¡?

+

+EnvAdd ¸í·É¾î´Â ³¯Â¥, ½Ã°£, ºÐ, Ãʸ¦ ´õÇÏ°í »©¼­ ½Ã°£-¹®ÀÚ¿­·Î ¸¸µé ¼ö ÀÖ½À´Ï´Ù. Çü½ÄÀº YYYYMMDDHH24MISSÀÔ´Ï´Ù. ´ÙÀ½ ¿¹Á¦´Â ÁöÁ¤µÈ ½Ã°£¿¡¼­ 7ÀÏÀ» »®´Ï´Ù: EnvAdd, VarContainingTimestamp, -7, days.

+

+µÎ ³¯Â¥³ª ½Ã°£ »çÀÌÀÇ ¾çÀ» °áÁ¤ÇÏ·Á¸é EnvSub¸¦ ÂüÁ¶ÇϽʽÿÀ. ¾È¿¡ ¿¹Á¦°¡ ÀÖ½À´Ï´Ù. ¶ÇÇÑ, ³»Àå º¯¼ö A_Now¿¡´Â ÇöÀçÀÇ Áö¿ª ½Ã°£ÀÌ ´ã°Ü ÀÖ½À´Ï´Ù. +¸¶Áö¸·À¸·Î, ¿©·¯ ³»Àå ³¯Â¥/½Ã°£ º¯¼ö°¡ ÀÖ½À´Ï´Ù. »Ó¸¸ ¾Æ´Ï¶ó FormatTime ¸í·É¾î·Î ¸ÂÃã ³¯Â¥/½Ã°£ ¹®ÀÚ¿­À» ¸¸µé ¼ö ÀÖ½À´Ï´Ù.

+ +

ÇöÀç ³¯Â¥/½Ã°£À» ¾î¶»°Ô Àü¼ÛÇϴ°¡?

+

+FormatTime ¶Ç´Â ³¯Â¥¿Í ½Ã°£À» À§ÇÑ ³»Àå º¯¼öµéÀ» »ç¿ëÇϽʽÿÀ.

+ +

¾î¶»°Ô ÅؽºÆ®¸¦ ºñÈ°¼ºÈ­ »óÅÂÀÇ Ã¢ ¶Ç´Â º¸ÀÌÁö ¾Ê´Â â¿¡ Àü¼ÛÇÒ ¼ö Àִ°¡?

+

+ControlSend¸¦ »ç¿ëÇϽʽÿÀ.

+ +

¿Ö ÇÖ½ºÆ®¸µ, Send, ±×¸®°í ClickÀÌ ¾î¶² °ÔÀÓ¿¡¼­´Â È¿°ú°¡ ¾ø´Â°¡?

+

+¸ðµç °ÔÀÓÀÌ AHK°¡ Àü¼ÛÇÏ´Â Å°¿Í Ŭ¸¯ ¶Ç´Â Çȼ¿ Ä÷¯¸¦ Çã¿ëÇÏ´Â °ÍÀº ¾Æ´Õ´Ï´Ù.

+

±×·¯³ª ´ë¾ÈÀÌ ÀÖ½À´Ï´Ù. ¾Æ·¡¿¡ ¾ð±ÞÇÑ ¸ðµç ÇØ°áÃ¥µéÀ» ½ÃµµÇØ º¸½Ê½Ã¿À. ¸ðµç °ÍÀÌ ½ÇÆÐÇϸé, ¾Æ¸¶µµ AHK·Î´Â °ÔÀÓÀ» ÀÛµ¿½Ãų ¼ö ¾øÀ» °ÍÀÔ´Ï´Ù. Á¾Á¾ °ÔÀÓÀÌ GameGuard³ª Hackshield °°Àº ÇÙ°ú Ä¡Æ® ¹æÁö ¼ö´ÜÀ» °®Ãß°í ÀÖ´Â °æ¿ì°¡ ÀÖ½À´Ï´Ù. ±×·¸´Ù¸é, ±× °ÔÀÓ¿¡´Â ¿ÀÅäÇÖÅ°°¡ ÀÛµ¿ÇÏÁö ¾ÊÀ» °¡´É¼ºÀÌ ¾ÆÁÖ ³ô½À´Ï´Ù.

+ + +

¾î¶»°Ô Winamp¸¦ Á¦¾îÇÒ ¼ö Àִ°¡? ÀÛµ¿ÇÏÁö ¾ÊÀ» ¶§¿¡µµ Á¦¾îÇÏ°í ½Í´Ù.

+

+Winamp ÀÚµ¿È­Çϱ⸦ ÂüÁ¶ÇϽʽÿÀ.

+ +

¾î¶»°Ô MsgBoxÀÇ ¹öÆ° À̸§À» ¹Ù²Ü ¼ö Àִ°¡?

+

+´ÙÀ½ ¿¹Á¦¸¦ ÂüÁ¶ÇϽʽÿÀ.

+ +

¾î¶»°Ô ±âº» ÆíÁý±â¸¦ ¹Ù²Ü ¼ö Àִ°¡? ¹®¸Æ ¸Þ´º³ª Æ®·¹ÀÌ ¾ÆÀÌÄÜÀ¸·Î Á¢±ÙÇÏ°í ½Í´Ù.

+

ÆíÁý±â ¿¹Á¦ ¼½¼Ç¿¡¼­ ±âº» ÆíÁý±â¸¦ ¹Ù²Ù´Â ½ºÅ©¸³Æ®¸¦ º¸½Ç ¼ö ÀÖ½À´Ï´Ù.

+ +

GUI °ü·Ã º¯¼öÀÇ ³»¿ëÀ» ¾î¶»°Ô ÀúÀåÇϴ°¡?

+

+Gui SubmitÀ» »ç¿ëÇÕ´Ï´Ù. ¿¹¸¦ µé¾î:

+
Gui, Add, Text,, ÅؽºÆ®¸¦ ÀÔ·ÂÇÏ°í SubmitÀ» ´©¸¨´Ï´Ù:
+Gui, Add, Edit, vAssociatedVar
+Gui, Add, Button,, Submit
+Gui, Show
+Return
+
+ButtonSubmit:
+Gui, Submit, NoHide
+MsgBox, ÆíÁý ÄÜÆ®·ÑÀÇ ³»¿ë: %AssociatedVar%
+Return
+ +

AHK·Î ¾î¶»°Ô ±×¸®´Â°¡?

+

+ƽ(tic)ÀÌ ÁýÇÊÇÑ GDI+ Ç¥ÁØ ¶óÀ̺귯¸®¸¦ ÂüÁ¶ÇϽʽÿÀ. Gui¸¦ »ç¿ëÇÏ¿© ±âº»ÀûÀÎ ¸Þ½îµåµéÀ» »ç¿ëÇÒ ¼ö ÀÖÁö¸¸, Á¦ÇÑÀûÀÔ´Ï´Ù.

+ +

âÀÌ ¿­¸®°Å³ª, ´ÝÈ÷°Å³ª ¶Ç´Â [ºñ]È°¼ºÈ­µÉ ¶§ ¾î¶»°Ô ÇàÀ§¸¦ Ã˹߽Ãų ¼ö Àִ°¡?

+

+WinWait, WinWaitClose ¶Ç´Â WinWait[Not]Active¸¦ »ç¿ëÇÕ´Ï´Ù. ´õ ÀÚ¼¼ÇÑ Á¤º¸´Â °øµ¿Ã¼°¡-À̲ô´Â FAQ (À©µµ¿ìÁî ¼½¼Ç)¸¦ ÂüÁ¶ÇϽʽÿÀ.

+ +

¹é½Å ÇÁ·Î±×·¥ÀÌ AHK¸¦ ¸È¿þ¾î¶ó°í Áø´ÜÇß´Ù. ÁøÂ¥ ¹ÙÀÌ·¯½º°¡ µé¾îÀִ°¡?

+

+´ç¿¬È÷ ¾Æ´Õ´Ï´Ù. ¾ÈƼ¹ÙÀÌ·¯½º ÇÁ·Î±×·¥Àº AHK¸¦ ¸È¿þ¾î·Î À߸ø Áø´ÜÇÒ ¼ö ÀÖ½À´Ï´Ù. (°ÅÁþ ±àÁ¤À̶ó°í ºÎ¸§). ½ºÅ©¸³Æ®°¡ UPX (AHK 1.0 ±âº»°ª, AHK 1.1 Á¦°Å) ¶Ç´Â MPRESS (AHK 1.1 ¼±ÅÃÀû) °°Àº ¾ÐÃà±â·Î ÄÄÆÄÀÏµÇ¾î ½ÇÇàµÉ ¶§ ±×·² °¡´É¼ºÀÌ ÀÖ½À´Ï´Ù. ¾ÐÃà±â´Â ÄÄÆÄÀÏµÈ ½ºÅ©¸³Æ®ÀÇ Å©±â¸¦ ÁÙÀÏ ¼ö ÀÖ½À´Ï´Ù. ÄÄÆÄÀÏµÈ ½ÇÇàÈ­ÀÏÀ» ²À ¾ÐÃàÇØ¾ß ÇÒ ÇÊ¿ä°¡ ¾ø´Ù¸é, ¾ÐÃà±âÀÇ »ç¿ëÀ» ÀÚÁ¦Çؼ­ ¾ÈƼ¹ÙÀÌ·¯½º ÇÁ·Î±×·¥À¸·ÎºÎÅÍ °ÅÁþ °æ°í¸¦ ¹ÞÁö ¾Ê´Â °ÍÀÌ ÁÁ½À´Ï´Ù. ¿©·¯ºÐÀº ¹°·Ð ÀáÀçÀûÀÎ ´Ù¸¥ »ç¿ëÀÚ¸¦ À§Çؼ­ ¸»ÀÌÁö¿ä.

+ +

ÇÖÅ°, ÇÖ½ºÆ®¸µ, ±×¸®°í ¸®¸ÊÇÎ

+ +

¾î¶»°Ô ÇÖÅ°¿Í ÇÖ½ºÆ®¸µÀ» ÄÄÇ»ÅÍ°¡ ±âµ¿ÇÒ ¶§ ÀÚµ¿À¸·Î Àû¿ëµÇµµ·Ï ¸¸µé ¼ö Àִ°¡?

+

+½ÃÀÛ ¸Þ´º¿¡ ½ÃÀÛÀ̶ó´Â Æú´õ°¡ ÀÖ½À´Ï´Ù. ½ºÅ©¸³Æ®¿¡ ´ëÇÑ ´ÜÃà¾ÆÀÌÄÜÀ» ±× Æú´õ¿¡ ³ÖÀ¸½Ê½Ã¿À. ±×·¯¸é ±× ½ºÅ©¸³Æ®´Â ÄÄÇ»ÅÍ°¡ ½ÃÀÛÇÒ ¶§¸¶´Ù ÀÚµ¿À¸·Î ½ÃÀÛÇÕ´Ï´Ù. ´ÜÃà¾ÆÀÌÄÜÀ» ¸¸µé·Á¸é:

+
    +
  1. ½ºÅ©¸³Æ® ÆÄÀÏÀ» ã½À´Ï´Ù. ¼±ÅÃÇÑ ´ÙÀ½ Control-C¸¦ ´©¸¨´Ï´Ù.
  2. +
  3. ½ÃÀÛ ¹öÆ°À» ¿ìŬ¸¯ÇÕ´Ï´Ù (ÀüÇüÀûÀ¸·Î È­¸é ÁÂÇÏ¿¡ ÀÖ½À´Ï´Ù) ±×¸®°í "Explore All Users"¸¦ Ŭ¸¯ÇÕ´Ï´Ù.
  4. +
  5. ÇÁ·Î±×·¥ Æú´õ ¾ÈÀÇ ½ÃÀÛ Æú´õ¸¦ ã¾Æ °©´Ï´Ù.
  6. +
  7. ¸Þ´º¹Ù¿¡¼­ Edit -> Paste ShortcutÀ» ¼±ÅÃÇÕ´Ï´Ù. ½ºÅ©¸³Æ®¸¦ °¡¸®Å°´Â ´ÜÃà¾ÆÀÌÄÜÀÌ ÀÌÁ¦ ½ÃÀÛ Æú´õ¿¡ ¹èÄ¡µË´Ï´Ù.
  8. +
+ +

¸¶¿ì½º ¹öÆ°À» ÇÖŰó·³ ÀÛµ¿½ÃÅ°´Âµ¥ ¾î·Á¿òÀ» °Þ°í ÀÖ´Ù. Á¶¾ðÀÌ Àִ°¡?

+

+¿ÞÂÊ ¿À¸¥ÂÊ ¸¶¿ì½º ¹öÆ°Àº º¸Åë ÇÒ´çÀÌ °¡´ÉÇÕ´Ï´Ù (¿¹¸¦ µé¾î, #LButton::´Â Win+LeftButton ÇÖÅ°ÀÔ´Ï´Ù). ºñ½ÁÇÏ°Ô, °¡¿îµ¥ ¹öÆ°°ú ¸¶¿ì½º ÈÙÀÇ È¸ÀüÀº º¸Åë ÇÒ´çÀÌ °¡´ÉÇÕ´Ï´Ù. ´Ü, ¸¶¿ì½º µå¶óÀ̹ö°¡ ¹öÆ°À» Á÷Á¢ÀûÀ¸·Î Á¦¾îÇÏ´Â °æ¿ì´Â Á¦¿ÜÇÕ´Ï´Ù.

+

+³× ¹ø° ¹öÆ° (XButton1)°ú ´Ù¼¸ ¹ø° ¹öÆ°(XButton2)Àº ¸¶¿ì½º µå¶óÀ̹ö°¡ Ŭ¸¯À» ½Ã½ºÅÛ¿¡ º¸À̵µ·Ï Çã¿ëÇϸé ÇÒ´çÀÌ °¡´ÉÇÒ ¼öµµ ÀÖ½À´Ï´Ù. º¸ÀÌÁö ¾Ê°Å³ª -- ¶Ç´Â ¸¶¿ì½º°¡ ¹öÆ°ÀÌ ´Ù¼¸°³°¡ ³Ñ¾î°¡¸é -- ¸¶¿ì½º¿¡ ÇÔ²² µû¶ó¿Â ¼ÒÇÁÆ®¿þ¾î¸¦ Á¶Á¤Çؼ­ (º¸Åë Á¦¾îÆÇÀ̳ª ½ÃÀÛ ¸Þ´º·Î Á¢±ÙÇÒ ¼ö ÀÖÀ» °ÍÀÔ´Ï´Ù) ÀÌ·± ¹öÆ°À» ´©¸¦ ¶§¸¶´Ù Å°´©¸§À» Àü¼ÛÇϵµ·Ï ½ÃµµÇØ º¸¾Æ¾ß ÇÕ´Ï´Ù. ±×·± Å°´­¸²Àº ½ºÅ©¸³Æ®¿¡¼­ ÇÖÅ°·Î Á¤ÀÇÇÒ ¼ö ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î, ³× ¹ø° ¹öÆ°ÀÌ Control+F1¸¦ Àü¼ÛÇϵµ·Ï ±¸¼ºÇß´Ù¸é, ^F1::¸¦ »ç¿ëÇÏ¿© ½ºÅ©¸³Æ®¿¡ °£Á¢ÀûÀ¸·Î ±× ¹öÆ°À» ÇÖÅ°·Î ±¸¼ºÇÒ ¼ö ÀÖ½À´Ï´Ù.

+

´Ù¼¸ ¹öÆ° ¸¶¿ì½º¸¦ °¡Áö°í Àִµ¥ ³× ¹ø° ¹öÆ°°ú ´Ù¼¸ ¹ø° ¹öÆ°Àº º¸ÀÌÁö ¾Ê´Â´Ù¸é, ¸¶¿ì½º µå¶óÀ̹ö¸¦ ¿î¿µÃ¼Á¦¿¡ Æ÷ÇÔµÈ ±âº» µå¶óÀ̹ö·Î ¹Ù²Ù¾î º¼ ¼ö ÀÖ½À´Ï´Ù. ÀÌ°ÍÀº ¿©·¯ºÐÀÇ Æ¯º°ÇÑ ¸¶¿ì½º¸¦ À§ÇÑ Àü¿ë µå¶óÀ̹ö°¡ ÀÖ°í °Å±â¿¡¼­ Á¦°øµÇ´Â Ưº°ÇÑ Æ¯Â¡ÀÌ ¾ø¾îµµ »ì¼ö ÀÖ´Ù°í °¡Á¤ÇÕ´Ï´Ù.

+ +

ÅÇ°ú ½ºÆäÀ̽º´Â ¾î¶»°Ô ÇÖÅ°·Î Á¤ÀÇÇÒ ¼ö Àִ°¡?

+

+¹®ÀÚ°¡ ¾Æ´Ï¶ó Å°ÀÇ À̸§À» »ç¿ëÇϽʽÿÀ (Tab ±×¸®°í Space). ¿¹¸¦ µé¾î, #Space´Â Win+SpaceÀÌ°í ^!TabÀº Control+Alt+TabÀÔ´Ï´Ù.

+ +

Å°³ª ¸¶¿ì½º ¹öÆ°À» ¾î¶»°Ô ¸®¸ÊÇÒ ¼ö Àִ°¡? ¸¶Ä¡ ´Ù¸¥ Űó·³ º¸ÀÌ°Ô ÇÏ°í ½Í´Ù.

+

+ÀÌ ÁÖÁ¦´Â ¸®¸ÊÇÎ ÆäÀÌÁö¿¡ ±â¼úµÇ¾î ÀÖ½À´Ï´Ù.

+ +

Å°³ª ¹öÆ°ÀÌ µÎ ¹ø ´­¸®´Â °ÍÀ» ¾î¶»°Ô ŽÁöÇϴ°¡?

+

+´ÙÀ½°ú °°ÀÌ ÇÖÅ°¿¡ ³»Àå º¯¼ö¸¦ »ç¿ëÇϽʽÿÀ:

+
~Ctrl::
+    if (A_ThisHotkey = A_PriorHotkey && A_TimeSincePriorHotkey < 200)
+        MsgBox µÎ¹ø-´­·¶½À´Ï´Ù
+return
+ +

¾î¶»°Ô ÇÖÅ°³ª ÇÖ½ºÆ®¸µÀ» ¾î¶² ÇÁ·Î±×·¥¿¡´Â ¹èÁ¦ÇÒ ¼ö Àִ°¡? ´Ù¸¥ ¸»·Î Çϸé, ƯÁ¤ âÀÌ È°¼ºÈ­µÇ¾î ÀÖÀ» ¶§¸¦ Á¦¿ÜÇÏ°í ¾î¶² Å°¸¦ ±×³É º¸Åë ¶§Ã³·³ ÀÛµ¿½ÃÅ°°í ½Í´Ù.

+

+¼±È£µÇ´Â ¹æ¹ýÀº #IfWinActiveÀÔ´Ï´Ù. ¿¹¸¦ µé¾î:

+
#IfWinActive, ahk_class Notepad
+^a::MsgBox ³ëÆ®Æе尡 È°¼ºÈ­µÇ¾î ÀÖ´Â µ¿¾È Control-A¸¦ ´­·¶½À´Ï´Ù.
+
+ +

¾î¶»°Ô Á¢µÎ Å°¸¦ ¾Æ¹«°Íµµ ÇÏÁö ¾Ê´Â ´ë½Å¿¡ ±×ÀÇ ¿ø·¡ ±â´ÉÀ» ¼öÇàÇϵµ·Ï ¸¸µé ¼ö Àִ°¡?

+

+´ÙÀ½ ¿¹Á¦¸¦ ¿¬±¸ÇØ º¸½Ê½Ã¿À. Numpad0¸¦ Á¢µÎ Å°·Î ¸¸µì´Ï´Ù:

+
Numpad0 & Numpad1::MsgBox, Numpad0À» ´©¸£°í ÀÖ´Â µ¿¾È Numpad1À» ´­·¶½À´Ï´Ù.
+

+ÀÌÁ¦, À§¿Í °°ÀÌ ÇÖÅ°¸¦ ±âµ¿Çϴµ¥ »ç¿ëµÇÁö ¾ÊÀ» °æ¿ì Numpad0°¡ ½ÇÁ¦ Numpad0 Å°´­¸²À» Àü¼ÛÇϵµ·Ï ¸¸µé·Á¸é, ´ÙÀ½ ÇÖÅ°¸¦ Ãß°¡ÇÕ´Ï´Ù:

+
 $Numpad0::Send, {Numpad0}
+

+$ Á¢µÎ»ç´Â ¹«ÇÑ È¸µ¹À̸¦ °æ°íÇÏ´Â ´ëÈ­»óÀÚ°¡ ³ªÅ¸³ª´Â °ÍÀ» ¸·±â À§ÇØ ÇÊ¿äÇÕ´Ï´Ù (ÇÖÅ°°¡ "ÀÚ±â ÀÚ½ÅÀ» Àü¼Û"Çϱ⠶§¹®ÀÔ´Ï´Ù). °Ô´Ù°¡, À§ÀÇ ÇàÀ§´Â Å°¿¡¼­ ¼ÕÀ» ¶¿ ¶§ ÀϾ´Ï´Ù.

+ +

¾î¶»°Ô Win+U (Utility Manager) ±×¸®°í Win+R (Run) °°Àº ³»Àå À©µµ¿ìÁî ´ÜÃà Å°¸¦ ¹Ù²Ù°Å³ª ºÒ´ÉÀ¸·Î ¸¸µé ¼ö Àִ°¡?

+

+´ÙÀ½Àº ¿¹Á¦µéÀ» ÂüÁ¶ÇϽʽÿÀ.

+ +

ÇÖ½ºÆ®¸µ¿¡ ¿ÍÀϵåÄ«µå³ª Á¤±Ô Ç¥Çö½ÄÀ» »ç¿ëÇÒ ¼ö Àִ°¡?

+

+Æú¸®Å׳×(polyethene)°¡ ÀÛ¼ºÇÑ ½ºÅ©¸³Æ®¸¦ »ç¿ëÇϽʽÿÀ (¿¹Á¦µéÀÌ Æ÷ÇԵǾî ÀÖ½À´Ï´Ù).

+ +

Å°º¸µå ·¹À̾ƿô¿¡ ¾ø´Â ÇÖÅ°¸¦ ¾î¶»°Ô »ç¿ëÇÒ ¼ö Àִ°¡?

+

+Ư¼ö Å°µéÀ» ÂüÁ¶ÇϽʽÿÀ.

+ +

Å°º¸µå¿¡ Ưº°ÇÑ 000 Å°°¡ ÀÖ´Ù. ÀÌ°ÍÀ» ÇÖÅ°·Î º¯È¯ÇÒ ¼ö Àִ°¡?

+

+±×·¸½À´Ï´Ù. ´ÙÀ½ ¿¹Á¦ ½ºÅ©¸³Æ®´Â 000 Å°¸¦ µîÈ£ Å°·Î ¹Ù²ß´Ï´Ù. Send, = ÁÙÀ» ¿øÇÏ´Â ´ë·Î ¹Ù²Ù¾î¼­ ÇàÀ§¸¦ ¹Ù²Ü ¼ö ÀÖ½À´Ï´Ù.

+ + diff --git a/src/docs/Functions.htm b/src/docs/Functions.htm new file mode 100644 index 0000000..c5b7b6b --- /dev/null +++ b/src/docs/Functions.htm @@ -0,0 +1,481 @@ + + +Functions + + + + + + + +

ÇÔ¼ö

+ +

¸ñÂ÷

+ +

¼Ò°³¿Í °£´ÜÇÑ ¿¹Á¦

+

ÇÔ¼ö´Â ¼­ºê·çƾ (Gosub)°ú ºñ½ÁÇÕ´Ï´Ù. ´Ü, È£ÃâÀڷκÎÅÍ ¸Å°³º¯¼ö(ÀÔ·Â)¸¦ ¹ÞÀ» ¼ö ÀÖ´Ù´Â Á¡Àº ´Ù¸¨´Ï´Ù. °Ô´Ù°¡, ÇÔ¼ö´Â ¼±ÅÃÀûÀ¸·Î °ªÀ» È£ÃâÀÚ¿¡°Ô µ¹·ÁÁÙ ¼ö ÀÖ½À´Ï´Ù. ´ÙÀ½ÀÇ °£´ÜÇÑ ÇÔ¼ö¸¦ ¿¬±¸ÇØ º¸°Ú½À´Ï´Ù. µÎ °³ÀÇ ¼ýÀÚ¸¦ ¹Þ°í ±× ÇÕÀ» µ¹·ÁÁÝ´Ï´Ù:

+
Add(x, y)
+{
+    return x + y   ; "Return"Àº Ç¥Çö½ÄÀ» ±â´ëÇÕ´Ï´Ù.
+}
+

À§ÀÇ ÄÚµå´Â ÇÔ¼ö Á¤ÀǶó°í ¾Ë·ÁÁ® Àִµ¥ "Add" (´ë¼Ò¹®ÀÚ ±¸ºÐ ¾øÀ½)¶ó´Â À̸§ÀÇ ÇÔ¼ö¸¦ »ý¼ºÇÏ°í ±× ÇÔ¼ö¸¦ È£ÃâÇÏ·Á¸é ´©±¸¶óµµ Á¤È®ÇÏ°Ô µÎ °³ÀÇ ¸Å°³º¯¼ö (x¿Í y)¸¦ Á¦°øÇϵµ·Ï È®¸³ÇÕ´Ï´Ù. ÀÌ ÇÔ¼ö¸¦ È£ÃâÇÏ·Á¸é, :=¿¬»êÀÚ·Î ±×ÀÇ °á°ú¸¦ º¯¼ö¿¡ ÇÒ´çÇÕ´Ï´Ù. ¿¹¸¦ µé¾î:

+
Var := Add(2, 3)  ; ¼ýÀÚ 5°¡ Var¿¡ ÀúÀåµË´Ï´Ù.
+

+¶Ç, ÇÔ¼ö´Â ±×ÀÇ ¹Ýȯ °ªÀ» ÀúÀåÇÏÁö ¾Ê°í¼­µµ È£ÃâÇÒ ¼ö ÀÖ½À´Ï´Ù:

+
Add(2, 3)
+

+±×·¯³ª ÀÌ °æ¿ì, ÇÔ¼ö°¡ µ¹·ÁÁÖ´Â °ªÀº ¸ðµÎ Æó±âµË´Ï´Ù; ±×·¡¼­ ÇÔ¼ö°¡ ¹Ýȯ °ªÀ» µ¹·ÁÁÖ´Â ÀÏ ¿Ü¿¡ ´Ù¸¥ È¿°ú¸¦ »ý»êÇÏÁö ¾Ê´Â ÇÑ, ÀÌ È£ÃâÀº ¾î¶² ¸ñÀû¿¡µµ ±â¿©ÇÏÁö ¸øÇÕ´Ï´Ù.

+

+ÇÔ¼ö È£ÃâÀº Ç¥Çö½ÄÀ̱⠶§¹®¿¡, ¸Å°³º¯¼ö ¸ñ·ÏÀÇ º¯¼ö À̸§Àº ÆÛ¼¾Æ® »çÀÎÀ¸·Î µÑ·¯½ÎÁö ¾Ê¾Æµµ µË´Ï´Ù. ´ëÁ¶ÀûÀ¸·Î, ±âÈ£ ¹®ÀÚ¿­À» °ãµû¿ÈÇ¥·Î µÑ·¯ ½Î¾ß ÇÕ´Ï´Ù. ¿¹¸¦ µé¾î:

+
if InStr(MyVar, "fox")
+    MsgBox º¯¼ö MyVar¿¡´Â ´Ü¾î fox°¡ µé¾î ÀÖ½À´Ï´Ù.
+

+¸¶Áö¸·À¸·Î, ÇÔ¼ö´Â ´Ù¸¥ ¸í·É¾îÀÇ ¸Å°³º¯¼ö¿¡¼­ È£ÃâÇÒ ¼öµµ ÀÖ½À´Ï´Ù (StringLenÀÇ ¸Å°³º¯¼ö¿Í °°ÀÌ OutputVar¿Í InputVar °°Àº ¸Å°³º¯¼ö´Â ¿¹¿ÜÀÔ´Ï´Ù). ±×·¸Áö¸¸, Ç¥Çö½ÄÀ» Áö¿øÇÏÁö ¾Ê´Â ¸Å°³º¯¼ö´Â ´ÙÀ½ ¿¹Á¦¿Í °°ÀÌ ¹Ýµå½Ã "% " ¸¦ Á¢µÎ±âÈ£·Î »ç¿ëÇØ¾ß ÇÕ´Ï´Ù:

+
MsgBox % "Á¤´äÀº ´ÙÀ½°ú °°½À´Ï´Ù: " . Add(3, 2)
+

+"% " Á¢µÎ±âÈ£´Â ¶Ç ±Ùº»ÀûÀ¸·Î Ç¥Çö½ÄÀ» Áö¿øÇÏ´Â ¸Å°³º¯¼ö¿¡µµ Çã¿ëµË´Ï´Ù. ±×·¯³ª ±×³É ¹«½ÃµË´Ï´Ù.

+

¸Å°³º¯¼ö

+

+ÇÔ¼ö°¡ Á¤ÀÇµÉ ¶§, ±×ÀÇ ¸Å°³º¯¼ö´Â ÇÔ¼ö À̸§ ¿· °ýÈ£ ¾È¿¡ ³ª¿­µË´Ï´Ù (ÇÔ¼ö¿Í ¿©´Â °ýÈ£ »çÀÌ¿¡ °ø°£ÀÌ ÀÖÀ¸¸é ¾ÈµË´Ï´Ù). ÇÔ¼ö°¡ ¸Å°³º¯¼ö¸¦ ¹ÞÁö ¾ÊÀ¸¸é, °ýÈ£¸¦ ºó ä·Î µÓ´Ï´Ù: GetCurrentTimestamp().

+

ByRef ¸Å°³º¯¼ö: ÇÔ¼öÀÇ °üÁ¡¿¡¼­, ¸Å°³º¯¼ö´Â º»ÁúÀûÀ¸·Î Áö¿ª º¯¼ö¿Í ¶È°°½À´Ï´Ù. ±×·¯³ª ´ÙÀ½ ¿¹Á¦¿Í °°ÀÌ ByRef·Î Á¤ÀÇµÈ´Ù¸é ´Ù¸¨´Ï´Ù:

+
Swap(ByRef Left, ByRef Right)
+{
+    temp := Left
+    Left := Right
+    Right := temp
+}
+

+À§ÀÇ ¿¹Á¦¿¡¼­, ByRef¸¦ »ç¿ëÇÏ¸é °¢ ¸Å°³º¯¼öµéÀÌ È£ÃâÀڷκÎÅÍ µé¾î¿À´Â º¯¼ö¿¡ ´ëÇÏ¿© º°¸íÀÌ µË´Ï´Ù. ´Ù¸¥ ¸»·Î, ¸Å°³º¯¼ö¿Í È£ÃâÀÚÀÇ º¯¼ö´Â ¸ðµÎ ¸Þ¸ð¸®ÀÇ °°Àº ³»¿ëÀ» °¡¸®Åµ´Ï´Ù. ÀÌ ¶§¹®¿¡ Swap ÇÔ¼ö´Â È£ÃâÀÚÀÇ º¯¼ö¸¦ º¯°æÇÒ ¼ö ÀÖ½À´Ï´Ù. LeftÀÇ ³»¿ëÀ» RightÀ¸·Î ±×¸®°í ±× ¹Ý´ë·Î À̵¿½Ãų ¼ö ÀÖ½À´Ï´Ù.

+

´ëÁ¶ÀûÀ¸·Î, ByRef°¡ À§ÀÇ ¿¹Á¦¿¡¼­ »ç¿ëµÇÁö ¾Ê¾Ò´Ù¸é, Left¿Í Right´Â È£ÃâÀÚ º¯¼öÀÇ »çº»ÀÌ µÇ¾î¾ß ÇÕ´Ï´Ù. ±×·¡¼­ Swap ÇÔ¼ö´Â ¿ÜºÎÀûÀ¸·Î ¾Æ¹« È¿°ú°¡ ¾øÀ» °ÍÀÔ´Ï´Ù.

+

+returnÀº ÇÔ¼öÀÇ È£ÃâÀÚ¿¡°Ô ¿ÀÁ÷ ÇϳªÀÇ °ª¸¸ ´Ù½Ã µ¹·ÁÁÙ ¼ö Àֱ⠶§¹®¿¡, ByRef¸¦ »ç¿ëÇϸé Ãß°¡ °á°ú¸¦ ´õ µ¹·ÁÁÙ ¼ö ÀÖ½À´Ï´Ù. È£ÃâÀÚ¿¡°Ô (º¸Åë ºó) º¯¼ö¸¦ °Ç³×°Ô ÇÏ°í °Å±â¿¡ ÇÔ¼ö°¡ °ªÀ» ÀúÀåÇÏ¸é µË´Ï´Ù.

+

+¹æ´ëÇÑ ¹®ÀÚ¿­À» ÇÔ¼ö¿¡ °Ç³Ú ¶§, ByRef´Â ¼öÇ༺´ÉÀ» Çâ»ó½ÃÅ°°í ¸Þ¸ð¸®¸¦ ±×´ë·Î À¯ÁöÇÕ´Ï´Ù. ¹®ÀÚ¿­ÀÇ »çº»À» ¸¸µé ÇÊ¿ä°¡ ¾ø±â ¶§¹®ÀÔ´Ï´Ù. ºñ½ÁÇÏ°Ô, ByRef¸¦ »ç¿ëÇÏ¿© ±ä ¹®ÀÚ¿­À» ´Ù½Ã È£ÃâÀÚ¿¡°Ô º¸³»¸é Return HugeString¿Í °°ÀÌ ÇÏ´Â °Í¿¡ ºñÇØ º¸Åë ¼öÇ༺´ÉÀÌ ´õ Çâ»óµË´Ï´Ù.

+

[AHK_L 60+]: º¯°æ°¡´ÉÇÑ º¯¼ö ¸»°í ¾î¶² °ÍÀÌ ByRef ¸Å°³º¯¼ö¿¡ °Ç³×Áö¸é, ÇÔ¼ö´Â ¸¶Ä¡ Å°¿öµå "ByRef"°¡ ¾ø´Â °Íó·³ ÇàÀ§ÇÕ´Ï´Ù. ¿¹¸¦ µé¾î, Swap(A_Index, i)´Â A_IndexÀÇ °ªÀ» i¿¡ ÀúÀåÇÏÁö¸¸, Left¿¡ ÇÒ´çµÈ °ªÀº Swap ÇÔ¼ö°¡ ¹ÝȯµÇ´Â ¼ø°£ Æó±âµË´Ï´Ù.

+

[v1.1.01+]: IsByRef() ÇÔ¼ö¸¦ »ç¿ëÇϸé È£ÃâÀÚ°¡ ÁÖ¾îÁø ByRef ¸Å°³º¯¼ö¿¡ ´ëÇÏ¿© º¯¼ö¸¦ °ø±ÞÇß´ÂÁö ¾Ë ¼ö ÀÖ½À´Ï´Ù.

+

¾Ë·ÁÁø ÇÑ°è:

+ +

¼±ÅÃÀû ¸Å°³º¯¼ö

+

+ÇÔ¼ö¸¦ Á¤ÀÇÇÒ ¶§, Çϳª ÀÌ»óÀÇ ¸Å°³º¯¼ö¿¡ ¼±ÅÃÀû Ç¥½ÄÀ» ÇÒ ¼ö ÀÖ½À´Ï´Ù. ¸ÕÀú µîÈ£ »çÀÎÀ» µÎ°í (¶Ç´Â v1.1.09+¿¡¼­´Â :=) ´ÙÀ½¿¡ ±âº»°ªÀ» µÎ¸é µË´Ï´Ù. ´ÙÀ½ ÇÔ¼ö´Â Z ¸Å°³º¯¼ö¿¡ ¼±ÅÃÀû Ç¥½ÄÀÌ ºÙ¾î ÀÖ½À´Ï´Ù:

+
Add(X, Y, Z:=0) {
+    return X + Y + Z
+}
+

+v1.1.09 ¹öÀüºÎÅÍ =¿Í := µÑ ´Ù Áö¿øÇÕ´Ï´Ù. Ç¥Çö½Ä ÇÒ´ç°úÀÇ ÀÏ°ü¼º°ú ¹Ì·¡ ¹öÀüÀÇ ¿ÀÅäÇÖÅ°¿ÍÀÇ È£È¯¼ºÀ» À§ÇÏ¿© ÈÄÀÚ¸¦ ±ÇÀåÇÕ´Ï´Ù.

+

+È£ÃâÀÚ°¡ ¼¼ °³ÀÇ ¸Å°³º¯¼ö¸¦ À§ÀÇ ÇÔ¼ö¿¡ °Ç³×¸é, ZÀÇ ±âº» °ªÀº ¹«½ÃµË´Ï´Ù. ±×·¯³ª È£ÃâÀÚ°¡ ¿ÀÁ÷ µÎ °³ÀÇ ¸Å°³º¯¼ö¸¸ °Ç³×¸é, Z´Â ÀÚµ¿À¸·Î ±âº»°ª 0À» ¹Þ½À´Ï´Ù.

+

+¼±ÅÃÀû ¸Å°³º¯¼ö¸¦ ¸®½ºÆ® ÇÑ °¡¿îµ¥¿¡ µû·Î ¹èÄ¡ÇÏ´Â °ÍÀº ºÒ°¡´ÉÇÕ´Ï´Ù. ´Ù¸¥ ¸»·Î Çϸé, ù ¹ø° ¼±ÅÃÀû ¸Å°³º¯¼öÀÇ ¿À¸¥ÂÊ¿¡ ³ª¿À´Â ¸ðµç ¸Å°³º¯¼öµµ ¿ª½Ã ¼±ÅÃÀûÀ¸·Î Ç¥½ÄÀÌ ºÙ¾î¾ß ÇÕ´Ï´Ù. [AHK_L 31+]: ¼±ÅÃÀû ¸Å°³º¯¼ö´Â ¸Å°³º¯¼ö ¸®½ºÆ®ÀÇ Áß¾Ó¿¡¼­´Â »ý·«ÇÒ ¼ö ÀÖ½À´Ï´Ù. ¾Æ·¡¿Í °°ÀÌ ÇÔ¼ö¸¦ È£ÃâÇÕ´Ï´Ù. µ¿ÀûÀÎ ÇÔ¼ö È£Ãâ°ú ¸Þ½îµå È£ÃâÀº v1.1.12+ÀÌ»óÀÌ ÇÊ¿äÇÕ´Ï´Ù.

+
Func(1,, 3)
+Func(X, Y:=2, Z:=0) {  ; ÀÌ °æ¿ì Z´Â¿©ÀüÈ÷ ¼±ÅÃÀûÀ̾î¾ß ÇÔ¿¡ À¯ÀÇÇÕ´Ï´Ù.
+    MsgBox %X%, %Y%, %Z%
+}
+

v1.0.46.13+¿¡¼­, ByRef ¸Å°³º¯¼öµµ ±âº»°ªÀ» Áö¿øÇÕ´Ï´Ù; ¿¹¸¦ µé¾î: Func(ByRef p1 = ""). È£ÃâÀÚ°¡ ±×·± ¸Å°³º¯¼ö¸¦ »©¸ÔÀ» ¶§¸¶´Ù, ÇÔ¼ö´Â Áö¿ª º¯¼ö¸¦ ¸¸µé¾î ±âº» °ªÀ» ´ã½À´Ï´Ù; ´Ù¸¥ ¸»·Î, ÇÔ¼ö´Â ¸¶Ä¡ Å°¿öµå "ByRef"°¡ Á¸ÀçÇÏÁö ¾Ê´Â °Íó·³ ÇàÀ§ÇÕ´Ï´Ù.

+

+¸Å°³º¯¼öÀÇ ±âº» °ªÀº ´ÙÀ½ Áß Çϳª°¡ µÇ¾î¾ß ÇÕ´Ï´Ù: true, false, ¹®ÀÚ ±×´ë·ÎÀÇ Á¤¼ö, ¹®ÀÚ ±×´ë·ÎÀÇ ºÎµ¿ ¼Ò¼öÁ¡ ¼ö, ¶Ç´Â "fox" ¶Ç´Â ""¿Í °°ÀÌ ÀοëºÎȣó¸®µÇ¾î ¹®ÀÚ ±×´ë·ÎÀÇ ¹®ÀÚ¿­. + +(±×·¯³ª 1.0.46.13+ÀÌÀü ¹öÀüÀÇ ¹®ÀÚ¿­Àº ¿ÀÁ÷ ""¸¸ Áö¿øÇÕ´Ï´Ù).

+ +

È£ÃâÀÚ¿¡°Ô °ª µ¹·ÁÁÖ±â

+

¼Ò°³¿¡ ±â¼úÇÑ ¹Ù¿Í °°ÀÌ, ÇÔ¼ö´Â ¼±ÅÃÀûÀ¸·Î °ªÀ» È£ÃâÀÚ¿¡°Ô µ¹·ÁÁÙ ¼ö ÀÖ½À´Ï´Ù.

+
+Test := returnTest()
+MsgBox % Test
+
+returnTest() {
+  return 123
+}
+
+

ÇÔ¼ö·ÎºÎÅÍ °á°ú¸¦ ´õ ¸¹ÀÌ µ¹·ÁÁÖ°í ½Í´Ù¸é, ByRef¸¦ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù:

+
+returnByRef(A,B,C)
+MsgBox % A "," B "," C
+
+returnByRef(ByRef val1, ByRef val2, ByRef val3)
+{
+  val1 := "A"
+  val2 := 100
+  val3 := 1.1
+  return
+}
+
+

[v1.0.97+]: °´Ã¼¿Í ¹è¿­À» »ç¿ëÇÏ¸é ¿©·¯ °ªµé ½ÉÁö¾î À̸§ ºÙÀº °ªµéµµ µ¹·ÁÁÙ ¼ö ÀÖ½À´Ï´Ù:

+
+Test1 := returnArray1()
+MsgBox % Test1[1] "," Test1[2]
+
+Test2 := returnArray2()
+MsgBox % Test2[1] "," Test2[2]
+
+Test3 := returnObject()
+MsgBox % Test3.id "," Test3.val
+
+returnArray1() {
+  Test := [123,"ABC"]
+  return Test
+}
+
+returnArray2() {
+  x := 456
+  y := "EFG"
+  return [x, y]
+}
+
+returnObject() {
+  Test := {id: 789, val: "HIJ"}
+  return Test
+}
+
+

°¡º¯ ÇÔ¼ö [AHK_L 60+]

+

+ÇÔ¼ö¸¦ Á¤ÀÇÇÒ ¶§, º°Ç¥¸¦ ¸¶Áö¸· ¸Å°³º¯¼ö µÚ¿¡ ¾²¸é ±× ÇÔ¼ö¸¦ °¡º¯ÇÔ¼ö·Î ¸¸µé ¼ö ÀÖ½À´Ï´Ù. °¡º¯ °³¼öÀÇ ¸Å°³º¯¼ö¸¦ ¹ÞÀ» ¼ö ÀÖ½À´Ï´Ù:

+
Join(sep, params*) {
+    for index,param in params
+        str .= param . sep
+    return SubStr(str, 1, -StrLen(sep))
+}
+MsgBox % Join("`n", "one", "two", "three")
+

+°¡º¯ ÇÔ¼ö¸¦ È£ÃâÇÒ ¶§, ³ÑÄ¡´Â ¸Å°³º¯¼ö´Â ÇÔ¼öÀÇ ¸¶Áö¸· ¸Å°³º¯¼ö¿¡ ÀúÀåµÇ¾î ÀÖ´Â °´Ã¼¸¦ ÅëÇÏ¿© Á¢±ÙÇÒ ¼ö ÀÖ½À´Ï´Ù. ³ÑÄ£ ù ¹ø° ¸Å°³º¯¼ö´Â params[1]¿¡ ÀÖ°í, µÎ ¹ø°´Â params[2]¿¡ µîµî¿¡ ÀÖ½À´Ï´Ù. ´Ù¸¥ Ç¥ÁØ °´Ã¼Ã³·³params.MaxIndex()¸¦ »ç¿ëÇÏ¸é ¼ýÄ¡»ó °¡Àå ³ôÀº À妽º¸¦ ¾Ë ¼ö ÀÖ½À´Ï´Ù (ÀÌ °æ¿ì ¸Å°³º¯¼öÀÇ °³¼öÀÔ´Ï´Ù). ±×·¸Áö¸¸, ¸Å°³º¯¼ö°¡ ¾ø´Ù¸é, MaxIndex´Â ºó ¹®ÀÚ¿­À» µ¹·ÁÁÝ´Ï´Ù.

+

ÁÖÀÇ:

+ +

°¡º¯ ÇÔ¼ö È£Ãâ

+

+°¡º¯ ÇÔ¼ö°¡ °¡º¯ °³¼öÀÇ ¸Å°³º¯¼ö¸¦ ¹Þ¾ÆµéÀÏ ¼ö ÀÖ´Â ¹Ý¸é, ¸Å°³º¯¼ö ¹è¿­À» ¾î¶² ÇÔ¼ö¿¡µµ °Ç³Ú ¼ö ÀÖ½À´Ï´Ù. °°Àº ±¸¹®À» ÇÔ¼ö-È£Ãâ¿¡ Àû¿ëÇÏ¸é µË´Ï´Ù:

+
substrings := ["one", "two", "three"]
+MsgBox % Join("`n", substrings*)
+

ÁÖÀÇ:

+ +

¾Ë·ÁÁø ÇÑ°è:

+ +

Áö¿ª º¯¼ö¿Í Àü¿ª º¯¼ö

+

Áö¿ª º¯¼ö

+

+ÇÔ¼ö ¾È¿¡¼­ ¸¸µé¾îÁö°í Á¢±ÙµÇ´Â ¸ðµç º¯¼öµéÀº ±âº»ÀûÀ¸·Î Áö¿ªÀûÀÔ´Ï´Ù (½´ÆÛ-Àü¿ª º¯¼ö ±×¸®°í Clipboard, ErrorLevel, A_TimeIdle¿Í °°Àº ³»Àå º¯¼ö´Â Á¦¿ÜÇÕ´Ï´Ù). °¢ Áö¿ª º¯¼öÀÇ ³»¿ëÀº ÇÔ¼ö ¾È¿¡ µç ÁÙ¿¡¼­¸¸ º¸ÀÔ´Ï´Ù. °á°úÀûÀ¸·Î, Áö¿ª º¯¼ö´Â Àü¿ª º¯¼ö¿Í À̸§ÀÌ °°À» ¼ö ÀÖ½À´Ï´Ù. ±×¸®°í ¼­·Î ´Ù¸¥ ³»¿ëÀ» °¡Áú ¼ö ÀÖ½À´Ï´Ù. ¸¶Áö¸·À¸·Î, ¸ðµç Áö¿ª º¯¼ö´Â ÇÔ¼ö°¡ È£ÃâµÉ ¶§¸¶´Ù ºó ä·Î ½ÃÀÛÇÕ´Ï´Ù.

+ +

Àü¿ª º¯¼ö

+

+ÇÔ¼ö ¾È¿¡¼­ ±âÁ¸ÀÇ Àü¿ª º¯¼ö¸¦ ÂüÁ¶ÇÏ·Á¸é (¶Ç´Â »õ·Î ¸¸µé·Á¸é), º¯¼ö¸¦ global·Î ¼±¾ðÇÑ ´ÙÀ½ »ç¿ëÇÕ´Ï´Ù. ¿¹¸¦ µé¾î:

+
LogToFile(TextToLog)
+{
+    global LogFileName  ; ÀÌ Àü¿ª º¯¼ö´Â ÀÌ ÇÔ¼ö ¹Ù±ù ¾îµò°¡¿¡ ¹Ì¸® °ªÀÌ ÁÖ¾îÁ® ÀÖ½À´Ï´Ù.
+    FileAppend, %TextToLog%`n, %LogFileName%
+}
+

Àü¿ª-°£ÁÖ ¸ðµå: ÇÔ¼ö°¡ ¹æ´ëÇÑ °³¼öÀÇ Àü¿ª º¯¼ö¸¦ ¸¸µé°Å³ª Á¢±ÙÇÒ ÇÊ¿ä°¡ ÀÖ´Ù¸é, ±×ÀÇ ¸ðµç º¯¼ö¸¦ Àü¿ªÀûÀ¸·Î °£ÁÖÇϵµ·Ï Á¤ÀÇÇÒ ¼ö ÀÖ½À´Ï´Ù (¸Å°³º¯¼ö´Â Á¦¿Ü). ù ÁÙÀ» ´Ü¾î "global"·Î ¸¸µé°Å³ª Áö¿ª º¯¼öÀÇ ¼±¾ðÀ¸·Î ¸¸µé¸é µË´Ï´Ù. ¿¹¸¦ µé¾î:

+
SetDefaults()
+{
+    global  ; ÇÔ¼öÀÇ Ã¹ ÁÙÀÌ "local MyVar"¿Í °°Àº °ÍÀ¸·Î ½ÃÀÛÇϸé ÀÌ ´Ü¾î´Â »ý·«Çصµ µË´Ï´Ù.
+    MyGlobal := 33  ; 33À» Àü¿ª º¯¼ö¿¡ ÇÒ´çÇÕ´Ï´Ù. ÇÊ¿äÇÏ¸é ¸ÕÀú º¯¼ö¸¦ ¸¸µì´Ï´Ù.
+    local x, y:=0, z  ; Áö¿ª º¯¼ö´Â ÀÌ ¸ðµå·Î ¼±¾ðÇØ¾ß ÇÕ´Ï´Ù. ±×·¸Áö ¾ÊÀ¸¸é Àü¿ªÀûÀ¸·Î °£Áֵ˴ϴÙ.
+}
+

+Àü¿ª-°£ÁÖ ¸ðµå¸¦ ÇÔ¼ö¿¡ »ç¿ëÇÏ¸é ¿¹¸¦ µé¾î °ªÀ» Array%A_Index%¿¡ ÇÒ´çÇϴ ȸµ¹ÀÌ¿Í °°ÀÌ Àü¿ª ¹è¿­À» ¸¸µé ¼ö ÀÖ½À´Ï´Ù.

+

½´ÆÛ-Àü¿ª º¯¼ö [v1.1.05+]: Àü¿ª ¼±¾ðÀÌ ÇÔ¼ö ¹Û¿¡ ³ªÅ¸³ª¸é, ±âº»À¸·Î ¸ðµç ÇÔ¼ö¿¡ ¿µÇâÀ» ¹ÌĨ´Ï´Ù. ±×·¡¼­ °¢ ÇÔ¼ö¸¶´Ù ÇØ´ç º¯¼ö¸¦ ´Ù½Ã ¼±¾ðÇÒ ÇÊ¿ä°¡ ¾ø½À´Ï´Ù. ±×·¸Áö¸¸, ÇÔ¼ö ¸Å°³º¯¼ö³ª Áö¿ª º¯¼ö¿¡ °°Àº À̸§ÀÌ ¼±¾ðµÇ¾î ÀÖ´Ù¸é, Àü¿ª º¯¼öº¸´Ù ¿ì¼± ¼øÀ§°¡ ³õ½À´Ï´Ù. class Å°¿öµå·Î ¸¸µç º¯¼öµµ ¼öÆÛ-Àü¿ª º¯¼öÀÔ´Ï´Ù.

+ +

Á¤Àû º¯¼ö

+

+Á¤Àû º¯¼ö´Â ¾ðÁ¦³ª ¹¬½ÃÀûÀ¸·Î Áö¿ªÀûÀÌÁö¸¸, Áö¿¬ º¯¼ö¿Í´Â ´Ù¸¥ Á¡ÀÌ ÀÖ½À´Ï´Ù. È£Ãâ »çÀÌ¿¡ °ªÀ» ±â¾ïÇÕ´Ï´Ù. ¿¹¸¦ µé¾î:

+
LogToFile(TextToLog)
+{
+    static LoggedLines = 0
+    LoggedLines += 1  ; ¿ÏÀüÈ÷ Áö¿ªÀûÀ¸·Î À¯Áö°ü¸®ÇÕ´Ï´Ù (±×ÀÇ °ªÀº È£Ãâ »çÀÌ¿¡ ±â¾ïµË´Ï´Ù).
+    global LogFileName
+    FileAppend, %LoggedLines%: %TextToLog%`n, %LogFileName%
+}
+

Á¤Àû ÃʱâÈ­ÀÚ: 1.0.46 ÀÌÀü ¹öÀü¿¡¼­, ¸ðµç Á¤Àû º¯¼ö´Â ºó ä·Î ½ÃÀÛÇß½À´Ï´Ù; ±×·¡¼­ óÀ½À¸·Î »ç¿ëµÇ´Â º¯¼öÀÎÁö ŽÁöÇÏ´Â À¯ÀÏÇÑ ¹æ¹ýÀº ±×°ÍÀÌ ºñ¾îÀÖ´ÂÁö Á¡°ËÇÏ´Â °ÍÀ̾ú½À´Ï´Ù. v1.0.46+¿¡¼­, Á¤Àû º¯¼ö´Â "" ¸»°í ´Ù¸¥ °ÍÀ¸·Î ÃʱâÈ­ÇÒ ¼ö ÀÖ½À´Ï´Ù. ¸ÕÀú :=À̳ª =¸¦ µÎ°í ¹Ù·Î ÀÌ¾î ´ÙÀ½ Áß Çϳª°¡ ¿À¸é µË´Ï´Ù: true, false, ±âÈ£ ±×´ë·ÎÀÇ ¼ýÀÚ, ±âÈ£ ±×´ë·ÎÀÇ ºÎµ¿ ¼Ò¼öÁ¡ ¼ö, ¶Ç´Â "fox"°ú °°ÀÌ ±âÈ£ ±×´ë·Î/ ÀοëºÎÈ£ ó¸®µÈ ¹®ÀÚ¿­. ¿¹¸¦ µé¸é: static X:=0, Y:="fox". °¢ Á¤Àû º¯¼ö´Â (½ºÅ©¸³Æ®°¡ ½ÇÇàÀ» ½ÃÀÛÇϱâ Àü¿¡) ¿ÀÁ÷ ÇÑ ¹ø¸¸ ÃʱâÈ­µË´Ï´Ù.

+

[AHK_L 58+]: Static var := expressionÀ» Áö¿øÇÕ´Ï´Ù. ±×·± ¸ðµç Ç¥Çö½ÄÀº ³ªÅ¸³ª´Â ¼ø¼­´ë·Î ½ºÅ©¸³Æ®ÀÇ ÀÚµ¿-½ÇÇà ¼½¼Ç ¹Ù·Î ¾Õ¿¡¼­ Æò°¡µË´Ï´Ù.

+

Á¤Àû-°£ÁÖ ¸ðµå [v1.0.48+]: ÇÔ¼ö´Â ±×ÀÇ ¸ðµç º¯¼ö°¡ Á¤ÀûÀ̶ó°í °£ÁÖÇϵµ·Ï Á¤ÀÇÇÒ ¼ö ÀÖ½À´Ï´Ù (±×ÀÇ ¸Å°³º¯¼ö´Â Á¦¿Ü). ù ÁÙÀ» "static"À̶ó´Â ´Ü¾î·Î ¸¸µé¸é µË´Ï´Ù. ¿¹¸¦ µé¾î:

+
GetFromStaticArray(WhichItemNumber)
+{
+    static
+    static FirstCallToUs := true  ; Á¤Àû ¼±¾ðÀÇ ÃʱâÈ­ÀÚ´Â ¿©ÀüÈ÷ (±âµ¿½Ã¿¡) ÇÑ ¹ø¸¸ ½ÇÇàµË´Ï´Ù.
+    if FirstCallToUs  ; ù ¹ø° È£Ãâ µ¿¾È Á¤Àû ¹è¿­À» ¸¸µì´Ï´Ù. ±×·¯³ª ±× ´ÙÀ½ È£Ãâ¿¡´Â ¸¸µéÁö ¾Ê½À´Ï´Ù.
+    {
+        FirstCallToUs := false
+        Loop 10
+            StaticArray%A_Index% := "Value #" . A_Index
+    }
+    return StaticArray%WhichItemNumber%
+}
+

+Á¤Àû-°£ÁÖ ¸ðµå¿¡¼­, Á¤ÀûÀÌ¸é ¾ÈµÇ´Â º¯¼ö´Â ¹Ýµå½Ã local ¶Ç´Â global·Î ¼±¾ðÇØ¾ß ÇÕ´Ï´Ù.

+ +

Áö¿ª º¯¼ö¿Í Àü¿ª º¯¼ö¿¡ °üÇÏ¿© ´õ ÀÚ¼¼È÷

+

+¸¹Àº º¯¼öµéÀ» ÇÑ ÁÙ¿¡ ¼±¾ðÇÒ ¼ö ÀÖ½À´Ï´Ù. ´ÙÀ½ ¿¹Á¦¿Í °°ÀÌ ½°Ç¥·Î °¡¸£¸é µË´Ï´Ù:

+
global LogFileName, MaxRetries := 5
+static TotalAttempts = 0, PrevResult
+

+v1.0.46+¿¡¼­, Àü¿ª º¯¼ö³ª Áö¿ª º¯¼ö´Â ¼±¾ð°ú µ¿½Ã¿¡ °°Àº ÁÙ¿¡¼­ ÃʱâÈ­ÇÒ ¼ö ÀÖ½À´Ï´Ù. :=À̳ª = ´ÙÀ½¿¡ Ç¥Çö½ÄÀ» µÎ¸é µË´Ï´Ù (= ¿¬»êÀÚ´Â ¼±¾ð¿¡¼­ :=¿Í ¶È°°ÀÌ ÇàÀ§ÇÕ´Ï´Ù). Á¤Àû ÃʱâÈ­ÀÚ¿Í ´Ù¸£°Ô, Áö¿ª º¯¼ö¿Í Àü¿ª º¯¼öÀÇ ÃʱâÈ­ÀÚ´Â ÇÔ¼ö°¡ È£ÃâµÉ ¶§¸¶´Ù ¸Å¹ø ½ÇÇàµË´Ï´Ù. ±×·¯³ª ¿ÀÁ÷ ½ÇÇà È帧ÀÌ ½ÇÁ¦·Î °Å±â¿¡ ´Ù´Ù¸¦ ¶§¿¡¸¸ ÃʱâÈ­ÇÕ´Ï´Ù. ´Ù¸¥ ¸»·Î, local x = 0°ú °°Àº ÁÙÀº ´ÙÀ½°ú °°ÀÌ µÎ °³ÀÇ ¼­¼ú¹®À¸·Î ÀÛ¼ºÇÑ °Í°ú È¿°ú°¡ °°½À´Ï´Ù: local x ´ÙÀ½¿¡ x = 0.

+

+local, global, ±×¸®°í static°°Àº ´Ü¾î´Â ½ºÅ©¸³Æ®°¡ ±âµ¿ÇÏÀÚ ¸¶ÀÚ Áï½Ã 󸮵DZ⠶§¹®¿¡, º¯¼ö´Â IF ¼­¼ú¹®À» ¼ö´ÜÀ¸·Î ÇÏ¿© Á¶°ÇÀûÀ¸·Î ¼±¾ðÇÒ ¼ö ¾ø½À´Ï´Ù. ´Ù¸¥ ¸»·Î Çϸé, IF ¶Ç´Â ELSE ºí·Ï¾È¿¡¼­ ¼±¾ðÇϸé ÇØ´ç ¼±¾ð°ú ±× ÇÔ¼öÀÇ ´Ý´Â °ýÈ£ »çÀÌ¿¡ ÀÖ´Â ¸ðµç Áٵ鿡 ¿¹»óÄ¡ ¸øÇÑ È¿°ú¸¦ ¹ÌĨ´Ï´Ù. ¶Ç ÁÖ¸ñÇÒ °ÍÀº global Array%i%¿Í °°ÀÌ µ¿ÀûÀ¸·Î º¯¼ö¸¦ ¼±¾ðÇÏ´Â °ÍÀº ÇöÀç °¡´ÉÇÏÁö ¾Ê´Ù´Â °ÍÀÔ´Ï´Ù.

+

(StringSplit °°Àº) ÀÇ»ç-¹è¿­À» »ý¼ºÇÏ´Â ¸í·É¾î¿¡ ´ëÇÏ¿©, +Àü¿ª-°£ÁÖ ¸ðµå°¡ ¿µÇâÀÌ ¾ø°Å³ª ¶Ç´Â ÀÇ»ç-¹è¿­ÀÇ Ã¹ ¹ø° ¿ø¼Ò°¡ Áö¿ª º¯¼ö·Î ¼±¾ðµÇ¾î ÀÖ´Ù¸é, +°á°ú ÀÇ»ç-¹è¿­ÀÇ °¢ º¯¼ö´Â Áö¿ª º¯¼öÀÔ´Ï´Ù. +(±× ÇÔ¼öÀÇ ¸Å°³º¯¼ö Áß Çϳª°¡ °Ç³×ÁúÁö¶óµµ ¸¶Âù°¡ÁöÀÔ´Ï´Ù -- ±× ¸Å°³º¯¼ö°¡ ByRefÀÏÁö¶óµµ -- ¿Ö³ÄÇÏ¸é ¸Å°³º¯¼ö´Â Áö¿ª º¯¼ö¿Í ºñ½ÁÇϱ⠶§¹®ÀÔ´Ï´Ù). ¿ªÀ¸·Î, ù ¿ø¼Ò°¡ global·Î ¼±¾ðµÇ¾ú´Ù¸é, Àü¿ª ¹è¿­ÀÌ »ý¼ºµË´Ï´Ù. ±×·¸Áö¸¸, ¾Æ·¡ÀÇ ÈçÇÑ È¥¶õÀÇ ±Ù¿øÀÌ ÀÌ °æ¿ì¿¡µµ Àû¿ëµÇ´Ï´Ù. StringSplitÀÇ Ã¹ ¿ø¼Ò´Â ArrayName0ÀÔ´Ï´Ù. WinGet List¿Í °°ÀÌ ´Ù¸¥ ¹è¿­-»ý¼º ¸í·É¾î¿¡ ´ëÇÏ¿©, ù ¹ø° ¿ø¼Ò´Â ArrayNameÀÔ´Ï´Ù (Áï, ¼ýÀÚ°¡ ¾ø½À´Ï´Ù).

+

+ÇÔ¼ö ¾È¿¡¼­, Array%i%¿Í °°Àº µ¿Àû º¯¼ö ÂüÁ¶´Â ÇØ´ç À̸§ÀÇ º¯¼ö°¡ Á¸ÀçÇÏÁö ¾Ê´Â ÇÑ, ¾ðÁ¦³ª Áö¿ª º¯¼ö·Î °áÁ¤µË´Ï´Ù. ¸¸¾à Á¸ÀçÇϸé Àü¿ª º¯¼ö°¡ »ç¿ëµË´Ï´Ù. ¾Æ¿¹ Á¸ÀçÇÏÁö ¾ÊÀ¸¸é »õ·Î »ý¼ºµÉ ÇÊ¿ä°¡ ÀÖ½À´Ï´Ù. Áö¿ª º¯¼ö·Î »ý¼ºµË´Ï´Ù. ´Ü, Àü¿ª-°£ÁÖ ¸ðµå°¡ ÄÑ ÀÖ´Ù¸é Àü¿ª º¯¼ö·Î »ý¼ºµË´Ï´Ù. °á°úÀûÀ¸·Î, ÇÔ¼ö´Â (Array%i% := A_Index°ú °°Àº ¼ö´ÜÀ» »ç¿ëÇÏ¿©) ¼öµ¿À¸·Î Àü¿ª ¹è¿­À» ¸¸µé ¼ö ÀÖ½À´Ï´Ù. ¹°·Ð Àü¿ª-°£ÁÖ ÇÔ¼ö·Î ¼±¾ðµÇ¾î ÀÖ¾î¾ß ÇÕ´Ï´Ù.

+ +

ÈçÇÑ È¥¶õÀÇ ±Ù¿ø: º¯¼ö¸¦ µ¿ÀûÀ¸·Î ÂüÁ¶Çߴµ¥ Á¸ÀçÇÏÁö ¾ÊÀ¸¸é ½ºÅ©¸³Æ®°¡ ±âµ¿ÇÏ´Â ¼ø°£ ±× º¯¼ö°¡ »ý¼ºµË´Ï´Ù. ¿¹¸¦ µé¾î, ÇÔ¼ö ¹Û¿¡¼­ »ç¿ëµÉ ¶§, MsgBox %Array1%´Â ½ºÅ©¸³Æ®°¡ ±âµ¿ÇÏ´Â ¼ø°£ Array1À» Àü¿ªº¯¼ö·Î »ý¼ºÇÕ´Ï´Ù. ¹Ý´ë·Î, ÇÔ¼ö ¾È¿¡¼­ »ç¿ëµÉ ¶§, MsgBox %Array1%´Â ½ºÅ©¸³Æ®°¡ ±âµ¿ÇÏ´Â ¼ø°£ (Àü¿ª-°£ÁÖ ¸ðµå°¡ ¾Æ´Ñ ÇÑ), Array¿Í Array0ÀÌ Àü¿ª º¯¼ö·Î ¼±¾ðµÇ¾î ÀÖ´Ù°í ÇÒÁö¶óµµ, Array1À» Áö¿ª º¯¼öÁß Çϳª·Î »ý¼ºÇÕ´Ï´Ù.

+ +

µ¿ÀûÀ¸·Î ÇÔ¼ö È£ÃâÇϱâ

+

+v1.0.47.06+¿¡¼­, ÇÔ¼ö´Â (³»Àå ÇÔ¼öµµ ¿ª½Ã) ÆÛ¼¾Æ® »çÀÎÀ» ÅëÇÏ¿© µ¿ÀûÀ¸·Î È£ÃâÇÒ ¼ö ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î, %Var%(x, "fox")´Â À̸§ÀÌ Var ¾È¿¡ µé¾î ÀÖ´Â ÇÔ¼ö¸¦ È£ÃâÇÕ´Ï´Ù. ºñ½ÁÇÏ°Ô, Func%A_Index%()´Â A_IndexÀÇ ÇöÀç °ª¿¡ µû¶ó¼­ Func1() ¶Ç´Â Func2(), µîµîÀ» È£ÃâÇÕ´Ï´Ù.

+

+v1.1.07.00+¿¡¼­, %Var%()ÀÇ Var´Â ÇÔ¼ö À̸§, ÇÔ¼ö ÂüÁ¶ ¶Ç´Â ÇÔ¼ö¸¦ Èä³»³½ °´Ã¼¸¦ ´ãÀ» ¼ö ÀÖ½À´Ï´Ù. ÇØ´ç ÇÔ¼ö°¡ Á¸ÀçÇÏÁö ¾ÊÀ¸¸é, ±âº» º£À̽º °´Ã¼ÀÇ __Call ¸ÞŸ-ÇÔ¼ö°¡ ´ë½Å¿¡ ¿äûµË´Ï´Ù.

+

+¾Æ·¡ÀÇ ÀÌÀ¯ Áß Çϳª ¶§¹®¿¡ ÇÔ¼ö¸¦ È£ÃâÇÒ ¼ö ¾ø´Ù¸é, ±× È£ÃâÀ» ´ã°í Àִ ǥÇö½ÄÀÇ Æò°¡°¡ Á¶¿ëÈ÷ ±×¸®°í ³Ê¹« »¡¸® ³¡³ª¹Ç·Î, ÀÏ°ü¼º ¾ø´Â °á°ú¸¦ µµÃâÇÒ ¼ö ÀÖ½À´Ï´Ù:

+ +

¸¶Áö¸·À¸·Î, ÇÔ¼ö¸¦ µ¿ÀûÀ¸·Î È£ÃâÇϸé Á¤»ó È£Ã⺸´Ù ¾à°£ ´õ ´À¸³´Ï´Ù. ¿Ö³ÄÇϸé Á¤»ó È£ÃâÀº ½ºÅ©¸³Æ®°¡ ½ÇÇàÀ» Çϱâ Àü¿¡ °áÁ¤(°Ë»ö ¿Ï·á)µÇ±â ¶§¹®ÀÔ´Ï´Ù.

+ +

´ÜÃà-ȸ·Î ºÒ¸®¾ð Æò°¡

+

+AND, OR, ±×¸®°í »ïÁø ¿¬»êÀÚ°¡ Ç¥Çö½Ä ¾È¿¡ »ç¿ëµÉ ¶§, ´ÜÃà ȸ·Î Æò°¡·Î ¼öÇ༺À» °³¼±ÇÕ´Ï´Ù (ÇÔ¼ö È£ÃâÀÌ Á¸ÀçÇϴ°¡ ¿©ºÎ¿¡ »ó°ü¾øÀÌ). ´ÜÃà ȸ·Î Æò°¡´Â ÃÖÁ¾ °á°ú¿¡ ¿µÇâÀ» ¹ÌÄ¥ ¼ö ¾ø´Â ºÎºÐÀ» Æò°¡ÇÏÁö ¾Ê½À´Ï´Ù. °³³äÀ» º¸¿©ÁÖ±â À§ÇØ, ´ÙÀ½ ¿¹Á¦¸¦ ¿¬±¸ÇØ º¸°Ú½À´Ï´Ù:

+ +
if (ColorName <> "" AND not FindColor(ColorName))
+    MsgBox %ColorName%À» ¹ß°ßÇÒ ¼ö ¾ø½À´Ï´Ù.
+

+À§ÀÇ ¿¹Á¦¿¡¼­, FindColor() ÇÔ¼ö´Â ColorName º¯¼ö°¡ ºñ¾îÀÖÁö ¾Ê´Â ÇÑ, Àý´ë È£ÃâµÇÁö ¾Ê½À´Ï´Ù. ÀÌ ¶§¹®¿¡ ANDÀÇ ¿ÞÂÊÀÌ false°¡ µÇ°í, ±×ÀÇ ¿À¸¥ÂÊ ¸¸À¸·Î´Â true¶ó´Â ÃÖÁ¾ °á°ú¸¦ »ý»êÇÒ °¡´É¼ºÀÌ ÀüÇô ¾ø±â ¶§¹®ÀÔ´Ï´Ù.

+

+ÀÌ ÇàÀ§ ¶§¹®¿¡, ±× ÇÔ¼ö°¡ AND³ª ORÀÇ ¿À¸¥ÂÊ¿¡ È£ÃâµÇ´õ¶óµµ, ÇÔ¼ö°¡ »ý»êÇÏ´Â ºÎÀÛ¿ëÀÌ (Àü¿ª º¯¼öÀÇ ³»¿ëÀ» º¯°æÇÏ´Â °Í°ú °°Àº) Àý´ë·Î ÀϾÁö ¾ÊÀ» °ÍÀ̶ó´Â »ç½ÇÀ» ±ú´Ý´Â °ÍÀÌ Áß¿äÇÕ´Ï´Ù.

+

+¶Ç ÁÖ¸ñÇÒ °ÍÀº ´ÜÃà-ȸ·Î Æò°¡°¡ ³»Æ÷µÈ AND¿Í OR¿¡ ´Ü°èÀûÀ¸·Î Àû¿ëµÈ´Ù´Â °ÍÀÔ´Ï´Ù. ¿¹¸¦ µé¾î, ´ÙÀ½ Ç¥Çö½Ä¿¡¼­, ColorNameÀÌ ºñ¾î ÀÖÀ¸¸é ¿ÀÁ÷ ¿ÞÂÊÀÇ Æò°¡¸¸ ÀϾ´Ï´Ù. ¿Ö³ÄÇÏ¸é ¿ÞÂÊ ¸¸À¸·Î ÃÖÁ¾ Á¤´äÀ» È®½ÇÇÏ°Ô °áÁ¤Çϱ⿡ ÃæºÐÇϱ⠶§¹®ÀÔ´Ï´Ù:

+
if (ColorName = "" OR FindColor(ColorName, Region1) OR FindColor(ColorName, Region2))
+    break   ; ´õ ÀÌ»ó °Ë»ö °ÍÀÌ ¾ø½À´Ï´Ù. ÀÏÄ¡ÇÑ °ÍÀÌ ¾ø½À´Ï´Ù.
+

+À§ÀÇ ¿¹Á¦¿¡¼­ º¸¿©ÁÖ´Â ¹Ù¿Í °°ÀÌ, ºñ½Ñ (½Ã°£ÀÌ-µå´Â) ÇÔ¼ö¶ó¸é ÀϹÝÀûÀ¸·Î AND³ª ORÀÇ ¿À¸¥ÂÊ¿¡¼­ È£ÃâÇØ¾ß ¼öÇ༺´ÉÀÌ °³¼±µË´Ï´Ù. ÀÌ Å×Å©´ÐÀ» »ç¿ëÇÏ¸é ¶Ç ±×ÀÇ ¸Å°³º¯¼ö Áß Çϳª¿¡ ºÎÀûÀýÇÑ °ªÀÌ, ¿¹¸¦ µé¾î ºó ¹®ÀÚ¿­ÀÌ °Ç³×Áú ¶§, ÇÔ¼ö°¡ È£ÃâµÇÁö ¸øÇϵµ·Ï ¸¸µé ¼ö ÀÖ½À´Ï´Ù.

+

+v1.0.46+¿¡¼­, »ïÁø Á¶°Ç ¿¬»êÀÚ (?:)µµ ´ÜÃà Æò°¡¸¦ ÇÕ´Ï´Ù. ÇÊ¿ä ¾ø´Â ºÐ±â´Â Æò°¡ÇÏÁö ¾Ê½À´Ï´Ù.

+ +

ÇÔ¼ö ¾È¿¡¼­ ¼­ºê·çƾ »ç¿ëÇϱâ

+

+ÇÔ¼ö¿¡ ´Ù¸¥ ÇÔ¼öÀÇ Á¤ÀÇ´Â ´ãÀ» ¼ö ¾øÁö¸¸, ¼­ºê·çƾÀº ´ãÀ» ¼ö ÀÖ½À´Ï´Ù. ´Ù¸¥ ¼­ºê·çƾ°ú ¸¶Âù°¡Áö·Î Gosub·Î ±âµ¿ÇÏ°í ReturnÀ¸·Î ¹ÝȯµË´Ï´Ù (ÀÌ °æ¿ì ReturnÀº Gosub¿¡ ¼ÓÇÏÁö ÇÔ¼ö¿¡ ¼ÓÇÏÁö ¾Ê½À´Ï´Ù).

+

+¾Ë·ÁÁø ÇÑ°è: ÇöÀç, °¢ ¼­ºê·çƾÀÇ À̸§(¶óº§)Àº Àüü ½ºÅ©¸³Æ® ¾È¿¡¼­ À¯ÀÏÇÏ°Ô ½Äº°ÇÒ ¼ö ÀÖ¾î¾ß ÇÕ´Ï´Ù. ÇÁ·Î±×·¥Àº ¶óº§ÀÌ Áߺ¹µÇ¾î ÀÖÀ¸¸é ±âµ¿ÇÒ ¶§ ¿©·¯ºÐ¿¡°Ô °íÁöÇÒ °ÍÀÔ´Ï´Ù.

+

+ÇÔ¼ö°¡ Gosub¸¦ »ç¿ëÇØ (ÇÔ¼öÀÇ °ýÈ£ ¹Û¿¡ Á¸ÀçÇÏ´Â) °ø°³ ¼­ºê·çƾÀ¸·Î Á¡ÇÁÇØ °¡¸é, ¹Ù±ùÀÇ ¸ðµç º¯¼ö´Â Àü¿ª º¯¼öÀÌ°í ¼­ºê·çƾÀÌ µ¹¾Æ¿Ã ¶§±îÁö ÇÔ¼ö ÀÚ½ÅÀÇ Áö¿ª º¯¼ö¿¡´Â Á¢±ÙÇÒ ¼ö ¾ø½À´Ï´Ù. ±×·¸Áö¸¸, A_ThisFunc´Â ¿©ÀüÈ÷ ÇÔ¼öÀÇ À̸§À» ´ã°í ÀÖÀ» °ÍÀÔ´Ï´Ù.

+

+Goto·Î´Â ÇÔ¼ö ¾È¿¡¼­ ¹ÛÀ¸·Î Á¡ÇÁÇØ °¥ ¼ö ¾øÁö¸¸, ÇÔ¼ö´Â ¿ÜºÎ/°ø°³ ¼­ºê·çƾÀ¸·Î GosubÇÒ ¼ö ÀÖÀ¸¸ç °Å±âºÎÅÍ Goto¸¦ »ç¿ëÇÏ¸é µË´Ï´Ù.

+

+GotoÀÇ »ç¿ëÀº ÀϹÝÀûÀ¸·Î ±ÇÀåÇÏÁö ¾ÊÁö¸¸, ÇÔ¼ö ¾È¿¡¼­ ¶Ç´Ù¸¥ À§Ä¡·Î Á¡ÇÁÇϴµ¥ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. ÀÌ·¸°Ô ÇÏ¸é º¹ÀâÇÑ ÇÔ¼ö¸¦ °£·«ÇÏ°Ô ¸¸µå´Â µ¥ µµ¿òÀÌ µÉ ¼ö ÀÖ½À´Ï´Ù. ¹Ýȯ ÁöÁ¡ÀÌ ¼ö ¾øÀÌ ¸¹°í, ±× ¸ðµÎ°¡ µ¹¾Æ¿À±â Àü¿¡ ±ú²ýÇÏ°Ô Ã»¼ÒÇØ¾ß ÇÒ °æ¿ì À¯¿ëÇÕ´Ï´Ù.

+

+ÇÔ¼ö´Â ¿ÜºÎÀûÀ¸·Î-È£ÃâµÇ´Â ¼­ºê·çƾÀ» ´ãÀ» ¼ö ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î ŸÀ̸Ó, GUI g-labels, ±×¸®°í ¸Þ´º Ç׸ñÀÌ ±×°ÍÀÔ´Ï´Ù. ÀϹÝÀûÀ¸·Î º°µµÀÇ ÆÄÀÏ¿¡ ½Î ³Ö°í #Include¿Í ÇÔ²² »ç¿ëÇÕ´Ï´Ù. ÀÌ·¸°Ô ÇÏ¸é ½ºÅ©¸³Æ®ÀÇ ÀÚµ¿-½ÇÇà ¼½¼Ç ¶§¹®¿¡ ¼­·Î °£¼·ÇÏ´Â ÀÏÀ» ¸·À» ¼ö ÀÖ½À´Ï´Ù. ±×·¸Áö¸¸, ´ÙÀ½ ÇÑ°è°¡ Àû¿ëµË´Ï´Ù:

+ +

Return, Exit, ±×¸®°í ÃÑÆò

+

+´ÙÀ½ ½ÇÇà È帧ÀÌ ÇÔ¼ö ¾È¿¡¼­ ReturnÀ» ¸¸³ª±â Àü¿¡ ¸ÕÀú ´Ý´Â °ýÈ£¿¡ µµ´ÞÇϸé, ±× ÇÔ¼ö´Â ³¡³ª°í ºó °ªÀ» È£ÃâÀÚ¿¡°Ô µ¹·ÁÁÝ´Ï´Ù (ºó ¹®ÀÚ¿­). ºó °ªÀº ¶Ç ÇÔ¼ö°¡ ¸í½ÃÀûÀ¸·Î ReturnÀÇ ¸Å°³º¯¼ö¸¦ »ý·«ÇÒ ¶§¿¡µµ ¹ÝȯµË´Ï´Ù.

+

+ÇÔ¼ö°¡ Exit ¸í·É¾î¸¦ »ç¿ëÇÏ¿© ÇöÀç ¾²·¹µå¸¦ Á¾·áÇϸé, ±×ÀÇ È£ÃâÀÚ´Â ¹Ýȯ °ªÀ» ÀüÇô ¹ÞÁö ¸øÇÕ´Ï´Ù. ¿¹¸¦ µé¾î, ´ÙÀ½ ¼­¼ú¹® Var := Add(2, 3)´Â °¡Add() Á¾·áÇϸé Var¸¦ ±×´ë·Î µÑ °ÍÀÔ´Ï´Ù. ÇÔ¼ö°¡ ½ÇÇà½Ã°£ ¿¡·¯¸¦ ÀÏÀ¸Äѵµ °°Àº ÀÏÀÌ ÀϾ´Ï´Ù. ¿¹¸¦ µé¾î (UseErrorLevel°¡ ÄÑÁ® ÀÖÁö ¾ÊÀ» ¶§) Á¸ÀçÇÏÁö ¾Ê´Â ÆÄÀÏÀ» ½ÇÇàÇÏ¸é °°Àº ÀÏÀÌ ÀϾ´Ï´Ù.

+

+ÇÔ¼ö´Â ±â¾ïÇϱ⠽¬¿î °ªÀ» Ãß°¡·Î °Ç³×±â À§ÇÑ ¸ñÀûÀ¸·Î ErrorLevelÀÇ °ªÀ» º¯°æÇÒ ¼ö ÀÖ½À´Ï´Ù.

+

+ÇÔ¼ö¸¦ Çϳª ÀÌ»óÀÌ ºó °ªÀ¸·Î È£ÃâÇÏ·Á¸é (ºó ¹®ÀÚ¿­), ´ÙÀ½ ¿¹Á¦¿Í °°ÀÌ ºó µû¿ÈÇ¥ ½ÖÀ» »ç¿ëÇÕ´Ï´Ù: FindColor(ColorName, "").

+

+ÇÔ¼ö¸¦ È£ÃâÇÏ¸é »õ·Î¿î ¾²·¹µå°¡ ½ÃÀÛÇϹǷÎ, ÇÔ¼ö°¡ SendMode¿Í SetTitleMatchMode¿Í °°Àº ¼³Á¤¿¡ °¡ÇÑ º¯°æÀº ¸ðµÎ ±×ÀÇ È£ÃâÀÚ¿¡°Ôµµ ¿µÇâÀ» ¹ÌÄ¥ °ÍÀÔ´Ï´Ù.

+

+ÇÔ¼öÀÇ È£ÃâÀÚ´Â °Å±â¿¡ Á¸ÀçÇÏÁö ¾ÊÀº °ª ¶Ç´Â ¹è¿­À» °Ç³Ú ¼ö ÀÖ½À´Ï´Ù. ÇÔ¼ö°¡ »óÀÀÇÏ´Â ¸Å°³º¯¼ö¸¦ ByRef¶ó°í ±â´ëÇÒ °æ¿ì¿¡ À¯¿ëÇÕ´Ï´Ù. ¿¹¸¦ µé¾î, GetNextLine(BlankArray%i%)¸¦ È£ÃâÇϸé ÀÚµ¿À¸·Î BlankArray%i% º¯¼ö°¡ »ý¼ºµË´Ï´Ù (È£ÃâÀÚ°¡ ÇÔ¼ö ¾È¿¡ Àִ°¡ ±×¸®°í ±× ÇÔ¼ö¿¡ Àü¿ª-°£ÁÖ ¸ðµå°¡ ÄÑÁ® Àִ°¡¿¡ µû¶ó Áö¿ª º¯¼ö ¶Ç´Â Àü¿ª º¯¼ö·Î »ý¼ºµË´Ï´Ù).

+

+ÇÔ¼ö ¾È¿¡¼­ »ç¿ëµÉ ¶§, ListVars´Â ÇÔ¼öÀÇ Áö¿ª º¯¼öµéÀ» ±×ÀÇ ³»¿ë°ú ÇÔ²² º¸¿©ÁÝ´Ï´Ù. ÀÌ´Â ½ºÅ©¸³Æ®¸¦ µð¹ö±ëÇÒ ¶§ µµ¿òÀÌ µË´Ï´Ù.

+ +

½ºÅ¸ÀÏ°ú À̸§Áþ±â °ü·Ê

+

+º¹ÀâÇÑ ÇÔ¼ö´Â Ưº°ÇÑ º¯¼ö¿¡ ±¸º°µÇ´Â Á¢µÎ»ç¸¦ ºÎ¿©ÇÏ¸é ´õ Àб⠽±°í °ü¸®Çϱâ ÁÁ´Ù´Â »ç½ÇÀ» ´«Ä¡Ã¤¼ÌÀ» °ÍÀÔ´Ï´Ù. ¿¹¸¦ µé¾î, ÇÔ¼öÀÇ ¸Å°³º¯¼ö ¸®½ºÆ®¿¡¼­ °¢ ¸Å°³º¯¼öÀÇ À̸§À» ¾Õ¿¡ "p" ¶Ç´Â "p_"¸¦ µÎ¾î ÁöÀ¸¸é ÇÑ ´«¿¡ ±×ÀÇ Æ¯¼öÇÑ º»¼ºÀ» ½±°Ô ±¸º°ÇÒ ¼ö ÀÖ½À´Ï´Ù. ƯÈ÷ ÇÔ¼ö¿¡ ¼ö ½Ê°³ÀÇ Áö¿ª º¯¼ö°¡ µé¾î Àִµ¥ ÀüºÎ ÁÖÀǸ¦ ±â¿ï¿© ½Å°æÀ» ½á¾ßÇÒ ¶§ À¯¿ëÇÕ´Ï´Ù. ºñ½ÁÇÏ°Ô, Á¢µÎ»ç "r"À̳ª "r_"Àº ByRef ¸Å°³º¯¼ö¿¡ »ç¿ëÇϸé ÁÁ°í, "s"³ª "s_"´Â Á¤Àû º¯¼ö¿¡ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù.

+

+ One True Brace (OTB) ½ºÅ¸ÀÏÀ» ¼±ÅÃÀûÀ¸·Î ÇÔ¼ö¸¦ Á¤ÀÇÇÏ´Â µ¥ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î:

+
Add(x, y) {
+    return x + y
+}
+ +

#Include¸¦ »ç¿ëÇÏ¿© ¿©·¯ ½ºÅ©¸³Æ® »çÀÌ¿¡ ÇÔ¼ö °øÀ¯Çϱâ

+

+#Include Áö½Ã¾î¸¦ »ç¿ëÇϸé (½ºÅ©¸³Æ®ÀÇ »ó´Ü¿¡µµ °¡´É) ÇÔ¼ö¸¦ ¿ÜºÎ ÆÄÀϷκÎÅÍ ÀûÀçÇÒ ¼ö ÀÖ½À´Ï´Ù.

+

+¼³¸í: ½ºÅ©¸³Æ®ÀÇ ½ÇÇà È帧ÀÌ ÇÔ¼ö Á¤ÀǸ¦ ¸¸´Ù¸é, (¼ø°£ÀûÀ¸·Î) ±×°ÍÀ» °Ç³Ê ¶Ù°í ÇÔ¼öÀÇ ´Ý´Â °ýÈ£ ´ÙÀ½ ÁÙºÎÅÍ ½ÇÇàÀ» Àç°³ÇÕ´Ï´Ù. °á°úÀûÀ¸·Î ½ÇÇàÀº À§ÂÊ¿¡ ÀÖ´Â ÇÔ¼ö·Î µé¾î°¥ ¼ö ¾øÀ¸¸ç, ½ºÅ©¸³Æ® ÃÖ»ó´Ü¿¡ Çϳª ÀÌ»óÀÇ ÇÔ¼ö°¡ Á¸ÀçÇÏ´õ¶óµµ ÀÚµ¿-½ÇÇà ¼½¼Ç¿¡ ¿µÇâÀ» ¹ÌÄ¡Áö ¾Ê½À´Ï´Ù.

+ +

ÇÔ¼ö ¶óÀ̺귯¸®: Ç¥ÁØ ¶óÀ̺귯¸®¿Í »ç¿ëÀÚ ¶óÀ̺귯¸® [v1.0.47+]

+

+½ºÅ©¸³Æ®´Â ¿ÜºÎ ÆÄÀÏ¿¡ ÀÖ´Â ÇÔ¼ö¸¦ È£ÃâÇÒ ¼ö ÀÖ½À´Ï´Ù. #Include¸¦ »ç¿ëÇÒ ÇÊ¿ä°¡ ¾ø½À´Ï´Ù. ±×·¯·Á¸é ÇÔ¼ö¿Í °°Àº À̸§ÀÇ ÆÄÀÏÀÌ ´ÙÀ½ ¶óÀ̺귯¸® µð·ºÅ丮 Áß Çϳª¿¡ Á¸ÀçÇØ¾ß ÇÕ´Ï´Ù:

+
%A_ScriptDir%\Lib\  ; Áö¿ª ¶óÀ̺귯¸® - Çʼö AHK_L 42+.
+%A_MyDocuments%\AutoHotkey\Lib\  ; »ç¿ëÀÚ ¶óÀ̺귯¸®.
+path-to-the-currently-running-AutoHotkey.exe\Lib\  ; Ç¥ÁØ ¶óÀ̺귯¸®.
+

+¿¹¸¦ µé¾î, ½ºÅ©¸³Æ®°¡ Á¸ÀçÇÏÁö ¾Ê´Â ÇÔ¼ö MyFunc()¸¦ È£ÃâÇϸé, ÇÁ·Î±×·¥Àº »ç¿ëÀÚ ¶óÀ̺귯¸®¿¡¼­ "MyFunc.ahk"¶ó¸¥ À̸§ÀÇ ÆÄÀÏÀ» ã½À´Ï´Ù. ¹ß°ßÇÏÁö ¸øÇϸé, Ç¥ÁØ ¶óÀ̺귯¸®¿¡¼­ ã½À´Ï´Ù. ¿©ÀüÈ÷ ¹ß°ßÇÏÁö ¸øÇÏ¸é ±×¸®°í ÇÔ¼öÀÇ À̸§¿¡ ¹ØÁÙÀÌ Æ÷ÇԵǾî ÀÖ´Ù¸é (¿¹, MyPrefix_MyFunc), ÇÁ·Î±×·¥Àº µÎ ¶óÀ̺귯¸®¸¦ ¸ðµÎ µÚÁ® MyPrefix.ahk¶ó´Â À̸§ÀÇ ÆÄÀÏÀ» ã°í ÀÖ´Ù¸é ±×°ÍÀ» ÀûÀçÇÕ´Ï´Ù. ÀÌ·¸°Ô Çϸé MyPrefix.ahk¿¡ ÇÔ¼ö MyPrefix_MyFunc¸¦ ´ÙÀ½À» ¼öÀÖ°í À̸§ÀÌ MyPrefix_·Î ½ÃÀÛÇÏ´Â ±âŸ ÇÔ¼öµéÀ» ´ãÀ» ¼ö ÀÖ½À´Ï´Ù.

+

+[AHK_L 42+]: Áö¿ª ¶óÀ̺귯¸®°¡ Áö¿øµË´Ï´Ù. ¸ÕÀú Áö¿ª ¶óÀ̺귯¸®¸¦ °Ë»öÇÑ ´ÙÀ½¿¡ »ç¿ëÀÚ ¶óÀ̺귯¸®¿Í Ç¥ÁØ ¶óÀ̺귯¸®¸¦ Â÷·Ê·Î °Ë»öÇÕ´Ï´Ù.

+

+MyFunc()¿Í °°ÀÌ Á÷Á¢ È£Ãâ Çؾ߸¸ ¶óÀ̺귯¸®°¡ ÀÚµ¿-Æ÷ÇԵ˴ϴÙ. ÇÔ¼ö°¡ ¿¹¸¦ µé¾î ŸÀ̸ӳª ±¸ÀÌ À̺¥Æ® °°ÀÌ, µ¿Àû ¶Ç´Â °£Á¢ÀûÀ¸·Î È£ÃâµÉ ¶§¸¸, ¸í½ÃÀûÀ¸·Î ¶óÀ̺귯¸®¸¦ ½ºÅ©¸³Æ®¿¡ Æ÷ÇÔ½ÃÄÑ¾ß ÇÕ´Ï´Ù. ¿¹¸¦ µé¾î: #Include <MyFunc>

+

+¶óÀ̺귯¸® ÆÄÀÏÀº ÀϹÝÀûÀ¸·Î ±×ÀÇ ÆÄÀÏ À̸§À¸·Î ¿ÀÁ÷ ÇϳªÀÇ ÇÔ¼ö¸¸ ´ã°í ÀÖÁö¸¸, »çÀûÀ¸·Î ÀڽŸ¸ È£ÃâÇÒ ÇÔ¼ö³ª ¼­ºê·çƾÀ» ´ãÀ» ¼öµµ ÀÖ½À´Ï´Ù. ±×·¸Áö¸¸, ±×·± ÇÔ¼ö´Â À̸§ÀÌ ±¸º°µÇ¾î¾ß ÇÕ´Ï´Ù. ¿Ö³ÄÇÏ¸é ±×°ÍµéÀº Àü¿ª À̸§°ø°£ ¾È¿¡ ¿©ÀüÈ÷ Á¸ÀçÇÒ °ÍÀ̱⠶§¹®ÀÔ´Ï´Ù; Áï, ±×°ÍµéÀº ½ºÅ©¸³Æ® ¾îµð¿¡¼­³ª È£ÃâµÉ ¼ö ÀÖ½À´Ï´Ù.

+

+¶óÀ̺귯¸® ÆÄÀÏÀÌ #Include¸¦ »ç¿ëÇϸé, #Include¸¦ À§ÇÑ ÀÛ¾÷ µð·ºÅ丮´Â ±× ¶óÀ̺귯¸® ÆÄÀÏÀÇ µð·ºÅ丮ÀÔ´Ï´Ù. À̸¦ ÀÌ¿ëÇϸé ÇØ´ç ÇÔ¼ö¿Í °ü·Ã ÇÔ¼öµéÀÌ µé¾î ÀÖ´Â ´õ Å« ¶óÀ̺귯¸® ÆÄÀÏ·Î ¹æÇâÀüȯÀ» ÇÒ ¼ö ÀÖ½À´Ï´Ù.

+

+½ºÅ©¸³Æ® ÄÄÆÄÀÏ·¯ (ahk2exe)µµ ¶óÀ̺귯¸® ÇÔ¼ö¸¦ Áö¿øÇÕ´Ï´Ù. ±×·¸Áö¸¸, AutoHotkey.exe »çº»ÀÌ À§ÀÇ ÄÄÆÄÀÏ·¯ µð·ºÅ丮¿¡ Á¸ÀçÇØ¾ß ÇÕ´Ï´Ù (º¸Åë ±×·² °ÍÀÔ´Ï´Ù). + +AutoHotkey.exe°¡ ¾ø¾îµµ, ÄÄÆÄÀÏ·¯´Â ¿©ÀüÈ÷ ÀÛµ¿ÇÏÁö¸¸, ¶óÀ̺귯¸® ÇÔ¼ö´Â ÀÚµ¿À¸·Î Æ÷ÇÔµÇÁö ¾Ê½À´Ï´Ù.

+

+¶óÀ̺귯¸®·ÎºÎÅÍ Æ÷ÇÔµÈ ÇÔ¼öµéÀº ´Ù¸¥ ÇÔ¼ö¿Í ¶È°°ÀÌ ¼öÇàµË´Ï´Ù. ¿Ö³ÄÇÏ¸é ½ºÅ©¸³Æ®°¡ ½ÇÇàµÇ±â Àü¿¡ ¹Ì¸®-ÀûÀçµÇ±â ¶§¹®ÀÔ´Ï´Ù.

+ +

³»Àå ÇÔ¼ö

+

+³»Àå ÇÔ¼öÀÇ ¸Å°³º¯¼ö ¸®½ºÆ® ³¡¿¡ ¼±ÅÃÀûÀÎ ¸Å°³º¯¼ö´Â ¿ÏÀüÈ÷ »ý·«Çصµ ÁÁ½À´Ï´Ù. ¿¹¸¦ µé¾î, WinExist("Untitled - Notepad")´Â À¯È¿ÇÕ´Ï´Ù. ¿Ö³ÄÇÏ¸é ±×ÀÇ ´Ù¸¥ ¼¼ ¸Å°³º¯¼ö°¡ ºó °ÍÀ¸·Î °£ÁֵDZ⠶§¹®ÀÔ´Ï´Ù.

+

+³»Àå ÇÔ¼ö´Â ½ºÅ©¸³Æ®°¡ ÀÚ½ÅÀÇ ÇÔ¼ö¸¦ °°Àº À̸§À¸·Î Á¤ÀÇÇÏ¸é ¿À¹ö¶óÀ̵åµË´Ï´Ù. ¿¹¸¦ µé¾î, ½ºÅ©¸³Æ®´Â ÀڽŸ¸ÀÇ ¸ÂÃã WinExist() ÇÔ¼ö¸¦ °¡Áú ¼ö ÀÖ½À´Ï´Ù. Ç¥ÁØ ÇÔ¼ö ´ë½Å¿¡ ÀÌ ÇÔ¼ö°¡ È£ÃâµË´Ï´Ù. ±×·¸Áö¸¸, ±×·¸°Ô µÇ¸é ½ºÅ©¸³Æ®´Â ¿ø·¡ ÇÔ¼ö¸¦ È£ÃâÇÒ ¹æ¹ýÀÌ ¾ø¾îÁ® ¹ö¸³´Ï´Ù.

+

+DLL ÆÄÀÏ¿¡ °ÅÁÖÇÏ´Â ¿ÜºÎ ÇÔ¼ö´Â DllCall()À¸·Î È£ÃâÇÕ´Ï´Ù.

+ +

ÀÚÁÖ-»ç¿ëµÇ´Â ÇÔ¼ö

+

FileExist(FilePattern): FilePatternÀÌ Á¸ÀçÇÏÁö ¾ÊÀ¸¸é ºó °ªÀ» (ºó ¹®ÀÚ¿­) µ¹·ÁÁÝ´Ï´Ù (FilePatternÀº Àý´ë °æ·Î°¡ ÁöÁ¤µÇÁö ¾ÊÀ¸¸é A_WorkingDir¿¡ ÀÖ´Ù°í °£ÁÖÇÕ´Ï´Ù). ±×·¸Áö ¾ÊÀ¸¸é, ºÎÇÕÇϴ ù ÆÄÀÏÀ̳ª Æú´õÀÇ ¼Ó¼º ¹®ÀÚ¿­À» µ¹·Á ÁÝ´Ï´Ù ("RASHNDOCT"ÀÇ ÇÏÀ§ÁýÇÕ). (ÀÖ±â Èûµç °æ¿ìÀÌÁö¸¸) ÆÄÀÏ¿¡ ¾Æ¹« ¼Ó¼ºµµ ¾øÀ¸¸é, "X"°¡ ¹ÝȯµË´Ï´Ù. FilePattern´Â ÆÄÀÏÀ̳ª Æú´õÀÇ Á¤È®ÇÑ À̸§ÀÏ ¼ö ÀÖÁö¸¸, ¿ÍÀϵåÄ«µå(* ¶Ç´Â ?)¸¦ Æ÷ÇÔÇÒ ¼öµµ ÀÖ½À´Ï´Ù. ºó ¹®ÀÚ¿­Àº "false"¶ó°í °£ÁֵǹǷÎ, ÇÔ¼öÀÇ ¹Ýȯ °ªÀº ¾ðÁ¦³ª ¾î¸²-ºÒ¸®¾ð °ªÀ¸·Î »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î, ¼­¼ú¹® if FileExist("C:\My File.txt")´Â ÆÄÀÏÀÌ Á¸ÀçÇϸé ÂüÀÌµÇ°í ±×·¸Áö ¾ÊÀ¸¸é °ÅÁþÀÌ µË´Ï´Ù. ºñ½ÁÇÏ°Ô, ¼­¼ú¹® if InStr(FileExist("C:\My Folder"), "D")´Â ÆÄÀÏÀÌ Á¸ÀçÇÏ°í ±×¸®°í µð·ºÅäÀÌÀÏ °æ¿ì¿¡¸¸ ÂüÀÌ µË´Ï´Ù. ´ÙÀ½Àº »óÀÀÇÏ´Â ¸í·É¾îÀÔ´Ï´Ù: IfExist ±×¸®°í FileGetAttrib.

+

+GetKeyState(KeyName [, "P" or "T"]): GetKeyState ¸í·É¾î¿Í ´Ù¸£°Ô -- ´©¸£¸é D ±×¸®°í ¶¼¸é U¸¦ µ¹·ÁÁִµ¥ ºñÇØ -- ÀÌ ÇÔ¼ö´Â Å°°¡ ´­·Á ÀÖÀ¸¸é Âü(1) ¶¾ »óÅÂÀÌ¸é °ÅÁþ(0)À» µ¹·ÁÁÝ´Ï´Ù. KeyNameÀÌ À¯È¿ÇÏÁö ¾ÊÀ¸¸é, ºó ¹®ÀÚ¿­ÀÌ ¹ÝȯµË´Ï´Ù. ´Ù¸¥ ¹Ýȯ °ª°ú »ç¿ë¹ý¿¡ °üÇÑ Á¤º¸´Â GetKeyState¸¦ ÂüÁ¶ÇϽʽÿÀ.

+

+InStr(Haystack, Needle [, CaseSensitive = false, StartingPos = 1, Occurrence = 1]): Haystack ¹®ÀÚ¿­¿¡¼­ NeedleÀÌ ³ªÅ¸³­ À§Ä¡¸¦ µ¹·ÁÁÝ´Ï´Ù. StringGetPos¿Í ´Ù¸£°Ô, À§Ä¡ 1ÀÌ Ã¹ ¹ø° ¹®ÀÚÀÔ´Ï´Ù; ¿Ö³ÄÇϸé 0Àº "false"¿Í µ¿ÀǾîÀ̱⠶§¹®¿¡, Á÷°üÀûÀ¸·Î "¹ß°ßÇÏÁö ¸øÇÔ"ÀÇ ¶æÀÌ µË´Ï´Ù. ¸Å°³º¯¼ö CaseSensitive¸¦ »ý·«Çϰųª °ÅÁþÀ̸é, ´ë¼Ò¹®ÀÚ¸¦ ±¸ºÐÇÏÁö ¾Ê°í °Ë»öÇÕ´Ï´Ù (´ë¼Ò¹®ÀÚÀÇ ±¸º°Àº StringCaseSense¿¡ µû¸¨´Ï´Ù); ±×·¸Áö ¾ÊÀ¸¸é, ´ë¼Ò¹®ÀÚ°¡ Á¤È®ÇÏ°Ô ÀÏÄ¡ÇØ¾ß ÇÕ´Ï´Ù. StartingPos¸¦ »ý·«Çϸé, 1ÀÌ ±âº»°ªÀÌ µË´Ï´Ù + +(HaystackÀÇ ½ÃÀÛ). + +±×·¸Áö ¾Ê°í, 2¸¦ ÁöÁ¤Çϸé HaystackÀÇ µÎ ¹ø° ¹®ÀÚºÎÅÍ ½ÃÀÛÇÏ°í, 3ÀÌ¸é ¼¼ ¹ø° ¹®ÀÚºÎÅÍ µîµî ½ÃÀÛÇÕ´Ï´Ù. +StartingPos°¡ HaystackÀÇ ±æÀ̸¦ ³Ñ¾î¼­¸é, 0ÀÌ ¹ÝȯµË´Ï´Ù. StartingPos°¡ 0À̰ųª À½¼öÀ̸é, ³¡¿¡¼­ºÎÅÍ ÇØ´ç ¿ÀÇÁ¼Â¿¡¼­ ½ÃÀÛÇÏ¿© ¿ª¹æÇâÀ¸·Î (¿À¸¥ÂÊ¿¡¼­ ¿ÞÂÊÀ¸·Î) °Ë»öÀÌ ¼öÇàµË´Ï´Ù. StartingPosÀÇ °ª¿¡ °ü°è ¾øÀÌ, ¹Ýȯ À§Ä¡´Â ¾ðÁ¦³ª HaystackÀÇ Ã¹ ¹®ÀÚ¿¡ »ó´ëÀûÀÔ´Ï´Ù. ¿¹¸¦ µé¾î, "123abc789"¿¡¼­ "abc" ÀÇ À§Ä¡´Â ¾ðÁ¦³ª 4ÀÔ´Ï´Ù. Occurrence¿¡ 2À» ÁöÁ¤ÇÏ¸é µÎ ¹ø° ºÎÇÕÇÑ À§Ä¡¸¦ µ¹·ÁÁÖ°í, 3Àº ¼¼ ¹ø° ºÎÇÕ µîµîÀÇ À§Ä¡¸¦ µ¹·ÁÁÝ´Ï´Ù. +°ü·Ã Ç׸ñ: RegExMatch(), IfInString, ±×¸®°í StringGetPos.

+ +

+RegExMatch(Haystack, NeedleRegEx [, UnquotedOutputVar = "", StartingPos = 1]): ¹®ÀÚ¿­ ¾È¿¡¼­ ÆÐÅÏ (Á¤±Ô Ç¥Çö½Ä)¿¡ ºÎÇÕÇÏ´Â °ÍµéÀ» ã½À´Ï´Ù. ÀÚ¼¼ÇÑ °ÍÀº RegExMatch()¸¦ ÂüÁ¶ÇϽʽÿÀ.

+

+RegExReplace(Haystack, NeedleRegEx [, Replacement = "", OutputVarCount = "", Limit = -1, StartingPos = 1]): ¹®ÀÚ¿­ ¾È¿¡¼­ ÆÐÅÏ (Á¤±Ô Ç¥Çö½Ä)¿¡ ºÎÇÕÇÏ´Â °ÍµéÀ» ±³Ã¼ÇÕ´Ï´Ù. ÀÚ¼¼ÇÑ °ÍÀº RegExReplace()¸¦ ÂüÁ¶ÇÕ´Ï´Ù.

+

+SubStr(String, StartingPos [, Length]) [v1.0.46+]: ºÎºÐ¹®ÀÚ¿­À» StringÀ¸·ÎºÎÅÍ º¹»çÇÕ´Ï´Ù. StartingPos¿¡¼­ ½ÃÀÛÇؼ­ ¿À¸¥ÂÊÀ¸·Î ÁøÇàÇؼ­ ÃÖ´ë Length°³ÀÇ ¹®ÀÚ¸¦ Æ÷ÇÔÇÕ´Ï´Ù (Length¸¦ »ý·«Çϸé, ±âº» °ªÀº "¸ðµç ¹®ÀÚ"ÀÔ´Ï´Ù). + +StartingPos¿¡ 1À» ÁöÁ¤Çϸé ù ¹ø° ¹®ÀÚ¿¡¼­, 2À» ÁöÁ¤Çϸé 2¹ø° ¹®ÀÚºÎÅÍ ½ÃÀÛÇÕ´Ï´Ù. µîµî. ( StartingPos°¡ StringÀÇ ±æÀ̸¦ ³Ñ¾î¼­¸é, ºó ¹®ÀÚ¿­ÀÌ ¹ÝȯµË´Ï´Ù). StartingPos°¡ 1º¸´Ù ÀÛÀ¸¸é, ¹®ÀÚ¿­ ³¡À¸·ÎºÎÅÍÀÇ ¿ÀÇÁ¼ÂÀ¸·Î °£Áֵ˴ϴÙ. ¿¹¸¦ µé¾î, 0Àº °¡Àå ¸¶Áö¸· ¹®ÀÚ¸¦ ÃßÃâÇÏ°í, -1ÀÌ¸é ±× ¹®ÀÚ¿­ÀÇ ¸¶Áö¸· ¹®ÀڷκÎÅÍ 1¸¸Å­ ¿ÞÂÊÀ¸·Î ¶³¾îÁ® ÀÖ´Ù°í °£Áֵ˴ϴÙ. (±×·¯³ª StartingPos°¡ ¹®ÀÚ¿­ÀÇ ¿ÞÂÊ ³¡À» ³Ñ¾î¼­ ½ÃµµÇϸé, ù ¹®ÀÚºÎÅÍ ÃßÃâÀ» ½ÃÀÛÇÕ´Ï´Ù). Length´Â ¿­¶÷ÇÒ ÃÖ´ë ¹®ÀÚ °³¼öÀÔ´Ï´Ù (¹®ÀÚ¿­ÀÇ ³ª¸ÓÁö ºÎºÐÀÌ ³Ê¹« ªÀ¸¸é ÃÖ´ë °³¼öº¸´Ù Àû°Ô ¿­¶÷µË´Ï´Ù). +À½ÀÇ ±æÀÌ(Length)¸¦ ÁöÁ¤ÇÏ¸é ¹ÝȯµÈ ¹®ÀÚ¿­ÀÇ ³¡À¸·ÎºÎÅÍ ¹®ÀÚ¸¦ ±× °³¼ö ¸¸Å­ »ý·«ÇÕ´Ï´Ù (¸ðµç ¶Ç´Â ³Ê¹« ¸¹Àº ¹®ÀÚ¸¦ »ý·«ÇÏ¸é ºó ¹®ÀÚ¿­ÀÌ ¹ÝȯµË´Ï´Ù). °ü·Ã Ç׸ñ: RegExMatch(), StringMid, StringLeft/Right, StringTrimLeft/Right.

+

+StrLen(String): ¹®ÀÚ¿­ StringÀÇ ±æÀ̸¦ µ¹·ÁÁÝ´Ï´Ù. ÀÚ¼¼ÇÑ °ÍÀº StrLen()À» ÂüÁ¶ÇÕ´Ï´Ù.

+

+StrSplit(String [, Delimiters, OmitChars]) [v1.1.13+]: ÁöÁ¤µÈ °¡¸§ÀÚ¸¦ »ç¿ëÇÏ¿© ¹®ÀÚ¿­À» ºÎºÐ¹®ÀÚ¿­ ¹è¿­·Î ºÐÇÒÇÕ´Ï´Ù. ÀÚ¼¼ÇÑ °ÍÀº StrSplit()À» ÂüÁ¶ÇÕ´Ï´Ù.

+

+WinActive([WinTitle, WinText, ExcludeTitle, ExcludeText]): ÁöÁ¤µÈ ±âÁØ¿¡ ºÎÇÕÇÏ´Â È°¼º âÀÇ Unique ID (HWND)¸¦ µ¹·ÁÁÝ´Ï´Ù. ÀÚ¼¼ÇÑ °ÍÀº WinActive()¸¦ ÂüÁ¶ÇϽʽÿÀ.

+

+WinExist([WinTitle, WinText, ExcludeTitle, ExcludeText]): ù ¹ø°·Î ºÎÇÕÇϴ âÀÇ Unique ID (HWND)¸¦ µ¹·ÁÁÝ´Ï´Ù. ÀÚ¼¼ÇÑ °ÍÀº WinExist()¸¦ ÂüÁ¶ÇϽʽÿÀ.

+ +

±âŸ ÇÔ¼ö

+

Asc(String): String¿¡¼­ ù ¹ÙÀÌÆ® ¶Ç´Â UTF-16 ÄÚµå À¯´ÖÀÇ ¼ýÄ¡ °ªÀ» µ¹·ÁÁÝ´Ï´Ù. ¶Ç´Â StringÀÌ ºñ¾î ÀÖÀ¸¸é 0À» µ¹·ÁÁÝ´Ï´Ù. ¹Ýȯ °ªÀº ¹üÀ§°¡ 0ºÎÅÍ 255±îÁöÀÔ´Ï´Ù (ANSI) ¶Ç´Â 0ºÎÅÍ 0xFFFF±îÁöÀÔ´Ï´Ù (Unicode). ÀÚ¼¼ÇÑ °ÍÀº Unicode vs ANSI¸¦ ÂüÁ¶ÇÕ´Ï´Ù. À¯´ÏÄÚµå º¸Ãæ ¹®ÀÚ¸¦ Çã¿ëÇÏ·Á¸é, ´ë½Å¿¡ Ord(String)¸¦ »ç¿ëÇϽʽÿÀ.

+

Chr(Number): Number°¡ ³ªÅ¸³»´Â ¹®ÀÚ Äڵ忡 »óÀÀÇÏ´Â ¹®ÀÚ¸¦ µ¹·ÁÁÝ´Ï´Ù (º¸Åë ¹®ÀÚ Çϳª). 127º¸´Ù Å« ¹®ÀÚ ÄÚµåÀÇ Àǹ̴ »ç¿ë ÁßÀÎ ¹®ÀÚ¿­ ÀÎÄÚµù¿¡ ´Þ·Á ÀÖ½À´Ï´Ù. ¹®ÀÚ ÀÎÄÚµùÀº ÀÌÁ¦ »ç¿ëÁßÀÎ ½ÇÇà ÆÄÀÏÀÌ Unicode ¶Ç´Â ANSIÀΰ¡¿¡ µû¶ó ´Þ¶óÁý´Ï´Ù. À¯´ÏÄÚ°¡ Áö¿øµÇ¸é, Number´Â 0ºÎÅÍ 0x10FFFF »çÀÌÀÇ À¯´ÏÄÚµå ¹®ÀÚ ÄÚµåÀÔ´Ï´Ù ([v1.1.21]ÀÌÀüÀ̶ó¸é 0xFFFF); ±×·¸Áö ¾Ê°í ANSI ¹®ÀÚ ÄÚµå´Â ¹üÀ§°¡ 0ºÎÅÍ 255 »çÀÌÀÔ´Ï´Ù. Number°¡ À¯È¿ÇÑ ¹®ÀÚ ÄÚµå ¹üÀ§¿¡ ÀÖÁö ¾ÊÀ¸¸é, ºó ¹®ÀÚ¿­ÀÌ ¹ÝȯµË´Ï´Ù. ÈçÇÑ ¹®ÀÚ ÄÚµå·Î´Â 9 (ÅÇ), 10 (¶óÀÎÇǵå), 13 (ij¸®Áö ¸®ÅÏ), 32 (½ºÆäÀ̽º), 48-57 (¼ýÀÚ 0-9), 65-90 (´ë¹®ÀÚ A-Z), ±×¸®°í 97-122 (¼Ò¹®ÀÚ a-z)°¡ ÀÖ½À´Ï´Ù.

+

+DllCall(): ¿¹¸¦ µé¾î Ç¥ÁØ À©µµ¿ìÁî API ÇÔ¼ö °°ÀÌ, DLL ¾È ÇÔ¼ö¸¦ È£ÃâÇÕ´Ï´Ù. ÀÚ¼¼ÇÑ °ÍÀº DllCall()À» ÂüÁ¶ÇÕ´Ï´Ù.

+

+FileOpen(): °´Ã¼-ÁöÇâÀû ÆÄÀÏ I/O¸¦ Á¦°øÇÕ´Ï´Ù. ÀÚ¼¼ÇÑ °ÍÀº FileOpen()¸¦ ÂüÁ¶ÇÕ´Ï´Ù.

+

+Func(FunctionName) [v1.1.00+]: + +(¿¹¸¦ µé¾î #Include·Î Æ÷ÇÔÇϰųª ¶Ç´Â ¶óÀ̺귯¸® ÇÔ¼ö¸¦ °íÁ¤ È£ÃâÇÏ¿©) FunctionNameÀÌ ¸í½ÃÀûÀ¸·Î ½ºÅ©¸³Æ®¿¡ Á¸ÀçÇÏÁö ¾ÊÀ¸¸é, Func()´Â 0À» µ¹·ÁÁÝ´Ï´Ù. ±×·¸Áö ¾ÊÀ¸¸é ±× ÇÔ¼ö¸¦ °¡¸®Å°´Â ÂüÁ¶ ÁÖ¼Ò¸¦ ¹ÝȯÇÕ´Ï´Ù. + ÇÔ¼ö¸¦ È£ÃâÇϰųª ¸Å°³º¯¼öÀÇ ÃÖ´ë ÃÖ¼Ò °¹¼ö °°Àº Á¤º¸¸¦ ¿­¶÷ÇÏ´Â µ¥ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù.

+

GetKeyName(Key), GetKeyVK(Key), GetKeySC(Key) [v1.1.01+]: ÇÑ Å°ÀÇ ½ºÄµ Äڵ峪 °¡»ó ÄÚµå ¶Ç´Â À̸§/ÅؽºÆ®¸¦ ¿­¶÷ÇÕ´Ï´Ù. Key´Â "vkA2"³ª "sc01D"¿Í °°ÀÌ VK Äڵ峪 SC ÄÚµåÀÏ ¼ö ÀÖ½À´Ï´Ù. Å° À̸§À̰ųª ¾Æ´Ï¸é µÑÀ» Á¶ÇÕÇÑ °ÍÀÏ ¼ö ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î GetKeyName("vk1B")¿Í GetKeyName("Esc") ¸ðµÎ "Escape"¸¦ µ¹·ÁÁÖ´Â ¹Ý¸é¿¡, GetKeyVK("Esc")´Â 27À» µ¹·ÁÁÝ´Ï´Ù. VK ÄÚµå¿Í SC ÄÚµå´Â ½ÊÀ°Áø¼öÀÓ¿¡ À¯ÀÇÇϽʽÿÀ. ½ÊÁø¼ö¸¦ ÀûÀýÇÑ Æ÷¸ËÀ¸·Î º¯È¯ÇÏ·Á¸é, Format("vk{:x}", vk_code)À̳ª Format("sc{:x}", sc_code)¸¦ »ç¿ëÇÕ´Ï´Ù.

+

+IsByRef(Var) [v1.1.01+]: Var°¡ ByRef ¸Å°³º¯¼öÀÌ°í È£ÃâÀÚ°¡ º¯¼ö¸¦ °ø±ÞÇßÀ¸¸é 1À» µ¹·ÁÁÝ´Ï´Ù; ¶Ç´Â Var°¡ ´Ù¸¥ Á¾·ùÀÇ º¯¼öÀ̸é 0À» µ¹·ÁÁÝ´Ï´Ù.

+

+IsFunc(FunctionName) [v1.0.48+]: (¿¹¸¦ µé¾î #Include·Î Æ÷ÇÔÇϰųª ¶Ç´Â ¶óÀ̺귯¸® ÇÔ¼ö¸¦ °íÁ¤ È£ÃâÇÏ¿©) FunctionNameÀÌ ½ºÅ©¸³Æ®¿¡ ¸í½ÃÀûÀ¸·Î Á¸ÀçÇÏÁö ¾ÊÀ¸¸é, IsFunc()´Â 0À» µ¹·ÁÁÝ´Ï´Ù. ±×·¸Áö ¾ÊÀ¸¸é ¸Å°³º¯¼öÀÇ ÃÖ¼Ò °³¼ö¿¡ 1À» ´õÇØ µ¹·ÁÁÝ´Ï´Ù +(¿¹, ¸Å°³º¯¼ö¸¦ ¿ä±¸ÇÏÁö ¾Ê´Â ÇÔ¼ö´Â 1, ¸Å°³º¯¼ö¸¦ 1 ¿À±¸ÇÏ´Â ÇÔ¼ö´Â 2, µîµî). + +¿¹¸¦ µé¾î, if IsFunc("MyFunc")¿Í if IsFunc(VarContainingFunctionName)´Â ÇÔ¼ö°¡ Á¸ÀçÇϸé ÂüÀÔ´Ï´Ù. ±×·¸Áö ¾ÊÀ¸¸é °ÅÁþÀÔ´Ï´Ù. v1.1.00+¿¡¼­, FunctionName´Â À̸§ÀÌ ¾Æ´Ï¶ó ÇÔ¼ö ÂüÁ¶ÀÏ ¼ö ÀÖ½À´Ï´Ù. ´ÙÀ½ ÂüÁ¶: µ¿ÀûÀÎ ÇÔ¼ö-È£Ãâ, A_ThisFunc

+

+IsLabel(LabelName): LabelNameÀÌ ½ºÅ©¸³Æ®¿¡ ¼­ºê·çƾ, ÇÖÅ°, ¶Ç´Â ÇÖ½ºÆ®¸µÀ¸·Î Á¸ÀçÇϸé 0ÀÌ ¾Æ´Ñ °ªÀ» µ¹·ÁÁÝ´Ï´Ù (LabelName µÚ¿¡ ½ÖÁ¡Àº Æ÷ÇÔÇÏÁö ¾Ê½À´Ï´Ù). ¿¹¸¦ µé¾î, ¼­¼ú¹® if IsLabel(VarContainingLabelName)´Â ¶óº§ÀÌ Á¸ÀçÇϸé ÂüÀÔ´Ï´Ù. ±×·¸Áö ¾ÊÀ¸¸é °ÅÁþÀÔ´Ï´Ù. ¿¹¸¦ µé¾î Gosub, ÇÖÅ°, ¸Þ´º, ±×¸®°í Gui¿Í °°ÀÌ ¸í·É¾î¿¡ µ¿Àû ¶óº§À» ÁöÁ¤ÇÒ ¶§ ½ÇÇà½Ã°£ ¿¡·¯¸¦ ÇÇÇÏ´Â µ¥ À¯¿ëÇÕ´Ï´Ù. ´ÙÀ½µµ ÂüÁ¶ÇϽʽÿÀ: ¶óº§.

+

+IsObject() [AHK_L 31+]: °ªÀÌ °´Ã¼ÀÎÁö °áÁ¤ÇÕ´Ï´Ù. ´ÙÀ½ ÂüÁ¶: Objects.

+

+ListView ±×¸®°í TreeView functions: ÀÚ¼¼ÇÑ °ÍÀº ListView ÆäÀÌÁö¿Í TreeView ÆäÀÌÁö¸¦ ÂüÁ¶ÇϽʽÿÀ.

+

NumGet(VarOrAddress [, Offset = 0][, Type = "UPtr"]): ÁöÁ¤µÈ ÁÖ¼Ò+¿ÀÇÁ¼Â¿¡ ÀúÀåµÈ ÀÌÁø ¼ýÀÚ¸¦ ¿­¶÷ÇÕ´Ï´Ù. ÀÚ¼¼ÇÑ °ÍÀº NumGetÀ» ÂüÁ¶ÇÕ´Ï´Ù.

+

NumPut(Number, VarOrAddress [, Offset = 0][, Type = "UPtr"]): ÁöÁ¤µÈ ÁÖ¼Ò-¿ÀÇÁ¼Â¿¡ ÀÌÁø Çü½ÄÀ¸·Î ¼ýÀÚ¸¦ ÀúÀåÇÕ´Ï´Ù. ÀÚ¼¼ÇÑ °ÍÀº NumPutÀ» ÂüÁ¶ÇÕ´Ï´Ù.

+

+OnMessage(MsgNumber [, "FunctionName"]): ¸Þ½ÃÁö/À̺¥Æ®¸¦ °üÁ¦ÇÕ´Ï´Ù. ÀÚ¼¼ÇÑ °ÍÀº OnMessage()¸¦ ÂüÁ¶ÇÕ´Ï´Ù.

+

+Ord(String) [v1.1.21+]: String¿¡¼­ ù ¹ø° ¹®ÀÚÀÇ ¼­¼ö °ªÀ» µ¹·ÁÁÝ´Ï´Ù (¼ýÄ¡ ¹®ÀÚ ÄÚµå). StringÀÌ À¯´ÏÄÚµå º¸Ãæ ¹®ÀÚ·Î ½ÃÀÛÇϸé, Ord(String)Àº ±×¿¡ »óÀÀÇÏ´Â À¯´ÏÄÚµå ¹®ÀÚ Äڵ带 µ¹·ÁÁÝ´Ï´Ù (0x10000ºÎÅÍ 0x10FFFF »çÀÌÀÇ °ª). ±×·¸Áö ¾ÊÀ¸¸é Asc(String)°ú °°Àº °ªÀ» µ¹·ÁÁÝ´Ï´Ù.

+

+StrGet(Address [, Length] [, Encoding = None ] ) [AHK_L 46+]: ¸Þ¸ð¸® ÁּҷκÎÅÍ ¹®ÀÚ¿­À» º¹»çÇÕ´Ï´Ù. ¼±ÅÃÀûÀ¸·Î ÄÚµå ÆäÀÌÁö¿¡ µû¶ó º¯È¯ÇÕ´Ï´Ù. ÀÚ¼¼ÇÑ °ÍÀº StrGet()À» ÂüÁ¶ÇÕ´Ï´Ù.

+

+StrPut(String, Address [, Length] [, Encoding = None ] ) [AHK_L 46+]: ¸Þ¸ð¸® ÁÖ¼Ò¿¡ ¹®ÀÚ¿­À» º¹»çÇÕ´Ï´Ù. ¼±ÅÃÀûÀ¸·Î ÄÚµå ÆäÀÌÁö¿¡ µû¶ó º¯È¯ÇÕ´Ï´Ù. ÀÚ¼¼ÇÑ °ÍÀº StrPut()À» ÂüÁ¶ÇÕ´Ï´Ù.

+

+RegisterCallback(): ¸Ó½Å-ÄÚµå ÁÖ¼Ò¸¦ »ý¼ºÇÕ´Ï´Ù. È£ÃâµÉ ¶§ ÀÌ ÁÖ¼Ò¸¦ ÀÌ¿ëÇÏ¿© ½ºÅ©¸³Æ® ¾ÈÀÇ ÇÔ¼ö·Î È£ÃâÀ» ¹æÇâÀüȯ ÇÕ´Ï´Ù. ÀÚ¼¼ÇÑ °ÍÀº RegisterCallback()À» ÂüÁ¶ÇÕ´Ï´Ù.

+

+Trim() [AHK_L 31+]: ¹®ÀÚ¿­ÀÇ ¾Õ/µÚ¿¡¼­ ¹®ÀÚ¸¦ °È¾î³À´Ï´Ù. ÀÚ¼¼ÇÑ °ÍÀº Trim()À» ÂüÁ¶ÇÕ´Ï´Ù.

+

+VarSetCapacity(UnquotedVarName [, RequestedCapacity, FillByte]): º¯¼öÀÇ °¡¿ë ´É·ÂÀ» È®´ëÇϰųª ±×ÀÇ ¸Þ¸ð¸®¸¦ ÇØÁ¦ÇÕ´Ï´Ù. ÀÚ¼¼ÇÑ °ÍÀº VarSetCapacity()¸¦ ÂüÁ¶ÇÕ´Ï´Ù.

+ +

ÀÏ¹Ý ¼öÇÐ

+

+ÁÖÀÇ: ¼öÇÐ ÇÔ¼ö´Â µé¾î¿À´Â ¸Å°³º¯¼ö°¡ ¼ýÀÚ°¡ ¾Æ´Ï¸é ÀϹÝÀûÀ¸·Î ºó ¹®ÀÚ¿­À» µ¹·ÁÁÝ´Ï´Ù.

+

+Abs(Number): NumberÀÇ Àý´ë°ªÀ» µ¹·ÁÁÝ´Ï´Ù. ¹Ýȯ°ªÀÇ À¯ÇüÀº Number¿Í °°½À´Ï´Ù (Á¤¼ö¸é Á¤¼ö, ºÎµ¿ ¼Ò¼öÁ¡ ¼öÀÌ¸é ºÎµ¿ ¼Ò¼öÁ¡ ¼ö).

+

+Ceil(Number): Number¸¦ °¡Àå °¡±î¿î Á¤¼ö·Î ¿Ã¸²ÇØ µ¹·ÁÁÝ´Ï´Ù (.00 ²¿¸® ¾øÀ½). ¿¹¸¦ µé¾î, Ceil(1.2)´Â 2ÀÌ°í Ceil(-1.2)´Â -1ÀÔ´Ï´Ù.

+

+Exp(N): e (´ë·« 2.71828182845905)¸¦ N½ÂÇÏ¿© µ¹·ÁÁÝ´Ï´Ù. NÀº À½¼öÀÏ ¼ö ÀÖ°í ¼Ò¼öÁ¡ÀÌ Æ÷Ç﵃ ¼ö ÀÖ½À´Ï´Ù. e°¡ ¾Æ´Ñ ´Ù¸¥ ¼ýÀÚ¸¦ Á¦°öÇÏ·Á¸é ** ¿¬»êÀÚ¸¦ »ç¿ëÇϽʽÿÀ.

+

+Floor(Number): Number¸¦ °¡Àå °¡±î¿î Á¤¼ö·Î ³»¸²ÇØ µ¹·ÁÁÝ´Ï´Ù(.00 ²¿¸® ¾øÀ½). ¿¹¸¦ µé¾î, Floor(1.2)´Â 1ÀÌ°í Floor(-1.2)´Â -2ÀÔ´Ï´Ù.

+

+Log(Number): NumberÀÇ »ó¿ë·Î±×¸¦ µ¹·ÁÁÝ´Ï´Ù (¹Ø¼ö 10). °á°ú´Â ºÎµ¿ ¼Ò¼öÁ¡ ¼ö·Î Æ÷¸ËµË´Ï´Ù. Number°¡ À½¼öÀ̸é, ºó ¹®ÀÚ¿­ÀÌ ¹ÝȯµË´Ï´Ù.

+

+Ln(Number): NumberÀÇ ÀÚ¿¬·Î±×¸¦ ¹ÝȯÇÕ´Ï´Ù (¹Ø¼ö e). °á°ú´Â ºÎµ¿ ¼Ò¼öÁ¡ ¼ö·Î Æ÷¸ËµË´Ï´Ù. Number°¡ À½¼öÀ̸é, ºó ¹®ÀÚ¿­ÀÌ ¹ÝȯµË´Ï´Ù.

+

+Mod(Dividend, Divisor): ³ª¸ÓÁö ¿¬»ê(Modulo)ÀÔ´Ï´Ù. ÇÇÁ¬¼ö¸¦ Á¬¼ö·Î ³ª´« ³ª¸ÓÁö¸¦ µ¹·ÁÁÝ´Ï´Ù. °á°úÀÇ ºÎÈ£´Â ¾ðÁ¦³ª ù ¸Å°³º¯¼öÀÇ ºÎÈ£¿Í °°½À´Ï´Ù. ¿¹¸¦ µé¾î, mod(5, 3)°ú mod(5, -3) ¸ðµÎ 2¸¦ »êÃâÇÏÁö¸¸, mod(-5, 3)°ú mod(-5, -3)´Â -2¸¦ »êÃâÇÕ´Ï´Ù. µÎ ÀÔ·Â Áß Çϳª¶óµµ ºÎµ¿ ¼Ò¼öÁ¡ ¼öÀ̸é, ±× °á°úµµ ºÎµ¿ ¼Ò¼öÁ¡ ¼öÀÔ´Ï´Ù. ¿¹¸¦ µé¾î, mod(5.0, 3)Àº 2.0ÀÌ°í mod(5, 3.5)Àº 1.5ÀÔ´Ï´Ù. µÎ ¹ø° ¸Å°³º¯¼ö°¡ 0À̸é, ÇÔ¼ö´Â ºó °á°ú (ºó ¹®ÀÚ¿­)À» µ¹·ÁÁÝ´Ï´Ù.

+

+Round(Number [, N]): NÀ» »ý·«Çϰųª, 0À̸é, Number´Â °¡Àå °¡±î¿î Á¤¼ö·Î ¹Ý¿Ã¸²µË´Ï´Ù. NÀÌ ¾ç¼öÀ̸é, Number ´Â N ½ÊÁø ÀÚ¸®¿¡¼­ ¹Ý¿Ã¸²µË´Ï´Ù. NÀÌ À½¼öÀ̸é, Number´Â ½ÊÁø ¼Ò¼öÁ¡ÀÇ ¿ÞÂÊÀ¸·Î N ÀÚ¸®¿¡¼­ ¹Ý¿Ã¸²µË´Ï´Ù. ¿¹¸¦ µé¾î, Round(345, -1)´Â 350ÀÌ°í Round(345, -2)´Â 300 ÀÔ´Ï´Ù. Transform Round¿Í ´Ù¸£°Ô , 1 º¸´Ù À۰ųª NÀ» »ý·«ÇÏ¸é ±× °á°ú´Â .000 ²¿¸®°¡ ¾ø½À´Ï´Ù. v1.0.44.01+¿¡¼­, NÀÇ °ªÀÌ 0º¸´Ù Å©¸é SetFormat¿¡ ÀÇÁ¸ÇÏÁö ¾Ê°í Á¤È®ÇÏ°Ô N ÀÚ¸®ÀÇ ½ÊÁø¼ö¸¦ º¸¿©ÁÝ´Ï´Ù. À̸¦ ÇÇÇÏ·Á¸é, Round()ÀÇ ¹Ýȯ °ª¿¡ ´Ù¸¥ ¼öÇÐ ¿¬»êÀ» ¼öÇàÇϽʽÿÀ; ¿¹¸¦ µé¾î: Round(3.333, 1)+0.

+

+Sqrt(Number): NumberÀÇ Æò¹æ±ÙÀ» µ¹·ÁÁÝ´Ï´Ù. ±× °á°ú´Â ºÎµ¿ ¼Ò¼öÁ¡ ¼ö·Î Æ÷¸ËµË´Ï´Ù. Number°¡ À½¼öÀ̸é, ºó ¹®ÀÚ¿­À» µ¹·ÁÁÝ´Ï´Ù.

+ +

»ï°¢ÇÔ¼ö

+

+Sin(Number) | Cos(Number) | Tan(Number): NumberÀÇ »çÀÎ|ÄÚ»çÀÎ|źÁ¨Æ® »ï°¢ÇÔ¼ö¸¦ µ¹·ÁÁÝ´Ï´Ù. Number´Â ¶óµð¾ÈÀ¸·Î Ç¥ÇöÇØ¾ß ÇÕ´Ï´Ù.

+

+ASin(Number): ¶óµð¾È ´ÜÀ§·Î ¾ÆÅ©»çÀÎÀ» µ¹·ÁÁÝ´Ï´Ù (Number´Â ±×ÀÇ »çÀΰªÀÔ´Ï´Ù) + +Number°¡ -1 º¸´Ù À۰ųª 1 º¸´Ù Å©¸é, ºó °á°ú (ºó ¹®ÀÚ¿­)À» µ¹·ÁÁÝ´Ï´Ù.

+

+ACos(Number): ¶óµð¾È ´ÜÀ§·Î ¾ÆÅ©ÄÚ»çÀÎÀ» ¿Ã·ÁÁÝ´Ï´Ù ( Number´Â ±×ÀÇ ÄÚ»çÀÎ °ªÀÔ´Ï´Ù). +Number°¡ -1º¸´Ù À۰ųª 1º¸´Ù Å©¸é, ºó °á°ú (ºó ¹®ÀÚ¿­)À» »êÃâÇÕ´Ï´Ù.

+

+ATan(Number): ¶óµð¾È ´ÜÀ§·Î ¾ÆũźÁ¨Æ®¸¦ µ¹·ÁÁÝ´Ï´Ù (Number´Â ±×ÀÇ ÅºÁ¨Æ® °ªÀÔ´Ï´Ù).

+

ÁÖÀÇ: ¶óµð¾ÈÀ» µð±×¸®·Î º¯È¯ÇÏ·Á¸é, 180/pi (´ë·« 57.29578)¸¦ °öÇÕ´Ï´Ù. µð±×¸®¸¦ ¶óµð¾ÈÀ¸·Î º¯È¯ÇÏ·Á¸é pi/180 (´ë·« 0.01745329252)¸¦ °öÇÕ´Ï´Ù. piÀÇ °ª (´ë·« 3.141592653589793)Àº 1 ¾ÆũźÁ¨Æ®ÀÇ 4 ¹èÀÔ´Ï´Ù.

+ +

±âŸ ÇÔ¼ö

+

Æú¸®¿¡Å׳×(Polyethene)ÀÇ ¸í·É¾î ÇÔ¼ö: OutputVar°¡ ÀÖ´Â AutoHotkey ¸í·É¾î¿¡ È£Ãâ °¡´ÉÇÑ ÇÔ¼ö¸¦ Á¦°øÇÕ´Ï´Ù. ÀÌ ¶óÀ̺귯¸®´Â #Include¸¦ ÅëÇÏ¿© ½ºÅ©¸³Æ®¿¡ Æ÷ÇÔÇÒ ¼ö ÀÖ½À´Ï´Ù.

+ + diff --git a/src/docs/HotkeyFeatures.htm b/src/docs/HotkeyFeatures.htm new file mode 100644 index 0000000..d8f7a41 --- /dev/null +++ b/src/docs/HotkeyFeatures.htm @@ -0,0 +1,60 @@ + + +Advanced Hotkey Features - Mouse and Keyboard Shortcuts + + + + + + + +

°í±Þ ÇÖÅ° Ư¡

+ +

Å°º¸µå¿¡¼­ ¼Õ½±°Ô ´êÀ» ¼ö ÀÖ´Â Å° Àε¥µµ ¾î¶² Å°´Â °ÅÀÇ »ç¿ëµÇÁö ¾Ê½À´Ï´Ù. ÀÌ·± Å°µé¿¡ À¯¿ëÇÑ ÀϵéÀ» ½Ãŵ½Ã´Ù! ¿¹¸¦ µé¾î, ¿À¸¥ÂÊ ALT Å°¸¦ °ÅÀÇ »ç¿ëÇÏÁö ¾Ê½À´Ï´Ù. ¿©·¯ºÐÀÌ ÀÚÁÖ ÇÏ´Â ÀÏÀ» ±× Å°¿¡ ½ÃÅ°½Ê½Ã¿À:

+
RAlt::
+MsgBox ¿À¸¥ÂÊ ALT Å°¸¦ ´©¸£¼Ì½À´Ï´Ù.
+return
+

+½ÉÁö¾î ¿À¸¥ÂÊ ¾ËÆ® Å°ÀÇ °íÀ¯ ±â´ÉÀ» ÀÒÁö ¾Ê°í¼­µµ À§ÀÇ ÀÏÀ» ÇÒ ¼ö ÀÖ½À´Ï´Ù. ¿À¸¥ÂÊ-ALT Å°¸¦ ´Ù¸¥ ÇÖÅ°¿¡ "Á¢µÎÅ°"·Î ÇÒ´çÇÏ¸é µË´Ï´Ù. ¾Æ·¡ÀÇ ¿¹Á¦¿¡¼­ ¿À¸¥ÂÊ-ALT Å°´Â Á¢µÎÅ°°¡ µË´Ï´Ù. ´Ù¸¥ ¸ðµç Å°µéÀ» Á¤»óó·³ ÀÛµ¿Çϵµ·Ï º¯°æÇÕ´Ï´Ù. ±×·¯³ª ¶Ç´Ù¸¥ Å°¸¦ º¯°æÇϴµ¥ »ç¿ëÇÏÁö ¾Ê°í ¿À¸¥ÂÊ-Alt Å°¸¦ ´©¸£°í ¶¾´Ù¸é, ±×ÀÇ ÇÖÅ° ÇàÀ§°¡ Áï½Ã È¿°ú¸¦ ¹ßÈÖÇÕ´Ï´Ù:

+
RAlt & j::AltTab
+

 

+

+¼ö½ÄÀÚ·Î CTRL, ALT, SHIFT, ±×¸®°í WIN¸¸ »ç¿ëÇÒ ¼ö ÀÖ´Â °ÍÀº ¾Æ´Õ´Ï´Ù. ¹«¾ùÀÌµç µÎ°³ÀÇ Å° ¶Ç´Â ¸¶¿ì½º ¹öÆ°À» Á¶ÇÕÇÏ¿© ¸ÂÃã ÇÖÅ°¸¦ ¸¸µé ¼ö ÀÖ½À´Ï´Ù + +¿¹¸¦ µé¾î: Numpad0¸¦ ´©¸¥ ä·Î Numpad1À» ´­·¯ ÇÖÅ°¸¦ ±âµ¿½Ãŵ´Ï´Ù (±¸¹®: Numpad0 & Numpad1::); CapsLockÀ» ´©¸¥ ä·Î ¶Ç´Ù¸¥ Å°¸¦ ´©¸£°Å³ª, ¶Ç´Â ¸¶¿ì½º ¹öÆ°À» Ŭ¸¯ÇÕ´Ï´Ù (±¸¹®: CapsLock & RButton::). ÀÌ °æ¿ì, CapsLock Å°ÀÇ »óÅ (on ¶Ç´Â off)´Â ÇÖÅ°¸¦ ±âµ¿ÇÏ´Â µ¥ »ç¿ëµÇ´õ¶óµµ ¹Ù²îÁö ¾Ê½À´Ï´Ù. ÀÚ¼¼ÇÑ °ÍÀº Å°¸¦ ¸¶À½´ë·Î Á¶¸³Çϱ⸦ ÂüÁ¶ÇϽʽÿÀ.

+

 

+

Alt-TabÀ» ¿ÏÀüÇÏ°Ô ´ëüÇϵµ·Ï ¸¶¿ì½º ÈÙ (¶Ç´Â ±âŸ Å°)À» º¯È¯ÇÕ´Ï´Ù. ÈÙÀ» Ŭ¸¯ÇØ ¸Þ´º¸¦ º¸¿©°Å³ª °¨Ãä´Ï´Ù. ±×¸®°í ÈÙÀ» µ¹·Á¼­ ¸Þ´º¸¦ Ç×ÇØÇÕ´Ï´Ù. ÈÙÀº Alt-Tab ¸Þ´º°¡ º¸ÀÌÁö ¾ÊÀ» ¶§ ¿©ÀüÈ÷ Á¤»ó ÀÛµ¿ÇÕ´Ï´Ù. ´ÙÀ½Àº ±× ±¸¹®ÀÔ´Ï´Ù:

+
MButton::AltTabMenu
+WheelDown::AltTab
+WheelUp::ShiftAltTab
+

 

+

Å°º¸µå Å°¸¦ ¸¶¿ì½º ¹öÆ°ÀÌ µÇµµ·Ï ¸¸µì´Ï´Ù, ¶Ç´Â Å°³ª ¸¶¿ì½º ¹öÆ°À» ´©¸£°í ÀÖ´Â µ¿¾È ¾î¶² ÇàÀ§°¡ °è¼ÓÇؼ­ ¹Ýº¹µÇµµ·Ï ¸¸µì´Ï´Ù. ¿¹Á¦´Â ¸®¸ÊÇÎ ÆäÀÌÁö¸¦ ÂüÁ¶ÇϽʽÿÀ.

+

 

+

ÇÖÅ°°¡ ¹®¸ÆÀ» °¨ÁöÇϵµ·Ï ¸¸µì´Ï´Ù: ÀÛ¾÷ ÁßÀΠâÀÇ À¯Çü¿¡ ÀûÀýÇÏ°Ô °¡Àå-½±°Ô-´êÀ»-¼ö-ÀÖ´Â ÇÖÅ°°¡ ÇàÀ§¸¦ ¼öÇàÇÏ°Ô ÇÕ´Ï´Ù. ´ÙÀ½ ¿¹Á¦¿¡¼­, ¿À¸¥ÂÊ ÄÜÆ®·Ñ Å°´Â È°¼º âÀÌ ³ëÆ®ÆеåÀΰ¡ ¾Æ´Ï¸é °è»ê±âÀΰ¡¿¡ µû¶ó ´Ù¸£°Ô ÇàÀ§¸¦ ¼öÇàÇÕ´Ï´Ù:

+
#IfWinActive ahk_class Notepad
+RControl::WinMenuSelectItem, , , File, Save  ; ÇöÀç ÆÄÀÏÀ» ³ëÆ®Æе忡 ÀúÀåÇÕ´Ï´Ù.
+
+#IfWinActive Calculator
+RControl::Send, ^c!{tab}^v  ; °è»ê±âÀÇ ³»¿ëÀ» ÀÌÀüÀÇ È°¼º â ¾ÈÀ¸·Î º¹»çÇÕ´Ï´Ù.
+

+ÀÚ¼¼ÇÑ °ÍÀº #IfWinActive¸¦ ÂüÁ¶ÇϽʽÿÀ.

+

 

+

ÇÖ-½ºÆ®¸µ: ŸÀÚÇϸ鼭 È®ÀåµÉ ¾à¾î¸¦ Á¤ÀÇÇÕ´Ï´Ù. Ưº°ÇÑ ÈÆ·ÃÀ̳ª °æÇèÀÌ ÀüÇô ÇÊ¿ä ¾ø½À´Ï´Ù. ¿¹¸¦ µé¾î, ´ÙÀ½ ÁÙÀÌ µé¾î ÀÖ´Â ½ºÅ©¸³Æ®´Â ŸÀÚÇÏ´Â °÷¿¡¼­ ceo, cfo, ±×¸®°í btw¸¦ È®ÀåÇÕ´Ï´Ù:

+
::ceo::Chief Executive Officer
+::cfo::Chief Financial Officer
+::btw::by the way
+

(º¸´Ù ÀÚ¼¼ÇÑ °ÍÀº ¿©±â¸¦ ÂüÁ¶ÇÕ´Ï´Ù)
+

+

 

+

°ÔÀ̸Ӷó¸é Ưº°È÷ °ü½ÉÀ» °¡Áú ¸¸ÇÑ ±â´Éµé:

+ +

´õ ÀÚ¼¼ÇÑ Á¤º¸´Â ÇÖÅ°¸¦ ÂüÁ¶ÇϽʽÿÀ.

+ + diff --git a/src/docs/Hotkeys.htm b/src/docs/Hotkeys.htm new file mode 100644 index 0000000..5747c0d --- /dev/null +++ b/src/docs/Hotkeys.htm @@ -0,0 +1,308 @@ + + +Hotkeys (Mouse, Joystick and Keyboard Shortcuts) + + + + + + + + + +

ÇÖÅ° (¸¶¿ì½º, Á¶À̽ºÆ½ ±×¸®°í Å°º¸µå ´ÜÃàÅ°)

+ + +

¸ñÂ÷

+ + +

¼Ò°³¿Í °£´ÜÇÑ ¿¹Á¦

+

ÇÖÅ°´Â Á¾Á¾ ´ÜÃàÅ°¶ó°í ÁöĪµË´Ï´Ù. ½±°Ô ÇÑ ÇàÀ§¸¦ Ã˹߽Ãų ¼ö Àֱ⠶§¹®ÀÔ´Ï´Ù (¿¹¸¦ µé¾î ÇÁ·Î±×·¥À̳ª Å°º¸µå ¸ÅÅ©·Î¸¦ ±âµ¿ÇÕ´Ï´Ù). ´ÙÀ½ ¿¹Á¦¿¡¼­, ÇÖÅ° Win+NÀº ³ëÆ®Æе带 ±âµ¿Çϵµ·Ï ±¸¼ºµË´Ï´Ù. ÆÄ¿îµå »çÀÎ[#]Àº Windows Å°¸¦ ³ªÅ¸³À´Ï´Ù. ÀÌ°ÍÀº ¼ö½ÄÅ°(modifier)·Î ¾Ë·ÁÁ® ÀÖ½À´Ï´Ù:

+
#n::
+Run Notepad
+return
+

+À§ÀÇ ¸¶Áö¸· ÁÙ¿¡¼­ returnÀº ÇÖÅ°¸¦ ³¡³»´Â ±â´ÉÀ» ÇÕ´Ï´Ù. ±×·¸Áö¸¸, ÇÖÅ°°¡ ¿ÀÁ÷ ÇÑ ÁÙ¸¸ ½ÇÇàÇÒ ÇÊ¿ä°¡ ÀÖ´Ù¸é, ÀÌ ÁÙÀº °ã-½ÖÁ¡ÀÇ ¿À¸¥ÂÊ¿¡ ³ª¿­ÇÒ ¼ö ÀÖ½À´Ï´Ù. ´Ù½Ã ¸»ÇØ, return¹®ÀÌ ¹¬½ÃÀûÀ¸·Î ÀÖ½À´Ï´Ù:

+
#n::Run Notepad
+

+ÇÖÅ°¿¡ Çϳª ÀÌ»óÀÇ ¼ö½ÄÀÚ¸¦ »ç¿ëÇÏ·Á¸é, ±×°ÍµéÀ» ¿¬¼ÓÀûÀ¸·Î ³ª¿­ÇÕ´Ï´Ù (¼ø¼­´Â ¹®Á¦°¡ ¾ÈµË´Ï´Ù). ´ÙÀ½ ¿¹Á¦´Â ^!s¸¦ »ç¿ëÇÏ¿© Control+Alt+S¸¦ ³ªÅ¸³À´Ï´Ù:

+
^!s::
+Send Sincerely,{enter}John Smith  ; ÀÌ ÁÙÀº Å°´­¸²À» È°¼º (°¡Àå ¾ÕÂÊ) â¿¡ º¸³À´Ï´Ù.
+return
+

´ÙÀ½ ¼ö½ÄÅ° ½Éº¼À» »ç¿ëÇÏ¿© ÇÖÅ°¸¦ Á¤ÀÇÇÒ ¼ö ÀÖ½À´Ï´Ù:

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
½Éº¼¼³¸í
#Win (À©µµ¿ìÁî ·Î°í Å°). v1.0.48.01+¿¡¼­, À©µµ¿ìÁî ºñ½ºÅ¸ ÀÌÈÄ¿¡, À©µµ¿ìÁî Å°°¡ Æ÷ÇÔµÈ (¿¹, #a) ÇÖÅ°´Â À©µµ¿ìÁî Å°¸¦ ¶¿ ¶§±îÁö ±â´Ù¸®´Ù°¡ ºñ·Î¼­ "L" Å°´­¸²À» ´ã°í ÀÖ´Â ÅؽºÆ®¸¦ Àü¼ÛÇÕ´Ï´Ù. + ÀÌ ´öºÐ¿¡ ±×·± ÇÖÅ° ¾È¿¡¼­ Send¸¦ »ç¿ëÇÏ´õ¶óµµ PC°¡ Àá±âÁö ¾Ê½À´Ï´Ù. + ÀÌ ÇàÀ§´Â SendPlay (ÇÊ¿äÇÏÁö ¾ÊÀ¸¹Ç·Î) ±×¸®°í ¸Í¸ñ ¸ðµå¸¦ Á¦¿ÜÇÏ°í ¸ðµç Àü¼Û ¸ðµå¿¡ Àû¿ëµË´Ï´Ù.
!Alt
^Control
+Shift
&¾ÚÆÛ¼¾Æ®¸¦ µÎ °³ÀÇ Å° »çÀÌ ¶Ç´Â ¸¶¿ì½º ¹öÆ°¿¡ »ç¿ëÇÏ¸é ±×µéÀ» Á¶ÇÕÇØ ¸ÂÃã ÇÖÅ°¸¦ ¸¸µé ¼ö ÀÖ½À´Ï´Ù. ÀÚ¼¼ÇÑ °ÍÀº ¾Æ·¡¸¦ ÂüÁ¶ÇÕ´Ï´Ù.
<ÇÑ ½ÖÁß¿¡ ¿ÞÂÊ Å°¸¦ »ç¿ëÇÕ´Ï´Ù. ¿¹¸¦ µé¾î <!a´Â !a¿Í °°½À´Ï´Ù. ¿ÞÂÊ Alt Å°¸¸ ÇàÀ§¸¦ Ã˹߽ÃŲ´Ù´Â Á¡¸¸ ´Ù¸¨´Ï´Ù.
>ÇÑ ½ÖÁß¿¡ ¿À¸¥ÂÊ Å°¸¦ »ç¿ëÇÕ´Ï´Ù.
<^>!

AltGr (alternate graving). Å°º¸µå ·¹À̾ƿô¿¡ ¿À¸¥ÂÊ-Alt ¸»°í AltGr Å°°¡ ÀÖ´Ù¸é, ÀÌ ÀÏ·ÃÀÇ ½Éº¼Àº º¸Åë AltGrÀ» ³ªÅ¸³»´Â µ¥ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î:

+
<^>!m::MsgBox AltGr+mÀ» ´­·¶½À´Ï´Ù.
+<^<!m::MsgBox LeftControl+LeftAlt+mÀ» ´­·¶½À´Ï´Ù.
+

´Ù¸¥ ¹æ¹ýÀ¸·Î, AltGr ÀÚü¸¦ ÇÖÅ°·Î ¸¸µé·Á¸é, ´ÙÀ½ ÇÖÅ°¸¦ »ç¿ëÇϽʽÿÀ (À§¿¡ º¸¿©ÁØ °Í°ú °°Àº ÇÖÅ°°¡ ÇÊ¿ä ¾ø½À´Ï´Ù):

+
LControl & RAlt::MsgBox AltGr ÀÚü¸¦ ´­·¶½À´Ï´Ù.
*

¿ÍÀϵåÄ«µå: Ãß°¡ ¼ö½ÄÀÚ°¡ ´­·Á ÀÖ´õ¶óµµ ÇÖÅ°¸¦ Ã˹߽Ãŵ´Ï´Ù. + ÀÌ°ÍÀº Á¾Á¾ Å°³ª ¹öÆ°ÀÇ ¸®¸ÊÇΰú ÇÔ²² »ç¿ëµË´Ï´Ù. ¿¹¸¦ µé¾î:

+
*#c::Run Calc.exe  ; Win+C, Shift+Win+C, Ctrl+Win+C, µîµîÀº ¸ðµÎ ÀÌ ÇÖÅ°¸¦ Ã˹߽Ãŵ´Ï´Ù.
+*ScrollLock::Run Notepad  ; ScrollLockÀ» ´©¸£¸é ÀÌ ÇÖÅ°´Â ¼ö½Ä Å°°¡ ´­·Á ÀÖ´õ¶óµµ Ã˹ߵ˴ϴÙ.
~

ÇÖÅ°°¡ Ã˹ߵǸé, ±× Å°ÀÇ °íÀ¯ ±â´ÉÀº ºÒ´ÉÀÌ µË´Ï´Ù (½Ã½ºÅÛ¿¡ º¸ÀÌÁö ¾Ê½À´Ï´Ù). ¾Æ·¡ÀÇ µÎ ¿¹Á¦¿¡¼­ , »ç¿ëÀÚ°¡ ¸¶¿ì½º ¹öÆ°À» Ŭ¸¯Çϸé È°¼º âÀ¸·Î Àü¼ÛµË´Ï´Ù:

+
~RButton::MsgBox ¿À¸¥ÂÊ ¸¶¿ì½º ¹öÆ°À» Ŭ¸¯Çß½À´Ï´Ù.
+~RButton & C::MsgBox ¿À¸¥ÂÊ ¸¶¿ì½º ¹öÆ°À» ´©¸¦ ä·Î C¸¦ ´­·¶½À´Ï´Ù.
+

+ ´Ù¸¥ Á¢µÎ ½Éº¼°ú ´Ù¸£°Ô, Æ¿µå Á¢µÎ ½Éº¼Àº ¾î¶² ÇÖÅ°ÀÇ º¯Çü¿¡´Â ³ªÅ¸³ª´Â °ÍÀÌ Çã¿ëµË´Ï´Ù. + ±×·¸Áö¸¸, ²¨ÁöÁö ¾Ê¾Ò°Å³ª º¸·ùµÈ ¸ÂÃã Á¶ÇÕ ÇÖÅ°ÀÇ Á¢µÎ Å°¿¡ Æ¿µå°¡ Àû¿ëµÇ¸é, ¸ðµç Å°Á¶ÇÕ¿¡ ´ëÇÏ¿© ±× Á¢µÎ Å°ÀÇ ÇàÀ§¿¡ ¿µÇâÀ» ¹ÌĨ´Ï´Ù.

+

¾ËÆ®-ÅÇÀ» ´ëüÇϴ Ư¼öÇÑ ÇÖÅ°´Â ¾ðÁ¦³ª Æ¿µå Á¢µÎ ½Éº¼À» ¹«½ÃÇÕ´Ï´Ù.

+

[v1.1.14+]: Æ¿µå Á¢µÎ ½Éº¼ÀÌ ±× Àڽŵµ ÇÖÅ°·Î »ç¿ëµÇ´Â ¸ÂÃã ¼ö½Ä Å°¿¡ Àû¿ëµÇ¸é (Á¢µÎ Å°), ±× ÇÖÅ°´Â Å°¸¦ ¶¿ ¶§±îÁö ±â´Ù¸®´Â ´ë½Å¿¡ Å°°¡ ´­¸± ¶§ Ã˹ߵ˴ϴÙ. + + ¿¹¸¦ µé¾î, À§ÀÇ ~RButton ÇÖÅ°´Â ¹öÆ°ÀÌ ´­¸®ÀÚ ¸¶ÀÚ Ã˹ߵ˴ϴÙ. v1.1.14 ÀÌÀüÀ̶ó¸é (Æ¿µå Á¢µÎ ½Éº¼ÀÌ ¾øÀ¸¹Ç·Î), ¹öÆ°À» ¶¼ÀÚ¸¶ÀÚ Ã˹ߵǾú½À´Ï´Ù. ±×·¯³ª RButton & C Á¶ÇÕÀÌ È°¼ºÈ­µÇ¾î ÀÖÁö ¾ÊÀ» °æ¿ì¿¡¸¸ Ã˹ߵǾú½À´Ï´Ù.

+

+ Æ¿µå Á¢µÎ ½Éº¼ÀÌ ¸ÂÃã Á¶ÇÕ ÇÖÅ°¿¡¸¸ Àû¿ëµÇ°í ºñ-¸ÂÃã ÇÖÅ°¿¡´Â Àû¿ëµÇÁö ¾ÊÀ¸¸é, ±× ÇÖÅ°ÀÇ °íÀ¯ ±â´ÉÀÌ ¿©ÀüÈ÷ ¸·Çô ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î, ¾Æ·¡ÀÇ ½ºÅ©¸³Æ®¿¡¼­ AppsKey¸¦ ´©¸£¸é ToolTipÀ» º¸¿©ÁÖ°í ¹®¸Æ ¸Þ´º´Â Ã˹߽ÃÅ°Áö ¾Ê½À´Ï´Ù:

+
AppsKey::ToolTip âÀ» ¼øȸÇÏ·Á¸é < ¶Ç´Â >À» ´©¸¨´Ï´Ù.
+AppsKey Up::ToolTip
+~AppsKey & <::Send !+{Esc}
+~AppsKey & >::Send !{Esc}
+
$ +

ÀÌ°ÍÀº ÁÖ·Î ½ºÅ©¸³Æ®°¡ Send ¸í·É¾î¸¦ »ç¿ëÇÏ¿©, ÇÖÅ° ÀÚü¸¦ ±¸¼ºÇÏ´Â Å°µéÀ» Àü¼ÛÇÒ °æ¿ì¿¡¸¸ ÇÊ¿äÇÕ´Ï´Ù. ±×·¸Áö ¾ÊÀ¸¸é ÇÖÅ° ÀÚü°¡ ÃË¹ßµÉ °¡´É¼ºÀÌ ÀÖ½À´Ï´Ù. $ Á¢µÎ ½Éº¼Àº °­Á¦·Î Å°º¸µå °¥°í¸®°¡ ÀÌ ÇÖÅ°¸¦ ±¸ÇöÇϴµ¥ »ç¿ëµÇµµ·Ï ¸¸µì´Ï´Ù. ±× ºÎÀÛ¿ëÀ¸·Î Send ¸í·É¾î´Â ±× ÇÖÅ°¸¦ Ã˹߽ÃÅ°Áö ¸øÇÕ´Ï´Ù. $ Á¢µÎ ½Éº¼Àº ÀÌ ÇÖÅ°°¡ Á¤ÀÇµÈ À§ÂÊ ¾îµò°¡¿¡ #UseHookÀ» ÁöÁ¤ÇÏ´Â °Í°ú µ¿µîÇÕ´Ï´Ù.

+

+ $ Á¢µÎ ½Éº¼Àº ¸¶¿ì½º ÇÖÅ°¿¡´Â ¾Æ¹« È¿°ú°¡ ¾ø½À´Ï´Ù. ¿Ö³ÄÇÏ¸é ¸¶¿ì½º ÇÖÅ°´Â ¾ðÁ¦³ª ¸¶¿ì½º °¥°í¸®¸¦ »ç¿ëÇϱ⠶§¹®ÀÔ´Ï´Ù. ¶Ç ÀÌ¹Ì Å°º¸µå °¥°í¸®¸¦ ¿ä±¸ÇÏ´Â ÇÖÅ°¿¡µµ ¾Æ¹« È¿°ú°¡ ¾ø½À´Ï´Ù. ¿©±â¿¡´Â tilde (~) ¶Ç´Â wildcard (*) ¼ö½ÄÀÚ¸¦ °¡Áø ¸ðµç ÇÖÅ°, Å°-¶À ÇÖÅ°¿Í ¸ÂÃã Á¶ÇÕ ÇÖÅ°°¡ Æ÷ÇԵ˴ϴÙ.

+

[v1.1.06+]: #InputLevel°ú SendLevel¸¦ »ç¿ëÇϸé Send ¸í·É¾î·Î ÃË¹ßµÉ ÇÖÅ°¿Í ÇÖ½ºÆ®¸µÀ» Á¦¾îÇÒ ¼ö ÀÖ½À´Ï´Ù.

+
UP

´Ü¾î UPÀÌ ÇÖÅ°ÀÇ À̸§ ´ÙÀ½¿¡ ¿À¸é ±× ÇÖÅ°´Â ´©¸¦ ¶§°¡ ¾Æ´Ï¶ó ¶¿ ¶§ Ã˹ߵ˴ϴÙ. ´ÙÀ½ ¿¹Á¦´Â LWinÀÌ LControlÀÌ µÇµµ·Ï ¸®¸ÊÇÕ´Ï´Ù:

+
*LWin::Send {LControl Down}
+*LWin Up::Send {LControl Up}
+
+

"Up"Àº ´ÙÀ½ ¿¹Á¦¿Í °°ÀÌ º¸ÅëÀÇ ÇÖÅ°¿Í ÇÔ²² »ç¿ëÇÒ ¼öµµ ÀÖ½À´Ï´Ù: ^!r Up::MsgBox Ctrl+Alt+RÀ» ´©¸£°í ¶Ã½À´Ï´Ù.. ¶Ç ÇÖÅ° Á¶ÇÕ°úµµ ÀÛµ¿ÇÕ´Ï´Ù (¿¹, F1 & e Up::)

+

ÇÑ°è: 1) "Up"Àº Á¶À̽ºÆ½ ¹öÆ°°ú ÀÛµ¿ÇÏÁö ¾Ê½À´Ï´Ù; ±×¸®°í 2) º¸ÅëÀÇ/´©¸§ ¦ÀÌ ¾øÀÌ "Up" ÇÖÅ° Çϳª¸¸ »ç¿ëÇÏ¸é ±× Å°¸¦ ¿ÏÀüÈ÷ Á¡·ÉÇÕ´Ï´Ù. ±× Å°´Â ´©¸¦ ¼ö ¾ø½À´Ï´Ù. À̸¦ ÇÇÇÏ´Â ÇÑ °¡Áö ¹æ¹ýÀº Æ¿µå Á¢µÎ ½Éº¼À» Ãß°¡ÇÏ´Â °ÍÀÔ´Ï´Ù (¿¹, ~LControl up::)

+

+ °ü·ÃÇؼ­ ÇÑ ¸¶µð ÇÏÀÚ¸é, À§¿Í ºñ½ÁÇÑ Å×Å©´ÐÀº ÇÖÅ°¸¦ Á¢µÎ Å°·Î ¸¸µå´Â °ÍÀÔ´Ï´Ù. ÇÖÅ°¸¦ ¶¿ ¶§ Ã˹ߵÇÁö¸¸, ´Ù¸¥ Å°¸¦ ´©¸£Áö ¾Ê´Â ÇÑ, ´©¸£°í ÀÖ´Â µ¿¾È¿¡¸¸ Ã˹ߵȴٴ ÀåÁ¡ÀÌ ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î:

+
LControl & F1::return  ; ¿ÞÂÊ ÄÜÆ®·Ñ Å°¸¦ Á¢µÎ Å°·Î ¸¸µì´Ï´Ù.  "&" ¾Õ¿¡ ÇÑ ¹ø¸¸ »ç¿ëÇÏ¸é µË´Ï´Ù.
+LControl::MsgBox ´Ù¸¥ Å°¸¦ ¼öÁ¤ÇÏ´Â µ¥ »ç¿ëÇÏÁö ¾Ê°í LControl¸¦ ¶Ã½À´Ï´Ù.
+

+(Å°º¸µå Å°¿Í ¸¶¿ì½º/Á¶À̽ºÆ½ ¹öÆ°ÀÇ ¿ÏÀüÇÑ ¸ñ·ÏÀº Å° ¸ñ·ÏÀ» ÂüÁ¶ÇϽʽÿÀ)

+


+´ÙÁß ÇÖÅ°¸¦ ¼öÁ÷À¸·Î ½×À¸¸é °°Àº ÇàÀ§¸¦ ¼öÇàÇÏ°Ô ÇÒ¼ö ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î:

+
^Numpad0::
+^Numpad1::
+MsgBox Control+Numpad0À̳ª Control+Numpad1¸¦ ´©¸£¸é ÀÌ ¸Þ½ÃÁö°¡ È­¸é¿¡ º¸ÀÔ´Ï´Ù.
+return
+

+Å° ¶Ç´Â Å°-Á¶ÇÕÀ» Àüü ½Ã½ºÅÛ¿¡ ´ëÇÏ¿© ºÒ´ÉÈ­ÇÒ ¼ö ÀÖ½À´Ï´Ù. ¾Æ¹«°Íµµ ÇÏÁö ¾Êµµ·Ï ¸¸µé¸é µË´Ï´Ù. ´ÙÀ½ ¿¹Á¦´Â ¿À¸¥ÂÊ À©µµ¿ìÁî Å°¸¦ ºÒ´ÉÀ¸·Î ¸¸µì´Ï´Ù:

+
RWin::return
+ +

¹®¸Æ-°¨Áö ÇÖÅ°

+

+#IfWinActive/Exist¿Í #If Áö½Ã¾î¸¦ »ç¿ëÇϸé ƯÁ¤ Á¶°Ç¿¡ µû¶ó ÇÖÅ°°¡ ´Ù¸¥ ÇàÀ§¸¦ ¼öÇàÇÏ°Ô (¶Ç´Â ÀüÇô ¸øÇÏ°Ô) ¸¸µé ¼ö ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î:

+
#IfWinActive, ahk_class Notepad
+^a::MsgBox ³ëÆ®Æе尡 È°¼º»óÅÂÀÎ µ¿¾È Ctrl-A¸¦ ´­·¶½À´Ï´Ù. ´Ù¸¥ â¿¡ Ctrl-A¸¦ ´©¸£¸é Ctrl-A Å°´­¸²ÀÌ ±× âÀ¸·Î Àü¼ÛµË´Ï´Ù.
+#c::MsgBox ³ëÆ®Æе尡 È°¼º»óÅÂÀÎ µ¿¾È Win-C¸¦ ´­·¶½À´Ï´Ù.
+
+#IfWinActive
+#c::MsgBox ³ëÆ®Æе尡 ¾Æ´Ñ ´Ù¸¥ âÀÌ È°¼º »óÅÂÀÎ µ¿¾È Win-C¸¦ ´­·¶½À´Ï´Ù.
+
+#If MouseIsOver("ahk_class Shell_TrayWnd")
+WheelUp::Send {Volume_Up}     ; ŽºÅ©¹Ù À§¿¡¼­ ÈÙÀ» µ¹¸³´Ï´Ù: º¼·ýÀ» ³ôÀ̰ųª/³»¸³´Ï´Ù.
+WheelDown::Send {Volume_Down} ;
+
+ +

¸ÂÃã Á¶ÇÕ°ú ±âŸ Ư¡

+

µÎ Å° »çÀÌ¿¡ " & "À» »ç¿ëÇÏ¿© ¸ÂÃã Á¶ÇÕÀ» Á¤ÀÇÇÒ ¼ö ÀÖ½À´Ï´Ù (Á¶À̽ºÆ½ ¹öÆ° Á¦¿Ü). ¾Æ·¡ÀÇ ¿¹¿¡¼­, Numpad0¸¦ ´©¸¥ ä·Î µÎ ¹ø° Å°¸¦ ´©¸£¸é ÇÖÅ°°¡ Ã˹ߵ˴ϴÙ:

+
Numpad0 & Numpad1::MsgBox Numpad0¸¦ ´©¸¥ ä·Î Numpad1À» ´­·¶½À´Ï´Ù.
+Numpad0 & Numpad2::Run Notepad
+

+À§ÀÇ ¿¹Á¦¿¡¼­ Numpad0´Â Á¢µÎ Å°°¡ µË´Ï´Ù; ±×·¯³ª ¶Ç ÀÌ ¶§¹®¿¡ ÀÚü¸¸ ´­¸®¸é ±×ÀÇ ¿ø·¡/°íÀ¯ ±â´ÉÀ» ÀÒ¾î¹ö¸³´Ï´Ù. À̸¦ ÇÇÇϱâ À§ÇØ, ½ºÅ©¸³Æ®´Â Numpad0°¡ »õ ÇàÀ§¸¦ ¼öÇàÇϵµ·Ï ±¸¼ºÇÒ ¼ö ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î ´ÙÀ½°ú °°ÀÌ:

+
Numpad0::WinMaximize A   ; È°¼º/Àü°æ âÀ» ÃÖ´ëÈ­ÇÕ´Ï´Ù.
+Numpad0::Send {Numpad0}  ; Numpad0¸¦ ¶¼¸é Numpad0 Å°´­¸²À» »ý»êÇϵµ·Ï ¸¸µì´Ï´Ù. ¾Æ·¡ÀÇ ÁÖ¼®À» ÂüÁ¶ÇϽʽÿÀ.
+

+À§ÀÇ ¸ÂÃã ÇÖÅ°°¡ Çϳª¶óµµ Á¸ÀçÇϸé Numpad0À» ¶¿ ¶§ Áö½ÃÇÑ ÇàÀ§°¡ ¼öÇàµË´Ï´Ù. ±×·¯³ª ¿ÀÁ÷ Numpad0°¡ ´­·Á ÀÖ´Â µ¿¾È ´Ù¸¥ Å°¸¦ ´©¸£Áö ¾ÊÀ» °æ¿ì¿¡¸¸ ±×·¸½À´Ï´Ù. +v1.1.14+¿¡¼­, ÀÌ ÇàÀ§¸¦ ÇÇÇÒ ¼ö ÀÖ½À´Ï´Ù. Æ¿µå Á¢µÎ ½Éº¼À» µÎ ÇÖÅ°Áß Çϳª¿¡ Àû¿ëÇÏ¸é µË´Ï´Ù.

+

+Numlock, Capslock, ±×¸®°í Scrolllock: ÀÌ·± Å°µéÀº °­Á¦·Î ¾ðÁ¦³ª ÄѰųª("AlwaysOn") ¾ðÁ¦³ª ²ø("AlwaysOff")¼ö ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î: SetNumlockState AlwaysOn.

+

+ÀͽºÇ÷η¯ÀÇ ÇÖÅ° ¿À¹ö¶óÀ̵ùÇϱâ: Win-E (#e) ±×¸®°í Win-R (#r) °°Àº À©µµ¿ìÁî ³»Àå ÇÖÅ°´Â °³º°ÀûÀ¸·Î ¿À¹ö¶óÀ̵åÇÒ ¼ö ÀÖ½À´Ï´Ù. ±×³É ½ºÅ©¸³Æ®¿¡¼­ °Å±â¿¡ ÇàÀ§¸¦ ÇÒ´çÇϱ⸸ ÇÏ¸é µË´Ï´Ù. ÀÚ¼¼ÇÑ °ÍÀº ¿À¹ö¶óÀ̵å ÆäÀÌÁö¸¦ ÂüÁ¶ÇϽʽÿÀ.

+

Alt-Tab ´ë¾È: ÇÖÅ°´Â ¾ËÆ®-ÅÇ ´ë½Å¿¡ ´Ù¸¥ ¼ö´ÜÀ» Á¦°øÇÒ ¼ö ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î, ´ÙÀ½ÀÇ µÎ ÇÖÅ°·Î ¿À¸¥ ¼ÕÀ¸·Î ¾ËÆ®-ÅÇÀ» ¼öÇàÇÒ ¼ö ÀÖ½À´Ï´Ù:

+
RControl & RShift::AltTab  ; ¿À¸¥ÂÊ ÄÜÆ®·Ñ Å°¸¦ ´©¸¥ ä·Î ¿À¸¥ÂÊ-½¬ÇÁÆ®¸¦ ¹Ýº¹ÀûÀ¸·Î ´­·¯ ¾ÕÀ¸·Î À̵¿ÇÕ´Ï´Ù.
+RControl & Enter::ShiftAltTab  ; ¿À¸¥ÂÊ ÄÜÆ®·Ñ Å°¸¦ ¶¿ ÇÊ¿äµµ ¾øÀÌ, ¿£Å͸¦ ´­·¯ ¹Ý´ë¹æÇâÀ¸·Î À̵¿ÇÕ´Ï´Ù.
+

´õ ÀÚ¼¼ÇÑ °ÍÀº Alt-TabÀ» ÂüÁ¶ÇϽʽÿÀ.

+ +

¸¶¿ì½º ÈÙ ÇÖÅ°

+

+¸¶¿ì½º ÈÙÀ» µ¹¸± ¶§ Ã˹ߵǴ ÇÖÅ°´Â WheelDown°ú WheelUpÀ̶ó´Â Å° À̸§À» ÅëÇÏ¿© Áö¿øÇÕ´Ï´Ù. WheelLeft¿Í WheelRightµµ ¿ª½Ã v1.0.48+¿¡¼­ Áö¿øÇÏÁö¸¸, À©µµ¿ìÁî ºñ½ºÅ¸ º¸´Ù ¿À·¡µÈ ¹öÀü¿¡¼­´Â ¾Æ¹« È¿°ú°¡ ¾ø½À´Ï´Ù. ´ÙÀ½Àº ¸¶¿ì½º ÈÙ ÇÖÅ°ÀÇ ¸î °¡Áö ¿¹ÀÔ´Ï´Ù:

+
MButton & WheelDown::MsgBox °¡¿îµ¥ ¹öÆ°À» ´©¸£°í ÀÖ´Â µ¿¾È ¸¶¿ì½º ÈÙÀ» µ¹·È½À´Ï´Ù.
+^!WheelUp::MsgBox Control+Alt¸¦ ´©¸£°í ÀÖ´Â µ¿¾È ÈÙÀ» À§·Î µ¹·È½À´Ï´Ù.
+

+v1.0.43.03+¿¡¼­, ³»Àå º¯¼ö A_EventInfo¿¡´Â ÈÙÀ» ȸÀüÇÑ ¾çÀÌ ´ã±é´Ï´Ù. ÀüÇüÀûÀ¸·Î 1ÀÌÁö¸¸, A_EventInfo´Â ´ÙÀ½°ú °°Àº »óȲ¿¡¼­ 1 º¸´Ù ´õ Ŭ ¼ö ÀÖ½À´Ï´Ù:

+ +

+¸¶¿ì½º ÈÙ¿¡ ¾ÆÁÖ À¯¿ëÇÑ ÇÖÅ°·Î âÀÇ ÅؽºÆ®¸¦ ½ºÅ©·ÑÇÏ´Â ´ë¾È ¸ðµå¿Í °ü·ÃµÇ¾î ÀÖ½À´Ï´Ù. +¿¹¸¦ µé¾î, ¿ÞÂÊ ÄÜÆ®·Ñ Å°¸¦ ´©¸¥ ä ÈÙÀ» µ¹¸± ¶§ ´ÙÀ½ ÇÖÅ° ½ÖÀº ¼¼·Î°¡ ¾Æ´Ï¶ó °¡·Î·Î ½ºÅ©·Ñ ÇÕ´Ï´Ù:

+
~LControl & WheelUp::  ; ¿ÞÂÊÀ¸·Î ½ºÅ©·Ñ ÇÕ´Ï´Ù.
+ControlGetFocus, fcontrol, A
+Loop 2  ; <-- ÀÌ °ªÀ» Áõ°¡½ÃÅ°¸é ´õ »¡¸® ½ºÅ©·ÑµË´Ï´Ù.
+    SendMessage, 0x114, 0, 0, %fcontrol%, A  ; 0x114Àº WM_HSCROLLÀÌ°í ±× ´ÙÀ½¿¡ 0Àº SB_LINELEFTÀÔ´Ï´Ù.
+return
+
+~LControl & WheelDown::  ; ¿À¸¥ÂÊÀ¸·Î ½ºÅ©·ÑÇÕ´Ï´Ù.
+ControlGetFocus, fcontrol, A
+Loop 2  ; <-- ÀÌ °ªÀ» Áõ°¡½ÃÅ°¸é ´õ »¡¸® ½ºÅ©·ÑµË´Ï´Ù.
+    SendMessage, 0x114, 1, 0, %fcontrol%, A  ; 0x114Àº WM_HSCROLLÀÌ°í ±× ´ÙÀ½¿¡ 1À̸é SB_LINERIGHTÀÔ´Ï´Ù.
+return
+

¸¶Áö¸·À¸·Î, ¸¶¿ì½º ÈÙ ÇÖÅ°´Â ¿ÀÁ÷ ´©¸§-À̺¥Æ®¸¸ ¹ß»ý½ÃÅ°¹Ç·Î (¶À-À̺¥Æ® ¾øÀ½), Å°-¶À ÇÖÅ°·Î »ç¿ëÇÒ ¼ö ¾ø½À´Ï´Ù.

+ +

ÇÖÅ° ÆÁ ±×¸®°í ³íÆò

+

+°¢ ³ÑÆеå Å°¸¶´Ù NumlockÀÇ »óÅ¿¡ µû¶ó µÎ°³ÀÇ ´Ù¸¥ ÇÖÅ° ¼­ºê·çƾÀ» ±âµ¿½Ãų ¼ö ÀÖ½À´Ï´Ù. ´ë¾ÈÀûÀ¸·Î, ³ÑÆеå Å°´Â °°Àº ¼­ºê·çƾÀ» NumlockÀÇ »óÅ¿¡ »ó°ü¾øÀÌ ±âµ¿½Ãų ¼ö ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î:

+
NumpadEnd::
+Numpad1::
+MsgBox, ÀÌ ÇÖÅ°´Â NumlockÀÇ »óÅÂ¿Í °ü°è¾øÀÌ ±âµ¿µË´Ï´Ù.
+return
+

+Æ¿µå (~) ¿¬»êÀÚ°¡ Á¢µÎ Å°¿Í ÇÔ²² ÇÑ ¹øÀÌ¶óµµ »ç¿ëµÇ¸é, ¸ðµç Á¶ÇÕ¿¡ ´ëÇÏ¿© ±× Á¢µÎ Å°ÀÇ ÇàÀ§°¡ ¹Ù²ò´Ï´Ù. ¿¹¸¦ µé¾î, ¾Æ·¡ÀÇ µÎ ÇÖÅ° ¸ðµÎ, µÎ Á¤ÀÇ Áß¿¡ Çϳª¸¸ Æ¿µå°¡ Æ÷ÇԵǾî ÀÖÀ½¿¡µµ ºÒ±¸ÇÏ°í È°¼º âÀº ¸ðµÎ ¿À¸¥ÂÊ Å¬¸¯À» ¹Þ½À´Ï´Ù:

+ +
~RButton & LButton::MsgBox ¿ì¹öÆ°À» ´©¸£°í ÀÖ´Â µ¿¾È ¿Þ¹öÆ°À» ´­·¶½À´Ï´Ù.
+RButton & WheelUp::MsgBox ¿ì¹öÆ°À» ´©¸£°í ÀÖ´Â µ¿¾È ÈÙÀ» À§·Î µ¹·È½À´Ï´Ù.
+

+Suspend ¸í·É¾î´Â Àӽ÷Π¸ðµç ÇÖÅ°¸¦ ºÒ´ÉÈ­ÇÒ ¼ö ÀÖ½À´Ï´Ù. ´Ü, ¿©·¯ºÐÀÌ Á÷Á¢ ¸éÁ¦ÇÑ ÇÖÅ°´Â ¿¹¿ÜÀÔ´Ï´Ù. ´õ ¼±ÅÃÀÇ ¹üÀ§¸¦ ³ÐÈ÷·Á¸é, #IfWinActive/Exist¸¦ »ç¿ëÇϽʽÿÀ.

+

+Hotkey ¸í·É¾î¸¦ ¼ö´ÜÀ¸·Î ÇÏ¿©, ½ºÅ©¸³Æ®°¡ ½ÇÇàÁßÀÎ µ¿¾È ÇÖÅ°¸¦ µ¿ÀûÀ¸·Î »ý¼ºÇÒ ¼ö ÀÖ½À´Ï´Ù. Hotkey ¸í·É¾î´Â ¶Ç ½ºÅ©¸³Æ®¿¡ ÀÌ¹Ì Á¸ÀçÇÏ´Â ÇÖÅ°µéÀ» °³º°ÀûÀ¸·Î ¼öÁ¤Çϰųª ºÒ´ÉÀ¸·Î ¸¸µé°Å³ª È°¼ºÈ­ÇÒ ¼ö ÀÖ½À´Ï´Ù..

+

+Á¶À̽ºÆ½ ÇÖÅ°´Â ÇöÀç ^ (Control)°ú # (Win) °°Àº ¼ö½Ä Á¢µÎ ½Éº¼À» Áö¿øÇÏÁö ¾Ê½À´Ï´Ù. ±×·¸Áö¸¸, GetKeyState¸¦ »ç¿ëÇÏ¸é ´ÙÀ½ ¿¹Á¦¿¡ º¸¿©ÁÖ´Â ¹Ù¿Í °°ÀÌ ±× È¿°ú¸¦ Èä³»³¾ ¼ö ÀÖ½À´Ï´Ù:

+
Joy2::
+if not GetKeyState("Control")  ; ¿ÞÂÊ ÄÜÆ®·ÑÅ° ¿À¸¥ÂÊ ÄÜÆ®·Ñ Å° ´­ ´Ù ´­·Á ÀÖÁö ¾Ê½À´Ï´Ù.
+    return  ; Áï, ¾Æ¹«°Íµµ ÇÏÁö ¾Ê½À´Ï´Ù.
+MsgBox ÄÜÆ®·Ñ Å°¸¦ ´©¸£°í ÀÖ´Â µ¿¾È ù ¹ø° Á¶À̽ºÆ½ÀÇ µÎ ¹ø° ¹öÆ°À» ´­·¶½À´Ï´Ù.
+return
+

+ÇÖÅ°°¡ °è¼Ó ÁøÇàÇϱâ À§ÇØ ÀÚ½ÅÀÇ ¼ö½Ä Å°°¡ ¶¼¾îÁö±â¸¦ ±â´Ù·Á¾ßÇÒ °æ¿ì°¡ ÀÖ½À´Ï´Ù. ´ÙÀ½ ¿¹Á¦¸¦ »ìÆì º¸°Ú½À´Ï´Ù:

+
^!s::Send {Delete}
+

+Control-Alt-S¸¦ ´©¸£¸é ½Ã½ºÅÛÀÌ ¸¶Ä¡ Control-Alt-Delete¸¦ ´©¸¥ °Íó·³ ÇൿÇÕ´Ï´Ù (½Ã½ºÅÛÀÌ Ctrl-Alt-Delete¸¦ °ø°ÝÀûÀ¸·Î ŽÁöÇϱ⠶§¹®ÀÔ´Ï´Ù). À̸¦ µ¹¾Æ°¡·Á¸é KeyWait¸¦ »ç¿ëÇÏ¿© Å°¸¦ ¶¼±â¸¦ ±â´Ù¸³´Ï´Ù; ¿¹¸¦ µé¾î:

+
^!s::
+KeyWait Control
+KeyWait Alt
+Send {Delete}
+return
+

+#z::¿Í °°Àº ÇÖÅ° ¶óº§ÀÌ "Invalid Hotkey"¿Í °°Àº ¿¡·¯¸¦ ¾ß±âÇÏ´Â °æ¿ì, ½Ã½ºÅÛÀÇ Å°º¸µå ·¹À̾ƿô/¾ð¾î¿¡ ÁöÁ¤µÈ ¹®ÀÚ°¡ ÀÖÀ» ¼ö ÀÖ½À´Ï´Ù (ÀÌ °æ¿ì´Â "Z"). Å°º¸µå ·¹À̾ƿô¿¡ Á¸ÀçÇÏÁö ¾Ê´Â ´Ù¸¥ ¹®ÀÚ¸¦ »ç¿ëÇϽʽÿÀ.

+

+ÇÖÅ° ¶óº§À» GosubÀ̳ª GotoÀÇ ¸ñÇ¥·Î »ïÀ» ¼ö ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î: Gosub ^!s.

+

+ÇÖÅ°ÀÇ ÈçÇÑ »ç¿ë »ç·Ê Çϳª´Â ¿¹¸¦ µé¾î ÀÏ·ÃÀÇ Å°´­¸²À̳ª ¸¶¿ì½º Ŭ¸¯ °°ÀÌ ¹Ýº¹ ÇàÀ§¸¦ ½ÃÀÛÇÏ°í ¸ØÃß´Â °ÍÀÔ´Ï´Ù. À̸¦ º¸¿©ÁÖ´Â ¿¹´Â ´ÙÀ½ FAQ ÁÖÁ¦¸¦ ÂüÁ¶ÇϽʽÿÀ.

+

+¸¶Áö¸·À¸·Î, °¢ ½ºÅ©¸³Æ®´Â ¸ÖƼ-¾²·¹µå¿Í ºñ½ÁÇÕ´Ï´Ù. ´öºÐ¿¡ ÀÌÀüÀÇ ÇÖÅ° ¼­ºê·çƾÀÌ ¿©ÀüÈ÷ ½ÇÇàÁßÀÌ´õ¶óµµ »õ ÇÖÅ°¸¦ ±âµ¿½Ãų ¼ö ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î, ÇöÀç ÇÖÅ°¿¡ ÀÇÇÏ¿© MsgBox°¡ È­¸é¿¡ º¸¿©Áö°í ÀÖ´õ¶óµµ »õ ÇÖÅ°¸¦ ±âµ¿½Ãų ¼ö ÀÖ½À´Ï´Ù.

+ +

Alt-Tab ÇÖÅ°

+

°¢ Alt-Tab ÇÖÅ°´Â ¹Ýµå½Ã µÎ °³ÀÇ Å° Á¶ÇÕÀ̾î¾ß ÇÕ´Ï´Ù. ÀüÇüÀûÀ¸·Î ¾ÚÆÛ¼¾µå(&) ½Éº¼À» ÅëÇÏ¿© Á¶ÇÕÇÕ´Ï´Ù. ´ÙÀ½ ¿¹Á¦¿¡¼­ ¿À¸¥ÂÊ Alt Å°¸¦ ´©¸¥ ä·Î J ¶Ç´Â K¸¦ ´­·¯ ¾ËÆ®-ÅÇ ¸Þ´º¸¦ Ç×ÇØÇÕ´Ï´Ù:

+
RAlt & j::AltTab
+RAlt & k::ShiftAltTab
+

+AltTab°ú ShiftAltTabÀº µÎ °³ÀÇ Æ¯¼öÇÑ ¸í·É¾îÀÔ´Ï´Ù. °°Àº ÁÙ¿¡ ÇÖÅ°·Î »ç¿ëµÉ ¶§¸¸ ÀÎÁöµË´Ï´Ù. ´ÙÀ½Àº ¿ÏÀüÇÑ ¸ñ·ÏÀÔ´Ï´Ù:

+

AltTab: ¾ËÆ®-ÅÇ ¸Þ´º°¡ º¸À̸é, ±× ¾È¿¡¼­ ¾ÕÀ¸·Î À̵¿ÇÕ´Ï´Ù. ±×·¸Áö ¾ÊÀ¸¸é, ¸Þ´º¸¦ º¸¿©ÁÝ´Ï´Ù (ÇÖÅ°°¡ µÎ°³ÀÇ Å°°¡ "&"·Î Á¶ÇյǾúÀ» °æ¿ì¿¡¸¸ º¸¿©ÁÖ°í; ±×·¸Áö ¾ÊÀ¸¸é, ¾Æ¹«°Íµµ ÇÏÁö ¾Ê½À´Ï´Ù).

+

ShiftAltTab: À§¿Í °°Áö¸¸ ¸Þ´º¿¡¼­ ¿ª¹æÇâÀ¸·Î À̵¿ÇÕ´Ï´Ù.

+

AltTabAndMenu: ¾ËÆ®-ÅÇ ¸Þ´º°¡ º¸À̸é, ¸Þ´º ¾È¿¡¼­ ¾ÕÀ¸·Î À̵¿ÇÏ°í, ±×·¸Áö ¾ÊÀ¸¸é ¸Þ´º¸¦ È­¸é¿¡ º¸¿©ÁÝ´Ï´Ù.

+

AltTabMenuDismiss: ¾ËÆ®-ÅÇ ¸Þ´º¸¦ ´Ý½À´Ï´Ù.

+

+À§ÀÇ ¿¹¸¦ ½Ã¿¬Çϱâ À§ÇÏ¿©, ¸¶¿ì½º ÈÙÀÌ ¾ËÆ®-ÅÇÀ» ¿ÏÀüÇØ ´ëüÇϵµ·Ï ¸¸µé ¼ö ÀÖ½À´Ï´Ù. ´ÙÀ½ ÇÖÅ°°¡ È¿°ú¸¦ ¹ßÈÖÇϸé, °¡¿îµ¥ ¹öÆ°À» Ŭ¸¯ÇØ ¸Þ´º¸¦ º¸¿©ÁÖ°í ÈÙÀ» µ¹·Á¼­ ±× ¾ÈÀ» Ç×ÇØÇÕ´Ï´Ù:

+
MButton::AltTabMenu
+WheelDown::AltTab
+WheelUp::ShiftAltTab
+

+¼±ÅÃµÈ Ã¢À» È°¼ºÈ­ÇÒ ÇÊ¿ä ¾øÀÌ ÇÖÅ°°¡-¿äûÇÑ ¾ËÆ®-ÅÇ ¸Þ´º¸¦ Ãë¼ÒÇÏ·Á¸é, ´ÙÀ½°ú °°Àº ÇÖÅ°¸¦ »ç¿ëÇÕ´Ï´Ù. ´ÙÀ½ Á¶°Ç¿¡ µû¶ó ¾à°£ Á¶Á¤ÀÌ ÇÊ¿äÇÒ ¼ö ÀÖ½À´Ï´Ù: 1) ¾ËÆ®-ÅÇ ¸Þ´º°¡ óÀ½¿¡ ¾î¶² ¼ö´ÜÀ¸·Î È­¸é¿¡ º¸ÀÌ°Ô ‰ç´ÂÁö; ±×¸®°í 2) ½ºÅ©¸³Æ®¿¡ Å°º¸µå °¥°í¸®°¡ ¼³Ä¡µÇ¾î ÀÖ´ÂÁö ¿©ºÎ.

+
LCtrl & CapsLock::AltTab
+!MButton::  ; °¡¿îµ¥ ¸¶¿ì½º ¹öÆ°. ! Á¢µÎ ½Éº¼ ¶§¹®¿¡ Alt Å°°¡ ´­·Á ÀÖ´Â µ¿¾È Ã˹ߵ˴ϴ٠(¾ËÆ®-ÅÇ ¸Þ´º°¡ º¸À̸é Ã˹ߵ˴ϴÙ).
+IfWinExist ahk_class #32771  ; ¾ËÆ®-ÅÇ ¸Þ´º°¡ È­¸é¿¡ º¸Àδٴ »ç½ÇÀ» ¾Ë·ÁÁÝ´Ï´Ù.
+    Send !{Escape}{Alt up}
+return
+

+ÇöÀç, ¸ðµç Ư¼ö ¾ËÆ®-ÅÇ ÇàÀ§´Â À§ÀÇ ¿¹Á¦¿Í °°ÀÌ Á÷Á¢ÀûÀ¸·Î ÇÖÅ°¿¡ ÇÒ´çÇØ¾ß ÇÕ´Ï´Ù (Áï, ¸í·É¾îó·³ »ç¿ëÇÒ ¼ö ¾ø½À´Ï´Ù). #IfWin ¶Ç´Â #If¿¡ ¿µÇâÀ» ¹ÞÁö ¾Ê±â ¶§¹®ÀÔ´Ï´Ù.

+

+¸ÂÃã ¾ËÆ®-ÅÇ ÇàÀ§´Â ÇÖÅ°¸¦ ÅëÇؼ­µµ ¸¸µé ¼ö ÀÖ½À´Ï´Ù. ´ÙÀ½ ¿¹Á¦¿¡¼­, F1À» ´©¸£¸é ¸Þ´º¸¦ È­¸é¿¡ º¸¿©ÁÖ°í ±× ¾È¿¡¼­ ¾ÕÀ¸·Î À̵¿ÇÕ´Ï´Ù. ´ÙÀ½ F2¸¦ ´©¸£¸é ¼±ÅÃµÈ Ã¢À» È°¼ºÈ­ÇÕ´Ï´Ù (¶Ç´Â Escape¸¦ ´©¸£¸é Ãë¼ÒµË´Ï´Ù):

+
*F1::Send {Alt down}{tab} ; ÀÌ °æ¿ì º°Ç¥°¡ ÇÊ¿äÇÕ´Ï´Ù.
+!F2::Send {Alt up}  ; Alt Å°¸¦ ¶Á´Ï´Ù. ±×·¯¸é ¼±ÅÃµÈ Ã¢ÀÌ È°¼ºÈ­µË´Ï´Ù.
+~*Escape::
+IfWinExist ahk_class #32771
+    Send {Escape}{Alt up}  ; ¼±ÅÃµÈ Ã¢À» È°¼ºÈ­ÇÏÁö ¾Ê°í ¸Þ´º¸¦ Ãë¼ÒÇÕ´Ï´Ù.
+return
+ +

ÇÔ¼ö ÇÖÅ° [v1.1.20+]

+

+Çϳª ÀÌ»óÀÇ ÇÖÅ°¸¦ ÇÔ¼ö¿¡ ÇÒ´çÇÒ ¼ö ÀÖ½À´Ï´Ù. ´ÙÀ½ ¿¹Á¦¿Í °°ÀÌ ±×³É ÇÖÅ° ¶óº§ ¹Ù·Î µÚ¿¡ Á¤ÀÇÇÏ¸é µË´Ï´Ù:

+
; Ctrl+Shift+O´Â ÇöÀç Æú´õ¸¦ Ž»ö±â¿¡ ¿±´Ï´Ù.
+; Ctrl+Shift+E´Â ÇöÀç ÆÄÀÏÀÌ ¼±ÅÃµÈ Æú´õ¸¦ ¿±´Ï´Ù.
+; SciTE¿Í Notepad++¸¦ Áö¿øÇÕ´Ï´Ù.
+^+o::
+^+e::
+    editor_open_folder() {
+        WinGetTitle, path, A
+        if RegExMatch(path, "\*?\K(.*)\\[^\\]+(?= [-*] )", path)
+            if (FileExist(path) && A_ThisHotkey = "^+e")
+                Run explorer.exe /select`,"%path%"
+            else
+                Run explorer.exe "%path1%"
+    }
+

+ÇÖÅ° ¶óº§À̳ª ¶óº§ ±×¸®°í ±× ÇÔ¼ö »çÀÌ¿¡´Â °ø¹é¹®ÀÚ, ÁÖ¼® ¶Ç´Â Áö½Ã¾î¸¸ ÀÖ¾î¾ß ÇÕ´Ï´Ù. ÀÌ·± ½ÄÀ¸·Î Á¤ÀÇµÈ ÇÖÅ°¿¡ ¶óº§Àº »ý¼ºµÇÁö ¾Ê½À´Ï´Ù; ±×·¸Áö¸¸, ÀÚµ¿-½ÇÇà ¼½¼ÇÀº ÇÔ¼ö¿¡ ÇÒ´çµÇ¾î ÀÖ´õ¶óµµ ù ¹ø° ÇÖÅ°¿¡¼­ ³¡³³´Ï´Ù.

+

+ÇÔ¼ö¸¦ »ç¿ëÇÏ¸é ¾ò´Â Å« ÇýÅÃÀº Áö¿ª º¯¼ö¸¦ »ç¿ëÇÒ ¼ö ÀÖ´Ù´Â °ÍÀÔ´Ï´Ù. ´Ù¸¥ ¸ñÀûÀ¸·Î °°Àº º¯¼ö¸¦ µÎ °³ ÀÌ»óÀÇ ÇÖÅ°¿¡¼­ »ç¿ëÇÒ ¶§ Ãæµ¹À» ÇÇÇÒ ¼ö ÀÖ½À´Ï´Ù. ¶ÇÇÑ ÀÚü-¹®¼­È­ ÇÖÅ°¸¦ ±ÇÀåÇÕ´Ï´Ù. À§ÀÇ Äڵ忡¼­ ÇÔ¼ö À̸§ ÀÚü°¡ ÇÖÅ°¸¦ ¼³¸íÇÏ°í ÀÖ½À´Ï´Ù.

+

+ÇÖÅ° ¸í·É¾î¸¦ »ç¿ëÇصµ ÇÔ¼ö³ª ÇÔ¼ö °´Ã¼¸¦ ÇÖÅ°¿¡ ÇÒ´çÇÒ ¼ö ÀÖ½À´Ï´Ù.

+ + + diff --git a/src/docs/Hotstrings.htm b/src/docs/Hotstrings.htm new file mode 100644 index 0000000..1535dcf --- /dev/null +++ b/src/docs/Hotstrings.htm @@ -0,0 +1,229 @@ + + +Hotstrings and Auto-replace (similar to AutoText and AutoCorrect) + + + + + + + + + +

ÇÖ½ºÆ®¸µ ±×¸®°í ÀÚµ¿-±³Ã¼

+ +

¼Ò°³¿Í °£´ÜÇÑ ¿¹Á¦

+

ÇÖ½ºÆ®¸µÀº ÁַΠŸÀÚÇÏ´Â µ¿¾È ¾à¾î¸¦ È®´ëÇÏ´Â µ¥ »ç¿ëµÇÁö¸¸ (ÀÚµ¿-±³Ã¼), ½ºÅ©¸³Æ® ÇàÀ§¸¦ ±âµ¿½ÃÅ°´Â µ¥¿¡µµ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. ÀÌ·± °üÁ¡¿¡¼­ ÇÖÅ°¿Í ºñ½ÁÇÕ´Ï´Ù. ÀüÇüÀûÀ¸·Î Çϳª ÀÌ»óÀÇ ¹®ÀÚ·Î (Áï, ¹®ÀÚ¿­·Î) ±¸¼ºµÈ´Ù´Â Á¡ÀÌ ´Ù¸¦ »ÓÀÔ´Ï´Ù.

+

+ÇÖ½ºÆ®¸µÀ» Á¤ÀÇÇÏ·Á¸é, ´ÙÀ½ ¿¹Á¦¿Í °°ÀÌ ÃË¹ß ¾à¾î¸¦ ÇÑ ½ÖÀÇ ½ÖÁ¡À¸·Î µÎ¸¨´Ï´Ù:

+
::btw::by the way
+

+À§ÀÇ ¿¹Á¦¿¡¼­, ¾à¾î btw´Â ŸÀڵǴ µ¿¾È ÀÚµ¿À¸·Î "by the way"·Î ±³Ã¼µË´Ï´Ù (±×·¸Áö¸¸, ±âº»ÀûÀ¸·Î btw¸¦ ŸÀÚÇÑ ÈÄ¿¡ ½ºÆäÀ̽º, ¸¶Ä§Ç¥, ¶Ç´Â ¿£ÅÍ °°Àº Á¾·á ¹®ÀÚ¸¦ ŸÀÚÇØ¾ß ÇÕ´Ï´Ù).

+

+À§ÀÇ "by the way" ¿¹Á¦´Â ÀÚµ¿-±³Ã¼ ÇÖ½ºÆ®¸µÀ̶ó°í ÇÕ´Ï´Ù. ¿Ö³ÄÇϸé ŸÀÚµÈ ÅؽºÆ®°¡ ÀÚµ¿À¸·Î Áö¿öÁö°í µÎ ¹ø° ½ÖÁ¡ ½Ö µÚ¿¡ ÁöÁ¤µÈ ¹®ÀÚ¿­·Î ±³Ã¼µÇ±â ¶§¹®ÀÔ´Ï´Ù. ´ëÁ¶ÀûÀ¸·Î, ÇÖ½ºÆ®¸µÀº ´ÙÀ½ ¿¹Á¦¿Í °°ÀÌ ¸ÂÃã ÇàÀ§¸¦ ¼öÇàÇϵµ·Ï Á¤ÀÇÇÒ ¼öµµ ÀÖ½À´Ï´Ù. ¸í·É¾î°¡ ¹Ýµå½Ã ÇÖ½ºÆ®¸µ ¾Æ·¡¿¡ ³ªÅ¸³ª¾ß ÇÔ¿¡ À¯ÀÇÇϽʽÿÀ:

+
::btw::
+MsgBox "btw"¸¦ ŸÀÚÇß½À´Ï´Ù.
+return
+
+:*:]d::  ; ÀÌ ÇÖ½ºÆ®¸µÀº ¾Æ·¡ÀÇ ¸í·É¾î¸¦ ÅëÇÏ¿© "]d"¸¦ ÇöÀç ³¯Â¥¿Í ½Ã°£À¸·Î ±³Ã¼ÇÕ´Ï´Ù.
+FormatTime, CurrentDateTime,, M/d/yyyy h:mm tt  ; ´ë·« ´ÙÀ½°ú °°ÀÌ º¸ÀÏ °ÍÀÔ´Ï´Ù: 9/1/2005 3:53 PM
+SendInput %CurrentDateTime%
+return
+

+À§ÀÇ µÎ ¿¹Á¦°¡ ÀÚµ¿-±³Ã¼ ÇÖ½ºÆ®¸µÀÌ ¾Æ´Ô¿¡µµ ºÒ±¸ÇÏ°í, ¿©·¯ºÐÀÌ Å¸ÀÚÇÑ ¾à¾î´Â ±âº»À¸·Î Áö¿öÁý´Ï´Ù. ÀÚµ¿À¸·Î ¹é½ºÆäÀ̽º·Î Áö¿ì´Â °ÍÀε¥, ÀÌ ÇàÀ§´Â b0 ¿É¼ÇÀ¸·Î ²ø ¼ö ÀÖ½À´Ï´Ù.

+ +

Á¾·á ¹®ÀÚ

+

+º°Ç¥ ¿É¼ÇÀÌ È¿°ú¸¦ ¹ßÈÖÇÏÁö ¾Ê´Â ÇÑ, ÇÖ½ºÆ®¸µÀÇ ¾à¾î µÚ¿¡ Á¾·á ¹®ÀÚ¸¦ ŸÀÚÇØ¾ß ÇàÀ§¸¦ Ã˹߽Ãų ¼ö ÀÖ½À´Ï´Ù. Á¾·á ¹®Àڴ óÀ½¿¡ ´ÙÀ½À¸·Î ±¸¼ºµË´Ï´Ù: -()[]{}':;"/\,.?!`n `t ( `nÀº ¿£ÅÍÀÌ°í, `t´Â ÅÇ, ±×¸®°í `n°ú `t »çÀÌ¿¡ Æò¹üÇÑ ½ºÆäÀ̽º°¡ ÀÖÀ½¿¡ ÁÖ¸ñÇϽʽÿÀ). ÀÌ ¹®ÀÚ ¼¼Æ®´Â ´ÙÀ½ ¿¹Á¦¿Í °°ÀÌ ÆíÁýÇØ ¹Ù²Ü ¼ö ÀÖ½À´Ï´Ù. ÀÌ·¸°Ô ÇÏ¸é ¸ðµç ÇÖ½ºÆ®¸µ¿¡ ´ëÇÏ¿© »õ·Î¿î Á¾·á ¹®ÀÚ°¡ ¼³Á¤µË´Ï´Ù. ±× ¾Æ·¡¿¡ ÀÖ´Â ÇÖÆ®¸µ¿¡¸¸ ¿µÇâÀ» ¹ÌÄ¡´Â °ÍÀÌ ¾Æ´Õ´Ï´Ù:

+
#Hotstring EndChars -()[]{}:;'"/\,.?!`n `t
+ +

¿É¼Ç

+

+ÇÖ½ºÆ®¸µÀÇ ±âº» ÇàÀ§´Â µÎ °¡Áö ¹æ¹ýÀ¸·Î ¹Ù²Ü ¼ö ÀÖ½À´Ï´Ù:

+
    +
  1. #Hotstring Áö½Ã¾î·Î ¹Ù²Ü ¼ö ÀÖ½À´Ï´Ù. ÀÌ Áö½Ã¾î ¾Æ·¡ÂÊ¿¡ ÀÖ´Â ¸ðµç ÇÖ½ºÆ®¸µ¿¡ ¹°¸®ÀûÀ¸·Î ¿µÇâÀ» ¹ÌĨ´Ï´Ù. ´ÙÀ½ ¿¹Á¦´Â C¿Í R ¿É¼Ç È¿°ú¸¦ ÁÝ´Ï´Ù: #Hotstring c r.
  2. +
  3. ÇÖ½ºÆ®¸µÀÇ Ã¹ ¹ø° ½ÖÁ¡ ½Ö »çÀÌ¿¡ ¿É¼ÇÀ» ¹èÄ¡ÇÏ´Â ¹æ¹ýÀÌ ÀÖ½À´Ï´Ù. ´ÙÀ½ ¿¹Á¦´Â ÇÖ½ºÆ®¸µ Çϳª¿¡¸¸ C¿Í * ¿É¼ÇÀÌ È¿°ú°¡ ÀÖ½À´Ï´Ù:
    + :c*:j@::john@somedomain.com ; ´ë¼Ò¹®ÀÚ¸¦ ±¸ºÐÇÕ´Ï´Ù. ±×¸®°í "Á¾·á ¹®ÀÚ°¡ ÇÊ¿äÇÏÁö ¾Ê½À´Ï´Ù"..
  4. +
+

¾Æ·¡ÀÇ ¸®½ºÆ®´Â °¢ ¿É¼ÇÀ» ±â¼úÇÕ´Ï´Ù. À§ÀÇ ¹æ¹ýÀ» »ç¿ëÇÏ´Â Çϳª ÀÌ»óÀÇ ¿É¼ÇÀ» ÁöÁ¤Çϸé, ½ºÆäÀ̽º¸¦ ¼±ÅÃÀûÀ¸·Î ±× »çÀÌ¿¡ Æ÷ÇÔÇÒ ¼ö ÀÖ½À´Ï´Ù.
+
+* (º°Ç¥): ÇÖ½ºÆ®¸µÀ» Ã˹߽ÃÅ°´Â µ¥ Á¾·á ¹®ÀÚ (¿¹, ½ºÆäÀ̽º, ¸¶Ä§Ç¥, ¶Ç´Â ¿£ÅÍ)´Â ÇÊ¿äÇÏÁö ¾Ê½À´Ï´Ù. ¿¹¸¦ µé¾î:

+
:*:j@::jsmith@somedomain.com
+

+À§ÀÇ ¿¹Á¦´Â @ ¹®ÀÚ¸¦ ŸÀÚÇÏ´Â ¼ø°£ ±×ÀÇ ±³Ã¼ ¹®ÀÚ¿­À» Àü¼ÛÇÕ´Ï´Ù. #Hotstring Áö½Ã¾î¸¦ »ç¿ëÇÒ ¶§, *0À» »ç¿ëÇϸé ÀÌ ¿É¼ÇÀ» ²ø ¼ö ÀÖ½À´Ï´Ù.

+

+? (¹°À½Ç¥): ÇÖ½ºÆ®¸µÀÌ ´Ù¸¥ ´Ü¾î ¾È¿¡ À־ Ã˹ߵ˴ϴÙ; Áï, ¹Ù·Î ¾Õ¿¡ ŸÀÚµÈ ¹®ÀÚ°¡ ¾ËÆĺªÀ̳ª ¼ýÀÚÀÏ ¶§ Ã˹ߵ˴ϴÙ. ¿¹¸¦ µé¾î, :?:al::airlineÀÌ ÇÖ½ºÆ®¸µÀ̶ó¸é, "practical "À» ŸÀÚÇϸé "practicairline "À¸·Î ±³Ã¼µË´Ï´Ù. ?0À» »ç¿ëÇϸé ÀÌ ¿É¼ÇÀ» ²ø ¼ö ÀÖ½À´Ï´Ù.

+

+B0 (B ´ÙÀ½¿¡ 0): ¿©·¯ºÐÀÌ Å¸ÀÚÇÑ ¾à¾î¸¦ Áö¿ì±â À§ÇØ ÀÚµ¿ ¹é½ºÆäÀ̽º Áö¿ì±â°¡ ÀϾÁö ¾Ê½À´Ï´Ù. ±×³É B¸¸ »ç¿ëÇÏ¸é ¹é½ºÆäÀ̽ÌÀÌ ¹Ù·Î ÀÌÀü¿¡ ²¨Áø °÷ ´ÙÀ½ºÎÅÍ ÄÑÁý´Ï´Ù. ½ºÅ©¸³Æ®µµ ½º½º·Î ¹é½ºÆäÀ̽ÌÀ» ÇÒ ¼ö ÀÖ½À´Ï´Ù. {bs 5}¿Í °°ÀÌ Çϸé 5 °³ÀÇ ¹é½ºÆäÀ̽º¸¦ Àü¼ÛÇÕ´Ï´Ù. ºñ½ÁÇÏ°Ô, ¿ÞÂÊ-È­»ìÇ¥ Å°´Â {left 5}¿Í °°ÀÌ Àü¼ÛÇÕ´Ï´Ù. ¿¹¸¦ µé¾î, ´ÙÀ½ ÇÖ½ºÆ®¸µÀº "<em></em>"À» »ý»êÇÏ°í ij·µÀ» 5 ÀÚ¸® ¿ÞÂÊÀ¸·Î À̵¿½Ãŵ´Ï´Ù (±×·¡¼­ ÅÂ±× »çÀÌ¿¡ ÀÖ°Ô µË´Ï´Ù):

+ +
:*b0:<em>::</em>{left 5}
+

+C: ´ë¼Ò¹®ÀÚ¸¦ ±¸ºÐÇÕ´Ï´Ù: ¾à¾î¸¦ ŸÀÚÇÒ ¶§, ½ºÅ©¸³Æ®¿¡ Á¤ÀÇµÈ ´ë¼Ò¹®ÀÚ¿¡ Á¤È®ÇÏ°Ô ÀÏÄ¡ÇØ¾ß ÇÕ´Ï´Ù. C0À» »ç¿ëÇÏ¸é ´ë¼Ò¹®ÀÚ ±¸ºÐÀ» ²ü´Ï´Ù.

+

+C1: ŸÀÚµÈ ´ë¼Ò¹®ÀÚ¸¦ µû¸£Áö ¾Ê½À´Ï´Ù. ÀÌ ¿É¼ÇÀ» »ç¿ëÇϸé ÀÚµ¿-±³Ã¼ ÇÖ½ºÆ®¸µÀ» ´ë¼Ò¹®ÀÚ¸¦ ±¸ºÐÇϵµ·Ï ¸¸µé ¼ö ÀÖ°í ½ÇÁ¦·Î ŸÀÚÇÑ ¹®ÀÚÀÇ ´ë¼Ò¹®ÀÚ ±Ô°ÝÀ» µû¸£Áö ¾Êµµ·Ï ¸¸µé ¼ö ÀÖ½À´Ï´Ù. ´ë¼Ò¹®ÀÚ ±Ô°ÝÀ» ÁؼöÇÏ´Â ÇÖ½ºÆ®¸µÀº (ÀÌ°ÍÀÌ ±âº»°ª) ¿©·¯ºÐÀÌ ¾à¾î¸¦ ¸ðµÎ ´ë¹®ÀڷΠŸÀÚÇß´Ù¸é ±³Ã¼ ÅؽºÆ®µµ ¿ª½Ã ¸ðµÎ ´ë¹®ÀÚ·Î »ý»êÇÕ´Ï´Ù. ù ¹ø° ¹®ÀÚ¸¸ ´ë¹®ÀڷΠŸÀÚÇß´Ù¸é, ±³Ã¼ÀÇ Ã¹ ¹®ÀÚµµ ¿ª½Ã ´ë¹®ÀÚ°¡ µË´Ï´Ù. ´Ù¸¥ ¹æ½ÄÀ¸·Î ´ë¼Ò¹®ÀÚ¸¦ ŸÀÚÇϸé, ±³Ã¼ ¹®ÀÚ¿­ ¿ª½Ã Á¤È®ÇÏ°Ô Á¤ÀÇµÈ ´ë·Î Àü¼ÛµË´Ï´Ù. #Hotstring Áö½Ã¾î¸¦ »ç¿ëÇÒ ¶§, C0À» »ç¿ëÇϸé ÀÌ ¿É¼ÇÀ» ²ø ¼ö ÀÖ½À´Ï´Ù. ÇÖ½ºÆ®¸µÀÌ ´Ù½Ã ´ë¼Ò¹®ÀÚ¸¦ ÁؼöÇϵµ·Ï ¸¸µì´Ï´Ù.

+

+Kn: Å°-Áö¿¬ ½Ã°£: ÀÌ ¿É¼ÇÀº ÀÚÁÖ »ç¿ëµÇÁö ¾Ê½À´Ï´Ù. ÀÚµ¿-¹é½ºÆäÀ̽ÌÀ̳ª ÀÚµ¿-±³Ã¼¿¡ ÀÇÇÏ¿© »ý»êµÈ Å°´­¸² »çÀÌ¿¡ Áö¿¬ ½Ã°£À» ¼³Á¤ÇÕ´Ï´Ù. »õ Áö¿¬ ½Ã°£À» n¿¡ ÁöÁ¤ÇÕ´Ï´Ù; ¿¹¸¦ µé¾î, k10À¸·Î ÁöÁ¤Çϸé 10ms Áö¿¬µÇ°í k-1À̸é Áö¿¬ÀÌ ¾ø½À´Ï´Ù. ÀÌ ¿É¼ÇÀÇ Á¤È®ÇÑ ÇàÀ§´Â ¾î¶² Àü¼Û ¸ðµå°¡ ÀÛµ¿ ÁßÀΰ¡¿¡ µû¶ó ´Þ¶óÁý´Ï´Ù:

+ +

O: ÀÚµ¿ ±³Ã¼°¡ »ý»êµÉ ¶§ ÀÚµ¿-±³Ã¼ ÇÖ½ºÆ®¸µÀÇ Á¾·á ¹®ÀÚ¸¦ »ý·«ÇÕ´Ï´Ù. ÀÌ°ÍÀº ¿©ÀüÈ÷ Á¾·á ¹®ÀÚ¸¦ ¿ä±¸ÇÔÀ¸·Î½á ÇÖ½ºÆ®¸µÀ» ¸í·áÇÏ°Ô À¯ÁöÇϱ⸦ ¿øÇÏÁö¸¸, ½ÇÁ¦·Î´Â Á¾·á ¹®ÀÚ°¡ È­¸é¿¡ ³ªÅ¸³ªÁö ¾Ê±â¸¦ ¹Ù¶ö ¶§ À¯¿ëÇÕ´Ï´Ù. +¿¹¸¦ µé¾î, :o:ar::aristocratÀÌ ÇÖ½ºÆ®¸µÀ̶ó¸é, "ar"¸¦ ŸÀÚÇÑ ´ÙÀ½ ½ºÆäÀ̽º¹Ù¸¦ ŸÀÚÇÏ¸é µÚ¿¡ ½ºÆäÀ̽º ¾øÀÌ "aristocrat"À¸·Î ±³Ã¼µË´Ï´Ù. ÀÌ·¸°Ô ÇÏ¸é ¹é½ºÆäÀ̽º¸¦ ´©¸¦ ÇÊ¿ä ¾øÀÌ ´Ü¾î¸¦ º¹¼öÇüÀ̳ª ¼ÒÀ¯ÇüÀ¸·Î ¸¸µé ¼ö ÀÖ½À´Ï´Ù. +O0 (¹®ÀÚ O ´ÙÀ½¿¡ ¼ýÀÚ 0)À» »ç¿ëÇϸé ÀÌ ¿É¼ÇÀ» ²ø ¼ö ÀÖ½À´Ï´Ù.

+

+Pn: ÇÖ½ºÆ®¸µÀÇ ¿ì¼±¼øÀ§ (¿¹, P1). ÀÚÁÖ »ç¿ëµÇÁö ¾Ê´Â ÀÌ ¿É¼ÇÀº ÀÚµ¿-±³Ã¼ ÇÖ½ºÆ®¸µ¿¡ ¾Æ¹« È¿°ú°¡ ¾ø½À´Ï´Ù.

+

+R: ±³Ã¼ ÅؽºÆ®¸¦ ³¯ »óÅ·ΠÀü¼ÛÇÕ´Ï´Ù; Áï, {Enter}¸¦ ENTER Å°´­¸², ^c¸¦ Control-C, µîµîÀ¸·Î º¯È¯ÇÏÁö ¾Ê°í º¸ÀÌ´Â ±×´ë·Î Àü¼ÛÇÕ´Ï´Ù. ÀÌ ¿É¼ÇÀº °è¼Ó ¼½¼ÇÀ» °¡Áø ÇÖ½ºÆ®¸µ¿¡ ÀÚµ¿À¸·Î È¿°ú¸¦ ¹ßÈÖÇÕ´Ï´Ù. R0À¸·Î ÀÌ ¿É¼ÇÀ» ²ø ¼ö ÀÖ½À´Ï´Ù.

+

+SI ¶Ç´Â SP ¶Ç´Â SE [v1.0.43+]: ÀÚµ¿-±³Ã¼ ÇÖ½ºÆ®¸µÀÌ Å°´­¸²À» Àü¼ÛÇÏ´Â µ¥ »ç¿ëÇÒ ¹æ¹ýÀ» ¼³Á¤ÇÕ´Ï´Ù. ÀÌ ¿É¼ÇµéÀº ¼­·Î ¹èŸÀûÀÔ´Ï´Ù: ¿ÀÁ÷ ÇÑ ¹ø¿¡ Çϳª¾¿¸¸ È¿°ú°¡ ÀÖ½À´Ï´Ù. ´ÙÀ½Àº °¢ ¿É¼ÇÀ» ±â¼úÇÕ´Ï´Ù:

+ +

À§ÀÇ ¿É¼Ç Áß ¾î´À °Íµµ »ç¿ëµÇÁö ¾ÊÀ¸¸é, ±âº» ¸ðµå´Â v1.0.43 ÀÌÈÄÀÇ SendInputÀÔ´Ï´Ù. ±×·¸Áö¸¸, SI ¿É¼Ç°ú ´Ù¸£°Ô, SendInputÀ» »ç¿ëÇÒ ¼ö ¾øÀ» ¶§ SendPlay ´ë½Å¿¡ SendEventÀ» »ç¿ëÇÕ´Ï´Ù.

+

+Z: ÀÚÁÖ »ç¿ëµÇÁö ¾Ê´Â ÀÌ ¿É¼ÇÀº ÇÖ½ºÆ®¸µÀÌ ÃË¹ßµÈ ´ÙÀ½ ÇÖ½ºÆ®¸µ ÀνÄÀÚ¸¦ Àç¼³Á¤ÇÕ´Ï´Ù. ´Ù¸¥ ¸»·Î, ½ºÅ©¸³Æ®´Â ÀÌÀü¿¡ ŸÀÚÇÑ ¸ðµç °ÍµéÀ» ´Ù ÀØ¾î ¹ö¸®°í ¿ÏÀüÈ÷ »õ·Î¿î ¹®ÀÚ¿­À» ±â´Ù¸®±â ½ÃÀÛÇÕ´Ï´Ù. ÀÌ·¸°Ô ÇÏ¸é ¿øÇÏÁö ¾Ê´Â ÇÖ½ºÆ®¸µÀÇ Ã˹ßÀ» ¸·À» ¼ö ÀÖ½À´Ï´Ù. ¿¹½Ã¸¦ À§ÇØ, ´ÙÀ½ ÇÖ½ºÆ®¸µÀ» ¿¬±¸ÇØ º¾½Ã´Ù:

+
:b0*?:11::
+SendInput xx
+return
+

+À§ ¿¹Á¦´Â Z ¿É¼ÇÀÌ ¾ø±â ¶§¹®¿¡, 111À» ŸÀÚÇϸé (¿¬¼ÓÀ¸·Î 1 ¼¼ °³) ÇÖ½ºÆ®¸µÀÌ µÎ ¹ø Ã˹ߵ˴ϴÙ. ¿Ö³ÄÇÏ¸é °¡¿îµ¥ 1ÀÌ Ã¹ Ã˹ßÀÇ ¸¶Áö¸· ¹®ÀÚÀÌ°í ¶ÇÇÑ µÎ ¹ø° Ã˹ßÀÇ Ã¹ ¹®ÀÚÀ̱⠶§¹®ÀÔ´Ï´Ù. ±âÈ£ Z¸¦ b0 ¾Õ¿¡ Ãß°¡Çϸé, 1À» ¼¼ °³ ´ë½Å¿¡ ³× °³¸¦ ŸÀÚÇØ¾ß ÇÖ½ºÆ®¸µÀÌ µÎ ¹ø Ã˹ߵ˴ϴÙ. Z0À» »ç¿ëÇϸé ÀÌ ¿É¼ÇÀ» ²ø ¼ö ÀÖ½À´Ï´Ù.

+ +

±â´Ù¶õ ±³Ã¼

+

+±â´Ù¶õ ÅؽºÆ® ±³Ã¼¸¦ »ý»êÇÏ´Â ÇÖ½ºÆ®¸µÀº °è¼Ó ¼½¼ÇÀ» »ç¿ëÇÏ¸é ´õ Àбâ ÁÁ°Ô ´õ °ü¸®Çϱ⠽±°Ô ¸¸µé ¼ö ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î:

+
::text1::
+(
+»ó´Ü°ú ÇÏ´ÜÀÇ ¹Ý°ýÈ£ »çÀÌ¿¡ ÀÖ´Â ÅؽºÆ®´Â ¹«¾ùÀÌµç ¹®ÀÚ ±×´ë·Î Ãë±ÞµË´Ï´Ù
+¿©±â¿¡´Â ½°Ç¥¿Í ÆÛ¼¾Æ® »çÀεµ ¿¹¿Ü°¡ ¾Æ´Õ´Ï´Ù.
+±âº»°ªÀ¸·Î, Çϵå ij¸®Áö ¸®ÅÏ(¿£ÅÍ)ÀÌ ¾Õ ÁÙ°ú ÀÌ ÁÙ »çÀÌ¿¡ À־ ¿ª½Ã À¯ÁöµË´Ï´Ù.
+    ±âº» °ªÀ¸·Î, ÀÌ ÁÙÀÇ ¿ÞÂÊ µé¿©¾²±â (ÅÇ)µµ À¯ÁöµË´Ï´Ù.
+
+ÀÌ ±âº» ÇàÀ§¸¦ ¹Ù²Ù´Â ¹æ¹ýÀº °è¼Ó ¼½¼ÇÀ» ÂüÁ¶ÇϽʽÿÀ.
+)
+

+°è¼Ó ¼½¼ÇÀÌ ÀÖÀ¸¸é ÇÖ½ºÆ®¸µµµ ¿ª½Ã ³¯ ¸ðµå°¡ ±âº»°ªÀÌ µË´Ï´Ù. ÀÌ Æ¯º°ÇÑ ±âº»°ªÀ» ¿À¹ö¶óÀ̵åÇÏ´Â À¯ÀÏÇÑ ¹æ¹ýÀº °è¼Ó ¼½¼ÇÀ» °¡Áø °¢ ÇÖ½ºÆ®¸µ ¾È¿¡ r0 ¿É¼ÇÀ» ÁöÁ¤ÇÏ´Â °ÍÀÔ´Ï´Ù (¿¹, :r0:text1::).

+ +

¹®¸Æ-°¨Áö ÇÖ½ºÆ®¸µ

+

+#IfWinActive/Exist Áö½Ã¾î¸¦ »ç¿ëÇÏ¸é ¼±ÅÃµÈ ÇÖ½ºÆ®¸µÀÌ ¹®¸ÆÀ» °¨ÁöÇÏ°Ô ¸¸µé ¼ö ÀÖ½À´Ï´Ù. ¹®¸Æ °¨Áö ÇÖ½ºÆ®¸µÀº È°¼ºÃ¢ÀÇ À¯Çü¿¡ µû¶ó ´Ù¸£°Ô ±³Ã¼Çϰųª, ´Ù¸£°Ô ÇàÀ§Çϰųª, ¶Ç´Â ¾Æ¹«°Íµµ ÇÏÁö ¾Ê½À´Ï´Ù. ¿¹¸¦ µé¾î:

+
#IfWinActive ahk_class Notepad
+::btw::ÀÌ ±³Ã¼ ÅؽºÆ®´Â ³ëÆ®Æе忡¸¸ ³ªÅ¸³³´Ï´Ù.
+#IfWinActive
+::btw::ÀÌ ±³Ã¼ ÅؽºÆ®´Â ³ëÆ®Æе尡 ¾Æ´Ñ â¿¡ ³ªÅ¸³³´Ï´Ù.
+ +

AutoCorrect

+

+´ÙÀ½ ½ºÅ©¸³Æ®´Â ÇÖ½ºÆ®¸µÀ» »ç¿ëÇØ ´ë·« 4700 Á¤µµÀÇ ¿µ¾î öÀÚ ¿À·ù¸¦ ¹Ù·Î¹Ù·Î ±³Á¤ÇÕ´Ï´Ù. Win+H ÇÖÅ°°¡ Æ÷ÇԵǾî À־ ½±°Ô ´õ ¸¹Àº öÀÚ¸¦ Ãß°¡ÇÒ ¼ö ÀÖ½À´Ï´Ù:

+

³»·Á¹Þ±â: AutoCorrect.ahk (127 KB)

+

ÀúÀÚ: Jim Biancolo and Wikipedia's Lists of Common Misspellings

+ +

³íÆò

+

+%MyVar%¿Í °°Àº º¯¼ö ÂüÁ¶´Â ÇöÀç ÀÚµ¿ ±³Ã¼ ÅؽºÆ® ¾È¿¡¼­ Áö¿øÇÏÁö ¾Ê½À´Ï´Ù. À̸¦ ÇØ°áÇϱâ À§ÇØ, auto-replace °°Àº ÇÖ½ºÆ®¸µÀ» ¸¸µéÁö ¸¶½Ê½Ã¿À. + +´ë½Å¿¡, ¾à¾î ¹Ù·Î ¾Æ·¡¿¡ SendInput ¸í·É¾î¸¦ »ç¿ëÇÏ°í, µÚÀ̾ ´Ü¾î Return¸¸ ÀÖ´Â ÁÙÀ» ¹èÄ¡ÇϽʽÿÀ.

+

+±³Ã¼ÇÑ µÚ¿¡ µû·Î ´õ ½ºÆäÀ̽º³ª ÅÇÀ» Àü¼ÛÇÏ·Á¸é, ½ºÆäÀ̽º³ª ÅÇÀ» ±³Ã¼ µÚ¿¡ Æ÷ÇÔÇÏ°í ¸¶Áö¸· ¹®ÀÚ¸¦ ¾×¼¾Æ®/¹éƽ(`)À¸·Î ¸¸µå½Ê½Ã¿À. ¿¹¸¦ µé¾î:

+
:*:btw::By the way `
+

+ÁÂ/¿ì ¹öÆ°À» Ŭ¸¯Çϸé ÇÖ½ºÆ®¸µ ÀνÄÀÚ°¡ ¸®¼ÂµË´Ï´Ù. ´Ù¸¥ ¸»·Î, ½ºÅ©¸³Æ®´Â ÀÌÀü¿¡ ŸÀÚµÈ °ÍµéÀ» ¸ðµÎ ÀØ¾î ¹ö¸®°í ÀüÀûÀ¸·Î »õ·Î¿î ÇÖ½ºÆ®¸µÀ» ±â´Ù¸³´Ï´Ù (ÀÌ°ÍÀÌ ¸¶À½¿¡ µéÁö ¾ÊÀ¸¸é, , ´ÙÀ½ ÁÙ #Hotstring NoMouse¸¦ ½ºÅ©¸³Æ®¿¡ ÁöÁ¤ÇϽʽÿÀ). ÀÌ "¸¶¿ì½º Ŭ¸¯¿¡ ¸®¼Â" ÇàÀ§°¡ ±âº»°ªÀÔ´Ï´Ù. ¿Ö³ÄÇÏ¸é °¢ Ŭ¸¯Àº ÀüÇüÀûÀ¸·Î ÅؽºÆ® »ðÀÔ À§Ä¡¸¦ À̵¿½ÃÅ°°Å³ª (ij·µ) Å°º¸µå ÃÊÁ¡À» »õ·Î¿î ÄÜÆ®·Ñ/Çʵå·Î ¼³Á¤Çϱ⠶§¹®ÀÔ´Ï´Ù. ±×·± °æ¿ì, º¸Åë ´ÙÀ½ÀÌ ¹Ù¶÷Á÷ÇÕ´Ï´Ù: +

    +
  1. ¹°À½Ç¥ ¿É¼ÇÀÌ ¾ø´õ¶óµµ ÇÖ½ºÆ®¸µÀ» Ã˹߽Ãŵ´Ï´Ù; +
  2. ¸¶¿ì½º¸¦ Ŭ¸¯ÇÑ ÈÄ¿¡ ŸÀÚÇÑ °ÍÀÌ ¿ì¹ßÀûÀ¸·Î ÀÌÀü¿¡ ŸÀÚÇÑ °Í°ú ´õºÒ¾î À¯È¿ÇÑ ¾à¾î¸¦ Çü¼ºÇÒ ¶§ Ã˹ßÀ» ¸·½À´Ï´Ù +
+

+

+³»Àå º¯¼ö A_EndChar¿¡ Á¾·á ¹®ÀÚ°¡ µé¾î ÀÖ½À´Ï´Ù. ŸÀÚÇÏ¸é °¡Àå ÃÖ±ÙÀÇ ÀÚµ¿-±³Ã¼µÇÁö-¾ÊÀº ÇÖ½º¸µÀÌ Ã˹ߵ˴ϴÙ. (* ¿É¼Ç ¶§¹®¿¡) Á¾·á ¹®ÀÚ°¡ ÇÊ¿äÇÏÁö ¾ÊÀ¸¸é, ºñ¾î ÀÖ½À´Ï´Ù. A_EndChar´Â Send ¸í·É¾î¸¦ »ç¿ëÇÏ´Â ÇÖ½ºÆ®¸µÀ» ¸¸µé ¶§ À¯¿ëÇÕ´Ï´Ù. ¶Ç´Â ±×ÀÇ ÇàÀ§°¡ ŸÀÚµÈ Á¾·á ¹®ÀÚ¿¡ µû¶ó ¹Ù²î¾î¾ß ÇÏ´Â ÇÖ½ºÆ®¸µÀ» ¸¸µé ¶§ À¯¿ëÇÕ´Ï´Ù. +Á¾·á ¹®ÀÚ ÀÚü¸¦ º¸³»·Á¸é, SendRaw %A_EndChar%¸¦ »ç¿ëÇÕ´Ï´Ù (SendRaw°¡ »ç¿ëµÈ ÀÌÀ¯´Â !{}¿Í °°Àº ¹®ÀÚµéÀÌ º¸ÅëÀÇ Send ¸í·É¾î·Î´Â ¿Ã¹Ù¸£°Ô Àü¼ÛµÇÁö ¾Ê±â ¶§¹®ÀÔ´Ï´Ù).

+

+½°Ç¥, ÆÛ¼¾Æ® »çÀÎ, ±×¸®°í ´ÜÀÏ-½ÖÁ¡Àº ÇÖ½ºÆ®¸µ Á¤ÀÇ ¾È¿¡¼­ ÇǽŠ½Ãų ÇÊ¿ä°¡ ¾øÁö¸¸, ¿ÞÂÊ¿¡ ½ºÆäÀ̽º³ª ÅÇÀÌ ÀÖ´Â ¹éƽ°ú ½ÖÁ¡Àº ÇǽŽÃÄÑ¾ß ÇÕ´Ï´Ù. ¿ÏÀüÇÑ ¸ñ·ÏÀº ÇǽŠ¿¬¼Ó¿­À» ÂüÁ¶ÇϽʽÿÀ.

+

+ {Enter}¿Í °°Àº Send ¸í·É¾îÀÇ Æ¯¼ö ¹®ÀÚµéÀº (³¯ ¿É¼ÇÀÌ »ç¿ëµÇÁö ¾Ê´Â ÇÑ) ÅؽºÆ® ÀÚµ¿-±³Ã¼¿¡ Áö¿øµÇÁö¸¸, ÇÖ½ºÆ®¸µ ¾à¾î ÀÚü´Â À̸¦ »ç¿ëÇÏÁö ¾Ê½À´Ï´Ù. ´ë½Å¿¡, `n¸¦ ENTER Å°¿¡ ±×¸®°í `t¸¦ (¶Ç´Â ¹®ÀÚ ±×´ë·ÎÀÇ Åǹ®ÀÚ) TAB¿¡ ÁöÁ¤ÇϽʽÿÀ (¿ÏÀüÇÑ ¸ñ·ÏÀº ÇǽŠ¿¬¼Ó¿­À» ÂüÁ¶ÇϽʽÿÀ). ¿¹¸¦ µé¾î, ´ÙÀ½ ÇÖ½ºÆ®¸µ :*:ab`t::Àº "ab"¸¦ ŸÀÚÇÏ°í ¹Ù·Î ÅÇÀÌ µû¶ó¿À¸é Ã˹ߵ˴ϴÙ.

+

+½ºÆäÀ̽º¿Í ÅÇÀº ÇÖ½ºÆ®¸µ Á¤ÀÇ ¾È¿¡¼­ ¹®ÀÚ ±×´ë·Î Ãë±ÞµË´Ï´Ù. ¿¹¸¦ µé¾î, ´ÙÀ½Àº µÎ °³ÀÇ ´Ù¸¥ °á°ú¸¦ »ý»êÇÕ´Ï´Ù: ::btw::by the way ±×¸®°í ::btw:: by the way.

+

+ÇÖ½ºÆ®¸µ ¾à¾î´Â 40 ¹®ÀÚ¸¦ ³ÑÀ» ¼ö ¾ø½À´Ï´Ù. ÀÌ ±æÀ̸¦ ÃÊ°úÇϸé ÇÁ·Î±×·¥Àº °æ°íÇÒ °ÍÀÔ´Ï´Ù. ´ëÁ¶ÀûÀ¸·Î, ÇÖ½ºÆ®¸µ ±³Ã¼ ÅؽºÆ®ÀÇ ±æÀÌ´Â Àü¼Û ¸ðµå°¡ ±âº»°ªÀÎ SendInputÀÏ ¶§ ´ë·« 5000 ¹®ÀÚ·Î Á¦Çѵ˴ϴÙ. Á¦ÇÑÀ» 16,383 ¹®ÀÚ·Î Áõ°¡½ÃÅ°·Á¸é ´Ù¸¥ Àü¼Û ¸ðµåÁß Çϳª·Î ÀüȯÇÏ¸é µË´Ï´Ù. °Ô´Ù°¡, ÇÖ½ºÆ®¸µÀÇ ¸öü¿¡ SendPlay %MyVariable%¸¦ »ç¿ëÇÏ¸é ¹«Á¦ÇÑ ÅؽºÆ®µµ Àü¼ÛÇÒ ¼ö ÀÖ½À´Ï´Ù.

+

+ÇÖ½ºÆ®¸µÀÌ Á¤ÀÇµÈ ¼ø¼­¿¡ µû¶ó ¼­·Î °£¿¡ ¿ì¼± ¼øÀ§°¡ °áÁ¤µË´Ï´Ù. ´Ù¸¥ ¸»·Î, Çϳª ÀÌ»óÀÇ ÇÖ½ºÆ®¸µÀÌ ¿©·¯ºÐÀÌ Å¸ÀÚÇÑ °Í¿¡ ºÎÇÕÇϸé, Á¦ÀÏ ¸ÕÀú ³ª¿­µÈ °Í¸¸ È¿°ú¸¦ ¹ßÈÖÇÕ´Ï´Ù. °ü·Ã ÁÖÁ¦: ¹®¸Æ-°¨Áö ÇÖ½ºÆ®¸µ.

+

+¿©·¯ºÐÀÌ Å¸ÀÚÇÑ ¹é½ºÆäÀ̽º´Â ¸ðµÎ ÇÖ½ºÆ®¸µÀÇ °¨Áö¸¦ À§ÇÑ ¸ñÀû¿¡ °í·ÁµË´Ï´Ù. ±×·¸Áö¸¸, È­»ìÇ¥ Å°, PageUp, PageDown, Home, ±×¸®°í End Å°¸¦ »ç¿ëÇÏ¿© ÆíÁý±â ¾ÈÀ» Ç×ÇØÇϸé ÇÖ½ºÆ®¸µ ÀÎ½Ä Ã³¸®°¡ ¸®¼ÂµË´Ï´Ù. ´Ù¸¥ ¸»·Î, ÀüÀûÀ¸·Î »õ·Î¿î ÇÖ½ºÆ®¸µÀ» ±â´Ù¸®±â ½ÃÀÛÇÕ´Ï´Ù.

+

+ÇÖ½ºÆ®¸µÀº È°¼º âÀÌ Å°´­¸²À» ¹«½ÃÇÒ ¶§¿¡µµ ŸÀÚµÉ ¼ö ÀÖ½À´Ï´Ù. ´Ù¸¥ ¸»·Î, ÇÖ½ºÆ®¸µÀº ÃË¹ß ¾à¾î°¡ ÀüÇô º¸ÀÌÁö ¾ÊÀ»Áö¶óµµ ¿©ÀüÈ÷ Ã˹ߵ˴ϴÙ. °Ô´Ù°¡, ¿©ÀüÈ÷ ¹é½ºÆäÀ̽º Å°¸¦ ´­·¯ ÃÖ±Ù¿¡ ŸÀÚµÈ Å°´­¸²À» ¾ðµÎÇÒ ¼ö ÀÖ½À´Ï´Ù (±× È¿°ú°¡ º¸ÀÌÁö ¾ÊÀ»Áö¶óµµ ¸»ÀÔ´Ï´Ù).

+

+ÇÖ½ºÆ®¸µ ¶óº§¿¡ Gosub´Â Goto¸¦ Àû¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. ù ¹ø° ½ÖÁ¡ ½ÖÀ» (´Ù¸¥ ¿É¼Ç ½Éº¼À» Æ÷ÇÔÇÏ¿©) ±×ÀÌ À̸§ ¾Õ¿¡ Æ÷ÇÔÇÏ¸é µË´Ï´Ù. ¿¹¸¦ µé¾î: Gosub ::xyz. ±×·¸Áö¸¸, ÇÑ-ÁÙ (ÀÚµ¿-±³Ã¼) ÇÖ½ºÆ®¸µ¿¡´Â Á¡ÇÁÇغÁ¾ß ¾Æ¹« °Íµµ ÇÏÁö ¾Ê½À´Ï´Ù. ±â²¯ÇØ¾ß returnÀ» ½ÇÇàÇÏ´Â °ÍÀ¸·Î ³¡³³´Ï´Ù.

+

+ÇÖ½ºÆ®¸µÀº °üÁ¦°¡ µÇÁö ¾Ê°í º¸ÀÌÁö ¾Ê´Â Input ¸í·É¾î µ¿¾È¿¡´Â Ã˹ߵÇÁö ¾ÊÁö¸¸, º¸ÀÌ´Â InputÀº ÇÖ½ºÆ®¸µÀ» Ã˹߽Ãų ¼ö ÀÖ½À´Ï´Ù.

+

±âº»°ªÀ¸·Î, ÇÖ½ºÆ®¸µÀº AutoHotkey ½ºÅ©¸³Æ®°¡ »ý»êÇÏ´Â Å°´­¸²¿¡´Â Ã˹ߵÇÁö ¾Ê½À´Ï´Ù. ±×·¡¼­ ÇÖ½ºÆ®¸µ³¢¸® ¼­·Î Ã˹ßÇÏ´Â ¹«ÇÑ È¸µ¹ÀÌ¿¡ ºüÁú °¡´É¼ºÀ» ÇÇÇÕ´Ï´Ù. v1.1.06 ÀÌÈÄ ¹öÀü¿¡¼­ ÀÌ ÇàÀ§´Â #InputLevel°ú SendLevel·Î ÅëÁ¦ÇÒ ¼ö ÀÖ½À´Ï´Ù. ±×·¸Áö¸¸, ÀÚµ¿-±³Ã¼ ÇÖ½ºÆ®¸µÀº ¾ðÁ¦³ª ·¹º§ 0À¸·Î Àü¼ÛµÇ°í ±×·¯¹Ç·Î °¥°í¸® ÇÖÅ°³ª ÇÖ½ºÆ®¸µÀ» Ã˹ßÇÏÁö ¾Ê½À´Ï´Ù.

+

+¾î¶² ¸ñÀû¿¡´Â ÇÖ½ºÆ®¸µº¸´Ù Input ¸í·É¾î°¡ ´õ À¯¿¬ÇÕ´Ï´Ù. ¿¹¸¦ µé¾î, È°¼º â¿¡ Å°´­¸²À» °¨Ãâ ¼ö ÀÖ½À´Ï´Ù (°ÔÀÓ °°Àº °æ¿ì). ¶Ç Escape¿Í °°ÀÌ ¹®ÀÚ°¡-¾Æ´Ñ Á¾·á Å°¸¦ Áö¿øÇÕ´Ï´Ù.

+

+ÇÖ½ºÆ®¸µÀ» ´ã°í ÀÖ´Â ½ºÅ©¸³Æ®´Â Å°º¸µå °¥°í¸®¸¦ ÀÚµ¿À¸·Î »ç¿ëÇÕ´Ï´Ù.

+

+ÇÖ½ºÆ®¸µÀº ´ÙÀ½°ú °°Àº ¹æ½ÄÀ¸·Î ÇÖÅ°¿Í µ¿ÀÏÇÏ°Ô ÇàÀ§ÇÕ´Ï´Ù:

+ +

+¾Ë·ÁÁø ÇÑ°è: ÀÚ¹Ù ¾îÇø®ÄÉÀÌ¼Ç °°Àº ¾î¶² ½Ã½ºÅÛ¿¡¼­´Â ÇÖ½ºÆ®¸µÀÌ »ç¿ëÀÚ°¡ (µ¥µå Å°¸¦ ÅëÇÏ¿©) ¹æ¾ð ¹®ÀÚ¸¦ ŸÀÚÇÏÁö ¸øÇϵµ·Ï ¹æÇØÇÕ´Ï´Ù. À̸¦ ÇØ°áÇÏ·Á¸é, Suspend¸¦ Àӽ÷ΠÄÓ ¼ö ÀÖ½À´Ï´Ù (¸ðµç ÇÖ½ºÆ®¸µÀÌ ²¨Áý´Ï´Ù).

+ +

ÇÖ½ºÆ®¸µ µµ¿ò ÇÔ¼ö

+

+¾Èµå·¹¾Æ½º º¸·çŸ(Andreas Borutta)°¡ ´ÙÀ½ ½ºÅ©¸³Æ®¸¦ Á¦½ÃÇß½À´Ï´Ù. ÇÖ½ºÆ®¸µÀ» ¸¹ÀÌ »ç¿ëÇÑ´Ù¸é ¾ÆÁÖ À¯¿ëÇÒ °ÍÀÔ´Ï´Ù. Win+H (¶Ç´Â ¶Ç´Ù¸¥ ÇÖÅ°)¸¦ ´©¸£¸é, ÇöÀç ¼±ÅÃµÈ ÅؽºÆ®°¡ ÇÖ½ºÆ®¸µÀ¸·Î º¯È¯µË´Ï´Ù. ¿¹¸¦ µé¾î, ¿öµå ÇÁ·Î¼¼¼­¿¡¼­ "by the way"¸¦ ¼±ÅÃÇß´Ù¸é, Win+H¸¦ ´©¸£¸é ¿©·¯ºÐ¿¡°Ô ±×ÀÇ ¾àÀÚ¸¦ ¿ä±¸ÇÒ °ÍÀÔ´Ï´Ù (¿¹, btw) ±×¸®°í ±× »õ ÇÖ½ºÆ®¸µÀ» ½ºÅ©¸³Æ®¿¡ Ãß°¡ÇÕ´Ï´Ù. ´ÙÀ½ ½ºÅ©¸³Æ®¸¦ ÀçÀûÀçÇÏ¿© ±× ÇÖ½ºÆ®¸µÀ» È°¼ºÈ­ÇÕ´Ï´Ù.

+ +
#h::  ; Win+H ÇÖÅ°
+; ÇöÀç ¼±ÅÃµÈ ÅؽºÆ®¸¦ ¾ò´Â´Ù. "ControlGet Selected" ´ë½Å¿¡
+; Ŭ¸³º¸µå¸¦ »ç¿ëÇÑ´Ù. ¿Ö³ÄÇÏ¸é ´ëºÎºÐÀÇ ÆíÁý±â¿¡ ÀÛµ¿Çϱ⠶§¹®ÀÌ´Ù.
+; (Áï ¿öµå ÇÁ·Î¼¼¼­). ÇöÀç Ŭ¸³º¸µå ³»¿ëÀ» ÀúÀåÇÑ´Ù. ³ªÁß¿¡ º¹±¸ÇØ »ç¿ëÇÑ´Ù
+; Æò¹üÇÑ ÅؽºÆ®¸¸ ó¸®ÇÏÁö¸¸, 
+; ¾Æ¹«°Íµµ ó¸®ÇÏÁö ¸øÇÏ´Â °Íº¸´Ù´Â ³´´Ù:
+AutoTrim Off  ; Ŭ¸³º¸µå¿¡ ¼±µÎ¿Í ÈÄ¹Ì °ø¹éÀ» ±×´ë·Î À¯ÁöÇÑ´Ù.
+ClipboardOld = %ClipboardAll%
+Clipboard =  ; ŽÁö¸¦ ÀÛµ¿½ÃÅ°·Á¸é ºó ä·Î ½ÃÀÛÇØ¾ß ÇÑ´Ù.
+Send ^c
+ClipWait 1
+if ErrorLevel  ; ClipWait ½Ã°£ Á¾·á.
+    return
+; "³¯·Î-Àü¼Û" ÇÖ½ºÆ®¸µ¿¡ »ç¿ëÇϱâ À§ÇØ CRLF¿Í LF¸¦ `n·Î ±³Ã¼ÇÑ´Ù:
+; ´Ù¸¥ ¹®Àڵ鿡 ´ëÇؼ­µµ ¶È °°ÀÌ ±³Ã¼ÇÑ´Ù. ±×·¸Áö ¾ÊÀ¸¸é
+; ³¯ ¸ðµå¿¡¼­ ¹®Á¦¸¦ ÀÏÀ¸Å³ ¼ö ÀÖ´Ù:
+StringReplace, Hotstring, Clipboard, ``, ````, All  ; ¾Æ·¡ÀÇ ´Ù¸¥ °Íµé°úÀÇ °£¼·À» ÇÇÇϱâ À§ÇØ ÀÌ°É ¸ÕÀú ±³Ã¼ÇÑ´Ù.
+StringReplace, Hotstring, Hotstring, `r`n, ``r, All  ; MS Word, µîµî¿¡¼­ `rÀ» »ç¿ëÇÏ´Â °ÍÀÌ `nº¸´Ù ´õ Àß ÀÛµ¿ÇÑ´Ù .
+StringReplace, Hotstring, Hotstring, `n, ``r, All
+StringReplace, Hotstring, Hotstring, %A_Tab%, ``t, All
+StringReplace, Hotstring, Hotstring, `;, ```;, All
+Clipboard = %ClipboardOld%  ; Ŭ¸³º¸µåÀÇ ÀÌÀü ³»¿ëÀ» º¹±¸ÇÑ´Ù.
+; ÀÌ·¸°Ô Çϸé InputBoxÀÇ Ä³·µÀÌ »ç¿ëÀÚ¿¡°Ô ´õ Æí¸®ÇÑ À§Ä¡·Î À̵¿ÇÑ´Ù:
+SetTimer, MoveCaret, 10
+; InputBox¸¦ º¸¿©ÁÖ°í, ±âº» ÇÖ½ºÆ®¸µÀ» Á¦°øÇÑ´Ù:
+InputBox, Hotstring, New Hotstring, Áö½ÃÇÑ »ðÀÔ ÁöÁ¡¿¡ ¾à¾î¸¦ ŸÀÚÇϽʽÿÀ. ¿øÇÑ´Ù¸é ±³Ã¼ ÅؽºÆ®µµ ÆíÁýÇÒ ¼ö ÀÖ½À´Ï´Ù.`n`n¿¹Á¦: :R:btw`::by the way,,,,,,,, :R:`::%Hotstring%
+if ErrorLevel  ; »ç¿ëÀÚ°¡ CancelÀ» ´­·¶´Ù.
+    return
+IfInString, Hotstring, :R`:::
+{
+    MsgBox ¾à¾î¸¦ Á¦°øÇÏÁö ¾Ê¾Ò½À´Ï´Ù. ÇÖ½ºÆ®¸µÀÌ Ãß°¡µÇÁö ¾Ê¾Ò½À´Ï´Ù.
+    return
+}
+; ±×·¸Áö ¾ÊÀ¸¸é, ÇÖ½ºÆ®¸µÀ» Ãß°¡ÇÏ°í ½ºÅ©¸³Æ®¸¦ ÀçÀûÀçÇÑ´Ù:
+FileAppend, `n%Hotstring%, %A_ScriptFullPath%  ; ÆÄÀÏÀÌ ³¡¿¡ ºó ÁÙ¿¡ ¾ø´Â °æ¿ì ¾Õ¿¡ `nÀ» ¹èÄ¡ÇÑ´Ù.
+Reload
+Sleep 200 ; ¼º°øÇϸé, ÀçÀûÀç ¶§¹®¿¡ ÀÌ ½Çü´Â SleepÇÏ´Â µ¿¾È ´ÝÈù´Ù. ±×·¡¼­ ¾Æ·¡ÀÇ ÁÙÀº Àý´ë·Î µµ´ÞÇÏÁö ¸øÇÑ´Ù.
+MsgBox, 4,, ¹æ±Ý Ãß°¡µÈ ÇÖ½ºÆ®¸µÀº ¸ð¾çÀÌ ¿Ã¹Ù¸£Áö ¾Ê½À´Ï´Ù. ½ºÅ©¸³Æ®¸¦ ¿­¾î ÆíÁýÇϽðڽÀ´Ï±î? ³ª»Û ÇÖÆ®¸µÀÇ À§Ä¡´Â ½ºÅ©¸³Æ® ÇÏ´Ü¿¡ ÀÖ½À´Ï´Ù.
+IfMsgBox, Yes, Edit
+return
+
+MoveCaret:
+IfWinNotActive, New Hotstring
+    return
+; ±×·¸Áö ¾ÊÀ¸¸é, InputBoxÀÇ »ðÀÔ À§Ä¡¸¦ »ç¿ëÀÚ°¡ ¾à¾î¸¦ ŸÀÚÇÒ °÷À¸·Î À̵¿ÇÑ´Ù.
+Send {Home}{Right 3}
+SetTimer, MoveCaret, Off
+return
+ + diff --git a/src/docs/KeyList.htm b/src/docs/KeyList.htm new file mode 100644 index 0000000..b7d861b --- /dev/null +++ b/src/docs/KeyList.htm @@ -0,0 +1,552 @@ + + +List of Keys and Mouse/Joystick Buttons for Hotkeys and Macros + + + + + + + + + +

Å°, ¸¶¿ì½º ¹öÆ°, ±×¸®°í Á¶À̽ºÆ½ ÄÜÆ®·Ñ ¸ñ·Ï

+

¸¶¿ì½º

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ÀϹÝ
LButton¿ÞÂÊ ¸¶¿ì½º ¹öÆ°
RButton¿À¸¥ÂÊ ¸¶¿ì½º ¹öÆ°
MButtonÁß°£ ¶Ç´Â ÈÙ ¸¶¿ì½º ¹öÆ°
°í±Þ
XButton14¹ø° ¸¶¿ì½º ¹öÆ°, ÀüÇüÀûÀ¸·Î Browser_Back°ú °°Àº ±â´ÉÀ» ¼öÇàÇÕ´Ï´Ù.
XButton25¹ø° ¸¶¿ì½º ¹öÆ°, ÀüÇüÀûÀ¸·Î Browser_Forward¿Í °°Àº ±â´ÉÀ» ¼öÇàÇÕ´Ï´Ù.
ÈÙ
WheelDownÈÙÀ» ¾Æ·¡·Î µ¹¸³´Ï´Ù (°¡±î¿öÁö°Ô).
WheelUpÈÙÀ» À§·Î µ¹¸³´Ï´Ù (¸Ö¾îÁö°Ô).
WheelLeft
WheelRight

[v1.0.48+]: Á¿ì·Î ½ºÅ©·ÑÇÕ´Ï´Ù.

+

À©µµ¿ìÁî ºñ½ºÅ¸ ÀÌ»óÀ» ¿ä±¸ÇÕ´Ï´Ù. µÎ ¹ø° ÈÙÀ» °¡Áø ¶Ç´Â ÈÙÀ» Á¿ì·Î µ¹¸± ¼ö ÀÖ´Â ¸¶¿ì½º¿Í ÇÔ²² (¸ðµÎ´Â ¾Æ´Ô) ÀÌ°ÍÀ» ÇÖÅ°·Î »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. ¾î¶² °æ¿ì, ´ë½Å¿¡ ¸¶¿ì½º¿Í ÇÔ²² µû¶ó¿À´Â µå¶óÀ̹ö¸¦ »ç¿ëÇؾ߸¸ ÀÌ Æ¯Â¡À» Á¦¾îÇÒ ¼ö ÀÖ½À´Ï´Ù. ƯÁ¤ ¸¶¿ì½º¿Í »ó°ü¾øÀÌ, Send¿Í ClickÀ» »ç¿ëÇÏ¿© ÇÁ·Î±×·¥¿¡¼­ Áö¿øÇϱ⸸ ÇÏ¸é ¼öÆòÀ¸·Î ½ºÅ©·ÑÇÒ ¼ö ÀÖ½À´Ï´Ù.

+

Å°º¸µå

+

ÁÖÀÇ: ±âÈ£¿Í ¼ýÀÚ Å°ÀÇ À̸§Àº ±âÈ£³ª ¼ýÀÚ Å°¿Í °°½À´Ï´Ù. ¿¹¸¦ µé¾î. : b´Â "b" Å°ÀÌ°í 5´Â "5" Å°ÀÔ´Ï´Ù.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ÀϹÝ
CapsLockĸ½º ¶ô
Space½ºÆäÀ̽º ¹Ù
TabÅÇ Å°
Enter (¶Ç´Â Return)¿£ÅÍ Å°
Escape (¶Ç´Â Esc)Esc Å°
Backspace (¶Ç´Â BS)¹é½ºÆäÀ̽º
Ä¿¼­ ÄÜÆ®·Ñ
ScrollLock½ºÅ©·Ñ ¶ô
Delete (¶Ç´Â Del)»èÁ¦ Å°
Insert (¶Ç´Â Ins)»ðÀÔ Å°
HomeȨ Ű
End¿£µå Å°
PgUpÆäÀÌÁö ¾÷ Å°
PgDnÆäÀÌÁö ´Ù¿î Å°
UpÀ§ È­»ìÇ¥ Å°
Down¾Æ·¡ È­»ìÇ¥ Å°
Left¿ÞÂÊ È­»ìÇ¥ Å°
Right¿À¸¥ÂÊ È­»ìÇ¥ Å°
¼ýÀÚÆеå
NumLock ON + + + + +
NumLock OFF
Numpad0 + + + + +
NumpadIns0 / »ðÀÔ Å°
Numpad1 + + + + +
NumpadEnd1 / ¿£µå Å°
Numpad2 + + + + +
NumpadDown2 / ¾Æ·¡ È­»ìÇ¥ Å°
Numpad3 + + + + +
NumpadPgDn3 / ÆäÀÌÁö ´Ù¿î Å°
Numpad4 + + + + +
NumpadLeft4 / ¿ÞÂÊ È­»ìÇ¥ Å°
Numpad5 + + + + +
NumpadClear5 / º¸Åë ¾Æ¹«Àϵµ ¾ÈÇÔ
Numpad6 + + + + +
NumpadRight6 / ¿À¸¥ÂÊ È­»ìÇ¥ Å°
Numpad7 + + + + +
NumpadHome7 / Ȩ Ű
Numpad8 + + + + +
NumpadUp8 / À§ È­»ìÇ¥ Å°
Numpad9 + + + + +
NumpadPgUp9 / ÆäÀÌÁö ¾÷ Å°
NumpadDot + + + + +
NumpadDel¼Ò¼ö Á¡ / »èÁ¦ Å°
NumpadDiv + + + + +
NumpadDiv³ª´©±â
NumpadMult + + + + +
NumpadMult°öÇϱâ
NumpadAdd + + + + +
NumpadAdd´õÇϱâ
NumpadSub + + + + +
NumpadSub»©±â
NumpadEnter + + + + +
NumpadEnter¿£ÅÍ Å°
±â´ÉÅ°
F1 - F24´ëºÎºÐÀÇ Å°º¸µå »ó´Ü¿¡ ÀÖ´Â 12 °³ ÀÌ»óÀÇ ±â´ÉÅ°.
¼ö½ÄÅ°
LWin¿ÞÂÊ À©µµ¿ìÁî ·Î°í Å°. <# ÇÖÅ° Á¢µÎ ½Éº¼¿¡ »óÀÀÇÕ´Ï´Ù.
RWin¿À¸¥ÂÊ À©µµ¿ìÁî ·Î°í Å°. ># ÇÖÅ° Á¢µÎ ½Éº¼¿¡ »óÀÀÇÕ´Ï´Ù.
ÁÖÀÇ: Control/Alt/Shift¿Í ´Ù¸£°Ô, ¹ü¿ëÀÇ/Á߸³Àû "Win" Å°´Â ¾ø½À´Ï´Ù. OS°¡ Áö¿øÇÏÁö ¾Ê½À´Ï´Ù. ±×·¸Áö¸¸, # ¼ö½ÄÅ°¸¦ °¡Áø ÇÖÅ°´Â ¾î´ÀÂÊ Win Å°·Îµµ Ã˹ߵ˴ϴÙ.
Control (or Ctrl)ÄÜÆ®·Ñ Å°. ÇÖŰó·³ (Control::) Æ¿µå Á¢µÎ ½Éº¼ÀÌ ºÙÁö ¾ÊÀº ÇÑ, ¶¿ ¶§ Ã˹ߵ˴ϴÙ. ^ ÇÖÅ° Á¢µÎ ½Éº¼¿¡ »óÀÀÇÕ´Ï´Ù.
Alt¾ËÆ® Å°. ÇÖŰó·³ (Alt::) Æ¿µå Á¢µÎ ½Éº¼ÀÌ ºÙÁö ¾Ê´Â ÇÑ, ¶¿ ¶§ Ã˹ߵ˴ϴÙ. ! ÇÖÅ° Á¢µÎ ½Éº¼¿¡ »óÀÀÇÕ´Ï´Ù.
Shift½¬ÇÁÆ® Å°. ÇÖŰó·³ (Shift::) Æ¿µå Á¢µÎ ½Éº¼ÀÌ ºÙÁö ¾Ê´Â ÇÑ, ¶¿ ¶§ Ã˹ߵ˴ϴÙ. + ÇÖÅ° Á¢µÎ ½Éº¼¿¡ »óÀÀÇÕ´Ï´Ù.
LControl (or LCtrl)¿ÞÂÊ ÄÜÆ®·Ñ Å°. <^ ÇÖÅ° Á¢µÎ ½Éº¼¿¡ »óÀÀÇÕ´Ï´Ù.
RControl (or RCtrl)¿À¸¥ÂÊ ÄÜÆ®·Ñ Å°. >^ ÇÖÅ° Á¢µÎ ½Éº¼¿¡ »óÀÀÇÕ´Ï´Ù.
LShift¿ÞÂÊ ½¬ÇÁÆ® Å°. <+ ÇÖÅ° Á¢µÎ ½Éº¼¿¡ »óÀÀÇÕ´Ï´Ù.
RShift¿À¸¥ÂÊ ½¬ÇÁÆ® Å°. >+ ÇÖÅ° Á¢µÎ ½Éº¼¿¡ »óÀÀÇÕ´Ï´Ù.
LAlt¿ÞÂÊ Alt Å°. <! ÇÖÅ° Á¢µÎ ½Éº¼¿¡ »óÀÀÇÕ´Ï´Ù.
RAlt¿À¸¥ÂÊ ¾ËÆ® Å°. >! ÇÖÅ° Á¢µÎ ½Éº¼¿¡ »óÀÀÇÕ´Ï´Ù. +
ÁÖÀÇ: Å°º¸µå ·¹À̾ƿô¿¡ RAlt ´ë½Å AltGrÀÌ ÀÖ´Ù¸é, ±×°ÍÀ» ÇÖÅ°·Î »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. ´ÙÀ½¿¡ ±â¼úÇÏ´Â ¹Ù¿Í °°ÀÌ <^>!ó·³ Á¢µÎ ½Éº¼ 󸮸¦ ÇØ ÁÖ¸é µË´Ï´Ù. °Ô´Ù°¡, LControl & RAlt::Àº AltGr ÀÚü¸¦ ÇÖÅ°·Î ¸¸µé¾î ÁÝ´Ï´Ù.
¸ÖƼ¹Ìµð¾î
Browser_BackµÚ·Î
Browser_Forward¾ÕÀ¸·Î
Browser_Refresh°»½Å
Browser_Stop¸ØÃã
Browser_Search°Ë»ö
Browser_FavoritesÁñ°Üã±â
Browser_HomeȨÆäÀÌÁö
Volume_MuteÀ½¼Ò°Å
Volume_Down¼Ò¸® ÁÙÀ̱â
Volume_Up¼Ò¸® ³ôÀ̱â
Media_Next´ÙÀ½ Æ®·¢
Media_PrevÀÌÀü Æ®·¢
Media_StopÁßÁö
Media_Play_Pause¿¬ÁÖ/Á¤Áö
Launch_Mail±âº» À̸ÞÀÏ ÇÁ·Î±×·¥ ±âµ¿
Launch_Media±âº» ¹Ìµð¾î Ç÷¹ÀÌ¾î ±âµ¿
Launch_App1³» ÄÄÇ»ÅÍ ±âµ¿
Launch_App2°è»ê±â ±âµ¿
ÁÖÀÇ: À§¿¡ ³ª¿­µÈ °¢ Å°¿¡ ÇÒ´çµÈ ±â´ÉÀº À©µµ¿ìÁîÀÇ ·¹Áö½ºÆ®¸®¸¦ º¯°æÇÏ¸é ¿À¹ö¶óÀ̵åÇÒ ¼ö ÀÖ½À´Ï´Ù. ´ÙÀ½ Å×À̺íÀº ´ëºÎºÐÀÇ À©µµ¿ìÁî ¹öÀü¿¡¼­ °¢ Å°ÀÇ ±âº» ±â´ÉÀ» º¸¿©ÁÝ´Ï´Ù.
Ư¼ö
AppsKey¸Þ´º Å°. ÀÌ Å°´Â ¿ìŬ¸¯ ¹®¸Æ ¸Þ´º¸¦ ¿äûÇÕ´Ï´Ù.
PrintScreenÈ­¸é Àμâ
CtrlBreak
PauseÁ¤Áö Å°
BreakBreak key. Pause¿Í µ¿ÀÏÇϱ⠶§¹®¿¡, ÇÖÅ°¿¡¼­ ^CtrlBreak¸¦ »ç¿ëÇϽʽÿÀ. ^PauseÀ̳ª ^Break´Â »ç¿ëÇÏÁö ¸¶½Ê½Ã¿À.
Helpµµ¿ò Å°. ÀÌ Å°´Â º¸Åë ´ëºÎºÐÀÇ Å°º¸µå¿¡ Á¸ÀçÇÏÁö ¾Ê½À´Ï´Ù. º¸Åë F1°ú °°Áö ¾Ê½À´Ï´Ù.
Sleep¼ö¸é Å°. ¾î¶² Å°º¸µå¿¡¼­ ¼ö¸é Å°´Â Àß ÀÛµ¿ÇÏÁö ¾ÊÀ» ¼ö ÀÖ½À´Ï´Ù.
SCnnnnnn¿¡ Å°ÀÇ ½ºÄµ Äڵ带 ÁöÁ¤ÇÕ´Ï´Ù. À§¿¡ ¾ð±ÞÇÏÁö ¾ÊÀº ºñÁ¤»ó Å°µéÀ» ÀνÄÇÕ´Ï´Ù. ÀÚ¼¼ÇÑ °ÍÀº Ư¼ö Å°¸¦ ÂüÁ¶ÇϽʽÿÀ.
VKnnnn¿¡ Å°ÀÇ ½ÊÀ°Áø °¡»ó Å° Äڵ带 ÁöÁ¤ÇÕ´Ï´Ù. ÀÚÁÖ »ç¿ëµÇÁö ¾Ê´Â ÀÌ ¹æ¹ýÀº ¾î¶² À¯ÇüÀÇ ÇÖÅ°°¡ Å°º¸µå °¥°í¸®¸¦ ¿ä±¸ÇÏ´Â °ÍÀ» ¹æÇØÇÒ ¼öµµ ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î, ´ÙÀ½ ÇÖÅ°µéÀº Å°º¸µå °¥°í¸®¸¦ »ç¿ëÇÏÁö ¾ÊÁö¸¸, ºÎÀÛ¿ëÀ¸·Î¼­ Home ¶Ç´Â NumpadHomeÀ» ´©¸£¸é Ã˹ߵ˴ϴÙ: +
^VK24::MsgBox Control Å°¸¦ ´©¸¥ ä·Î Home ¶Ç´Â NumpadHome¸¦ ´­·¶½À´Ï´Ù.
+
+ ¾Ë·ÁÁø ÇÑ°è: VK ÇÖÅ°°¡ Å°º¸µå °¥°í¸®¸¦ »ç¿ëÇϵµ·Ï °­Á¦µÇ¾î ÀÖÀ¸¸é, *VK24À̳ª ~VK24¿Í °°ÀÌ, µÎ Å°°¡ ¾Æ´Ï¶ó µÑ Áß¿¡ ÇϳªÀÇ Å°¿¡¸¸ Ã˹ߵ˴ϴ٠(¿¹, NumpadHome¿¡ Ã˹ߵǸé HomeÀº Ã˹ߵÇÁö ¾ÊÀ½). + VKnn ¸Þ½îµå¿¡ °üÇÑ ´õ ÀÚ¼¼ÇÑ Á¤º¸´Â Ư¼ö Å°¸¦ ÂüÁ¶ÇÕ´Ï´Ù.
+

Joystick

+

Joy1 through Joy32: Á¶À̽ºÆ½ÀÇ ¹öÆ°. ´ÙÀ½ Å×½ºÆ® ½ºÅ©¸³Æ®¸¦ »ç¿ëÇÏ¸é ¿©·¯ºÐÀÌ º¸À¯ÇÑ Á¶À̽ºÆ½ÀÇ ¹öÆ° °³¼ö¸¦ ¾Ë ¼ö ÀÖ½À´Ï´Ù. ^ (control) ±×¸®°í + (shift) °°Àº ÇÖÅ° Á¢µÎ ½Éº¼Àº Áö¿øÇÏÁö ¾Ê½À´Ï´Ù (±×·¸Áö¸¸ GetKeyStateÀ» ´ë¾ÈÀ¸·Î »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù). + +Á¶À̽ºÆ½ ¹öÆ°À» ´©¸¥´Ù°í Çؼ­ ¾ðÁ¦³ª È°¼ºÃ¢À¸·Î "¶Õ°í µé¾î°¡´Â" °ÍÀº ¾Æ´Ï¶ó´Â »ç½ÇÀ» ÁÖÀÇÇϽʽÿÀ. ±× âÀÌ Á¶À̽ºÆ½ ¹öÆ° ´©¸§À» ŽÁöÇϵµ·Ï ¼³°èµÇ¾î ÀÖ´Ù¸é ħÅõÇÏÁö ¸øÇÒ ¼ö ÀÖ½À´Ï´Ù.

+

+´ÙÀ½ Á¶À̽ºÆ½ ÄÜÆ®·Ñ À̸§Àº ÇÖÅ°·Î »ç¿ëÇÒ ¼ö ¾øÁö¸¸, GetKeyState¿Í ÇÔ²² »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù:
+ JoyX, JoyY, and JoyZ: Á¶À̽ºÆ½ÀÇ X (¼öÆò), Y (¼öÁ÷), ±×¸®°í Z (°íµµ/±íÀÌ) Ãà.
+ JoyR: Á¶À̽ºÆ½ÀÇ ·¯´õ ¶Ç´Â 4 ¹ø° Ãà.
+ JoyU and JoyV: Á¶À̽ºÆ½ÀÇ 5¹ø° 6 ¹ø° Ãà.
+ JoyPOV: The point-of-view (hat) control.
+ JoyName: Á¶À̽ºÆ½ ¶Ç´Â Á¶À̽ºÆ½ µå¶óÀ̹öÀÇ À̸§.
+ JoyButtons: Á¶À̽ºÆ½ÀÌ Áö¿øÇÏ´Â ¹öÆ°ÀÇ °³¼ö (¾ðÁ¦³ª Á¤È®ÇÑ °ÍÀº ¾Æ´Ô).
+ JoyAxes: Á¶À̽ºÆ½ÀÌ Áö¿øÇÏ´Â ÃàÀÇ °³¼ö.
+ JoyInfo: ´ÙÀ½ ±âÈ£·Î ±¸¼ºµÇ´Â ¹®ÀÚ¿­À» Á¦°øÇÕ´Ï´Ù. Á¶À̽ºÆ½ÀÌ °®Ãá ´É·ÂÀ» ¾Ë·ÁÁÝ´Ï´Ù: Z (Z Ãà), R (R Ãà), U (U Ãà), V (V Ãà), P (POV ÄÜÆ®·Ñ), D (POV ÄÜÆ®·ÑÀº ÀÌ»êÀûÀ¸·Î ¼³Á¤µË´Ï´Ù), C (POV ÄÜÆ®·ÑÀº ¿¬¼ÓÀûÀ¸·Î ¼³Á¤µË´Ï´Ù). ¿¹Á¦ ¹®ÀÚ¿­: ZRUVPD

+

+´ÙÁß Á¶À̽ºÆ½: ÄÄÇ»ÅÍ¿¡ ¿©·¯ Á¶À̽ºÆ½ÀÌ ÀÖ°í ù ¹ø° ¸¶¿ì½º ¸»°íµµ ´Ù¸¥ Á¶À̽ºÆ½À» »ç¿ëÇÏ°í ½Í´Ù¸é, Á¶À̽ºÆ½ ¹øÈ£¸¦ (ÃÖ´ë 16) ÄÁÆ®·Ñ À̸§ ¾Õ¿¡ ºÙÀ̽ʽÿÀ. ¿¹¸¦ µé¾î, 2joy1Àº µÎ ¹ø° Á¶À̽ºÆ½ÀÇ Ã¹ ¹ø° ¹öÆ°ÀÔ´Ï´Ù.

+

ÁÖÀÇ: ½ºÅ©¸³Æ®¿¡°Ô Á¶À̽ºÆ½À» ÀνĽÃÅ°Áö ¸øÇÏ°í ÀÖ´Ù¸é, ¾î¶² º¸°í¿¡ ÀÇÇϸé Á¶À̽ºÆ½ ¹øÈ£¸¦ 1¸»°í ´Ù¸¥ ¹øÈ£¸¦ ÁöÁ¤ÇÒ ÇÊ¿ä°¡ ÀÖ´Ù°í ÇÕ´Ï´Ù. ¿ÀÁ÷ ÇϳªÀÇ Á¶À̽ºÆ½¸¸ ÀÖ´Ù°í ÇÒÁö¶óµµ ¸»ÀÔ´Ï´Ù. ¾î¶»°Ô ÀÌ·± »óȲÀÌ ÀϾ´ÂÁö ±×¸®°í ±×°ÍÀÌ Á¤»óÀÎ °ÍÀÎÁö´Â Àß ¸ð¸£Áö¸¸, Á¶À̽ºÆ½ Å×½ºÆ® ½ºÅ©¸³Æ®¿¡¼­ Á¶À̽ºÆ½ ¹øÈ£¸¦ °¡Áö°í ½ÇÇèÇØ º¸¸é ÀÌ ¹æ¹ýÀÌ ¿©·¯ºÐÀÇ ½Ã½ºÅÛ¿¡ Àû¿ëÀÌ µÉÁö ¾Ë ¼ö ÀÖÀ» °ÍÀÔ´Ï´Ù.

+

´ÙÀ½µµ ÂüÁ¶ÇϽʽÿÀ:
+Á¶À̽ºÆ½ ¸®¸ÊÇÎ: Á¶À̽ºÆ½À¸·Î Å°´­¸²°ú ¸¶¿ì½º Ŭ¸¯À» Àü¼ÛÇÏ´Â ¹æ¹ý.
+Joystick-To-Mouse ½ºÅ©¸³Æ®: Á¶À̽ºÆ½À» ¸¶¿ì½º·Î »ç¿ëÇϱâ.

+ +

¼Õ¿¡ µç ¸®¸ðÄÜ

+

¼Õ¿¡ µç ¸®¸ðÄÜÀ¸·ÎºÎÅÍÀÇ ½ÅÈ£¿¡ ¹ÝÀÀÇÕ´Ï´Ù. WinLIRC Ŭ¶óÀ̾ðÆ® ½ºÅ©¸³Æ®¸¦ »ç¿ëÇϽʽÿÀ.

+

Ư¼ö Å°

+

Å°º¸µå³ª ¸¶¿ì½º¿¡ À§¿¡ ³ª¿­µÈ Å°°¡ ¾ø´õ¶óµµ, ÇÖÅ°·Î »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. ´ÙÀ½ ´Ü°è¸¦ µû¸£½Ê½Ã¿À:

+
    +
  1. Àû¾îµµ ÇϳªÀÇ ½ºÅ©¸³Æ®´Â Å°º¸µå °¥°í¸®¸¦ »ç¿ëÇÏ¿© ½ÇÇà ÁßÀÓÀ» È®ÀÎÇÕ´Ï´Ù. ½ºÅ©¸³Æ®¿¡ Å°º¸µå °¥°í¸®°¡ ¼³Ä¡µÇ¾î ÀÖ´ÂÁö È®ÀÎÇÏ·Á¸é ¸ÞÀΠâÀ» ¿­°í ¸Þ´º¹Ù¿¡¼­ "View->Key history"¸¦ ¼±ÅÃÇØ º¸¸é µË´Ï´Ù.
  2. +
  3. ½ºÅ©¸³Æ®ÀÇ Æ®·¹ÀÌ ¾ÆÀÌÄÜÀ» ´õºíŬ¸¯ÇÏ¿© ¸ÞÀΠâÀ» ¿±´Ï´Ù.
  4. +
  5. Å°º¸µå¿¡¼­ "¹Ì½ºÅ׸® Å°"Áß Çϳª¸¦ ´©¸¨´Ï´Ù.
  6. +
  7. ¸Þ´º Ç׸ñ "View->Key history"¸¦ ¼±ÅÃÇÕ´Ï´Ù.
  8. +
  9. ÆäÀÌÁö ¾Æ·¡·Î °¨¾Æ ³»¸³´Ï´Ù. ¾Æ·¡ ¾îµò°¡¿¡ ´©¸¥ Å°¿¡ ´ëÇÑ Å°-´©¸§ ±×¸®°í Å°-¶À À̺¥Æ®°¡ ÀÖÀ» °Ì´Ï´Ù. ÁÖÀÇ: ¾î¶² Å°´Â À̺¥Æ®¸¦ ¹ß»ý½ÃÅ°Áö ¾Ê½À´Ï´Ù ±×¸®ÇÏ¿© ¿©±â¿¡¼­ º¸ÀÌÁö ¾Ê½À´Ï´Ù. ÀÌ·² °æ¿ì¶ó¸é Á÷Á¢ÀûÀ¸·Î ±× ƯÁ¤ÇÑ Å°¸¦ ÇÖÅ°·Î ¸¸µé ¼ö ¾ø½À´Ï´Ù. ¿Ö³ÄÇϸé Å°º¸µå µå¶óÀ̹ö³ª Çϵå¿þ¾î°¡ ³Ê¹« ¾Æ·¡ ·¹º§¿¡¼­ ó¸®ÇÏ°í À־ ¿ÀÅäÇÖÅ°°¡ Á¢±ÙÇÒ ¼ö ¾ø±â ¶§¹®ÀÔ´Ï´Ù. °¡´ÉÇÑ ÇØ°áÃ¥Àº, ´õ ¾Æ·¡¸¦ º¸½Ê½Ã¿À.
  10. +
  11. Å°¸¦ ŽÁöÇÒ ¼ö ÀÖÀ¸¸é, ¸®½ºÆ®ÀÇ µÎ ¹ø° Ä÷³¿¡ ¼¼ ÀÚ¸® ½ÊÀ°Áø °ªÀ» Àû½À´Ï´Ù (¿¹, 159).
  12. +
  13. ÀÌ Å°¸¦ ÇÖÅ°·Î Á¤ÀÇÇÏ·Á¸é, ´ÙÀ½ ¿¹¸¦ µû¸£½Ê½Ã¿À: +
    SC159:: ; 159¸¦ Å° °ªÀ¸·Î ±³Ã¼ÇϽʽÿÀ.
    +MsgBox, %A_ThisHotKey% was pressed.
    +return
  14. +
+

¿ª ¹æÇâ: ´Ù¸¥ Å°¸¦ "¹ÌÁöÀÇ Å°"°¡ µÇµµ·Ï ¸®¸ÊÇÏ·Á¸é, ´ÙÀ½ ¿¹Á¦¸¦ µû¸£½Ê½Ã¿À:

+
; 159¸¦ À§¿¡¼­ ¹ß°ßÇÑ °ª°ú ±³Ã¼ÇÕ´Ï´Ù. (ÇÊ¿äÇϸé) FF¸¦ °¡»ó Å°·Î ±³Ã¼ÇÕ´Ï´Ù.
+; °¡»ó Å° ÄÚµå´Â Key History È­¸éÀÇ Ã¹ Ä÷³¿¡¼­ ¹ß°ßÇÒ ¼ö ÀÖ½À´Ï´Ù.
+#c::Send {vkFFsc159}
+

¶Ç´Ù¸¥ ÇØ°áÃ¥: Å°³ª ¸¶¿ì½º ¹öÆ°À» Key History È­¸é¿¡¼­ ŽÁöÇÒ ¼ö ¾øÀ¸¸é, ´ÙÀ½ Áß Çϳª¸¦ ½ÃµµÇØ º¸¸é µµ¿òÀÌ µÉ °ÍÀÔ´Ï´Ù:

+
    +
  1. +

    ¸¶¿ì½º³ª Å°º¸µå¿¡ ÇÔ²² µû¶ó¿À´Â ¼ÒÇÁÆ®¿þ¾îÀÇ È¯°æÀ» À籸¼ºÇϸé (Á¾Á¾ Á¦¾îÆÇÀ̳ª ½ÃÀÛ ¸Þ´º¸¦ ÅëÇÏ¿© Á¢±ÙÇÒ ¼ö ÀÖ½À´Ï´Ù) "¹ÌÁöÀÇ Å°"°¡ ´Ù¸¥ Å°´­¸²À» Àü¼ÛÇϵµ·Ï ¸¸µé ¼ö ÀÖ½À´Ï´Ù. ±×·± Å°´­¸²Àº ÀÌÁ¦ ½ºÅ©¸³Æ®¿¡¼­ ÇÖÅ°·Î Á¤ÀÇÇÒ ¼ö ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î, ¹ÌÁöÀÇ Å°°¡ Control+F1À» Àü¼ÛÇϵµ·Ï ±¸¼ºÇß´Ù¸é, ½ºÅ©¸³Æ®¿¡¼­ ^F1::À» »ç¿ëÇØ °£Á¢ÀûÀ¸·Î ±× Å°¸¦ ÇÖÅ°·Î ¸¸µé ¼ö ÀÖ½À´Ï´Ù.

    +
  2. +
  3. +

    DllCall: ÈÞ¸Õ ÀÎÅÍÆäÀ̽º ÀåÄ¡ Áö¿øÀ» ½ÃµµÇØ º¾´Ï´Ù. ¶Ç RawInput*¿Í °°Àº Å°¿öµå·Î Æ÷·³À» °Ë»öÇØ º¸½Ç ¼öµµ ÀÖ½À´Ï´Ù.

    +
  4. +
  5. +

    ´ÙÀ½Àº ¸¶Áö¸· ÀÇÁ¸Ã¥ÀÔ´Ï´Ù. ÀϹÝÀûÀ¸·Î Àý¸ÁÀûÀÏ °æ¿ì¿¡¸¸ ½ÃµµÇϽʽÿÀ. ¼º°øÀÇ °¡´É¼ºÀÌ ¸Å¿ì ³·°í ¿øÇÏÁö ¾Ê´Â ºÎÀÛ¿ëÀ» ¾ß±âÇØ ´Ù½Ã µ¹ÀÌų ¼ö ¾øÀ» ¼öµµ Àֱ⠶§¹®ÀÔ´Ï´Ù:
    + Å°º¸µå³ª ¸¶¿ì½º¿¡ µû¶ó¿À´Â ¼ÒÇÁÆ®¿þ¾î¸¦ Á¦°ÅÇÕ´Ï´Ù. ¶Ç´Â µå¶óÀ̹ö¸¦ º¸´Ù Ç¥ÁØÀûÀÎ µå¶óÀ̹ö ¿¹¸¦ µé¾î OS¿¡ ³»ÀåµÈ µå¶óÀ̹ö·Î ±³Ã¼ÇÕ´Ï´Ù. ¼º°øÇÑ ÇÑ´Ù¸é ¿©·¯ºÐÀÇ Àü¿ë µå¶óÀ̹ö°¡ Á¦°øÇϴ Ư¡ÀÌ ¾ø´õ¶óµµ »ì¾Æ°¥ ¼ö ÀÖ´Ù´Â È®½ÅÀ» °¡Áú ¼ö ÀÖ½À´Ï´Ù.

    +
  6. +
+ + diff --git a/src/docs/Objects.htm b/src/docs/Objects.htm new file mode 100644 index 0000000..b44c689 --- /dev/null +++ b/src/docs/Objects.htm @@ -0,0 +1,723 @@ + + +Objects + + + + + + + + +

°´Ã¼

+ +

¿ÀÅäÇÖÅ°¿¡¼­ °´Ã¼(object)´Â Ãß»ó µ¥ÀÌÅÍ À¯ÇüÀ¸·Î¼­ ¼¼ °¡Áö ±âº» ±â´ÉÀ» Á¦°øÇÕ´Ï´Ù:

+ +

°´Ã¼ ÂüÁ¶´Â ƯÁ¤ °´Ã¼¸¦ °¡¸®Å°´Â Æ÷ÀÎÅÍ ¶Ç´Â ÇÚµé("handle")ÀÔ´Ï´Ù. ¹®ÀÚ¿­°ú ¼ýÀÚó·³, °´Ã¼ ÂüÁ¶´Â º¯¼ö¿¡ ÀúÀåÇÏ°í ÇÔ¼ö·ÎºÎÅÍ ¹ÝȯÇÏ¸ç °´Ã¼ ¾È¿¡ ÀúÀåÇÒ ¼ö ÀÖ½À´Ï´Ù. x := y ó·³ ÂüÁ¶¸¦ ÇÑ º¯¼ö¿¡¼­ ´Ù¸¥ º¯¼ö·Î º¹»çÇÏ°í ³ª¸é, µÎ º¯¼ö ¸ðµÎ °°Àº °´Ã¼¸¦ °¡¸®Åµ´Ï´Ù.

+ +

IsObject¸¦ »ç¿ëÇÏ¸é °ªÀÌ °´Ã¼ÀÎÁö ÆǺ°ÇÒ ¼ö ÀÖ½À´Ï´Ù:

+
Result := IsObject(expression)
+ +

°´Ã¼ÀÇ Á¾·ù´Â ´ÙÀ½°ú °°½À´Ï´Ù:

+ + +

¸ñÂ÷

+ + +

±âº» »ç¿ë¹ý

+ +

´Ü¼øÇÑ ¹è¿­

+

¹è¿­À» ¸¸µì´Ï´Ù:

+
Array := [Item1, Item2, ..., ItemN]
+Array := Array(Item1, Item2, ..., ItemN)
+

Ç׸ñÀ» ¿­¶÷ÇÕ´Ï´Ù:

+
Value := Array[Index]
+

Ç׸ñÀ» ÇÒ´çÇÕ´Ï´Ù:

+
Array[Index] := Value
+

ÁÖ¾îÁø À妽º¿¡ Ç׸ñ(µé)À» »ðÀÔÇÕ´Ï´Ù:

+
Array.InsertAt(Index, Value, Value2, ...)
+

Ç׸ñ(µé)À» Ãß°¡ÇÕ´Ï´Ù:

+
Array.Push(Value, Value2, ...)
+

Ç׸ñÀ» Á¦°ÅÇÕ´Ï´Ù:

+
RemovedValue := Array.RemoveAt(Index)
+

¸¶Áö¸· Ç׸ñÀ» Á¦°ÅÇÕ´Ï´Ù:

+
RemovedValue := Array.Pop()
+

¹è¿­ÀÌ ºñ¾î ÀÖÁö ¾ÊÀ¸¸é, MinIndex¿Í MaxIndex/Length´Â ¹è¿­¿¡¼­ ÇöÀç »ç¿ëÁßÀÎ °¡Àå ³·Àº À妽º¿Í °¡Àå ³ôÀº À妽º¸¦ µ¹·ÁÁÝ´Ï´Ù. °¡Àå ³·Àº À妽º´Â °ÅÀÇ ´ëºÎºÐ 1À̹ǷÎ, MaxIndex´Â º¸Åë Ç׸ñÀÇ °³¼ö¸¦ µ¹·ÁÁÝ´Ï´Ù. ±×·¸Áö¸¸, Á¤¼ö Å°°¡ ¾ø´Ù¸é, MaxIndex´Â ºó ¹®ÀÚ¿­À» µ¹·ÁÁÝ´Ï´Ù. ¹Ý¸é¿¡ Length´Â 0À» µ¹·ÁÁÝ´Ï´Ù. ¹è¿­ÀÇ ³»¿ëÀº À妽º ¶Ç´Â For-loop·Î ȸµ¹ÀÌÇÒ ¼ö ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î:

+
array := ["one", "two", "three"]
+
+; 1ºÎÅÍ ¹è¿­ÀÇ ³¡±îÁö ¹Ýº¹ÇÕ´Ï´Ù:
+Loop % array.Length()
+    MsgBox % array[A_Index]
+
+; ¹è¿­ÀÇ ³»¿ëÀ» ¿­°ÅÇÕ´Ï´Ù:
+For index, value in array
+    MsgBox % "Item " index " is '" value "'"
+
+ +

¿¬°ü ¹è¿­

+

+¿¬°ü ¹è¿­Àº À¯ÀÏÇÑ Å° Áý´Ü°ú À¯ÀÏÇÑ °ª Áý´ÜÀ» Æ÷ÇÔÇÏ´Â °´Ã¼ÀÔ´Ï´Ù. °¢ Å°´Â °¢ °ª¿¡ ¿¬°üµÇ¾î ÀÖ½À´Ï´Ù. Å°´Â ¹®ÀÚ¿­À̳ª Á¤¼ö¶Ç´Â °´Ã¼°¡ µÉ ¼ö ÀÖ´Â ¹Ý¸é, °ªÀº ¾î¶² À¯Çüµµ µÉ ¼ö ÀÖ½À´Ï´Ù. ¿¬°ü ¹è¿­À» ´ÙÀ½°ú °°ÀÌ ¸¸µé ¼ö ÀÖ½À´Ï´Ù:

+
Array := {KeyA: ValueA, KeyB: ValueB, ..., KeyZ: ValueZ}
+Array := Object("KeyA", ValueA, "KeyB", ValueB, ..., "KeyZ", ValueZ)
+

+{key:value} Ç¥±â¹ýÀ» »ç¿ëÇϸé, ¿ÀÁ÷ ´Ü¾î ¹®Àڷθ¸ ±¸¼ºµÈ Å°¿¡´Â ÀοëºÎÈ£¸¦ »ý·«Çصµ µË´Ï´Ù. ¾î¶² Ç¥Çö½Äµµ Å°·Î »ç¿ëÇÒ ¼ö´Â ÀÖÁö¸¸, º¯¼ö¸¦ Å°·Î »ç¿ëÇÏ·Á¸é, ¹Ýµå½Ã °ýÈ£·Î µÑ·¯½Î¾ß ÇÕ´Ï´Ù. ¿¹¸¦ µé¾î, {(KeyVar): Value}°ú {GetKey(): Value}´Â ¸ðµÎ À¯È¿ÇÕ´Ï´Ù.

+ +

Ç׸ñÀ» ¿­¶÷ÇÕ´Ï´Ù:

+
Value := Array[Key]
+ +

Ç׸ñÀ» ÇÒ´çÇÕ´Ï´Ù:

+
Array[Key] := Value
+ +

Ç׸ñÀ» Á¦°ÅÇÕ´Ï´Ù:

+
RemovedValue := Array.Delete(Key)
+ +

Ç׸ñÀ» ¿­°ÅÇÕ´Ï´Ù:

+ +
array := {ten: 10, twenty: 20, thirty: 30}
+For key, value in array
+    MsgBox %key% = %value%
+

+¿¬°ü ¹è¿­Àº Áß°£ Áß°£ ºñ¿ö¼­ ¸¸µé ¼ö ÀÖ½À´Ï´Ù - Áï, {1:"a",1000:"b"}´Â ¿ÀÁ÷ µÎ °³ÀÇ Å°-°ª ½Ö¸¸ µé¾î ÀÖ½À´Ï´Ù. 1000°³°¡ ¾Æ´Õ´Ï´Ù.

+

AutoHotkey v1.x¿¡¼­ ´Ü¼ø ¹è¿­°ú ¿¬°ü ¹è¿­Àº °°Àº °ÍÀÔ´Ï´Ù. ±×·¸Áö¸¸ []¸¦ ´Ü¼ø ¹è¿­·Î °£ÁÖÇÏ´Â °ÍÀÌ ±×ÀÇ ¸ñÀûÀ» ¸íÈ®ÇÏ°Ô º¸¿©ÁÖ´Â µ¥ µµ¿òÀÌ µÇ°í, ¹Ì·¡ ¹öÀüÀÇ ¿ÀÅäÇÖÅ°¿¡ ½ºÅ©¸³Æ®°¡ ÀÛµ¿ÇÒ °¡´É¼ºÀ» ³ô¿©ÁÝ´Ï´Ù. ¾ÕÀ¸·Î´Â ´Ü¼ø ¹è¿­°ú ¿¬°ü ¹è¿­ »çÀÌ¿¡ Â÷ÀÌ°¡ ÀÖÀ» ¼ö ÀÖ½À´Ï´Ù.

+ +

°´Ã¼

+

+Ư¼ºÀ» ¿­¶÷ÇÕ´Ï´Ù:

+ +
Value := Object.Property
+

+Ư¼ºÀ» ¼³Á¤ÇÕ´Ï´Ù:

+ +
Object.Property := Value
+

+¸Þ½îµå¸¦ È£ÃâÇÕ´Ï´Ù:

+ +
ReturnValue := Object.Method(Parameters)
+

+°è»êÇÑ ¸Þ½îµå À̸§À¸·Î ¸Þ½îµå¸¦ È£ÃâÇÕ´Ï´Ù:

+ +
ReturnValue := Object[MethodName](Parameters)
+

+COM °´Ã¼ÀÇ Æ¯¼º°ú »ç¿ëÀÚ-Á¤ÀÇ °´Ã¼´Â ¸Å°³º¯¼ö¸¦ ¹ÞÀ» ¼ö ÀÖ½À´Ï´Ù:

+ +
Value := Object.Property[Parameters]
+Object.Property[Parameters] := Value
+

+°ü·Ã Ç׸ñ: Object, File Object, Func Object, COM object

+ +

¾Ë·ÁÁø ÇÑ°è:

+ + +

°´Ã¼ Ç®¾îÁÖ±â

+

+½ºÅ©¸³Æ®´Â ¸í½ÃÀûÀ¸·Î °´Ã¼¸¦ Ç®¾îÁÖÁö ¾Ê½À´Ï´Ù. °´Ã¼¸¦ °¡¸®Å°´Â ¸¶Áö¸· ÂüÁ¶°¡ »ç¶óÁö¸é, ±× °´Ã¼´Â ÀÚµ¿À¸·Î ÇØÁ¦µË´Ï´Ù. º¯¼ö¿¡ ÀúÀåµÈ ÂüÁ¶´Â ±× º¯¼ö°¡ ´Ù¸¥ °ª¿¡ ÇÒ´çµÇ¸é ÀÚµ¿À¸·Î ÇØÁ¦µË´Ï´Ù. ¿¹¸¦ µé¾î:

+
obj := {}  ; °´Ã¼¸¦ »ý¼ºÇÕ´Ï´Ù.
+obj := ""  ; ¸¶Áö¸· ÂüÁ¶¸¦ ÇØÁ¦ÇÕ´Ï´Ù. ±×·¯¹Ç·Î °´Ã¼°¡ ÇعæµË´Ï´Ù.
+

+ºñ½ÁÇÏ°Ô, ¶Ç´Ù¸¥ °´Ã¼ÀÇ Çʵ忡 ÀúÀåµÈ ÂüÁ¶Á¡Àº ±× Çʵ尡 ¶Ç´Ù¸¥ °ª¿¡ ÇÒ´çµÇ°Å³ª ±× °´Ã¼·ÎºÎÅÍ Á¦°ÅµÉ ¶§ ÀÚµ¿À¸·Î Ç®¾îÁý´Ï´Ù. ÀÌ°ÍÀº ¹è¿­¿¡µµ Àû¿ëµË´Ï´Ù. ¹è¿­Àº ½ÇÁ¦·Î °´Ã¼ÀÔ´Ï´Ù.

+
arr := [{}]  ; °´Ã¼¸¦ ´ã°í ÀÖ´Â ¹è¿­À» »ý¼ºÇÕ´Ï´Ù.
+arr[1] := {}  ; µÎ ¹ø° °´Ã¼¸¦ »ý¼ºÇÕ´Ï´Ù. ¹¬½ÃÀûÀ¸·Î ù °´Ã¼¸¦ Ç®¾îÁÖ°í ÀÖ½À´Ï´Ù.
+arr.Remove(1)  ; µÎ ¹ø° °´Ã¼¸¦ Á¦°ÅÇÏ°í Ç®¾îÁÝ´Ï´Ù.
+

ÇÑ °´Ã¼¸¦ °¡¸®Å°´Â ¸ðµç ÂüÁ¶°¡ ÇØÁ¦µÇ¾î¾ß ºñ·Î¼­ ±× °´Ã¼°¡ ÇعæµÉ ¼ö ÀÖ½À´Ï´Ù. ±×·¡¼­ ¼øȯ ÂüÁ¶°¡ ÀÖ´Â °´Ã¼´Â ÀÚµ¿À¸·Î Ç®¾îÁöÁö ¾Ê½À´Ï´Ù. ¿¹¸¦ µé¸é, x.child°¡ y¸¦ °¡¸®Å°°í y.parent°¡ x¸¦ °¡¸®Å²´Ù¸é, x¿Í y¸¦ ¼Ò°ÅÇÏ´Â °Í¸¸À¸·Î´Â ÃæºÐÇÏÁö ¾Ê½À´Ï´Ù. ¿Ö³ÄÇÏ¸é ºÎ¸ð °´Ã¼¿¡ ¿©ÀüÈ÷ ÀÚ¼ÕÀ» °¡¸®Å°´Â ÂüÁ¶°¡ µé¾îÀÖ°í ±× ¹Ý´ëµµ ¸¶Âù°¡ÁöÀ̱⠶§¹®ÀÔ´Ï´Ù. ÀÌ ¹®Á¦¸¦ ÇØ°áÇÏ·Á¸é, ¼øȯ ÂüÁ¶¸¦ Á¦°ÅÇØ¾ß ÇÕ´Ï´Ù.

+
+x := {}, y := {}             ; °´Ã¼¸¦ µÎ °³ »ý¼ºÇÕ´Ï´Ù.
+x.child := y, y.parent := x  ; ¼øȯ ÂüÁ¶¸¦ »ý¼ºÇÕ´Ï´Ù.
+
+y.parent := ""               ; ¼øȯ ÂüÁ¶¸¦ ¸ÕÀú Á¦°ÅÇØ¾ß °´Ã¼°¡ ÇعæµÉ ¼ö ÀÖ½À´Ï´Ù.
+x := "", y := ""             ; À§ÀÇ ÁÙÀÌ ¾ø´Ù¸é, ÀÌ Áٷδ °´Ã¼¸¦ Ç®¾îÁÙ ¼ö ¾ø½À´Ï´Ù.
+
+

´õ ÀÚ¼¼ÇÑ ³»¿ë°ú °í±Þ »ç¿ë¹ýÀº ÂüÁ¶ Ƚ¼ö ¼¼±â¸¦ º¸½Ê½Ã¿À.

+ +

³íÆò

+ +

±¸¹®

+

¸ðµç À¯ÇüÀÇ °´Ã¼´Â ¹è¿­ ±¸¹®(°¢°ýÈ£)°ú °´Ã¼ ±¸¹® (Á¡)À» Áö¿øÇÕ´Ï´Ù.

+

°Ô´Ù°¡, °´Ã¼ ÂüÁ¶´Â Ç¥Çö½Ä¿¡ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù:

+ +

°´Ã¼°¡ ¿¹»óÄ¡ ¸øÇÑ ¹®¸Æ¿¡¼­ »ç¿ëÁßÀ̸é, ±× °´Ã¼´Â ºó ¹®ÀÚ¿­·Î Ãë±ÞµË´Ï´Ù. ¿¹¸¦ µé¾î, MsgBox %object% ´Â ºó MsgBox¸¦ º¸¿©ÁÖ°í object + 1´Â ºó ¹®ÀÚ¿­À» »êÃâÇÕ´Ï´Ù. ÀÌ ÇàÀ§´Â ¹Ù²ð ¼ö ÀÖÀ¸¹Ç·Î ¿©±â¿¡ ÀÇÁ¸ÇÏ¸é ¾ÈµË´Ï´Ù.

+

¸Þ½îµå-È£Ãâ ´ÙÀ½¿¡ °ð¹Ù·Î ÇÒ´ç ¿¬»êÀÚ°¡ ¿À¸é, ¸Å°³º¯¼ö·Î Ư¼ºÀ» ÇÒ´çÇÏ´Â °Í°ú µ¿µîÇÕ´Ï´Ù. ¿¹¸¦ µé¾î, ´ÙÀ½Àº ¼­·Î µ¿µîÇÕ´Ï´Ù:

+
obj.item(x) := y
+obj.item[x] := y
+

x.y += 1¿Í --arr[1]°°Àº º¹ÇÕ ¼­¼ú¹®À» Áö¿øÇÕ´Ï´Ù.

+

[v1.1.20+]: Ư¼ºÀ» ¼³Á¤Çϰųª ȹµæÇÒ ¶§ ¸Å°³º¯¼ö¸¦ »ý·«ÇÒ ¼ö ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î, x[,2]. ½ºÅ©¸³Æ®´Â À̸¦ ÀÌ¿ëÇÏ¿© Ư¼º°ú ¸ÞŸ-ÇÔ¼öÀÇ ¸Å°³º¯¼ö¿¡ ±âº» °ªµéÀ» Á¤ÀÇÇÒ ¼ö ÀÖ½À´Ï´Ù. +¸Þ½îµå À̸§µµ x[](a)ó·³ ¿ÏÀüÈ÷ »ý·« °¡´ÉÇÕ´Ï´Ù. ½ºÅ©¸³Æ®´Â À̸¦ ÀÌ¿ëÇÏ¿© __Call ¸ÞŸ-ÇÔ¼öÀÇ ¸Å°³º¯¼ö¿¡ ±âº» °ªÀ» Á¤ÀÇÇÒ ¼ö ÀÖ½À´Ï´Ù. ¿Ö³ÄÇÏ¸é ±×·¸Áö ¾ÊÀ¸¸é °ªÀÌ Á¦°øµÇÁö ¾Ê±â ¶§¹®ÀÔ´Ï´Ù. + +ÀÌ°ÍÀº x.(a)¿Í ´Ù¸£¸ç, x[""](a)°ú µ¿µîÇÑ °Í¿¡ ÁÖ¸ñÇϽʽÿÀ. COM °´Ã¼¸¦ È£ÃâÇÒ ¶§ Ư¼ºÀ̳ª ¸Þ½îµå À̸§ÀÌ »ý·«µÇ¸é, ±×ÀÇ "±âº» ¸â¹ö"°¡ È£ÃâµË´Ï´Ù.

+ +

Å°

+

+[], {} ¶Ç´Â new ¿¬»êÀÚ·Î »ý¼ºµÈ °´Ã¼¿¡ ¾î´À °ªÀ» »ç¿ëÇÒ ¼ö ÀÖ´ÂÁö´Â ¾à°£ Á¦ÇÑÀÌ ÀÖ½À´Ï´Ù :

+ + +

È®Àå »ç¿ë¹ý

+

ÇÔ¼ö ÂüÁ¶ [v1.1.00+]

+

+º¯¼ö func¿¡ ÇÔ¼ö À̸§ÀÌ µé¾î ÀÖ´Ù¸é, ±× ÇÔ¼ö´Â µÎ °¡Áö ¹æ¹ýÀ¸·Î È£ÃâÇÒ ¼ö ÀÖ½À´Ï´Ù: %func%() ¶Ç´Â func.(). ±×·¸Áö¸¸, ÀÌ·¸°Ô ÇÏ·Á¸é ¸Å¹ø ÇÔ¼ö À̸§À» °áÁ¤ÇØ¾ß Çϴµ¥, ÇÔ¼ö°¡ ¿©·¯¹ø È£ÃâµÈ´Ù¸é È¿À²ÀûÀÌÁö ¸øÇÕ´Ï´Ù. ¼öÇ༺´ÉÀ» °³¼±Çϱâ À§ÇØ, ½ºÅ©¸³Æ®´Â ÇÔ¼ö¿¡ ´ëÇÑ ÂüÁ¶¸¦ ¿­¶÷ÇØ ±×°ÍÀ» ÀúÀåÇØ ³ªÁß¿¡ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù:

+
Func := Func("MyFunc")
+

ÇÔ¼ö´Â ´ÙÀ½°ú °°Àº ±¸¹®À» »ç¿ëÇÏ¿© ÂüÁ¶·Î È£ÃâÇÒ ¼ö ÀÖ½À´Ï´Ù:

+
+RetVal := %Func%(Params)     ; v1.1.07+À» ¿ä±¸ÇÕ´Ï´Ù
+RetVal := Func.Call(Params)  ; v1.1.19+À» ¿ä±¸ÇÕ´Ï´Ù
+RetVal := Func.(Params)      ; ±ÇÀåÇÏÁö ¾Ê½À´Ï´Ù
+
+

ÇÔ¼ö ÂüÁ¶ÀÇ Ãß°¡ Ư¼ºµé¿¡ °üÇÑ Á¤º¸´Â Func Object¸¦ ÂüÁ¶ÇϽʽÿÀ.

+ +

¹è¿­ÀÇ ¹è¿­

+

¿ÀÅäÇÖÅ°´Â "´Ù-Â÷¿ø" ¹è¿­À» Áö¿øÇÕ´Ï´Ù. ´Ù¸¥ ¹è¿­ ¾È¿¡ ¹è¿­À» Åõ¸íÇÏ°Ô ÀúÀåÇÏ¸é µË´Ï´Ù. ¿¹¸¦ µé¾î, Å×À̺íÀº ÇàÀÇ ¹è¿­·Î Ç¥ÇöÇÒ ¼ö ÀÖ½À´Ï´Ù. ¹Ý¸é¿¡ °¢ Çà ÀÚü´Â ¿­ÀÇ ¹è¿­ÀÔ´Ï´Ù. ±× °æ¿ì, xÇà y¿­ÀÇ ³»¿ëÀº ¾Æ·¡ÀÇ ¹æ¹ýÁß Çϳª¸¦ »ç¿ëÇÏ¿© ¼³Á¤ÇÒ ¼ö ÀÖ½À´Ï´Ù:

+
table[x][y] := content  ; A
+table[x, y] := content  ; B
+

+table[x]°¡ Á¸ÀçÇÏÁö ¾ÊÀ¸¸é, A¿Í B´Â µÎ °¡Áö Á¡¿¡¼­ ´Ù¸¨´Ï´Ù:

+ +

table[a, b, c, d] := value¿Í °°Àº ´Ù-Â÷¿ø ÇÒ´çÀº ´ÙÀ½°ú °°ÀÌ Ã³¸®µË´Ï´Ù:

+ +

´ÙÀ½ ÇàÀ§´Â ¿ÀÁ÷ ½ºÅ©¸³Æ®·Î-¸¸µç °´Ã¼¿¡¸¸ Àû¿ëµË´Ï´Ù. Á» ´õ Àü¹®È­µÈ À¯ÇüÀÇ °´Ã¼, COM °´Ã¼³ª COM ¹è¿­Àº Àû¿ëµÇÁö ¾Ê½À´Ï´Ù.

+ +

ÇÔ¼ö ¹è¿­

+

ÇÔ¼ö ¹è¿­Àº ´Ü¼øÈ÷ ÇÔ¼ö À̸§À̳ª ÂüÁ¶¸¦ ´ã°í ÀÖ´Â ¹è¿­ÀÔ´Ï´Ù. ¿¹¸¦ µé¾î:

+
array := [Func("FirstFunc"), Func("SecondFunc")]
+
+; °¢ ÇÔ¼ö¸¦ È£ÃâÇÑ´Ù, "foo"¸¦ ¸Å°³º¯¼ö·Î °Ç³Ù´Ù:
+Loop 2
+    array[A_Index].("foo")
+
+; °¢ ÇÔ¼ö¸¦ È£ÃâÇÑ´Ù. ¹¬½ÃÀûÀ¸·Î ¹è¿­ ÀÚü¸¦ ¸Å°³º¯¼ö·Î °Ç³Ù´Ù:
+Loop 2
+    array[A_Index]()
+
+FirstFunc(param) {
+    MsgBox % A_ThisFunc ": " (IsObject(param) ? "object" : param)
+}
+SecondFunc(param) {
+    MsgBox % A_ThisFunc ": " (IsObject(param) ? "object" : param)
+}
+

ÇÏÀ§-ȣȯÀ» À§ÇØ, array[A_Index]¿¡ ÇÔ¼ö ÂüÁ¶°¡ ¾Æ´Ï¶ó ÇÔ¼ö À̸§ÀÌ µé¾î ÀÖ´Ù¸é, µÎ ¹ø° ÇüÅ´ ¹è¿­(array)À» ¸Å°³º¯¼ö·Î °Ç³×Áö ¾Ê½À´Ï´Ù. ±×·¸Áö¸¸, array[A_Index]°¡ array.base[A_Index]À¸·ÎºÎÅÍ »ó¼ÓµÇ¾ú´Ù¸é, ¹è¿­(array)ÀÌ ¸Å°³º¯¼ö·Î °Ç³×Áý´Ï´Ù.

+ +

¸ÂÃã °´Ã¼

+

½ºÅ©¸³Æ®·Î ¸¸µç °´Ã¼´Â ¹Ì¸® Á¤ÀÇµÈ ±¸Á¶¸¦ °¡Áú ÇÊ¿ä°¡ ¾ø½À´Ï´Ù. ´ë½Å¿¡, °¢ °´Ã¼´Â Ư¼º°ú ¸Þ½îµå¸¦ ±×ÀÇ base °´Ã¼·ÎºÎÅÍ »ó¼Ó¹Þ¾Æ¾ß ÇÕ´Ï´Ù (±×·¸Áö ¾ÊÀ¸¸é "ÇÁ·ÎÅäŸÀÔ" ¶Ç´Â "class"¶ó°í ¾Ë·ÁÁø). Ư¼º°ú ¸Þ½îµå´Â ¾ðÁ¦µçÁö °´Ã¼¿¡ Ãß°¡ÇÒ ¼öµµ (Á¦°ÅÇÒ ¼öµµ) ÀÖ½À´Ï´Ù. ÀÌ·± º¯°æÀº À̷κÎÅÍ ÆÄ»ýµÈ ¸ðµç °´Ã¼¿¡ ¿µÇâÀ» ¹ÌĨ´Ï´Ù. º¸´Ù º¹ÀâÇÏ°í ÀüÈ­µÈ »óȲÀ» À§ÇØ, º£À̽º °´Ã¼´Â ÀÚ½ÅÀ» »ó¼Ó¹ÞÀº °´Ã¼µéÀÇ Ç¥ÁØ ÇàÀ§¸¦ ¿À¹ö¶óÀ̵å ÇÒ ¼ö ÀÖ½À´Ï´Ù. ¸ÞŸ-ÇÔ¼ö¸¦ Á¤ÀÇÇØ ¿À¹ö¶óÀ̵å ÇÕ´Ï´Ù.

+

Base °´Ã¼´Â ±×³É Æò¹üÇÑ °´Ã¼À̸ç, ÀüÇüÀûÀ¸·Î µÎ °¡Áö ¹æ½ÄÀ¸·Î »ý¼ºµË´Ï´Ù:

+
class baseObject {
+    static foo := "bar"
+}
+; ¶Ç´Â
+baseObject := {foo: "bar"}
+

+°´Ã¼¸¦ ¶Ç´Ù¸¥ °´Ã¼·ÎºÎÅÍ ÆÄ»ý½ÃÄÑ »ý¼ºÇϱâ À§ÇØ, ½ºÅ©¸³Æ®´Â base Ư¼º¿¡ ÇÒ´çÇϰųª new Å°¿öµå¸¦ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù:

+
obj1 := Object(), obj1.base := baseObject
+obj2 := {base: baseObject}
+obj3 := new baseObject
+MsgBox % obj1.foo " " obj2.foo " " obj3.foo
+

+¾ðÁ¦µçÁö ÇÑ °´Ã¼ÀÇ base¸¦ ÀçÇÒ´çÇÒ ¼ö ÀÖ½À´Ï´Ù. °´Ã¼°¡ »ó¼Ó¹ÞÀº ¸ðµç Ư¼º°ú ¸Þ½îµå¸¦ È¿°úÀûÀ¸·Î ±³Ã¼ÇÕ´Ï´Ù.

+ +

ÇÁ·ÎÅäŸÀÔ

+

+ÇÁ·ÎÅäŸÀÔ ¶Ç´Â base °´Ã¼´Â ´Ù¸¥ °´Ã¼¿Í ¸¶Âù°¡Áö·Î ±¸¼ºÇÏ°í Á¶ÀÛÇÕ´Ï´Ù. ¿¹¸¦ µé¾î, Ư¼º Çϳª¿Í ¸Þ½îµå Çϳª¸¦ °¡Áø Æò¹üÇÑ °´Ã¼´Â ´ÙÀ½°ú °°ÀÌ ±¸¼ºÇÒ ¼ö ÀÖ½À´Ï´Ù:

+
; °´Ã¼¸¦ »ý¼ºÇÑ´Ù.
+thing := {}
+; Store a value.
+thing.foo := "bar"
+; ÇÔ¼ö ÂüÁ¶¸¦ ÀúÀåÇÔÀ¸·Î½á ¸Þ½îµå¸¦ »ý¼ºÇÑ´Ù.
+thing.test := Func("thing_test")
+; ¸Þ½îµå¸¦ È£ÃâÇÑ´Ù.
+thing.test()
+
+thing_test(this) {
+   MsgBox % this.foo
+}
+

+thing.test()°¡ È£ÃâµÇ¸é, thing´Â ÀÚµ¿À¸·Î ¸Å°³º¯¼ö ¸®½ºÆ®ÀÇ Ã¹¹ø°·Î »ðÀԵ˴ϴÙ. ±×·¸Áö¸¸, ÇÏÀ§ ȣȯÀ» À§ÇØ, ÀÌ·± ÀÏÀº ÇÔ¼ö°¡ (ÂüÁ¶°¡ ¾Æ´Ï¶ó) À̸§À¸·Î (º£À̽º °´Ã¼·ÎºÎÅÍ »ó¼Ó¹Þ´Â °ÍÀÌ ¾Æ´Ï¶ó) Á÷Á¢ÀûÀ¸·Î °´Ã¼¿¡ ÀúÀåµÉ °æ¿ì¿¡¸¸ ÀϾ´Ï´Ù. °ü·ÊÀûÀ¸·Î ÇÔ¼ö´Â °´Ã¼ÀÇ À¯Çü°ú ¸Þ½îµåÀÇ À̸§À» °áÇÕÇØ Áþ½À´Ï´Ù.

+

+°´Ã¼´Â ¶Ç´Ù¸¥ °´Ã¼°¡ ±×·ÎºÎÅÍ ÆÄ»ýÇØ ³ª°¡¸é ÇÁ·ÎÅäŸÀÔ(prototype) ¶Ç´Â º£À̽º(base)°¡ µË´Ï´Ù:

+
other := {}
+other.base := thing
+other.test()
+

+ÀÌ °æ¿ì, other´Â foo¸¦ »ó¼Ó¹Þ°í test´Â thingÀ¸·ÎºÎÅÍ »ó¼ÓÀ» ¹Þ½À´Ï´Ù. ÀÌ·± »ó¼Ó °ü°è´Â ¿ªµ¿ÀûÀÔ´Ï´Ù. ±×·¡¼­ thing.foo°¡ º¯°æµÇ¸é, ±× º¯°æÀÌ other.foo¿¡ ¹Ý¿µµË´Ï´Ù. ½ºÅ©¸³Æ®°¡ other.foo¿¡ ÇÒ´çÇϸé, ±× °ªÀº other¿¡ ÀúÀåµË´Ï´Ù. thing.foo¿¡ º¯°æÀ» ´õ °¡ÇÏ´õ¶óµµ other.foo¿¡´Â ¿µÇâÀ» ¹ÌÄ¡Áö ¾Ê½À´Ï´Ù. other.test()°¡ È£ÃâµÇ¸é, ±×ÀÇ this ¸Å°³º¯¼ö¿¡´Â thingÀÌ ¾Æ´Ï¶ó other¸¦ °¡¸®Å°´Â ÂüÁ¶°¡ µé¾î°©´Ï´Ù. +

+ +

Ŭ·¡½º [v1.1.00+]

+

+¾î¿øÀ¸·Î ¸»ÇÏÀÚ¸é "Ŭ·¡½º"¶õ °øÅëÀÇ Æ¯¼ºÀ̳ª ¼Ó¼ºÀ» °¡Áö°í ÀÖ´Â °ÍµéÀÇ ÇÑ ¹üÁÖ ¶Ç´Â ÁýÇÕÀÔ´Ï´Ù. base °´Ã¼³ª prototype °´Ã¼´Â °´Ã¼ ÁýÇÕ¿¡ ´ëÇÏ¿© Ư¼º°ú ÇàÀ§¸¦ Á¤ÀÇÇϱ⠶§¹®¿¡, Ŭ·¡½º(class) °´Ã¼¶ó°í ºÎ¸¦ ¼öµµ ÀÖ½À´Ï´Ù. ÆíÀǸ¦ À§ÇØ, º£À̽º °´Ã¼´Â ¾Æ·¡¿¡ º¸¿©ÁÖ´Â ¹Ù¿Í °°ÀÌ "class" Å°¿öµå¸¦ »ç¿ëÇÏ¿© Á¤ÀÇÇÒ ¼ö ÀÖ½À´Ï´Ù:

+ +
class ClassName extends BaseClassName
+{
+    InstanceVar := Expression
+    static ClassVar := Expression
+
+    class NestedClass
+    {
+        ...
+    }
+
+    Method()
+    {
+        ...
+    }
+
+    Property[]  ; °¢°ýÈ£´Â ¼±ÅÃÀûÀÌ´Ù
+    {
+        get {
+            return ...
+        }
+        set {
+            return ... := value
+        }
+    }
+}
+
+

½ºÅ©¸³Æ®°¡ ÀûÀçµÉ ¶§, ÀÌ ÄÚµå´Â °´Ã¼¸¦ Çϳª ±¸¼ºÇÏ°í ±×°ÍÀ» Àü¿ª º¯¼ö (¶Ç´Â v1.1.05+À̶ó¸é ¼öÆÛ-Àü¿ª º¯¼ö) ClassName¿¡ ÀúÀåÇÕ´Ï´Ù. v1.1.05 ÀÌÀüÀ̶ó¸é, ÀÌ Å¬·¡½º¸¦ ÇÔ¼ö ¾È¿¡¼­ ÂüÁ¶ÇÏ·Á¸é, ±× ÇÔ¼ö°¡ assume-globalÀÌ ¾Æ´Ñ ÇÑ, global ClassName¿Í °°Àº ¼±¾ðÀÌ ÇÊ¿äÇÕ´Ï´Ù. extends BaseClassName°¡ ÀÖÀ¸¸é, BaseClassNameÀº ¹Ýµå½Ã ¶Ç´Ù¸¥ Ŭ·¡½ºÀÇ ¿ÏÀüÇÑ À̸§À̾î¾ß ÇÕ´Ï´Ù (±×·¯³ª v1.1.11¿¡¼­´Â Á¤ÀÇµÈ ¼ø¼­´Â ¹®Á¦°¡ µÇÁö ¾Ê½À´Ï´Ù). °¢ Ŭ·¡½ºÀÇ ¿ÏÀüÇÑ À̸§ÀÌ object.__Class¿¡ ÀúÀåµË´Ï´Ù.

+

+ÀÌ ¹®¼­ ¾È¿¡¼­ Ŭ·¡½º("class")¶ó´Â ´Ü¾î´Â ±× ÀÚü·Î º¸Åë class Å°¿öµå·Î ±¸¼ºµÈ Ŭ·¡½º °´Ã¼¸¦ ÀǹÌÇÕ´Ï´Ù.

+

Ŭ·¡½º Á¤ÀÇ´Â º¯¼ö ¼±¾ð, ¸Þ½îµå Á¤ÀÇ, ³»Æ÷ Ŭ·¡½º Á¤ÀǸ¦ Æ÷ÇÔÇÒ ¼ö ÀÖ½À´Ï´Ù.

+ +

½Çü º¯¼ö [v1.1.01+]

+

+½Çü º¯¼ö´Â Ŭ·¡½ºÀÇ °¢ ½Çü°¡ ÀڽŸ¸ÀÇ Å¬·¡½º »çº»À» °¡Áø °ÍÀÔ´Ï´Ù. º¸ÅëÀÇ ÇÒ´çó·³ ¼±¾ðµÇÁö¸¸, this. Á¢µÎ»ç°¡ »ý·«µÇ¾î ÀÖ½À´Ï´Ù (Ŭ·¡½º ¸öü ¾È¿¡¼­ Á÷Á¢ÀûÀ¸·Î »ç¿ëµÉ °æ¿ì¿¡¸¸ »ý·«ÇÕ´Ï´Ù):

+
InstanceVar := Expression
+

+ÀÌ·± ¼±¾ðÀº Ŭ·§ÀÇ »õ ½Çü°¡ new Å°¿öµå·Î »ý¼ºµÉ ¶§¸¶´Ù ¸Å¹ø Æò°¡µË´Ï´Ù. ¸Þ½îµå À̸§ __InitÀº ÀÌ·± ¸ñÀûÀ» À§ÇØ ¿¹¾àµÇ¾î ÀÖÀ¸¸ç, ´Ù¸¥ ½ºÅ©¸³Æ®¿¡¼­ »ç¿ëÇÏ¸é ¾ÈµË´Ï´Ù. __New() ¸Þ½îµå´Â º£À̽º Ŭ·¡½º¿¡ Á¤ÀÇµÈ ¼±¾ðÀ» Æ÷ÇÔÇÏ¿© ±× ¸ðµç ¼±¾ðÀÌ Æò°¡µÈ ÈÄ¿¡ È£ÃâµË´Ï´Ù. Ç¥Çö½ÄÀº ´Ù¸¥ ½Çü º¯¼ö¿Í ¸Þ¼Òµå¿¡ this¸¦ ÅëÇÏ¿© Á¢±ÙÇÒ ¼ö ÀÖÁö¸¸, ¸ðµç ´Ù¸¥ º¯¼ö ÂüÁ¶´Â Àü¿ªÀûÀ̶ó°í °£Áֵ˴ϴÙ.

+

+½Çü º¯¼ö¿¡ Á¢±ÙÇÏ·Á¸é (¸Þ½îµå ¾È¿¡¼­µµ ¸¶Âù°¡Áö·Î), ¾ðÁ¦³ª ¸ñÇ¥ °´Ã¼¸¦ ÁöÁ¤ÇÕ´Ï´Ù; ¿¹¸¦ µé¾î, this.InstanceVar.

+

[v1.1.08+]: ÀÌ Å¬·¡½º¿¡ x°¡ ¹Ì¸® ¼±¾ðµÇ¾î ÀÖ´Ù¸é x.y := z¿Í °°Àº ¼±¾ðµµ Áö¿øµË´Ï´Ù. ¿¹¸¦ µé¾î, x := {}, x.y := 42´Â x¸¦ ¼±¾ðÇÏ°í ¶Ç this.x.y¸¦ ÃʱâÈ­ÇÕ´Ï´Ù.

+ +

Á¤Àû/Ŭ·¡½º º¯¼ö [v1.1.00.01+]

+

+Á¤Àû/Ŭ·¡½º º¯¼ö´Â Ŭ·¡½º ÀÚü¿¡ ¼ÓÇÏÁö¸¸, (ÇÏÀ§-Ŭ·¡½º¸¦ Æ÷ÇÔÇÏ¿©) ÆÄ»ý °´Ã¼°¡ »ó¼Ó¹ÞÀ» ¼ö ÀÖ½À´Ï´Ù. ½Çü º¯¼öó·³ ¼±¾ðµÇÁö¸¸, static Å°¿öµå¸¦ »ç¿ëÇÕ´Ï´Ù:

+
static ClassVar := Expression
+

+Á¤Àû ¼±¾ðÀº ¿ÀÁ÷ ÀÚµ¿-½ÇÇà ¼½¼Ç Àü¿¡ ÇÑ ¹ø¸¸ Æò°¡µË´Ï´Ù. ±×¸®°í ¼ø¼­´ë·Î ½ºÅ©¸³Æ®¿¡ ³ªÅ¸³³´Ï´Ù. °¢ ¼±¾ðÀº °ªÀ» object Ŭ·¡½º¿¡ ÀúÀåÇÕ´Ï´Ù. Ç¥Çö½Ä ¾ÈÀÇ ¸ðµç º¯¼ö ÂüÁ¶´Â Àü¿ªÀûÀ̶ó°í °£Áֵ˴ϴÙ.

+

+Ŭ·¡½º º¯¼ö¿¡ Á¢±ÙÇÏ·Á¸é, ¾ðÁ¦³ª Ŭ·¡½º³ª ÆÄ»ý °´Ã¼¸¦ ÁöÁ¤ÇÕ´Ï´Ù. ¿¹¸¦ µé¾î, ClassName.ClassVar.

+

[v1.1.08+]: ÀÌ Å¬·¡½º¿¡ x°¡ ¹Ì¸® Á¤ÀǵǾî ÀÖ´Ù¸é static x.y := z¿Í °°Àº Ç¥Çöµµ Áö¿øÇÕ´Ï´Ù. ¿¹¸¦ µé¾î, static x := {}, x.y := 42´Â x¸¦ ¼±¾ðÇÏ°í ¶Ç ClassName.x.y¸¦ ÃʱâÈ­ÇÕ´Ï´Ù.

+ +

³»Æ÷ Ŭ·¡½º

+

³»Æ÷ Ŭ·¡½º Á¤ÀǴ Ŭ·¡½º °´Ã¼¸¦ ¶Ç´Ù¸¥ Àü¿ª º¯¼ö°¡ ¾Æ´Ï¶ó ¶Ç´Ù¸¥ Ŭ·¡½º °´Ã¼ ¾È¿¡ ÀúÀåµÇµµ·Ï Çã¿ëÇÕ´Ï´Ù. À§ÀÇ ¿¹Á¦¿¡¼­, class NestedClass´Â °´Ã¼¸¦ ±¸¼ºÇÏ°í ±×°ÍÀ» ClassName.NestedClass¿¡ ÀúÀåÇÕ´Ï´Ù. ÇÏÀ§-Ŭ·¡½º´Â NestedClass¸¦ »ó¼Ó¹Þ°Å³ª ÀÚ½ÅÀÇ ³»Æ÷ Ŭ·¡½º·Î ±×°ÍÀ» ¿À¹ö¶óÀ̵åÇÒ ¼ö ÀÖ½À´Ï´Ù (ÀÌ °æ¿ì new this.NestedClass¸¦ »ç¿ëÇÏ¿© ÀûÀýÇÑ Å¬·¡½º¸¦ ½ÇüȭÇÒ ¼ö ÀÖ½À´Ï´Ù).

+
+class NestedClass
+{
+    ...
+}
+
+ +

¸Þ½îµå

+

¸Þ½îµå Á¤ÀÇ´Â ÇÔ¼ö Á¤ÀÇ¿Í ¸ð½ÀÀÌ ¶È °°½À´Ï´Ù. °¢ ¸Þ½îµå´Â ¼ûÀº ¸Å°³º¯¼ö·Î this°¡ Àִµ¥, ÀÌ°ÍÀº ÀüÇüÀûÀ¸·Î Ŭ·¡½º·ÎºÎÅÍ »ó¼Ó¹ÞÀº °´Ã¼¸¦ °¡¸®Å°´Â ÂüÁ¶Á¡À» ´ã°í ÀÖ½À´Ï´Ù. ±×·¸Áö¸¸, ¸Þ½îµå°¡ ¾î¶»°Ô È£ÃâµÇ´Â °¡¿¡ µû¶ó Ŭ·¡½º ÀÚü³ª »ó¼Ó¹ÞÀº Ŭ·¡½º¸¦ °¡¸®Å°´Â ÂüÁ¶Á¡À» ´ãÀ» ¼öµµ ÀÖ½À´Ï´Ù. ¸Þ½îµå´Â ÀÌ Å¬·¡½º °´Ã¼¿¡ ÂüÁ¶·Î ÀúÀåµË´Ï´Ù.

+
+Method()
+{
+    ...
+}
+
+ +

¸Þ½îµå ¾È¿¡¼­, ÀÇ»ç-Å°¿öµå base¸¦ »ç¿ëÇϸé, ÆÄ»ý Ŭ·¡½º ¾È¿¡ ¿À¹ö¶óÀ̵åµÈ ¼öÆÛ-Ŭ·¡½ºÀÇ ¸Þ½îµå³ª Ư¼º¿¡ Á¢±ÙÇÒ ¼ö ÀÖ½À´Ï´Ù. +¿¹¸¦ µé¾î, À§¿¡ Á¤ÀÇµÈ Å¬·¡½º¿¡¼­ base.Method()´Â BaseClassName¿¡ Á¤ÀÇµÈ Method ¹öÀüÀ» È£ÃâÇÕ´Ï´Ù. ¸ÞŸ-ÇÔ¼ö´Â È£ÃâµÇÁö ¾Ê½À´Ï´Ù; +±×·¸Áö ¾ÊÀ¸¸é, base.Method()´Â ¸¶Ä¡ BaseClassName.Method.(this)ó·³ ÇàÀ§ÇÕ´Ï´Ù. ´Ù½Ã ¸»ÇØ,

+ +

+base´Â ´ÙÀ½¿¡ Á¡. ¶Ç´Â °¢°ýÈ£ []°¡ µû¶ó¿À¸é Ưº°ÇÑ Àǹ̸¦ °¡Áý´Ï´Ù. ±×·¡¼­ obj := base, obj.Method()¿Í °°Àº ÄÚµå´Â ÀÛµ¿ÇÏÁö ¾Ê½À´Ï´Ù. ½ºÅ©¸³Æ®´Â baseÀÇ Æ¯º°ÇÑ ÇàÀ§¸¦ ºÒ´ÉÀ¸·Î ¸¸µé ¼ö ÀÖ½À´Ï´Ù. °Å±â¿¡´Ù ºñ¾îÀÖÁö-¾ÊÀº °ªÀ» ÇÒ´çÇÏ¸é µË´Ï´Ù; ±×·¸Áö¸¸, ÀÌ°ÍÀº ±ÇÀåÇÏÁö ¾Ê½À´Ï´Ù. ¿Ö³ÄÇÏ¸é º¯¼ö base´Â ²À ºñ¾î ÀÖ¾î¾ß ÇÕ´Ï´Ù. ½ºÅ©¸³Æ®°¡ #NoEnv¸¦ »©¸ÔÀ¸¸é ¼öÇ༺´ÉÀÌ ÀúÇ쵃 ¼ö Àֱ⠶§¹®ÀÔ´Ï´Ù.

+ +

Properties [v1.1.16+]

+

+Ư¼º Á¤ÀÇ´Â ½ºÅ©¸³Æ®°¡ ƯÁ¤ÇÑ Å°¸¦ ¼³Á¤Çϰųª ¿­¶÷ÇÒ ¶§¸¶´Ù ¸Þ½îµå¸¦ ½ÇÇàÇϵµ·Ï Çã¿ëÇÕ´Ï´Ù.

+
Property[]
+{
+    get {
+        return ...
+    }
+    set {
+        return ... := value
+    }
+}
+

+Property´Â ±×³É È£ÃâÇÏ´Â µ¥ »ç¿ëµÇ´Â Ư¼ºÀÇ À̸§ÀÏ »ÓÀÔ´Ï´Ù. ¿¹¸¦ µé¸é, obj.Property´Â getÀ» È£ÃâÇÏ´Â ¹Ý¸é¿¡ obj.Property := value´Â setÀ» È£ÃâÇÕ´Ï´Ù. getÀ̳ª set ¾È¿¡¼­, this´Â ¿äû ÁßÀÎ °´Ã¼¸¦ °¡¸®Åµ´Ï´Ù. set ¾È¿¡¼­, value¿¡´Â ÇÒ´çµÈ °ªÀÌ ´ã±é´Ï´Ù.

+

+¸Å°³º¯¼ö´Â Ư¼º À̸§ÀÇ ¿À¸¥ÂÊ¿¡ °¢°ýÈ£·Î µÑ·¯½Î °Ç³Ú ¼ö ÀÖ½À´Ï´Ù. Ư¼ºÀ» Á¤ÀÇÇÒ ¶§¿Í È£ÃâÇÒ ¶§ ¸ðµÎ ¸¶Âù°¡ÁöÀÔ´Ï´Ù. °¢°ýÈ£¸¦ »ç¿ëÇÏ´Â ¿Ü¿¡µµ, Ư¼ºÀÇ ¸Å°³º¯¼ö´Â ¸Þ½îµåÀÇ ¸Å°³º¯¼ö¿Í °°Àº ¹æ½ÄÀ¸·Î Á¤Àǵ˴ϴ٠- ¼±ÅÃÀû, ByRef ±×¸®°í °¡º¯ ¸Å°³º¯¼ö¸¦ Áö¿øÇÕ´Ï´Ù.

+

+getÀ̳ª setÀÇ ¹Ýȯ°ªÀº ÇØ´ç Ư¼ºÀ» ¿äûÇÑ ÇÏÀ§-Ç¥Çö½ÄÀÇ °á°ú°¡ µË´Ï´Ù. ¿¹¸¦ µé¾î, val := obj.Property := 42´Â setÀÇ ¹Ýȯ °ªÀ» val¿¡ ÀúÀåÇÕ´Ï´Ù.

+

+°¢ Ŭ·¡½º´Â Ư¼ºÀÇ Àý¹Ý¸¸ ¶Ç´Â µÑ ´Ù ¿ÂÀüÇÏ°Ô Á¤ÀÇÇÒ ¼ö ÀÖ½À´Ï´Ù (Ư¼º=¼Ó¼º). Ŭ·¡½º°¡ Ư¼ºÀ» ¿À¹ö¶óÀ̵å Çϸé base.Property¸¦ »ç¿ëÇÏ¿© ÀÚ½ÅÀÇ ±âº» Ŭ·¡½º¿¡ Á¤ÀÇµÈ Æ¯¼º¿¡ Á¢±ÙÇÒ ¼ö ÀÖ½À´Ï´Ù. getÀ̳ª setÀÌ Á¤ÀǵǾî ÀÖÁö ¾ÊÀ¸¸é, ±âº» Ŭ·¡½º°¡ ó¸®ÇÒ ¼ö ÀÖ½À´Ï´Ù. setÀÌ Á¤ÀǵǾî ÀÖÁö ¾Ê°í ¸ÞŸ-ÇÔ¼ö³ª ±âº» Ŭ·¡½º¿¡ ÀÇÇÏ¿© 󸮵ÇÁö ¾ÊÀº °æ¿ì, °ªÀ» °´Ã¼¿¡ ÀúÀåÇÏ¸é ±× Æ¯¼ºÀÌ ºÒ´ÉÀÌ µÇ´Â È¿°ú°¡ ÀÖ½À´Ï´Ù.

+

+³»ºÎÀûÀ¸·Î, get°ú setÀº µÎ °³ÀÇ ´Ù¸¥ ¸Þ½îµåÀÔ´Ï´Ù. ±×·¡¼­ º¯¼ö¸¦ °øÀ¯ÇÒ ¼ö ¾ø½À´Ï´Ù (this¿¡ ÀúÀåÇÑ º¯¼ö´Â °¡´ÉÇÕ´Ï´Ù).

+

¸ÞŸ-ÇÔ¼ö´Â °´Ã¼ÀÇ ¸Þ½îµå¿Í Ư¼º¿¡ Á¢±ÙÀ» º¸´Ù ³Ð°Ô Á¦¾îÇÕ´Ï´Ù. ±×·¯³ª ´õ º¹ÀâÇÏ°í ¿¡·¯¸¦ ÀÏÀ¸Å°´Â °æÇâÀÌ ´õ ³ô½À´Ï´Ù.

+ +

±¸¼º°ú Æı«

+

+ÆÄ»ý °´Ã¼°¡ new Å°¿öµå·Î »ý¼ºµÉ ¶§¸¶´Ù [requires v1.1.00+], ±×ÀÇ ±â¹Ý Ŭ·¡½º¿¡ Á¤ÀÇµÈ __New ¸Þ½îµå°¡ È£ÃâµË´Ï´Ù. ÀÌ ¸Þ½îµå´Â ¸Å°³º¯¼ö¸¦ ¹Þ¾Æ, ±× °´Ã¼¸¦ ÃʱâÈ­ÇÏ°í new ¿¬»êÀÚÀÇ °á°ú¸¦ °ªÀ» µ¹·ÁÁÜÀ¸·Î½á ¿À¹ö¶óÀ̵åÇÒ ¼ö ÀÖ½À´Ï´Ù. + +°´Ã¼°¡ Æı«µÉ ¶§, __Delete°¡ È£ÃâµË´Ï´Ù. ¿¹¸¦ µé¾î:

+
m1 := new GMem(0, 20)
+m2 := {base: GMem}.__New(0, 30)
+
+class GMem
+{
+    __New(aFlags, aSize)
+    {
+        this.ptr := DllCall("GlobalAlloc", "uint", aFlags, "ptr", aSize, "ptr")
+        if !this.ptr
+            return ""
+        MsgBox % "New GMem of " aSize " bytes at address " this.ptr "."
+        return this  ; 'new' ¿¬»êÀÚ¸¦ »ç¿ëÇϸé ÀÌ ÁÙÀº »ý·«ÇÒ ¼ö ÀÖ´Ù.
+    }
+
+    __Delete()
+    {
+        MsgBox % "Delete GMem at address " this.ptr "."
+        DllCall("GlobalFree", "ptr", this.ptr)
+    }
+}
+

__Delete´Â "__Class"¸¦ Å°·Î °¡Áö´Â °´Ã¼¿¡ È£ÃâµÇÁö ¾Ê½À´Ï´Ù. Ŭ·¡½º °´Ã¼°¡ ÀÌ Å°¸¦ ±âº»°ªÀ¸·Î °¡Áý´Ï´Ù.

+ +

¸ÞŸ-ÇÔ¼ö

+
+¸Þ½îµå ±¸¹®:
+class ClassName {
+    __Get([Key, Key2, ...])
+    __Set([Key, Key2, ...], Value)
+    __Call(Name [, Params...])
+}
+
+ÇÔ¼ö ±¸¹®:
+MyGet(this [, Key, Key2, ...])
+MySet(this [, Key, Key2, ...], Value)
+MyCall(this, Name [, Params...])
+
+ClassName := { __Get: Func("MyGet"), __Set: Func("MySet"), __Call: Func("MyCall") }
+
+

+¸ÞŸ-ÇÔ¼ö´Â ¸ñÇ¥ °´Ã¼ ¾È¿¡ Å°¸¦ ¿äûÇßÁö¸¸ ¾È¿¡¼­ ¹ß°ßÇÒ ¼ö ¾øÀ» ¶§ ÀϾ ÇàÀ§¸¦ Á¤ÀÇÇÕ´Ï´Ù. ¿¹¸¦ µé¾î, obj.key¿¡ °ªÀÌ ÇÒ´çµÇÁö ¾Ê¾Ò´Ù¸é, __Get ¸ÞŸ-ÇÔ¼ö¸¦ ¿äûÇÕ´Ï´Ù. ºñ½ÁÇÏ°Ô, obj.key := value´Â __Set¸¦ ¿äûÇÏ°í obj.key()´Â __Call¸¦ È£ÃâÇÕ´Ï´Ù. ÀÌ ¸ÞŸ-ÇÔ¼öµé (¶Ç´Â ¸Þ½îµåµé)Àº obj.base, obj.base.base µîµî¿¡ Á¤ÀÇÇÒ ÇÊ¿ä°¡ ÀÖ½À´Ï´Ù.

+

+½ºÅ©¸³Æ®°¡ ¸ñÇ¥ °´Ã¼ ¾È¿¡ Á¸ÀçÇÏÁö ¾Ê´Â Å°¸¦ ¿­¶÷Çϰųª ¼³Á¤Çϰųª ¶Ç´Â È£ÃâÇϸé, º£À̽º °´Ã¼°¡ ´ÙÀ½°ú °°ÀÌ ¿äûµË´Ï´Ù:

+ +

+ÀÏÄ¡ÇÏ´Â Å°¸¦ ¸ÞŸ-ÇÔ¼ö°¡ °´Ã¼¿¡ ÀúÀåÇÏÁö¸¸ ¹Ýȯ(return)ÇÏÁö ¾ÊÀ¸¸é, ±× ÇàÀ§´Â ¸¶Ä¡ Å°°¡ óÀ½ºÎÅÍ ±× °´Ã¼¿¡ Á¸ÀçÇÑ °Í°ú °°½À´Ï´Ù. __SetÀ» »ç¿ëÇÏ´Â ¿¹Á¦´Â ¹è¿­ÀÇ ¹è¿­ ¼­ºê-Ŭ·¡½ÌÇϱ⸦ ÂüÁ¶ÇϽʽÿÀ.

+

¿¬»êÀÌ ¿©ÀüÈ÷ 󸮵ÇÁö ¾Ê¾Ò´Ù¸é, ÀÌ°ÍÀÌ ³»Àå ÇÔ¼öÀÎÁö ¾Æ´Ï¸é ³»Àå Ư¼ºÀÎÁö Á¡°ËÇϽʽÿÀ:

+ +

¿©ÀüÈ÷ ¿¬»êÀÌ Ã³¸®µÇÁö ¾Ê¾Ò´Ù¸é,

+ + +

¾Ë·ÁÁø ÇÑ°è:

+ + +

µ¿Àû Ư¼º

+

+__Get°ú __Set¸¦ »ç¿ëÇÏ¿© °ªµéÀ» ƯÁ¤ ¹æ½ÄÀ¸·Î °è»êÇϰųª Á¦ÇÑÇÒ ¼ö Àִ Ư¼ºÀ» ±¸ÇöÇÒ ¼ö ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î, R, G, B ±×¸®°í RGB Ư¼ºÀ» °¡Áö°í "Color" °´Ã¼¸¦ ±¸Çö ÇÏ´Â µ¥ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. ¿©±â¿¡¼­ ¿ÀÁ÷ RGB °ª¸¸ ½ÇÁ¦·Î ÀúÀåµË´Ï´Ù:

+
red  := new Color(0xff0000), red.R -= 5
+cyan := new Color(0x00ffff)
+
+MsgBox % "red: " red.R "," red.G "," red.B " = " red.RGB
+MsgBox % "cyan: " cyan.R "," cyan.G "," cyan.B " = " cyan.RGB
+
+class Color
+{
+    __New(aRGB)
+    {
+        this.RGB := aRGB
+    }
+
+    __Get(aName)
+    {
+        if (aName = "R")
+            return (this.RGB >> 16) & 255
+        if (aName = "G")
+            return (this.RGB >> 8) & 255
+        if (aName = "B")
+            return this.RGB & 255
+    }
+
+    __Set(aName, aValue)
+    {
+        if aName in R,G,B
+        {
+            aValue &= 255
+
+            if      (aName = "R")
+                this.RGB := (aValue << 16) | (this.RGB & ~0xff0000)
+            else if (aName = "G")
+                this.RGB := (aValue << 8)  | (this.RGB & ~0x00ff00)
+            else  ; (aName = "B")
+                this.RGB :=  aValue        | (this.RGB & ~0x0000ff)
+
+            ; 'Return'À» »ç¿ëÇÏ¿© »õ Å°-°ª ½ÖÀÌ ¸¸µé¾îÁöÁö ¾Ê¾ÒÀ½À» ¾Ë·Á¾ß ÇÕ´Ï´Ù.
+            ; ¶ÇÇÑ 'x := clr[name] := val'¿¡¼­ ¹«¾ùÀ» 'x'¿¡ ÀúÀåÇÒÁö Á¤ÀÇÇÕ´Ï´Ù:
+            return aValue
+        }
+    }
+}
+ +

ÇÔ¼ö·Î¼­ÀÇ °´Ã¼

+

+obj.func(param)¿Í °°ÀÌ È£ÃâÇϸé, obj.func´Â ÇÔ¼ö À̸§À̳ª °´Ã¼¸¦ ´ãÀ» ¼ö ÀÖ½À´Ï´Ù. obj.func¿¡ °´Ã¼°¡ µé¾î ÀÖ´Ù¸é, ±× °´Ã¼´Â ±× ¸Þ½îµå À̸§ ´ë½Å¿¡ (obj.func)[obj]()ó·³ obj·Î ¿äûÇÒ ¼ö ÀÖ½À´Ï´Ù. + +´ëºÎºÐÀÇ °æ¿ì obj.func[obj]´Â Á¸ÀçÇÏÁö ¾Ê½À´Ï´Ù. ´ë½Å¿¡ obj.func's __Call ¸ÞŸ-ÇÔ¼ö°¡ ¿äûµË´Ï´Ù. À̸¦ ÀÌ¿ëÇÏ¸é ¾Æ·¡ ¿¹Á¦¿¡ º¸¿©ÁÖ´Â ¹Ù¿Í °°ÀÌ ÇÔ¼ö È£ÃâÀÇ ÇàÀ§¸¦ Ãß»óÀûÀÎ ¹æ½ÄÀ¸·Î ¹Ù²Ü ¼ö ÀÖ½À´Ï´Ù:

+ +
; ÇÔ¼ö ¹è¿­À» À§ÇÑ ÇÁ·ÎÅäŸÀÔÀ» »ý¼ºÇÑ´Ù.
+FuncArrayType := {__Call: "FuncType_Call"}
+; ÇÔ¼ö ¹è¿­À» »ý¼ºÇÑ´Ù.
+funcArray := {1: "One", 2: "Two", base: FuncArrayType}
+; ¹è¿­À» ¸Þ½îµå·Î »ç¿ëÇÏ´Â °´Ã¼¸¦ »ý¼ºÇÑ´Ù.
+obj := {func: funcArray}
+; ¸Þ½îµå¸¦ È£ÃâÇÑ´Ù.
+obj.func("foo", "bar")
+
+FuncType_Call(func, obj, params*)
+{
+    ; ÇÔ¼ö ¸®½ºÆ®¸¦ È£ÃâÇÑ´Ù.
+    Loop % ObjMaxIndex(func)
+        func[A_Index](params*)
+}
+
+One(param1, param2) {
+    ListVars
+    Pause
+}
+Two(param1, param2) {
+    ListVars
+    Pause
+}
+

+ÀÌ Å×Å©´ÐÀ» »ç¿ëÇÏ¸é ¸ÞŸ-ÇÔ¼öó·³ ÇàÀ§ÇÏ´Â °´Ã¼¸¦ ¸¸µé ¼ö ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î, ÀÌÀü ¼½¼Ç¿¡¼­ ´Ù·é Ư¼º°ú ºñ½ÁÇÏ°Ô µ¿Àû Ư¼ºµéÀ» Á¤ÀÇÇÒ ¼ö ÀÖ½À´Ï´Ù. +(±×·¸Áö¸¸, ÀÌ ¿¹Á¦´Â Ư¼º Áö¿øÀ¸·Î ´ëüµÇ¾úÀ½À» ÁÖÀÇÇϽʽÿÀ.) ¿¹¸¦ µé¾î:

+
blue := new Color(0x0000ff)
+MsgBox % blue.R "," blue.G "," blue.B
+
+class Properties
+{
+    __Call(aTarget, aName, aParams*)
+    {
+        ; ÀÌ Æ¯¼º °´Ã¼¿¡ ÀÌ Àý¹Ý-Ư¼º¿¡ ´ëÇÑ Á¤ÀÇ°¡ µé¾î ÀÖ´Ù¸é, ±×°ÍÀ» È£ÃâÇÕ´Ï´Ù. 
+        ; this.HasKey(aName)¸¦ »ç¿ëÇÏÁö ¾Êµµ·Ï ÁÖÀÇÇÕ´Ï´Ù. ÀÌ°ÍÀ» »ç¿ëÇϸé __Call ¾ÈÀ¸·Î Àç±Í°¡ ÀϾ´Ï´Ù.
+        if IsObject(aTarget) && ObjHasKey(this, aName)
+            return this[aName].(aTarget, aParams*)
+    }
+}
+
+class Color
+{
+    __New(aRGB)
+    {
+        this.RGB := aRGB
+    }
+
+    class __Get extends Properties
+    {
+        R() {
+            return (this.RGB >> 16) & 255
+        }
+        G() {
+            return (this.RGB >> 8) & 255
+        }
+        B() {
+            return this.RGB & 255
+        }
+    }
+
+    ;...
+}
+ +

¹è¿­ÀÇ ¹è¿­À» ¼­ºê-Ŭ·¡½ÌÇϱâ

+

+ table[x, y] := content¿Í °°ÀÌ ´ÙÁß-¸Å°³º¯¼ö ÇÒ´ç ¶§¹®¿¡ ¹¬½ÃÀûÀ¸·Î »õ·Î¿î °´Ã¼°¡ »ý¼ºµÉ ¶§, ±× »õ °´Ã¼´Â º¸Åë º£À̽º°¡ ¾ø°í ±×·¯¹Ç·Î ¸ÂÃã ¸Þ½îµåµµ ¾ø°í Ưº°ÇÑ ÇàÀ§µµ ¾ø½À´Ï´Ù. __Set´Â ¾Æ·¡¿¡ º¸¿©ÁÖ´Â ¹Ù¿Í °°ÀÌ ÀÌ·± °´Ã¼µéÀ» ÃʱâÈ­ÇÏ´Â µ¥ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù.

+
x := {base: {addr: Func("x_Addr"), __Set: Func("x_Setter")}}
+
+; °ªÀ» ÇÒ´çÇÑ´Ù. ¹¬½ÃÀûÀ¸·Î x_Setter¸¦ »ç¿ëÇÏ¿© ÇÏÀ§-°´Ã¼¸¦ ¸¸µç´Ù.
+x[1,2,3] := "..."
+
+; °ªÀ» ¿­¶÷ÇÏ°í ¿¹Á¦ ¸Þ½îµå¸¦ È£ÃâÇÑ´Ù.
+MsgBox % x[1,2,3] "`n" x.addr() "`n" x[1].addr() "`n" x[1,2].addr()
+
+x_Setter(x, p1, p2, p3) {
+    x[p1] := new x.base
+}
+
+x_Addr(x) {
+    return &x
+}
+

+x_Setter´Â ³× °³ÀÇ Çʼö ¸Å°³º¯¼ö°¡ Àֱ⠶§¹®¿¡, µÎ °³ ÀÌ»óÀÇ Å°°¡ ÀÖÀ» °æ¿ì¿¡¸¸ È£ÃâµË´Ï´Ù. À§ÀÇ ÇÒ´çÀÌ ÀϾ ¶§, ´ÙÀ½°ú °°Àº ÀÏÀÌ ÀϾ´Ï´Ù:

+ + +

±âº» º£À̽º °´Ã¼

+

+ºñ-°´Ã¼ °ªÀÌ °´Ã¼ ±¸¹®°ú ÇÔ²² »ç¿ëµÉ ¶§, ±âº» º£À̽º °´Ã¼°¡ ¿äûµË´Ï´Ù. +ÀÌ°ÍÀº µð¹ö±ë¿¡ »ç¿ëÇϰųª ¶Ç´Â ¹®ÀÚ¿­À̳ª, ¼ýÀÚ, ±×¸®°í/¶Ç´Â º¯¼ö¿¡ ´ëÇÏ¿© °´Ã¼-·ùÀÇ ÇàÀ§¸¦ Àü¿ªÀûÀ¸·Î Á¤ÀÇÇϴµ¥ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. ±âº» º£À̽º´Â ºñ-°´Ã¼ °ªÀ» °¡Áö°í .base¸¦ »ç¿ëÇÏ¿© Á¢±ÙÀÌ °¡´ÉÇÕ´Ï´Ù; ¿¹¸¦ µé¸é, "".base. + +±âº» º£À̽º´Â "".base := Object()ó·³ ¼³Á¤(set)ÇÒ ¼ö ¾øÁö¸¸, ±âº» º£À̽º´Â "".base.base := Object()ó·³ ±× ÀÚü·Î º£À̽º°¡ ÀÖ½À´Ï´Ù.

+ +

ÀÚµ¿ º¯¼ö ÃʱâÈ­

+

+set ¿¬»êÀÇ ¸ñÇ¥·Î ºó º¯¼ö°¡ »ç¿ëµÉ ¶§, Á÷Á¢ÀûÀ¸·Î __Set meta-ÇÔ¼ö¿¡ °Ç³×Áý´Ï´Ù. ±×·¡¼­ »õ °´Ã¼¸¦ º¯¼ö¿¡ »ðÀÔÇÒ ±âȸ°¡ ÀÖ½À´Ï´Ù. °£·«ÇÏ°Ô Çϱâ À§ÇØ, ´ÙÀ½ ¿¹Á¦´Â ´ÙÁß ¸Å°³º¯¼ö¸¦ Áö¿øÇÏÁö ¾Ê½À´Ï´Ù; ¹°·Ð °¡º¯ ÇÔ¼ö¸¦ »ç¿ëÇÏ¸é °¡´ÉÇÕ´Ï´Ù.

+
"".base.__Set := Func("Default_Set_AutomaticVarInit")
+
+empty_var.foo := "bar"
+MsgBox % empty_var.foo
+
+Default_Set_AutomaticVarInit(ByRef var, key, value)
+{
+    if (var = "")
+        var := Object(key, value)
+}
+ +

ÀÇ»ç-Ư¼º

+

+°´Ã¼ÀÇ "»çÅÁ ±¸¹®"À» ¹®ÀÚ¿­°ú ¼ýÀÚ¿¡ Àû¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù.

+
"".base.__Get := Func("Default_Get_PseudoProperty")
+"".base.is    := Func("Default_is")
+
+MsgBox % A_AhkPath.length " == " StrLen(A_AhkPath)
+MsgBox % A_AhkPath.length.is("integer")
+
+Default_Get_PseudoProperty(nonobj, key)
+{
+    if (key = "length")
+        return StrLen(nonobj)
+}
+
+Default_is(nonobj, type)
+{
+    if nonobj is %type%
+        return true
+    return false
+}
+

³»Àå ÇÔ¼öµµ ¿ª½Ã »ç¿ëÇÒ ¼ö ÀÖÁö¸¸, ÀÌ °æ¿ì °ýÈ£¸¦ »©¸ÔÀ¸¸é ¾ÈµË´Ï´Ù. ÁÖÀÇÇϽʽÿÀ:

+
"".base.length := Func("StrLen")
+MsgBox % A_AhkPath.length() " == " StrLen(A_AhkPath)
+ +

µð¹ö±ë

+

+°ªÀ» °´Ã¼Ã³·³ Ãë±ÞµÇµµ·Ï Çã¿ëÇÏ¸é ¹Ù¶÷Á÷ÇÏÁö ¾Ê½À´Ï´Ù. ºñ-°´Ã¼ °ªÀÌ ¿äûµÉ ¶§¸¶´Ù °æ°í »óÀÚ°¡ ³ªÅ¸³¯ ¼ö ÀÖ½À´Ï´Ù:

+
"".base.__Get := "".base.__Set := "".base.__Call := Func("Default__Warn")
+
+empty_var.foo := "bar"
+x := (1 + 1).is("integer")
+
+Default__Warn(nonobj, p1="", p2="", p3="", p4="")
+{
+    ListLines
+    MsgBox ºñ-°´Ã¼ °ªÀÌ ºÎÀûÀýÇÏ°Ô ¿äûµÇ¾ú½À´Ï´Ù.`n`nƯÈ÷: %nonobj%
+}
+ +

±¸Çö

+

ÂüÁ¶È½¼ö-¼¼±â

+

+¿ÀÅäÇÖÅ°´Â ±âº»ÀûÀÎ ÂüÁ¶È½¼ö-¼¼±â ¸ÅÄ¿´ÏÁòÀ» »ç¿ëÇÏ¿© ÇÑ °´Ã¼°¡ »ç¿ëÇÏ´Â ÀÚ¿øÀÌ ´õ ÀÌ»ó ÂüÁ¶µÇÁö ¾ÊÀ» ¶§ ÀÚµ¿À¸·Î ÇØÁ¦ÇÕ´Ï´Ù. ½ºÅ©¸³Æ® ÀúÀÚ´Â ÀÌ ¸ÞÄ¿´ÏÁòÀ» ¸í½ÃÀûÀ¸·Î ¿äûÇÏ¸é ¾ÈµË´Ï´Ù. ´Ü °´Ã¼¸¦ °¡¸®Å°´Â Æ÷ÀÎÅÍ°¡ °ü¸®µÇÁö ¾Ê¾Æ¼­ Á÷Á¢ ó¸®ÇÒ °æ¿ì´Â Á¦¿ÜÇÕ´Ï´Ù. ´õ ÀÚ¼¼ÇÑ Á¤º¸´Â ObjAddRef¸¦ ÂüÁ¶ÇϽʽÿÀ.

+ +
; °´Ã¼ÀÇ ÂüÁ¶ Ƚ¼ö¸¦ Áõ°¡½ÃÄÑ "»ì¾Æ ÀÖµµ·Ï À¯ÁöÇÑ´Ù":
+ObjAddRef(address)
+...
+; °³Ã¼ÀÇ ÂüÁ¶ Ƚ¼ö¸¦ °¨¼Ò½ÃÄÑ ÇØÁ¦µÇµµ·Ï ÇÑ´Ù:
+ObjRelease(address)
+
+

+±×·¸Áö¸¸, ObjAddRef´Â Object(obj)¸¦ ÅëÇÏ¿© ÁÖ¼Ò¸¦ ÃÖÃʷΠȹµæÇÒ ¶§´Â »ç¿ëÇÒ ÇÊ¿ä°¡ ¾ø½À´Ï´Ù.

+

+ÀϹÝÀûÀ¸·Î ÇÑ °´Ã¼ÀÇ ÁÖ¼ÒÀÇ °¢ »õ »çº»Àº °´Ã¼ ÂüÁ¶·Î °£ÁÖÇØ¾ß ÇÕ´Ï´Ù. ´Ü, ±× ½ºÅ©¸³Æ®°¡ ObjAddRef ±×¸®°í/¶Ç´Â ObjRelease¸¦ ÀûÀýÇÏ°Ô È£ÃâÇÒ Ã¥ÀÓÀÌ ÀÖ´Â °æ¿ì´Â ¿¹¿ÜÀÔ´Ï´Ù. + +¿¹¸¦ µé¸é, x := address¿Í °°Àº °ÍÀ» ÅëÇÏ¿© ÁÖ¼Ò°¡ º¹»çµÉ ¶§¸¶´Ù, ObjAddRef °¡ È£ÃâµÇ¾î ÂüÁ¶ Ƚ¼ö¸¦ Áõ°¡½ÃÄÑ¾ß ÇÕ´Ï´Ù. + +ºñ½ÁÇÏ°Ô, ½ºÅ©¸³Æ®°¡ ±× °´Ã¼ÀÇ ÁÖ¼ÒÀÇ Æ¯º°ÇÑ »çº»°úÀÇ ÀÛ¾÷ÀÌ ³¡³¯ ¶§¸¶´Ù, ObjRelease¸¦ È£ÃâÇØ¾ß ÇÕ´Ï´Ù. ÀÌ·¸°Ô ÇÏ¸é ±×ÀÇ ¸¶Áö¸· ÂüÁ¶°¡ »ç¶óÁú ¶§ È®½ÇÇÏ°Ô °´Ã¼°¡ ÇØÁ¦µË´Ï´Ù - ±× Àü¿¡´Â ÇØÁ¦µÇÁö ¾Ê½À´Ï´Ù.

+

+°´Ã¼ÀÇ ¸¶Áö¸· ÂüÁ¶°¡ ÇØÁ¦µÉ ¶§ Äڵ带 ½ÇÇàÇÏ·Á¸é, __Delete ¸ÞŸ-ÇÔ¼ö¸¦ ±¸ÇöÇÕ´Ï´Ù.

+ +

¾Ë·ÁÁø ÇÑ°è:

+ +

ÇÁ·Î±×·¥ÀÌ Á¾·áÇÒ ¶§ °´Ã¼°¡ »ç¿ëÇÏ´Â ¸Þ¸ð¸®¸¦ ¿î¿µÃ¼Á¦°¡ ¿ä±¸ÇÔ¿¡µµ ºÒ±¸ÇÏ°í, ±× °´Ã¼¸¦ °¡¸®Å°´Â ¸ðµç ÂüÁ¶°¡ Ç®¸®Áö ¾Ê´Â ÇÑ, __Delete´Â È£ÃâµÇÁö ¾Ê½À´Ï´Ù. ÀÌ°ÍÀº Àӽà ÆÄÀÏ°ú °°ÀÌ, ¿î¿µ üÁ¦°¡ ÀÚµ¿À¸·Î ¿ä±¸ÇÏÁö ¾Ê´Â ´Ù¸¥ ÀÚ¿øÀ» Ç®¾î¹ö¸®¸é ¹®Á¦°¡ µÉ ¼ö Àֱ⠶§¹®ÀÔ´Ï´Ù.

+ +

°´Ã¼¸¦ °¡¸®Å°´Â Æ÷ÀÎÅÍ

+

+¾î¶² °æ¿ì´Â DllCallÀ» ÅëÇÏ¿© °´Ã¼¸¦ ¿ÜºÎ Äڵ忡 °Ç³Ú ÇÊ¿ä°¡ ÀÖ½À´Ï´Ù. ¶Ç´Â ±×°ÍÀ» ÀÌÁø µ¥ÀÌÅÍ ±¸Á¶·Î ÀúÀåÇÏ¿© ³ªÁß¿¡ ¿­¶÷ÇÒ ÇÊ¿ä°¡ ÀÖ½À´Ï´Ù. °´Ã¼ÀÇ ÁÖ¼Ò´Â x := &obj·Î ¿­¶÷ÇÒ ¼ö ÀÖ½À´Ï´Ù; ±×·¸Áö¸¸, º¯¼ö obj°¡ ¼Ò°ÅµÇ¸é, ±× °´Ã¼´Â ÀÏÂî±â ÇØÁ¦µÇ¾î ¹ö¸± ¼ö ÀÖ½À´Ï´Ù. ÀÌ·± ÀÏÀÌ ÀϾÁö ¾Êµµ·Ï È®ÀÎÇÏ·Á¸é, À§¿¡ º¸¿©ÁØ ¹Ù¿Í °°ÀÌ ObjAddRef¸¦ »ç¿ëÇϰųª ¾Æ·¡¿¡ º¸¿©ÁÖ´Â ¹Ù¿Í °°ÀÌ Object() ÇÔ¼ö¸¦ »ç¿ëÇÕ´Ï´Ù:

+
address := Object(object)
+

+°Ô´Ù°¡, ÀÌ ÇÔ¼ö¸¦ »ç¿ëÇÏ¿© ÁÖ¼Ò¸¦ ´Ù½Ã ÂüÁ¶·Î º¯È¯ÇÒ ¼ö ÀÖ½À´Ï´Ù:

+
object := Object(address)
+

+¾î´À °æ¿ìµç °´Ã¼ÀÇ ÂüÁ¶-Ƚ¼ö´Â ÀÚµ¿À¸·Î Áõ°¡µË´Ï´Ù. ±×·¡¼­ °´Ã¼´Â ³Ê¹« À̸£°Ô ÇØÁ¦µÇÁö ¾Ê½À´Ï´Ù.

+

+ÀÌ ÇÔ¼ö´Â ¿¹¸¦ µé¾î COM °´Ã¼ ·¡ÆÛ³ª ÆÄÀÏ °´Ã¼¿Í °°ÀÌ Object()·Î »ý¼ºµÇÁö ¾ÊÀº °´Ã¼¿¡µµ ¶È °°ÀÌ Àû¿ëµÇ´Â °Í¿¡ ÁÖ¸ñÇϽʽÿÀ.

+ + + diff --git a/src/docs/Scripts.htm b/src/docs/Scripts.htm new file mode 100644 index 0000000..2ecab09 --- /dev/null +++ b/src/docs/Scripts.htm @@ -0,0 +1,415 @@ + + +AutoHotkey Scripts and Macros + + + + + + + +

½ºÅ©¸³Æ®

+ +

¸ñÂ÷

+ + +

µé¾î°¡´Â ¸»

+

+°¢ ½ºÅ©¸³Æ®´Â Æò¹üÇÑ ÅؽºÆ® ÆÄÀϷμ­ ¾È¿¡ ÀÖ´Â ÁÙµéÀ» ÇÁ·Î±×·¥ÀÌ ½ÇÇàÇÕ´Ï´Ù (AutoHotkey.exe). ½ºÅ©¸³Æ®´Â ¶Ç ÇÖÅ°¿Í ÇÖ½ºÆ®¸µ ½ÉÁö¾î ¸ðÁ¶¸® ±×°Íµé·Î ±¸¼ºµÇ±âµµ ÇÕ´Ï´Ù. ±×·¸Áö¸¸, ÇÖÅ°¿Í ÇÖ½º¸µÀÌ ¾ø´Ù¸é ½ºÅ©¸³Æ®´Â ±âµ¿µÈ ¼ø°£ ±×ÀÇ ¸í·É¾îµéÀ» ¼ø¼­´ë·Î À§¿¡¼­ºÎÅÍ ¾Æ·¡·Î ¼öÇàÇÕ´Ï´Ù.

+

+ÇÁ·Î±×·¥Àº ½ºÅ©¸³Æ®¸¦ ¸Þ¸ð¸® ¾ÈÀ¸·Î ÇÑ ÁÙ¾¿ ÀûÀçÇÕ´Ï´Ù. °¢ ÁÙÀº ±æÀÌ°¡ 16,383 ¹®ÀÚÀÔ´Ï´Ù. ÀûÀçÇÏ´Â µ¿¾È, ½ºÅ©¸³Æ®´Â ÃÖÀûÈ­µÇ°í Æò°¡µË´Ï´Ù. ±¸¹® ¿¡·¯´Â È­¸é¿¡ º¸¿©Áö°í ±× ¿¡·¯¸¦ ¹Ýµå½Ã ¼öÁ¤ÇØ¾ß ½ºÅ©¸³Æ®¸¦ ½ÇÇàÇÒ ¼ö ÀÖ½À´Ï´Ù.

+ +

½ºÅ©¸³Æ®ÀÇ »ó´Ü (ÀÚµ¿-½ÇÇà ¼½¼Ç)

+

+½ºÅ©¸³Æ®°¡ ÀûÀçµÈ ÈÄ, Á¦ÀÏ À­ ÁÙºÎÅÍ ½ÇÇàÀ» ½ÃÀÛÇØ Return, Exit, ÇÖÅ°/ÇÖ½ºÆ®¸µ ¶óº§, ¶Ç´Â ¹°¸®ÀûÀ¸·Î ³¡¿¡ ´Ù´Ù¸¦ ¶§±îÁö ½ÇÇàÀ» °è¼ÓÇÕ´Ï´Ù (¼ø¼­¿¡ »ó°üÀÌ ¾ø½À´Ï´Ù). ½ºÅ©¸³Æ®¿¡¼­ ÀÌ »ó´Ü ºÎºÐÀ» ÀÚµ¿-½ÇÇà ¼½¼ÇÀ̶ó°í ÁöĪÇÕ´Ï´Ù.

+

+¿µ¼ÓÀûÀÌÁö ¾ÊÀº ±×¸®°í hotkeys, hotstrings, OnMessage, ±×¸®°í GUI°¡ ¾ø´Â ½ºÅ©¸³Æ®´Â ÀÚµ¿-½ÇÇà ¼½¼ÇÀÌ ¿Ï·áµÇ¸é ¹Ù·Î ³¡³³´Ï´Ù. ±×·¸Áö ¾ÊÀ¸¸é, ÈÞ½Ä »óÅ·Π½ÇÇàÀ» °è¼ÓÇϸ鼭, ÇÖÅ°³ª ÇÖ½ºÆ®¸µ, GUI À̺¥Æ®, ¸ÂÃã ¸Þ´º Ç׸ñ, ±×¸®°í ŸÀÌ¸Ó °°Àº À̺¥Æ®¿¡ ¹ÝÀÀÇÕ´Ï´Ù.

+

+ÇÖÅ°, ÇÖ½ºÆ®¸µ, ¸Þ´º Ç׸ñ, GUI À̺¥Æ®, ¶Ç´Â ŸÀ̸Ӱ¡ ±âµ¿ÇÏ´Â ¾²·¹µå¸¶´Ù »õ·Ó°Ô ±âº» °ªÀ» °¡Áö°í ½ÃÀÛÇÕ´Ï´Ù. ´ÙÀ½°ú °°Àº ¼Ó¼ºµéÀÌ ÀÚµ¿-½ÇÇà ¼½¼Ç¿¡ ¼³Á¤µÇ¾î ÀÖ½À´Ï´Ù. ¾ð¼ÂÇϸé, (°¢ ÆäÀÌÁö ¹®¼­¿¡ ±âÀçµÈ ´ë·Î) Ç¥ÁØ ±âº» °ªÀÌ Àû¿ëµË´Ï´Ù: DetectHiddenWindows, DetectHiddenText, SetTitleMatchMode, SetBatchLines, SendMode, SetKeyDelay, SetMouseDelay, + SetWinDelay, + SetControlDelay, + SetDefaultMouseSpeed, + CoordMode, + SetStoreCapslockMode, +AutoTrim, SetFormat, StringCaseSense, Thread, ±×¸®°í Critical.

+

+ÀÚµ¿-½ÇÇà ¼½¼ÇÀ» ¿Ï·áÇϴµ¥ ½Ã°£ÀÌ ¸¹ÀÌ °É¸°´Ù¸é (¶Ç´Â ¿Ï·áµÇÁö ¾Ê´Â´Ù¸é), À§ÀÇ ¼³Á¤¿¡ ´ëÇÑ ±âº»°ªÀº 100 ¹Ð¸®ÃÊ ÈÄ¿¡ È¿°ú¸¦ ¹ßÈÖÇÕ´Ï´Ù. ÀÚµ¿-½ÇÇà ¼½¼ÇÀÌ ¸¶Ä§³» ¿Ï·áµÉ ¶§, ±âº» °ªÀº ÀÚµ¿-½ÇÇà ¼½¼ÇÀÇ ³¡¿¡¼­ È¿°ú°¡ ÀÖ´ø °ªµé·Î ´Ù½Ã °»½ÅµË´Ï´Ù. +±×¸®ÇÏ¿©, º¸Åë Á¦ÀÏ ÁÁÀº ¹æ¹ýÀº ½ºÅ©¸³Æ®ÀÇ »ó´Ü¿¡ ÀÖ´Â ±âº» °ªµéÀ» º¯°æÇÏ´Â °ÍÀÔ´Ï´Ù. ¿©±â¿¡ ÇÖÅ°, ÇÖ½ºÆ®¸µ, ŸÀ̸Ó, ¶Ç´Â ¸ÂÃã ¸Þ´º Ç׸ñÀÌ µé¾î ÀÖ½À´Ï´Ù. ¶Ç °¢ ¾²·¹µå¸¶´Ù µû·Î À§ÀÇ ¼³Á¤À» º¸À¯ÇÏ°í ÀÖ´Ù´Â °ÍÀ» ÁÖ¸ñÇϽʽÿÀ. ±×·± ¼³Á¤Àº º¯°æÇصµ ´Ù¸¥ ¾²·¹µå¿¡ ¿µÇâÀ» ¹ÌÄ¡Áö ¾Ê½À´Ï´Ù.

+ +

ÇǽŠ¿¬¼Ó¿­

+

+¿ÀÅäÇÖÅ°ÀÇ ±âº» ÇǽŠ¹®ÀÚ´Â ¾×¼¾Æ®/¹éƽ(`)ÀÔ´Ï´Ù. ¿µ¹® Å°º¸µåÀÇ Á»ó ¸ð¼­¸®¿¡ ÀÖ½À´Ï´Ù. ¿ª»ç¼±º¸´Ù ÀÌ ¹®ÀÚ¸¦ »ç¿ëÇϸé ÆÄÀÏ °æ·Î¿¡ ÀÌÁßÀ¸·Î ¿ª»ç¼±À» ¹èÄ¡ÇÒ ÇÊ¿ä°¡ ¾ø½À´Ï´Ù.

+

+½°Ç¥¿Í ÆÛ¼¾Æ® ±âÈ£´Â ¿ÀÅäÇÖÅ°¿¡¼­ Ưº°ÇÑ Àǹ̸¦ °¡Áö±â ¶§¹®¿¡, `,À» »ç¿ëÇØ ¹®ÀÚ ±×´ë·ÎÀÇ ½°Ç¥¸¦ ÁöÁ¤ÇÏ°í `%¸¦ »ç¿ëÇØ ¹®ÀÚ ±×´ë·ÎÀÇ ÆÛ¼¾Æ® ±âÈ£¸¦ ÁöÁ¤ÇÕ´Ï´Ù. ÇÑ °¡Áö ¿¹¿Ü´Â MsgBoxÀÔ´Ï´Ù. ½°Ç¥¸¦ ÇǽŽÃÅ°Áö ¾Ê¾Æµµ µË´Ï´Ù. ¶Ç´Ù¸¥ ¿¹¿Ü´Â ¸í·É¾îÀÇ ¸¶Áö¸· ¸Å°³º¯¼ö¿¡ ÀÖ´Â ½°Ç¥ÀÔ´Ï´Ù: ÇǽŽÃų ÇÊ¿ä°¡ ¾ø½À´Ï´Ù. ÇǽŠ¿¬¼Ó¿­ÀÇ ¿ÏÀüÇÑ ¸ñ·ÏÀº #EscapeChar¸¦ ÂüÁ¶ÇϽʽÿÀ.

+

+¾î¶² Ư¼ö ¹®ÀÚ´Â ÇǽŠ¿¬¼Ó¿­À» »ç¿ëÇÏ¿© ¸¸µé±âµµ ÇÕ´Ï´Ù. °¡Àå ÈçÇÑ ¿¹´Â `t (tab), `n (¶óÀÎÇǵå), ±×¸®°í `r (ij¸®Áö ¸®ÅÏ)ÀÔ´Ï´Ù.

+

+ÆÁ: ¸í·É¾îÀÇ Ã¹ ¹ø° ½°Ç¥´Â »ý·«Çصµ µË´Ï´Ù (ù ¸Å°³º¯¼ö°¡ ºñ¾î Àְųª :=³ª =·Î ½ÃÀÛÇÒ ¶§, ¶Ç´Â ±× ¸í·É¾î°¡ °è¼Ó ¼½¼ÇÀÇ »ó´Ü¿¡ Ȧ·Î ÀÖÀ» ¶§´Â Á¦¿ÜÇÕ´Ï´Ù.). ¿¹¸¦ µé¾î:

+
MsgBox ÀÌ°ÍÀº ±¦Âú½À´Ï´Ù.
+MsgBox, ÀÌ ¿ª½Ã ±¦Âú½À´Ï´Ù (¸í½ÃÀûÀ¸·Î ½°Ç¥¸¦ »ç¿ëÇÕ´Ï´Ù).
+ +

½ºÅ©¸³Æ® ¾ÈÀÇ ÁÖ¼®

+

½ºÅ©¸³Æ®´Â ÁÙÀÇ Ã³À½¿¡ ½Ö¹ÝÁ¡À» µÎ¾î ÁÖ¼® ó¸®ÇÒ ¼ö ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î:

+
; ÀÌ ÁÙÀº Àüü°¡ ÁÖ¼®ÀÔ´Ï´Ù.
+

+ÁÖ¼®Àº ¸í·É¾îÀÇ ³¡¿¡ Ãß°¡Çصµ µË´Ï´Ù. ÀÌ °æ¿ì ½Ö¹ÝÁ¡Àº Àû¾îµµ ÇϳªÀÇ °ø°£ ¶Ç´Â ÅÇÀÌ ¿ÞÂÊ¿¡ ÀÖ¾î¾ß ÇÕ´Ï´Ù. ¿¹¸¦ µé¾î:

+ +
Run Notepad  ; ÀÌ°ÍÀº ¸í·É¾î¿Í °°Àº ÁÙ¿¡ ÀÖ´Â ÁÖ¼®ÀÔ´Ï´Ù.
+

+°Ô´Ù°¡, /* and */ ½Éº¼Àº Àüü ¼½¼Ç¿¡ ÁÖ¼®À» ºÙÀ̴µ¥ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. ±×·¯³ª ´ÙÀ½ ¿¹Á¦¿Í °°ÀÌ ÁÙÀÌ ½ÃÀÛÇÏ´Â °÷¿¡ ³ªÅ¸³ª¾ß ÇÕ´Ï´Ù:

+
/*
+MsgBox, ÀÌ ÁÙÀº ÁÖ¼® 󸮵Ǿî ÀÖ½À´Ï´Ù (ºÒ´É»óÅÂ).
+MsgBox, ÀÌ ÁÙµµ ¸¶Âù°¡ÁöÀÔ´Ï´Ù. 
+*/
+

+ÁÖ¼®Àº ½ºÅ©¸³Æ®°¡ ½ÃÀÛÇÏ¸é ¹«½ÃµË´Ï´Ù. ±×·¡¼­ ¼öÇ༺´ÉÀ̳ª ¸Þ¸ð¸® »ç¿ë¿¡ ¿µÇâÀ» ÁÖÁö ¾Ê½À´Ï´Ù.

+

+±âº» ÁÖ¼® ¹®ÀÚ (½Ö¹ÝÁ¡)Àº #CommentFlagÀ» ÅëÇÏ¿© ´Ù¸¥ ¹®ÀÚ³ª ¹®ÀÚ¿­·Î ¹Ù²Ü ¼ö ÀÖ½À´Ï´Ù.

+ +

±ä ÁÙÀ» ¿©·¯ °³ÀÇ ÂªÀº ÁÙ·Î °¡¸£±â

+

+±ä ÁÙÀº ÀÛÀº ÁÙµé·Î ÂÉ°³¾î °¡µ¶¼º°ú À¯Áö°ü¸®¼ºÀ» Çâ»ó½Ãų ¼ö ÀÖ½À´Ï´Ù. ÀÌ·¸°Ô ÇÏ´õ¶óµµ ½ºÅ©¸³Æ®ÀÇ ½ÇÇà ¼Óµµ´Â °¨¼ÒÇÏÁö ¾Ê½À´Ï´Ù. ¿Ö³ÄÇÏ¸é ±×·± ÁÙµéÀº ½ºÅ©¸³Æ®°¡ ±âµ¿ÇÏ´Â ¼ø°£ ¸Þ¸ð¸®¿¡¼­ ÇÕº´µÇ±â ¶§¹®ÀÔ´Ï´Ù.

+

+¹æ¹ý #1: ÁÙÀÌ "and", "or", ||, &&, ½°Ç¥, ¶Ç´Â ¸¶Ä§Ç¥·Î ½ÃÀÛÇϸé ÀÚµ¿À¸·Î À­ ÁÙ°ú ÇÕº´µË´Ï´Ù (v1.0.46+¿¡¼­, ++¿Í --¸¦ Á¦¿ÜÇÏ°í ´Ù¸¥ ¸ðµç Ç¥Çö½Ä ¿¬»êÀÚ¿¡µµ ¸¶Âù°¡Áö·Î Àû¿ëµË´Ï´Ù). +´ÙÀ½ ¿¹Á¦¿¡¼­, µÎ ¹ø° ÁÙÀº ù ¹ø° ÁÙ¿¡ ºÙ´Âµ¥ ½°Ç¥·Î ½ÃÀÛÇϱ⠶§¹®ÀÔ´Ï´Ù:

+
FileAppend, ÀÌ°ÍÀº Ãß°¡ÇÒ ÅؽºÆ®ÀÔ´Ï´Ù.`n   ; ¿©±â¿¡ ÁÖ¼®ÀÌ Çã¿ëµË´Ï´Ù.
+    , %A_ProgramFiles%\SomeApplication\LogFile.txt  ; ÁÖ¼®ÀÔ´Ï´Ù.
+

+ºñ½ÁÇÏ°Ô, ´ÙÀ½ÀÇ ÁÙµéÀº ÇϳªÀÇ ÁÙ·Î ÇÕº´µÉ °ÍÀÔ´Ï´Ù. ¿Ö³ÄÇÏ¸é ¸¶Áö¸· µÎ ÁÙÀÌ "and" ¶Ç´Â "or"·Î ½ÃÀÛÇϱ⠶§¹®ÀÔ´Ï´Ù:

+
if (Color = "Red" or Color = "Green"  or Color = "Blue"   ; ÁÖ¼®.
+    or Color = "Black" or Color = "Gray" or Color = "White")   ; ÁÖ¼®.
+    and ProductIsAvailableInColor(Product, Color)   ; ÁÖ¼®.
+

+»ïÁø ¿¬»êÀÚµµ ÈǸ¢ÇÑ Èĺ¸ÀÔ´Ï´Ù:

+
ProductIsAvailable := (Color = "Red")
+    ? false  ; ¿ì¸®´Â ¹ÙÀÌ·¯½º Á¦Ç°ÀÌ ¾ø½À´Ï´Ù. ±×·¯´Ï °ÆÁ¤ÇÏÁö ¸»°í ÇÔ¼ö¸¦ È£ÃâÇϽʽÿÀ.
+    : ProductIsAvailableInColor(Product, Color)
+

+À§ÀÇ ¿¹Á¦¿¡ »ç¿ëµÈ µé¿©¾²±â´Â ¼±ÅÃÀûÀÌÁö¸¸, ¾î´À ÁÙÀÌ À§ÀÇ ¾î´À ÁÙ¿¡ ¼ÓÇÏ´ÂÁö º¸¿©Áֱ⠶§¹®¿¡ °¡µ¶¼ºÀÌ Çâ»óµË´Ï´Ù. ¶Ç, "AND" ±×¸®°í "OR" °°Àº ´Ü¾î·Î ½ÃÀÛÇÏ´Â ÁÙµéÀº µû·Î ´õ ½ºÆäÀ̽º¸¦ Æ÷ÇÔÇÒ ÇÊ¿ä°¡ ¾ø½À´Ï´Ù; ¿ÀÅäÇÖÅ°°¡ ÀÚµ¿À¸·Î Ãß°¡ÇØ ÁÝ´Ï´Ù. +¸¶Áö¸·À¸·Î, ºó ÁÙÀ̳ª ÁÖ¼®Àº À§ÀÇ ¿¹Á¦¿¡¼­ ÁÙ »çÀÌ ¶Ç´Â ÁÙ ³¡¿¡ Ãß°¡ÇÒ ¼ö ÀÖ½À´Ï´Ù.

+

+¹æ¹ý #2: ¾öû³ª°Ô ¸¹Àº ÁÙÀ» º´ÇÕÇÏ·Á¸é ¶Ç´Â ¹æ¹ý #1ÀÌ Àû´çÇÏÁö ¾ÊÀ» ¶§ ÀÌ ¹æ¹ýÀ» »ç¿ëÇØ¾ß ÇÕ´Ï´Ù. ÀÚµ¿-±³Ã¼ ÇÖ½ºÆ®¸µ¿¡ ÀÌ ¹æ¹ýÀÌ Æ¯º°È÷ À¯¿ëÇÏÁö¸¸, ¸í·É¾î ¶Ç´Â Ç¥Çö½Ä¿¡µµ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î:

+
; ¿¹Á¦ #1:
+Var =
+(
+1 ¹ø ÁÙ ÅؽºÆ®
+2 ¹ø ÁÙ ÅؽºÆ®. ±âº»°ªÀ¸·Î, ¶óÀÎÇǵå(`n)°¡ ÁÙ »çÀÌ¿¡ Á¸ÀçÇÕ´Ï´Ù.
+)
+
+; ¿¹Á¦ #2:
+FileAppend,  ; ÀÌ °æ¿ì´Â ½°Ç¥°¡ ÇÊ¿äÇÕ´Ï´Ù.
+(
+ÅؽºÆ® ÇÑ ÁÙ.
+±âº»°ªÀ¸·Î, ÀÌ ÁÙ°ú ÀÌÀü ÁÙ »çÀÌÀÇ Çϵå ij¸®Áö ¸®ÅÏ (Enter)ÀÌ ÆÄÀÏ¿¡ ¶óÀÎÇǵå (`n)·Î ¾º¿©Áú °ÍÀÔ´Ï´Ù.
+    ±âº»°ªÀ¸·Î, ÀÌ ÁÙÀÇ ¿ÞÂÊ¿¡ ÀÖ´Â Åǵµ ÆÄÀÏ¿¡ ¾º¿©Áú °ÍÀÔ´Ï´Ù (½ºÆäÀ̽º¿¡ ´ëÇؼ­µµ ¸¶Âù°¡ÁöÀÔ´Ï´Ù).
+±âº»°ªÀ¸·Î, %Var%°ú °°Àº º¯¼ö ÂüÁ¶´Â º¯¼öÀÇ ³»¿ëÀ¸·Î °áÁ¤µË´Ï´Ù.
+), C:\My File.txt
+

+À§ÀÇ ¿¹Á¦¿¡¼­, ÀÏ·ÃÀÇ ÁÙµéÀº ÇÑ ½ÖÀÇ °ýÈ£·Î »ó´Ü°ú ÇÏ´Ü¿¡ °æ°è°¡ ÀÖ½À´Ï´Ù. ÀÌ·± °ÍÀ» °è¼Ó ¼½¼ÇÀ̶ó°í ºÎ¸¨´Ï´Ù. ÇÏ´Ü ÁÙ¿¡ ´Ý´Â °ýÈ£ ´ÙÀ½¿¡ FileAppendÀÇ ¸¶Áö¸· ¸Å°³º¯¼ö°¡ ÀÖÀ½¿¡ ÁÖ¸ñÇϽʽÿÀ. ÀÌ °ü·Ê´Â ¼±ÅÃÀûÀÔ´Ï´Ù; ÀÌ¿Í °°Àº °æ¿ì¿¡ ½°Ç¥´Â ¹®ÀÚ ±×´ë·ÎÀÇ ½°Ç¥°¡ ¾Æ´Ï¶ó ¸Å°³º¯¼ö-°¡¸§ÀÚ·Î º¸ÀÌ°Ô µË´Ï´Ù.

+

+°è¼Ó ¼½¼ÇÀÇ ±âº» ÇàÀ§¸¦ ¿À¹ö¶óÀ̵å ÇÒ ¼ö ÀÖ½À´Ï´Ù. °è¼Ó ¼½¼ÇÀÇ ¿©´Â °ýÈ£ÀÇ ¿À¸¥ÂÊ¿¡ ´ÙÀ½ ¿É¼Ç Áß Çϳª ¶Ç´Â ¿©·¯°³¸¦ Æ÷ÇÔÇÏ¸é µË´Ï´Ù. ¿É¼ÇÀÌ ¿©·µ Á¸ÀçÇϸé, ½ºÆäÀ̽º·Î ¾ÕÀÇ ¿É¼Ç°ú °¢°¢ ±¸º°ÇÕ´Ï´Ù. ¿¹¸¦ µé¾î: ( LTrim Join| %.

+

+Join: ¾î¶»°Ô ÁÙÀ» ¿¬°áÇÒÁö ÁöÁ¤ÇÕ´Ï´Ù. ÀÌ ¿É¼ÇÀÌ »ý·«µÇ¸é, °¢ ÁÙÀº ¸¶Áö¸· ÁÙÀ» Á¦¿ÜÇÏ°í ´ÙÀ½¿¡ ÁÙ³Ñ±è ¹®ÀÚ (`n)°¡ µû¶ó¿É´Ï´Ù. +´Ü¾î Join ÀÚü¸¸ ÁöÁ¤Çϸé, ÁÙµéÀº Á÷Á¢ÀûÀ¸·Î ±× »çÀÌ¿¡ ¾Æ¹« ¹®ÀÚ ¾øÀÌ ¼­·Î °áÇÕÇÕ´Ï´Ù. ±×·¸Áö ¾ÊÀ¸¸é ´Ü¾î Join ´ÙÀ½¿¡ Áï½Ã 15°³ ±îÁöÀÇ ¹®ÀÚ°¡ µû¶ó¿Í¾ß ÇÕ´Ï´Ù. +

+¿¹¸¦ µé¾î, Join`s´Â ¸¶Áö¸· ÁÙÀ» Á¦¿ÜÇÏ°í °¢ ÁÙ µÚ¿¡ ½ºÆäÀ̽º¸¦ »ðÀÔÇÕ´Ï´Ù -- ¿À·ÎÁö Join¸¸ ÀνÄÇϴ Ưº°ÇÑ ÇǽŠ¿¬¼Ó¿­ÀÔ´Ï´Ù). + +¶Ç´Ù¸¥ ¿¹´Â Join`r`nÀε¥, ÀÌ°ÍÀº ÁÙ°ú ÁÙ »çÀÌ¿¡ CR+LF¸¦ »ðÀÔÇÕ´Ï´Ù. ºñ½ÁÇÏ°Ô, Join|´Â ÁÙ »çÀÌ¿¡ ÆÄÀÌÇÁ¸¦ »ðÀÔÇÕ´Ï´Ù. °è¼Ó ¼½¼ÇÀÇ ¸¶Áö¸· ÁÙµµ ¿¬°á-¹®ÀÚ·Î ³¡³»·Á¸é, °è¼Ó ¼½¼ÇÀÇ ´Ý´Â °ýÈ£ ¹Ù·Î À§¿¡ Áï½Ã ºóÁÙÀ» Æ÷ÇÔ½Ãŵ´Ï´Ù.

+

+¾Ë·ÁÁø ÇÑ°è: ¹®ÀÚ¿­ JoinÀÌ ½ÖÁ¡À¸·Î ³¡³ª¸é, ±× ÁÙ¿¡¼­ ¸¶Áö¸· ¿É¼ÇÀ¸·Î Ãë±ÞÇÏ¸é ¾ÈµË´Ï´Ù. +¿¹¸¦ µé¾î, (Join:Àº ¶óº§ "(Join"À¸·Î Ãë±ÞµÇ°í (LTrim Join:Àº Áö¿øÇÏÁö ¾Ê½À´Ï´Ù. ±×·¯³ª (Join: C´Â ÁÁ½À´Ï´Ù.

+

+LTrim: °¢ ÁÙÀÇ ¼±µÎ¿¡¼­ ½ºÆäÀ̽º¿Í ÅÇÀ» °È¾î³À´Ï´Ù. ½ºÆäÀ̽º¿Í ÅÇÀº ÁÖ·Î °è¼Ó ¼½¼ÇÀ» µé¿©¾²±â ÇÏ´Â µ¥ »ç¿ëµË´Ï´Ù. ¶Ç, ÀÌ ¿É¼ÇÀº ¿©·¯ °è¼Ó ¼½¼Ç¿¡ ´ëÇؼ­µµ È°¼ºÈ­ÇÒ ¼ö ÀÖ½À´Ï´Ù. ÇÑ ÁÙ¿¡ #LTrim¸¸ ÁöÁ¤ÇÏ¸é µË´Ï´Ù. +#LTrimÀº À§Ä¡¿¡ ¿µÇâÀ» ¹Þ½À´Ï´Ù: ¹°¸®ÀûÀ¸·Î ±× ¾Æ·¡¿¡ ÀÖ´Â ¸ðµç °è¼Ó ¼½¼Ç¿¡ ¿µÇâÀ» ¹ÌĨ´Ï´Ù. +#LTrim Off¸¦ ÅëÇÏ¿© ¼³Á¤À» ²ø ¼ö ÀÖ½À´Ï´Ù.

+

+RTrim0 (RTrim ´ÙÀ½¿¡ 0): °¢ ÁÙÀÇ ³¡À¸·ÎºÎÅÍ ½ºÆäÀ̽º¿Í ÅÇÀ» °È¾î³»Áö ¸øÇÏ°Ô ¸·½À´Ï´Ù.

+

+Comments (¶Ç´Â Comment ¶Ç´Â Com ¶Ç´Â C) [v1.0.45.03+]: + +½Ö¹ÝÁ¡ ÁÖ¼®À» °è¼Ó ¼½¼Ç ¾È¿¡ Çã¿ëÇÕ´Ï´Ù (±×·¯³ª /*..*/ ¾È¿¡´Â Çã¿ëÇÏÁö ¾Ê½À´Ï´Ù). ±×·± ÁÖ¼®µéÀº (¿ÞÂÊ¿¡ ÀÖ´Â ½ºÆäÀ̽º¿Í ÅÇ°ú ÇÔ²²) °áÇÕµÈ °á°ú·ÎºÎÅÍ ¸ðÁ¶¸® Á¦°ÅµË´Ï´Ù. ±âÈ£ ÅؽºÆ®·Î Ãë±ÞµÇÁö ¾Ê½À´Ï´Ù. °¢ ÁÖ¼®Àº ÁÙÀÇ ¿À¸¥ÂÊ ¶Ç´Â ±× ÀÚü·Î »õ ÁÙ¿¡ ³ªÅ¸³¯ ¼ö ÀÖ½À´Ï´Ù.

+

+% (ÆÛ¼¾Æ® »çÀÎ): ÆÛ¼¾Æ® »çÀÎÀ» º¯¼ö ÂüÁ¶°¡ ¾Æ´Ï¶ó ±âÈ£ ±×´ë·Î Ãë±ÞÇÕ´Ï´Ù. ±×·¡¼­ °¢ ÆÛ¼¾Æ® »çÀÎÀ» ±âÈ£ ±×´ë·Î ¸¸µé±â À§ÇØ ÇǽŽÃų ÇÊ¿ä°¡ ¾ø½À´Ï´Ù. ÀÚµ¿-±³Ã¼ ÇÖ½ºÆ®¸µ°ú °°ÀÌ, ÀÌ¹Ì ÆÛ¼¾Æ® »çÀÎÀÌ ±âÈ£ÀÎ °æ¿ì¿¡ ÀÌ ¿É¼ÇÀº ÇÊ¿äÇÏÁö ¾Ê½À´Ï´Ù.

+

+, (½°Ç¥): ½°Ç¥¸¦ ¹®ÀÚ ±×´ë·ÎÀÇ ½°Ç¥°¡ ¾Æ´Ï¶ó °¡¸§ÀÚ·Î Ãë±ÞÇÕ´Ï´Ù. º°·Î »ç¿ëµÇÁö ¾Ê´Â ÀÌ ¿É¼ÇÀº ¸í·É¾î ¸Å°³º¯¼ö »çÀÌÀÇ ½°Ç¥¿¡ ´ëÇؼ­¸¸ ²À ÇÊ¿äÇÕ´Ï´Ù. ¿Ö³ÄÇϸé ÇÔ¼ö È£Ãâ¿¡¼­, ½°Ç¥ÀÇ Á¾·ù´Â ¹®Á¦°¡ µÇÁö ¾Ê±â ¶§¹®ÀÔ´Ï´Ù. ¶Ç ÀÌ ¿É¼ÇÀº ½ÇÁ¦·Î ¸Å°³º¯¼ö »çÀ̸¦ °¡¸£´Â ½°Ç¥µé¸¸ º¯ÇüÇÕ´Ï´Ù. ´Ù¸¥ ¸»·Î Çϸé, ÀÏ´Ü ¸í·É¾îÀÇ ¸¶Áö¸· ¸Å°³º¯¼ö¿¡ ´Ù´Ù¸£¸é (Áï, ´õ ÀÌ»ó ¸Å°³º¯¼ö°¡ ¾øÀ¸¸é), ¿¬ÀÌ¾î ³ª¿À´Â ½°Ç¥´Â ÀÌ ¿É¼Ç¿¡ »ó°ü ¾øÀÌ ¹®ÀÚ ±×´ë·Î ½°Ç¥·Î Ãë±ÞµË´Ï´Ù.

+

+` (¾×¼¾Æ®): °¢ ¹éƽ ¹®ÀÚ¸¦ ÇǽŠ¹®ÀÚ°¡ ¾Æ´Ï¶ó ¹®ÀÚ ±×´ë·Î Ãë±ÞÇÕ´Ï´Ù. ÀÌ°ÍÀº ¶Ç ½°Ç¥¿Í ÆÛ¼¾Æ® »çÀÎÀÌ ¸í½ÃÀûÀ¸·Î ±×¸®°í °³º°ÀûÀ¸·Î ÇǽŵÇÁö ¸øÇϵµ·Ï ¸·½À´Ï´Ù. °Ô´Ù°¡, `r ±×¸®°í `t¿Í °°ÀÌ ¸í½ÃÀûÀ¸·Î ÁöÁ¤µÈ ÇǽŠ¿¬¼Ó¿­À» º¯È¯ÇÏÁö ¸øÇϵµ·Ï ¸·½À´Ï´Ù.

+

+) [v1.1.01+]: +´Ý´Â °ýÈ£°¡ °è¼Ó ¼½¼ÇÀÇ ¿É¼Ç¿¡ ³ªÅ¸³ª¸é (Join ¿É¼ÇÀÇ ¸Å°³º¯¼ö·Î ³ªÅ¸³ª¸é Á¦¿Ü), ±× ÁÙÀº °è¼Ó ¼½¼ÇÀÇ ½ÃÀÛÀÌ ¾Æ´Ï¶ó Ç¥Çö½ÄÀ¸·Î Àç¹ø¿ªµË´Ï´Ù. ÀÌ·¸°Ô ÇÏ¸é ¿©´Â °ýÈ£¸¦ ÇǽŽÃų ÇÊ¿ä ¾øÀÌ (x.y)[z]()¿Í °°Àº Ç¥Çö½ÄÀ» ÀÛµ¿½Ãų ¼ö ÀÖ½À´Ï´Ù.

+ +

³íÆò

+

+`n (Áٳѱè)¿Í `t (ÅÇ) °°Àº ÇǽŠ¿¬¼Ó¿­Àº °è¼Ó ¼½¼Ç ¾È¿¡¼­ Áö¿øµË´Ï´Ù. ´Ü accent (`) ¿É¼ÇÀÌ ÁöÁ¤µÇ¾î ÀÖ´Â °æ¿ì´Â Á¦¿ÜÇÕ´Ï´Ù.

+

+ÁÖ¼® ¿É¼ÇÀÌ ¾øÀ¸¸é, ½Ö¹ÝÁ¡°ú /*..*/ ÁÖ¼®ÀÌ °è¼Ó ¼½¼Ç ¾È¿¡¼­ Áö¿øµÇÁö ¾Ê½À´Ï´Ù. ¿Ö³ÄÇÏ¸é ±âÈ£ ÅؽºÆ®·Î º¸À̱⠶§¹®ÀÔ´Ï´Ù. ±×·¸Áö¸¸, ÁÖ¼®Àº °è¼Ó ¼½¼ÇÀÇ »ó´Ü ÁÙ°ú ÇÏ´Ü ÁÙ¿¡ Æ÷Ç﵃ ¼ö ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î:

+
FileAppend,   ; ÁÖ¼®ÀÔ´Ï´Ù.
+; Comment.
+( LTrim Join    ; ÁÖ¼®ÀÔ´Ï´Ù.
+     ; ÀÌ°ÍÀº ÁÖ¼®ÀÌ ¾Æ´Õ´Ï´Ù; ¹®ÀÚ ±×´ë·ÎÀÔ´Ï´Ù. À­ ÁÙ¿¡ ´Ü¾î Comments¸¦ Æ÷ÇÔÇϸé ÁÖ¼®ÀÌ µË´Ï´Ù.
+), C:\File.txt   ; ÁÖ¼®ÀÔ´Ï´Ù.
+

+À§ÀÇ °á°ú·Î, ½Ö¹ÝÁ¡Àº °è¼Ó ¼½¼Ç ¾È¿¡¼­ ÇǽŽÃų ÇÊ¿ä°¡ ¾ø½À´Ï´Ù.

+

+°è¼Ó ¼½¼ÇÀº 16,383 ¹®ÀÚ°¡ ³Ñ´Â ÁÙÀ» »ý»êÇÏÁö ¸øÇÕ´Ï´Ù (½ÃµµÇϸé, ÇÁ·Î±×·¥Àº ½ºÅ©¸³Æ®°¡ ±âµ¿ÇÏ´Â ¼ø°£ °æ°í¸¦ º¸³À´Ï´Ù). À̸¦ µ¹¾Æ°¡´Â ÇÑ °¡Áö ¹æ¹ýÀº ÀÏ·Ä·Î °áÇÕÇؼ­ º¯¼ö¿¡ ³Ö´Â °ÍÀÔ´Ï´Ù. ¿¹¸¦ µé¾î:

+
Var =
+(
+...
+)
+Var = %Var%`n  ; ¶Ç´Ù¸¥ °è¼Ó ¼½¼ÇÀ» ÅëÇÏ¿© º¯¼ö¿¡ ´õ ¸¹Àº ÅؽºÆ®¸¦ Ãß°¡ÇÕ´Ï´Ù.
+(
+...
+)
+FileAppend, %Var%, C:\My File.txt
+

+´Ý´Â °ýÈ£´Â ¿¬¼Ó ¼½¼ÇÀÇ ³¡À» ³ªÅ¸³»±â ¶§¹®¿¡, ÁÙÀ» ´Ý´Â °ýÈ£·Î ½ÃÀÛÇÏ·Á¸é, ¾Õ¿¡´Ù ¾×¼¾Æ®/¹éƽÀ» ¹èÄ¡ÇØ¾ß ÇÕ´Ï´Ù: `).

+

+°è¼Ó ¼½¼Ç ´ÙÀ½¿¡ Áï½Ã µû¶ó¿À´Â ÁÙ¿¡ ¶Ç´Ù¸¥ °è¼Ó ¼½¼ÇÀ» ¿©´Â °ýÈ£°¡ ´ã±æ ¼ö ÀÖ½À´Ï´Ù. ÀÌ·¸°Ô Çϸé ÇÑ °³ÀÇ ÁÙÀ» ±¸¼ºÇÏ´Â µ¿¾È À§¿¡ ¾ð±ÞÇÑ ¿É¼ÇµéÀÌ ´Þ¶óÁú ¼ö ÀÖ½À´Ï´Ù.

+

+#Include¸¦ ÀÌ¿ëÇÏ¿© °è¼Ó ¼½¼ÇÀ» ±¸¼ºÇÏ´Â ¹æ¹ýÀº Áö¿øÇÏÁö ¾Ê½À´Ï´Ù.

+ +

½ºÅ©¸³Æ®¸¦ EXE (ahk2exe)·Î º¯È¯Çϱâ

+

+½ºÅ©¸³Æ® ÄÄÆÄÀÏ·¯ (fincs Á¦°ø)°¡ ÇÁ·Î±×·¥¿¡ Æ÷ÇԵǾî ÀÖ½À´Ï´Ù.

+

+½ºÅ©¸³Æ®°¡ ÄÄÆÄÀϵǸé, µ¶¸³ ½ÇÇàÈ­ÀÏÀÌ µË´Ï´Ù; Áï, ¿ÀÅäÇÖÅ°°¡ ¼³Ä¡µÇ¾î ÀÖÁö ¾ÊÀº ¸Ó½Å¿¡¼­µµ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù (±×·± EXE ½ÇÇà ÆÄÀÏÀº ¾Æ¹« Á¦ÇÑ ¾øÀÌ ¹èÆ÷Çϰųª ÆǸÅÇÒ ¼ö ÀÖ½À´Ï´Ù). ÄÄÆÄÀÏ °úÁ¤À» ÅëÇØ ½ÇÇà ÆÄÀÏÀÌ »ý¼ºµË´Ï´Ù. ¾È¿¡ ´ÙÀ½°ú °°ÀÌ Æ÷ÇԵ˴ϴÙ. ¿ÀÅäÇÖÅ° ÀÎÅÍÇÁ¸®ÅÍ, ½ºÅ©¸³Æ®, ±×¸®°í ±âŸ Æ÷ÇÔµÈ ÆÄÀÏ, ±×¸®°í FileInstall ¸í·É¾î¸¦ ÅëÇÏ¿© º´ÇÕÇÑ ÆÄÀϵé.

+

+Ahk2Exe´Â ´ÙÀ½°ú °°Àº ¹æ½ÄÀ¸·Î »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù:

+
    +
  1. GUI ÀÎÅÍÆäÀ̽º: ½ÃÀÛ ¸Þ´º¿¡¼­ "Convert .ahk to .exe" Ç׸ñÀ» ¼±ÅÃÇÕ´Ï´Ù.
  2. +
  3. ¿ìŬ¸¯: ÀͽºÇ÷η¯ â ¾È¿¡¼­ .ahk ÆÄÀÏ¿¡ ¿ìŬ¸¯ÇÏ°í "Compile Script"¸¦ ¼±ÅÃÇÕ´Ï´Ù (¿ÀÅäÇÖÅ°¸¦ ¼³Ä¡ÇÒ ¶§ ½ºÅ©¸³Æ® ÄÄÆÄÀÏ ¿É¼ÇÀ» ¼±ÅÃÇßÀ» °æ¿ì¿¡¸¸ ¸Þ´º°¡ ÀÖ½À´Ï´Ù). ÀÌ·¸°Ô ÇÏ¸é ½ºÅ©¸³Æ®¿Í ±âº» À̸§ÀÌ °°Àº EXE ÆÄÀÏÀÌ »ý¼ºµË´Ï´Ù. Àá½Ã ÈÄ¿¡ °°Àº µð·ºÅ丮¿¡ ³ªÅ¸³³´Ï´Ù. ÁÖÀÇ: EXE ÆÄÀÏÀº À§ÀÇ ¹æ¹ý #1¿¡ ÀÇÇÏ¿© ¸¶Áö¸·À¸·Î »ç¿ëµÈ °Í°ú °°Àº ¾ÆÀÌÄÜ, .bin ÆÄÀÏ ±×¸®°í MPRESS ¼³Á¤À» »ç¿ëÇÏ¿© »ý¼ºµË´Ï´Ù.
  4. +
  5. ¸í·É ÁÙ: ÄÄÆÄÀÏ·¯¸¦ ´ÙÀ½ ¸Å°³º¯¼ö¸¦ °¡Áö°í ¸í·É ÁÙ¿¡¼­ ½ÇÇàÇÒ ¼ö ÀÖ½À´Ï´Ù: +
    Ahk2Exe.exe /in MyScript.ahk [/out MyScript.exe] [/icon MyIcon.ico] [/bin AutoHotkeySC.bin] [/mpress 0or1]
    + ¿¹¸¦ µé¾î: +
    Ahk2Exe.exe /in "MyScript.ahk" /icon "MyIcon.ico"
    +»ç¿ë¹ý: +
  6. +
+

ÁÖÀÇ:

+ +

ÄÄÆÄÀÏ·¯ÀÇ ¼Ò½º ÄÚµå¿Í »õ ¹öÀüÀº GitHub¿¡¼­ ¾òÀ» ¼ö ÀÖ½À´Ï´Ù.

+ +

½ºÅ©¸³Æ®¿¡ ¸í·É ÁÙ ¸Å°³º¯¼ö °Ç³×±â

+

+½ºÅ©¸³Æ®´Â ¸í·ÉÁÙ ¸Å°³º¯¼ö¸¦ Áö¿øÇÕ´Ï´Ù. Çü½ÄÀº ´ÙÀ½°ú °°½À´Ï´Ù:

+
AutoHotkey.exe [Switches] [Script Filename] [Script Parameters]
+

+±×¸®°í ÄÄÆÄÀÏµÈ ½ºÅ©¸³Æ®¶ó¸é ±× Çü½ÄÀº ´ÙÀ½°ú °°½À´Ï´Ù:

+
CompiledScript.exe [½ºÀ§Ä¡] [½ºÅ©¸³Æ® ¸Å°³º¯¼ö]
+

+½ºÀ§Ä¡: ´ÙÀ½ Áß Çϳª ¶Ç´Â ±× ÀÌ»ó:

+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
½ºÀ§Ä¡ÀǹÌ
/f ¶Ç´Â /force¹«Á¶°Ç ±âµ¿ÇÕ´Ï´Ù. °æ°í ´ëÈ­»óÀÚ¸¦ ÀüºÎ ¹«½ÃÇÕ´Ï´Ù.
/r ¶Ç´Â /restart½ºÅ©¸³Æ®°¡ Àç½ÃÀÛ ÁßÀ̶ó°í ¾Ë¸³´Ï´Ù (ÀÌ´Â ¶ÇÇÑ ³»ºÎÀûÀ¸·Î Reload ¸í·É¾î°¡ »ç¿ëÇÕ´Ï´Ù).
/ErrorStdOut½ºÅ©¸³Æ®¸¦ ±âµ¿½ÃÅ°Áö ¸øÇÏ°Ô ¹æÇØÇÏ´Â ±¸¹® ¿¡·¯¸¦ ´ëÈ­»óÀÚ¸¦ º¸¿©ÁÖ´Â ´ë½Å¿¡ Ç¥ÁØ¿¡·¯(stderr)·Î Àü¼ÛÇÕ´Ï´Ù. ÀÚ¼¼ÇÑ °ÍÀº #ErrorStdOut¸¦ ÂüÁ¶ÇϽʽÿÀ. ÀÌ°ÍÀ» /iLib¿Í Á¶ÇÕÇÏ¸é ½ºÅ©¸³Æ®¸¦ ½ÇÇàÇÏÁö ¾Ê°í Æò°¡ÇÒ ¼ö ÀÖ½À´Ï´Ù.
ÄÄÆÄÀÏµÈ ½ºÅ©¸³Æ®°¡ Áö¿øÇÏÁö ¾Ê´Â °Í:
/Debug[AHK_L 11+]: µð¹ö±ë Ŭ¶óÀ̾ðÆ®¿¡ Á¢¼ÓÇÕ´Ï´Ù. ´õ ÀÚ¼¼ÇÑ °ÍÀº »óÈ£´ëÈ­ µð¹ö±ëÀ» ÂüÁ¶ÇÕ´Ï´Ù.
/CPn[AHK_L 51+]: ½ºÅ©¸³Æ® ÆÄÀÏÀ» Àд µ¥ »ç¿ëµÈ ±âº» ÄÚµåÆäÀÌÁö¸¦ ¿À¹ö¶óÀ̵å ÇÕ´Ï´Ù. ´õ ÀÚ¼¼ÇÑ Á¤º¸´Â ½ºÅ©¸³Æ® ÆÄÀÏ ÄÚµåÆäÀÌÁö¸¦ ÂüÁ¶ÇϽʽÿÀ.
/iLib "OutFile" +

[v1.0.47+]: AutoHotkey´Â ½ºÅ©¸³Æ®¸¦ ÀûÀçÇÏÁö¸¸ ½ÇÇàÇÏÁö´Â ¾Ê½À´Ï´Ù. ¶óÀ̺귯¸® ¸ÞÄ¿´ÏÁòÀ» ÅëÇÏ¿© ÀÚµ¿À¸·Î-Æ÷ÇÔµÈ °¢ ½ºÅ©¸³Æ® ÆÄÀÏ¿¡ ´ëÇÏ¿©, OutFileÀÌ ÁöÁ¤ÇÑ ÆÄÀÏ¿¡ µÎ ÁÙÀÌ ¾º¿©Áý´Ï´Ù. ´ÙÀ½°ú °°Àº Çü½ÄÀ¸·Î ÀÛ¼ºµË´Ï´Ù. LibDirÀº Lib Æú´õÀÇ ¿ÏÀüÇÑ °æ·ÎÀÌ°í LibFileÀº ±× ¶óÀ̺귯¸®ÀÇ ÆÄÀÏÀ̸§ÀÔ´Ï´Ù:

+
#Include LibDir\
+#IncludeAgain LibDir\LibFile.ahk
+

+ Ãâ·Â ÆÄÀÏ¿¡ Á¸ÀçÇϸé, µ¤¾î¾¹´Ï´Ù. OutFileÀÌ *À̸é Ç¥ÁØÃâ·Â(stdout)¿¡ ¾¹´Ï´Ù.

+

½ºÅ©¸³Æ®¿¡ ±¸¹®¿¡·¯°¡ ÀÖ´Ù¸é, Ãâ·Â ÆÄÀÏÀº ºñ¾î ÀÖÀ» ¼ö ÀÖ½À´Ï´Ù. ÇÁ·Î¼¼½º Á¾·á Äڵ带 »ç¿ëÇϸé ÀÌ »óȲÀ» ŽÁöÇÒ ¼ö ÀÖ½À´Ï´Ù; ±¸¹®¿¡·¯°¡ ÀÖ´Ù¸é, Á¾·á ÄÚµå´Â 2ÀÔ´Ï´Ù. /ErrorStdOut ½ºÀ§Ä¡¸¦ »ç¿ëÇÏ¸é ¿¡·¯ ¸Þ½ÃÁö¸¦ ´©¸£°Å³ª ³ªÆ÷ÇÒ ¼ö ÀÖ½À´Ï´Ù.

+
+ +

½ºÅ©¸³Æ® ÆÄÀÏÀ̸§: +½ºÅ©¸³Æ® ¸Å°³º¯¼ö°¡ ¾ø´Ù¸é »ý·«ÇÒ ¼ö ÀÖ½À´Ï´Ù. »ý·«µÇ¸é (¿¹¸¦ µé¾î ¿ÀÅäÇÖÅ°¸¦ ½ÃÀÛ ¸Þ´º·ÎºÎÅÍ Á÷Á¢ ½ÇÇàÇϸé), ÇÁ·Î±×·¥Àº AutoHotkey.ahk¸¦ ´ÙÀ½ À§Ä¡¿¡¼­ ¼ø¼­´ë·Î ã½À´Ï´Ù:

+ +

ÆÄÀÏÀ̸§ AutoHotkey.ahk´Â ½ºÅ©¸³Æ®¸¦ ½ÇÇàÇÏ´Â µ¥ »ç¿ëµÈ ½ÇÇàÆÄÀÏÀÇ À̸§¿¡ µû¶ó ´Ù¸¨´Ï´Ù. ¿¹¸¦ µé¾î, AutoHotkey.exe¸¦ MyScript.exe·Î À̸§À» ¹Ù²Ù¾ú´Ù¸é, MyScript.ahk¸¦ ãÀ¸·Á°í ½ÃµµÇÕ´Ï´Ù. AutoHotkeyU32.exe¸¦ ¸Å°³º¯¼ö ¾øÀÌ ½ÇÇàÇϸé AutoHotkeyU32.ahk¸¦ ã½À´Ï´Ù.

+

+ÁÖÀÇ: revision 51 ÀÌÀüÀÇ ¹öÀü¿¡¼­´Â AutoHotkey.ini¸¦ ÀÛ¾÷ µð·ºÅ丮¿¡¼­ ã°Å³ª AutoHotkey.ahk¸¦ ³ªÀÇ ¹®¼­¿¡¼­ ã¾Ò½À´Ï´Ù.

+

[v1.1.17+]: º°Ç¥(*)¸¦ ÆÄÀÏÀ̸§¿¡ ÁöÁ¤ÇØ Ç¥ÁØ ÀÔ·Â(stdin)À¸·ÎºÎÅÍ ½ºÅ©¸³Æ® ÅؽºÆ®¸¦ ÀÐ¾î µéÀÔ´Ï´Ù. ¿¹¸¦ µé¾î, ExecScript()¸¦ ÂüÁ¶ÇϽʽÿÀ.

+

+½ºÅ©¸³Æ® ¸Å°³º¯¼ö: ½ºÅ©¸³Æ®¿¡ °Ç³×°í ½ÍÀº ¹®ÀÚ¿­(µé), °¢°¢ ½ºÆäÀ̽º·Î ±¸ºÐµË´Ï´Ù. ½ºÆäÀ̽º°¡ Æ÷ÇÔµÈ ¸Å°³º¯¼ö´Â ÀοëºÎÈ£·Î µÑ·¯½Î¾ß ÇÕ´Ï´Ù. ±âÈ£ ±×´ë·ÎÀÇ ÀοëºÎÈ£´Â ¿ª»ç¼±(\")À» ¾Õ¿¡ ºÙ¿©¼­ °Ç³Ú ¼ö ÀÖ½À´Ï´Ù. °á°úÀûÀ¸·Î, ÀοëºÎÈ£ ¸Å°³º¯¼ö¿¡ µÚµû¸£´Â ¿ª»ç¼±Àº (¿¹¸¦ µé¾î "C:\My Documents\") ±âÈ£ ±×´ë·ÎÀÇ ÀοëºÎÈ£·Î Ãë±ÞµË´Ï´Ù (Áï, ½ºÅ©¸³Æ®´Â ¹®ÀÚ¿­ C:\My Documents"¸¦ ¹Þ½À´Ï´Ù). ±×·± µû¿ÈÇ¥¸¦ Á¦°ÅÇÏ·Á¸é, StringReplace, 1, 1, ",, All¸¦ »ç¿ëÇϽʽÿÀ.

+

+½ºÅ©¸³Æ®´Â µé¾î¿À´Â ¸Å°³º¯¼ö¸¦ º¯¼ö %1%, %2%, µîµîÀ¸·Î º¾´Ï´Ù. °Ô´Ù°¡, %0%¿¡´Â °Ç³×¾îÁø ¸Å°³º¯¼öÀÇ °³¼ö°¡ ´ã°Ü ÀÖ½À´Ï´Ù (¾øÀ¸¸é 0). ±×·¸Áö¸¸, ÀÌ·± º¯¼öµéÀº Ç¥Çö½Ä ¾È¿¡¼­ Á÷Á¢ÀûÀ¸·Î ÂüÁ¶ÇÒ ¼ö ¾ø½À´Ï´Ù. ¿Ö³ÄÇÏ¸é º¯¼ö°¡ ¾Æ´Ï¶ó ¼ýÀÚ·Î º¸À̱⠶§¹®ÀÔ´Ï´Ù. ´ÙÀ½ ¿¹Á¦´Â ³Ê¹« ¸Å°³º¯¼ö°¡ Àû°Ô °Ç³×¾îÁö¸é ½ºÅ©¸³Æ®¸¦ Á¾·áÇÕ´Ï´Ù:

+ +
if 0 < 3  ; ºñ-Ç¥Çö½Ä if-¼­¼ú¹®ÀÇ ¿ÞÂÊÀº ¾ðÁ¦³ª º¯¼öÀÇ À̸§ÀÔ´Ï´Ù.
+{
+    MsgBox ÀÌ ½ºÅ©¸³Æ®´Â Àû¾îµµ 3 °³ÀÇ ¸Å°³º¯¼ö°¡ µé¾î¿À±â¸¦ ¿ä±¸ÇÏÁö¸¸, °Ü¿ì %0% °³¸¦ ¹Þ¾Ò½À´Ï´Ù.
+    ExitApp
+}
+

+½ºÅ©¸³Æ®·Î °Ç³×Áö´Â ¸Å°³º¯¼öÀÇ °³¼ö°¡ ´Þ¶óÁö¸é (»ç¿ëÀÚ°¡ ½ºÅ©¸³Æ®¿¡ ÆÄÀϵéÀ» ²ø¾î ¶³±¸´Â °æ¿ì), ´ÙÀ½ ¿¹Á¦´Â ¸Å°³º¯¼ö¸¦ Çϳª¾¿ ÃßÃâÇÕ´Ï´Ù:

+
Loop, %0%  ; °¢ ¸Å°³º¯¼ö¿¡ ´ëÇÏ¿©:
+{
+    param := %A_Index%  ; A_Index¿¡ Æ÷ÇÔµÈ À̸§ÀÇ º¯¼öÀÇ ³»¿ëÀ» °¡Á®¿É´Ï´Ù.
+    MsgBox, 4,, ¸Å°³º¯¼ö ¹øÈ£ %A_Index%´Â %param%ÀÔ´Ï´Ù. °è¼ÓÇϽðڽÀ´Ï±î?
+    IfMsgBox, No
+        break
+}
+

+¸Å°³º¯¼ö°¡ ÆÄÀÏ À̸§À̸é, ´ÙÀ½ ¿¹Á¦¿Í °°ÀÌ ±× À̸§À» ¿ÏÀüÇÑ/Àý´ë °æ·Î¸¦ Æ÷ÇÔÇÏ¿© ´ë¼Ò¹®ÀÚ¸¦ ±³Á¤ÇÑ ±â´Ù¶õ À̸§À¸·Î º¯È¯ÇÒ ¼ö ÀÖ½À´Ï´Ù (ÆÄÀÏ ½Ã½ºÅÛ¿¡ ÀúÀåµÈ °Í°ú °°Àº):

+
Loop %0%  ; °¢ ¸Å°³º¯¼ö¿¡ ´ëÇÏ¿© (¶Ç´Â ½ºÅ©¸³Æ®¿¡ ¶³±º °¢ ÆÄÀÏ¿¡ ´ëÇÏ¿©):
+{
+    GivenPath := %A_Index%  ;  A_Index¿¡ Æ÷ÇÔµÈ À̸§À» °¡Áø º¯¼öÀÇ ³»¿ëÀ» °¡Á®¿É´Ï´Ù.
+    Loop %GivenPath%, 1
+        LongPath = %A_LoopFileLongPath%
+    MsgBox ´ë¼Ò¹®ÀÚ¸¦ ±³Á¤ÇÑ ±â´Ù¶õ °æ·ÎÀÇ ÆÄÀÏÀ̸§Àº`n%GivenPath%`n´ÙÀ½°ú °°½À´Ï´Ù:`n%LongPath%
+}
+

¾Ë·ÁÁø ÇÑ°è: ÆÄÀÏÀ» ²ø¾î .ahk ½ºÅ©¸³Æ®¿¡ ¶³¾îÆ®¸± ¶§ NTFS ÆÄÀÏ ½Ã½ºÅÛ¿¡¼­ 8-Á¡-3 (ªÀº) À̸§ÀÌ ²¨Á® ÀÖÀ¸¸é Á¦´ë·Î ÀÛµ¿ÇÏÁö ¸øÇÒ °¡´É¼ºÀÌ ³ô½À´Ï´Ù. ÇÑ °¡Áö ¿ìȸåÀº ½ºÅ©¸³Æ®¸¦ ÄÄÆÄÀÏÇÑ ´ÙÀ½ ±× °á°ú ÆÄÀÏÀ» ±× °á°ú EXE ÆÄÀÏ À§¿¡ ²ø¾î ¶³±¸´Â °ÍÀÔ´Ï´Ù.

+ +

½ºÅ©¸³Æ® ÆÄÀÏ ÄÚµåÆäÀÌÁö [AHK_L 51+]

+

½ºÅ©¸³Æ® ÆÄÀÏ¿¡ Æ÷ÇԵǴ ¹®ÀÚ´Â ±× ÆÄÀÏÀ» ÀûÀçÇϴµ¥ »ç¿ëµÈ ÄÚµåÆäÀÌÁö¿¡ Á¦Çѵ˴ϴÙ.

+ +

ÀÌ ¿øÄ¢Àº ¿ÀÅäÇÖÅ°°¡ ÀûÀçÇÏ´Â ½ºÅ©¸³Æ® ÆÄÀÏ¿¡¸¸ Àû¿ëµË´Ï´Ù. ½ºÅ©¸³Æ® ÀÚüÀÇ ÆÄÀÏ I/O¿¡´Â Àû¿ëµÇÁö ¾Ê´Â´Ù´Â °ÍÀ» ÁÖÀÇÇϽʽÿÀ. ÆÄÀÏÀÎÄÚµùÀº ½ºÅ©¸³Æ®°¡ ÀÐ°í ¾²´Â ±âº» ÀÎÄÚµùÀ» Á¦¾îÇÕ´Ï´Ù. ¹Ý¸é¿¡ IniRead¿Í IniWrite´Â ¾ðÁ¦³ª UTF-16 ¶Ç´Â ANSI¸¦ Ãë±ÞÇÕ´Ï´Ù.

+

¸ðµç ÅؽºÆ®°¡ (ÇÊ¿äÇϸé) °íÀ¯ÀÇ ¹®ÀÚ¿­ Çü½ÄÀ¸·Î º¯È¯µÇ¹Ç·Î, À¯È¿ÇÏÁö ¾Ê°Å³ª °íÀ¯ÀÇ ÄÚµåÆäÀÌÁö¿¡ Á¸ÀçÇÏÁö ¾Ê´Â ¹®ÀÚ´Â À§Ä¡º¸À¯ÀÚ·Î ±³Ã¼µË´Ï´Ù: ANSI¶ó¸é '?'·Î ±³Ã¼µÇ°í Unicode´Â '�'·Î ±³Ã¼µË´Ï´Ù. À¯´ÏÄÚµå ºôµåº»Àº ¿ÀÁ÷ ½ºÅ©¸³Æ® ÆÄÀÏ¿¡ ÀÎÄÚµù ¿¡·¯°¡ ÀÖÀ» °æ¿ì ¶Ç´Â ÆÄÀÏÀ» ÀûÀçÇÏ°í ÀúÀåÇÏ´Â µ¥ »ç¿ëµÈ ÄÚµå ÆäÀÌÁö°¡ ÀÏÄ¡ÇÏÁö ¾ÊÀ» °æ¿ì¿¡¸¸ ±³Ã¼°¡ ÀϾ´Ï´Ù.

+

RegWrite´Â ÀͽºÇ÷η¯·Î ±âµ¿µÈ ½ºÅ©¸³Æ®¿¡ ´ëÇÏ¿© ±âº»°ªÀ» ¼³Á¤ÇÏ´Â µ¥ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù(¿¹, ´õºíŬ¸¯ ½ÇÇà):

+
; ¾Æ·¡ÀÇ ÀûÀýÇÑ ÁÙ¿¡ ÁÖ¼®À» °È¾î³»°í ¸ðµÎ ÁÖ¼® ó¸®Çؼ­
+; ÇöÀç ºôµåÀÇ ±âº»°ªÀ¸·Î ¸®¼ÂÇÕ´Ï´Ù. ÇÊ¿äÇÑ ´ë·Î º¯°æÇÕ´Ï´Ù:
+; codepage = 0        ; ½Ã½ºÅÛ ±âº» ANSI ÄÚµåÆäÀÌÁö
+; codepage = 65001    ; UTF-8
+; codepage = 1200     ; UTF-16
+; codepage = 1252     ; ANSI ¶óƾ 1; ¼­±¸ À¯·´ (À©µµ¿ìÁî)
+if (codepage != "")
+    codepage := " /CP" . codepage
+cmd="%A_AhkPath%"%codepage% "`%1" `%*
+key=AutoHotkeyScript\Shell\Open\Command
+if A_IsAdmin    ; ¸ðµç »ç¿ëÀÚ¸¦ À§ÇØ ¼³Á¤ÇÕ´Ï´Ù.
+    RegWrite, REG_SZ, HKCR, %key%,, %cmd%
+else            ; ÇöÀç »ç¿ëÀÚ¿¡ ´ëÇؼ­¸¸ ¼³Á¤ÇÕ´Ï´Ù.
+    RegWrite, REG_SZ, HKCU, Software\Classes\%key%,, %cmd%
+

ÀÌ¹Ì ¿ÀÅäÇÖÅ°°¡ ¼³Ä¡µÇ¾î ÀÖ´Ù°í °¡Á¤ÇÕ´Ï´Ù. ±×·¸Áö ¾Ê´Ù¸é °á°ú°¡ ºÒ¸¸Á·½º·¯¿ï ¼öµµ ÀÖ½À´Ï´Ù.

+ +

½ºÅ©¸³Æ® µð¹ö±ëÇϱâ

+

+ListVars¿Í Pause°°Àº ¸í·É¾îµéÀº ½ºÅ©¸³Æ®¸¦ µð¹ö±×ÇÏ´Â µ¥ µµ¿òÀ» ÁÙ ¼ö ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î, ´ÙÀ½ÀÇ µÎ ÁÙÀ» ÁÖÀÇ ±í°Ô ¼±ÅÃµÈ À§Ä¡¿¡ Àӽ÷Π»ðÀÔÇϸé, ½ºÅ©¸³Æ®¿¡ "Á¤Áö Á¡"À» ¸¸µì´Ï´Ù:

+
ListVars
Pause
+

+½ºÅ©¸³Æ®°¡ ÀÌ µÎ ÁÙÀ» ¸¸³ª¸é, ¸ðµç º¯¼öÀÇ ÇöÀç ³»¿ëÀ» È­¸é¿¡ º¸¿©ÁֹǷΠÁ¶»çÇÒ ¼ö ÀÖ½À´Ï´Ù. Àç°³ÇÒ Áغñ°¡ µÇ¸é, FileÀ̳ª Tray ¸Þ´º¸¦ ÅëÇÏ¿© Àç°³ÇÕ´Ï´Ù. ±×·¯¸é ½ºÅ©¸³Æ®´Â (Ȥ ÀÖ´Ù¸é) ´ÙÀ½ "Á¤Áö Á¡"¿¡ µµ´ÞÇÒ ¶§±îÁö °è¼Ó ÁøÇàÇÕ´Ï´Ù.

+

+ÀϹÝÀûÀ¸·Î ÀÌ·± "Á¤Áö Á¡"µéÀ» È°¼º âÀÌ ½ºÅ©¸³Æ®¿¡ ¿µÇâÀ» ÁÖÁö ¾Ê´Â °÷¿¡ ¹èÄ¡ÇÏ´Â °ÍÀÌ Á¦ÀÏ ÁÁ½À´Ï´Ù. ¿¹¸¦ µé¾î WinActivate ¸í·É¾î ¹Ù·Î ´ÙÀ½ÀÌ ÁÁ½À´Ï´Ù. ÀÌ·¸°Ô ÇÏ¸é ½ºÅ©¸³Æ®´Â ÀûÀýÇÏ°Ô ¿¬»êÀ» Àç°³ÇÒ ¼ö ÀÖ½À´Ï´Ù.

+

+´ÙÀ½ ¸í·É¾îµéµµ ¶ÇÇÑ µð¹ö±ë¿¡ À¯¿ëÇÕ´Ï´Ù: ListLines, KeyHistory, ±×¸®°í OutputDebug.

+

+¾ÆÁÖ ÈçÇÑ ¿¡·¯·Î, öÀÚ ¿À·ù³ª "global" ¼±¾ðÀ» »©¸Ô´Â °æ¿ì, °æ°í¸¦ ÄѸé ŽÁöÇÒ ¼ö ÀÖ½À´Ï´Ù.

+ +

»óÈ£´ëÈ­ µð¹ö±ë [AHK_L 11+]

+

+»óÈ£´ëÈ­ µð¹ö±ëÀº Áö¿øµÇ´Â DBGp Ŭ¶óÀ̾ðÆ®·Î °¡´ÉÇÕ´Ï´Ù. ÀüÇüÀûÀ¸·Î ´ÙÀ½ Á¶Ä¡°¡ °¡´ÉÇÕ´Ï´Ù:

+ +

ÀÌ ±â´ÉÀº ÄÄÆÄÀÏµÈ ½ºÅ©¸³Æ®¿¡´Â ²¨Á® ÀÖÀ½¿¡ À¯ÀÇÇϽʽÿÀ.

+

+»óÈ£´ëÈ­ µð¹ö±ëÀ» ÄÑ·Á¸é, ¸ÕÀú Áö¿øµÇ´Â µð¹ö°Å Ŭ¶óÀ̾ðÆ®¸¦ ±âµ¿ÇÑ ´ÙÀ½, ±× ½ºÅ©¸³Æ®¸¦ /Debug ¸í·É¾î ÁÙ ½ºÀ§Ä¡¿Í ÇÔ²² ±âµ¿ÇÕ´Ï´Ù.

+
AutoHotkey.exe /Debug[=SERVER:PORT] ...
+

+SERVER¿Í PORT´Â »ý·«Çصµ µË´Ï´Ù. ¿¹¸¦ µé¾î, ´ÙÀ½Àº µ¿µîÇÕ´Ï´Ù:

+
AutoHotkey /Debug "myscript.ahk"
+AutoHotkey /Debug=localhost:9000 "myscript.ahk"
+ +

[AHK_L 59+]: +µð¹ö°Å¸¦ ÀÌ¹Ì ½ÇÇàÁßÀÎ ½ºÅ©¸³Æ®¿¡ ºÙÀÌ·Á¸é, ¾Æ·¡¿Í °°Àº ¸Þ½ÃÁö¸¦ Àü¼ÛÇϽʽÿÀ:

+
ScriptPath = ; ¿©±â¿¡ ½ºÅ©¸³Æ®ÀÇ Àüü °æ·Î¸¦ ¼³Á¤ÇϽʽÿÀ
+DetectHiddenWindows On
+ifWinExist %ScriptPath% ahk_class AutoHotkey
+    ; ¼±ÅÃÀû ¸Å°³º¯¼ö:
+    ;   wParam  = µð¹ö°Å Ŭ¶óÀ̾ðÆ®ÀÇ  IPv4 ÁÖ¼Ò, 32-ºñÆ® Á¤¼ö.
+    ;   lParam  = µð¹ö°Å Ŭ¶óÀ̾ðÆ®°¡ ÁÖ½ÃÇÏ°í ÀÖ´Â Æ÷Æ®.
+    PostMessage DllCall("RegisterWindowMessage", "str", "AHK_ATTACH_DEBUGGER")
+
+

+µð¹ö°Å Ŭ¶óÀ̾ðÆ®°¡ Á¢¼ÓµÇ¸é, ½ºÅ©¸³Æ®¸¦ Á¾·áÇÏÁö ¾Ê°íµµ ¶¿ ¼ö ÀÖ½À´Ï´Ù. "detach" DBGp ¸í·É¾î¸¦ Àü¼ÛÇÏ¸é µË´Ï´Ù.

+ +

AutoHotkey.exeÀÇ È£È¯¼º

+

+AutoHotkey.exe ÆÄÀϸ¸ ÀÖÀ¸¸é ¾î¶² .ahk ½ºÅ©¸³Æ®µµ ½ÇÇàÇÒ ¼ö ÀÖ½À´Ï´Ù.

+

[AHK_L 51+]: +AutoHotkey.exe À̸§À» ¹Ù²Ù¸é ±âº»°ªÀ¸·Î ½ÇÇàµÇ´Â ½ºÅ©¸³Æ®ÀÇ À̸§µµ ¹Ù²ò´Ï´Ù. ¿ÀÅäÇÖÅ°¸¦ ¼³Ä¡ÇÏÁö ¾Ê°í ÄÄÇ»ÅÍ¿¡ »ç¿ëÇϱâ À§ÇØ ½ºÅ©¸³Æ®¸¦ ÄÄÆÄÀÏÇÏ´Â ¹æ¹ýÀÇ ´ë¾ÈÀÌ µÉ ¼ö ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¸é, MyScript.exe´Â ÆÄÀÏÀ̸§ÀÌ ÁÖ¾îÁöÁö ¾ÊÀ¸¸é ÀÚµ¿À¸·Î MyScript.ahk¸¦ ½ÇÇàÇÕ´Ï´Ù. ±×·¯³ª ´Ù¸¥ ½ºÅ©¸³Æ®µµ ¿ª½Ã ½ÇÇàÇÒ ¼ö ÀÖ½À´Ï´Ù.

+ +

¼³Ä¡ ¿É¼Ç

+

+Á¶¿ëÇÏ°Ô ¿ÀÅäÇÖÅ°´Â ±âº» µð·ºÅ丮¿¡ ¼³Ä¡ÇÏ·Á¸é (À¯/¼ÒÀ½ ¸ðµå¿¡¼­ º¸¿©ÁÖ´Â µð·ºÅ丮), ¸Å°³º¯¼ö /S¸¦ ¼³Ä¡±â¿¡ °Ç³×¸é µË´Ï´Ù. ¿¹¸¦ µé¾î:

+
AutoHotkey110800_Install.exe /S
+

+±âº» µð·ºÅ丮 ¸»°í ´Ù¸¥ µð·ºÅ丮¿¡ ¼³Ä¡ÇÏ·Á¸é /D ¸Å°³º¯¼ö·Î ÁöÁ¤ÇÕ´Ï´Ù ( /S°¡ ¾øÀ» °æ¿ì, ¼³Ä¡±â°¡ º¸¿©ÁÖ´Â ±âº» µð·ºÅ丮°¡ º¯°æµË´Ï´Ù). ¿¹¸¦ µé¾î:

+ +
AutoHotkey110800_Install.exe /S /D=C:\Program Files\AutoHotkey
+

+¿ÀÅäÇÖÅ°°¡ ¹ú½á ¼³Ä¡µÇ¾î ÀÖ´Ù¸é, ÀÚµ¿À¸·Î ¾î´À ¹öÀüÀÇ AutoHotkey.exeÀÎÁö ŽÁöÇÏ¿© ±âº»°ªÀ¸·Î ¼³Á¤ÇÕ´Ï´Ù. ±×·¸Áö ¾ÊÀ¸¸é, ±âº»°ªÀº À¯´ÏÄÚ 32-ºñÆ® ¶Ç´Â À¯´ÏÄÚµå 64-ºñÆ®·Î¼­ OS°¡ 64-ºñÆ®Àΰ¡ ¾Æ´Ñ°¡¿¡ µû¶ó ´Þ¶óÁý´Ï´Ù. ±âº»°ªÀ¸·Î ¼³Á¤µÈ AutoHotkey.exe ¹öÀüÀ» ¿À¹ö¶óÀ̵å ÇÏ·Á¸é, ´ÙÀ½ ½ºÀ§Ä¡ Áß Çϳª¸¦ °Ç³×¸é µË´Ï´Ù:

+ +

¿¹¸¦ µé¾î, ´ÙÀ½Àº Á¶¿ëÇÏ°Ô ANSI 32-ºñÆ®¸¦ ±âº»°ªÀ¸·Î ¼³Á¤ÇÏ°í ¼³Ä¡ÇÕ´Ï´Ù:

+
AutoHotkey110800_Install.exe /S /A32
+

+Á¶¿ëÇÏ°Ô AutoHotkey¸¦ Á¦°ÅÇÏ·Á¸é, /Uninstall ¸Å°³º¯¼ö¸¦ Installer.ahk¿¡ °Ç³Ü´Ï´Ù. ¿¹¸¦ µé¾î:

+
"C:\Program Files\AutoHotkey\AutoHotkey.exe" "C:\Program Files\AutoHotkey\Installer.ahk" /Uninstall
+

+AutoHotkey°¡ 1.1.08.00 ÀÌÀü ¹öÀüÀ̶ó¸é, uninst.exe /S¸¦ »ç¿ëÇϽʽÿÀ. ¿¹¸¦ µé¾î:

+ +
"C:\Program Files\AutoHotkey\uninst.exe" /S
+

+ÁÖÀÇ: Installer.ahk´Â °ü¸®ÀÚ ±ÇÇÑÀ¸·Î ½ÇÇàÇØ¾ß Á¦´ë·Î ÀÛµ¿ÇÕ´Ï´Ù.

+

+ÀÌÈÄ ¹öÀüÀº ¿ìÇÏ ¸ð¼­¸®¿¡ ¸µÅ©°¡ Æ÷ÇԵǾî À־ ¼³Ä¡ÇÒ ÇÊ¿ä ¾øÀÌ ¼³Á¤ ÆÄÀÏÀ» ÃßÃâÇÒ ¼ö ÀÖ½À´Ï´Ù. ÀÌ ±â´ÉÀÌ ÀÖÀ¸¸é /E ½ºÀ§Ä¡¸¦ »ç¿ëÇØ ¸í·É ÁÙ¿¡¼­ ÃßÃâÇÒ ¼ö ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î:

+ +
AutoHotkey110903_Install.exe /D=F:\AutoHotkey /E
+

+Á¶¿ëÇÑ ¼³Ä¡/Á¦°Å ¸ðµå¿¡¼­ ½ºÅ©¸³Æ®¸¦ ½ÇÇàÇϸé ÇÊ¿äÇÑ °æ¿ì ÀÚµ¿À¸·Î ´ÝÈü´Ï´Ù. /R ½ºÀ§Ä¡¸¦ °Ç³×¸é (v1.1.19.02+ ÇÊ¿ä) ½ÇÇà ÁßÀÎ EXE¸¦ ÀÌ¿ëÇÏ¿© ÀÚµ¿À¸·Î ÀÌ·± ½ºÅ©¸³Æ®¸¦ ÀçÀûÀçÇÒ ¼ö ÀÖ½À´Ï´Ù. ¸í·É¾î ÁÙ ÀÎÀÚ°¡ ÇÊ¿ä ¾ø½À´Ï´Ù. +Installer.ahk¸¦ »ç¿ëÇÏ¿© ¼³Á¤À» º¯°æÇÒ ¶§ ÀÌ ¿É¼ÇÀº ÇöÀç Áö¿øÇÏÁö ¾Ê½À´Ï´Ù.

+ +

½ºÅ©¸³Æ® ¿¹Á¦

+

À¯¿ëÇÑ ½ºÅ©¸³Æ®´Â ÀÌ ÆäÀÌÁö¿¡¼­ º¸½Ç ¼ö ÀÖ½À´Ï´Ù.

+ + diff --git a/src/docs/Tutorial.htm b/src/docs/Tutorial.htm new file mode 100644 index 0000000..c3086fc --- /dev/null +++ b/src/docs/Tutorial.htm @@ -0,0 +1,1203 @@ + + + + + + + + + AutoHotkey Beginner Tutorial + + + + + +
+

¿ÀÅäÇÖÅ° Ãʺ¸ÀÚ ÀÚ½À¼­, ÀÛ¼º ƼµåºñÆ®(tidbit)

+
+

¸ñÂ÷

+
    +
  1. 񃧯 +
      +
    1. ¿ÀÅäÇÖÅ° ³»·Á¹Þ±â
    2. +
    3. ½ºÅ©¸³Æ® ¸¸µå´Â ¹ý
    4. +
    5. ¸í·É¾î´Â º´ÇÕÇÒ ¼ö ¾ø´Ù
    6. +
    7. ±âŸ ±âº» Á¤º¸
    8. +
    +
  2. +
  3. ÇÖÅ° & ÇÖ½ºÆ®¸µ +
      +
    1. Å° ±×¸®°í ½Éº¼
    2. +
    3. â Àü¿ë
    4. +
    5. ÆÄÀÏ´ç ¿©·¯ ÇÖÅ°
    6. +
    7. ¿¹Á¦
    8. +
    +
  4. +
  5. Å° ´­¸² Àü¼ÛÇϱâ +
      +
    1. °ÔÀÓ
    2. +
    +
  6. +
  7. ÇÁ·Î±×·¥ ½ÇÇàÇϱâ & À¥»çÀÌÆ® ¿­±â
  8. +
  9. ¸í·É¾î vs. ÇÔ¼ö +
      +
    1. ÄÚµå ºí·Ï
    2. +
    +
  10. +
  11. º¯¼ö +
      +
    1. ÆÛ¼¾Æ®¸¦ »ç¿ëÇÒ ¶§
    2. +
    3. »ç¿ëÀÚ ÀÔ·Â ¾ò±â
    4. +
    5. ´Ù¸¥ ¿¹Á¦µé?
    6. +
    +
  12. +
  13. °´Ã¼ +
      +
    1. °´Ã¼ ¸¸µé±â
    2. +
    3. °´Ã¼ »ç¿ëÇϱâ
    4. +
    +
  14. +
  15. ±âŸ µµ¿òÀÌ µÇ´Â °Íµé +
      +
    1. ½ÅºñÇÑ []
    2. +
    3. AHK ¹öÀü ¾Ë¾Æ³»±â
    4. +
    5. ½ÃÇà Âø¿À
    6. +
    7. µé¿©¾²±â
    8. +
    9. µµ¿ò ±¸Çϱâ
    10. +
    11. ±âŸ ¸µÅ©
    12. +
    +
  16. +
+
+
+
+

1 - ±âº» Áö½Ä

+

+ ¿©ÇàÀ» ½ÃÀÛÇϱâ Àü¿¡, Á¶¾ðÀ» ÇÑ ¸¶µð ÇÒ±î ÇÕ´Ï´Ù. + ÀÌ ÀÚ½À¼­¿¡¼­ ¿©·¯ºÐÀº ²Ï ¸¹Àº ÅؽºÆ®¿Í Äڵ带 º¸½Ã°Ô µË´Ï´Ù. + ¹è¿ì´Â ÈûÀ» Å°¿ì·Á¸é, ÅؽºÆ®¸¦ Àаí Äڵ带 ½ÃÇèÇØ º¾´Ï´Ù. + ´ÙÀ½ ±× Äڵ带 ¿¬±¸ÇØ º¸½Ã±â ¹Ù¶ø´Ï´Ù. +
ÀÌ ÆäÀÌÁö¿¡¼­ ´ëºÎºÐÀÇ ¿¹Á¦¸¦ º¹»çÇØ ºÙ¿© ³ÖÀ» ¼ö ÀÖ½À´Ï´Ù. +
Àß ¸ð¸£°Ú´Ù¸é, ´Ù½Ã ÀÐ¾î º¸½Ê½Ã¿À. +

+ +

a. ¿ÀÅäÇÖÅ°¸¦ ³»·Á¹Þ¾Æ ¼³Ä¡Çϱâ

+ + +

+ AutoHotkey (AHK)ÀÇ »ç¿ë¹ýÀ» ¹è¿ì±â¿¡ ¾Õ¼­, ³»·Á ¹Þ¾Æ¾ß ÇÏ°Ú½À´Ï´Ù. + ³»·Á ¹Þ¾ÒÀ¸¸é, ¼³Ä¡ÇØ¾ß °ÚÁö¿ä. ±×·¯³ª ±×°ÍÀº ¿øÇÏ´Â ¹öÀüÀÌ ¹«¾ùÀΰ¡¿¡ µû¶ó ´Þ¶óÁý´Ï´Ù. + ÀÌ Áöħ¼­¿¡¼­´Â ¼³Ä¡±â¸¦ »ç¿ëÇÏ°Ú½À´Ï´Ù. °¡Àå ½±°Ô ¼³Ä¡ÇÒ ¼ö ÀÖÀ¸´Ï±î¿ä. +

+ + +

ÅؽºÆ® Áö½Ã:

+
    +
  1. AutoHotkey ȨÆäÀÌÁö·Î °©´Ï´Ù. + http://ahkscript.org/ +
  2. +
  3. ³»·Á¹Þ½À´Ï´Ù. + http://ahkscript.org/download/ahk-install.exe +
  4. +
  5. + AutoHotkey¸¦ ¼³Ä¡ÇÏ´Â µ¿¾È UNICODE ¶Ç´Â ANSI Áß Çϳª¸¦ °ñ¶ó¾ß ÇÕ´Ï´Ù. + ª°Ô ¸»ÇØ, ¾Æ¸¶µµ UNICODE¸¦ ¼±ÅÃÇÏ´Â ÆíÀÌ ÁÁ½À´Ï´Ù. + ¿µ¹®ÀÚ-¾Æ´Ñ ¹®ÀÚ¿Í ¼ýÀÚµéÀ» Áö¿øÇϰŵç¿ä. + ¼³Ä¡ ¹öÆ°ÀÌ ³ª¿Ã ¶§±îÁö °è¼Ó ÁøÇàÇÕ´Ï´Ù. +
  6. +
  7. ÀÏ´Ü ³¡³µÀ¸¸é, ¼º°øÀÔ´Ï´Ù! ¼½¼Ç b¿¡¼­ °è¼ÓÇÕ´Ï´Ù.
  8. +
+

µ¿¿µ»ó Áö½Ã:
+ Frankie's "Install and Hello World"
+ http://www.autohotkey.com/forum/viewtopic.php?t=77674 +

+ +

b. ½ºÅ©¸³Æ® ¸¸µå´Â ¹ý

+

+ ¿ÀÅäÇÖÅ°¸¦ ¼³Ä¡ÇßÀ¸¸é, ¹º°¡ ÀÏÀ» ½ÃÅ°°í ½Í°ÚÁö¿ä. + ¿ÀÅäÇÖÅ°°¡ ¸¶¹ýÀº ¾Æ´Õ´Ï´Ù. ¿ì¸® ¸ðµÎ°¡ ±×·¸±â¸¦ ¹Ù¶óÁö¸¸, ½ÇÁ¦·Î´Â ¾Æ´Õ´Ï´Ù. + ±×·¡¼­ ¹«½¼ ÀÏÀ» Ç϶ó°í Áö½ÃÇÒ ÇÊ¿ä°¡ ÀÖ½À´Ï´Ù. + ÀÌ·± ÀýÂ÷¸¦ "½ºÅ©¸³ÆÃ(Scripting)"À̶ó°í ºÎ¸¨´Ï´Ù. +

+ +

ÅؽºÆ® Áö½Ã:

+
    +
  • 1. µ¥½ºÅ©Å¾¿¡ ¿ìŬ¸¯ÇÕ´Ï´Ù.
  • +
  • 2. ¸Þ´º¿¡¼­ "New"¸¦ ã½À´Ï´Ù.
  • +
  • 3. "New" ¸Þ´º ¾È¿¡ "AutoHotkey Script"¸¦ Ŭ¸¯ÇÕ´Ï´Ù.
  • +
  • 4. ½ºÅ©¸³Æ®¿¡ »õ À̸§À» ÁÝ´Ï´Ù. ÁÖÀÇ: È®ÀåÀÚ´Â .ahk·Î ³¡³ª¾ß ÇÕ´Ï´Ù. ¿¹. MyScript.ahk
  • +
  • 5. µ¥½ºÅ©Å¾¿¡ »õ·Î ¸¸µé¾îÁø ÆÄÀÏÀ» ã¾Æ ¿ìŬ¸¯ÇÕ´Ï´Ù.
  • +
  • 6. "Edit Script"¸¦ Ŭ¸¯ÇÕ´Ï´Ù.
  • +
  • 7. âÀÌ ¿­¸± °Ì´Ï´Ù. ¾Æ¸¶µµ ³ëÆ®ÆеåÀÌ°ÚÁö¿ä. ±×·¸´Ù¸é, ¼º°øÀÔ´Ï´Ù! +
    +

    + ÀÌÁ¦ ½ºÅ©¸³Æ®¸¦ ¸¸µé¾úÀ¸¹Ç·Î, ÆÄÀÏ ¾È¿¡ ³»¿ëÀ» ä¿ö ³Ö¾î¾ß ÇÏ°Ú½À´Ï´Ù. + ¸ðµç ³»Àå ¸í·É¾î¿Í ÇÔ¼ö ±×¸®°í º¯¼ö ¸ñ·ÏÀº + section 5¿¡¼­ º¸½Ç ¼ö ÀÖ½À´Ï´Ù.
    +

    +

    + ´ÙÀ½Àº ÇÖÅ°¸¦ ´ã°í ÀÖ´Â ¾ÆÁÖ °£´ÜÇÑ ½ºÅ©¸³Æ®ÀÔ´Ï´Ù. + ±× ÇÖÅ°°¡ ´­¸®¸é Send ¸í·É¾î¸¦ »ç¿ëÇÏ¿© ÅؽºÆ®¸¦ ŸÀÚÇÕ´Ï´Ù. +

    + +
    +^j::
    +   Send, ³ªÀÇ Ã¹ ¹ø° ½ºÅ©¸³Æ®
    +Return
    +
    +

    + ³ªÁß¿¡ ´õ ±íÀÌ µé¾î°¡ º¸°Ú½À´Ï´Ù. ±× ¶§±îÁö, ¿©±â¿¡¼­´Â À§ÀÇ Äڵ带 ¼³¸íÇÕ´Ï´Ù.
    + + - ù ÁÙ. ^j::°¡ ¹Ù·Î ÇÖÅ°ÀÔ´Ï´Ù. + ^´Â CTRLÀ» ÀǹÌÇÏ°í, j´Â ±âÈ£¹®ÀÚ jÀÔ´Ï´Ù. + ::ÀÇ ¿ÞÂÊ¿¡ ÀÖ´Â °ÍÀº ¸ðµÎ ´©¸¦ ÇÊ¿ä°¡ ÀÖ´Â Å°µéÀÔ´Ï´Ù.
    + + - µÑ° ÁÙ. Send, My First Script´Â Å°µéÀ» Àü¼ÛÇÏ´Â(SEND) ¹ýÀ» º¸¿©ÁÝ´Ï´Ù. + SEND´Â ¸í·É¾îÀÌ°í, ½°Ç¥(,) ´ÙÀ½¿¡ ¿À´Â °ÍµéÀÌ ¸ðµÎ ŸÀڵ˴ϴÙ.
    + + - ¼Â° ÁÙ. Return. ReturnÀº ¾ÕÀ¸·Î °¡Àå ¸¹ÀÌ Á¢ÇÏ°Ô µÇ½Ç °Ì´Ï´Ù. + ¹®ÀÚ ±×´ë·Î Äڵ带 ¸ØÃä´Ï´Ù. ¾Æ·¡·Î ´õ ÀÌ»ó ÁøÇàÇÏÁö ¾Ê½À´Ï´Ù. + ÀÌ·¸°Ô ÇÏ¸é ½ºÅ©¸³Æ®¿¡ ¸¹Àº ³»¿ëÀÌ ÀÖÀ» ¶§ ¹®Á¦¸¦ ÇÇÇÒ ¼ö ÀÖ½À´Ï´Ù. +

    +
    +
  • 8. ÆÄÀÏÀ» ÀúÀåÇÕ´Ï´Ù.
  • +
  • 9. µ¥½ºÅ©Å¾ÀÇ ±× ÆÄÀÏÀ» ´õºíŬ¸¯ÇÏ¿© ½ÇÇàÇÕ´Ï´Ù. ³ëÆ®Æе带 ¿±´Ï´Ù (¹«¾ùÀ̵ç ŸÀÚÇØ ³ÖÀ» ¼ö ÀÖ½À´Ï´Ù). + ±×¸®°í Ctrl and J¸¦ ´©¸¨´Ï´Ù.
  • +
  • 10. ¸ÚÁöÁö¿ä, ¼º°øÀÔ´Ï´Ù! ù ½ºÅ©¸³Æ®°¡ ½ÇÇàµÇ¾ú½À´Ï´Ù. °¡¼­ Àá½Ã ½¬°í µ¹¾Æ¿Í ÀÌ ÀÚ½À¼­¸¦ °è¼Ó Àо½Ê½Ã¿À..
  • +
+ +

+ ºñµð¿À Áö½Ã:
+ Frankie's "Install and Hello World"
http://www.autohotkey.com/forum/viewtopic.php?t=77674 + +

+

c. ¸í·É¾î´Â º´ÇÕÇÒ ¼ö ¾ø½À´Ï´Ù

+

+ Äڵ带 ¸¸µé ¶§, ¿©·¯ ¸í·É¾îµéÀ» ÇÑ ÁÙ¿¡ ¶Ç´Â ÇÑ ¸í·É¾î ¾È¿¡ ´Ù¸¥ ¸í·É¾î¸¦ ¹èÄ¡ÇÏ°í ½ÍÀº À¯È¤¿¡ ºüÁú °æ¿ì°¡ ¸¹À» °ÍÀÔ´Ï´Ù. + Àý´ë ±×·¸°Ô ÇÏÁö ¸¶½Ê½Ã¿À. ¼½¼Ç 5¿¡¼­ ¿Ö ¿¹»óÇÑ´ë·Î ÀÛµ¿ÇÏÁö ¾Ê´ÂÁö ±×¸®°í ´ë½Å¿¡ ¾î¶»°Ô Çϸé ÁÁÀºÁö ¸»¾¸µå¸®°Ú½À´Ï´Ù. +

+ +

d. ±âŸ ±âº»ÀûÀÎ Á¤º¸µé

+
+ µµ¿ò¸» ÆÄÀÏ Ã£´Â ¹ý:
+ ¸î °¡Áö ¹æ¹ýÀÌ ÀÖ½À´Ï´Ù. µµ¿ò¸»ÀÌ ±âº» À§Ä¡¿¡ ¼³Ä¡µÇ¾î ÀÖ´Ù°í °¡Á¤ÇÏ°Ú½À´Ï´Ù..

+ ¹æ¹ý 1: +
    +
  1. ½ÃÀÛ ¸Þ´º¸¦ ã°Å³ª È­¸é¿¡¼­ Start Orb¸¦ ¿±´Ï´Ù. º¸Åë ÁÂÇÏ¿¡ ÀÖ½À´Ï´Ù.
  2. +
  3. ÇÁ·Î±×·¥ ¶Ç´Â ¸ðµç ÇÁ·Î±×·¥À» ¼±ÅÃÇÕ´Ï´Ù.
  4. +
  5. ¸ñ·Ï¿¡¼­ AutoHotkey¸¦ ã½À´Ï´Ù.
  6. +
  7. ã¾ÒÀ¸¸é AutoHotkey µµ¿ò¸» ÆÄÀÏÀÌ º¸ÀÏ °Ì´Ï´Ù. ±×°ÍÀ» Ŭ¸¯ÇÕ´Ï´Ù.
  8. +
  9. ³¡ÀÔ´Ï´Ù!
  10. +
+ ¹æ¹ý 2: +
    +
  1. µ¥½ºÅ©Å¾À¸·Î °©´Ï´Ù.
  2. +
  3. ³» ÄÄÇ»ÅÍ ¶Ç´Â ÄÄÇ»Å͸¦ ã½À´Ï´Ù. ±×°ÍÀ» ¿±´Ï´Ù.
  4. +
  5. AutoHotkey°¡ µé¾îÀÖ´Â ÇÏµå µå¶óÀ̺ê·Î °©´Ï´Ù. ¾Æ¸¶µµ C:\ µå¶óÀ̺êÀÌ°ÚÁö¿ä.
  6. +
  7. Program Files Æú´õ ¾È¿¡¼­ AutoHotkey¸¦ °Ë»öÇÕ´Ï´Ù.
  8. +
  9. AutoHotkey.chm¸¦ ã°Å³ª À̸§ÀÌ AutoHotkeyÀÎ ÆÄÀÏÀ» ã½À´Ï´Ù. ±× À§¿¡ ³ë¶õ»ö ¹°À½Ç¥°¡ ÀÖ½À´Ï´Ù.
  10. +
  11. ³¡ÀÔ´Ï´Ù!
  12. +
+
+

+ ¿Â¶óÀÎ ¸µÅ©:
+ ¹®¼­
+ ¸í·É¾î ¸®½ºÆ®
+ ÇÔ¼ö
+ º¯¼ö +

+
+
+

2 - ÇÖÅ° & ÇÖ½ºÆ®¸µ

+ +

+ ÇÖÅ°¶õ ¹«¾ùÀΰ¡? ÇÖÅ°´Â ¼Õ±æ¿¡ ¹ÝÀÀÇÏ´Â Å°ÀÔ´Ï´Ù. ... ³ó´ãÀÔ´Ï´Ù. ÇÖÅ°´Â »ç¿ëÀÚ°¡ Å°º¸µå¸¦ ´­·¯ ¾î¶² ÇàÀ§¸¦ Ã˹߽ÃÅ°´Â Å° ¶Ç´Â Å°ÀÇ Á¶ÇÕÀÔ´Ï´Ù.
+ ÇÖ½ºÆ®¸µÀ̶õ ¹«¾ùÀΰ¡? ÇÖ½ºÆ®¸µÀº ÁַΠŸÀÚÇÏ´Â µ¿¾È ¾àÀÚ¸¦ È®´ëÇÏ´Â µ¥ »ç¿ëµË´Ï´Ù (ÀÚµ¿-ġȯ). ¶Ç ½ºÅ©¸³Æ® ÇàÀ§¸¦ Ã˹߽ÃÅ°´Â µ¥¿¡µµ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. +

+ +

´ÙÀ½Àº ÇÖÅ°ÀÔ´Ï´Ù:

+ +
+^j::
+   Send, ³ªÀÇ Ã¹ ¹ø° ½ºÅ©¸³Æ®
+Return
+
+ +

´ÙÀ½Àº ÇÖ½ºÆ®¸µÀÔ´Ï´Ù:

+ +
+::ftw::Free the whales
+
+ +

µÎ ¿¹Á¦ »çÀÌÀÇ Â÷ÀÌ´Â ÇÖÅ°°¡ CTRL & J¸¦ ´©¸¦ ¶§ Ã˹ߵÇÁö¸¸ ÇÖ½ºÆ®¸µÀº "ftw"¸¦ ŸÀÚÇÏ¸é ¹Ù·Î "Free the whales"·Î ġȯÇÕ´Ï´Ù.

+

+ "±×·¡¼­, Á¤È®ÇÏ°Ô ¾î¶»°Ô ÇÖÅ°¸¦ ¸¸µå´Â°¡?" + ÁÁÀº Áú¹®ÀÔ´Ï´Ù. ÇÖÅ°´Â ÇÑ ½ÖÀÇ ::·Î ¸¸µé ¼ö ÀÖ½À´Ï´Ù. Å°³ª Å° Á¶ÇÕÀÇ ¿À¸¥ÂÊ¿¡ ::ÀÌ ÀÖ¾î¾ß ÇÕ´Ï´Ù. ±×¸®°í ³»¿ëÀº ¾Æ·¡¿¡ ÀÖ¾î¾ß ÇÏ°í, ¹Ù·Î µû¶ó¼­ ¾Æ·¡¿¡ ReturnÀÌ ÀÖ¾î¾ß ÇÕ´Ï´Ù.
+

+

ÁÖÀÇ: ¿¹¿Ü°¡ ÀÖÁö¸¸, ±×·± °ÍµéÀº È¥¶õ¸¸ °¡Áß ½Ãų »ÓÀÔ´Ï´Ù. ±×·¡¼­ ±×·± °ÍµéÀº ÀÌ ÀÚ½À¼­¿¡¼­ ´Ù·çÁö ¾Ê½À´Ï´Ù. Àû¾îµµ Áö±ÝÀº ¾Æ´Õ´Ï´Ù.

+
+esc::
+   MsgBox Escape!!!!
+Return
+
+

ÇÖ ½ºÆ®¸µÀº ÇÑ ½ÖÀÇ ::·Î ¸¸µì´Ï´Ù. ±× »çÀÌ¿¡ ÅؽºÆ® ±³Ã¼¸¦ Ã˹ßÇÏ°í ½ÍÀº ÅؽºÆ®¸¦ ³Ö½À´Ï´Ù. + ¹Ý¸é¿¡ ŸÀÚµÈ ÅؽºÆ®¸¦ ´ë½ÅÇÒ ÅؽºÆ®´Â µÎ ¹ø° :: ½ÖÀÇ ¿À¸¥ÂÊ¿¡ ¹èÄ¡ÇÕ´Ï´Ù.

+

ÇÖ½ºÆ®¸µÀº À§¿¡ ¾ð±ÞÇÑ ¹Ù¿Í °°ÀÌ ½ºÅ©¸³Æ®µÈ ÇàÀ§¸¦ Ã˹ßÇÒ ¼ö ÀÖ½À´Ï´Ù. ÇÖÅ°¿Í ¶È °°ÀÌ "¸ÚÁö°Ô ÀÏÀ» ÇϰŶó"¿Í °°Àº ¸¶¹ýÀÇ ÁÖ¹®ÀÔ´Ï´Ù.

+
+::btw::
+   MsgBox You typed "btw".
+Return
+
+ +

+ ¾Ë¾Æ¾ß ÇÒ ¸ÚÁø ÀÏÀº °¢ ÇÖÅ°, ÇÖ ½ºÆ®¸µ, ¶óº§ ±×¸®°í ¾ÆÁ÷ ¾ð±ÞÇÏÁö ¾ÊÀº ¸¹Àº °Íµé¸¶´Ù + ¸¹Àº ÁÙÀÇ Äڵ带 °¡Áú ¼ö ÀÖ´Ù´Â °ÍÀÔ´Ï´Ù. +

+ +
+^j::
+   MsgBox Wow!
+   MsgBox this is
+   Run, Notepad.exe
+   winactivate, Untitled - Notepad
+   WinWaitActive, Untitled - Notepad
+   send, 7 lines{!}{enter}
+   sendinput, inside the ctrl{+}j hotkey
+Return
+
+ +

a. Å°¿Í ±×ÀÇ ½ÅºñÇÑ ½Éº¼

+ +
+ ±Ã±ÝÇÏ½Ç °Ì´Ï´Ù. "µµµ¥Ã¼ ¾î¶»°Ô ^ÀÌ CTRLÀ» ¶æÇÑ´Ù´Â °É ¾Ë ¼ö ÀÖÁö?!". À½, ÁÁÀº Áú¹®ÀÔ´Ï´Ù. + ^¿Í ±âŸ ½Éº¼ÀÌ ¹«¾ùÀ» ¶æÇÏ´ÂÁö µ½±â À§ÇØ, ´ÙÀ½ Ç¥¿¡ ¸ð¾Æ º¸¾Ò½À´Ï´Ù:
+ + + + + + + + + + +
½Éº¼¼³¸í
#Win (À©µµ¿ìÁî ·Î°í Å°)
!Alt
^Control
+Shift
+ & + + ¾ÚÆÛ¼¾µå´Â µÎ °³ÀÇ Å° ¶Ç´Â ¸¶¿ì½º ¹öÆ° »çÀÌ¿¡ »ç¿ëµÇ¾î ¸ÂÃã ÇÖÅ°·Î Á¶ÇÕÇØ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. +
+

+ + (¿ÏÀüÇÑ ½Éº¼ ¸ñ·ÏÀº ÇÖÅ° ÆäÀÌÁö¸¦ ÂüÁ¶ÇÕ´Ï´Ù) + +

+
+

+ Ãß°¡·Î, ´ÙÀ½Àº ÇÖÅ°ÀÇ ¿ÞÂÊ¿¡ »ç¿ëÇÒ ¼ö ÀÖ´Â ¸ðµç/°ÅÀÇ ´ëºÎºÐÀÇ ÇÖÅ° À̸§ ¸ñ·ÏÀÔ´Ï´Ù:
KeyList.htm +

+

+ µÎ °³ÀÇ Å°¸¦ (¿ÀÁ÷ µÎ °³±îÁö¸¸) Á¶ÇÕÇØ Á¤ÀÇÇÒ ¼ö ÀÖ½À´Ï´Ù (Á¶À̽ºÆ½ ¹öÆ° Á¦¿Ü). + ±× »çÀÌ¿¡ &¸¦ »ç¿ëÇÏ¸é µË´Ï´Ù. + ¾Æ·¡ÀÇ ¿¹Á¦¿¡¼­, Numpad0¸¦ ´©¸¥ ´ÙÀ½ + µÎ ¹ø° Å°¸¦ ´­·¯¼­ ÇÖÅ°¸¦ Ã˹߽ÃÄÑ º¸°Ú½À´Ï´Ù: +

+ +
+Numpad0 & Numpad1::
+   MsgBox Numpad0À» ´©¸£°í ÀÖ´Â µ¿¾È Numpad1¸¦ ´­·¶½À´Ï´Ù.
+Return
+
+Numpad0 & Numpad2::
+	Run Notepad
+Return
+
+ +

+ ±×·¯³ª ÀÌÁ¦ ÇÖ½ºÆ®¸µÀº ÇÖÅ°°¡ ±×·± °Íó·³ ¸ÚÁø ¼ö½ÄÅ°µéÀÌ ÀÖÀ»±î ±Ã±ÝÇÏ½Ç °Ì´Ï´Ù. ¹°·Ð ÀÖ½À´Ï´Ù!
+ ÇÖ½ºÆ®¸µ ¼ö½ÄÅ°´Â ù ¹ø° :: ½Ö »çÀÌ¿¡ µé¾î°©´Ï´Ù. ´ÙÀ½°ú °°ÀÌ: +

+ +
+:*:ftw::Free the whales
+
+ +

+ ÇÖÅ°¿Í ÇÖ½ºÆ®¸µ ¼ö½ÄÅ°¿¡ °üÇÑ ´õ ÀÚ¼¼ÇÑ Á¤º¸¿Í ¿¹Á¦´Â ´ÙÀ½À» ÂüÁ¶ÇÕ´Ï´Ù:
+ ÇÖÅ°
+ ÇÖ½ºÆ®¸µ +

+

b. â Àü¿ë ÇÖÅ°/ÇÖ½ºÆ®¸µ

+ +

Á¾Á¾ ÇÖÅ°³ª ÇÖ½ºÆ®¸µÀÌ Æ¯Á¤ â¿¡¼­¸¸ ÀÛµ¿ÇßÀ¸¸é (¶Ç´Â ÀÛµ¿ÇÏÁö ¸»¾ÒÀ¸¸é) ÇÏ°í ¹Ù¶ö °æ¿ì°¡ ÀÖ½À´Ï´Ù. ¾Õ¿¡ #¸¦ µÎ°í ´ÙÀ½ÀÇ È¯»óÀûÀÎ ¸í·É¾î¸¦ »ç¿ëÇÏ¸é µË´Ï´Ù.

+

#IfWinActive
+ #IfWinExist

+

+ (±â¼úÀûÀ¸·Î "Áö½Ã¾î"¶ó°í ºÒ¸®¿ì´Â) ÀÌ Æ¯º°ÇÑ ¸í·É¾îµéÀº ¹®¸ÆÀ»-°¨ÁöÇÏ´Â ÇÖÅ°¿Í ÇÖ½ºÆ®¸µÀ» ¸¸µì´Ï´Ù. ±×³É â Á¦¸ñÀ» ÁöÁ¤ÇÏ¸é µË´Ï´Ù. ±×·¯³ª ¾î¶² °æ¿ì´Â HWND³ª ±×·ì ¶Ç´Â Ŭ·¡½º¸¦ ÁöÁ¤ÇÏ°í ½ÍÀ» °æ¿ìµµ ÀÖ½À´Ï´Ù. ±×·± °ÍµéÀº Á» °í±Þ ÁÖÁ¦À̹ǷΠ´ÙÀ½¿¡¼­ ´õ ±í°Ô ´Ù·ì´Ï´Ù: #IfWinActive. +

+
+#IfWinActive Untitled - Notepad
+#space::
+   MsgBox ³ëÆ®Æе忡¼­ Win+Spacebar¸¦ ´­·¶½À´Ï´Ù.
+Return
+#IfWinActive
+
+

¹®¸Æ °¨Áö¸¦ ²ô·Á¸é, #IfWin ¸í·É¾î´Â ÁöÁ¤Ç쵂 ±×ÀÇ ¸ðµç ¸Å°³º¯¼ö¸¦ ºó ä·Î µÎ¸é µË´Ï´Ù. ¿¹¸¦ µé¾î:

+
+; Notepad
+#IfWinActive untitled - Notepad
+!q::
+   MsgBox, ³ëÆ®Æе忡¼­  Alt ¿Í Q¸¦ ´­·¶½À´Ï´Ù.
+Return
+#IfWinActive
+
+; Untitled - Notepad°¡ ¾Æ´Ñ ¸ðµç â
+!q::
+   MsgBox, ¾î¶² âÀÎÁö´Â ¸ð¸£Áö¸¸ Alt¿Í Q¸¦ ´­·¶½À´Ï´Ù.
+Return
+
+

#IfWin ¸í·É¾î°¡ ²¨Á® ÀÖÀ¸¸é (¶Ç´Â ½ºÅ©¸³Æ® ¾È¿¡¼­ ÀüÇô »ç¿ëµÇÁö ¾ÊÀ¸¸é), ¸ðµç ÇÖÅ°¿Í ÇÖ½ºÆ®¸µÀº ¸ðµç â¿¡ ¹ÝÀÀÇÕ´Ï´Ù.


+

#IfWin ¸í·É¾î´Â À§Ä¡¿¡ ¿µÇâÀ» ¹ÌĨ´Ï´Ù: ¹°¸®ÀûÀ¸·Î ÀÌ ¸í·É¾î ¾Æ·¡¿¡ ÀÖ´Â ¸ðµç ÇÖÅ°¿Í ÇÖ½ºÆ®¸µÀº ¸ðµÎ ¿µÇâÀ» ¹Þ½À´Ï´Ù.

+ +
+; Notepad
+#IfWinActive ahk_class Notepad
+#space::
+   MsgBox, ³ëÆ®Æе忡¼­ Win+Spacebar¸¦ ´­·¶½À´Ï´Ù.
+Return
+::msg::You typed msg in Notepad
+#IfWinActive
+
+; MSPaint
+#IfWinActive untitled - Paint
+#space::
+   MsgBox, MSPaint¿¡¼­ Win+Spacebar¸¦ ´­·¶½À´Ï´Ù!
+Return
+::msg::You typed msg in MSPaint!
+#IfWinActive
+
+

´õ ±íÀº Á¤º¸°ú ºñ½ÁÇÑ ¸í·É¾îµéÀ» º¸·Á¸é, ´ÙÀ½À» ÂüÁ¶ÇÕ´Ï´Ù:
+ #IfWinActive

+

c. ÆÄÀÏ´ç ´ÙÁß ÇÖÅ°/ÇÖ½ºÆ®¸µ

+

¾î¶² ÀÌÀ¯·Î ÀÌ·± »ý°¢ÀÌ µå½ÇÁö ¸ð¸£°Ú½À´Ï´Ù. + ±×·¡¼­, ¸íÈ®ÇÏ°Ô ¹àÇô µÓ´Ï´Ù: + ¿ÀÅäÇÖÅ°´Â ÆÄÀÏ Çϳª´ç ¾ó¸¶µçÁö ¸¹Àº ÇÖÅ°¿Í ÇÖ½ºÆ®¸µÀ» °¡Áú ¼ö ÀÖ½À´Ï´Ù. 1À̵ç 3253À̵ç (±× ÀÌ»óÀ̵ç) »ó°ü¾ø½À´Ï´Ù.

+
+#i::
+   run, http://www.google.com/
+Return
+
+^p::
+   run, notepad.exe
+Return
+
+~j::
+   send, ack
+Return
+
+:*:acheiv::achiev
+::achievment::achievement
+::acquaintence::acquaintance
+:*:adquir::acquir
+::aquisition::acquisition
+:*:agravat::aggravat
+:*:allign::align
+::ameria::America
+
+ +

À§ÀÇ Äڵ带 ¿Ïº®ÇÏ°Ô ¹Þ¾ÆµéÀÏ ¼öÀÖ´Â ´ÙÁß ÇÖÅ°¿Í ´ÙÁß ÇÖ½ºÆ®¸µÀÔ´Ï´Ù. ¸ðµÎ°¡ Çϳª·Î ¹¶¶×±×·ÁÁø ÇູÇÑ ½ºÅ©¸³Æ® ÆÄÀÏÀ̳׿ä.

+ + +

d. ¿¹Á¦

+
::btw::By the way                          ; EndChar¸¦ ´©¸£¸é ¹Ù·Î "btw"¸¦ "By the way"·Î ±³Ã¼ÇÕ´Ï´Ù.
+:*:btw::By the way                         ; "btw"¸¦ "By the way"·Î ¹Ù²ß´Ï´Ù.  EndChar°¡ ÇÊ¿ä ¾ø½À´Ï´Ù.
+
+^n::                                       ; Ctrl & n Hotkey
+   run, notepad.exe                        ; Ctrl & nÀ» ´©·Á¸é ¹Ù·Î notepad.exe¸¦ ½ÇÇàÇÕ´Ï´Ù
+Return                                     ; ÇÖÅ°°¡ ³¡³³´Ï´Ù. ÀÌ ¾Æ·¡ÀÇ ÄÚµå´Â ½ÇÇàµÇÁö ¾Ê½À´Ï´Ù.
+
+^b::                                       ; Ctrl & b Hotkey
+   send, {ctrl down}c{ctrl up}             ; ¼±ÅÃµÈ ÅؽºÆ®¸¦ º¹»çÇÕ´Ï´Ù. ^cµµ »ç¿ëÇÒ ¼ö ÀÖÁö¸¸, ÀÌ ¹æ¹ýÀÌ ´õ ¾ÈÀüÇÕ´Ï´Ù.
+   SendInput, [b]{ctrl down}v{ctrl up}[/b] ; ¼±ÅÃµÈ ÅؽºÆ®¸¦ bbcode (forum) Bold ÅÂ±× ¾È¿¡ ½Î ³Ö½À´Ï´Ù.
+Return                                     ; ÇÖÅ°°¡ ³¡³³´Ï´Ù. ÀÌ ¾Æ·¡ÀÇ ÄÚµå´Â ½ÇÇàµÇÁö ¾Ê½À´Ï´Ù.
+
+ + + + +
+
+

3 - Å° ´­¸² Àü¼ÛÇϱâ

+

+ ±×·¡¼­ ÀÌÁ¦ Å°µéÀ» ÇÁ·Î±×·¥À¸·Î Àü¼Û(ŸÀÚ)Çϱâ·Î °áÁ¤ÇÕ´Ï´Ù. + Send ¸í·É¾î¸¦ »ç¿ëÇÏ¸é µË´Ï´Ù. + ¹®ÀÚ ±×´ë·Î Å°µéÀ» Àü¼ÛÇÕ´Ï´Ù. ¸¶Ä¡ Å°¸¦ ŸÀÚÇϰųª ´©¸¥ °Íó·³ Èä³» ³À´Ï´Ù.

+ ´õ ±í°Ô µé¾î°¡±â Àü¿¡, ¸ÕÀú ¾à°£ÀÇ ÀϹÝÀûÀÎ ¹®Á¦µéÀ» ´Ù·ì´Ï´Ù:
+ ÇÖŰó·³, Send¿¡µµ Ư¼öÇÑ Å°°¡ ÀÖ½À´Ï´Ù. ¾ÆÁÖ ¸¹½À´Ï´Ù.
+ ´ÙÀ½Àº °¡Àå ¸¹ÀÌ »ç¿ëÇÏ´Â ½Éº¼ ³× °¡ÁöÀÔ´Ï´Ù: +

+
+
+

!: ALT Å°¸¦ Àü¼ÛÇÕ´Ï´Ù. ¿¹¸¦ µé¾î, Send This is text!a´Â "This is text" Å°µéÀ» ´©¸¥ ´ÙÀ½ ALT+a¸¦ ´©¸¥ °Í°ú °°½À´Ï´Ù. + ÁÖÀÇ: !A ´Â ´Ù¸¥ ÇÁ·Î±×·¥¿¡¼­´Â !a¿Í ÀüÇô ´Ù¸¥ È¿°ú¸¦ ³À´Ï´Ù. ÀÌ°ÍÀº !A°¡ ALT+SHIFT+A¸¦ ´©¸¥ °ÍÀÎ ¹Ý¸é !a´Â ALT+a¸¦ ´©¸¥ °ÍÀ̱⠶§¹®ÀÔ´Ï´Ù. + Àß ¸ð¸£°Ú´Ù¸é, ¼Ò¹®ÀÚ¸¦ »ç¿ëÇϽʽÿÀ.

+

+: SHIFT Å°¸¦ Àü¼ÛÇÕ´Ï´Ù. ¿¹¸¦ µé¾î, Send +abC ´Â ÅؽºÆ® "AbC"¸¦ Àü¼ÛÇÏ°í, Send !+a´Â ALT+SHIFT+a¸¦ ´©¸¨´Ï´Ù.

+

^: CONTROL (Ctrl) Å°¸¦ Àü¼ÛÇÕ´Ï´Ù. ¿¹¸¦ µé¾î, Send ^!a´Â CTRL+ALT+a¸¦ ´©¸¥ °Í°ú °°°í, Send ^{Home}Àº CONTROL+HOMEÀ» Àü¼ÛÇÕ´Ï´Ù. ÁÖÀÇ: ^A´Â ¾î¶² ÇÁ·Î±×·¥¿¡¼­ ^a¿Í ÀüÇô ´Ù¸¥ È¿°ú¸¦ ³À´Ï´Ù. ÀÌ°ÍÀº ^A°¡ CONTROL+SHIFT+A¸¦ ´©¸¥ °ÍÀÌ°í ^a´Â CONTROL+a¸¦ ´©¸¥ °ÍÀ̱⠶§¹®ÀÔ´Ï´Ù. + Àß ¸ð¸£°Ú´Ù¸é, ¼Ò¹®ÀÚ¸¦ »ç¿ëÇϽʽÿÀ.

+

#: WIN Å°¸¦ Àü¼ÛÇÕ´Ï´Ù (À©µµ¿ìÁî ·Î°í°¡ ±×·ÁÁø Å°) ±×·¯¹Ç·Î Send #e´Â À©µµ¿ìÁî Å°¸¦ ´©¸¥ ´ÙÀ½ ±âÈ£ "e"¸¦ Àü¼ÛÇÕ´Ï´Ù.

+
+

´ÙÀ½ µÎ ¹®´Ü¿¡¼­ Àü¼Û ÆäÀÌÁö¿¡ °üÇÑ Å×ÀÌºí¿¡ °üÇÏ¿© ¾ð±ÞÇÕ´Ï´Ù.

+

+ ÁÖÀÇ:
ÀÌ Å×À̺íÀº ÇÖÅ°¿¡ Àû¿ëµÇÁö ¾Ê½À´Ï´Ù. ÇÖÅ°¸¦ ¸¸µé ¶§ CTRL ¶Ç´Â ENTER (¶Ç´Â ±âŸ ¾î¶² Å°À̵ç) {} ¾È¿¡ ½Î ³ÖÁö ¸øÇÑ´Ù´Â ¶æÀÔ´Ï´Ù. +


+ +
+ ´ÙÀ½ ¿¹Á¦¿¡¼­ ÇÖÅ°¿¡ Çؼ­´Â ¾ÈµÇ´Â °ÍµéÀ» º¸¿©ÁÝ´Ï´Ù: +
+; ÇÖÅ°¸¦ ¸¸µé ¶§...
+; À߸øµÊ
+{LCtrl}::
+   send, AutoHotkey
+Return
+
+; ¿Ã¹Ù¸§
+LCtrl::
+   send, AutoHotkey
+Return
+
+
+
+
+

À§ÀÇ °Å´ëÇÑ Å×ÀÌºí¿¡ ¾ÆÁÖ ¸¹Àº Ư¼ö Å°µéÀÌ AHK¿¡ ³»ÀåµÇ¾î ÀÖ´Â °ÍÀ» º¼ ¼ö ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î: {enter} ±×¸®°í {space}.
+ ¸¹Àº »ç¶÷µéÀÌ È°°ýÈ£°¡ ±×³É Àç¹Ì·Î ¹èÄ¡µÇ¾î ÀÖ´Ù°í »ý°¢ÇÕ´Ï´Ù. ±×·¯³ª »ç½Ç ²À ÇÊ¿äÇÕ´Ï´Ù. ±×·¸°Ô ÇØ¾ß AHK°¡ {!}ÀÌ "´À³¦Ç¥"ÀÏ »Ó "Alt Å°¸¦ ´©¸£¶ó"´Â ¶æÀÌ ¾Æ´ÔÀ» ÀÌÇØÇÕ´Ï´Ù. + ±×·¡¼­ send ÆäÀÌÁö¿¡ ÀÖ´Â Å×À̺íÀ» ²À ¾Ï±âÇÏ½Ã°í °ýÈ£¸¦ Á¦ ÀÚ¸®¿¡ ¹èÄ¡ÇϽʽÿÀ.

+
+;  !°¡ {} ¾È¿¡ ÀÖ´Â °Í¿¡ ÁÖ¸ñÇϽʽÿÀ. ±×·¸Áö ¾ÊÀ¸¸é  AHK°¡
+;  ALT Å°¸¦ ´­·¯ ¹ö¸®±â ¶§¹®ÀÔ´Ï´Ù.
+send, This text has been typed{!}
+
+ +
+; À§¿Í °°Áö¸¸,  ÀÌ ¹ø¿¡´Â ENTER Å°ÀÔ´Ï´Ù. AHK´Â "enter"¸¦ ŸÀÚÇØ ¹ö¸³´Ï´Ù...
+; ... {} ¾È¿¡ ½Î¿© ÀÖÁö ¾Ê´Ù¸é ¸»ÀÔ´Ï´Ù.
+send, Multiple enter lines have enter been sent. ; À߸øµÊ
+send, Multiple{enter}lines have{enter}been sent. ; ¿Ã¹Ù¸§
+
+
+ ¶Ç´Ù¸¥ ¹®Á¦´Â »ç¶÷µéÀÌ send ¸í·É¾î¿¡¼­ ¸ðµç °ÍµéÀº °ýÈ£¿¡ ½Î ³Ö¾î¾ß ÇÑ´Ù°í »ý°¢ÇÑ´Ù´Â °ÍÀÔ´Ï´Ù. + ±×·¸Áö ¾Ê½À´Ï´Ù. Ç¥¿¡ ¾øÀ¸¸é °ýÈ£°¡ ÇÊ¿äÇÏÁö ¾Ê½À´Ï´Ù. + ÀϹÝÀûÀÎ ±âÈ£¿Í ¼ýÀÚ ½ÉÁö¾î ¾î¶² ½Éº¼µéÀº °ýÈ£¿¡ ½Î ³ÖÀ» ÇÊ¿ä°¡ ¾ø½À´Ï´Ù (¿¹¸¦ µé¾î {}'s.¿¡¼­ Á¡)
+ ¶ÇÇÑ, Send ¸í·É¾î·Î 1 °³ ÀÌ»óÀÇ ±âÈ£³ª ¼ýÀÚ ¶Ç´Â ½Éº¼À» ´Ü ¹ø¿¡ º¸³¾ ¼ö ÀÖ½À´Ï´Ù. + ±×·¡¼­ 1 °³ÀÇ ±âÈ£¸¶´Ù µû·Îµû·Î ¼ö ¸¹Àº Send ¸í·É¾î¸¦ »ç¿ëÇÒ ÇÊ¿ä°¡ ¾ø½À´Ï´Ù. + +
+; À§¿¡ ¾ð±ÞÇÑ Å×ÀÌºí¿¡ ¾ø´Â ±âÈ£³ª ´Ü¾îµéÀ» µû·Î °ýÈ£¿¡ ½Î ³ÖÁö ¸¶½Ê½Ã¿À.
+send, {a}       ; À߸øµÊ
+send, {b}       ; À߸øµÊ
+send, {c}       ; À߸øµÊ
+send, {a}{b}{c} ; À߸øµÊ
+send, {abc}     ; À߸øµÊ
+send, abc       ; ¿Ã¹Ù¸§
+
+
+
+ Å°¸¦ ´©¸£°Å³ª ¶¼·Á¸é, Å° À̸§À» °ýÈ£·Î µÑ·¯ ½Î°í UPÀ̳ª DOWNÀ» »ç¿ëÇÕ´Ï´Ù. + +
+; ´ÙÀ½Àº Å° Çϳª¸¦ ´©¸§°ú µ¿½Ã¿¡ ¶Ç´Ù¸¥ Å° (¶Ç´Â Å°µé)À» ´©¸£´Â ¹æ¹ýÀÔ´Ï´Ù.
+; ÇÑ°¡Áö ¹æ¹ýÀÌ ÀÛµ¿ÇÏÁö ¾ÊÀ¸¸é, ´Ù¸¥ ¹æ¹ýÀ» ½ÃµµÇØ º¸½Ê½Ã¿À.
+send, ^s                     ; µÑ ´Ù CTRL+s¸¦ Àü¼ÛÇÕ´Ï´Ù.
+send, {ctrl down}s{ctrl up}  ; µÑ ´Ù CTRL+s¸¦ Àü¼ÛÇÕ´Ï´Ù.
+Send, {ctrl down}c{ctrl up}
+Send, {b down}{b up}
+Send, {TAB down}{TAB up}
+Send, {Up down}  ; À§ È­»ìÇ¥ Å°¸¦ ´©¸¨´Ï´Ù.
+Sleep, 1000      ; ÀÏ ÃÊ µ¿¾È ´©¸£°í ÀÖ½À´Ï´Ù.
+Send, {Up up}    ; À§ È­»ìÇ¥ Å°¸¦ ¶Á´Ï´Ù.
+
+
+
+
+ ±×·¯³ª ÀÌÁ¦ ±Ã±ÝÇÏ½Ç °Ì´Ï´Ù. + "Á¤¸» ±ä send ¸í·É¾îµéÀ» ¾î¶»°Ô Àß ÀÐÀ» ¼ö ÀÖÁö?". + ½±½À´Ï´Ù. °è¼Ó ¼½¼ÇÀ» »ç¿ëÇÏ¸é µË´Ï´Ù. + ±×³É »õ ÁÙ¿¡ ¹Ý°ýÈ£¸¦ ¿­°í, ³»¿ëÀ» ³Ö°í, ¸¶Áö¸·À¸·Î ¹Ý°ýÈ£·Î ÁÙÀ» ´Ý½À´Ï´Ù. + ´õ ÀÚ¼¼ÇÑ Á¤º¸´Â °è¼Ó ¼½¼ÇÀ» ÂüÁ¶ÇÕ´Ï´Ù. +
+send,
+(
+ù ¹ø° ÁÙ
+µÎ ¹ø° ÁÙ
+¿øÇÏ´Â ¸¸Å­ ÁÙÀ» ¹èÄ¡ÇÒ ¼ö ÀÖ½À´Ï´Ù.
+)
+
+ +
+

+ ÁÖÀÇ: ´Ù¾çÇÑ ÇüÅÂÀÇ Àü¼Û ¹æ¹ýÀÌ ÀÖ½À´Ï´Ù. + °¢ÀÚ µû·Î Ưº°ÇÑ Æ¯Â¡ÀÌ ÀÖ½À´Ï´Ù. + ÀÌ Áß¿¡ Çϳª·Î ¿©·¯ºÐÀÇ Çʿ並 ÃæÁ·ÇÏÁö ¸øÇϸé, ¶Ç´Ù¸¥ Á¾·ùÀÇ Àü¼Û ÇüŸ¦ ½ÃµµÇØ º¾´Ï´Ù. + ±×³É ¸í·É¾î À̸§À» "send"¿¡¼­ "sendPlay" ¶Ç´Â ¿øÇÏ´Â ¾Æ¹«°ÍÀ̳ª ½ÃµµÇØ º¾´Ï´Ù.
+ ´ÙÀ½Àº ÅؽºÆ®¸¦ Àü¼ÛÇÏ´Â °¡Àå ÈçÇÑ ¹æ¹ýÀÔ´Ï´Ù:
+ Send
+ SendRaw
+ SendInput
+ SendPlay
+ SendEvent
+ °¢ÀÚ ¾î¶² ÀÏÀ» ÇÏ´ÂÁö¿¡ °üÇÑ ´õ ÀÚ¼¼ÇÑ Á¤º¸´Â ¿©±â¸¦ ÀÐ¾î º¸½Ê½Ã¿À. +

+

a. °ÔÀÓ

+

+ Áß¿äÇÕ´Ï´Ù!
+ ¸¹Àº °ÔÀÓÀº, ƯÈ÷ Çö´ëÀÇ °ÔÀÓÀº, ¼ÓÀÌ´Â °ÍÀ» ¹æÁöÇÏ´Â ±â´ÉÀÌ ÀÖ½À´Ï´Ù. + ¿¹¸¦ µé¾î, ÀÌ·± Á¾·ùÀÇ °ÔÀÓÀ¸·Î´Â GameGuard, Hackshield, PunkBuster, µîµîÀÌ ÀÖ½À´Ï´Ù. + °ÔÀÓÀÌ ¼ÓÀÓ ¹æÁö ½Ã½ºÅÛÀÌ ÀÖ°í ÇÖÅ°¿Í ÇÖ½ºÆ®¸µ ±×¸®°í send ¸í·É¾î°¡ ÀÛµ¿ÇÏÁö ¾Ê´Â´Ù¸é, ¾ÈŸ±î¿î ÀÏÀÔ´Ï´Ù.
+ ÀÌ·± ½Ã½ºÅÛÀ» ¿ìȸÇÏ´Â ÀÏÀº °ÔÀÓ»çÀÇ Á¤Ã¥À» À§¹ÝÇÏ´Â °ÍÀÌ¸ç ±×·¯¸é ¿©·¯ºÐÀº Á¦¸í ´çÇÒ ¼ö ÀÖ½À´Ï´Ù. ÇØ°áÃ¥Àº ´ë´ÜÈ÷ º¹ÀâÇÕ´Ï´Ù. + ¾î¶² °ÔÀÓ¿¡¼­´Â ÀÛµ¿ÀÇ ±âȸ¸¦ ³ôÀÏ ¼ö ÀÖ´Â ¹æ¹ýÀÌ ÀÖÁö¸¸, ¸¶¹ýÀÇ "´çÀå °ÔÀÓ¿¡¼­ ÀÛµ¿Ç϶ó" ¹öÆ°Àº ¾ø½À´Ï´Ù. + ±×·¡¼­ Æ÷±âÇϱâ Àü¿¡ ÀÌ ¸ðµç °ÍµéÀ» ½ÃµµÇØ º¸½Ê½Ã¿À.
+

+ +

+ DirectX¿Í °ü·ÃµÈ ¹®Á¦µµ ÀÖ½À´Ï´Ù. ¹®Á¦°¡ ÀÖ°í °ÔÀÓÀÌ DirectX¸¦ »ç¿ëÇÑ´Ù¸é, ¾Æ·¡ÀÇ ¹æ¹ýÀ» ½ÃµµÇØ º¸½Ê½Ã¿À. + °¡´ÉÇϸé â(Windowed ¿ªÁÖ: ÀÔ·Â ¹æ½ÄÀ» ÀüÀûÀ¸·Î ¿î¿µÃ¼Á¦¿¡ ¸Ã±è) ¸ðµå¿¡¼­ ½ÃÇèÇØ º¸½Ê½Ã¿À. ±×·¯¸é DirectX ¹®Á¦°¡ ÇØ°áµÉ Áöµµ ¸ð¸¨´Ï´Ù.
+ Çȼ¿À̳ª À̹ÌÁö ¸í·É¾î¸¦ »ç¿ëÇÒ ¶§, DirectX ¹®Á¦°¡ ´õ ¸¹ÀÌ ÀϾ ¼öµµ ÀÖ½À´Ï´Ù. + ¾î¶² »öÀ» ¾òÀ¸·Á°í ½ÃµµÇÏ´ÂÁö¿¡ »ó°ü¾øÀÌ »ö±òÀÌ °ËÁ¤»öÀ¸·Î ¹Ù²ð ¼ö ÀÖ½À´Ï´Ù (0x000000). + ±×°ÍÀº ÇØ°áÇϱ⠾î·Á¿î ¶Ç´Ù¸¥ ¹®Á¦ÀÔ´Ï´Ù. + µÇµµ·ÏÀ̸é Windowed ¸ðµå¿¡¼­ ½ÇÇàÇØ º¸½Ê½Ã¿À. +

+

+ AutoHotkey¸¦ ¸ðµç ÇÁ·Î±×·¥¿¡¼­ ÀÛµ¿ÇϽÃÅ°´Â ´Ü ÇÑ°¡Áö ÇØ°áÃ¥Àº ¾ø½À´Ï´Ù. + ½ÃµµÇÑ ¸ðµç °ÍÀÌ ½ÇÆÐÇÑ´Ù¸é, ¾ÈŸ±õ°Ôµµ AutoHotkey·Î´Â ¿©·¯ºÐÀÇ ¿ä±¸¸¦ ¸¸Á·½Ãų ¼ö ¾ø´Â °ÍÀÔ´Ï´Ù. +

+
+
+ FAQ ÆäÀÌÁö¿¡¼­ ÀοëÇÕ´Ï´Ù:
+ ¾î¶² °ÔÀÓÀº DirectInput¸¦ ´Üµ¶À¸·Î »ç¿ëÇÕ´Ï´Ù. ±× ºÎÀÛ¿ëÀ¸·Î, ¸ðµç ½Ã¹Ä·¹ÀÌ¼Ç Å°´­¸²°ú ¸¶¿ì½º Ŭ¸¯À» ¹«½ÃÇØ ¹ö¸³´Ï´Ù. + À̸¦ ÇØ°áÇÏ·Á¸é, ´ÙÀ½ Áß Çϳª¸¦ (¶Ç´Â Á¶ÇÕÇؼ­) ½ÃµµÇØ º¸½Ê½Ã¿À: +
    +
  • ´ÙÀ½À» ÅëÇÏ¿© SendPlay¸¦ »ç¿ëÇÕ´Ï´Ù. + : 1) SendPlay ¸í·É¾î¸¦ »ç¿ëÇÕ´Ï´Ù; + 2) SendMode¸¦ »ç¿ëÇÕ´Ï´Ù; + ±×¸®°í/¶Ç´Â 3) ÇÖ½ºÆ®¸µ ¿É¼ÇÀÎ SP¸¦ »ç¿ëÇÕ´Ï´Ù.
  • +
  • SetKeyDelayÀÇ Áö¿¬½Ã°£À» ´Ã·Á º¾´Ï´Ù. ¿¹¸¦ µé¾î:
  • +
  • SetKeyDelay, 0, 50
  • +
  • SetKeyDelay, 150, 150, Play
  • +
  • ControlSend¸¦ ½ÃµµÇØ º¾´Ï´Ù. ´Ù¸¥ Send ¸ðµå°¡ ¸ðµÎ ½ÇÆÐÇÏ´õ¶óµµ ÀÌ ¹æ¹ýÀº ÀÛµ¿ÇÒ °¡´É¼ºÀÌ ÀÖ½À´Ï´Ù.
  • +
+
+ + + +
+
+

4 - ÇÁ·Î±×·¥ & À¥»çÀÌÆ® ½ÇÇàÇϱâ

+
+ Mspaint.exe, Calc.exe, script.ahk ½ÉÁö¾î Æú´õ °°Àº ÇÁ·Î±×·¥À» ½ÇÇàÇÏ·Á¸é, Run ¸í·É¾î¸¦ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. + ½ÉÁö¾î http://ahkscript.org/°ú °°ÀÌ URL¿¡µµ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. ¿øÇÏ´Â ÇÁ·Î±×·¥ÀÇ À¯ÇüÀ» ½ÇÇàÇϵµ·Ï ÄÄÇ»ÅÍ°¡ ȯ°æÀÌ ¼³Á¤µÇ¾î ÀÖ´Ù¸é, ¾ÆÁÖ °£´ÜÇÕ´Ï´Ù: + +
+; ÇÁ·Î±×·¥À» ½ÇÇàÇÕ´Ï´Ù. ÁÖÀÇ: ´ëºÎºÐÀÇ ÇÁ·Î±×·¥Àº Àüü ÆÄÀÏ °æ·Î¸¦ ¿ä±¸ÇÕ´Ï´Ù.
+Run, %A_ProgramFiles%\Some_Program\Program.exe
+
+; À¥ »çÀÌÆ®¸¦ ½ÇÇàÇÕ´Ï´Ù
+Run, http://ahkscript.org
+
+
+
+ ¸í·É¾î-ÁÙ ¸Å°³º¯¼ö¿Í CLSID¿Í °°Àº ´Ù¸¥ °í±Þ Ư¡µéµµ ¿ª½Ã ÀÖ½À´Ï´Ù.
+ ´õ ¾Ë°í ½Í´Ù¸é ÀÌ ÆäÀÌÁö¸¦ ÂüÁ¶ÇÕ´Ï´Ù. +
+ ´ÙÀ½¿¡ ¸î °¡Áö ¿¹¸¦ ´õ º¸¿©ÁÝ´Ï´Ù: +
+;  À©µµ¿ìÁîÀÇ Ç¥ÁØ ÇÁ·Î±×·¥µé°ú °°ÀÌ Àüü °æ·Î°¡ ÇÊ¿äÇÏÁö ¾ÊÀº ÇÁ·Î±×·¥ÀÌ ÀÖ½À´Ï´Ù.
+Run, Notepad.exe
+Run, MsPaint.exe
+
+; ³»Àå AHK º¯¼ö¸¦ »ç¿ëÇÏ¿© "My Documents" Æú´õ¸¦ ¿±´Ï´Ù.
+Run, %A_MyDocuments%
+
+; À¥ »çÀÌÆ®¸¦ ½ÇÇàÇÕ´Ï´Ù
+Run, http://ahkscript.org
+Run, http://www.google.com
+
+
+

´õ ±íÀº Á¤º¸¿Í ´õ ¸¹Àº ¿¹Á¦´Â ´ÙÀ½À» ÂüÁ¶ÇÕ´Ï´Ù:
commands/Run.htm.

+
+ + + + + +
+
+

5 - ¸í·É¾î vs. ÇÔ¼ö

+
+ ¿ÀÅäÇÖÅ°´Â Äڵ带 ¸¸µå´Âµ¥ »ç¿ëµÇ´Â Å©°Ô µÎ °¡Áö À¯ÇüÀÌ ÀÖ½À´Ï´Ù:
+ ¸í·É¾î¿Í ÇÔ¼ö°¡ ±×°ÍÀÔ´Ï´Ù
+

µµ¿òÀÌ µÇ´Â ¸µÅ©:
+ ¸ðµç ¸í·É¾î ¸ñ·Ï: commands/index.htm
+ ¸ðµç ³»Àå ÇÔ¼ö ¸ñ·Ï: Functions.htm#BuiltIn

+
+

¸í·É¾î

+

+ ±×ÀÇ ±¸¹®À» º¸¸é (±×ÀÇ °Ñ ¸ð½ÀÀ¸·Î) ¸í·É¾îÀÎÁö ¾Æ´ÑÁö ±¸ºÐÇÒ ¼ö ÀÖ½À´Ï´Ù. + ¸í·É¾î´Â ¸Å°³º¯¼ö¿¡ ¹Ý°ýÈ£"()"¸¦ »ç¿ëÇÏÁö ¾ÊÁö¸¸ ÇÔ¼ö´Â »ç¿ëÇÕ´Ï´Ù. + ±×·¡¼­ ¸í·É¾î´Â ´ÙÀ½°ú °°ÀÌ º¸ÀÔ´Ï´Ù:
+ Command, parameter1, parameter2, parameter3
+ +
¸í·É¾î¸¦ »ç¿ëÇÒ ¶§, ´Ù¸¥ ¸í·É¾î¸¦ °°Àº ÁÙ¿¡ ³õÀ» ¼ö ¾ø½À´Ï´Ù (¿¹¿Ü: ifEqual).
+ ¸í·É¾î¸¦ ´Ù¸¥ ¸í·É¾îÀÇ ¸Å°³º¯¼ö ¾È¿¡ ³õÀ» ¼ö ¾ø½À´Ï´Ù. +

+ +
+Msgbox, Hello Run, Notepad.exe   ; À߸øµÊ
+Msgbox, Hello, Run, Notepad.exe  ; À߸øµÊ
+
+Msgbox, Hello      ; ¿Ã¹Ù¸§
+Run, Notepad.exe
+
+ + ¸í·É¾î´Â ¶Ç "ÀüÅëÀûÀÎ ±¸¹®"À» »ç¿ëÇÑ´Ù´Â Á¡¿¡¼­ ÇÔ¼ö¿Í ´Ù¸¨´Ï´Ù. + ±× Àǹ̴Â: º¯¼ö¸¦ »ç¿ëÇÒ ¶§, ±× µÑ·¹¿¡ %¸¦ »ç¿ëÇÒ ÇÊ¿ä°¡ ÀÖ´Ù´Â ¶æÀÔ´Ï´Ù. %variable%. + ÅؽºÆ®¿Í ¼ýÀÚ´Â "ÀÎ¿ë ºÎÈ£" ¾È¿¡ ÀÖÀ» ÇÊ¿ä°¡ ¾ø½À´Ï´Ù: ¿¹, This is some text. + °Ô´Ù°¡, ÇÔ¼ö¿Í´Â ´Ù¸£°Ô ¸Å°³º¯¼ö ¾È¿¡¼­ ¼öÇнÄÀ» »ç¿ëÇÒ ¼ö ¾ø½À´Ï´Ù. +

+ ¸Å°³º¯¼ö¿¡ ¼öÇнÄÀ» »ç¿ëÇÒ ¼ö´Â ÀÖ½À´Ï´Ù. °­Á¦·Î % ±âÈ£·Î Ç¥Çö½ÄÀ» ¸¸µé¸é µÇÁö¸¸, ÀÌ¿¡ °üÇؼ­´Â ´Ù·çÁö ¾Ê°Ú½À´Ï´Ù. +

+

ÇÔ¼ö

+
+ À§¿¡ ¾ð±ÞÇÑ ¹Ù¿Í °°ÀÌ, ÇÔ¼ö´Â ¹Ý°ýÈ£¸¦ »ç¿ëÇϱ⠶§¹®¿¡ ´Ù¸¨´Ï´Ù. ÀüÇüÀûÀÎ ÇÔ¼öÀÇ ¸ð½ÀÀº ´ÙÀ½°ú °°½À´Ï´Ù:
+ Function(parameter1, parameter2, parameter3)

+ ÇÔ¼ö´Â ¸î °¡Áö Å« Â÷ÀÌÁ¡ÀÌ ÀÖ½À´Ï´Ù: +
    +
  1. + ±× ¾È¿¡ ¼öÇнÄÀ» »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù.
    + -- SubStr(37*12, 1, 2)
    + -- SubStr(A_Hour-12, 2) +
  2. +
  3. + º¯¼ö´Â ÆÛ¼¾Æ® ±âÈ£·Î µÑ·¯½Ò ÇÊ¿ä°¡ ¾ø½À´Ï´Ù.
    + -- SubStr(A_Now, 7, 2) +
  4. +
  5. + ÇÔ¼ö´Â ÇÔ¼ö ¾È¿¡ µé¾î°¥ ¼ö ÀÖ½À´Ï´Ù.
    + -- SubStr(A_AHKPath, inStr(A_AHKPath, "AutoHotkey")) +
  6. +
  7. + ÅؽºÆ®´Â ÀοëºÎÈ£·Î µÑ·¯½Î¾ß ÇÕ´Ï´Ù.
    + -- SubStr("I'm scripting, awesome!", 16) +
  8. +
+ + ÇÔ¼ö´Â ¸í·É¾î¿Í ´Ù¸£°Ô º¸Åë °ªÀ» µ¹·ÁÁÝ´Ï´Ù. ¸í·É¾î´Â OutputVar ¸Å°³º¯¼ö°¡ ÇÊ¿äÇÏÁö¸¸, ÇÔ¼ö´Â ±×·¸Áö ¾Ê½À´Ï´Ù. + º¯¼ö¸¦ ÇÔ¼öÀÇ °ª¿¡ ÇÒ´çÇÏ´Â °¡Àå ÀϹÝÀûÀÎ ¹æ½ÄÀº ´ÙÀ½°ú °°½À´Ï´Ù:
+ MyVariable:=Function(Parameters) + +
+MyVariable:=SubStr("I'm scripting, awesome!", 16)
+
+

À̰͸¸ÀÌ À¯ÀÏÇÑ ¹æ¹ýÀº ¾Æ´Õ´Ï´Ù. ±×·¯³ª °¡Àå ¸¹ÀÌ »ç¿ëµÇ´Â ¹æ¹ýÀÔ´Ï´Ù. + MyVariable º¯¼ö¸¦ :=ÀÇ ¿À¸¥ÂÊ¿¡ ÀÖ´Â ÇÔ¼öÀÇ °ªÀ¸·Î ÇÒ´çÇÏ°í ÀÖ½À´Ï´Ù (ÀÌ °æ¿ì, SubStr(...)).
+ ÇÔ¼ö¿¡ °üÇÏ¿© ´õ ÀÚ¼¼ÇÑ °ÍÀº ¿©±â¸¦ ÂüÁ¶ÇÕ´Ï´Ù.

+
+
+ ª°Ô ¸»ÇØ: + +
+; ´ÙÀ½Àº ¸í·É¾îÀÔ´Ï´Ù
+Msgbox, ÀÌ°ÍÀº ÅؽºÆ®ÀÔ´Ï´Ù.
+StringReplace, Output, Input, AutoHotKey, AutoHotkey, ALL
+SendInput, ÀÌ°Å Á¤¸» ±²ÀåÇϳ׿ä{!}{!}{!}
+
+; ´ÙÀ½Àº ÇÔ¼öÀÔ´Ï´Ù
+SubStr("½ºÅ©¸³ÆÃÀ» ÇÏ°í ÀÖ¾î¿ä, Á¤¸» Á׿©Áֳ׿ä!", 16)
+FileExist(VariableContainingPath)
+Output:=SubStr("½ºÅ©¸³ÆÃÀ» ÇÏ°í ÀÖ¾î¿ä, Á¤¸» Á׿©Áֳ׿ä!", 16)
+
+ +
+

a. ÄÚµå ºí·Ï

+

+ ÄÚµå ºí·ÏÀº È°°ýÈ£ ¾È¿¡ ÀÖ´Â °ÍµéÀÔ´Ï´Ù ({ ±×¸®°í }). + ÇÑ ±×·ìÀÇ ´ÜÀ§·Î ¹­¾î ÁֹǷΠAutoHotkey´Â ±×°ÍÀ» ÇÔ²² ÀÖ¾î¾ß ÇÏ´Â ÇϳªÀÇ Ä¿´Ù¶õ °¡Á·À¸·Î ÀνÄÇÕ´Ï´Ù. + If ±×¸®°í Loop¿Í ÇÔ²² °¡Àå ¸¹ÀÌ »ç¿ëµË´Ï´Ù. + ÀÌ°ÍÀÌ ¾ø´Ù¸é, ºí·Ï¿¡¼­ ù ÁÙ¸¸ È£ÃâµË´Ï´Ù.

+

+
+ ´ÙÀ½ Äڵ忡¼­, µÎ ÁÙ ¸ðµÎ var°¡ 5¿Í °°Àº °æ¿ì¿¡¸¸ ½ÇÇàµË´Ï´Ù. +
+if (var=5)
+{
+   MsgBox, var equals %var%!!
+   Exitapp
+}
+

+ + ´ÙÀ½ Äڵ忡¼­, msgbox´Â var°¡ 5ÀÏ °æ¿ì¿¡¸¸ º¸ÀÔ´Ï´Ù. ÄÚµå´Â var°¡ 5°¡ ¾Æ´ÒÁö¶óµµ ¾ðÁ¦³ª ½ºÅ©¸³Æ®´Â Á¾·áÇÕ´Ï´Ù. + +
+if (var=5)
+   MsgBox, var´Â %var%¿Í °°½À´Ï´Ù!!
+   Exitapp
+

+ + ÀÌ°ÍÀº ù ¹ø° ÁÙÀÇ ÄÚµå¿Í ¿¬°üµÇ¾î ÀÖÀ» °æ¿ì¿¡¸¸ ¿Ïº®ÇÏ°Ô ÁÁ½À´Ï´Ù. + Á¤È®ÇÏ°Ô À§¿Í ¶È°°Áö¸¸, µÎ ¹ø° ÁÙÀº ³»¾î ½èÀ¸¹Ç·Î if¿Í ºÐÇҵǾî ÀÖÀ½À» ¾Ë ¼ö ÀÖ½À´Ï´Ù. + +
+if (var=5)
+   MsgBox, var´Â %var%¿Í °°½À´Ï´Ù!!
+MsgBox, ÀÌÁ¦ if ¼­¼ú¹® '¹Û¿¡' ÀÖ½À´Ï´Ù. ¾Æ·¡¿¡ ÇÑ ÁÙ¸¸ Àֱ⠶§¹®¿¡ {}ÀÌ ÇÊ¿äÇÏÁö ¾Ê½À´Ï´Ù.
+
+
+ + + +
+
+

6 - º¯¼ö

+

+ º¯¼ö´Â ÀÛÀº Æ÷½ºÆ®ÀÕ ¸Þ¸ðÁöó·³ ±× ¾È¿¡ Á¤º¸¸¦ ´ã½À´Ï´Ù. + ÅؽºÆ®³ª, ¼ýÀÚ, ±×¸®°í ÇÔ¼ö³ª ¸í·É¾î ½ÉÁö¾î ¼öÇÐ ¹æÁ¤½ÄÀ¸·ÎºÎÅÍ ¾òÀº µ¥ÀÌÅ͸¦ ÀúÀåÇÏ´Â µ¥ »ç¿ëÇÕ´Ï´Ù. + º¯¼ö°¡ ¾ø´Ù¸é ÇÁ·Î±×·¡¹Ö & ½ºÅ©¸³ÆÃÀº Á¤¸» Â¥Áõ³ª´Â ÀÏÀÌ µÉ °ÍÀÔ´Ï´Ù. +

+
+
+ º¯¼ö´Â ¸î °¡Áö ¹æ¹ýÀ¸·Î ÇÒ´çÇÒ ¼ö ÀÖ½À´Ï´Ù. ¿©±â¿¡¼­´Â °¡Àå ÈçÇÑ ¹æ¹ýÀ» ´Ù·ç°Ú½À´Ï´Ù. + µîÈ£ ±âÈ£(=)¿¡ ÁÖ¸ñÇØ ÁֽʽÿÀ. +
    +
  1. variable=text
    +
    °¡Àå °£´ÜÇÑ ÇüÅ·Î, ÀüÅëÀûÀÎ ÇÒ´ç ¹æ½ÄÀÔ´Ï´Ù. ±×³É ÅؽºÆ®¸¦ ŸÀÚÇØ ³ÖÀ¸¸é ±×°É·Î ³¡ÀÔ´Ï´Ù.
    +
  2. +
  3. variable=%variable2%
    +
    À§¿Í °°Áö¸¸, º¯¼ö¸¦ ´Ù¸¥ º¯¼ö °ª¿¡ ÇÒ´çÇÏ°í ÀÖ½À´Ï´Ù.
    +
  4. +
  5. variable:="text"
    +
    = ¾Õ¿¡ ÀÖ´Â : ¶§¹®¿¡ Ç¥Çö½Ä ÇÒ´çÀ̶ó°í ºÎ¸¨´Ï´Ù. ÅؽºÆ®´Â "ÀοëºÎÈ£" ó¸®ÇØ ÁÖ¾î¾ß ÇÕ´Ï´Ù.
    +
  6. +
  7. variable:=variable2
    +
    Ç¥Çö½Ä ¸ðµå¿¡¼­ º¯¼ö´Â %°¡ ÇÊ¿äÇÏÁö ¾Ê½À´Ï´Ù.
    +
  8. +
  9. variable:=6+8/3*2-sqrt(9)
    +
    Ç¥Çö½Ä ´öºÐ¿¡, ¼öÇÐ °è»êÀ» ÇÒ ¼ö ÀÖ½À´Ï´Ù!
    +
  10. +
+ ¼ýÀÚ 1 & 2 ¸¦ °áÇÕÇØ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. var=%var2% some text %var3%.
+ 3, 4 & 5 µµ ¿ª½Ã °áÇÕÇÒ ¼ö ÀÖ½À´Ï´Ù. var:="The value of 5+ " Variable " is: " 5+Variable +
+
+ +

+ ¾Õ¿¡ ½Éº¼ÀÌ ÀÖ´Â ¸ðµç µîÈ£ ±âÈ£(=)´Â ÇÒ´ç ¿¬»êÀÚ¶ó°í ºÎ¸¨´Ï´Ù. ¾ðÁ¦³ª Ç¥Çö½ÄÀÔ´Ï´Ù. ] + ±×·¡¼­ := += -= .= µîµîÀº ¾ðÁ¦³ª Ç¥Çö½ÄÀ» »ç¿ëÇÕ´Ï´Ù. +

+

a. ÆÛ¼¾Æ® ±âÈ£¸¦ »ç¿ëÇØ¾ß ÇÒ ¶§

+

+ º¯¼ö¿Í °ü·ÃÇÏ¿© ¿ÀÅäÇÖÅ°¿¡¼­ °¡Àå ¸¹ÀÌ Á¦±âµÇ´Â ¹®Á¦Áß Çϳª´Â ¾ðÁ¦ ÆÛ¼¾Æ® ±âÈ£ (%)¸¦ »ç¿ëÇϴ°¡ ÇÏ´Â °ÍÀÔ´Ï´Ù. + ´ÙÀ½ ¼³¸íÀ¸·Î ±ò²ûÇÏ°Ô È¥¶õÀÌ Á¦°ÅµÇ±â¸¦ ¹Ù¶ø´Ï´Ù. +

+
+ %¸¦ »ç¿ëÇØ¾ß ÇÒ ¶§: +
    +
  1. ¸í·É¾î¸¦ »ç¿ëÇÒ ¶§ (À§ ÂüÁ¶) ÆÛ¼¾Æ® ±âÈ£¸¦ »ç¿ëÇÕ´Ï´Ù.
    + -- ¸Å°³º¯¼ö°¡ OutputVarÀ̰ųª InputVarÀÏ °æ¿ì´Â Á¦¿ÜÇÕ´Ï´Ù.
  2. +
  3. ÀüÅëÀûÀÎ ¸ðµå¸¦ »ç¿ëÇÏ´Â º¯¼ö¿¡ º¯¼ö¸¦ ÇÒ´çÇÒ ¶§ (¾Õ¿¡ ½Éº¼ÀÌ ¾ø´Â µîÈ£ ±âÈ£).
  4. +
+ + %¸¦ »ç¿ëÇÏ¸é ¾ÈµÉ ¶§: +
    +
  1. ¸Å°³º¯¼ö°¡ ÀԷº¯¼öÀ̰ųª Ãâ·Â º¯¼öÀÏ °æ¿ì, ¿¹¸¦ µé¾î: StringLen, OutputVar, InputVar
  2. +
  3. ÇÒ´çÀÇ ¿ÞÂÊ¿¡ ÀÖÀ» ¶§: Var = 123abc
  4. +
  5. ÀüÅëÀû (ºñ-Ç¥Çö½Ä) if-¼­¼ú¹®ÀÇ ¿ÞÂÊ¿¡: If Var1 < %Var2%
  6. +
  7. Ç¥Çö½Ä ¾È¿¡. ¿¹¸¦ µé¾î: +
    +If (Var1 != Var2)
    +   Var1 := Var2 + 100
    +
    +
  8. +
+
+ + + +

b. »ç¿ëÀÚ ÀÔ·Â ¾ò±â

+
+ Á¾Á¾ »ç¿ëÀÚ°¡ °ªÀ» ä¿ö ³Ö¾îÁֱ⸦ ¹Ù¶ö °æ¿ì°¡ ÀÖ½À´Ï´Ù. ¿©·¯ °¡Áö ¹æ¹ýÀÌ ÀÖÁö¸¸, °¡Àå °£´ÜÇÑ ¹æ¹ýÀº InputboxÀÔ´Ï´Ù. + ´ÙÀ½Àº °£´ÜÇÑ ¿¹ÀÔ´Ï´Ù. »ç¿ëÀÚ¿¡°Ô µÎ °¡Áö Áú¹®À» ÇÏ°í ±× ´äÀ» °¡Áö°í ¹«½¼ ÀÏÀ» ÇÕ´Ï´Ù. + +
+InputBox, OutputVar, Question 1, À̸§ÀÌ ¹«¾ùÀԴϱî?
+if (OutputVar="Bill")
+   MsgBox, ¸ÚÁø À̸§À̱º¿ä, %OutputVar%.
+
+InputBox, OutputVar2, Question 2, ¿ÀÅäÇÖÅ°¸¦ ÁÁ¾ÆÇմϱî?
+if (OutputVar2="yes")
+   MsgBox, %OutputVar2%`¶ó°í ´äÇØ Áּż­ °í¸¿½À´Ï´Ù. %OutputVar%! ¿©·¯ºÐÀÇ ÈǸ¢ÇÑ Ä£±¸°¡ µÇ¾î µå¸®°Ú½À´Ï´Ù.
+else
+   MsgBox, %OutputVar%`, Á¤¸» ½½ÇÁ±º¿ä.
+
+
+ +

c. ´Ù¸¥ ¿¹Á¦µé?

+
+
+MsgBox, 4, , °è¼ÓÇϽðڽÀ´Ï±î?
+IfMsgBox, No
+   Return                ; NoÀ̸é, Äڵ带 ¸ØÃä´Ï´Ù.
+MsgBox ´ç½ÅÀº YES¸¦ ´­·¶½À´Ï´Ù.  ; ±×·¸Áö ¾ÊÀ¸¸é, »ç¿ëÀÚ´Â yes¸¦ °í¸¥ °ÍÀÔ´Ï´Ù.
+
+
+; ÆÛ¼¾Æ® ±âÈ£¸¦ »ç¿ëÇØ¾ß ÇÒ ¶§¿Í ÇÏÁö ¸»¾Æ¾ß ÇÒ ¶§´Â º¸¿©ÁÖ´Â ¸î °¡Áö ¿¹µé
+Variable=text                      ; º¯¼ö¿¡ ÅؽºÆ®¸¦ ÇÒ´çÇÕ´Ï´Ù. 'ÀüÅëÀûÀÎ' ÇÒ´ç¹æ½ÄÀÔ´Ï´Ù.
+VariableNumber:=6                  ; º¯¼ö¿¡ ¼ýÀÚ¸¦ ÇÒ´çÇÕ´Ï´Ù. 'Ç¥Çö½Ä' ÇÒ´çÀÔ´Ï´Ù.
+Variable2=%Variable%               ; º¯¼ö¸¦ ¶Ç´Ù¸¥ º¯¼ö¿¡ ÇÒ´çÇÕ´Ï´Ù. ÀüÅëÀûÀÎ ÇÒ´çÀ» »ç¿ëÇÕ´Ï´Ù.
+Variable3:=Variable                ; º¯¼ö¸¦ ¶Ç´Ù¸¥ º¯¼ö¿¡ ÇÒ´çÇÕ´Ï´Ù. Ç¥Çö½Ä ÇÒ´çÀÔ´Ï´Ù.
+Variable4.=Variable                ; º¯¼ö¸¦ ¶Ç´Ù¸¥ º¯¼öÀÇ ³¡¿¡ Ãß°¡ÇÕ´Ï´Ù. Ç¥Çö½Ä ÇÒ´çÀÔ´Ï´Ù.
+Variable5+=VariableNumber          ; º¯¼öÀÇ °ªÀ» ¶Ç´Ù¸¥ º¯¼ö¿¡ Ãß°¡ÇÕ´Ï´Ù. Ç¥Çö½Ä ÇÒ´çÀÔ´Ï´Ù.
+Variable5-=VariableNumber          ; º¯¼öÀÇ °ªÀ» ¶Ç´Ù¸¥ º¯¼ö·ÎºÎÅÍ »®´Ï´Ù. Ç¥Çö½Ä ÇÒ´çÀÔ´Ï´Ù.
+Variable6:=SubStr(Variable, 2, 2)  ; ÇÔ¼ö ¾ÈÀÇ º¯¼öÀÔ´Ï´Ù. ÀÌ°ÍÀº ¾ðÁ¦³ª Ç¥Çö½Ä ÇÒ´çÀÔ´Ï´Ù.
+Variable7=%Variable% Text          ; º¯¼ö¸¦ ¶Ç´Ù¸¥ º¯¼ö¿¡ ¾à°£ÀÇ ÅؽºÆ®¿À ÇÔ²² ÇÒ´çÇÕ´Ï´Ù. ÀüÅëÀûÀÎ ÇÒ´çÀ» »ç¿ëÇÕ´Ï´Ù.
+Variable8:=Variable " Text"        ; º¯¼ö¸¦ ¶Ç´Ù¸¥ º¯¼ö¿¡ ¾à°£ÀÇ ÅؽºÆ®¿Í ÇÔ²² ÇÒ´çÇÕ´Ï´Ù. Ç¥Çö½Ä ÇÒ´çÀ» »ç¿ëÇÕ´Ï´Ù.
+MsgBox, %Variable%                 ; ¸í·É¾î ¾ÈÀÇ º¯¼öÀÔ´Ï´Ù. 
+StringSplit, Variable, Variable, x ; InputVar¿Í OutputVar¸¦ »ç¿ëÇÏ´Â ¸í·É¾î ¾ÈÀÇ º¯¼öÀÔ´Ï´Ù.
+if (VariableNumber=6)              ; IF¿¡ °ýÈ£°¡ ÀÖÀ» ¶§¸¶´Ù, ±×°ÍÀº Ç¥Çö½ÄÀÔ´Ï´Ù. ±×·¡¼­  %¸¦ »ç¿ëÇÏÁö ¾Ê½À´Ï´Ù.
+If (Variable != VariableNumber)    ; IF¿¡ °ýÈ£°¡ ÀÖÀ» ¶§¸¶´Ù, ±×°ÍÀº Ç¥Çö½ÄÀÔ´Ï´Ù. ±×·¡¼­  %¸¦ »ç¿ëÇÏÁö ¾Ê½À´Ï´Ù.
+if VariableNumber=6                ; °ýÈ£°¡ ¾øÀ¸¸é, ±× if´Â ÀüÅëÀûÀÔ´Ï´Ù. ±×·¸Áö¸¸, '¿À¸¥ÂÊ¿¡ ÀÖ´Â' º¯¼ö¸¸ %°¡ ÇÊ¿äÇÕ´Ï´Ù. 
+If Var1 < %Var2%                   ; °ýÈ£°¡ ¾øÀ¸¸é, ±× if´Â ÀüÅëÀûÀÔ´Ï´Ù. ±×·¸Áö¸¸, '¿À¸¥ÂÊ¿¡ ÀÖ´Â' º¯¼ö¸¸ %°¡ ÇÊ¿äÇÕ´Ï´Ù. 
+
+
+ + + +
+
+

7 - °´Ã¼

+

+ °´Ã¼´Â Á» ´õ È¿À²ÀûÀ¸·Î »ç¿ëÇϱâ À§ÇØ µ¥ÀÌÅ͸¦ Á¶Á÷ÇÏ´Â ¹æ¹ýÀÔ´Ï´Ù. Á¾Á¾ °´Ã¼´Â ¹è¿­À̶ó°í ÁöĪµÇ±âµµ ÇÕ´Ï´Ù. + ±×·¯³ª ¸ðµç ¹è¿­Àº ±×³É °´Ã¼ÀÏ »ÓÀ̶ó´Â »ç½ÇÀ» ÀνÄÇÏ´Â °ÍÀÌ Áß¿äÇÕ´Ï´Ù. + °´Ã¼¸¦ ¾îµð¿¡ »ç¿ëÇÏ·Á°í Çϴ°¡¿¡ µû¶ó ´Ù¸£°Ô ºÎ¸£±âµµ ÇÏÁö¸¸, ±× ¸ðµç °´Ã¼´Â °°Àº °ÍÀÔ´Ï´Ù. +

+
+ °´Ã¼´Â ±âº»ÀûÀ¸·Î º¯¼ö ÁýÇÕÀÔ´Ï´Ù. + º¯¼ö À̸§Àº "Å°"¶ó°í ¾Ë·ÁÁ® ÀÖ°í, ±× º¯¼öÀÇ ³»¿ëÀº "°ª"À̶ó°í ÇÕ´Ï´Ù.
+
+ °´Ã¼¸¦ ¹è¿­ ¶Ç´Â À妽º ¹è¿­À̶ó°í ºÎ¸¥´Ù¸é, º¸Åë ¸ðµç Å°°¡ 1ºÎÅÍ ½ÃÀÛÇؼ­ ¿¬¼ÓÀûÀ¸·Î Áõ°¡ÇÏ´Â ¼ýÀÚ¶ó´Â ¶æÀÔ´Ï´Ù.
+ °´Ã¼¸¦ ¿¬°ü ¹è¿­À̶ó°í ºÎ¸¥´Ù¸é, Å°°¡ ¹®ÀÚ¿­(ÅؽºÆ®)À̰ųª ¾Æ´Ï¸é ºñ-¿¬¼Ó ¼ýÀÚµéÀ̶ó´Â ¶æÀÔ´Ï´Ù. + Á¾Á¾, ±× µÑÀº È¥¿ëµË´Ï´Ù. ¿¬¼Ó ¼ýÀÚµµ ¸¶Âù°¡ÁöÀÔ´Ï´Ù!
+
+ Å°³ª °ªÀÌ ¹«¾ùÀÎÁö´Â Á¦ÇÑÀÌ ¾ø½À´Ï´Ù. ½ÉÁö¾î ´Ù¸¥ ¹è¿­ÀÌ µÉ ¼öµµ ÀÖ½À´Ï´Ù! +
+ °ªÀÌ ¶Ç ¹è¿­À̸é, ÀÌ°ÍÀ» ³»Æ÷ ¹è¿­À̶ó°í ºÎ¸¨´Ï´Ù. ÀÌ¿¡ °üÇؼ­´Â ³ªÁß¿¡ ¼³¸íµå¸®°Ú½À´Ï´Ù. +
+
+ °´Ã¼¸¦ »ç¿ëÇÏ°í ½ÍÀº ÀÌÀ¯°¡ ¸¹ÀÌ ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¸é:
+
    +
  1. ¹øÈ£ ¸®½ºÆ®¸¦ »ç¿ëÇÏ°í ½Í½À´Ï´Ù. ¿¹¸¦ µé¾î, À庸±â ¸ñ·Ï °°Àº °æ¿ìÀÌ°ÚÁö¿ä (ÀÌ°ÍÀº À妽º ¹è¿­À̶ó°í ÁöĪµË´Ï´Ù)
  2. +
  3. °ÝÀÚ¸¦ Ç¥ÇöÇÏ°í ½Í½À´Ï´Ù. ¾Æ¸¶µµ º¸µå °ÔÀÓ¿¡ »ç¿ëÇÏ½Ç »ý°¢ÀÌ°ÚÁö¿ä (ÀÌ°ÍÀº ³»Æ÷ °´Ã¼·Î ¸¸µé ¼ö ÀÖ½À´Ï´Ù)
  4. +
  5. °¢°¢¿¡ À̸§ÀÌ ÀÖ´Â ¹°Ç° ¸ñ·ÏÀÌ ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î °úÀÏÀÇ Æ¯Â¡¿¡ ¸ÂÃß¾î À̸§À» Àû¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù (ÀÌ°ÍÀº ¿¬°ü ¹è¿­À̶ó°í ºÎ¸¨´Ï´Ù)
  6. +
+
+

a. °´Ã¼ ¸¸µé±â

+
+ °´Ã¼¸¦ ¸¸µé·Á¸é ¸î °¡Áö ¹æ¹ýÀÌ ÀÖ½À´Ï´Ù. °¡Àå ÈçÇÑ ¹æ¹ýÀº ¾Æ·¡¿Í °°½À´Ï´Ù.
+
    +
  1. MyObject := ["one", "two", "three", 17]
    +
    + °¢°ýÈ£ ±¸¹®ÀÔ´Ï´Ù. + ÀÌ°ÍÀ¸·Î "À妽º ¹è¿­"À» ¸¸µé ¼ö ÀÖ½À´Ï´Ù. + À妽º ¹è¿­Àº Ç׸ñ ¸®½ºÆ®¸¦ 1ºÎÅÍ ÂÞ¿í ³ª¿­ÇØ º¸¿©ÁÖ´Â °´Ã¼ÀÔ´Ï´Ù. + ÀÌ ¿¹Á¦¿¡¼­, °ª "one"Àº °´Ã¼ Å°1¿¡ ÀúÀåµË´Ï´Ù (À妽º 1), ±×¸®°í °ª 17Àº °´Ã¼ Å° 4¿¡ ÀúÀåµË´Ï´Ù (À妽º 4). +
    +
  2. +
  3. Banana := {"Shape": "Elongated", "Color": "Yellow", "Taste": "Delicious", "Price": 3}
    +
    + È°°ýÈ£ ±¸¹®ÀÔ´Ï´Ù. + ÀÌ°ÍÀ¸·Î "¿¬°ü ¹è¿­"À» Á¤ÀÇÇÒ ¼ö ÀÖ½À´Ï´Ù. + ¿¬°ü ¹è¿­Àº °¢ Ç׸ñ¿¡ À̸§ÀÌ ÀÖ´Â µ¥ÀÌÅÍ ÁýÇÕÀÔ´Ï´Ù. + ÀÌ ¿¹Á¦¿¡¼­ °ª "yellow"´Â °´Ã¼ Å° "color"¿¡ ÀúÀåµË´Ï´Ù. ¶Ç, °ª 3Àº °´Ã¼ Å° "Price"¿¡ ÀúÀåµË´Ï´Ù. +
    +
  4. +
  5. MyObject := Array("one", "two", "three", 17)
    +
    + "¹è¿­" »ý¼º ÇÔ¼öÀÔ´Ï´Ù. ÀÌ ÇÔ¼ö´Â °¢°ýÈ£ ±¸¹®°ú µ¿µîÇÏÁö¸¸, ÇÔ¼ö¿¡ ½Î¿© ÀÖ½À´Ï´Ù. +
    +
  6. +
  7. Banana := Object("Shape", "Elongated", "Color", "Yellow", "Taste", "Delicious", "Price", 3)
    +
    + °´Ã¼ »ý¼º ÇÔ¼öÀÔ´Ï´Ù. ÀÌ ÇÔ¼ö´Â È°°ýÈ£¿Í µ¿µîÇÏÁö¸¸, ÇÔ¼ö¿¡ ½Î¿© ÀÖ½À´Ï´Ù. +
    +
  8. +
+ + ÀÌ ¸ðµç Á¤ÀÇ°¡ °°Àº °Í(°´Ã¼)À» ¸¸µé¾î ³½´Ù´Â °ÍÀ» ±â¾ïÇÏ´Â °ÍÀÌ Áß¿äÇÕ´Ï´Ù. ´ÜÁö Å°°¡ ´Ù¸¦ »ÓÀÔ´Ï´Ù. + +
+ +

b. °´Ã¼ »ç¿ëÇϱâ

+ °´Ã¼¸¦ »ç¿ëÇÏ´Â ¹æ¹ýÀÌ ¿©·¯°¡Áö°¡ ÀÖ½À´Ï´Ù. °ªÀ» ¿­¶÷Çϱâ, °ªÀ» ¼³Á¤Çϱâ, °ªÀ» Ãß°¡Çϱâ, µîµîÀÌ Æ÷ÇԵ˴ϴÙ. +
+
+ °ªÀ» ¼³Á¤ÇÏ·Á¸é: +
+ °´Ã¼¿¡ °ªÀ» ¼³Á¤ÇÏ´Â ÀÏÀº º¯¼ö¿¡ °ªÀ» ¼³Á¤ÇÏ´Â °Í ¸¸Å­À̳ª ´Ü¼øÇÕ´Ï´Ù.
+ ±×³É (¿­¶÷ ¼½¼Ç¿¡¼­ º¸½ÃµíÀÌ) Ç¥Çö½Ä ÇÒ´ç ½Éº¼ :=ÀÇ ¿ÞÂÊ¿¡.
+ °¢°ýÈ£³ª Á¡ Ç¥±â¹ýÀ» ¹èÄ¡Çϱ⸸ ÇÏ¸é µË´Ï´Ù. +
+ ¿¹¸¦ µé¾î:
+ Banana.Consistency := "Mushy"
+ Banana["Pickled"] := True ; ÀÌ ¹Ù³ª³ª´Â ÀýÀÎ ¹Ù³ª³ªÀÔ´Ï´Ù. ¿ìÀ¡. +
+
+ °ªÀ» ¿­¶÷ÇÏ·Á¸é: +
    +
  1. Value := Banana["Color"]
    +
    °¢°ýÈ£ Ç¥±â¹ýÀÔ´Ï´Ù. Ç¥Çö½ÄÀ» Å°·Î »ç¿ëÇÏ¿© °´Ã¼·ÎºÎÅÍ °ªÀ» ¾òÀ» ¼ö ÀÖ½À´Ï´Ù. + ÀÌ °æ¿ì, °£´ÜÇÑ Ç¥Çö½Ä "Color"¸¦ »ç¿ëÇß½À´Ï´Ù. ÀÌ°ÍÀÌ (´ç¿¬È÷) Å° ColorÀÔ´Ï´Ù. + ¸Þ½ÃÁö ¹Ú½º¿¡ "Yellow"¶ó´Â ´Ü¾î°¡ ³ªÅ¸³¯ ÅÙµ¥, ÀÌ°ÍÀº ¾Õ ¼½¼Ç¿¡¼­ Å° Color¿¡ ÇÒ´çÇß´ø °ªÀÔ´Ï´Ù. +
    +
  2. +
  3. Value := Banana.Color
    +
    + Á¡ Ç¥±â¹ýÀÔ´Ï´Ù. ÀÌ ¹æ¹ýÀº ±âÈ£ ¹®ÀÚ¿­¸¸ Å°·Î »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. º¯¼ö´Â Å°·Î »ç¿ëÇÒ ¼ö ¾ø½À´Ï´Ù. +
    +
  4. +
+
+ »õ Å°¿Í °ªÀ» Ãß°¡ÇÏ·Á¸é: +
    +
  1. Á÷Á¢ÀûÀ¸·Î °ªÀ» Ãß°¡Çϱâ +
    + Á÷Á¢ÀûÀ¸·Î Å°¿Í °ªÀ» Ãß°¡ÇÏ·Á¸é, ±×³É Á¸ÀçÇÏÁö ¾Ê´Â Å°¸¦ ¼³Á¤Çϱ⸸ ÇÏ¸é µË´Ï´Ù. + ¿¹¸¦ µé¾î:
    + MyObject.NewKey := "Shiny"
    + MyObject["NewerKey"] := 3.1415 +
    +
  2. +
  3. °ªÀ» »ðÀÔÇϱâ +
    + °´Ã¼¿¡ Å°¿Í °ªÀ» Ãß°¡ÇÏ´Â ¶Ç´Ù¸¥ ¹æ¹ýÀº ´ÙÀ½ ¹æ¹ý Áß Çϳª¸¦ »ç¿ëÇÕ´Ï´Ù.
    +
    + MyObject.InsertAt(Index, Value1, Value2, Value3...)
    + Index´Â Á¤¼ö Å°ÀÔ´Ï´Ù. ÀÌ·¸°Ô ÇÏ¸é »ðÀÔÇÒ ¶§¸¶´Ù ÀÌ °ªº¸´Ù ´õ ³ôÀº ¸ðµç Å°µéÀÌ À§·Î À̵¿ÇÕ´Ï´Ù. Æ´ÀÌ À־ À̵¿ÇÕ´Ï´Ù. + (¿¹¸¦ µé¾î, Å°°¡ 1ºÎÅÍ 100 ±îÁö¸¸ Á¸ÀçÇÏ°í, °ªÀ» Å° 50¿¡ »ðÀÔÇϸé, 100Àº 101·Î À̵¿ÇÕ´Ï´Ù).
    +
    + MyObject.Push(Value1, Value2, Value3...)
    + ÀÌ·¸°Ô Çϸé MyObject¹è¿­ÀÇ ³¡¿¡ °ªÀÌ "Ãß°¡µË´Ï´Ù". ´Ù¸¥ ¸»·Î Çؼ­, °ªÀ» °¡Àå ³ôÀº Á¤¼öÅ°º¸´Ù Çϳª ´õ Å« À§Ä¡¿¡ »ðÀÔÇÕ´Ï´Ù.
    +
    +
  4. +
+
+ Å°¿Í °ªÀ» »èÁ¦ÇÏ·Á¸é: +
    +
  1. °ªÀ» Á¦°ÅÇϱâ.
    +
    + °¡Àå ½±°Ô °ªÀ» Á¦°ÅÇÏ´Â ¹æ¹ýÀº ±×³É ¾ø¾Ö ¹ö¸®´Â °ÍÀÔ´Ï´Ù. + ±×³É ""·Î ¼³Á¤ÇÏ¸é µË´Ï´Ù. ºó ¹®ÀÚ¿­À̶ó°í ºÎ¸¨´Ï´Ù. ÀÌ°ÍÀ¸·Î´Â Å°°¡ Á¦°ÅµÇÁö ¾ÊÁö¸¸, °ªÀÌ ¼³Á¤µÇÁö ¾ÊÀº °ª°ú µ¿ÀÏÇÏ°Ô º¸À̵µ·Ï ¸¸µì´Ï´Ù.
    + HasKey ¸Þ½îµå¸¦ »ç¿ëÇϸé Å°°¡ ¿©ÀüÈ÷ Á¸ÀçÇÑ´Ù°í ¾Ë·ÁÁÙ ¼ö ÀÖ½À´Ï´Ù. ±×·¯¸é ¿©ÀüÈ÷ for ȸµ¹ÀÌ¿¡ ³ªÅ¸³¯ °ÍÀÔ´Ï´Ù. (ȸµ¹ÀÌ¿¡ °üÇؼ­´Â ³ªÁß¿¡ ÀÚ¼¼È÷ ¸»¾¸µå¸®°Ú½À´Ï´Ù) +
    +
  2. +
  3. Å°¸¦ Á¦°ÅÇϱâ
    +
    + Å°¿Í °ªÀ» Á¦°ÅÇÏ´Â ¸î °¡Áö ´Ù¸¥ ¹æ¹ýÀÌ ÀÖ½À´Ï´Ù: +
    +
      +
    1. RemovedValue := MyObject.Delete(AnyKey) +
      + MyObject[AnyKey]ÀÇ ÀÌÀü °ªÀº RemovedValue¿¡ ÀúÀåµË´Ï´Ù. +
      +
    2. +
    3. NumberOfRemovedKeys := MyObject.Delete(FirstKey, LastKey) +
      + ÀÌ·±½ÄÀ¸·Î Á¦°ÅÇϸé FirstKey¿Í LastKey »çÀÌÀÇ ¼ýÀÚ/Á¤¼ö ¶Ç´Â ¹®ÀÚ¿­ Å°¸¦ ¸ù¶¥ Á¦°ÅÇÒ ¼ö ÀÖ½À´Ï´Ù.
      +
      + µ¹·Á¹Þ´Â °ªÀº Á¦°ÅµÈ Å°ÀÇ °³¼öÀÔ´Ï´Ù. ÀÌ°ÍÀº Å° »çÀÌ¿¡ Æ´ÀÌ ÀÖÀ» ¶§ À¯¿ëÇÕ´Ï´Ù + (¿¹¸¦ µé¾î, Å°¸¦ 1ºÎÅÍ 4±îÁö ÁöÁ¤ÇßÁö¸¸, Å° 2´Â Á¸ÀçÇÏÁö ¾Ê´Â´Ù¸é, NumberOfRemovedKeys°¡ 3À¸·Î ¼³Á¤µÇ°í ¼¼ °³ÀÇ Å°¸¸ Á¦°ÅµË´Ï´Ù) +
      +
    4. +
    5. MyObject.Pop() +
      + °¡Àå ³ôÀº Á¤¼ö Å°°¡ Á¦°ÅµÇ°í, ±× °ªÀ» µ¹·ÁÁÝ´Ï´Ù. ¿µÇâÀ» ¹ÞÀ» ´õ ³ôÀº Å°´Â ÀüÇô ¾ø½À´Ï´Ù. +
      +
    6. +
    7. RemovedValue := MyObject.RemoveAt(Index)
      + NumberOfRemovedKeys := MyObject.RemoveAt(Index, Length) +
      + IndexºÎÅÍ Index + Length - 1 (Æ÷ÇÔe)±îÁö ¸ðµç Å°µéÀÌ »èÁ¦µË´Ï´Ù. Length¸¦ »ý·«Çϸé 1ÀÌ ±âº»°ªÀÔ´Ï´Ù. + Å°¸¦ Á¦°ÅÇÑ ´ÙÀ½ ÀÌ º¸´Ù ³ôÀº ¸ðµç ¼ýÀÚ/Á¤¼ö Å°µéÀ» À§·Î ¿Ã·Á¼­ Æ´À» ¸Þ¿ó´Ï´Ù. + ±×·¡¼­ °ªÀÌ Index + Length¿¡ ÀÖ¾ú´Ù¸é ÀÌÁ¦ ±× °ªÀº Index¿¡ ÀÖ½À´Ï´Ù. + ÀÌ ¹æ½ÄÀº ¿©·¯ °ªÀÌ ÁöÁ¤µÈ InsertAt ¸Þ½îµåÀÇ ÀÛµ¿ ¹æ½Ä°ú ºñ½ÁÇÕ´Ï´Ù. +
      +
    8. +
    +
  4. +
+
+ + + + +
+
+

8 - ±âŸ µîµî µµ¿ò

+

+ ÀÌÁ¦ ¿©ÇàÀÇ ¸·¹ÙÁö¿¡ ´Ù´Ù¶ú½À´Ï´Ù. ¸ðÂÉ·Ï ¹«¾ð°¡¸¦ ¹è¿ü±â¸¦ ¹Ù¶ø´Ï´Ù. + ±×·¯³ª ³¡³»±â Àü¿¡, ¿©·¯ºÐÀÌ ²À ¾Ë¾Æ¾ß ÇÑ´Ù°í »ý°¢ÇÏ´Â ´Ù¸¥ °ÍµéÀ» ¿©±â¿¡ Á¦½ÃÇÕ´Ï´Ù. Áñ°Å¿î ½Ã°£ µÇ½Ã±â¸¦! +

+

a. ½ÅºñÇÑ []

+
+ ¹®¼­¸¦ ÅëÇÏ¿©, ´ÙÀ½ µÎ ½Éº¼ÀÌ º¸ÀÏ °Ì´Ï´Ù ([ ±×¸®°í ]). °ÅÀÇ ¸ðµç ÆäÀÌÁö »ó´Ü¿¡ ³ë¶õ»ö ±¸¹® ¹Ú½º ¾È¿¡¼­ Äڵ带 µÑ·¯ ½Î°í ÀÖÁö¿ä. + + ÀÌ °¢È°È£ ¾È¿¡ µç ¸ðµç °ÍµéÀº ¼±ÅÃÀûÀÔ´Ï´Ù. ±× ¾È¿¡ µç °ÍµéÀº ÇÊ¿ä ¾øÀ¸¸é »ý·«Çصµ µÈ´Ù´Â ¶æÀÔ´Ï´Ù. + Äڵ带 ÀÛ¼ºÇÒ ¶§, [] ´Â Àý´ë·Î ŸÀÚÇÏÁö ¾Ê½À´Ï´Ù.

+ ControlGetText ÆäÀÌÁö¿¡¼­ ÀÌ°ÍÀ» º¸½Ç ¼ö ÀÖ½À´Ï´Ù (»ö±ò ¾øÀÌ):
+ ControlGetText, OutputVar [, Control, WinTitle, WinText, ExcludeTitle, ExcludeText]

+ ±×·¡¼­ ±×³É ¿øÇÏ´Ù¸é ÀÌ·¸°Ô Çصµ µË´Ï´Ù:
+ ControlGetText, OutputVar

+ + ¶Ç´Â Á» ´õ ¼¼¹ÐÇÏ°Ô ÀÌ·¸°Ô Çصµ µË´Ï´Ù:
+ ControlGetText, OutputVar, Control, WinTitle

+ + ExcludeTitle¸¦ »ç¿ëÇÏ°í ½ÍÁö¸¸ WinText³ª WinTitleÀº ä¿ì°í ½ÍÁö ¾Ê´Ù¸é? °£´ÜÇÕ´Ï´Ù!
+ ControlGetText, OutputVar, Control,,, ExcludeTitle

+

+ ¸Å°³º¯¼ö´Â ¹«½ÃÇÒ ¼ö ¾ø½À´Ï´Ù. ±×³É ºó ä·Î ³õ¾Æ µÎ´Â °ÍÀº ±¦Âú½À´Ï´Ù.
+ "WinTitle, WinText"¸¦ ¹«½ÃÇØ ¹ö¸®¸é, ´ÙÀ½°ú °°ÀÌ º¸ÀÏ °ÍÀÌ°í ¹®Á¦¸¦ ÀÏÀ¸Åµ´Ï´Ù:
+ ControlGetText, OutputVar, Control, ExcludeTitle
+ ´ÙÀ½Àº À¯È¿ÇÕ´Ï´Ù.
+ ControlGetText, OutputVar, Control,,, ExcludeTitle +

+
+

b. AHK ¹öÀü ¾Ë¾Æ³»±â

+
+ ´ÙÀ½ Äڵ带 ½ÇÇàÇϸé AHK ¹öÀüÀ» º¼ ¼ö ÀÖ½À´Ï´Ù: +
+MsgBox, %A_AHKVersion%
+
+ + ¶Ç´Â "AutoHotkey µµ¿ò¸» ÆÄÀÏ" ¶Ç´Â "AutoHotkey.chm"À» ½ÃÀÛ ¸Þ´º³ª ¼³Ä¡ µð·ºÅ丮¿¡¼­ ã¾Æ º¸½Ê½Ã¿À. +
+ +

c. ½ÃÇà Âø¿À

+

+ ½ÃÇà Âø¿À´Â ¹è¿ò¿¡¼­ ¾ÆÁÖ ÈçÇÏ°í È¿°úÀûÀÎ ¹æ¹ýÀÔ´Ï´Ù. + ¸ðµç °Íµé¿¡ µµ¿òÀ» ±¸ÇÏ´Â ´ë½Å¿¡, Á» È¥ÀÚ¸¸ÀÇ ½Ã°£À» °¡Áö°í (¸î ½Ã°£À̳ª ¸î ÀÏ µ¿¾È) ÀÛµ¿½ÃÄÑ º¸·Á°í ½ÃµµÇÏ´Â °ÍÀÌ ´õ »¡¸® ¹è¿ì´Âµ¥ µµ¿òÀÌ µÇ½Ç °Ì´Ï´Ù. +

+

+ ¹º°¡¸¦ ½ÃµµÇØ º¸°í ¿¡·¯¸¦ ¸ÂÀÌÇØ º¸¸é¼­, ±× ¿¡·¯¸¦ ¿¬±¸ÇÕ´Ï´Ù. ´ÙÀ½ Äڵ带 ¼öÁ¤ÇÑ ´ÙÀ½, ´Ù½Ã ½ÃµµÇØ º¾´Ï´Ù. + ¿©ÀüÈ÷ ¿¡·¯¸¦ ¸ÂÀÌÇÑ´Ù¸é, Äڵ带 Á» ´õ ¼öÁ¤ÇÕ´Ï´Ù. Äڵ尡 ´õ ÀÌ»ó ½ÇÆÐÇÏÁö ¾ÊÀ» ¶§±îÁö °è¼Ó ½Ãµµ¿Í ½ÇÆи¦ °ÅµìÇÕ´Ï´Ù. + ¹®¼­¸¦ Àаí, ¿¡·¯¸¦ ÀÐ°í ¹«¾ùÀÌ ÀÛµ¿ÇÏ°í ¹«¾ùÀÌ ÀÛµ¿ÇÏÁö ¾Ê´ÂÁö ¹è¿ì¸é¼­ ¸¹Àº °ÍÀ» ¹è¿ì½Ç °Ì´Ï´Ù. + ½Ãµµ, ½ÇÆÐ, ½Ãµµ, ½ÇÆÐ,½Ãµµ, ½ÇÆÐ, ½Ãµµ, ½ÇÆÐ, ¼º°ø! +

+

+ ÀÌ ¹æ¹ýÀ¸·Î ¼ö ¸¹Àº "ÇÁ·ÎµéÀÌ" ¹è¿ü½À´Ï´Ù. ±×·¯³ª µµ¿òÀ» ±¸ÇÏ´Â µ¥ µÎ·Á¿öÇÏÁö ¸¶½Ê½Ã¿À. ¸é¹Ú´çÇÏÁö ¾Ê½À´Ï´Ù. + ¹è¿ì´Â µ¥´Â ½Ã°£ÀÌ ÇÊ¿äÇϸç, ¿©·¯ºÐÀÌ ¸¸³ª´Â "ÇÁ·Î"°¡ ´Ü ¸î ½Ã°£ ¸î ÀÏ ¸¸¿¡ ¹è¿ö¼­ ¸¶½ºÅÍ°¡ µÈ °ÍÀÌ ¾Æ´Õ´Ï´Ù. +

+

"óÀ½¿¡´Â ¼º°øÇÏÁö ¸øÇÏ´õ¶óµµ, ´Ù½Ã ½Ãµµ, ¶Ç ½Ãµµ, ½ÃµµÇ϶ó." - Hickson, William E.

+

d. µé¿©¾²±â

+
+ µé¿©¾²±â´Â ¾ÆÁÖ Áß¿äÇÕ´Ï´Ù! ÄÚµå´Â ¿Ïº®ÇÏ°Ô ½ÇÇàµÇÁö¸¸, Äڵ带 ÀÐÀ» ¶§ ½É°¢ÇÑ µÎÅë°Å¸®°¡ µÉ °ÍÀÔ´Ï´Ù. + ÀÛÀº ÄÚµå¶ó¸é (25 ÁÙ ÀÌÇÏ) ¾Æ¸¶µµ µé¿©¾²±â°¡ ¾ø´õ¶óµµ Àдµ¥ ¹®Á¦°¡ ¾ø°ÚÁö¸¸, Á¶¸¸°£ ¾î·Á¿öÁú °Ì´Ï´Ù. + µÇµµ·ÏÀÌ¸é ºü¸® µé¿©¾²±â¸¦ ¹è¿ì´Â ÆíÀÌ Á¦ÀÏ ÁÁ½À´Ï´Ù.
+ µé¿©¾²±â´Â Ưº°ÇÑ ½ºÅ¸ÀÏÀÌ ¾øÁö¸¸, ÀÏ°ü¼ºÀ» À¯ÁöÇÏ´Â °ÍÀÌ Á¦ÀÏ ÁÁ½À´Ï´Ù.
+ "µé¿©¾²±â¶õ ¹«¾ùÀΰ¡?" ¾Æ¸¶µµ ÀÌ·¸°Ô ¹¯°í ½Í°ÚÁö¿ä? + ¹«¾ùÀÌ ¹«¾ù¿¡ ¼ÓÇØ ÀÖ´ÂÁö º¸±â À§ÇØ Äڵ带 °£°ÝÀ» µÎ¾î ÂÉ°³´Â °ÍÀÔ´Ï´Ù. + »ç¶÷µéÀº ÇÑ ·¹º§ ´ç º¸Åë 3 À̳ª 4 °³ÀÇ °ø¹é ¶Ç´Â ÇÑ °³ÀÇ ÅÇÀ» »ç¿ëÇÕ´Ï´Ù.

+ µé¿©¾²±â ¾øÀ½: + +
+if (car="old")
+{
+msgbox, the car is really old
+if (wheels="flat")
+{
+msgbox, this car is not safe to drive.
+Return
+}
+else
+{
+msgbox, Be careful! This old car will be dangerous to drive.
+}
+}
+else
+{
+msgbox, My`, what a shiny new vehicle you have there.
+}
+
+ + µé¿©¾²±âÇÔ: + +
+if (car="old")
+{
+   msgbox, ÀÚµ¿Â÷°¡ Á¤¸» ¿À·¡µÇ¾ú½À´Ï´Ù
+   if (wheels="flat")
+   {
+      msgbox, ÀÌ ÀÚµ¿Â÷´Â ¿îÀüÇϱ⿡ ¾ÈÀüÇÏÁö ¾Ê½À´Ï´Ù.
+      Return
+   }
+   else
+   {
+      msgbox, ÁÖÀÇÇϼ¼¿ä! ÀÌ ±¸Çü ÀÚµ¿Â÷´Â ¿îÀüÇϱ⿡ À§ÇèÇÕ´Ï´Ù.
+   }
+}
+else
+{
+   msgbox, ¿Í¿ì`, Á¤¸» ¸ÚÁø ÀÚµ¿Â÷¸¦ °¡Áö¼Ì±º¿ä.
+}
+
+ Wiki¿¡ ´Ù¾çÇÑ ½ºÅ¸ÀÏ°ú ¿¹Á¦°¡ ÀÖ½À´Ï´Ù. ¿©·¯ºÐÀÌ Àб⿡ °¡Àå ½±´Ù°í »ý°¢ÇÏ´Â ½ºÅ¸ÀÏÀ» °ñ¶ó µé¿©¾²±â ÇÏ´Â ¹ýÀ» ¹è¿ì½Ê½Ã¿À.
+ http://en.wikipedia.org/wiki/Indent_style +
+ +

e. µµ¿ò ¿äûÇϱâ

+ ¹°¾îº¸±â Àü¿¡, ¸ÕÀú ½º½º·Î ¿¬±¸ÇØ º¾´Ï´Ù. ¶Ç´Â ½º½º·Î ÄÚµåÇØ º¾´Ï´Ù. + °á°ú°¡ ¸¸Á·½º·´Áö ¸øÇÏ´Ù¸é, ¾Æ·¡¸¦ ÀÐ¾î º¸½Ê½Ã¿À. +
    +
  • µÎ·Á¿ö ÇÏÁö ¸»°í µµ¿òÀ» ûÇÕ´Ï´Ù. °¡Àå ¶È¶ÈÇÑ »ç¶÷µéÁ¶Â÷ ´Ù¸¥ ÀÌ¿¡°Ô µµ¿òÀ» ±¸ÇÕ´Ï´Ù.
  • +
  • ¹«¾ùÀ» ½ÃµµÇÏ°í ÀÖ´ÂÁö µÎ·Á¿ö ÇÏÁö ¸»°í º¸¿©ÁÝ´Ï´Ù. ½ÉÁö¾î ¸»µµ ¾ÈµÇ´Â °ÍÀ̶ó°í »ý°¢ÇÒÁö¶óµµ ¸»ÀÔ´Ï´Ù.
  • +
  • ½ÃµµÇØ º» °ÍµéÀ» ¸ðµÎ °Ô½ÃÇÕ´Ï´Ù.
  • +
  • ¿©·¯ºÐÀ» Á¦¿ÜÇÏ°í ´©±¸µç ¸ÛûÇؼ­ ¾Æ¹«°Íµµ ¸ð¸¥´Ù°í »ý°¢ÇϽʽÿÀ. µÇµµ·ÏÀÌ¸é ¸¹Àº Á¤º¸¸¦ Á־ ¹Ùº¸µé¿¡°Ô ¹«¾ùÀ» ÇÏ·Á°í ÇÏ´ÂÁö Àϱú¿ö ÁֽʽÿÀ. ¿ì¸®¸¦ µ½´Â °ÍÀÌ ¹Ù·Î ¿©·¯ºÐÀ» µ½´Â °ÍÀÔ´Ï´Ù.
  • +
  • Àγ» ÇϽʽÿÀ.
  • +
  • Á¤Áß ÇϽʽÿÀ.
  • +
  • ´ÙÀ½À» ¿©½Ê½Ã¿À.
  • +
  • Ä£Àý ÇϽʽÿÀ.
  • +
  • Áñ±â½Ê½Ã¿À
  • +
+ + ¹Ù·Î ´äÀ» ¾òÁö ¸øÇÏ´õ¶óµµ, Àû¾îµµ ÇÏ·ç (24 ½Ã°£)Àº ±â´Ù¸° ÈÄ¿¡ µµ¿òÀ» ´õ ¿äûÇÕ´Ï´Ù. ¿ì¸®µµ ±â²¨ÀÌ µµ¿ÍÁÖ°í ½ÍÁö¸¸, ½Ã°£ÀÌ ³ª¾ß µµ¿ÍÁÙ ¼ö ÀÖ½À´Ï´Ù. + ÀÏÀ» ÇÏ°í ÀÖÀ» ¼öµµ ÀÖ°í, ÀáÀڰųª, °ÔÀÓÇϰųª, °¡Á·°ú ÇÔ²²À̰ųª ¾Æ´Ï¸é ±×³É ¹Ù»Ü ¼ö ÀÖ½À´Ï´Ù.
+ µµ¿òÀ» ±â´Ù¸®´Â µ¿¾È, ½º½º·Î ½ÃµµÇϸ鼭 ¹è¿ï ¼ö ÀÖ½À´Ï´Ù. + µµ¿ò¾øÀÌ ½º½º·Î ¹º°¡¸¦ ÀÌ·ç¸é Å« º¸¶÷À» ´À³¢½Ç °ÍÀÔ´Ï´Ù. + +

f. ´Ù¸¥ ¸µÅ©µé

+

+ ÀÚÁÖ ¹¯´Â Áú¹®µé (FAQ) +

+
+
+
+ + diff --git a/src/docs/Variables.htm b/src/docs/Variables.htm new file mode 100644 index 0000000..61bc9cc --- /dev/null +++ b/src/docs/Variables.htm @@ -0,0 +1,893 @@ + + +Variables and Expressions + + + + + + + +

º¯¼ö¿Í Ç¥Çö½Ä

+ +

¸ñÂ÷

+ +

º¯¼ö

+

º¯¼ö À¯Çü: ¿ÀÅäÇÖÅ°´Â ¸í½ÃÀûÀ¸·Î Á¤ÀÇµÈ º¯¼ö À¯ÇüÀÌ ¾ø½À´Ï´Ù. ±×·¸Áö¸¸, ¼ýÀÚ¸¸ µé¾î ÀÖ´Â º¯¼ö´Â (¼±ÅÃÀûÀ¸·Î ¼Ò¼öÁ¡ÀÌ ÀÖÀ¸¸é) ¼öÇÐ ¿¬»êÀ̳ª ºñ±³°¡ ÇÊ¿äÇÒ °æ¿ì ÀÚµ¿À¸·Î ¼ýÀÚ·Î ÀÌÇØÇÕ´Ï´Ù (¼öÇ༺´ÉÀ» °³¼±Çϱâ À§ÇØ, ¼ýÀÚ´Â ³»ºÎÀûÀ¸·Î ij½¬¸¦ Çؼ­ ¹®ÀÚ¿­°úÀÇ »óÈ£º¯È¯À» ÇÇÇÕ´Ï´Ù.)

+

º¯¼ö ¿µ¿ª°ú ¼±¾ð: ÇÔ¼ö¿¡¼­ Áö¿ª º¯¼ö¸¦ Á¦¿ÜÇÏ°í, ¸ðµç º¯¼ö´Â Àü¿ªÀûÀÔ´Ï´Ù; Áï, ½ºÅ©¸³Æ®ÀÇ ¾îµð¿¡¼­µç ±× ³»¿ëÀ» Àаųª º¯°æÇÒ ¼ö ÀÖ½À´Ï´Ù. ÇÔ¼ö ÆäÀÌÁö¿¡ Àû½ÃÇÑ ¶§¸¦ Á¦¿ÜÇÏ°í, º¯¼ö´Â ¼±¾ðÇÒ ÇÊ¿ä°¡ ¾ø½À´Ï´Ù; ±×³É »ç¿ëÇϸé Á¸ÀçÇÕ´Ï´Ù (°¢ º¯¼ö´Â ºó »óÅ·Π½ÃÀÛÇÕ´Ï´Ù).

+

º¯¼ö À̸§: º¯¼ö À̸§Àº ´ë¼Ò¹®ÀÚ¸¦ ±¸ºÐÇÏÁö ¾Ê½À´Ï´Ù (¿¹¸¦ µé¾î, CurrentDate´Â currentdate¿Í µ¿ÀÏÇÕ´Ï´Ù). º¯¼ö À̸§Àº ±æÀÌ°¡ 253 ¹®ÀÚ±îÁö Çã¿ëµÇ°í ±âÈ£¿Í ¼ýÀÚ ±×¸®°í ´ÙÀ½ ±¸µÎÁ¡ Ç¥½Ãµµ Çã¿ëµË´Ï´Ù: # _ @ $

+

½ºÅ¸ÀÏ °ü·Ê ¶§¹®¿¡, ÀϹÝÀûÀ¸·Î º¯¼ö´Â ±âÈ£¿Í ¼ýÀÚ ±×¸®°í ¹ØÁÙ ¹®ÀÚ¸¸ »ç¿ëÇÏ´Â ÆíÀÌ ´õ ÁÁ½À´Ï´Ù (¿¹¸¦ µé¾î: CursorPosition, Total_Items, ±×¸®°í entry_is_valid). ÀÌ ½ºÅ¸ÀÏÀ» »ç¿ëÇÏ¸é ´Ù¸¥ ¾ð¾î¿¡ Ä£¼÷ÇÑ »ç¶÷µéÀÌ ¿ÀÅäÇÖÅ° ½ºÅ©¸³Æ®¸¦ ´õ ½±°Ô ÀÐÀ» ¼ö ÀÖ½À´Ï´Ù. ¶ÇÇÑ,  ¿ÀÅäÇÖÅ°¿Í °°Àº °ü·Ê¸¦  ´Ù¸¥ ¾ð¾î¿¡ »ç¿ëÇϸé, ¿©·¯ºÐ ÀÚ½ÅÀÇ ½ºÅ©¸³Æ®¸¦ ´Ù½Ã ÀбⰡ ´õ ½±´Ù´Â °ÍÀ» ¾Æ½Ã°Ô µÉ °ÍÀÔ´Ï´Ù.

+

+º¯¼ö À̸§À» ÀüÀûÀ¸·Î ¼ýÀÚ·Î ±¸¼ºÇÒ ¼öµµ ÀÖÁö¸¸, ÀÌ°ÍÀº ÀϹÝÀûÀ¸·Î µé¾î¿À´Â ¸í·É¾î ÁÙ ¸Å°³º¯¼ö¿¡¸¸ »ç¿ëµË´Ï´Ù. ±×·± ¼ýÀÚ À̸§Àº Ç¥Çö½Ä¿¡ »ç¿ëÇÒ ¼ö ¾ø½À´Ï´Ù. ¿Ö³ÄÇÏ¸é º¯¼ö°¡ ¾Æ´Ï¶ó ¼ýÀÚ·Î ÀνĵDZ⠶§¹®ÀÔ´Ï´Ù.

+

+´Ü¾î AND¿Í OR ±×¸®°í NOTÀº Ç¥Çö½Ä¿¡ ¿¬»êÀÚ·Î »ç¿ëµÇ±â ¶§¹®¿¡, ÀϹÝÀûÀ¸·Î º¯¼ö À̸§À¸·Î »ç¿ëÇÏ¸é ¾ÈµË´Ï´Ù. ±×·± À̸§À» Ç¥Çö½Ä¿¡ »ç¿ëÇϸé ÀûÀýÇÏ°Ô Æò°¡µÇÁö ¾ÊÀ» °ÍÀÔ´Ï´Ù.

+

º¯¼ö ¾È¿¡ º¯¼ö¸¦ ÀúÀåÇϱâ: ¹®ÀÚ¿­À̳ª ¼ýÀÚ¸¦ º¯¼ö¿¡ ÀúÀåÇÏ·Á¸é, ÀüÅëÀû ÇÒ´ç°ú Ç¥Çö½Ä ÇÒ´çÀÇ µÎ °¡Áö ¹æ¹ýÀÌ ÀÖ½À´Ï´Ù. +ÀüÅëÀû ¹æ¹ýÀº µîÈ£ ±âÈ£ ¿¬»êÀÚ(=)¸¦ »ç¿ëÇÏ¿© °ãµû¿ÈÇ¥ ¾ø´Â ±âÈ£ ¼ýÀÚ¿­À̳ª ÆÛ¼¾Æ® »çÀο¡ µÑ·¯½ÎÀÎ º¯¼ö¸¦ ÇÒ´çÇÕ´Ï´Ù. ¿¹¸¦ µé¾î:

+
MyNumber = 123
+MyString = ÀÌ°ÍÀº ¹®ÀÚ¿­ÀÔ´Ï´Ù.
+CopyOfVar = %Var%  ; º¯¼öÀÇ ³»¿ëÀ» ¿­¶÷ÇÏ·Á¸é µîÈ£(=) ¿¬»êÀÚ¿Í ÇÔ²² ÆÛ¼¾Æ® »çÀÎÀÌ ÇÊ¿äÇÕ´Ï´Ù.
+

´ëÁ¶ÀûÀ¸·Î, Ç¥Çö½Ä ÇÒ´çÀº ½ÖÁ¡-µîÈ£ ¿¬»êÀÚ (:=)¸¦ »ç¿ëÇÏ¿©, ¼ýÀÚ¿Í °ãµû¿ÈÇ¥ ºÙÀÎ ¹®ÀÚ¿­ ±×¸®°í ±âŸ À¯ÇüÀÇ Ç¥Çö½ÄÀ» ÀúÀåÇÕ´Ï´Ù. ´ÙÀ½ ¿¹Á¦´Â ±â´ÉÀûÀ¸·Î ¾ÕÀÇ ¿¹Á¦¿Í µ¿ÀÏÇÕ´Ï´Ù:

+
MyNumber := 123
+MyString := "ÀÌ°ÍÀº ±âÈ£ ¹®ÀÚ¿­ÀÔ´Ï´Ù."
+CopyOfVar := Var  ; ¾ÕÀÇ ¿¹¿Í ´Ù¸£°Ô, ÆÛ¼¾Æ® »çÀÎÀÌ  := ¿¬»êÀÚ¿¡ »ç¿ëµÇÁö ¾Ê½À´Ï´Ù.
+

´õ ¸í·áÇϱ⠶§¹®¿¡ Ç¥Çö½Ä ÇÒ´çÀ» ¸¹Àº »ç¶÷µéÀÌ ¼±È£ÇÕ´Ï´Ù. ±×¸®°í Ç¥Çö½Ä ÇÒ´çÀÌ Áö¿øÇϴ ǥÇö½Ä ±¸¹®ÀÌ ´Ù¸¥ ¸¹Àº ¾ð¾îÀÇ Ç¥Çö½Ä ±¸¹®°ú °ÅÀÇ µ¿ÀÏÇϱ⠶§¹®ÀÔ´Ï´Ù.

+

+À§¿¡¼­ ´«Ä¡ ä¼Ì°ÚÁö¸¸ º¯¼öÀÇ ³»¿ëÀ» Áö¿ì´Â µ¥¿¡µµ µÎ °¡Áö ¹æ¹ýÀÌ ÀÖ½À´Ï´Ù (Áï, º¯¼ö¸¦ ºñ¿ì·Á¸é):

+
MyVar =
+MyVar := ""
+

+À§¿¡¼­ ºó °ãµû¿ÈÇ¥ ½ÖÀº := ¿¬»êÀÚ¿¡¸¸ »ç¿ëÇØ¾ß Çϴµ¥ = ¿¬»êÀÚ¿Í »ç¿ëÇÏ¸é º¯¼ö ¾È¿¡ µÎ °³ÀÇ °ãµû¿ÈÇ¥ ¹®ÀÚ°¡ ±âÈ£ ±×´ë·Î ÀúÀåµÇ¾î ¹ö¸®±â ¶§¹®ÀÔ´Ï´Ù.

+

º¯¼öÀÇ ³»¿ë ¿­¶÷Çϱâ: °ªÀ» ÀúÀåÇÏ´Â µÎ °¡Áö ¹æ¹ý°ú ¸¶Âù°¡Áö·Î, °ªÀ» ¿­¶÷ÇÏ´Â ¹æ¹ýµµ ¿ª½Ã ÀüÅëÀû ¿­¶÷°ú Ç¥Çö½Ä ¿­¶÷ µÎ °¡ÁöÀÇ ¹æ¹ýÀÌ ÀÖ½À´Ï´Ù. ÀüÅëÀû ¿­¶÷Àº °¢ º¯¼ö À̸§À» ÆÛ¼¾Æ® »çÀÎÀ¸·Î µÑ·¯ ½Î±â¸¦ ¿ä±¸ÇÕ´Ï´Ù. ¿¹¸¦ µé¾î:

+
MsgBox Var º¯¼öÀÇ °ªÀº %Var% ÀÔ´Ï´Ù.
+CopyOfVar = %Var%
+

+´ëÁ¶ÀûÀ¸·Î, Ç¥Çö½Ä ¿­¶÷Àº º¯¼ö À̸§ µÑ·¹¿¡ ÆÛ¼¾Æ® ±âÈ£¸¦ »ý·«ÇÏÁö¸¸, ±âÈ£ ¹®ÀÚ¿­Àº °ãµû¿ÈÇ¥·Î µÑ·¯¾ß ÇÕ´Ï´Ù. ±×·¡¼­, ´ÙÀ½Àº ¾Õ ¿¡Á¦ÀÇ µ¿µîÇÑ Ç¥Çö½ÄÀÔ´Ï´Ù:

+
MsgBox % "The value in the variable named Var is " . Var . "."  ; µÎ °³ÀÇ ¹®ÀÚ¿­À» °áÇÕÇϴµ¥ ¸¶Ä§Ç¥°¡ »ç¿ëµÇ¾ú½À´Ï´Ù.
+CopyOfVar := Var
+

À§ÀÇ MsgBox ÁÙ¿¡¼­, ÆÛ¼¾Æ® »çÀΰú ½ºÆäÀ̽º°¡ ¸Å°³º¯¼ö¸¦ ÀüÅëÀû ¸ðµå¿¡¼­ Ç¥Çö½Ä ¸ðµå·Î ¹Ù²Ù´Âµ¥ »ç¿ëµÇ¾ú½À´Ï´Ù. ÀÌ°ÍÀº ²À ÇÊ¿äÇѵ¥ ÀüÅëÀû ¹æ¹ýÀÌ ¸ðµç ¸í·É¾î¿¡ ±âº»°ªÀ¸·Î »ç¿ëµÇ±â ¶§¹®ÀÔ´Ï´Ù (¹®¼­¿¡ Àû½ÃµÈ °æ¿ì´Â ¿¹¿ÜÀÔ´Ï´Ù). ±×·¸Áö¸¸, ¾î¶² ¸í·É¾îÀÇ ¸Å°³º¯¼öµéÀº Ç¥Çö½ÄÀ» ¹Þ¾Æ µéÀÎ´Ù°í ¹®¼­¿¡ Àû½ÃµÇ¾î ÀÖ½À´Ï´Ù. ±×·± °æ¿ì ¾ÕÀÇ ÆÛ¼¾Æ® »çÀÎÀº Çã¿ëµÇÁö¸¸ Çʼö´Â ¾Æ´Õ´Ï´Ù. ¿¹¸¦ µé¾î, ´ÙÀ½ÀÇ ¸ðµç ¿¹´Â È¿°ú°¡ ¶È °°½À´Ï´Ù. ¿Ö³ÄÇϸé SleepÀÇ Ã¹ ¹ø° ¸Å°³º¯¼ö°¡ Ç¥Çö½ÄÀ» Çã¿ëÇϱ⠶§¹®ÀÔ´Ï´Ù:

+
Sleep MillisecondsToWait
+Sleep %MillisecondsToWait%
+Sleep % MillisecondsToWait
+

+º¯¼ö ºñ±³Çϱâ: ´Ù¾çÇÑ Á¾·ùÀÇ ºñ±³¿¡ °üÇÑ Áß¿äÇÑ °íÁö »çÇ×, ƯÈ÷ ¾ðÁ¦ °ýÈ£¸¦ »ç¿ëÇØ¾ß Çϴ°¡¿¡ °üÇÑ Á¤º¸´Â ¾Æ·¡ÀÇ Ç¥Çö½Ä ¼½¼ÇÀ» ÀÐ¾î º¸½Ê½Ã¿À.

+ +

Ç¥Çö½Ä

+

+Ç¥Çö½ÄÀº ÀÏ·ÃÀÇ º¯¼ö, ±âÈ£ ¹®ÀÚ¿­, ±×¸®°í/¶Ç´Â ±âÈ£ ¼ýÀÚ¿¡ Çϳª ÀÌ»óÀÇ ¿¬»êÀ» ¼öÇàÇÏ´Â µ¥ »ç¿ëµË´Ï´Ù.

+

+º¯¼ö À̸§Àº Ç¥Çö½Ä¿¡¼­ ÆÛ¼¾Æ® »çÀÎÀ¸·Î µÑ·¯½ÎÁö ¾Ê½À´Ï´Ù (ÀÇ»ç-¹è¿­°ú ±âŸ ÀÌÁß ÂüÁ¶´Â Á¦¿ÜÇÕ´Ï´Ù). °á°úÀûÀ¸·Î, ±âÈ£ ¹®ÀÚ¿­Àº °ãµû¿ÈÇ¥·Î µÑ·¯½Î¼­ º¯¼ö¿Í ±¸º°ÇØ¾ß ÇÕ´Ï´Ù. ¿¹¸¦ µé¾î:

+
if (CurrentSetting > 100 or FoundColor <> "Blue")
+    MsgBox ¼³Á¤ÀÌ ³Ê¹« ³ô°Å³ª À߸øµÈ »öÀÌ Á¸ÀçÇÕ´Ï´Ù.
+

+À§ÀÇ ¿¹Á¦¿¡¼­, "Blue"´Â °ãµû¿ÈÇ¥ ¾È¿¡ Àִµ¥ ¿Ö³ÄÇÏ¸é ±âÈ£ ¹®ÀÚ¿­À̱⠶§¹®ÀÔ´Ï´Ù. ½ÇÁ¦·Î Àοë-¹®ÀÚ¸¦ ±âÈ£ ¹®ÀÚ¿­ ¾È¿¡ Æ÷ÇÔÇÏ·Á¸é, µÎ °³ÀÇ °ãµû¿ÈÇ¥¸¦ ¿¬¼ÓÀ¸·Î ÁöÁ¤ÇÕ´Ï´Ù. ´ÙÀ½ ¿¹¿Í °°ÀÌ µÎ ¹ø ³ªÅ¸³ª¾ß ÇÕ´Ï´Ù: "She said, ""An apple a day.""".

+

+Áß¿ä: Ç¥Çö½ÄÀÌ µé¾î ÀÖ´Â if-¼­¼ú¹®Àº ¿¹¸¦ µé¾î If FoundColor <> Blue¿Í °°Àº ÀüÅëÀûÀÎ if-¼­¼ú¹®°ú ´Ù¸¨´Ï´Ù. ´Ü¾î "if" µÚÀÇ ¹®ÀÚ¸¦ ¿©´Â-°ýÈ£·Î ¸¸µì´Ï´Ù. +ÀÌ°ÍÀº º¸Åë Àüü Ç¥Çö½ÄÀ» °ýÈ£·Î µÑ·¯½Î¸é ÇØ°áµÇÁö¸¸, if (x > 0) and (y > 0)¿Í °°ÀÌ Çصµ µË´Ï´Ù. + +°Ô´Ù°¡, ¿©´Â-°ýÈ£´Â ´Ü¾î "if" ´ÙÀ½ÀÇ Ã¹ Ç׸ñÀÌ ÇÔ¼ö È£Ã⠶Ǵ "not" ¶Ç´Â "!"¿Í °°Àº ¿¬»êÀÚÀÏ °æ¿ì ¿ÏÀüÈ÷ »ý·«Çصµ µË´Ï´Ù.

+

ºó ¹®ÀÚ¿­: ºó ¹®ÀÚ¿­À» Ç¥Çö½Ä¿¡ ÁöÁ¤ÇÏ·Á¸é, ºó °ãµû¿ÈÇ¥ ÇÑ ½ÖÀ» »ç¿ëÇÕ´Ï´Ù. ¿¹¸¦ µé¾î, if (MyVar <> "") ¼­¼ú¹®Àº MyVar°¡ ºñ¾î ÀÖÁö ¾ÊÀ¸¸é ÂüÀÔ´Ï´Ù. ±×·¸Áö¸¸, ÀüÅëÀûÀÎ-if¿¡¼­, ÇÑ ½ÖÀÇ ºó °ãµû¿ÈÇ¥´Â ±âÈ£ ±×´ë·Î °£ÁÖÇÕ´Ï´Ù. ¿¹¸¦ µé¾î if MyVar = ""´Â MyVar¿¡ ½ÇÁ¦·Î °ãµû¿ÈÇ¥ ½ÖÀÌ ´ã°Ü ÀÖÀ» °æ¿ì¿¡¸¸ ÂüÀÔ´Ï´Ù. ±×·¡¼­, º¯¼ö°¡ ºñ¾îÀÖ´ÂÁö ÀüÅëÀûÀÎ-if·Î Á¡°ËÇÏ·Á¸é, ´ÙÀ½ ¿¹¿Í °°ÀÌ ¿À¸¥ÂÊ¿¡ ¾Æ¹«°Íµµ ¾øÀÌ = ¶Ç´Â <>¸¦ »ç¿ëÇϽʽÿÀ: if Var =.

+

+°ü·ÃÇؼ­ ¸»¾¸ µå¸®ÀÚ¸é, (x +* 3)¿Í °°ÀÌ ¹«È¿ÇÑ ½ÄÀº ºó ¹®ÀÚ¿­À» »êÃâÇÕ´Ï´Ù.

+

Ç¥Çö½ÄÀÇ °á°ú¸¦ ÀúÀåÇϱâ: °á°ú¸¦ º¯¼ö¿¡ ÀúÀåÇÏ·Á¸é, := ¿¬»êÀÚ¸¦ »ç¿ëÇÕ´Ï´Ù. ¿¹¸¦ µé¾î:

+
NetPrice := Price * (1 - Discount/100)
+

ºÒ¸®¾ð °ª: +Ç¥Çö½ÄÀ» ÂüÀ̳ª °ÅÁþÀ¸·Î Æò°¡ÇÒ ÇÊ¿ä°¡ ÀÖÀ» ¶§ (IF-¼­¼ú¹®Ã³·³), ºó ¶Ç´Â 0ÀÎ °á°ú´Â °ÅÁþÀ¸·Î °£ÁÖµÇ°í ´Ù¸¥ ¸ðµç °á°ú´Â ÂüÀ¸·Î °£Áֵ˴ϴÙ. ¿¹¸¦ µé¾î, ¼­¼ú¹® if ItemCount´Â ItemCount°¡ ºñ¾î Àְųª 0ÀÏ °æ¿ì¿¡¸¸ °ÅÁþÀÔ´Ï´Ù. ºñ½ÁÇÏ°Ô, Ç¥Çö½Ä if not ItemCount´Â ±× ¹Ý´ë °á°ú¸¦ »êÃâÇÕ´Ï´Ù.

+

+NOT/AND/OR/>/=/<¿Í °°Àº ¿¬»êÀÚ´Â ÀÚµ¿À¸·Î Âü ¶Ç´Â °ÅÁþ °ªÀ» »ý»êÇÕ´Ï´Ù: Âü¿¡´Â 1 ±×¸®°í °ÅÁþ¿¡´Â 0À» »êÃâÇÕ´Ï´Ù. ¿¹¸¦ µé¾î, ´ÙÀ½ Ç¥Çö½Ä¿¡¼­, º¯¼ö DoneÀº µÎ Á¶°ÇÁß Çϳª¶óµµ ÂüÀÏ °æ¿ì 1ÀÌ ÇÒ´çµË´Ï´Ù.:

+
Done := A_Index > 5 or FoundIt
+

+À§¿¡¼­ ¾Ï½ÃÇϵíÀÌ, º¯¼ö´Â ±×³É ºñ¿ì°Å³ª 0À» ÇÒ´çÇÏ¸é °ÅÁþ°ªÀ» ´ã´Âµ¥ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. À̸¦ ÀÌ¿ëÇÏ¿©, ´ÜÃà ¼­¼ú¹® if DoneÀ» »ç¿ëÇÏ¸é º¯¼ö DoneÀÌ ÂüÀÎÁö °ÅÁþÀÎÁö Á¡°ËÇÒ ¼ö ÀÖ½À´Ï´Ù.

+

´Ü¾î true¿Í false´Â ³»Àå º¯¼ö·Î¼­ °¢°¢ 1°ú 0À» ´ã°í ÀÖ½À´Ï´Ù. ´ÙÀ½ ¿¹Á¦¿Í °°ÀÌ ½ºÅ©¸³Æ®¸¦ Á» ´õ Àб⠽±°Ô ¸¸µé ¼ö ÀÖ½À´Ï´Ù:

+
CaseSensitive := false
+ContinueSearch := true
+

Á¤¼ö¿Í ºÎµ¿ ¼Ò¼öÁ¡ ¼ö: Ç¥Çö½Ä ¾È¿¡¼­, ¼ýÀÚ´Â ¾È¿¡ ¼Ò¼öÁ¡ÀÌ ÀÖÀ¸¸é ºÎµ¿ ¼Ò¼öÁ¡ ¼ö·Î °£Áֵ˴ϴÙ; ±×·¸Áö ¾ÊÀ¸¸é Á¤¼ö·Î Ãë±ÞÇÕ´Ï´Ù. ´ëºÎºÐÀÇ ¿¬»êÀÚ¿¡ ´ëÇÏ¿© -- ¿¹¸¦ µé¾î µ¡¼À°ú °ö¼À -- µÎ ÀÔ·ÂÁß Çϳª¶óµµ ºÎµ¿ ¼Ò¼öÁ¡ ¼öÀ̸é, ±× °á°úµµ ¿ª½Ã ºÎµ¿ ¼Ò¼öÁ¡ ¼ö°¡ µË´Ï´Ù.

+

+Ç¥Çö½Ä°ú ºñ-Ç¥Çö½Ä ¾È¿¡¼­ ºñ½ÁÇÏ°Ô Á¤¼ö´Â 16Áø¼ö³ª ½ÊÁø¼ö Çü½ÄÀ¸·Î ÀÛ¼ºÇÒ ¼ö ÀÖ½À´Ï´Ù. 16Áø¼ö´Â ¸ðµÎ Á¢µÎ»ç 0x·Î ½ÃÀÛÇÕ´Ï´Ù. ¿¹¸¦ µé¾î, Sleep 0xFF´Â Sleep 255¿Í µ¿µîÇÕ´Ï´Ù. v1.0.46.11+¿¡¼­, °úÇÐÀû Ç¥±â¹ýÀ¸·Î ÀÛ¼ºµÈ ºÎµ¿ ¼Ò¼öÁ¡ ¼ö¸¦ ÀÎÁöÇÕ´Ï´Ù; ±×·¯³ª ¾È¿¡ ¼Ò¼öÁ¡ÀÌ Æ÷ÇԵǾî ÀÖÀ» °æ¿ì¿¡¸¸ ÀÎÁöÇÕ´Ï´Ù (¿¹, 1.0e4 ±×¸®°í -2.1E-4).

+

°­Á¦·Î Ç¥Çö½ÄÀ¸·Î ¸¸µé±â: Ç¥Çö½ÄÀº ¸Å°³º¯¼ö¿¡ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. Á÷Á¢ÀûÀ¸·Î Áö¿øÇÏÁö ¾Ê´õ¶óµµ (OutputVar ¸Å°³º¯¼ö Á¦¿Ü) Ç¥Çö½Ä ¾Õ¿¡ ÆÛ¼¾Æ® »çÀΰú ½ºÆäÀ̽º ¶Ç´Â ÆÛ¼¾Æ® »çÀΰú ÅÇÀ» µÎ¸é µË´Ï´Ù. [v1.1.21+]¿¡¼­, ÀüÅëÀûÀÎ IF ¸í·É¾î¸¦ Á¦¿ÜÇÏ°í ¸ðµç ¸í·É¾îÀÇ InputVar ¸Å°³º¯¼ö¿¡ ÀÌ Á¢µÎ»ç¸¦ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù (´ë½Å¿¡ If (Ç¥Çö½Ä)À» »ç¿ëÇϽʽÿÀ). + +ÀÌ Å×Å©´ÐÀº Á¾Á¾ ¹è¿­¿¡ Á¢±ÙÇÏ´Â µ¥ »ç¿ëµË´Ï´Ù. ¿¹¸¦ µé¾î:

+
FileAppend, % MyArray[i], My File.txt
+FileAppend, % MyPseudoArray%i%, My File.txt
+MsgBox % "The variable MyVar contains " . MyVar . "."
+Loop % Iterations + 1
+WinSet, Transparent, % X + 100
+Control, Choose, % CurrentSelection - 1
+

Ç¥Çö½Ä ¾ÈÀÇ ¿¬»êÀÚ

+

+°ö¼À(*)°ú ³ª´°¼À(/)°ú °°ÀÌ ¿ì¼±¼øÀ§°¡ °°Àº ¿¬»êÀÚ´Â ¿ÞÂÊ¿¡¼­ ¿À¸¥ÂÊ ¼ø¼­·Î Æò°¡µË´Ï´Ù. ´ëÁ¶ÀûÀ¸·Î, µ¡¼À (+)°ú °°ÀÌ ¿ì¼± ¼øÀ§°¡ ³·Àº ¿¬»êÀÚ´Â °ö¼À(*)°ú °°ÀÌ ´õ ³ôÀº ¿¬»êÀÚ ´ÙÀ½¿¡ Æò°¡µË´Ï´Ù. ¿¹¸¦ µé¾î, 3 + 2 * 2´Â 3 + (2 * 2)À¸·Î Æò°¡µË´Ï´Ù. °ýÈ£¸¦ »ç¿ëÇÏ¸é ´ÙÀ½ ¿¹¿Í °°ÀÌ ¿ì¼± ¼øÀ§¸¦ ¿À¹ö¶óÀ̵åÇÒ ¼ö ÀÖ½À´Ï´Ù: (3 + 2) * 2

+

+¾Æ·¡¿¡ Àû½ÃÇÑ ¶§¸¦ Á¦¿ÜÇÏ°í, ¼öÇÐ ¿¬»ê°ú °ü·ÃµÈ ºó °ª (ºó ¹®ÀÚ¿­)Àº ¸ðµÎ 0À¸·Î °£ÁÖµÇÁö ¾Ê½À´Ï´Ù. ´ë½Å¿¡, ¿¡·¯·Î Ãë±ÞÇÕ´Ï´Ù. ±× ¶§¹®¿¡ Ç¥Çö½ÄÀÇ ÀϺΰ¡ ºó ¹®ÀÚ¿­·Î Æò°¡µË´Ï´Ù. ¿¹¸¦ µé¾î, º¯¼ö X°¡ ºñ¾î ÀÖÀ¸¸é, Ç¥Çö½Ä X+1Àº 1ÀÌ ¾Æ´Ï¶ó ºó °ªÀ» »êÃâÇÕ´Ï´Ù.

+ +

Ç¥Çö½Ä ¿¬»êÀÚ (¿ì¼±¼øÀ§°¡ ³ôÀº ¼ø¼­ºÎÅÍ ³ª¿­ÇÕ´Ï´Ù)

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
%Var%

º¯¼ö°¡ Ç¥Çö½Ä ¾È¿¡¼­ ÆÛ¼¾Æ® »çÀο¡ µÑ·¯ ½Î¿© ÀÖÀ¸¸é (¿¹, %Var%), ±× º¯¼ö¿¡ µé¾î ÀÖ´Â °ÍÀº ¾î¶² °ÍÀÌµç ¶Ç´Ù¸¥ º¯¼öÀÇ À̸§À̳ª ºÎºÐ À̸§À¸·Î °£ÁÖÇÕ´Ï´Ù (±×·± º¯¼ö°¡ ¾ø´Ù¸é, %Var%´Â ºó ¹®ÀÚ¿­·Î °áÁ¤µË´Ï´Ù). ÀÌ·± ÀÏÀº ´ÙÀ½ ¿¹¿Í °°ÀÌ ÀÇ»ç-¹è¿­À» ÂüÁ¶ÇÏ´Â µ¥ ÀÚÁÖ »ç¿ëµË´Ï´Ù:

+
Var := MyArray%A_Index% + 100
+

+ ÇÏÀ§ ȣȯÀ» À§ÇØ, "Ç¥Çö½ÄÀÏ ¼ö ÀÖÀ½"À¸·Î ¹®¼­È­µÇ¾î ÀÖ´Â ¸í·É¾î ¸Å°³º¯¼ö´Â ÆÛ¼¾Æ® ±âÈ£ ¾È¿¡ À̸§¸¸ ÀÖ´Â º¯¼ö¿¡¼­ ¸¶Ä¡ ÆÛ¼¾Æ® »çÀÎÀÌ ¾ø´Â °Íó·³ Ãë±ÞÇÕ´Ï´Ù (¿¹, %Var%, ±×·¯³ª Array%i%´Â ¾Æ´Ô). °ýÈ£ ¾È¿¡ ±× ÂüÁ¶¸¦ µÑ·¯½Î¸é ÀÌ·± ÀÏÀ» ÇÇÇÒ ¼ö ÀÖ½À´Ï´Ù; ¿¹, Sleep (%Var%).

+

[AHK_L 52+]: º¸Åë º¯¼ö ¿Ü¿¡µµ, %Var%´Â ȯ°æ º¯¼ö, Ŭ¸³º¸µå, ¶Ç´Â ¿¹¾à/Àбâ-Àü¿ë º¯¼ö·Î °áÁ¤µÉ ¼ö ÀÖ½À´Ï´Ù. revision 52ÀÌÀü¿¡¼­, ÀÌ·± °æ¿ì %Var%´Â ºó ¹®ÀÚ¿­À» »êÃâÇß¾ú½À´Ï´Ù.

x.y[AHK_L 31+]: °´Ã¼ Á¢±Ù. x °´Ã¼¿¡ ¸Þ½îµå¸¦ È£ÃâÇϰųª °ªÀ» ¼³Á¤ÇÏ°í ¾ò½À´Ï´Ù. ¿©±â¿¡¼­ y´Â ±âÈ£ ±×´ë·ÎÀÇ °ªÀÔ´Ï´Ù. °´Ã¼ ±¸¹®À» ÂüÁ¶ÇϽʽÿÀ.
new[v1.1.00+]: ¶Ç´Ù¸¥ °´Ã¼·ÎºÎÅÍ »ó¼Ó¹Þ¾Æ »õ °´Ã¼¸¦ »ý¼ºÇÕ´Ï´Ù. ¿¹¸¦ µé¾î, x := new y´Â Á¾Á¾ x := {base: y}¿Í µ¿µîÇÕ´Ï´Ù. new´Â ´ÙÀ½¿¡ GlobalClass.NestedClassÀÇ ÇüÅ·Πº¯¼ö³ª °£´ÜÇÑ Å¬·¡½º À̸§ÀÌ µû¶ó¿Í¾ß ÇÕ´Ï´Ù. ±×¸®°í ¼±ÅÃÀûÀ¸·Î x := new y(z)¿¡¼­¿Í °°ÀÌ ¸Å°³º¯¼ö°¡ µû¶ó ¿É´Ï´Ù (¿©±â¿¡¼­ y´Â »ç¿ë°¡´ÉÇÏÁö¸¸, ÇÔ¼ö À̸§Àº ¾Æ´Õ´Ï´Ù). + ÀÚ¼¼ÇÑ °ÍÀº ¸ÂÃã °´Ã¼¸¦ ÂüÁ¶ÇϽʽÿÀ.
++
+ --
ÀüÀ§/ÈÄÀ§ Áõ°¨. º¯¼ö¿¡¼­ 1À» ´õÇϰųª »®´Ï´Ù (±×·¯³ª 1.0.46 ÀÌÀü ¹öÀüÀ̸é, ÀÌ°ÍÀº ¿ÀÁ÷ ±× ÀÚü·Î ÇÑ ÁÙ¿¡ »ç¿ëÇØ¾ß ÇÕ´Ï´Ù; ´Ù¸¥ ¿¬»êÀÚ°¡ ¾ø¾î¾ß ÇÕ´Ï´Ù). ¿¬»êÀÚ´Â º¯¼ö À̸§ÀÇ ¾ÕÀ̳ª µÚ¿¡ ³ªÅ¸³³´Ï´Ù. À̸§ ¾Õ¿¡ ³ªÅ¸³ª¸é, ¿¬»êÀÌ Áï½Ã ¼öÇàµÇ°í ±× °á°ú°¡ ´ÙÀ½ ¿¬»ê¿¡ »ç¿ëµË´Ï´Ù. ¿¹¸¦ µé¾î, Var := ++X´Â X¸¦ Áï½Ã Áõ°¡½ÃŲ ´ÙÀ½ ±×ÀÇ °ªÀ» Var¿¡ ÇÒ´çÇÕ´Ï´Ù. ¹Ý´ë·Î, Áõ°¨ ¿¬»êÀÚ°¡ º¯¼ö À̸§ µÚ¿¡ ÀÖÀ¸¸é ±× º¯¼ö°¡ ´ÙÀ½ ¿¬»ê¿¡ »ç¿ëµÇ°í ³­ ÈÄ¿¡ ¿¬»êÀÌ ¼öÇàµË´Ï´Ù. ¿¹¸¦ µé¾î, Var := X++´Â ÇöÀç X°ªÀ» Var¿¡ ÇÒ´çÇÏ°í ³­ ÈÄ¿¡ X¸¦ Áõ°¡½Ãŵ´Ï´Ù. ÇÏÀ§ ȣȯÀÇ ¹®Á¦ ¶§¹®¿¡, ++ °ú -- Áõ°¨ ¿¬»êÀÚ´Â ºó º¯¼ö¸¦ 0À¸·Î Ãë±ÞÇÕ´Ï´Ù. ±×·¯³ª ÇÑ ÁÙ¿¡ Ȧ·Î ÀÖÀ» ¶§¸¸ ±×·¸½À´Ï´Ù; ¿¹¸¦ µé¾î, y:=1, ++x ±×¸®°í MsgBox % ++x´Â µÑ ´Ù x °¡ ºñ¾î ÀÖÀ» ¶§ ºó °á°ú¸¦ »êÃâÇÕ´Ï´Ù.
**Power. ¹Ø¼ö¿Í Áö¼ö ¸ðµÎ ½ÊÁø ¼Ò¼öÁ¡À» ´ãÀ» ¼ö ÀÖ½À´Ï´Ù. Áö¼ö°¡ À½¼öÀ̸é, ±× °á°ú´Â ºÎµ¿ ¼Ò¼öÁ¡ ¼ö·Î Æ÷¸ËµË´Ï´Ù. ¹Ø¼ö¿Í Áö¼ö µÑ ¸ðµÎ Á¤¼öÀÏÁö¶óµµ ±×·¸½À´Ï´Ù. **´Â ¿ì¼± ¼øÀ§°¡ ´ÜÇ× ¸¶À̳ʽº º¸´Ù ³ô±â ¶§¹®¿¡, -2**2´Â -(2**2)·Î Æò°¡µÇ°í ±×·¡¼­ -4¸¦ »êÃâÇÕ´Ï´Ù. ±×·¯¹Ç·Î, ±âÈ£ À½¼ö¸¦ Á¦°öÇÏ·Á¸é, (-2)**2¿Í °°ÀÌ °ýÈ£·Î µÑ·¯½Î½Ê½Ã¿À. ÁÖÀÇ: (-2)**0.5¿Í °°ÀÌ À½ÀÇ ¹Ø¼ö°¡ ºÐ¼ö Áö¼ö¿Í °áÇÕÇÏ´Â °ÍÀº Áö¿øÇÏÁö ¾Ê½À´Ï´Ù; ºó ¹®ÀÚ¿­ÀÌ »êÃâµÉ °ÍÀÔ´Ï´Ù. ±×·¯³ª (-2)**2¿Í (-2)**2.0´Â µÑ ¸ðµÎ Áö¿øÇÕ´Ï´Ù.
-
+ !
+ ~
+ & *

Unary minus (-): »¬¼À ¿¬»êÀÚ¿Í °°Àº ½Éº¼À» »ç¿ëÇÏÁö¸¸, ´ÜÇ× ¸¶À̳ʽº´Â ¿ÀÁ÷ ÇϳªÀÇ Ç׸ñ¿¡¸¸ Àû¿ëµË´Ï´Ù. ¶Ç´Â ´ÙÀ½ µÎ ¿¹Á¦¿¡¼­ º¸¿©ÁÖ´Â ¹Ù¿Í °°ÀÌ ºÎºÐ-Ç¥Çö½Ä¿¡¸¸ Àû¿ëµË´Ï´Ù: -(3 / -x). °ü·ÃÇÏ¿© µ¡ºÙÀδٸé, Ç¥Çö½Ä ¾È¿¡¼­ ´ÜÇ× Ç÷¯½º »çÀÎ(+)Àº ¹«½ÃµË´Ï´Ù.

+

Logical-not (!): ÇÇ¿¬»êÀÚ°¡ ºñ¾î Àְųª 0À̸é, ³í¸®Àû-notÀ» Àû¿ëÇÑ °á°ú´Â 1ÀÔ´Ï´Ù. Âü("true")À̶ó´Â ¶æÀÔ´Ï´Ù. ±×·¸Áö ¾ÊÀ¸¸é ±× °á°ú´Â 0ÀÔ´Ï´Ù (false). ¿¹¸¦ µé¾î: !x or !(y and z). ÁÖÀÇ: ´Ü¾î NOTÀº !¿Í µ¿ÀǾîÀÔ´Ï´Ù. ´Ü !°¡ ´õ ¿ì¼± ¼øÀ§°¡ ³ô½À´Ï´Ù. v1.0.46+¿¡¼­, !!Var¿Í °°ÀÌ ¿¬¼ÓÀûÀÎ ´ÜÇ× ¿¬»êÀÚ°¡ Çã¿ëµË´Ï´Ù. ¿Ö³ÄÇÏ¸é ¿À¸¥ÂÊ¿¡¼­ ¿ÞÂÊ ¼ø¼­·Î Æò°¡µÇ±â ¶§¹®ÀÔ´Ï´Ù.

+

Bitwise-not (~): ÇÇ¿¬»êÀÚÀÇ °¢ ºñÆ®¸¦ µÚÁý½À´Ï´Ù. ÇÇ¿¬»êÀÚ°¡ ºÎµ¿¼Ò¼öÁ¡ °ªÀ̸é, ¸ÕÀú Á¤¼ö·Î ÀÚ¸£°í ³ª¼­ °è»êÇÕ´Ï´Ù. ÇÇ¿¬»êÀÚ°¡ 0ºÎÅÍ 4294967295 (0xffffffff) »çÀÌÀ̸é, ºÎÈ£ ¾ø´Â 32-ºñÆ® °ªÀ¸·Î Ãë±ÞµË´Ï´Ù. ±×·¸Áö ¾ÊÀ¸¸é ºÎÈ£ ÀÖ´Â 64-ºñÆ® °ªÀ¸·Î Ãë±ÞµË´Ï´Ù. ¿¹¸¦ µé¾î, ~0xf0f´Â 0xfffff0f0 (4294963440)À¸·Î Æò°¡µË´Ï´Ù.

+

Address (&): &MyVar´Â ¸Þ¸ð¸®¿¡¼­ MyVarÀÇ ³»¿ëÀÌ ÀÖ´Â ÁÖ¼Ò¸¦ ¿­¶÷ÇÕ´Ï´Ù. ÀÌ ÁÖ¼Ò´Â ÀüÇüÀûÀ¸·Î DllCall ±¸Á¶¿¡ »ç¿ëµË´Ï´Ù. &MyVar´Â ¶Ç ±× º¯¼ö¿¡ ´ëÇÑ ÀÌÁø ¼ýÀÚ¸¦ ij½ÌÇÏ´Â °ÍÀ» ºÒ´ÉÀ¸·Î ¸¸µì´Ï´Ù. ¼öÇÐ °è»êÀ̳ª ¼ýÄ¡ ºñ±³¿¡ »ç¿ëµÇ±â¶óµµ ÇÏ¸é ¼öÇ༺´ÉÀÌ ¶³¾îÁú ¼ö Àֱ⠶§¹®ÀÔ´Ï´Ù. ij½ÌÀº ±×ÀÇ ÁÖ¼Ò°¡ ¹Ù²ð ¶§¸¶´Ù (¿¹, VarSetCapacity()¸¦ ÅëÇÏ¿©) ÀçÈ°¼ºÈ­µË´Ï´Ù.

+

Dereference (*): *Expression´Â ExpressionÀÌ ¼ýÄ¡Çü ¸Þ¸ð¸® ÁÖ¼Ò·Î °áÁ¤µÉ °ÍÀ̶ó°í °£ÁÖÇÕ´Ï´Ù; ±× ÁÖ¼ÒÀÇ ¹ÙÀÌÆ®¸¦ 0ºÎÅÍ 255 »çÀÌÀÇ ¼ýÀÚ·Î ¿­¶÷ÇÕ´Ï´Ù (ÁÖ¼Ò°¡ 0ÀÌ¸é ¾ðÁ¦³ª 0ÀÌ ¿­¶÷µË´Ï´Ù; ±×·¯³ª ´Ù¸¥ ¹«È¿ÇÑ ÁÖ¼Ò´Â ¸ðµÎ ½ºÅ©¸³Æ®°¡ Ãæµ¹ÇÒ ¼ö Àֱ⠶§¹®¿¡ ÇÇÇØ¾ß ÇÕ´Ï´Ù). ±×·¸Áö¸¸, NumGet()Àº ÀϹÝÀûÀ¸·Î ÀÌÁø ¼ýÀÚ¸¦ ¿­¶÷ÇÒ ¶§ ÈξÀ ´õ ¼öÇ༺´ÉÀÌ ÁÁ½À´Ï´Ù.

*
+ /
+ // +

°ö¼À (*): ÀÔ·ÂÀÌ ¸ðµÎ Á¤¼öÀÌ¸é ±× °á°úµµ Á¤¼öÀÔ´Ï´Ù; ±×·¸Áö ¾ÊÀ¸¸é, ºÎµ¿ ¼Ò¼öÁ¡ ¼öÀÔ´Ï´Ù.

+

½Ç¼ö ³ª´°¼À (/): EnvDiv¿Í ´Ù¸£°Ô, ½Ç¼ö ³ª´°¼À(true division)Àº µÎ ÀÔ·ÂÀÌ ¸ðµÎ Á¤¼ö¶óµµ ºÎµ¿ ¼Ò¼öÁ¡ ¼ö¸¦ °á°ú·Î »êÃâÇÕ´Ï´Ù. ¿¹¸¦ µé¾î, 3/2´Â 1ÀÌ ¾Æ´Ï¶ó 1.5¸¦ »êÃâÇÏ°í, 4/2´Â 2°¡ ¾Æ´Ï¶ó 2.0À» »êÃâÇÕ´Ï´Ù.

+

¹Ù´Ú ³ª´°¼À (//): ÀÌÁß-Á¤»ç¼± ¿¬»êÀÚ´Â µÎ ÀÔ·ÂÀÌ ¸ðµÎ Á¤¼öÀÌ¸é ¼º´ÉÀÌ ³ôÀº Á¤¼ö ³ª´°¼ÀÀ» ¼öÇàÇÕ´Ï´Ù. ¿¹¸¦ µé¾î, 5//3´Â 1ÀÌ°í 5//-3Àº -1ÀÔ´Ï´Ù. ÀÔ·Â Áß Çϳª°¡ ºÎµ¿ ¼Ò¼öÁ¡ Çü½ÄÀ̸é, ºÎµ¿ ¼Ò¼öÁ¡ ³ª´°¼ÀÀÌ ¼öÇàµÇ°í ±× °á°ú´Â ¿ÞÂÊÀ¸·Î °¡Àå °¡±î¿î Á¤¼ö·Î À߶ó³À´Ï´Ù. ¿¹¸¦ µé¸é, 5//3.0Àº 1.0ÀÌ°í 5.0//-3Àº -2.0ÀÔ´Ï´Ù. ÀÌ ºÎµ¿ ¼Ò¼öÁ¡ ³ª´©¼ÀÀÌ °á°ú°¡ Á¤¼öÀÓ¿¡µµ ºÒ±¸ÇÏ°í, ºÎµ¿ ¼Ò¼öÁ¡ Çü½ÄÀ¸·Î ÀúÀåµË´Ï´Ù. ±×·¡¼­ ±× °ªÀ» »ç¿ëÇÏ´Â °ÍµéÀº ¸ðµÎ ºÎµ¿ ¼Ò¼öÁ¡ ¼ö¶ó°í ÀνÄÇÕ´Ï´Ù. ³ª¸ÓÁö ¿¬»êÀÚ(modulo)¿¡ °üÇÑ °ÍÀº mod()¸¦ ÂüÁ¶ÇÕ´Ï´Ù.

+

+ *= ¿¬»êÀÚ¿Í /= ¿¬»êÀÚ´Â °£·«ÇÏ°Ô ÇÑ º¯¼ö ¾ÈÀÇ °ªÀ» ´Ù¸¥ °ªÀ¸·Î °öÇϰųª ³ª´©´Â ¹æ¹ýÀÔ´Ï´Ù. ¿¹¸¦ µé¾î, Var*=2´Â Var:=Var*2¿Í °°Àº °á°ú¸¦ »êÃâÇÕ´Ï´Ù (±×·¸Áö¸¸ ÀüÀÚ°¡ ¼öÇ༺´ÉÀÌ ´õ ÁÁ½À´Ï´Ù).

+

0À¸·Î ³ª´©¸é ºó °á°ú (ºó ¹®ÀÚ¿­)ÀÌ »êÃâµË´Ï´Ù.

+
+ -

´õÇÏ°í(+) »®´Ï´Ù (-). °ü·ÃÇؼ­ ¸»¾¸ µå¸®ÀÚ¸é, += ±×¸®°í -= ¿¬»êÀÚ´Â °£·«ÇÏ°Ô º¯¼ö¸¦ Áõ°¡½ÃÅ°°Å³ª °¨¼Ò½ÃÅ°´Â ¹æ¹ýÀÔ´Ï´Ù. ¿¹¸¦ µé¾î, Var+=2´Â Var:=Var+2¿Í °°Àº °á°ú¸¦ »ý»êÇÕ´Ï´Ù (±×·¸Áö¸¸ ÀüÀÚ°¡ ´õ ¼öÇ༺´ÉÀÌ ÁÁ½À´Ï´Ù). ºñ½ÁÇÏ°Ô, Var++, Var--, ++Var, ¶Ç´Â --VarÀ» »ç¿ëÇÏ¸é º¯¼ö¸¦ 1¾¿ Áõ°¡½ÃÅ°°Å³ª °¨¼Ò½Ãų ¼ö ÀÖ½À´Ï´Ù.

+
<<
+ >>
¿ÞÂÊÀ¸·Î ºñÆ® À̵¿ (<<) ±×¸®°í ¿À¸¥ÂÊÀ¸·Î ºñÆ® À̵¿ (>>). »ç¿ë ¹æ¹ý: Value1 << Value2. ºÎµ¿ ¼Ò¼öÁ¡ ¼ö ÀÔ·ÂÀº ¸ÕÀú Á¤¼ö·Î Àß¶ó³»°í ³ª¼­ °è»êµË´Ï´Ù. + + ¿ÞÂÊÀ¸·Î À̵¿ (<<)Àº Value1À» "Value2ÀÇ Á¦°ö". ¸¸Å­ °öÇÏ´Â °Í°ú µ¿µîÇÕ´Ï´Ù. + + ¿À¸¥ÂÊÀ¸·Î À̵¿Àº (>>) Value1À» "Value2ÀÇ Á¦°ö" ¸¸Å­ ³ª´©°í ±× °á°ú¸¦ ¿ÞÂÊÀ¸·Î °¡Àå °¡±î¿î Á¤¼ö·Î °áÁ¤ÇÏ´Â °Í°ú µ¿µîÇÕ´Ï´Ù; + ¿¹¸¦ µé¾î, -3>>1Àº -2ÀÔ´Ï´Ù.
&
+ ^
+ | +
ºñÆ®º°-and (&), ºñÆ®º°-¹èŸÀû-or (^), ±×¸®°í ºñÆ®º°-or (|). °èÅëµµ¿¡¼­, &°¡ ¿ì¼± ¼øÀ§°¡ Á¦ÀÏ ³ô°í |°¡ Á¦ÀÏ ³·½À´Ï´Ù. ºÎµ¿ ¼Ò¼öÁ¡ ¼ö´Â ¸ÕÀú Á¤¼ö·Î ÀÚ¸¥ ´ÙÀ½¿¡ °è»êÇÕ´Ï´Ù.
.

°áÇÕ. Á¡(dot) ¿¬»êÀÚ´Â µÎ °³ÀÇ Ç׸ñÀ» ÇϳªÀÇ ¹®ÀÚ¿­·Î °áÇÕÇÏ´Â µ¥ »ç¿ëµË´Ï´Ù (Á¡ÀÇ ¾çÂÊ¿¡ Àû¾îµµ ÇϳªÀÇ °ø°£ÀÌ ÀÖ¾î¾ß ÇÕ´Ï´Ù). + + Á¡À» »ý·«Çصµ °°Àº °á°ú¸¦ ¾òÀ» ¼ö ÀÖ½À´Ï´Ù (´Ü x -y¿Í °°ÀÌ ¾Ö¸ÅÇϰųª, ¿À¸¥ÂÊ¿¡ ÀÖ´Â Ç׸ñ ¾Õ¿¡ ++ ¶Ç´Â --ÀÌ ÀÖ´Â °æ¿ì´Â Á¦¿ÜÇÕ´Ï´Ù.). + + Á¡ÀÌ »ý·«µÇ¸é, º´ÇÕµÉ Ç׸ñ »çÀÌ¿¡ Àû¾îµµ °ø°£ Çϳª°¡ ÀÖ¾î¾ß ÇÕ´Ï´Ù.
+ ¿¹Á¦ (Ç¥Çö½Ä ¹æ¹ý): Var := "The color is " . FoundColor
+ ¿¹Á¦ (ÀüÅëÀû ¹æ¹ý): Var = The color is %FoundColor%

+

ÇÏÀ§-Ç¥Çö½Äµµ ¿ª½Ã °áÇÕÇÒ ¼ö ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î: Var := "The net price is " . Price * (1 - Discount/100).

+

Á¡À¸·Î (¶Ç´Â ±âŸ ´Ù¸¥ ¿¬»êÀÚ·Î) ½ÃÀÛÇÏ´Â ÁÙÀº ÀÚµ¿À¸·Î À­ ÁÙ¿¡ Ãß°¡µË´Ï´Ù.

~=[AHK_L 31+]: RegExMatch¿¡ ´ëÇÑ ¾àÀÚÀÔ´Ï´Ù. ¿¹¸¦ µé¾î, "abc123" ~= "\d"´Â ErrorLevelÀ» 0À¸·Î ¼³Á¤ÇÏ°í (ù ¹ø° ¼ýÀÚÀÇ À§Ä¡) 4¸¦ »êÃâÇÕ´Ï´Ù. v1.1.03 ÀÌÀü ¹öÀü¿¡¼­, ÀÌ ¿¬»êÀÚ´Â µîÈ£ (=) ¿¬»êÀÚ¿Í ¿ì¼±¼øÀ§°¡ °°¾Ò°í ¿Ïº®ÇÏ°Ô ¹®¼­È­µÇ¾î ÀÖÁö ¾Ê¾Ò½À´Ï´Ù.
>   <
+ >= <=
ÃÊ°ú (>), ¹Ì¸¸ (<), ÀÌ»ó (>=), ±×¸®°í ÀÌÇÏ (<=). + + ÀÔ·Â Áß Çϳª¶óµµ ¼ýÀÚ°¡ ¾Æ´Ï¸é, µÑÀº ¾ËÆĺª ¼øÀ¸·Î ºñ±³µË´Ï´Ù ("55"¿Í °°ÀÌ °ãµû¿ÈÇ¥°¡ ºÙÀº ¹®ÀÚ¿­Àº ÀÌ ¹®¸Æ¿¡¼­ ¾ðÁ¦°¡ ¼ýÀÚ°¡ ¾Æ´Ñ °ÍÀ¸·Î °£Áֵ˴ϴÙ). ºñ±³´Â ´ë¼Ò¹®ÀÚ¸¦ ±¸ºÐÇÏÁö ¾Ê½À´Ï´Ù. StringCaseSense°¡ ÄÑÁ® ÀÖÀ¸¸é ´ë¼Ò¹®ÀÚ¸¦ ±¸ºÐÇؼ­ ºñ±³ÇÕ´Ï´Ù. ´ÙÀ½µµ ÂüÁ¶ÇϽʽÿÀ: Sort
=
+ ==
+ <> !=
µîÈ£ (=), ´ë¼Ò¹®ÀÚ-±¸ºÐ-µîÈ£ (==), ±×¸®°í °°Áö-¾ÊÀ½ (<> ¶Ç´Â !=). + + ¿¬»êÀÚ !=¿Í <>´Â ±â´É¸é¿¡¼­ µ¿ÀÏÇÕ´Ï´Ù. == ¿¬»êÀÚ´Â =¿Í µ¿ÀÏÇÏ°Ô ÇàÀ§ÇÕ´Ï´Ù. ÀÔ·Â Áß Çϳª¶óµµ ¼ýÀÚ°¡ ¾Æ´Ñ °æ¿ì´Â Á¦¿ÜÇϴµ¥, ±× °æ¿ì ==´Â ¾ðÁ¦³ª ´ë¼Ò¹®ÀÚ¸¦ ±¸ºÐÇÏ°í =´Â ¾ðÁ¦³ª ´ë¼Ò¹®ÀÚ¸¦ ±¸ºÐÇÏÁö ¾Ê½À´Ï´Ù (´ë¼Ò¹®ÀÚÀÇ ±¸ºÐÀº StringCaseSense¿¡ ´Þ·Á ÀÖ½À´Ï´Ù). ´ëÁ¶ÀûÀ¸·Î, <>¿Í !=´Â StringCaseSense¿¡ ¼øÁ¾ÇÕ´Ï´Ù. ÁÖÀÇ: "55"¿Í °°ÀÌ °ãµû¿ÈÇ¥ ºÙÀº ±âÈ£ ¹®ÀÚ¿­Àº ¾ðÁ¦³ª ÀÌ ¹®¸Æ¿¡¼­ ¼ýÀÚ°¡ ¾Æ´Ñ °ÍÀ¸·Î °£Áֵ˴ϴÙ.
NOT³í¸®Àû-NOT. ¿ì¼± ¼øÀ§°¡ ³·Àº Á¡À» »©°í´Â ! ¿¬»êÀÚ¿Í µ¿ÀÏÇÕ´Ï´Ù ¿¹¸¦ µé¾î, not (x = 3 or y = 3)´Â !(x = 3 or y = 3)¿Í °°½À´Ï´Ù.
AND
+ &&
µÑ ¸ðµÎ ³í¸®Àû-ANDÀÔ´Ï´Ù. ¿¹¸¦ µé¾î: x > 3 and x < 10. ¼öÇ༺´ÉÀ» °³¼±Çϱâ À§ÇØ, ´ÜÃà-ȸ·Î Æò°¡°¡ Àû¿ëµË´Ï´Ù. ¶ÇÇÑ, AND/OR/&&/|| (¶Ç´Â ±âŸ ´Ù¸¥ ¿¬»êÀÚ)·Î ½ÃÀÛÇÏ´Â ÁÙÀº ÀÚµ¿À¸·Î À­ ÁÙ¿¡ Ãß°¡µË´Ï´Ù.
OR
+ ||
µÑ ¸ðµÎ ³í¸®Àû-ORÀÔ´Ï´Ù. ¿¹¸¦ µé¾î: x <= 3 or x >= 10. ¼öÇ༺´ÉÀ» °³¼±Çϱâ À§ÇØ, ´ÜÃà-ȸ·Î Æò°¡°¡ Àû¿ëµË´Ï´Ù.
?:»ïÁø ¿¬»êÀÚ [v1.0.46+]. ÀÌ ¿¬»êÀÚ´Â if-else ¼­¼ú¹®À» °£·«ÇÏ°Ô ±³Ã¼ÇÑ °ÍÀÔ´Ï´Ù. ¿ÞÂÊÀÇ Á¶°ÇÀ» Æò°¡ÇØ º¸°í µÎ ºÐ±â Áß¿¡¼­ ¾î´À ÂÊÀ» ÃÖÁ¾ °á°ú·Î ÇÒÁö °áÁ¤ÇÕ´Ï´Ù. ¿¹¸¦ µé¾î, var := x>y ? 2 : 3´Â x°¡ yº¸´Ù Å©¸é 2¸¦ Var¿¡ ÀúÀåÇÏ°í; ±×·¸Áö ¾ÊÀ¸¸é 3À» ÀúÀåÇÕ´Ï´Ù. ¼öÇà ¼º´ÉÀ» °³¼±Çϱâ À§ÇÏ¿©, ¿ÀÁ÷ ÂüÀÎ ºÐ±â¸¸ Æò°¡µË´Ï´Ù (´ÜÃà-ȸ·Î Æò°¡¸¦ ÂüÁ¶ÇϽʽÿÀ).
:=
+ +=
+ -=
+ *=
+ /=
+ //=
+ .=
+ |=
+ &=
+ ^=
+ >>=
+ <<=
+

ÇÒ´ç. º¯¼öÀÇ ³»¿ë¿¡ ¿¬»êÀ» ¼öÇàÇÏ°í ±× °á°ú¸¦ ´Ù½Ã °°Àº º¯¼ö¿¡ ÀúÀåÇÕ´Ï´Ù (±×·¯³ª 1.0.46 ÀÌÀü ¹öÀü¿¡¼­´Â ÇÑ ÁÙ À§¿¡¼­ °¡Àå ¿ÞÂÊ ¿¬»êÀڷθ¸ »ç¿ëÇÒ ¼ö ÀÖ¾ú½À´Ï´Ù. ±×¸®°í ¿¬»êÀÚ¸¦ ¾ÕÂÊ ´Ù¼¸ °³±îÁö¸¸ Áö¿øÇß½À´Ï´Ù.). °¡Àå ´Ü¼øÇÑ ÇÒ´ç ¿¬»êÀÚ´Â ½ÖÁ¡-µîÈ£ (:=)ÀÔ´Ï´Ù. Ç¥Çö½ÄÀÇ °á°ú¸¦ º¯¼ö¿¡ ÀúÀåÇÕ´Ï´Ù. ´Ù¸¥ ¿¬»êÀÚµéÀÌ ¾î¶² ÀÏÀ» ÇÏ´ÂÁö ±× ¼³¸íÀº ÀÌ Ç¥¿¡¼­ °ü·Ã ¿£Æ®¸®¸¦ ÂüÁ¶ÇϽʽÿÀ. ¿¹¸¦ µé¾î, Var //= 2´Â ¹Ù´Ú ³ª´°¼ÀÀ» ¼öÇàÇÏ¿© Var¸¦ 2·Î ³ª´« ´ÙÀ½, ±× °á°ú¸¦ ´Ù½Ã Var¿¡ ÀúÀåÇÕ´Ï´Ù. ºñ½ÁÇÏ°Ô, Var .= "abc"´ÂVar := Var . "abc"¸¦ °£·«ÇÏ°Ô ÀÛ¼ºÇÑ °ÍÀÔ´Ï´Ù.

+

+ ´ëºÎºÐÀÇ ´Ù¸¥ ¿¬»êÀÚ¿Í ´Ù¸£°Ô, ÇÒ´çÀº ¿À¸¥ÂÊ¿¡¼­ ¿ÞÂÊÀ¸·Î Æò°¡µË´Ï´Ù. °á°úÀûÀ¸·Î Var1 := Var2 := 0¿Í °°Àº ÁÙÀº Á¦ÀÏ ¸ÕÀú 0À» Var2¿¡ ÇÒ´çÇÑ ´ÙÀ½ Var2¸¦ Var1¿¡ ÇÒ´çÇÕ´Ï´Ù.

+

+ ÇÒ´çÀ» ´Ù¸¥ ¿¬»êÀÚÀÇ ÀÔ·ÂÀ¸·Î »ç¿ëÇϸé, ±×ÀÇ °ªÀº º¯¼ö ÀÚüÀÔ´Ï´Ù. ¿¹¸¦ µé¾î, Ç¥Çö½Ä (Var+=2) > 50´Â Var¿¡ »õ·Î-Áõ°¡µÈ °ªÀÌ 50À» ÃÊ°úÇÒ °æ¿ì¿¡¸¸ ÂüÀÔ´Ï´Ù. + ÀÌ·¸°Ô Çϸé ÇÒ´çÀ» ByRef·Î °Ç³Ú ¼ö Àִµ¥, Áï, ±×ÀÇ ÁÖ¼Ò·Î °Ç³Ú ¼ö ÀÖ½À´Ï´Ù; + ¿¹¸¦ µé¾î: &(x:="abc").

+

+ ÇÒ´ç ¿¬»êÀÚÀÇ ¿ì¼±¼øÀ§´Â ±¸¹® ¿¡·¯¸¦ ÇÇÇϰųª º¸´Ù Á÷°üÀûÀÎ ÇàÀ§¸¦ Á¦°øÇϸé ÀÚµ¿À¸·Î ³ô¾ÆÁý´Ï´Ù. ¿¹¸¦ µé¾î: not x:=y´Â not (x:=y)·Î Æò°¡µË´Ï´Ù. ºñ½ÁÇÏ°Ô, ++Var := X´Â ++(Var := X)À¸·Î Æò°¡µË´Ï´Ù; ±×¸®°í Z>0 ? X:=2 : Y:=2´Â Z>0 ? (X:=2) : (Y:=2)À¸·Î Æò°¡µË´Ï´Ù.

+

+ ÇÏÀ§ ȣȯÀÇ ¹®Á¦ ¶§¹®¿¡ ¾ß±âµÇ´Â ¾Ë·ÁÁø Á¦ÇÑÀÌ ÀÖ½À´Ï´Ù (¹Ì·¡ÀÇ ¹öÀü¿¡¼­´Â ÇØ°áµÉ ¼ö ÀÖ½À´Ï´Ù): +

    +
  1. /=°¡ Ç¥Çö½Ä¿¡¼­ °¡Àå ¿ÞÂÊÀÇ ¿¬»êÀÚÀÌ°í ´ÙÁß-¼­¼ú¹® Ç¥Çö½ÄÀÇ ÀϺΰ¡ ¾Æ´Ï¸é, ¹Ù´Ú ³ª´°¼À(floor division)À» ¼öÇàÇÕ´Ï´Ù. ÀÔ·Â Áß Çϳª¶óµµ ºÎµ¿ ¼Ò¼öÁ¡ ¼ö°¡ ¾Æ´Ï¾î¾ß ÇÕ´Ï´Ù (´Ù¸¥ °æ¿ì´Â ¸ðµÎ, /=´Â ½Ç¼ö ³ª´°¼À(true division)À» ÇÕ´Ï´Ù.); +
  2. ³¯Â¥/½Ã°£ °è»êÀ» +=°ú -= ÀÌ Áö¿øÇÕ´Ï´Ù. ±×·¯³ª ¿ÀÁ÷ ±× ¿¬»êÀÚ°¡ ÇÑ ÁÙÀÇ °¡Àå ¿ÞÂÊ¿¡ Ȧ·Î ÀÖÀ» ¶§¸¸ Áö¿øÇÕ´Ï´Ù; +
  3. ¿¬»êÀÚ +=, -=, ±×¸®°í *= ´Â ºó º¯¼ö¸¦ 0À¸·Î Ãë±ÞÇÕ´Ï´Ù. ±×·¯³ª ÇÑ ÁÙ¿¡ Ȧ·Î ÀÖÀ» °æ¿ì¿¡¸¸ ±×·¸½À´Ï´Ù; ¿¹¸¦ µé¾î, y:=1, x+=1¿Í MsgBox % x-=3´Â µÑ ´Ù x°¡ ºñ¾î ÀÖÀ» ¶§ ºó °á°ú¸¦ »êÃâÇÕ´Ï´Ù. +
+

,

½°Ç¥ (´ÙÁß-¼­¼ú¹®) [v1.0.46+]. ½°Ç¥¸¦ »ç¿ëÇÏ¸é ¿©·¯ ÇÏÀ§ Ç¥Çö½ÄÀ» ÇÑ ÁÙ¿¡ ÀÛ¼ºÇÒ ¼ö ÀÖ½À´Ï´Ù. ´ÙÁß ÇÒ´çÀ̳ª ÇÔ¼ö È£ÃâÀ» ±×·ìÁþ´Âµ¥ ÀÚÁÖ »ç¿ëµË´Ï´Ù. ¿¹¸¦ µé¾î: x:=1, y+=2, ++index, func(). ±×·± ¼­¼ú¹®µéÀº ¿ÞÂÊ¿¡¼­ ¿À¸¥ÂÊÀ¸·Î ¼ø¼­´ë·Î ½ÇÇàµË´Ï´Ù. ÁÖÀÇ: ½°Ç¥·Î (¶Ç´Â ´Ù¸¥ ¿¬»êÀÚ·Î) ½ÃÀÛÇÏ´Â ÁÙÀº ÀÚµ¿À¸·Î À­ ÁÙ¿¡ Ãß°¡µË´Ï´Ù. ´ÙÀ½µµ ÂüÁ¶ÇϽʽÿÀ: ½°Ç¥ÀÇ ¿¬»ê ¼º´É.

+

v1.0.46.01+¿¡¼­, ½°Ç¥ ´ÙÀ½¿¡ °ð¹Ù·Î º¯¼ö°¡ µû¶ó ¿À°í ´ÙÀ½¿¡ µîÈ£ »çÀÎÀÌ ¿À¸é, ±× µîÈ£ »çÀÎÀº ÀÚµ¿À¸·Î ÇÒ´ç (:=)À¸·Î Ãë±ÞµË´Ï´Ù. ¿¹¸¦ µé¾î, ´ÙÀ½Àº ¸ðµÎ ÇÒ´çÀÔ´Ï´Ù: x:=1, y=2, a=b=c. »õ ½ºÅ©¸³Æ®´Â ÀÌ ÇàÀ§¿¡ ÀÇÁ¸ÇÏ¸é ¾ÈµË´Ï´Ù. ³ªÁß¿¡ º¯°æµÉ ¼öµµ Àֱ⠶§¹®ÀÔ´Ï´Ù. ±ÔÄ¢Àº ¿ÀÁ÷ Æò¹üÇÑ º¯¼ö¿¡¸¸ Àû¿ëµÉ »Ó ÀÌÁß-ÂüÁ¶(double-derefs)¿¡´Â Àû¿ëµÇÁö ¾Ê½À´Ï´Ù. ±×·¡¼­ ´ÙÀ½Àº ¿ÀÁ÷ ÇϳªÀÇ ÇҴ縸 ´ã°Ü ÀÖ½À´Ï´Ù: x:=1, %y%=2

mod()
+ round()
+ abs()

ÀÌ°Í°ú ´õºÒ¾î ´Ù¸¥ ³»Àå ¼öÇÐ ÇÔ¼ö´Â ¿©±â¿¡ ±â¼úµÇ¾î ÀÖ½À´Ï´Ù.
func.()

[AHK_L 48+]: °´Ã¼ func¿¡¼­ ºó À̸§ÀÇ ¸Þ½îµå¸¦ È£ÃâÇÏ·Á°í ½ÃµµÇÕ´Ï´Ù. °ü·ÊÀûÀ¸·Î, °´Ã¼ÀÇ "±âº»" ¸Þ½îµå°¡ È£ÃâµË´Ï´Ù. func¿¡ °´Ã¼°¡ ¾ø´Ù¸é, ´ë½Å¿¡ ±âº» º£À̽º °´Ã¼°¡ ¿äûµË´Ï´Ù.

+

[v1.0.95+]: func¿¡ ÇÔ¼ö À̸§ÀÌ ÀÖ´Ù¸é, ±× ÇÔ¼ö°¡ È£ÃâµË´Ï´Ù.

F(p*)[AHK_L 60+]:°¡º¯ ÇÔ¼ö¸¦ ÂüÁ¶ÇϽʽÿÀ.
x[y][AHK_L 31+]: °´Ã¼ Á¢±Ù. °´Ã¼ xÀÇ ¸Þ½îµå¸¦ È£ÃâÇϰųª ¼³Á¤Çϰųª ¾ò½À´Ï´Ù. ¿©±â¿¡¼­ y´Â ¸Å°³º¯¼ö ¸®½ºÆ®À̰ųª °è»êµÈ ¸Þ½îµå À̸§ÀÔ´Ï´Ù. ¹è¿­ ±¸¹®°ú °´Ã¼ ±¸¹®À» ÂüÁ¶ÇÕ´Ï´Ù.
+
+

¼öÇà ¼º´É: v1.0.48+¿¡¼­, ½°Ç¥ ¿¬»êÀÚ´Â º¸Åë º°µµÀÇ Ç¥Çö½ÄÀ» ÀÛ¼ºÇÏ´Â °Íº¸´Ù ´õ ºü¸¨´Ï´Ù. ƯÈ÷ ÇÑ º¯¼ö¸¦ ¶Ç´Ù¸¥ º¯¼ö¿¡ ÇÒ´çÇÒ ¶§ ±×·¸½À´Ï´Ù (¿¹, x:=y, a:=b). Ç¥Çö½ÄÀÌ ¸ðÀÌ°í ¸ð¿© ÇϳªÀÇ Ç¥Çö½ÄÀ¸·Î °áÇÕµÉ ¼ö·Ï ¼öÇ༺´ÉÀÌ Çâ»óµË´Ï´Ù; ¿¹¸¦ µé¾î, ´Ù¼¸°³³ª ¿­ °³ÀÇ ´Ü¼øÇÑ Ç¥Çö½ÄÀ» ÇϳªÀÇ Ç¥Çö½ÄÀ¸·Î °áÇÕÇϸé 5% Á¤µµ ´õ ºü¸¨´Ï´Ù.

+ +

³»Àå º¯¼ö

+

´ÙÀ½ º¯¼öµéÀº ÇÁ·Î±×·¥ ¾È¿¡ ³»ÀåµÇ¾î ÀÖÀ¸¸ç ½ºÅ©¸³Æ®·Î ÂüÁ¶ÇÒ ¼ö ÀÖ½À´Ï´Ù. Clipboard, ErrorLevel, ±×¸®°í ¸í·ÉÁÙ ¸Å°³º¯¼ö´Â Á¦¿ÜÇÏ°í, ÀÌ·± º¯¼öµéÀº Àбâ Àü¿ëÀÔ´Ï´Ù; Áï, ½ºÅ©¸³Æ®°¡ ±× ³»¿ëÀ» Á÷Á¢ÀûÀ¸·Î ¹Ù²Ü ¼ö ¾ø½À´Ï´Ù.

+

¸ñÂ÷

+ +

Ư¼ö ¹®ÀÚ

+ + + + + + + + + +
A_SpaceÀÌ º¯¼ö´Â ½ºÆäÀ̽º ¹®ÀÚ°¡ Çϳª ´ã°Ü ÀÖ½À´Ï´Ù. ÀÚ¼¼ÇÑ °ÍÀº AutoTrimÀ» ÂüÁ¶ÇϽʽÿÀ.
A_TabÀÌ º¯¼ö´Â ÅÇ ¹®ÀÚ Çϳª°¡ ´ã°Ü ÀÖ½À´Ï´Ù. ÀÚ¼¼ÇÑ °ÍÀº AutoTrim À» ÂüÁ¶ÇϽʽÿÀ.
+

½ºÅ©¸³Æ® Ư¼º

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
1, 2, 3, µîµî.ÀÌ º¯¼öµéÀº ½ºÅ©¸³Æ®°¡ ¸í·É¾îÁÙ ¸Å°³º¯¼ö¿Í ÇÔ²² ±âµ¿ÇÒ ¶§¸¶´Ù ÀÚµ¿À¸·Î »ý¼ºµË´Ï´Ù. ¸¶Ä¡ º¸ÅëÀÇ º¯¼ö À̸§Ã³·³ ¶È°°ÀÌ ÂüÁ¶ÇÏ°í º¯°æÇÒ ¼ö ÀÖ½À´Ï´Ù (¿¹: %1%). º¯¼ö %0%¿¡´Â °Ç³×¾îÁø ¸Å°³º¯¼öÀÇ °³¼ö°¡ ´ã°Ü ÀÖ½À´Ï´Ù (¾Æ¹«°Íµµ ¾øÀ¸¸é 0ÀÔ´Ï´Ù). ÀÚ¼¼ÇÑ °ÍÀº ¸í·É¾î ÁÙ ¸Å°³º¯¼ö¸¦ ÂüÁ¶ÇϽʽÿÀ.
A_WorkingDir½ºÅ©¸³Æ®ÀÇ ÇöÀç ÀÛ¾÷ µð·ºÅ丮·Î¼­, ±âº»°ªÀ¸·Î ¿©±â¿¡¼­ ÆÄÀÏ¿¡ Á¢±ÙÇÕ´Ï´Ù. ¸¶Áö¸·ÀÇ ¿ª»ç¼±Àº ·çÆ® µð·ºÅ丮°¡ ¾Æ´Ñ ÇÑ Æ÷ÇÔµÇÁö ¾Ê½À´Ï´Ù. ´ÙÀ½Àº µÎ °³ÀÇ ¿¹ÀÔ´Ï´Ù: C:\ ±×¸®°í C:\My Documents. + SetWorkingDir¸¦ »ç¿ëÇϸé ÀÛ¾÷ µð·ºÅ丮¸¦ ¹Ù²Ü ¼ö ÀÖ½À´Ï´Ù.
A_ScriptDirÇöÀç ½ºÅ©¸³Æ®°¡ À§Ä¡ÇÑ µð·ºÅ丮ÀÇ ¿ÏÀüÇÑ °æ·ÎÀÔ´Ï´Ù. ¸¶Áö¸·ÀÇ ¿ª»ç¼±Àº »ý·«ÇÕ´Ï´Ù (·çÆ® µð·ºÅ丮µµ ¸¶Âù°¡Áö·Î »ý·«ÇÕ´Ï´Ù).
A_ScriptNameÇöÀç ½ºÅ©¸³Æ®ÀÇ ÆÄÀÏ À̸§ÀÔ´Ï´Ù. °æ·Î°¡ ¾ø½À´Ï´Ù. ¿¹, MyScript.ahk.
A_ScriptFullPathÀ§ÀÇ µÎ º¯¼ö¸¦ Á¶ÇÕÇØ ½ºÅ©¸³Æ®¸¦ ¿ÏÀüÇÏ°Ô ÁöÁ¤ÇÕ´Ï´Ù. ¿¹, C:\My Documents\My Script.ahk
A_ScriptHwnd
[v1.1.01+]
½ºÅ©¸³Æ®ÀÇ ¼ûÀº ¸ÞÀΠâÀÇ À¯ÀÏÇÑ ID (HWND/handle)ÀÔ´Ï´Ù.
A_LineNumber

½ºÅ©¸³Æ® ¾È¿¡¼­ ÇöÀç ½ÇÇàÁßÀÎ ÁÙÀÇ ¹øÈ£ÀÔ´Ï´Ù (¶Ç´Â ±×ÀÇ #Include ÆÄÀÏ Áß ÇϳªÀÔ´Ï´Ù). ÀÌ ÁÙ ¹øÈ£´Â ListLinesÀÌ º¸¿©ÁÖ´Â ÁÙ ¹øÈ£¿Í ÀÏÄ¡ÇÕ´Ï´Ù; ´ÙÀ½ ¿¹Á¦¿Í °°ÀÌ ¿¡·¯¸¦ º¸°íÇÒ °æ¿ì¿¡ À¯¿ëÇÏ°Ô »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù: MsgBox ·Î±× ÆÄÀÏ¿¡ ±â·ÏÇÒ ¼ö ¾ø¾úÀ½ (ÁÙ ¹øÈ£: %A_LineNumber%).

+

+ ÄÄÆÄÀÏµÈ ½ºÅ©¸³Æ®´Â ÀÚ½ÅÀÇ ¸ðµç #Include ÆÄÀϵéÀ» ÇϳªÀÇ Ä¿´Ù¶õ ½ºÅ©¸³Æ®·Î º´ÇÕÇØ ³Ö±â ¶§¹®¿¡, ºñ-ÄÄÆÄÀÏ ¸ðµå¿¡¼­ ½ÇÇàÇÒ ¶§¿Í ÁÙ ¹øÈ£°¡ ´Ù¸¦ ¼ö ÀÖ½À´Ï´Ù.

A_LineFileA_LineNumber°¡ ¼ÓÇØ ÀÖ´Â ÆÄÀÏÀÇ Àüü °æ·Î¿Í À̸§ÀÔ´Ï´Ù. A_ScriptFullPath¿Í µ¿ÀÏÇÕ´Ï´Ù. ¹°·Ð + ±× ÁÙÀÌ ºñ-ÄÄÆÄÀÏµÈ ½ºÅ©¸³Æ®ÀÇ #Include ÆÄÀÏ Áß Çϳª¿¡ ¼ÓÇØ ÀÖÁö ¾Ê¾Æ¾ß ÇÕ´Ï´Ù.
A_ThisFunc
+ [v1.0.46.16+]
ÇöÀç ½ÇÇà ÁßÀÎ »ç¿ëÀÚ-Á¤ÀÇ ÇÔ¼öÀÇ À̸§ÀÔ´Ï´Ù (¾øÀ¸¸é ºñ¾î ÀÖ½À´Ï´Ù); ¿¹¸¦ µé¾î: MyFunction. ´ÙÀ½µµ ÂüÁ¶ÇϽʽÿÀ: IsFunc()
A_ThisLabel
+ [v1.0.46.16+]
ÇöÀç ½ÇÇà ÁßÀÎ ¶óº§ (¼­ºê·çƾ)ÀÇ À̸§ÀÔ´Ï´Ù (¾øÀ¸¸é ºñ¾î ÀÖ½À´Ï´Ù); ¿¹¸¦ µé¾î: MyLabel. ½ºÅ©¸³Æ®°¡ Gosub/Return ¶Ç´Â Goto¸¦ ½ÇÇàÇÒ ¶§¸¶´Ù °»½ÅµË´Ï´Ù. ¶Ç ÀÚµ¿À¸·Î-È£ÃâµÇ´Â ¶óº§¿¡ ´ëÇؼ­µµ °»½ÅµË´Ï´Ù. ¿©±â¿¡´Â ŸÀ̸Ó, GUI ¾²·¹µå, ¸Þ´º Ç׸ñ, ÇÖÅ°, ÇÖ½ºÆ®¸µ, OnClipboardChange (¶óº§), ±×¸®°í OnExitÀÌ ÀÖ½À´Ï´Ù. + ±×·¸Áö¸¸, ½ÇÇàÀÌ À§ÀÇ ÀÚµ¿-È£Ã⠶󺧷κÎÅÍ ¶Ç´Ù¸¥ ¶óº§·Î "¶³¾îÁö´Â"°æ¿ì A_ThisLabel´Â °»½ÅµÇÁö ¾Ê½À´Ï´Ù; ±×·± ÀÏÀÌ ÀϾ¸é, A_ThisLabelÀº ÀÌÀüÀÇ °ªÀ» À¯ÁöÇÕ´Ï´Ù. ´ÙÀ½µµ ÂüÁ¶ÇϽʽÿÀ: A_ThisHotkey ±×¸®°í IsLabel()
A_AhkVersion1.0.22 ÀÌÀü ¹öÀü¿¡¼­, ÀÌ º¯¼ö´Â ºñ¾î ÀÖ½À´Ï´Ù. ±×·¸Áö ¾ÊÀ¸¸é, ½ºÅ©¸³Æ®¸¦ ½ÇÇàÇÏ°í ÀÖ´Â ¿ÀÅäÇÖÅ°ÀÇ ¹öÀüÀÌ ´ã±é´Ï´Ù. ¿¹, 1.0.22. ÄÄÆÄÀÏµÈ ½ºÅ©¸³Æ®ÀÇ °æ¿ì, ¿ø·¡ ÄÄÆÄÀÏ¿¡ »ç¿ëµÈ ¹öÀüÀÌ º¸°íµË´Ï´Ù. ¹öÀü ¹øÈ£ÀÇ Çü½ÄÀ» º¸°í ½ºÅ©¸³Æ®´Â A_AhkVersionÀÌ ´ÙÀ½ ¿¹¿Í °°ÀÌ > ¶Ç´Â >=·Î ÃÖ¼ÒÇÑÀÇ ¹öÀü ¹øÈ£º¸´Ù Å«Áö Á¡°ËÇÒ ¼ö ÀÖ½À´Ï´Ù: if A_AhkVersion >= 1.0.25.07.
A_AhkPath

ºñ-ÄÄÆÄÀÏ ½ºÅ©¸³Æ®¶ó¸é: ÇöÀç ½ºÅ©¸³Æ®¸¦ ½ÇÁ¦·Î ½ÇÇàÁßÀÎ EXE ÆÄÀÏÀÇ À̸§°ú Àüü °æ·ÎÀÔ´Ï´Ù. ¿¹¸¦ µé¾î: C:\Program Files\AutoHotkey\AutoHotkey.exe

+

ÄÄÆÄÀÏµÈ ½ºÅ©¸³Æ®¶ó¸é: À§¿Í °°Áö¸¸ ¿¹¿Ü´Â AutoHotkey µð·ºÅ丮°¡ ·¹Áö½ºÆ®¸® HKEY_LOCAL_MACHINE\SOFTWARE\AutoHotkey\InstallDir ¿£Æ®¸®¸¦ ÅëÇÏ¿© ¹ß°ßµÈ´Ù´Â °ÍÀÔ´Ï´Ù. ±×·± ¿£Æ®¸®°¡ ¾ø´Ù¸é, A_AhkPath´Â ºñ¾î ÀÖ½À´Ï´Ù.

A_IsUnicode¹®ÀÚ¿­ÀÌ À¯´ÏÄÚµå (16-ºñÆ®)À̸é 1ÀÌ ANSI (8-ºñÆ®)ÀÌ¸é ºó ¹®ÀÚ¿­ÀÌ ´ã±é´Ï´Ù (°ÅÁþÀ¸·Î °£ÁÖµÊ). ¹®ÀÚ¿­ÀÇ Çü½ÄÀº ½ºÅ©¸³Æ®¸¦ ½ÇÇàÇÏ´Â µ¥ »ç¿ëµÈ AutoHotkey.exe ¹öÀü¿¡ µû¶ó ´Ù¸¨´Ï´Ù. ÄÄÆÄÀÏµÈ ½ºÅ©¸³Æ®¶ó¸é, ÄÄÆÄÀÏ¿¡ »ç¿ëµÈ ½ÇÇàÆÄÀÏ¿¡ µû¶ó ´Ù¸¨´Ï´Ù.
A_IsCompiled½ºÅ©¸³Æ®°¡ ÄÄÆÄÀÏ µÈ EXE·Î ½ÇÇàµÇ¸é 1ÀÌ ±×·¸Áö ¾ÊÀ¸¸é ºó ¹®ÀÚ¿­ÀÌ ´ã±é´Ï´Ù (°ÅÁþÀ¸·Î °£ÁÖ).
A_ExitReason½ºÅ©¸³Æ®¸¦ ³¡³»°Ô µÈ °¡Àå ÃÖ±ÙÀÇ ÀÌÀ¯ÀÔ´Ï´Ù. ÀÌ º¯¼ö´Â ½ºÅ©¸³Æ®¿¡ OnExit ¼­ºê·çƾÀÌ ÀÖ°í ±× ¼­ºê·çƾÀÌ ÇöÀç ½ÇÇàÁßÀ̰ųª Á¾·á ½Ãµµ·Î Àû¾îµµ ÇÑ ¹ø È£ÃâµÈ ÀûÀÌ ¾ø´Â ÇÑ, ºñ¾î ÀÖ½À´Ï´Ù. ÀÚ¼¼ÇÑ °ÍÀº OnExitÀ» ÂüÁ¶ÇϽʽÿÀ.
+

³¯Â¥¿Í ½Ã°£

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
A_YYYYÇöÀçÀÇ 4-ÀÚ¸® ³âµµÀÔ´Ï´Ù (¿¹, 2004). A_Year¿Í µ¿ÀǾîÀÔ´Ï´Ù. ÁÖÀÇ: ¿©·¯ºÐÀÇ ·ÎÄÉÀÏ°ú ¾ð¾î¿¡ ´ëÇÏ¿© ÀûÀýÇÏ°Ô Æ÷¸ËµÈ ³¯Â¥¿Í ½Ã°£À» ¿­¶÷ÇÏ·Á¸é, FormatTime, OutputVar (½Ã°£°ú ±ä ³¯Â¥) ¶Ç´Â FormatTime, OutputVar,, LongDate (±ä-Çü½ÄÀÇ ³¯Â¥¸¦ ¿­¶÷)¸¦ »ç¿ëÇϽʽÿÀ.
A_MMÇöÀçÀÇ 2-ÀÚ¸® ¿ùÀÔ´Ï´Ù (01-12). A_Mon¿Í µ¿ÀÏÇÕ´Ï´Ù.
A_DDÇöÀç 2-ÀÚ¸® ¿ùº° ³¯Â¥ÀÔ´Ï´Ù (01-31). A_MDay¿Í µ¿ÀÏÇÕ´Ï´Ù.
A_MMMMÇöÀç »ç¿ëÀÚ ¾ð¾î·Î ÇöÀç ´ÞÀÇ Àüü À̸§ÀÔ´Ï´Ù. ¿¹, July
A_MMMÇöÀç »ç¿ëÀÚ ¾ð¾î·Î ÇöÀç ´ÞÀÇ ¾àÀÚÀÔ´Ï´Ù. ¿¹, Jul
A_DDDDÇöÀç »ç¿ëÀÚ ¾ð¾î·Î ÇöÀç ¿äÀÏÀÇ Àüü À̸§ÀÔ´Ï´Ù. ¿¹, Sunday
A_DDDÇöÀç »ç¿ëÀÚ ¾ð¾î·Î ÇöÀç ¿äÀÏÀÇ 3-¹®ÀÚ ¾à¾îÀÔ´Ï´Ù. ¿¹, Sun
A_WDayÇöÀç ¿äÀÏÀÇ 1-ÀÚ¸® ¼öÀÔ´Ï´Ù (1-7). 1Àº ¸ðµç ·ÎÄÉÀÏ¿¡¼­ ÀÏ¿äÀÏÀÔ´Ï´Ù.
A_YDay¿¬º° ÇöÀç ³¯Â¥ÀÔ´Ï´Ù (1-366). °ªÀº 0À¸·Î ä¿öÁöÁö ¾Ê½À´Ï´Ù. ¿¹¸¦ µé¾î, 0ÀÌ ¿­¶÷µÇÁö, 009°¡ ¿­¶÷µÇ´Â °ÍÀº ¾Æ´Õ´Ï´Ù. 0À¸·Î µ¡´ë¾îÁø °ªÀ» ¿­¶÷ÇÏ·Á¸é, ´ÙÀ½À» »ç¿ëÇÕ´Ï´Ù: FormatTime, OutputVar,, YDay0.
A_YWeekISO 8601¿¡ µû¸¥ ÇöÀç ³âµµ¿Í ÁÖ ¹øÈ£ (¿¹. 200453). ³âµµ¿Í ÁÖ¸¦ °¡¸£·Á¸é StringLeft, Year, A_YWeek, 4 ±×¸®°í StringRight, Week, A_YWeek, 2¸¦ »ç¿ëÇÕ´Ï´Ù. +

+ A_YWeekÀÇ Á¤¹ÐÇÑ Á¤ÀÇ: 1¿ù 1ÀÏÀ» ´ã°í ÀÖ´Â ÁÖ°¡ »õ ÇØ¿¡¼­ 4ÀÏ ÀÌ»óÀ» °¡Áö¸é, ±×°ÍÀ» 1 ¹ø ÁÖ·Î °£ÁÖÇÕ´Ï´Ù. ±×·¸Áö ¾ÊÀ¸¸é, ÀÌÀü ³âµµÀÇ ¸¶Áö¸· ÁÖÀÌ°í, ´ÙÀ½ ÁÖ°¡ 1 ¹ø ÁÖÀÔ´Ï´Ù.

A_Hour24½Ã°£Á¦·Î ÇöÀçÀÇ 2-ÀÚ¸® ½Ã (00-23) (¿¹¸¦ µé¾î, 17´Â ¿ÀÈÄ 5½Ã). AM/PM Ç¥½Ã¿Í ÇÔ²² 12½Ã°£Á¦·Î ¿­¶÷ÇÏ·Á¸é, ´ÙÀ½ ¿¹¸¦ µû¸£½Ê½Ã¿À: FormatTime, OutputVar, , h:mm:ss tt
A_Min

ÇöÀç 2-ÀÚ¸® ºÐ (00-59).

A_SecÇöÀç 2-ÀÚ¸® ÃÊ (00-59).
A_MSecÇöÀç 3-ÀÚ¸® ¹Ð¸®ÃÊ (000-999). ¾ÕÀÇ 0À» Á¦°ÅÇÏ·Á¸é ´ÙÀ½ ¿¹Á¦¸¦ µû¸£½Ê½Ã¿À: Milliseconds := A_MSec + 0.
A_NowYYYYMMDDHH24MISS Çü½ÄÀ¸·Î ÇöÀç ·ÎÄà ½Ã°£ ÀÔ´Ï´Ù. ÁÖÀÇ: ³¯Â¥¿Í ½Ã°£ ¿¬»êÀº EnvAdd ±×¸®°í EnvSub·Î ¼öÇàÇÒ ¼ö ÀÖ½À´Ï´Ù. ¶Ç, FormatTimeÀ¸·Î ³¯Â¥¿Í ½Ã°£À» ¿©·¯ºÐÀÇ ·ÎÄÉÀÏ ¶Ç´Â ±âÈ£¿¡ ¸Â°Ô Æ÷¸ËÇÒ ¼ö ÀÖ½À´Ï´Ù.
A_NowUTCÇöÀçÀÇ ÇùÁ¤ ¼¼°è½Ã(Coordinated Universal Time (UTC))ÀÔ´Ï´Ù. Çü½ÄÀº YYYYMMDDHH24MISSÀÔ´Ï´Ù. + UTC´Â º»ÁúÀûÀ¸·Î ±×¸®´ÏÄ¡ Ç¥ÁؽÃ(Greenwich Mean Time (GMT))°ú ¶È°°½À´Ï´Ù.
A_TickCount

ÄÄÇ»ÅÍ°¡ ¸®ºÎÆÃµÈ ÀÌÈÄ·Î °æ°úÇÑ ¹Ð¸®ÃÊÀÇ °³¼ö. A_TickCount¸¦ º¯¼ö¿¡ ÀúÀåÇØ µÎ°í ³ªÁß¿¡ °¡Àå ¸¶Áö¸· A_TickCount °ª¿¡¼­ »©¾î¼­ °æ°úÇÑ ½Ã°£À» ÃøÁ¤ÇÒ ¼ö ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î:

+
StartTime := A_TickCount
+Sleep, 1000
+ElapsedTime := A_TickCount - StartTime
+MsgBox,  %ElapsedTime% ¹Ð¸®ÃÊ°¡ °æ°úÇÏ¿´½À´Ï´Ù.
+

+A_TickCountÀÇ ¹Ð¸®Ãʺ¸´Ù ´õ Á¤¹ÐÇØ¾ß ÇÑ´Ù¸é, QueryPerformanceCounter()¸¦ »ç¿ëÇÕ´Ï´Ù.

+
+

Script Settings

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
A_IsSuspended½ºÅ©¸³Æ®°¡ º¸·ùÁßÀ̸é(suspended) 1ÀÌ ±×·¸Áö ¾ÊÀ¸¸é 0ÀÌ ´ã±é´Ï´Ù.
A_IsPaused
+ [v1.0.48+]
ÇöÀç ¾²·¹µå ¹Ù·Î ¾Æ·¡ÀÇ ¾²·¹µå°¡ Á¤ÁöµÇ¾î ÀÖÀ¸¸é 1ÀÌ ´ã±é´Ï´Ù. ±×·¸Áö¸¸ 0ÀÌ ´ã±é´Ï´Ù.
A_IsCritical
+ [v1.0.48+]
ÇöÀç ¾²·¹µå¿¡ ´ëÇÏ¿© ÀӰ豸¿ª ¹ÛÀ̸é 0ÀÌ ´ã±é´Ï´Ù. ±×·¸Áö ¾ÊÀ¸¸é 0º¸´Ù Å« Á¤¼ö°ªÀÌ ´ã±é´Ï´Ù. + + Áï, Critical¿¡¼­ ¸Þ½ÃÁö-Á¡°Ë ºóµµ¸¦ »ç¿ëÁßÀÔ´Ï´Ù. + + Critical 0À̸é ÀÓ°è ±¸¿ª Á¡°ËÀ» ²ô±â ¶§¹®¿¡, ÀÓ°è ±¸¿ªÀÇ ÇöÀç »óŸ¦ ÀúÀåÇÏ°í ³ªÁß¿¡ Old_IsCritical := A_IsCritical¸¦ ÇÑ ´ÙÀ½¿¡ Critical %Old_IsCritical%¸¦ ÅëÇÏ¿© º¹±¸ÇÒ ¼ö ÀÖ½À´Ï´Ù.
A_BatchLines(A_NumBatchLines¿Í µ¿ÀǾî) SetBatchLines¿¡ ÀÇÇÏ¿© ¼³Á¤µÈ ÇöÀç °ªÀÔ´Ï´Ù. ¿¹Á¦: 200 ¶Ç´Â 10ms (Æ÷¸Ë¿¡ µû¶ó ´Ù¸§).
A_TitleMatchModeSetTitleMatchMode°¡ ¼³Á¤ÇÑ ÇöÀç ºÎÇÕ¸ðµåÀÔ´Ï´Ù: 1, 2, 3, ¶Ç´Â RegEx.
A_TitleMatchModeSpeedSetTitleMatchMode°¡ ¼³Á¤ÇÑ ÇöÀç ÀÏÄ¡ ¼ÓµµÀÔ´Ï´Ù (fast ¶Ç´Â slow) .
A_DetectHiddenWindowsDetectHiddenWindows°¡ ¼³Á¤ÇÑ ÇöÀç ¸ðµåÀÔ´Ï´Ù (On ¶Ç´Â Off).
A_DetectHiddenTextDetectHiddenText°¡ ¼³Á¤ÇÑ ÇöÀç ¸ðµåÀÔ´Ï´Ù (On ¶Ç´Â Off).
A_AutoTrimAutoTrimÀÌ ¼³Á¤ÇÑ ÇöÀç ¸ðµåÀÔ´Ï´Ù (On ¶Ç´Â Off) .
A_StringCaseSenseStringCaseSense°¡ ¼³Á¤ÇÑ ÇöÀç ¸ðµåÀÔ´Ï´Ù (On, Off, ¶Ç´Â Locale) .
A_FileEncoding[AHK_L 46+] ´Ù¾çÇÑ ¸í·É¾î¿¡ ´ëÇÏ¿© ±âº» ÀÎÄÚµùÀÌ ´ã°Ü ÀÖ½À´Ï´Ù; FileEncoding¸¦ ÂüÁ¶ÇϽʽÿÀ.
A_FormatIntegerSetFormatÀÌ ¼³Á¤ÇÑ ÇöÀç Á¤¼ö Çü½Ä (H ¶Ç´Â D). [AHK_L 42+]: ÀÌ°ÍÀº ¼Ò¹®ÀÚ h¸¦ ´ãÀ» ¼öµµ ÀÖ½À´Ï´Ù.
A_FormatFloatSetFormatÀÌ ¼³Á¤ÇÑ ÇöÀç ºÎµ¿ ¼Ò¼öÁ¡ ¼ö Çü½Ä.
A_KeyDelaySetKeyDelay°¡ ¼³Á¤ÇÑ ÇöÀç Áö¿¬ ½Ã°£ (¾ðÁ¦³ª 10Áø¼ö¸¦ »ç¿ëÇÕ´Ï´Ù). ÀÌ Áö¿¬ ½Ã°£Àº ÀüÅëÀûÀÎ SendEvent ¸ðµå¸¦ À§ÇÑ °ÍÀ̸ç, SendPlay¸¦ À§ÇÑ °ÍÀÌ ¾Æ´Õ´Ï´Ù.
A_WinDelaySetWinDelay°¡ ¼³Á¤ÇÑ ÇöÀç Áö¿¬ ½Ã°£ (¾ðÁ¦³ª ½ÊÁø¹ýÀ» »ç¿ëÇÕ´Ï´Ù).
A_ControlDelaySetControlDelay°¡ ¼³Á¤ÇÑ ÇöÀç Áö¿¬ ½Ã°£ (¾ðÁ¦³ª 10Áø¼ö¸¦ »ç¿ëÇÕ´Ï´Ù).
A_MouseDelaySetMouseDelay°¡ ¼³Á¤ÇÑ ÇöÀç Áö¿¬ ½Ã°£ (¾ðÁ¦³ª ½ÊÁö¼ö¸¦ »ç¿ëÇÕ´Ï´Ù). ÀÌ Áö¿¬Àº ÀüÅëÀûÀÎ SendEvent ¸ðµå¸¦ À§ÇÑ °ÍÀ̸ç, SendPlay¸¦ À§ÇÑ °ÍÀÌ ¾Æ´Õ´Ï´Ù.
A_DefaultMouseSpeedSetDefaultMouseSpeed°¡ ¼³Á¤ÇÑ ÇöÀç ¼Óµµ (¾ðÁ¦³ª ½ÊÁø¹ýÀ» »ç¿ëÇÕ´Ï´Ù. ½ÊÀ°Áø¹ýÀº »ç¿ëÇÏÁö ¾Ê½À´Ï´Ù).
A_RegView[v1.1.08+]: SetRegView°¡ ¼³Á¤ÇÑ ÇöÀç ·¹Áö½ºÆ®¸® ºäÀÔ´Ï´Ù.
A_IconHiddenÆ®·¹ÀÌ ¾ÆÀÌÄÜÀÌ ÇöÀç º¸ÀÌÁö ¾ÊÀ¸¸é 1 ±×·¸Áö ¾ÊÀ¸¸é 0ÀÌ ´ã±é´Ï´Ù. ¾ÆÀÌÄÜÀº #NoTrayIconÀ̳ª Menu ¸í·É¾î¸¦ ÅëÇÏ¿© °¨Ãâ ¼ö ÀÖ½À´Ï´Ù.
A_IconTipÆ®·¹ÀÌ ¾ÆÀÌÄÜ¿¡ ¸ÂÃã ÅøÆÁÀÌ Menu, Tray, TipÀ» ÅëÇÏ¿© ÁöÁ¤µÇ¾î ÀÖÁö ¾ÊÀº ÇÑ, ºñ¾î ÀÖ½À´Ï´Ù -- ÁöÁ¤µÇ¾î ÀÖÀ¸¸é ÅøÆÁ ÅؽºÆ®°¡ ´ã±é´Ï´Ù.
A_IconFile¸ÂÃã Æ®·¹ÀÌ ¾ÆÀÌÄÜÀÌ Menu, tray, iconÀ» ÅëÇÏ¿© ÁöÁ¤µÇ¾î ÀÖÁö ¾ÊÀº ÇÑ ºñ¾î ÀÖ½À´Ï´Ù --ÁöÁ¤ µÇ¾î ÀÖÀ» °æ¿ì ±× ¾ÆÀÌÄÜ ÆÄÀÏÀÇ Àüü °æ·Î¿Í À̸§ÀÌ ´ã±é´Ï´Ù. +

+ ¾Ë·ÁÁø ÇÑ°Ô: ½ºÅ©¸³Æ®°¡ óÀ½ºÎÅÍ »ó´ëÀûÀÎ °æ·Î¸¦ ½Ã½ºÅÛ DLL¿¡ °Ç³Þ´Ù¸é ÀÌ °æ·Î´Â ¿Ã¹Ù¸£Áö ¾ÊÀ» ¼ö ÀÖ½À´Ï´Ù; ¿¹¸¦ µé¾î, Menu, Tray, Icon, user32.dll, 2.

A_IconNumberA_IconFileÀÌ ºñ¾î ÀÖÀ¸¸é ºñ¾î ÀÖ½À´Ï´Ù. ±×·¸Áö ¾ÊÀ¸¸é, A_IconFileÀÇ ¾ÆÀÌÄÜ ¹øÈ£ÀÔ´Ï´Ù (ÀüÇüÀûÀ¸·Î 1).
+

User Idle Time

+ + + + + + + + + +
A_TimeIdleÅ°º¸µå³ª ¸¶¿ì½º ¶Ç´Â ±âŸ ÀÔ·ÂÀ¸·ÎºÎÅÍ ½Ã½ºÅÛÀÌ ÀÔ·ÂÀ» ¹ÞÀº ÀÌÈÄ·Î °æ°úÇÑ ½Ã°£ÀÇ ¹Ð¸®ÃÊ °³¼öÀÔ´Ï´Ù. »ç¿ëÀÚ°¡ ÄÄÇ»ÅÍ ¾Õ¿¡ ÀÖ´ÂÁö ÆÇ´ÜÇϴµ¥ À¯¿ëÇÕ´Ï´Ù. »ç¿ëÀڷκÎÅÍ ¹Þ´Â ¹°¸®Àû ÀԷ°ú ´õºÒ¾î ÇÁ·Î±×·¥À̳ª ½ºÅ©¸³Æ®°¡ ¸¸µé¾î ³»´Â ÀÎÀ§ÀûÀÎ ÀÔ·ÂÀº (Send ¶Ç´Â MouseMove ¸í·É¾î) ÀÌ °ªÀ» ´Ù½Ã 0À¸·Î Àç¼³Á¤ÇÕ´Ï´Ù. ÀÌ °ªÀº 10¾¿ Áõ°¡ÇÏ´Â °æÇâÀÌ Àֱ⠶§¹®¿¡, ´Ù¸¥ °ª°ú °°ÀºÁö ºñ±³ÇÏ¸é ¾ÈµË´Ï´Ù. ´ë½Å¿¡, ´Ù¸¥ °ªº¸´Ù Å«Áö ÀÛÀºÁö·Î ºñ±³ÇϽʽÿÀ. ¿¹¸¦ µé¾î: IfGreater, A_TimeIdle, 600000, MsgBox, ¸¶Áö¸· Å°º¸µå³ª ¸¶¿ì½º È°µ¿ÀÌ Àû¾îµµ 10 ºÐ ÀüÀ̾ú½À´Ï´Ù.
A_TimeIdlePhysical

À§¿Í ºñ½ÁÇÏÁö¸¸ »óÀÀÇÏ´Â °¥°í¸®°¡ ¼³Ä¡µÇ¾î ÀÖÀ¸¸é ÀÎÀ§ÀûÀÎ Å°´­¸²°ú ¸¶¿ì½º Ŭ¸¯À» ¹«½ÃÇÕ´Ï´Ù. (keyboard ¶Ç´Â mouse); Áï, ¿ÀÁ÷ ¹°¸®Àû À̺¥Æ®¿¡¸¸ ÀÀ´äÇÕ´Ï´Ù. (¸¶Ä¡ »ç¿ëÀÚ°¡ Á¸ÀçÇÏ´Â µíÀÌ Å°º¸µå³ª ¸¶¿ì½º Ŭ¸¯À» Èä³»³»´Â °ÍÀ» ¹æÁöÇÕ´Ï´Ù.) °¥°í¸®°¡ ¼³Ä¡µÇ¾î ÀÖÁö ¾ÊÀ¸¸é, ÀÌ °ªÀº A_TimeIdle°ú µ¿µîÇÕ´Ï´Ù. µÑ Áß¿¡ ÇϳªÀÇ °¥°í¸®¸¸ ¼³Ä¡µÇ¾î ÀÖÀ¸¸é, ¹°¸®Àû ÀÔ·ÂÀÇ À¯Çü¸¸ A_TimeIdlePhysical¿¡ ¿µÇâÀ» ¹ÌĨ´Ï´Ù (´Ù¸¥/¼³Ä¡-¾ÈµÈ °¥°í¸®ÀÇ ÀÔ·ÂÀº, ¹°¸®Àû ÀԷ°ú ÀÎÀ§Àû ÀԷ¿¡ ¸ðµÎ ¿µÇâÀÌ ¾ø½À´Ï´Ù).

+

GUI â°ú ¸Þ´º ¹Ù

+ + + + + + + + + + + + + + + + + + + + + + + + + +
A_GuiÇöÀç ¾²·¹µå¸¦ ±âµ¿ÇÑ GUIÀÇ À̸§À̳ª ¹øÈ£ÀÔ´Ï´Ù. ÀÌ º¯¼ö´Â Gui ÄÜÆ®·Ñ, ¸Þ´º ¹Ù Ç׸ñ, ¶Ç´Â GuiClose/GuiEscape¿Í °°Àº À̺¥Æ®°¡ ÇöÀç ¾²·¹µå¸¦ ±âµ¿ÇÏÁö ¾Ê¾Ò´Ù¸é ºñ¾î ÀÖ½À´Ï´Ù.
A_GuiControlÇöÀç ¾²·¹µå¸¦ ±âµ¿ÇÑ ±¸ÀÌ ÄÜÆ®·Ñ¿¡ ¿¬°üµÈ º¯¼öÀÇ À̸§ÀÔ´Ï´Ù. ±¸ÀÌ ÄÜÆ®·Ñ¿¡ ¿¬°ü º¯¼ö°¡ ¾øÀ¸¸é, ´ë½Å¿¡ A_GuiControl¿¡´Â ÇØ´ç ÄÜÆ®·ÑÀÇ ÅؽºÆ®/ĸ¼ÇÀÇ ¾ÕÂÊ 63°³ÀÇ ¹®ÀÚ°¡ ´ã±é´Ï´Ù (°¢ ¹öÆ°¿¡ º¯¼ö À̸§À» ºÎ¿©ÇÏÁö ¾Ê±â À§ÇØ ÀÚÁÖ »ç¿ëµË´Ï´Ù). A_GuiControlÀº ´ÙÀ½°ú °°Àº °æ¿ì ºñ¾î ÀÖ½À´Ï´Ù: +
    +
  1. A_Gui°¡ ºñ¾î ÀÖ´Ù; +
  2. GUI ¸Þ´º ¹Ù Ç׸ñÀ̳ª GuiClose/GuiEscape°ú °°Àº À̺¥Æ®°¡ ÇöÀç ¾²·¹µå¸¦ ±âµ¿½ÃÄ×´Ù; +
  3. ÄÜÆ®·Ñ¿¡ ¿¬°ü º¯¼ö°¡ ¾øÀ¸¸ç ĸ¼Çµµ ¾ø´Ù; +
  4. ¶Ç´Â ÇöÀç ¾²·¹µå¸¦ ±âµ¿½ÃŲ ÃÖÃÊÀÇ ÄÜÆ®·ÑÀÌ (¾Æ¸¶µµ Gui Destroy ¶§¹®¿¡ ´õ ÀÌ»ó Á¸ÀçÇÏÁö ¾Ê´Â´Ù). +
+
A_GuiWidth
+ A_GuiHeight
GuiSize ¼­ºê·çƾ¿¡¼­ ÂüÁ¶ÇÒ ¶§ GUI âÀÇ ³Êºñ¿Í ³ôÀÌ°¡ ´ã±é´Ï´Ù. âÀÇ Å¬¶óÀ̾ðÆ® ±¸¿ª¿¡ Àû¿ëµË´Ï´Ù. Ŭ¶óÀ̾ðÆ® ±¸¿ªÀº ŸÀÌƲ ¹Ù¿Í ¸Þ´º ¹Ù ±×¸®°í Å׵θ®¸¦ Á¦¿ÜÇÑ ±¸¿ªÀÔ´Ï´Ù. [v1.1.11+]: ÀÌ °ªµéÀº DPI ½ºÄÉÀϸµ¿¡ ¿µÇâÀ» ¹Þ½À´Ï´Ù.
A_GuiX
+ A_GuiY
GuiContextMenu À̺¥Æ®¿Í GuiDropFiles À̺£Æ®°¡ ÀϾ ¶§ X ÁÂÇ¥¿Í Y ÁÂÇ¥¸¦ ´ã°í ÀÖ½À´Ï´Ù. ÁÂÇ¥´Â âÀÇ Á»ó ¸ð¼­¸®¿¡ »ó´ëÀûÀÔ´Ï´Ù. [v1.1.11+]: ÀÌ °ªµéÀº DPI ½ºÄÉÀϸµ¿¡ ¿µÇâÀ» ¹Þ½À´Ï´Ù.
A_GuiEvent
¶Ç´Â A_GuiControlEvent

+ + ÇöÀç ¾²·¹µå¸¦ ±âµ¿ÇÑ À̺¥Æ®ÀÇ Á¾·ù. ¾²·¹µå°¡ GUI ÇàÀ§¸¦ ÅëÇÏ¿© ±âµ¿µÇÁö ¾Ê¾Ò´Ù¸é, ÀÌ º¯¼ö´Â ºñ¾î ÀÖ½À´Ï´Ù. ±×·¸Áö ¾ÊÀ¸¸é, ´ÙÀ½ ¹®ÀÚ¿­ Áß Çϳª°¡ ´ã±é´Ï´Ù:

+

Normal: À̺¥Æ®°¡ ¿ÞŬ¸¯ ¶Ç´Â Å°´­¸²À¸·Î ±âµ¿µÇ¾ú½À´Ï´Ù (È­»ìÇ¥ Å°, TAB Å°, ½ºÆäÀ̽º¹Ù, ¹ØÁÙ ´ÜÃàÅ° µîµî.). ÀÌ °ªÀº ¶ÇGuiClose ±×¸®°í GuiEscape¿Í °°Àº Ư¼öÇÑ À̺¥Æ® ±×¸®°í ¸Þ´º ¹Ù Ç׸ñ¿¡µµ »ç¿ëµË´Ï´Ù.

+

DoubleClick: À̺¥Æ®°¡ ´õºíŬ¸¯À¸·Î Ã˹ߵǾú½À´Ï´Ù. ÁÖÀÇ: Ŭ¸¯-½Ö Áß¿¡ ù Ŭ¸¯Àº ¸ÕÀú Normal À̺¥Æ®¸¦ ¹Þ½À´Ï´Ù. ´Ù½Ã ¸»ÇØ, ¼­ºê·çƾÀº µÎ ¹ø ±âµ¿µË´Ï´Ù: ÇÑ ¹øÀº ù Ŭ¸¯¿¡ ±×¸®°í ´Ù½Ã µÎ ¹ø° Ŭ¸¯¿¡ ±âµ¿µË´Ï´Ù.

+

RightClick: ¿ÀÁ÷ GuiContextMenu, ListViews, ±×¸®°í TreeViews¿¡¸¸ ÀϾ´Ï´Ù.

+

¹®¸Æ-°¨Áö °ª: ÀÚ¼¼ÇÑ °ÍÀº GuiContextMenu, GuiDropFiles, Slider, MonthCal, ListView, ±×¸®°í TreeView¸¦ ÂüÁ¶ÇϽʽÿÀ.

+
A_EventInfo

´ÙÀ½ À̺¥Æ®µé¿¡ ´ëÇÑ Ãß°¡ Á¤º¸¸¦ ´ã°í ÀÖ½À´Ï´Ù:

+
+

ÁÖÀÇ: A_ThisHotkey¿Í °°Àº º¯¼ö¿Í ´Ù¸£°Ô, °¢ ¾²·¹µå¸¶´Ù A_Gui, A_GuiControl, A_GuiX/Y, A_GuiEvent, ±×¸®°í A_EventInfo¿¡ ´ëÇÏ¿© ÀÚ½ÅÀÇ °ªÀ» À¯ÁöÇÕ´Ï´Ù. ±×·¯¹Ç·Î, ¾²·¹µå°¡ ´Ù¸¥ ¾²·¹µå¿¡ ÀÇÇØ ÀÎÅÍ·´Æ® µÇ´õ¶óµµ, ½ÇÇàÀ» Àç°³ÇÏ¸é ¿©ÀüÈ÷ ÀÌ °ªµé¿¡¼­ ÀÚ½ÅÀÇ ¿ø·¡/¿Ã¹Ù¸¥ °ªÀ» º¼ ¼ö ÀÖ½À´Ï´Ù.

+ +

ÇÖÅ°, ÇÖ½ºÆ®¸µ, ±×¸®°í ¸ÂÃã ¸Þ´º Ç׸ñ

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
A_ThisMenuItem°¡Àå ÃÖ±Ù¿¡ ¼±ÅÃµÈ ¸ÂÃã ¸Þ´º Ç׸ñÀÇ À̸§ÀÔ´Ï´Ù (¾øÀ¸¸é ºñ¾î ÀÖ½À´Ï´Ù).
A_ThisMenuA_ThisMenuItem°¡ ¼±ÅÃµÈ °÷ÀÇ ¸Þ´º À̸§ÀÔ´Ï´Ù.
A_ThisMenuItemPos¾È¿¡¼­ A_ThisMenuItemÀÇ ÇöÀç À§Ä¡¸¦ °¡¸®Å°´Â ¹øÈ£ÀÔ´Ï´Ù. ¸Þ´º¿¡¼­ ù ¹ø° Ç׸ñÀº 1ÀÌ°í, µÎ ¹ø° Ç׸ñÀº 2, µîµîÀÔ´Ï´Ù. ¸Þ´º °¡¸§ÀÚ ÁÙµµ °è»ê¿¡ µé¾î °©´Ï´Ù. ÀÌ º¯¼ö´Â A_ThisMenu¸Þ´º ¾È¿¡ A_ThisMenuItemÀÌ ºñ¾î Àְųª ´õ ÀÌ»ó Á¸ÀçÇÏÁö ¾ÊÀ¸¸é ºñ¾î ÀÖ½À´Ï´Ù. ¶Ç A_ThisMenu ÀÚü°¡ Á¸ÀçÇÏÁö ¾ÊÀ» °æ¿ì¿¡µµ ºñ¾î ÀÖ½À´Ï´Ù.
A_ThisHotkey

°¡Àå ÃÖ±Ù¿¡ ½ÇÇàµÈ ÇÖÅ° ¶Ç´Â ºñ-ÀÚµ¿-±³Ã¼ ÇÖ½ºÆ®¸µÀÔ´Ï´Ù (¾øÀ¸¸é ºñ¾î ÀÖ½À´Ï´Ù). ¿¹, #z. ÀÌ °ªÀº ÇöÀç ¾²·¹µå°¡ ¶Ç´Ù¸¥ ÇÖÅ°·Î ÀÎÅÍ·´Æ® µÇ¸é º¯ÇÕ´Ï´Ù. ±×·¡¼­ ³ªÁß¿¡ ¼­ºê·çƾ¿¡¼­ »ç¿ëÇϱâ À§ÇØ ¿ø·¡ °ªÀÌ ÇÊ¿äÇÏ´Ù¸é Áï½Ã ¶Ç´Ù¸¥ º¯¼ö¿¡ º¹»çÇϽʽÿÀ.

+

ÇÖÅ°°¡ óÀ½À¸·Î - ½ºÅ©¸³Æ®¿¡¼­ ÇÖÅ° ¸í·É¾î³ª ÀÌÁß-½ÖÁ¡ ¶óº§·Î -- ¸¸µé¾îÁú ¶§, ±×ÀÇ Å° À̸§°ú ±×ÀÇ ¼ö½Ä ½Éº¼ÀÇ ¼ø¼­°¡ ±× ÇÖÅ°ÀÇ ¿µ±¸ÀûÀÎ À̸§ÀÌ µË´Ï´Ù. ±× À̸§À» ÇÖÅ°ÀÇ ¸ðµç º¯ÇüµéÀÌ °øÀ¯ÇÕ´Ï´Ù.

+

´ÙÀ½µµ ÂüÁ¶ÇϽʽÿÀ: A_ThisLabel

A_PriorHotkeyÀ§¿Í °°Áö¸¸ ÀÌÀüÀÇ ÇÖÅ°´Â Á¦¿ÜÇÕ´Ï´Ù. ¾øÀ¸¸é ºñ¾î ÀÖ½À´Ï´Ù.
A_PriorKey[v1.1.01+]: °¡Àå ÃÖ±ÙÀÇ Å°-´©¸§À̳ª Å°-¶Àº¸´Ù ¾Õ¿¡ ´­¸° ¸¶Áö¸· Å°ÀÇ À̸§ÀÔ´Ï´Ù. ¾Æ´Ï¸é Å° È÷½ºÅ丮¿¡¼­ Àû¿ë°¡´ÉÇÑ Å°-´©¸§À» ¹ß°ßÇÒ ¼ö ¾øÀ» °æ¿ì ºñ¾î ÀÖ½À´Ï´Ù. + + ¿ÀÅäÇֱ⠽ºÅ©¸³Æ®°¡ »ý¼ºÇÑ ¸ðµç ÀÔ·ÂÀº ¹èÁ¦µË´Ï´Ù. ÀÌ º¯¼ö¸¦ »ç¿ëÇÏ·Á¸é, Å°º¸µå °¥°í¸®³ª ¸¶¿ì½º °¥°í¸®°¡ ¹Ýµå½Ã ¼³Ä¡µÇ¾î ÀÖ¾î¾ß ÇÏ°í Å° È÷½ºÅ丮°¡ È°¼ºÈ­µÇ¾î ÀÖ¾î¾ß ÇÕ´Ï´Ù.
A_TimeSinceThisHotkey A_ThisHotkey°¡ ´­¸° ÀÌÈÄ·Î °æ°úÇÑ ¹Ð¸®ÃÊÀÇ °³¼öÀÔ´Ï´Ù. A_ThisHotkey°¡ ºô ¶§¸¶´Ù -1ÀÌ µË´Ï´Ù.
A_TimeSincePriorHotkeyA_PriorHotkey°¡ ´­¸° ÀÌÈÄ·Î °æ°úÇÑ ¹Ð¸®ÃÊÀÇ °³¼öÀÔ´Ï´Ù. A_PriorHotkey°¡ ºô ¶§¸¶´Ù -1ÀÌ µË´Ï´Ù.
A_EndChar°¡Àå ÃÖ±ÙÀÇ ºñ-ÀÚµ¿-±³Ã¼-ÇÖ½ºÆ®¸µÀ» Ã˹߽ÃÅ°±â À§ÇØ »ç¿ëÀÚ°¡ ´©¸¥ Á¾·á ¹®ÀÚ(ending character)ÀÔ´Ï´Ù. Á¾·á ¹®ÀÚ¸¦ ( * ¿É¼Ç ¶§¹®¿¡) ¿ä±¸ÇÏÁö ¾Ê¾Ò´Ù¸é, ÀÌ °ªÀº ºñ¾î ÀÖ½À´Ï´Ù.
+

¿î¿µ üÁ¦¿Í »ç¿ëÀÚ Á¤º¸

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ComSpec
+ [v1.0.43.08+]
ComSpec ȯ°æ º¯¼ö¿Í °°Àº ¹®ÀÚ¿­À» ´ã°í ÀÖ½À´Ï´Ù(¿¹, C:\Windows\system32\cmd.exe). Á¾Á¾ Run/RunWait¿Í ÇÔ²² »ç¿ëµË´Ï´Ù. ÁÖÀÇ: ÀÌ º¯¼ö¿¡´Â A_ prefix°¡ ºÙÁö ¾Ê½À´Ï´Ù.
A_Temp
+ [v1.0.43.09+]
Àӽà ÆÄÀÏÀ» º¸À¯Çϵµ·Ï ÁöÁ¤µÈ Æú´õÀÇ Àüü °æ·Î¿Í À̸§ (¿¹, C:\DOCUME~1\UserName\LOCALS~1\Temp). (¼ø¼­´ë·Î) ´ÙÀ½ À§Ä¡ Áß Çϳª¿¡¼­ ¿­¶÷ÇÕ´Ï´Ù: 1) ȯ°æ º¯¼ö TMP, TEMP, ¶Ç´Â USERPROFILE; 2) Windows µð·ºÅ丮.
A_OSType½ÇÇà ÁßÀÎ ¿î¿µ üÁ¦ÀÇ Á¾·ùÀÔ´Ï´Ù. AutoHotkey 1.1Àº ¿ÀÁ÷ NT-±â¹ÝÀÇ ¿î¿µ üÁ¦¸¸ Áö¿øÇϱ⠶§¹®¿¡, ÀÌ °ªÀº ¾ðÁ¦³ª WIN32_NTÀÔ´Ï´Ù. ¿¹Àü ¹öÀüÀº Windows 95/98/ME¿¡¼­ ½ÇÇàµÉ ¶§ WIN32_WINDOWS¸¦ µ¹·ÁÁÝ´Ï´Ù.
A_OSVersion

´ÙÀ½ ¹®ÀÚ¿­ Áß ÇϳªÀÔ´Ï´Ù: WIN_7 [requires AHK_L 42+], WIN_8 [requires v1.1.08+], WIN_8.1 [requires v1.1.15+], WIN_VISTA, WIN_2003, WIN_XP, WIN_2000.

+

+ ȣȯ¼º ¼³Á¤À» ¿ÀÅäÇÖÅ° ½ÇÇàÆÄÀÏÀ̳ª ÄÄÆÄÀÏµÈ ½ºÅ©¸³Æ®ÀÇ Æ¯¼º¿¡ Àû¿ëÇÏ¸é ¿î¿µÃ¼Á¦°¡ ´Ù¸¥ ¹öÀü ¹øÈ£¸¦ µ¹·ÁÁÝ´Ï´Ù. ÀÌ°ÍÀÌ A_OSVersion¿¡ ¹Ý¿µµË´Ï´Ù.

+

[v1.1.20+]: OS ¹öÀüÀ» À§¿¡ ¾ð±ÞÇÑ ¸®½ºÆ®¿¡¼­ ãÀ» ¼ö ¾øÀ¸¸é, ¹®ÀÚ¿­ÀÌ "major.minor.build" ÇüÅ·Π¹ÝȯµË´Ï´Ù. ¿¹¸¦ µé¾î 10 TP´Â 6.4.9841ÀÔ´Ï´Ù.

+
; ÀÌ ¿¹Á¦´Â Æó±âµÇ¾ú½À´Ï´Ù. ÀÌ ¿î¿µÃ¼Á¦´Â ´õ ÀÌ»ó Áö¿øÇÏÁö ¾Ê½À´Ï´Ù.
+if A_OSVersion in WIN_NT4,WIN_95,WIN_98,WIN_ME  ; ÁÖÀÇ: ½°Ç¥ µÑ·¹¿¡ ½ºÆäÀ̽º°¡ ¾øÀ½¿¡ ÁÖÀÇÇÕ´Ï´Ù.
+{
+    MsgBox ÀÌ ½ºÅ©¸³Æ®´Â Windows 2000/XP ÀÌ»óÀ» ¿ä±¸ÇÕ´Ï´Ù.
+    ExitApp
+}
+
A_Is64bitOS[v1.1.08+]: ¿î¿µÃ¼Á¦°¡ 64ºñÆ®À̸é 1 (true) ¶Ç´Â ¿î¿µÃ¼Á¦°¡ 32ºñÆ®À̸é 0 (false)À» ´ã°í ÀÖ½À´Ï´Ù.
A_PtrSize[AHK_L 42+]: Æ÷ÀÎÅÍÀÇ Å©±â¸¦ ¹ÙÀÌÆ® ´ÜÀ§·Î ´ã°í ÀÖ½À´Ï´Ù. ÀÌ°ÍÀº 4 (32-bit) ¶Ç´Â 8 (64-bit)ÀÔ´Ï´Ù. ¾î¶² À¯ÇüÀÇ ½ÇÇàÆÄÀÏÀ» (EXE) ½ºÅ©¸³Æ®°¡ ½ÇÇàÇϴ°¡¿¡ µû¶ó ´Ù¸¨´Ï´Ù.
A_Language½Ã½ºÅÛÀÇ ±âº» ¾ð¾îÀÔ´Ï´Ù ´ÙÀ½ 4-ÀÚ¸® ÄÚµåÁß ÇϳªÀÔ´Ï´Ù.
A_ComputerName³×Æ®¿öÅ©¿¡ º¸¿©Áö´Â ÄÄÇ»ÅÍ À̸§ÀÔ´Ï´Ù.
A_UserNameÀÌ ½ºÅ©¸³Æ®¸¦ ±âµ¿ÇÑ »ç¿ëÀÚÀÇ ·Î±×¿Â À̸§ÀÔ´Ï´Ù.
A_WinDirÀ©µµ¿ìÁî µð·ºÅ丮ÀÔ´Ï´Ù. ¿¹¸¦ µé¾î: C:\Windows
A_ProgramFiles
+ ¶Ç´Â ProgramFiles
ÇÁ·Î±×·¥ ÆÄÀÏ µð·ºÅ丮ÀÔ´Ï´Ù (¿¹, C:\Program Files). v1.0.43.08+¿¡¼­, A_ prefix¸¦ »ý·«Çصµ °¡´ÉÇÕ´Ï´Ù. ±×·¯¸é ½±°Ô #NoEnvÀÌÀüÇÏ´Â µ¥ µµ¿òÀÌ µË´Ï´Ù.
A_AppData
+ [v1.0.43.09+]
ÇöÀç »ç¿ëÀÚ ¾îÇø®ÄÉÀ̼ÇÀÇ Æ¯Á¤ÇÑ µ¥ÀÌÅ͸¦ ´ã°í ÀÖ´Â Æú´õÀÇ Àüü °æ·Î¿Í À̸§ÀÔ´Ï´Ù. ¿¹¸¦ µé¾î: C:\Documents and Settings\Username\Application Data
A_AppDataCommon
+ [v1.0.43.09+]
¸ðµç-»ç¿ëÀÚ ¾îÇø®ÄÉÀ̼ÇÀÇ Æ¯Á¤ÇÑ µ¥ÀÌÅ͸¦ ´ã°í ÀÖ´Â Æú´õÀÇ Àüü °æ·Î¿Í À̸§ÀÔ´Ï´Ù.
A_DesktopÇöÀç »ç¿ëÀÚ µ¥½ºÅ©Å¾ ÆÄÀÏÀ» ´ã°í ÀÖ´Â Æú´õÀÇ Àüü °æ·Î¿Í À̸§ÀÔ´Ï´Ù.
A_DesktopCommon¸ðµç-»ç¿ëÀÚ µ¥½ºÅ©Å¾ ÆÄÀÏÀ» ´ã°í ÀÖ´Â Æú´õÀÇ Àüü °æ·Î¿Í À̸§ÀÔ´Ï´Ù.
A_StartMenuÇöÀç »ç¿ëÀÚÀÌ ½ÃÀÛ ¸Þ´º Æú´õÀÇ Àüü °æ·Î¿Í À̸§ÀÔ´Ï´Ù.
A_StartMenuCommon¸ðµç-»ç¿ëÀÚ ½ÃÀÛ ¸Þ´º Æú´õÀÇ Àüü °æ·Î¿Í À̸§ÀÔ´Ï´Ù.
A_ProgramsÇöÀç »ç¿ëÀÚ ½ÃÀÛ ¸Þ´º¿¡ ÀÖ´Â ÇÁ·Î±×·¥ Æú´õÀÇ Àüü °æ·Î¿Í À̸§ÀÔ´Ï´Ù.
A_ProgramsCommon¸ðµç »ç¿ëÀÚ ½ÃÀÛ ¸Þ´º¿¡ ÀÖ´Â ÇÁ·Î±×·¥ Æú´õÀÇ Àüü °æ·Î¿Í À̸§ÀÔ´Ï´Ù.
A_StartupÇöÀç »ç¿ëÀÚ ½ÃÀÛ ¸Þ´º¿¡ ÀÖ´Â ½ÃÀÛ Æú´õÀÇ Àüü °æ·Î¿Í À̸§ÀÔ´Ï´Ù.
A_StartupCommon¸ðµç-»ç¿ëÀÚ ½ÃÀÛ ¸Þ´º¿¡ ÀÖ´Â ½ÃÀÛ Æú´õÀÇ Àüü °æ·Î¿Í À̸§ÀÔ´Ï´Ù.
A_MyDocumentsÇöÀç »ç¿ëÀÚÀÇ "³ªÀÇ ¹®¼­" Æú´õÀÇ Àüü °æ·Î¿Í À̸§ÀÔ´Ï´Ù. ´ëºÎºÐÀÇ ºñ½ÁÇÑ º¯¼ö¿Í ´Ù¸£°Ô, ÀÌ Æú´õ°¡ µå¶óÀ̺êÀÇ ·çÆ®À̸é, ¸¶Áö¸· ¿ª»ç¼±À» Æ÷ÇÔÇÏÁö ¾Ê½À´Ï´Ù. ¿¹¸¦ µé¾î, M:\°¡ ¾Æ´Ï¶ó M:ÀÌ µË´Ï´Ù.
A_IsAdmin

ÇöÀç »ç¿ëÀÚ°¡ °ü¸®ÀÚ ±ÇÇÑÀÌ ÀÖÀ¸¸é, ÀÌ º¯¼ö´Â 1, ±×·¸Áö ¾ÊÀ¸¸é 0ÀÌ ´ã±é´Ï´Ù.

+

À©µµ¿ìÁî ºñ½ºÅ¸ ÀÌÈÄ¿¡¼­ ¾î¶² ½ºÅ©¸³Æ®´Â ÀûÀýÇÏ°Ô ±â´ÉÀ» ¹ßÈÖÇϱâ À§ÇØ °ü¸®ÀÚ ±ÇÇÑÀ» ¿ä±¸ÇÕ´Ï´Ù (¿¹¸¦ µé¾î ÇÁ·Ô½º³ª â°ú »óÈ£ÀÛ¿ëÇÏ´Â ½ºÅ©¸³Æ®´Â °ü¸®ÀÚ ±ÇÇÑÀ¸·Î ½ÇÇàµË´Ï´Ù). ÀÌ·¸°Ô ÇÏ·Á¸é, ´ÙÀ½À» ½ºÅ©¸³Æ®ÀÇ »ó´Ü¿¡ Ãß°¡ÇϽʽÿÀ:

+
if not A_IsAdmin
+{
+   Run *RunAs "%A_ScriptFullPath%"  ; Requires v1.0.92.01+
+   ExitApp
+}

A_ScreenWidth
+ A_ScreenHeight

±âº» ¸ð´ÏÅÍÀÇ ³Êºñ¿Í ³ôÀÌ, Çȼ¿ ´ÜÀ§ (¿¹, 1024 ±×¸®°í 768).

+

´ÙÁß ¸ð´ÏÅÍ ½Ã½ºÅÛ¿¡¼­ ´Ù¸¥ ¸ð´ÏÅÍÀÇ Å©±â¸¦ ¾Ë·Á¸é, SysGet¸¦ »ç¿ëÇÕ´Ï´Ù.

+

´ë½Å¿¡ (´ÙÁß ¸ð´ÏÅÍ¿¡ °ÉÃÄ ÀÖ´õ¶óµµ) Àüü µ¥½ºÅ©Å¾ÀÇ ³Êºñ¿Í ³ôÀ̸¦ ¾Ë·Á¸é, ´ÙÀ½ ¿¹Á¦¸¦ »ç¿ëÇÕ´Ï´Ù:

+
+SysGet, VirtualWidth, 78
+SysGet, VirtualHeight, 79
+
+

°Ô´Ù°¡, SysGetÀ» »ç¿ëÇÏ¸é ¸ð´ÏÀÇ ÀÛ¾÷ ¿µ¿ªÀ» ¾Ë ¼ö ÀÖ½À´Ï´Ù. ¸ð´ÏÅÍÀÇ Àüü ¿µ¿ªº¸´Ù ´õ ÀÛÀ» ¼ö ÀÖ½À´Ï´Ù. ¿Ö³ÄÇϸé ŽºÅ©¹Ù¿Í ±âŸ µî·ÏµÈ µ¥½ºÅ©Å¾ Åø¹Ù°¡ ¹èÁ¦µÇ¾î Àֱ⠶§¹®ÀÔ´Ï´Ù.

A_ScreenDPI [v1.1.11+]È­¸é ³Êºñ¸¦ µû¶ó ³í¸®Àû ÀÎÄ¡´ç Çȼ¿ÀÇ °³¼öÀÔ´Ï´Ù. ´ÙÁß ¸ð´ÏÅÍ ½Ã½ºÅÛ¿¡¼­, ÀÌ °ªÀº ¸ðµç ¸ð´ÏÅÍ¿¡ ´ëÇÏ¿© °°½À´Ï´Ù. ´ëºÎºÐÀÇ ½Ã½ºÅÛ¿¡ ÀÌ °ªÀº 96ÀÔ´Ï´Ù; ±×·¸Áö¸¸ ½Ã½ºÅÛÀÇ ÅؽºÆ® Å©±â(DPI) ¼³Á¤¿¡ µû¶ó ´Ù¸¨´Ï´Ù. ¶Ç Gui -DPIScaleÀ» ÂüÁ¶ÇϽʽÿÀ.
A_IPAddress1 through 4ÄÄÇ»ÅÍ¿¡¼­ ³×Æ®¿öÅ© ¾î´ðÅÍÀÇ IP ÁÖ¼ÒÀÇ ¾ÕÂÊ 4 ÀÚ¸®ÀÔ´Ï´Ù.
+

±âŸ

+ + + + + + + + + + + + + + + + + + + + + + + + + +
A_Cursor

ÇöÀç È­¸é¿¡ º¸¿©Áö´Â ¸¶¿ì½º Ä¿¼­ÀÇ À¯ÇüÀÔ´Ï´Ù. ´ÙÀ½ ´Ü¾î Áß ÇϳªÀÔ´Ï´Ù:
AppStarting, Arrow, Cross, Help, IBeam, Icon, No, Size, SizeAll, SizeNESW, SizeNS, SizeNWSE, SizeWE, UpArrow, Wait, Unknown. +

+ Size-À¯ÇüÀÇ Ä¿¼­¿¡ »ç¿ëµÈ ¾àÀÚ´Â ¹æÀ§¸¦ ³ªÅ¸³À´Ï´Ù. ¿¹, NESW = NorthEast+SouthWest. + ¼Õ-¸ð¾çÀÇ Ä¿¼­´Â (Âï±â¿Í Àâ±â)´Â UnknownÀ¸·Î ºÐ·ùµÇ¾î ÀÖ½À´Ï´Ù.

A_CaretX
+ A_CaretY

ÇöÀç ij·µ(ÅؽºÆ® »ðÀÔ À§Ä¡)ÀÇ X¿Í Y ÁÂÇ¥ÀÔ´Ï´Ù. ÀÌ ÁÂÇ¥´Â È°¼º â¿¡ »ó´ëÀûÀÔ´Ï´Ù. CoordMode¸¦ »ç¿ëÇÏ¿© Àüü È­¸é¿¡ ´ëÇÏ¿© »ó´ëÀûÀ¸·Î ¸¸µéÁö ¾Ê´Â ÇÑ ¸»ÀÔ´Ï´Ù. È°¼º âÀÌ ¾ø°Å³ª ij·µ À§Ä¡¸¦ °áÁ¤ÇÒ ¼ö ¾øÀ¸¸é, ÀÌ º¯¼ö´Â ºñ¾î ÀÖ½À´Ï´Ù.

+

´ÙÀ½ ½ºÅ©¸³Æ®·Î ij·µÀ» À̵¿½ÃÄѼ­ ±×ÀÇ ÇöÀç À§Ä¡°¡ ÀÚµ¿-°»½Å ÅøÆÁ¿¡ ³ªÅ¸³ª´Â °ÍÀ» º¼ ¼ö ÀÖ½À´Ï´Ù. ¾î¶² âÀº (¿¹, MS Word) ½ÇÁ¦ À§Ä¡¿¡ »ó°ü ¾øÀÌ °°Àº ij·µ À§Ä¡¸¦ º¸°íÇÕ´Ï´Ù.

+
+#Persistent
+SetTimer, WatchCaret, 100
+return
+WatchCaret:
+  ToolTip, X%A_CaretX% Y%A_CaretY%, A_CaretX, A_CaretY - 20
+return
+
+
Clipboard¿î¿µÃ¼Á¦ÀÇ Å¬¸³º¸µå¿¡ ÀÖ´Â ³»¿ëÀÔ´Ï´Ù. ÀÐ°í ¾µ ¼ö ÀÖ½À´Ï´Ù. Ŭ¸³º¸µå ¼½¼ÇÀ» ÂüÁ¶ÇϽʽÿÀ.
ClipboardAllŬ¸³º¸µåÀÇ Àüü ³»¿ëÀÔ´Ï´Ù (Æ÷¸Ë°ú ÅؽºÆ® °°Àº). ClipboardAllÀ» ÂüÁ¶ÇϽʽÿÀ.
ErrorLevelErrorLevelÀ» ÂüÁ¶ÇϽʽÿÀ.
A_LastErrorOSÀÇ GetLastError() ÇÔ¼öÀÇ °á°ú ¶Ç´Â COM °´Ã¼ ¿äûÀÇ ÃÖÁ¾ °á°ú. ÀÚ¼¼ÇÑ °ÍÀº DllCall() ±×¸®°í Run/RunWait¸¦ ÂüÁ¶ÇÕ´Ï´Ù.
+

ȸµ¹ÀÌ

+ + + + + + + + + + + + + + + + + + + + + +
A_IndexÇöÀç ȸµ¹ÀÌÀÇ ¹Ýº¹ Ƚ¼öÀÔ´Ï´Ù (64-ºñÆ® Á¤¼ö). ¿¹¸¦ µé¾î, ½ºÅ©¸³Æ®°¡ ȸµ¹ÀÌÀÇ ¸öü¸¦ óÀ½ ½ÇÇàÇϸé, ÀÌ º¯¼ö´Â ¼ýÀÚ 1ÀÌ ´ã±é´Ï´Ù. ´õ ÀÚ¼¼ÇÑ °ÍÀº ȸµ¹ÀÌ ¶Ç´Â While-ȸµ¹À̸¦ ÂüÁ¶ÇϽʽÿÀ.
A_LoopFileName, µîµî.ÀÌ º¯¼ö¿Í ±âŸ °ü·Ã º¯¼öµéÀº ÆÄÀÏ-ȸµ¹ÀÌ ¾È¿¡¼­¸¸ À¯È¿ÇÕ´Ï´Ù.
A_LoopRegName, µîµî.ÀÌ º¯¼ö¿Í ±âŸ °ü·Ã º¯¼öµéÀº ·¹Áö½ºÆ®¸®-ȸµ¹ÀÌ ¾È¿¡¼­¸¸ À¯È¿ÇÕ´Ï´Ù.
A_LoopReadLineÆÄÀÏ-Àбâ ȸµ¹À̸¦ ÂüÁ¶ÇϽʽÿÀ.
A_LoopFieldȸµ¹ÀÌ ÆĽÌÇϱ⸦ ÂüÁ¶ÇϽʽÿÀ.
+ +

ȯ°æ º¯¼ö ´ë. "º¸Åë" º¯¼ö

+

+ȯ°æ º¯¼ö´Â ¿î¿µ üÁ¦°¡ °ü¸®ÇÕ´Ï´Ù. ¸í·É¾î ÇÁ·ÒÇÁÆ®¿¡¼­ SETÀ» ŸÀÚÇÏ°í ¿£Å͸¦ Ä¡¸é ±× ¸ñ·ÏÀ» º¸½Ç ¼ö ÀÖ½À´Ï´Ù.

+

½ºÅ©¸³Æ®´Â EnvSetÀ¸·Î »õ ȯ°æ º¯¼ö¸¦ ¸¸µé°Å³ª ±âÁ¸ÀÇ º¯¼ö ³»¿ëÀ» ¹Ù²Ü ¼ö ÀÖ½À´Ï´Ù. ±×·¸Áö¸¸, ±×·¸°Ô Ãß°¡ÇÏ°í º¯°æÇÏ´Â °ÍÀº »çÀûÀÔ´Ï´Ù; ³ª¸ÓÁö ½Ã½ºÅÛ¿¡ º¸ÀÌÁö ¾Ê½À´Ï´Ù. ÇÑ °¡Áö ¿¹¿Ü´Â ½ºÅ©¸³Æ®°¡ RunÀ̳ª RunWait¸¦ »ç¿ëÇÏ¿© ÇÁ·Î±×·¥À» (¶Ç´Ù¸¥ ½ºÅ©¸³Æ®) ±âµ¿½ÃÄ×À» ¶§ÀÔ´Ï´Ù: ±×·± ÇÁ·Î±×·¥Àº ºÎ¸ð ½ºÅ©¸³Æ®ÀÇ È¯°æ º¯¼ö »çº»À» »ó¼Ó¹Þ½À´Ï´Ù. »çÀûÀΠȯ°æ º¯¼öµµ ´ç¿¬È÷ Æ÷ÇԵ˴ϴÙ.

+

v1.0.43.08+¿¡¼­, ¸ðµç »õ ½ºÅ©¸³Æ®´Â Path¿Í °°Àº ȯ°æ º¯¼ö¸¦ ´ÙÀ½°ú °°ÀÌ ¿­¶÷Çϱ⸦ ±ÇÀåÇÕ´Ï´Ù:

+
EnvGet, OutputVar, Path  ; For explanation, see #NoEnv.
+

º¯¼öÀÇ °¡¿ë¼º°ú ¸Þ¸ð¸®

+ + + diff --git a/src/docs/Welcome.htm b/src/docs/Welcome.htm new file mode 100644 index 0000000..6ee2925 --- /dev/null +++ b/src/docs/Welcome.htm @@ -0,0 +1,45 @@ + + + + + + Welcome to AutoHotkey + + + + + + + + +
+

ȯ¿µÇÕ´Ï´Ù...

+ +

½ÃÀÛÇϱâ

+

AutoHotkey·Î ¹º°¡¸¦ ÇÒ ¼ö ÀÖÀ¸·Á¸é, ¸ÕÀú ½ºÅ©¸³Æ®¸¦ ÀÛ¼ºÇØ ¹«¾ùÀ» ÇÒÁö ¾Ë·ÁÁÖ¾î¾ß ÇÕ´Ï´Ù.
+ ÀÚ½À¼­¸¦ Àаųª ¾Æ´Ï¸é °ðÀå ¶Ù¾î µé¾î°¡¸é ±× ¹æ¹ýÀ» ¹è¿ï ¼ö ÀÖ½À´Ï´Ù.

+

µµ¿òÀ» ¾ò°Å³ª ¸¹Àº À¯¿ëÇÑ ½ºÅ©¸³Æ®¸¦ ¹ß°ßÇÒ ¼ö ÀÖ½À´Ï´Ù: ¿ì¸®ÀÇ Åä·Ð Æ÷·³¿¡ ¿À½Ê½Ã¿À.

+ +

¿Ö ³»°¡ ÀÌ ÆäÀÌÁö¸¦ º¸°í ÀÖ³ª¿ä?

+
+

¾î´À ½ºÅ©¸³Æ®¸¦ ½ÇÇàÇÒÁö ¾Ë·ÁÁÖÁö ¾Ê°í ¿ÀÅäÇÖÅ°¸¦ ½ÇÇàÇߴµ¥ ±âº» À§Ä¡¿¡¼­ ½ºÅ©¸³Æ®¸¦ ãÀ» ¼ö ¾ø¾ú±â ¶§¹®ÀÔ´Ï´Ù.

+
+ +
+ + + \ No newline at end of file diff --git a/src/docs/commands/AutoTrim.htm b/src/docs/commands/AutoTrim.htm new file mode 100644 index 0000000..fa7d347 --- /dev/null +++ b/src/docs/commands/AutoTrim.htm @@ -0,0 +1,53 @@ + + + + +AutoTrim + + + + + + + +

AutoTrim

+ +

Var1 = %Var2% ¼­¼ú¹®¿¡¼­ Var2ÀÇ ¾Õ µÚ·ÎºÎÅÍ ½ºÆäÀ̽º¿Í ÅÇ ¹®ÀÚ¸¦ °È¾î³¾Áö ¸»Áö °áÁ¤ÇÕ´Ï´Ù.

+ +
AutoTrim, On|Off
+

¸Å°³º¯¼ö

+
+ +
On|Off
+

On: Var1 = %Var2%¿Í °°Àº ¼­¼ú¹®¿¡¼­, ÅÇ°ú ½ºÆäÀ̽º°¡ Var2ÀÇ ¾Õ µÚ¿¡ ÀÖÀ¸¸é Var1À¸·ÎºÎÅÍ °È¾î³À´Ï´Ù. ÀÌ°ÍÀÌ ±âº»°ªÀÔ´Ï´Ù.

+

Off: ÅÇ°ú ½ºÆäÀ̽º¸¦ °È¾î³»Áö ¾Ê½À´Ï´Ù.

+

+ ±âÈ£ ±×´ë·ÎÀÇ ÅÇ°ú ½ºÆäÀ̽º´Â ÀÌ ¼³Á¤¿¡ »ó°ü¾øÀÌ »ý·«µË´Ï´Ù. v1.1.06ÀÌÀü¿¡´Â, ¿©±â¿¡ `t ¶Ç´Â ±âŸ ÇÇ½ÅµÈ ±âÈ£ ±×´ë·ÎÀÇ ½ºÆäÀ̽º³ª ÅÇÀÌ Æ÷ÇԵǾú½À´Ï´Ù. ¿¹¸¦ µé¾î AutoTrimÀÌ OffÀÏ ¶§, ¼­¼ú¹® Var = `t´Â v1.1.06¿¡¼­´Â ÅÇ ¹®ÀÚ¸¦ ÇÒ´çÇÏ°í ±× ÀÌÀü ¹öÀüÀº ºó ¹®ÀÚ¿­ÀÌ ÇÒ´çµË´Ï´Ù.

+ +
+ +

³íÆò

+

+ÀÌ ¸í·É¾î°¡ ½ºÅ©¸³Æ®¿¡ ¾øÀ¸¸é, ¼³Á¤Àº ONÀÌ ±âº»°ªÀÔ´Ï´Ù.

+

+³»Àå º¯¼ö A_AutoTrim¿¡´Â ÇöÀç ¼³Á¤ÀÌ ´ã°Ü ÀÖ½À´Ï´Ù (On ¶Ç´Â Off).

+

+³»Àå º¯¼ö A_Space ±×¸®°í A_Tab¿¡´Â ´ÜÀÏ ½ºÆäÀ̽º¿Í ´ÜÀÏ ÅÇ ¹®ÀÚ°¡ °¢°¢ µé¾î ÀÖ½À´Ï´Ù.

+

+AutoTrimÀº Var := " string "¿Í °°Àº Ç¥Çö½Ä ÇÒ´ç¿¡ ¿µÇâÀ» ÁÖÁö ¾Ê½À´Ï´Ù. ´Ù¸¥ ¸»·Î Çϸé, ±× °æ¿ì ¼±µÎ ÈĹÌÀÇ ½ºÆäÀ̽º¿Í ÅÇÀº ¾ðÁ¦³ª ±×´ë·Î À¯ÁöµË´Ï´Ù.

+

+»õ·Î ±âµ¿µÈ ¾²·¹µå¸¶´Ù (ÇÖÅ°, ¸ÂÃã ¸Þ´º Ç׸ñ, ¶Ç´Â ŸÀÌ¸Ó ¼­ºê·çƾ) ÀÌ ¸í·É¾î¿¡ ´ëÇÑ ±âº»°ªÀ» °¡Áö°í »õ·Î ½ÃÀÛÇÕ´Ï´Ù. ÀÌ ¼³Á¤Àº ÀÌ ¸í·É¾î¸¦ ÀÚµ¿-½ÇÇà ¼½¼Ç¿¡ (½ºÅ©¸³Æ®ÀÇ »ó´Ü ºÎºÐ) »ç¿ëÇÏ¸é ¹Ù²Ü ¼ö ÀÖ½À´Ï´Ù.

+ +

°ü·Ã Ç׸ñ

+

+SetEnv

+ +

¿¹Á¦

+
AutoTrim, off
+NewVar1 = %OldVar%  ; OldVar¿¡ ¼±µÎ¿Í ÈĹ̿¡ ½ºÆäÀ̽º°¡ µé¾î ÀÖÀ¸¸é, NewVarµµ ¿ª½Ã ±×´ë·Î °¡Áý´Ï´Ù.
+NewVar2 = %A_Space%  ; AutoTrimÀÌ ²¨Á® ÀÖÀ¸¸é, ´ÜÀÏ ½ºÆäÀ̽º¸¦ ÀÌ·± ½ÄÀ¸·Î ÇÒ´çÇÒ ¼ö ÀÖ½À´Ï´Ù.
+
+Var1 := "`t" . Var2 . " "  ; Ç¥Çö½ÄÀ̱⠶§¹®¿¡ AutoTrimÀÇ ¼³Á¤Àº ¹®Á¦°¡ µÇÁö ¾Ê½À´Ï´Ù.
+ + + diff --git a/src/docs/commands/Block.htm b/src/docs/commands/Block.htm new file mode 100644 index 0000000..8d62b4a --- /dev/null +++ b/src/docs/commands/Block.htm @@ -0,0 +1,84 @@ + + + + +Blocks + + + + + + + +

{...} (block)

+ +

ÇÑ ½ÖÀÇ È°°ýÈ£´Â ºí·ÏÀ» ¶æÇÕ´Ï´Ù. ºí·ÏÀº ÀüÇüÀûÀ¸·Î ÇÔ¼ö, Else, Loop, While-loop, ±×¸®°í IF-¸í·É¾î¿Í ÇÔ²² »ç¿ëµË´Ï´Ù.

+ +
+{
+0°³ ÀÌ»óÀÇ ¸í·É¾î ³ª¿­
+}
+ +

³íÆò

+

+ºí·ÏÀº µÎ °³ ÀÌ»óÀÇ ¸í·É¾îµéÀ» Çϳª·Î ¹­´Â µ¥ »ç¿ëµË´Ï´Ù. ¶Ç ¾î´À IF¿¡ ELSE°¡ ¼ÓÇÏ´ÂÁö ¹Ù²Ù´Â µ¥¿¡µµ »ç¿ëµË´Ï´Ù. ´ÙÀ½ ¿¹Á¦¿Í °°ÀÌ ºí·ÏÀº ELSE¸¦ µÎ ¹ø°°¡ ¾Æ´Ï¶ó ù ¹ø° IF¿¡ ¼ÓÇÏ°Ô ¸¸µì´Ï´Ù:

+
if var1 = 1
+{
+    if var2 = abc
+        sleep, 1
+}
+else
+    return
+

+ºí·ÏÀº ¾Æ¹«µ¥³ª »ç¿ëÇÒ ¼ö ÀÖÁö¸¸, ÇöÀç´Â ¿ÀÁ÷ functions, Else, Loop, ¶Ç´Â IF-À¯ÇüÀÇ ¸í·É¾îµé (¿¹¸¦ µé¾î IfEqual ¶Ç´Â IfWinExist)°ú »ç¿ëµÉ ¶§¸¸ Àǹ̰¡ ÀÖ½À´Ï´Ù.

+

+¸¸¾à IF, ELSE, Loop, While-ȸµ¹ÀÌ, ¶Ç´Â For-ȸµ¹ÀÌ¿¡ ¸í·É¾î°¡ Çϳª ¹Û¿¡ ¾ø´Ù¸é, ±× ¸í·É¾î´Â ºí·Ï¿¡ ½Ò ÇÊ¿ä°¡ ¾ø½À´Ï´Ù. ±×·¸Áö¸¸, ½ºÅ©¸³Æ®ÀÇ °¡µ¶¼ºÀ» Çâ»ó½ÃÅ°°í À¯Áö°ü¸®¼ºÀ» ¿ëÀÌÇÏ°Ô Çϱâ À§ÇØ ±×·¡¾ß ÇÒ °æ¿ì°¡ ÀÖ½À´Ï´Ù.

+

+ºí·ÏÀº ºñ¾î À־ µË´Ï´Ù (¸í·É¾î°¡ ¾øÀ½). ÀÌ °æ¿ì´Â ºí·Ï ÀÚü¸¦ Á¦°ÅÇÏÁö ¾Ê°í ºí·ÏÀÇ ³»¿ëÀ» ÁÖ¼® ó¸®ÇÏ°í ½ÍÀ» ¶§ À¯¿ëÇÕ´Ï´Ù.

+

+One True Brace (OTB, K&R ½ºÅ¸ÀÏ): OTB ½ºÅ¸ÀÏÀ» ¼±ÅÃÀûÀ¸·Î ´ÙÀ½°ú °°Àº °æ¿ì¿¡ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù: if-¼­¼ú¹®ÀÇ Ç¥Çö½Ä, else Å°¿öµå, while-ȸµ¹ÀÌ, For-ȸµ¹ÀÌ, º¸Åë ȸµ¹ÀÌ, ÇÔ¼ö Á¤ÀÇ, Try, Catch, ±×¸®°í Finally. ÀÌ ½ºÅ¸ÀÏÀº ºí·ÏÀÇ ½ÃÀÛ È°°ýÈ£¸¦ ºí·ÏÀÇ Á¦¾î ¼­¼ú¹®°ú °°Àº ÁÙ¿¡ ¹èÄ¡ÇÕ´Ï´Ù. ±× ÁÙ ¾Æ·¡ µû·Î µÎÁö ¾Ê½À´Ï´Ù. ¿¹¸¦ µé¾î:

+
if (x < y) {
+    ...
+} else {
+    ...
+}
+While x < y {
+    ...
+}
+For k,v in obj {
+    ...
+}
+Loop %RepeatCount% {
+    ...
+}
+MyFunction(x, y) {
+    ...
+}
+Try {
+    ...
+} Catch e {
+    ...
+} Finally {
+    ....
+}
+

ºñ½ÁÇÏ°Ô, ¸í·É¾î ¶Ç´Â ±âŸ Á¶Ä¡´Â È°°ýÈ£ ¿ìÃø¿¡ Á¸ÀçÇÕ´Ï´Ù (´Ü, One True Brace ½ºÅ¸ÀÏÀÇ ¿©´Â °ýÈ£´Â Á¦¿ÜÇÕ´Ï´Ù). ¿¹¸¦ µé¾î:

+
if x = 1
+{ MsgBox ÀÌ ÁÙÀº ¿©´Â °ýÈ£ÀÇ ¿À¸¥ÂÊ¿¡ ³ªÅ¸³³´Ï´Ù. IF-¼­¼ú¹®ÀÌ ÂüÀÏ ¶§¸¶´Ù ½ÇÇàµË´Ï´Ù.
+    MsgBox ÀÌ ÁÙÀº ´ÙÀ½ ÁÙÀÔ´Ï´Ù.
+} MsgBox ÀÌ ÁÙÀº ´Ý´Â °ýÈ£ÀÇ ¿À¸¥ÂÊ¿¡ ³ªÅ¸³³´Ï´Ù. ¹«Á¶°Ç ½ÇÇàµË´Ï´Ù.
+ +

°ü·Ã Ç׸ñ

+

+Functions, While-ȸµ¹ÀÌ, Loop, Else, If, If(Expression)

+ +

¿¹Á¦

+
if x = 1
+{
+    MsgBox, test1
+    Sleep, 5
+}
+else
+    MsgBox, test2
+ + + diff --git a/src/docs/commands/BlockInput.htm b/src/docs/commands/BlockInput.htm new file mode 100644 index 0000000..12fa4a6 --- /dev/null +++ b/src/docs/commands/BlockInput.htm @@ -0,0 +1,72 @@ + + + + +BlockInput + + + + + + + +

BlockInput

+ +

»ç¿ëÀÚ°¡ ÄÄÇ»ÅÍ¿Í Å°º¸µå¿Í ¸¶¿ì½º¸¦ ÅëÇÏ¿© »óÈ£ÀÛ¿ë ÇÒÁö ¸»Áö ¿©ºÎ¸¦ ÄÑ°í ²ü´Ï´Ù.

+ +
BlockInput, Mode
+

¸Å°³º¯¼ö

+
+ +
Mode
+

Mode 1: ´ÙÀ½ ´Ü¾î Áß Çϳª:

+

On: »ç¿ëÀÚ°¡ ÄÄÇ»ÅÍ¿Í »óÈ£ÀÛ¿ëÇÏÁö ¸øÇÕ´Ï´Ù (¸¶¿ì½º¿Í Å°º¸µå ÀÔ·ÂÀº È¿°ú°¡ ¾ø½À´Ï´Ù).

+

Off: ÀÔ·ÂÀ» °¡´ÉÇÏ°Ô ÇÕ´Ï´Ù.

+

Mode 2: ÀÌ ¸ðµå´Â ´Ù¸¥ µÎ °³¿Í µ¶¸³ÀûÀ¸·Î ÀÛµ¿ÇÕ´Ï´Ù. ¿¹¸¦ µé¾î, BlockInput OnÀ̸é BlockInput OffÀÌ »ç¿ëµÉ ¶§±îÁö ÀÔ·ÂÀ» ¸·½À´Ï´Ù. ¾Æ·¡ÀÇ ¿É¼ÇÀÌ È¿°ú¸¦ ¹ßÈÖÇصµ »ó°ü¾ø½À´Ï´Ù.

+

+ Send: Send ¶Ç´Â SendRaw°¡ ÁøÇà ÁßÀÎ µ¿¾È »ç¿ëÀÚÀÇ Å°º¸µå¿Í ¸¶¿ì½º ÀÔ·ÂÀ» ¹«½ÃÇÕ´Ï´Ù (ÀüÅëÀûÀÎ SendEvent ¸ðµå¸¸ Çã¿ëÇÕ´Ï´Ù). »ç¿ëÀÚÀÇ Å° ÀÔ·Â ¶§¹®¿¡ Èä³»³½ Å°´­¸²ÀÇ È帧ÀÌ ¹æÇعÞÁö ¾Êµµ·Ï ¸·½À´Ï´Ù. Send°¡ ³¡³¯ ¶§, ÀÔ·ÂÀÌ ´Ù½Ã °¡´ÉÇØÁý´Ï´Ù (¾Õ¿¡¼­ BlockInput OnÀ¸·Î ¸·°í ÀÖ´Â °æ¿ì´Â Á¦¿ÜÇÕ´Ï´Ù).

+

+ Mouse: »ç¿ëÀÚÀÇ Å°º¸µå¿Í ¸¶¿ì½º ÀÔ·ÂÀº Click, MouseMove, MouseClick, ¶Ç´Â MouseClickDragÀÌ ÁøÇà ÁßÀÏ ¶§ ¹«½ÃµË´Ï´Ù (ÀüÅëÀûÀÎ SendEvent ¸ðµå¸¸ Çã¿ëÇÕ´Ï´Ù). »ç¿ëÀÚÀÇ ¸¶¿ì½º À̵¿°ú Ŭ¸¯ ¶§¹®¿¡ Èä³»³½ ¸¶¿ì½º À̺¥Æ® È帧ÀÌ ¹æÇعÞÁö ¾Êµµ·Ï ¸·½À´Ï´Ù. ¸¶¿ì½º ¸í·É¾î°¡ ³¡³¯ ¶§ (ÀÌÀü¿¡ BlockInput OnÀÌ »ç¿ëµÇ¿© ¿©ÀüÈ÷ ÀÔ·ÂÀ» ¸·°í ÀÖÁö¸¸ ¾Ê´Ù¸é) ÀÔ·ÂÀÌ ´Ù½Ã °¡´ÉÇØÁý´Ï´Ù.

+

SendAndMouse: À§ µÎ ¹æ¹ýÀ» Á¶ÇÕ.

+

Default: Send¿Í Mouse ¸ðµå¸¦ ¸ðµÎ ²ôÁö¸¸, ÀÔ·Â ¹æÁöÀÇ ÇöÀç »óŸ¦ ¹Ù²ÙÁö ¾Ê½À´Ï´Ù. ¿¹¸¦ µé¾î, BlockInput OnÀÌ ÇöÀç È¿°ú°¡ ÀÖ´Ù¸é, BlockInput Default¸¦ »ç¿ëÇصµ ²¨ÁöÁö ¾Ê½À´Ï´Ù.

+

+ Mode 3 (v1.0.43.11+ ¿ä±¸): ÀÌ ¸ðµå´Â ´Ù¸¥ µÎ ¹æ¹ý°ú µ¶¸³ÀûÀ¸·Î ÀÛµ¿ÇÕ´Ï´Ù. ¿¹¸¦ µé¾î, BlockInput On°ú BlockInput MouseMove°¡ µÑ ´Ù ÄÑÁ® ÀÖÀ¸¸é, ¸¶¿ì½º À̵¿Àº µÑ ´Ù ²¨Áú ¶§±îÁö ¸·Èü´Ï´Ù.

+

MouseMove: ¸¶¿ì½º Ä¿¼­´Â »ç¿ëÀÚÀÇ ¹°¸®Àû ¸¶¿ì½º À̵¿¿¡ ¹ÝÀÀÇÏÁö ¾Ê½À´Ï´Ù (DirectInput ¾îÇÃÀº ¿¹¿ÜÀûÀ¸·Î °¡´ÉÇÕ´Ï´Ù). ½ºÅ©¸³Æ®°¡ ÀÌ ¸í·É¾î¸¦ óÀ½ »ç¿ëÇÒ ¶§, (¾ÆÁ÷ ¼³Ä¡µÇÁö ¾Ê¾Ò´Ù¸é) ¸¶¿ì½º °¥°í¸®°¡ ¼³Ä¡µË´Ï´Ù. °Ô´Ù°¡, ½ºÅ©¸³Æ®´Â ¿µ¼ÓÀûÀÌ µË´Ï´Ù. ExitApp¸¦ »ç¿ëÇؾ߸¸ Á¾·áÇÒ ¼ö ÀÖ´Ù´Â ¶æÀδÙ. ¸¶¿ì½º °¥°í¸®´Â ´ÙÀ½ Suspend ¶Ç´Â Hotkey ¸í·É¾î¸¦ »ç¿ëÇÒ ¶§±îÁö ¿©ÀüÈ÷ ¼³Ä¡µÇ¾î ÀÖÀ» °ÍÀÔ´Ï´Ù. ±× ¼ø°£ ÇÖÅ°³ª ÇÖ½ºÆ®¸µÀ» ¿ä±¸ÇÏÁö ¾ÊÀ¸¸é Á¦°ÅµË´Ï´Ù (#Hotstring NoMouse ÂüÁ¶).

+

MouseMoveOff: »ç¿ëÀÚ¿¡°Ô ¸¶¿ì½º Ä¿¼­¸¦ À̵¿Çϵµ·Ï Çã¿ëÇÕ´Ï´Ù.

+ +
+ +

³íÆò

+

+BlockInputº¸´Ù, Á¾Á¾ SendMode Input ¶Ç´Â SendMode PlayÀ» »ç¿ëÇÏ´Â ÆíÀÌ ´õ ÁÁÀ» °æ¿ì°¡ ¸¹½À´Ï´Ù. ¿Ö³ÄÇϸé Å°´­¸²°ú ¸¶¿ì½º Ŭ¸¯À» ÀÎÅÍ·´Æ®ÇÒ ¼ö ¾ø±â ¶§¹®ÀÔ´Ï´Ù. BlockInput°ú ´Ù¸£°Ô, À§ ¸ðµå´Â Àü¼Û Áß »ç¿ëÀÚ°¡ ŸÀÚÇÑ °ÍÀ» ¹ö¸®Áö ¾Ê½À´Ï´Ù; ´ë½Å¿¡, ¹öÆÛ Ã³¸®Çß´Ù°¡ ³ªÁß¿¡ Àü¼ÛÇÕ´Ï´Ù. BlockInputÀ» ÇÇÇÏ¸é ´ÙÀ½ ¹®´Ü¿¡¼­ ±â¼úÇÏ´Â ¹Ù¿Í °°ÀÌ Å°°¡ ´­·¯ºÙ´Â °ÍÀ» ¿ìȸÇÒ ÇÊ¿äµµ ¾ø¾îÁý´Ï´Ù.

+

+»ç¿ëÀÚ°¡ Å°¸¦ ´©¸£°í ÀÖ´Â µ¿¾È¿¡ BlockInputÀÌ È°¼ºÈ­µÈ´Ù¸é, ±×·± Å°µéÀº "´­·¯ ºÙ¾î¹ö¸³´Ï´Ù". ÀÌ°ÍÀº ±× Å°°¡ ³õÀÏ ¶§±îÁö ±â´Ù·È´Ù°¡ BlockInputÀ» ÄѸé ÇØ°áµË´Ï´Ù. ´ÙÀ½ ¿¹Á¦¿Í °°ÀÌ:

+ +
^!p::
+KeyWait Control  ; Å°¸¦ ¶¼±â¸¦ ±â´Ù¸³´Ï´Ù. °¢°¢ÀÇ ÇÖÅ° ¼ö½ÄÀÚ¸¶´Ù KeyWait¸¦ Çϳª¾¿ »ç¿ëÇÕ´Ï´Ù.
+KeyWait Alt
+BlockInput On
+; ... Å°´­¸²°ú ¸¶¿ì½º Ŭ¸¯À» Àü¼ÛÇÕ´Ï´Ù ...
+BlockInput Off
+return
+

+ÀÔ·Â ¹æÁö´Â ALT À̺¥Æ®°¡ Àü¼ÛµÉ ¶§¸¶´Ù ÀÚµ¿À¸·Î ±×¸®°í Àӽ÷Π²¨Áý´Ï´Ù (³ªÁß¿¡ ´Ù½Ã È°¼ºÈ­µË´Ï´Ù).

+

+BlockInputÀÌ ÄÑÁ® ÀÖÀ» ¶§, »ç¿ëÀÚ ÀÔ·ÂÀº ¸·È÷Áö¸¸ ¿ÀÅäÇÖÅ°´Â Å°´­¸²°ú ¸¶¿ì½º Ŭ¸¯À» Èä³»³¾ ¼ö ÀÖ½À´Ï´Ù. ±×·¸Áö¸¸, Ctrl+Alt+DelÀ» ´©¸£¸é Windows API Ư¡ ¶§¹®¿¡ ÀÔ·ÂÀÌ ´Ù½Ã °¡´ÉÇØÁý´Ï´Ù.

+

+¾î¶² À¯ÇüÀÇ °¥°í¸® ÇÖÅ°´Â BlockInputÀÌ ÄÑÁ® À־ ¿©ÀüÈ÷ ÃË¹ßµÉ ¼ö ÀÖ½À´Ï´Ù. ¿¹·Î´Â MButton (¸¶¿ì½º °¥°í¸®) ±×¸®°í LWin & Space (¼ö½Ä ½Éº¼ $#ÀÌ ¾Æ´Ï¶ó ¸í½ÃÀûÀ¸·Î Á¢µÎ ½Éº¼ÀÌ ºÙÀº Å°º¸µå °¥°í¸®)°¡ ÀÖ½À´Ï´Ù.

+

+½ºÅ©¸³Æ®°¡ ³¡³¯ ¶§ ÀÚµ¿À¸·Î ÀÔ·ÂÀÌ ´Ù½Ã °¡´ÉÇØÁý´Ï´Ù.

+ +

°ü·Ã Ç׸ñ

+

SendMode, Send, Click, MouseMove, MouseClick, MouseClickDrag

+ +

¿¹Á¦

+
BlockInput, on
+Run, notepad
+WinWaitActive, Untitled - Notepad
+Send, {F5} ; ³¯Â¥¿Í ½Ã°£À» ºÙ¿© ³Ö½À´Ï´Ù
+BlockInput, off
+ + + diff --git a/src/docs/commands/Break.htm b/src/docs/commands/Break.htm new file mode 100644 index 0000000..b7ac0e3 --- /dev/null +++ b/src/docs/commands/Break.htm @@ -0,0 +1,51 @@ + + + + +Break + + + + + + + +

Break

+ +

ȸµ¹À̸¦ ºüÁ® ³ª¿É´Ï´Ù. ¸ðµç Á¾·ùÀÇ È¸µ¹ÀÌ¿¡ Àû¿ëµË´Ï´Ù.

+ +
Break [, LoopLabel]
+

[AHK_L 59+]: ÁöÁ¤µÇ¸é, LoopLabelÀº ÀÌ ¼­¼ú¹®À» Àû¿ëÇØ¾ß ÇÒ È¸µ¹À̸¦ ½Äº°ÇÕ´Ï´Ù; ¶óº§ À̸§ ¶Ç´Â ¼ýÄ¡·Î ÁöÁ¤µÈ ³»Æ÷ ·¹º§. +»ý·«Çϰųª 1À̸é , ÀÌ ¼­¼ú¹®Àº °¡Àå ¾ÈÂÊ È¸µ¹ÀÌ¿¡ Àû¿ëµË´Ï´Ù. LoopLabelÀº »ó¼ö °ªÀ̾î¾ß ÇÕ´Ï´Ù - º¯¼ö¿Í Ç¥Çö½ÄÀº Áö¿øÇÏÁö ¾Ê½À´Ï´Ù. ¶óº§ÀÌ ÁöÁ¤µÇ¸é, Á÷Á¢ÀûÀ¸·Î ȸµ¹ÀÌ ¸í·É¾î¸¦ °¡¸®ÄÑ¾ß ÇÕ´Ï´Ù.

+

+gotoº¸´Ù Break¿Í ContinueÀÇ »ç¿ëÀ» ±ÇÀåÇÕ´Ï´Ù. ¿Ö³ÄÇÏ¸é º¸Åë ½ºÅ©¸³Æ®¸¦ ´õ Àб⠽±°í ´õ °ü¸®Çϱ⠽±°Ô ¸¸µé¾îÁֱ⠶§¹®ÀÔ´Ï´Ù.

+ +

°ü·Ã Ç׸ñ

+

Continue, Loop, While-ȸµ¹ÀÌ, For-ȸµ¹ÀÌ, ºí·Ï, ¶óº§

+

¿¹Á¦

+
Loop
+{
+    ...
+    if var > 25
+        break
+    ...
+    if var <= 5
+        continue
+}
+
; ³»Æ÷ ȸµ¹ÀÌ ¾ÈÀ¸·ÎºÎÅÍ ¹Ù±ù ȸµ¹ÀÌ·Î ºüÁ® ³ª¿É´Ï´Ù.
+outer:
+Loop 3
+{
+    x := A_Index
+    Loop 3
+    {
+        if (x*A_Index = 6)
+            break outer  ; break 2 ¶Ç´Â goto break_outer¿Í µ¿µîÇÕ´Ï´Ù.
+        MsgBox %x%,%A_Index%
+    }
+}
+break_outer: ; goto¸¦ À§ÇÑ ¶óº§.
+
+ + + diff --git a/src/docs/commands/Catch.htm b/src/docs/commands/Catch.htm new file mode 100644 index 0000000..cd723d6 --- /dev/null +++ b/src/docs/commands/Catch.htm @@ -0,0 +1,57 @@ + + + + +Catch + + + + + + + +

Catch [v1.1.04+]

+ +

try¼­¼ú¹®ÀÇ ½ÇÇà Áß¿¡ ¿¹¿Ü°¡ ÀϾ¸é ½ÇÇàÇÒ Äڵ带 ÁöÁ¤ÇÕ´Ï´Ù.

+ +
Catch [, OutputVar]
+    Statement
+
Catch [, OutputVar]
+{
+    Statements
+}
+

¸Å°³º¯¼ö

+
+ +
OutputVar
+

(¼±ÅÃÀû) ¿¹¿ÜÀÇ °ªÀ» ÀúÀåÇÒ º¯¼öÀÇ À̸§.

+ +
Statement(s)
+

¿¹¿Ü°¡ ÀϾ¸é ½ÇÇàÇÒ ¸í·É¾î ¶Ç´Â Ç¥Çö½Ä.

+ +
+ +

³íÆò

+

+catch°¡ »ç¿ëµÇ¸é ¹Ù·Î À§ try ¼­¼ú¹®¿¡ Á¾¼ÓµË´Ï´Ù. catch´Â ¾ðÁ¦³ª ¹Ù·Î À§ °¡Àå °¡±î¿î try ¼­¼ú¹®¿¡ ¼ÓÇÕ´Ï´Ù. ´Ü, ºí·ÏÀ» »ç¿ëÇÏ¿© ±× ÇàÀ§¸¦ ¹Ù²Ü ¼ö ÀÖ½À´Ï´Ù.

+

+One True Brace (OTB) ½ºÅ¸ÀÏÀ» ¼±ÅÃÀûÀ¸·Î »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î:

+
try {
+    ...
+} catch e {
+    ...
+}
+ +

½ÇÇà½Ã°£ ¿¡·¯

+

+try-catch ¼­¼ú¹®Àº ½ÇÇà ½Ã°£ ¿¡·¯¸¦ ó¸®ÇÏ´Â µ¥¿¡µµ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. µÎ °¡Áö Á¾·ùÀÇ ½ÇÇà½Ã°£ ¿¡·¯°¡ ÀÖ½À´Ï´Ù: º¸Åë ErrorLevelÀ» ¼³Á¤ÇÏ´Â ¿¡·¯¿Í, º¸Åë ¿¡·¯ ¸Þ½ÃÁö¸¦ º¸¿©ÁØ ÈÄ¿¡ ÇöÀç ¾²·¹µå¸¦ Á¾·á½ÃÅ°´Â ¿¡·¯°¡ ÀÖ½À´Ï´Ù. ÀûÀç½Ã°£ ¿¡·¯´Â 󸮰¡ ºÒ°¡´ÉÇÕ´Ï´Ù. ¿Ö³ÄÇϸé try ¼­¼ú¹®ÀÌ ½ÇÇàµÇ±â Àü¿¡ ÀϾ±â ¶§¹®ÀÔ´Ï´Ù. ÇÏÀ§ ȣȯÀ» À§ÇØ (±×¸®°í ¾î¶² °æ¿ì´Â ÆíÀǸ¦ À§ÇØ), ½ÇÇà½Ã°£ ¿¡·¯´Â try ºí·ÏÀÌ ½ÇÇàµÇ´Â µ¿¾È ¿ÀÁ÷ ¿¹¿Ü¸¸ ´øÁý´Ï´Ù. ´ëºÎºÐÀÇ ¸í·É¾î´Â try-catchÀÇ »ç¿ëÀ» Áö¿øÇÕ´Ï´Ù; ±×·¸Áö¸¸, ErrorLevelÀº ¸í·É¾î°¡ ¼º°øÇÏ¸é ¿©ÀüÈ÷ 0À¸·Î ¼³Á¤µË´Ï´Ù.

+

+OutputVar¿¡ ÀúÀåµÈ °ªÀº (Á¸ÀçÇϸé) ¿¹¿Ü °´Ã¼ÀÔ´Ï´Ù.

+ +

°ü·Ã Ç׸ñ

+

Try, Throw, Finally, Blocks

+

¿¹Á¦

+

Try ÂüÁ¶.

+ + + diff --git a/src/docs/commands/Click.htm b/src/docs/commands/Click.htm new file mode 100644 index 0000000..95956ff --- /dev/null +++ b/src/docs/commands/Click.htm @@ -0,0 +1,100 @@ + + + + +Click + + + + + + + +

Click [v1.0.43+]

+ +

+ÁöÁ¤µÈ ÁÂÇ¥¿¡ ¸¶¿ì½º ¹öÆ°À» Ŭ¸¯ÇÕ´Ï´Ù. ¶Ç ¸¶¿ì½º ¹öÆ°À» ´©¸£°í ÀÖÀ» ¼ö ÀÖÀ¸¸ç ÈÙÀ» µ¹¸± ¼ö ÀÖ½À´Ï´Ù. ¸¶¿ì½º¸¦ À̵¿ÇÒ ¼öµµ ÀÖ½À´Ï´Ù.

+

+ÀÚÁÖ »ç¿ëµÇ´Â ¹æ¹ýÀÔ´Ï´Ù (¸ðµç ½°Ç¥´Â ¼±ÅÃÀûÀÔ´Ï´Ù):

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Click (´Üµ¶)¿ÞÂÊ ¸¶¿ì½º ¹öÆ°À» ÇöÀç Ä¿¼­ À§Ä¡¿¡ ÇÑ ¹ø Ŭ¸¯ÇÕ´Ï´Ù.
Click 44, 55¿Þ¹öÆ°À» ÁÂÇ¥ 44, 55¿¡ ÇÑ ¹ø Ŭ¸¯ÇÕ´Ï´Ù (CoordMode¿¡ ±â¹Ý).
Click right 44, 55À§¿Í µ¿µîÇÏÁö¸¸ ¿ì¹öÆ°À» Ŭ¸¯ÇÕ´Ï´Ù.
Click 2¿Þ ¹öÆ°À» Ä¿¼­ÀÇ ÇöÀç À§Ä¡¿¡ µÎ ¹ø Ŭ¸¯ÇÕ´Ï´Ù (Áï, ´õºí-Ŭ¸¯).
Click down¿Þ¹öÆ°À» ´©¸£°í ±×´ë·Î ÀÖ½À´Ï´Ù.
Click up right¿ì¹öÆ°À» ¶Á´Ï´Ù.
Click %x% %y%Ŭ¸¯Àº Ç¥Çö½ÄÀ» Áö¿øÇÏÁö ¾Ê±â ¶§¹®¿¡, º¯¼ö´Â ÆÛ¼¾Æ® »çÀÎÀ¸·Î µÑ·¯½Î¾ß ÇÕ´Ï´Ù.
+

+0°³ ÀÌ»óÀÇ ´ÙÀ½ Ç׸ñµéÀÌ ´Ü¾î Click ´ÙÀ½¿¡ ¿Ã ¼ö ÀÖ½À´Ï´Ù. °¢ Ç׸ñÀº ´ÙÀ½ Ç׸ñ°ú Àû¾îµµ ÇϳªÀÇ ½ºÆäÀ̽º, ÅÇ ¶Ç´Â ½°Ç¥·Î ºÐ¸®ÇϽʽÿÀ. Ç׸ñµéÀº ¼ø¼­¿¡ »ó°ü¾øÀÌ ³ªÅ¸³¯ ¼ö ÀÖ½À´Ï´Ù. ClickCount´Â Á¦¿ÜÇϴµ¥, (ÁÂÇ¥°¡ ÇöÀç Á¸ÀçÇÑ´Ù¸é) ÁÂÇ¥ÀÇ ¿À¸¥ÂÊ ¾îµò°¡¿¡ ³ªÅ¸³ª¾ß Çϱ⠶§¹®ÀÔ´Ï´Ù.

+

+X, Y: ¸¶¿ì½º Ä¿¼­°¡ Ŭ¸¯Çϱâ Àü¿¡ À̵¿ÇØ¾ß ÇÒ x/y ÁÂÇ¥. ÁÂÇ¥´Â È°¼º â¿¡ »ó´ëÀûÀÔ´Ï´Ù. ´Ü, CoordMode°¡ »ç¿ëµÇ¾î ÁÂÇ¥°¡ º¯°æµÈ °æ¿ì´Â Á¦¿ÜÇÕ´Ï´Ù. »ý·«Çϸé, Ä¿¼­ÀÇ ÇöÀç À§Ä¡°¡ »ç¿ëµË´Ï´Ù.

+

+Button Name: Left (±âº»°ª), Right, Middle (¶Ç´Â ±×³É ù ¹®ÀÚ); ¶Ç´Â ´Ù¼¸ ¿©¼¸ ¹ø° ¸¶¿ì½º ¹öÆ° (X1 ¶Ç´Â X2). ÁÖÀÇ: MouseClick°ú ´Ù¸£°Ô, ¿Þ¹öÆ°°ú ¿ì¹öÆ°Àº ¸ðµç ½Ã½ºÅÛ¿¡ °ÉÃÄ ÇàÀ§¿¡ ÀÏ°ü¼ºÀÌ ÀÖ½À´Ï´Ù. »ç¿ëÀÚ°¡ ½Ã½ºÅÛ Á¦¾îÆÇÀ» ÅëÇÏ¿© ¹öÆ°À» ¼­·Î ¹Ù²Ù¾ú´Ù°í ÇÒÁö¶óµµ ¸»ÀÔ´Ï´Ù.

+

+Mouse Wheel: WheelUp ¶Ç´Â WU¸¦ ÁöÁ¤ÇØ ÈÙÀ» À§·Î µ¹¸³´Ï´Ù (¸Ö¾îÁö°Ô); WheelDown ¶Ç´Â WD¸¦ ÁöÁ¤ÇØ ÈÙÀ» ¾Æ·¡·Î µ¹¸³´Ï´Ù (°¡±î¿öÁö°Ô). v1.0.48+¿¡¼­, WheelLeft (WL) ¶Ç´Â WheelRight (WR)À» ÁöÁ¤ÇÒ ¼ö ÀÖ½À´Ï´Ù (±×·¯³ª À©µµ¿ìÁî ºñ½ºÅ¸ ÀÌÀüÀÇ ±¸Çü ¹öÀü¿¡¼­´Â ¾Æ¹« È¿°úµµ ¾ø½À´Ï´Ù). (¾Æ·¡ÀÇ) ClickCount¿¡ ´ëÇÏ¿© µ¹¸± ÈÙÀÇ ´«±ÝÀ» ÁöÁ¤ÇÕ´Ï´Ù. ±×·¸Áö¸¸, ¾î¶² ¾îÇø®ÄÉÀ̼ÇÀº ¸¶¿ì½º ÈÙ¿¡ ´ëÇÏ¿© 1 º¸´Ù Å« ClickCount¸¦ Á¸ÁßÇÏÁö ¾Ê½À´Ï´Ù. ±×·± °æ¿ì¶ó¸é ´ÙÀ½°ú °°ÀÌ È¸µ¹À̸¦ »ç¿ëÇÕ´Ï´Ù:

+
Loop 5
+    Click WheelUp
+

+ClickCount: ¸¶¿ì½º¸¦ Ŭ¸¯ÇÒ È½¼ö (¿¹Á¦: Click 2, Click 100, 200, 2). »ý·«Çϸé, ¹öÆ°Àº ÇÑ ¹ø Ŭ¸¯µË´Ï´Ù. ÁÂÇ¥°¡ ÁöÁ¤µÇ¸é, ClickCount´Â ±× ´ÙÀ½¿¡ ³ªÅ¸³ª¾ß ÇÕ´Ï´Ù. ¿µ (0)À» ÁöÁ¤ÇÏ¸é ¸¶¿ì½º¸¦ Ŭ¸¯ÇÏÁö ¾Ê°í À̵¿ÇÒ ¼ö ÀÖ½À´Ï´Ù (¿¹¸¦ µé¾î: Click 100, 200, 0).

+

+Down ¶Ç´Â Up: ÀÌ ´Ü¾îµéÀº º¸Åë »ý·«µË´Ï´Ù. ÀÌ °æ¿ì °¢ Ŭ¸¯¸¶´Ù ´Ù¿î-À̺¥Æ®¿Í ´ÙÀ½¿¡ ¾÷-À̺¥Æ®°¡ µû¶ó¿É´Ï´Ù. ±×·¸Áö ¾ÊÀ¸¸é, DownÀ» (¶Ç´Â D) ÁöÁ¤ÇÏ¸é ¸¶¿ì½º ¹öÆ°À» ¶¼Áö ¾Ê°í ´©¸£°í ÀÖÀ» ¼ö ÀÖ½À´Ï´Ù. ³ªÁß¿¡, Up (¶Ç´Â U)¸¦ »ç¿ëÇÏ¸é ¸¶¿ì½º ¹öÆ°À» ¶¿ ¼ö ÀÖ½À´Ï´Ù.

+

+Relative: ´Ü¾î Rel ¶Ç´Â Relative´Â ÁöÁ¤µÈ X¿Í Y ÁÂÇ¥¸¦ ÇöÀç ¸¶¿ì½º À§Ä¡·ÎºÎÅÍ »ó´ë °Å¸®·Î Ãë±ÞÇÕ´Ï´Ù. ´Ù¸¥ ¸»·Î, Ä¿¼­´Â ±×ÀÇ ÇöÀç À§Ä¡·ÎºÎÅÍ X Çȼ¿¸¸Å­ ¿À¸¥ÂÊÀ¸·Î (À½ÀÇ Á¤¼öÀÌ¸é ¿ÞÂÊÀ¸·Î) ±×¸®°í Y Çȼ¿¸¸Å­ ¾Æ·¡·Î (À½ÀÇ Á¤¼öÀ̸é À§·Î) À̵¿ÇÕ´Ï´Ù.

+ +

³íÆò

+

+ÀϹÝÀûÀ¸·Î MouseClickº¸´Ù ClickÀ» ¼±È£ÇÕ´Ï´Ù. ¿Ö³ÄÇÏ¸é ½Ã½ºÅÛÀÇ Á¦¾îÆÇÀ» ÅëÇÏ¿© »ç¿ëÀÚ°¡ ÁÂ¿ì ¸¶¿ì½º ¹öÆ°À» ¹Ù²Ù´õ¶óµµ ÀÚµ¿À¸·Î º¸»óÇØ Áֱ⠶§¹®ÀÔ´Ï´Ù.

+

+ClickÀº SendMode°¡ ¼³Á¤ÇÑ Àü¼Û ¸Þ½îµå¸¦ »ç¿ëÇÕ´Ï´Ù. ƯÁ¤ÇÑ Å¬¸¯¿¡ ´ëÇÏ¿© ÀÌ ¸ðµå¸¦ ¿À¹ö¶óÀ̵å ÇÏ·Á¸é, ´ÙÀ½ ¿¹Á¦¿Í °°ÀÌ ±¸Ã¼ÀûÀÎ Send ¸í·É¾î¸¦ »ç¿ëÇϽʽÿÀ: + +SendEvent {Click, 100, 200}.

+

+¿ÞŬ¸¯À̳ª ÄÜÆ®·Ñ-Ŭ¸¯À» ¼öÇàÇÏ·Á¸é, ÀϹÝÀûÀ¸·Î Send {Click} ¸Þ½îµå°¡ °¡Àå ½±½À´Ï´Ù. ¿¹¸¦ µé¾î:

+ +
Send +{Click 100, 200}  ; Shift+LeftClick
+Send ^{Click 100, 200, right}  ; Control+RightClick
+

+Send¿Í ´Ù¸£°Ô, ClickÀº ÀÚµ¿À¸·Î ¼ö½Ä Å°¸¦ ¶¼Áö ¾Ê½À´Ï´Ù (Control, Alt, Shift, ±×¸®°í Win). ¿¹¸¦ µé¾î, Control Å°°¡ ÇöÀç ´­·Á ÀÖÀ¸¸é, ClickÀº control-clickÀ» »ý»êÇÏÁö¸¸ Send {Click}´Â º¸ÅëÀÇ Å¬¸¯À» »ý»êÇÕ´Ï´Ù.

+

+SendPlay ¸ðµå´Â ´Ù¸¥ ¸ðµåµé º¸´Ù ´õ ±¤¹üÀ§ÇÑ °ÔÀÓ¿¡ ¼º°øÀûÀ¸·Î ¸¶¿ì½º À̺¥Æ®¸¦ ¸¸µé ¼ö ÀÖ½À´Ï´Ù. °Ô´Ù°¡, ¾î¶² ¾îÇø®ÄÉÀ̼ǰú °ÔÀÓÀº ³Ê¹« »¡¸® ¿òÁ÷À̸é ÃßÀû¿¡ ¾î·Á¿òÀÌ ÀÖÀ» ¼ö ÀÖ½À´Ï´Ù. ±×·± °æ¿ì SetDefaultMouseSpeed¸¦ »ç¿ëÇÏ¸é ¼Óµµ¸¦ ÁÙÀÏ ¼ö ÀÖ½À´Ï´Ù (±×·¯³ª SendEvent ¸ðµå Àü¿ëÀÔ´Ï´Ù).

+

+BlockInput ¸í·É¾î¸¦ »ç¿ëÇÏ¸é »ç¿ëÀÚÀÇ ¹°¸®ÀûÀÎ ¸¶¿ì½º È°µ¿ ¶§¹®¿¡ ¸¶¿ì½º ¸í·É¾î·Î »ý»êµÇ´Â Èä³»³½ ¸¶¿ì½º À̺¥Æ®µéÀÌ ¾îÁú·¯Áö´Â °ÍÀ» ¸·À» ¼ö ÀÖ½À´Ï´Ù. ±×·¸Áö¸¸, ÀÌ´Â ÀϹÝÀûÀ¸·Î SendInput ¸ðµå¿Í SendPlay ¸ðµå¿¡ ÇÊ¿äÇÏÁö ¾Ê½À´Ï´Ù. ¿Ö³ÄÇϸé ÀÚµ¿À¸·Î »ç¿ëÀÚÀÇ ¹°¸®Àû ¸¶¿ì½º ¿òÁ÷ÀÓÀ» µÚ·Î Áö¿¬Çϱ⠶§¹®ÀÔ´Ï´Ù.

+

+¸¶¿ì½º¸¦ Ŭ¸¯Çؼ­ ´©¸£°í ¶¿ ¶§¸¶´Ù µÚ¿¡ ÀÚµ¿À¸·Î Áö¿¬½Ã°£ÀÌ ÀÖ½À´Ï´Ù (SendInput ¸ðµå¿Í ¸¶¿ì½º ÈÙ µ¹¸®±â´Â Á¦¿ÜÇÕ´Ï´Ù). SetMouseDelay¸¦ »ç¿ëÇϸé Áö¿¬½Ã°£À» º¯°æÇÒ ¼ö ÀÖ½À´Ï´Ù.

+ +

°ü·Ã Ç׸ñ

+

Send {Click}, SendMode, CoordMode, SetDefaultMouseSpeed, SetMouseDelay, MouseClick, MouseClickDrag, MouseMove, ControlClick, BlockInput

+ +

¿¹Á¦

+
Click  ; ¿Þ¹öÆ°À» ¸¶¿ì½º Ä¿¼­ÀÇ ÇöÀç À§Ä¡¿¡ Ŭ¸¯ÇÕ´Ï´Ù.
+Click 100, 200  ; ¿Þ¹öÆ°À» ÁöÁ¤µÈ ÁÂÇ¥¿¡ Ŭ¸¯ÇÕ´Ï´Ù.
+Click 100, 200, 0  ; ¸¶¿ì½º¸¦ Ŭ¸¯¾øÀÌ À̵¿ÇÕ´Ï´Ù.
+Click 100, 200 right  ; ¿ì¹öÆ°À» Ŭ¸¯ÇÕ´Ï´Ù.
+Click 2  ; ´õºí-Ŭ¸¯À» ¼öÇàÇÕ´Ï´Ù.
+Click down  ; ¿Þ¹öÆ°À» ´©¸£°í ±×´ë·Î À¯ÁöÇÕ´Ï´Ù.
+Click up right  ; ¿ì¹öÆ°À» ¶Á´Ï´Ù.
+ + + diff --git a/src/docs/commands/ClipWait.htm b/src/docs/commands/ClipWait.htm new file mode 100644 index 0000000..29ebea0 --- /dev/null +++ b/src/docs/commands/ClipWait.htm @@ -0,0 +1,62 @@ + + + + +ClipWait + + + + + + + +

ClipWait

+ +

Ŭ¸³º¸µå¿¡ µ¥ÀÌÅÍ°¡ ´ã±â±â¸¦ ±â´Ù¸³´Ï´Ù.

+ +
ClipWait [, SecondsToWait, 1]
+

¸Å°³º¯¼ö

+
+ +
SecondsToWait
+

»ý·«Çϸé, ¹«ÇÑÁ¤ ±â´Ù¸³´Ï´Ù. ±×·¸Áö ¾ÊÀ¸¸é ÁöÁ¤ÇÑ ÃÊ °³¼ö ¸¸Å­¸¸ ±â´Ù¸³´Ï´Ù (¼Ò¼öÁ¡À» Æ÷ÇÔÇÒ ¼ö ÀÖ°í Ç¥Çö½ÄÀÌ µÉ ¼ö ÀÖ½À´Ï´Ù). 0À» ÁöÁ¤Çϸé 0.5¸¦ ÁöÁ¤ÇÑ °Í°ú °°½À´Ï´Ù.

+ +
1
+

ÀÌ ¸Å°³º¯¼ö¸¦ »ý·«Çϸé, ´õ ¼±ÅÃÀÇ ¹üÀ§°¡ ³Ð¾îÁý´Ï´Ù. ƯÈ÷ ÅؽºÆ®³ª ÆÄÀÏÀÌ ³ªÅ¸³ª±â¸¦ ±â´Ù¸³´Ï´Ù ("ÅؽºÆ®"´Â ¹«¾ùÀÌµç ³ëÆ®Æе忡 ºÙ¿© ³ÖÀ» ¶§ ÅؽºÆ®¸¦ »ý»êÇϱ⸸ ÇÏ¸é µË´Ï´Ù.). + ÀÌ ¸Å°³º¯¼ö°¡ 1À̸é (Ç¥Çö½Ä °¡´É), Á¾·ù¿¡ »ó°ü¾øÀÌ µ¥ÀÌÅÍ°¡ Ŭ¸³º¸µå¿¡ ³ªÅ¸³ª±â¸¦ ±â´Ù¸³´Ï´Ù.

+ +
+ +

ErrorLevel

+

+´ë±â ½Ã°£ÀÌ °æ°úÇϸé, ErrorLevel´Â 1·Î ¼³Á¤µË´Ï´Ù. ±×·¸Áö ¾ÊÀ¸¸é (Áï, Ŭ¸³º¸µå¿¡ µ¥ÀÌÅÍ°¡ ÀÖÀ¸¸é), ErrorLevelÀº 0ÀÌ ¼³Á¤µË´Ï´Ù.

+ +

³íÆò

+

+Ŭ¸³º¸µå°¡ ºñ¾î ÀÖ´ÂÁö ¾Ë¾Æ º¸±â À§ÇØ È¸µ¹À̺¸´Ù ÀÌ ¸í·É¾î¸¦ »ç¿ëÇÏ´Â ÆíÀÌ ´õ ÁÁ½À´Ï´Ù. ¿Ö³ÄÇϸé Ŭ¸³º¸µå´Â ÀÌ ¸í·É¾î·Î ¿­¸®Áö ¾Ê±â ¶§¹®ÀÔ´Ï´Ù. ±×·¡¼­ ´õ ¼öÇ༺´ÉÀÌ ÁÁ°í Ŭ¸³º¸µå¸¦ »ç¿ëÇÏ°í ÀÖ´Â ´Ù¸¥ ¾îÇø®ÄÉÀ̼ǰú ¼­·Î °£¼·ÇÒ °¡´É¼ºÀ» ÇÇÇÒ ¼ö Àֱ⠶§¹®ÀÔ´Ï´Ù.

+

+ÀÌ ¸í·É¾î´Â ÅؽºÆ®·Î º¯È¯ °¡´ÉÇÑ °ÍÀÌ¸é ¹«¾ùÀ̵ç (¿¹, HTML) ÅؽºÆ®·Î °£ÁÖÇÕ´Ï´Ù. ¶ÇÇÑ Å½»ö±â â¿¡¼­ Control-C¸¦ ÅëÇÏ¿© º¹»çÇÒ ¼ö ÀÖ´Â ÆÄÀϵµ ÅؽºÆ®·Î °£ÁÖÇÕ´Ï´Ù. Ŭ¸³º¸µå º¯¼ö (%clipboard%)°¡ ½ºÅ©¸³Æ®¿¡¼­ ÂüÁ¶µÉ ¶§¸¶´Ù ±×·± ÆÄÀÏÀº (Àüü °æ·Î¿Í ÇÔ²²) ±×ÀÇ ÆÄÀÏÀ̸§À¸·Î ÀÚµ¿À¸·Î º¯È¯µË´Ï´Ù. ÀÚ¼¼ÇÑ °ÍÀº Clipboard¸¦ ÂüÁ¶ÇϽʽÿÀ.

+

+1ÀÌ Ã¹ ¹ø° ¸Å°³º¯¼ö·Î Á¸ÀçÇϸé, ¾î¶² Á¾·ùÀÌµç µ¥ÀÌÅÍ°¡ Ŭ¸³º¸µå¿¡ ³ªÅ¸³ª¸é ¸í·É¾î¸¦ ¸¸Á·½Ãŵ´Ï´Ù. ÀÌ°ÍÀº ClipboardAll°ú ÇÔ²² »ç¿ëµÇ¾î ±×¸²°ú °°ÀÌ ÅؽºÆ®°¡ ¾Æ´Ñ µ¥ÀÌÅ͸¦ ÀúÀåÇÒ ¼ö ÀÖ½À´Ï´Ù.

+

+ÀÌ ¸í·É¾î°¡ ´ë±â »óÅ¿¡ ÀÖ´Â µ¿¾È¿¡, ÇÖÅ°, ¸ÂÃã ¸Þ´º Ç׸ñ, ¶Ç´Â ŸÀ̸Ӹ¦ ÅëÇÏ¿© »õ ¾²·¹µå°¡ ±âµ¿ÇÒ ¼ö ÀÖ½À´Ï´Ù.

+ +

°ü·Ã Ç׸ñ

+

+Clipboard, WinWait, KeyWait

+ +

¿¹Á¦

+ +
clipboard = ; Ŭ¸³º¸µå¸¦ ºñ¿ó´Ï´Ù
+Send, ^c
+ClipWait, 2
+if ErrorLevel
+{
+    MsgBox, Ŭ¸³º¸µå¿¡ ÅؽºÆ®¸¦ º¹»çÇÏ·Á´Â ½Ãµµ°¡ ½ÇÆÐÇÏ¿´½À´Ï´Ù.
+    return
+}
+MsgBox, clipboard = %clipboard%
+return
+ + + diff --git a/src/docs/commands/ComObjActive.htm b/src/docs/commands/ComObjActive.htm new file mode 100644 index 0000000..7296303 --- /dev/null +++ b/src/docs/commands/ComObjActive.htm @@ -0,0 +1,154 @@ + + + + +ComObjActive() + + + + + + + +

ComObjActive() [AHK_L 53+]

+ +

OLE·Î µî·ÏµÇ¾î ½ÇÇà ÁßÀÎ °´Ã¼¸¦ ¿­¶÷ÇÕ´Ï´Ù.

+
ComObject := ComObjActive(CLSID)
+ +

¸Å°³º¯¼ö³ª ¹Ýȯ °ª¿¡ °Ç³Ú À¯Çü ÀÖ´Â °ªÀ» ³ªÅ¸³»´Â °´Ã¼¸¦ ¸¸µì´Ï´Ù.

+
ParamObj := ComObject(VarType, Value [, Flags])
+ +

Àý´ë ºñÃßõ:

+

+¾Æ·¡¿¡ º¸¿©ÁÖ´Â »ç¿ë¹ýÀº ÃßõÇÏÁö ¾Ê½À´Ï´Ù. ¾ÕÀ¸·Î´Â »ç¿ëÀÌ ºÒ°¡´ÉÇϰųª ¹Ù²ð ¼ö ÀÖ½À´Ï´Ù.

+

COM °´Ã¼ÀÇ ¸Þ½îµå¸¦ È£ÃâÇÒ ¶§ ¼±ÅÃÀûÀÎ ¸Å°³º¯¼öÀÇ ±âº» °ª ´ë½Å¿¡ »ç¿ëÇÒ °´Ã¼¸¦ ¸¸µì´Ï´Ù. v1.1.12ºÎÅÍ Æó±âµÇ¾ú½À´Ï´Ù: ´ë½Å¿¡ ±×³É µÎ °³ÀÇ ½°Ç¥¸¦ ¿¬¼ÓÀûÀ¸·Î »ç¿ëÇϽʽÿÀ. ´ÙÀ½°ú °°ÀÌ: Obj.Method(1,,3)

+
ParamObj := ComObjMissing()
+ +

IDispatch Æ÷ÀÎÅ͸¦ °´Ã¼¿¡ ½Î ³Ö°í ÀÚµ¿À¸·Î AddRef¸¦ È£ÃâÇÕ´Ï´Ù.

+ +
ComObject := ComObjEnwrap(DispPtr)
+DispPtr := ComObjUnwrap(ComObject)
+

+¹Ì·¡¸¦ º¸ÀåÇÏ´Â Äڵ带 ÀÛ¼ºÇÏ·Á¸é, ´ë½Å ´ÙÀ½°ú °°ÀÌ »ç¿ëÇϽʽÿÀ:

+ +
ComObject := ComObject(9, DispPtr, 1), ObjAddRef(DispPtr)
+DispPtr := ComObjValue(ComObject), ObjAddRef(DispPtr)
+ +

¸Å°³º¯¼ö

+
+ +
CLSID
+

CLSID ¶Ç´Â »ç¶÷ÀÌ-ÀÐÀ» ¼ö ÀÖ´Â COM °´Ã¼ÀÇ Prog ID.

+ +
ComObject
+

°´Ã¼ ±¸¹®¿¡ »ç¿ë°¡´ÉÇÑ COM °´Ã¼.

+ +
VarType
+

°ªÀÇ À¯ÇüÀ» ³ªÅ¸³»´Â Á¤¼ö. À¯Çü ¸ñ·ÏÀº ComObjType()À» ÂüÁ¶ÇϽʽÿÀ.

+ +
Value
+

Æ÷ÀåÇÒ °ª. ÇöÀç ¿ÀÁ÷ Á¤¼ö¿Í Æ÷ÀÎÅÍ °ª¸¸ Áö¿øÇÕ´Ï´Ù.

+ +
Flags
+

ÀÌ ÇÔ¼öÀÇ ÇàÀ§¿Í Æ÷Àå °´Ã¼ÀÇ ÇàÀ§¿¡ ¿µÇâÀ» ÁÖ´Â Ç÷¡±×; ¾Æ·¡ ÂüÁ¶.

+ +
DispPtr
+

³¯ IDispatch Æ÷ÀÎÅÍ.

+ +
+ +

Ç÷¡±×

+ + + + + + + + + +
 0  +

±âº» ÇàÀ§. AddRef´Â IUnknown°ú IDispatch Æ÷ÀÎÅÍ¿¡ ´ëÇÏ¿© ÀÚµ¿À¸·Î È£ÃâµË´Ï´Ù. ±×·¡¼­ È£ÃâÀÚ´Â ObjRelease¸¦ »ç¿ëÇÏ¿© ÀûÀýÇÏ°Ô Æ÷ÀÎÅÍ »çº»À» ³õ¾Æ ÁÖ¾î¾ß ÇÕ´Ï´Ù.

+

±âº» ÇàÀ§´Â ¾ÕÀ¸·Î ¹Ù²ð ¼ö ÀÖÀ¸¹Ç·Î, ÀÎÅÍÆäÀ̽º Æ÷ÀÎÅ͸¦ Æ÷ÀåÇÒ ¶§ ¾ðÁ¦³ª Flags¸¦ 1·Î ¼³Á¤Çϱ⸦ ±ÇÀåÇÕ´Ï´Ù. ±×¸®°í ÇÊ¿äÇϸé ObjAddRef()¸¦ È£ÃâÇϱ⸦ ±ÇÀåÇÕ´Ï´Ù.

+
 1 IUnknown, IDispatch ¶Ç´Â SAFEARRAY Æ÷ÀÎÅÍÀÇ ¼ÒÀ¯±ÇÀ» ȹµæÇÕ´Ï´Ù. AddRef´Â È£ÃâµÇÁö ¾Ê½À´Ï´Ù. Æ÷Àå °´Ã¼¿¡ SAFEARRAY°¡ µé¾î ÀÖÀ¸¸é (VT_BYREF´Â Á¦¿Ü), Æ÷Àå °´Ã¼°¡ ÇØÁ¦µÉ ¶§ SafeArrayDestroy°¡ ÀÚµ¿À¸·Î È£ÃâµË´Ï´Ù.
+ +

ByRef [v1.1.17+]

+

+Æ÷Àå °´Ã¼ÀÇ VarType¿¡ VT_BYREF (0x4000) Ç÷¡±×°¡ µé¾î ÀÖÀ¸¸é, ºó °¢°ýÈ£[]¸¦ »ç¿ëÇÏ¿© ÂüÁ¶µÈ °ªÀ» Àаųª ¾µ ¼ö ÀÖ½À´Ï´Ù.

+

+ÂüÁ¶¸¦ »ý¼ºÇÒ ¶§, Value´Â ¹Ýµå½Ã ÁÖ¾îÁø À¯ÇüÀÇ °ªÀ» ÀúÀåÇϱ⿡ ÃæºÐÇÑ °¡¿ë ´É·ÂÀÌ ÀÖ´Â º¯¼ö³ª ¹öÆÛÀÇ ¸Þ¸ð¸® ÁÖ¼ÒÀ̾î¾ß ÇÕ´Ï´Ù. ¿¹¸¦ µé¾î, ´ÙÀ½À» »ç¿ëÇϸé VBScript ÇÔ¼ö°¡ ¾µ ¼ö ÀÖ´Â º¯¼ö¸¦ ¸¸µé ¼ö ÀÖ½À´Ï´Ù:

+ +
VarSetCapacity(var, 24, 0)
+vref := ComObject(0x400C, &var)  ; 0x400C´Â VT_BYREF¿Í VT_VARIANTÀÇ Á¶ÇÕÀÔ´Ï´Ù.
+
+vref[] := "in value"
+sc.Run("Example", vref)  ; sc´Â ¹Ýµå½Ã ¾Æ·¡ÀÇ ¿¹Á¦¿Í °°ÀÌ ÃʱâÈ­µÇ¾î¾ß ÇÕ´Ï´Ù.
+MsgBox % vref[]
+ +

ÃÑÆò

+

+ÇöÀç ¹öÀü¿¡¼­, "ComObj"·Î ½ÃÀÛÇÏ´Â ÇÔ¼ö°¡ ´Ù¸¥ COM ÇÔ¼ö Áß Çϳª¿Í ÀÏÄ¡ÇÏÁö ¾ÊÀ¸¸é ½ÇÁ¦·Î´Â ComObjActive¸¦ È£ÃâÇÕ´Ï´Ù. ¿¹¸¦ µé¾î, ComObjEnwrap(DispPtr)¿Í ComObjActive(DispPtr)´Â ¸ðµÎ ComObject(DispPtr)¿Í µ¿µîÇÕ´Ï´Ù (¹¬½ÃÀûÀ¸·Î VarTypeÀº 9ÀÔ´Ï´Ù). ±×·¸Áö¸¸, ÀÌ ÇàÀ§´Â ¾ÕÀ¸·Î »ç¿ëÇÏÁö ¸øÇÒ °ÍÀÔ´Ï´Ù. ±×·¡¼­ ÀÌ ÆäÀÌÁö¿¡¼­ º¸¿©ÁÖ´Â ¹Ù¿Í °°ÀÌ ComObject()¿Í ComObjActive()¸¸ »ç¿ëÇÏ´Â °ÍÀÌ Á¦ÀÏ ÁÁ½À´Ï´Ù.

+

+IDispatch³ª IUnknown ÀÎÅÍÆäÀ̽º Æ÷ÀÎÅ͸¦ Æ÷ÀåÇϰųª ¿­¶÷ÇÏ´Â µ¥ ÀÌ ÇÔ¼ö°¡ »ç¿ëµÉ ¶§, ±âº» ÇàÀ§´Â COM °´Ã¼ÀÇ ÂüÁ¶ Ƚ¼ö¸¦ ´Ã¸®´Â °ÍÀÔ´Ï´Ù. ±×·¯¹Ç·Î, ÀÎÅÍÆäÀ̽º Æ÷ÀÎÅÍ´Â ´õ ÀÌ»ó ÇÊ¿äÇÏÁö ¾ÊÀ» ¶§ ¼öµ¿À¸·Î ÇØÁ¦ÇØ¾ß ÇÕ´Ï´Ù. Æ÷Àå °´Ã¼°¡ ÇØÁ¦µÉ ¶§, ±× ¾È¿¡ µç ÂüÁ¶´Â ÀÚµ¿À¸·Î ÇØÁ¦µË´Ï´Ù.

+

+¾Ë·ÁÁø ÇÑ°è: COM °´Ã¼°¡ Æ÷ÀåµÉ ¶§¸¶´Ù, »õ Æ÷Àå °´Ã¼°¡ »ý¼ºµË´Ï´Ù. obj1 == obj2 ±×¸®°í array[obj1] := value¿Í °°Àº ºñ±³¿Í ÇÒ´çÀº °°Àº COM °´Ã¼¸¦ Æ÷ÇÔÇÏ°í ÀÖÀ» Áö¶óµµ µÎ °³ÀÇ Æ÷Àå °´Ã¼¸¦ À¯ÀÏÇÑ °ÍÀ¸·Î Ãë±ÞÇÕ´Ï´Ù.

+ + +

ComObjCreate, ComObjGet, ComObjConnect, ComObjError, ComObjFlags, ObjAddRef/ObjRelease, ComObjQuery, GetActiveObject (MSDN)

+ +

¿¹Á¦

+

ComObjUnwrap: ´ÙÀ½ ÂüÁ¶ ComObjConnect.

+ +
+; ¿©´Â ¸»- ScriptControlÀº 32-ºñÆ® ¹öÀüÀÇ ¿ÀÅäÇÖÅ°¸¦ ¿ä±¸ÇÕ´Ï´Ù.
+code =
+(
+Sub Example(Var)
+    MsgBox Var
+    Var = "out value!"
+End Sub
+)
+sc := ComObjCreate("ScriptControl"), sc.Language := "VBScript", sc.AddCode(code)
+
+
+; ¿¹Á¦: VARIANT ByRef¸¦ COM ÇÔ¼ö¿¡ °Ç³Ü´Ï´Ù.
+var := ComVar()
+var[] := "in value"
+sc.Run("Example", var.ref)
+MsgBox % var[]
+
+
+; ComVar: °ªÀ» ByRef·Î °Ç³×´Â µ¥ »ç¿ëÇÒ ¼ö ÀÖ´Â °´Ã¼¸¦ »ý¼ºÇÕ´Ï´Ù.
+;   ComVar[] °ªÀ» ¿­¶÷ÇÕ´Ï´Ù
+;   ComVar[] := ValÀº °ªÀ» ¼³Á¤ÇÕ´Ï´Ù
+;   ComVar.ref´Â COM ÇÔ¼ö¿¡ °Ç³×±â À§ÇØ ByRef °´Ã¼¸¦ ¿­¶÷ÇÕ´Ï´Ù.
+ComVar(Type=0xC)
+{
+    static base := { __Get: "ComVarGet", __Set: "ComVarSet", __Delete: "ComVarDel" }
+    ; 1 VARIANTÀÇ ¹è¿­À» ¸¸µì´Ï´Ù.  ÀÌ ¹æ¹ýÀ¸·Î ¸ðµç ³»Àå ÄÚµå´Â 
+    ; VARIANT¿Í AutoHotkey ³»ºÎ À¯Çü »çÀÌÀÇ ¸ðµç º¯È¯À» ó¸®ÇÒ ¼ö ÀÖ½À´Ï´Ù.
+    arr := ComObjArray(Type, 1)
+    ; ±× ¹è¿­À» Àá±×°í VARIANT¸¦ °¡¸®Å°´Â Æ÷ÀÎÅ͸¦ ¿­¶÷ÇÕ´Ï´Ù.
+    DllCall("oleaut32\SafeArrayAccessData", "ptr", ComObjValue(arr), "ptr*", arr_data)
+    ; ±× ¹è¿­À» ÀúÀåÇÕ´Ï´Ù. ±×¸®°í VARIANT ByRef¸¦ °Ç³×´Â µ¥ »ç¿ëÇÒ ¼ö ÀÖ´Â °´Ã¼¸¦ ÀúÁ¤ÇÕ´Ï´Ù.
+    return { ref: ComObject(0x4000|Type, arr_data), _: arr, base: base }
+}
+
+ComVarGet(cv, p*) { ; ½ºÅ©¸³Æ®°¡ ¹ÌÁöÀÇ Çʵ忡 Á¢±ÙÇϸé È£ÃâµË´Ï´Ù.
+    if p.MaxIndex() = "" ; À̸§/¸Å°³º¯¼ö ¾øÀ½. Áï, cv[]
+        return cv._[0]
+}
+
+ComVarSet(cv, v, p*) { ; ½ºÅ©¸³Æ®°¡ ¹ÌÁöÀÇ Çʵ带 ¼³Á¤ÇÒ ¶§ È£ÃâµË´Ï´Ù.
+    if p.MaxIndex() = "" ; À̸§/¸Å°³º¯¼ö ¾øÀ½. Áï, cv[]:=v
+        return cv._[0] := v
+}
+
+ComVarDel(cv) { ; °´Ã¼°¡ ÇØÁ¦µÉ ¶§ È£ÃâµË´Ï´Ù.
+    ; ÀÌ°ÍÀÌ ¼º°øÇØ¾ß ³»ºÎ ¹è¿­ÀÌ ÇØÁ¦µÉ ¼ö ÀÖ½À´Ï´Ù.
+    DllCall("oleaut32\SafeArrayUnaccessData", "ptr", ComObjValue(cv._))
+}
+
+ + + diff --git a/src/docs/commands/ComObjArray.htm b/src/docs/commands/ComObjArray.htm new file mode 100644 index 0000000..a3ad6ec --- /dev/null +++ b/src/docs/commands/ComObjArray.htm @@ -0,0 +1,96 @@ + + + + +ComObjArray() + + + + + + + +

ComObjArray() [v1.0.91+]

+ +

COM¿¡ »ç¿ëÇÒ SafeArray¸¦ »ý¼ºÇÕ´Ï´Ù.

+ +
ArrayObj := ComObjArray(VarType, Count1 [, Count2, ... Count8])
+ +

¸Å°³º¯¼ö

+
+ +
VarType
+
+ ¹è¿­ÀÇ ±âº» À¯Çü (¹è¿­ÀÇ °¢ ¿ø¼ÒÀÇ VARTYPE). VARTYPEÀº variant À¯ÇüÀÇ ºÎºÐÁýÇÕÀ¸·Î Á¦Çѵ˴ϴÙ. VT_ARRAYµµ VT_BYREF Ç÷¡±×µµ ¼³Á¤ÇÒ ¼ö ¾ø½À´Ï´Ù. VT_EMPTY¿Í VT_NULLÀº ¹è¿­¿¡ ´ëÇÏ¿© À¯È¿ÇÑ ±âº» À¯ÇüÀÌ ¾Æ´Õ´Ï´Ù. ´Ù¸¥ ¸ðµç À¯ÇüÀº Àû¹ýÇÕ´Ï´Ù. +

°¡´ÉÇÑ °ªÀÇ ¸ñ·ÏÀº ComObjType¸¦ ÂüÁ¶ÇϽʽÿÀ.

+ +
CountN
+

°¢ Â÷¿øÀÇ Å©±â. ¹è¿­Àº 8 Â÷¿ø±îÁö Áö¿øµË´Ï´Ù.

+ +
ArrayObj
+

SafeArray¸¦ ´ã°í ÀÖ´Â Æ÷Àå °´Ã¼.

+ +
+ +

¸Þ½îµå

+

+¹è¿­ Æ÷Àå °´Ã¼´Â ´ÙÀ½ ¸Þ½îµå¸¦ Áö¿øÇÕ´Ï´Ù:

+

Array.MaxIndex(n): n¹ø° Â÷¿øÀÇ »óÇÑ °ªÀ» µ¹·ÁÁÝ´Ï´Ù. nÀÌ »ý·«µÇ¸é ±âº»°ªÀº 1ÀÔ´Ï´Ù.

+

Array.MinIndex(n): n¹ø° Â÷¿øÀÌ ÇÏÇÑ °ªÀ» µ¹·ÁÁÝ´Ï´Ù. nÀÌ »ý·«µÇ¸é, ±âº»°ªÀº 1ÀÔ´Ï´Ù.

+

Array.Clone() [v1.0.96.00+]: ¹è¿­ÀÇ »çº»À» µ¹·ÁÁÝ´Ï´Ù.

+

Array._NewEnum() [v1.0.96.00+]: º¸Åë ½ºÅ©¸³Æ®°¡ È£ÃâÇÏÁö ¾Ê½À´Ï´Ù; for-ȸµ¹À̸¦ SafeArrays¿¡ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù.

+ +

ÃÑÆò

+

+COM ¸Þ½îµå¿Í ComObjActive´Â ¾î¶°ÇÑ Æ÷Àå °´Ã¼µµ µ¹·ÁÁÙ ¼ö ÀÖÀ¸¸ç ½ºÅ©¸³Æ®´Â °ªÀÌ ¹è¿­ÀÎÁö ´ÙÀ½°ú °°ÀÌ ¾Ë¾Æ³¾ ¼ö ÀÖ½À´Ï´Ù:

+ +
if ComObjType(obj) & 0x2000
+    MsgBox % "Array subtype: " . ComObjType(obj) & 0xfff
+else
+    MsgBox Not an array.
+

+ÃÖ´ë 8 Â÷¿ø±îÁö Áö¿øµË´Ï´Ù.

+

+[v1.0.96.00+]: ¾ÈÀü¹è¿­(SafeArrays)´Â ´ÙÁß ÂüÁ¶¸¦ Áö¿øÇϵµ·Ï ¼³°èµÇ¾î ÀÖÁö ¾Ê±â ¶§¹®¿¡, ÇÑ ¾ÈÀü¹è¿­ÀÌ ¶Ç´Ù¸¥ ¾ÈÀü¹è¿­ÀÇ ¿ø¼Ò·Î ÇÒ´çµÉ ¶§, »çº»ÀÌ µû·Î »ý¼ºµË´Ï´Ù. ±×·¸Áö¸¸, ÀÌ·± ÀÏÀº ±× Æ÷Àå °´Ã¼¿¡ F_OWNVALUE Ç÷¡±×°¡ ÀÖÀ» °æ¿ì¿¡¸¸ ÀϾ´Ï´Ù. ÀÌ Ç÷¡±×´Â ±× ¹è¿­À» Æı«ÇÒ Ã¥ÀÓÀÌ ÀÖ´Ù´Â ¶æÀ» ³ªÅ¸³À´Ï´Ù. ComObjFlags¸¦ »ç¿ëÇϸé ÀÌ Ç÷¡±×¸¦ Á¦°ÅÇÒ ¼ö ÀÖ½À´Ï´Ù.

+

[v1.1.17.00+]: COM Ŭ¶óÀ̾ðÆ®¿¡ ÀÇÇÏ¿© È£ÃâµÇ´Â ÇÔ¼ö³ª ¸Þ½îµå°¡ F_OWNVALUE¸¦ °¡Áø ¾ÈÀü¹è¿­À» µ¹·ÁÁÖ¸é, ´ë½Å¿¡ »çº»ÀÌ »ý¼ºµÇ°í ¹ÝȯµË´Ï´Ù. ¿ø·¡ÀÇ SafeArray´Â ÀÚµ¿À¸·Î Æı«µË´Ï´Ù.

+ +

°ü·Ã Ç׸ñ

+

ComObjType, ComObjValue, ComObjActive, ComObjFlags, ¹è¿­ Á¶ÀÛ ÇÔ¼ö (MSDN)

+ +

¿¹Á¦

+
; ¿¹Á¦ #1: °£´ÜÇÑ »ç¿ë¹ý.
+
+arr := ComObjArray(VT_VARIANT:=12, 3)
+arr[0] := "Auto"
+arr[1] := "Hot"
+arr[2] := "key"
+Loop % arr.MaxIndex() + 1
+   t .= arr[A_Index-1]
+MsgBox % t
+
+ +
; ¿¹Á¦ #2: ´Ù Â÷¿ø.
+
+arr := ComObjArray(VT_VARIANT:=12, 3, 4)
+
+; Â÷¿øÀÇ °³¼ö¸¦ ¾ò½À´Ï´Ù:
+dim := DllCall("oleaut32\SafeArrayGetDim", "ptr", ComObjValue(arr))
+
+; °¢ Â÷¿øÀÇ »óÇÑ°ª°ú ÇÏÇÑ°ªÀ» ¾ò½À´Ï´Ù:
+Loop %dim%
+    dims .= arr.MinIndex(A_Index) " .. " arr.MaxIndex(A_Index) "`n"
+MsgBox %dims%
+
+; °£´ÜÇÑ »ç¿ë¹ý:
+Loop 3 {
+    x := A_Index-1
+    Loop 4 {
+        y := A_Index-1
+        arr[x, y] := x * y
+    }
+}
+MsgBox % arr[2, 3]
+
+ + + diff --git a/src/docs/commands/ComObjConnect.htm b/src/docs/commands/ComObjConnect.htm new file mode 100644 index 0000000..c3ce70d --- /dev/null +++ b/src/docs/commands/ComObjConnect.htm @@ -0,0 +1,85 @@ + + + + +ComObjConnect() + + + + + + + +

ComObjConnect() [AHK_L 53+]

+

°´Ã¼ÀÇ À̺¥Æ® ¼Ò½º¸¦ ÁÖ¾îÁø Á¢µÎ»ç¸¦ °¡Áø ÇÔ¼ö¿¡ ¿¬°áÇÕ´Ï´Ù.

+
ComObjConnect(ComObject [, Prefix])
+ +

¸Å°³º¯º¯¼ö

+
+ +
ComObject
+
+

À̺¥Æ®¸¦ ÀÏÀ¸Å°´Â °´Ã¼.

+

°´Ã¼°¡ IConnectionPointContainer ÀÎÅÍÆäÀ̽º¸¦ Áö¿øÇÏÁö ¾Ê°Å³ª ¶Ç´Â °´Ã¼ÀÇ Å¬·¡½º¿¡ °üÇÑ À¯ÇüÁ¤º¸¸¦ ¿­¶÷ÇÒ ¼ö ¾øÀ¸¸é, ¿¡·¯ ¸Þ½ÃÁö°¡ ³ªÅ¸³³´Ï´Ù. ÀÌ°ÍÀº ComObjError ¶Ç´Â try/catchÀ¸·Î ¾ï´©¸£°Å³ª ó¸®ÇÒ ¼ö ÀÖ½À´Ï´Ù.

+

[v1.1.22]+¿¡¼­, IProvideClassInfo ÀÎÅÍÆäÀ̽º¸¦ °´Ã¼°¡ Áö¿øÇÏ¸é ±× Å¬·¡½ºÀÇ °üÇÑ À¯ÇüÁ¤º¸¸¦ ¿­¶÷ÇÏ´Â µ¥ »ç¿ëµË´Ï´Ù. ±×·¸Áö ¾ÊÀ¸¸é, ComObjConnect´Â °´Ã¼ÀÇ IDispatch ÀÎÅÍÆäÀ̽º¸¦ ÅëÇÏ À¯Çü Á¤º¸¸¦ ¿­¶÷ÇÏ·Á°í ½ÃµµÇϴµ¥, ÀÌ°ÍÀº ½Å·Ú¼ºÀÌ ¶³¾îÁý´Ï´Ù.

+
+ +
Prefix
+
+

À̺¥Æ® À̸§ ¾Õ¿¡ ºÙÀÏ ¹®ÀÚ¿­. À̺¥Æ®°¡ ÀϾ ¶§ È£ÃâÇÒ ÇÔ¼ö¸¦ °áÁ¤ÇÕ´Ï´Ù.

+

»ý·«Çϸé, °´Ã¼°¡ "¿¬°áÀÌ ²÷±é´Ï´Ù"; Áï, ½ºÅ©¸³Æ®´Â ´õ ÀÌ»ó ±×ÀÇ À̺¥Æ® °íÁö¸¦ ¹ÞÁö ¾Ê½À´Ï´Ù.

+

[v1.1.01+]: ÀÌ ¸Å°³º¯¼ö´Â ½ºÅ©¸³Æ®°¡ ÁöÁ¤ÇÑ °´Ã¼ÀÏ ¼ö ÀÖ½À´Ï´Ù. À̺¥Æ®°¡ ÀϾ¸é, ±×¿¡ »óÀÀÇÏ´Â ¸Þ½îµå°¡ È£ÃâµË´Ï´Ù. ù ¸Å°³º¯¼ö´Â º¸Åë ¼ûÀº this ¸Å°³º¯¼öÀÔ´Ï´Ù. ÀÌ ¸Å°³º¯¼ö´Â COM °´Ã¼ ¸»°í ½ºÅ©¸³Æ®¿¡-Á¤ÀÇµÈ °´Ã¼¸¦ ÂüÁ¶ÇÕ´Ï´Ù. °¢ À̺¥Æ®¸¶´Ù ¸Þ½îµå¸¦ Á¤ÀÇÇÏÁö ¾Ê°í ¸ðµç À̺¥Æ®¸¦ ³ªÆ÷ÇÏ·Á¸é __Call ¸ÞŸ-ÇÔ¼ö¸¦ Á¤ÀÇÇϽʽÿÀ.

+
+ +
+ +

»ç¿ë¹ý

+

+È¿°úÀûÀ¸·Î ComObjConnect¸¦ »ç¿ëÇÏ·Á¸é, ¸ÕÀú °ü½ÉÀ» µÐ À̺¥Æ®¸¦ ó¸®ÇÒ ÇÔ¼ö¸¦ ½ºÅ©¸³Æ®¿¡ ÀÛ¼ºÇØ¾ß ÇÕ´Ï´Ù. "À̺¥Æ®-ó¸®ÀÚ"¶ó°í ÇÏ´Â ±×·± ÇÔ¼ö´Â ±¸Á¶°¡ ´ÙÀ½°ú °°½À´Ï´Ù:

+
PrefixEventName([Params..., ComObject])
+{
+    ... event-handling code ...
+    return returnValue
+}
+

Prefix´Â ¿©·¯ºÐÀÌ °í¸¥ Á¢µÎ»çÀÔ´Ï´Ù. ¹Ý¸é¿¡ EventNameÀº ÇÔ¼ö°¡ ó¸®ÇØ¾ß ÇÏ´Â À̺¥Æ®ÀÇ À̸§ÀÔ´Ï´Ù.

+

Params´Â À̺¥Æ®°¡ °¡Áø ¸Å°³º¯¼ö¿¡ »óÀÀÇÕ´Ï´Ù. À̺¥Æ®¿¡ ¸Å°³º¯¼ö°¡ ¾øÀ¸¸é, Paramsµµ ¿ÏÀüÈ÷ »ý·«µÇ¾î¾ß ÇÕ´Ï´Ù. ComObject´Â ¼±ÅÃÀûÀÔ´Ï´Ù. ±×¸®°í ParamsÀÇ °³¼ö°¡ ¿Ã¹Ù¸£°Ô Á¤ÀǵǾî ÀÖÀ» °æ¿ì¿¡¸¸ »ç¿ëÇØ¾ß ÇÕ´Ï´Ù; ±× ¾È¿¡ ComObjConnect¿¡ °Ç³Þ´ø ¿ø·¡ Æ÷Àå °´Ã¼¸¦ °¡¸®Å°´Â ÂüÁ¶°¡ µé¾î ÀÖ½À´Ï´Ù. "ComObject"´Â ¿©·¯ºÐÀÇ ½ºÅ©¸³Æ® ¹®¸Æ¿¡ ¸Â°Ô º¸´Ù ÀǹÌÀÖ´Â À̸§À¸·Î ±³Ã¼µÇ¾î¾ß ÇÕ´Ï´Ù.

+

+À̺¥Æ® ó¸®ÀÚ´Â ¹Ýȯ °ªÀÌ ÀÖÀ» ¼ö ÀÖ´Ù´Â »ç½Ç¿¡ ÁÖ¸ñÇϽʽÿÀ. COM-Á¾¼ÓÀû À¯ÇüÀÇ °ªÀ» µ¹·ÁÁÖ·Á¸é, ComObject(type, value)¸¦ »ç¿ëÇϽʽÿÀ. ¿¹¸¦ µé¾î, return ComObject(0,0)´Â variant À¯ÇüÀÇ VT_EMPTY¸¦ µ¹·ÁÁÝ´Ï´Ù. ÀÌ°ÍÀº ÀÚ¹Ù½ºÅ©¸³Æ®¿¡¼­ undefined¸¦ µ¹·ÁÁÖ´Â °Í (¶Ç´Â ¾Æ¹«°Íµµ µ¹·ÁÁÖÁö ¾Ê´Â °Í)°ú µ¿µîÇÕ´Ï´Ù.

+

+À̺¥Æ® 󸮸¦ ÄÑ·Á¸é ComObjConnect(yourObject, "Prefix")¸¦ È£ÃâÇÕ´Ï´Ù.

+

+°´Ã¼¿Í ¿¬°áÀ» ²÷À¸·Á¸é (À̺¥Æ® 󸮸¦ ÁßÁöÇÏ·Á¸é) ComObjConnect(yourObject)¸¦ È£ÃâÇÕ´Ï´Ù.

+

+¸Å°³º¯¼ö °³¼ö¸¦ ¾ËÁö ¸øÇϸé, °¡º¯ ÇÔ¼ö¸¦ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù.

+ +

°ü·Ã Ç׸ñ

+

ComObjCreate, ComObjGet, ComObjActive, ComObjError, WScript.ConnectObject (MSDN)

+ +

¿¹Á¦

+
+ie := ComObjCreate("InternetExplorer.Application")
+
+; »óÀÀÇÏ´Â ½ºÅ©¸³Æ® ÇÔ¼ö¿¡ Á¢µÎ»ç¸¦ "IE_"·Î ÇÏ¿© À̺¥Æ®¸¦ ¿¬°áÇÕ´Ï´Ù.
+ComObjConnect(ie, "IE_")
+
+ie.Visible := true  ; ÀÌ°ÍÀº IE7¿¡¼­ Á¦´ë·Î ÀÛµ¿ÇÏÁö ¾Ê´Â´Ù°í ¾Ë·ÁÁ® ÀÖ½À´Ï´Ù.
+ie.Navigate("http://ahkscript.org/")
+#Persistent
+
+IE_DocumentComplete(ieEventParam, url, ieFinalParam) {
+    global ie
+    if (ie != ieEventParam)
+        s .= "ù ¸Å°³º¯¼ö´Â »õ Æ÷Àå °´Ã¼ÀÔ´Ï´Ù.`n"
+    if (ie == ieFinalParam)
+        s .= "¸¶Áö¸· ¸Å°³º¯¼ö´Â ¿ø·¡ Æ÷Àå °´Ã¼ÀÔ´Ï´Ù.`n"
+    if ((disp1:=ComObjUnwrap(ieEventParam)) == (disp2:=ComObjUnwrap(ieFinalParam)))
+        s .= "µÎ Æ÷Àå °´Ã¼ ¸ðµÎ °°Àº IDispatch ½Çü¸¦ °¡¸®Åµ´Ï´Ù.`n"
+    ObjRelease(disp1), ObjRelease(disp2)
+    MsgBox % s . "Finished loading " ie.Document.title " @ " url
+    ie.Quit()
+    ExitApp
+}
+
+ + + diff --git a/src/docs/commands/ComObjCreate.htm b/src/docs/commands/ComObjCreate.htm new file mode 100644 index 0000000..bf14d15 --- /dev/null +++ b/src/docs/commands/ComObjCreate.htm @@ -0,0 +1,49 @@ + + + + +ComObjCreate() + + + + + + + +

ComObjCreate() [AHK_L 53+]

+

COM °´Ã¼¸¦ ¸¸µì´Ï´Ù.

+
ComObject := ComObjCreate(CLSID [, IID])
+ +

¸Å°³º¯¼ö

+
+ +
CLSID
+

CLSID ¶Ç´Â Àΰ£ÀÌ-ÀÐÀ» ¼ö ÀÖ´Â COM °´Ã¼ÀÇ Prog ID.

+ +
IID
+

[v1.0.96.00+]: °´Ã¼°¡ Áö¿øÇÏ´Â ÀÎÅÍÆäÀ̽ºÀÇ ½Äº°ÀÚ.

+ +
+ +

¹Ýȯ °ª

+

+¿¡·¯°¡ ÀϾ¸é, ºó ¹®ÀÚ¿­ÀÌ ¹ÝȯµË´Ï´Ù.

+

+IID°¡ ÁöÁ¤µÇ¸é, ÀÎÅÍÆäÀ̽º Æ÷ÀÎÅÍ°¡ ¹ÝȯµË´Ï´Ù. ½ºÅ©¸³Æ®´Â Æ÷ÀÎÅÍ ÀÛ¾÷ÀÌ ³¡³ª¸é ÀüÇüÀûÀ¸·Î ObjRelease¸¦ È£ÃâÇÕ´Ï´Ù.

+

+±×·¸Áö ¾ÊÀ¸¸é, ½ºÅ©¸³Æ®°¡ »ç¿ëÇÒ ¼ö ÀÖ´Â Æ÷Àå °´Ã¼°¡ ¹ÝȯµË´Ï´Ù. °´Ã¼ ±¸¹®À» ÂüÁ¶ÇϽʽÿÀ.

+ +

°ü·Ã Ç׸ñ

+ComObjGet, ComObjActive, ComObjConnect, ComObjArray, ComObjError, ComObjQuery, CreateObject (MSDN) + +

¿¹Á¦

+

+°è¼ÓÇؼ­ Áõ°¡ÇÏ´Â ¸®½ºÆ®ÀÇ ¿¹´Â ´ÙÀ½ Æ÷·³ÀÇ ÅäÇÈÀ» ÂüÁ¶ÇϽʽÿÀ: http://www.autohotkey.com/forum/topic61509.html.

+
+ie := ComObjCreate("InternetExplorer.Application")
+ie.Visible := true  ; IE7¿¡ ´ëÇؼ­´Â Àß ÀÛµ¿ÇÏÁö ¾Ê´Â´Ù°í ¾Ë·ÁÁ® ÀÖ½À´Ï´Ù.
+ie.Navigate("http://ahkscript.org/")
+
+ + + diff --git a/src/docs/commands/ComObjError.htm b/src/docs/commands/ComObjError.htm new file mode 100644 index 0000000..af3b8d1 --- /dev/null +++ b/src/docs/commands/ComObjError.htm @@ -0,0 +1,37 @@ + + + + +ComObjError() + + + + + + + +

ComObjError() [AHK_L 53+]

+ +

COM ¿¡·¯ÀÇ °íÁö¸¦ ÄÑ°í ²ü´Ï´Ù.

+ +
Enabled := ComObjError([Enable])
+

Parameters

+
+ +
Enable
+

ºÒ¸®¾ð °ª (true ¶Ç´Â false). ¼±ÅÃÀû.

+ +
Enabled
+

[v1.0.91+]: ÀÌ ÇÔ¼ö°¡ È£ÃâµÇ±â Àü¿¡ È¿°ú°¡ ÀÖ´ø °ªÀ»¹Þ½À´Ï´Ù.

+ +
+ +

ÃÑÆò

+

+COM °´Ã¼¿¡ Á¢±ÙÇÏ°í ³ª¸é, A_LastError¿¡´Â COM °´Ã¼ÀÇ IDispatch::Invoke ÇÔ¼ö°¡ µ¹·ÁÁÖ´Â HRESULT Äڵ尡 ´ã±é´Ï´Ù. ½ºÅ©¸³Æ®´Â ÀڽŸ¸ÀÇ ¿¡·¯-󸮸¦ ±¸ÇöÇÒ ¼ö ÀÖ½À´Ï´Ù. ComObjError(false)¸¦ È£ÃâÇÏ¿© ¿¡·¯ °íÁö¸¦ ²ô°í A_LastErrorÀÇ °ªÀ» Âü°íÇÏ¸é µË´Ï´Ù.

+ +

°ü·Ã Ç׸ñ

+

ComObjCreate, ComObjGet, ComObjActive, ComObjConnect

+ + + diff --git a/src/docs/commands/ComObjFlags.htm b/src/docs/commands/ComObjFlags.htm new file mode 100644 index 0000000..b3ee198 --- /dev/null +++ b/src/docs/commands/ComObjFlags.htm @@ -0,0 +1,80 @@ + + + + +ComObjFlags() + + + + + + + + +

ComObjFlags() [v1.0.96.00+]

+

COM Æ÷Àå °´Ã¼ÀÇ ÇàÀ§¸¦ Á¦¾îÇÏ´Â Ç÷¡±×¸¦ ¿­¶÷Çϰųª ¹Ù²ß´Ï´Ù.

+
Flags := ComObjFlags(ComObject [, NewFlags, Mask])
+ +

¸Å°³º¯¼ö

+
+ +
ComObject
+

COM Æ÷Àå °´Ã¼.

+ +
NewFlags
+

Mask·Î ½Äº°µÇ´Â ÇÁ·¡±×¿¡ ´ëÇÑ »õ °ª, ¶Ç´Â Ãß°¡Çϰųª ´õÇÒ Ç÷¡±×.

+ +
Mask
+

¹Ù²Ü ºñÆ®¸¶½ºÅ© Ç÷¡±×.

+ +
Flags
+

ComObject°´Ã¼ÀÇ ¸ðµç Ç÷¡±× (ÁöÁ¤Çϸé, NewFlags°¡ Àû¿ëµÈ ÈÄÀÇ).

+ +
+ +

Flags

+ + + + + +
F_OWNVALUE
1
+ ÇöÀç´Â ¿ÀÁ÷ SafeArrays¿¡¸¸ ¿µÇâÀ» ÁÝ´Ï´Ù. ÀÌ Ç÷¡±×°¡ ¼³Á¤µÇ¸é, SafeArray´Â Æ÷Àå °´Ã¼°¡ ÇØÁ¦µÉ ¶§ Æı«µË´Ï´Ù. SafeArrays´Â ÂüÁ¶ Ƚ¼ö ¼¼±â ¸ÞÄ¿´ÏÁòÀÌ ¾øÀ¸¹Ç·Î, ¸¸¾à ÀÌ Ç÷¡±×¸¦ °¡Áø SafeArray°¡ ¶Ç´Ù¸¥ SafeArrayÀÇ ÇÑ ¿ø¼Ò¿¡ ÇÒ´çµÇ¸é, µû·Î »çº»ÀÌ »ý¼ºµË´Ï´Ù.
+ +

ÃÑÆò

+

+Mask¸¦ »ý·«Çϸé, NewFlags´Â (¾ç¼öÀ̸é) ´õÇÒ Ç÷¡±×, (À½¼öÀ̸é) Á¦°ÅÇÒ Ç÷¡±×¸¦ ÁöÁ¤ÇÕ´Ï´Ù. ¿¹¸¦ µé¾î, ComObjFlags(obj, -1)´Â F_OWNVALUE Ç÷¡±×¸¦ Á¦°ÅÇÕ´Ï´Ù. Mask¿¡´Â 0À̳ª 1¸»°í ´Ù¸¥ °ªÀ» ÁöÁ¤ÇÏÁö ¸¶½Ê½Ã¿À; ´Ù¸¥ ¸ðµç ºñÆ®´Â ¹Ì·¡¿¡ »ç¿ëÇÒ ¸ñÀûÀ¸·Î ¿¹¾àµÇ¾î ÀÖ½À´Ï´Ù.

+ +

°ü·Ã Ç׸ñ

+

ComObjActive, ComObjArray

+ +

¿¹Á¦

+
; ¿¹Á¦: F_OWNVALUE Çñ׷¡°¡ ÀÖ´ÂÁö Á¡°ËÇÕ´Ï´Ù.
+
+arr := ComObjArray(0xC, 1)
+if ComObjFlags(arr) & 1
+    MsgBox arrÀº ÀÚµ¿À¸·Î Æı«µË´Ï´Ù.
+else
+    MsgBox arr´Â ÀÚµ¿À¸·Î Æı«µÇÁö ¾Ê½À´Ï´Ù.
+
+ +
; ¿¹Á¦: ¹è¿­-¾ÈÀÇ ¹è¿­ ÇàÀ§ ¹Ù²Ù±â.
+
+arr1 := ComObjArray(0xC, 3)
+arr2 := ComObjArray(0xC, 1)
+arr2[0] := "original value"
+arr1[0] := arr2         ; ¹¬½ÃÀû »çº»À» ÇÒ´çÇÕ´Ï´Ù.
+ComObjFlags(arr2, -1)   ; F_OWNVALUE¸¦ Á¦°ÅÇÕ´Ï´Ù.
+arr1[1] := arr2         ; ¿øº» ¹è¿­À» ÇÒ´çÇÕ´Ï´Ù.
+arr1[2] := arr2.Clone() ; ¸í½ÃÀû »çº»À» ÇÒ´çÇÕ´Ï´Ù.
+arr2[0] := "new value"
+for arr in arr1
+    MsgBox % arr[0]
+
+arr1 := ""
+; arr2 == arr1[1]À̱⠶§¹®¿¡ À¯È¿ÇÏÁö ¾Ê½À´Ï´Ù. ÀÌ¹Ì Æı«µÇ¾ú½À´Ï´Ù: 
+;  arr2[0] := "foo"
+
+ + + diff --git a/src/docs/commands/ComObjGet.htm b/src/docs/commands/ComObjGet.htm new file mode 100644 index 0000000..445fef3 --- /dev/null +++ b/src/docs/commands/ComObjGet.htm @@ -0,0 +1,51 @@ + + + + +ComObjGet() + + + + + + + +

ComObjGet() [AHK_L 53+]

+

COM ÄÄÆ÷³ÍÆ®°¡ Á¦°øÇÑ °´Ã¼¸¦ °¡¸®Å°´Â ÂüÁ¶¸¦ µ¹·ÁÁÝ´Ï´Ù.

+
ComObject := ComObjGet(Name)
+ +

¸Å°³º¯¼ö

+
+ +
Name
+

¿­¶÷ °¡´ÉÇÑ °´Ã¼ÀÇ À̸§. ´õ ÀÚ¼¼ÇÑ Á¤º¸´Â MkParseDisplayName (MSDN)À» ÂüÁ¶ÇϽʽÿÀ.

+ +
+ +

°ü·Ã Ç׸ñ

+ComObjCreate, ComObjActive, ComObjConnect, ComObjError, ComObjQuery, CoGetObject (MSDN) + +

¿¹Á¦

+
; ¿¹Á¦: Shift+Escape¸¦ ´©¸£¸é È°¼º âÀÇ ÇÁ·Î¼¼½º¸¦
+;   ±âµ¿½ÃÅ°´Â µ¥ »ç¿ëµÈ ¸í·ÉÁÙ À» º¼ ¼ö ÀÖ½À´Ï´Ù.
++Esc::
+    WinGet pid, PID, A
+    ; WMI ¼­ºñ½º °´Ã¼¸¦ ¾ò½À´Ï´Ù.
+    wmi := ComObjGet("winmgmts:")
+    ; ÁúÀǸ¦ ½ÇÇàÇØ ºÎÇÕÇÏ´Â ÇÁ·Î¼¼½º(µé)¸¦ ¿­¶÷ÇÕ´Ï´Ù.
+    queryEnum := wmi.ExecQuery(""
+        . "Select * from Win32_Process where ProcessId=" . pid)
+        ._NewEnum()
+    ; ù ¹ø°·Î ºÎÇÕÇÏ´Â ÇÁ·Î¼¼½º¸¦ ¾ò½À´Ï´Ù.
+    if queryEnum[process]
+        MsgBox 0, Command line, % process.CommandLine
+    else
+        MsgBox Process not found!
+    ; ¸ðµç Àü¿ª °´Ã¼¸¦ Ç®¾îÁÝ´Ï´Ù (Áö¿ª º¯¼ö¸¦ »ç¿ëÇÒ ¶§´Â ÇÊ¿äÄ¡ ¾ÊÀ½).
+    wmi := queryEnum := process := ""
+return
+; Win32_Process: http://msdn.microsoft.com/en-us/library/aa394372.aspx
+
+ + + diff --git a/src/docs/commands/ComObjQuery.htm b/src/docs/commands/ComObjQuery.htm new file mode 100644 index 0000000..9434587 --- /dev/null +++ b/src/docs/commands/ComObjQuery.htm @@ -0,0 +1,121 @@ + + + + +ComObjQuery() + + + + + + + +

ComObjQuery() [v1.0.96.00+]

+

COM °´Ã¼¿¡ ÀÎÅÍÆäÀ̽º³ª ¼­ºñ½º°¡ ÀÖ´ÂÁö ÁúÀÇÇÕ´Ï´Ù.

+ +
InterfacePointer := ComObjQuery(ComObject, [SID,] IID)
+ +

¸Å°³º¯¼ö

+
+ +
ComObject
+

COM Æ÷Àå °´Ã¼ ¶Ç´Â ³¯ ÀÎÅÍÆäÀ̽º Æ÷ÀÎÅÍ.

+ +
IID
+

ÀÎÅÍÆäÀ̽º ½Äº°ÀÚ (GUID). Çü½Ä "{xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx}".

+ +
SID
+

¼­ºñ½º ½Äº°ÀÚ. IID¿Í Çü½ÄÀÌ °ª½À´Ï´Ù. ÀÌ ¸Å°³º¯¼ö°¡ »ý·«µÇ¸é, ½°Ç¥µµ »ý·«µË´Ï´Ù.

+ +
+ +

ÃÑÆò

+

+±×ÀÇ µÎ-¸Å°³º¯¼ö ¸ðµå¿¡¼­, ÀÌ ÇÔ¼ö´Â IUnknown::QueryInterface¿Í µ¿µîÇÕ´Ï´Ù. SID¿Í IID ¸ðµÎ ÁöÁ¤µÇ¸é, ³»ºÎÀûÀ¸·Î IServiceProvider ÀÎÅÍÆäÀ̽º¿¡ ÁúÀÇÇÑ ´ÙÀ½, IServiceProvider::QueryService¸¦ È£ÃâÇÕ´Ï´Ù. ¾î´À °æ¿ìµç, ¹Ýȯ °ªÀº 0 À̰ųª ¾Æ´Ï¸é ¿äûµÈ ÀÎÅÍÆäÀ̽º¸¦ °¡¸®Å°´Â Æ÷ÀÎÅÍÀÔ´Ï´Ù. ÀϹÝÀûÀ¸·Î ÀÌ Æ÷ÀÎÅÍ´Â ¹Ýµå½Ã ½ºÅ©¸³Æ®°¡ ÀÏÀ» ¸¶Ä¥ ¶§ ÇØÁ¦µÇ¾î¾ß ÇÕ´Ï´Ù.

+ +

°ü·Ã Ç׸ñ

+ObjRelease, ComObjCreate, ComObjGet, ComObjActive, ComObjError + +

¿¹Á¦

+ +
; ¿¹Á¦: °´Ã¼ÀÇ Å¬·¡½º À̸§À» ¾Ë¾Æ³À´Ï´Ù
+
+obj := ComObjCreate("Scripting.Dictionary")
+
+MsgBox % "Interface name: " ComObjType(obj, "name")
+
+IID_IProvideClassInfo := "{B196B283-BAB4-101A-B69C-00AA00341D07}"
+
+; ±× °´Ã¼ÀÇ IProvideClassInfo ÀÎÅÍÆäÀ̽º¸¦ °¡¸®Å°´Â Æ÷ÀÎÅ͸¦ ¿ä±¸ÇÕ´Ï´Ù.
+if !(pci := ComObjQuery(obj, IID_IProvideClassInfo))
+{
+    MsgBox IProvideClassInfo interface not supported.
+    return
+}
+
+; GetClassInfo¸¦ È£ÃâÇØ ITypeInfo ÀÎÅÍÆäÀ̽º¸¦ °¡¸®Å°´Â Æ÷ÀÎÅ͸¦ ¿­¶÷ÇÕ´Ï´Ù.
+DllCall(vtable(pci, 3), "ptr", pci, "ptr*", ti)
+
+; GetDocumentationÀ» È£ÃâÇÏ¿© ±× °´Ã¼ÀÇ ¿ÏÀüÇÑ À¯Çü À̸§À» ¾ò½À´Ï´Ù.
+DllCall(vtable(ti, 12), "ptr", ti, "int", -1, "ptr*", name, "ptr", 0, "ptr", 0, "ptr", 0)
+
+; BSTR Æ÷ÀÎÅ͸¦ ¾µ¸ðÀÖ´Â ¹®ÀÚ¿­·Î º¯È¯ÇÕ´Ï´Ù.
+name := StrGet(name, "UTF-16")
+
+; ³¯ ÀÎÅÍÆäÀ̽º Æ÷ÀÎÅ͵éÀ» ÇØÁ¦ÇÕ´Ï´Ù.
+ObjRelease(ti)
+ObjRelease(pci)
+
+; À¯Çü À̸§À» º¸¿©ÁÝ´Ï´Ù!
+MsgBox % "Class name: " name
+
+vtable(ptr, n) {
+    ; NumGet(ptr+0)Àº ±× °´Ã¼ÀÇ °¡»ó ÇÔ¼ö Å×À̺íÀÇ (¾àÀÚ·Î vtable)
+    ; ÁÖ¼Ò¸¦ µ¹·ÁÁÝ´Ï´Ù. Ç¥Çö½ÄÀÇ ³ª¸ÓÁö´Â n¹ø° ÇÔ¼öÀÇ ÁÖ¼Ò¸¦
+    ; vtable·ÎºÎÅÍ ¿­¶÷ÇÕ´Ï´Ù.
+    return NumGet(NumGet(ptr+0), n*A_PtrSize)
+}
+
+ +
; ¿¹Á¦: ±âÁ¸ÀÇ ÀÎÅÍ³Ý ÀͽºÇ÷η¯ âÀ» ÀÚµ¿È­Çϱâ.
+
+sURL := "http://ahkscript.org/boards/"
+if webBrowser := GetWebBrowser()
+   webBrowser.Navigate(sURL)
+return
+
+GetWebBrowser()
+{
+    ; ÃÖ»óÀ§ IE âÀÇ ¹®¼­ °´Ã¼¸¦ °¡¸®Å°´Â ³¯ Æ÷ÀÎÅ͸¦ ¾ò½À´Ï´Ù.
+    static msg := DllCall("RegisterWindowMessage", "str", "WM_HTML_GETOBJECT")
+    SendMessage msg, 0, 0, Internet Explorer_Server1, ahk_class IEFrame
+    if ErrorLevel = FAIL
+        return  ; IE°¡ ¹ß°ßµÇÁö ¾ÊÀ½.
+    lResult := ErrorLevel
+    DllCall("oleacc\ObjectFromLresult", "ptr", lResult
+        , "ptr", GUID(IID_IHTMLDocument2,"{332C4425-26CB-11D0-B483-00C04FD90119}")
+        , "ptr", 0, "ptr*", pdoc)
+    
+    ; WebBrowserApp ¼­ºñ½º¿¡ ÁúÀÇÇÕ´Ï´Ù. ÀÌ Æ¯º°ÇÑ °æ¿ì´Â
+    ; SID¿Í IID°¡ °°½À´Ï´Ù. ±×·¯³ª ¾ðÁ¦³ª ÀÌ·± °ÍÀº ¾Æ´Õ´Ï´Ù.
+    static IID_IWebBrowserApp := "{0002DF05-0000-0000-C000-000000000046}"
+    static SID_SWebBrowserApp := IID_IWebBrowserApp
+    pweb := ComObjQuery(pdoc, SID_SWebBrowserApp, IID_IWebBrowserApp)
+    
+    ; ¹®¼­ °´Ã¼ Æ÷ÀÎÅ͸¦ Ç®¾îÁÝ´Ï´Ù.
+    ObjRelease(pdoc)
+    
+    ; WebBrowser °´Ã¼¸¦, »ç¿ëÀ» À§ÇØ Æ÷ÀåÇؼ­, ¹ÝȯÇÕ´Ï´Ù:
+    static VT_DISPATCH := 9, F_OWNVALUE := 1
+    return ComObject(VT_DISPATCH, pweb, F_OWNVALUE)
+}
+
+GUID(ByRef GUID, sGUID) ; ¹®ÀÚ¿­À» ÀÌÁø GUID·Î º¯È¯ÇÏ°í ±×ÀÇ ÁÖ¼Ò¸¦ µ¹·ÁÁÝ´Ï´Ù.
+{
+    VarSetCapacity(GUID, 16, 0)
+    return DllCall("ole32\CLSIDFromString", "wstr", sGUID, "ptr", &GUID) >= 0 ? &GUID : ""
+}
+
+ + + diff --git a/src/docs/commands/ComObjType.htm b/src/docs/commands/ComObjType.htm new file mode 100644 index 0000000..a5f676b --- /dev/null +++ b/src/docs/commands/ComObjType.htm @@ -0,0 +1,98 @@ + + + + +ComObjType() + + + + + + + +

ComObjType() [v1.0.91+]

+ +

À¯Çü Á¤º¸¸¦ COM °´Ã¼·ÎºÎÅÍ ¿­¶÷ÇÕ´Ï´Ù.

+ +
VarType := ComObjType(ComObject)
+Name    := ComObjType(ComObject, "Name")
+IID     := ComObjType(ComObject, "IID")
+ +

¸Å°³º¯¼ö

+
+ +
ComObject
+

COM °´Ã¼ ¶Ç´Â À¯Çü ÀÖ´Â °ªÀ» ´ã°í ÀÖ´Â Æ÷Àå °´Ã¼.

+ +
VarType
+

°ªÀÇ À¯ÇüÀ» ³ªÅ¸³»´Â Á¤¼ö. ¾Æ·¡ ÂüÁ¶.

+ +
Name
+

ÀÎÅÍÆäÀ̽º À¯Çü À̸§.

+ +
IID
+

ÀÎÅÍÆäÀ̽º À¯ÇüÀ» ³ªÅ¸³»´Â Àü¿ªÀûÀ¸·Î À¯ÀÏÇÑ ½Äº°ÀÚ (GUID)

+ +
+ +

¹Ýȯ °ª

+

+µÎ ¹ø° ¸Å°³º¯¼ö¸¦ »ý·«Çϸé, Æ÷Àå °´Ã¼¿¡ ´ã±ä variant À¯ÇüÀÇ °ªÀÌ ¹ÝȯµË´Ï´Ù.

+

+µÎ ¹ø° ¸Å°³º¯¼ö°¡ "Name" ¶Ç´Â "IID"ÀÌ°í Æ÷Àå °´Ã¼¿¡ COM °´Ã¼°¡ µé¾î ÀÖÀ¸¸é (variant À¯Çü VT_DISPATCH), ±× COM °´Ã¼ÀÇ À¯Çü À̸§ ¶Ç´Â ±×ÀÇ Ã¹ ÀÎÅÍÆäÀ̽ºÀÇ ½Äº°ÀÚ°¡ ¹ÝȯµË´Ï´Ù.

+

¸Å°³º¯¼ö°¡ À¯È¿ÇÏÁö ¾Ê°Å³ª ¿¡·¯°¡ ÀϾ¸é, ºó ¹®ÀÚ¿­ÀÌ ¹ÝȯµË´Ï´Ù.

+ +

Variant À¯ÇüÀÇ »ó¼öµé

+
+VT_EMPTY     =      0  ; °ª ¾øÀ½
+VT_NULL      =      1  ; SQL-½ºÅ¸ÀÏÀÇ ³Î
+VT_I2        =      2  ; 16-ºñÆ® À¯ºÎÈ£ Á¤¼ö
+VT_I4        =      3  ; 32-ºñÆ® À¯ºÎÈ£ Á¤¼ö
+VT_R4        =      4  ; 32-ºñÆ® ºÎµ¿ ¼Ò¼öÁ¡ ¼ö 
+VT_R8        =      5  ; 64-ºñÆ® ºÎµ¿ ¼Ò¼öÁ¡ ¼ö
+VT_CY        =      6  ; È­Æó
+VT_DATE      =      7  ; ³¯Â¥
+VT_BSTR      =      8  ; COM ¹®ÀÚ¿­ (°íÁ¤ ±æÀÌÀÇ À¯´ÏÄÚµå ¹®ÀÚ¿­)
+VT_DISPATCH  =      9  ; COM °´Ã¼
+VT_ERROR     =    0xA  ; ¿¡·¯ ÄÚµå (32-ºñÆ® Á¤¼ö)
+VT_BOOL      =    0xB  ; ºÒ¸®¾ð True (-1) ¶Ç´Â False (0)
+VT_VARIANT   =    0xC  ; VARIANT (¹Ýµå½Ã VT_ARRAY ¶Ç´Â VT_BYREF¿Í Á¶ÇÕÇØ »ç¿ëÇØ¾ß ÇÔ)
+VT_UNKNOWN   =    0xD  ; IUnknown ÀÎÅÍÆäÀ̽º Æ÷ÀÎÅÍ
+VT_DECIMAL   =    0xE  ; (Áö¿ø ¾ÈÇÔ)
+VT_I1        =   0x10  ; 8-ºñÆ® À¯ºÎÈ£ Á¤¼ö
+VT_UI1       =   0x11  ; 8-ºñÆ® ¹«ºÎÈ£ Á¤¼ö
+VT_UI2       =   0x12  ; 16-ºñÆ® ¹«ºÎÈ£ Á¤¼ö
+VT_UI4       =   0x13  ; 32-ºñÆ® ¹«ºÎÈ£ Á¤¼ö
+VT_I8        =   0x14  ; 64-ºñÆ® À¯ºÎÈ£ Á¤¼ö
+VT_UI8       =   0x15  ; 64-ºñÆ® ¹«ºÎÈ£ Á¤¼ö
+VT_INT       =   0x16  ; À¯ºÎÈ£ ¸Ó½Å Á¤¼ö
+VT_UINT      =   0x17  ; ¹«ºÎÈ£ ¸Ó½Å Á¤¼ö
+VT_RECORD    =   0x24  ; »ç¿ëÀÚ-Á¤ÀÇ À¯Çü -- Áö¿øÇÏÁö ¾ÊÀ½
+VT_ARRAY     = 0x2000  ; SAFEARRAY
+VT_BYREF     = 0x4000  ; ¶Ç´Ù¸¥ À¯ÇüÀÇ °ªÀ» °¡¸®Å°´Â Æ÷ÀÎÅÍ
+/*
+ VT_ARRAY¿Í VT_BYREF´Â ¶Ç´Ù¸¥ °ª°ú Á¶ÇÕÇÏ¿© (ºñÆ®º° ORÀ» »ç¿ë) Á¤È®ÇÑ À¯ÇüÀ» ÁöÁ¤ÇÕ´Ï´Ù. ¿¹¸¦ µé¸é, 0x2003´Â 32-ºñÆ® À¯ºÎÈ£ Á¤¼ö·Î ±¸¼ºµÈ SAFEARRAY·Î ½Äº°µÇ°í 0x400C´Â  VARIANT¸¦ °¡¸®Å°´Â Æ÷ÀÎÅÍ·Î ½Äº°µË´Ï´Ù.
+*/
+
+ +

ÃÑÆò

+

+´ëºÎºÐÀÇ °æ¿ì, COM °´Ã¼ÀÇ ¸Þ½îµå³ª Ư¼ºÀ¸·ÎºÎÅÍ ¹ÝȯµÈ °ªÀº ¿ÀÅäÇÖÅ°°¡ Áö¿øÇÏ´Â ÀûÀýÇÑ µ¥ÀÌÅÍ À¯ÇüÀ¸·Î º¯È¯µË´Ï´Ù. ±¸Ã¼ÀûÀ¸·Î 󸮰¡ µÇÁö ¾Ê´Â À¯ÇüÀº VariantChangeType¸¦ ÅëÇÏ¿© °­Á¦·Î ¹®ÀÚ¿­·Î º¯È¯µË´Ï´Ù; ÀÌ°ÍÀÌ ½ÇÆÐÇϰųª variant À¯Çü¿¡ VT_ARRAY ¶Ç´Â VT_BYREF Ç÷¡±×°¡ µé¾î ÀÖ´Ù¸é, ´ë½Å¿¡ °ª°ú ±×ÀÇ À¯ÇüÀ» ¸ðµÎ ´ã°í ÀÖ´Â °´Ã¼°¡ ¹ÝȯµË´Ï´Ù.

+

+¸ðµç º¯¼ö x¿¡ ´ëÇÏ¿©, ¸¸¾à ComObjType(x)°¡ Á¤¼ö¸¦ µ¹·ÁÁÖ¸é, x¿¡´Â COM °´Ã¼ Æ÷ÀåÀÚ°¡ µé¾î ÀÖ½À´Ï´Ù.

+ + +

°ü·Ã Ç׸ñ

+

ComObjValue, ComObjCreate, ComObjGet, ComObjActive

+ +

¿¹Á¦

+
+d := ComObjCreate("Scripting.Dictionary")
+VarType := ComObjType(d)          ; ¾ðÁ¦³ª 9´Â ½ºÅ©¸³Æ®¸¦ È£ÃâÇÒ ¼ö ÀÖ´Â °´Ã¼¸¦ ¶æÇÕ´Ï´Ù.
+Name    := ComObjType(d, "Name")  ; ½ºÅ©¸³Æ² È£ÃâÇÒ ¼ö ÀÖ´Â °´Ã¼¿¡¸¸ À¯È¿ÇÕ´Ï´Ù.
+IID     := ComObjType(d, "IID")   ; À§¿Í °°½À´Ï´Ù.
+MsgBox Variant type:`t%VarType%`nType name:`t%Name%`nInterface ID:`t%IID%
+
+ + + diff --git a/src/docs/commands/ComObjValue.htm b/src/docs/commands/ComObjValue.htm new file mode 100644 index 0000000..6272478 --- /dev/null +++ b/src/docs/commands/ComObjValue.htm @@ -0,0 +1,40 @@ + + + + +ComObjValue() + + + + + + + +

ComObjValue() [v1.0.91+]

+ +

COM Æ÷Àå °´Ã¼¿¡ ÀúÀåµÈ °ªÀ̳ª Æ÷ÀÎÅ͸¦ ¿­¶÷ÇÕ´Ï´Ù.

+ +
Value := ComObjValue(ComObject)
+ +

¸Å°³º¯¼ö

+
+ +
Value
+

64-ºñÆ® ºÎÈ£ÀÖ´Â Á¤¼ö.

+ +
ComObject
+

COM °´Ã¼ ¶Ç´Â À¯ÇüÀÌ ÀÖ´Â °ªÀ» ´ã°í ÀÖ´Â Æ÷Àå °´Ã¼.

+ +
+ +

ÃÑÆò

+

+ÀÌ ÇÔ¼ö´Â ¹ü¿ë ¸ñÀûÀÌ ¾Æ´Õ´Ï´Ù.

+

+ComObjValue¸¦ È£ÃâÇÏ´Â °ÍÀº variant.llVal¿Í µ¿µîÇÕ´Ï´Ù. ¿©±â¿¡¼­ ComObject´Â VARIANT ±¸Á¶Ã¼·Î Ãë±ÞµË´Ï´Ù. ÀÌ ÇÔ¼ö¸¦ »ç¿ëÇÏ´Â ½ºÅ©¸³Æ®´Â ¸ðµÎ ¹Ýµå½Ã ¾î¶² À¯ÇüÀÇ °ªÀ» Æ÷Àå °´Ã¼°¡ °¡Áö°í ÀÖ´ÂÁö ±×¸®°í ¾î¶»°Ô Ãë±ÞÇØ¾ß ÇÒÁö ¾Ë°í ÀÖ¾î¾ß ÇÕ´Ï´Ù. ¿¹¸¦ µé¾î, ÀÎÅÍÆäÀ̽º Æ÷ÀÎÅÍ°¡ ¹ÝȯµÇ¸é, Release´Â È£ÃâÇÏÁö ¸»¾Æ¾ß ÇÕ´Ï´Ù. ±×·¯³ª AddRef´Â ½ºÅ©¸³Æ®°¡ ±× Æ÷ÀÎÅ͸¦ °¡Áö°í ¹«¾ùÀ» Çϴ°¡¿¡ µû¶ó ÇÊ¿äÇÒ ¼öµµ ÀÖ½À´Ï´Ù.

+ +

°ü·Ã Ç׸ñ

+

ComObjType, ComObjCreate, ComObjGet, ComObjActive

+ + + diff --git a/src/docs/commands/Continue.htm b/src/docs/commands/Continue.htm new file mode 100644 index 0000000..42ba2d8 --- /dev/null +++ b/src/docs/commands/Continue.htm @@ -0,0 +1,60 @@ + + + + +Continue + + + + + + + +

Continue

+ +

+ÇöÀç ³²Àº ȸµ¹ÀÌ ¹Ýº¹À» °Ç³Ê ¶Ù°í »õ ¹Ýº¹À» ½ÃÀÛÇÕ´Ï´Ù. ¾î¶² Á¾·ùÀÇ È¸µ¹ÀÌ ¾È¿¡µµ À¯È¿ÇÕ´Ï´Ù.

+ +
Continue [, LoopLabel]
+

+[AHK_L 59+]: ÁöÁ¤µÇ¸é, LoopLabelÀº ´ÙÀ½ ¼­¼ú¹®À» Àû¿ëÇØ¾ß ÇÒ È¸µ¹À̸¦ ½Äº°ÇÕ´Ï´Ù; ¶óº§ À̸§ ¶Ç´Â ¼ýÀÚ·Î ³»Æ÷ ·¹º§À» ÁöÁ¤ÇÕ´Ï´Ù. »ý·«Çϰųª 1À̸é, ÀÌ ¼­¼ú¹®Àº °¡Àå ¾ÈÂÊ È¸µÉÀÌ¿¡ Àû¿ëµË´Ï´Ù. LoopLabelÀº »ó¼ö °ªÀ̾î¾ß ÇÕ´Ï´Ù - º¯¼ö³ª Ç¥Çö½ÄÀº Áö¿øÇÏÁö ¾Ê½À´Ï´Ù. ¶óº§À» ÁöÁ¤Çϸé, ȸµ¹ÀÌ ¸í·É¾î¸¦ Á÷Á¢ °¡¸®ÄÑ¾ß ÇÕ´Ï´Ù.

+

Continue´Â ȸµ¹ÀÌÀÇ ´Ý´Â ¹Ý°ýÈ£¿¡ µµ´ÞÇÑ °Í°ú °°ÀÌ ÇàÀ§ÇÕ´Ï´Ù:

+
    +
  1. A_Index¸¦ 1¸¸Å­ Áõ°¡½Ãŵ´Ï´Ù.
  2. +
  3. ȸµÉÀÌ ¸öüÀÇ ³ª¸ÓÁö¸¦ °Ç³Ê ¶Ý´Ï´Ù.
  4. +
  5. ȸµ¹ÀÌ Á¶°ÇÀ» ¸¸Á·ÇÏ´ÂÁö (ÀÖ´Ù¸é) Á¡°ËÇÕ´Ï´Ù. ¸¸Á·Çϸé, »õ ¹Ýº¹À» ½ÃÀÛÇÕ´Ï´Ù; ±×·¸Áö ¾ÊÀ¸¸é ȸµ¹À̸¦ ³¡³À´Ï´Ù.
  6. +
+

+goto º¸´Ù Break¿Í ContinueÀÇ »ç¿ëÀ» ±ÇÀåÇÕ´Ï´Ù. ¿Ö³ÄÇÏ¸é ½ºÅ©¸³Æ®¸¦ Àб⠴õ ½±°í °ü¸®Çϱ⠴õ ½±±â ¶§¹®ÀÔ´Ï´Ù

+ +

°ü·Ã Ç׸ñ

+

Break, Loop, Until, While-ȸµ¹ÀÌ, For-ȸµ¹ÀÌ, ºí·Ï, ¶óº§

+ +

¿¹Á¦

+
; ÀÌ ¿¹Á¦´Â 5°³ÀÇ MsgBox¸¦ º¸¿©ÁÝ´Ï´Ù. °¢°¢ 6ºÎÅÍ 10±îÁö ´ã°í ÀÖ½À´Ï´Ù.
+; ȸµ¹ÀÌÀÇ ¾ÕÂÊ 5ȸ¿¡, "continue" ¸í·É¾î ¶§¹®¿¡
+; ȸµ¹ÀÌ°¡ MsgBox ÁÙ¿¡ µµÂøÇϱâ Àü¿¡ ´Ù½Ã ½ÃÀÛÇÏ´Â °ÍÀ» ÁÖ¸ñÇϽʽÿÀ.
+Loop, 10
+{
+    if A_Index <= 5
+        continue
+    MsgBox %A_Index%
+}
+
; ³»Æ÷ ȸµ¹ÀÌ ¾È¿¡¼­ ¹Ù±ù ȸµ¹À̸¦ °è¼ÓÇÕ´Ï´Ù.
+outer:
+Loop 3
+{
+    x := A_Index
+    Loop 3
+    {
+        if (x*A_Index = 4)
+            continue outer  ; continue 2 ¶Ç´Â goto continue_outer¿Í µ¿µîÇÕ´Ï´Ù.
+        MsgBox %x%,%A_Index%
+    }
+    continue_outer: ; goto¸¦ À§ÇÔ.
+    ErrorLevel:=ErrorLevel ; °³Á¤ÆÇ 57 ÀÌÀü¿¡¼­, ¶óº§Àº ºí·ÏÀÇ ³¡À» °¡¸®Å³ ¼ö ¾ø¾ú½À´Ï´Ù.
+}
+
+ + + diff --git a/src/docs/commands/Control.htm b/src/docs/commands/Control.htm new file mode 100644 index 0000000..c3e604d --- /dev/null +++ b/src/docs/commands/Control.htm @@ -0,0 +1,96 @@ + + + + +Control + + + + + + + +

Control

+ +

ÄÜÆ®·Ñ¿¡ ´Ù¾çÇÑ º¯°æÀ» ÇÕ´Ï´Ù.

+ +
Control, Cmd [, Value, Control, WinTitle, WinText, ExcludeTitle, ExcludeText]
+

¸Å°³º¯¼ö

+
+ +
Cmd, Value
+

¾Æ·¡ ¸®½ºÆ® ÂüÁ¶.

+ +
Control
+

ClassNN (ÄÜÆ®·ÑÀÇ Å¬·¡½ºÀ̸§°ú ½Çü ¹øÈ£) ¶Ç´Â ÄÜÆ®·ÑÀÇ ÅؽºÆ®ÀÏ ¼ö ÀÖ½À´Ï´Ù. µÑ ´Ù Window Spy¸¦ ÅëÇÏ¿© ¾Ë¾Æ³¾ ¼ö ÀÖ½À´Ï´Ù. ÅؽºÆ®¸¦ »ç¿ëÇÒ ¶§, ºÎÇÕÇÏ´Â ÇàÀ§´Â SetTitleMatchMode·Î ¾Ë¾Æ³À´Ï´Ù. ÀÌ ¸Å°³º¯¼ö°¡ ºñ¾î ÀÖÀ¸¸é, ¸ñÇ¥ âÀÇ ÃÖ»óÀ§ ÄÜÆ®·ÑÀÌ »ç¿ëµË´Ï´Ù.

+

+ ÄÜÆ®·ÑÀÇ HWND (â ÇÚµé)¿¡ ÀÛµ¿ÇÏ°Ô ÇÏ·Á¸é, Control ¸Å°³º¯¼ö¸¦ ºó ä·Î µÎ°í ahk_id %ControlHwnd%¸¦ WinTitle ¸Å°³º¯¼ö¿¡ ÁöÁ¤ÇϽʽÿÀ (ÀÌ ¹æ¹ýÀº ¼ûÀº ÄÜÆ®·Ñ¿¡µµ ÀÛµ¿ÇÕ´Ï´Ù. ½ÉÁö¾î DetectHiddenWindows°¡ ²¨Á® À־ µË´Ï´Ù). ÄÜÆ®·ÑÀÇ HWND´Â ÀüÇüÀûÀ¸·Î ControlGet Hwnd, MouseGetPos, ¶Ç´ÂDllCallÀ» ÅëÇÏ¿© ¿­¶÷ÇÕ´Ï´Ù.

+ +
WinTitle
+

â Á¦¸ñ ¶Ç´Â ¸ñÇ¥ âÀ» ½Äº°ÇÏ´Â ±âŸ ±âÁØ. WinTitle ÂüÁ¶.

+ +
WinText
+

Á¸ÀçÇϸé, ¸ñÇ¥ â ÅؽºÆ®ÀÇ ºÎ¹®ÀÚ¿­ÀÔ´Ï´Ù (Window Spy¿¡ ³ëÃâµÊ). ¼ûÀº ÅؽºÆ®´Â DetectHiddenText°¡ ÄÑÁ® ÀÖ¾î¾ß ŽÁöµË´Ï´Ù.

+ +
ExcludeTitle
+

Á¦¸ñ¿¡ ÀÌ °ªÀÌ Àִ âÀº ¹«½ÃÇÕ´Ï´Ù.

+ +
ExcludeText
+

ÅؽºÆ®¿¡ ÀÌ °ªÀÌ Àִ âÀº ¹«½ÃÇÕ´Ï´Ù.

+ +
+ +

Cmd, Value

+

+Cmd¿Í Value ¸Å°³º¯¼ö´Â ¼­·Î ÀÇÁ¸ÇÕ´Ï´Ù. ±×¸®°í ±× »ç¿ë¹ýÀº ¾Æ·¡¿¡ ±â¼úÇÕ´Ï´Ù.

+

Check: ¶óµð¿À ¹öÆ°À̳ª üũ ¹Ú½º¸¦ ÄÕ´Ï´Ù (üũ Ç¥½Ã¸¦ ÇÔ).

+

Uncheck: ¶óµð¿À ¹öÆ°À̳ª üũ ¹Ú½º¸¦ ²ü´Ï´Ù.

+

Enable: ÀÌÀü¿¡ ²¨Á® ÀÖ´Ù¸é ÄÜÆ®·ÑÀ» ÄÕ´Ï´Ù.

+

Disable: ÄÜÆ®·ÑÀ» ºÒ´ÉÈ­ÇÕ´Ï´Ù ("ȸ»ö 󸮸¦ ÇÔ").

+

Show: ÀÌÀü¿¡ ¼û¾î ÀÖ¾ú´Ù¸é ÄÜÆ®·ÑÀ» º¸¿©ÁÝ´Ï´Ù.

+

Hide: ÄÜÆ®·ÑÀ» °¨Ãä´Ï´Ù. ÄÜÆ®·ÑÀÇ ´ÜÃà Å°(¹ØÁÙ ¹®ÀÚ)¸¦ ÀÛµ¿ÇÏÁö ¸øÇϵµ·Ï ¸·°í ½Í´Ù¸é, Control DisableÀ» ÅëÇÏ¿© ÄÜÆ®·ÑÀ» ²ô½Ê½Ã¿À.

+

Style, N ¶Ç´Â ExStyle, N: ÄÜÆ®·ÑÀÇ ½ºÅ¸ÀÏÀ̳ª È®Àå ½ºÅ¸ÀÏÀ» º¯°æÇÕ´Ï´Ù. N ù ¹®ÀÚ°¡ Ç÷¯½º ¶Ç´Â ¸¶À̳ʽº »çÀÎÀ̸é N¿¡ ÀÖ´Â ½ºÅ¸ÀÏÀÌ Ãß°¡µÇ°Å³ª Á¦°ÅµË´Ï´Ù. ù ¹®ÀÚ°¡ ij·µ (^)À̸é, N¿¡ ÀÖ´Â ½ºÅ¸ÀϵéÀÌ °¢°¢ ¹Ý´ë »óÅ·ΠÅä±ÛµË´Ï´Ù. ù ¹®ÀÚ°¡ ¼ýÀÚÀ̸é, ±× ÄÜÆ®·ÑÀÇ ½ºÅ¸ÀÏÀÌ ¿ÏÀüÈ÷ µ¤¿© ¾º¿©Áý´Ï´Ù; Áï, NÀÌ µË´Ï´Ù. ErrorLevelÀº ¸ñÇ¥ â/ÄÜÆ®·ÑÀÌ ¹ß°ßµÇÁö ¾ÊÀ¸¸é ¶Ç´Â ½ºÅ¸ÀÏÀÌ Àû¿ëµÇÁö ¾ÊÀ¸¸é 1ÀÌ ¼³Á¤µË´Ï´Ù.

+

+¾î¶² ½ºÅ¸ÀÏ º¯°æÀº WinSet Redraw¸¦ »ç¿ëÇÏ¿© Àüü âÀ» ´Ù½Ã ±×¸®±â¸¦ ¿ä±¸ÇÕ´Ï´Ù. ¶Ç, ½ºÅ¸ÀÏ Å×ÀÌºí¿¡ ½ºÅ¸ÀÏ ¹øÈ£µéÀ» ³ª¿­ÇÏ°í ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î:

+
Control, Style, ^0x800000, Edit1, WinTitle  ; WS_BORDER ½ºÅ¸ÀÏÀ» ±×ÀÇ ¹Ý´ë »óÅ·Π¼³Á¤ÇÕ´Ï´Ù.
+

+ShowDropDown: ¼±ÅÃÀÌ º¸À̵µ·Ï ComboBox ¸Þ´º¸¦ ³»¸³´Ï´Ù.

+

+HideDropDown: À§¸¦ ¹Ý´ë·Î ÇÕ´Ï´Ù.

+

+TabLeft [, Count] ±×¸®°í TabRight [, Count]: SysTabControl32¿¡¼­ Çϳª ÀÌ»óÀÇ ÅǸ¸Å­ ¿À¸¥ÂÊ ¿ÞÂÊÀ¸·Î À̵¿ÇÕ´Ï´Ù. Count´Â »ý·«Çϰųª ºñ¾î ÀÖÀ¸¸é 1·Î °£Áֵ˴ϴÙ. ´ë½Å¿¡ ÅÇÀ» Á÷Á¢ÀûÀ¸·Î ¹øÈ£·Î ¼±ÅÃÇÏ·Á¸é, ¾Æ·¡ÀÇ ¼ýÀÚ 5¸¦ ÀÌ º¸´Ù ÀÛÀº ¼ýÀÚ·Î ±³Ã¼ÇϽʽÿÀ. ¿øÇÏ´Â ÅÇ ¹øÈ£·Î ±³Ã¼ÇÏ½Ã¸é µË´Ï´Ù. ´Ù¸¥ ¸»·Î Çϸé, 0Àº ù ¹ø° ÅÇÀ» ¼±ÅÃÇÏ°í, 1Àº µÎ ¹ø° ÅÇÀ» ¼±ÅÃÇÕ´Ï´Ù. µîµî:

+
SendMessage, 0x1330, 5,, SysTabControl321, WinTitle  ; 0x1330 is TCM_SETCURFOCUS.
+Sleep 0  ; ÀÌ ÁÙ°ú ´ÙÀ½ ÁÙÀº ¾î¶² ÅÇ ÄÜÆ®·Ñ¿¡´Â ²À ÇÊ¿äÇÕ´Ï´Ù.
+SendMessage, 0x130C, 5,, SysTabControl321, WinTitle  ; 0x130C is TCM_SETCURSEL.
+

+Add, String: ¹®ÀÚ¿­(String)À» »õ ¿£Æ®¸®·Î ListBox, ComboBox (±×¸®°í °¡´ÉÇÑ ´Ù¸¥ À¯Çüµé) ¾Æ·¡¿¡ Ãß°¡ÇÕ´Ï´Ù.

+

+Delete, N: N¹ø° ¿£Æ®¸®¸¦ ListBox ¶Ç´Â ComboBox·ÎºÎÅÍ Á¦°ÅÇÕ´Ï´Ù. NÀº ù ¿£Æ®¸®¿¡ ´ëÇÏ¿© 1ÀÌ µÇ°í µÎ ¹ø° ¿£Æ®¸®´Â 2°¡ µË´Ï´Ù. µîµî.

+

+Choose, N: ListBox ¶Ç´Â ComboBox¿¡¼­ N¹ø° ¿£Æ®¸®¸¦ ¼±ÅÃÇÕ´Ï´Ù. NÀº ù ¿£Æ®¸®¿¡ 1, µÎ ¹ø° ¿£Æ®¸®¿¡ 2°¡ µË´Ï´Ù. µîµî. ´ÙÁß-¼±Åà ¸®½ºÆ®¹Ú½º¿¡¼­ ¸ðµç Ç׸ñÀ» ¼±ÅÃÇϰųª ÇØÁ¦ÇÏ·Á¸é, ´ÙÀ½ ¿¹Á¦¸¦ µû¸£½Ê½Ã¿À:

+ +
PostMessage, 0x185, 1, -1, ListBox1, WinTitle  ; Select all listbox items. 0x185 is LB_SETSEL.
+

+ChooseString, String: ¾Õ ºÎºÐÀÌ String¿¡ ºÎÇÕÇϴ ù ¹ø° ¿£Æ®¸®¸¦ ListBox ¶Ç´Â ComboBox¿¡¼­ ¼±ÅÃÇÕ´Ï´Ù. °Ë»öÀº ´ë¼Ò¹®ÀÚ¸¦ ±¸ºÐÇÏÁö ¾Ê½À´Ï´Ù. ¿¹¸¦ µé¾î, ListBox/ComboBox¿¡ "UNIX Text"¶ó´Â Ç׸ñÀÌ µé¾î ÀÖ´Ù¸é, ´Ü¾î¸¦ unix (¼Ò¹®ÀÚ)·Î ÁöÁ¤Çصµ ÃæºÐÈ÷ ¼±ÅÃÇÒ ¼ö ÀÖ½À´Ï´Ù.

+

+EditPaste, String: Edit ÄÜÆ®·Ñ¿¡¼­ StringÀ» ij·µ/»ðÀÔ À§Ä¡¿¡ ºÙ¿© ³Ö½À´Ï´Ù (Ŭ¸³º¸µåÀÇ ³»¿ëÀº ¿µÇâÀ» ¹ÞÁö ¾Ê½À´Ï´Ù).

+

ErrorLevel

+

[v1.1.04+] ÀÌ ¸í·É¾î´Â ½ÇÆÐÇÏ¸é ¿¹¿Ü¸¦ ´øÁú ¼ö ÀÖ½À´Ï´Ù. ´õ ÀÚ¼¼ÇÑ Á¤º¸´Â ½ÇÇà½Ã°£ ¿¡·¯¸¦ ÂüÁ¶ÇϽʽÿÀ.

+

ErrorLevelÀº ¹®Á¦°¡ ÀÖÀ¸¸é 1ÀÌ ¼³Á¤µÇ°í ±×·¸Áö ¾ÊÀ¸¸é 0ÀÌ ¼³Á¤µË´Ï´Ù.

+ +

³íÆò

+

+½Å·Ú¼ºÀ» °³¼±Çϱâ À§ÇÏ¿©, ÀÌ ¸í·É¾î¸¦ »ç¿ëÇÒ ¶§¸¶´Ù ÀÚµ¿À¸·Î Áö¿¬ ½Ã°£ÀÌ ÀÖ½À´Ï´Ù (Style°ú ExStyle Á¦¿Ü). ±× Áö¿¬ ½Ã°£Àº SetControlDelay¸¦ ÅëÇÏ¿© º¯°æÇÒ ¼ö ÀÖ½À´Ï´Ù.

+

+ÇöÀç ¸¶¿ì½º°¡ ¿Ã¶ó¿Í ÀÖ´Â ÄÜÆ®·ÑÀÇ ClassNN ¶Ç´Â HWND¸¦ ¾Ë¾Æ³»·Á¸é, MouseGetPos¸¦ »ç¿ëÇϽʽÿÀ.

+

+â Á¦¸ñ°ú ÅؽºÆ®´Â ´ë¼Ò¹®ÀÚ¿¡ ¹Î°¨ÇÕ´Ï´Ù. ¼ûÀº âÀº DetectHiddenWindows°¡ ÄÑÁ® ÀÖ¾î¾ß ŽÁöµË´Ï´Ù.

+ +

°ü·Ã Ç׸ñ

+

SetControlDelay, ControlGet, GuiControl, ControlGetText, ControlSetText, ControlMove, ControlGetPos, ControlClick, ControlFocus, ControlSend, WinSet

+ +

¿¹Á¦

+
Control, HideDropDown, , ComboBox1, Some Window Title
+

+ + diff --git a/src/docs/commands/ControlClick.htm b/src/docs/commands/ControlClick.htm new file mode 100644 index 0000000..6d3f248 --- /dev/null +++ b/src/docs/commands/ControlClick.htm @@ -0,0 +1,107 @@ + + + + +ControlClick + + + + + + + +

ControlClick

+ +

¸¶¿ì½º ¹öÆ°À̳ª ¸¶¿ì½º ÈÙ À̺¥Æ®¸¦ ÄÜÆ®·Ñ¿¡ º¸³À´Ï´Ù.

+ +
ControlClick [, Control-or-Pos, WinTitle, WinText, WhichButton, ClickCount, Options, ExcludeTitle, ExcludeText]
+

¸Å°³º¯¼ö

+
+ +
Control-or-Pos
+

ÀÌ ¸Å°³º¯¼ö°¡ ºñ¾î ÀÖÀ¸¸é, ¸ñÇ¥ âÀÇ ÃÖ»óÀ§ ÄÜÆ®·ÑÀÌ Å¬¸¯µË´Ï´Ù (¶Ç´Â ÄÜÆ®·ÑÀÌ ¾øÀ¸¸é ¸ñÇ¥ â ÀÚü°¡ Ŭ¸¯µË´Ï´Ù). ±×·¸Áö ¾ÊÀ¸¸é, ¾Æ·¡ÀÇ µÎ ¸ðµå Áß Çϳª°¡ »ç¿ëµË´Ï´Ù.

+

+ Mode 1 (Position): ¸ñÇ¥ âÀÇ Á»ó ¸ð¼­¸®¿¡ »ó´ëÀûÀÎ X¿Í Y ÁÂÇ¥¸¦ ÁöÁ¤ÇϽʽÿÀ. X ÁÂÇ¥°¡ Y ÁÂÇ¥º¸´Ù ¸ÕÀú ³ª¿Í¾ß ÇÏ°í Àû¾îµµ ÇϳªÀÇ ÅÇÀ̳ª ½ºÆäÀ̽º°¡ ±× »çÀÌ¿¡ ÀÖ¾î¾ß ÇÕ´Ï´Ù. ¿¹¸¦ µé¾î: X55 Y33. ÁöÁ¤µÈ ÁÂÇ¥¿¡ ÄÜÆ®·ÑÀÌ ÀÖ´Ù¸é, ±× ÁÂÇ¥¿¡ Á¤È®ÇÏ°Ô Å¬¸¯ À̺¥Æ®°¡ Àü¼ÛµË´Ï´Ù. ÄÜÆ®·ÑÀÌ ¾ø´Ù¸é, ¸ñÇ¥ â ÀÚü¿¡ ±× À̺¥Æ®°¡ Àü¼ÛµË´Ï´Ù (âÀÇ ¼ºÁú¿¡ µû¶ó ¾Æ¹« È¿°ú°¡ ¾øÀ» ¼ö ÀÖ½À´Ï´Ù). ÁÖÀÇ: ÀÌ ¸ðµå¿¡¼­, Options ¸Å°³º¯¼öÀÇ X¿Í Y ¿É¼Ç ±âÈ£´Â ¹«½ÃµË´Ï´Ù.

+

+ Mode 2 (ClassNN ¶Ç´Â Text): ClassNN (ÄÜÆ®·ÑÀÇ Å¬·¡½ºÀ̸§°ú ½Çü ¹øÈ£) ¶Ç´Â ÄÜÆ®·ÑÀÇ À̸§/ÅؽºÆ®¸¦ ÁöÁ¤ÇϽʽÿÀ. µÑ ¸ðµÎ Window Spy·Î ¾Ë¾Æ³¾ ¼ö ÀÖ½À´Ï´Ù. À̸§/ÅؽºÆ®¸¦ »ç¿ëÇÒ ¶§, ºÎÇÕÇϴ âÀº SetTitleMatchMode·Î °áÁ¤µË´Ï´Ù.

+

+ ±âº»°ªÀ¸·Î ¸ðµå 2°¡ ¸ðµå 1º¸´Ù ¿ì¼± ¼øÀ§°¡ ³ô½À´Ï´Ù. + + ¿¹¸¦ µé¾î, Ȥ½Ã¶óµµ ÇÑ ÄÜÆ®·ÑÀÇ ÅؽºÆ®³ª ClassNNÀÌ "Xnnn Ynnn" Çü½ÄÀ̶ó¸é, ±×·¯¸é Mode 2ÀÎ °Íó·³ ÀÛµ¿ÇÒ °ÍÀÔ´Ï´Ù. + + À̸¦ ¿À¹ö¶óÀ̵åÇؼ­ ¹«Á¶°Ç ¸ðµå 1À» »ç¿ëÇÏ·Á¸é, ´Ü¾î Pos¸¦ Options¿¡ ´ÙÀ½ ¿¹Á¦¿Í °°ÀÌ ÁöÁ¤ÇϽʽÿÀ: ControlClick, x255 y152, WinTitle,,,, Pos.

+

+ ÄÜÆ®·ÑÀÇ HWND (â ÇÚµé)¿¡ ÀÛµ¿½ÃÅ°¶ó¸é, ÀÌ ¸Å°³º¯¼ö¸¦ ºó ä·Î µÎ°í ahk_id %ControlHwnd%¸¦ WinTitle ¸Å°³º¯¼ö¿¡ ÁöÁ¤ÇϽʽÿÀ (ÀÌ°ÍÀº ¶ÇÇÑ ¼ûÀº â¿¡µµ ÀÛµ¿ÇÕ´Ï´Ù. DetectHiddenWindows°¡ ²¨Á® À־ µË´Ï´Ù). ÄÜÆ®·ÑÀÇ HWND´Â ÀüÇüÀûÀ¸·ÎControlGet Hwnd, MouseGetPos, ¶Ç´Â DllCallÀ» ÅëÇÏ¿© ¿­¶÷µË´Ï´Ù.

+ +
WinTitle
+

â Á¦¸ñ ¶Ç´Â ¸ñÇ¥ âÀ» ½Äº°ÇÏ´Â ±âŸ ±âÁØ. WinTitle ÂüÁ¶.

+ +
WinText
+

Á¸ÀçÇϸé, ÀÌ ¸Å°³º¯¼ö´Â ¸ñÇ¥ â ÅؽºÆ®ÀÇ ºÎ¹®ÀÚ¿­ÀÔ´Ï´Ù (Window Spy¿¡ ³ëÃâµÊ). ¼ûÀº ÅؽºÆ®´Â DetectHiddenText°¡ ÄÑÁ® ÀÖ¾î¾ß ŽÁöµË´Ï´Ù.

+ +
WhichButton
+

Ŭ¸¯ÇÒ ¹öÆ°: LEFT, RIGHT, MIDDLE (¶Ç´Â ±×³É °¢ ù ¹®ÀÚ). »ý·«Çϰųª ºñ¾î ÀÖÀ¸¸é, LEFT ¹öÆ°ÀÌ »ç¿ëµË´Ï´Ù.

+

X1 (XButton1, ³× ¹ø° ¸¶¿ì½º ¹öÆ°) ±×¸®°í X2 (XButton2, ´Ù¼¸ ¹ø° ¸¶¿ì½º ¹öÆ°)µµ Áö¿øµË´Ï´Ù.

+

WheelUp (¶Ç´Â WU) ±×¸®°í WheelDown (¶Ç´Â WD)µµ Áö¿øµË´Ï´Ù. ÀÌ °æ¿ì, ClickCount´Â ÈÙÀ» µ¹¸± ´«±ÝÀÇ °³¼öÀÔ´Ï´Ù.

+

Windows Vista ÀÌ»ó [v1.0.48+]: WheelLeft (¶Ç´Â WL) and WheelRight (¶Ç´Â WR)µµ Áö¿øµË´Ï´Ù (¿¹Àü ¿î¿µ üÁ¦¿¡¼­´Â ¾Æ¹« È¿°úµµ ¾ø½À´Ï´Ù). ÀÌ °æ¿ì, ClickCount´Â ÈÙÀ» µ¹¸± ´«±ÝÀÇ °³¼öÀÔ´Ï´Ù.

+
+ +
ClickCount
+

º¸³¾ Ŭ¸¯ Ƚ¼ö, Ç¥Çö½ÄÀÌ °¡´ÉÇÕ´Ï´Ù. »ý·«µÇ°Å³ª ºñ¾î ÀÖÀ¸¸é, 1 Ŭ¸¯ÀÌ Àü¼ÛµË´Ï´Ù.

+ +
Options
+

´ÙÀ½ ±âÈ£µéÀÌ ¿É¼ÇÀ¸·Î »ç¿ëµË´Ï´Ù. ¿¹¸¦ µé¾î: d x50 y25.

+

NA [v1.0.45+]: ½Å·Ú¼ºÀ» °³¼±ÇÒ ¼ö ÀÖ½À´Ï´Ù. ¾Æ·¡ÀÇ ½Å·Ú¼ºÀ» ÂüÁ¶ÇϽʽÿÀ.

+

D: ¸¶¿ì½º ¹öÆ°À» ´©¸£Áö¸¸ ¶¼Áö ¾Ê½À´Ï´Ù (Áï, ´©¸£±â-À̺¥Æ® ¹ß»ý). D¿Í U ¿É¼ÇÀÌ ¸ðµÎ ¾øÀ¸¸é, (´©¸£°í ¶¾) ¿ÏÀüÇÑ Å¬¸¯ÀÌ Àü¼ÛµË´Ï´Ù.

+

U: ¸¶¿ì½º ¹öÆ°À» ¶Á´Ï´Ù (Áï ¶À-À̺¥Æ® ¹ß»ý). ÀÌ ¿É¼ÇÀº D ¿É¼ÇÀÌ ÀÌ¹Ì ÀÖÀ¸¸é ³ªÅ¸³ª¸é ¾ÈµË´Ï´Ù (±× ¹Ý´ëµµ ¸¶Âù°¡ÁöÀÔ´Ï´Ù).

+

Pos: ´Ü¾î Pos¸¦ Options ¾Æ¹«µ¥³ª ÁöÁ¤Çϸé, À§ÀÇ Control-or-Pos ¸Å°³º¯¼ö¿¡ ±â¼úµÇ¾î ÀÖµíÀÌ ¹«Á¶°Ç X/Y À§Ä¡ ÁöÁ¤ ¸ðµå¸¦ »ç¿ëÇÕ´Ï´Ù.

+

Xn: n¿¡´Ù Ŭ¸¯ÇÒ X À§Ä¡¸¦ ÁöÁ¤ÇÕ´Ï´Ù. ÀÌ À§Ä¡´Â ÄÜÆ®·ÑÀÇ Á»ó ¸ð¼­¸®¿¡ »ó´ëÀûÀÔ´Ï´Ù. ÁöÁ¤ÇÏÁö ¾ÊÀ¸¸é, Ŭ¸¯ÀÌ ÄÜÆ®·ÑÀÇ ¼öÆò-Áß¾Ó¿¡ ÀϾ´Ï´Ù.

+

Yn: n¿¡´Ù Ŭ¸¯ÇÒ Y À§Ä¡¸¦ ÁöÁ¤ÇÕ´Ï´Ù. ÀÌ À§Ä¡´Â ÄÜÆ®·ÑÀÇ Á»ó ¸ð¼­¸®¿¡ »ó´ëÀûÀÔ´Ï´Ù. ÁöÁ¤ÇÏÁö ¾ÊÀ¸¸é Ŭ¸¯ÀÌ ¼öÁ÷-Áß¾Ó¿¡ ÀϾ´Ï´Ù.

+

X¿Í Y ¿É¼Ç¿¡ ½ÊÁø¼ö¸¦ »ç¿ëÇÕ´Ï´Ù (½ÊÀ°Áø¼ö ºÒ°¡).

+ +
ExcludeTitle
+

Á¦¸ñ¿¡ ÀÌ °ªÀÌ Àִ âÀº ¹«½ÃÇÕ´Ï´Ù.

+ +
ExcludeText
+

ÅؽºÆ®¿¡ ÀÌ °ªÀÌ Àִ âÀº ¹«½ÃÇÕ´Ï´Ù.

+ +
+ +

ErrorLevel

+

+[v1.1.04+] ÀÌ ¸í·É¾î´Â ½ÇÆÐÇÏ¸é ¿¹¿Ü¸¦ ´øÁú ¼ö ÀÖ½À´Ï´Ù. ´õ ÀÚ¼¼ÇÑ Á¤º¸´Â ½ÇÇà½Ã°£ ¿¡·¯¸¦ ÂüÁ¶ÇϽʽÿÀ.

+

+ErrorLevelÀº ¹®Á¦°¡ ÀÖÀ¸¸é 1, ±×·¸Áö ¾ÊÀ¸¸é 0ÀÌ ¼³Á¤µË´Ï´Ù.

+ +

½Å·Ú¼º

+

+½Å·Ú¼ºÀ» °³¼±ÇÏ·Á¸é -- ƯÈ÷ ControlClickÀÌ ÀÛµ¿ÇÏ´Â µ¿¾È »ç¿ëÀÚ°¡ ¹°¸®ÀûÀ¸·Î ¸¶¿ì½º¸¦ ¿òÁ÷À̸é -- ´ÙÀ½ ¹æ¹ýÀÌ µµ¿òÀÌ µÉ °ÍÀÔ´Ï´Ù:

+

1) ControlClick Àü¿¡ SetControlDelay -1¸¦ »ç¿ëÇÕ´Ï´Ù. ÀÌ·¸°Ô Çϸé Ŭ¸¯ÇÏ´Â µ¿¾È ¸¶¿ì½º¸¦ ´©¸£°í ÀÖÀ» ÇÊ¿ä°¡ ¾ø½À´Ï´Ù. ÀÌ ´öºÐ¿¡ »ç¿ëÀÚÀÇ ¹°¸®Àû ¸¶¿ì½º À̵¿°úÀÇ °£¼· °¡´É¼ºÀÌ ÁÙ¾îµì´Ï´Ù.

+

2) ¾Æ·¡¿Í °°ÀÌ ¹®ÀÚ¿­ NA¸¦ ¿©¼¸ ¹ø° ¸Å°³º¯¼ö ¾Æ¹«µ¥³ª (Options) ÁöÁ¤ÇÕ´Ï´Ù:

+
SetControlDelay -1
+ControlClick, Toolbar321, WinTitle,,,, NA
+

+NA¸¦ ÁöÁ¤ÇÏ¸é ¸ñÇ¥ âÀ» È°¼ºÈ­ »óÅ·Πǥ½ÄÀ» ÇÒ ÇÊ¿ä°¡ ¾ø°í ±×ÀÇ ÀԷ ó¸®¸¦ ½ºÅ©¸³Æ®ÀÌ ÀԷ ó¸®¿Í º´ÇÕÇÒ ÇÊ¿ä°¡ ¾ø½À´Ï´Ù. ÀÌ ´öºÐ¿¡ ¸¶¿ì½ºÀÇ ¹°¸®Àû À̵¿ ¶§¹®¿¡ °£¼· ¹ÞÁö ¾Ê¾Æµµ µË´Ï´Ù (±×·¯³ª º¸Åë ¸ñÇ¥ âÀÌ ºñÈ°¼ºÈ­ »óÅÂÀÏ °æ¿ì¿¡¸¸ ±×·¸½À´Ï´Ù). ±×·¸Áö¸¸, ÀÌ ¹æ¹ýÀº ¸ðµç À¯ÇüÀÇ Ã¢°ú ÄÜÆ®·Ñ¿¡ ÀÛµ¿ÇÏ´Â °ÍÀº ¾Æ´Õ´Ï´Ù.

+ +

³íÆò

+

+¸ðµç ¾îÇø®ÄÉÀ̼ÇÀÌ ¸¶¿ì½º ÈÙÀ» µ¹¸± ¶§ 1º¸´Ù Å« ClickCount¸¦ ÁؼöÇÏ´Â °ÍÀº ¾Æ´Õ´Ï´Ù. ±×·± ¾îÇø®ÄÉÀ̼ÇÀ̶ó¸é Loop¸¦ »ç¿ëÇØ ÇÑ ´«±Ý ÀÌ»ó ÈÙÀ» µ¹¸®½Ê½Ã¿À. ´ÙÀ½ ¿¹Á¦´Â ´Ù¼¸ ´«±ÝÀ» µ¹¸®°í ÀÖ½À´Ï´Ù:

+
Loop, 5
+    ControlClick, Control, WinTitle, WinText, WheelUp
+

+â Á¦¸ñ ¶Ç´Â ÅؽºÆ®´Â ´ë¼Ò¹®ÀÚ¿¡ ¹Î°¨ÇÕ´Ï´Ù. ¼ûÀº âÀº DetectHiddenWindows°¡ ÄÑÁ® ÀÖ¾î¾ß ŽÁöµË´Ï´Ù.

+ +

°ü·Ã Ç׸ñ

+

+SetControlDelay, Control, ControlGet, ControlGetText, ControlMove, ControlGetPos, ControlFocus, ControlSetText, ControlSend, Click

+ +

¿¹Á¦

+
ControlClick, OK, Some Window Title  ; OK ¹öÆ°À» Ŭ¸¯ÇÕ´Ï´Ù
+ControlClick, x55 y77, WinTitle  ; ÁÂÇ¥ ¼¼Æ®¸¦ Ŭ¸¯ÇÕ´Ï´Ù. X¿Í Y »çÀÌ¿¡ ½°Ç¥°¡ ¾ø´Â °Í¿¡ ÁÖ¸ñÇϽʽÿÀ.
+
+; ´ÙÀ½ ¹æ¹ýÀº ½Å·Ú¼ºÀ» °³¼±ÇÏ°í ºÎÀÛ¿ëÀ» ÁÙ¿©ÁÝ´Ï´Ù:
+SetControlDelay -1
+ControlClick, Toolbar321, WinTitle,,,, NA x192 y10  ; ÁöÁ¤ÇÑ À̸§ÀÇ ÄÜÆ®·Ñ¿¡ »ó´ëÀûÀÎ ÁÂÇ¥¸¦ NA ¸ðµå¿¡¼­ Ŭ¸¯ÇÕ´Ï´Ù.
+ + + diff --git a/src/docs/commands/ControlFocus.htm b/src/docs/commands/ControlFocus.htm new file mode 100644 index 0000000..b521ce9 --- /dev/null +++ b/src/docs/commands/ControlFocus.htm @@ -0,0 +1,62 @@ + + + + +ControlFocus + + + + + + + +

ControlFocus

+ +

ÀÔ·Â ÃÊÁ¡À» ÇÑ Ã¢ÀÇ ÁÖ¾îÁø ÄÜÆ®·Ñ¿¡ Àü¼ÛÇÕ´Ï´Ù.

+ +
ControlFocus [, Control, WinTitle, WinText, ExcludeTitle, ExcludeText]
+

¸Å°³º¯¼ö

+
+ +
Control
+

ClassNN (ÄÜÆ®·ÑÀÇ Å¬·¡½ºÀ̸§°ú ½Çü ¹øÈ£) ¶Ç´Â ÄÜÆ®·ÑÀÇ ÅؽºÆ®ÀÏ ¼ö ÀÖ½À´Ï´Ù. µÑ ¸ðµÎ Window Spy·Î ¾Ë¾Æ³¾ ¼ö ÀÖ½À´Ï´Ù. ÅؽºÆ®¸¦ »ç¿ëÇÒ ¶§, ºÎÇÕÇÏ´Â ÇàÀ§´Â SetTitleMatchMode·Î °áÁ¤µË´Ï´Ù. ÀÌ ¸Å°³º¯¼ö°¡ ºñ¾îÀְųª »ý·«µÇ¸é, ¸ñÇ¥ âÀÇ ÃÖ»óÀ§ ÄÜÆ®·ÑÀÌ »ç¿ëµË´Ï´Ù.

+

+ ÄÜÆ®·ÑÀÇ HWND (â ÇÚµé)¿¡ ÀÛµ¿½ÃÅ°·Á¸é, Control ¸Å°³º¯¼ö¸¦ ºó ä·Î µÎ°í ahk_id %ControlHwnd%¸¦ WinTitle ¸Å°³º¯¼ö¿¡ ÁöÁ¤ÇϽʽÿÀ (ÀÌ°ÍÀº ¼ûÀº â¿¡µµ ÀÛµ¿ÇÕ´Ï´Ù. DetectHiddenWindows°¡ ²¨Á® À־ »ó°ü ¾ø½À´Ï´Ù). ÄÜÆ®·ÑÀÇ HWND´Â ÀüÇüÀûÀ¸·Î ControlGet Hwnd, MouseGetPos, ¶Ç´Â DllCallÀ» ÅëÇÏ¿© ¿­¶÷µË´Ï´Ù.

+ +
WinTitle
+

â Á¦¸ñ ¶Ç´Â ¸ñÇ¥ âÀ» ½Äº°ÇÏ´Â ±âŸ ±âÁØ. WinTitle ÂüÁ¶.

+ +
WinText
+

Á¸ÀçÇϸé, ÀÌ ¸Å°³º¯¼ö´Â ¸ñÇ¥ â ÅؽºÆ®ÀÇ ºÎ¹®ÀÚ¿­ÀÔ´Ï´Ù (Window Spy¿¡ ³ëÃâµÊ). ¼ûÀº ÅؽºÆ®´Â DetectHiddenText°¡ ÄÑÁ®(ON) ÀÖ¾î¾ß ŽÁöµË´Ï´Ù.

+ +
ExcludeTitle
+

Á¦¸ñ¿¡ ÀÌ °ªÀÌ Àִ âÀº Á¦¿ÜÇÕ´Ï´Ù.

+ +
ExcludeText
+

ÅؽºÆ®¿¡ ÀÌ °ªÀÌ Àִ âÀº Á¦¿ÜÇÕ´Ï´Ù.

+ +
+ +

ErrorLevel

+

[v1.1.04+] ÀÌ ¸í·É¾î´Â ½ÇÆнà ¿¹¿Ü¸¦ ´øÁú ¼ö ÀÖ½À´Ï´Ù. ´õ ÀÚ¼¼ÇÑ Á¤º¸´Â ½ÇÇà½Ã°£ ¿¡·¯ ÂüÁ¶.

+

ErrorLevel´Â ¹®Á¦°¡ ÀÖÀ¸¸é 1, ±×·¸Áö ¾ÊÀ¸¸é 0ÀÌ ¼³Á¤µË´Ï´Ù.

+ +

³íÆò

+

+È¿°ú°¡ ÀÖÀ¸·Á¸é, ÄÜÆ®·ÑÀÇ Ã¢ÀÌ ÀϹÝÀûÀ¸·Î ÃÖ¼ÒÈ­µÇ¾î Àְųª ¼û¾î ÀÖÀ¸¸é ¾ÈµË´Ï´Ù.

+

+½Å·Ú¼ºÀ» °³¼±Çϱâ À§ÇÏ¿©, ÀÌ ¸í·É¾î¸¦ »ç¿ëÇÒ ¶§¸¶´Ù ÀÚµ¿À¸·Î Áö¿¬ ½Ã°£ÀÌ ÀÖÀ¾´Ï´Ù. ÀÌ Áö¿¬ ½Ã°£Àº SetControlDelay¸¦ ÅëÇÏ¿© ¹Ù²Ü ¼ö ÀÖ½À´Ï´Ù.

+

+ÇöÀç ¸¶¿ì½º°¡ ¶° ÀÖ´Â ÄÜÆ®·ÑÀÇ ClassNN ¶Ç´Â HWND¸¦ ¹ß°ßÇÏ·Á¸é, MouseGetPos¸¦ »ç¿ëÇϽʽÿÀ.

+

+â Á¦¸ñ°ú ÅؽºÆ®´Â ´ë¼Ò¹®ÀÚ¿¡ ¹Î°¨ÇÕ´Ï´Ù. ¼ûÀº âÀº DetectHiddenWindows°¡ ÄÑÁ® ÀÖ¾î¾ß ŽÁöµË´Ï´Ù.

+ +

°ü·Ã Ç׸ñ

+

+SetControlDelay, ControlGetFocus, Control, ControlGet, ControlMove, ControlGetPos, ControlClick, ControlGetText, ControlSetText, ControlSend

+ +

¿¹Á¦

+
ControlFocus, OK, Some Window Title  ; ÃÊÁ¡À» OK ¹öÆ°¿¡ ¼³Á¤ÇÕ´Ï´Ù
+ + + diff --git a/src/docs/commands/ControlGet.htm b/src/docs/commands/ControlGet.htm new file mode 100644 index 0000000..850ce21 --- /dev/null +++ b/src/docs/commands/ControlGet.htm @@ -0,0 +1,165 @@ + + + + +ControlGet + + + + + + + +

ControlGet

+ +

ÄÜÆ®·Ñ¿¡ °üÇÏ¿© ´Ù¾çÇÑ À¯ÇüÀÇ Á¤º¸¸¦ ¿­¶÷ÇÕ´Ï´Ù.

+ +
ControlGet, OutputVar, Cmd [, Value, Control, WinTitle, WinText, ExcludeTitle, ExcludeText]
+

¸Å°³º¯¼ö

+
+ +
OutputVar
+

Cmd ¸í·ÉÀÇ °á°ú¸¦ ÀúÀåÇÒ º¯¼öÀÇ À̸§.

+ +
Cmd, Value
+
¾Æ·¡ ¸®½ºÆ® ÂüÁ¶ +
+ +
Control
+

ClassNN (ÄÜÆ®·ÑÀÇ Å¬·¡½ºÀ̸§°ú ½Çü ¹øÈ£) ¶Ç´Â ÄÜÆ®·ÑÀÇ ÅؽºÆ®ÀÏ ¼ö ÀÖ½À´Ï´Ù. µÑ ¸ðµÎ Window Spy¸¦ ÅëÇÏ¿© ¾Ë¾Æ³¾ ¼ö ÀÖ½À´Ï´Ù. ÅؽºÆ®¸¦ »ç¿ëÇÒ ¶§, ºÎÇÕÇÏ´Â ÇàÀ§´Â SetTitleMatchMode·Î °áÁ¤µË´Ï´Ù. ÀÌ ¸Å°³º¯¼ö°¡ ºñ¾î ÀÖÀ¸¸é, ¸ñÇ¥ âÀÇ ÃÖ»óÀ§ ÄÜÆ®·ÑÀÌ »ç¿ëµË´Ï´Ù.

+

+ ÄÜÆ®·ÑÀÇ HWND (â ÇÚµé)¿¡ ÀÛµ¿½ÃÅ°·Á¸é, Control ¸Å°³º¯¼ö¸¦ ºó ä·Î µÎ°í ahk_id %ControlHwnd%¸¦ WinTitle ¸Å°³º¯¼ö¿¡ ÁöÁ¤ÇϽʽÿÀ (ÀÌ°ÍÀº ¼ûÀº ÄÜÆ®·Ñ¿¡µµ ÀÛµ¿ÇÕ´Ï´Ù. DetectHiddenWindows°¡ ²¨Á® À־ »ó°ü¾ø½À´Ï´Ù). ÄÜÆ®·ÑÀÇ HWND´Â ÀüÇüÀûÀ¸·Î ControlGet Hwnd, MouseGetPos, ¶Ç´Â DllCallÀ» ÅëÇÏ¿© ¿­¶÷ÇÕ´Ï´Ù.

+ +
WinTitle
+

â Á¦¸ñ ¶Ç´Â ¸ñÇ¥ âÀ» ½Äº°ÇÏ´Â ±âŸ ±âÁØ. WinTitle ÂüÁ¶.

+ +
WinText
+

Á¸ÀçÇÏ¸é ¸ñÇ¥ â ÅؽºÆ®ÀÇ ºÎ¹®ÀÚ¿­ÀÔ´Ï´Ù (Window Spy¿¡ ³ëÃâµÊ). ¼ûÀº ÅؽºÆ®´Â DetectHiddenText°¡ ÄÑÁ®(ON) ÀÖ¾î¾ß ³ëÃâµË´Ï´Ù.

+ +
ExcludeTitle
+

Á¦¸ñ¿¡ ÀÌ °ªÀÌ Àִ âÀº Á¦¿ÜÇÕ´Ï´Ù.

+ +
ExcludeText
+

ÅؽºÆ®¿¡ ÀÌ °ªÀÌ Àִ âÀº Á¦¿ÜÇÕ´Ï´Ù.

+ +
+ +

Cmd, Value

+

+Cmd¿Í Value ¸Å°³º¯¼ö´Â ¼­·Î ÀÇÁ¸ÇÕ´Ï´Ù. ±× »ç¿ë¹ýÀº ¾Æ·¡¿¡ ±â¼úÇÕ´Ï´Ù.

+

+List: ListView, ListBox, ComboBox, ¶Ç´Â DropDownList·ÎºÎÅÍ Ç׸ñ ¸®½ºÆ®¸¦ ¿­¶÷ÇÕ´Ï´Ù.

+

+ListView: ListView¸¦ ¿­¶÷ÇÏ´Â ±¸¹®Àº ´ÙÀ½°ú °°½À´Ï´Ù:

+ +
ControlGet, OutputVar, List, Options, SysListView321, WinTitle, WinText
+

+Options ¸Å°³º¯¼ö°¡ ºñ¾î Àְųª »ý·«µÇ¸é, ÄÜÆ®·Ñ¿¡ ÀÖ´Â ¸ðµç ÅؽºÆ®°¡ ¿­¶÷µË´Ï´Ù. ¸¶Áö¸· ÇàÀ» Á¦¿ÜÇÏ°í °¢ Çึ´Ù ¶óÀÎÇÇµå ¹®ÀÚ·Î ³¡³³´Ï´Ù (`n). °¢ Çà ¾È¿¡¼­, °¢ Çʵå (Ä÷³)Àº ¸¶Áö¸·À» Á¦¿ÜÇÏ°í ÅÇ ¹®ÀÚ·Î ³¡³³´Ï´Ù (`t).

+

+Options¿¡ ´ÙÀ½ ´Ü¾îµéÀ» ÁöÁ¤ÇϽʽÿÀ. °¢ ¿É¼ÇÀº ´ÙÀ½ ¿É¼Ç°ú ½ºÆäÀ̽º ¶Ç´Â ÅÇÀ¸·Î ±¸ºÐµË´Ï´Ù:

+

Selected: ¸ðµç Çà ¸»°í ¼±ÅÃµÈ (°­Á¶µÈ) Çàµé¸¸ ¿­¶÷ÇÕ´Ï´Ù. ¾Æ¹«°Íµµ ¾øÀ¸¸é, OutputVar´Â ºñ¿öÁý´Ï´Ù.
+ Focused: ÃÊÁ¡ Çุ ¿­¶÷ÇÕ´Ï´Ù. ¾øÀ¸¸é, OutputVar´Â ºñ¿öÁý´Ï´Ù.
+ Col4: ¸ðµç Ä÷³ ¸»°í ³× ¹ø° Ä÷³(Çʵå)¸¸ ¿­¶÷ÇÕ´Ï´Ù (4¸¦ ¿øÇÏ´Â ¹øÈ£·Î ±³Ã¼).
+ Count: ÄÜÆ®·Ñ¿¡ ÀÖ´Â Àüü ÇàÀÇ °³¼ö¸¦ ¿­¶÷ÇÕ´Ï´Ù.
+ Count Selected: ¼±ÅÃµÈ (°­Á¶µÈ) ÇàÀÇ °³¼ö¸¦ ¿­¶÷ÇÕ´Ï´Ù.
+ Count Focused: ÃÊÁ¡ ÇàÀǹøÈ£(À§Ä¡)¸¦ ¿­¶÷ÇÕ´Ï´Ù (¾øÀ¸¸é 0).
+Count Col: ÄÜÆ®·Ñ¿¡ ÀÖ´Â Ä÷³ÀÇ °³¼ö¸¦ ¿­¶÷ÇÕ´Ï´Ù (¶Ç´Â °³¼ö¸¦ ¼¿ ¼ö ¾øÀ¸¸é -1).

+

+ÁÖÀÇ: ¾î¶² ¾îÇø®ÄÉÀ̼ÇÀº ListView ÅؽºÆ®¸¦ µû·Î º¸°üÇÕ´Ï´Ù. ±× ¶§¹®¿¡ ÅؽºÆ®¸¦ ¿­¶÷ÇÒ ¼ö ¾ø½À´Ï´Ù. ÀÌ·± °æ¿ì, ErrorLevelÀº º¸Åë 0À¸·Î ¼³Á¤µË´Ï´Ù (¼º°øÀ» ¶æÇÔ). ±×·¯³ª ¿­¶÷µÈ Çʵå´Â ºñ¾î ÀÖÀ» °ÍÀÔ´Ï´Ù. ¶ÇÇÑ ListView ÅؽºÆ® ¿­¶÷Àº #MaxMemÀ¸·Î Á¦ÇѵÇÁö ¾Ê½À´Ï´Ù.

+

+¼º°øÇϸé, ErrorLevelÀº 0ÀÌ ¼³Á¤µË´Ï´Ù. ½ÇÆÐÇϸé 1·Î ¼³Á¤µÇ°í OutputVar´Â ºñ¿öÁý´Ï´Ù. ½ÇÆд ´ÙÀ½°ú °°Àº °æ¿ì ÀϾ´Ï´Ù: +

    +
  1. ¸ñÇ¥ âÀ̳ª ÄÜÆ®·ÑÀÌ Á¸ÀçÇÏÁö ¾Ê´Â´Ù; +
  2. ¸ñÇ¥ âÀÌ SysListView32 À¯ÇüÀÌ ¾Æ´Ï´Ù; +
  3. ListView¸¦ ¼ÒÀ¯ÇÑ ÇÁ·Î¼¼½º¸¦ ¿­ ¼ö ¾ø´Ù. ¾Æ¸¶µµ »ç¿ëÀÚ°¡ ±ÇÇÑÀÌ ¾ø°Å³ª Àá°Ü Àֱ⠶§¹®ÀÏ °ÍÀÌ´Ù; +
  4. ColN ¿É¼Ç¿¡ Á¸ÀçÇÏÁö ¾Ê´Â Ä÷³À» ÁöÁ¤Çß´Ù. +
+

+

+ListView·ÎºÎÅÍ °³º°ÀûÀ¸·Î Çà°ú Çʵ带 ÃßÃâÇÏ·Á¸é, ´ÙÀ½ ¿¹Á¦¿Í °°ÀÌ ÆÄ½Ì È¸µ¹À̸¦ »ç¿ëÇϽʽÿÀ:

+ +
ControlGet, List, List, Selected, SysListView321, WinTitle
+Loop, Parse, List, `n  ; ÇàÀº ¶óÀÎÇǵå·Î ±¸ºÐµË´Ï´Ù (`n).
+{
+    RowNumber := A_Index
+    Loop, Parse, A_LoopField, %A_Tab%  ; °¢ ÇàÀÇ Çʵå (Ä÷³)Àº ÅÇÀ¸·Î ±¸ºÐµË´Ï´Ù (A_Tab).
+        MsgBox Row #%RowNumber% Col #%A_Index% is %A_LoopField%.
+}
+

+°ü·ÃÇÏ¿© ¸»¾¸ µå¸®ÀÚ¸é, ListViewÀÇ Ä÷³Àº SendMessage¸¦ ÅëÇÏ¿© Å©±â¸¦ º¯°æÇÒ ¼ö ÀÖ½À´Ï´Ù. ´ÙÀ½ ¿¹Á¦¿¡ º¸¿©ÁÝ´Ï´Ù:

+ +
SendMessage, 4126, 0, 80, SysListView321, WinTitle  ; 4126Àº ¸Þ½ÃÁö LVM_SETCOLUMNWIDTHÀÔ´Ï´Ù.
+; À§¿¡¼­, 0Àº ù Ä÷³À» ³ªÅ¸³À´Ï´Ù (1Àº µÎ ¹ø°, 2´Â ¼¼ ¹ø°, µîµî.)  ¶ÇÇÑ, 80Àº »õ ³ÊºñÀÔ´Ï´Ù.
+; 80À» -1·Î ¹Ù²Ù¸é Ä÷³ÀÇ Å©±â°¡ ÀÚµ¿À¸·Î Á¶ÀýµË´Ï´Ù. -2·Î ±³Ã¼Çϸé Çì´õ ÅؽºÆ® ³Êºñ±îÁö °í·ÁÇÏ¿© Å©±â¸¦ Á¶ÀýÇØ ÁÝ´Ï´Ù.
+

+ListBox, ComboBox, DropDownList: ÄÜÆ®·Ñ·ÎºÎÅÍ ¸ðµç ÅؽºÆ®°¡ ¿­¶÷µË´Ï´Ù (Áï, À§ÀÇCount°ú Selected°°Àº ListView ¿É¼ÇÀº Áö¿øÇÏÁö ¾Ê½À´Ï´Ù).

+

+°¢ ÇàÀº ¸¶Áö¸·À» Á¦¿ÜÇÏ°í ¶óÀÎÇǵå·Î ³¡³³´Ï´Ù (`n). Ç׸ñ¿¡ °³º°ÀûÀ¸·Î Á¢±ÙÇÏ·Á¸é, ´ÙÀ½ ¿¹Á¦¿Í °°ÀÌ ÆÄ½Ì È¸µ¹À̸¦ »ç¿ëÇϽʽÿÀ:

+ +
ControlGet, List, List,, ComboBox1, WinTitle
+Loop, Parse, List, `n
+    MsgBox Item number %A_Index% is %A_LoopField%.
+

+Checked: üũ¹Ú½º³ª ¶óµð¿À ¹öÆ°ÀÌ Ã¼Å©µÇ¾î ÀÖÀ¸¸é OutputVar¿¡ 1À» ¼³Á¤ÇÕ´Ï´Ù. ±×·¸Áö ¾ÊÀ¸¸é 0À» ¼³Á¤ÇÕ´Ï´Ù.

+

Enabled: ControlÀÌ È°¼ºÈ­µÇ¾î ÀÖÀ¸¸é OutputVar¿¡ 1À» ¼³Á¤ÇÕ´Ï´Ù. ±×·¸Áö ¾ÊÀ¸¸é 0À» ¼³Á¤ÇÕ´Ï´Ù.

+

+Visible: ControlÀÌ º¸À̸é OutputVar¿¡ 1À» ¼³°øÇÏ°í, ¼û¾î ÀÖÀ¸¸é 0À» ¼³Á¤ÇÕ´Ï´Ù.

+

+Tab: OutputVar¿¡ SysTabControl32 ÄÜÆ®·ÑÀÇ ÅÇ ¹øÈ£¸¦ ¼³Á¤ÇÕ´Ï´Ù. ù ÅÇÀº 1, µÎ ¹ø° ÅÇÀº 2ÀÔ´Ï´Ù, µîµî. ´ë½Å¿¡ ¾ó¸¶³ª ¸¹Àº ÅÇ(ÆäÀÌÁö)°¡ ÅÇ ÄÜÆ®·Ñ¿¡ ÀÖ´ÂÁö ¾Ë¾Æ º¸·Á¸é, ´ÙÀ½ ¿¹Á¦¸¦ µû¸£½Ê½Ã¿À:

+ +
SendMessage, 0x1304,,, SysTabControl321, WinTitle  ; 0x1304´Â TCM_GETITEMCOUNTÀÔ´Ï´Ù.
+TabCount = %ErrorLevel%
+

+FindString, String: ListBox ¶Ç´Â ComboBox¿¡¼­ String¿¡ Á¤È®ÇÏ°Ô ÀÏÄ¡ÇÑ ¿£Æ®¸®ÀÇ °¹¼ö¸¦ OutputVar¿¡ ¼³Á¤ÇÕ´Ï´Ù. ÄÜÆ®·ÑÀÇ Ã¹ ¿£Æ®¸®´Â 1ÀÌ°í, µÎ ¹ø° ¿£Æ®¸®´Â 2ÀÔ´Ï´Ù, µîµî. ÀÏÄ¡°¡ ¾øÀ¸¸é, OutputVar´Â ºñ¿öÁö°í ErrorLevelÀº 1·Î ¼³Á¤µË´Ï´Ù.

+

+Choice: ListBox ¶Ç´Â ComboBoxSet¿¡¼­ ÇöÀç ¼±ÅÃµÈ ¿£Æ®¸®ÀÇ À̸§À» OutputVar¿¡ ¼³Á¤ÇÕ´Ï´Ù. ´ë½Å¿¡ ¼±ÅÃµÈ Ç׸ñÀÇ À§Ä¡¸¦ ¿­¶÷ÇÏ·Á¸é, ´ÙÀ½ ¿¹Á¦¸¦ µû¸£½Ê½Ã¿À (¾ÕÀÇ µÎ ÁÙ¸¸ »ç¿ëÇÕ´Ï´Ù):

+ +
SendMessage, 0x188, 0, 0, ListBox1, WinTitle  ; 0x188Àº LB_GETCURSELÀÔ´Ï´Ù (ListBox).
+SendMessage, 0x147, 0, 0, ComboBox1, WinTitle  ; 0x147Àº CB_GETCURSELÀÔ´Ï´Ù (DropDownList ¶Ç´Â ComboBox).
+ChoicePos = %ErrorLevel%  ; Ç׸ñÀÌ ¼±ÅõǾî ÀÖÁö ¾ÊÀ¸¸é -1ÀÌ ¼³Á¤µË´Ï´Ù.
+ChoicePos += 1  ; 0-±â¹Ý¿¡¼­ 1-±â¹ÝÀ¸·Î º¯È¯ÇÕ´Ï´Ù. ±×·¡¼­ ù Ç׸ñÀº 0ÀÌ ¾Æ´Ï¶ó, 1ÀÔ´Ï´Ù.
+

+LineCount: Edit ÄÜÆ®·ÑÀÇ ÁÙÀÇ °³¼ö¸¦ OutputVar¿¡ ¼³Á¤ÇÕ´Ï´Ù. ¸ðµç Edit ÄÜÆ®·ÑÀº ÄÜÆ®·ÑÀÌ ºñ¾î ÀÖÀ»Áö¶óµµ Àû¾îµµ 1 ÁÙÀÌ ÀÖ½À´Ï´Ù.

+

+CurrentLine: Edit ÄÜÆ®·Ñ¿¡¼­ ÇöÀç ij·µÀÌ ÀÖ´Â (»ðÀÔ ÁöÁ¡) ÁÙÀÇ ¹øÈ£¸¦ OutputVar¿¡ ¼³Á¤ÇÕ´Ï´Ù. ù ÁÙÀº 1ÀÔ´Ï´Ù. ÄÜÆ®·Ñ¿¡ ¼±ÅÃµÈ ÅؽºÆ®°¡ ÀÖ´Ù¸é, ¼±ÅÃÀÌ ½ÃÀÛÇÏ´Â °÷ÀÇ ÁÙ ¹øÈ£¸¦ OutputVar¿¡ ¼³Á¤ÇÕ´Ï´Ù.

+

+CurrentCol: Edit ÄÜÆ®·Ñ¿¡¼­ ÇöÀç ij·µÀÌ ÀÖ´Â (ÅؽºÆ® »ðÀÔ ÁöÁ¡) ¿­ ¹øÈ£¸¦ OutputVar¿¡ ¼³Á¤ÇÕ´Ï´Ù. ù ¿­Àº 1ÀÔ´Ï´Ù. ¼±ÅÃµÈ ÅؽºÆ®°¡ ÄÜÆ®·Ñ¿¡ ÀÖ´Ù¸é, OutputVar¿¡ ¼±ÅÃÀÌ ½ÃÀ۵Ǵ °÷ÀÇ ¿­ ¹øÈ£°¡ ¼³Á¤µË´Ï´Ù.

+

+Line, N: Edit ÄÜÆ®·Ñ¿¡¼­ N ¹ø ÁÙÀÇ ÅؽºÆ®¸¦ OutputVar¿¡ ¼³Á¤ÇÕ´Ï´Ù. Line 1Àº ù ÁÙÀÔ´Ï´Ù. ÄÜÆ®·ÑÀÇ Æ¯¼º¿¡ µû¶ó, OutputVar´Â ij¸®Áö ¸®ÅÏ (`r) ¶Ç´Â ij¸®Áö ¸®ÅÏ + ¶óÀÎÇǵå (`r`n)·Î ³¡³¯ ¼ö ÀÖ½À´Ï´Ù. ÁöÁ¤µÈ ÁÙ ¹øÈ£°¡ ºñ¾î Àְųª Á¸ÀçÇÏÁö ¾ÊÀ¸¸é, ErrorLevel ¿¡ 1ÀÌ ¼³Á¤µÇ°í OutputVar´Â ºñ¿öÁý´Ï´Ù.

+

+Selected: Edit ÄÜÆ®·Ñ¿¡¼­ ¼±ÅÃµÈ ÅؽºÆ®¸¦ OutputVar¿¡ ¼³Á¤ÇÕ´Ï´Ù. ¾Æ¹« ÅؽºÆ®µµ ¼±ÅõǾî ÀÖÁö ¾ÊÀ¸¸é, OutputVar´Â ºñ¿öÁö°í ErrorLevel¿¡´Â 0ÀÌ ¼³Á¤µË´Ï´Ù (Áï, ¿¡·¯ ¾øÀ½). ¾î¶² À¯ÇüÀÇ ÄÜÆ®·ÑÀº RichEdit20A¿Í °°ÀÌ ¾î¶² °æ¿ì ¿Ã¹Ù¸£°Ô ÅؽºÆ®¸¦ »ý»êÇÏÁö ¾ÊÀ» ¼ö ÀÖ½À´Ï´Ù (¿¹, Metapad).

+

+Style: ÄÜÆ®·ÑÀÇ ½ºÅ¸ÀÏÀ» ³ªÅ¸³»´Â 8-ÀÚ¸® ½ÊÀ°Áø ¼ö¸¦ ¿­¶÷ÇÕ´Ï´Ù. ½ºÅ¸ÀÏ ¸ñ·ÏÀº ½ºÅ¸ÀÏ Å×À̺íÀ» ÂüÁ¶ÇϽʽÿÀ.

+

+ExStyle: ÄÜÆ®·ÑÀÇ È®Àå ½ºÅ¸ÀÏÀ» ³ªÅ¸³»´Â 8-ÀÚ¸® ½ÊÀ°Áø ¼ö¸¦ ¿­¶÷ÇÕ´Ï´Ù.

+

+Hwnd [v1.0.43.06+]: ÁöÁ¤µÈ ÄÜÆ®·ÑÀÇ Ã¢ ÇÚµé(HWND)À» ¿­¶÷ÇÕ´Ï´Ù: ControlGet, OutputVar, Hwnd,, Edit1, WinTitle. ÄÜÆ®·ÑÀÇ HWND´Â PostMessage, SendMessage, ±×¸®°í DllCall¿¡ ÀÚÁÖ »ç¿ëµË´Ï´Ù. °ü·ÃÇÏ¿© ¸»¾¸ µå¸®ÀÚ¸é, ÄÜÆ®·ÑÀÇ HWND´Â MouseGetPos¸¦ ÅëÇؼ­ ¿­¶÷ÇÒ ¼öµµ ÀÖ½À´Ï´Ù. ¸¶Áö¸·À¸·Î, ÄÜÆ®·ÑÀÇ HWND¸¦ ahk_id WinTitle·Î Á÷Á¢ÀûÀ¸·Î »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù (ÀÌ°ÍÀº ¼ûÀº ÄÜÆ®·Ñ¿¡µµ ÀÛµ¿ÇÕ´Ï´Ù. DetectHiddenWindows°¡ ²¨Á® À־ »ó°ü¾ø½À´Ï´Ù).

+ +

ErrorLevel

+

+[v1.1.04+] ÀÌ ¸í·É¾î´Â ½ÇÆнà ¿¹¿Ü¸¦ ´øÁú ¼ö ÀÖ½À´Ï´Ù. ´õ ÀÚ¼¼ÇÑ Á¤º¸´Â ½ÇÇà½Ã°£ ¿¡·¯¸¦ ÂüÁ¶ÇϽʽÿÀ.

+

¼º°øÇϸé, ErrorLevelÀº 0ÀÌ ¼³Á¤µË´Ï´Ù. ¹®Á¦°¡ ¹ß»ýÇϸé -- Á¸ÀçÇÏÁö ¾Ê´Â âÀ̳ª ÄÜÆ®·Ñ °°Àº °æ¿ì -- ErrorLevelÀº 1ÀÌ ¼³Á¤µÇ°í OutputVar´Â ºñ¿öÁý´Ï´Ù.

+ +

³íÆò

+

+ÄÜÆ®·ÑÀ» º¯°æÇÏ´Â ¸í·É¾î¿Í ´Ù¸£°Ô, ControlGetÀº ÀÚµ¿ Áö¿¬ÀÌ ¾ø½À´Ï´Ù; Áï, SetControlDelay¿¡ ¿µÇâÀ» ¹ÞÁö ¾Ê½À´Ï´Ù.

+

+ÇöÀç ¸¶¿ì½º°¡ ¶° ÀÖ´Â ÄÜÆ®·ÑÀÇ ClassNN ¶Ç´Â HWND¸¦ ¾Ë¾Æ³»·Á¸é, MouseGetPos¸¦ »ç¿ëÇϽʽÿÀ. âÀÇ ÄÜÆ®·Ñ ¸ñ·ÏÀ» ¾òÀ¸·Á¸é, WinGet ControlList¸¦ »ç¿ëÇϽʽÿÀ.

+

+â Á¦¸ñ°ú ÅؽºÆ®´Â ´ë¼Ò¹®ÀÚ¸¦ ±¸º°ÇÕ´Ï´Ù. ¼ûÀº âÀº DetectHiddenWindows°¡ ÄÑÁ® ÀÖ¾î¾ß ŽÁöµË´Ï´Ù.

+ +

°ü·Ã Ç׸ñ

+

Control, GuiControlGet, ControlMove, ControlGetText, ControlSetText, ControlGetPos, ControlClick, ControlFocus, ControlSend, WinGet

+ +

¿¹Á¦

+ +
ControlGet, OutputVar, Line, 1, Edit1, Some Window Title
+
+ControlGet, WhichTab, Tab, , SysTabControl321, Some Window Title
+if ErrorLevel
+    MsgBox There was a problem.
+else
+    MsgBox Tab #%WhichTab% is active.
+ + + diff --git a/src/docs/commands/ControlGetFocus.htm b/src/docs/commands/ControlGetFocus.htm new file mode 100644 index 0000000..1207e86 --- /dev/null +++ b/src/docs/commands/ControlGetFocus.htm @@ -0,0 +1,63 @@ + + + + +ControlGetFocus + + + + + + + +

ControlGetFocus

+ +

¸ñÇ¥ â¿¡¼­ ÃÊÁ¡ÀÌ ÀÖ´Â ÄÜÆ®·ÑÀ» ¿­¶÷ÇÕ´Ï´Ù.

+ +
ControlGetFocus, OutputVar [, WinTitle, WinText, ExcludeTitle, ExcludeText]
+

¸Å°³º¯¼ö

+
+ +
OutputVar
+

ÄÜÆ®·ÑÀÇ ½Äº°ÀÚ¸¦ ÀúÀåÇÒ º¯¼öÀÇ À̸§. ±× ±¸¼ºÀº Ŭ·¡½ºÀ̸§ ´ÙÀ½¿¡ ±×ÀÇ ºÎ¸ð ¾È¿¡¼­ÀÇ ¿¬¼Ó ¹øÈ£°¡ µû¶ó¿É´Ï´Ù. ¿¹, Button12.

+ +
WinTitle
+

¸ñÇ¥ âÀ» ½Äº°Çϴ â Á¦¸ñ ¶Ç´Â ±âŸ ±âÁØ. WinTitle ÂüÁ¶.

+ +
WinText
+

Á¸ÀçÇϸé, ÀÌ ¸Å°³º¯¼ö´Â ¸ñÇ¥ â ÅؽºÆ®ÀÇ ºÎ¹®ÀÚ¿­ÀÔ´Ï´Ù (Window Spy¿¡ ³ëÃâµÊ). ¼ûÀº ÅؽºÆ®´Â DetectHiddenText°¡ ÄÑÁ® ÀÖ¾î¾ß(ON) ŽÁöµË´Ï´Ù.

+ +
ExcludeTitle
+

Á¦¸ñ¿¡ ÀÌ °ªÀÌ Àִ âÀº Á¦¿ÜÇÕ´Ï´Ù.

+ +
ExcludeText
+

ÅؽºÆ®¿¡ ÀÌ °ªÀÌ Àִ âÀº Á¦¿ÜÇÕ´Ï´Ù.

+ +
+ +

ErrorLevel

+

[v1.1.04+] ÀÌ ¸í·É¾î´Â ½ÇÆнà ¿¹¿Ü¸¦ ´øÁú ¼ö ÀÖ½À´Ï´Ù. ´õ ÀÚ¼¼ÇÑ Á¤º¸´Â ½ÇÇà½Ã°£ ¿¡·¯¸¦ ÂüÁ¶ÇϽʽÿÀ.

+

ErrorLevelÀº ÀÔ·Â ÃÊÁ¡ÀÌ ÀÖ´Â ÄÜÆ®·ÑÀ» ¼º°øÀûÀ¸·Î ¿­¶÷Çϸé 0ÀÌ ¼³Á¤µË´Ï´Ù. ±×·¸Áö ¾ÊÀ¸¸é (¿¹, ¸ñÇ¥ âÀÌ Á¸ÀçÇÏÁö ¾Ê°Å³ª ÀÔ·Â ÃÊÁ¡ÀÌ ÀÖ´Â ÄÜÆ®·ÑÀÌ ¾ø´Â °æ¿ì) 1·Î ¼³Á¤µË´Ï´Ù.

+ +

³íÆò

+

+ÀÌ ¸í·É¾î·Î ¿­¶÷ÇÑ ÄÜÆ®·ÑÀº Å°º¸µå ÃÊÁ¡ÀÌ ÀÖ½À´Ï´Ù. ´Ù½Ã ¸»ÇØ, »ç¿ëÀÚ°¡ ŸÀÚ¸¦ Çϸé Å°´­¸²À» ¹Þ¾ÆµéÀÔ´Ï´Ù.

+

+¸ñÇ¥ âÀÌ ÃÊÁ¡ÀÌ ÀÖ´Â ÄÜÆ®·ÑÀ» °¡Áö·Á¸é È°¼ºÈ­µÇ¾î ÀÖ¾î¾ß ÇÕ´Ï´Ù. âÀÌ È°¼ºÈ­µÇ¾î ÀÖÁö ¾ÊÀ¸¸é, OutputVar´Â ºñ¿öÁý´Ï´Ù.

+

+v1.1.19.03ÀÌÀü¿¡¼­, ControlGetFocus¸¦ ³ôÀº ºóµµ·Î (Áï, 500 ms º¸´Ù ºü¸£°Ô) ¹Ýº¹ÀûÀ¸·Î ½ÇÇàÇϸé, º¸Åë »ç¿ëÀÚÀÇ ´õºí-Ŭ¸¯À» ¹æÇØÇß½À´Ï´Ù. ÀÌ ¹®Á¦´Â ÀÌÁ¦ ÇØ°áµÇ¾ú½À´Ï´Ù.

+

+â Á¦¸ñ°ú ÅؽºÆ®´Â ´ë¼Ò¹®ÀÚ¿¡ ¹Î°¨ÇÕ´Ï´Ù. ¼ûÀº âÀº DetectHiddenWindows°¡ ÄÑÁ® ÀÖ¾î¾ß ŽÁöµË´Ï´Ù.

+ +

°ü·Ã Ç׸ñ

+

ControlFocus, ControlMove, ControlClick, ControlGetText, ControlSetText, ControlSend

+ +

¿¹Á¦

+
ControlGetFocus, OutputVar, Untitled - Notepad
+if ErrorLevel
+    MsgBox, The target window doesn't exist or none of its controls has input focus.
+else
+    MsgBox, Control with focus = %OutputVar%
+ + + diff --git a/src/docs/commands/ControlGetPos.htm b/src/docs/commands/ControlGetPos.htm new file mode 100644 index 0000000..17e282e --- /dev/null +++ b/src/docs/commands/ControlGetPos.htm @@ -0,0 +1,75 @@ + + + + +ControlGetPos + + + + + + + +

ControlGetPos

+ +

ÄÜÆ®·ÑÀÇ À§Ä¡¿Í Å©±â¸¦ ¿­¶÷ÇÕ´Ï´Ù.

+ +
ControlGetPos [, X, Y, Width, Height, Control, WinTitle, WinText, ExcludeTitle, ExcludeText]
+ +

¸Å°³º¯¼ö

+
+ +
X, Y
+

ControlÀÇ Á»ó ¸ð¼­¸®ÀÇ X¿Í Y ÁÂÇ¥¸¦ ÀúÀåÇÒ º¯¼ö À̸§ (Çȼ¿ ´ÜÀ§). ÀÌ ÁÂÇ¥´Â ¸ñÇ¥ âÀÇ Á»ó ¸ð¼­¸®¿¡ »ó´ëÀûÀÌ¸ç ±×·¡¼­ ControlMove°¡ »ç¿ëÇÏ´Â ÁÂÇ¥¿Í °°½À´Ï´Ù.

+

X³ª Y¸¦ »ý·«Çϸé, »óÀÀÇÏ´Â °ªÀÌ ÀúÀåµÇÁö ¾Ê½À´Ï´Ù.

+ +
Width/Height
+

ControlÀÇ ³Êºñ¿Í ³ôÀ̸¦ (Çȼ¿ ´ÜÀ§·Î) ÀúÀåÇÒ º¯¼öÀÇ À̸§. »ý·«Çϸé, »óÀÀÇÏ´Â °ªÀÌ ÀúÀåµÇÁö ¾Ê½À´Ï´Ù.

+ +
Control
+

ClassNN (ÄÜÆ®·ÑÀÇ Å¬·¡½ºÀ̸§°ú ½Çü ¹øÈ£) ¶Ç´Â ÄÜÆ®·ÑÀÇ ÅؽºÆ®. µÑ ¸ðµÎ Window Spy¸¦ ÅëÇÏ¿© ¾Ë¾Æ³¾ ¼ö ÀÖ½À´Ï´Ù. ÅؽºÆ®¸¦ »ç¿ëÇÒ ¶§, ºÎÇÕÇÏ´Â ÇàÀ§´Â SetTitleMatchMode·Î °áÁ¤µË´Ï´Ù. ÀÌ ¸Å°³º¯¼ö°¡ ºñ¾î ÀÖÀ¸¸é, ¸ñÇ¥ âÀÇ ÃÖ»óÀ§ ÄÜÆ®·ÑÀÌ »ç¿ëµË´Ï´Ù.

+

+ ÄÜÆ®·ÑÀÇ HWND (â ÇÚµé)¿¡ ÀÛµ¿½ÃÅ°·Á¸é, Control ¸Å°³º¯¼ö¸¦ ºó ä·Î µÎ°í ahk_id %ControlHwnd%¸¦ WinTitle ¸Å°³º¯¼ö¿¡ ÁöÁ¤ÇϽʽÿÀ (ÀÌ°ÍÀº ¼ûÀº ÄÜÆ®·Ñ¿¡µµ ÀÛµ¿ÇÕ´Ï´Ù. DetectHiddenWindows°¡ ²¨Á® À־ »ó°ü ¾ø½À´Ï´Ù). ÄÜÆ®·ÑÀÇ HWND´Â ÀüÇüÀûÀ¸·Î ControlGet Hwnd, MouseGetPos, ¶Ç´Â DllCall¸¦ ÅëÇÏ¿© ¿­¶÷ÇÕ´Ï´Ù.

+ +
WinTitle
+

¸ñÇ¥ âÀ» ½Äº°Çϴ â Á¦¸ñ ¶Ç´Â ±âŸ ±âÁØ. WinTitle ÂüÁ¶.

+ +
WinText
+

Á¸ÀçÇϸé, ÀÌ ¸Å°³º¯¼ö´Â ¸ñÇ¥ â ÅؽºÆ®ÀÇ ºÎ¹®ÀÚ¿­ÀÔ´Ï´Ù (Window Spy¿¡ ³ëÃâ). ¼ûÀº ÅؽºÆ®´Â DetectHiddenText°¡ ÄÑÁ®(ON) ÀÖ¾î¾ß ŽÁöµË´Ï´Ù.

+ +
ExcludeTitle
+

Á¦¸ñ¿¡ ÀÌ °ªÀÌ Àִ âÀº ¹«½ÃÇÕ´Ï´Ù.

+ +
ExcludeText
+

ÅؽºÆ®¿¡ ÀÌ °ªÀÌ Àִ âÀº ¹«½ÃÇÕ´Ï´Ù.

+ +
+ +

³íÆò

+

+ºÎÇÕÇϴ âÀ̳ª ÄÜÆ®·ÑÀÌ ¹ß°ßµÇÁö ¾ÊÀ¸¸é, Ãâ·Â º¯¼ö´Â ºñ¿öÁý´Ï´Ù.

+

+ÄÜÆ®·ÑÀ» º¯°æÇÏ´Â ¸í·É¾î¿Í ´Ù¸£°Ô, ControlGetPos´Â ÀÚµ¿ Áö¿¬ÀÌ ¾ø½À´Ï´Ù (SetControlDelay¿¡ ¿µÇâÀ» ¹ÞÁö ¾Ê½À´Ï´Ù).

+

+ÇöÀç ¸¶¿ì½º°¡ ¶° ÀÖ´Â ÄÜÆ®·ÑÀÇ ClassNNÀ̳ª HWND¸¦ ¹ß°ßÇÏ·Á¸é MouseGetPos¸¦ »ç¿ëÇϽʽÿÀ. âÀÇ ¸ðµç ÄÜÆ®·Ñ ¸ñ·ÏÀ» ¿­¶÷ÇÏ·Á¸é WinGetÀ» »ç¿ëÇϽʽÿÀ.

+

+â Á¦¸ñ°ú ÅؽºÆ®´Â ´ë¼Ò¹®ÀÚ¸¦ ±¸ºÐÇÕ´Ï´Ù. ¼ûÀº âÀº DetectHiddenWindows°¡ ÄÑÁ® ÀÖ¾î¾ß ŽÁöµË´Ï´Ù.

+ +

°ü·Ã Ç׸ñ

+

+ControlMove, WinGetPos, Control, ControlGet, ControlGetText, ControlSetText, ControlClick, ControlFocus, ControlSend

+ +

¿¹Á¦

+ +
; ´ÙÀ½ÀÇ ÀÛµ¿ÇÏ´Â ¿¹Á¦´Â °è¼Ó °»½ÅÇϸ鼭
+; ÇöÀç ¸¶¿ì½º ¾Æ·¡ÀÇ ÄÜÆ®·ÑÀÇ À§Ä¡¿Í À̸§À» º¸¿©ÁÝ´Ï´Ù:
+Loop
+{
+    Sleep, 100
+    MouseGetPos, , , WhichWindow, WhichControl
+    ControlGetPos, x, y, w, h, %WhichControl%, ahk_id %WhichWindow%
+    ToolTip, %WhichControl%`nX%X%`tY%Y%`nW%W%`t%H%
+}
+ + + diff --git a/src/docs/commands/ControlGetText.htm b/src/docs/commands/ControlGetText.htm new file mode 100644 index 0000000..892c2b6 --- /dev/null +++ b/src/docs/commands/ControlGetText.htm @@ -0,0 +1,69 @@ + + + + +ControlGetText + + + + + + + +

ControlGetText

+ +

ÄÜÆ®·Ñ·ÎºÎÅÍ ÅؽºÆ®¸¦ ¿­¶÷ÇÕ´Ï´Ù.

+ +
ControlGetText, OutputVar [, Control, WinTitle, WinText, ExcludeTitle, ExcludeText]
+ +

¸Å°³º¯¼ö

+
+ +
OutputVar
+

¿­¶÷µÈ ÅؽºÆ®¸¦ ÀúÀåÇÒ º¯¼öÀÇ À̸§.

+ +
Control
+

ClassNN (ÄÜÆ®·ÑÀÇ Å¬·¡½ºÀ̸§°ú ½Çü ¹øÈ£) ¶Ç´Â ÄÜÆ®·ÑÀÇ ÅؽºÆ®ÀÏ ¼ö ÀÖ½À´Ï´Ù. µÑ ´Ù Window Spy¸¦ ÅëÇÏ¿© ¾Ë¾Æ³¾ ¼ö ÀÖ½À´Ï´Ù. ÅؽºÆ®¸¦ »ç¿ëÇÒ ¶§, ºÎÇÕ ÇàÀ§´Â SetTitleMatchMode·Î °áÁ¤µË´Ï´Ù. ÀÌ ¸Å°³º¯¼ö°¡ ºñ¾î Àְųª »ý·«µÇ¸é, ¸ñÇ¥ âÀÇ ÃÖ»óÀ§ ÄÜÆ®·ÑÀÌ »ç¿ëµË´Ï´Ù.

+

+ ÄÜÆ®·ÑÀÇ HWND (â ÇÚµé)¿¡ ÀÛµ¿½ÃÅ°·Á¸é, Control ¸Å°³º¯¼ö¸¦ ºñ¿öµÎ°í ahk_id %ControlHwnd%¸¦ WinTitle ¸Å°³º¯¼ö¿¡ ÁöÁ¤ÇϽʽÿÀ (ÀÌ°ÍÀº ¼ûÀº ÄÜÆ®·Ñ¿¡µµ ÀÛµ¿ÇÕ´Ï´Ù. DetectHiddenWindows°¡ ²¨Á® À־ »ó°ü¾ø½À´Ï´Ù). ÄÜÆ®·ÑÀÇ HWND´Â ÀüÇüÀûÀ¸·Î ControlGet Hwnd, MouseGetPos, ¶Ç´Â DllCallÀ» ÅëÇÏ¿© ¿­¶÷ÇÕ´Ï´Ù.

+ +
WinTitle
+

¸ñÇ¥ âÀ» ½Äº°Çϴ â Á¦¸ñÀ̳ª ±âŸ ±âÁØ. WinTitle ÂüÁ¶.

+ +
WinText
+

Á¸ÀçÇϸé, ÀÌ ¸Å°³º¯¼ö´Â ¸ñÇ¥ â ÅؽºÆ®ÀÇ ºÎ¹®ÀÚ¿­ÀÔ´Ï´Ù (Window Spy¿¡ ³ëÃâ). ¼ûÀº ÅؽºÆ®´Â DetectHiddenText°¡ ÄÑÁ®(ON) ÀÖ¾î¾ß ŽÁöµË´Ï´Ù.

+ +
ExcludeTitle
+

Á¦¸ñ¿¡ ÀÌ °ªÀÌ Àִ âÀº Á¦¿ÜÇÕ´Ï´Ù.

+ +
ExcludeText
+

ÅؽºÆ®¿¡ ÀÌ °ªÀÌ Àִ âÀº Á¦¿ÜÇÕ´Ï´Ù.

+ +
+ +

ErrorLevel

+

[v1.1.04+] ÀÌ ¸í·É¾î´Â ½ÇÆнà ¿¹¿Ü¸¦ ´øÁú ¼ö ÀÖ½À´Ï´Ù. ´õ ÀÚ¼¼ÇÑ Á¤º¸´Â ½ÇÇà½Ã°£ ¿¡·¯¸¦ ÂüÁ¶ÇϽʽÿÀ.

+

ErrorLevelÀº ¹®Á¦°¡ ÀÖÀ¸¸é 1ÀÌ ¼³Á¤µÇ°í ±×·¸Áö ¾ÊÀ¸¸é 0ÀÌ ¼³Á¤µË´Ï´Ù.

+ +

³íÆò

+

+ÁÖÀÇ: ÅؽºÆ®¸¦ ListView, ListBox, ¶Ç´Â ComboBoxÀ¸·ÎºÎÅÍ ¿­¶÷ÇÏ·Á¸é, ´ë½Å¿¡ ControlGet List¸¦ »ç¿ëÇϽʽÿÀ.

+

+¿­¶÷µÈ ÅؽºÆ®°¡ Àß·Á ³ª°£ °Í °°À¸¸é (ºÒ¿ÏÀüÇϸé), ControlGetText ¸»°í VarSetCapacity(OutputVar, 55)¸¦ »ç¿ëÇØ º¸½Ê½Ã¿À [55¸¦ Àß·Á³ª°£ ÅؽºÆ®º¸´Ù »ó´çÈ÷ ´õ ±ä Å©±â·Î ±³Ã¼ÇϽʽÿÀ]. ¾îÇø®ÄÉÀ̼ÇÀÌ WM_GETTEXTLENGTH ¸Þ½ÃÁö¿¡ Á¦´ë·Î ÀÀ´äÇÏÁö ¾Ê´Â °æ¿ì, AutoHotkey°¡ Ãâ·Â º¯¼ö¸¦ ³Ê¹« ÀÛ°Ô ¸¸µé¾î ¸ðµç ÅؽºÆ®¸¦ ´ãÁö ¸øÇϱ⠶§¹®ÀÔ´Ï´Ù.

+

+¿­¶÷µÈ ÅؽºÆ®ÀÇ ¾çÀº º¯¼öÀÇ ÃÖ´ë °¡¿ë ´É·ÂÀ¸·Î Á¦Çѵ˴ϴ٠(ÀÌ´Â #MaxMem Áö½Ã¾î¸¦ ÅëÇÏ¿© º¯°æÇÒ ¼ö ÀÖ½À´Ï´Ù). °á°úÀûÀ¸·Î, ¸ñÇ¥ ÄÜÆ®·Ñ¿¡ ¹æ´ëÇÑ ¾çÀÇ ÅؽºÆ®°¡ ´ã°Ü ÀÖÀ¸¸é (¿¹¸¦ µé¾î, ÆíÁý±â¿¡ ¹æ´ëÇÑ ¹®¼­°¡ ¿­·Á ÀÖ´Â °æ¿ì) ÀÌ ¸í·É¾î´Â ¹æ´ëÇÑ ¾çÀÇ ·¥À» »ç¿ëÇÒ °¡´É¼ºÀÌ ÀÖ½À´Ï´Ù. ±×·¸Áö¸¸, º¯¼öÀÇ ¸Þ¸ð¸®´Â ¾Æ¹«°Íµµ ÁöÁ¤ÇÏÁö ¾ÊÀ¸¸é ¼Õ½±°Ô ÇØÁ¦ÇÒ ¼ö ÀÖ½À´Ï´Ù. Áï, OutputVar =.

+

+´ëºÎºÐÀÇ ÄÜÆ®·Ñ À¯ÇüÀ¸·ÎºÎÅÍ ¿­¶÷µÈ ÅؽºÆ®´Â °¢ ÁÙÀÇ ³¡À» Ç¥½ÃÇϱâ À§ÇØ È¦·Î ¶óÀÎÇǵå(`n)¸¦ »ç¿ëÇÏÁö ¾Ê°í ij¸®Áö ¸®ÅÏ°ú ¶óÀÎÇǵå (`r`n)¸¦ »ç¿ëÇÕ´Ï´Ù.

+

+SetTitleMatchMode Slow¸¦ ó¸®ÇÒ ÇÊ¿ä´Â ¾ø½À´Ï´Ù. ¿Ö³ÄÇϸé ControlGetText´Â ¾ðÁ¦³ª ÅؽºÆ®¸¦ ´À¸° ¹æ¹ýÀ¸·Î ¹Þ±â ¶§¹®ÀÔ´Ï´Ù (±× ¶§¹®¿¡ ±¤¹üÀ§ÇÑ ¹üÀ§ÀÇ ÄÜÆ®·Ñ À¯Çü¿¡ ÀÛµ¿ÇÕ´Ï´Ù).

+

+âÀÇ ¸ðµç ÄÜÆ®·Ñ ¸ñ·ÏÀ» ¿­¶÷ÇÏ·Á¸é, WinGet ControlList¸¦ »ç¿ëÇϽʽÿÀ.

+

+â Á¦¸ñ°ú ÅؽºÆ®´Â ´ë¼Ò¹®ÀÚ¸¦ ±¸º°ÇÕ´Ï´Ù. ¼ûÀº âÀº DetectHiddenWindows°¡ ÄÑÁ® ÀÖ¾î¾ß ŽÁöµË´Ï´Ù.

+

°ü·Ã Ç׸ñ

+

ControlSetText, WinGetText, Control, ControlGet, ControlMove, ControlFocus, ControlClick, ControlSend, #MaxMem

+

¿¹Á¦

+
ControlGetText, OutputVar, Edit1, Untitled -
+ + + diff --git a/src/docs/commands/ControlMove.htm b/src/docs/commands/ControlMove.htm new file mode 100644 index 0000000..b830822 --- /dev/null +++ b/src/docs/commands/ControlMove.htm @@ -0,0 +1,76 @@ + + + + +ControlMove + + + + + + + +

ControlMove

+ +

ÄÜÆ®·ÑÀ» À̵¿Çϰųª Å©±â¸¦ º¯°æÇÕ´Ï´Ù.

+ +
ControlMove, Control, X, Y, Width, Height [, WinTitle, WinText, ExcludeTitle, ExcludeText]
+

¸Å°³º¯¼ö

+
+ +
Control
+

ClassNN (ÄÜÆ®·ÑÀÇ Å¬·¡½ºÀ̸§°ú ½Çü ¹øÈ£) ¶Ç´Â ÄÜÆ®·ÑÀÇ ÅؽºÆ®ÀÔ´Ï´Ù. µÑ ¸ðµÎ Window Spy¸¦ ÅëÇÏ¿© ¾Ë¾Æ³¾ ¼ö ÀÖ½À´Ï´Ù. ÅؽºÆ®¸¦ »ç¿ëÇÒ ¶§, ºÎÇÕ ÇàÀ§´ÂSetTitleMatchMode·Î °áÁ¤µË´Ï´Ù. ÀÌ ¸Å°³º¯¼ö°¡ ºñ¾î ÀÖÀ¸¸é, ¸ñÇ¥ âÀÇ ÃÖ»óÀ§ ÄÜÆ®·ÑÀÌ »ç¿ëµË´Ï´Ù.

+

+ ÄÜÆ®·ÑÀÇ HWND (â ÇÚµé)¿¡ ÀÛµ¿½ÃÅ°·Á¸é, Control ¸Å°³º¯¼ö¸¦ ºñ¿öµÎ°í ahk_id %ControlHwnd%¸¦ WinTitle ¸Å°³º¯¼ö¿¡ ÁöÁ¤ÇϽʽÿÀ (ÀÌ°ÍÀº ¼ûÀº ÄÜÆ®·Ñ¿¡µµ ÀÛµ¿ÇÕ´Ï´Ù. DetectHiddenWindows±â ²¨Á® À־ »ó°üÀÌ ¾ø½À´Ï´Ù). ÄÜÆ®·ÑÀÇ HWNDÀº ÀüÇüÀûÀ¸·Î ControlGet Hwnd, MouseGetPos, ¶Ç´Â DllCallÀ» ÅëÇÏ¿© ¿­¶÷ÇÕ´Ï´Ù.

+ +
X, Y
+

+ ControlÀÇ »õ À§Ä¡ÀÇ Á»ó ¸ð¼­¸®ÀÇ X¿Í Y ÁÂÇ¥ (Çȼ¿ ´ÜÀ§), Ç¥Çö½Ä °¡´É. ÁÂÇ¥°¡ ºñ¾î ÀÖÀ¸¸é, ControlÀÇ ±× Â÷¿øÀÇ À§Ä¡´Â º¯°æµÇÁö ¾Ê½À´Ï´Ù. ÁÂÇ¥´Â ControlÀÇ ºÎ¸ð âÀÇ Á»ó ¸ð¼­¸®¿¡ »ó´ëÀûÀÔ´Ï´Ù; ControlGetPos ¶Ç´Â Window Spy¸¦ »ç¿ëÇÏ¸é ±× ÁÂÇ¥¸¦ ¾Ë ¼ö ÀÖ½À´Ï´Ù.

+ +
Width, Height
+

ControlÀÇ »õ ³Êºñ¿Í ³ôÀÌ (Çȼ¿ ´ÜÀ§), Ç¥Çö½Äµµ °¡´É. ÀÌ ¸Å°³º¯¼ö°¡ ºñ¾î Àְųª »ý·«µÇ¸é, ±× Â÷¿øÀÇ ControlÀÇ Å©±â´Â º¯°æµÇÁö ¾Ê½À´Ï´Ù.

+ +
WinTitle
+

¸ñÇ¥ âÀ» ½Äº°Çϴ â Á¦¸ñÀ̳ª ±âŸ ±âÁØ. WinTitle ÂüÁ¶.

+ +
WinText
+

Á¸ÀçÇϸé, ÀÌ ¸Å°³º¯¼ö´Â ¸ñÇ¥ â ÅؽºÆ®ÀÇ ºÎ¹®ÀÚ¿­ÀÔ´Ï´Ù (Window Spy¿¡ ³ëÃâ). ¼ûÀº ÅؽºÆ®´Â DetectHiddenText°¡ ÄÑÁ®(ON) ÀÖ¾î¾ß ŽÁöµË´Ï´Ù.

+ +
ExcludeTitle
+

Á¦¸ñ¿¡ ÀÌ °ªÀÌ Àִ âÀº ¹«½ÃÇÕ´Ï´Ù.

+ +
ExcludeText
+

ÅؽºÆ®¿¡ ÀÌ °ªÀÌ Àִ âÀº ¹«½ÃÇÕ´Ï´Ù.

+ +
+ +

ErrorLevel

+

+[v1.1.04+] ÀÌ ¸í·É¾î´Â ½ÇÆнà ¿¹¿Ü¸¦ ´øÁú ¼ö ÀÖ½À´Ï´Ù. ´õ ÀÚ¼¼ÇÑ Á¤º¸´Â ½ÇÇà½Ã°£ ¿¡·¯¸¦ ÂüÁ¶ÇϽʽÿÀ.

+

ErrorLevelÀº ¹®Á¦°¡ ÀÖÀ¸¸é 1ÀÌ ¼³Á¤µÇ°í ±×·¸Áö ¾ÊÀ¸¸é 0ÀÌ ¼³Á¤µË´Ï´Ù.

+

³íÆò

+

+½Å·Ú¼ºÀ» °³¼±Çϱâ À§ÇØ, ÀÌ ¸í·É¾î¸¦ »ç¿ëÇÒ ¶§¸¶´Ù ÀÚµ¿À¸·Î Áö¿¬µË´Ï´Ù. ÀÌ Áö¿¬ ½Ã°£Àº SetControlDelayÀ» ÅëÇÏ¿© º¯°æÇÒ ¼ö ÀÖ½À´Ï´Ù.

+

+â Á¦¸ñ°ú ÅؽºÆ®´Â ´ë¼Ò¹®ÀÚ¸¦ ±¸ºÐÇÕ´Ï´Ù. ¼ûÀº âÀº DetectHiddenWindows°¡ ÄÑÁ® ÀÖ¾î¾ß ŽÁöµË´Ï´Ù.

+ +

°ü·Ã Ç׸ñ

+

+ControlGetPos, WinMove, SetControlDelay, Control, ControlGet, ControlGetText, ControlSetText, ControlClick, ControlFocus, ControlSend

+ +

¿¹Á¦

+
SetTimer, ControlMoveTimer
+InputBox, OutputVar, My Input Box
+return
+
+ControlMoveTimer:
+IfWinNotExist, My Input Box
+    return
+; ±×·¸Áö ¾ÊÀ¸¸é À§¿¡¼­ ¿ì¸®¸¦ À§ÇØ "¸¶Áö¸·À¸·Î ¹ß°ßµÈ" âÀ» ¼³Á¤ÇÕ´Ï´Ù:
+SetTimer, ControlMoveTimer, off
+WinActivate
+ControlMove, OK, 10, , 200  ; OK ¹öÆ°À» ¿ÞÂÊÀ¸·Î À̵¿ÇÏ°í ±×ÀÇ ³Êºñ¸¦ ´Ã¸³´Ï´Ù.
+return
+ + + diff --git a/src/docs/commands/ControlSend.htm b/src/docs/commands/ControlSend.htm new file mode 100644 index 0000000..2d4e9dc --- /dev/null +++ b/src/docs/commands/ControlSend.htm @@ -0,0 +1,92 @@ + + + + +ControlSend / ControlSendRaw + + + + + + + +

ControlSend / ControlSendRaw

+ +

Èä³»³½ Å°´­¸²À» âÀ̳ª ÄÜÆ®·Ñ¿¡ º¸³À´Ï´Ù.

+ +
ControlSend [, Control, Keys, WinTitle, WinText, ExcludeTitle, ExcludeText]
+ControlSendRaw: À§¿Í ¸Å°³º¯¼ö µ¿ÀÏ.
+ +

¸Å°³º¯¼ö

+
+ +
Control
+

ClassNN (ÄÜÆ®·ÑÀÇ Å¬·¡½ºÀ̸§°ú ½Çü ¹øÈ£) ¶Ç´Â ÄÜÆ®·ÑÀÇ ÅؽºÆ®ÀÏ ¼ö ÀÖ½À´Ï´Ù. µÑ ¸ðµÎ Window Spy¸¦ ÅëÇÏ¿© ¾Ë¾Æ³¾ ¼ö ÀÖ½À´Ï´Ù. ÅؽºÆ®¸¦ »ç¿ëÇÒ ¶§, ºÎÇÕ ÇàÀ§´Â SetTitleMatchMode·Î °áÁ¤µË´Ï´Ù. ÀÌ ¸Å°³º¯¼ö°¡ ºñ¾î Àְųª »ý·«µÇ¸é, ¸ñÇ¥ âÀÇ ÃÖ»óÀ§ ÄÜÆ®·ÑÀÌ »ç¿ëµË´Ï´Ù. ÀÌ ¸Å°³º¯¼ö°¡ ahk_parentÀ̸é, Å°´­¸²ÀÌ ±×ÀÇ ÄÜÆ®·Ñ Áß Çϳª°¡ ¾Æ´Ï¶ó °ð¹Ù·Î ¸ñÇ¥ âÀ¸·Î Àü¼ÛµË´Ï´Ù (¿¹Á¦´Â Winamp ÀÚµ¿È­Çϱ⸦ ÂüÁ¶ÇϽʽÿÀ).

+

+ ÄÜÆ®·ÑÀÇ HWND (â ÇÚµé)¿¡ ÀÛµ¿½ÃÅ°·Á¸é, Control ¸Å°³º¯¼ö¸¦ ºñ¿öµÎ°í ahk_id %ControlHwnd%¸¦ WinTitle ¸Å°³º¯¼ö¿¡ ÁöÁ¤ÇϽʽÿÀ (ÀÌ°ÍÀº ¼ûÀº ÄÜÆ®·Ñ¿¡µµ ÀÛµ¿ÇÕ´Ï´Ù. DetectHiddenWindows°¡ ²¨Á® À־ »ó°üÀÌ ¾ø½À´Ï´Ù). ÄÜÆ®·ÑÀÇ HWND´Â ÀüÇüÀûÀ¸·Î ControlGet Hwnd, MouseGetPos, ¶Ç´Â DllCallÀ» ÅëÇÏ¿© ¿­¶÷ÇÕ´Ï´Ù.

+ +
Keys
+
+

Àü¼ÛÇÒ Å° ¿¬¼Ó (ÀÚ¼¼ÇÑ °ÍÀº Send ¸í·É¾î ÂüÁ¶). ¹®ÀÚ ±×´ë·ÎÀÇ ½°Ç¥¸¦ Àü¼ÛÇÏ·Á¸é, ÇǽŽÃÅ°½Ê½Ã¿À (`,). ¹®ÀÚ¸¦ Àü¼ÛÇÏ´Â ºñÀ²Àº SetKeyDelay·Î °áÁ¤µË´Ï´Ù.

+

+ Send ¸í·É¾î¿Í ´Ù¸£°Ô, ¸¶¿ì½º Ŭ¸¯Àº ControlSend·Î º¸³¾ ¼ö ¾ø½À´Ï´Ù. ¸¶¿ì½º Ŭ¸¯À» º¸³»·Á¸é ControlClickÀ» »ç¿ëÇϽʽÿÀ.

+ +
WinTitle
+

¸ñÇ¥ âÀ» ½Äº°Çϴ â Á¦¸ñÀ̳ª ±âŸ ±âÁØ. WinTitle ÂüÁ¶.

+ +
WinText
+

Á¸ÀçÇϸé, ÀÌ ¸Å°³º¯¼ö´Â ¸ñÇ¥ â ÅؽºÆ®ÀÇ ºÎ¹®ÀÚ¿­ÀÔ´Ï´Ù (Window Spy¿¡ ³ëÃâ). ¼ûÀº ÅؽºÆ®´Â DetectHiddenText°¡ ÄÑÁ®(ON) ÀÖ¾î¾ß ŽÁöµË´Ï´Ù.

+ +
ExcludeTitle
+

Á¦¸ñ¿¡ ÀÌ °ªÀÌ Àִ âÀº ¹èÁ¦ÇÕ´Ï´Ù.

+ +
ExcludeText
+

ÅؽºÆ®¿¡ ÀÌ °ªÀÌ Àִ âÀº ¹èÁ¦ÇÕ´Ï´Ù.

+ +
+ +

ErrorLevel

+

[v1.1.04+] ÀÌ ¸í¾î´Â ½ÇÆнà ¿¹¿Ü¸¦ ´øÁú ¼ö ÀÖ½À´Ï´Ù. ´õ ÀÚ¼¼ÇÑ Á¤º¸´Â ½ÇÇà½Ã°£ ¿¡·¯¸¦ ÂüÁ¶ÇϽʽÿÀ.

+

ErrorLevelÀº ¹®Á¦°¡ ÀÖÀ¸¸é 1 ¾øÀ¸¸é 0ÀÌ ¼³Á¤µË´Ï´Ù.

+ +

³íÆò

+

+ControlSendRaw´Â Keys ¸Å°³º¯¼ö¿¡ ÀÖ´Â Å°´­¸²À» Á¤È®ÇÏ°Ô ³ªÅ¸³ª´Â ±×´ë·Î Àü¼ÛÇÕ´Ï´Ù. {Enter}¸¦ ENTER Å°´­¸²À¸·Î, ^c¸¦ Control-C·Î, µîµî º¯È¯ÇÏÁö ¾Ê½À´Ï´Ù.

+

+Control ¸Å°³º¯¼ö¸¦ »ý·«Çϸé, ÀÌ ¸í·É¾î´Â ¸ñÇ¥ â¿¡ Á÷Á¢ Àü¼ÛÀ» ½ÃµµÇÕ´Ï´Ù. ±×ÀÇ ÃÖ»óÀ§ ÄÜÆ®·Ñ¿¡ Àü¼ÛÇϰųª (º¸Åë ¿Ã¹Ù¸¥ â) ¶Ç´Â ÄÜÆ®·ÑÀÌ ¾øÀ¸¸é ±× â ÀÚü¿¡ Àü¼ÛÇÕ´Ï´Ù. â¿¡ ÄÜÆ®·ÑÀÌ ÀüÇô ¾ø´Â µí º¸ÀÏ ¶§, ¶Ç´Â ±×³É ÆíÇÏ°Ô ¾î´À ÄÜÆ®·Ñ¿¡ º¸³»¾ß ÇÒÁö °í¹ÎÇÏ°í ½ÍÁö ¾ÊÀ» ¶§ À¯¿ëÇÕ´Ï´Ù.

+

+±âº»°ªÀ¸·Î, ¼ö½Ä Å° (Control, Alt, Shift, ±×¸®°í Win)´Â º¸Åë Send ¸í·É¾î·Î Àü¼ÛµÇ´Â °Í°ú ¶È °°ÀÌ Àü¼ÛµË´Ï´Ù. ÀÌ·¸°Ô ÇÏ¸é ¸í·É¾î ÇÁ·ÒÇÁÆ®¿Í ±âŸ ÄÜ¼Ö Ã¢ÀÌ ´ë¹®ÀÚ, Á¦¾î ¹®ÀÚ µîµîÀ» ÀûÀýÇÏ°Ô Å½ÁöÇÒ ¼ö ÀÖ½À´Ï´Ù. ¶Ç ´Ù¸¥ ¸é¿¡¼­ ½Å·Ú¼ºµµ Çâ»óµË´Ï´Ù.

+

+±×·¸Áö¸¸, ¾î¶² °æ¿ì ÀÌ ¼ö½Ä À̺¥Æ®´Â È°¼º â°ú ¾ôÈú ¼ö ÀÖ½À´Ï´Ù. ƯÈ÷ ControlSend°¡ ÁøÇà ÁßÀÎ µ¿¾È¿¡ »ç¿ëÀÚ°¡ °Ý·ÄÇÏ°Ô Å¸ÀÚÇÏ°í ÀÖ´Ù¸é ¶Ç´Â Alt Å°°¡ Àü¼Û ÁßÀ̶ó¸é (Alt´Â È°¼º âÀÇ ¸Þ´º ¹Ù¸¦ È°¼ºÈ­ ½ÃÅ°±â ¶§¹®¿¡) °£¼· Çö»óÀÌ ÀϾ ¼ö ÀÖ½À´Ï´Ù. ÀÌ·± ÀÏÀº ´ÙÀ½ ¿¹Á¦¿Í °°Àº ¸í½ÃÀûÀ¸·Î ¼ö½Ä Å°¸¦ ´©¸£°í ¶¼´Â À̺¥Æ®¸¦ Àü¼ÛÇϸé ÇÇÇÒ ¼ö ÀÖ½À´Ï´Ù:

+
ControlSend, Edit1, {Alt down}f{Alt up}, Untitled - Notepad
+

+À§ÀÇ ¹æ¹ýÀº ¶Ç ¿öÅ©½ºÅ×À̼ÇÀÌ Àá°Ü ÀÖ´Â µ¿¾È (·Î±×¿Â ÇÁ·ÒÇÁÆ®·Î º¸È£µÇ¾î ÀÖ´Â µ¿¾È)¿¡µµ ¼ö½ÄÅ° ´­¸² (Control/Alt/Shift/Win)À» Àü¼ÛÇÒ ¼ö ÀÖ½À´Ï´Ù.

+

+BlockInput´Â ¸í·É¾î ÇÁ·ÒÇÁÆ®¿Í °°Àº ÄÜ¼Ö Ã¢¿¡ ControlSend¸¦ »ç¿ëÇÒ ¶§ Àý´ë ÇÇÇØ¾ß ÇÕ´Ï´Ù. ¿Ö³ÄÇϸé Control°ú °°Àº ¼ö½ÄÅ°¿Í ´ë¼Ò¹®ÀÚ º¯È¯ÀÌ Á¦´ë·Î ÀÛµ¿ÇÏÁö ¸øÇϱ⠶§¹®ÀÔ´Ï´Ù.

+

+SetKeyDelayÀÇ °ªÀº Å°°¡ Àü¼ÛµÇ´Â ¼Óµµ¸¦ °áÁ¤ÇÕ´Ï´Ù. ¸ñÇ¥ âÀÌ Å° ´­¸²À» Á¦´ë·Î ¹ÞÁö ¾ÊÀ¸¸é, ´ÙÀ½ ¿¹Á¦¿Í °°Àº SetKeyDelayÀÇ µÎ ¹ø° ¸Å°³º¯¼ö¸¦ ÅëÇÏ¿© ´©¸§ Áö¼Ó ½Ã°£À» ´Ã·Á º¸½Ê½Ã¿À:

+ +
SetKeyDelay, 10, 10
+SetKeyDelay, 0, 10
+SetKeyDelay, -1, 0
+

+¸ñÇ¥ ÄÜÆ®·ÑÀÌ Edit ÄÜÆ®·ÑÀ̸é (¶Ç´Â ±× ºñ½ÁÇÑ ÄÜÆ®·ÑÀ̸é), ControlSendº¸´Ù ´ÙÀ½ÀÌ º¸Åë ´õ ¹ÏÀ» ¸¸ÇÏ°í ´õ ºü¸¨´Ï´Ù:

+ +
Control, EditPaste, ÀÌ ÅؽºÆ®´Â ij·µ À§Ä¡¿¡ »ðÀԵ˴ϴÙ., ControlName, WinTitle
+
ControlSetText, ControlName, ÀÌ ÅؽºÆ®´Â ÇöÀç ÅؽºÆ®¸¦ ¿ÏÀüÈ÷ ±³Ã¼ÇÕ´Ï´Ù., WinTitle
+

+ControlSend´Â ÀϹÝÀûÀ¸·Î âÀÇ ¸Þ´º ¹Ù¸¦ Á¶ÀÛÇÒ ¼ö ¾ø½À´Ï´Ù. À̸¦ ¿ìȸÇÏ·Á¸é, WinMenuSelectItemÀ» »ç¿ëÇϽʽÿÀ. ¸Þ´º ¹ÙÀÇ Æ¯¼º ¶§¹®¿¡ ±× ¸¶Àúµµ »ç¿ëÇÒ ¼ö ¾øÀ¸¸é, ¿øÇÏ´Â ¸Þ´º Ç׸ñ¿¡ »óÀÀÇÏ´Â ¸Þ½ÃÁö¸¦ ã¾Æº¸½Ê½Ã¿À. ´ÙÀ½ SendMessage ÀÚ½À¼­¸¦ µû¸£½Ã¸é µË´Ï´Ù.

+

+â Á¦¸ñ°ú ÅؽºÆ®´Â ´ë¼Ò¹®ÀÚ¿¡ ¹Î°¨ÇÕ´Ï´Ù. ¼ûÀº âÀº DetectHiddenWindows°¡ ÄÑÁ® ÀÖ¾î¾ß ŽÁöµË´Ï´Ù.

+ +

°ü·Ã Ç׸ñ

+

+SetKeyDelay, ÇǽŠ¿¬¼Ó¿­ (¿¹, `%), Control, ControlGet, ControlGetText, ControlMove, ControlGetPos, ControlClick, ControlSetText, ControlFocus, Send, Winamp ÀÚµ¿È­Çϱâ

+ +

¿¹Á¦

+
ControlSend, Edit1, ÀÌ ÁÙÀº ³ëÆ®Æеå â¿¡ ÀÖ´Â ÁÙÀÔ´Ï´Ù., Untitled
+SetTitleMatchMode, 2
+ControlSend, , abc, cmd.exe  ; ¸í·É¾î ÇÁ·ÒÇÁÆ® â¿¡ Á÷Á¢ Àü¼ÛÇÕ´Ï´Ù.
+ + + diff --git a/src/docs/commands/ControlSetText.htm b/src/docs/commands/ControlSetText.htm new file mode 100644 index 0000000..62b64b8 --- /dev/null +++ b/src/docs/commands/ControlSetText.htm @@ -0,0 +1,62 @@ + + + + +ControlSetText + + + + + + + +

ControlSetText

+ +

ÄÜÆ®·ÑÀÇ ÅؽºÆ®¸¦ º¯°æÇÕ´Ï´Ù.

+ +
ControlSetText [, Control, NewText, WinTitle, WinText, ExcludeTitle, ExcludeText]
+

¸Å°³º¯¼ö

+
+ +
Control
+

ClassNN (ÄÜÆ®·ÑÀÇ Å¬·¡½ºÀ̸§°ú ½Çü ¹øÈ£) ¶Ç´Â ÄÜÆ®·ÑÀÇ ÅؽºÆ®ÀÏ ¼ö ÀÖ½À´Ï´Ù. µÑ ´Ù Window Spy¸¦ ÅëÇÏ¿© ¾Ë¾Æ³¾ ¼ö ÀÖ½À´Ï´Ù. ÅؽºÆ®¸¦ »ç¿ëÇÒ ¶§, ºÎÇÕ ÇàÀ§´Â SetTitleMatchMode·Î °áÁ¤µË´Ï´Ù. ÀÌ ¸Å°³º¯¼ö°¡ ºñ¾î ÀÖÀ¸¸é, ¸ñÇ¥ âÀÇ ÃÖ»óÀ§ ÄÜÆ®·ÑÀÌ »ç¿ëµË´Ï´Ù.

+

+ ÄÜÆ®·ÑÀ¸ HWND (â ÇÚµé)¿¡ ÀÛµ¿ ½ÃÅ°·Á¸é, Control ¸Å°³º¯¼ö¸¦ ºñ¿ö µÎ°í ahk_id %ControlHwnd%¸¦ WinTitle ¸Å°³º¯¼ö¿¡ ÁöÁ¤ÇϽʽÿÀ (ÀÌ°ÍÀº ¼ûÀº ÄÜÆ®·Ñ¿¡µµ ÀÛµ¿ÇÕ´Ï´Ù. DetectHiddenWindows°¡ ²¨Á® À־ »ó°ü ¾ø½À´Ï´Ù). ÄÜÆ®·ÑÀÇ HWND´Â ÀüÇüÀûÀ¸·Î ControlGet Hwnd, MouseGetPos, ¶Ç´Â DllCallÀ» ÅëÇÏ¿© ¿­¶÷ÇÕ´Ï´Ù.

+ +
NewText
+

ÄÜÆ®·Ñ ¾È¿¡ ¼³Á¤ÇØ ³ÖÀ» »õ ÅؽºÆ®. ºñ¾î Àְųª »ý·«µÇ¸é, ÄÜÆ®·ÑÀÌ ºñ¿öÁý´Ï´Ù.

+ +
WinTitle
+

¸ñÇ¥ âÀ» ½Äº°Çϴ â Á¦¸ñÀ̳ª ±âŸ ±âÁØ. WinTitle ÂüÁ¶.

+ +
WinText
+

Á¸ÀçÇϸé, ¸ñÇ¥ â ÅؽºÆ®ÀÇ ºÎ¹®ÀÚ¿­ÀÔ´Ï´Ù (Window Spy¿¡ ³ëÃâ). ¼ûÀº ÅؽºÆ®´Â DetectHiddenText°¡ ÄÑÁ®(ON) ÀÖ¾î¾ß ŽÁöµË´Ï´Ù.

+ +
ExcludeTitle
+

Á¦¸ñ¿¡ ÀÌ °ªÀÌ Àִ âÀº Á¦¿ÜµË´Ï´Ù.

+ +
ExcludeText
+

ÅؽºÆ®¿¡ ÀÌ °ªÀÌ Àִ âÀº Á¦¿ÜµË´Ï´Ù.

+ +
+ +

ErrorLevel

+

[v1.1.04+] ÀÌ ¸í·É¾î´Â ½ÇÆнà ¿¹·¯¸¦ ´øÁú ¼ö ÀÖ½À´Ï´Ù. ´õ ÀÚ¼¼ÇÑ Á¤º¸´Â ½ÇÇà½Ã°£ ¿¡·¯¸¦ ÂüÁ¶ÇϽʽÿÀ.

+

ErrorLevelÀº ½ÇÆÐÇϸé 1 ¼º°øÇϸé 0ÀÌ ¼³Á¤µË´Ï´Ù.

+ +

³íÆò

+

+´ëºÎºÐÀÇ ÄÜÆ®·Ñ À¯ÇüÀº Ȧ·Î ¶óÀÎÇǵå (`n) ¸»°í ij¸®Áö ¸®ÅÏ°ú ¶óÀÎÇǵå (`r`n)¸¦ »ç¿ëÇØ °¢ ÁÙÀÇ ³¡À» Ç¥½ÃÇÕ´Ï´Ù. `n ¹®ÀÚ°¡ Æ÷ÇÔµÈ ÅؽºÆ® ºí·ÏÀ» º¯È¯ÇÏ·Á¸é, ´ÙÀ½ ¿¹Á¦¸¦ µû¸£½Ê½Ã¿À:

+
StringReplace, MyVar, MyVar, `n, `r`n, All
+

+½Å·Ú¼ºÀ» Çâ»ó½ÃÅ°±â À§ÇØ, ÀÌ ¸í·É¾î¸¦ »ç¿ëÇÒ ¶§¸¶´Ù Áö¿¬ ½Ã°£ÀÌ ÀÚµ¿À¸·Î »ðÀԵ˴ϴÙ. ÀÌ Áö¿¬ ½Ã°£Àº SetControlDelay¸¦ ÅëÇÏ¿© ¹Ù²Ü ¼ö ÀÖ½À´Ï´Ù.

+

+â Á¦¸ñ°ú ÅؽºÆ®´Â ´ë¼Ò¹®ÀÚ¸¦ ±¸ºÐÇÕ´Ï´Ù. ¼ûÀº âÀº DetectHiddenWindows°¡ ÄÑÁ® ÀÖ¾î¾ß ŽÁöµË´Ï´Ù.

+ +

°ü·Ã Ç׸ñ

+

SetControlDelay, ControlGetFocus, ControlGetText, ControlGet, Control, ControlMove, ControlGetPos, ControlClick, ControlFocus, ControlSend

+

¿¹Á¦

+
ControlSetText, Edit1, ¿©±â¿¡ »õ ÅؽºÆ® ¼³Á¤, Untitled -
+ + + diff --git a/src/docs/commands/CoordMode.htm b/src/docs/commands/CoordMode.htm new file mode 100644 index 0000000..905098f --- /dev/null +++ b/src/docs/commands/CoordMode.htm @@ -0,0 +1,53 @@ + + + + +CoordMode + + + + + + + +

CoordMode

+ +

´Ù¾çÇÑ ¸í·É¾î¿¡ ´ëÇÏ¿© È­¸é ¶Ç´Â È°¼º â¿¡ ÁÂÇ¥ ¸ðµå°¡ »ó´ëÀûÀÌ µÇµµ·Ï ¼³Á¤ÇÕ´Ï´Ù.

+ +
CoordMode, ToolTip|Pixel|Mouse|Caret|Menu [, Screen|Window|Client]
+

¸Å°³º¯¼ö

+
+ +
Param1
+

ToolTip: ToolTip¿¡ ¿µÇâÀ» ÁÝ´Ï´Ù.

+

Pixel: PixelGetColor, PixelSearch, ±×¸®°í ImageSearch¿¡ ¿µÇâÀ» ÁÝ´Ï´Ù.

+

Mouse: Affects MouseGetPos, Click, ±×¸®°í MouseMove/Click/Drag¿¡ ¿µÇâÀ» ÁÝ´Ï´Ù.

+

Caret: ³»Àå º¯¼ö A_CaretX¿Í A_CaretY¿¡ ¿µÇâÀ» ÁÝ´Ï´Ù.

+

Menu: ÁÂÇ¥°¡ ÁöÁ¤µÇ¾î ÀÖÁö ¾ÊÀ» ¶§ Menu Show¿¡ ¿µÇâÀ» ÁÝ´Ï´Ù.

+ +
Param2
+

Param2°¡ »ý·«µÇ¸é, ScreenÀÌ ±âº»°ªÀÔ´Ï´Ù.

+

Screen: ÁÂÇ¥´Â ¹ÙÅÁÈ­¸é¿¡ »ó´ëÀûÀÔ´Ï´Ù (Àüü È­¸é).

+

Relative: ÁÂÇ¥´Â È°¼º â¿¡ »ó´ëÀûÀÔ´Ï´Ù.

+

Window [v1.1.05+]: Relative¿Í µ¿µîÇÏ¸ç ¸í·áÇϱ⠶§¹®¿¡ ÀÌ°ÍÀ» ±ÇÀåÇÕ´Ï´Ù.

+

Client [v1.1.05+]: ÁÂÇ¥´Â È°¼º âÀÇ Å¬¶óÀ̾ðÆ® ¿µ¿ª¿¡ »ó´ëÀûÀÔ´Ï´Ù. Ŭ¶óÀ̾ðÆ® ¿µ¿ª¿¡¼­ Á¦¸ñ ¹Ù, ¸Þ´º (Ç¥ÁØ ¸Þ´º¶ó¸é) ±×¸®°í Å׵θ®´Â Á¦¿ÜµË´Ï´Ù. Ŭ¶óÀ̾ðÆ® ÁÂÇ¥´Â OS ¹öÀü¿Í Å׸¶¿¡ ÀÇÁ¸ÇÏÁö ¾Ê½À´Ï´Ù.

+
+ +
+ +

³íÆò

+

+ÀÌ ¸í·É¾î°¡ »ç¿ëµÇÁö ¾ÊÀ¸¸é, ¸ðµç ¸í·É¾î´Â µû·Î ¹®¼­È­µÇ¾î ÀÖ´Â ¸í·É¾î¸¦ Á¦¿ÜÇÏ°í (¿¹, WinMove ±×¸®°í InputBox) È°¼º â¿¡ »ó´ëÀûÀÎ ÁÂÇ¥¸¦ »ç¿ëÇÕ´Ï´Ù.

+

+»õ·Î ±âµ¿µÈ ¾²·¹µå´Â (ÇÖÅ°, ¸ÂÃã ¸Þ´º Ç׸ñ, ¶Ç´Â ŸÀÌ¸Ó ¼­ºê·çƾ) ÀÌ ¸í·É¾î¿¡ ´ëÇÑ ±âº» °ªÀ» °¡Áö°í »õ·Ó°Ô ½ÃÀÛÇÕ´Ï´Ù. ±× ±âº» °ªÀº ÀÚµ¿-½ÇÇà ¼½¼Ç (½ºÅ©¸³Æ® »ó´Ü)¿¡ ÀÌ ¸í·É¾î¸¦ »ç¿ëÇÏ¿© ¹Ù²Ü ¼ö ÀÖ½À´Ï´Ù).

+ +

°ü·Ã Ç׸ñ

+

+Click, MouseMove, MouseClick, MouseClickDrag, MouseGetPos, PixelGetColor, PixelSearch, ToolTip, Menu

+ +

¿¹Á¦

+
CoordMode, ToolTip, Screen  ; ÅøÆÁÀ» ÀýÀç È­¸é ÁÂÇ¥¿¡ ¹èÄ¡ÇÕ´Ï´Ù:
+CoordMode, ToolTip  ; À§¿Í °°½À´Ï´Ù. ¶È °°ÀÌ "screen"ÀÌ ±âº»°ªÀÔ´Ï´Ù.
+ + + diff --git a/src/docs/commands/Critical.htm b/src/docs/commands/Critical.htm new file mode 100644 index 0000000..f827043 --- /dev/null +++ b/src/docs/commands/Critical.htm @@ -0,0 +1,67 @@ + + + + +Critical + + + + + + + +

ÀÓ°è(Critical)

+ +

ÇöÀç ¾²·¹µå°¡ ´Ù¸¥ ¾²·¹µå¿¡°Ô ÀÎÅÍ·´Æ® µÇÁö ¾Êµµ·Ï ¹æÁöÇÕ´Ï´Ù. ¶Ç´Â ÀÎÅÍ·´Æ® µÇµµ·Ï È°¼ºÈ­ÇÕ´Ï´Ù.

+ +
Critical [, Off]
+Critical 50 ; ¾Æ·¡ÀÇ ³íÆòÀ» º¸½Ê½Ã¿À.
+

+ù ¸Å°³º¯¼ö°¡ »ý·«µÇ¸é (¶Ç´Â ´Ü¾î°¡ OnÀ̸é), ÇöÀç ¾²·¹µå¸¦ ÀÓ°è °ªÀ¸·Î ¸¸µì´Ï´Ù. ´Ù¸¥ ¾²·¹µå°¡ ÀÎÅÍ·´Æ® ÇÒ ¼ö ¾ø´Ù´Â ¶æÀÔ´Ï´Ù. ù ¸Å°³º¯¼ö°¡ OffÀ̸é (¶Ç´Â v1.0.48+¿¡¼­ 0À̸é), ÇöÀç ¾²·¹µå´Â Thread InterruptÀÇ ¼³Á¤¿¡ »ó°üÀÌ ¾øÀÌ Áï½Ã ÀÎÅÍ·´Æ®°¡ °¡´ÉÇØÁý´Ï´Ù.

+ +

ÀÓ°è ¾²·¹µåÀÇ ÇàÀ§

+

+¿ì¼±¼øÀ§°¡-³ôÀº ¾²·¹µå¿Í ´Ù¸£°Ô, ÀÓ°è ¾²·¹µå µ¿¾È ¹ß»ýÇÏ´Â À̺¥Æ®´Â Æó±âµÇÁö ¾Ê½À´Ï´Ù. ¿¹¸¦ µé¾î, ÇöÀç ¾²·¹µå°¡ ÀÓ°è »óÅÂÀÎ µ¿¾È »ç¿ëÀÚ°¡ ÇÖÅ°¸¦ ´©¸£¸é ±× ÇÖÅ°´Â ÇöÀç ¾²·¹µå°¡ Á¾·áÇϰųª ºñÀÓ°è ¾²·¹µå°¡ µÉ ¶§ ±îÁö ¹«ÇÑÁ¤ ¹öÆÛ Ã³¸®µÇ´Ù°¡, Á¾·áÇÏ´Â ±× ¼ø°£ ±× ÇÖÅ°°¡ »õ ¾²·¹µå·Î ±âµ¿µË´Ï´Ù.

+

+ÀÓ°è ¾²·¹µå´Â ºñ»ó ½Ã¿¡¸¸ ÀÎÅÍ·´Æ® µË´Ï´Ù. ºñ»ó ½Ã¶õ ´ÙÀ½°ú °°ÀÌ ±¸¼ºµË´Ï´Ù: +

    +
  1. OnExit ¼­ºê·çƾ; +
  2. 0x312 º¸´Ù ÀÛÀº ¸Þ½ÃÁö ¹øÈ£¸¦ °üÁ¦ÇÏ´Â OnMessage() ÇÔ¼ö (¶Ç´Â ±×·± ¸Þ½ÃÁö°¡ Ã˹ßÇÑ ¿ªÈ£Ãâ ÇÔ¼ö); +
  3. ±×¸®°í ÀÓ°è ¾²·¹µå ÀÚü°¡ °£Á¢ÀûÀ¸·Î Ã˹ßÇÑ ¿ªÈ£Ãâ ÇÔ¼ö (¿¹, SendMessage ¶Ç´Â DllCall¸¦ ÅëÇÏ¿©) +
+ÀÌ·± ÀÎÅÍ·´Æ®¸¦ ÇÇÇÏ·Á¸é, Àӽ÷Π±×·± ÇÔ¼öµéÀ» ºñÈ°¼ºÈ­ ½ÃÅ°½Ê½Ã¿À.

+

+ÀÓ°è ¾²·¹µå´Â MsgBox³ª ±âŸ ´ëÈ­»óÀÚ°¡ È­¸é¿¡ ³ªÅ¸³ª¸é ÀÎÅÍ·´Æ®µÉ ¼ö ÀÖ½À´Ï´Ù. ±×·¸Áö¸¸, Thread Interrupt°ú ´Ù¸£°Ô, ÀÌ ¾²·¹µå´Â »ç¿ëÀÚ°¡ ´ëÈ­»óÀÚ¸¦ Ãë¼ÒÇÏ°í ³ª¸é ´Ù½Ã ÀÓ°è ¾²·¹µå°¡ µË´Ï´Ù.

+ +

Critical Off

+

+¹öÆÛ Ã³¸®µÈ À̺¥Æ®°¡ »õ·Î¿î ¾²·¹µå°¡ ½ÃÀ۵DZ⸦ ±â´Ù¸®°í ÀÖÀ» ¶§, Critical Off¸¦ »ç¿ëÇϸé ÇöÀç ¾²·¹µå¸¦ Áï½Ã ÀÎÅÍ·´Æ®ÇÏÁö ¾Ê½À´Ï´Ù. ´ë½Å¿¡, Æò±Õ 5 ¹Ð¸®ÃÊ°¡ Áö³­ ´ÙÀ½ ÀÎÅÍ·´Æ®°¡ ÀϾ´Ï´Ù. ÀÌ·¸°Ô Çϸé Critical Off µÚ¿¡ Àû¾îµµ ÇÑ ÁÙÀÌ ÀÎÅÍ·´Æ® Àü¿¡ ½ÇÇàµÉ È®·üÀÌ 99.999% ÀÌ»óÀÔ´Ï´Ù. °­Á¦·Î ÀÎÅÍ·´Æ®¸¦ Áï½Ã ÀϾ°Ô ÇÒ ¼ö ÀÖ½À´Ï´Ù. ¾ÆÁ÷ Á¸ÀçÇÏÁö ¾Ê´Â â¿¡ ´ëÇÏ¿© Sleep -1 ¶Ç´Â WinWait¿Í °°Àº Áö¿¬À» »ç¿ëÇÏ¸é µË´Ï´Ù.

+

+Critical Off´Â ÇöÀç ¾²·¹µå°¡ ÀÓ°è ¾²·¹µå°¡ ¾Æ´Ï¾ú´õ¶óµµ ±×ÀÇ ÀÎÅÍ·´Æ® ºÒ°¡Ä§¼ºÀ» Ãë¼ÒÇÕ´Ï´Ù. ±×·¯¹Ç·Î GuiSize¿Í °°Àº À̺¥Æ®¸¦ ´õ »¡¸® ´õ ¿¹Ãø °¡´ÉÇÏ°Ô Ã³¸®ÇÒ ¼ö ÀÖ½À´Ï´Ù.

+ +

¾²·¹µå ¼³Á¤

+

+ÀÓ°è°ªÀÇ ÇöÀç ¼³Á¤À» ÀúÀåÇÏ°í º¹±¸ÇÏ´Â ¹ýÀº A_IsCriticalÀ» ÂüÁ¶ÇϽʽÿÀ. ±×·¸Áö¸¸, ÀÓ°è°ªÀº ¾²·¹µå¿¡-Á¾¼ÓÀûÀÎ ¼³Á¤À̹ǷÎ, ÀÓ°è ¾²·¹µå°¡ ³¡³ª¸é, ±× ¾Æ·¡ÀÇ/Àç°³µÈ ¾²·¹µå´Â (ÀÖ´Ù¸é) ÀÚµ¿À¸·Î ºñÀÓ°è ¾²·¹µå°¡ µË´Ï´Ù. °á·ÐÀûÀ¸·Î ¾²·¹µå¸¦ ³¡³»±â ¹Ù·Î Àü¿¡ "Critical Off"¸¦ ÇÒ ÇÊ¿ä°¡ ¾ø½À´Ï´Ù.

+

+ÀÚµ¿ ½ÇÇà ¼½¼Ç¿¡ (½ºÅ©¸³Æ®ÀÌ »ó´Ü ºÎºÐ) ÀÓ°è°ªÀÌ »ç¿ëµÇÁö ¾ÊÀ¸¸é, ¸ðµç ¾²·¹µå´Â ºñÀÓ°è °ªÀ¸·Î ½ÃÀÛÇÕ´Ï´Ù (±×·¸Áö¸¸ Thread Interrupt ¼³Á¤À» ¿µÇâÀ» ¹ÌĨ´Ï´Ù). ´ëÁ¶ÀûÀ¸·Î, ÀÚµ¿-½ÇÇà ¼½¼Ç¿¡¼­ ÀÓ°è°ªÀ» ÄÑ°í ´Ù½Ã ²ôÁö ¾ÊÀ¸¸é, »õ·Î ±âµ¿ÇÏ´Â ¸Å ¾²·¹µå¸¶´Ù (ÇÖÅ°, ¸ÂÃã ¸Þ´º Ç׸ñ, ¶Ç´Â ½Ã°£ Á¦ÇÑ ¼­ºê·çƾ µîÀº) ÀÓ°è°ªÀ¸·Î ½ÃÀÛÇÕ´Ï´Ù.

+

+¸í·É¾î Thread NoTimers´Â Critical°ú ºñ½ÁÇÏÁö¸¸ ŸÀ̸ÓÀÇ ÀÎÅÍ·´Æ®¸¸ ¹æÁöÇÑ´Ù´Â Á¡ÀÌ ´Ù¸¨´Ï´Ù.

+

+v1.0.47+¿¡¼­, CriticalÀ» Äѵΰí SetBatchLines -1¸¦ ¹èÄ¡Çϸé ÇöÀç ¾²·¹µå¿¡ ¿µÇâÀ» ¹ÌĨ´Ï´Ù.

+ +

¸Þ½ÃÁö Á¡°Ë °£°Ý

+

v1.0.47+¿¡¼­, ¾çÀÇ Á¤¼ö¸¦ ù ¸Å°³º¯¼ö·Î ÁöÁ¤Çϸé (¿¹¸¦ µé¾î, Critical 30) ÀÓ°è°ªÀÌ ÄÑÁú »Ó¸¸ ¾Æ´Ï¶ó ³»ºÎ ¸Þ½ÃÁö Å¥¸¦ Á¡°ËÇÏ´Â °£°ÝÀÌ ¼ö ¹Ð¸®ÃÊ·Î º¯°æµË´Ï´Ù. ÁöÁ¤ÇÏÁö ¾ÊÀ¸¸é, ÀÓ°è°ªÀÌ ÄÑÁ® ÀÖ´Â µ¿¾È ¸Þ½ÃÁö´Â ¸Å 16 ¹Ð¸®Ãʸ¶´Ù Á¡°ËµË´Ï´Ù. ±×¸®°í ²¨Á® ÀÖÀ¸¸é ¸Å 5Ãʸ¶´Ù Á¡°ËµË´Ï´Ù. Á¡°Ë °£°ÝÀ» Áõ°¡½ÃÅ°¸é ¸Þ½ÃÁö/À̺¥Æ®ÀÇ µµÂøÀ» Áö¿¬½Ãŵ´Ï´Ù. ±×·¡¼­ ÇöÀç ¾²·¹µå´Â ´õ ½Ã°£À» °¡Áö°í Á¾·áÇÒ ¼ö ÀÖ½À´Ï´Ù. ÀÌ·¸°Ô Çϸé "ÀÌ¹Ì ½ÇÇà ÁßÀÎ ¾²·¹µå ¶§¹®¿¡" ¾î¶² OnMessage() ±×¸®°í GUI À̺¥Æ®°¡ ¼Ò½ÇµÉ °¡´É¼ºÀÌ ÁÙ¾îµì´Ï´Ù. ±×·¸Áö¸¸, Sleep¿Í WinWait°°Àº ´ë±â ¸í·É¾î´Â ÀÌ ¼³Á¤¿¡ °ü°è ¾øÀÌ ¸Þ½ÃÁö¸¦ Á¡°ËÇÕ´Ï´Ù (¿ìȸåÀº DllCall("Sleep", Uint, 500)ÀÔ´Ï´Ù). ÁÖÀÇ: ¸Þ½ÃÁö-Á¡°Ë °£°ÝÀ» ³Ê¹« ¸¹ÀÌ ´Ã¸®¸é GUI ⠴ٽà ±×¸®±â¿Í °°Àº ´Ù¾çÇÑ À̺¥Æ®¿¡ ¹ÝÀÀÇÏÁö ¸øÇÒ ¼ö ÀÖ½À´Ï´Ù.

+ +

°ü·Ã Ç׸ñ

+

Thread (command), Threads, #MaxThreadsPerHotkey, #MaxThreadsBuffer, OnMessage(), RegisterCallback(), Hotkey, Menu, SetTimer

+ +

¿¹Á¦

+
#space::  ; Win+Space ÇÖÅ°.
+Critical
+ToolTip ÀÌ ÅøÆÁÀÌ »ç¶óÁø ÈÄ¿¡¸¸ »õ ¾²·¹µå°¡ ½ÃÀÛÇÕ´Ï´Ù.
+Sleep 3000
+ToolTip  ; ÆÁÀ» ²ü´Ï´Ù.
+return  ; ÇÖÅ° ¼­ºê·çƾÀ¸·ÎºÎÅÍ ¹ÝȯµÇ¸é ¾²·¹µå°¡ Á¾·áµË´Ï´Ù. Àç°³ µÉ ¾Æ·¡ÀÇ ¾²·¹µå´Â Á¤ÀÇ»ó ÀÓ°è°ªÀÌ ¾Æ´Õ´Ï´Ù.
+ + + diff --git a/src/docs/commands/DetectHiddenText.htm b/src/docs/commands/DetectHiddenText.htm new file mode 100644 index 0000000..59f6de2 --- /dev/null +++ b/src/docs/commands/DetectHiddenText.htm @@ -0,0 +1,43 @@ + + + + +DetectHiddenText + + + + + + + +

DetectHiddenText

+ +

+âÀ» ã±â À§ÇÑ ¸ñÀûÀ¸·Î â¿¡¼­ º¸ÀÌÁö ¾ÊÀº ÅؽºÆ®¸¦ "º¸¿©ÁÙÁö ¸»Áö" °áÁ¤ÇÕ´Ï´Ù. ÀÌ°ÍÀº IfWinExist ±×¸®°í WinActivate¿Í °°Àº ¸í·É¾îµé¿¡ ¿µÇâÀ» ÁÝ´Ï´Ù.

+ +
DetectHiddenText, On|Off
+

¸Å°³º¯¼ö

+
+ +
On|Off
+

On: ÀÌ°ÍÀÌ ±âº» °ªÀÔ´Ï´Ù. ¼ûÀº ÅؽºÆ®°¡ ŽÁöµË´Ï´Ù.

+

Off: ¼ûÀº ÅؽºÆ®´Â ŽÁöµÇÁö ¾Ê½À´Ï´Ù.

+ +
+ +

³íÆò

+

+"¼ûÀº ÅؽºÆ®"´Â â¿¡¼­ º¸ÀÌÁö ¾Ê´Â ÄÜÆ®·ÑÀ» °¡¸®Å°´Â ¿ë¾îÀÔ´Ï´Ù. ±×·¡¼­ ±×ÀÇ ÅؽºÆ®µµ "¼ûÀº"°ÍÀ¸·Î °£ÁÖÇÕ´Ï´Ù. DetectHiddenText¸¦ ²ô¸é ¸ÖƼ-ÅÇ ´ëÈ­»óÀÚ ¶Ç´Â ´ÙÁß-ÆÇ Ã¢¿¡¼­ ´Ù¸¥ ÆÇ »çÀÌÀÇ Â÷À̸¦ ¹ß°ßÇÏ°í ½ÍÀ» ¶§ À¯¿ëÇÕ´Ï´Ù. Window Spy¸¦ »ç¿ëÇϸé ÇöÀç È°¼º â¿¡¼­ ¼û¾î ÀÖ´Â ÅؽºÆ®¸¦ ¾Ë¾Æ³¾ ¼ö ÀÖ½À´Ï´Ù. WinText¸¦ ¸Å°³º¯¼ö·Î ÇÏ´Â ¸í·É¾î´Â ¸ðµÎ ÀÌ ¼³Á¤¿¡ ¿µÇâÀ» ¹Þ½À´Ï´Ù. ¿©±â¿¡´Â WinActivate, IfWinActive, WinWait, ±×¸®°í IfWinExist°¡ Æ÷ÇԵ˴ϴÙ.

+

+³»Àå º¯¼ö A_DetectHiddenText¿¡ ÇöÀç ¼³Á¤ÀÌ µé¾î ÀÖ½À´Ï´Ù (On ¶Ç´Â Off).

+

+»õ·Î ±âµ¿µÈ ¾²·¹µå´Â (ÇÖÅ°, ¸ÂÃã ¸Þ´º Ç׸ñ, ¶Ç´Â ŸÀÌ¸Ó ¼­ºê·çƾ) ÀÌ ¸í·É¾î¿¡ ´ëÇÑ ±âº» °ªÀ» °¡Áö°í »õ·Ó°Ô ½ÃÀÛÇÕ´Ï´Ù. ÀÌ ±âº» °ªÀº ÀÚµ¿-½ÇÇà ¼½¼Ç (½ºÅ©¸³Æ® »ó´Ü)¿¡¼­ ÀÌ ¸í·É¾î¸¦ »ç¿ëÇÏ¿© ¹Ù²Ü ¼ö ÀÖ½À´Ï´Ù.

+ +

°ü·Ã Ç׸ñ

+

DetectHiddenWindows

+ +

¿¹Á¦

+
DetectHiddenText, off
+ + + diff --git a/src/docs/commands/DetectHiddenWindows.htm b/src/docs/commands/DetectHiddenWindows.htm new file mode 100644 index 0000000..ba2d1bb --- /dev/null +++ b/src/docs/commands/DetectHiddenWindows.htm @@ -0,0 +1,46 @@ + + + + +DetectHiddenWindows + + + + + + + +

DetectHiddenWindows

+ +

½ºÅ©¸³Æ®¿¡ º¸ÀÌÁö ¾ÊÀº âÀ» "º¸¿©ÁÙÁö ¸»Áö" °áÁ¤ÇÕ´Ï´Ù.

+ +
DetectHiddenWindows, On|Off
+

¸Å°³º¯¼ö

+
+ +
On|Off
+

On: ¼ûÀº âÀ» ŽÁöÇÕ´Ï´Ù.

+

Off: ÀÌ°ÍÀÌ ±âº»°ªÀÔ´Ï´Ù. ¼ûÀº âÀº ŽÁöµÇÁö ¾Ê½À´Ï´Ù. ´Ü,WinShow ¸í·É¾î·Î´Â ŽÁöÇÒ ¼ö ÀÖ½À´Ï´Ù.

+ +
+ +

³íÆò

+

+DetectHiddenWindows¸¦ ÄÑ¸é ¾î¶² °æ¿ì ½ºÅ©¸³ÆÃÀÌ Èûµé¾îÁú ¼ö ÀÖ½À´Ï´Ù. ¿Ö³ÄÇÏ¸é ¾î¶² ¼ûÀº ½Ã½ºÅÛ Ã¢ÀÌ ¿ì¹ßÀûÀ¸·Î ¿©·¯ºÐÀÌ ÀÛ¾÷À» ½ÃµµÇÏ´Â ÅؽºÆ® ¶Ç´Â â Á¦¸ñ¿¡ ºÎÇÕÇØ ¹ö¸± ¼ö Àֱ⠶§¹®ÀÔ´Ï´Ù. ±×·¡¼­ ´ëºÎºÐÀÇ ½ºÅ©¸³Æ®´Â ÀÌ ¼³Á¤À» ²ö »óÅ·ΠµÎ¾î¾ß ÇÕ´Ï´Ù. ±×·¸Áö¸¸, ¼ûÀº â°ú Á÷Á¢ÀûÀ¸·Î ÀÛ¾÷À» ÇÏ°í ½Í´Ù¸é ÄÑ´Â°Ô ÁÁ½À´Ï´Ù. ÀÛ¾÷ Àü¿¡ ¸ÕÀú WinShow¸¦ »ç¿ëÇÏ¿© º¸¿©ÁÖ¾î¾ß ÇÒ ÇÊ¿ä°¡ ¾ø½À´Ï´Ù.

+

+¸ðµç â ¸í·É¾î´Â WinShow¸¦ Á¦¿ÜÇÏ°í ÀÌ ¼³Á¤¿¡ ¿µÇâÀ» ¹Þ½À´Ï´Ù. ¿©±â¿¡´ÂWinActivate, IfWinActive, WinWait, IfWinExist°¡ Æ÷ÇԵ˴ϴÙ. ´ëÁ¶ÀûÀ¸·Î, WinShow´Â ¾ðÁ¦³ª ¼ûÀº âÀ» º¸¿©ÁÝ´Ï´Ù. ¼ûÀº â ŽÁö°¡ ÄÑÁ® ÀÖÁö ¾Ê´õ¶óµµ »ó°ü¾ø½À´Ï´Ù.

+

+ahk_id method¸¦ ÅëÇÏ¿© ¶Ç´Â ¸¶Áö¸· ¹ß°ß âÀ¸·Î ÄÜÆ®·ÑÀ̳ª ÀÚ¼Õ Ã¢¿¡ Á¢±ÙÇÒ ¶§ DetectHiddenWindowsÀ» ÄÓ ÇÊ¿ä°¡ ¾ø½À´Ï´Ù. ¶Ç GUI â¿¡ Gui +LastFound¸¦ ÅëÇÏ¿© Á¢±ÙÇÒ ¶§µµ ÇÊ¿ä ¾ø½À´Ï´Ù.

+

+³»Àå ÇÔ¼ö A_DetectHiddenWindows¿¡ ÇöÀç ¼³Á¤ÀÌ ´ã°Ü ÀÖ½À´Ï´Ù (On ¶Ç´Â Off).

+

+»õ·Î ±âµ¿µÈ ¾²·¹µå´Â (ÇÖÅ°, ¸ÂÃã ¸Þ´º Ç׸ñ, ¶Ç´Â ŸÀÌ¸Ó ¼­ºê·çƾ) ÀÌ ¸í·É¾îÀÇ ±âº» °ªÀ» °¡Áö°í »õ·Î ½ÃÀÛÇÕ´Ï´Ù. ÀÌ ±âº» °ªÀº ÀÚµ¿ ½ÇÇà ¼½¼Ç (½ºÅ©¸³Æ® »ó´Ü)¿¡¼­ ÀÌ ¸í·É¾î¸¦ »ç¿ëÇÏ¿© ¹Ù²Ü ¼ö ÀÖ½À´Ï´Ù).

+ +

°ü·Ã Ç׸ñ

+

DetectHiddenText

+ +

¿¹Á¦

+
DetectHiddenWindows, on
+ + + diff --git a/src/docs/commands/DllCall.htm b/src/docs/commands/DllCall.htm new file mode 100644 index 0000000..00e2946 --- /dev/null +++ b/src/docs/commands/DllCall.htm @@ -0,0 +1,439 @@ + + + + +DllCall + + + + + + + +

DllCall()

+ +

Ç¥ÁØ Windows API ÇÔ¼ö °°ÀÌ, DLL¾ÈÀÇ ÇÔ¼ö¸¦ È£ÃâÇÕ´Ï´Ù.

+ +
Result := DllCall("[DllFile\]Function" [, Type1, Arg1, Type2, Arg2, "Cdecl ReturnType"])
+

¸Å°³º¯¼ö

+
+ +
Result
+

DllCallÀº ÇÔ¼ö°¡ µ¹·ÁÁÖ´Â ½ÇÁ¦ °ªÀ» µ¹·ÁÁÝ´Ï´Ù. ÇÔ¼ö°¡ °ªÀ» µ¹·ÁÁÖÁö ¾Ê´Â À¯ÇüÀ̶ó¸é, ±× °á°ú´Â Á¤ÀǵÇÁö ¾ÊÀº Á¤¼öÀÔ´Ï´Ù. ¿¡·¯ ¶§¹®¿¡ ÇÔ¼ö¸¦ È£ÃâÇÒ ¼ö ¾ø´Ù¸é, ±× °á°ú °ªÀº ºñ¾î ÀÖ½À´Ï´Ù(ºó ¹®ÀÚ¿­).

+ +
[DllFile\]Function
+

DLLÀ̳ª EXE ÆÄÀÏ À̸§ ´ÙÀ½¿¡ ¿ª»ç¼± ±×¸®°í ÇÔ¼öÀÇ À̸§ÀÌ µû¶ó¿É´Ï´Ù. ¿¹¸¦ µé¾î: "MyDLL\MyFunction" (È®ÀåÀÚ°¡ »ý·«µÇ¸é ".dll"ÀÌ ±âº»°ªÀÔ´Ï´Ù). Àý´ë °æ·Î¸¦ ÁöÁ¤ÇÏÁö ¾ÊÀ¸¸é, DllFileÀº ½Ã½ºÅÛ PATH ¶Ç´Â A_WorkingDir¿¡ ÀÖ´Ù°í °£Áֵ˴ϴÙ.

+

DllFileÀº User32.dll, Kernel32.dll, ComCtl32.dll, ¶Ç´Â Gdi32.dll¿¡ °ÅÁÖÇÏ´Â ÇÔ¼öµéÀ» È£ÃâÇÒ ¶§ »ý·«ÇÒ ¼ö ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î, "User32\IsWindowVisible"´Â "IsWindowVisible"¿Í °á°ú°¡ °°½À´Ï´Ù.

+

ÇÔ¼ö°¡ ÁÖ¾îÁø À̸§À¸·Î ¹ß°ßµÇÁö ¾ÊÀ¸¸é, A (ANSI) ¶Ç´Â W (Unicode) Á¢¹Ì»ç¸¦ ¾î´À ¹öÀüÀÇ ¿ÀÅäÇÖÅ°°¡ ½ºÅ©¸³Æ®¸¦ ½ÇÇàÁßÀΰ¡¿¡ ±â¹ÝÇÏ¿© ÀÚµ¿À¸·Î Ãß°¡ÇÕ´Ï´Ù. ¿¹¸¦ µé¾î, "MessageBox"´Â ANSI ¹öÀüÀº "MessageBoxA" ±×¸®°í À¯´ÏÄÚµå ¹öÀüÀº "MessageBoxW"¿Í °°½À´Ï´Ù.

+

¹Ýº¹ÀûÀ¸·Î DLL¿¡ È£ÃâÇÒ °æ¿ì ¹Ì¸® ÀûÀçÇÏ¸é ¼öÇ༺´ÉÀ» ±ØÀûÀ¸·Î Çâ»ó½Ãų ¼ö ÀÖ½À´Ï´Ù.

+

v1.0.46.08+¿¡¼­, ÀÌ ¸Å°³º¯¼ö´Â Á¤¼ö ¸¸À¸·Î ±¸¼ºµÉ ¼ö ÀÖ½À´Ï´Ù. È£ÃâÇÒ ÇÔ¼öÀÇ ÁÖ¼Ò·Î ¹ø¿ªµË´Ï´Ù. ±×·± ÁÖ¼ÒÀÇ ¼Ò½º·Î´Â COM ±×¸®°í RegisterCallback()ÀÌ Æ÷ÇԵ˴ϴÙ.

+ +
Type1, Arg1
+

°¢ ½Ö¸¶´Ù ÇÔ¼ö¿¡ °Ç³×Áú ÇϳªÀÇ ¸Å°³º¯¼ö¸¦ ³ªÅ¸³À´Ï´Ù. ½ÖÀÇ °³¼ö´Â Á¦ÇÑÀÌ ¾ø½À´Ï´Ù. Type¿¡ °üÇÑ °ÍÀº ¾Æ·¡ÀÇ À¯Çü Å×À̺íÀ» ÂüÁ¶ÇϽʽÿÀ. Arg¿¡ ´ëÇÏ¿©, ÇÔ¼ö¿¡ °Ç³Ú °ªÀ» ÁöÁ¤ÇÕ´Ï´Ù.

+ +
Cdecl ReturnType
+

´Ü¾î CdeclÀº º¸Åë »ý·«ÇÕ´Ï´Ù. ´ëºÎºÐÀÇ ÇÔ¼ö°¡ Ç¥ÁØ È£Ãâ °ü·Ê¸¦ »ç¿ëÇÏÁö "C" È£Ãâ °ü·Ê¸¦ »ç¿ëÇÏÁö´Â ¾Ê±â ¶§¹®ÀÔ´Ï´Ù (wsprintf ÇÔ¼ö¿Í °°ÀÌ °¡º¯ °³¼öÀÇ ÀÎÀÚ¸¦ ¹Þ´Â ÇÔ¼ö´Â ¿¹¿Ü·Î ÇÕ´Ï´Ù). CdeclÀ» »ý·«ÇßÁö¸¸ È£Ãâ¿¡¼­ ErrorLevel An¸¦ »êÃâÇÑ´Ù¸é -- ¿©±â¿¡¼­ n´Â °Ç³Ù ÀÎÀÚµéÀÇ ÃÑ Å©±âÀÔ´Ï´Ù -- CdeclÀÌ ÇÊ¿äÇÒ ¼ö ÀÖ½À´Ï´Ù. ´ëºÎºÐÀÇ °´Ã¼-ÁöÇâ C++ ÇÔ¼ö´Â thiscall °ü·Ê¸¦ »ç¿ëÇÏÁö¸¸, ÀÌ´Â Áö¿øÇÏÁö ¾Ê½À´Ï´Ù.

+

Á¸ÀçÇÑ´Ù¸é, ´Ü¾î CdeclÀº ¹Ýȯ À¯Çüº¸´Ù (ÀÖ´Ù¸é) ¸ÕÀú ³ªÅ¸³ª¾ß ÇÕ´Ï´Ù. ´ÙÀ½ ´Ü¾î¿Í ½ºÆäÀ̽º³ª ÅÇÀ¸·Î ºÐ¸®ÇϽʽÿÀ. ¿¹¸¦ µé¾î: "Cdecl Str".

+

[AHK_L 53+]: º°µµ·Î "C" È£Ãâ °ü·Ê´Â 64-ºñÆ® Äڵ忡 Á¸ÀçÇÏÁö ¾Ê±â ¶§¹®¿¡, CdeclÀ» ÁöÁ¤Çصµ 64-ºñÆ® ºôµåÀÇ ¿ÀÅäÇÖÅ°¿¡¼­´Â ¾Æ¹« È¿°ú°¡ ¾øÀ» ¼ö ÀÖ½À´Ï´Ù.

+

ReturnType: ÇÔ¼ö°¡ 32-ºñÆ® ºÎÈ£ÀÖ´Â Á¤¼ö (Int), BOOLÀ» µ¹·ÁÁְųª, ¶Ç´Â ¾Æ¹«°Íµµ µ¹·ÁÁÖÁö ¾ÊÀ¸¸é, ReturnTypeÀ» »ý·«ÇÒ ¼ö ÀÖ½À´Ï´Ù. ±×·¸Áö ¾ÊÀ¸¸é, ¾Æ·¡ÀÇ À¯Çü Å×ÀÌºí¿¡ ÀÖ´Â ÀÎÀÚ Áß Çϳª¸¦ ÁöÁ¤ÇϽʽÿÀ. º°Ç¥ Á¢¹Ì»çµµ Áö¿øµË´Ï´Ù.

+ +
+ +

ÀÎÀÚÀÇ À¯Çü°ú ¹Ýȯ °ª

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Str

"Blue"³ª MyVar °°Àº ¹®ÀÚ¿­. È£ÃâµÈ ÇÔ¼ö°¡ ±× ¹®ÀÚ¿­À» º¯°æÇÏ°í ÀÎÀÚ°¡ ºñº¸È£ º¯¼öÀ̸é, ±×ÀÇ ³»¿ëÀÌ °»½ÅµË´Ï´Ù. ¿¹¸¦ µé¾î, ´ÙÀ½ È£ÃâÀº MyVarÀÇ ³»¿ëÀ» ´ë¹®ÀÚ·Î º¯°æÇÕ´Ï´Ù: DllCall("CharUpper", "Str", MyVar).

+

±×·¸Áö¸¸, ÇÔ¼ö°¡ ÇÑ º¯¼öÀÇ ÇöÀç ³»¿ëº¸´Ù ´õ Å« ¹®ÀÚ¿­À» ÀúÀåÇϵµ·Ï ¼³°èµÇ¾ú´Ù¸é, º¯¼ö°¡ ÃæºÐÈ÷ ´õ Å«Áö ¸ÕÀú Á¡°ËÇÑ ´ÙÀ½ ±× ÇÔ¼ö¸¦ È£ÃâÇϽʽÿÀ. VarSetCapacity(MyVar, 123)¸¦ È£ÃâÇØ º¸¸é ¾Ë ¼ö ÀÖ½À´Ï´Ù. ¿©±â¿¡¼­ 123Àº MyVar°¡ º¸À¯ÇÒ ¼ö ÀÖ´Â ±æÀÌÀÔ´Ï´Ù.

+

Str ÀÎÀÚ´Â ¼ýÀÚ·Î Æò°¡µÇ´Â Ç¥Çö½ÄÀÌ µÇ¸é ¾ÈµË´Ï´Ù (¿¹¸¦ µé¾î, i+1). ±×·¸´Ù¸é, ÇÔ¼ö´Â È£ÃâµÇÁö ¾ÊÀ¸¸ç ErrorLevelÀº -2·Î ¼³Á¤µË´Ï´Ù.

+

º°Ç¥ º¯¼ö "Str*"Àº Áö¿øµÇÁö¸¸ °ÅÀÇ »ç¿ëµÇÁö ¾Ê½À´Ï´Ù. "TCHAR **" ¶Ç´Â "LPTSTR *" °°Àº °ÍÀ» ±â´ëÇÏ´Â ÇÔ¼ö¿Í ÇÔ²² »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù.

+

ÁÖÀÇ: ¹®ÀÚ¿­À» ÇÔ¼ö¿¡ °Ç³Ú ¶§, ÇÔ¼ö°¡ ¾î¶² À¯ÇüÀÇ ¹®ÀÚ¿­À» ±â´ëÇÏ´ÂÁö ÀÎÁöÇØ¾ß ÇÕ´Ï´Ù.

AStr
WStr
[AHK_L 42+]: ANSI ¹®ÀÚ¿­ ¶Ç´Â Unicode (Wide character) ¹®ÀÚ¿­. µ¿µîÇÑ Win32 À¯Çü°ú ±âŸ ÀÚ¼¼ÇÑ »çÇ×Àº ½ºÅ©¸³Æ® ȣȯ¼ºÀ» ÂüÁ¶ÇϽʽÿÀ.
Int6464-ºñÆ® Á¤¼ö·Î¼­, ¹üÀ§´Â -9223372036854775808 (-0x8000000000000000)ºÎÅÍ 9223372036854775807 (0x7FFFFFFFFFFFFFFF)±îÁöÀÔ´Ï´Ù.
Int

32-ºñÆ® Á¤¼ö·Î¼­ (ÀϹÝÀûÀÎ Á¤¼ö À¯Çü), ¹üÀ§´Â -2147483648 (-0x80000000)ºÎÅÍ 2147483647 (0x7FFFFFFF)±îÁöÀÔ´Ï´Ù. Int´Â Á¾Á¾ "Long"À̶ó°íµµ ºÎ¸¨´Ï´Ù.

+

Int´Â ¶Ç BOOL ÀÎÀÚ¸¦ ±â´ëÇÏ´Â ÇÔ¼ö¿¡ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù (BOOL °ªÀº 1 ¶Ç´Â 0ÀÔ´Ï´Ù).

+

ºÎÈ£¾ø´Â Int (UInt)µµ »ó´çÈ÷ ÀÚÁÖ »ç¿ëµË´Ï´Ù. ¿¹¸¦ µé¾î DWORD.

Short16-ºñÆ® Á¤¼ö·Î¼­ ¹üÀ§´Â -32768 (-0x8000)ºÎÅÍ 32767 (0x7FFF)±îÁöÀÔ´Ï´Ù. ºÎÈ£¾ø´Â Short (UShort)´Â WORD¸¦ ±â´ëÇÏ´Â ÇÔ¼ö¿¡ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù.
Char8-ºñÆ® Á¤¼öÀÔ´Ï´Ù. ¹üÀ§´Â -128 (-0x80)ºÎÅÍ 127 (0x7F)±îÁöÀÔ´Ï´Ù. ºÎÈ£¾ø´Â character (UChar)´Â BYTE¸¦ ±â´ëÇÏ´Â ÇÔ¼ö¿¡ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù.
Float32-ºñÆ® ºÎµ¿ ¼Ò¼öÁ¡ ¼öÀÔ´Ï´Ù. Á¤¹Ðµµ´Â 6ÀÚ¸®ÀÔ´Ï´Ù.
Double64-ºñÆ® ºÎµ¿ ¼Ò¼öÁ¡ ¼ö. Á¤¹Ðµµ´Â 15ÀÚ¸®ÀÔ´Ï´Ù.
Ptr

[AHK_L 42+]: Æ÷ÀÎÅÍ-¤»±âÀÇ Á¤¼ö·Î¼­, . ½ºÅ©¸³Æ®¸¦ ½ÇÇàÇÏ´Â ¹öÀüÀÌ 32ºñÆ®Àΰ¡ ¾Æ´Ï¸é 64ºñÆ®Àΰ¡¿¡ µû¶ó Int ¶Ç´Â Int64¿Í µ¿µîÇÕ´Ï´Ù. PtrÀº ¹è¿­À̳ª ±¸Á¶Ã¼¸¦ °¡¸®Å°´Â Æ÷ÀÎÅÍ (RECT* ¶Ç´Â LPPOINT) ±×¸®°í °ÅÀÇ ¸ðµç ÇÚµé°ú (HWND, HBRUSH ¶Ç´Â HBITMAP) ÇÔ²² »ç¿ëÇØ¾ß ÇÕ´Ï´Ù. ¸Å°³º¯¼ö°¡ LPDWORD ¶Ç´Â int*¿Í °°ÀÌ ´ÜÀÏ ¼ýÄ¡ °ªÀ» °¡¸®Å°´Â Æ÷ÀÎÅÍÀ̸é, ÀϹÝÀûÀ¸·Î "Ptr" ´ë½Å¿¡ * ¶Ç´Â P Á¢¹Ì»ç¸¦ »ç¿ëÇØ¾ß ÇÕ´Ï´Ù.

+

PtrÀº ¶Ç * ¶Ç´Â P Á¢¹Ì»ç¿Íµµ »ç¿ë°¡´ÉÇÕ´Ï´Ù; LPVOID* ·ù¸¦ ÅëÇÏ¿© Æ÷ÀÎÅ͸¦ Ãâ·ÂÇÏ´Â ÇÔ¼ö¿Í ÇÔ²² »ç¿ëÇØ¾ß ÇÕ´Ï´Ù.

+

UPtrµµ À¯È¿ÇÏÁö¸¸, 32-ºñÆ® ºôµå¿¡¼­´Â ºÎÈ£°¡ ¾ø½À´Ï´Ù. ¿ÀÅäÇÖÅ°°¡ ºÎÈ£¾ø´Â 64-ºñÆ® Á¤¼ö¸¦ Áö¿øÇÏÁö ¾Ê±â ¶§¹®ÀÔ´Ï´Ù.

+

¿¹Àü ¹öÀüÀÇ ¿ÀÅäÇÖÅ°¿Í ȣȯÀÌ ÇÊ¿äÇϸé, ¾Æ·¡¿¡ º¸¿©ÁÖ´Â ¹Ù¿Í °°ÀÌ º¯¼ö À¯ÇüÀ» »ç¿ëÇϽʽÿÀ:

+
Ptr := A_PtrSize ? "Ptr" : "UInt" ; A_PtrSize°¡ Á¤ÀǵǾî ÀÖÁö ¾ÊÀ¸¸é ´ë½Å UInt¸¦ »ç¿ëÇÕ´Ï´Ù.
+DllCall("DeleteFile", Ptr, &filename) ; Ptr µÑ·¹¿¡ ÀÎ¿ë ºÎÈ£¸¦ »ý·«ÇÕ´Ï´Ù.
+

ÁÖÀÇ: NULL ÇÚµéÀ̳ª Æ÷ÀÎÅ͸¦ °Ç³×·Á¸é, Á¤¼ö 0À» °Ç³×½Ê½Ã¿À.

* or P
+ (suffix)

º°Ç¥¸¦ (¼±ÅÃÀûÀ¸·Î ¾Õ¿¡ ½ºÆäÀ̽º¿Í ÇÔ²²) À§ÀÇ À¯Çü¿¡ Ãß°¡ÇÏ¸é °ª ÀÚü°¡ ¾Æ´Ï¶ó ÀÎÀÚÀÇ ÁÖ¼Ò°¡ °Ç³×Áý´Ï´Ù (È£ÃâµÇ´Â ÇÔ¼ö´Â ±×°ÍÀ» ¹Þ¾ÆµéÀ̵µ·Ï ¼³°èµÇ¾î ÀÖ¾î¾ß ÇÕ´Ï´Ù). ±×·± ÀÎÀÚÀÇ °ªÀº ÇÔ¼ö°¡ º¯°æÇÒ ¼ö Àֱ⠶§¹®¿¡, naked º¯¼ö°¡ ÀÎÀÚ·Î °Ç³×Áú ¶§¸¶´Ù, ±× º¯¼öÀÇ ³»¿ëÀº °»½ÅµË´Ï´Ù. ¿¹¸¦ µé¾î, ´ÙÀ½ È£ÃâÀº MyVarÀÇ ³»¿ëÀ» MyFunction¿¡ ÁÖ¼Ò·Î °Ç³Ü´Ï´Ù. ±×·¯³ª MyVarµµ °»½ÅµÇ¾î MyFunction ÇÔ¼öÀÇ º¯°æÀ» ¹Ý¿µÇÕ´Ï´Ù: DllCall("MyDll\MyFunction", "Int*", MyVar).

+

+ ÀϹÝÀûÀ¸·Î, º°Ç¥´Â ÇÔ¼ö¿¡ ÀÎÀÚ À¯ÇüÀ̳ª ¹Ýȯ À¯ÇüÀÌ "LP"·Î ½ÃÀÛÇÒ ¶§¸¶´Ù »ç¿ëµË´Ï´Ù. °¡Àå ÈçÇÑ ¿¹´Â LPDWORDÀε¥, ÀÌ´Â DWORD °ªÀ» °¡¸®Å°´Â Æ÷ÀÎÅÍÀÔ´Ï´Ù. DWORD´Â ºÎÈ£ ¾ø´Â 32-ºñÆ® Á¤¼öÀ̱⠶§¹®¿¡ "UInt*"³ª "UintP"¸¦ »ç¿ëÇÏ¿© LPDWORD¸¦ Ç¥ÇöÇϽʽÿÀ. º°Ç¥´Â LPTSTR¿Í °°Àº ¹®ÀÚ¿­ À¯Çü, LPRECT¿Í °°ÀÌ ±¸Á¶Ã¼¸¦ °¡¸®Å°´Â Æ÷ÀÎÅÍ, ¶Ç´Â ¹è¿­¿¡ »ç¿ëÇÏ¸é ¾ÈµË´Ï´Ù; ¿©±â¿¡ ´ëÇؼ­´Â, º¯¼ö¸¦ °Ç³×´Â°¡ ¾Æ´Ï¸é ±×ÀÇ ÁÖ¼Ò¸¦ °Ç³×´Â°¡¿¡ µû¶ó, "Str"À̳ª "Ptr"À» »ç¿ëÇØ¾ß ÇÕ´Ï´Ù..

+

ÁÖÀÇ: "Char*"´Â "Str"°ú °°Áö ¾Ê½À´Ï´Ù. ¿Ö³ÄÇϸé "Char*"´Â 8-ºñÆ® ¼ýÀÚÀÇ ÁÖ¼Ò¸¦ °Ç³×´Â ¹Ý¸é¿¡, "Str"Àº ÀÏ·ÃÀÇ ¹®ÀÚ¿­ÀÇ ÁÖ¼Ò¸¦ °Ç³×±â ¶§¹®ÀÔ´Ï´Ù. ¹®ÀÚ´Â ¿ÀÅäÇÖÅ°ÀÇ ¹öÀü¿¡ µû¶ó, 8-ºñÆ® (ANSI) ¶Ç´Â 16-ºñÆ® (Unicode)ÀÏ ¼ö ÀÖ½À´Ï´Ù. ºñ½ÁÇÏ°Ô, "UInt*"´Â 32-ºñÆ® ¼ýÀÚÀÇ ÁÖ¼Ò¸¦ °Ç³Ü´Ï´Ù. ±×·¡¼­ ÇÔ¼ö°¡ °ªÀÇ ¹è¿­ ¶Ç´Â 32ºñÆ®º¸´Ù ´õ Å« ±¸Á¶¸¦ ±â´ëÇÒ °æ¿ì »ç¿ëÇÏ¸é ¾È µË´Ï´Ù.

+

+ ¿ÀÅäÇÖÅ°ÀÇ º¯¼ö´Â À¯ÇüÀÌ °íÁ¤µÇ¾î ÀÖÁö ¾Ê±â ¶§¹®¿¡, ÇÔ¼ö¿¡ °Ç³×´Â ÁÖ¼Ò´Â º¯¼ö ÀÚü°¡ ¾Æ´Ï¶ó Àӽà ¸Þ¸ð¸®¸¦ °¡¸®Åµ´Ï´Ù. º¯¼ö¿¡ VarSetCapacityÀ» È£ÃâÇÒ ÇÊ¿ä°¡ ¾ø½À´Ï´Ù. ÇÔ¼ö°¡ ¹ÝȯµÇ¸é DllCalÀÌ ¿Ã¹Ù¸£°Ô ±× º¯¼ö¸¦ °»½ÅÇØ ÁÙ °ÍÀ̱⠶§¹®ÀÔ´Ï´Ù.

+
U (prefix)

À§ÀÇ Á¤¼ö À¯Çü ¾Õ¿¡ ¹®ÀÚ U¸¦ ¹èÄ¡ÇÏ¸é ºÎÈ£¾ø´Â Á¤¼ö·Î ¹ø¿ªµË´Ï´Ù (UInt64, UInt, UShort, ±×¸®°í UChar). ¾ö¹ÐÈ÷ ¸»ÇØ, ÀÌ°ÍÀº ¹Ýȯ °ª°ú º°Ç¥ º¯¼ö¿¡¸¸ ÇÊ¿äÇÕ´Ï´Ù. ¿Ö³ÄÇÏ¸é °ªÀ¸·Î °Ç³×¾îÁø ÀÎÀÚ°¡ ºÎÈ£°¡ ÀÖ´ÂÁö ¾ø´ÂÁö ½Å°æ¾²Áö ¾Ê±â ¶§¹®ÀÔ´Ï´Ù (Int64´Â Á¦¿Ü).

+

ºÎÈ£¾ø´Â ÀÎÀÚ¿¡ À½ÀÇ Á¤¼ö¸¦ ÁöÁ¤Çϸé, µÇ¸é, ±× Á¤¼ö´Â ºÎÈ£¾ø´Â ¿µ¿ªÀ¸·Î º¯È¯µË´Ï´Ù. + ¿¹¸¦ µé¾î, -1À» UInt·Î º¸³»¸é, 0xFFFFFFFFÀÌ µË´Ï´Ù.

+

ÇÔ¼ö°¡ »ý»êÇÏ´Â Unsigned 64-ºñÆ® Á¤¼ö´Â Áö¿øÇÏÁö ¾Ê½À´Ï´Ù. ±×·¯¹Ç·Î, 0x8000000000000000 ÀÌ»óÀÇ ¼ö¿Í ÀÛ¾÷ÇÏ·Á¸é, U Á¢µÎ»ç¸¦ »ý·«ÇÏ°í ÇÔ¼ö·ÎºÎÅÍ ¹ÞÀº À½ÀÇ Á¤¼ö °ªÀº °Å´ëÇÑ Á¤¼ö·Î ¹ø¿ªÇϽʽÿÀ. ¿¹¸¦ µé¾î, -1À» Int64·Î »êÃâÇÏ´Â ÇÔ¼ö´Â ½ÇÁ¦·Î 0xFFFFFFFFFFFFFFFFÀ» »ý»êÇÏ°í ÀÖ´Â °ÍÀÔ´Ï´Ù. UInt64¸¦ »êÃâÇϵµ·Ï ¼³°èµÇ¾î ÀÖ´Ù¸é ¸»ÀÔ´Ï´Ù.

+

ÁÖÀÇ: ÀÎÀÚ À¯Çü ¶Ç´Â ¹Ýȯ À¯ÇüÀ» ÁöÁ¤ÇÒ ¶§ ½ºÆäÀ̽º³ª º°Ç¥°¡ µé¾î ÀÖÁö ¾ÊÀ¸¸é, ±× ÁÖÀ§¿¡ ÀοëºÎÈ£¸¦ µÎ·çÁö ¾Ê¾Æµµ µË´Ï´Ù. ¿¹¸¦ µé¾î, StrÀ» "Str" ´ë½Å¿¡ »ç¿ëÇÒ ¼ö ÀÖ°í CDeclÀ» "CDecl" ´ë½Å »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. °Ô´Ù°¡, ¹®ÀÚ P¸¦ º°Ç¥ ´ë½Å »ç¿ëÇصµ ÀοëºÎÈ£¸¦ »ý·«ÇÒ ¼ö ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î: UIntP.

+ +

ErrorLevel

+

[v1.1.04+] ÀÌ ÇÔ¼ö´Â ½ÇÆнà ¿¹¿Ü¸¦ ´øÁú ¼ö ÀÖ½À´Ï´Ù. ´õ ÀÚ¼¼ÇÑ Á¤º¸´Â ½ÇÇà½Ã°£ ¿¡·¯¸¦ ÂüÁ¶ÇϽʽÿÀ.

+

ErrorLevelÀº ´ÙÀ½ °ª Áß Çϳª·Î ¼³Á¤µÇ¾î È£ÃâÀÌ ¼º°øÇß´ÂÁö ½ÇÆÐÇß´ÂÁö¸¦ ¾Ë·ÁÁÝ´Ï´Ù.

+

0: ¼º°ø.

+

-1 (À½¼ö 1): [DllFile\]Function ¸Å°³º¯¼ö´Â ºÎµ¿ ¼Ò¼öÁ¡ ¼öÀÔ´Ï´Ù. ¹®ÀÚ¿­ ¶Ç´Â À½¼ö°¡ ÇÊ¿äÇÕ´Ï´Ù.

+

-2: ¹Ýȯ À¯Çü ¶Ç´Â ÁöÁ¤µÈ ÀÎÀÚ À¯ÇüÁß Çϳª°¡ À¯È¿ÇÏÁö ¾Ê½À´Ï´Ù. ÀÌ ¿¡·¯´Â ¼ýÀÚ·Î Æò°¡µÇ´Â Ç¥Çö½ÄÀ» ¹®ÀÚ¿­¿¡ °Ç³×µµ ÀϾ´Ï´Ù (str).

+

-3: ÁöÁ¤µÈ DllFile¿¡ Á¢±Ù ¶Ç´Â ÀûÀçÇÒ ¼ö ¾ø½À´Ï´Ù. DllFile ÆÄÀÏ¿¡ ¸í½ÃÀûÀ¸·Î °æ·Î°¡ ÁöÁ¤µÇÁö ¾Ê¾Ò´Ù¸é, ±× ÆÄÀÏÀº ½Ã½ºÅÛ¿¡ PATH ¶Ç´Â A_WorkingDir¿¡ Á¸ÀçÇØ¾ß ÇÕ´Ï´Ù. ÀÌ ¿¡·¯´Â »ç¿ëÀÚ°¡ ÆÄÀÏ¿¡ Á¢±Ù±ÇÇÑÀÌ ¾øÀ» °æ¿ì, ¶Ç´Â ¿ÀÅäÇÖÅ°°¡ 32ºñÆ®ÀÌ°í DLLÀÌ 64-ºñÆ® ¶Ç´Â ±× ¹Ý´ëÀÎ °æ¿ì¿¡µµ ÀϾ ¼ö ÀÖ½À´Ï´Ù.

+

-4: ÁöÁ¤µÈ ÇÔ¼ö¸¦ DLL ¾È¿¡¼­ ¹ß°ßÇÒ ¼ö ¾ø½À´Ï´Ù.

+

N (¾çÀÇ Á¤¼ö): ÇÔ¼ö°¡ È£ÃâµÇ¾úÁö¸¸ Ä¡¸íÀûÀÎ ¿¡·¯ ¹øÈ£ N°ú ÇÔ²² ½ÇÆÐÇß½À´Ï´Ù (¿¹¸¦ µé¾î, 0xC0000005´Â "¹«´Ü Á¢±Ù"À» ¶æÇÕ´Ï´Ù). ±×·± °æ¿ì, ÇÔ¼ö´Â ºó °ª(ºó ¹®ÀÚ¿­)À» µ¹·ÁÁÖÁö¸¸, º°Ç¥ º¯¼ö´Â ¸ðµÎ ¿©ÀüÈ÷ °»½ÅµË´Ï´Ù. Ä¡¸íÀûÀÎ ¿¹¿ÜÀÇ ¿¹´Â NULL°ú °°Àº ¹«È¿ÇÑ Æ÷ÀÎÅ͸¦ ÂüÁ¶ÇÏ´Â °ÍÀÔ´Ï´Ù. Cdecl ÇÔ¼ö´Â ´ÙÀ½ ¹®´Ü¿¡¼­ Àý´ë·Î "An" ¿¡·¯¸¦ »ý»êÇÏÁö ¾Ê±â ¶§¹®¿¡, ³Ê¹« ÀÎÀÚ¸¦ Àû°Ô °Ç³×¸é ¿¹¿Ü°¡ ÀϾ ¼öµµ ÀÖ½À´Ï´Ù.

+

An (¹®ÀÚ A ´ÙÀ½¿¡ Á¤¼ö n): ÇÔ¼ö°¡ È£ÃâµÇ¾úÁö¸¸ ÀÎÀÚ¸¦ ³Ê¹« ¸¹°Ô ¶Ç´Â ³Ê¹« Àû°Ô °Ç³Þ½À´Ï´Ù. "n"´Â ÀÎÀÚ ¸®½ºÆ®¿¡¼­ ¿Ã¹Ù¸£Áö ¾ÊÀº ¹ÙÀÌÆ®ÀÇ °³¼öÀÔ´Ï´Ù. nÀÌ ¾ç¼öÀ̸é, ³Ê¹« ¸¹Àº (¶Ç´Â ³Ê¹« Å« ÀÎÀÚ¸¦) ÀÎÀÚ¸¦ °Ç³Þ±â ¶§¹®ÀÔ´Ï´Ù. ±×·¸Áö ¾ÊÀ¸¸é CDecl·Î È£ÃâÇØ¾ß ÇÕ´Ï´Ù. nÀÌ À½¼öÀ̸é, ³Ê¹« Àû°Ô ÀÎÀÚ¸¦ °Ç³Þ±â ¶§¹®ÀÔ´Ï´Ù. ÀÌ »óȲÀº ÇÔ¼öÀÇ ¿¬»êÀÇ ½Å·Ú¼ºÀ» À§ÇØ ¹Ýµå½Ã ±³Á¤ÇØ¾ß ÇÕ´Ï´Ù. ÀÌ ¿¡·¯ÀÇ Á¸Àç´Â ¶ÇÇÑ ¿¹¿Ü°¡ ÀϾ´Ù´Â °ÍÀ» °¡¸®Åµ´Ï´Ù. ÀÌ °æ¿ì ÇÔ¼ö´Â ºó ¹®ÀÚ¿­À» µ¹·ÁÁÝ´Ï´Ù. x64 È£Ãâ °ü·Ê ¶§¹®¿¡, 64-ºñÆ® ºôµå´Â ErrorLevel¿¡ AnÀ» ¼³Á¤ÇÏÁö ¾Ê½À´Ï´Ù.

+ +

¿¹¿Ü¿Í A_LastError

+

+³»Àå ¿¹¿Ü 󸮿¡µµ ºÒ±¸ÇÏ°í, ¿©ÀüÈ÷ ½ºÅ©¸³Æ®°¡ DllCall°ú Ãæµ¹ÇÒ °¡´É¼ºÀÌ ÀÖ½À´Ï´Ù. ÀÌ·± ÀÏÀº ÇÔ¼ö°¡ Á÷Á¢ÀûÀ¸·Î ¿¹¿Ü¸¦ ÀÏÀ¸Å°Áö ¾Ê°í Á¾·áÇÏÁö ¾Ê´Â ¹®ÀÚ¿­À̳ª ³ª»Û Æ÷ÀÎÅÍ °°ÀÌ ¹º°¡ ºÎÀûÀûÇÑ °ÍÀ» »êÃâÇÒ °æ¿ì ÀϾ ¼ö ÀÖ½À´Ï´Ù. ½ºÅ©¸³Æ®°¡ Àû´çÇÏÁö ¾ÊÀº °ªÀ» °Ç³Þ´Ù¸é, ¿¹¸¦ µé¾î, ³ª»Û Æ÷ÀÎÅͳª °¡¿ë ´É·ÂÀÌ ºÒÃæºÐÇÑ "str"À» °Ç³Þ´Ù¸é ÀÌ°ÍÀº ÇÔ¼öÀÇ À߸øÀÌ ¾Æ´Ò ¼ö ÀÖ½À´Ï´Ù. +ºÎÀûÀýÇÑ ÀÎÀÚ À¯ÇüÀ̳ª ¹Ýȯ À¯ÇüÀ» ÁöÁ¤ÇÒ ¶§¿¡µµ ½ºÅ©¸³Æ®°¡ Ãæµ¹ÇÒ ¼ö ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î ÇÔ¼ö°¡ »ý»êÇÑ º¸ÅëÀÇ Á¤¼ö¸¦ º°Ç¥ º¯¼ö ¶Ç´Â strÀ̱⸦ ¿ä±¸Çϸé Ãæµ¹ÇÕ´Ï´Ù.

+

³»Àå º¯¼ö A_LastError¿¡´Â ¿î¿µ üÁ¦ÀÇ GetLastError() ÇÔ¼öÀÇ °á°ú °ªÀÌ ´ã°Ü ÀÖ½À´Ï´Ù. ÀÌ ÇÔ¼ö´Â ÇØ´ç ÇÔ¼ö°¡ È£ÃâµÈ ÈÄ¿¡ ¹Ù·Î È£ÃâµË´Ï´Ù. (ÀÌ ¶§¹®¿¡ ¹Þ´Â ¼öÇ༺´ÉÀÇ Ãæ°ÝÀº ÃøÁ¤ÇÒ ¼ö ¾ø½À´Ï´Ù). A_LastError´Â 0ºÎÅÍ 4294967295 »çÀÌÀÇ ¼ýÀÚÀÔ´Ï´Ù (¾ðÁ¦³ª ½ÊÁø¼ö·Î Æ÷¸ËµË´Ï´Ù. ½ÊÀ°Áø¼ö·Î Æ÷¸ËµÇÁö ¾Ê½À´Ï´Ù). ErrorLeveló·³, A_LastErrorÀº ¾²·¹µå¸¶´Ù ¼³Á¤µË´Ï´Ù; Áï, ´Ù¸¥ ¾²·¹µå°¡ ÀÎÅÍ·´Æ® ÇÏ´õ¶óµµ º¯ÇÏÁö ¾Ê½À´Ï´Ù. ±×·¸Áö¸¸, A_LastError´Â Run/RunWait·Îµµ ¼³Á¤µÉ ¼ö ÀÖ½À´Ï´Ù.

+ +

¼öÇ༺´É

+

DLLÀ» ¹Ýº¹ÀûÀ¸·Î È£ÃâÇÒ ¶§, ¸í½ÃÀûÀ¸·Î ÀûÀçÇÏ¸é ¼öÇ༺´ÉÀÌ ±ØÀûÀ¸·Î Çâ»óµË´Ï´Ù ( User32¿Í °°Àº Ç¥ÁØ DLL¿¡´Â ÇÊ¿äÇÏÁö ¾Ê½À´Ï´Ù. ¾ðÁ¦³ª ¸Þ¸ð¸®¿¡ »óÁÖÇϱ⠶§¹®ÀÔ´Ï´Ù). ÀÌ·± °ü·Ê¸¦ Â÷¿ëÇϸé DllCallÀº ³»ºÎÀûÀ¸·Î ¸Å¹ø LoadLibrary¿Í FreeLibrary¸¦ È£ÃâÇÒ ÇÊ¿ä°¡ ¾ø¾îÁý´Ï´Ù:

+
hModule := DllCall("LoadLibrary", "Str", "MyFunctions.dll", "Ptr")  ; ȸµ¹ÀÌ ¾È¿¡¼­ DllCall()ÀÌ ¶óÀ̺귯¸®¸¦ ÀûÀçÇÒ ÇÊ¿ä°¡ ¾ø½À´Ï´Ù.
+Loop, C:\My Documents\*.*, , 1
+    result := DllCall("MyFunctions\BackupFile", "Str", A_LoopFileFullPath)
+DllCall("FreeLibrary", "Ptr", hModule)  ; ¸Þ¸ð¸®¸¦ Àý¾àÇϱâ À§ÇØ, DLLÀº »ç¿ëÇÑ ´ÙÀ½ ³»·Áµµ µË´Ï´Ù.
+

+v1.0.46.08+¿¡¼­´Â ÇÔ¼öÀÇ ÁÖ¼Ò¸¦ ¹Ì¸® ã¾Æ³õÀ¸¸é ÈξÀ ´õ ºü¸£°Ô ¼öÇ༺´ÉÀ» °³¼±½Ãų ¼ö ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î:

+
; ´ÙÀ½ ¿¹Á¦¿¡¼­, DLLÀÌ ¾ÆÁ÷ ÀûÀçµÇÁö ¾Ê¾Ò´Ù¸é, GetModuleHandle ´ë½Å LoadLibrary¸¦ »ç¿ëÇÕ´Ï´Ù.
+MulDivProc := DllCall("GetProcAddress", Ptr, DllCall("GetModuleHandle", Str, "kernel32", "Ptr"), AStr, "MulDiv", "Ptr")
+Loop 500
+    DllCall(MulDivProc, Int, 3, Int, 4, Int, 3)
+

[AHK_L 31+]: DllCallÀÇ Ã¹ ¹ø° ¸Å°³º¯¼ö°¡ "MulDiv"¿Í °°Àº ±âÈ£ ¹®ÀÚ¿­ÀÌ°í ±× ÇÔ¼ö¸¦ ´ã°í ÀÖ´Â DLLÀÌ º¸Åë ½ºÅ©¸³Æ®°¡ ½ÇÇàµÇ±â Àü¿¡ ÀûÀçµÇ¾î ÀÖ´Ù¸é, ±× ¹®ÀÚ¿­Àº ÀÚµ¿À¸·Î ÇÔ¼ö ÁÖ¼Ò·Î °áÁ¤µË´Ï´Ù. ÀÌ·± ³»Àå ÃÖÀûÈ­´Â À§¿¡ º¸¿©ÁØ ¿¹Á¦º¸´Ù ´õ È¿°úÀûÀÔ´Ï´Ù.

+

+¶ÇÇÑ, ½ºÅ©¸³Æ®ÀÇ ¾Æ¹«µ¥³ª #NoEnvÁÙÀ» Ãß°¡Çϸé ÀοëºÎÈ£ ¾ø´Â ¸Å°³º¯¼ö À¯ÇüÀÌ »ç¿ëµÉ ¶§ (¿¹, Int vs. "Int") DllCallÀÇ ¼öÇ༺´ÉÀÌ Çâ»óµË´Ï´Ù.

+

+¸¶Áö¸·À¸·Î, ¹®ÀÚ¿­-º¯¼ö¸¦ ÇÔ¼ö¿¡ °Ç³Ú ¶§ ±× ÇÔ¼ö°¡ ¹®ÀÚ¿­ÀÇ ±æÀ̸¦ º¯°æÇÏÁö ¾ÊÀ» °æ¿ì, ±× º¯¼ö¸¦ "str" ÀÌ ¾Æ´Ï¶ó (ƯÈ÷ ¹®ÀÚ¿­ÀÌ ¾ÆÁÖ ±æ ¶§) ÁÖ¼Ò·Î º¸³»¸é (¿¹, &MyVar) ¼öÇ༺´ÉÀ» Çâ»ó½Ãų ¼ö ÀÖ½À´Ï´Ù. ´ÙÀ½ ¿¹Á¦´Â ¹®ÀÚ¿­À» ´ë¹®ÀÚ·Î º¯È¯ÇÕ´Ï´Ù: DllCall("CharUpper", Ptr, &MyVar, Ptr).

+ +

±¸Á¶Ã¼¿Í ¹è¿­

+

+±¸Á¶Ã¼´Â ¸Þ¸ð¸®¿¡ ¼­·Î ÀÌ¿ôÇØ ÀúÀåµÈ ¸â¹ö (Çʵå) Áý´ÜÀÔ´Ï´Ù. ´ëºÎºÐÀÇ ¸â¹ö´Â Á¤¼öÀÎ °æÇâÀÌ ÀÖ½À´Ï´Ù.

+

+±¸Á¶Ã¼ÀÇ ÁÖ¼Ò¸¦ (¶Ç´Â ¸Þ¸ð¸®-ºí·Ï ¹è¿­À») ¹Þ´Â ÇÔ¼ö´Â ±× ±¸Á¶Ã¼ÀÇ ³¯ ÀÌÁø µ¥ÀÌÅ͸¦ º¸Åë º¯¼ö¿¡ ÀúÀåÇϸé È£ÃâÇÒ ¼ö ÀÖ½À´Ï´Ù. ÀϹÝÀûÀ¸·Î ´ÙÀ½ ´Ü°è¸¦ ¹â½À´Ï´Ù:

+

+1) VarSetCapacity(MyStruct, 123, 0)¸¦ È£ÃâÇÏ¿© ¸ñÇ¥ º¯¼ö°¡ ±× ±¸Á¶Ã¼ÀÇ µ¥ÀÌÅ͸¦ ¼ö¿ëÇÒ ¸¸Å­ ÃæºÐÇÑÁö È®ÀÎÇÕ´Ï´Ù. 123À» Àû¾îµµ ±× ±¸Á¶Ã¼ÀÇ Å©±â¸¸Å­ Å« ¼ýÀÚ·Î ±³Ã¼ÇÕ´Ï´Ù. ¼±ÅÃÀûÀ¸·Î ¸¶Áö¸· ¸Å°³º¯¼ö¿¡ 0À» ÁöÁ¤ÇÒ ¼ö ÀÖ½À´Ï´Ù; ¸ðµç ¸â¹ö°¡ ÀÌÁø 0À¸·Î ÃʱâÈ­µË´Ï´Ù. ÀüÇüÀûÀ¸·Î ÀÌ·¸°Ô Çؼ­ ´ÙÀ½ ´Ü°è¿¡¼­ NumPut()ÀÌ ÀÚÁÖ È£ÃâµÇ´Â °ÍÀ» ¸·½À´Ï´Ù.

+

+2) ¸ñÇ¥ ÇÔ¼ö°¡ ±¸Á¶Ã¼¿¡ ÀÖ´Â °ªµéÀ» ÃÖÃÊ·Î »ç¿ëÇÑ´Ù¸é, NumPut(123, MyStruct, 4, "UInt")À» È£ÃâÇØ ¸ðµç ¸â¹öµéÀ» 0¾Æ´Ñ °ªÀ¸·Î ÃʱâÈ­ÇÕ´Ï´Ù. 123À» ¸ñÇ¥ ¸â¹ö ¾È¿¡ ¹èÄ¡µÉ Á¤¼ö·Î ±³Ã¼ÇÕ´Ï´Ù (¶Ç´Â &Var¿¡ º¯¼öÀÇ ÁÖ¼Ò¸¦ ÀúÀåÇϵµ·Ï ÁöÁ¤ÇÕ´Ï´Ù). 4¸¦ ¸ñÇ¥ ¸â¹öÀÇ ¿ÀÇÁ¼ÂÀ¸·Î ±³Ã¼ÇÕ´Ï´Ù ( "¿ÀÇÁ¼Â" ¼³¸íÀº step #4¸¦ ÂüÁ¶ÇÕ´Ï´Ù). "UInt"¸¦ ÀûÀýÇÑ À¯ÇüÀ¸·Î ±³Ã¼Çϰųª ¸â¹ö°¡ Æ÷ÀÎÅͳª ÇÚµéÀ̶ó¸é »ý·«ÇÕ´Ï´Ù.

+

3) ¸ñÇ¥ ÇÔ¼ö¸¦ È£ÃâÇÕ´Ï´Ù. MyStructÀÇ ÁÖ¼Ò¸¦ UInt (¶Ç´Â AHK_L 42+¿¡¼­´Â Ptr) ÀÎÀÚ·Î °Ç³Ü´Ï´Ù. ¿¹¸¦ µé¾î, DllCall("MyDll\MyFunc", Ptr, &MyStruct). ÇÔ¼ö´Â ¸â¹öµéÀ» Á¶»çÇØ º¸°í ÇÊ¿äÇÏ¸é º¯°æÇÕ´Ï´Ù.

+

+4) MyInteger := NumGet(MyStruct, 4, "UInt")¸¦ »ç¿ëÇÏ¸é ±¸Á¶Ã¼·ÎºÎÅÍ ¿øÇÏ´Â °ªÀ» ¾ó¸¶µçÁö ¿­¶÷ÇÒ ¼ö ÀÖ½À´Ï´Ù. 4¸¦ ±¸Á¶Ã¼¿¡ ÀÖ´Â ¸ñÇ¥ ¸â¹öÀÇ ¿ÀÇÁ¼ÂÀ¸·Î ±³Ã¼ÇÕ´Ï´Ù. ù ¸â¹ö´Â ¾ðÁ¦³ª 0¿¡ ÀÖ½À´Ï´Ù. µÎ ¹ø° ¸â¹ö´Â ¿ÀÇÁ¼Â 0ºÎÅÍ Ã¹ ¸â¹öÀÇ Å©±â¸¦ ´õÇÑ À§Ä¡¿¡ ÀÖ½À´Ï´Ù (ÀüÇüÀûÀ¸·Î 4). µÎ ¹ø°¸¦ ³Ñ¾î¼± ¸â¹öÀÇ À§Ä¡´Â ¹Ù·Î ¾Õ ¸â¹öÀÇ ¿ÀÇÁ¼ÂÀÇ À§Ä¡¿¡ ±× Å©±â¸¦ ´õÇÑ À§Ä¡¿¡ ÀÖ½À´Ï´Ù. ´ëºÎºÐÀÌ ¸â¹ö´Â -- DWORD, Int, ±×¸®°í ŰŸ 32-ºñÆ® Á¤¼ö À¯Çü -- Å©±â°¡ 4 ¹ÙÀÌÆ®ÀÔ´Ï´Ù. "UInt"¸¦ ÀûÀýÇÑ À¯ÇüÀ¸·Î ±³Ã¼Çϰųª ¸â¹ö°¡ Æ÷ÀÎÅͳª ÇÚµéÀÌ¸é »ý·«ÇϽʽÿÀ.

+

½ÇÁ¦ »ç¿ë¹ýÀº ±¸Á¶Ã¼ ¿¹Á¦¸¦ ÂüÁ¶ÇϽʽÿÀ.

+ +

¾Ë·ÁÁø ÇÑ°è

+

¹è¿­ÀÇ ÁÖ¼Ò¸¦ (¿¹, &MyVar) ÇÔ¼ö¿¡ °Ç³Ú ¶§ ±× ÇÔ¼ö°¡ º¯¼öÀÇ ³»¿ëÀÇ ±æÀ̸¦ º¯°æÇϸé, ±× ´ÙÀ½ºÎÅÍ º¯¼ö¸¦ »ç¿ëÇÏ¸é ¿Ã¹Ù¸£°Ô ÀÛµ¿ÇÏÁö ¾ÊÀ» °¡´É¼ºÀÌ ÀÖ½À´Ï´Ù. À̸¦ ÇØ°áÇÏ·Á¸é, ´ÙÀ½ Áß ÇϳªÀÇ Á¶Ä¡¸¦ ¼öÇàÇϽʽÿÀ: 1) MyVar¸¦ Ptr/address°¡ ¾Æ´Ï¶ó "Str" ÀÎÀÚ·Î °Ç³×½Ê½Ã¿À; 2) v1.0.44.03+¿¡¼­, VarSetCapacity(MyVar, -1)¸¦ È£ÃâÇϸé DllCallÀ» È£ÃâÇÑ ÈÄ¿¡ º¯¼öÀÇ ³»ºÎ¿¡ ÀúÀåµÈ ±æÀÌ°¡ °»½ÅµË´Ï´Ù. .

+

ÇÔ¼ö°¡ º¯¼ö¿¡ ÀúÀåÇÑ ÀÌÁø°ª 0Àº ±× ¿À¸¥ÂÊÀÇ ¸ðµç µ¥ÀÌÅ͸¦ °¨Ãß¾î ¹ö¸³´Ï´Ù; Áï, ±×·± µ¥ÀÌÅÍ´Â ´ëºÎºÐÀÇ ¸í·É¾î¿Í ÇÔ¼ö¿¡¼­ Á¢±ÙÇϰųª º¯°æÇÒ ¼ö ¾ø½À´Ï´Ù. ±×·¸Áö¸¸, ÁÖ¼Ò ¿¬»êÀÚ ±×¸®°í NumPut/NumGet, »Ó¸¸ ¾Æ´Ï¶ó DllCall ÀÚü·Î Á¶ÀÛÇÒ ¼ö ÀÖ½À´Ï´Ù.

+

+Àڽſ¡°Ô °Ç³×¾îÁø ¹®ÀÚ¿­ÀÇ ÁÖ¼Ò¸¦ µ¹·ÁÁÖ´Â ÇÔ¼ö´Â ¿¹»ó°ú ´Ù¸£°Ô ´Ù¸¥ ¸Þ¸ð¸® ÁÖ¼Ò¿¡ µ¿ÀÏÇÑ ¹®ÀÚ¿­À» µ¹·ÁÁÙ °¡´É¼ºÀÌ ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î, ÇÁ·Î±×·¡¹Ö ¾ð¾î·Î CharLower(CharUpper(MyVar))¸¦ È£ÃâÇϸé MyVarÀÇ ³»¿ëÀÌ ¼Ò¹®ÀÚ·Î º¯È¯µË´Ï´Ù. ±×·¯³ª °°Àº ÀÏÀ» DllCall()·Î Çϸé, MyVar´Â ±× ´ÙÀ½ È£Ãâ µÚ¿¡ ´ë¹®ÀÚ°¡ µË´Ï´Ù. ¿Ö³ÄÇϸé CharLower´Â MyVar¿Í ³»¿ëÀÌ µ¿ÀÏÇÑ ´Ù¸¥/Àӽà ¹®ÀÚ¿­¿¡ ¿¬»êÀ» ¼öÇàÇϱ⠶§¹®ÀÔ´Ï´Ù :

+
MyVar = ABC
+result := DllCall("CharLower", str, DllCall("CharUpper", Str, MyVar, Str), Str)
+

+À̸¦ ¿ìȸÇÏ·Á¸é, À§¿¡¼­ µÎ °³ÀÇ ¹ØÁÙ ºÙÀº "Str" °ªÀ» Ptr·Î º¯°æÇϽʽÿÀ. ÀÌ·¸°Ô Çϸé CharUpperÀÇ ¹Ýȯ °ªÀÌ ¼ø¼öÇÑ ÁÖ¼Ò·Î ¹ø¿ªµË´Ï´Ù. CharLower¿¡ Á¤¼ö·Î °Ç³×¾îÁú °ÍÀÔ´Ï´Ù.

+

+¹®ÀÚ¿­À» ´Ù·ê ¶§ ´Ù¸¥ ÇѰ踦 ¸¶ÁÖÇÒ ¼öµµ ÀÖ½À´Ï´Ù. ÀÚ¼¼ÇÑ °ÍÀº ½ºÅ©¸³Æ® ȣȯ¼ºÀ» ÂüÁ¶ÇϽʽÿÀ.

+ +

ÄÄÆ÷³ÍÆ® °´Ã¼ ¸ðµ¨ (COM)

+

+COM °´Ã¼´Â VBScript¿Í ºñ½ÁÇÑ ¾ð¾î·Î Á¢±ÙÇÒ ¼ö ÀÖÀ¸¸ç ÀüÇüÀûÀ¸·Î ¿ÀÅäÇÖÅ°ÀÇ ComObjCreate, ComObjGet ¶Ç´Â ComObjActive ±×¸®°í ³»Àå °´Ã¼ ±¸¹®À» ÅëÇÏ¿© Á¢±ÙÇÒ ¼öµµ ÀÖ½À´Ï´Ù.

+

IDispatch¸¦ Áö¿øÇÏÁö ¾Ê´Â COM °´Ã¼´Â DllCall°ú ÇÔ²² »ç¿ëÇÏ·Á¸é ÇÔ¼öÀÇ ÁÖ¼Ò¸¦ ±× °´Ã¼ ÀÎÅÍÆäÀ̽ºÀÇ °¡»ó ÇÔ¼ö Å×ÀÌºí¿¡¼­ ¿­¶÷ÇÕ´Ï´Ù. ´õ ÀÚ¼¼ÇÑ °ÍÀº ¾Æ·¡ÀÇ ¿¹Á¦¸¦ ÂüÁ¶ÇϽʽÿÀ.

+

.NET ÇÁ·¹ÀÓ¿öÅ© ´ëºÎºÐµµ COM°ú DllCallÀ» ÅëÇÏ¿© Á¢±ÙÇÒ ¼ö ÀÖ½À´Ï´Ù. ´ÙÀ½http://www.autohotkey.com/forum/topic26191.htmlÀ» ÂüÁ¶ÇϽʽÿÀ. +

+ +

°ü·Ã

+

½ºÅ©¸³Æ® ȣȯ¼º, PostMessage, OnMessage(), RegisterCallback(), Run, VarSetCapacity, Functions, SysGet, MSDN Library

+ +

¿¹Á¦

+
; ¿¹Á¦: Windows API ÇÔ¼ö "MessageBox"¸¦ È£ÃâÇÏ°í »ç¿ëÀÚ°¡ ´©¸¥ ¹öÆ°À» º¸°íÇÕ´Ï´Ù.
+
+WhichButton := DllCall("MessageBox", "Int", "0", "Str", "Press Yes or No", "Str", "Title of box", "Int", 4)
+MsgBox You pressed button #%WhichButton%.
+ +
; ¿¹Á¦: ¹ÙÅÁÈ­¸é È­¸éÀ» ÁöÁ¤µÈ ºñÆ®¸Ê ÆÄÀÏ·Î ¹Ù²ß´Ï´Ù (.bmp).
+
+DllCall("SystemParametersInfo", UInt, 0x14, UInt, 0, Str, A_WinDir . "\winnt.bmp", UInt, 2)
+ +
; ¿¹Á¦: API ÇÔ¼ö "IsWindowVisible"¸¦ È£ÃâÇØ ³ëÆ®Æеå âÀÌ º¸ÀÌ´ÂÁö ¾Ë¾Æ³À´Ï´Ù.
+
+DetectHiddenWindows On
+if not DllCall("IsWindowVisible", "Ptr", WinExist("Untitled - Notepad"))  ; WinExist() returns an HWND.
+    MsgBox The window is not visible.
+ +
; ¿¹Á¦: APIÀÇ wsprintf()¸¦ È£ÃâÇØ  432 ¼ýÀÚ ¾Õ¿¡ 0À» µ¡´ë¾î 10 ÀÚ¸® ³ÊºñÀÇ ¹®ÀÚ·Î ¸¸µì´Ï´Ù (0000000432).
+
+VarSetCapacity(ZeroPaddedNumber, 20)  ; º¯¼ö°¡ »õ ¹®ÀÚ¿­À» ¹ÞÀ» ¸¸Å­ ÃæºÐÈ÷ Å«Áö È®ÀÎÇÕ´Ï´Ù.
+DllCall("wsprintf", "Str", ZeroPaddedNumber, "Str", "%010d", "Int", 432, "Cdecl")  ; Cdecl È£Ãâ °ü·Ê¸¦ ¿ä±¸ÇÕ´Ï´Ù.
+MsgBox %ZeroPaddedNumber%
+ +
; ¿¹Á¦: QueryPerformanceCounter()ÀÇ »ç¿ë¹ýÀ» º¸¿©ÁÝ´Ï´Ù. A_TickCountÀÇ 10ms º¸´Ù ´õ Á¤¹Ðµµ°¡ ³ô½À´Ï´Ù.
+
+DllCall("QueryPerformanceCounter", "Int64*", CounterBefore)
+Sleep 1000
+DllCall("QueryPerformanceCounter", "Int64*", CounterAfter)
+MsgBox % "Elapsed QPC time is " . CounterAfter - CounterBefore
+ +
; ¿¹Á¦: Àӽ÷Π¸¶¿ì½ºÀÇ ¼Óµµ¸¦ ÁÙ¿©ÁÖ´Â ÇÖÅ°ÀÔ´Ï´Ù. ´õ Á¤¹ÐÇÏ°Ô À§Ä¡¸¦ Àâ´Âµ¥ µµ¿òÀÌ µË´Ï´Ù.
+; F1 Å°¸¦ ´©¸£¸é Ä¿¼­ÀÇ ¼Óµµ°¡ ´À·ÁÁý´Ï´Ù. ¶¼¸é ¿ø·¡ÀÇ ¼Óµµ·Î µ¹¾Æ¿É´Ï´Ù.
+
+F1::
+SPI_GETMOUSESPEED = 0x70
+SPI_SETMOUSESPEED = 0x71
+; ³ªÁß¿¡ º¹±¸ÇÒ ¼ö ÀÖµµ·Ï ÇöÀç ¼Óµµ¸¦ ¿­¶÷ÇÕ´Ï´Ù:
+DllCall("SystemParametersInfo", UInt, SPI_GETMOUSESPEED, UInt, 0, UIntP, OrigMouseSpeed, UInt, 0)
+; ÀÌÁ¦ ¸¶¿ì½º¸¦ ´õ ´À¸° ¼Óµµ·Î ÁöÁ¤ÇÕ´Ï´Ù. °¡Àå ¸¶Áö¸· ¸Å°³º¯¼ö ¹Ù·Î ¾Õ¿¡ ÁöÁ¤µÇ¾î ÀÖ½À´Ï´Ù (¹üÀ§´Â  1-20ÀÌ°í, 10ÀÌ ±âº»°ªÀÔ´Ï´Ù):
+DllCall("SystemParametersInfo", UInt, SPI_SETMOUSESPEED, UInt, 0, Ptr, 3, UInt, 0)
+KeyWait F1  ; Å°º¸µå ÀÚµ¿ ¹Ýº¹ ¶§¹®¿¡ DllCallÀÌ ¹Ýº¹ÀûÀ¸·Î È£ÃâµÇ´Â °ÍÀ» ¹æÁöÇÕ´Ï´Ù.
+return
+
+F1 up::DllCall("SystemParametersInfo", UInt, 0x71, UInt, 0, Ptr, OrigMouseSpeed, UInt, 0)  ; ¿ø·¡ ¼Óµµ¸¦ º¹±¸ÇÕ´Ï´Ù
+ +
; ¿¹Á¦: âÀÇ À¯ÀÏÇÑ ID ±×¸®°í ±×ÀÇ ÄÜÆ®·Ñ Áß ClassNNÀ̳ª ÅؽºÆ®¸¦ °Ç³Ú ¶§,
+; ´ÙÀ½ ÇÔ¼ö´Â ±× ÄÜÆ®·ÑÀÇ HWND (À¯ÀÏÇÑ ID)¸¦ µ¹·ÁÁÝ´Ï´Ù.
+; v1.0.43.06+: ÀÌ ÇÔ¼ö´Â ´ÙÀ½ ¸í·É¾î·Î ±³Ã¼µÇ¾ú½À´Ï´Ù. ÀÌ°ÍÀÌ ´õ Á¤È®ÇÕ´Ï´Ù.
+
+ControlGet, OutputVar, Hwnd,, ClassNN, WinTitle
+ +
; ¿¹Á¦: È°¼º âÀ» °üÁ¦ÇÏ°í ÃÊÁ¡ÀÌ ÀÖ´Â ÄÜÆ®·Ñ ¾È¿¡¼­ ±×ÀÇ ¼öÁ÷ ½ºÅ©·Ñ¹ÙÀÇ À§Ä¡¸¦ (½Ç½Ã°£À¸·Î °»½ÅÇÏ¿©) º¸¿©ÁÝ´Ï´Ù.
+; ÀÌ°ÍÀº v1.0.43.06+À» ¿ä±¸ÇÕ´Ï´Ù. ¿Ö³ÄÇϸé ControlGet Hwnd¸¦ »ç¿ëÇϱ⠶§¹®ÀÔ´Ï´Ù.
+
+#Persistent
+SetTimer, WatchScrollBar, 100
+return
+
+WatchScrollBar:
+ActiveWindow := WinExist("A")
+if not ActiveWindow  ; No active window.
+    return
+ControlGetFocus, FocusedControl, ahk_id %ActiveWindow%
+if not FocusedControl  ; No focused control.
+    return
+; ÅøÆÁ¿¡ ¼öÆò ¶Ç´Â ¼öÁ÷ ½ºÅ©·Ñ¹ÙÀÇ À§Ä¡¸¦ º¸¿©ÁÝ´Ï´Ù:
+ControlGet, ChildHWND, Hwnd,, %FocusedControl%, ahk_id %ActiveWindow%
+ToolTip % DllCall("GetScrollPos", "Ptr", ChildHWND, "Int", 1)  ;  ¸¶Áö¸· ¸Å°³º¯¼ö´Â SB_VERT¿¡ ´ëÇØ 1 for, SB_HORZ¿¡ ´ëÇØ 0ÀÔ´Ï´Ù.
+return
+ +
; ¿¹Á¦: ÀÛµ¿ÇÏ´Â ½ºÅ©¸³Æ®ÀÔ´Ï´Ù. ÅؽºÆ®¸¦ ÆÄÀÏ¿¡ ¾´´ÙÀ½ ´Ù½Ã ¸Þ¸ð¸®·Î ÀÐ¾î µéÀÔ´Ï´Ù (v1.0.34+ ¿ä±¸).
+; ÀÌ ¸Þ½îµå¸¦ »ç¿ëÇÏ¸é ¿©·¯ ÆÄÀÏÀ» µ¿½Ã¿¡ Àаųª ¾µ °æ¿ì ¼öÇ༺´ÉÀÌ Çâ»ó µË´Ï´Ù.
+; AHK_L 42+¿¡¼­´Â FileOpenÀ» »ç¿ëÇϸé, °°Àº ÀÏÀ» ÇÒ ¼ö ÀÖ½À´Ï´Ù.
+
+FileSelectFile, FileName, S16,, Create a new file:
+if FileName =
+    return
+GENERIC_WRITE = 0x40000000  ; ÀбⰡ ¾Æ´Ï¶ó ¾²±â ¿ëµµ·Î ÆÄÀÏÀ» ¿±´Ï´Ù.
+CREATE_ALWAYS = 2  ; »õ ÆÄÀÏÀ» ¸¸µì´Ï´Ù (±âÁ¸ÀÇ ÆÄÀÏÀ» µ¤¾î¾¸).
+hFile := DllCall("CreateFile", Str, FileName, UInt, GENERIC_WRITE, UInt, 0, Ptr, 0, UInt, CREATE_ALWAYS, UInt, 0, Ptr, 0, Ptr)
+if not hFile
+{
+    MsgBox Can't open "%FileName%" for writing.
+    return
+}
+TestString = This is a test string.`r`n  ; ÆÄÀÏÀ» ÀÌ·± ½ÄÀ¸·Î ¾µ ¶§,  `n ¸»°í `r`nÀ» »ç¿ëÇÏ¿© »õ ÁÙÀ» ½ÃÀÛÇϽʽÿÀ.
+DllCall("WriteFile", Ptr, hFile, Str, TestString, UInt, StrLen(TestString), UIntP, BytesActuallyWritten, Ptr, 0)
+DllCall("CloseHandle", Ptr, hFile)  ; ÆÄÀÏÀ» ´Ý½À´Ï´Ù.
+
+; ÆÄÀÏ¿¡ ½èÀ¸¹Ç·Î ÀÌÁ¦ ´Ù½Ã ±× ³»¿ëÀ» ¸Þ¸ð¸®·Î ÀÐ¾î µéÀÔ´Ï´Ù.
+GENERIC_READ = 0x80000000  ; ¾²±â ¸»°í Àб⠿뵵·Î ÆÄÀÏÀ» ¿±´Ï´Ù.
+OPEN_EXISTING = 3  ; ÀÌ ¸ðµå´Â ¿­¸± ÆÄÀÏÀÌ ÀÌ¹Ì Á¸ÀçÇØ¾ß ÇÔÀ» °¡¸®Åµ´Ï´Ù.
+FILE_SHARE_READ = 0x1 ; This and the next are whether other processes can open the file while we have it open.
+FILE_SHARE_WRITE = 0x2
+hFile := DllCall("CreateFile", Str, FileName, UInt, GENERIC_READ, UInt, FILE_SHARE_READ|FILE_SHARE_WRITE, Ptr, 0, UInt, OPEN_EXISTING, UInt, 0, Ptr, 0)
+if not hFile
+{
+    MsgBox Can't open "%FileName%" for reading.
+    return
+}
+; Å×½ºÆ® ¸ñÀûÀ¸·Î º¯¼ö¸¦ ºñ¿ìÁö¸¸, °¡¿ë ´É·ÂÀÌ ÃæºÐÇÑÁö È®ÀÎÇϽʽÿÀ:
+BytesToRead := VarSetCapacity(TestString, StrLen(TestString))
+DllCall("ReadFile", Ptr, hFile, Str, TestString, UInt, BytesToRead, UIntP, BytesActuallyRead, Ptr, 0)
+DllCall("CloseHandle", Ptr, hFile)  ; ÆÄÀÏÀ» ´Ý½À´Ï´Ù.
+MsgBox The following string was read from the file: %TestString%
+ +
; ¿¹Á¦: Win+C¸¦ ´©¸¦ ¶§ ¸¶¿ì½º Ä¿¼­¸¦ °¨Ãä´Ï´Ù. ³ªÁß¿¡ Ä¿¼­¸¦ º¸¿©ÁÖ·Á¸é, ´Ù½Ã Win+C¸¦ ´©¸¨´Ï´Ù.
+; ½ºÅ©¸³Æ®´Â www.autohotkey.com/forum/topic6107.html¿¡¼­ ¾òÀ» ¼ö ÀÖ½À´Ï´Ù.
+
+OnExit, ShowCursor  ; ½ºÅ©¸³Æ®°¡ Á¾·áÇÒ ¶§ Ä¿¼­°¡ º¸ÀÌ´ÂÁö È®ÀÎÇÕ´Ï´Ù.
+return
+
+ShowCursor:
+SystemCursor("On")
+ExitApp
+
+#c::SystemCursor("Toggle")  ; Win+C ÇÖÅ°·Î Ä¿¼­¸¦ ÄÑ°í ²ü´Ï´Ù.
+
+SystemCursor(OnOff=1)   ; INIT = "I","Init"; OFF = 0,"Off"; TOGGLE = -1,"T","Toggle"; ON = others
+{
+    static AndMask, XorMask, $, h_cursor
+        ,c0,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,c12,c13 ; ½Ã½ºÅÛ Ä¿¼­
+        , b1,b2,b3,b4,b5,b6,b7,b8,b9,b10,b11,b12,b13   ; ºó Ä¿¼­
+        , h1,h2,h3,h4,h5,h6,h7,h8,h9,h10,h11,h12,h13   ; ±âº» Ä¿¼­ÀÇ ÇÚµé
+    if (OnOff = "Init" or OnOff = "I" or $ = "")       ; ¿äûµÉ ¶§ ¶Ç´Â ù ¹ø°·Î È£ÃâµÉ ¶§ ÃʱâÈ­ÇÕ´Ï´Ù
+    {
+        $ = h                                          ; ±âº» Ä¿¼­¸¦ È°¼ºÈ­ÇÕ´Ï´Ù
+        VarSetCapacity( h_cursor,4444, 1 )
+        VarSetCapacity( AndMask, 32*4, 0xFF )
+        VarSetCapacity( XorMask, 32*4, 0 )
+        system_cursors = 32512,32513,32514,32515,32516,32642,32643,32644,32645,32646,32648,32649,32650
+        StringSplit c, system_cursors, `,
+        Loop %c0%
+        {
+            h_cursor   := DllCall( "LoadCursor", "Ptr",0, "Ptr",c%A_Index% )
+            h%A_Index% := DllCall( "CopyImage", "Ptr",h_cursor, "UInt",2, "Int",0, "Int",0, "UInt",0 )
+            b%A_Index% := DllCall( "CreateCursor", "Ptr",0, "Int",0, "Int",0
+                , "Int",32, "Int",32, "Ptr",&AndMask, "Ptr",&XorMask )
+        }
+    }
+    if (OnOff = 0 or OnOff = "Off" or $ = "h" and (OnOff < 0 or OnOff = "Toggle" or OnOff = "T"))
+        $ = b  ; ºó Ä¿¼­¸¦ »ç¿ëÇÕ´Ï´Ù
+    else
+        $ = h  ; ÀúÀåµÈ Ä¿¼­¸¦ »ç¿ëÇÕ´Ï´Ù
+
+    Loop %c0%
+    {
+        h_cursor := DllCall( "CopyImage", "Ptr",%$%%A_Index%, "UInt",2, "Int",0, "Int",0, "UInt",0 )
+        DllCall( "SetSystemCursor", "Ptr",h_cursor, "UInt",c%A_Index% )
+    }
+}
+ +
; ±¸Á¶Ã¼ ¿¹Á¦: RECT ±¸Á¶Ã¼ÀÇ ÁÖ¼Ò¸¦ GetWindowRect()¿¡ °Ç³Ü´Ï´Ù. 
+; ±¸Á¶Ã¼ÀÇ ¸â¹ö°¡ âÀÇ ÁÂ, »ó, ¿ì, ÇÏÀÇ À§Ä¡¿¡ ¼³Á¤µË´Ï´Ù (È­¸é¿¡ »ó´ëÀûÀÓ).
+
+Run Notepad
+WinWait Untitled - Notepad  ; This also sets the "last found window" for use with WinExist() below.
+VarSetCapacity(Rect, 16)  ; A RECT is a struct consisting of four 32-bit integers (i.e. 4*4=16).
+DllCall("GetWindowRect", Ptr, WinExist(), Ptr, &Rect)  ; WinExist() returns an HWND.
+MsgBox % "Left " . NumGet(Rect, 0, "Int") . " Top " . NumGet(Rect, 4, "Int")
+    . " Right " . NumGet(Rect, 8, "Int") . " Bottom " . NumGet(Rect, 12, "Int")
+ +
; ±¸Á¶Ã¼ ¿¹Á¦: FillRect()¿¡ RECT ±¸Á¶Ã¼ÀÇ ÁÖ¼Ò¸¦ °Ç³Ü´Ï´Ù. 
+; ÀÌ ±¸Á¶Ã¼´Â Àӽ÷Π»¡°²°Ô Ä¥ÇÒ È­¸éÀÇ ±¸¿ªÀ» °¡¸®Åµ´Ï´Ù.
+
+VarSetCapacity(Rect, 16, 0)  ; 4-¹ÙÀÌÆ® Á¤¼ö¸¦ ¼ö¿ëÇϵµ·Ï °¡¿ë´É·ÂÀ» ¼³Á¤ÇÏ°í ±× ¸ðµÎ¸¦ 0À¸·Î ÃʱâÈ­ÇÕ´Ï´Ù.
+NumPut(A_ScreenWidth//2, Rect, 8, "Int")  ; ±¸Á¶Ã¼¿¡¼­ ¼¼ ¹ø° Á¤¼ö´Â "rect.right"ÀÔ´Ï´Ù.
+NumPut(A_ScreenHeight//2, Rect, 12, "Int") ; ±¸Á¶Ã¼¿¡¼­ ³× ¹ø° Á¤¼ö´Â "rect.bottom"ÀÔ´Ï´Ù.
+hDC := DllCall("GetDC", "Ptr", 0, "Ptr")  ; 0À» °Ç³× µ¥½ºÅ©Å¾ÀÇ ÀåÄ¡ ¹®¸ÆÀ» ¾ò½À´Ï´Ù.
+hBrush := DllCall("CreateSolidBrush", "UInt", 0x0000FF, "Ptr")  ; »¡°£»ö ºê·¯½¬¸¦ ¸¸µì´Ï´Ù (BGR Çü½ÄÀ¸·Î 0x0000FF ÀÓ).
+DllCall("FillRect", "Ptr", hDC, "Ptr", &Rect, "Ptr", hBrush)  ; ÁöÁ¤µÈ »ç°¢±¸¿ªÀ» À§ÀÇ ºê·¯½¬¸¦ »ç¿ëÇÏ¿© ä¿ó´Ï´Ù.
+DllCall("ReleaseDC", "Ptr", 0, "Ptr", hDC)  ; û¼Ò.
+DllCall("DeleteObject", "Ptr", hBrush)  ; û¼Ò.
+ +
; ±¸Á¶Ã¼ ¿¹Á¦: ½Ã½ºÅÛ ½Ã°è¸¦ ÁöÁ¤µÈ ³¯Â¥¿Í ½Ã°£À¸·Î º¯°æÇÕ´Ï´Ù.
+; ¾ÕÀ¸·Î ³¯Â¥¸¦ º¯°æÇÒ ¶§ ÁÖÀÇÇϽʽÿÀ. ÀÏÁ¤ÀÌ ÀâÇô ÀÖ´Â ÀÛ¾÷ÀÌ ³Ê¹« À̸£°Ô ½ÇÇàµÉ °¡´É¼ºÀÌ ÀÖ½À´Ï´Ù!
+
+SetSystemTime("20051008142211")  ; ½Ã°£µµÀåÀ» °Ç³Ü´Ï´Ù (Áö¿ª½Ã°£ÀÔ´Ï´Ù. UTC¾Æ´Ô).
+
+SetSystemTime(YYYYMMDDHHMISS)
+; ½Ã½ºÅÛ ½Ã°è¸¦ ÁöÁ¤µÈ ³¯Â¥¿Í ½Ã°£À¸·Î ¼³Á¤ÇÕ´Ï´Ù.
+; È£ÃâÀÚ´Â µé¾î¿À´Â ¸Å°³º¯¼ö°¡ À¯È¿ÇÑ ³¯Â¥-½Ã°£ µµÀåÀÎÁö È®ÀÎÇØ¾ß ÇÕ´Ï´Ù
+; (Áö¿ª½Ã°£ÀÌÁö, UTC ½Ã°£ÀÌ ¾Æ´Õ´Ï´Ù). ¼º°øÇϸé 0-¾Æ´Ñ °ªÀ» µ¹·ÁÁÖ°í ±×·¸Áö ¾ÊÀ¸¸é 0À» µ¹·ÁÁÝ´Ï´Ù.
+{
+    ; SetSystemTime()¿¡ »ç¿ëÇϱâ À§ÇØ ¸Å°³º¯¼ö¸¦ Áö¿ª ½Ã°£¿¡¼­  UTC ½Ã°£À¸·Î º¯°æÇÕ´Ï´Ù.
+    UTC_Delta -= A_NowUTC, Seconds  ; ¹Ý¿Ã¸² ¹®Á¦ ¶§¹®¿¡ ÃÊ°¡ ´õ Á¤È®ÇÕ´Ï´Ù.
+    UTC_Delta := Round(-UTC_Delta/60)  ; °¡Àå °¡±î¿î ºÐÀ¸·Î ¹Ý¿Ã¸²ÇØ Á¤È®µµ¸¦ È®ÀÎÇÕ´Ï´Ù.
+    YYYYMMDDHHMISS += UTC_Delta, Minutes  ; UTC·Î º¯È¯Çϱâ À§ÇØ ¿ÀÇÁ¼ÂÀ» Àû¿ëÇÕ´Ï´Ù.
+
+    VarSetCapacity(SystemTime, 16, 0)  ; ÀÌ ±¸Á¶´Â 8°³ÀÇ UShort·Î ±¸¼ºµË´Ï´Ù(Áï, 8*2=16).
+
+    StringLeft, Int, YYYYMMDDHHMISS, 4    ; YYYY (ÇØ)
+    NumPut(Int, SystemTime, 0, "UShort")
+    StringMid, Int, YYYYMMDDHHMISS, 5, 2  ; MM (´Þ, 1-12)
+    NumPut(Int, SystemTime, 2, "UShort")
+    StringMid, Int, YYYYMMDDHHMISS, 7, 2  ; DD (³¯)
+    NumPut(Int, SystemTime, 6, "UShort")
+    StringMid, Int, YYYYMMDDHHMISS, 9, 2  ; HH (24-½Ã°£Á¦ ½Ã°£)
+    NumPut(Int, SystemTime, 8, "UShort")
+    StringMid, Int, YYYYMMDDHHMISS, 11, 2 ; MI (ºÐ)
+    NumPut(Int, SystemTime, 10, "UShort")
+    StringMid, Int, YYYYMMDDHHMISS, 13, 2 ; SS (ÃÊ)
+    NumPut(Int, SystemTime, 12, "UShort")
+
+    return DllCall("SetSystemTime", Ptr, &SystemTime)
+}
+ +
/* °í±Þ ±¸Á¶Ã¼ ¿¹Á¦:
+
+1) DllCall()À» »ç¿ëÇÏ¿© TCP/IP ¼­¹ö¿¡ ³×Æ®¿öÅ© Á¢¼ÓÀ» ¸¸µé°í ±×·ÎºÎÅÍ µ¥ÀÌÅ͸¦ ¹Þ´Â ¹æ¹ýÀº WinLIRC Ŭ¶óÀ̾ðÆ® ½ºÅ©¸³Æ®¸¦ ÂüÁ¶ÇϽʽÿÀ. 
+
+2) ¿î¿µ üÁ¦´Â »ç¿ëÀÚ°¡ ±Û²ÃÀ̳ª Ä÷¯ ¶Ç´Â ¾ÆÀÌÄÜÀ» °í¸¦ ¼ö ÀÖµµ·Ï Ç¥ÁØ ´ëÈ­»óÀÚ¸¦ Á¦°øÇÕ´Ï´Ù.
+ÀÌ·± ´ëÈ­»óÀÚ´Â ±¸Á¶Ã¼¸¦ »ç¿ëÇÏ°í www.autohotkey.com/forum/topic17230.html¿¡¼­ ¿¹¸¦ º¸½Ç ¼ö ÀÖ½À´Ï´Ù.
+
+*/
+ +
/*
+  ¿¹Á¦: COMÀ» »ç¿ëÇÏ¿© Àӽ÷ΠȰ¼º âÀ» ŽºÅ©¹Ù¿¡¼­ Á¦°ÅÇÕ´Ï´Ù.
+
+  ITaskbarListÀÇ VTable¿¡ ÀÖ´Â ¸Þ½îµå:
+    IUnknown:
+      0 QueryInterface  -- ´ë½Å ComObjQuery¸¦ »ç¿ëÇϽʽÿÀ
+      1 AddRef          -- ´ë½Å ObjAddRef ¸¦ »ç¿ëÇϽʽÿÀ
+      2 Release         -- ´ë½Åuse ObjRelease ¸¦ »ç¿ëÇϽʽÿÀ
+    ITaskbarList:
+      3 HrInit
+      4 AddTab
+      5 DeleteTab
+      6 ActivateTab
+      7 SetActiveAlt
+*/
+IID_ITaskbarList  := "{56FDF342-FD6D-11d0-958A-006097C9A090}"
+CLSID_TaskbarList := "{56FDF344-FD6D-11d0-958A-006097C9A090}"
+
+; TaskbarList °´Ã¼¸¦ ¸¸µé°í ±×ÀÇ ÁÖ¼Ò¸¦ tbl¿¡ ÀúÀåÇÕ´Ï´Ù.
+tbl := ComObjCreate(CLSID_TaskbarList, IID_ITaskbarList)
+
+activeHwnd := WinExist("A")
+
+DllCall(vtable(tbl,3), "ptr", tbl)                     ; tbl.HrInit()
+DllCall(vtable(tbl,5), "ptr", tbl, "ptr", activeHwnd)  ; tbl.DeleteTab(activeHwnd)
+Sleep 3000
+DllCall(vtable(tbl,4), "ptr", tbl, "ptr", activeHwnd)  ; tbl.AddTab(activeHwnd)
+
+; ºÐ¹è°¡ ¾ø´Â °´Ã¼´Â ¾ðÁ¦³ª ¼öÀÛ¾÷À¸·Î ÇØÁ¦ÇØ¾ß ÇÕ´Ï´Ù.
+ObjRelease(tbl)
+
+vtable(ptr, n) {
+    ; NumGet(ptr+0)Àº °´Ã¼ÀÇ °¡»ó ÇÔ¼ö µ¥À̺íÀ» (°£´ÜÈ÷ ¸»ÇØ vtableÀ») µ¹·ÁÁÝ´Ï´Ù
+    ; Ç¥Çö½Ä¿¡¼­ ³ª¸ÓÁö´Â vtable·ÎºÎÅÍ n ¹ø° ÇÔ¼öÀÇ ÁÖ¼ÒÀÇ ÁÖ¼Ò¸¦ ¿­¶÷ÇÕ´Ï´Ù.
+    
+    return NumGet(NumGet(ptr+0), n*A_PtrSize)
+}
+
+ + + diff --git a/src/docs/commands/Drive.htm b/src/docs/commands/Drive.htm new file mode 100644 index 0000000..7349ad9 --- /dev/null +++ b/src/docs/commands/Drive.htm @@ -0,0 +1,86 @@ + + + + +Drive + + + + + + + +

Drive

+ +

CD ¶Ç´Â DVD µå¶óÀ̺êÀÇ Æ®·¹À̸¦ ²¨³»°í ³Ö½À´Ï´Ù. ¶Ç´Â µå¶óÀ̺êÀÇ º¼·ý ¶óº§À» ¼³Á¤ÇÕ´Ï´Ù.

+ +
Drive, Sub-command [, Drive , Value]
+

+ºÎ-¸í·É¾î, µå¶óÀ̺ê, ±×¸®°í º¼·ý ¸Å°³º¯¼ö´Â ¼­·Î ÀÇÁ¸ÀûÀÔ´Ï´Ù. ±×ÀÇ »ç¿ë¹ýÀº ¾Æ·¡¿¡ ±â¼úÇÕ´Ï´Ù.

+

+Label, Drive [, NewLabel]: DriveÀÇ º¼·ý ¶óº§À» NewLabel·Î ¹Ù²ß´Ï´Ù (NewLabelÀ» »ý·«Çϸé, µå¶óÀ̺ê´Â ¶óº§ÀÌ ¾ø½À´Ï´Ù). Drive´Â µå¶óÀÌºê ±âÈ£ ´ÙÀ½¿¡ ½ÖÁ¡°ú ¼±ÅÃÀûÀ¸·Î ¿ª»ç¼±ÀÌ µû¶ó¿É´Ï´Ù (UNC¿Í ¸ÊÇÎµÈ µå¶óÀ̺꿡¼­µµ ÀÛµ¿). ¿¹¸¦ µé¾î: Drive, Label, C:, Seagate200.

+

+ÇöÀç ¶óº§À» ¿­¶÷ÇÏ·Á¸é, ´ÙÀ½ ¿¹Á¦¸¦ µû¸£½Ê½Ã¿À: +DriveGet, OutputVar, Label, C:.

+
+

Lock, Drive: µå¶óÀ̺êÀÇ ²¨³»±â ±â´ÉÀÌ ÀÛµ¿ÇÏÁö ¸ø Çϵµ·Ï ¸·½À´Ï´Ù. ¿¹¸¦ µé¾î: Drive, Lock, D:. ´ëºÎºÐÀÇ µå¶óÀ̺ê´Â "¿­¾îµÐ ä·Î Àá±Û ¼ö" ¾ø½À´Ï´Ù. ±×·¸Áö¸¸, ¿­·Á ÀÖ´Â µ¿¾È¿¡ µå¶óÀ̺긦 Àá±×¸é ¾Æ¸¶µµ ±× °á°ú´Â ´ÝÈ÷´Â ¼ø°£ Àá±â°Ô µÉ °ÍÀÔ´Ï´Ù. ÀÌ ¸í·É¾î´Â Àá±ÝÀ» Áö¿øÇÏÁö ¾Ê´Â µå¶óÀ̺꿡´Â ¾Æ¹« È¿°ú°¡ ¾ø½À´Ï´Ù (´ëºÎºÐÀÇ Àбâ-Àü¿ë µå¶óÀ̺ê). µå¶óÀ̺갡 ½ºÅ©¸³Æ®¿¡ ÀÇÇØ Àá±â°í ±×¸®°í ±× ½ºÅ©¸³Æ®°¡ ³¡³ª¹ö¸®¸é, ±× µå¶óÀ̺ê´Â ¶Ç ´Ù¸¥ ½ºÅ©¸³Æ®³ª ÇÁ·Î±×·¥ÀÌ Ç®¾îÁÙ ¶§±îÁö ¶Ç´Â ½Ã½ºÅÛÀÌ Àç½ÃÀÛÇÒ ¶§±îÁö ±×´ë·Î Àá°Ü ÀÖ½À´Ï´Ù. ÁöÁ¤µÈ µå¶óÀ̺갡 Á¸ÀçÇÏÁö ¾Ê°Å³ª Àá±Ý Ư¡À» Áö¿øÇÏÁö ¾ÊÀ¸¸é, ErrorLevel¿¡ 1ÀÌ ¼³Á¤µË´Ï´Ù. ±×·¸Áö ¾ÊÀ¸¸é 0ÀÌ ¼³Á¤µË´Ï´Ù.

+
+

Unlock, Drive: À§¿Í ¹Ý´ëÀÔ´Ï´Ù. µå¶óÀ̺갡 ¿©·¯ ¹ø Àá°å´Ù¸é UnlockÀº ¿©·¯ ¹ø ½ÇÇàÇÒ ÇÊ¿ä°¡ ÀÖ½À´Ï´Ù (Àû¾îµµ ¾î¶² µå¶óÀ̺ê´Â ÇØ´çµË´Ï´Ù). ¿¹¸¦ µé¾î, Drive, Lock, D:ÀÌ ¼¼¹ø ½ÇÇàµÇ¾ú´Ù¸é, Drive, Unlock, D:¸¦ ¼¼ ¹ø ½ÇÇàÇØ¾ß Àá±ÝÀÌ Ç®¸± °ÍÀÔ´Ï´Ù. ÀÌ ¶§¹®¿¡ ±×¸®°í µå¶óÀ̺갡 ÇöÀç Àá°Ü ÀÖ´ÂÁö È®ÀÎÇÒ ¹æ¹ýÀÌ ¾ø±â ¶§¹®¿¡, ±×ÀÇ Àá±Ý »óŸ¦ º¯¼ö¿¡ ÃßÀû °ü¸®ÇÏ´Â °ÍÀÌ À¯¿ëÇÕ´Ï´Ù.

+
+

Eject [, Drive, 1]: CD ¶Ç´Â DVD µå¶óÀ̺êÀÇ Æ®·¹À̸¦ ²¨³À´Ï´Ù (´Ù¸¥ ¹Ìµð¾î ¶Ç´Â ÀåÄ¡ÀÇ À¯ÇüÀ» ²¨³»·Á¸é, ÀÌ ÆäÀÌÁö ÇÏ´ÜÀÇ DllCall ¿¹Á¦¸¦ ÂüÁ¶ÇϽʽÿÀ).

+

+Drive »ý·«µÇ¸é, ±âº» °ªÀº CD/DVD µå¶óÀ̺갡 »ç¿ëµË´Ï´Ù. Æ®·¹À̸¦ ²¨³»·Á¸é, ¸¶Áö¸· ¸Å°³º¯¼ö¸¦ »ý·«ÇÕ´Ï´Ù. Æ®·¹À̸¦ ´ÝÀ¸·Á¸é 1À» ¸¶Áö¸· ¸Å°³º¯¼ö¿¡ ÁöÁ¤ÇÕ´Ï´Ù; ¿¹¸¦ µé¾î: Drive, Eject, D:, 1.

+

+Drive Eject ½ºÅ©¸³Æ®¸¦ °è¼Ó ÁøÇàÇϱâ Àü¿¡ ²¨³»±â°¡ ¿Ï·áµÇ±â¸¦ ±â´Ù¸³´Ï´Ù. Æ®·¹ÀÌ°¡ ÀÌ¹Ì ¿Ã¹Ù¸¥ »óÅ¿¡ ÀÖ´Ù¸é (¿­·Á Àְųª ¶Ç´Â ´ÝÇô Àְųª), ErrorLevelÀº 0ÀÌ ¼³Á¤µË´Ï´Ù (Áï, "¿¡·¯ ¾øÀ½").

+

Drive Eject ³×Æ®¿öÅ© µå¶óÀ̺곪 CD/DVD µå¶óÀ̺갡 ¾Æ´Ï¸é ÀÛµ¿ÇÏÁö ¾Ê½À´Ï´Ù. ½ÇÆÐÇϸé, ErrorLevel¿¡ 1ÀÌ ¼³Á¤µË´Ï´Ù.

+

+ÀÌÀüÀÇ Æ®·¹ÀÌ »óŸ¦ ŽÁöÇÏ´Â °Íµµ °¡´ÉÇÕ´Ï´Ù. ¸í·É¾î°¡ ¿Ï·á¿¡ ¼ÒºñµÇ´Â ½Ã°£À» ÃøÁ¤ÇØ º¸¸é ¾Ð´Ï´Ù. ¿¹¸¦ µé¾î, ´ÙÀ½ ÇÖÅ°´Â Æ®·¹ÀÌ°¡ ¹Ý´ë »óÅ°¡ µÇµµ·Ï Åä±ÛÇÕ´Ï´Ù:

+
#c::
+Drive, Eject
+; ¸í·É¾î°¡ »¡¸® ¿Ï·áµÇ¾ú´Ù¸é, Æ®·¹ÀÌ´Â ¾Æ¸¶µµ ÀÌ¹Ì ²¨³»Á® ÀÖÀ» °ÍÀÔ´Ï´Ù.
+; ±× °æ¿ì ´Ù½Ã ³Ö½À´Ï´Ù:
+if A_TimeSinceThisHotkey < 1000  ; ÇÊ¿äÇϸé ÀÌ ½Ã°£À» Á¶ÀýÇÕ´Ï´Ù.
+    Drive, Eject,, 1
+return
+

+CD³ª DVD µå¶óÀ̺êÀÇ ¹Ìµð¾îÀÇ »óŸ¦ °áÁ¤ÇÏ·Á¸é (¿¬ÁÖ, Á¤Áö, ¿­¸², µîµî), DriveGetÀ» ÂüÁ¶ÇϽʽÿÀ.

+ +

ErrorLevel

+

+[v1.1.04+] ÀÌ ¸í·É¾î´Â ½ÇÆнà ¿¹¿Ü¸¦ ´øÁú ¼ö ÀÖ½À´Ï´Ù. ´õ ÀÚ¼¼ÇÑ Á¤º¸´Â ½ÇÇà½Ã°£ ¿¡·¯¸¦ ÂüÁ¶ÇϽʽÿÀ.

+

ErrorLevelÀº ¹®Á¦°¡ ÀÖÀ¸¸é 1 ¾øÀ¸¸é 0ÀÌ ¼³Á¤µË´Ï´Ù.

+ +

³íÆò

+

+´ÙÀ½Àº ¶Ç´Ù¸¥ ²¨³»±â ¹æ¹ýÀÔ´Ï´Ù. CD/DVD ¸»°íµµ ´Ù¸¥ À¯ÇüÀÇ ¹Ìµð¾î/ÀåÄ¡¿¡µµ ÀÛµ¿ÇÕ´Ï´Ù:

+ +
; ¿øÇÏ´Â µå¶óÀÌºê ±âÈ£¿¡ ÀÏÄ¡½ÃÅ°·Á¸é ¾Æ·¡ÀÇ Ã¹ ÁÙÀ» °»½ÅÇϽʽÿÀ (±× ¾Æ·¡ ´Ù¸¥ ÁÙÀº ¸ðµÎ ¹«½ÃÇصµ ÁÁ½À´Ï´Ù).
+Driveletter = I:  ; ¿©±â¿¡ ²¨³»°í ½ÍÀº µå¶óÀÌºê ±âÈ£¸¦ ¼³Á¤ÇϽʽÿÀ.
+
+hVolume := DllCall("CreateFile"
+    , Str, "\\.\" . Driveletter
+    , UInt, 0x80000000 | 0x40000000  ; GENERIC_READ | GENERIC_WRITE
+    , UInt, 0x1 | 0x2  ; FILE_SHARE_READ | FILE_SHARE_WRITE
+    , UInt, 0
+    , UInt, 0x3  ; OPEN_EXISTING
+    , UInt, 0, UInt, 0)
+if hVolume <> -1
+{
+    DllCall("DeviceIoControl"
+        , UInt, hVolume
+        , UInt, 0x2D4808   ; IOCTL_STORAGE_EJECT_MEDIA
+        , UInt, 0, UInt, 0, UInt, 0, UInt, 0
+        , UIntP, dwBytesReturned  ; Unused.
+        , UInt, 0)
+    DllCall("CloseHandle", UInt, hVolume)
+}
+ +

°ü·Ã Ç׸ñ

+

DriveGet, DriveSpaceFree

+ +

¿¹Á¦

+
Drive, Label, D:, BackupDrive
+Drive, Eject,, 1 ; ±âº» CD ¶Ç´Â DVD µå¶óÀ̺êÀÇ Æ®·¹À̸¦ ´Ý½À´Ï´Ù(³Ö½À´Ï´Ù).
+ + + diff --git a/src/docs/commands/DriveGet.htm b/src/docs/commands/DriveGet.htm new file mode 100644 index 0000000..9a0330f --- /dev/null +++ b/src/docs/commands/DriveGet.htm @@ -0,0 +1,112 @@ + + + + +DriveGet + + + + + + + +

DriveGet

+ +

ÄÄÇ»ÅÍ µå¶óÀ̺꿡 °üÇÏ¿© ´Ù¾çÇÑ À¯ÇüÀÇ Á¤º¸¸¦ ¿­¶÷ÇÕ´Ï´Ù.

+ +
DriveGet, OutputVar, Cmd [, Value]
+

¸Å°³º¯¼ö

+
+ +
OutputVar
+

CmdÀÇ °á°ú¸¦ ÀúÀåÇÒº¯¼öÀÇ À̸§.

+ +
Cmd, Value
+
¾Æ·¡ ¸®½ºÆ® ÂüÁ¶ +
+ +
+ +

Cmd, Value

+

+Cmd¿Í Value ¸Å°³º¯¼ö´Â ¼­·Î ÀÇÁ¸ÀûÀÔ´Ï´Ù. ±×ÀÇ »ç¿ë¹ýÀº ¾Æ·¡¿¡ ±â¼úÇÕ´Ï´Ù. ¹®Á¦¸¦ ¸¸³ª¸é OutputVar°¡ ºñ¿öÁö°í ErrorLevel¿¡ 1ÀÌ ¼³Á¤µË´Ï´Ù.

+

+List [, Type]: OutputVar¿¡ ±âÈ£·Î ±¸¼ºµÈ ¹®ÀÚ¿­À» ¼³Á¤ÇÕ´Ï´Ù. °¢ ±âÈ£ Çϳª°¡ ½Ã½ºÅÛ¿¡ ÀÖ´Â µå¶óÀ̺긦 ³ªÅ¸³À´Ï´Ù. ¿¹¸¦ µé¾î: ACDEZ. ¸¸¾à TypeÀÌ »ý·«µÇ¸é, ¸ðµç µå¶óÀ̺ê À¯ÇüÀÌ ¿­¶÷µË´Ï´Ù. ±×·¸Áö ¾ÊÀ¸¸é, TypeÀÌ ¹Ýµå½Ã ´ÙÀ½ Áß Çϳª¸¦ ÁöÁ¤ÇØ¾ß ¿ÀÁ÷ ±× ƯÁ¤ÇÑ µå¶óÀ̺길 ¿­¶÷ÇÒ ¼ö ÀÖ½À´Ï´Ù: CDROM, REMOVABLE, FIXED, NETWORK, RAMDISK, UNKNOWN.

+

+Capacity (¶Ç´Â Cap), Path: Path (¿¹, C:\)ÀÇ ÃÑ ¿ë·®À» ¸Þ°¡¹ÙÀÌÆ® ´ÜÀ§·Î ¿­¶÷ÇÕ´Ï´Ù. ºó °ø°£À» ¾Ë¾Æ³»·Á¸é DriveSpaceFree¸¦ »ç¿ëÇϽʽÿÀ.

+

+Filesystem (¶Ç´Â FS), Drive: DriveÀÇ ÆÄÀÏ ½Ã½ºÅÛ À¯ÇüÀ» ¿­¶÷ÇÕ´Ï´Ù. Drive´Â µå¶óÀÌºê ±âÈ£¿Í ´ÙÀ½¿¡ ½ÖÁ¡ ±×¸®°í ¼±ÅÃÀûÀ¸·Î ¿ª»ç¼±À¸·Î ±¸¼ºµÇ°Å³ª, ¶Ç´Â \\server1\share1°ú °°Àº UNC À̸§ÀÔ´Ï´Ù. OutputVar´Â ´ÙÀ½ ´Ü¾î Áß Çϳª°¡ ¼³Á¤µË´Ï´Ù: FAT, FAT32, NTFS, CDFS (ÀüÇüÀûÀ¸·Î CD¸¦ °¡¸®Å´), UDF (ÀüÇüÀûÀ¸·Î DVD¸¦ °¡¸®Å´). µå¶óÀ̺꿡 Æ÷¸ËµÈ ¹Ìµð¾î°¡ µé¾î ÀÖÁö ¾ÊÀ¸¸é OutputVar´Â ºñ¿öÁö°í ErrorLevelÀº 1ÀÌ ¼³Á¤µË´Ï´Ù.

+

+Label, Drive: DriveÀÇ º¼·ý ¶óº§À» ¿­¶÷ÇÕ´Ï´Ù. Drive´Â µå¶óÀÌºê ±âÈ£¿Í ´ÙÀ½¿¡ ½ÖÁ¡ ±×¸®°í ¼±ÅÃÀûÀ¸·Î ¿ª»ç¼±À¸·Î ±¸¼ºµÇ°Å³ª, ¶Ç´Â \\server1\share1°ú °°Àº UNC À̸§ÀÔ´Ï´Ù. ¶óº§À» º¯°æÇÏ·Á¸é, ´ÙÀ½ ¿¹Á¦¸¦ µû¸£½Ê½Ã¿À: Drive, Label, C:, MyLabel.

+

+Serial, Drive: ½ÊÁø Á¤¼ö·Î Ç¥ÇöµÈ DriveÀÇ ÀÏ·Ã ¹øÈ£¸¦ ¿­¶÷ÇÕ´Ï´Ù. Drive´Â µå¶óÀÌºê ±âÈ£¿Í ´ÙÀ½¿¡ ½ÖÁ¡ ±×¸®°í ¼±ÅÃÀûÀ¸·Î ¿ª»ç¼±À¸·Î ±¸¼ºµÇ°Å³ª, ¶Ç´Â \\server1\share1°ú °°Àº UNC À̸§ÀÔ´Ï´Ù. ½ÊÀ°Áø¼ö·Î ¹Ù²Ù´Â ¹æ¹ýÀº SetFormatÀ» ÂüÁ¶ÇϽʽÿÀ.

+

+Type, Path: PathÀÇ µå¶óÀ̺ê À¯ÇüÀ» ¿­¶÷ÇÕ´Ï´Ù. ´ÙÀ½ ´Ü¾î Áß ÇϳªÀÔ´Ï´Ù: Unknown, Removable, Fixed, Network, CDROM, RAMDisk.

+

+Status, Path: PathÀÇ »óŸ¦ ¿­¶÷ÇÕ´Ï´Ù. ´ÙÀ½ ´Ü¾î Áß ÇϳªÀÔ´Ï´Ù: Unknown (unformatted/RAW¸¦ °¡¸®Å³ ¼öµµ ÀÖÀ½), Ready, NotReady (ÀüÇüÀûÀ¸·Î À̵¿½Ä µå¶óÀ̺꿡 ¹Ìµð¾î°¡ ¾ø´Â °æ¿ì), Invalid (Path°¡ Á¸ÀçÇÏÁö ¾Ê°Å³ª ÇöÀç Á¢±ÙÇÒ ¼ö ¾ø´Â ³×Æ®¿öÅ© µå¶óÀ̺êÀ̰ųª, µîµî.)

+

+StatusCD [, Drive]: CD ¶Ç´Â DVD µå¶óÀ̺êÀÇ »óŸ¦ ¿­¶÷ÇÕ´Ï´Ù. Drive´Â µå¶óÀÌºê ±âÈ£¿Í ½ÖÁ¡À¸·Î ±¸¼ºµË´Ï´Ù (Drive¸¦ »ý·«Çϸé, ±âº» CD/DVD µå¶óÀ̺갡 »ç¿ëµË´Ï´Ù). »óŸ¦ ¾Ë¾Æ³¾ ¼ö ¾øÀ¸¸é OutputVar´Â ºñ¿öÁý´Ï´Ù. ±×·¸Áö ¾ÊÀ¸¸é ´ÙÀ½ ¹®ÀÚ¿­ Áß Çϳª°¡ ¼³Á¤µË´Ï´Ù:

+ + + + + + + + + + + + + + + + + + + + + + + + + +
not readyµå¶óÀ̺꿡 Á¢±ÙÇÒ Áغñ°¡ µÇÁö ¾Ê¾Ò½À´Ï´Ù. ¾Æ¸¶µµ ¾²±â ÀÛ¾÷ ÁßÀÏ ¼ö ÀÖ½À´Ï´Ù. ¾Ë·ÁÁø ÇÑ°è: "not ready"´Â ¶ÇÇÑ µå¶óÀ̺꿡 CD°¡ ¾Æ´Ï¶ó DVD°¡ µé¾î ÀÖ´Â °æ¿ì¿¡µµ ÀϾ´Ï´Ù.
openµå¶óÀ̺꿡 µð½ºÅ©°¡ ¾ø°Å³ª, Æ®·¹ÀÌ°¡ »çÃâµÇ¾î ÀÖ½À´Ï´Ù.
playingµå¶óÀ̺갡 µð½ºÅ©¸¦ ¿¬ÁÖ ÁßÀÔ´Ï´Ù.
pausedÀÌÀü¿¡ ¿¬ÁÖ ÁßÀÌ´ø ¿Àµð¿À ¶Ç´Â ºñµð¿À°¡ ÇöÀç Á¤ÁöµÇ¾î ÀÖ½À´Ï´Ù.
seekingµå¶óÀ̺긦 Ž»ö ÁßÀÔ´Ï´Ù.
stoppedµå¶óÀ̺꿡 CD°¡ µé¾î ÀÖÁö¸¸ ÇöÀç Á¢±ÙÇÏÁö ¸øÇÕ´Ï´Ù.
+

+ÀÌ ¸í·É¾î´Â ¾Æ¸¶µµ ³×Æ®¿öÅ© µå¶óÀ̺곪 ºñ-CD/DVD µå¶óÀ̺꿡¼­´Â ÀÛµ¿ÇÏÁö ¾ÊÀ» °ÍÀÔ´Ï´Ù; ±×·± °æ¿ì ¶Ç´Â ´Ù¸¥ ¾î¶² ÀÌÀ¯·Î ½ÇÆÐÇϸé, OutputVar´Â ºñ¿öÁö°í ErrorLevelÀº 1ÀÌ ¼³Á¤µË´Ï´Ù.

+

+Æ®·¹ÀÌ°¡ ÃÖ±Ù¿¡ ´ÝÇû´Ù¸é, ¸í·É¾î°¡ ¿Ï·áÇÏ·Á¸é Á» ½Ã°£ÀÌ °É¸± ¼ö ÀÖ½À´Ï´Ù.

+

+Æ®·¹À̸¦ »©°Å³ª ³ÖÀ¸·Á¸é, Drive ¸í·É¾î¸¦ ÂüÁ¶ÇϽʽÿÀ.

+ +

ErrorLevel

+

+[v1.1.04+] ÀÌ ¸í·É¾î´Â ½ÇÆнà ¿¹¿Ü¸¦ ´øÁú ¼ö ÀÖ½À´Ï´Ù. ´õ ÀÚ¼¼ÇÑ Á¤º¸´Â ½ÇÇà½Ã°£ ¿¡·¯¸¦ ÂüÁ¶ÇϽʽÿÀ.

+

+¹®Á¦°¡ ÀÖ¾úÀ¸¸é ErrorLevel¿¡ 1ÀÌ ¼³Á¤µÇ°í ±×·¸Áö ¾ÊÀ¸¸é 0ÀÌ ¼³Á¤µË´Ï´Ù.

+ +

³íÆò

+

+¾î¶² ¸í·É¾î´Â ³×Æ®¿öÅ© °øÀ¯ À̸§À» °æ·Î(Path)·Î ¹Þ½À´Ï´Ù. ¿¹, \\MyServer\MyShare\

+ +

°ü·Ã Ç׸ñ

+

+Drive, DriveSpaceFree

+ +

¿¹Á¦

+
; ´ÙÀ½Àº ÀÛµ¿ÇÏ´Â ½ºÅ©¸³Æ®ÀÔ´Ï´Ù.
+FileSelectFolder, folder, , 3, ºÐ¼®ÇÒ µå¶óÀ̺긦 °í¸£½Ê½Ã¿À:
+if folder =
+    return
+DriveGet, list, list
+DriveGet, cap, capacity, %folder%
+DrivespaceFree, free, %folder%
+DriveGet, fs, fs, %folder%
+DriveGet, label, label, %folder%
+DriveGet, serial, serial, %folder%
+DriveGet, type, type, %folder%
+DriveGet, status, status, %folder%
+MsgBox All Drives: %list%`nSelected Drive: %folder%`nDrive Type: %type%`nStatus: %status%`nCapacity: %cap% M`nFree Space: %free% M`nFilesystem: %fs%`nVolume Label: %label%`nSerial Number: %serial%
+ + + diff --git a/src/docs/commands/DriveSpaceFree.htm b/src/docs/commands/DriveSpaceFree.htm new file mode 100644 index 0000000..f4d06f0 --- /dev/null +++ b/src/docs/commands/DriveSpaceFree.htm @@ -0,0 +1,37 @@ + + + + +DriveSpaceFree + + + + + + + +

DriveSpaceFree

+ +

µå¶óÀ̺êÀÇ ¿©À¯ °ø°£À» ¸Þ°¡¹ÙÀÌÆ® ´ÜÀ§·Î ¿­¶÷ÇÕ´Ï´Ù.

+ +
DriveSpaceFree, OutputVar, Path
+

¸Å°³º¯¼ö

+
+ +
OutputVar
+

°á°ú¸¦ ÀúÀåÇÒ º¯¼ö, ¿ÂÀüÇÑ ¼ýÀÚ¿¡ °¡Àå °¡±õ°Ô ¹Ý³»¸²µË´Ï´Ù.

+ +
path
+

Á¤º¸¸¦ ¼ö½ÅÇÒ µå¶óÀÌºê °æ·Î. NTFS´Â º¼·ý ¸¶¿îÆ®¿Í µð·ºÅ丮 ¿¬°áÀ» Áö¿øÇϹǷÎ, °°Àº "µå¶óÀ̺ê" ÀÏ Áö¶óµµ ¾î¶² °æ¿ì´Â Æú´õ¸¶´Ù ¿©À¯ °ø°£À» ´Ù¸£°Ô º¸°íÇÒ ¼ö ÀÖ½À´Ï´Ù.

+ +
+ +

³íÆò

+

OutputVar´Â ¸Þ°¡¹ÙÀÌÆ® ´ÜÀ§·Î µð½ºÅ© ¿©À¯ °ø°£ÀÇ ¾çÀÌ ¼³Á¤µË´Ï´Ù (°¡±î¿î ¸Þ°¡¹ÙÀÌÆ®·Î ¹Ý³»¸²µË´Ï´Ù).

+

°ü·Ã Ç׸ñ

+

Drive, DriveGet

+

¿¹Á¦

+
DriveSpaceFree, FreeSpace, c:\
+ + + diff --git a/src/docs/commands/Edit.htm b/src/docs/commands/Edit.htm new file mode 100644 index 0000000..33398dc --- /dev/null +++ b/src/docs/commands/Edit.htm @@ -0,0 +1,83 @@ + + + + +Edit + + + + + + + +

Edit

+ +

ÇöÀç ½ºÅ©¸³Æ®¸¦ ¿¬°üµÈ ÆíÁý±â¿¡ ¿­¾î ÆíÁýÇÕ´Ï´Ù.

+ +
Edit
+

Edit ¸í·É¾î´Â ÇöÀç ½ºÅ©¸³Æ®¸¦ ¿­¾î ÆíÁýÇÕ´Ï´Ù. ·¹Áö½ºÆ®¸®ÀÇ "edit" ¸í·É¾î¸¦ »ç¿ëÇÕ´Ï´Ù. (¾Æ¹«°Íµµ ÁöÁ¤µÇ¾î ÀÖÁö ¾ÊÀ¸¸é Notepad¸¦ »ç¿ëÇÔ). +±×·¸Áö¸¸, ÆíÁý±â â¿¡ ÀÌ¹Ì ÇØ´ç ½ºÅ©¸³Æ®°¡ ¿­·Á ÀÖ´Â °Í °°À¸¸é (±×ÀÇ Ã¢ Á¦¸ñÀ» º¸°í À¯ÃßÇÔ), »õ ÆíÁý±â ½Çü¸¦ ¿©´Â ´ë½Å¿¡ ±× âÀÌ È°¼ºÈ­µË´Ï´Ù.

+

ÀÌ ¸í·É¾î´Â ÄÄÆÄÀÏµÈ ½ºÅ©¸³Æ® ¾È¿¡¼­ ½ÇÇàÇÏ¸é ¾Æ¹« È¿°ú°¡ ¾ø½À´Ï´Ù.

+

°ü·ÃÇؼ­ ÇÑ ¸¶µð ÇÏÀÚ¸é, ¿ÀÅäÇÖÅ° ¹®¹ý °­Á¶´Â ´Ù¾çÇÑ ÆíÁý±â¿¡¼­ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù - ¾Æ·¡¸¦ ÂüÁ¶ÇϽʽÿÀ. +°Ô´Ù°¡, ÆíÁý±â¿¡¼­ ¿ÀÅäÇÖÅ° ¸í·É¾î¿¡ ´ëÇÑ ¹®¸Æ °¨Áö µµ¿ò¸»Àº ´ÙÀ½ ¿¹Á¦¸¦ ÅëÇÏ¿© È°¼ºÈ­ÇÒ ¼ö ÀÖ½À´Ï´Ù. +¸¶Áö¸·À¸·Î, ¿©·¯ºÐÀÇ »ý»ê¼ºÀ» °³¼±ÇÒ ¼ö ÀÖ½À´Ï´Ù. ISense¿Í °°Àº ÀÚµ¿-¿Ï¼º ±â´ÉÀ» »ç¿ëÇϸé ÁÁ½À´Ï´Ù. ÀÌ ±â´ÉÀº °ÅÀÇ ¸ðµç ÆíÁý±â¿¡¼­ ÀÛµ¿ÇÕ´Ï´Ù. + ŸÀÚÇÏ´Â °ÍÀ» ÁöÄÑ º¸´Ù°¡ ¸Þ´º¿Í ¸Þ°³º¯¼ö ¸ñ·ÏÀ» º¸¿©ÁÝ´Ï´Ù. ´öºÐ¿¡ ŸÀÚ ¼ö¸¦ Àý¾àÇÒ ¼ö ÀÖ°í ¸Å°³º¯¼öÀÇ ¼ø¼­¸¦ ±â¾ïÇÏ´Â µ¥¿¡µµ µµ¿òÀÌ µË´Ï´Ù.

+ +

°ü·Ã Ç׸ñ

+

Reload

+

¿¹Á¦

+
Edit ; ÆíÁýÀ» À§ÇØ ½ºÅ©¸³Æ®¸¦ ¿±´Ï´Ù.
+
; ÆíÁý±âÀÇ ¸í·É ÁÙ »ç¿ë¹ýÀÌ ´ÙÀ½°ú °°´Ù¸é,
+; ÀÌ ½ºÅ©¸³Æ®¸¦ »ç¿ëÇÏ¿© ahk ÆÄÀÏÀ» À§ÇÑ ±âº» ÆíÁý±â·Î ¼³Á¤ÇÒ ¼ö ÀÖ½À´Ï´Ù:
+;
+;   Editor.exe "Full path of script.ahk"
+;
+; ½ºÅ©¸³Æ®¸¦ ½ÇÇàÇϸé,
+; ÆíÁý±âÀÇ ½ÇÇà ÆÄÀÏÀ» ¼±ÅÃÇ϶ó°í ¿ä±¸ÇÕ´Ï´Ù.
+;
+FileSelectFile Editor, 2,, ÆíÁý±â¸¦ ¼±ÅÃÇϽʽÿÀ, Programs (*.exe)
+if ErrorLevel
+    ExitApp
+RegWrite REG_SZ, HKCR, AutoHotkeyScript\Shell\Edit\Command,, "%Editor%" "`%1"
+ +

¿ÀÅäÇÖÅ°¸¦ Áö¿øÇÏ´Â ÆíÁý±â

+

SciTE4AutoHotkey´Â SciTE¶ó°í ºÒ¸®¿ì´Â ÆíÁý±â¸¦ AutoHotkey½ºÅ©¸³Æ®¸¦ À§ÇØ Æ¯º°È÷ Àç´ÜÇÑ ¹öÀüÀÔ´Ï´Ù. ´ÙÀ½°ú °°Àº Ư¡ÀÌ ÀÖ½À´Ï´Ù:

+ +

SciTE4AutoHotkey´Â ´ÙÀ½¿¡¼­ ¾òÀ» ¼ö ÀÖ½À´Ï´Ù: http://fincs.ahk4.net/scite4ahk/

+

¿ÀÅäÇÖÅ° ±¸¹® °­Á¶¸¦ »ç¿ëÇÒ ¼ö ÀÖ´Â ´Ù¸¥ ÆíÁý±â´Â ¾Æ·¡¿Í °°½À´Ï´Ù:

+ +

Ãß°¡·Î, AutoHotkey Basic (http://www.autohotkey.com/download/)ÀÇ ¾ÐÃà ÆÄÀÏÀ» ³»·Á ¹Þ¾Æ º¸¸é ´ÙÀ½°ú °°Àº ÆíÁý±â¿¡¼­ ±¸¹® °­Á¶¸¦ È°¼ºÈ­½ÃÄÑ ÁÖ´Â ÆÄÀϵéÀÌ µé¾î ÀÖ½À´Ï´Ù. ±×·¸Áö¸¸, ÀÌ ÆÄÀϵéÀº ½ÉÇÏ°Ô ±âÇÑÀÌ ¿À·¡ µÇ¾ú°í Àß ÀÛµ¿ÇÏÁö ¾ÊÀ» ¼öµµ ÀÖ½À´Ï´Ù:

+ +

¿©·¯ºÐÀÇ ÆíÁý±â°¡ ¸ñ·Ï¿¡ ¾ø´Ù¸é, Æ÷·³À» °Ë»öÇؼ­ ¿©·¯ºÐÀÇ ¿îÀ» ½ÃÇèÇØ º¸½Ê½Ã¿À.

+

ÀÌ ÆäÀÌÁö¿¡ Ãß°¡µÈ ÆíÁý±â¸¦ ¾òÀ¸·Á¸é, Æ÷·³À» ÅëÇÑ Lexikos ¶Ç´Â GitHub¸¦ ¹æ¹®ÇØ º¸½Ê½Ã¿À.

+ + + diff --git a/src/docs/commands/Else.htm b/src/docs/commands/Else.htm new file mode 100644 index 0000000..e8fb57f --- /dev/null +++ b/src/docs/commands/Else.htm @@ -0,0 +1,80 @@ + + + + +Else + + + + + + + +

Else

+ +

+IF-¼­¼ú¹®ÀÌ FALSE·Î Æò°¡µÇ¸é ¼öÇàÇÒ ¸ê·É¾î¸¦ ÁöÁ¤ÇÕ´Ï´Ù. Çϳª ÀÌ»óÀÇ ¸í·É¾î°¡ Á¸ÀçÇϸé, ºí·Ï ¾È¿¡ (È°°ýÈ£) ½Î ³ÖÀ¸½Ê½Ã¿À.

+ +
Else
+ +

³íÆò

+

+ELSE¸¦ »ç¿ëÇÏ¸é ¹Ù·Î À§ÀÇ IF-¼­¼ú¹®¿¡ ¼ÓÇÕ´Ï´Ù (¿¬°üµË´Ï´Ù). ELSE´Â ¾ðÁ¦³ª À§ÂÊÀ¸·Î °¡Àå °¡±î¿î IF-¼­¼ú¹®¿¡ ¼ÓÇÕ´Ï´Ù. ´Ü, ºí·ÏÀ» »ç¿ëÇÏ¿© ±× ÇàÀ§¸¦ ¹Ù²Û °æ¿ì´Â Á¦¿ÜÇÕ´Ï´Ù.

+

+ELSE ´ÙÀ½¿¡ ¹Ù·Î °°Àº ÁÙ¿¡ ¸í·É¾î Çϳª°¡ µû¶ó¿Ã ¼ö ÀÖ½À´Ï´Ù. ÀÌ°ÍÀº "else if" »ç´Ù¸®¿¡ °¡Àå ¸¹ÀÌ »ç¿ëµË´Ï´Ù (¾Æ·¡ÀÇ ¿¹Á¦¸¦ ÂüÁ¶ÇϽʽÿÀ).

+

+IF ¶Ç´Â ELSE°¡ ÇÑ ÁÙ ÀÌ»óÀ» ¼ÒÀ¯Çϸé, ±×·± ÁÙÀº È°°ýÈ£·Î µÑ·¯ ½Î¾ß ÇÕ´Ï´Ù. ±×·¸Áö¸¸, ÇÑ ÁÙ¸¸ IF ¶Ç´Â ELSE¿¡ ¼ÓÇØ ÀÖ´Ù¸é, È°°ýÈ£´Â ¼±ÅÃÀûÀÔ´Ï´Ù. ¿¹¸¦ µé¾î:

+ +
if count > 0  ; ´ÙÀ½ ÁÙ¿¡ °ýÈ£°¡ ÇÊ¿ä ¾ø½À´Ï´Ù. ¿Ö³ÄÇϸé ÇÑ ÁÙ¸¸ Àֱ⠶§¹®ÀÔ´Ï´Ù.
+    MsgBox ÇÁ·Î¼¼½º¸¦ ½ÃÀÛÇÏ·Á¸é OK¸¦ ´©¸£½Ê½Ã¿À.
+else  ; ¾Æ·¡ ¼½¼Ç¿¡´Â È°°ýÈ£¸¦ ¹Ýµå½Ã µÑ·¯¾ß ÇÕ´Ï´Ù. ¿Ö³ÄÇϸé ÇÑ ÁÙ ÀÌ»óÀ¸·Î ±¸¼ºµÇ¾î Àֱ⠶§¹®ÀÔ´Ï´Ù.
+{
+    WinClose Untitled - Notepad
+    MsgBox Ç׸ñÀÌ Çϳªµµ ¾ø½À´Ï´Ù.
+}
+

+One True Brace (OTB) ½ºÅ¸ÀÏÀº ¼±ÅÃÀûÀ¸·Î "else" µÑ·¹¿¡ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î:

+
if IsDone {
+    ...
+} else if (x < y) {
+    ...
+} else {
+    ...
+}
+ +

°ü·Ã Ç׸ñ

+

+Blocks ÂüÁ¶. ¶Ç, IF-¸í·É¾î¸¶´Ù ELSE¸¦ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. ¿©±â¿¡´Â IfWinActive, IfWinExist, IfMsgBox, IfInString, IfBetween, IfIn, IF, ±×¸®°í IF (expression)°¡ Æ÷ÇԵ˴ϴÙ.

+ +

¿¹Á¦

+
IfWinExist, Untitled - Notepad
+{
+    WinActivate
+    Send This is a test.{Enter}
+}
+else
+{
+    WinActivate, Some Other Window
+    MouseClick, left, 100, 200
+}
+
+if x = 1
+    Gosub, a1
+else if x = 2 ; "else if" ½ºÅ¸ÀÏ
+    Gosub, a2
+else IfEqual, x, 3 ; ´ë¾È ½ºÅ¸ÀÏ
+{
+    Gosub, a3
+    Sleep, 1
+}
+else Gosub, a4  ; Áï, ¸í·É¾î°¡ Çϳª¸¸ ÀÖÀ¸¸é  ELSE¿Í °°Àº ÁÙ¿¡ ÀÖÀ» ¼ö ÀÖ½À´Ï´Ù.
+ 
+; Also OK:
+IfEqual, y, 1, Gosub, b1
+else {
+    Sleep, 1
+    Gosub, b2
+}
+ + + diff --git a/src/docs/commands/EnvAdd.htm b/src/docs/commands/EnvAdd.htm new file mode 100644 index 0000000..6443fed --- /dev/null +++ b/src/docs/commands/EnvAdd.htm @@ -0,0 +1,66 @@ + + + + +EnvAdd + + + + + + + +

EnvAdd

+ +

+ÁÖ¾îÁø °ªÀ» ÀڽŰú ÇÕÇØ º¯¼ö¿¡ ¼³Á¤ÇÕ´Ï´Ù +(³¯Â¥-½Ã°£ °ªÀ¸·ÎºÎÅÍ ½Ã°£À» ´õÇϰųª »¬ ¼öµµ ÀÖ½À´Ï´Ù). +´ÙÀ½°ú µ¿µîÇÕ´Ï´Ù: var += value.

+ +
EnvAdd, Var, Value [, TimeUnits]
+Var += Value [, TimeUnits]
+Var++
+

Parameters

+
+ +
Var
+

¿¬»êÀ» ÇÒ º¯¼öÀÇ À̸§.

+ +
Value
+

Á¤¼ö, ºÎµ¿ ¼Ò¼öÁ¡ ¼ö, ¶Ç´Â Ç¥Çö½Ä.

+ +
TimeUnits
+

Á¸ÀçÇϸé, ÀÌ ¸Å°³º¯¼ö´Â ¸í·É¾î¸¦ ¹æÇâ Àüȯ ½ÃÄѼ­ Value¸¦ Var¿¡ ´õÇϵµ·Ï ¸¸µì´Ï´Ù. Var¸¦ YYYYMMDDHH24MISS Çü½ÄÀÇ ³¯Â¥-½Ã°£ µµÀåÀ¸·Î Ãë±ÞÇÏ°í Value¸¦ ´õÇÒ Á¤¼ö³ª ºÎµ¿ ¼Ò¼öÁ¡ ¼ö ´ÜÀ§·Î Ãë±ÞÇÕ´Ï´Ù (À½¼ö¸¦ ÁöÁ¤ÇÏ¸é »¬¼ÀÀ» ¼öÇàÇÕ´Ï´Ù). TimeUnitsÀº Seconds, Minutes, Hours, ¶Ç´Â Days (¶Ç´Â ±×³É °¢ ´Ü¾îÀÇ Ã¹ ¹®ÀÚ)°¡ µÉ ¼ö ÀÖ½À´Ï´Ù).

+

+ Var°¡ ºó º¯¼öÀ̸é, ÇöÀç ½Ã°£ÀÌ ´ë½Å »ç¿ëµË´Ï´Ù. Var¿¡ ¹«È¿ÇÑ ½Ã°£µµÀåÀÌ µé¾î Àְųª ³âµµ°¡ 1601³â ÀÌÀüÀÌ°¡³ª, ¶Ç´Â Value°¡ ¼ýÄ¡°¡ ¾Æ´Ï¸é, Var´Â ¹®Á¦¸¦ ³ªÅ¸³»±â À§ÇØ ºñ¿öÁý´Ï´Ù.

+

+ ³»Àå º¯¼ö A_Now´Â ÇöÀç Áö¿ª ½Ã°£ÀÌ YYYYMMDDHH24MISS Çü½ÄÀ¸·Î ´ã±é´Ï´Ù.

+

+ µÎ ½Ã°£µµÀå »çÀÌÀÇ ½Ã°£ÀÇ ¾çÀ» °è»êÇÏ·Á¸é EnvSub¸¦ »ç¿ëÇϽʽÿÀ.

+ +
+ +

³íÆò

+

+ÀÌ ¸í·É¾î´Â ´ÙÀ½ ´ÜÃà ½ºÅ¸ÀÏ°ú µ¿µîÇÕ´Ï´Ù: Var += Value.

+

+º¯¼ö´Â Var++, Var--, ++Var, ¶Ç´Â --Var¸¦ »ç¿ëÇØ 1 ¸¸Å­¾¿ ´Ã°Å³ª ÁÙ ¼ö ÀÖ½À´Ï´Ù.

+

+Var³ª Value°¡ ºñ¾î Àְųª ¼ýÀÚ·Î ½ÃÀÛÇÏÁö ¾ÊÀ¸¸é, °è»êÀÇ ¸ñÀûÀ» À§ÇØ 0À¸·Î °£Áֵ˴ϴ٠(³»ºÎÀûÀ¸·Î Ç¥Çö½Ä¿¡ »ç¿ëµÉ ¶§ ±×¸®°í TimeUnits ¸Å°³º¯¼ö¸¦ »ç¿ëÇÒ ¶§´Â ¿¹¿ÜÀÔ´Ï´Ù).

+

+Var³ª Value¿¡ ¼Ò¼öÁ¡ÀÌ µé¾î ÀÖ´Ù¸é, °á°ú´Â ºÎµ¿ ¼Ò¼öÁ¡ ¼ö°¡ µÇ°í Çü½ÄÀº SetFormat¿¡ ÀÇÇØ ¼³Á¤µË´Ï´Ù.

+ +

°ü·Ã Ç׸ñ

+

+EnvSub, EnvMult, EnvDiv, SetFormat, Ç¥Çö½Ä, If var is [not] type, SetEnv, FileGetTime

+ +

¿¹Á¦

+
EnvAdd, MyCount, 2
+MyCount += 2  ; À§¿Í µ¿µî
+
+var1 =  ; ºñ¿ö¼­ ¾Æ·¡°¡ ´ë½Å ÇöÀç ½Ã°£À» »ç¿ëÇϵµ·Ï ¸¸µì´Ï´Ù.
+var1 += 31, days
+MsgBox, %var1%  ; ´äÀº Áö±ÝºÎÅÍ 31ÀÏ ÈÄ°¡ µÉ °ÍÀÔ´Ï´Ù.
+ + + diff --git a/src/docs/commands/EnvDiv.htm b/src/docs/commands/EnvDiv.htm new file mode 100644 index 0000000..29dff0e --- /dev/null +++ b/src/docs/commands/EnvDiv.htm @@ -0,0 +1,48 @@ + + + + +EnvDiv + + + + + + + +

EnvDiv

+ +

º¯¼ö¿¡ ÀÚ±âÀÚ½ÅÀ» ÁÖ¾îÁø °ªÀ¸·Î ³ª´©¾î ¼³Á¤ÇÕ´Ï´Ù. ´ÙÀ½°ú µ¿ÀÏ: Var /= Value.

+ +
EnvDiv, Var, Value
+

¸Å°³º¯¼ö

+
+ +
Var
+

¿¬»êÀ» ¼öÇàÇÒ º¯¼öÀÇ À̸§.

+ +
Value
+

Á¤¼ö, ºÎµ¿ ¼Ò¼öÁ¡ ¼ö, ¶Ç´Â Ç¥Çö½Ä.

+ +
+ +

³íÆò

+

+ÀÌ ¸í·É¾î´Â ´ÙÀ½ ´ÜÃà ½ºÅ¸ÀÏ°ú µ¿µîÇÕ´Ï´Ù: Var /= Value.

+

+0À¸·Î ³ª´©¸é ½ºÅ©¸³Æ®°¡ ÀûÀçµÉ ¶§¿¡·¯ ¸Þ½ÃÁö âÀÌ ³ªÅ¸³³´Ï´Ù; ±×·¸Áö ¾ÊÀ¸¸é ±× º¯¼ö¸¦ ºñ¿ö¹ö¸³´Ï´Ù.

+

+Var³ª Value°¡ ºñ¾î Àְųª ¼ýÀÚ·Î ½ÃÀÛÇÏÁö ¾ÊÀ¸¸é, °è»êÀ» ¸ñÀûÀ¸·Î 0À¸·Î °£Áֵ˴ϴ٠(Var := X /= Y¿Í °°ÀÌ ³»ºÎÀûÀ¸·Î Ç¥Çö½Ä ¾È¿¡ »ç¿ëµÉ ¶§´Â ¿¹¿ÜÀÔ´Ï´Ù).

+

+Var ¶Ç´Â Value¿¡ ¼Ò¼öÁ¡ÀÌ µé¾î ÀÖÀ¸¸é, ±× °á°ú´Â ºÎµ¿ ¼Ò¼öÁ¡ ¼ö ÀÔ´Ï´Ù. Çü½ÄÀº SetFormatÀ¸·Î ÁöÁ¤µË´Ï´Ù. ±×·¸Áö ¾ÊÀ¸¸é ±× °á°ú´Â Àß·Á ³ª°©´Ï´Ù (¿¹, 19 ³ª´©±â 10Àº 1À» »êÃâÇÕ´Ï´Ù).

+ +

°ü·Ã Ç׸ñ

+

+EnvAdd, EnvSub, EnvMult, SetFormat, Ç¥Çö½Ä, If var is [not] type, SetEnv, ºñÆ®º° ¿¬»ê (º¯Çü)

+ +

¿¹Á¦

+
EnvDiv, MyCount, 2
+MyCount /= 2  ; À§¿Í µ¿µîÇÔ
+ + + diff --git a/src/docs/commands/EnvGet.htm b/src/docs/commands/EnvGet.htm new file mode 100644 index 0000000..0804a74 --- /dev/null +++ b/src/docs/commands/EnvGet.htm @@ -0,0 +1,42 @@ + + + + +EnvGet + + + + + + + +

EnvGet [v1.0.43.08+]

+ +

ȯ°æ º¯¼ö¸¦ ¿­¶÷ÇÕ´Ï´Ù.

+ +
EnvGet, OutputVar, EnvVarName
+

¸Å°³º¯¼ö

+
+ +
OutputVar
+

¹®ÀÚ¿­À» ÀúÀåÇÒ º¯¼ö À̸§.

+ +
EnvVarName
+

¿­¶÷ÇÒ È¯°æ º¯¼öÀÇ À̸§. ¿¹¸¦ µé¾î: EnvGet, OutputVar, Path.

+ +
+

³íÆò

+

+ÁöÁ¤µÈ ȯ°æ º¯¼ö°¡ ºñ¾î Àְųª Á¸ÀçÇÏÁö ¾ÊÀ¸¸é, OutputVar ºñ¿öÁý´Ï´Ù.

+

+¿î¿µ üÁ¦´Â ȯ°æ º¯¼öÀÇ ±æÀ̸¦ 32 KBÀÇ ÅؽºÆ®·Î Á¦ÇÑÇÕ´Ï´Ù.

+ +

°ü·Ã Ç׸ñ

+

+EnvSet, #NoEnv, ȯ°æ º¯¼ö, EnvUpdate, SetEnv, Run, RunWait

+ +

¿¹Á¦

+
EnvGet, OutputVar, LogonServer
+ + + diff --git a/src/docs/commands/EnvMult.htm b/src/docs/commands/EnvMult.htm new file mode 100644 index 0000000..90925a6 --- /dev/null +++ b/src/docs/commands/EnvMult.htm @@ -0,0 +1,45 @@ + + + + +EnvMult + + + + + + + +

EnvMult

+ +

ÁÖ¾îÁø °ªÀ» º¯¼ö¿¡ °öÇØ ±× º¯¼ö¿¡ ´Ù½Ã ¼³Á¤ÇÕ´Ï´Ù. ´ÙÀ½°ú µ¿µî: Var *= Value.

+ +
EnvMult, Var, Value
+

¸Å°³º¯¼ö

+
+ +
Var
+

¿¬»êÀ» ¼öÇàÇÒ º¯¼öÀÇ À̸§.

+ +
Value
+

Á¤¼ö, ºÎµ¿ ¼ö¼öÁ¡ ¼ö, ¶Ç´Â Ç¥Çö½Ä.

+ +
+ +

³íÆò

+

+ÀÌ ¸í·É¾î´Â ´ÙÀ½ ´ÜÃà ½ºÅ¸ÀÏ°ú µ¿µîÇÕ´Ï´Ù: Var *= Value.

+

+Var³ª Value°¡ ºñ¾î Àְųª ¶Ç´Â ¼ýÀÚ·Î ½ÃÀÛÇÏÁö ¾ÊÀ¸¸é, °è»êÀ» À§ÇØ 0À¸·Î °£Áֵ˴ϴ٠(´Ü ³»ºÎÀûÀ¸·Î Ç¥Çö½Ä¿¡ Var := X *= Y¿Í °°ÀÌ »ç¿ëÇÒ °æ¿ì´Â Á¦¿ÜÇÕ´Ï´Ù).

+

+Var³ª Value¿¡ ¼Ò¼öÁ¡ÀÌ Æ÷ÇԵǾî ÀÖÀ¸¸ç, ±× °á°ú´Â ºÎµ¿ ¼Ò¼öÁ¡ ¼ö°¡ µË´Ï´Ù. Çü½ÄÀº SetFormatÀ¸·Î ¼³Á¤µË´Ï´Ù.

+ +

°ü·Ã Ç׸ñ

+

EnvAdd, EnvSub, EnvDiv, SetFormat, Ç¥Çö½Ä, If var is [not] type, SetEnv, ºñÆ®º° ¿¬»ê (º¯Çü)

+ +

¿¹Á¦

+
EnvMult, MyCount, 2 
+MyCount *= 2  ; À§¿Í µ¿µîÇÕ´Ï´Ù
+ + + diff --git a/src/docs/commands/EnvSet.htm b/src/docs/commands/EnvSet.htm new file mode 100644 index 0000000..9767593 --- /dev/null +++ b/src/docs/commands/EnvSet.htm @@ -0,0 +1,50 @@ + + + + +EnvSet + + + + + + + +

EnvSet

+ +

°ªÀ» ȯ°æ º¯¼ö¿¡ ¾¹´Ï´Ù.

+ +
EnvSet, EnvVar, Value
+

¸Å°³º¯¼ö

+
+ +
EnvVar
+
»ç¿ëÇÒ È¯°æ º¯¼öÀÇ À̸§. ¿¹, "COMSPEC" + ¶Ç´Â "PATH".
+ +
Value
+

ȯ°æ º¯¼ö¿¡ ¼³Á¤ÇÒ °ª.

+ +
+

ErrorLevel

+

+[v1.1.04+] ÀÌ ¸í·É¾î´Â ½ÇÆÐ ½Ã¿¡ ¿¹¿Ü¸¦ ´øÁú ¼ö ÀÖ½À´Ï´Ù. ´õ ÀÚ¼¼ÇÑ Á¤º¸´Â ½ÇÇà½Ã°£ ¿¡·¯¸¦ ÂüÁ¶ÇϽʽÿÀ.

+

ErrorLevelÀº ¹®Á¦°¡ ÀÖ´Ù¸é 1 ¾Æ´Ï¸é 0ÀÌ ¼³Á¤µË´Ï´Ù.

+ +

°ü·Ã Ç׸ñ

+

+¿î¿µ üÁ¦´Â °¢ ȯ°æ º¯¼ö¸¦ 32 KBÀÇ ÅؽºÆ®·Î Á¦ÇÑÇÕ´Ï´Ù.

+

+ÀÌ ¸í·É¾î·Î »ý¼ºµÇ°Å³ª º¯°æµÈ ȯ°æ º¯¼ö´Â ½ºÅ©¸³Æ®°¡ Run ¶Ç´Â RunWait¸¦ ÅëÇÏ¿© ½ÇÇàÇÑ ÇÁ·Î±×·¥¿¡¼­¸¸ Á¢±ÙÀÌ °¡´ÉÇÕ´Ï´Ù. ´õ ÀÚ¼¼ÇÑ °ÍÀº ȯ°æ º¯¼ö¸¦ ÂüÁ¶ÇϽʽÿÀ.

+

+ÀÌ ¸í·É¾î´Â SetEnv¿Í º°µµ·Î Á¸ÀçÇÕ´Ï´Ù. ¿Ö³ÄÇϸé Á¤»óÀûÀÎ ½ºÅ©¸³Æ® º¯¼ö´Â ¿î¿µ üÁ¦ÀÇ È¯°æ¿¡ ÀúÀåµÇÁö ¾Ê±â ¶§¹®ÀÔ´Ï´Ù. ¼öÇ༺´ÉÀÌ ¾ÇÈ­µÇ°í OS°¡ ȯ°æ º¯¼ö¸¦ 32 KBÀÇ ±æÀÌ·Î Á¦ÇÑÇϱ⠶§¹®ÀÔ´Ï´Ù.

+ +

°ü·Ã Ç׸ñ

+

+EnvGet, #NoEnv, ȯ°æ º¯¼ö, EnvUpdate, SetEnv, Run, RunWait

+ +

¿¹Á¦

+
EnvSet, AutGUI, º¯¼ö¿¡ ³ÖÀ» ÅؽºÆ®.
+ + + diff --git a/src/docs/commands/EnvSub.htm b/src/docs/commands/EnvSub.htm new file mode 100644 index 0000000..e7b6a8e --- /dev/null +++ b/src/docs/commands/EnvSub.htm @@ -0,0 +1,68 @@ + + + + +EnvSub + + + + + + + +

EnvSub

+ +

ÁÖ¾îÁø °ªÀ» Àڽſ¡¼­ »©¾î º¯¼ö¿¡ ¼³Á¤ÇÕ´Ï´Ù (³¯Â¥-½Ã°£ °ªµµ »¬ ¼ö ÀÖ½À´Ï´Ù). ´ÙÀ½°ú µ¿ÀÏ: Var -= Value.

+ +
EnvSub, Var, Value [, TimeUnits]
+Var -= Value [, TimeUnits]
+Var--
+

¸Å°³º¯¼ö

+
+ +
Var
+

¿¬»êÀ» ¼öÇàÇÒ º¯¼öÀÇ À̸§.

+ +
Value
+

Á¤¼ö, ºÎµ¿ ¼Ò¼öÁ¡ ¼ö, ¶Ç´Â Ç¥Çö½Ä (TimeUnitsÀÌ Á¸ÀçÇϸé Ç¥Çö½ÄÀº Áö¿øÇÏÁö ¾Ê½À´Ï´Ù).

+ +
TimeUnits
+

Á¸ÀçÇϸé, ÀÌ ¸Å°³º¯¼ö´Â ¸í·É¾î¸¦ ¹æÇâÀüȯÇؼ­ Value¸¦ Var·ÎºÎÅÍ »©µµ·Ï ¸¸µì´Ï´Ù. ¸¶Ä¡ µÑ ¸ðµÎ YYYYMMDDHH24MISS Çü½ÄÀÇ ³¯Â¥-½Ã°£ µµÀåÀÎ °Íó·³ °£ÁÖÇÕ´Ï´Ù. TimeUnitsÀº Seconds, Minutes, Hours, ¶Ç´Â Days (¶Ç´Â ±×³É °¢ ´Ü¾îÀÇ Ã¹ ¹®ÀÚ)°¡ µÉ ¼ö ÀÖ½À´Ï´Ù. Value°¡ ºñ¾î ÀÖÀ¸¸é, ÇöÀç ½Ã°£ÀÌ ´ë½Å »ç¿ëµË´Ï´Ù. ºñ½ÁÇÏ°Ô, Var°¡ ºó º¯¼öÀ̸é, ÇöÀç ½Ã°£ÀÌ ´ë½Å »ç¿ëµË´Ï´Ù.

+

+ °á°ú´Â ¾ðÁ¦³ª °¡Àå °¡±î¿î Á¤¼ö·Î ³»¸²µË´Ï´Ù. ¿¹¸¦ µé¾î, µÎ ½Ã°£µµÀå »çÀÌÀÇ ½ÇÁ¦ Â÷ÀÌ°¡ 1.999 ÀÏÀ̸é, 1 ÀÏ·Î º¸°íÇÕ´Ï´Ù. ´õ ³ôÀº Á¤¹Ðµµ°¡ ÇÊ¿äÇϸé, Seconds¸¦ TimeUnits¿¡ ÁöÁ¤ÇÏ°í ±× °á°ú¸¦ 60.0, 3600.0, ¶Ç´Â 86400.0À¸·Î ³ª´©½Ê½Ã¿À.

+

+ Var ¶Ç´Â Value°¡ À¯È¿ÇÏÁö ¾ÊÀº ½Ã°£µµÀåÀ̰ųª 1601 ³â ÀÌÀüÀÇ ³âµµ¸¦ ´ã°í ÀÖÀ¸¸é, Var¸¦ ºñ¿ö¼­ ±× ¹®Á¦¸¦ ³ªÅ¸³À´Ï´Ù.

+

+ ³»Àå º¯¼ö A_Now´Â ÇöÀç Áö¿ª ½Ã°£À» YYYYMMDDHH24MISS Çü½ÄÀ¸·Î ´ã°í ÀÖ½À´Ï´Ù.

+

+ µÎ À̺¥Æ® »çÀÌ¿¡ °æ°úÇÑ ½Ã°£À» Á¤¹ÐÇÏ°Ô Àç°í ½Í´Ù¸é, A_TickCount method¸¦ »ç¿ëÇϽʽÿÀ. ¹Ð¸®ÃÊÀÇ Á¤¹Ðµµ¸¦ Á¦°øÇÕ´Ï´Ù.

+

+ ½Ã°£µµÀåÀ¸·ÎºÎÅÍ ÃÊ, ºÐ, ½Ã°£ ¶Ç´Â ³¯À» »©°Å³ª ´õÇÏ·Á¸é, EnvAdd¸¦ »ç¿ëÇϽʽÿÀ (À½¼ö¸¦ Ãß°¡ÇÏ¸é »¬¼ÀÀ» ÇÒ ¼ö ÀÖ½À´Ï´Ù).
+

+ +
+ +

³íÆò

+

ÀÌ ¸í·É¾î´Â ´ÙÀ½ ´ÜÃà ½ºÅ¸ÀÏ°ú µ¿µîÇÕ´Ï´Ù: Var -= Value.

+

+º¯¼ö¸¦ 1 ¸¸Å­¾¿ ´Ã¸®°í ÁÙÀÌ·Á¸é Var++, Var--, ++Var, ¶Ç´Â --Var¸¦ »ç¿ëÇϽʽÿÀ.

+

+Var ¶Ç´Â Value°¡ ºñ¾î Àְųª ¼ýÀÚ·Î ½ÃÀÛÇÏÁö ¾ÊÀ¸¸é, °è»êÀ» À§ÇÑ ¸ñÀûÀ¸·Î 0À¸·Î Ãë±ÞµË´Ï´Ù (³»ºÎÀûÀ¸·Î Ç¥Çö½Ä¿¡ »ç¿ëÇÒ ¶§ ±×¸®°í TimeUnits ¸Å°³º¯¼ö¸¦ »ç¿ëÇÒ ¶§´Â ¿¹¿ÜÀÔ´Ï´Ù).

+

+Var ¶Ç´Â Value¿¡ ¼Ò¼öÁ¡ÀÌ µé¾î ÀÖÀ¸¸é, °á°ú´Â ºÎµ¿ ¼Ò¼öÁ¡ ¼öÀÔ´Ï´Ù. Çü½ÄÀº SetFormat¿¡ ÀÇÇØ °áÁ¤µË´Ï´Ù.

+ +

°ü·Ã Ç׸ñ

+

+EnvAdd, EnvMult, EnvDiv, SetFormat, Ç¥Çö½Ä, If var is [not] type, SetEnv, FileGetTime

+ +

¿¹Á¦

+
EnvSub, MyCount, 2
+MyCount -= 2  ; À§¿Í µ¿µîÇÕ´Ï´Ù
+
+var1 = 20050126
+var2 = 20040126
+EnvSub, var1, %var2%, days
+MsgBox, %var1%  ; ´äÀº 366ÀÌ µË´Ï´Ù. ¿Ö³ÄÇϸé 2004³âÀº À±³âÀ̱⠶§¹®ÀÔ´Ï´Ù.
+ + + diff --git a/src/docs/commands/EnvUpdate.htm b/src/docs/commands/EnvUpdate.htm new file mode 100644 index 0000000..aed27b7 --- /dev/null +++ b/src/docs/commands/EnvUpdate.htm @@ -0,0 +1,35 @@ + + + + +EnvUpdate + + + + + + + +

EnvUpdate

+ +

OS¿Í ½ÇÇà ÁßÀÎ ¸ðµç ¾îÇÿ¡ ȯ°æ º¯¼ö°¡ º¯Çß´Ù°í °íÁöÇÕ´Ï´Ù.

+ +
EnvUpdate
+ +

ErrorLevel

+

+[v1.1.04+] ÀÌ ¸í·É¾î´Â ½ÇÆÐÇÏ¸é ¿¡·¯¸¦ ´øÁú ¼ö ÀÖ½À´Ï´Ù. ´õ ÀÚ¼¼ÇÑ Á¤º¸´Â Runtime Errors¸¦ ÂüÁ¶ÇϽʽÿÀ.

+

ErrorLevel´Â ¹®Á¦°¡ ÀÖÀ¸¸é 1 ±×·¸Áö ¾ÊÀ¸¸é 0ÀÌ ¼³Á¤µË´Ï´Ù.

+ +

³íÆò

+

+OS ȯ°æÀ» °»½ÅÇÕ´Ï´Ù. ·Î±×¿ÀÇÁ Çß´Ù°¡ ´Ù½Ã ·Î±×¿Â ÇÑ °Í°ú ºñ½ÁÇÑ È¿°ú°¡ ÀÖ½À´Ï´Ù.

+

+¿¹¸¦ µé¾î, ´ÙÀ½ ·¹Áö½ºÆ®¸® Å°¸¦ º¯°æÇÑ ÈÄ¿¡, EnvUpdate¸¦ »ç¿ëÇÏ¸é º¯°æ »çÇ×À» ¹æ¼ÛÇÒ ¼ö ÀÖ½À´Ï´Ù: HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Session Manager\Environment

+

°ü·Ã Ç׸ñ

+

EnvSet, RegWrite

+

¿¹Á¦

+
EnvUpdate
+ + + diff --git a/src/docs/commands/Exit.htm b/src/docs/commands/Exit.htm new file mode 100644 index 0000000..303368c --- /dev/null +++ b/src/docs/commands/Exit.htm @@ -0,0 +1,50 @@ + + + + +Exit + + + + + + + +

Exit

+ +

+ÇöÀç ¾²·¹µå¸¦ Á¾·áÇÕ´Ï´Ù. ¶Ç´Â (½ºÅ©¸³Æ®°¡ ¿µ¼ÓÀûÀÌ ¾Æ´Ï°í ÇÖÅ°°¡ Æ÷ÇԵǾî ÀÖÁö ¾ÊÀ¸¸é) Àüü ½ºÅ©¸³Æ®¸¦ Á¾·áÇÕ´Ï´Ù.

+ +
Exit [, ExitCode]
+

¸Å°³º¯¼ö

+
+ +
ExitCode
+

½ºÅ©¸³Æ®°¡ Á¾·áÇÒ ¶§ È£ÃâÀڷκÎÅÍ ¹ÝȯµÈ -2147483648ºÎÅÍ 2147483647 »çÀÌÀÇ Á¤¼ö (Ç¥Çö½Ä °¡´É). ÀÌ ÄÚµå´Â ±× ½ºÅ©¸³Æ®¸¦ ºÎÈ­ÇÑ ¾î¶² ÇÁ·Î±×·¥µµ ¿¹¸¦ µé¾î, ¶Ç´Ù¸¥ ½ºÅ©¸³Æ® (RunWait¸¦ ÅëÇÏ¿©) ¶Ç´Â ¹èÄ¡ ÆÄÀÏ (.bat)µµ Á¢±ÙÇÒ ¼ö ÀÖ½À´Ï´Ù.. + »ý·«µÇ¸é, ExitCode´Â 0ÀÌ ±âº»°ªÀÔ´Ï´Ù. 0Àº ÀüÅëÀûÀ¸·Î ¼º°øÀ» ³ªÅ¸³»´Â µ¥ »ç¿ëµË´Ï´Ù.

+ +
+ +

³íÆò

+

+½ºÅ©¸³Æ®¿¡ ÇÖÅ°°¡ ¾ø´Ù¸é, ±×¸®°í ¿µ¼ÓÀûÀÌ ¾Æ´Ï¶ó¸é, ±×¸®°í Num/Scroll/CapsLock Å°¸¦ AlwaysOn ¶Ç´Â AlwaysOff »óŸ¦ À¯ÁöÇϵµ·Ï ¿ä±¸ÇÏÁö ¾Ê¾Ò´Ù¸é, ExitÀ» ¸¸³ª¸é ±× Áï½Ã Á¾·áÇÕ´Ï´Ù (´Ü, OnExit ¼­ºê·çƾÀÌ ÀÖ´Ù¸é ¿¹¿ÜÀÔ´Ï´Ù).

+

+±×·¸Áö ¾ÊÀ¸¸é, Exit ¸í·É¾î´Â ÇöÀç ¾²·¹µå¸¦ Á¾·áÇÕ´Ï´Ù. ´Ù¸¥ ¸»·Î, ¸Þ´º³ª ŸÀÌ¸Ó ¶Ç´Â ÇÖÅ° ¼­ºê·çƾÀ¸·ÎºÎÅÍ Á÷Á¢ °£Á¢ÀûÀ¸·Î È£ÃâµÈ ¼­ºê·çƾÀÇ ½ºÅÃÀº ¸¶Ä¡ °¢°¢ ReturnÀ» ¸¸³­ °Íó·³ ¸ðµÎ ÇѲ¨¹ø¿¡ ¹ÝȯµË´Ï´Ù. ExitÀÌ ±×·± ¼­ºê·çƾ ¾È¿¡¼­ Á÷Á¢ »ç¿ëµÇ¸é -- ÀÚ½ÅÀÌ °£Á¢ÀûÀ¸·Î È£ÃâÇÑ ¼­ºê·çƾ ÁßÀÇ Çϳª°¡ ¾Æ´Ï¶ó -- ExitÀº Return°ú µ¿µîÇÕ´Ï´Ù.

+

+ExitApp¸¦ »ç¿ëÇÏ¸é ¿µ¼ÓÀûÀ̰ųª ÇÖÅ°°¡ ÀÖ´Â ½ºÅ©¸³Æ®¸¦ ¿ÏÀüÈ÷ Á¾·áÇÒ ¼ö ÀÖ½À´Ï´Ù.

+ +

°ü·Ã Ç׸ñ

+

+ExitApp, OnExit, Functions, Gosub, Return, Threads, #Persistent

+ +

¿¹Á¦

+
#z::
+Gosub, Sub2
+MsgBox, ÀÌ msgbox´Â EXIT ¶§¹®¿¡ Àý´ë ³ªÅ¸³ªÁö ¾Ê½À´Ï´Ù.
+return
+
+Sub2:
+Exit  ; ÀÌ ¼­ºê·çƾ°ú ´õºÒ¾î È£ÃâÇÑ ¼­ºê·çƾÀ» Á¾·áÇÕ´Ï´Ù.
+ + + diff --git a/src/docs/commands/ExitApp.htm b/src/docs/commands/ExitApp.htm new file mode 100644 index 0000000..0b323d7 --- /dev/null +++ b/src/docs/commands/ExitApp.htm @@ -0,0 +1,38 @@ + + + + +ExitApp + + + + + + + +

ExitApp

+ +

½ºÅ©¸³Æ®¸¦ ¹«Á¶°Ç Á¾·áÇÕ´Ï´Ù.

+ +
ExitApp [, ExitCode]
+

¸Å°³º¯¼ö

+
+ +
ExitCode
+

-2147483648ºÎÅÍ 2147483647 »çÀÌÀÇ Á¤¼ö ( v1.0.48.01+¿¡¼­ Ç¥Çö½Ä °¡´É). ÀÌ °ªÀº ½ºÅ©¸³Æ®°¡ Á¾·áÇÒ È£ÃâÀÚ¿¡°Ô ¹ÝȯµË´Ï´Ù. ÀÌ ÄÚµå´Â ½ºÅ©¸³Æ®¸¦ ºÎÈ­½ÃŲ ¾î´À ÇÁ·Î±×·¥µµ Á¢±ÞÇÒ ¼ö ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î (RunWait¸¦ ÅëÇÑ) ½ºÅ©¸³Æ® ¶Ç´Â ¹èÄ¡ ÆÄÀÏ(.bat). »ý·«Çϸé, ExitCode´Â ±âº»°ªÀ¸·Î 0ÀÌ ¼³Á¤µË´Ï´Ù. ÀüÅëÀûÀ¸·Î 0Àº ¼º°øÀ» ³ªÅ¸³»´Â µ¥ »ç¿ëµË´Ï´Ù.

+ +
+ +

³íÆò

+

½ºÅ©¸³Æ®´Â Áï½Ã Á¾·áÇÕ´Ï´Ù. OnExit ¼­ºê·çƾÀÌ ÀÖ´Â °æ¿ì´Â Á¦¿ÜÀÔ´Ï´Ù. ÀÌ´Â ½ºÅ©¸³Æ®ÀÇ Æ®·¹ÀÌ ¾ÆÀÌÄÜÀ̳ª ¸ÞÀÎ ¸Þ´º¿¡¼­ "Exit"¸¦ ¼±ÅÃÇÑ °Í°ú µ¿µîÇÕ´Ï´Ù.

+

Exit ±×¸®°í ExitApp´Â ½ºÅ©¸³Æ®¿¡ ÇÖÅ°°¡ ¾ø°í, ½ºÅ©¸³Æ®°¡ ¿µ±¸ÀûÀÌ ¾Æ´Ï¸ç, ±×¸®°í Num/Scroll/Capslock Å°°¡ Ç×»ó AlwaysOn ¶Ç´Â AlwaysOff¸¦ À¯ÁöÇϱ⸦ ¿äûÇÏÁö ¾Ê´Â °æ¿ì´Â ÇàÀ§°¡ µ¿ÀÏÇÕ´Ï´Ù.

+

+½ºÅ©¸³Æ®¿¡ OnExit ¼­ºê·çƾÀÌ ÀÖ´Ù¸é, ExitApp¿¡ ÀÀ´äÇÏ¿© ½ÇÇàµË´Ï´Ù.

+ +

°ü·Ã Ç׸ñ

+

Exit, OnExit, #Persistent

+

¿¹Á¦

+
#x::ExitApp  ; ÀÌ ½ºÅ©¸³Æ®¸¦ Á¾·áÇÒ ÇÖÅ°¸¦ ÇÒ´çÇÕ´Ï´Ù.
+ + + diff --git a/src/docs/commands/FileAppend.htm b/src/docs/commands/FileAppend.htm new file mode 100644 index 0000000..f07d513 --- /dev/null +++ b/src/docs/commands/FileAppend.htm @@ -0,0 +1,106 @@ + + + + +FileAppend + + + + + + + +

FileAppend

+ +

ÅؽºÆ®¸¦ ÆÄÀÏ ³¡¿¡ ¾¹´Ï´Ù (ÇÊ¿äÇÏ¸é ¸ÕÀú ÆÄÀÏÀ» »ý¼ºÇÕ´Ï´Ù).

+ +
FileAppend [, Text, Filename, Encoding]
+

¸Å°³º¯¼ö

+
+ +
Text
+

ÆÄÀÏ¿¡ Ãß°¡ÇÒ ÅؽºÆ®. ÀÌ ÅؽºÆ®´Â ¶óÀÎÇÇµå ¹®ÀÚ (`n)¸¦ Æ÷ÇÔÇØ »õÁÙÀ» ½ÃÀÛÇÒ ¼öµµ ÀÖ½À´Ï´Ù. °Ô´Ù°¡, ±â´Ù¶õ ÇÑÁÙÀº °è¼Ó ¼½¼ÇÀ» ÀÌ¿ëÇÏ¿© ´õ ªÀº ¿©·¯ ÁÙ·Î ºÐ¸®ÇÒ ¼ö ÀÖ½À´Ï´Ù.

+

+ Text°¡ ºñ¾î ÀÖÀ¸¸é, FilenameÀÌ Àӽà ÆÄÀÏ·Î »ý¼ºµË´Ï´Ù (±×·¯³ª ±× ÆÄÀÏÀÌ ÀÌ¹Ì Á¸ÀçÇϸé, ±×ÀÇ ¼öÁ¤ ½Ã°£ÀÌ °»½ÅµË´Ï´Ù).

+

+ Text°¡ %ClipboardAll%À̰ųª ÀÌÀü¿¡ ClipboardAllÀÇ °ªÀÌ ÇÒ´çµÈ º¯¼ö¶ó¸é, FilenameÀº ¹«Á¶°Ç ±× Ŭ¸³º¸µåÀÇ Àüü ³»¿ëÀ¸·Î µ¤¾î¾²±â µË´Ï´Ù (Áï, FileDelete°¡ ÇÊ¿äÇÏÁö ¾Ê½À´Ï´Ù).

+ +
Filename
+
+

Ãß°¡µÉ ÆÄÀÏÀÇ À̸§. Àý´ë °æ·Î°¡ ÁöÁ¤µÇ¾î ÀÖÁö ¾ÊÀ¸¸é %A_WorkingDir%¿¡ ÀÖ´Ù°í °£Áֵ˴ϴÙ.

+

+ ÀÌÁø ¸ðµå: ÅؽºÆ® ¸ðµå°¡ ¾Æ´Ï¶ó ÀÌÁø ¸ðµå·Î Ãß°¡ÇÏ·Á¸é, º°Ç¥¸¦ ÆÄÀÏÀ̸§ ¾Õ¿¡ Ãß°¡ÇϽʽÿÀ. ÀÌ·¸°Ô ÇÏ¸é °¢ ¶óÀÎÇÇµå ¹®ÀÚ (`n)°¡ À©µµ¿ìÁîÀÇ Ç¥ÁØ CR+LF ´ë½Å¿¡ ÇÑ°³Â¥¸® ¶óÀÎÇǵå (LF)°¡ ¾º¿©Áý´Ï´Ù. ¿¹¸¦ µé¾î: *C:\My Unix File.txt.

+

+ ÆÄÀÏÀÌ (ÆÄÀÏ-Àбâ ȸµ¹ÀÌ ¾È¿¡ À־) ¾ÆÁ÷ ¿­·Á ÀÖÁö ¾ÊÀº °æ¿ì, Text¿¡ ij¸®Áö ¸®ÅÏ°ú ¶óÀÎÇǵ尡 ½ÖÀ¸·Î µé¾î ÀÖ´Ù¸é (`r`n) ±× ÆÄÀÏÀº ÀÚµ¿À¸·Î ÀÌÁø ¸ðµå·Î ¿­¸³´Ï´Ù. ´Ù¸¥ ¸»·Î, ¾Õ ¹®´Ü¿¡¼­ ±â¼úÇÑ º°Ç¥ ¿É¼ÇÀÌ ÀÚµ¿À¸·Î È¿·ÂÀ» ¹ßÈÖÇÕ´Ï´Ù. ±×·¸Áö¸¸ Text¿¡ `r`n°¡ µé¾î ÀÖÀ» ¶§ º°Ç¥¸¦ ÁöÁ¤ÇÏ¸é ¼öÇ༺´ÉÀÌ Çâ»óµË´Ï´Ù. ¿Ö³ÄÇϸé ÇÁ·Î±×·¥ÀÌ Text¸¦ ½ºÄµÇØ `r`nÀ» ãÀ» ÇÊ¿ä°¡ ¾ø±â ¶§¹®ÀÔ´Ï´Ù.

+

+ Ç¥ÁØ Ãâ·Â (stdout): º°Ç¥ (*)¸¦ Filename¿¡ ÁöÁ¤Çϸé Text´Â Ç¥ÁØ Ãâ·Â (stdout)À¸·Î Àü¼ÛµË´Ï´Ù. ±×·± ÅؽºÆ®´Â ÆÄÀÏ¿¡ ¹æÇâÀüȯÇÒ ¼ö ÀÖ°í, ¶Ç´Ù¸¥ EXE·Î ÆÄÀÌÇÁ ó¸®ÇØ º¸³¾ ¼ö ÀÖÀ¸¸ç, ¶Ç´Â ȯ»óÀûÀÎ ÆíÁý±â·Î ³ªÆ÷ÇÒ ¼ö ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î, ´ÙÀ½Àº ¸í·É¾î ÇÁ·ÒÇÁÆ®¿¡¼­ ŸÀÚÇϸé À¯È¿ÇÕ´Ï´Ù:

+
"%ProgramFiles%\AutoHotkey\AutoHotkey.exe" "My Script.ahk" >"Error Log.txt"
+

+ ±×·¸Áö¸¸, Ç¥ÁØÃâ·ÂÀ¸·Î Àü¼ÛµÈ ÅؽºÆ®´Â óÀ½ ±âµ¿µÈ ÇÁ·ÒÇÁÆ®¿¡ ³ªÅ¸³ªÁö ¾Ê½À´Ï´Ù. ÀÌ ¹®Á¦´Â ½ºÅ©¸³Æ®ÀÇ Ãâ·ÂÀ» ¶Ç´Ù¸¥ ¸í·É¾î³ª ÇÁ·Î±×·¥¿¡ ÆÄÀÌÇÁ ó¸®ÇØ ¿ìȸÇÒ ¼ö ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î:

+
"%ProgramFiles%\AutoHotkey\AutoHotkey.exe" "My Script.ahk" |more
+
For /F "tokens=*" %L in ('""%ProgramFiles%\AutoHotkey\AutoHotkey.exe" "My Script .ahk""') do @Echo %L
+

[v1.1.20+]: º°Ç¥ µÎ °³ (**)¸¦ Filename¿¡ ÁöÁ¤Çϸé Text°¡ Ç¥ÁØ¿¡·¯(stderr) ½ºÆ®¸²À¸·Î Àü¼ÛµË´Ï´Ù.

+
+ +
ÀÎÄÚµù
+

[AHK_L 42+]: FileEncodingÀ¸·Î ¼³Á¤µÈ ±âº» ÀÎÄÚµùÀ» ¿À¹ö¶óÀ̵å ÇÕ´Ï´Ù. EncodingÀº °°Àº Çü½ÄÀ» µû¸¨´Ï´Ù.

+ +
+ +

ErrorLevel

+

+[v1.1.04+] ÀÌ ¸í·É¾î´Â ½ÇÆнà ¿¹¿Ü¸¦ ´øÁú ¼ö ÀÖ½À´Ï´Ù. ´õ ÀÚ¼¼ÇÑ Á¤º¸´Â ½ÇÇà½Ã°£ ¿¡·¯¸¦ ÂüÁ¶ÇϽʽÿÀ.

+

ErrorLevel´Â ¹®Á¦°¡ ÀÖÀ¸¸é 1 ¾øÀ¸¸é 0ÀÌ ¼³Á¤µË´Ï´Ù.

+

A_LastError´Â ¿î¿µ üÁ¦ÀÇ GetLastError() ÇÔ¼öÀÇ °á°ú°¡ ¼³Á¤µË´Ï´Ù.

+ +

³íÆò

+

+±âÁ¸ÀÇ ÆÄÀÏÀ» µ¤¾î¾²·Á¸é, FileAppend¸¦ »ç¿ëÇϱâ Àü¿¡ FileDelete·Î Áö¿ì½Ê½Ã¿À.

+

+¸ñÇ¥ ÆÄÀÏÀº ÅؽºÆ®°¡ Ãß°¡µÈ ÈÄ ÀÚµ¿À¸·Î ´ÝÈü´Ï´Ù (´Ü, FileAppend°¡ ÆÄÀÏ-Àбâ/¾²±â ȸµ¹ÀÌ ¾È¿¡¼­ ´ÜÀÏ-¸Å°³º¯¼ö ¸ðµå¸¦ »ç¿ëÇÒ ¶§´Â ¿¹¿ÜÀÔ´Ï´Ù).

+

+[AHK_L 42+]: FileOpen()À» Ãß°¡ ¸ðµå·Î »ç¿ëÇÏ´Â °ÍÀÌ FileAppendº¸´Ù ´õ ¼¶¼¼ÇÏ°Ô Á¦¾îÇÒ ¼ö ÀÖ°í °è¼Ó ÆÄÀÏÀ» ¿­¾î µÑ ¼öµµ ÀÖ½À´Ï´Ù. ¸Å¹ø ÆÄÀÏÀ» ¿­°í ´ÝÀ» ÇÊ¿ä°¡ ¾ø½À´Ï´Ù. ÀÏ´Ü ÆÄÀÏÀÌ Ãß°¡ ¸ðµå·Î ¿­¸®¸é file.Write(string)¸¦ »ç¿ëÇØ Ãß°¡ÇÏ¸é µË´Ï´Ù. ÆÄÀÏ °´Ã¼´Â RawWrite/RawRead ¶Ç´Â WriteNum/ReadNum¸¦ ÅëÇÏ¿© ÀÌÁø I/Oµµ Áö¿øÇÕ´Ï´Ù. ¹Ý¸é¿¡ FileAppend´Â ¿ÀÁ÷ ÅؽºÆ®¸¸ Áö¿øÇÕ´Ï´Ù.

+ +

°ü·Ã Ç׸ñ

+

+FileOpen/File Object, FileRead, file-reading loop, FileReadLine, IniWrite, FileDelete, OutputDebug, °è¼Ó ¼½¼Ç

+ +

¿¹Á¦

+
FileAppend, Another line.`n, C:\My Documents\Test.txt
+
+; ´ÙÀ½ ¿¹Á¦´Â °è¼Ó ¼½¼ÇÀ» »ç¿ëÇØ °¡µ¶¼º°ú À¯Áö°ü¸®¼ºÀ» Çâ»ó½Ãŵ´Ï´Ù:
+FileAppend,
+(
+ÇÑ ÁÙÀÇ ÅؽºÆ®.
+±âº»À¸·Î, ÀÌÀü ÁÙ°ú ÀÌ ÁÙ »çÀÌÀÇ Çϵå ij¸®Áö ¸®ÅÏÀº (Enter) ÆÄÀÏ¿¡ ¾²¿©Áý´Ï´Ù.
+    ÀÌ ÁÙÀº ÅÇ Çϳª·Î µé¿©¾²±â µË´Ï´Ù; ±âº»À¸·Î, Åǵµ ÆÄÀÏ¿¡ ¾º¿©Áý´Ï´Ù.
+%Var%¿Í °°Àº º¯¼ö ÂüÁ¶´Â ±âº»À¸·Î È®ÀåµË´Ï´Ù.
+), C:\My File.txt
+

 

+
; ´ÙÀ½ ¿¹Á¦´Â ¿î¿µ üÁ¦ÀÇ ³»Àå FTP ¸í·É¾î¸¦ »ç¿ëÇÏ¿© 
+; FTP ¾÷·Îµå¸¦ ÀÚµ¿È­ ÇÏ´Â ¹ýÀ» º¸¿©ÁÝ´Ï´Ù. ÀÌ ½ºÅ©¸³Æ®´Â Windows XP¿¡¼­ °ËÁõµÇ¾ú½À´Ï´Ù.
+
+FTPCommandFile = %A_ScriptDir%\FTPCommands.txt
+FTPLogFile = %A_ScriptDir%\FTPLog.txt
+FileDelete %FTPCommandFile%  ; ÀÌÀü ½ÇÇàÀÌ ³Ê¹« ÀÏÂï ³¡³µÀ» °æ¿ì.
+
+FileAppend,  ; ÀÌ °æ¿ì ½°Ç¥°¡ ÇÊ¿äÇÕ´Ï´Ù.
+(
+open host.domain.com
+username
+password
+binary
+cd htdocs
+put %VarContainingNameOfTargetFile%
+delete SomeOtherFile.htm
+rename OldFileName.htm NewFileName.htm
+ls -l
+quit
+), %FTPCommandFile%
+
+RunWait %comspec% /c ftp.exe -s:"%FTPCommandFile%" >"%FTPLogFile%"
+FileDelete %FTPCommandFile%  ; º¸¾È»óÀÇ ÀÌÀ¯·Î »èÁ¦ÇÕ´Ï´Ù.
+Run %FTPLogFile%  ; °ËÅ並 À§ÇØ ·Î±× ±â·ÏÀ» º¸¿©ÁÝ´Ï´Ù.
+ + + diff --git a/src/docs/commands/FileCopy.htm b/src/docs/commands/FileCopy.htm new file mode 100644 index 0000000..28c105a --- /dev/null +++ b/src/docs/commands/FileCopy.htm @@ -0,0 +1,89 @@ + + + + +FileCopy + + + + + + + +

FileCopy

+ +

ÆÄÀÏÀ» º¹»çÇÕ´Ï´Ù.

+ +
FileCopy, SourcePattern, DestPattern [, Flag]
+

¸Å°³º¯¼ö

+
+ +
SourcePattern
+

´ÜÀÏ ÆÄÀÏÀ̳ª Æú´õ ¶Ç´Â C:\Temp\*.tmp °°À¸ ¿ÍÀϵå Ä«µå ÆÐÅÏ. + SourcePatternÀº ÀýÀç °æ·Î°¡ ÁöÁ¤µÇ¾î ÀÖÁö ¾ÊÀ¸¸é %A_WorkingDir%¿¡ ÀÖ´Ù°í °£Áֵ˴ϴÙ.

+ +
DestPattern
+
+ ¸ñÇ¥ÀÇ À̸§À̳ª ÆÐÅÏ, Àý´ë °æ·Î°¡ ÁöÁ¤µÇÁö ¾ÊÀ¸¸é %A_WorkingDir%¿¡ ÀÖ´Ù°í °£Áֵ˴ϴÙ. °£´ÜÇÑ º¹»ç¸¦ ¼öÇàÇÏ·Á¸é -- ±âÁ¸ÀÇ ÆÄÀÏÀ̸§Àº ±×´ë·Î µÎ°í -- Æú´õ À̸§¸¸ ÁöÁ¤ÇϽʽÿÀ. ´ÙÀ½¿¡ º¸¿©ÁÖ´Â ¿¹Á¦´Â ±â´É»ó µ¿µîÇÕ´Ï´Ù:
+
FileCopy, C:\*.txt, C:\My Folder
+
FileCopy, C:\*.txt, C:\My Folder\*.*
+
+ +
Flag
+

(¼±ÅÃÀû) ÀÌ Ç÷¡±×´Â ÆÄÀÏÀÌ ÀÌ¹Ì Á¸ÀçÇÏ¸é µ¤¾î¾µÁö ¸»Áö °áÁ¤ÇÕ´Ï´Ù:

+

0 = (±âº»°ª) ±âÁ¸ÀÇ ÆÄÀÏÀ» µ¤¾î¾²Áö ¾Ê½À´Ï´Ù
+ 1 = ±âÁ¸ÀÇ ÆÄÀÏÀ» µ¤¾î ¾¹´Ï´Ù

+

ÀÌ ¸Å°³º¯¼ö´Â Ç¥Çö½ÄÀÏ ¼ö ÀÖ½À´Ï´Ù. ½ÉÁö¾î ÂüÀ̳ª °ÅÁþÀ¸·Î Æò°¡µÇ´Â °ÍÀÌ¸é ¹«¾ùÀÌµç °¡´ÉÇÕ´Ï´Ù (¿Ö³ÄÇÏ¸é ³»ºÎÀûÀ¸·Î ÂüÀº 1 °ÅÁþÀº 0À¸·Î ÀúÀåµÇ±â ¶§¹®ÀÔ´Ï´Ù).

+ +
+ +

ErrorLevel

+

[v1.1.04+] ÀÌ ¸í·É¾î´Â ¿¹¿Ü¸¦ ´øÁú ¼ö ÀÖ½À´Ï´Ù. ´õ ÀÚ¼¼ÇÑ Á¤º¸´Â ½ÇÇà½Ã°£ ¿¡·¯¸¦ ÂüÁ¶ÇϽʽÿÀ.

+

ErrorLevel´Â ¿¡·¯ ¶§¹®¿¡ º¹»ç¿¡ ½ÇÆÐÇÑ ÆÄÀÏÀÇ °³¼ö°¡ ¼³Á¤µË´Ï´Ù. ±×·¸Áö ¾ÊÀ¸¸é 0ÀÌ ¼³Á¤µË´Ï´Ù.

+

+¾î´À °æ¿ìµç, ¼Ò½º ÆÄÀÏÀÌ ´ÜÀÏ ÆÄÀÏÀÌ°í (¿ÍÀϵåÄ«µå ¾øÀ½) ±×¸®°í ±× ÆÄÀÏÀÌ Á¸ÀçÇÏÁö ¾ÊÀ¸¸é, ErrorLevelÀº 0À¸·Î ¼³Á¤µË´Ï´Ù. ÀÌ »óȲÀ» ŽÁöÇÏ·Á¸é, º¹»çÇϱâ Àü¿¡ IfExist ¶Ç´Â FileExist()¸¦ ¼Ò½º ÆÄÀÏ¿¡ »ç¿ëÇϽʽÿÀ.

+

+FileMove¿Í ´Ù¸£°Ô, ÆÄÀÏÀ» ÀÚ±â Àڽſ¡ º¹»çÇÏ´Â °ÍÀº ¾ðÁ¦³ª ¿¡·¯·Î °£Áֵ˴ϴÙ. µ¤¾î¾²±â ¸ðµå°¡ ÄÑÁ® À־ ¸¶Âù°¡ÁöÀÔ´Ï´Ù.

+

+ÆÄÀÏÀÌ ¹ß°ßµÇ¸é, A_LastError´Â 0 (0) ¶Ç´Â ¸¶Áö¸· ½ÇÆÐ ÈÄ¿¡ °ð¹Ù·Î ¿î¿µ üÁ¦ÀÇ GetLastError() ÇÔ¼öÀÇ °á°ú°¡ ¼³Á¤µË´Ï´Ù. ±×·¸Áö ¾ÊÀ¸¸é A_LastError¿¡´Â ¿Ö ÆÄÀÏÀÌ ¹ß°ßµÇÁö ¾Ê¾Ò´ÂÁö ¾Ë·ÁÁÖ´Â ¿¡·¯ Äڵ尡 ´ã±é´Ï´Ù.

+ +

³íÆò

+

+FileCopy´Â ÆÄÀϸ¸ º¹»çÇÕ´Ï´Ù. ´ë½Å Æú´õÀÇ ³»¿ëÀ» (±×ÀÇ ¸ðµç ÆÄÀÏ°ú ÇÏÀ§ Æú´õ) º¹»çÇÏ·Á¸é, ¾Æ·¡ ¼½¼ÇÀÇ ¿¹Á¦¸¦ ÂüÁ¶ÇϽʽÿÀ. ´ÜÀÏ Æú´õ (ÇÏÀ§ Æú´õ Æ÷ÇÔ)¸¦ º¹»çÇÏ·Á¸é, FileCopyDirÀ» »ç¿ëÇϽʽÿÀ.

+

+¿¡·¯¸¦ ¸¸³ªµµ ¿¬»êÀº ¸ØÃßÁö ¾Ê½À´Ï´Ù.

+ +

°ü·Ã Ç׸ñ

+

+FileMove, FileCopyDir, FileMoveDir, FileDelete

+ +

¿¹Á¦

+
FileCopy, C:\My Documents\List1.txt, D:\Main Backup\  ; »çº»À» ¸¸µéÁö¸¸ ¿øº»ÀÇ ÆÄÀÏ À̸§À» À¯ÁöÇÕ´Ï´Ù.
+FileCopy, C:\My File.txt, C:\My File New.txt  ; ÆÄÀÏ¿¡ »õ À̸§À» ÁÖ°í, °°Àº Æú´õ ¾ÈÀ¸·Î º¹»çÇÕ´Ï´Ù.
+FileCopy, C:\Folder1\*.txt, D:\New Folder\*.bkp  ; »õ À§Ä¡¿¡ º¹»çÇÏ°í »õ È®ÀåÀÚ¸¦ ºÎ¿©ÇÕ´Ï´Ù.
+

 

+
; ´ÙÀ½ ¿¹Á¦´Â ÇÑ Æú´õ ¾ÈÀÇ ¸ðµç ÆÄÀÏ°ú ÇÏÀ§ Æú´õ¸¦ ´Ù¸¥ Æú´õ·Î º¹»ç ÇÕ´Ï´Ù:
+ErrorCount := CopyFilesAndFolders("C:\My Folder\*.*", "D:\Folder to receive all files & folders")
+if ErrorCount <> 0
+    MsgBox %ErrorCount% files/folders could not be copied.
+
+CopyFilesAndFolders(SourcePattern, DestinationFolder, DoOverwrite = false)
+; SourcePattern¿¡ ºÎÇÕÇÏ´Â ¸ðµç ÆÄÀÏ°ú Æú´õ¸¦ DestinationFolderÀ̶ó´Â À̸§ÀÇ Æú´õ¿¡ º¹»çÇÏ°í
+; º¹»çÇÒ ¼ö ¾ø¾ú´ø ÆÄÀÏ/Æú´õÀÇ °³¼ö¸¦ µ¹·ÁÁÝ´Ï´Ù.
+{
+    ; ¸ÕÀú ¸ðµç ÆÄÀÏÀ» º¹»çÇÕ´Ï´Ù (Æú´õ´Â º¹»çÇÏÁö ¾Ê½À´Ï´Ù):
+    FileCopy, %SourcePattern%, %DestinationFolder%, %DoOverwrite%
+    ErrorCount := ErrorLevel
+    ; ÀÌÁ¦ ¸ðµç Æú´õ¸¦ º¹»çÇÕ´Ï´Ù:
+    Loop, %SourcePattern%, 2  ; 2ÀÇ ¶æÀº "Æú´õ¸¸ ¿­¶÷ÇÑ´Ù"´Â ¶æÀÔ´Ï´Ù.
+    {
+        FileCopyDir, %A_LoopFileFullPath%, %DestinationFolder%\%A_LoopFileName%, %DoOverwrite%
+        ErrorCount += ErrorLevel
+        if ErrorLevel  ; ¹®Á¦ÀÇ Æú´õ¸¦ À̸§À¸·Î º¸°íÇÕ´Ï´Ù.
+            MsgBox Could not copy %A_LoopFileFullPath% into %DestinationFolder%.
+    }
+    return ErrorCount
+}
+ + + diff --git a/src/docs/commands/FileCopyDir.htm b/src/docs/commands/FileCopyDir.htm new file mode 100644 index 0000000..980ad0c --- /dev/null +++ b/src/docs/commands/FileCopyDir.htm @@ -0,0 +1,73 @@ + + + + +FileCopyDir + + + + + + + +

FileCopyDir

+ +

Æú´õ¸¦ ±×ÀÇ ¸ðµç ÇÏÀ§ Æú´õ¿Í ÆÄÀÏ°ú ÇÔ²² º¹»çÇÕ´Ï´Ù (xcopy¿Í ºñ½ÁÇÔ).

+ +
FileCopyDir, Source, Dest [, Flag]
+

¸Åº¯º¯¼ö

+
+ +
Source
+

¼Ò½º µð·ºÅ丮ÀÇ À̸§ (µÚ¿¡ ¿ª»ç¼± ¾øÀ½), Àý´ë °æ·Î°¡ ÁöÁ¤µÇ¾î ÀÖÁö ¾ÊÀ¸¸é %A_WorkingDir%¿¡ ÀÖ´Ù°í °£Áֵ˴ϴÙ. ¿¹¸¦ µé¾î: C:\My Folder

+ +
Dest
+

¸ñÇ¥ µð·ºÅ丮ÀÇ À̸§ (µÚ¿¡ ¿ª»ç¼± ¾øÀ½), Àý´ë °æ·Î°¡ ÁöÁ¤µÇ¾î ÀÖÁö ¾ÊÀ¸¸é %A_WorkingDir%¿¡ ÀÖ´Ù°í °£Áֵ˴ϴÙ. ¿¹¸¦ µé¾î: C:\My Folder

+ +
Flag
+

(¼±ÅÃÀû) ÀÌ ¸Å°³º¯¼ö´Â ÆÄÀÏÀÌ ÀÌ¹Ì Á¸ÀçÇÏ¸é µ¤¾î¾µÁö ¸»Áö °áÁ¤ÇÕ´Ï´Ù:

+

0 (±âº»°ª): ±âÁ¸ÀÇ ÆÄÀÏÀ» µ¤¾î¾²Áö ¾Ê½À´Ï´Ù. Dest°¡ ÀÌ¹Ì ÆÄÀÏÀ̳ª Æú´õ·Î Á¸ÀçÇÏ¸é ¿¬»êÀº ½ÇÆÐÇÏ°í ¾Æ¹« È¿°úµµ ¾ø½À´Ï´Ù.

+

1: ±âÁ¸ÀÇ ÆÄÀÏÀ» µ¤¾î¾¹´Ï´Ù. ±×·¸Áö¸¸, Dest ¾ÈÀÇ ÆÄÀÏÀ̳ª Æú´õ°¡ Source ¾È¿¡ ÇØ´çÇϴ ¦ÀÌ ¾øÀ¸¸é »èÁ¦µÇÁö ¾Ê½À´Ï´Ù.

+

ÀÌ ¸Å°³º¯¼ö´Â Ç¥Çö½ÄÀÏ ¼ö ÀÖ½À´Ï´Ù. ½ÉÁö¾î °ÅÁþÀ̳ª ÂüÀ¸·Î Æò°¡µÇ¸é ¹«¾ùÀÌµç µÉ ¼ö ÀÖ½À´Ï´Ù (Âü°ú °ÅÁþÀº ³»ºÎÀûÀ¸·Î 1°ú 0À¸·Î ÀúÀåµÇ±â ¶§¹®ÀÔ´Ï´Ù).

+ +
+ +

ErrorLevel

+

[v1.1.04+] ÀÌ ¸í·É¾î´Â ½ÇÆнà ¿¹¿Ü¸¦ ´øÁú ¼ö ÀÖ½À´Ï´Ù. ´õ ÀÚ¼¼ÇÑ Á¤º¸´Â ½ÇÇà½Ã°£ ¿¡·¯¸¦ ÂüÁ¶ÇϽʽÿÀ.

+

ErrorLevelÀº ¹®Á¦°¡ ÀÖÀ¸¸é 1 ¾øÀ¸¸é 0ÀÌ ¼³Á¤µË´Ï´Ù. ±×·¸Áö¸¸, ¼Ò½º µð·ºÅ丮¿¡ ÀúÀåµÈ À¥ ÆäÀÌÁö°¡ PageName.htm ÆÄÀÏ°ú ±×¿¡ »óÀÀÇÏ´Â µð·ºÅ丮 À̸§ PageName_files·Î ±¸¼ºµÇ¾î ÀÖ´Ù¸é, º¹»ç°¡ ¼º°øÀûÀ̾ú´Ù ÇÒÁö¶óµµ ¿¡·¯°¡ ³ªÅ¸³¯ ¼ö ÀÖ½À´Ï´Ù..

+ +

³íÆò

+

+¸ñÇ¥ µð·ºÅ丮 ±¸Á¶°¡ Á¸ÀçÇÏÁö ¾ÊÀ» °æ¿ì, °¡´ÉÇÏ¸é »ý¼ºÇÕ´Ï´Ù.

+

+Æú´õ¿Í ´õºÒ¾î ±×ÀÇ ¸ðµç ÇÏÀ§ Æú´õ¸¦ Àç±ÍÀûÀ¸·Î º¹»çÇϱ⠶§¹®¿¡, Æú´õ¸¦ ÀÚ±â ÀڽŠ¾ÈÀÇ ÇÑ Æú´õ ¾È¿¡ º¹»çÇÑ °á°ú´Â Á¤ÀǵǾî ÀÖÁö ¾Ê½À´Ï´Ù. À̸¦ ¿ìȸÇÏ·Á¸é, ¸ÕÀú ÀÚ±â ÀڽŠ¹Ù±ù¿¡´Ù º¹»çÇÑ ´ÙÀ½, FileMoveDir¸¦ »ç¿ëÇÏ¿© ¿øÇÏ´Â À§Ä¡·Î À̵¿ÇϽʽÿÀ.

+

+FileCopyDirÀº ´ÜÀÏ Æú´õ¸¦ º¹»çÇÕ´Ï´Ù. ´ë½Å Æú´õÀÇ ³»¿ëÀ» (±×ÀÇ ¸ðµç ÆÄÀÏ°ú Æú´õ) º¹»çÇÏ·Á¸é, FileCopy ¼½¼ÇÀÇ ¿¹Á¦¸¦ ÂüÁ¶ÇϽʽÿÀ.

+ +

°ü·Ã Ç׸ñ

+

+FileMoveDir, FileCopy, FileMove, FileDelete, file-loops, FileSelectFolder, SplitPath

+ +

¿¹Á¦

+
FileCopyDir, C:\My Folder, C:\Copy of My Folder
+
+; ¿¹Á¦ #2: Æú´õ¸¦ º¹»çÇÒÁö ¹°¾îº¸´Â ½ºÅ©¸³Æ®.
+FileSelectFolder, SourceFolder, , 3, º¹»çÇÒ Æú´õ¸¦ ¼±ÅÃÇϽʽÿÀ
+if SourceFolder =
+    return
+; ±×·¸Áö ¾ÊÀ¸¸é, °è¼Ó ÁøÇàÇÕ´Ï´Ù.
+FileSelectFolder, TargetFolder, , 3, º¹Á¦ Æú´õ¸¦ »ý¼ºÇÒ Æú´õ¸¦ ¼±ÅÃÇϽʽÿÀ.
+if TargetFolder =
+    return
+; ±×·¸Áö ¾ÊÀ¸¸é, °è¼Ó ÁøÇàÇÕ´Ï´Ù.
+MsgBox, 4, , "%SourceFolder%" Æú´õÀÇ »çº»ÀÌ "%TargetFolder%"À¸·Î µé¾î°©´Ï´Ù.  °è¼ÓÇÒ±î¿ä?
+IfMsgBox, No
+    return
+SplitPath, SourceFolder, SourceFolderName  ; ±×ÀÇ Àüü °æ·Î¿¡¼­ Æú´õ À̸§¸¸ ÃßÃâÇÕ´Ï´Ù.
+FileCopyDir, %SourceFolder%, %TargetFolder%\%SourceFolderName%
+if ErrorLevel
+    MsgBox Æú´õ¸¦ º¹»çÇÏÁö ¸øÇß½À´Ï´Ù. °°Àº À̸§ÀÇ Æú´õ°¡ ÀÌ¹Ì "%TargetFolder%"¿¡ Á¸ÀçÇÒ °¡´É¼ºÀÌ ÀÖ½À´Ï´Ù.
+return
+ + + diff --git a/src/docs/commands/FileCreateDir.htm b/src/docs/commands/FileCreateDir.htm new file mode 100644 index 0000000..53db697 --- /dev/null +++ b/src/docs/commands/FileCreateDir.htm @@ -0,0 +1,40 @@ + + + + +FileCreateDir + + + + + + + +

FileCreateDir

+ +

µð·ºÅ丮/Æú´õ¸¦ ¸¸µì´Ï´Ù.

+ +
FileCreateDir, DirName
+ +

¸Å°³º¯¼ö

+
+ +
DirName
+

»ý¼ºÇÒ µð·ºÅ丮 À̸§. Àý´ë °æ·Î°¡ ÁöÁ¤µÇÁö ¾ÊÀ¸¸é %A_WorkingDir%¿¡ ÀÖ´Ù°í °£Áֵ˴ϴÙ.

+ +
+

ErrorLevel

+

+[v1.1.04+] ÀÌ ¸í·É¾î´Â ½ÇÆнà ¿¹¿Ü¸¦ ´øÁú ¼ö ÀÖ½À´Ï´Ù. ´õ ÀÚ¼¼ÇÑ Á¤º¸´Â ½ÇÇà½Ã°£ ¿¡·¯¸¦ ÂüÁ¶ÇÕ´Ï´Ù.

+

ErrorLevel´Â ¹®Á¦°¡ ÀÖÀ¸¸é 1 ±×·¸Áö ¾ÊÀ¸¸é 0ÀÌ ¼³Á¤µË´Ï´Ù.

+

A_LastError´Â ¿î¿µ üÁ¦ÀÇ GetLastError() ÇÔ¼öÀÇ °á°ú¿¡ ¼³Á¤µË´Ï´Ù.

+

°ü·Ã Ç׸ñ

+ÀÌ ¸í·É¾î´Â ¶Ç ¾ÆÁ÷ Á¸ÀçÇÏÁö ¾Ê´Â´Ù¸é DirName¿¡ ÁÖ¾îÁø ¸ðµç ºÎ¸ð µð·ºÅ丮¸¦ »ý¼ºÇÕ´Ï´Ù. + +

°ü·Ã Ç׸ñ

+

FileRemoveDir

+

¿¹Á¦

+
FileCreateDir, C:\Test1\My Images\Folder2
+ + + diff --git a/src/docs/commands/FileCreateShortcut.htm b/src/docs/commands/FileCreateShortcut.htm new file mode 100644 index 0000000..2a556a2 --- /dev/null +++ b/src/docs/commands/FileCreateShortcut.htm @@ -0,0 +1,83 @@ + + + + +FileCreateShortcut + + + + + + + +

FileCreateShortcut

+ +

´ÜÃà ÆÄÀÏÀ» ¸¸µì´Ï´Ù (.lnk).

+ +
FileCreateShortcut, Target, LinkFile [, WorkingDir, Args, Description, IconFile, ShortcutKey, IconNumber, RunState]
+

¸Å°³º¯¼ö

+
+ +
Target
+

´ÜÃà ÆÄÀÏÀÌ °¡¸®Å°´Â ÆÄÀÏÀÇ À̸§. Àý´ë °æ·Î°¡ Æ÷ÇԵǾî ÀÖ¾î¾ßÇÕ´Ï´Ù. ½Ã½ºÅÛ¿¡ ÅëÇÕµÈ ÆÄÀÏÀ» ¿¹¿ÜÀÔ´Ï´Ù (¿¹, Notepad.exe). ´ÜÃà ÆÄÀÏÀÌ ¸¸µé¾îÁö´Â ¼ø°£ ÇØ´ç ÆÄÀÏÀÌ Á¸ÀçÇÏ¸é ¾È µË´Ï´Ù; ´Ù¸¥ ¸»·Î, ¹«È¿ÇÑ ¸ñÇ¥¸¦ °¡¸®Å°´Â ´ÜÃà ÆÄÀÏÀÌ »ý¼ºµÉ ¼ö ÀÖ½À´Ï´Ù.

+ +
LinkFile
+

»ý¼ºµÉ ´ÜÃà ÆÄÀÏÀÇ À̸§. Àý´ë °æ·Î¸¦ ÁöÁ¤ÇÏÁö ¾ÊÀ¸¸é %A_WorkingDir%¿¡ ÀÖ´Ù°í °£ÁÖÇÕ´Ï´Ù. .lnk È®ÀåÀÚ¸¦ ²À Æ÷ÇÔÇϽʽÿÀ. ±× ÆÄÀÏÀÌ ÀÌ¹Ì Á¸ÀçÇÏ¸é µ¤¾î¾²±â µË´Ï´Ù.

+ +
WorkingDir
+

´ÜÃà ÆÄÀÏÀÌ ±âµ¿ÇÒ ¶§ ¸ñÇ¥ÀÇ ÀÛ¾÷ µð·ºÅ丮. ºñ¾î Àְųª »ý·«µÇ¸é, ´ÜÃà ÆÄÀÏÀº "½ÃÀÛ µð·ºÅ丮"°¡ ºñ¾î ÀÖ°í ´ÜÃà ÆÄÀÏÀÌ ±âµ¿ÇÒ ¶§ ½Ã½ºÅÛÀÌ ±âº» ÀÛ¾÷ µð·ºÅ丮¸¦ Á¦°øÇÕ´Ï´Ù.

+ +
Args
+

´ÜÃà ÆÄÀÏÀÌ ±âµ¿ÇÒ ¶§ Target¿¡ °Ç³Ú ¸Å°³º¯¼ö. ¸Å°³º¯¼ö »çÀÌ´Â ½ºÆäÀ̽º·Î ±¸ºÐÇÕ´Ï´Ù. ¸Å°³º¯¼ö¿¡ ½ºÆäÀ̽º°¡ Æ÷ÇԵǾî ÀÖ´Ù¸é, °ãµû¿ÈÇ¥·Î µÑ·¯ ½Î½Ê½Ã¿À.

+ +
Description
+

´ÜÃà ÆÄÀÏÀ» ±â¼úÇÏ´Â ÁÖ¼® (OS°¡ ÅøÆÁ, µîµîÀ» º¸¿© ÁÖ´Â µ¥ »ç¿ëÇÕ´Ï´Ù.)

+ +
IconFile
+

LinkFile¿¡ ´ëÇÏ¿© ¾ÆÀÌÄÜÀÇ À̸§°ú Àüü °æ·Î. ico ÆÄÀÏÀ̰ųª ¾Æ´Ï¸é EXE ¶Ç´Â DLLÀÇ Ã¹ ¹ø° ¾ÆÀÌÄÜÀÔ´Ï´Ù.

+ +
ShortcutKey
+

´ÜÀÏ ±âÈ£, ¼ýÀÚ, ¶Ç´Â Å° ¸®½ºÆ®ÀÇ °¢ Å°ÀÇ À̸§ (¸¶¿ì½º ¹öÆ°°ú ±âŸ ºñ-Ç¥ÁØ Å°´Â Áö¿øÇÏÁö ¾ÊÀ» ¼öµµ ÀÖ½À´Ï´Ù). ¼ö½Ä ½Éº¼À» Æ÷ÇÔ½ÃÅ°Áö ¸¶½Ê½Ã¿À. ÇöÀç, ¸ðµç ´ÜÃà Å°´Â CTRL+ALT ´ÜÃà Å°·Î »ý¼ºµË´Ï´Ù. ¿¹¸¦ µé¾î, ±âÈ£ B°¡ ÀÌ ¸Å°³º¯¼ö¿¡ ÁöÁ¤µÇ¸é, ´ÜÃà Å°´Â CTRL-ALT-B°¡ µË´Ï´Ù.

+ +
IconNumber
+

+ ù ¹ø° ¾ÆÀÌÄÜÀÌ ¾Æ´Ï¶ó IconFile ÆÄÀÏ¿¡¼­ ¾ÆÀÌÄÜÀ» Çϳª »ç¿ëÇÏ·Á¸é, ¿©±â¿¡ ±× ¹øÈ£¸¦ ÁöÁ¤ÇϽʽÿÀ (Ç¥Çö½Ä °¡´É). ¿¹¸¦ µé¾î, 2´Â µÎ ¹ø° ¾ÆÀÌÄÜÀÔ´Ï´Ù.

+ +
RunState
+
+

TargetÀ» ÃÖ´ë ¶Ç´Â ÃÖ¼Ò »óÅ·Π±âµ¿ÇÏ·Á¸é, ´ÙÀ½ ¼ýÀÚ Áß Çϳª¸¦ ÁöÁ¤ÇϽʽÿÀ:

+

1 - Á¤»ó (±âº»°ª)
+3 - ÃÖ´ëÈ­
+7 - ÃÖ¼ÒÈ­

+ +
+

ErrorLevel

+

[v1.1.04+] ÀÌ ¸í·É¾î´Â ½ÇÆнà ¿¹¿Ü¸¦ ´øÁú ¼ö ÀÖ½À´Ï´Ù. ÀÚ¼¼ÇÑ °ÍÀº ½ÇÇà ½Ã°£ ¿¡·¯¸¦ ÂüÁ¶ÇϽʽÿÀ.

+

ErrorLevelÀº ¹®Á¦°¡ ÀÖÀ¸¸é 1 ¾øÀ¸¸é 0ÀÌ ¼³Á¤µË´Ï´Ù.

+ +

³íÆò

+

+TargetÀ» Æ÷ÇÔÇÏÁö ¾Ê¾Æµµ µÉ °æ¿ì°¡ ÀÖ½À´Ï´Ù. ¸ñÇ¥ ÆÄÀÏÀÌ ½Ã½ºÅÛÀÇ PATH ȯ°æ º¯¼öÀÇ Æú´õ Áß Çϳª¿¡ Á¸ÀçÇϸé ÁöÁ¤ÇÏÁö ¾Ê¾Æµµ µË´Ï´Ù.

+

+»õ·Î »ý¼ºµÈ ´ÜÃà ÆÄÀÏÀÇ ShortcutKey´Â ±× ´ÜÃà ÆÄÀÏÀÌ ½ÃÀÛ ¸Þ´ºÀÇ ¾îµò°¡ ¶Ç´Â ¹ÙÅÁÈ­¸é¿¡ °ÅÁÖÇÏÁö ¾ÊÀ¸¸é ¾Æ¹« È¿°ú°¡ ¾ø½À´Ï´Ù. ¿©·¯ºÐÀÌ °í¸¥ ShortcutKey°¡ ÀÌ¹Ì »ç¿ë ÁßÀ̸é, ¿©·¯ºÐÀÇ »õ ´ÜÃà ÆÄÀÏÀÌ ¿ì¼±ÇÕ´Ï´Ù.

+

+URLÀ» °¡¸®Å°´Â ´ÜÃà ÆÄÀÏÀ» »ý¼ºÇÏ´Â ¶Ç´Ù¸¥ ¹æ¹ýÀº ´ÙÀ½ ¿¹Á¦ÀÔ´Ï´Ù. Ưº°ÇÑ URL ´ÜÃà ÆÄÀÏÀ» »ý¼ºÇÕ´Ï´Ù. ¾Õ µÎ°³ÀÇ ¸Å°³º¯¼ö¸¦ ¿©·¯ºÐ ¸¶À½´ë·Î ¹Ù²Ù½Ê½Ã¿À:
+IniWrite, http://www.google.com, C:\My Shortcut.url, InternetShortcut, URL.

+

+´ÙÀ½À» ¼±ÅÃÀûÀ¸·Î Ãß°¡ÇØ À§ÀÇ ¾ÆÀÌÄÜ¿¡ ÇÒ´çÇÒ ¼ö ÀÖ½À´Ï´Ù:

+
IniWrite, <IconFile>, C:\My Shortcut.url, InternetShortcut, IconFile
+IniWrite, 0, C:\My Shortcut.url, InternetShortcut, IconIndex
+

+À§¿¡¼­, 0À» ¾ÆÀÌÄÜÀÇ À妽º·Î ±³Ã¼ÇϽʽÿÀ (0Àº ù ¾ÆÀÌÄÜ¿¡ »ç¿ëµË´Ï´Ù) ±×¸®°í <IconFile>¸¦ URL, EXE, DLL, ¶Ç´Â ICO ÆÄÀÏ·Î ±³Ã¼ÇϽʽÿÀ. ¿¹Á¦: C:\Icons.dll, C:\App.exe, http://www.somedomain.com/ShortcutIcon.ico

+

+.LNK ÆÄÀÏÀÌ ¾Æ´Ï¶ó Æò¹üÇÑ ÅؽºÆ® ÆÄÀÏÀε¥µµ ¿î¿µ üÁ¦´Â À§¿¡¼­ »ý¼ºµÈ .URL ÆÄÀÏÀ» ÁøÂ¥ ´ÜÃà ÆÄÀÏ·Î Ãë±ÞÇÕ´Ï´Ù.

+ +

°ü·Ã Ç׸ñ

+

FileGetShortcut, FileAppend

+ +

¿¹Á¦

+
; ¸¶Áö¸· ¸Å°³º¯¼ö¿¡¼­ ±âÈ£ "i"´Â ´ÜÃà Å°¸¦ Ctrl-Alt-I·Î ¸¸µì´Ï´Ù:
+FileCreateShortcut, Notepad.exe, %A_Desktop%\My Shortcut.lnk, C:\, "%A_ScriptFullPath%", My Description, C:\My Icon.ico, i
+ + + diff --git a/src/docs/commands/FileDelete.htm b/src/docs/commands/FileDelete.htm new file mode 100644 index 0000000..8c359c5 --- /dev/null +++ b/src/docs/commands/FileDelete.htm @@ -0,0 +1,45 @@ + + + + +FileDelete + + + + + + + +

FileDelete

+ +

ÆÄÀÏÀ» »èÁ¦ÇÕ´Ï´Ù.

+ +
FileDelete, FilePattern
+

¸Å°³º¯¼ö

+
+ +
FilePattern
+

´ÜÀÏ ÆÄÀÏÀÇ À̸§ ¶Ç´Â C:\Temp\*.tmp°°Àº ¿ÍÀϵåÄ«µå ÆÐÅÏ. FilePatternÀº Àý´ë °æ·Î¸¦ ÁöÁ¤ÇÏÁö ¾ÊÀ¸¸é %A_WorkingDir%¿¡ ÀÖ´Ù°í °£Áֵ˴ϴÙ.

+

Àüü Æú´õ¸¦, ±×ÀÇ ÇÏÀ§ Æú´õ¿Í ÆÄÀÏÀ» Æ÷ÇÔÇÏ¿© ¸ðµÎ »èÁ¦ÇÏ·Á¸é FileRemoveDirÀ» »ç¿ëÇϽʽÿÀ.

+ +
+ +

ErrorLevel

+

[v1.1.04+] ÀÌ ¸í·É¾î´Â ½ÇÆнà ¿¹¿Ü¸¦ ´øÁú ¼ö ÀÖ½À´Ï´Ù. ´õ ÀÚ¼¼ÇÑ Á¤º¸´Â ½ÇÇà½Ã°£ ¿¡·¯¸¦ ÂüÁ¶ÇϽʽÿÀ.

+

+ErrorLevelÀº ½ÇÆÐÇÏ¸é »èÁ¦µÈ ÆÄÀÏÀÇ °³¼ö°¡ ¼³Á¤µÇ°í ±×·¸Áö ¾ÊÀ¸¸é 0ÀÌ ¼³Á¤µË´Ï´Ù. *.tmp¿Í °°Àº ¿ÍÀϵåÄ«µå ÆÐÅÏÀ» Áö¿ì¸é ÆÄÀÏÀÌ ÀüÇô ºÎÇÕÇÏÁö ¾Ê´õ¶óµµ ¼º°øÀ¸·Î °£Áֵ˴ϴÙ; ±×·± °æ¿ì ErrorLevelÀº 0ÀÌ ¼³Á¤µË´Ï´Ù.

+

+ÆÄÀÏÀÌ ¹ß°ßµÇ¸é, A_LastError¿¡ 0 (¿µ)ÀÌ ¼³Á¤µÇ°Å³ª ¶Ç´Â ¸¶Áö¸· ½ÇÆÐ Á÷ÈÄ ¿î¿µ üÁ¦ÀÇ GetLastError() ÇÔ¼öÀÇ °á°ú°¡ ¼³Á¤µË´Ï´Ù. ±×·¸Áö ¾ÊÀ¸¸é A_LastError¿¡´Â ¿Ö ¾Æ¹« ÆÄÀÏÀÌ ¹ß°ßµÇÁö ¾Ê¾Ò´ÂÁö ¾Ë·ÁÁÖ´Â ¿¡·¯ Äڵ尡 ´ã±é´Ï´Ù.

+ +

³íÆò

+

+Àбâ-Àü¿ë ÆÄÀÏÀ» »èÁ¦ÇÏ·Á¸é, ¸ÕÀú Àбâ-Àü¿ë ¼Ó¼ºÀ» Áö¿ì½Ê½Ã¿À. ¿¹¸¦ µé¾î: FileSetAttrib, -R, C:\My File.txt.

+ +

°ü·Ã Ç׸ñ

+

FileRecycle, FileRemoveDir, FileCopy, FileMove

+ +

¿¹Á¦

+
FileDelete, C:\temp files\*.tmp
+ + + diff --git a/src/docs/commands/FileEncoding.htm b/src/docs/commands/FileEncoding.htm new file mode 100644 index 0000000..2094dbe --- /dev/null +++ b/src/docs/commands/FileEncoding.htm @@ -0,0 +1,34 @@ + + + + +FileEncoding + + + + + + + +

FileEncoding [AHK_L 42+]

+ +

´ÙÀ½ ¸í·É¾î¿¡ ´ëÇÏ¿© ±âº» ÀÎÄÚµùÀ» ¼³Á¤ÇÕ´Ï´Ù: FileRead, FileReadLine, Loop Read, FileAppend, ±×¸®°í FileOpen.

+ +
FileEncoding [, Encoding]
+

ÀÎÄÚµùÀº ´ÙÀ½ °ª Áß ÇϳªÀÔ´Ï´Ù:

+ + +

³íÆò

+

A_FileEncoding¿¡ ÇöÀç ¼³Á¤ÀÌ ´ã°Ü ÀÖ½À´Ï´Ù.

+ +

°ü·Ã Ç׸ñ

+

FileOpen, StrPut/StrGet, ½ºÅ©¸³Æ® ȣȯ¼º

+ + + diff --git a/src/docs/commands/FileGetAttrib.htm b/src/docs/commands/FileGetAttrib.htm new file mode 100644 index 0000000..1447dd1 --- /dev/null +++ b/src/docs/commands/FileGetAttrib.htm @@ -0,0 +1,67 @@ + + + + +FileGetAttrib + + + + + + + +

FileGetAttrib

+ +

ÆÄÀÏÀ̳ª Æú´õ°¡ Àбâ Àü¿ëÀÎÁö, ¼û¾î ÀÖ´ÂÁö µîµîÀ» º¸°íÇÕ´Ï´Ù.

+ +
FileGetAttrib, OutputVar [, Filename]
+AttributeString := FileExist(FilePattern)
+

¸Å°³º¯¼ö

+
+ +
OutputVar
+

¿­¶÷µÈ ÅؽºÆ®¸¦ ÀúÀåÇÒ º¯¼öÀÇ À̸§.

+ +
Filename
+

¸ñÇ¥ ÆÄÀÏÀÇ À̸§, Àý´ë °æ·Î¸¦ ÁöÁ¤ÇÏÁö ¾ÊÀ¸¸é %A_WorkingDir%¿¡ ÀÖ´Ù°í °£Áֵ˴ϴÙ. »ý·«Çϸé, °¡Àå ¾ÈÂÊ ÆÄÀÏ-ȸµ¹ÀÌ¿¡ ½ÎÀÎ ÇöÀç ÆÄÀÏÀÌ »ç¿ëµË´Ï´Ù.

+ +
+

ErrorLevel

+

[v1.1.04+] ÀÌ ¸í·É¾î´Â ½ÇÆнà ¿¹¿Ü¸¦ ´øÁú ¼ö ÀÖ½À´Ï´Ù. ´õ ÀÚ¼¼ÇÑ Á¤º¸´Â ½ÇÇà½Ã°£ ¿¡·¯¸¦ ÂüÁ¶ÇϽʽÿÀ.

+

ErrorLevelÀº ¹®Á¦°¡ ÀÖÀ¸¸é 1 ¾øÀ¸¸é 0ÀÌ ¼³Á¤µË´Ï´Ù.

+

A_LastError´Â ¿î¿µ üÁ¦ÀÇ GetLastError() ÇÔ¼öÀÇ °á°ú°¡ ¼³Á¤µË´Ï´Ù.

+ +

³íÆò

+

¹ÝȯµÈ ¹®ÀÚ¿­¿¡´Â ´ÙÀ½ "RASHNDOCT" ¹®ÀÚ¿­ÀÇ ºÎ¹®ÀÚ¿­ÀÌ Æ÷ÇԵ˴ϴÙ:
+
+R = READONLY(Àбâ Àü¿ë)
+A = ARCHIVE(º¸°ü)
+S = SYSTEM(½Ã½ºÅÛ)
+H = HIDDEN(°¨Ãã)
+N = NORMAL(Á¤»ó)
+D = DIRECTORY(µð·ºÅ丮)
+O = OFFLINE(¿ÀÇÁ¶óÀÎ)
+C = COMPRESSED(¾ÐÃà)
+T = TEMPORARY(ÀÓ½Ã)

+


+ ƯÁ¤ ¼Ó¼ºÀÌ ¿­¶÷µÈ ¹®ÀÚ¿­¿¡ Á¸ÀçÇÏ´ÂÁö Á¡°ËÇÏ·Á¸é, ´ÙÀ½ ¿¹Á¦¸¦ µû¸£½Ê½Ã¿À:

+ +
FileGetAttrib, Attributes, C:\My File.txt
+IfInString, Attributes, H
+    MsgBox The file is hidden.
+

+°ü·ÃÇÏ¿© ÇÑ ¸¶µð Çϸé, ÆÄÀÏÀÇ 8.3 ªÀº À̸§À» ¿­¶÷ÇÏ·Á¸é, ´ÙÀ½ ¿¹Á¦¸¦ µû¸£½Ê½Ã¿À:

+ +
Loop, C:\My Documents\Address List.txt
+    ShortPathName = %A_LoopFileShortPath%  ; °á°ú´Â ´ÙÀ½°ú ºñ½ÁÇÕ´Ï´Ù: C:\MYDOCU~1\ADDRES~1.txt
+

+ºñ½ÁÇÑ ¹æ¹ýÀ¸·Î 8.3 ªÀº À̸§ÀÇ ±ä À̸§À» ¾òÀ» ¼ö ÀÖ½À´Ï´Ù.

+ +

°ü·Ã Ç׸ñ

+

FileExist(), FileSetAttrib, FileGetTime, FileSetTime, FileGetSize, FileGetVersion, ÆÄÀÏ-ȸµ¹ÀÌ

+ +

¿¹Á¦

+
FileGetAttrib, OutputVar, C:\New Folder
+ + + diff --git a/src/docs/commands/FileGetShortcut.htm b/src/docs/commands/FileGetShortcut.htm new file mode 100644 index 0000000..3ddcd0e --- /dev/null +++ b/src/docs/commands/FileGetShortcut.htm @@ -0,0 +1,69 @@ + + + + +FileGetShortcut + + + + + + + +

FileGetShortcut

+ +

´ÜÃà ÆÄÀÏ (.lnk)¿¡ °üÇÑ Á¤º¸¸¦ ¿­¶÷ÇÕ´Ï´Ù. ¿¹¸¦ µé¾î ´ÜÃà ÆÄÀÏÀÇ ¸ñÇ¥ ÆÄÀÏ.

+ +
FileGetShortcut, LinkFile [, OutTarget, OutDir, OutArgs, OutDescription, OutIcon, OutIconNum, OutRunState]
+

¸Å°³º¯¼ö

+
+ +
LinkFile
+

ºÐ¼®ÇÒ ´ÜÃà ÆÄÀÏÀÇ À̸§. Àý´ë °æ·Î¸¦ ÁöÁ¤ÇÏÁö ¾ÊÀ¸¸é %A_WorkingDir%¿¡ ÀÖ´Ù°í °£Áֵ˴ϴÙ. .lnk È®ÀåÀÚ¸¦ ²À Æ÷ÇÔÇϽʽÿÀ.

+ +
OutTarget
+

´ÜÃà ÆÄÀÏÀÇ ¸ñÇ¥¸¦ ÀúÀåÇÒ º¯¼öÀÇ À̸§ (ÀÎÀÚµéÀº Á¦¿Ü). ¿¹¸¦ µé¾î: C:\WINDOWS\system32\notepad.exe

+ +
OutDir
+

´ÜÃà ÆÄÀÏÀÇ ÀÛ¾÷ µð·ºÅ丮¸¦ ÀúÀåÇÒ º¯¼öÀÇ À̸§. ¿¹¸¦ µé¾î: C:\My Documents. %WinDir% °°Àº ȯ°æ º¯¼ö°¡ ¹®ÀÚ¿­ ¾È¿¡ Á¸ÀçÇϸé, StringReplace¸¦ ÅëÇÏ¿© ÇØ°áÇÕ´Ï´Ù. ¿¹¸¦ µé¾î: StringReplace, OutDir, OutDir, `%WinDir`%, %A_WinDir%.

+ +
OutArgs
+

´ÜÃà ÆÄÀÏÀÇ ¸Å°³º¯¼ö¸¦ ÀúÀåÇÒ º¯¼öÀÇ À̸§ (¾øÀ¸¸é ºñ¾î ÀÖÀ½).

+ +
OutDescription
+

´ÜÃà ÆÄÀÏÀÇ ÁÖ¼®À» ÀúÀåÇÒ º¯¼öÀÇ À̸§ (¾øÀ¸¸é ºñ¾î ÀÖÀ½).

+ +
OutIcon
+

´ÜÃà ÆÄÀÏÀÇ ¾ÆÀÌÄÜ ÆÄÀÏ À̸§À» ÀúÀåÇÒ º¯¼öÀÇ À̸§ (¾øÀ¸¸é ºñ¾î ÀÖÀ½).

+ +
OutIconNum
+

¾ÆÀÌÄÜ ÆÄÀÏ ¾È¿¡¼­ÀÇ ´ÜÃà ÆÄÀÏÀÇ ¾ÆÀÌÄÜ ¹øÈ£¸¦ ÀúÀåÇÒ º¯¼öÀÇ À̸§ (¾øÀ¸¸é ºñ¾î ÀÖÀ½). ÀÌ °ªÀº ´ëºÎºÐ 1ÀÔ´Ï´Ù. ù ¹ø° ¾ÆÀÌÄÜÀ̶ó´Â ¶æÀÔ´Ï´Ù.

+ +
OutRunState
+

´ÜÃà ÆÄÀÏÀÇ ÃÖÃÊ ±âµ¿ »óŸ¦ ÀúÀåÇÒ º¯¼öÀÇ À̸§. ´ÙÀ½ ¼ýÀÚ Áß ÇϳªÀÔ´Ï´Ù:

+

1: Á¤»ó
+ 3: ÃÖ´ë
+ 7: ÃÖ¼Ò
+

+ +
+

ErrorLevel

+

[v1.1.04+] ÀÌ ¸í·É¾î´Â ½ÇÆнà ¿¹¿Ü¸¦ ´øÁú ¼ö ÀÖ½À´Ï´Ù. ´õ ÀÚ¼¼ÇÑ Á¤º¸´Â ½ÇÇà½Ã°£ ¿¡·¯¸¦ ÂüÁ¶ÇϽʽÿÀ.

+

+¹®Á¦°¡ ÀÖ¾ú´Ù¸é -- ¿¹¸¦ µé¾î LinkFileÀÌ Á¸ÀçÇÏÁö ¾Ê´Â´Ù¸é -- ¸ðµç Ãâ·Â º¯¼ö´Â ºñ¿öÁö°í ErrorLevel¿¡ 1ÀÌ ¼³Á¤µË´Ï´Ù. ±×·¸Áö ¾ÊÀ¸¸é 0ÀÌ ¼³Á¤µË´Ï´Ù.

+ +

³íÆò

+

Ãâ·Â º¯¼ö´Â »óÀÀÇÏ´Â Á¤º¸°¡ ÇÊ¿äÇÏÁö ¾ÊÀ¸¸é »ý·«ÇÒ ¼ö ÀÖ½À´Ï´Ù.

+ +

°ü·Ã Ç׸ñ

+

FileCreateShortcut, SplitPath

+ +

¿¹Á¦

+
FileSelectFile, file, 32,, Pick a shortcut to analyze., Shortcuts (*.lnk)
+if file =
+    return
+FileGetShortcut, %file%, OutTarget, OutDir, OutArgs, OutDesc, OutIcon, OutIconNum, OutRunState
+MsgBox %OutTarget%`n%OutDir%`n%OutArgs%`n%OutDesc%`n%OutIcon%`n%OutIconNum%`n%OutRunState%
+ + + diff --git a/src/docs/commands/FileGetSize.htm b/src/docs/commands/FileGetSize.htm new file mode 100644 index 0000000..0f8efd1 --- /dev/null +++ b/src/docs/commands/FileGetSize.htm @@ -0,0 +1,61 @@ + + + + +FileGetSize + + + + + + + +

FileGetSize

+ +

ÆÄÀÏÀÇ Å©±â¸¦ ¿­¶÷ÇÕ´Ï´Ù.

+ +
FileGetSize, OutputVar [, Filename, Units]
+

¸Å°³º¯¼ö

+
+ +
OutputVar
+

¿­¶÷µÈ Å©±â¸¦ ÀúÀåÇÒ º¯¼öÀÇ À̸§ (°¡Àå °¡±î¿î Á¤¼ö·Î ³»¸²µË´Ï´Ù).

+ +
Filename
+

¸ñÇ¥ ÆÄÀÏÀÇ À̸§. Àý´ë °æ·Î¸¦ ÁöÁ¤ÇÏÁö ¾ÊÀ¸¸é %A_WorkingDir%¿¡ ÀÖ´Ù°í °£Áֵ˴ϴÙ. »ý·«Çϸé, ´ë½Å¿¡ ÆÄÀÏ-ȸµ¹ÀÌ °¡Àå ¾ÈÂÊ¿¡ ½Î¿© ÀÖ´Â ÇöÀç ÆÄÀÏÀÌ »ç¿ëµË´Ï´Ù.

+ +
Units
+

Á¸ÀçÇϸé, ¹ÙÀÌÆ®°¡ ¾Æ´Ï¶ó ÁöÁ¤ÇÑ ´ÜÀ§·Î °á°ú¸¦ ¹ÝȯÇÕ´Ï´Ù:
+ K = ų·Î¹ÙÀÌÆ®
+ M = ¸Þ°¡¹ÙÀÌÆ®

+ +
+ +

ErrorLevel

+

[v1.1.04+] ÀÌ ¸í·É¾î´Â ½ÇÆнà ¿¹¿Ü¸¦ ´øÁú ¼ö ÀÖ½À´Ï´Ù. ´õ ÀÚ¼¼ÇÑ Á¤º¸´Â ½ÇÇà½Ã°£ ¿¡·¯¸¦ ÂüÁ¶ÇϽʽÿÀ.

+

ErrorLevel´Â ¹®Á¦°¡ ÀÖÀ¸¸é 1 ¾øÀ¸¸é 0ÀÌ ¼³Á¤µË´Ï´Ù.

+

A_LastError´Â ¿î¿µ üÁ¦ÀÇ GetLastError() ÇÔ¼öÀÇ °á°ú°¡ ¼³Á¤µË´Ï´Ù.

+ +

³íÆò

+

+Å©±â¿¡ »ó°ü¾øÀÌ ÆÄÀÏÀ» Áö¿øÇÕ´Ï´Ù. ½ÉÁö¾î 4 ±â°¡¹ÙÀÌÆ®°¡ ³Ñ¾îµµ Áö¿øÇÕ´Ï´Ù. ¶Ç Units°¡ ¹ÙÀÌÆ®¶óµµ Áö¿øÇÕ´Ï´Ù.

+

+¸ñÇ¥ ÆÄÀÏÀÌ µð·ºÅ丮À̸é, ±× Å©±â´Â OS°¡ ¹Ï´Â Å©±â´ë·Î º¸°íµË´Ï´Ù (´ëºÎºÐÀº 0ÀÌ º¸°íµÉ °ÍÀÔ´Ï´Ù).

+

+Æú´õÀÇ Å©±â¸¦ ±×ÀÇ ¸ðµç ÆÄÀÏÀ» Æ÷ÇÔÇÏ¿© °è»êÇÏ·Á¸é, ´ÙÀ½ ¿¹Á¦¸¦ µû¸£½Ê½Ã¿À:

+ +
SetBatchLines, -1  ; ¿¬»êÀ» ÃÖ´ë ¼Óµµ·Î ¼³Á¤ÇÕ´Ï´Ù.
+FolderSize = 0
+FileSelectFolder, WhichFolder  ; »ç¿ëÀÚ¿¡°Ô Æú´õ¸¦ °í¸£µµ·Ï ¿äûÇÕ´Ï´Ù.
+Loop, %WhichFolder%\*.*, , 1
+    FolderSize += %A_LoopFileSize%
+MsgBox Size of %WhichFolder% is %FolderSize% bytes.
+ +

°ü·Ã Ç׸ñ

+

FileGetAttrib, FileSetAttrib, FileGetTime, FileSetTime, FileGetVersion, File-loop

+

¿¹Á¦

+
FileGetSize, OutputVar, C:\My Documents\test.doc  ; Å©±â¸¦ ¹ÙÀÌÆ® ´ÜÀ§·Î ¿­¶÷ÇÕ´Ï´Ù.
+FileGetSize, OutputVar, C:\My Documents\test.doc, K  ; Å©±â¸¦ Kbytes ´ÜÀ§·Î ¿­¶÷ÇÕ´Ï´Ù.
+ + + diff --git a/src/docs/commands/FileGetTime.htm b/src/docs/commands/FileGetTime.htm new file mode 100644 index 0000000..832c443 --- /dev/null +++ b/src/docs/commands/FileGetTime.htm @@ -0,0 +1,53 @@ + + + + +FileGetTime + + + + + + + +

FileGetTime

+ +

ÆÄÀÏÀ̳ª Æú´õÀÇ ³¯Â¥½Ã°£ µµÀåÀ» ¿­¶÷ÇÕ´Ï´Ù.

+ +
FileGetTime, OutputVar [, Filename, WhichTime]
+

¸Å°³º¯¼ö

+
+ +
OutputVar
+

¿­¶÷µÈ ³¯Â¥-½Ã°£À» ÀúÀåÇÒ º¯¼öÀÇ À̸§. Çü½ÄÀº YYYYMMDDHH24MISSÀÔ´Ï´Ù. ½Ã°£Àº Áö¿ª ½Ã°£ÀÌÁö, UTC/GMT°¡ ¾Æ´Õ´Ï´Ù.

+ +
Filename
+

¸ñÇ¥ ÆÄÀÏÀ̳ª Æú´õÀÇ À̸§. Àý´ë °æ·Î¸¦ ÁöÁ¤ÇÏÁö ¾ÊÀ¸¸é %A_WorkingDir%¿¡ ÀÖ´Ù°í °£ÁÖÇÕ´Ï´Ù. »ý·«Çϸé, ÆÄÀÏ-ȸµ¹ÀÌÀÇ °¡Àå ¾ÈÂÊ¿¡ ½ÎÀÎ ÇöÀç ÆÄÀÏÀÌ ´ë½Å »ç¿ëµË´Ï´Ù.

+ +
WhichTime
+
¿­¶÷ÇÒ ½Ã°£µµÀå:
+ M = º¯°æ½Ã°£ (¸Å°³º¯¼ö¸¦ »ý·«Çϸé ÀÌ°ÍÀÌ ±âº»°ª)
+ C = »ý¼º ½Ã°£
+ A = ¸¶Áö¸· Á¢±Ù ½Ã°£
+ +
+ +

ErrorLevel

+

[v1.1.04+] ÀÌ ¸í·É¾î´Â ½ÇÆнà ¿¹¿Ü¸¦ ´øÁú ¼ö ÀÖ½À´Ï´Ù. ´õ ÀÚ¼¼ÇÑ Á¤º¸´Â ½ÇÇà½Ã°£ ¿¡·¯¸¦ ÂüÁ¶ÇϽʽÿÀ.

+

ErrorLevelÀº ¹®Á¦°¡ ÀÖÀ¸¸é 1 ¾øÀ¸¸é 0ÀÌ ¼³Á¤µË´Ï´Ù.

+

A_LastError´Â ¿î¿µ üÁ¦ÀÇ GetLastError() ÇÔ¼öÀÇ °á°ú°¡ ¼³Á¤µË´Ï´Ù.

+ +

³íÆò

+

+³¯Â¥¿Í ½Ã°£¿¡ °üÇÑ ¼³Á¤Àº YYYYMMDDHH24MISS¸¦ ÂüÁ¶ÇϽʽÿÀ.

+ +

°ü·Ã Ç׸ñ

+

+FileSetTime, FormatTime, If var is [not] type, FileGetAttrib, FileSetAttrib, FileGetSize, FileGetVersion, File-ȸµ¹ÀÌ, EnvAdd, EnvSub

+ +

¿¹Á¦

+
FileGetTime, OutputVar, C:\My Documents\test.doc  ; ±âº»À¸·Î º¯°æ ½Ã°£À» ¿­¶÷ÇÕ´Ï´Ù.
+FileGetTime, OutputVar, C:\My Documents\test.doc, C  ; »ý¼º ½Ã°£À» ¿­¶÷ÇÕ´Ï´Ù.
+ + + diff --git a/src/docs/commands/FileGetVersion.htm b/src/docs/commands/FileGetVersion.htm new file mode 100644 index 0000000..f2add78 --- /dev/null +++ b/src/docs/commands/FileGetVersion.htm @@ -0,0 +1,47 @@ + + + + +FileGetVersion + + + + + + + +

FileGetVersion

+ +

ÆÄÀÏÀÇ ¹öÀüÀ» ¿­¶÷ÇÕ´Ï´Ù.

+ +
FileGetVersion, OutputVar [, Filename]
+

¸Å°³º¯¼ö

+
+ +
OutputVar
+

¹öÀü ¹øÈ£/¹®ÀÚ¿­À» ÀúÀåÇÒ º¯¼öÀÇ À̸§.

+ +
Filename
+

¸ñÇ¥ ÆÄÀÏÀÇ À̸§, Àý´ë °æ·Î¸¦ ÁöÁ¤ÇÏÁö ¾ÊÀ¸¸é %A_WorkingDir%¿¡ ÀÖ´Ù°í °£Áֵ˴ϴÙ. »ý·«µÇ¸é, ÆÄÀÏ-ȸµ¹ÀÌÀÇ °¡Àå ¾ÈÂÊ¿¡ ½ÎÀÎ ÇöÀç ÆÄÀÏÀÌ ´ë½Å »ç¿ëµË´Ï´Ù.

+ +
+ +

ErrorLevel

+

[v1.1.04+] ÀÌ ¸í·É¾î´Â ½ÇÆнà ¿¹¿Ü¸¦ ´øÁú ¼ö ÀÖ½À´Ï´Ù. ´õ ÀÚ¼¼ÇÑ Á¤º¸´Â ½ÇÇà½Ã°£ ¿¡·¯¸¦ ÂüÁ¶ÇϽʽÿÀ.

+

ErrorLevelÀº ¹®Á¦°¡ ÀÖÀ¸¸é 1 ¾øÀ¸¸é 0ÀÌ ¼³Á¤µË´Ï´Ù.

+

A_LastErrorÀº ¿î¿µ üÁ¦ÀÇ GetLastError() ÇÔ¼öÀÇ °á°ú°¡ ¼³Á¤µË´Ï´Ù.

+ +

³íÆò

+

+´ëºÎºÐÀÇ ºñ-½ÇÇà ÆÄÀÏ (½ÉÁö¾î ¾î¶² EXE ÆÄÀÏ)Àº ¹öÀüÀÌ ¾ø½À´Ï´Ù. ±×·¡¼­ ÀÌ·± °æ¿ì´Â OutputVar°¡ ºñ¾î ÀÖ½À´Ï´Ù.

+ +

°ü·Ã Ç׸ñ

+

+FileGetAttrib, FileSetAttrib, FileGetTime, FileSetTime, FileGetSize, File-ȸµ¹ÀÌ

+ +

¿¹Á¦

+
FileGetVersion, version, C:\My Application.exe
+FileGetVersion, version, %A_ProgramFiles%\AutoHotkey\AutoHotkey.exe
+ + + diff --git a/src/docs/commands/FileInstall.htm b/src/docs/commands/FileInstall.htm new file mode 100644 index 0000000..266aafc --- /dev/null +++ b/src/docs/commands/FileInstall.htm @@ -0,0 +1,59 @@ + + + + +FileInstall + + + + + + + +

FileInstall

+ +

+ÁöÁ¤µÈ ÆÄÀÏÀ» ½ºÅ©¸³Æ®ÀÇ ÄÄÆÄÀÏ ¹öÀü¿¡ Æ÷ÇÔ½Ãŵ´Ï´Ù.

+ +
FileInstall, Source, Dest [, Flag]
+

¸Å°³º¯¼ö

+
+ +
Source
+

ÄÄÆÄÀÏµÈ EXE¿¡ Ãß°¡ÇÒ ÆÄÀÏÀÇ À̸§. Àý´ë °æ·Î¸¦ ÁöÁ¤ÇÏÁö ¾ÊÀ¸¸é ÆÄÀÏÀÌ ½ºÅ©¸³Æ® ÀÚ½ÅÀÇ µð·ºÅ丮¿¡ (¶Ç´Â »ó´ëÀûÀ¸·Î) ÀÖ´Ù°í °£Áֵ˴ϴÙ.

+

+ ÆÄÀÏ À̸§¿¡´Â °ãµû¿ÈÇ¥, º¯¼ö ÂüÁ¶ (¿¹, %A_ProgramFiles%) ¶Ç´Â ¿ÍÀϵåÄ«µå°¡ Æ÷ÇÔµÇ¸é ¾È µË´Ï´Ù. °Ô´Ù°¡, (¸ðµç ´Ù¸¥ ¸í·É¾îÀÇ ¸Å°³º¯¼ö¿Í ¶È °°ÀÌ) ±ÛÀÚ ±×´ë·ÎÀÇ ÆÛ¼¾Æ®¿Í ½°Ç¥ °°Àº Ư¼ö ¹®ÀÚµéÀº ÇǽŠ½ÃÄÑ¾ß ÇÕ´Ï´Ù. ¸¶Áö¸·À¸·Î, ÀÌ ¸Å°³º¯¼ö´Â FileInstall ¸í·É¾îÀÇ ¿À¸¥ÂÊ¿¡ ³ª¿­ÇØ¾ß ÇÕ´Ï´Ù (Áï, ±× ¾Æ·¡ÀÇ °è¼Ó ¼½¼Ç¿¡ ³ª¿­ÇÏ¸é ¾È µË´Ï´Ù).

+ +
Dest
+

Source¸¦ EXE·ÎºÎÅÍ ÃßÃâÇÒ ¶§, ÀÌ°ÍÀÌ »ý¼ºµÉ ÆÄÀÏÀÇ À̸§ÀÔ´Ï´Ù. Àý´ë °æ·Î¸¦ ÁöÁ¤ÇÏÁö ¾ÊÀ¸¸é %A_WorkingDir%¿¡ ÀÖ´Ù°í °£Áֵ˴ϴÙ. ¸ñÇ¥ µð·ºÅ丮´Â ÀÌ¹Ì Á¸ÀçÇØ¾ß ÇÕ´Ï´Ù. Source¿Í ´Ù¸£°Ô, º¯¼ö ÂüÁ¶¸¦ »ç¿ëÇصµ µË´Ï´Ù.

+ +
Flag
+

(¼±ÅÃÀû) ÀÌ Ç÷¡±×´Â ÆÄÀÏÀÌ ÀÌ¹Ì Á¸ÀçÇÏ¸é µ¤¾î¾µÁö ¸»Áö °áÁ¤ÇÕ´Ï´Ù:

+

0 = (±âº»°ª) ±âÁ¸ÀÇ ÆÄÀÏÀ» µ¤¾î¾²Áö ¾Ê½À´Ï´Ù
+ 1 = ±âÁ¸ÀÇ ÆÄÀÏÀ» µ¤¾î¾¹´Ï´Ù

+

ÀÌ ¸Å°³º¯¼ö´Â Ç¥Çö½ÄÀÏ ¼ö ÀÖ½À´Ï´Ù. ½ÉÁö¾î ÂüÀ̳ª °ÅÁþÀ¸·Î Æò°¡µÇ¸é ¹«¾ùÀÌµç µÉ ¼ö ÀÖ½À´Ï´Ù (Âü°ú °ÅÁþÀº ³»ºÎÀûÀ¸·Î 1°ú 0À¸·Î ÀúÀåµÇ±â ¶§¹®ÀÔ´Ï´Ù).

+ +
+

ErrorLevel

+

[v1.1.04+] ÀÌ ¸í·É¾î´Â ½ÇÆнà ¿¹¿Ü¸¦ ´øÁú ¼ö ÀÖ½À´Ï´Ù. ´õ ÀÚ¼¼ÇÑ Á¤º¸´Â ½ÇÇà½Ã°£ ¿¡·¯¸¦ ÂüÁ¶ÇϽʽÿÀ.

+

ErrorLevel´Â ¹®Á¦°¡ ÀÖÀ¸¸é 1 ¾øÀ¸¸é 0ÀÌ ¼³Á¤µË´Ï´Ù.

+ +

°ü·Ã Ç׸ñ

+

+ÀÌ ¸í·É¾î´Â Ahk2Exe ÄÄÆÄÀÏ·¯¸¦ À§ÇÑ Áö½Ã¾îÀÔ´Ï´Ù. ÆÄÀÏÀ» ÄÄÆÄÀÏ ½ºÅ©¸³Æ® °á°ú¿¡ Ãß°¡ÇÒ ¼ö ÀÖ½À´Ï´Ù. ³ªÁß¿¡, ÄÄÆÄÀÏ ½ºÅ©¸³Æ®°¡ ½ÇÇàµÇ¸é, ÆÄÀÏÀÌ ´Ù½Ã µð½ºÅ©·Î ÃßÃâµË´Ï´Ù.

+

+ÀÌ ÆÄÀÏÀº ½ºÅ©¸³Æ® ÄÄÆÄÀÏ ½Ã°£¿¡ Ãß°¡µË´Ï´Ù. ÄÄÆÄÀÏµÈ ½ºÅ©¸³Æ®°¡ ½ÇÇàµÉ ¶§ ¶È °°Àº "FileInstall" ¸í·É¾î¸¦ ¸¸³ª¸é, ±× ÆÄÀÏÀº ÀÌÁ¦ Dest·Î ÃßÃâµË´Ï´Ù.

+

+½ºÅ©¸³Æ®¿¡ Ãß°¡µÈ ÆÄÀÏÀº ¾ÐÃàµÇ°í ¶Ç ¾ÏȣȭµË´Ï´Ù.

+

+ÀÌ ¸í·É¾î¸¦ Á¤»óÀÇ (ÄÄÆÄÀÏ ¾È µÈ) ½ºÅ©¸³Æ®¿¡ »ç¿ëÇϸé, ´ë½Å¿¡ °£´ÜÇÑ ÆÄÀÏ º¹»ç°¡ ¼öÇàµË´Ï´Ù -- ±×·¡¼­ ½ºÅ©¸³Æ®°¡ °á±¹ Á¦´ë·Î ÄÄÆÄÀϵÉÁö Å×½ºÆ®ÇÏ´Â µ¥ µµ¿òÀÌ µË´Ï´Ù.

+ +

°ü·Ã Ç׸ñ

+

+FileCopy, #Include

+ +

¿¹¿Ü

+
FileInstall, C:\My Documents\My File.txt, %A_ProgramFiles%\My Application\Readme.txt, 1
+ + + diff --git a/src/docs/commands/FileMove.htm b/src/docs/commands/FileMove.htm new file mode 100644 index 0000000..ecd53e8 --- /dev/null +++ b/src/docs/commands/FileMove.htm @@ -0,0 +1,91 @@ + + + + +FileMove + + + + + + + +

FileMove

+ +

ÆÄÀÏÀ» À̵¿ÇÕ´Ï´Ù.

+ +
FileMove, SourcePattern, DestPattern [, Flag]
+

¸Å°³º¯¼ö

+
+ +
SourcePattern
+

´ÜÀÏ ÆÄÀÏÀÇ À̸§ ¶Ç´Â C:\Temp\*.tmp¿Í °°Àº ¿ÍÀϵåÄ«µå ÆÐÅÏ. SourcePatternÀº Àý´ë °æ·Î¸¦ ÁöÁ¤ÇÏÁö ¾ÊÀ¸¸é %A_WorkingDir%¿¡ ÀÖ´Ù°í °£Áֵ˴ϴÙ.

+ +
DestPattern
+

¸ñÇ¥ÀÇ À̸§ ¶Ç´Â ÆÐÅÏ. Àý´ë °æ·Î¸¦ ÁöÁ¤ÇÏÁö ¾ÊÀ¸¸é %A_WorkingDir%¿¡ ÀÖ´Ù°í °£Áֵ˴ϴÙ. °£´ÜÇÑ À̵¿À» ¼öÇàÇÏ·Á¸é -- ±âÁ¸ÀÇ ÆÄÀÏ À̸§Àº ±×´ë·Î µÎ°í -- Æú´õ À̸§¸¸ ÁöÁ¤ÇϽʽÿÀ. ´ÙÀ½ µÎ ¿¹Á¦´Â ±â´É»ó µ¿µîÇÕ´Ï´Ù:

+
FileMove, C:\*.txt, C:\My Folder
+
FileMove, C:\*.txt, C:\My Folder\*.*
+
+ +
Flag
+

(¼±ÅÃÀû) ÀÌ Ç÷¡±×´Â ÆÄÀÏÀÌ ÀÌ¹Ì Á¸ÀçÇÏ¸é µ¤¾î¾µÁö ¸»Áö °áÁ¤ÇÕ´Ï´Ù:

+

0 = (±âº») ±âÁ¸ÀÇ ÆÄÀÏÀ» µ¤¾î¾²Áö ¾Ê½À´Ï´Ù
+ 1 = ±âÁ¸ÀÇ ÆÄÀÏÀ» µ¤¾î¾¹´Ï´Ù

+

ÀÌ ¸Å°³º¯¼ö´Â Ç¥Çö½ÄÀÏ ¼ö ÀÖ½À´Ï´Ù. ½ÉÁö¾î ÂüÀ̳ª °ÅÁþÀ¸·Î Æò°¡µÇ¸é ¹«¾ùÀÌµç µÉ ¼ö ÀÖ½À´Ï´Ù. (Âü°ú °ÅÁþÀº ³»ºÎÀûÀ¸·Î 1°ú 0À¸·Î ÀúÀåµÇ±â ¶§¹®ÀÔ´Ï´Ù).

+ +
+ +

ErrorLevel

+

[v1.1.04+] ÀÌ ¸í·É¾î´Â ½ÇÆнà ¿¹¿Ü¸¦ ´øÁú ¼ö ÀÖ½À´Ï´Ù. ´õ ÀÚ¼¼ÇÑ Á¤º¸´Â ½ÇÇà½Ã°£ ¿¡·¯¸¦ ÂüÁ¶ÇϽʽÿÀ.

+

ErrorLevelÀº ¿¡·¯ ¶§¹®¿¡ À̵¿¿¡ ½ÇÆÐÇÑ ÆÄÀÏÀÇ °³¼ö°¡ ¼³Á¤µË´Ï´Ù. ±×·¸Áö ¾ÊÀ¸¸é 0ÀÌ ¼³Á¤µË´Ï´Ù. ±×·¸Áö¸¸, ¼Ò½º ÆÄÀÏÀÌ ´ÜÀÏ ÆÄÀÏÀÌ°í (¿ÍÀϵåÄ«µå ¾øÀ½) ±×¸®°í Á¸ÀçÇÏÁö ¾ÊÀ¸¸é, ErrorLevelÀº 0ÀÌ ¼³Á¤µË´Ï´Ù. ÀÌ »óȲÀ» ŽÁöÇÏ·Á¸é À̵¿Çϱâ Àü¿¡ ¸ÕÀú ¼Ò½ºÆÄÀÏ¿¡ IfExist ¶Ç´Â FileExist()¸¦ »ç¿ëÇϽʽÿÀ.

+

+FileCopy¿Í ´Ù¸£°Ô, ÆÄÀÏÀ» Àڽſ¡ À̵¿ÇÏ¸é ¾ðÁ¦³ª ¼º°øÇÑ °ÍÀ¸·Î °£Áֵ˴ϴÙ. µ¤¾î¾²±â ¸ðµå°¡ ÄÑÁ® ÀÖÁö ¾Ê¾Æµµ ¸¶Âù°¡ÁöÀÔ´Ï´Ù.

+

+ÆÄÀÏÀÌ ¹ß°ßµÇ¸é, A_LastError´Â 0 (¿µ)ÀÌ ¼³Á¤µÇ°Å³ª ¶Ç´Â ¸¶Áö¸· ½ÇÆÐÈÄ Áï½Ã ¿î¿µ üÁ¦ÀÇ GetLastError() ÇÔ¼öÀÇ °á°ú°¡ ¼³Á¤µË´Ï´Ù. ±×·¸Áö ¾ÊÀ¸¸é A_LastError¿¡´Â ¿Ö ÆÄÀÏÀÌ ¹ß°ßµÇÁö ¾Ê¾Ò´ÂÁö ¾Ë·ÁÁÖ´Â ¿¡·¯ Äڵ尡 ´ã±é´Ï´Ù.

+ +

³íÆò

+

+FileMove´Â ÆÄÀϸ¸ À̵¿ÇÕ´Ï´Ù. ´ë½Å Æú´õÀÇ ³»¿ëÀ» (±×ÀÇ ¸ðµç ÆÄÀÏ°ú ÇÏÀ§ Æú´õ¸¦ Æ÷ÇÔÇÏ¿©) À̵¿ÇÏ·Á¸é, ¾Æ·¡ ¼½¼ÇÀÇ ¿¹Á¦¸¦ ÂüÁ¶ÇϽʽÿÀ. ´ÜÀÏ Æú´õ¸¦ À̵¿Çϰųª À̸§À» ¹Ù²Ù·Á¸é, FileMoveDirÀ» »ç¿ëÇϽʽÿÀ.

+

+¿¡·¯¸¦ ¸¸³ª´õ¶óµµ À̵¿À» °è¼Ó ÁøÇàÇÕ´Ï´Ù.

+

+ÀÌ ¸í·É¾î´Â ÆÄÀÏÀ» ´Ù¸¥ º¼·ý¿¡ À̵¿½Ãų ¼ö ÀÖÁö¸¸, °°Àº-º¼·ý À̵¿º¸´Ù ½Ã°£ÀÌ ´õ °É¸³´Ï´Ù. ÀÌ°ÍÀº °°Àº-º¼·ý À̵¿Àº À̸§À» ¹Ù²Ù´Â °Í°ú ºñ½ÁÇÏ°í, ±×·¡¼­ ÈξÀ ´õ ºü¸£±â ¶§¹®ÀÔ´Ï´Ù.

+ +

°ü·Ã Ç׸ñ

+

+FileCopy, FileCopyDir, FileMoveDir, FileDelete

+ +

¿¹Á¦

+ +
FileMove, C:\My Documents\List1.txt, D:\Main Backup\  ; À̸§À» ¹Ù²ÙÁö ¾Ê°í ÆÄÀÏÀ» À̵¿ÇÕ´Ï´Ù.
+FileMove, C:\File Before.txt, C:\File After.txt  ; ´ÜÀÏ ÆÄÀÏÀÇ À̸§À» ¹Ù²ß´Ï´Ù.
+FileMove, C:\Folder1\*.txt, D:\New Folder\*.bkp  ; ÆÄÀÏÀ» »õ È®ÀåÀÚ·Î ¹Ù²Ù°í À̵¿ÇÕ´Ï´Ù.
+

 

+
; ´ÙÀ½ ¿¹Á¦´Â ÇÑ Æú´õ ¾ÈÀÇ ¸ðµç ÆÄÀÏ°ú Æú´õ¸¦ ´Ù¸¥ Æú´õ·Î À̵¿ÇÕ´Ï´Ù:
+ErrorCount := MoveFilesAndFolders("C:\My Folder\*.*", "D:\Folder to receive all files & folders")
+if ErrorCount <> 0
+    MsgBox %ErrorCount% files/folders could not be moved.
+
+MoveFilesAndFolders(SourcePattern, DestinationFolder, DoOverwrite = false)
+; SourcePattern¿¡ ºÎÇÕÇÏ´Â ¸ðµç ÆÄÀÏ°ú Æú´õ¸¦ DestinationFolder À̸§ÀÇ Æú´õ¿¡ À̵¿ÇÏ°í
+; À̵¿¿¡ ½ÇÆÐÇÑ ÆÄÀÏ/Æú´õÀÇ °³¼ö¸¦ µ¹·ÁÁÝ´Ï´Ù.
+; ÀÌ ÇÔ¼ö´Â FileMoveDirÀÇ ¸ðµå 2¸¦ »ç¿ëÇϱ⠶§¹®¿¡ v1.0.38+ÀÌ ÇÊ¿äÇÕ´Ï´Ù.
+{
+    if DoOverwrite = 1
+        DoOverwrite = 2  ; mode 2 vs. 1 »çÀÌÀÇ ¼³¸íÀº FileMoveDirÀ» ÂüÁ¶ÇϽʽÿÀ.
+    ; ¸ÕÀú ¸ðµç ÆÄÀÏÀ» À̵¿ÇÕ´Ï´Ù (Æú´õ´Â À̵¿ÇÏÁö ¾Ê½À´Ï´Ù):
+    FileMove, %SourcePattern%, %DestinationFolder%, %DoOverwrite%
+    ErrorCount := ErrorLevel
+    ; ÀÌÁ¦ ¸ðµç Æú´õ¸¦ À̵¿ÇÕ´Ï´Ù:
+    Loop, %SourcePattern%, 2  ; 2´Â "Æú´õ¸¸ ¿­¶÷Ç϶ó"´Â ¶æÀÔ´Ï´Ù.
+    {
+        FileMoveDir, %A_LoopFileFullPath%, %DestinationFolder%\%A_LoopFileName%, %DoOverwrite%
+        ErrorCount += ErrorLevel
+        if ErrorLevel  ; ¹®Á¦ÀÇ Æú´õ¸¦ À̸§À¸·Î º¸°íÇÕ´Ï´Ù.
+            MsgBox Could not move %A_LoopFileFullPath% into %DestinationFolder%.
+    }
+    return ErrorCount
+}
+ + + diff --git a/src/docs/commands/FileMoveDir.htm b/src/docs/commands/FileMoveDir.htm new file mode 100644 index 0000000..afd456a --- /dev/null +++ b/src/docs/commands/FileMoveDir.htm @@ -0,0 +1,56 @@ + + + + +FileMoveDir + + + + + + + +

FileMoveDir

+ +

Æú´õ¸¦ ±×ÀÇ ¸ðµç ÇÏÀ§ Æú´õ¸¦ Æ÷ÇÔÇÏ¿© À̵¿ÇÕ´Ï´Ù. Æú´õÀÇ À̸§À» ¹Ù²Ü ¼öµµ ÀÖ½À´Ï´Ù.

+ +
FileMoveDir, Source, Dest [, Flag]
+

¸Å°³º¯¼ö

+
+ +
Source
+

¼Ò½º µð·ºÅ丮ÀÇ À̸§ (µÚ¿¡ ¿ª»ç¼± ¾øÀ½), Àý´ë °æ·Î¸¦ ÁöÁ¤ÇÏÁö ¾ÊÀ¸¸é %A_WorkingDir%¿¡ ÀÖ´Ù°í°£Áֵ˴ϴÙ. ¿¹¸¦ µé¾î: C:\My Folder

+ +
Dest
+

µð·ºÅ丮ÀÇ »õ·Î¿î °æ·Î¿Í À̸§ (µÚ¿¡ ¿ª»ç¼± ¾øÀ½), Àý´ë °æ·Î¸¦ ÁöÁ¤ÇÏÁö ¾ÊÀ¸¸é %A_WorkingDir%¿¡ ÀÖ´Ù°í °£Áֵ˴ϴÙ. ¿¹¸¦ µé¾î: D:\My Folder. ÁÖÀÇ: Dest´Â À̵¿ÇÑ ÈÄ¿¡ µð·ºÅ丮°¡ °®°Ô µÉ ½ÇÁ¦ °æ·Î¿Í À̸§ÀÔ´Ï´Ù; Source°¡ À̵¿µÇ¾î µé¾î °¥ µð·ºÅ丮°¡ ¾Æ´Õ´Ï´Ù (¾Æ·¡¿¡ ±â¼úÇÑ ¾Ë·ÁÁø ÇÑ°è´Â ¿¹¿ÜÀÔ´Ï´Ù).

+ +
Flag
+

(¿É¼Ç) ´ÙÀ½ ´ÜÀÏ ¹®ÀÚ Áß Çϳª¸¦ ÁöÁ¤ÇϽʽÿÀ:

+

0 (±âº»°ª): ±âÁ¸ÀÇ ÆÄÀÏÀ» µ¤¾î¾²Áö ¾Ê½À´Ï´Ù. Dest°¡ ÀÌ¹Ì ÆÄÀÏÀ̳ª Æú´õ·Î Á¸ÀçÇϸé À̵¿Àº ½ÇÆÐÇÕ´Ï´Ù.

+

1: ±âÁ¸ÀÇ ÆÄÀÏÀ» µ¤¾î¾¹´Ï´Ù. ±×·¸Áö¸¸, Dest ¾ÈÀÇ ÆÄÀÏÀ̳ª Æú´õ°¡ Source¿¡ ¦ÀÌ ¾øÀ¸¸é »èÁ¦µÇÁö ¾Ê½À´Ï´Ù. ¾Ë·ÁÁø ÇÑ°è: Dest°¡ ÀÌ¹Ì Æú´õ·Î Á¸ÀçÇÏ°í Source¿Í °°Àº º¼·ý¿¡ ÀÖ´Ù¸é, Source´Â ±×¸¦ µ¤¾î ¾²´Â°Ô ¾Æ´Ï¶ó ±× ¾ÈÀ¸·Î À̵¿µÇ¾î µé¾î°©´Ï´Ù. À̸¦ ÇÇÇÏ·Á¸é, ´ÙÀ½ ¿É¼ÇÀ» Âü°íÇϽʽÿÀ.

+

2: À§ÀÇ ¸ðµå 1°ú µ¿ÀÏÇÏÁö¸¸ Á¦ÇÑÀÌ ¾ø½À´Ï´Ù.

+

R: µð·ºÅ丮¸¦ À̵¿ÇÏÁö ¾Ê°í ±× À̸§À» º¯°æÇÕ´Ï´Ù. º¸Åë À̸§À» º¯°æÇÏ´Â °ÍÀº À̵¿ÇÑ °Í°ú È¿°ú°¡ °°Áö¸¸, "¸ðµÎ ¾Æ´Ï¸é ¸ðµÎ ¾Æ´Ô" ÇàÀ§¸¦ ¿øÇÒ °æ¿ì µµ¿òÀÌ µË´Ï´Ù; + Áï, Source³ª ±×ÀÇ ÆÄÀÏ Áß Çϳª°¡ Àá°Ü ÀÖÀ» ¶§ (»ç¿ë ÁßÀÏ ¶§) À̵¿ÀÌ ºÎºÐÀûÀ¸·Î¸¸ ¼º°øÇÏ´Â °ÍÀ» ¿øÇÏÁö ¾ÊÀ» °æ¿ì¿¡ µµ¿òÀÌ µË´Ï´Ù. ÀÌ ¹æ¹ýÀº Source¸¦ ´Ù¸¥ º¼·ýÀ¸·Î À̵¿ÇÒ ¼ö ¾ø½À´Ï´Ù. ¿ÀÁ÷ ÀÚ½ÅÀÇ º¼·ý¿¡ ÀÖ´Â ´Ù¸¥ µð·ºÅ丮·Î¸¸ À̵¿ÇÒ ¼ö ÀÖ½À´Ï´Ù. Dest°¡ ÀÌ¹Ì ÆÄÀÏÀ̳ª Æú´õ·Î Á¸ÀçÇϸé À̵¿¿¡ ½ÇÆÐÇÕ´Ï´Ù.

+ +
+ +

ErrorLevel

+

[v1.1.04+] ÀÌ ¸í·É¾î´Â ½ÇÆнà ¿¹¿Ü¸¦ ´øÁú ¼ö ÀÖ½À´Ï´Ù. ´õ ÀÚ¼¼ÇÑ Á¤º¸´Â ½ÇÇà½Ã°£ ¿¡·¯¸¦ ÂüÁ¶ÇϽʽÿÀ.

+

ErrorLevelÀº ¹®Á¦°¡ ÀÖÀ¸¸é 1 ¾øÀ¸¸é 0ÀÌ ¼³Á¤µË´Ï´Ù.

+

³íÆò

+

+FileMoveDirÀº ´ÜÀÏ Æú´õ¸¦ »õ À§Ä¡·Î À̵¿ÇÕ´Ï´Ù. ´ë½Å Æú´õÀÇ ³»¿ëÀ» (±×ÀÇ ¸ðµç ÆÄÀÏ°ú ÇÏÀ§ µð·ºÅ丮¸¦ Æ÷ÇÔÇÏ¿©) À̵¿ÇÏ·Á¸é, FileMove ¼½¼ÇÀÇ ¿¹Á¦¸¦ ÂüÁ¶ÇϽʽÿÀ.

+

+¼Ò½º¿Í ¸ñÇ¥°¡ ´Ù¸¥ º¼·ý¿¡ Àְųª UNC °æ·Î¿¡ ÀÖÀ¸¸é, À̵¿ÀÌ ¾Æ´Ï¶ó º¹»ç/Á¦°Å ¿¬»êÀÌ ¼öÇàµË´Ï´Ù.

+ +

°ü·Ã Ç׸ñ

+

+FileCopyDir, FileCopy, FileMove, FileDelete, File-ȸµ¹ÀÌ, FileSelectFolder, SplitPath

+ +

¿¹Á¦

+
FileMoveDir, C:\My Folder, D:\My Folder  ; »õ µå¶óÀ̺ê·Î À̵¿½Ãŵ´Ï´Ù.
+FileMoveDir, C:\My Folder, C:\My Folder (renamed), R  ; °£´ÜÇÑ À̸§ º¯°æ.
+FileMoveDir, C:\My Folder, C:\New Location\My Folder, R  ; Æú´õ´Â °°Àº Æú´õ¿¡ ÀÖÀ¸¸é "À̸§À» ¹Ù²Ù¾î" ´Ù¸¥ À§Ä¡·Î À̵¿ÇÒ ¼ö ÀÖ½À´Ï´Ù.
+ + + diff --git a/src/docs/commands/FileOpen.htm b/src/docs/commands/FileOpen.htm new file mode 100644 index 0000000..e9356eb --- /dev/null +++ b/src/docs/commands/FileOpen.htm @@ -0,0 +1,130 @@ + + + + +FileOpen + + + + + + + + +

FileOpen [AHK_L 42+]

+ +

ÆÄÀÏÀ» ¿±´Ï´Ù.

+
file := FileOpen(Filename, Flags [, Encoding])
+ +

¸Å°³º¯¼ö

+
+ +
Filename
+
+

¿­ ÆÄÀÏÀÇ °æ·Î. Àý´ë °æ·Î¸¦ ÁöÁ¤ÇÏÁö ¾ÊÀ¸¸é A_WorkingDir¿¡ ÀÖ´Ù°í °£Áֵ˴ϴÙ.

+

[v1.1.17+]: Ç¥ÁØ ÀÔ·Â/Ãâ·Â/¿¡·¯ ½ºÆ®¸²À» ¿­·Á¸é º°Ç¥¸¦ (¶Ç´Â º°Ç¥ µÎ °³¸¦) ¾Æ·¡¿¡ º¸¿©ÁÖ´Â ¹Ù¿Í °°ÀÌ ÁöÁ¤ÇϽʽÿÀ:

+
+FileOpen("*", "r")   ; Ç¥ÁØÀÔ·Â
+FileOpen("*", "w")   ; Ç¥ÁØÃâ·Â
+FileOpen("**", "w")  ; Ç¥ÁØ¿¡·¯
+
+ +
Flags
+

[in AHK_L 54+] ¿øÇÏ´Â Á¢±Ù ¸ðµå¸¦ °¡¸®Å°´Â ¹®ÀÚ ±×¸®°í ´ÙÀ½¿¡ ´Ù¸¥ ¿É¼ÇÀÌ µû¶ó¿Í ±¸¼ºµÈ ¹®ÀÚ¿­ (¼±ÅÃÀûÀ¸·Î »çÀÌ¿¡ ½ºÆäÀ̽º ¶Ç´Â ÅÇ); ¶Ç´Â [ AHK_L 42+] ¼ýÄ¡ Ç÷¡±×ÀÇ Á¶ÇÕ (ÇÕ°è). Áö¿øµÇ´Â °ªµéÀº ¾Æ·¡ Å×ÀÌºí¿¡ ±â¼úÇÕ´Ï´Ù.

+ +
Encoding
+

ÆÄÀÏ¿¡ UTF-8 ¶Ç´Â UTF-16 ¹ÙÀÌÆ® ¼ø¼­ Ç¥½ÄÀÌ ¾øÀ» ¶§, ¶Ç´Â h (ÇÚµé) ÇÁ·¡±×°¡ »ç¿ëµÉ ¶§ ÅؽºÆ® I/O¿¡ »ç¿ëÇÒ ÄÚµå ÆäÀÌÁöÀÔ´Ï´Ù. »ý·«µÇ¸é, A_FileEncodingÀÇ ÇöÀç °ªÀÌ »ç¿ëµË´Ï´Ù.

+ +
+

Flags

+ + + + + + + + + + + + + + + + + + + + + +
  Á¢±Ù ¸ðµå (¼­·Î-¹èŸÀûÀÓ)
r0Read: ÆÄÀÏÀÌ Á¸ÀçÇÏÁö ¾ÊÀ¸¸é ½ÇÆÐÇÕ´Ï´Ù.
w1Write: »õ ÆÄÀÏÀ» »ý¼ºÇÕ´Ï´Ù, ±âÁ¸ÀÇ ÆÄÀÏÀ» µ¤¾î¾²±â ÇÕ´Ï´Ù.
a2Append: ÆÄÀÏÀÌ Á¸ÀçÇÏÁö ¾ÊÀ¸¸é »õ ÆÄÀÏÀ» »ý¼ºÇÕ´Ï´Ù, ±×·¸Áö ¾ÊÀ¸¸é ÆÄÀÏ Æ÷ÀÎÅ͸¦ ÆÄÀÏÀÇ ³¡À¸·Î À̵¿ÇÕ´Ï´Ù.
rw3Read/Write: ÆÄÀÏÀÌ Á¸ÀçÇÏÁö ¾ÊÀ¸¸é »õ ÆÄÀÏÀ» »ý¼ºÇÕ´Ï´Ù.
h FilenameÀÌ °´Ã¼ ¾È¿¡ ½Î ³ÖÀ» ÆÄÀÏ ÇÚµéÀÓÀ» ³ªÅ¸³À´Ï´Ù. °øÀ¯ ¸ðµå Ç÷¡±×´Â ¹«½ÃµË´Ï´Ù. ±×¸®°í ÀÌ ÇÚµéÀÌ °¡¸®Å°´Â ÆÄÀÏÀ̳ª ½ºÆ®¸²Àº ¹ÙÀÌÆ® ¼ø¼­ Ç¥½ÄÀÌ Á¡°ËµÇÁö ¾Ê½À´Ï´Ù. ÆÄÀÏ ÇÚµéÀº ÆÄÀÏ °´Ã¼°¡ Æı«µÉ ¶§ ÀÚµ¿À¸·Î Àá±âÁö ¾Ê½À´Ï´Ù. ±×¸®°í Close¸¦ È£ÃâÇØ ºÁ¾ß ¾Æ¹« È¿°úµµ ¾ø½À´Ï´Ù. ÁÖÀÇ ÇϽʽÿÀ. FilenameÀÌ ÆÄÀÌÇÁ³ª Åë½Å ÀåÄ¡ °°ÀÌ À§Ä¡ ÁöÁ¤ÀÌ ¾ÈµÇ´Â(nonseeking) ÀåÄ¡¸¦ °¡¸®Å°´Â ÇÚµéÀ̸é Seek, Tell ±×¸®°í Length¸¦ »ç¿ëÇÏ¸é ¾È µË´Ï´Ù.
  °øÀ¯ ¸ðµå Ç÷¡±×
-rwd Àбâ, ¾²±â ±×¸®°í Áö¿ì±â Á¢±ÙÀ» À§ÇØ ÆÄÀÏÀ» Àá±Ý´Ï´Ù. r, w ±×¸®°í dÀ» Á¶ÇÕÇØ »ç¿ëÇصµ µË´Ï´Ù. -¸¦ ÁöÁ¤Çϸé -rwd¸¦ ÁöÁ¤ÇÑ °Í°ú °°½À´Ï´Ù. ¿ÏÀüÈ÷ »ý·«Çϸé, ±âº»Àº ¸ðµç Á¢±ÙÀ» °øÀ¯ÇÏ´Â °ÍÀÔ´Ï´Ù.
 0Flags°¡ ¼ýÄ¡À̸é, °øÀ¯ ¸ðµå Ç÷¡±×°¡ ¾øÀ» °æ¿ì ÆÄÀÏÀÌ Àá±é´Ï´Ù.
 0x100read Á¢±ÙÀ» °øÀ¯ÇÕ´Ï´Ù.
 0x200write Á¢±ÙÀ» °øÀ¯ÇÕ´Ï´Ù.
 0x400delete Á¢±ÙÀ» °øÀ¯ÇÕ´Ï´Ù.
  ÁÙ ³¡(End of line (EOL)) ¿É¼Ç
`n4ÀÐÀ» ¶§ `r`nÀ» `nÀ¸·Î ±³Ã¼ÇÕ´Ï´Ù. ±×¸®°í ¾µ ¶§ `nÀ» `r`nÀ¸·Î ±³Ã¼ÇÕ´Ï´Ù.
`r8ÀÐÀ» ¶§ ³ªÈ¦·Î `rÀ» `nÀ¸·Î ±³Ã¼ÇÕ´Ï´Ù.
+ +

¹Ýȯ °ª

+

+ÆÄÀÏÀÌ ¼º°øÀûÀ¸·Î ¿­¸®¸é, ¹Ýȯ °ªÀº ÆÄÀÏ °´Ã¼ÀÔ´Ï´Ù.

+

+ÇÔ¼ö°¡ ½ÇÆÐÇϸé, ¹Ýȯ °ªÀº 0ÀÌ°í [in AHK_L 54+] A_LastError´Â ¿¡·¯ Äڵ尡 ´ã±é´Ï´Ù.

+

+ÇÔ¼ö°¡ ¼º°øÇß´ÂÁö Á¡°ËÇÏ·Á¸é if file ¶Ç´Â IsObject(file)¸¦ »ç¿ëÇϽʽÿÀ.

+ +

³íÆò

+

+UTF-8 ¶Ç´Â UTF-16 ÆÄÀÏÀÌ »ý¼ºµÉ ¶§, ¹ÙÀÌÆ® ¼ø¼­ Ç¥½ÄÀÌ ÆÄÀÏ¿¡ ¾º¿©Áý´Ï´Ù. +´Ü, Encoding (¶Ç´Â EncodingÀ» »ý·«Çϸé A_FileEncoding)¿¡ "UTF-8-RAW" ¶Ç´Â "UTF-16-RAW"ÀÌ ´ã°Ü ÀÖ´Â °æ¿ì´Â ¿¹¿ÜÀÔ´Ï´Ù.

+

+UTF-8 ¶Ç´Â UTF-16 ¹ÙÀÌÆ® ¼ø¼­ Ç¥½Ä(byte order mark (BOM))À» ´ã°í ÀÖ´Â ÆÄÀÏÀÌ Àбâ Á¢±ÙÀ» À§ÇØ ¿­¸± ¶§, BOMÀº ÆÄÀÏ Æ÷ÀÎÅ͸¦ ±× ´ÙÀ½À¸·Î À̵¿Çؼ­ Ãâ·ÂÀ¸·ÎºÎÅÍ Á¦¿ÜµË´Ï´Ù. ±×·¯¹Ç·Î, File.PositionÀº ÆÄÀÏÀ» ¿­°í ³­ÈÄ Áï½Ã 3 ¶Ç´Â 2¸¦ º¸°íÇÕ´Ï´Ù.

+ +

°ü·Ã Ç׸ñ

+

FileEncoding, File Object, FileRead

+ +

¿¹Á¦

+
; ¿¹Á¦: ´ÙÀ½ ½ºÅ©¸³Æ®´Â ÅؽºÆ®¸¦ ÆÄÀÏ¿¡ ¾´ ´ÙÀ½ ´Ù½Ã ¸Þ¸ð¸®·Î ÀÐ¾î µéÀÔ´Ï´Ù.
+; ´ÙÀ½ DllCall-¿¹Á¦¿Í ±â´ÉÀÌ °°½À´Ï´Ù.
+
+FileSelectFile, FileName, S16,, Create a new file:
+if (FileName = "")
+	return
+file := FileOpen(FileName, "w")
+if !IsObject(file)
+{
+	MsgBox Can't open "%FileName%" for writing.
+	return
+}
+TestString := "This is a test string.`r`n"  ; ÆÄÀÏÀ» ÀÌ·± ½ÄÀ¸·Î ¾µ ¶§,  »õ ÁÙÀ» ½ÃÀÛÇÏ·Á¸é `n ¸»°í `r`nÀ» »ç¿ëÇϽʽÿÀ.
+file.Write(TestString)
+file.Close()
+
+; ÀÌÁ¦ ÆÄÀÌÀ» ´Ù ½èÀ¸¹Ç·Î, ´Ù½Ã ¸Þ¸ð¸®·Î ±× ³»¿ëÀ» ÀÐ¾î µéÀÔ´Ï´Ù.
+file := FileOpen(FileName, "r-d") ; ÆÄÀÏÀ» ÀнÀ´Ï´Ù ("r"),  Áö¿ì±â ("-d")¸¸ »©°í ¸ðµç Á¢±ÙÀ» °øÀ¯ÇÕ´Ï´Ù.
+if !IsObject(file)
+{
+	MsgBox Can't open "%FileName%" for reading.
+	return
+}
+CharsToRead := StrLen(TestString)
+TestString := file.Read(CharsToRead)
+file.Close()
+MsgBox The following string was read from the file: %TestString%
+ +
; Àбâ Àü¿ë ¸ðµå·Î ½ºÅ©¸³Æ®¸¦ ¿±´Ï´Ù. ±×¸®°í ±×ÀÇ Ã¹ ÁÙÀ» ÀнÀ´Ï´Ù:
+file := FileOpen(A_ScriptFullPath, "r")
+MsgBox % file.ReadLine()
+
+; ´ÙÀ½ µ¥¸ð¸¦ º¸¿©ÁÖ±â À§ÇØ ÄÜ¼Ö Ã¢À» ¿±´Ï´Ù:
+DllCall("AllocConsole")
+; ¾îÇø®ÄÉÀ̼ÇÀÇ stdin/stdout ½ºÆ®¸²À» »õÁÙ-º¯È¯ ¸ðµå·Î ¿±´Ï´Ù.
+stdin  := FileOpen("*", "r `n")  ; Requires v1.1.17+
+stdout := FileOpen("*", "w `n")
+; ¿¹Àü ¹öÀü¿¡´Â ´ÙÀ½À» »ç¿ëÇÕ´Ï´Ù:
+;   stdin  := FileOpen(DllCall("GetStdHandle", "int", -10, "ptr"), "h `n")
+;   stdout := FileOpen(DllCall("GetStdHandle", "int", -11, "ptr"), "h `n")
+stdout.Write("Enter your query.`n\> ")
+stdout.Read(0) ; ¾²±â ¹öÆÛ¸¦ ºñ¿ó´Ï´Ù.
+query := RTrim(stdin.ReadLine(), "`n")
+stdout.WriteLine("Your query was '" query "'. Have a nice day.")
+stdout.Read(0) ; Àб⠹öÆÛ¸¦ ºñ¿ó´Ï´Ù.
+Sleep 5000
+
+ + diff --git a/src/docs/commands/FileRead.htm b/src/docs/commands/FileRead.htm new file mode 100644 index 0000000..4b1c8af --- /dev/null +++ b/src/docs/commands/FileRead.htm @@ -0,0 +1,91 @@ + + + + +FileRead + + + + + + + +

FileRead

+ +

ÆÄÀÏÀÇ ³»¿ëÀ» º¯¼ö ¾ÈÀ¸·Î ÀнÀ´Ï´Ù.

+ +
FileRead, OutputVar, Filename
+

¸Å°³º¯¼ö

+
+ +
OutputVar
+

¿­¶÷µÈ µ¥ÀÌÅ͸¦ ÀúÀåÇÒ º¯¼öÀÇ À̸§. ¹®Á¦°¡ ÀϾ¸é ¿¹¸¦ µé¾î ÆÄÀÏÀÌ "»ç¿ë Áß"À̰ųª Á¸ÀçÇÏÁö ¾ÊÀ¸¸é (ÀÌ °æ¿ì ErrorLevelÀº 1·Î ¼³Á¤µË´Ï´Ù) OutputVar´Â ºñ¿öÁý´Ï´Ù. FilenameÀÌ ºó ÆÄÀÏÀ̾ ºñ¿öÁý´Ï´Ù (ÀÌ °æ¿ì ErrorLevelÀº 0ÀÌ ¼³Á¤µË´Ï´Ù).

+ +
Filename
+

ÀÐÀ» ÆÄÀÏÀÇ À̸§. Àý´ë °æ·Î¸¦ ÁöÁ¤ÇÏÁö ¾ÊÀ¸¸é %A_WorkingDir%¿¡ ÀÖ´Ù°í °£Áֵ˴ϴÙ.

+

+ Options: ÆÄÀÏÀÇ À̸§ ¾Õ¿¡ ¹Ù·Î 0 °³ ÀÌ»óÀÇ ´ÙÀ½ ¹®ÀÚ¿­ÀÌ ³ªÅ¸³¯ ¼öµµ ÀÖ½À´Ï´Ù. °¢ ¿É¼ÇÀº ¿É¼Ç »çÀÌ¿¡ ´ÜÀÏ ½ºÆäÀ̽º ¶Ç´Â ÅÇÀ¸·Î ºÐ¸®ÇϽʽÿÀ. ¿¹¸¦ µé¾î: *t *m5000 C:\Log Files\200601.txt.

+

+ *c: ClipboardAll ÆÄÀÏ ¶Ç´Â ´Ù¸¥ ÀÌÁø µ¥ÀÌÅ͸¦ ÀûÀçÇÕ´Ï´Ù. *c ¿É¼ÇÀÌ Á¸ÀçÇÏ¸é ´Ù¸¥ ¸ðµç ¿É¼ÇÀº ¹«½ÃµË´Ï´Ù.

+

+ *m1024: ÀÌ ¿É¼ÇÀÌ »ý·«µÇ¸é, Àüü ÆÄÀÏÀº ¸Þ¸ð¸®°¡ ¸ðÀÚ¶óÁö ¾Ê´Â ÇÑ ÀûÀçµË´Ï´Ù. ÀÌ·± °æ¿ì ¿¡·¯ ¸Þ½ÃÁö°¡ ³ªÅ¸³³´Ï´Ù. ±×¸®°í ¾²·¹µå´Â Á¾·áÇÕ´Ï´Ù (±×·¯³ª À̸¦ ÇÇÇÏ·Á¸é Try¸¦ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù). ±×·¸Áö ¾ÊÀ¸¸é, 1024¸¦ ¹ÙÀÌÆ® °³¼öÀÇ ½ÊÁø¼ö ¶Ç´Â ½ÊÀ°Áø ¼ö·Î ±³Ã¼ÇϽʽÿÀ. ÆÄÀÏÀÌ ÀÌ º¸´Ù Å©¸é, ¿ÀÁ÷ ±×ÀÇ ¾Õ ºÎºÐ¸¸ ÀûÀçµË´Ï´Ù. ÁÖÀÇ: ÀÌ ¶§¹®¿¡ ¸¶Áö¸· ÁÙÀº `r`nÀÌ ¾Æ´Ï¶ó ij¸®Áö ¸®ÅÏ È¦·Î (`r) ³¡³ª´Â °á°ú¸¦ ÃÊ·¡ÇÒ ¼ö ÀÖ½À´Ï´Ù.

+

+ *t: ij¸®Áö ¸®ÅÏ & ¶óÀÎÇǵå (`r`n)°¡ ³ªÅ¸³ª¸é ¸ðµÎ ¶óÀÎÇǵå (`n)·Î ¹Ù²ß´Ï´Ù. ±×·¸Áö¸¸, ÀÌ º¯È¯Àº ¼öÇ༺´ÉÀ» ÁÙÀÔ´Ï´Ù. ±×¸®°í º¸Åë ÇÊ¿äÇÏÁö ¾Ê½À´Ï´Ù. ¿¹¸¦ µé¾î, `r`nÀÌ Æ÷ÇÔµÈ ÅؽºÆ®´Â ÀÌ¹Ì Gui Edit ÄÜÆ®·Ñ¿¡ Ãß°¡µÉ ¿Ã¹Ù¸¥ Çü½ÄÀÔ´Ï´Ù. ºñ½ÁÇÏ°Ô, FileAppend´Â »õ ÆÄÀÏÀ» ¿­ ¶§ `r`nÀÌ ÀÖ´ÂÁö ŽÁöÇÕ´Ï´Ù; °¢ `r`nÀ» ÀÖ´Â ±×´ë·Î ¾µ ÁÙ ¾Ð´Ï´Ù. `r`r`nÀ¸·Î º¯È¯ÇÏÁö ¾Ê½À´Ï´Ù. ¸¶Áö¸·À¸·Î, ÆÄÀÏ ³¡ÀÌ `r`n·Î ³¡³ªµç ±×³É `n·Î ³¡³ªµç »ó°ü¾øÀÌ ´ÙÀ½ ÆÄ½Ì È¸µ¹ÀÌ´Â ¿Ã¹Ù¸£°Ô ÀÛµ¿ÇÒ °ÍÀÔ´Ï´Ù: Loop, parse, MyFileContents, `n, `r.

+

+ *Pnnn: [AHK_L 42+]: FileEncodingÀÌ ¼³Á¤ÇÑ ±âº» ÀÎÄÚµùÀ» ¿À¹ö¶óÀ̵å ÇÕ´Ï´Ù. ¿©±â¿¡¼­ nnnÀº ¼ýÄ¡ ÄÚµå ÆäÀÌÁö ½Äº°ÀÚÀÔ´Ï´Ù.

+ +
+ +

ErrorLevel

+

[v1.1.04+] ÀÌ ¸í·É¾î´Â ½ÇÆнà ¿¹¿Ü¸¦ ´øÁú ¼ö ÀÖ½À´Ï´Ù. ´õ ÀÚ¼¼ÇÑ Á¤º¸´Â ½ÇÇà½Ã°£ ¿¡·¯¸¦ ÂüÁ¶ÇϽʽÿÀ.

+

ErrorLevelÀº ÀûÀç°¡ ¼º°øÇϸé 0ÀÌ ¼³Á¤µË´Ï´Ù. ¹®Á¦°¡ ÀϾ¸é 1ÀÌ ¼³Á¤µË´Ï´Ù. ¿¹¸¦ µé¸é: +

    +
  1. ÆÄÀÏÀÌ Á¸ÀçÇÏÁö ¾Ê´Â´Ù; +
  2. ÆÄÀÏÀÌ Àá°Ü Àְųª Á¢±ÙÀÌ ºÒ°¡´ÉÇÏ´Ù; +
  3. ½Ã½ºÅÛ¿¡ ÆÄÀÏÀ» ÀûÀçÇÒ ¸Þ¸ð¸®°¡ ÃæºÐÇÏÁö ¾Ê´Ù +
+

+

+A_LastError´Â ¿î¿µ üÁ¦ÀÇ GetLastError() ÇÔ¼öÀÇ °á°ú°¡ ´ã±é´Ï´Ù.

+ +

ÀÌÁø µ¥ÀÌÅÍ Àбâ

+

+ÆÄÀÏ, ¸Å°³º¯¼ö ±×¸®°í ±âº» ¼³Á¤¿¡ µû¶ó, FileRead´Â ÆÄÀÏ µ¥ÀÌÅ͸¦ ÅؽºÆ®·Î ÀÌÇØÇÏ°í ±×°ÍÀ» ½ºÅ©¸³Æ®°¡ »ç¿ëÇÏ´Â °íÀ¯ÀÇ ÀÎÄÚµùÀ¸·Î º¯È¯ÇÕ´Ï´Ù. ÀÌ ¶§¹®¿¡ ÆÄÀÏ¿¡ ÀÌÁø µ¥ÀÌÅÍ°¡ µé¾î ÀÖÀ» °æ¿ì ¹®Á¦¸¦ ¾ß±âÇÒ ¼ö ÀÖ½À´Ï´Ù. ´ÙÀ½ °æ¿ì´Â ¿¹¿ÜÀÔ´Ï´Ù:

+ +

+ÁÖ¸ñÇϽʽÿÀ. ÀÏ´Ü µ¥ÀÌÅ͸¦ OutputVar¸¦ ÀÐ¾î µé¿´´Ù¸é, ¿ÀÅäÇÖÅ° ¸í·É¾î¿Í ÇÔ¼ö¿¡ ¿ÀÁ÷ (Á¸ÀçÇÑ´Ù¸é) ù ÀÌÁø 0 ¾ÕÀÇ ÅؽºÆ®¸¸ "º¸¿©Áý´Ï´Ù". ±×·¸Áö¸¸, Àüü ³»¿ëÀº ¿©ÀüÈ÷ Á¸ÀçÇÏ°í NumGet() °°Àº °í±Þ ¹æ½ÄÀ¸·Î Á¢±ÙÇÒ ¼ö ÀÖ½À´Ï´Ù.

+

+¸¶Áö¸·À¸·Î, FileOpen() ±×¸®°í File.RawRead() ¶Ç´Â File.ReadNum() ¸ÕÀú Àüü ÆÄÀÏÀ» ¸Þ¸ð¸®·Î ÀÐ¾î µéÀÏ ÇÊ¿ä ¾øÀÌ ÀÌÁø µ¥ÀÌÅ͸¦ Àд µ¥ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù.

+ +

³íÆò

+

+¸ñÀûÀÌ ÆÄÀÏÀÇ ¸ðµç ³»¿ë ¶Ç´Â ÀϺθ¦ ¸Þ¸ð¸®·Î ÀÐ¾î µéÀÌ´Â °ÍÀÏ ¶§, ÆÄÀÏ-Àбâ ȸµ¹À̸¦ »ç¿ëÇÏ´Â °Íº¸´Ù FileRead°¡ ¼öÇ༺´ÉÀÌ ÈξÀ ´õ ÁÁ½À´Ï´Ù.

+

+Å©±â°¡ 1 GB°¡ ³Ñ´Â ÆÄÀÏÀº ErrorLevel¿¡ 1ÀÌ ¼³Á¤µÇ°í ±×¸®°í OutputVar´Â ºñ¿öÁý´Ï´Ù. ´Ü, *m ¿É¼ÇÀÌ Á¸ÀçÇÏ¸é ¿¹¿ÜÀÔ´Ï´Ù. ÀÌ °æ¿ì´Â ÆÄÀÏÀÇ ¾ÕºÎºÐÀÌ ÀûÀçµË´Ï´Ù.

+

+FileRead´Â #MaxMemÀ» ÁؼöÇÏÁö ¾Ê½À´Ï´Ù. ³Ê¹« ¸¹Àº ¸Þ¸ð¸®¸¦ »ç¿ëÇÒ±î °ÆÁ¤ÀÌ µÇ¸é, FileGetSizeÀ¸·Î ¹Ì¸® ÆÄÀÏ Å©±â¸¦ Á¡°ËÇϽʽÿÀ.

+

+FileOpen()Àº FileReadº¸´Ù °í±Þ ±â´ÉÀ» Á¦°øÇÕ´Ï´Ù. ¿¹¸¦ µé¾î ÆÄÀÏ Àüü¸¦ ¸Þ¸ð¸®·Î ÀÐ¾î µéÀÏ ÇÊ¿ä ¾øÀÌ Æ¯Á¤ÇÑ À§Ä¡¿¡ µ¥ÀÌÅ͸¦ ÀÐ°í ¾µ ¼ö ÀÖ½À´Ï´Ù. ÇÔ¼ö ¸®½ºÆ®´Â ÆÄÀÏ °´Ã¼¸¦ ÂüÁ¶ÇϽʽÿÀ.

+ +

°ü·Ã Ç׸ñ

+

FileEncoding, FileOpen/File Object, file-reading loop, FileReadLine, FileGetSize, FileAppend, IniRead, Sort, UrlDownloadToFile

+ +

¿¹Á¦

+
; ¿¹Á¦ #1: ÅؽºÆ® ÆÄÀÏÀ» OutputVar·Î ÀÐ¾î µéÀÔ´Ï´Ù.
+FileRead, OutputVar, C:\My Documents\My File.txt
+
; ¿¹Á¦ #2: ÆÄÀÏÀÇ ³»¿ëÀ» ½Å¼ÓÇÏ°Ô Á¤·ÄÇÕ´Ï´Ù.
+FileRead, Contents, C:\Address List.txt
+if not ErrorLevel  ; ¼º°øÀûÀ¸·Î ÀûÀçµÊ.
+{
+    Sort, Contents
+    FileDelete, C:\Address List (alphabetical).txt
+    FileAppend, %Contents%, C:\Address List (alphabetical).txt
+    Contents =  ; ¸Þ¸ð¸®¸¦ Ç®¾îÁÝ´Ï´Ù.
+}
+ + + diff --git a/src/docs/commands/FileReadLine.htm b/src/docs/commands/FileReadLine.htm new file mode 100644 index 0000000..6b5078f --- /dev/null +++ b/src/docs/commands/FileReadLine.htm @@ -0,0 +1,68 @@ + + + + +FileReadLine + + + + + + + +

FileReadLine

+ +

ÆÄÀϷκÎÅÍ Æ¯Á¤ ÁÙÀ» Àо ±× ÅؽºÆ®¸¦ º¯¼ö¿¡ ÀúÀåÇÕ´Ï´Ù.

+ +
FileReadLine, OutputVar, Filename, LineNum
+

¸Å°³º¯¼ö

+
+ +
OutputVar
+

¿­¶÷ÇÑ ÅؽºÆ®¸¦ ÀúÀåÇÒ º¯¼öÀÇ À̸§.

+ +
Filename
+

Á¢±ÙÇÒ ÆÄÀÏÀÇ À̸§. Àý´ë °æ·Î¸¦ ÁöÁ¤ÇÏÁö ¾ÊÀ¸¸é %A_WorkingDir%¿¡ ÀÖ´Ù°í °£Áֵ˴ϴÙ. Windows ±×¸®°í Unix Æ÷¸ËÀÌ Áö¿øµË´Ï´Ù; Áï, ÆÄÀÏÀÇ ÁÙÀº ij¸®Áö ¸®ÅÏ°ú ¶óÀÎÇǵå (`r`n) ¶Ç´Â ±×³É ¶óÀÎÇǵå (`n)·Î ³¡³³´Ï´Ù.

+ +
LineNum
+

ÀÐÀ» ÁÙ ¹øÈ£ (1À̸é ù ÁÙ, 2ÀÌ¸é µÎ ¹ø°, µîµî). ÀÌ°ÍÀº Ç¥Çö½ÄÀÏ ¼ö ÀÖ½À´Ï´Ù.

+

+ ÁöÁ¤µÈ ÁÙ ¹øÈ£°¡ ÆÄÀÏÀÇ ÁÙ °³¼öº¸´Ù Å©¸é, ErrorLevelÀº 1ÀÌ ¼³Á¤µÇ°í OutputVar´Â ¹Ù²îÁö ¾Ê½À´Ï´Ù. ÀÌ°ÍÀº ¶ÇÇÑ ÁöÁ¤µÈ ÁÙ ¹øÈ£°¡ ÆÄÀÏÀÇ ¸¶Áö¸· ÁÙÀÌÁö¸¸ ±× ÁÙÀÌ ºñ¾î ÀÖ°í »õÁÙ/CRLF·Î ³¡³ªÁö ¾ÊÀº °æ¿ì¿¡µµ ÀϾ´Ï´Ù.

+ +
+ +

ErrorLevel

+

+[v1.1.04+] ÀÌ ¸í·É¾î´Â ½ÇÆнà ¿¹¿Ü¸¦ ´øÁú ¼ö ÀÖ½À´Ï´Ù. ´õ ÀÚ¼¼ÇÑ Á¤º¸´Â ½ÇÇà½Ã°£ ¿¡·¯¸¦ ÂüÁ¶ÇϽʽÿÀ.

+

+ErrorLevelÀº ¼º°øÇϸé 0ÀÌ ¼³Á¤µË´Ï´Ù. ±×·¸Áö ¾ÊÀ¸¸é 1ÀÌ ¼³Á¤µÇ°í OutputVarÀÇ ¿ø·¡ ³»¿ëµµ ¹Ù²îÁö ¾Ê½À´Ï´Ù.

+

+A_LastError´Â ¿î¿µ üÁ¦ÀÇ GetLastError() ÇÔ¼öÀÇ °á°ú°¡ ¼³Á¤µË´Ï´Ù.

+ +

³íÆò

+

+ÀÌ ¸í·É¾î´Â ÀÛÀº ÆÄÀϵ鿡¸¸ »ç¿ëÇÒ °ÍÀ» °­·Â ±ÇÇÕ´Ï´Ù. ¶Ç´Â ÇÑ ÁÙÀÇ ÅؽºÆ®¸¸ ÇÊ¿äÇÑ °æ¿ì¿¡ »ç¿ëÇϽʽÿÀ. ¹æ´ëÇÑ °³¼öÀÇ ÁÙÀ» ½ºÄµÇÏ°í ó¸®ÇÏ·Á¸é (ÇÑ ÁÙ¾¿), ÃÖ°íÀÇ ¼öÇ༺À» À§ÇØ ÆÄÀÏ-Àϱâ ȸµ¹À̸¦ »ç¿ëÇϽʽÿÀ. Àüü ÆÄÀÏÀ» º¯¼ö ¾ÈÀ¸·Î ÀÐ¾î µéÀÌ·Á¸é, FileRead¸¦ »ç¿ëÇϽʽÿÀ.

+

+ÁÙ¿¡¼­ ¼±µÎ¿Í ÈĹÌÀÇ ÅÇ°ú ½ºÆäÀ̽º´Â OutputVar¿¡ ¾º¿©Áö°ÚÁö¸¸, ÁÙ ³¡ÀÇ ¶óÀÎÇÇµå ¹®ÀÚ (`n)´Â ±×·¸Áö ¾Ê½À´Ï´Ù. ÅÇ°ú ½ºÆäÀ̽º´Â º¯¼ö ¾ç³¡À¸·ÎºÎÅÍ °È¾î³¾ ¼ö ÀÖ½À´Ï´Ù. AutoTrimÀÌ ÄÑÁ® ÀÖ´Â (±âº»°ª) »óÅ¿¡¼­ ÇÒ´çÇÏ¸é µË´Ï´Ù. ¿¹¸¦ µé¾î: MyLine = %MyLine%.

+

+65,534 ¹®ÀÚ ±æÀÌ ±îÁö ÁÙÀ» ÀÐÀ» ¼ö ÀÖ½À´Ï´Ù. ÁÙ ±æÀÌ°¡ ÀÌ Á¦ÇÑÀ» ÃÊ°úÇϸé, ³ª¸ÓÁö ¹®ÀÚµéÀº ´ÙÀ½ ¸í·É¾î·Î ¿­¶÷ÇÒ ¼ö ¾ø½À´Ï´Ù (´ë½Å¿¡ FileRead ¶Ç´Â ÆÄÀÏ-Àбâ ȸµ¹À̸¦ »ç¿ëÇϽʽÿÀ).

+ +

°ü·Ã Ç׸ñ

+

+FileOpen/File.ReadLine(), FileRead, FileAppend, ÆÄÀÏ-Àбâ ȸµ¹ÀÌ, IniRead

+ +

¿¹Á¦

+
Loop
+{
+    FileReadLine, line, C:\My Documents\ContactList.txt, %A_Index%
+    if ErrorLevel
+        break
+    MsgBox, 4, , ÁÙ #%A_Index%´Â "%line%"ÀÔ´Ï´Ù. °è¼ÓÇϽðڽÀ´Ï±î?
+    IfMsgBox, No
+        return
+}
+MsgBox, ÆÄÀÏ ³¡¿¡ µµ´ÞÇß½À´Ï´Ù. ¶Ç´Â ¹®Á¦°¡ ÀÖ¾ú½À´Ï´Ù.
+return
+ + + diff --git a/src/docs/commands/FileRecycle.htm b/src/docs/commands/FileRecycle.htm new file mode 100644 index 0000000..2b4afad --- /dev/null +++ b/src/docs/commands/FileRecycle.htm @@ -0,0 +1,41 @@ + + + + +FileRecycle + + + + + + + +

FileRecycle

+ +

ÆÄÀÏÀ̳ª µð·ºÅ丮¸¦ ÈÞÁöÅëÀ¸·Î º¸³À´Ï´Ù.

+ +
FileRecycle, FilePattern
+

¸Å°³º¯¼ö

+
+ +
FilePattern
+

+ ÆÄÀÏ À̸§À̰ųª C:\Temp\*.tmp¿Í °°Àº ¿ÍÀϵåÄ«µå ÆÐÅÏ. FilePatternÀº Àý´ë °æ·Î¸¦ ÁöÁ¤ÇÏÁö ¾ÊÀ¸¸é %A_WorkingDir%¿¡ ÀÖ´Ù°í °£Áֵ˴ϴÙ.

+

Àüü µð·ºÅ丮¸¦ ¹ö¸®·Á¸é, µÚ¿¡ ¿ª»ç¼± ¾øÀÌ À̸§¸¸ ÁÖ¸é µË´Ï´Ù.

+ +
+ +

ErrorLevel

+

+[v1.1.04+] ÀÌ ¸í·É¾î´Â ½ÇÆÐÇÏ¸é ¿¹¿Ü¸¦ ´øÁú ¼ö ÀÖ½À´Ï´Ù. ´õ ÀÚ¼¼ÇÑ Á¤º¸´Â ½ÇÇà½Ã°£ ¿¡·¯¸¦ ÂüÁ¶ÇϽʽÿÀ.

+

ErrorLevelÀº ¹®Á¦°¡ ÀÖÀ¸¸é 1ÀÌ ±×·¸Áö ¾ÊÀ¸¸é 0ÀÌ ¼³Á¤µË´Ï´Ù.

+

³íÆò

+

SHFileOperationÀÌ ½ÇÁ¦ ÀÛ¾÷À» Çϴµ¥ »ç¿ëµË´Ï´Ù. ÀÌ ÇÔ¼ö´Â ÆÄÀÏÀÌ ³Ê¹« Ä¿¼­ ÈÞÁöÅë¿¡ µé¾î°¡Áö ¾ÊÀ¸¸é ¿µ±¸È÷ Áö¿ó´Ï´Ù; v1.0.96 ÇöÀç ÀÌ·± ÀÏÀÌ ÀϾ±â Àü¿¡ °æ°í¸¦ º¸¿©ÁÝ´Ï´Ù.

+ +

°ü·Ã Ç׸ñ

+

FileRecycleEmpty, FileDelete, FileCopy, FileMove

+

¿¹Á¦

+
FileRecycle, C:\temp files\*.tmp
+ + + diff --git a/src/docs/commands/FileRecycleEmpty.htm b/src/docs/commands/FileRecycleEmpty.htm new file mode 100644 index 0000000..7220a2e --- /dev/null +++ b/src/docs/commands/FileRecycleEmpty.htm @@ -0,0 +1,41 @@ + + + + +FileRecycleEmpty + + + + + + + +

FileRecycleEmpty

+ +

ÈÞÁöÅëÀ» ºñ¿ó´Ï´Ù.

+ +
FileRecycleEmpty [, DriveLetter]
+

¸Å°³º¯¼ö

+
+ +
DriveLetter
+

»ý·«Çϸé, ¸ðµç µå¶óÀ̺꿡 ´ëÇÏ¿© ÈÞÁöÅëÀ» Ä¡¿ó´Ï´Ù. ±×·¸Áö ¾ÊÀ¸¸é, C:\¿Í °°ÀÌ µå¶óÀ̺긦 ÁöÁ¤ÇϽʽÿÀ

+ +
+ +

ErrorLevel

+

+[v1.1.04+] ÀÌ ¸í·É¾î´Â ½ÇÆÐÇÏ¸é ¿¹¿Ü¸¦ ´øÁú ¼ö ÀÖ½À´Ï´Ù. ´õ ÀÚ¼¼ÇÑ Á¤º¸´Â ½ÇÇà½Ã°£ ¿¡·¯¸¦ ÂüÁ¶ÇϽʽÿÀ.

+

ErrorLevel´Â ¹®Á¦°¡ ÀÖÀ¸¸é 1 ±×·¸Áö ¾ÊÀ¸¸é 0ÀÌ ¼³Á¤µË´Ï´Ù.

+ +

³íÆò

+

+ÀÌ ¸í·É¾îÀº MS Internet Explorer 4 ÀÌ»óÀÌ ¼³Ä¡µÇ¾î Àֱ⸦ ¿ä±¸ÇÕ´Ï´Ù.

+ +

°ü·Ã Ç׸ñ

+

FileRecycle, FileDelete, FileCopy, FileMove

+

¿¹Á¦

+
FileRecycleEmpty, C:\
+ + + diff --git a/src/docs/commands/FileRemoveDir.htm b/src/docs/commands/FileRemoveDir.htm new file mode 100644 index 0000000..310692d --- /dev/null +++ b/src/docs/commands/FileRemoveDir.htm @@ -0,0 +1,45 @@ + + + + +FileRemoveDir + + + + + + + +

FileRemoveDir

+ +

Æú´õ¸¦ »èÁ¦ÇÕ´Ï´Ù.

+ +
FileRemoveDir, DirName [, Recurse?]
+

¸Å°³º¯¼ö

+
+ +
DirName
+

»èÁ¦ÇÒ µð·ºÅ丮ÀÇ À̸§. Àý´ë °æ·Î¸¦ ÁöÁ¤ÇÏÁö ¾ÊÀ¸¸é %A_WorkingDir%¿¡ ÀÖ´Ù°í °£ÁÖÇÕ´Ï´Ù.

+ +
ÇÏÀ§ Æú´õ±îÁö »èÁ¦ÇÒ °ÍÀΰ¡?
+

0 (±âº»°ª): DirName¿¡ Æ÷ÇÔµÈ ÆÄÀÏ°ú ÇÏÀ§-µð·ºÅ丮´Â Áö¿ìÁö ¾Ê½À´Ï´Ù. + ÀÌ °æ¿ì, DirNameÀÌ ºñ¾î ÀÖÁö ¾ÊÀ¸¸é, ¾Æ¹« ÇàÀ§µµ ÀϾÁö ¾ÊÀ¸¸ç ErrorLevelÀº 1·Î ¼³Á¤µË´Ï´Ù.

+

1: ¸ðµç ÆÄÀÏ°ú ÇÏÀ§µð·ºÅ丮¸¦ »èÁ¦ÇÕ´Ï´Ù (À©µµ¿ìÁîÀÇ ¸í·É¾î "rmdir /S").

+

ÀÌ ¸Å°³º¯¼ö´Â Ç¥Çö½ÄÀÏ ¼ö ÀÖ½À´Ï´Ù. ½ÉÁö¾î ÂüÀ̳ª °ÅÁþÀ¸·Î Æò°¡µÇ´Â °Íµµ °¡´ÉÇÕ´Ï´Ù (Âü°ú °ÅÁþÀº ³»ºÎÀûÀ¸·Î 1°ú 0À¸·Î ÀúÀåµÇ±â ¶§¹®ÀÔ´Ï´Ù).

+ +
+

ErrorLevel

+

[v1.1.04+] ÀÌ ¸í·É¾î´Â ½ÇÆнà ¿¹¿Ü¸¦ ´øÁú ¼ö ÀÖ½À´Ï´Ù. ´õ ÀÚ¼¼ÇÑ Á¤º¸´Â ½ÇÇà½Ã°£ ¿¡·¯¸¦ ÂüÁ¶ÇϽʽÿÀ.

+

ErrorLevelÀº ¹®Á¦°¡ ÀÖÀ¸¸é 1, ±×·¸Áö ¾ÊÀ¸¸é 0ÀÌ ¼³Á¤µË´Ï´Ù.

+ +

³íÆò

+

¾øÀ½

+ +

°ü·Ã Ç׸ñ

+

FileCreateDir, FileDelete

+

¿¹Á¦

+
FileRemoveDir, C:\Download Temp
+FileRemoveDir, C:\Download Temp, 1
+ + + diff --git a/src/docs/commands/FileSelectFile.htm b/src/docs/commands/FileSelectFile.htm new file mode 100644 index 0000000..5380a9e --- /dev/null +++ b/src/docs/commands/FileSelectFile.htm @@ -0,0 +1,126 @@ + + + + +FileSelectFile + + + + + + + +

FileSelectFile

+ +

»ç¿ëÀÚ°¡ ÆÄÀÏÀ» ¿­°Å³ª ÀúÀåÇÒ ¼ö Àִ ǥÁØ ´ëÈ­»óÀÚ¸¦ º¸¿©ÁÝ´Ï´Ù.

+ +
FileSelectFile, OutputVar [, Options, RootDir\Filename, Prompt, Filter]
+

¸Å°³º¯¼ö

+
+ +
OutputVar
+

»ç¿ëÀÚ°¡ ¼±ÅÃÇÑ ÆÄÀÏÀ̸§À» ÀúÀåÇÒ º¯¼öÀÇ À̸§. »ç¿ëÀÚ°¡ Ãë¼Ò¸¦ Çϸé (Áï, ÆÄÀÏÀ» ¼±ÅÃÇÏÁö ¾ÊÀ¸¸é) ÀÌ °ªÀº ºñ¿öÁý´Ï´Ù.

+ +
¿É¼Ç
+

»ý·«Çϸé, 0ÀÌ ±âº»°ªÀÌ µË´Ï´Ù. ¾Æ·¡ ¿É¼ÇÀ» Çϳªµµ ÁöÁ¤ÇÏÁö ¾ÊÀº °Í°ú °°½À´Ï´Ù.

+

M: ´ÙÁß-¼±ÅÃ. ±âÈ£ MÀ» ÁöÁ¤ÇÏ¸é »ç¿ëÀÚ´Â shift-click, control-click, ¶Ç´Â ±âŸ ¼ö´ÜÀ» ÅëÇÏ¿© ÆÄÀÏÀ» Çϳª ÀÌ»ó ¼±ÅÃÇÒ ¼ö ÀÖ½À´Ï´Ù. MÀº ¼±ÅÃÀûÀ¸·Î ´ÙÀ½¿¡ ¼ýÀÚ°¡ ¾Æ·¡¿Í °°ÀÌ µû¶ó ¿Ã ¼ö ÀÖ½À´Ï´Ù (¿¹¸¦ µé¾î, M°ú M1Àº ¸ðµÎ À¯È¿ÇÕ´Ï´Ù). °³º°ÀûÀ¸·Î ÆÄÀÏÀ» ÃßöÇÏ·Á¸é, ÀÌ ÆäÁöÀÌ ÇÏ´ÜÀÇ ¿¹Á¦¸¦ ÂüÁ¶ÇϽʽÿÀ.

+

S: ÀúÀå ¹öÆ°ÀÔ´Ï´Ù. ±âÈ£ S¸¦ ÁöÁ¤ÇÏ¸é ´ëÈ­»óÀÚ°¡ ¾ðÁ¦³ª Open ´ë½Å¿¡ Save ¹öÆ°À» º¸¿©ÁÝ´Ï´Ù. S´Â ¼±ÅÃÀûÀ¸·Î ´ÙÀ½¿¡ ¼ýÀÚ°¡ (¶Ç´Â ¼ýÀÚµéÀÇ ÇÕ)ÀÌ ¾Æ·¡¿¡ ±â¼úÇÏ´Â ¹Ù¿Í °°ÀÌ (¿¹¸¦ µé¾î, S¿Í S24´Â ¸ðµÎ À¯È¿ÇÕ´Ï´Ù) µû¶ó ¿Ã ¼ö ÀÖ½À´Ï´Ù.

+

M°ú S°¡ ¾ø´õ¶óµµ, ´ÙÀ½ ¼ýÀÚ´Â »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. ¿©·¯ ¼ýÀÚ¸¦ ÁöÁ¤ÇÏ·Á¸é, ÇÕÃļ­ ÁöÁ¤ÇÏ¸é µË´Ï´Ù. ¿¹¸¦ µé¾î 8°ú 16À» ÁöÁ¤ÇÏ·Á¸é, ¼ýÀÚ 24¸¦ ÁöÁ¤ÇÕ´Ï´Ù.

+

1: ÆÄÀÏÀÌ Á¸ÀçÇØ¾ß ÇÔ
+ 2: °æ·Î°¡ Á¸ÀçÇØ¾ß ÇÔ
+ 8: »õ ÆÄÀÏÀ» ¸¸µé ÇÁ·ÒÇÁÆ®
+ 16: ÆÄÀÏÀ» µ¤¾î¾µ ÇÁ·ÒÇÁÆ®
+ 32 [v1.0.43.09+]: + ´ÜÃàÆÄÀÏ (.lnk)Àº ¸ñÇ¥·Î °áÁ¤µÇÁö ¾Ê°í ±×´ë·Î ¼±Åõ˴ϴÙ. ÀÌ ¿É¼ÇÀº ¶Ç Æú´õ ´ÜÃàÅ°¸¦ ÅëÇÏ¿© Æú´õ¸¦ Ç×ÇÏÁö ¸øÇϵµ·Ï ¸·½À´Ï´Ù.

+

"µ¤¾î¾µ ÇÁ·ÒÇÁÆ®" ¿É¼ÇÀÌ "¸¸µé ÇÁ·ÒÇÁÆ®" ¿É¼Ç ¾øÀÌ Á¸ÀçÇϸé, ´ëÈ­»óÀÚ´Â Open ¹öÆ°ÀÌ ¾Æ´Ï¶ó Save ¹öÆ°ÀÌ Æ÷ÇԵ˴ϴÙ. ÀÌ ÇàÀ§´Â À©µµ¿ìÁîÀÇ ±«ÀÌÇÑ ÇàÀ§ ¶§¹®ÀÔ´Ï´Ù.

+ +
RootDir\Filename
+

Á¸ÀçÇϸé, ÀÌ ¸Å°³º¯¼ö´Â ´ÙÀ½ Áß Çϳª¸¦ ´ã°í ÀÖ½À´Ï´Ù:

+

RootDir: ·çÆ® (½ÃÀÛ) µð·ºÅ丮, Àý´ë °æ·Î¸¦ ÁöÁ¤ÇÏÁö ¾ÊÀ¸¸é %A_WorkingDir%¿¡ ÀÖ´Â ÇÏÀ§Æú´õ¶ó°í °£ÁÖÇÕ´Ï´Ù. »ý·«Çϰųª ºñ¾î ÀÖÀ¸¸é, ½ÃÀÛ µð·ºÅ丮´Â OS ¹öÀü¿¡ µû¶ó ±âº»°ªÀÌ °áÁ¤µË´Ï´Ù (¾Õ¿¡¼­ FileSelectFileÀ» »ç¿ëÇÏ´Â µ¿¾È »ç¿ëÀÚ°¡ °¡Àå ÃÖ±Ù¿¡ ¼±ÅÃÇÑ µð·ºÅ丮°¡ µÉ °¡´É¼ºÀÌ ³ô½À´Ï´Ù). Windows XP/2003 ÀÌÀüÀÇ v1.0.43.10+¿¡¼­, ::{20d04fe0-3aea-1069-a2d8-08002b30309d} (Áï, ³» ÄÄÇ»ÅÍ)¿Í °°Àº CLSIDµµ ÁöÁ¤ÇÒ ¼ö ÀÖ½À´Ï´Ù. ÀÌ °æ¿ì CLSID µÚ¿¡ ³ªÅ¸³ª´Â ÇÏÀ§µð·ºÅ丮°¡ ³ªÅ¸³ª¸é ¸ðµÎ ¿ª»ç¼±À¸·Î ³¡³ª¾ß ÇÕ´Ï´Ù (±×·¸Áö ¾ÊÀ¸¸é, ¸¶Áö¸· ¿ª»ç¼± ´ÙÀ½ÀÇ ¹®ÀÚ¿­Àº ¾Æ·¡¿Í °°ÀÌ ±âº» ÆÄÀÏ À̸§À¸·Î ¹ø¿ªµË´Ï´Ù).

+

Filename: ´ëÈ­»óÀÚÀÇ ÆíÁý Çʵ忡 óÀ½¿¡ º¸¿©ÁÙ ±âº» ÆÄÀÏÀ̸§. (°æ·Î ¾ø´Â) ³¯ ÆÄÀÏÀ̸§¸¸ º¸¿©ÁÝ´Ï´Ù. ´ëÈ­»óÀÚ°¡ ¿Ã¹Ù¸£°Ô º¸¿©Áöµµ·Ï È®ÀÎÇÏ·Á¸é, À¯È¿ÇÏÁö ¾ÊÀº ¹®ÀÚµéÀÌ ³ªÅ¸³ªÁö ¾Êµµ·Ï È®ÀÎÇϽʽÿÀ (¿¹¸¦ µé¾î /<|:").

+

¿¹Á¦:

+
C:\My Pictures\Default Image Name.gif  ; RootDir°ú Filename ¸ðµÎ ³ªÅ¸³³´Ï´Ù.
+C:\My Pictures  ; RootDir¸¸ ³ªÅ¸³³´Ï´Ù.
+My Pictures  ; RootDir¸¸ ³ªÅ¸³ª°í, ±×ÀÇ À§Ä¡´Â ÇöÀç ÀÛ¾÷ µð·ºÅ丮¿¡ »ó´ëÀûÀÔ´Ï´Ù.
+My File  ; Filename¸¸ ³ªÅ¸³³´Ï´Ù (±×·¯³ª "My File"ÀÌ Æú´õ·Î Á¸ÀçÇϸé,  RootDir¿¡ ÀÖ´Ù°í °£Áֵ˴ϴÙ).
+ +
Prompt
+

»ç¿ëÀÚ¿¡°Ô ¹«¾ùÀ» ÇÒÁö â¿¡ º¸¿©ÁÖ´Â ÅؽºÆ®. »ý·«Çϰųª ºñ¾î ÀÖÀ¸¸é, ±âº»°ªÀº "Select File - %A_SCRIPTNAME%" (Áï, ÇöÀç ½ºÅ©¸³Æ®ÀÇ À̸§)ÀÌ µË´Ï´Ù.

+ +
Filter
+

´ëÈ­»óÀÚ¿¡ ¾î¶² À¯ÇüÀÇ ÆÄÀÏÀ» º¸¿©ÁÙÁö ³ªÅ¸³À´Ï´Ù.

+

¿¹Á¦: Documents (*.txt)
+ ¿¹Á¦: Audio (*.wav; *.mp2; *.mp3)

+

»ý·«Çϸé, ÇÊÅÍ ±âº»°ªÀº ¸ðµç ÆÄÀÏ (*.*)ÀÌ µË´Ï´Ù. ÅؽºÆ® ¹®¼­ (*.txt)¸¦ À§ÇÑ ¿É¼Çµµ ´ëÈ­»óÀÚÀÇ "ÆÄÀÏÀÇ Á¾·ù" ¸Þ´º¿¡ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù.

+

±×·¸Áö ¾ÊÀ¸¸é, ÇÊÅÍ´Â Áö½ÃµÈ ¹®ÀÚ¿­À» »ç¿ëÇÏ°í ¶Ç ´ëÈ­»óÀÚÀÇ "ÆÄÀÏ À¯Çü" µå·Ó-´Ù¿î ¸®½ºÆ®¿¡ ¸ðµç ÆÄÀÏ (*.*)¿¡ ´ëÇÑ ¿É¼Çµµ Á¦°øÇÕ´Ï´Ù. ÇÊÅÍ¿¡ ¿©·¯ ÆÄÀÏ È®ÀåÀÚ¸¦ Æ÷ÇÔÇÏ·Á¸é À§¿¡¼­ ¿¹½ÃÇÑ ¹Ù¿Í °°ÀÌ »çÀ̸¦ ½Ö¹ÝÁ¡À¸·Î ºÐ¸®ÇϽʽÿÀ.

+ +
+ +

ErrorLevel

+

+[v1.1.04+] ÀÌ ¸í·É¾î´Â ½ÇÆнà ¿¹¿Ü¸¦ ´øÁú ¼ö ÀÖ½À´Ï´Ù. ´õ ÀÚ¼¼ÇÑ Á¤º¸´Â ½ÇÇà½Ã°£ ¿¡·¯¸¦ ÂüÁ¶ÇϽʽÿÀ.

+

+ErrorLevelÀº »ç¿ëÀÚ°¡ ÆÄÀÏ ¼±ÅþøÀÌ ´ëÈ­»óÀÚ¸¦ Ãë¼ÒÇϸé (¿¹¸¦ µé¾î Ãë¼Ò ¹öÆ°À» ´©¸£¸é) 1ÀÌ ¼³Á¤µË´Ï´Ù. ½Ã½ºÅÛÀÌ ´ëÈ­»óÀÚ¸¦ º¸¿©Áֱ⸦ °ÅºÎÇÏ´Â °æ¿ì¿¡µµ 1ÀÌ ¼³Á¤µË´Ï´Ù (°ÅÀÇ ¾øÀ½). ±×·¸Áö ¾ÊÀ¸¸é, 0ÀÌ ¼³Á¤µË´Ï´Ù.

+ +

³íÆò

+

+»ç¿ëÀÚ°¡ ¾Æ¹« °Íµµ ¼±ÅÃÇÏÁö ¾Ê¾Ò´Ù¸é (¿¹, CANCEL ´©¸§), OutputVar´Â ºñ¿öÁý´Ï´Ù.

+

+´ÙÁß-¼±ÅÃÀÌ ²¨Á® ÀÖÀ¸¸é, OutputVarÀº »ç¿ëÀÚ°¡ ¼±ÅÃÇÑ ´ÜÀÏ ÆÄÀÏÀÇ Àüü °æ·Î¿Í À̸§ÀÌ ¼³Á¤µË´Ï´Ù.

+

+M ¿É¼Ç (´ÙÁß-¼±ÅÃ)ÀÌ ÄÑÁ® ÀÖÀ¸¸é, OutputVar´Â Ç׸ñ ¸®½ºÆ®°¡ ¼³Á¤µË´Ï´Ù. ¸¶Áö¸·À» Á¦¿ÜÇÏ°í °¢ Ç׸ñÀº ¶óÀÎÇǵå (`n) ¹®ÀÚ·Î ³¡³³´Ï´Ù. ¸®½ºÆ®¿¡¼­ ù Ç׸ñÀº ¼±ÅÃµÈ ¸ðµç ÆÄÀÏÀ» ´ãÀº °æ·ÎÀÔ´Ï´Ù (ÀÌ °æ·Î´Â C:\¿Í °°ÀÌ ·çÆ® Æú´õÀÏ ¶§¸¸ ¿ª»ç¼±À¸·Î ³¡³³´Ï´Ù). ´Ù¸¥ Ç׸ñÀº ¼±ÅÃµÈ ÆÄÀÏÀ̸§µéÀÔ´Ï´Ù (°æ·Î ¾øÀ½). ¿¹¸¦ µé¾î:

+ +
C:\My Documents\New Folder [¾Æ·¡ÀÇ ¸ðµç ÆÄÀÏÀÌ °ÅÁÖÇÏ´Â °æ·ÎÀÔ´Ï´Ù]
+test1.txt [¸Ç ÆÄÀÏÀ̸§ÀÔ´Ï´Ù: °æ·Î ¾øÀ½]
+test2.txt
+... etc.
+

(ÀÌ ÆäÀÌÁö ÇÏ´ÜÀÇ ¿¹Á¦¿¡¼­ ÀÌ ÆÄÀϵéÀ» Çϳª¾¿ ÃßÃâÇÏ´Â ¹ýÀ» º¸¿©ÁÝ´Ï´Ù.)

+

+´ÙÁß-¼±ÅÃÀÌ ÄÑÁ® ÀÖÀ¸¸é, ¼±ÅÃµÈ ÆÄÀÏ À̸§ÀÇ ±æÀÌÀÇ ÇÕÀº 64 KB·Î Á¦Çѵ˴ϴÙ. ÀÌ Á¤µµ¸é º¸Åë ¼ö õ °³ÀÇ ÆÄÀÏÀ» ´ãÀ» Á¤µµ·Î ÃæºÐÇÏÁö¸¸, ±× ÇѰ踦 ÃÊ°úÇϸé OutputVar´Â ºñ¿öÁý´Ï´Ù.

+

+GUI âÀº Gui +OwnDialogs¸¦ »ç¿ëÇÏ¿© ¸ð´Þ ÆÄÀÏ-¼±Åà ´ëÈ­»óÀÚ¸¦ º¸¿©ÁÙ ¼öµµ ÀÖ½À´Ï´Ù. ¸ð´Þ ´ëÈ­»óÀÚ´Â ³¡³¯ ¶§±îÁö »ç¿ëÀÚ°¡ GUI â°ú »óÈ£ÀÛ¿ëÇÏ´Â °ÍÀ» ¸·½À´Ï´Ù.

+

+¾Ë·ÁÁø ÇÑ°è: FileSelectFile ´ëÈ­»óÀÚ¸¦ º¸¿©ÁÖ´Â µ¿¾È¿¡ ±âµ¿ÇÑ Å¸À̸Ӵ »ç¿ëÀÚ°¡ ´ëÈ­»óÀÚ ¾È¿¡ Ŭ¸¯ÇÑ °ÍÀ» ŸÀ̸Ӱ¡ ³¡³¯ ¶§±îÁö ¿¬±âÇÕ´Ï´Ù. À̸¦ ¿ìȸÇÏ·Á¸é, ³¡³ª´Âµ¥ ½Ã°£ÀÌ ¸¹ÀÌ °É¸®´Â ¼­ºê·çƾÀÇ Å¸À̸Ӹ¦ ÇÇÇϰųª, ¸ðµç ŸÀ̸Ӹ¦ ¸ð´Þ ´ëÈ­»óÀÚ¸¦ »ç¿ëÇÏ´Â µ¿¾È¿¡´Â ²ô½Ê½Ã¿À:

+ +
Thread, NoTimers
+FileSelectFile, OutputVar
+Thread, NoTimers, false
+

+Æó±âµÈ ¿É¼Ç: v1.0.25.06+¿¡¼­ ´ÙÁß-¼±Åà ¿É¼Ç "4"´Â Æó±âµÇ¾ú½À´Ï´Ù. ±×·¸Áö¸¸, ¿¹Àü ½ºÅ©¸³Æ®¿ÍÀÇ È£È¯À» À§ÇØ, ¿©ÀüÈ÷ ¿¹Àü°ú °°ÀÌ ÀÛµ¿ÇÕ´Ï´Ù. ƯÈ÷, »ç¿ëÀÚ°¡ ¿ÀÁ÷ ÆÄÀÏÀ» Çϳª¸¸ ¼±ÅÃÇϸé, OutputVar¿¡ Àüü °æ·Î¿Í À̸§ ±×¸®°í ´ÙÀ½¿¡ ¶óÀÎÇÇµå ¹®ÀÚ(`n)°¡ ´ã±é´Ï´Ù. »ç¿ëÀÚ°¡ ¿©·¯ ÆÄÀÏÀ» ¼±ÅÃÇϸé, ±× Çü½ÄÀº À§¿¡ ±â¼úÇÑ M ¿É¼ÇÀ» »ç¿ëÇÑ °Í°ú °°½À´Ï´Ù. ´Ü, ¸¶Áö¸· Ç׸ñµµ ¿ª½Ã ¶óÀÎÇǵå·Î (`n) ³¡³ª´Â Á¡ÀÌ ´Ù¸¨´Ï´Ù.

+

°ü·Ã Ç׸ñ

+

+FileSelectFolder, MsgBox, InputBox, ToolTip, GUI, CLSID List, ÆÄ½Ì È¸µ¹ÀÌ, SplitPath

+

+¶ÇÇÑ, ¿î¿µ üÁ¦´Â »ç¿ëÀÚ°¡ ±Û²ÃÀ̳ª »ö±ò, ¶Ç´Â ¾ÆÀÌÄÜÀ» ¼±ÅÃÇÒ ¼ö Àִ ǥÁØ ´ëÈ­»óÀÚ¸¦ Á¦°øÇÕ´Ï´Ù. ÀÌ·± ´ëÈ­»óÀÚ´Â DllCall()À» ÅëÇÏ¿© º¸¿©ÁÙ ¼ö ÀÖ½À´Ï´Ù. ´ÙÀ½¿¡ ¿¹½ÃÇÕ´Ï´Ù: www.autohotkey.com/forum/topic17230.html.

+

¿¹Á¦

+
FileSelectFile, SelectedFile, 3, , Open a file, Text Documents (*.txt; *.doc)
+if SelectedFile =
+    MsgBox, »ç¿ëÀÚ°¡ ¾Æ¹« °Íµµ ¼±ÅÃÇÏÁö ¾Ê¾Ò½À´Ï´Ù.
+else
+    MsgBox, »ç¿ëÀÚ°¡ ´ÙÀ½ ÆÄÀÏÀ» ¼±ÅÃÇß½À´Ï´Ù:`n%SelectedFile%
+
+
+; CLSID ¿¹Á¦ (XP/2003 ÀÌÀü ÇÊ¿ä):
+FileSelectFile, OutputVar,, ::{645ff040-5081-101b-9f08-00aa002f954e}  ; ÈÞÁöÅë.
+
+; ´ÙÁß-¼±Åà ¿¹Á¦:
+FileSelectFile, files, M3  ; M3 = ±âÁ¸ÀÇ ÆÄÀÏÀ» ´ÙÁß ¼±ÅÃÇÕ´Ï´Ù.
+if files =
+{
+    MsgBox, »ç¿ëÀÚ°¡ Ãë¼Ò ¹öÆ°À» ´­·¶½À´Ï´Ù.
+    return
+}
+Loop, parse, files, `n
+{
+    if a_index = 1
+        MsgBox, ¼±ÅÃµÈ ÆÄÀÏÀº ¸ðµÎ  %A_LoopField% ¾È¿¡ Æ÷ÇԵǾî ÀÖ½À´Ï´Ù.
+    else
+    {
+        MsgBox, 4, , ´ÙÀ½ ÆÄÀÏÀº %A_LoopField%ÀÔ´Ï´Ù. °è¼ÓÇϽðڽÀ´Ï±î?
+        IfMsgBox, No, break
+    }
+}
+return
+ + + diff --git a/src/docs/commands/FileSelectFolder.htm b/src/docs/commands/FileSelectFolder.htm new file mode 100644 index 0000000..8874c49 --- /dev/null +++ b/src/docs/commands/FileSelectFolder.htm @@ -0,0 +1,83 @@ + + + + +FileSelectFolder + + + + + + + +

FileSelectFolder

+ +

»ç¿ëÀÚ°¡ Æú´õ¸¦ ¼±ÅÃÇÒ ¼ö Àִ ǥÁØ ´ëÈ­»óÀÚ¸¦ º¸¿©ÁÝ´Ï´Ù.

+ +
FileSelectFolder, OutputVar [, StartingFolder, Options, Prompt]
+

¸Å°³º¯¼ö

+
+ +
OutputVar
+

»ç¿ëÀÚ°¡ ¼±ÅÃÇÑ Æú´õ¸¦ ÀúÀåÇÒ º¯¼öÀÇ À̸§. »ç¿ëÀÚ°¡ Ãë¼ÒÇÏ¸é ºñ¿öÁý´Ï´Ù (Áï, Æú´õ¸¦ ¼±ÅÃÇÏÁö ¾ÊÀ¸¸é). »ç¿ëÀÚ°¡ ·çÆ® µð·ºÅ丮¸¦ ¼±ÅÃÇϸé (¿¹, C:\), OutputVar¿¡´Â ¿ª»ç¼±ÀÌ µÚ¿¡ Æ÷ÇԵ˴ϴÙ. ÀÌ°ÍÀÌ ½È´Ù¸é, ´ÙÀ½°ú °°ÀÌ Á¦°ÅÇϽʽÿÀ:

+
FileSelectFolder, Folder
+Folder := RegExReplace(Folder, "\\$")  ; Removes the trailing backslash, if present.
+ +
StartingFolder
+

+ ºñ¾î Àְųª »ý·«Çϸé, ´ëÈ­»óÀÚÀÇ ÃÖÃÊ ¼±ÅÃÀÌ »ç¿ëÀÚÀÇ ³»¹®¼­ Æú´õ°¡ µË´Ï´Ù (¶Ç´Â ³»ÄÄÇ»Å͵µ °¡´É). ::{20d04fe0-3aea-1069-a2d8-08002b30309d} (Áï, ³»ÄÄÇ»ÅÍ)¿Í °°Àº CLSID Æú´õ¸¦ ÁöÁ¤Çϸé ƯÁ¤ÇÑ Æú´õ¿¡¼­ Ç×Çظ¦ ÁöÁ¤ÇÒ ¼ö ÀÖ½À´Ï´Ù.

+

+ ±×·¸Áö ¾ÊÀ¸¸é, ÀÌ ¸Å°³º¯¼öÀÇ °¡Àå ÈçÇÑ »ç¿ë¹ýÀº º°Ç¥ ´ÙÀ½¿¡ µå¶óÀ̺곪 Æú´õÀÇ Àý´ë °æ·Î°¡ µû¶ó¿Í ÃÖÃÊ·Î ¼±ÅõǴ °ÍÀÔ´Ï´Ù. ¿¹¸¦ µé¾î, *C:\Àº óÀ½¿¡ C µå¶óÀ̺긦 ¼±ÅÃÇÕ´Ï´Ù. ºñ½ÁÇÏ°Ô, *C:\My FolderÀ̸é óÀ½¿¡ ±× ƯÁ¤ Æú´õ¸¦ ¼±ÅÃÇÕ´Ï´Ù.

+

+ º°Ç¥´Â »ç¿ëÀÚ¿¡°Ô ½ÃÀÛ Æú´õ·ÎºÎÅÍ À§·Î (·çÆ®ÂÊÀ¸·Î) Ç×Çظ¦ Çã¿ëÇÑ´Ù´Â ¶æÀÔ´Ï´Ù. º°Ç¥°¡ ¾ø´Ù¸é, »ç¿ëÀÚ´Â StartingFolder¾È (¶Ç´Â StartingFolder ÀÚü)¿¡¼­¸¸ ¼±ÅÃÇØ¾ß ÇÕ´Ï´Ù. º°Ç¥¸¦ »ý·«Çϸé ÁÁÀº Á¡Àº StartingFolder°¡ óÀ½¿¡ Æ®¸®°¡ È®ÀåµÈ »óÅ·Πº¸¿©Áø´Ù´Â °ÍÀÔ´Ï´Ù. ÀÌ ´öºÐ¿¡ »ç¿ëÀڴ ù ¹ø° Ç÷¯½º »çÀÎÀ» Ŭ¸¯ÇÏÁö ¾Ê¾Æµµ µË´Ï´Ù.

+

+ º°Ç¥°¡ Á¸ÀçÇϸé, À§·Î Ç×ÇØ´Â ¹ÙÅÁÈ­¸é ¸»°í ¼±ÅÃÀûÀ¸·Î Æú´õ·Î Á¦Çѵ˴ϴÙ. ÀÌ·¸°Ô Á¦ÇÑÇÏ·Á¸é º°Ç¥¸¦ ÃÖ»ó´Ü Æú´õÀÇ Àý´ë °æ·Î ¾Õ¿¡ µÎ°í ´ÙÀ½¿¡ Á¤È®ÇÏ°Ô ½ºÆäÀ̽º Çϳª ¶Ç´Â ÅÇ Çϳª¸¦ ¹èÄ¡ÇÏ¸é µË´Ï´Ù. ´ÙÀ½ ¿¹Á¦¿¡¼­ »ç¿ëÀÚ´Â C:\My Folder À§·Î Ç×ÇØÇÏ´Â °ÍÀÌ Çã¿ëµÇÁö ¾Ê½À´Ï´Ù (±×·¯³ª ÃÖÃÊ ¼±ÅÃÀº C:\My Folder\ProjectsÀÔ´Ï´Ù):
+ C:\My Folder *C:\My Folder\Projects

+
+ +
Options
+

´ÙÀ½ ¼ýÀÚ Áß Çϳª:

+

0: ¾Æ·¡ÀÇ ¿É¼ÇÀ» ¸ðµÎ ºñÈ°¼ºÈ­ ÇÕ´Ï´Ù (Windows 2000 Á¦¿Ü, "»õ Æú´õ ¸¸µé±â" ¹öÆ°ÀÌ ¾î¶°Å³ª ³ªÅ¸³¯ ¼ö ÀÖ½À´Ï´Ù).

+

1 (±âº»°ª): »ç¿ëÀÚ°¡ »õ Æú´õ¸¦ ¸¸µé ¼ö ÀÖ´Â ¹öÆ°ÀÌ Á¦°øµË´Ï´Ù.

+

´õÇϱâ 2 À§ÀÇ ¼ýÀÚ¿¡ ´õÇÏ¸é »ç¿ëÀÚ°¡ Æú´õÀÇ À̸§À» ŸÀÚÇÒ ¼ö ÀÖ´Â ÆíÁý Çʵ带 Á¦°øÇÕ´Ï´Ù. ¿¹¸¦ µé¾î, ÀÌ ¸Å°³º¯¼ö¿¡ °ªÀ» 3À» ÁöÁ¤Çϸé ÆíÁý Çʵå¿Í "»õ Æú´õ ¸¸µé±â" ¹öÆ°À» ¸ðµÎ Á¦°øÇÕ´Ï´Ù.

+

´õÇϱâ 4 À§ÀÇ ¼ýÀÚ¿¡ ´õÇϸé BIF_NEWDIALOGSTYLE Ư¼ºÀÌ »ý·«µË´Ï´Ù. 4¸¦ ´õÇϸé WinPE ¶Ç´Â BartPE¿Í °°Àº ¼³Ä¡Àü ȯ°æ(Preinstallation Environment)¿¡¼­µµ È®½ÇÇÏ°Ô FileSelectFolder°¡ Á¦´ë·Î ÀÛµ¿ÇÕ´Ï´Ù. ±×·¸Áö¸¸, ÀÌ·¸°Ô Çϸé "»õ Æú´õ ¸¸µé±â" ¹öÆ°ÀÌ ³ªÅ¸³ªÁö ¾Ê½À´Ï´Ù. Àû¾îµµ Windows XP¿¡¼­´Â È®½ÇÇÏ°Ô ³ªÅ¸³ªÁö ¾Ê½À´Ï´Ù. ["4"´Â v1.0.48+¸¦ ¿ä±¸ÇÕ´Ï´Ù]

+

»ç¿ëÀÚ°¡ ÆíÁý ÇÊµå ¾È¿¡ ¹«È¿ÇÑ Æú´õ À̸§À» ŸÀÚÇϸé, OutputVar´Â »ç¿ëÀÚ°¡ ÀÔ·ÂÇÑ À̸§ÀÌ ¾Æ´Ï¶ó Ç×ÇØ Æ®¸®¿¡¼­ ¼±ÅÃµÈ Æú´õ°¡ ¼³Á¤µË´Ï´Ù. Àû¾îµµ Windows XP¿¡¼­´Â ±×·¸½À´Ï´Ù.

+

ÀÌ ¸Å°³º¯¼ö´Â Ç¥Çö½ÄÀÏ ¼ö ÀÖ½À´Ï´Ù.
+

+ +
Prompt
+

»ç¿ëÀÚ¿¡°Ô ¹«¾ùÀ» ÇØ¾ß ÇÒÁö â¿¡ º¸¿©ÁÖ´Â ÅؽºÆ®. »ý·«µÇ°Å³ª ºñ¾î ÀÖÀ¸¸é, "Select Folder - %A_SCRIPTNAME%" (Áï, ÇöÀç ½ºÅ©¸³Æ®ÀÇ À̸§)ÀÌ ±âº»°ªÀÌ µË´Ï´Ù.

+ +
+ +

ErrorLevel

+

+[v1.1.04+] ÀÌ ¸í·É¾î´Â ½ÇÆнà ¿¹¿Ü¸¦ ´øÁú ¼ö ÀÖ½À´Ï´Ù. ´õ ÀÚ¼¼ÇÑ Á¤º¸´Â ½ÇÇà½Ã°£ ¿¡·¯¸¦ ÂüÁ¶ÇϽʽÿÀ.

+

ErrorLevelÀº »ç¿ëÀÚ°¡ Æú´õ¸¦ ¼±ÅÃÇÏÁö ¾Ê°í (¿¹¸¦ µé¾î Ãë¼Ò ¹öÆ°À» ´­·¯¼­) Ãë¼ÒÇϸé 1ÀÌ ¼³Á¤µË´Ï´Ù. ¶Ç ½Ã½ºÅÛÀÌ ´ëÈ­»óÀÚ¸¦ º¸¿©Áֱ⸦ °ÅºÎÇÏ´Â °æ¿ì¿¡µµ 1ÀÌ ¼³Á¤µË´Ï´Ù (°ÅÀÇ ¾øÀ½). ±×·¸Áö ¾ÊÀ¸¸é 0ÀÌ ¼³Á¤µË´Ï´Ù.

+ +

³íÆò

+

+GUI âÀº Gui +OwnDialogs¸¦ »ç¿ëÇÏ¿© ¸ð´Þ Æú´õ-¼±Åà ´ëÈ­»óÀÚ¸¦ º¸¿©ÁÙ ¼ö ÀÖ½À´Ï´Ù. ¸ð´Þ ´ëÈ­»óÀÚ¿¡¼­ »ç¿ëÀÚ´Â ´ëÈ­»óÀÚ°¡ ³¡³¯ ¶§±îÁö GUI â°ú »óÈ£ÀÛ¿ëÇÒ ¼ö ¾ø½À´Ï´Ù.

+

¾Ë·ÁÁø ÇÑ°è: FileSelectFolder ´ëÈ­»óÀÚ¸¦ º¸¿©ÁÖ´Â µ¿¾È¿¡ ±âµ¿µÇ´Â ŸÀ̸Ӵ »ç¿ëÀÚ°¡ ´ëÈ­»óÀÚ¿¡¼­ Ŭ¸¯ÇÑ È¿°ú¸¦ ŸÀ̸Ӱ¡ ³¡³¯ ¶§±îÁö ¿¬±âÇÕ´Ï´Ù. À̸¦ ¿ìȸÇÏ·Á¸é, Á¾·á¿¡ ½Ã°£ÀÌ °É¸®´Â ¼­ºê·çƾÀ» °¡Áø ŸÀ̸ÓÀÇ »ç¿ëÀ» ÇÇÇϰųª, ¶Ç´Â ´ëÈ­»óÀÚ°¡ ÀÖ´Â µ¿¾È¿¡ ¸ðµç ŸÀ̸Ӹ¦ ²ô½Ê½Ã¿À:

+ +
Thread, NoTimers
+FileSelectFolder, OutputVar,, 3
+Thread, NoTimers, false
+ +

°ü·Ã Ç׸ñ

+

+FileSelectFile, MsgBox, InputBox, ToolTip, GUI, CLSID List, FileCopyDir, FileMoveDir, SplitPath

+

+¶ÇÇÑ, ¿î¿µ üÁ¦´Â »ç¿ëÀÚ°¡ ±Û²Ã, Ä÷¯, ¶Ç´Â ¾ÆÀÌÄÜÀ» ¼±ÅÃÇÒ ¼ö Àִ ǥÁØ ´ëÈ­»óÀÚ¸¦ Á¦°øÇÕ´Ï´Ù. ÀÌ·± ´ëÈ­»óÀÚ´Â DllCall()À» ÅëÇÏ¿© º¸¿©ÁÙ ¼ö ÀÖ½À´Ï´Ù. ´ÙÀ½¿¡ ¿¹½ÃÇÕ´Ï´Ù: www.autohotkey.com/forum/topic17230.html.

+

¿¹Á¦

+
FileSelectFolder, OutputVar, , 3
+if OutputVar =
+    MsgBox, Æú´õ¸¦ ¼±ÅÃÇÏÁö ¾Ê¾Ò½À´Ï´Ù.
+else
+    MsgBox, "%OutputVar%" Æú´õ¸¦ ¼±ÅÃÇß½À´Ï´Ù.
+
+; CLSID ¿¹Á¦:
+FileSelectFolder, OutputVar, ::{20d04fe0-3aea-1069-a2d8-08002b30309d}  ; ³» ÄÄÇ»ÅÍ.
+ + + diff --git a/src/docs/commands/FileSetAttrib.htm b/src/docs/commands/FileSetAttrib.htm new file mode 100644 index 0000000..092b279 --- /dev/null +++ b/src/docs/commands/FileSetAttrib.htm @@ -0,0 +1,88 @@ + + + + +FileSetAttrib + + + + + + + +

FileSetAttrib

+ +

ÆÄÀÏÀ̳ª Æú´õÀÇ ¼Ó¼ºÀ» º¯°æÇÕ´Ï´Ù. ¿ÍÀϵåÄ«µå¸¦ Áö¿øÇÕ´Ï´Ù.

+ +
FileSetAttrib, Attributes [, FilePattern, OperateOnFolders?, Recurse?]
+

¸Å°³º¯¼ö

+
+ +
Attributes
+

º¯°æÇÒ ¼Ó¼º (³íÆò ÂüÁ¶).

+ +
FilePattern
+
´ÜÀÏ ÆÄÀÏÀ̳ª Æú´õÀÇ À̸§, ¶Ç´ÂC:\Temp\*.tmp¿Í °°Àº ¿ÍÀ̵éÄ«µå ÆÐÅÏ. FilePatternÀº Àý´ë °æ·Î¸¦ ÁöÁ¤ÇÏÁö ¾ÊÀ¸¸é %A_WorkingDir%¿¡ ÀÖ´Ù°í °£Áֵ˴ϴÙ. +

»ý·«µÇ¸é, ÆÄÀÏ-ȸµ¹ÀÌ °¡Àå ¾ÈÂÊ¿¡ ½ÎÀÎ ÇöÀç ÆÄÀÏÀÌ ´ë½Å »ç¿ëµË´Ï´Ù.

+ +
OperateOnFolders?
+

0 (±âº»°ª) Æú´õ´Â ó¸®ÇÏÁö ¾Ê½À´Ï´Ù (ÆÄÀϸ¸ ó¸®).
+1 ¿ÍÀϵåÄ«µå ÆÐÅÏ¿¡ ºÎÇÕÇÏ´Â ¸ðµç ÆÄÀÏ°ú Æú´õ´Â 󸮵˴ϴÙ.
+2 ¿ÀÁ÷ Æú´õ¸¸ 󸮵˴ϴ٠(ÆÄÀÏ ºÒ°¡).

+

ÁÖÀÇ: FilePatternÀÌ ¿ÍÀϵåÄ«µå ÆÐÅÏÀÌ ¾Æ´Ï¶ó ´ÜÀÏ Æú´õÀ̸é, ÀÌ ¼³Á¤¿¡ »ó°ü ¾øÀÌ ¾ðÁ¦³ª 󸮵˴ϴÙ.

+

ÀÌ ¸Å°³º¯¼ö´Â Ç¥Çö½ÄÀÏ ¼ö ÀÖ½À´Ï´Ù.

+ +
Recurse?
+

0 (±âº»°ª) ÇÏÀ§Æú´õ¿¡ Àç±ÍÇØ µé¾î°¡Áö ¾Ê½À´Ï´Ù.
+ 1 ÇÏÀ§Æú´õ¿¡ Àç±ÍÇØ µé¾î°¡ °Å±â¿¡¼­ FilePattern¿¡ ºÎÇÕÇÏ´Â ¸ðµç ÆÄÀÏ°ú Æú´õ¸¦ ó¸®ÇÕ´Ï´Ù. ¸ðµç ÇÏÀ§Æú´õ¿¡ Àç±ÍÇØ µé¾î°©´Ï´Ù. FilePattern¿¡ ºÎÇÕÇÏ´Â Æú´õ¿¡¸¸ Àç±ÍÇÏ´Â °ÍÀÌ ¾Æ´Õ´Ï´Ù. ±×·¸Áö¸¸, ÆÄÀÏ°ú Æú´õÀÇ ¿ÏÀüÇÑ °æ·Î°¡ 259 ¹®ÀÚ¸¦ ³Ñ¾î°¡¸é ¸¶Ä¡ Á¸ÀçÇÏÁö ¾Ê´Â µí °Ç³Ê ¶Ý´Ï´Ù. ±×·± ÆÄÀÏÀº °ÅÀÇ ¾ø½À´Ï´Ù. ¿Ö³ÄÇϸé, º¸Åë ¿î¿µ üÁ¦°¡ ±×·± ÆÄÀÏÀº »ý¼ºÀ» Çã¿ëÇÏÁö ¾Ê±â ¶§¹®ÀÔ´Ï´Ù.

+

ÀÌ ¸Å°³º¯¼ö´Â Ç¥Çö½ÄÀÏ ¼ö ÀÖ½À´Ï´Ù.

+ +
+ +

ErrorLevel

+

[v1.1.04+] ÀÌ ¸í·É¾î´Â ½ÇÆнà ¿¹¿Ü¸¦ ´øÁú ¼ö ÀÖ½À´Ï´Ù. ´õ ÀÚ¼¼ÇÑ Á¤º¸´Â ½ÇÇà½Ã°£ ¿¡·¯¸¦ ÂüÁ¶ÇϽʽÿÀ.

+

ErrorLevel´Â º¯°æ¿¡ ½ÇÆÐÇÑ ÆÄÀÏÀÇ °³¼ö°¡ ¼³Á¤µÇ°í ±×·¸Áö ¾ÊÀ¸¸é 0ÀÌ ¼³Á¤µË´Ï´Ù.

+

+ÆÄÀÏÀÌ ¹ß°ßµÇ¸é, A_LastError´Â 0 (¿µ)ÀÌ ¼³Á¤µÇ°Å³ª ¶Ç´Â ¸¶Áö¸· ½ÇÆÐÈÄ Áï½Ã ¿î¿µ üÁ¦ÀÇ GetLastError() ÇÔ¼öÀÇ °á°ú°¡ ¼³Á¤µË´Ï´Ù. ±×·¸Áö ¾ÊÀ¸¸é A_LastError´Â ¿Ö ÆÄÀÏÀÌ ¹ß°ßµÇÁö ¾Ê¾Ò´ÂÁö ¾Ë·ÁÁÙ ¿¡·¯ Äڵ尡 ´ã±é´Ï´Ù.

+ +

³íÆò

+

+Attributes ¸Å°³º¯¼ö´Â ¿¬»êÀÚ¿Í ¼Ó¼º ±âÈ£ÀÇ Áý´ÜÀ¸·Î ±¸¼ºµË´Ï´Ù.

+ +

¿¬»êÀÚ:

+ + + + + + + + + + + + + +
+¼Ó¼ºÀ» ÄÕ´Ï´Ù
-¼Ó¼ºÀ» ÄÕ´Ï´Ù
^¼Ó¼ºÀ» Åä±ÛÇÕ´Ï´Ù (ÇöÀç¿Í ¹Ý´ë °ªÀ¸·Î ¼³Á¤ÇÕ´Ï´Ù)
+


+ ¼Ó¼º ±âÈ£:
+ R = READONLY
+ A = ARCHIVE
+ S = SYSTEM
+ H = HIDDEN
+ N = NORMAL (´Ù¸¥ ¼Ó¼º°ú »ç¿ëÇÏÁö ¾ÊÀ» °æ¿ì¿¡¸¸ À¯È¿)
+ O = OFFLINE
+T = TEMPORARY

+

ÁÖÀÇ: ÇöÀç, ÆÄÀÏÀÇ ¾ÐÃà »óÅ´ ´ÙÀ½ ¸í·É¾î·Î ¹Ù²Ü ¼ö ÀÖ½À´Ï´Ù.

+ +

°ü·Ã Ç׸ñ

+

FileGetAttrib, FileGetTime, FileSetTime, FileGetSize, FileGetVersion, File-ȸµ¹ÀÌ

+ +

¿¹Á¦

+
FileSetAttrib, +RH, C:\MyFiles\*.*, 1  ; +RH´Â +R+H¿Í µ¿ÀÏÇÕ´Ï´Ù.
+FileSetAttrib, ^H, C:\MyFiles  ; Æú´õÀÇ "hidden" ¼Ó¼ºÀ» Åä±ÛÇÕ´Ï´Ù.
+FileSetAttrib, -R+A, C:\New Text File.txt
+FileSetAttrib, +A, C:\*.ini, , 1  ; C µå¶óÀ̺êÀÇ ¸ðµç .ini ÆÄÀÏÀ» Àç±ÍÇÕ´Ï´Ù.
+ + + diff --git a/src/docs/commands/FileSetTime.htm b/src/docs/commands/FileSetTime.htm new file mode 100644 index 0000000..a700bab --- /dev/null +++ b/src/docs/commands/FileSetTime.htm @@ -0,0 +1,116 @@ + + + + +FileSetTime + + + + + + + +

FileSetTime

+ +

ÆÄÀÏÀ̳ª Æú´õÀÇ ³¯Â¥½Ã°£ µµÀåÀ» º¯°æÇÕ´Ï´Ù. ¿ÍÀϵåÄ«µå¸¦ Áö¿øÇÕ´Ï´Ù.

+ +
FileSetTime [, YYYYMMDDHH24MISS, FilePattern, WhichTime, OperateOnFolders?, Recurse?]
+

¸Å°³º¯¼ö

+
+ +
YYYYMMDDHH24MISS
+

ºñ¾î Àְųª »ý·«Çϸé, ÇöÀç ½Ã°£ÀÌ ±âº»°ªÀÔ´Ï´Ù. ±×·¸Áö ¾ÊÀ¸¸é, ¿¬»ê¿¡ »ç¿ëÇÒ ½Ã°£À» ÁöÁ¤ÇϽʽÿÀ (Çü½Ä¿¡ °üÇؼ­´Â ³íÆòÀ» ÂüÁ¶ÇϽʽÿÀ). + 1601³â ¹Ì¸¸Àº Áö¿øÇÏÁö ¾Ê½À´Ï´Ù.

+

ÀÌ ¸Å°³º¯¼ö´Â Ç¥Çö½ÄÀÔ´Ï´Ù. °á°úÀûÀ¸·Î, ¿©·¯ º¯¼ö¸¦ °áÇÕÇؼ­ ÇϳªÀÇ ½Ã°£µµÀåÀ» Çü¼ºÇÒ ÇÊ¿ä°¡ ÀÖ´Ù¸é, ÆÛ¼¾Æ® »çÀÎ ´ë½Å¿¡ Á¡ ¿¬»êÀÚ¸¦ »ç¿ëÇØ¾ß ÇÕ´Ï´Ù. ¿¹¸¦ µé¾î: FileSetTime, Year . Month . Day, C:\My File.txt.

+ +
FilePattern
+

ÆÄÀÏÀ̳ª Æú´õÀÇ À̸§. ¶Ç´Â C:\Temp\*.tmp¿Í °°Àº ¿ÍÀϵåÄ«µå ÆÐÅÏ. FilePatternÀº Àý´ë °æ·Î¸¦ ÁöÁ¤ÇÏÁö ¾ÊÀ¸¸é %A_WorkingDir%¿¡ ÀÖ´Ù°í °£Áֵ˴ϴÙ.

+

»ý·«Çϸé, ´ë½Å¿¡ ÆÄÀÏ-ȸµ¹ÀÌ °¡Àå ¾ÈÂÊ¿¡ ½ÎÀÎ ÇöÀç ÆÄÀÏÀÌ »ç¿ëµË´Ï´Ù.

+ +
WhichTime
+
¼³Á¤ÇÒ ½Ã°£µµÀå:
+ M = ¼öÁ¤ ½Ã°£ (ÀÌ ¸Å°³º¯¼ö°¡ »ý·«µÇ°Å³ª ºñ¾î ÀÖÀ¸¸é ±âº»°ª)
+ C = »ý¼º ½Ã°£
+ A = ¸¶Áö¸· Á¢±Ù ½Ã°£
+ +
OperateOnFolders?
+

0 (±âº»°ª) Æú´õ´Â 󸮵ÇÁö ¾Ê½À´Ï´Ù (ÆÄÀÏ Àü¿ë).
+1 ¿ÍÀϵåÄ«µå ÆÐÅÏ¿¡ ºÎÇÕÇÏ´Â ¸ðµç ÆÄÀÏ°ú Æú´õ¸¦ ó¸®ÇÕ´Ï´Ù.
+2 Æú´õ¸¸ ó¸®ÇÕ´Ï´Ù (ÆÄÀÏ ºÒ°¡).

+

ÁÖÀÇ: FilePatternÀÌ ¿ÍÀϵåÄ«µå ÆÐÅÏÀÌ ¾Æ´Ï¶ó ´ÜÀÏ Æú´õ¶ó¸é, ¾ðÁ¦³ª ÀÌ ¼³Á¤¿¡ »ó°ü¾øÀÌ Ã³¸®µË´Ï´Ù.

+

ÀÌ ¸Å°³º¯¼ö´Â Ç¥Çö½ÄÀÏ ¼ö ÀÖ½À´Ï´Ù.

+ +
Recurse?
+

0 (±âº»°ª) ÇÏÀ§Æú´õ ¾ÈÀ¸·Î Àç±ÍÇÏÁö ¾Ê½À´Ï´Ù.
+ 1 ÇÏÀ§Æú´õ ¾ÈÀ¸·Î Àç±ÍÇØ µé¾î°¡ °Å±â¿¡¼­ FilePattern¿¡ ºÎÇÕÇÏ´Â ¸ðµç ÆÄÀÏ°ú Æú´õ¸¦ ó¸®ÇÕ´Ï´Ù. ±×·¸Áö¸¸, ÆÄÀÏ°ú Æú´õ¿¡ 259 ¹®ÀÚ°¡ ³Ñ´Â ¿ÏÀü °æ·Î°¡ ÁöÁ¤µÇ¾î ÀÖÀ¸¸é ¸¶Ä¡ Á¸ÀçÇÏÁö ¾Ê´Â °Íó·³ ¹«½ÃÇÕ´Ï´Ù. ±×·± ÆÄÀÏÀº °ÅÀÇ ¾ø½À´Ï´Ù. ¿Ö³ÄÇÏ¸é º¸Åë ¿î¿µ üÁ¦°¡ ±×·± ÆÄÀÏÀº »ý¼ºÀ» Çã¿ëÇÏÁö ¾Ê±â ¶§¹®ÀÔ´Ï´Ù.

+

ÀÌ ¸Å°³º¯¼ö´Â Ç¥Çö½ÄÀÏ ¼ö ÀÖ½À´Ï´Ù.

+ +
+ +

ErrorLevel

+

[v1.1.04+] ÀÌ ¸í·É¾î´Â ½ÇÆнà ¿¹¿Ü¸¦ ´øÁú ¼ö ÀÖ½À´Ï´Ù. ´õ ÀÚ¼¼ÇÑ Á¤º¸´Â ½ÇÇà½Ã°£ ¿¡·¯¸¦ ÂüÁ¶ÇϽʽÿÀ.

+

ErrorLevelÀº º¯°æ¿¡ ½ÇÆÐÇÑ ÆÄÀÏÀÇ °³¼ö°¡ ¼³Á¤µÇ°í ±×·¸Áö ¾ÊÀ¸¸é 0ÀÌ ¼³Á¤µË´Ï´Ù. ÁöÁ¤µÈ ½Ã°£µµÀåÀÌ À¯È¿ÇÏÁö ¾ÊÀ¸¸é, ¶Ç´Â FilePatternÀÌ ºó °ªÀ¸·Î °áÁ¤µÇ¸é, ErrorLevelÀº 1ÀÌ ¼³Á¤µË´Ï´Ù.

+

+ÆÄÀÏÀÌ ¹ß°ßµÇ¸é, A_LastError´Â 0 (¿µ)ÀÌ ¼³Á¤µË´Ï´Ù. ¶Ç´Â ¸¶Áö¸· ½ÇÆÐÈÄ Áï½Ã ¿î¿µ üÁ¦ÀÇ GetLastError() ÇÔ¼öÀÇ °á°ú°¡ ¼³Á¤µË´Ï´Ù. ±×·¸Áö ¾ÊÀ¸¸é A_LastError¿¡´Â ÆÄÀÏÀÌ ¹ß°ßµÇÁö ¾ÊÀº ÀÌÀ¯¸¦ ³ªÅ¸³»´Â ¿¡·¯ Äڵ尡 ´ã±é´Ï´Ù.

+ +

³íÆò

+

+ÆÄÀÏÀÇ ¸¶Áö¸· Á¢±Ù ½Ã°£Àº NTFS ºÒ·ý¿¡ ºñÇØ FAT16 & FAT32 º¼·ý¿¡¼­´Â Á¤È®ÇÏÁö ¾ÊÀ» ¼ö ÀÖ½À´Ï´Ù.

+

YYYYMMDDHH24MISS Çü½ÄÀÇ ¿ä¼ÒµéÀº ´ÙÀ½°ú °°½À´Ï´Ù:

+ + + + + + + + + + + + + + + + + + + + + + + + + +
YYYY4-ÀÚ¸® ÇØ
MM2-ÀÚ¸® ´Þ (01-12)
DD´ÞÀÇ 2-ÀÚ¸® ³¯ (01-31)
HH24 24-½Ã°£ Çü½ÄÀÇ 2-ÀÚ¸® ½Ã°¢(00-23). ¿¹¸¦ µé¾î, 09´Â ¿ÀÀü 9½ÃÀÌ°í 21Àº ¿ÀÈÄ 9½Ã.
MI2-ÀÚ¸® ºÐ (00-59)
SS2-ÀÚ¸® ÃÊ (00-59)
+

+YYYYMMDDHH24MISS¿¡ ´ëÇÏ¿© ºÎºÐÀûÀ¸·Î ¹®ÀÚ¿­ÀÌ ÁÖ¾îÁö¸é (¿¹, 200403), »ý·«µÈ ³ª¸ÓÁö ¿ä¼ÒµéÀº ´ÙÀ½ÀÇ ±âº» °ªÀ¸·Î ü¿öÁý´Ï´Ù:

+

MM: Month 01
+ DD: Day 01
+ HH24: Hour 00
+ MI: Minute 00
+SS: Second 00

+

+³»Àå º¯¼ö A_Now¿¡ ÇöÁö Áö¿ª ½Ã°¢ÀÌ À§ÀÇ Çü½ÄÀ¸·Î ´ã°Ü ÀÖ½À´Ï´Ù. ºñ½ÁÇÏ°Ô, A_NowUTC¿¡´Â ÇöÀç Ç¥ÁؽÃ(Coordinated Universal Time)°¡ ´ã°Ü ÀÖ½À´Ï´Ù.

+

ÁÖÀÇ: ³¯Â¥-½Ã°£ °ªÀº ºñ±³ÇÏ°í ´õÇÏ°í »¬ ¼ö ÀÖ½À´Ï´Ù. EnvAdd¿Í EnvSub¸¦ »ç¿ëÇÏ¸é µË´Ï´Ù. +¶Ç, ½Ã°£À» ºñ±³ÇÒ ¶§´Â º¸´Ù Å©´Ù¿Í º¸´Ù ÀÛ´Ù¸¦ »ç¿ëÇÏÁö ¾Ê´Â °ÍÀÌ ÁÁ½À´Ï´Ù. ¿Ö³ÄÇÏ¸é µÑ ¸ðµÎ ¹®ÀÚ¿­ ±æÀÌ°¡ °°±â ¶§¹®ÀÔ´Ï´Ù. ¼ýÀÚ·Î ºñ±³ÇØ¾ß ÇÕ´Ï´Ù; ¿¹¸¦ µé¾î, 20040201´Â ¾ðÁ¦³ª 200401010533º¸´Ù ¼ýÄ¡»ó ÀÛ½À´Ï´Ù (±×·¯³ª ³â´ë±â »óÀ¸·Î´Â ´õ Å®´Ï´Ù). ±×·¡¼­ ´ë½Å¿¡ EnvSub¸¦ »ç¿ëÇÏ¿© µÑ »çÀÌÀÇ ½Ã°£ÀÇ ¾çÀÌ À½¼öÀÎÁö ¾ç¼öÀÎÁö ¾Ë¾Æ³»½Ê½Ã¿À.

+ +

°ü·Ã Ç׸ñ

+

FileGetTime, FileGetAttrib, FileSetAttrib, FileGetSize, FileGetVersion, FormatTime, File-loop, EnvAdd, EnvSub

+ +

¿¹Á¦

+
; ºÎÇÕÇÏ´Â ¸ðµç ÆÄÀÏ¿¡ ´ëÇÏ¿© ¼öÁ¤ ½Ã°£À» ÇöÀç ½Ã°£À¸·Î ¼³Á¤ÇÕ´Ï´Ù:
+FileSetTime, , C:\temp\*.txt
+
+; ¼öÁ¤ ³¯Â¥¸¦ ¼³Á¤ÇÕ´Ï´Ù (½Ã°£Àº ÀÚÁ¤ÀÔ´Ï´Ù):
+FileSetTime, 20040122, C:\My Documents\test.doc
+
+; »ý¼º ½Ã°£À» ¼³Á¤ÇÕ´Ï´Ù. ½Ã°£Àº 4:55pmÀ¸·Î ¼³Á¤µË´Ï´Ù:
+FileSetTime, 200401221655, C:\My Documents\test.doc, C
+
+; ÆÐÅÏ¿¡ ºÎÇÕÇÏ´Â ¸ðµç ÆÄÀÏÀÇ º¯°æ-³¯Â¥¸¦ º¯°æÇÕ´Ï´Ù.
+; ¸¶Áö¸· ¸Å°³ º¯¼ö ¶§¹®¿¡ ºÎÇÕÇÏ´Â Æú´õµµ ¸ðµÎ º¯°æµË´Ï´Ù:
+FileSetTime, 20040122165500, C:\Temp\*.*, M, 1
+ + + diff --git a/src/docs/commands/Finally.htm b/src/docs/commands/Finally.htm new file mode 100644 index 0000000..62ca8df --- /dev/null +++ b/src/docs/commands/Finally.htm @@ -0,0 +1,90 @@ + + + + +Finally + + + + + + + +

Finally [v1.1.14+]

+ +

+try ¼­¼ú¹®ÀÇ ½ÇÇà ÈÄ¿¡ Çϳª ÀÌ»óÀÇ ¼­¼ú¹® (¸í·É¾î ¶Ç´Â Ç¥Çö½Ä)À» Ç×»ó ½ÇÇàÇÕ´Ï´Ù.

+ +
Finally Statement
+
Finally
+{
+    Statements
+}
+

³íÆò

+

+finally¸¦ »ç¿ëÇÒ ¶§¸¶´Ù À§¿¡ ÀÖ´Â try (¶Ç´Â catch) ¼­¼ú¹®¿¡ (¿¬°üµÇ¾î ÀÖ¾î¾ß) ¼ÓÇØ¾ß ÇÕ´Ï´Ù. finally´Â ¾ðÁ¦³ª °¡Àå °¡±î¿î À§ÀÇ try ¼­¼ú¹®¿¡ ¼ÓÇÕ´Ï´Ù. blockÀÌ »ç¿ëµÇ¾î ±× ÇàÀ§°¡ º¯°æµÈ °æ¿ì´Â Á¦¿ÜÇÕ´Ï´Ù.

+

+Try ¼­¼ú¹®Àº catch ¶Ç´Â finally°¡ Á¸ÀçÇϴ°¡¿¡ µû¶ó ´Ù¸£°Ô ÇൿÇÕ´Ï´Ù. ´õ ÀÚ¼¼ÇÑ Á¤º¸´Â Try¸¦ ÂüÁ¶ÇϽʽÿÀ.

+

+Goto, break, continue ±×¸®°í returnÀº try ºí·Ï ¾ÈÀÇ Á¦¾î È帧 Áö½Ã¾î¸¦ ¾ïÁ¦ÇÏ·Á¸é ²À ÇÊ¿äÇÏÁö¸¸ finally ºí·ÏÀ» Á¾·áÇÏ´Â µ¥´Â »ç¿ëÇÒ ¼ö ¾ø½À´Ï´Ù. ¿¹¸¦ µé¾î, try°¡ return 42¸¦ »ç¿ëÇÑ´Ù¸é, finally ºí·ÏÀÌ ½ÇÇàµÈ ÈÄ °ª 42°¡ ¹ÝȯµË´Ï´Ù. ´ÙÀ½ ¸í·É¾î Áß Çϳª¸¦ »ç¿ëÇÏ¿© finally ºí·ÏÀ» ºüÁ® ³ª¿À·Á´Â ½Ãµµ´Â ÀûÀç ½Ã°£¿¡ ±×·¸Áö ¾ÊÀ¸¸é ½ÇÇà ½Ã°£¿¡ °¡´ÉÇÏ¸é ¿¡·¯·Î ŽÁöµË´Ï´Ù.

+

+v1.1.19.02 ÀÌÀü¿¡¼­, finally ¼­¼ú¹®ÀÌ Á¸ÀçÇϸé try ¾ÈÀÇ Á¦¾î È帧 ¼­¼ú¹®ÀÌ ÀÛµ¿ÇÏÁö ¸øÇÏ´Â ¹ö±×°¡ ÀÖ¾ú½À´Ï´Ù. ReturnÀÌ finally ¾È¿¡¼­ Çã¿ëµÇ´Â ¹ö±×°¡ ÀÖ¾úÁö¸¸, ¿¹¿Ü¸¦ ´øÁ®µµ ¹«½ÃµÇ¾ú½À´Ï´Ù.

+

+One True Brace (OTB) ½ºÅ¸ÀÏÀº ¼±ÅÃÀûÀ¸·Î finally ¸í·É¾î¿Í ÇÔ²² »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù:

+
try {
+    ...
+} finally {
+    ...
+}
+
+try {
+    ...
+} catch e {
+    ...
+} finally {
+    ...
+}
+ +

°ü·Ã Ç׸ñ

+

+Try, Catch, Throw, ºí·Ï

+ +

¿¹Á¦

+ +
try
+{
+    ToolTip, Working...
+    Example1()
+}
+catch e
+{
+    ; e°¡ ´ã°í ÀÖ´Â °´Ã¼¿¡ °üÇÑ ´õ ÀÚ¼¼ÇÑ Á¤º¸´Â, Catch¸¦ ÂüÁ¶ÇϽʽÿÀ.
+    MsgBox, 16,, % "Exception thrown!`n`nwhat: " e.what "`nfile: " e.file
+        . "`nline: " e.line "`nmessage: " e.message "`nextra: " e.extra
+}
+finally
+{
+    ToolTip ; ÅøÆÁÀ» °¨Ãä´Ï´Ù
+}
+
+MsgBox, Done!
+
+; ÀÌ ÇÔ¼ö¿¡ ÀÖ´Â Finally ºí·ÏÀº  û¼Ò ÄÚµå·Î ÇàÀ§ÇÕ´Ï´Ù.
+Example1()
+{
+    try
+        Example2()
+    finally
+        MsgBox, ¿©±â´Â ¿¹¿Ü¿¡ »ó°ü¾øÀÌ ¾ðÁ¦³ª ½ÇÇàµË´Ï´Ù.
+}
+
+; ÀÌ ÇÔ¼ö´Â ºÐÀÌ È¦¼öÀÌ¸é ½ÇÆÐÇÕ´Ï´Ù.
+Example2()
+{
+    if Mod(A_Min, 2)
+        throw Exception("Test exception")
+    MsgBox, Example2 did not fail
+}
+ + + diff --git a/src/docs/commands/For.htm b/src/docs/commands/For.htm new file mode 100644 index 0000000..9291b9b --- /dev/null +++ b/src/docs/commands/For.htm @@ -0,0 +1,132 @@ + + + + +For-loop + + + + + + + +

For-loop [AHK_L 59+]

+ +

ÀÏ·ÃÀÇ ¸í·É¾î¸¦ °´Ã¼ ¾ÈÀÇ °¢ Å°-°ª ½Ö¸¶´Ù ÇÑ ¹ø¾¿ ¹Ýº¹ÇÕ´Ï´Ù.

+ +
For Key [, Value] in Expression
+

¸Å°³º¯¼ö

+
+ +
Key
+

°¢ ¹Ýº¹À» ½ÃÀÛÇÒ ¶§ Å°¸¦ ÀúÀåÇÒ º¯¼öÀÇ À̸§.

+ +
Value
+

ÇöÀç Å°¿¡ ¿¬°üµÈ °ªÀ» ÀúÀåÇÒ º¯¼öÀÇ À̸§.

+ +
Expression
+
°´Ã¼ ¶Ç´Â °´Ã¼¸¦ ´ã°í ÀÖ´Â º¯¼ö·Î °á°ú°¡ µÇ´Â

Ç¥Çö½Ä.

+ +
+ +

³íÆò

+

ExpressionÀº ȸµ¹ÀÌ°¡ ½ÃÀ۵DZâ Àü¿¡ ÇÑ ¹ø¸¸ Æò°¡µË´Ï´Ù. ±×ÀÇ °á°ú°¡ °´Ã¼°¡ ¾Æ´Ï¸é, ½ÇÇàÀº Áï½Ã ȸµ¹ÀÌ ¸öü ´ÙÀ½ ÁÙ·Î Á¡ÇÁÇÕ´Ï´Ù; ±×·¸Áö ¾ÊÀ¸¸é, ¿­°Å(enumerator) °´Ã¼¸¦ ¿­¶÷Çϱâ À§ÇÏ¿© ±× °´Ã¼ÀÇ _NewEnum() ¸Þ½îµå°¡ È£ÃâµË´Ï´Ù. °¢ ¹Ýº¹À» ½ÃÀÛÇÒ ¶§, ±× ¿­°Å °´Ã¼ÀÇ Next() ¸Þ½îµå¸¦ »ç¿ëÇÏ¿© ´ÙÀ½ Å°-°ª ½ÖÀ» ¿­¶÷ÇÕ´Ï´Ù. Next()°¡ 0 ¶Ç´Â ºó ¹®ÀÚ¿­À» µ¹·ÁÁÖ¸é, ȸµ¹ÀÌ°¡ ³¡³³´Ï´Ù.

+

+for-ȸµ¹ÀÌ¿Í Á¤È®ÇÏ°Ô µ¿µîÇÏÁö´Â ¾ÊÁö¸¸, ´ÙÀ½ ¿¹Á¦´Â ÀÌ Ã³¸® °úÁ¤À» ½Ã¿¬ÇÕ´Ï´Ù:

+
_enum := (Expression)._NewEnum()
+if IsObject(_enum)
+    while _enum.Next(Key, Value)
+    {
+        ...
+    }
+
+

+±âÁ¸ÀÇ Å°-°ª ½ÖÀº ȸµ¹ÀÌ Áß¿¡ º¯°æÇÒ ¼ö ÀÖÁö¸¸, ±×·¯³ª Å°¸¦ »ðÀÔÇϰųª Á¦°ÅÇϸé Ç׸ñÀ» »©¸Ô°Å³ª ¿©·¯ ¹ø ¹Ýº¹ÇÏ´Â ¹®Á¦¸¦ ¾ß±âÇÒ ¼ö ÀÖ½À´Ï´Ù. ÇÑ °¡Áö ¿ìȸåÀº Á¦°ÅÇÒ Å° ¸ñ·ÏÀ» ¸¸µç ´ÙÀ½, ù ¹ø° ȸµ¹ÀÌ°¡ ¿Ï·áµÈ ÈÄ µÎ ¹ø° ȸµ¹À̸¦ »ç¿ëÇÏ¿© Å°¸¦ Á¦°ÅÇÏ´Â °ÍÀÔ´Ï´Ù. Object.Remove(first, last)¸¦ »ç¿ëÇØ È¸µ¹ÀÌ ¾øÀÌ ÇÑ ¹üÀ§ÀÇ Å°¸¦ Á¦°ÅÇÒ ¼ö ÀÖ´Ù´Â °Í¿¡ ÁÖ¸ñÇϽʽÿÀ.

+

+for-ȸµ¹ÀÌ´Â º¸Åë ´ÙÀ½¿¡ ºí·ÏÀÌ µû¶ó¿É´Ï´Ù. ÀÌ ºí·ÏÀº ȸµ¹ÀÌÀÇ ¸öü¸¦ Çü¼ºÇÏ´Â ¼­¼ú¹®ÀÇ Áý´ÜÀÔ´Ï´Ù. ±×·¸Áö¸¸, ¼­¼ú¹®ÀÌ Çϳª¸¸ Àִ ȸµ¹ÀÌ´Â ºí·ÏÀ» ¿ä±¸ÇÏÁö ¾Ê½À´Ï´Ù ("if" ±×¸®°í ±×ÀÇ "else"´Â ÀÌ·± ¸ñÀûÀ¸·Î ÇϳªÀÇ ¼­¼ú¹®À¸·Î °è¼öµË´Ï´Ù). One True Brace (OTB) ½ºÅ¸ÀÏÀ» ¼±ÅÃÀûÀ¸·Î »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. ÀÌ ½ºÅ¸ÀÏÀº ¿©´Â È°°ýÈ£¸¦ ±× ¾Æ·¡°¡ ¾Æ´Ï¶ó °°Àº ÁÙ¿¡ ³ªÅ¸³ªµµ·Ï Çã¿ëÇÕ´Ï´Ù. ¿¹¸¦ µé¾î: for x, y in z {.

+

+¸ðµç ȸµ¹ÀÌ¿Í ¸¶Âù°¡Áö·Î, Break, Continue ±×¸®°í A_Index¸¦ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù.

+ +

COM °´Ã¼

+

+Å°(Key)¿Í °ª(Value)Àº ¿­°ÅÀÚÀÇ Next() ¸Þ½îµå¿¡ Á÷Á¢ °Ç³×Áý´Ï´Ù. °Å±â¿¡ ÇÒ´çµÇ´Â °ªÀº ¾î¶² Á¾·ùÀÇ °´Ã¼°¡ ¿­°ÅµÇ°í Àִ°¡¿¡ µû¶ó ´Ù¸¨´Ï´Ù. COM °´Ã¼¶ó¸é, Key¿¡´Â IEnumVARIANT::Next()°¡ µ¹·ÁÁÖ´Â °ªÀÌ ´ã±â°í Value¿¡´Â ±×ÀÇ variant À¯ÇüÀ» °¡¸®Å°´Â ¹øÈ£°¡ ´ã±é´Ï´Ù. ¿¹¸¦ µé¾î, Scripting.Dictionary °´Ã¼¿Í »ç¿ëµÉ ¶§, °¢ Key´Â »çÀüÀ¸·ÎºÎÅÍ ¿Â Å°°¡ ´ã±â°í Value´Â ÀüÇüÀûÀ¸·Î ¹®ÀÚ¿­¿¡ 8, Á¤¼ö¿¡ 3ÀÌ ´ã±é´Ï´Ù. À¯Çü ÄÚµå ¸ñ·ÏÀº ComObjType¸¦ ÂüÁ¶ÇϽʽÿÀ.

+

+[v1.0.96.00+]: SafeArray¸¦ ¿­°ÅÇÒ ¶§, Key¿¡´Â ÇöÀç ¿ø¼Ò°¡ ´ã±â°í Value¿¡´Â ±×ÀÇ variant À¯ÇüÀÌ ´ã±é´Ï´Ù.

+ +

°ü·Ã Ç׸ñ

+

¿­°Å °´Ã¼, Object.NewEnum(), While-ȸµ¹ÀÌ, Loop, Until, Break, Continue, ºí·Ï

+ +

¿¹Á¦

+
; °´Ã¼ÀÇ Å°-°ª ½ÖÀ» ³ª¿­ÇÕ´Ï´Ù:
+colours := Object("red", 0xFF0000, "blue", 0x0000FF, "green", 0x00FF00)
+; À§ÀÇ Ç¥Çö½ÄÀº ¾Æ·¡ÀÇ "colours" ´ë½Å¿¡ Á÷Á¢ »ç¿ëÇÒ ¼ö ¾ø½À´Ï´Ù:
+for k, v in colours
+    s .= k "=" v "`n"
+MsgBox % s
+
+
; ¿­¸° Ž»ö â°ú ÀÎÅÍ³Ý ÀͽºÇ÷η¯ âÀ» ¸ðµÎ ³ª¿­ÇÕ´Ï´Ù:
+for window in ComObjCreate("Shell.Application").Windows
+    windows .= window.LocationName " :: " window.LocationURL "`n"
+MsgBox % windows
+
/*
+Class: CEnumerator
+
+¼ýÄ¡ Å°¸¦ ¹Ýº¹ÇÏ´Â µ¥ »ç¿ëÇÒ ¼ö ÀÖ´Â ¹ü¿ë ¿­°Å °´Ã¼.
+¹è¿­Àº ¹Ýº¹ Áß¿¡ º¯°æÇؼ­´Â ¾ÈµË´Ï´Ù. ±×·¸Áö ¾ÊÀ¸¸é, ¹Ýº¹ ¹üÀ§°¡ À¯È¿ÇÏÁö ¾Ê°Ô µË´Ï´Ù.
+¹è¿­ °æ°è¿¡ ´ëÇÏ¿© ¸ÂÃã MaxIndex() ÇÔ¼ö¸¦ Á¤ÀÇÇÒ ¼ö ÀÖ½À´Ï´Ù.
+1°ú ÃÖ´ë À妽º »çÀÌ¿¡ ºüÁø ¿ø¼Ò°¡ ÀÖ´Ù¸é, ¹Ýº¹µÇ±â´Â ÇÏÁö¸¸ °ªÀº ""°¡ µË´Ï´Ù.
+ÀÌ°ÍÀº ÁøÂ¥ Èñ¼Ò Çà¿­Àº ÀÌ ¿­°Å °´Ã¼°¡ ¼³°è»ó Áö¿øµÇÁö ¾Ê´Â´Ù´Â ¶æÀÔ´Ï´Ù.
+°´Ã¼°¡ ÀÌ ¹Ýº¹ÀÚ¸¦ »ç¿ëÇÏ°Ô ¸¸µé·Á¸é, ´ÙÀ½ ÇÔ¼ö¸¦ Ŭ·¡½º Á¤ÀÇ¿¡ »ðÀÔÇϽʽÿÀ:
+
+    _NewEnum()
+    {
+    	return new CEnumerator(this)
+    }
+
+Source: http://www.autohotkey.com/board/topic/2667-suggestions-on-documentation-improvements/?p=531509
+*/
+
+; ¿­°Å °´Ã¼¸¦ ¹Ýº¹ÇÕ´Ï´Ù
+For k, v in Test
+	MsgBox %k%=%v%
+
+; »ç¿ë¹ýÀ» ½Ã¿¬Çϱâ À§ÇØ Å¬·¡½º¸¦ Å×½ºÆ®ÇÕ´Ï´Ù
+class Test
+{
+	static Data := ["abc", "def", "ghi"]
+
+	_NewEnum()
+	{
+		return new CEnumerator(this.Data)
+	}
+}
+
+class CEnumerator
+{
+	__New(Object)
+	{
+		this.Object := Object
+		this.first := true
+		; ¼Óµµ¸¦ À§ÇØ Ä³½¬ÇÕ´Ï´Ù. ¸ÂÃã MaxIndex() ÇÔ¼ö°¡ ¼öÇ༺´ÉÀÌ ÁÁÁö ¾ÊÀ» °æ¿ì À¯¿ëÇÕ´Ï´Ù.
+		; ±× ÀÀ´äÀº ¹Ýº¹ µ¿¾È¿¡ Å°-°ª ½ÖÀÌ »ðÀÔµÇÁö ¾Ê´Â´Ù´Â ¶æÀÔ´Ï´Ù. ±×·¸Áö ¾ÊÀ¸¸é ¹üÀ§°¡ ¹«È¿°¡ µÇ¾î ¹ö¸± °ÍÀÔ´Ï´Ù.
+		this.ObjMaxIndex := Object.MaxIndex()
+	}
+
+	Next(ByRef key, ByRef value)
+	{
+		if (this.first)
+		{
+			this.Remove("first")
+			key := 1
+		}
+		else
+			key ++
+		if (key <= this.ObjMaxIndex)
+			value := this.Object[key]
+		else
+			key := ""
+		return key != ""
+	}
+}
+ + \ No newline at end of file diff --git a/src/docs/commands/Format.htm b/src/docs/commands/Format.htm new file mode 100644 index 0000000..94f7083 --- /dev/null +++ b/src/docs/commands/Format.htm @@ -0,0 +1,199 @@ + + + + +Format + + + + + + + +

Format [v1.1.17+]

+ +

°¡º¯ °³¼öÀÇ ÀÔ·Â °ªÀ» Çü½Ä ¹®ÀÚ¿­¿¡ ¸ÂÃß¾î Æ÷¸ËÇÕ´Ï´Ù.

+ +
String := Format(FormatStr [, Values...])
+

¸Å°³º¯¼ö

+
+ +
FormatStr
+
+

+ {Index:Format}ÀÇ ÇüÅ·Π±âÈ£ ÅؽºÆ®¿Í À§Ä¡º¸À¯ÀÚ·Î ±¸¼ºµÈ Çü½Ä ¹®ÀÚ¿­ .

+

+ Index´Â »ç¿ëÇÒ ÀÔ·Â °ªÀ» °¡¸®Å°´Â Á¤¼öÀÔ´Ï´Ù. 1À̸é ù ¹ø° °ªÀÔ´Ï´Ù.

+

+ FormatÀº, ¾Æ·¡¿¡ ±â¼úÇÏ´Â ¹Ù¿Í °°ÀÌ, ¼±ÅÃÀû Çü½Ä ÁöÁ¤ÀÚÀÔ´Ï´Ù..

+

(ÀÌÀü¿¡ ¹®ÀÚ¿­¿¡ »ç¿ëµÇ¾úÀ»Áö¶óµµ) ´ÙÀ½ ÀÔ·Â °ªÀ» ¿¬¼Ó¿­·Î »ç¿ëÇÏ·Á¸é À妽º¸¦ »ý·«ÇϽʽÿÀ. + + ¿¹¸¦ µé¾î, "{2:i} {:i}"´Â µÎ ¹ø°¿Í ¼¼ ¹ø° ÀÔ·Â °ªÀ» ½ÊÁø Á¤¼ö·Î, ½ºÆäÀ̽º·Î ºÐ¸®ÇÏ¿©, Æ÷¸ËÇÕ´Ï´Ù. Index¸¦ »ý·«ÇÏ´õ¶óµµ, FormatÀº ¿©ÀüÈ÷ : ¾Õ¿¡ ¿Í¾ß ÇÕ´Ï´Ù. ºó È°°ýÈ£¸¦ ÁöÁ¤ÇÏ¸é ´ÙÀ½ ÀÔ·Â °ªÀ» ±âº» Çü½ÄÀ¸·Î »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù: {}

+

+ {{}¿Í {}}¸¦ »ç¿ëÇÏ¸é ¹®ÀÚ¿­¿¡ ¹®ÀÚ ±×´ë·ÎÀÇ È°°ýÈ£¸¦ Æ÷ÇÔÇÒ ¼ö ÀÖ½À´Ï´Ù. ´Ù¸¥ ¹«È¿ÇÑ À§Ä¡º¸À¯ÀÚ´Â °á°ú¿¡ ÀÖ´Â ±×´ë·Î Æ÷ÇԵ˴ϴÙ.

+

°ø¹éÀº È°°ýÈ£ ¾È¿¡ Çã¿ëµÇÁö ¾Ê½À´Ï´Ù (Ç÷¡±×·Î¼­ ³ªÅ¸³ª´Â °ÍÀº ¿¹¿Ü).

+
+ +
Values
+
+

Æ÷¸ËµÇ¾î ÃÖÁ¾ ¹®ÀÚ¿­¿¡ »ðÀ﵃ ÀÔ·Â °ªµé. °¢ °ªÀº º°µµÀÇ ¸Å°³º¯¼öÀÔ´Ï´Ù. ù °ªÀº À妽º°¡ 1ÀÔ´Ï´Ù.

+

°ª ¹è¿­À» °Ç³×·Á¸é, °¡º¯ ÇÔ¼ö È£ÃâÀ» »ç¿ëÇϽʽÿÀ:

+
arr := [13, 240]
+MsgBox % Format("{2:x}{1:02x}", arr*)
+
+ +
+ +

Çü½Ä ÁöÁ¤ÀÚ

+

+°¢ Çü½Ä ÁöÁ¤ÀÚ´Â (½ºÆäÀ̽º ¾øÀÌ) ¼ø¼­´ë·Î ´ÙÀ½ ±¸¼º¿ä¼Ò¸¦ Æ÷ÇÔÇÒ ¼ö ÀÖ½À´Ï´Ù:

+
Flags Width .Precision ULT Type
+

Flags Ãâ·Â Á¤·Ä°ú Á¢µÎ»ç¿¡ ¿µÇâÀ» ÁÝ´Ï´Ù: - + 0 space #

+

+Width: Æ÷¸Ë °ªÀÇÃÖ¼Ò ³Êºñ¸¦, ¹®ÀÚ´ÜÀ§·Î Á¦¾îÇÏ´Â ½ÊÁø Á¤¼ö. +±âº»À¸·Î, °ªµéÀº ¿À¸¥ÂÊ¿¡ Á¤·ÄµÇ°í ½ºÆäÀ̽º°¡ Æеù¿¡ »ç¿ëµË´Ï´Ù. ÀÌ°ÍÀº- (¿ÞÂÊ-Á¤·Ä) ±×¸®°í 0 (zero prefix) Ç÷¡±×¸¦ »ç¿ëÇÏ¿© ¿À¹ö¶óÀ̵å ÇÒ ¼ö ÀÖ½À´Ï´Ù.

+

+.Precision: ¹®ÀÚ¿­ÀÇ ÃÖ´ë °³¼ö, ½ÊÁø ÀÚ¸®¼ö, ¶Ç´Â Ãâ·ÂµÉ À¯È¿ ÀÚ¸®¸¦ Á¦¾îÇÏ´Â ½ÊÁø Á¤¼ö. Ãâ·Â À¯Çü¿¡ µû¶ó ´Þ¶óÁý´Ï´Ù. ¾Õ¿¡ ¹Ýµå½Ã ½ÊÁø ¼Ò¼öÁ¡ÀÌ ÀÖ¾î¾ß ÇÕ´Ï´Ù. Á¤¹Ðµµ¸¦ ÁöÁ¤ÇÏ¸é °ªÀÌ Àß·Á ³ª°¡°Å³ª ¿Ã¸² ³»¸² 󸮵˴ϴÙ.

+ +

ULT [v1.1.20+]: ¹®ÀÚ¿­ °ª¿¡ Àû¿ëÇÒ ´ë¼Ò¹®ÀÚ º¯È¯À» ÁöÁ¤ÇÕ´Ï´Ù -- Upper, Lower ¶Ç´Â Title. À¯ÇüÀÌ sÀÎ °æ¿ì¿¡¸¸ À¯È¿ÇÕ´Ï´Ù. ¿¹¸¦ µé¾î {:U} ¶Ç´Â {:.20Ts}. ¼Ò¹®ÀÚ l°ú t·Î Áö¿øÇÏÁö¸¸, u´Â ºÎÈ£¾ø´Â Á¤¼ö¸¦ À§ÇØ ¿¹¾àµÇ¾î ÀÖ½À´Ï´Ù.

+

Type: ÀÔ·Â °ªÀ» ¾î¶»°Ô ¹ø¿ªÇÒÁö ³ªÅ¸³»´Â ¹®ÀÚ. »ý·«Çϸé, ±âº»°ªÀº sÀÔ´Ï´Ù.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Ç÷¡±×Àṉ̀⺻ ÇàÀ§
-ÁÖ¾îÁø ÇÊµå ³Êºñ ¾È¿¡¼­ °á°ú¸¦ ¿ÞÂÊ Á¤·ÄÇÕ´Ï´Ù (ÇÊ¿äÇÏ¸é ½ºÆäÀ̽º¸¦ ¿À¸¥ÂÊ¿¡ »ðÀÔÇÕ´Ï´Ù).¿À¸¥ÂÊ Á¤·Ä.
+Ãâ·Â °á°ú°¡ ºÎÈ£ ÀÖ´Â À¯ÇüÀÌ¸é ºÎÈ£ (+ ¶Ç´Â -)¸¦ ¾Õ¿¡ µÑ ¼ö ÀÖ½À´Ï´Ù.ºÎÈ£´Â À½ÀÇ ºÎÈ£ °ªÀÏ °æ¿ì¿¡¸¸ ³ªÅ¸³³´Ï´Ù (-).
0width ¾Õ¿¡ 0ÀÌ ÀÖÀ¸¸é, ÃÖ¼Ò ³Êºñ¿¡ µµ´ÞÇÒ ¶§±îÁö ¾ÕÂÊ¿¡ 0ÀÌ Ãß°¡µË´Ï´Ù. 0°ú -°¡ ¸ðµÎ ³ªÅ¸³ª¸é, 0ÀÌ ¹«½ÃµË´Ï´Ù. 0ÀÌ Á¤¼ö Çü½ÄÀ¸·Î ÁöÁ¤µÇ°í (i, u, x, X, o, d) ±×¸®°í Á¤¹Ðµµµµ ÁöÁ¤µÇ¾î ÀÖÀ¸¸é - ¿¹¸¦ µé¾î, {:04.d} - ÀÌ 0Àº ¹«½ÃµË´Ï´Ù.Æеù ¾øÀ½.
space½ºÆäÀ̽º Çϳª¸¦ »ç¿ëÇϸé Ãâ·Â °á°ú°¡ ¾çÀÇ °ªÀÏ °æ¿ì ¾Õ¿¡ ½ºÆäÀ̽º¸¦ Çϳª µÑ ¼ö ÀÖ½À´Ï´Ù. ½ºÆäÀ̽º¿Í + Ç÷¡±×°¡ ¸ðµÎ ³ªÅ¸³ª¸é ±× ½ºÆäÀ̽º´Â ¹«½ÃµË´Ï´Ù. .½ºÆäÀ̽º ³ªÅ¸³ªÁö ¾ÊÀ½.
# +

o, x, or X Çü½Ä°ú »ç¿ëµÉ ¶§, # Ç÷¡±×´Â 0ÀÌ ¾Æ´Ñ Ãâ·Â °ª ¾Õ¿¡ 0, 0x, ¶Ç´Â 0X¸¦ »ç¿ëÇÕ´Ï´Ù.

+

+ e, E, f, a ¶Ç´Â A Çü½Ä°ú »ç¿ëµÉ ¶§, # ÇÁ·¡±×´Â °­Á¦·Î Ãâ·Â °ªÀÌ ¼Ò¼öÁ¡À» °¡Áöµµ·Ï ¸¸µì´Ï´Ù.

+

g ¶Ç´Â G Çü½Ä°ú »ç¿ëµÉ ¶§, # Ç÷¡±×´Â °­Á¦·Î Ãâ·Â °ª¿¡ ¼Ò¼öÁ¡À» Æ÷ÇÔÇϵµ·Ï ¸¸µé°í µÚ¿¡ µû¸£´Â 0À» ÀÚ¸£Áö ¸øÇϵµ·Ï ¹æÁöÇÕ´Ï´Ù.

+

c, d, i, u, ¶Ç´Â s¿Í »ç¿ëµÉ ¶§´Â ¹«½ÃµË´Ï´Ù.

+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
¹®ÀÚÀÎÀÚÃâ·Â Çü½Ä
d ¶Ç´Â iIntegerºÎÈ£ ÀÖ´Â ½ÊÁø Á¤¼ö.
uIntegerºÎÈ£ ¾ø´Â ½ÊÁø Á¤¼ö.
x or XIntegerºÎÈ£ ¾ø´Â ½ÊÀ°Áø Á¤¼ö; xÀÇ °Ý¿¡ µû¶ó "abcdef" ¶Ç´Â "ABCDEF"¸¦ »ç¿ëÇÕ´Ï´Ù. 0x Á¢µÎ»ç´Â # Ç÷¡±×°¡, {:#x}ó·³ »ç¿ëµÇ¾î¾ß Æ÷ÇԵ˴ϴÙ. SetFormat°ú ÀÏ°ü¼ºÀÌ ÀÖ°Ô ½ÊÀ°Áø Çü½ÄÀ» ÁöÁ¤ÇÏ·Á¸é, 0x{:x} ºñ½ÁÇÑ Çü½ÄÀ» »ç¿ëÇϽʽÿÀ.
oIntegerºÎÈ£ ¾ø´Â ÆÈÁø Á¤¼ö.
fFloating-pointºÎÈ£ ÀÖ´Â °ª. ÇüÅ°¡ [ - ]dddd.ddddÀÔ´Ï´Ù. ¿©±â¿¡¼­ dddd´Â Çϳª ÀÌ»óÀÇ ½ÊÁø ÀÚ¸®ÀÔ´Ï´Ù. ½ÊÁø ¼Ò¼öÁ¡ ¾ÕÀÇ ÀÚ¸®¼ö´Â ¼ýÀÚÀÇ Å©±â¿¡ µû¶ó ´Ù¸¨´Ï´Ù. ±×¸®°í ½ÊÁø ¼Ò¼öÁ¡ µÚÀÇ ÀÚ¸®¼ö´Â ¿äûÇÑ Á¤¹Ðµµ¿¡ µû¶ó ´Þ¶óÁý´Ï´Ù.
eFloating-pointºÎÈ£ ÀÖ´Â °ª. ÇüÅ°¡ [ - ]d.dddd e [sign]dd[d] ÀÔ´Ï´Ù. ¿©±â¿¡¼­ d´Â ÇϳªÀÇ ½ÊÁø ÀÚ¸®ÀÌ°í, dddd´Â Çϳª ÀÌ»óÀÇ ½ÊÁø ÀÚ¸®À̸ç, dd[d]´Â µÎ ¼¼ °³ÀÇ ½ÊÁø ÀÚ¸®·Î¼­ Ãâ·Â Çü½Ä°ú Áö¼öÀÇ Å©±â, ±×¸®°í ºÎÈ£°¡ +Àΰ¡ - Àΰ¡¿¡ µû¶ó ´Þ¶óÁý´Ï´Ù.
EFloating-pointe Çü½Ä°ú µ¿ÀÏÇÕ´Ï´Ù. ´Ü, e ¸»°í E´Â Áö¼ö¸¦ ÃÊ·¡ÇÕ´Ï´Ù.
gFloating-pointºÎÈ£ ÀÖ´Â °ªÀº f ¶Ç´Â e Çü½ÄÀ¸·Î º¸¿©Áý´Ï´Ù. ¾î´À ÂÊÀ̵ç ÁÖ¾îÁø °ª°ú Á¤¹Ðµµ¿¡ ´ëÇÏ¿© ´õ °£°áÇÕ´Ï´Ù. e Çü½ÄÀº °ªÀÇ Áö¼ö°¡ -4º¸´Ù À۰ųª precision ÀÎÀÚº¸´Ù Å©°Å³ª °°À» °æ¿ì¿¡¸¸ »ç¿ëµË´Ï´Ù. µÚµû¸£´Â 0Àº Àß·Á ³ª°¡°í, ½ÊÁø ¼Ò¼öÁ¡Àº ´ÙÀ½¿¡ Çϳª ÀÌ»óÀÇ ÀÚ¸®°¡ µû¶ó¿Ã ¶§¸¸ ³ªÅ¸³³´Ï´Ù..
GFloating-pointg Çü½Ä°ú µ¿ÀÏÇÕ´Ï´Ù. ´Ü, e¸»°í EÀ̸é Áö¼ö°¡ ÃÊ·¡µË´Ï´Ù.
aFloating-pointºÎÈ£ ÀÖ´Â ½ÊÀ°Áø ¹è-Á¤¹Ð·Î ºÎµ¿ ¼Ò¼öÁ¡ °ª. ÇüÅ´ [?]0xh.hhhh pddÀÔ´Ï´Ù. ¿©±â¿¡¼­ h.hhhh´Â °¡¼ö(mantissa)ÀÇ ½ÊÀ°Áø ÀÚ¸®ÀÔ´Ï´Ù (¼Ò¹®ÀÚ ±âÈ£ »ç¿ë). ±×¸®°í dd´Â Áö¼ö¸¦ À§ÇÑ Çϳª ÀÌ»óÀÇ ÀÚ¸®ÀÔ´Ï´Ù. Á¤¹Ðµµ´Â ¼Ò¼öÁ¡ ´ÙÀ½ÀÇ ÀÚ¸® ¼ö¸¦ ÁöÁ¤ÇÕ´Ï´Ù.
AFloating-pointa Çü½Ä°ú µ¿ÀÏÇÕ´Ï´Ù. ´Ü, p ¸»°í P´Â Áö¼ö¸¦ ÃÊ·¡ÇÕ´Ï´Ù.
pInteger¸Þ¸ð¸® Áּҷμ­ÀÇ ÀÎÀÚ¸¦ ½ÊÀ°Áø ÀÚ¸®¼ö·Î Ç¥½ÃÇÕ´Ï´Ù.
sString¹®ÀÚ¿­À» ÁöÁ¤ÇÕ´Ï´Ù. ÀÔ·Â °ªÀÌ ¼ýÄ¡À̸é, ½ºÅ©¸³Æ®ÀÇ ÇöÀç ¼ýÀÚ Çü½ÄÀ» »ç¿ëÇÏ¿© ÀÚµ¿À¸·Î ¹®ÀÚ¿­·Î º¯È¯µË´Ï´Ù. ±× ´ÙÀ½¿¡ Width¿Í Precision ÀÎÀÚ°¡ Àû¿ëµË´Ï´Ù.
cCharacter code¼­¼ö °ªÀ¸·Î ¹®ÀÚ Çϳª¸¦ ÁöÁ¤ÇÕ´Ï´Ù. Chr(n)°ú ºñ½ÁÇÕ´Ï´Ù. ÀÔ·Â °ªÀÌ ¿¹»ó ¹üÀ§¸¦ ¹þ¾î³ª¸é, ¹Ý¿Ã¸² µË´Ï´Ù.
+ +

³íÆò

+

+printf¿Í ´Ù¸£°Ô, Å©±â ÁöÁ¤ÀÚ´Â Áö¿øµÇÁö ¾Ê½À´Ï´Ù. ¸ðµç Á¤¼ö¿Í ºÎµ¿ ¼Ò¼öÁ¡ °ªÀº 64-ºñÆ®ÀÔ´Ï´Ù.

+ +

°ü·Ã Ç׸ñ

+

SetFormat, FormatTime

+ +

¿¹Á¦

+
+; °£´ÜÇÑ ±³Ã¼
+s .= Format("{2}, {1}!`r`n", "World", "Hello")
+; ½ºÆäÀ̽º·Î µ¡´ï
+s .= Format("|{:-10}|`r`n|{:10}|`r`n", "Left", "Right")
+; ½ÊÀ°Áø¼ö
+s .= Format("{1:#x} {2:X} 0x{3:x}`r`n", 3735928559, 195948557, 0)
+; ºÎµ¿-¼Ò¼öÁ¡ ¼ö
+s .= Format("{1:0.3f} {1:.10f}", 4*atan(1))
+
+ListVars  ; ¿ÀÅäÇÖÅ°ÀÇ ¸ÞÀΠâÀ» »ç¿ëÇÏ¿© ´ÜÀÏÆø ÅؽºÆ®¸¦ º¸¿©ÁÝ´Ï´Ù.
+WinWaitActive ahk_class AutoHotkey
+ControlSetText Edit1, %s%
+WinWaitClose
+
+ + + diff --git a/src/docs/commands/FormatTime.htm b/src/docs/commands/FormatTime.htm new file mode 100644 index 0000000..7997287 --- /dev/null +++ b/src/docs/commands/FormatTime.htm @@ -0,0 +1,278 @@ + + + + +FormatTime + + + + + + + + +

FormatTime

+ +

½Ã°£µµÀå YYYYMMDDHH24MISS¸¦ ÁöÁ¤µÈ ³¯Â¥/½Ã°£ Çü½ÄÀ¸·Î º¯È¯ÇÕ´Ï´Ù.

+ +
FormatTime, OutputVar [, YYYYMMDDHH24MISS, Format]
+

¸Å°³º¯¼ö

+
+ +
OutputVar
+

°á°ú¸¦ ÀúÀåÇÒ º¯¼öÀÇ À̸§.

+ +
YYYYMMDD...
+

ÀÌ ¸Å°³º¯¼ö¸¦ ºñ¿ö µÎ¸é ÇöÀç ³¯Â¥¿Í ½Ã°£À» »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. ±×·¸Áö ¾ÊÀ¸¸é, YYYYMMDDHH24MISS Çü½ÄÀ¸·Î ½Ã°£µµÀåÀÇ À̲ô´Â ºÎºÐÀ» ¸ðµÎ ÁöÁ¤ÇϽʽÿÀ. ½Ã°£ µµÀåÀÇ ³¯Â¥/½Ã°£ ºÎºÐÀÌ À¯È¿ÇÏÁö ¾Ê´Ù¸é -- À±³âÀÌ ¾Æ´Ñ ÇØ¿¡ 2¿ù 29ÀÏÀ̶ó¸é -- ±× ³¯Â¥¿Í ½Ã°£Àº OutputVarÀ¸·ÎºÎÅÍ Á¦¿ÜµË´Ï´Ù. 1601³âºÎÅÍ 9999³â ±îÁö¸¸ Áö¿øÇÕ´Ï´Ù. Çü½ÄÈ­µÈ ½Ã°£Àº ½Ã°£ ºÎºÐÀÌ À¯È¿Çϱ⸸ ÇÏ´Ù¸é ¿©ÀüÈ÷ ÀÌÀü ÇØ¿¡ ´ëÇÏ¿© ¸¸µé ¼ö ÀÖ½À´Ï´Ù.

+ +
Format
+

»ý·«µÇ¸é, ½Ã°£ ´ÙÀ½¿¡ ±ä ³¯Â¥°¡ ±âº»°ªÀÌ µË´Ï´Ù. µÑ ¸ðµÎ ÇöÀç »ç¿ëÀÚÀÇ ·ÎÄÉÀÏ¿¡ ¸Â°Ô Æ÷¸ËµË´Ï´Ù. + ¿¹¸¦ µé¾î: 4:55 PM Saturday, November 27, 2004

+

+ ±×·¸Áö ¾ÊÀ¸¸é, ¾Æ·¡ÀÇ Çϳª ÀÌ»óÀÇ ³¯Â¥-½Ã°£ Çü½ÄÀ» »çÀÌ¿¡ ±ÛÀÚ ±×´ë·ÎÀÇ ½ºÆäÀ̽º¿Í ±¸µÎÁ¡ ºÎÈ£¸¦ µÎ°í ÁöÁ¤ÇϽʽÿÀ. (½°Ç¥´Â ÇǽŽÃų ÇÊ¿ä°¡ ¾ø½À´Ï´Ù; º¸Åë ±×´ë·Î »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù). ´ÙÀ½ ¿¹Á¦¿¡¼­, MÀ» ´ë¹®ÀÚ·Î »ç¿ëÇØ¾ß ÇÑ´Ù´Â Á¡¿¡ ÁÖÀÇÇϽʽÿÀ: M/d/yyyy h:mm tt

+ +
+ +

³¯Â¥ Çü½Ä (´ë¼Ò¹®ÀÚ ±¸ºÐ)

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
d¾Õ¿¡ 0 ¾øÀÌ ´ÞÀÇ ³¯Â¥ (1 - 31)
dd¾Õ¿¡ 0À» µÎ°í ´ÞÀÇ ³¯Â¥ (01 – 31)
dddÇöÀç »ç¿ëÀÚÀÇ ¾ð¾î·Î ÁÖÀÇ ³¯Â¥ÀÇ ÂªÀº À̸§ (¿¹, Mon)
ddddÇöÀç »ç¿ëÀÚÀÇ ¾ð¾î·Î ÁÖÀÇ ³¯Â¥ÀÇ ¿ÏÀüÇÑ À̸§ (¿¹, Monday)
M¾Õ¿¡ 0¾øÀÌ ´Þ (1 – 12)
MM¾Õ¿¡ 0À» µÎ°í ´Þ (01 – 12)
MMMÇöÀç »ç¿ëÀÚÀÇ ¾ð¾î·Î ´ÞÀÇ ÂªÀº À̸§ (¿¹, Jan)
MMMMÇöÀç »ç¿ëÀÚÀÇ ¾ð¾î·Î ¿ÏÀüÇÑ ´Þ À̸§ (¿¹, January)
y¼¼±â ¾ø´Â ÇØ, ¾Õ¿¡ 0 ¾øÀ½ (0 – 99)
yy¼¼±â ¾ø´Â ÇØ, ¾Õ¿¡ 0 ÀÖÀ½ (00 - 99)
yyyy¼¼±â ÀÖ´Â ÇØ. ¿¹¸¦ µé¾î: 2005
ggÇöÀç »ç¿ëÀÚÀÇ ·ÎÄÉÀÏ¿¡ ´ëÇÑ ½Ã´ë ¹®ÀÚ¿­ (¾øÀ¸¸é ºñ¾î ÀÖÀ½)
+

½Ã°£ Çü½Ä (´ë¼Ò¹®ÀÚ ±¸ºÐ)

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
h¾Õ¿¡ 0 ¾øÀÌ ½Ã°¢; 12-½Ã°£Á¦ Çü½Ä (1 - 12)
hh¾Õ¿¡ 0 ÀÖ´Â ½Ã°¢; 12-½Ã°£Á¦ Çü½Ä (01 – 12)
H¾Õ¿¡ 0 ¾ø´Â ½Ã°¢; 24-½Ã°£Á¦ Çü½Ä (0 - 23)
HH¾Õ¿¡ 0 ÀÖ´Â ½Ã°¢; 24-½Ã°£Á¦ Çü½Ä (00– 23)
m¾Õ¿¡ 0 ¾ø´Â ºÐ (0 – 59)
mm¾Õ¿¡ 0 ÀÖ´Â ºÐ (00 – 59)
s¾Õ¿¡ 0 ¾ø´Â ÃÊ (0 – 59)
ss¾Õ¿¡ 0 ÀÖ´Â ÃÊ (00 – 59)
tÇÑ °³Â¥¸® ½Ã°£ Ç¥½ÄÀÚ, ¿¹¸¦ µé¾î A ¶Ç´Â P (·ÎÄÉÀÏ¿¡ µû¶ó ´Ù¸§)
tt´ÙÁß-¹®ÀÚ ½Ã°£ Ç¥½ÄÀÚ, ¿¹¸¦ µé¾î AM ¶Ç´Â PM (·ÎÄÉÀÏ¿¡ µû¶ó ´Ù¸§)
+

+´ÙÀ½ Çü½ÄÀº ¹Ýµå½Ã Ȧ·Î »ç¿ëµÇ¾î¾ß ÇÕ´Ï´Ù; Áï, ´Ù¸¥ Çü½ÄÀ̳ª ÅؽºÆ®°¡ Format ¸Å°³º¯¼ö¿¡ ¾ø½À´Ï´Ù. ÀÌ Çü½ÄÀº ´ë¼Ò¹®ÀÚ¸¦ ±¸º°ÇÏÁö ¾Ê½À´Ï´Ù.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
(Blank)FormatÀ» ºñ¿ö µÎ¸é ½Ã°£°ú ±×¸®°í ´ÙÀ½¿¡ ±â´Ù¶õ ³¯Â¥¸¦ »ý»êÇÕ´Ï´Ù. ¿¹¸¦ µé¾î, ¾î¶² ·ÎÄÉÀÏ¿¡¼­´Â 4:55 PM Saturday, November 27, 2004·Î ³ªÅ¸³¯ ¼ö ÀÖ½À´Ï´Ù.
TimeÇöÀç »ç¿ëÀÚÀÇ ·ÎÄÉÀÏ¿¡ ´ëÇÑ ½Ã°£ Ç¥Çö, ¿¹¸¦ µé¾î 5:26 PM
ShortDateÇöÀç »ç¿ëÀÚÀÇ ·ÎÄÉÀÏ¿¡ ´ëÇÑ ÂªÀº ³¯Â¥ Ç¥Çö, ¿¹¸¦ µé¾î 02/29/04
LongDateÇöÀç »ç¿ëÀÚÀÇ ·ÎÄÉÀÏ¿¡ ´ëÇÑ ±ä ³¯Â¥ Ç¥Çö, ¿¹¸¦ µé¾î Friday, April 23, 2004
YearMonthÇöÀç »ç¿ëÀÚÀÇ ·ÎÄÉÀÏ¿¡ ´ëÇÑ ÇØ¿Í ´Þ, ¿¹¸¦ µé¾î February, 2004
YDay¾Õ¿¡ 0 ¾øÀÌ ÇØÀÇ ³¯Â¥ (1 – 366)
YDay0¾Õ¿¡ 0 ÀÌ ÀÖ´Â ÇØÀÇ ³¯Â¥ (001 – 366)
WDayÁÖÀÇ ³¯Â¥ (1 – 7). Sunday´Â 1ÀÔ´Ï´Ù.
YWeek + ISO 8601 ¿ÏÀü ÇØÀÇ °³¼ö ±×¸®°í ÁÖ °³¼ö : 200453. 1¿ù 1ÀÏÀ» Æ÷ÇÔÇÑ ÁÖ°¡ »õ ÇØ¿¡¼­ 4 ÀÏ ÀÌ»ó Æ÷ÇԵǾî ÀÖÀ¸¸é, ù ¹ø° ÁÖ·Î °£Áֵ˴ϴÙ. ±×·¸Áö ¾ÊÀ¸¸é, ÀÌÀü ÇØÀÇ ¸¶Áö¸· ÁÖ·Î °£Áֵ˴ϴÙ. ±×¸®°í ±× ´ÙÀ½ ÁÖ°¡ »õ ÇØÀÇ Ã¹ ÁÖ°¡ µË´Ï´Ù. °á·ÐÀûÀ¸·Î, 1¿ù 4ÀÏ°ú 1¿ùÀÇ Ã¹ ¹ø° ¸ñ¿äÀÏÀº ¾ðÁ¦³ª 1¹ø ÁÖ¿¡ ÀÖ½À´Ï´Ù.
+

Ãß°¡ ¿É¼Ç

+

+´ÙÀ½ ¿É¼ÇÀº ½Ã°£µµÀå ¹Ù·Î µÚ YYYYMMDDHH24MISS ¸Å°³º¯¼ö ¾È¿¡ ³ªÅ¸³¯ ¼ö ÀÖ½À´Ï´Ù (½Ã°£µµÀåÀÌ ¾ø´Ù¸é, Ȧ·Î »ç¿ëÇصµ µË´Ï´Ù). ´ÙÀ½ ¿¹Á¦¿¡¼­, µÚÂÊ ³× Ç׸ñ »çÀÌ¿¡ ½°Ç¥°¡ ¾ø´Â µ¥ ÁÖ¸ñÇϽʽÿÀ:

+ +
FormatTime, OutputVar, 20040228 LSys D1 D4
+

+R: µÚÁý½À´Ï´Ù. ³¯Â¥¸¦ ½Ã°£ ¾Õ¿¡ µÓ´Ï´Ù (FormatÀÌ ºñ¾î ÀÖÀ» °æ¿ì¿¡¸¸ Àǹ̰¡ ÀÖ½À´Ï´Ù).

+

Ln: ÀÌ ¿É¼ÇÀÌ ¾øÀ¸¸é, ¹®ÀÚ¿­À» Æ÷¸ËÇÏ´Â µ¥ ÇöÀç »ç¿ëÀÚÀÇ ·ÎÄÉÀÏÀÌ »ç¿ëµË´Ï´Ù. ´ë½Å¿¡ ¿î¿µ üÁ¦ÀÇ ·ÎÄÉÀÏÀ» »ç¿ëÇÏ·Á¸é, LSys¸¦ ÁöÁ¤ÇϽʽÿÀ. ƯÁ¤ÇÑ ·ÎÄÉÀÏÀ» »ç¿ëÇÏ·Á¸é, ±âÈ£ L°ú ´ÙÀ½¿¡ ½ÊÀ°Áø ¶Ç´Â ½ÊÁø ·ÎÄÉÀÏ ½Äº°ÀÚ (LCID)¸¦ ÁöÁ¤ÇϽʽÿÀ. LCID¸¦ ±¸¼ºÇÏ´Â ¹æ¹ý¿¡ °üÇÑ ´õ ÀÚ¼¼ÇÑ Á¤º¸´Â www.microsoft.com¿¡¼­ ´ÙÀ½ ¹®±¸¸¦ °Ë»öÇØ º¸½Ê½Ã¿À: Locale Identifiers

+

Dn: ³¯Â¥ ¿É¼Ç. n¿¡ ´ÙÀ½ ¼ýÀÚ Áß Çϳª¸¦ ÁöÁ¤ÇϽʽÿÀ:
+ 0: °­Á¦·Î ±âº» ¿É¼ÇÀ» »ç¿ëÇϵµ·Ï ¸¸µì´Ï´Ù. ÀÌ´Â ¶ÇÇÑ ÂªÀº ³¯Â¥°¡ È¿·ÂÀ» ¹ßÈÖÇÏ°Ô ¸¸µé±âµµ ÇÕ´Ï´Ù.
+ 1: ªÀº ³¯Â¥¸¦ »ç¿ëÇÕ´Ï´Ù (FormatÀÌ ºñ¾î ÀÖÀ» °æ¿ì¿¡¸¸ Àǹ̰¡ ÀÖ½À´Ï´Ù; 2¿Í 8¿¡´Â ȣȯµÇÁö ¾Ê½À´Ï´Ù).
+ 2: ±ä ³¯Â¥¸¦ »ç¿ëÇÕ´Ï´Ù (FormatÀÌ ºñ¾î ÀÖÀ» °æ¿ì¿¡¸¸ Àǹ̰¡ ÀÖ½À´Ï´Ù; 1°ú 8¿¡´Â ȣȯ¼ºÀÌ ¾ø½À´Ï´Ù).
+ 4: ´ë¾È ´Þ·ÂÀ» (ÀÖ´Ù¸é) »ç¿ëÇÕ´Ï´Ù.
+ 8: ÇØ-´Þ Çü½ÄÀ» »ç¿ëÇÕ´Ï´Ù (FormatÀÌ ºñ¾î ÀÖÀ» °æ¿ì¿¡¸¸ Àǹ̰¡ ÀÖ½À´Ï´Ù; 1°ú 2¿¡´Â ȣȯ¼ºÀÌ ¾ø½À´Ï´Ù).
+ 0x10: Á¿¡¼­ ¿ì·Î Àб⠼ø¼­ ·¹À̾ƿôÀ» À§ÇÑ Ç¥½ÄÀ» Ãß°¡ÇÕ´Ï´Ù.
+ 0x20: ¿ì¿¡¼­ Á·ΠÀб⠼ø¼­ ·¹À̾ƿôÀ» À§ÇÑ Ç¥½ÄÀ» Ãß°¡ÇÕ´Ï´Ù.
+ 0x80000000: »ç¿ëÀÚ°¡ ½Ã½ºÅÛÀÇ ±âº» ³¯Â¥ Çü½Ä¿¡ ´ëÇÏ¿© º¯°æÇؼ­ ¿À¹ö¶óÀ̵å ÇÏ´Â °ÍµéÀ» ÁؼöÇÏÁö ¾Ê½À´Ï´Ù.
+0x40000000: ¹®ÀÚ¿­ º¯È¯¿¡ ·ÎÄÉÀÏÀÇ ÄÚµå ÆäÀÌÁö ´ë½Å¿¡ ½Ã½ºÅÛ ANSI ÄÚµå ÆäÀÌÁö¸¦ »ç¿ëÇÕ´Ï´Ù.

+

+Tn: ½Ã°£ ¿É¼Ç. n¿¡ ´ÙÀ½ ¼ýÀÚ Áß Çϳª¸¦ ÁöÁ¤ÇÕ´Ï´Ù:
+ 0: ±âº» ¿É¼ÇÀ» »ç¿ëÇϵµ·Ï °­Á¦ÇÕ´Ï´Ù. ÀÌ´Â ¶ÇÇÑ ºÐ°ú ÃÊ°¡ º¸À̵µ·Ï ¸¸µì´Ï´Ù.
+ 1: ºÐ°ú Ãʸ¦ »ý·«ÇÕ´Ï´Ù.
+ 2: Ãʸ¦ »ý·«ÇÕ´Ï´Ù.
+ 4: ½Ã°£ Ç¥½ÄÀ» »ý·«ÇÕ´Ï´Ù (¿¹, AM/PM).
+ 8: 12-½Ã°£Á¦°¡ ¾Æ´Ï¶ó ¾ðÁ¦³ª 24-½Ã°£Á¦¸¦ »ç¿ëÇÕ´Ï´Ù.
+ 12: À§ÀÇ µÎ ¿É¼ÇÀ» Á¶ÇÕ.
+ 0x80000000: »ç¿ëÀÚ°¡ ½Ã½ºÅÛÀÇ ±âº» ³¯Â¥ Çü½Ä¿¡ °¡ÇÑ º¯°æÀ» ÁؼöÇÏÁö ¾Ê½À´Ï´Ù.
+ 0x40000000: ¹®ÀÚ¿­ º¯È¯¿¡ ·ÎÄÉÀÏÀÇ ÄÚµå ÆäÀÌÁö ´ë½Å ½Ã½ºÅÛ ANSI ÄÚµå ÆäÀÌÁö¸¦ »ç¿ëÇÕ´Ï´Ù.

+

+ÁÖÀÇ: Dn°ú TnÀº ¿©·¯ ¿É¼Ç È¿°ú¸¦ À§ÇØ ¹Ýº¹ÇÒ ¼ö ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î ´ÙÀ½ ¿¹Á¦¿Í °°ÀÌ: FormatTime, OutputVar, 20040228 D2 D4 T1 T8

+ +

³íÆò

+

+±âÈ£¿Í ¼ýÀÚ¸¦ ±ÛÀÚ ±×´ë·Î FormatÀ¸·ÎºÎÅÍ OutputVar·Î º¯È¯ÇÏ°í ½Í´Ù¸é Ȭµû¿ÈÇ¥·Î ´ÙÀ½ ¿¹Á¦¿Í °°ÀÌ µÑ·¯¾ß ÇÕ´Ï´Ù: 'Date:' MM/dd/yy 'Time:' hh:mm:ss tt.

+

+´ëÁ¶ÀûÀ¸·Î, ½ºÆäÀ̽º, ÅÇ, ¶óÀÎÇǵå (`n), Á¤»ç¼±, ½ÖÁ¡, ½°Ç¥, ±×¸®°í ±âŸ ±¸µÎÁ¡ ±âÈ£¿Í °°ÀÌ ºñ-¾ËÆļýÀÚ ¹®Àڴ Ȭ µû¿ÈÇ¥ ¾È¿¡ µÎ¸¦ ÇÊ¿ä°¡ ¾ø½À´Ï´Ù. ÀÌ¿¡ ´ëÇÑ ¿¹¿Ü´Â Ȭµû¿ÈÇ¥ ÀÚüÀÔ´Ï´Ù: ¹®ÀÚ ±×´ë·Î »ç¿ëÇÏ·Á¸é, ¿¬¼ÓÀûÀ¸·Î Ȭµû¿ÈÇ¥¸¦ »ç¿ëÇϰųª (''''), ¶Ç´Â Ȭµû¿ÈÇ¥°¡ ÀÌ¹Ì ¹Ù±ùÂÊ È¬µû¿ÈÇ¥ ¾È¿¡ ÀÖ´Ù¸é ±×³É µÎ °³¸¦ »ç¿ëÇϽʽÿÀ.

+

+Format¿¡ ³¯Â¥¿Í ½Ã°£ ¿ä¼Ò°¡ ÇÔ²² µé¾î ÀÖ´Ù¸é, ¼­·Î ¼¯ÀÌ¸é ¾ÈµË´Ï´Ù. ´Ù¸¥ ¸»·Î, ¹®ÀÚ¿­Àº µÎ ºÎºÐÀ¸·Î ³ª´­ ¼ö ÀÖ¾î¾ß ÇÕ´Ï´Ù: ÇÑ ºÎºÐÀº ½Ã°£ ±×¸®°í ³ª¸ÓÁö ¹ÝÀº ³¯Â¥·Î ±¸ºÐµÇ¾î¾ß ÇÕ´Ï´Ù. ¿¹¸¦ µé¾î, Çü½Ä ¹®ÀÚ¿­ÀÌ "hh yyyy mm"¿Í °°ÀÌ ±¸¼ºµÇ¾î ÀÖ´Ù¸é ¿¹»óÇÑ °á°ú°¡ ³ª¿ÀÁö ¾Ê½À´Ï´Ù. ¿Ö³ÄÇÏ¸é µÎ °³ÀÇ ½Ã°£ ¿ä¼Ò »çÀÌ¿¡ ³¯Â¥ ¿ä±¸°¡ Àֱ⠶§¹®ÀÔ´Ï´Ù.

+

+Format¿¡ ´ÞÀÇ ¼ýÄ¡ ³¯Â¥ (d ¶Ç´Â dd) ±×¸®°í ´ÙÀ½¿¡ ¿ÏÀüÇÑ ´Þ À̸§ (MMMM)ÀÌ ´ã°Ü ÀÖ´Ù¸é, (ÇØ´ç ¾ð¾î°¡ ¼ÒÀ¯°Ý ÇüŸ¦ °¡Áö°í ÀÖ´Ù¸é) ¼ÒÀ¯°Ý ÇüÅÂÀÇ ´Þ À̸§ÀÌ »ç¿ëµË´Ï´Ù.

+

+Format¿¡ 2000 ¹®ÀÚ ÀÌ»óÀÌ µé¾î ÀÖ´Ù¸é, OutputVar´Â ºñ¿öÁý´Ï´Ù.

+

+°ü·ÃÇÏ¿© ¸»¾¸µå¸®¸é, ³¯Â¥¿Í ½Ã°£ÀÇ µ¡¼À°ú »¬¼ÀÀº EnvAdd ±×¸®°í EnvSub·Î ¼öÇàÇÒ ¼ö ÀÖ½À´Ï´Ù.

+ +

°ü·Ã Ç׸ñ

+

+¹Ý´ë ¹æÇâÀ¸·Î º¯È¯ÇÏ·Á¸é -- Áï, Çü½ÄÈ­µÈ/³¯Â¥/½Ã°£À¸·ÎºÎÅÍ YYYYMMDDHH24MISS Çü½ÄÀ¸·Î ¹Ù²Ù·Á¸é -- ´ÙÀ½À» ÂüÁ¶ÇϽʽÿÀ: www.autohotkey.com/forum/topic20405.html

+

´ÙÀ½µµ ÂüÁ¶ÇϽʽÿÀ: Gui DateTime ÄÜÆ®·Ñ, SetFormat, Transform, ³»ÀåµÈ ³¯Â¥ º¯¼ö¿Í ½Ã°£ º¯¼ö, FileGetTime

+ +

¿¹Á¦

+ +
FormatTime, TimeString
+MsgBox ÇöÀç ½Ã°£°ú ³¯Â¥´Â (½Ã°£ ¸ÕÀú) %TimeString%ÀÔ´Ï´Ù.
+
+FormatTime, TimeString, R
+MsgBox ÇöÀç ½Ã°£°ú ³¯Â¥´Â (³¯Â¥ ¸ÕÀú) %TimeString%ÀÔ´Ï´Ù.
+
+FormatTime, TimeString,, Time
+MsgBox ÇöÀç ½Ã°£Àº %TimeString%ÀÔ´Ï´Ù.
+
+FormatTime, TimeString, T12, Time
+MsgBox 24-½Ã°£Á¦·Î ÇöÀç ½Ã°£Àº %TimeString%ÀÔ´Ï´Ù.
+
+FormatTime, TimeString,, LongDate
+MsgBox ÇöÀç ³¯Â¥´Â (±ä Çü½Ä) %TimeString%ÀÔ´Ï´Ù.
+
+FormatTime, TimeString, 20050423220133, dddd MMMM d, yyyy hh:mm:ss tt
+MsgBox ÁöÁ¤µÈ ³¯Â¥¿Í ½Ã°£Àº, Æ÷¸ËÇϸé,  %TimeString%ÀÔ´Ï´Ù.
+
+FormatTime, TimeString, 200504, 'Month Name': MMMM`n'Day Name': dddd
+MsgBox %TimeString%
+
+FormatTime, YearWeek, 20050101, YWeek
+MsgBox 2005³â 1¿ù 1ÀÏÀÇ ISO ³âµµ¿Í ÁÖ ¹øÈ£´Â ´ÙÀ½°ú °°½À´Ï´Ù: %YearWeek%
+ +
; ÆÄÀÏÀÇ ³¯Â¥-½Ã°£ µµÀåÀ» ¹Ù²ß´Ï´Ù:
+FileSelectFile, FileName, 3,, Pick a file
+if FileName =  ; »ç¿ëÀÚ°¡ ÆÄÀÏÀ» °í¸£Áö ¾Ê¾Ò½À´Ï´Ù.
+    return
+FileGetTime, FileTime, %FileName%
+FormatTime, FileTime, %FileTime%   ; ¸¶Áö¸· ¸Å°³º¯¼ö°¡ »ý·«µÇ¾ú±â ¶§¹®¿¡, ±ä ³¯Â¥¿Í ½Ã°£ÀÌ ¿­¶÷µË´Ï´Ù.
+MsgBox ¼±ÅÃµÈ ÆÄÀÏÀº %FileTime%¿¡ ¸¶Áö¸·À¸·Î º¯°æµÇ¾ú½À´Ï´Ù.
+ +
; ´ÙÀ½ ÇÔ¼ö´Â ÁöÁ¤µÈ °³¼öÀÇ Ãʸ¦
+; »óÀÀÇÏ´Â ½Ã°£, ºÐ, ±×¸®°í ÃÊ·Î º¯È¯ÇÕ´Ï´Ù (hh:mm:ss Çü½Ä).
+
+MsgBox % FormatSeconds(7384)  ; 7384 = 2 hours + 3 minutes + 4 seconds. °á°ú: 2:03:04
+
+FormatSeconds(NumberOfSeconds)  ; ÁöÁ¤µÈ °³¼öÀÇ Ãʸ¦  hh:mm:ss Çü½ÄÀ¸·Î º¯È¯ÇÕ´Ï´Ù.
+{
+    time = 19990101  ; ÀÓÀÇÀÇ ³¯Â¥ÀÇ *ÀÚÁ¤*.
+    time += %NumberOfSeconds%, seconds
+    FormatTime, mmss, %time%, mm:ss
+    return NumberOfSeconds//3600 ":" mmss
+    /*
+    ; À§¿¡ »ç¿ëµÈ ¹æ¹ý°ú ´Ù¸£°Ô, ÀÌ ¹æ¹ýÀº 24 ½Ã°£ÀÌ ³Ñ´Â ÃÊÀÇ °³¼ö¸¦ Áö¿øÇÏÁö ¾Ê½À´Ï´Ù:
+    FormatTime, hmmss, %time%, h:mm:ss
+    return hmmss
+    */
+}
+ + + diff --git a/src/docs/commands/GetKeyState.htm b/src/docs/commands/GetKeyState.htm new file mode 100644 index 0000000..5f6d99d --- /dev/null +++ b/src/docs/commands/GetKeyState.htm @@ -0,0 +1,115 @@ + + + + +GetKeyState + + + + + + + + +

GetKeyState

+ +

Å°º¸µå Å°³ª ¸¶¿ì½º/Á¶À̽ºÆ½ ¹öÆ°ÀÌ ´­·Á ÀÖ´ÂÁö ¿©ºÎ¸¦ Á¡°ËÇÕ´Ï´Ù. ¶Ç Á¶À̽ºÆ½ »óŸ¦ ¿­¶÷ÇÕ´Ï´Ù.

+ +
GetKeyState, OutputVar, KeyName [, Mode]
+KeyIsDown := GetKeyState("KeyName" [, "Mode"])
+

¸Å°³º¯¼ö

+
+ +
OutputVar
+

+ ¿­¶÷µÈ Å° »óŸ¦ ÀúÀåÇÒ º¯¼öÀÇ À̸§. DÀÌ¸é ´­·Á ÀÖ°í UÀÌ¸é ¶¾ »óÅÂÀÔ´Ï´Ù (±×·¯³ª GetKeyState() ÇÔ¼ö´Â ´­·Á ÀÖÀ¸¸é true (1)¸¦ ±×·¸Áö ¾ÊÀ¸¸é false (0)¸¦ µ¹·ÁÁÝ´Ï´Ù). Å° »óŸ¦ °áÁ¤ÇÒ ¼ö ¾øÀ¸¸é ÀÌ º¯¼ö´Â ºñ¾î ÀÖ½À´Ï´Ù.

+

¾Æ·¡ÀÇ Ç׸ñÀº Á¶À̽ºÆ½¿¡¸¸ Àû¿ëµË´Ï´Ù:

+

1) JoyX¿Í °°ÀÌ Á¶À̽ºÆ½ Ãà¿¡ ´ëÇÏ¿©, OutputVar´Â ºÎµ¿ ¼Ò¼öÁ¡ ¼ö·Î ¼³Á¤µË´Ï´Ù. ¹üÀ§´Â 0 ºÎÅÍ 100 »çÀÌÀÌ°í Á¶À̽ºÆ½ÀÇ À§Ä¡¸¦ ÃàÀÇ À̵¿ ¹üÀ§ÀÇ ¹éºÐ·ü·Î ³ªÅ¸³À´Ï´Ù. ¼ýÀÚ Çü½ÄÀº SetFormatÀ» ÅëÇÏ¿© ¹Ù²Ü ¼ö ÀÖ½À´Ï´Ù. ´ÙÀ½ Å×½ºÆ® ½ºÅ©¸³Æ®¸¦ »ç¿ëÇϸé Á¶À̽ºÆ½À» ºÐ¼®ÇÒ ¼ö ÀÖ½À´Ï´Ù.

+

2) KeyNameÀÌ JoyPOVÀ̸é, ¿­¶÷µÈ °ªÀº ¹üÀ§°¡ 0ºÎÅÍ 35900 »çÀÌ ÀÔ´Ï´Ù. ¸¹Àº Á¶À̽ºÆ½¿¡ ´ÙÀ½¿¡ ±ÙÁ¢ÇÑ POV °ªµéÀÌ »ç¿ëµË´Ï´Ù:
+ -1: º¸°íÇÒ °¢µµ ¾øÀ½
+ 0: ¾ÕÀ¸·Î POV
+9000 (Áï, 90 µµ): ¿À¸¥ÂÊÀ¸·Î POV
+27000 (Áï, 270 µµ): ¿ÞÂÊÀ¸·Î POV
+18000 (Áï, 180 µµ): µÚ·Î POV

+ +
KeyName
+

+ ´Ü¼øÈ÷ Å°º¸µåÀÇ ¹®ÀÚ ÇϳªÀ̰ųª ¶Ç´Â ¸¶¿ì½º/Á¶À̽ºÆ½ ¹öÆ°°ú °°ÀÌ Å° ¸ñ·ÏÀÇ Å° À̸§ Áß ÇϳªÀÏ ¼ö ÀÖ½À´Ï´Ù. ¿¹: B, 5, LWin, RControl, Alt, Enter, Escape, LButton, MButton, Joy1.

+

+ ´ë¾ÈÀ¸·Î, vkFF¿Í °°Àº ¸í½ÃÀûÀÎ °¡»ó Å° Äڵ带 ÁöÁ¤Çصµ µË´Ï´Ù. ¾ÆÁÖ Èñ±ÍÇÑ °æ¿ì·Î Å°¿¡ À̸§ÀÌ ¾øÀ» °æ¿ì À¯¿ëÇÕ´Ï´Ù. ±×·± Å°ÀÇ °¡»ó Å°ÄÚµå´Â ´ÙÀ½ Å° ¸®½ºÆ® ÆäÀÌÁö ÇÏ´Ü¿¡ ÀÖ´Â ´Ü°è¸¦ ¹â¾Æ ¾Ë¾Æº¼ ¼ö ÀÖ½À´Ï´Ù.

+

+ ¾Ë·ÁÁø ÇÑ°è: ÀÌ ÇÔ¼ö´Â Left¿Í NumpadLeft °°ÀÌ, °°Àº °¡»ó Å° Äڵ带 °øÀ¯ÇÏ¸é µÎ Å°¸¦ ±¸º°ÇÏÁö ¸øÇÕ´Ï´Ù.

+ +
Mode
+

ÀÌ ¸Å°³º¯¼ö´Â Á¶À̽ºÆ½ »óŸ¦ ¿­¶÷ÇÒ ¶§ ¹«½ÃµË´Ï´Ù.

+

»ý·«Çϸé, ¸ðµå´Â ±âº»À¸·Î Å°ÀÇ ³í¸®Àû »óŸ¦ ¿­¶÷ÇÏ´Â ¸ðµå°¡ µË´Ï´Ù. + ³í¸®Àû »óÅ´ OS¿Í È°¼º âÀÌ ±× Å°ÀÇ »óŶó°í ¹Ï°í ÀÖ´Â »óŸ¦ ¸»ÇÕ´Ï´Ù. ±×·¯³ª ¹Ýµå½Ã ¹°¸®Àû »óÅÂ¿Í °°Àº °ÍÀº ¾Æ´Õ´Ï´Ù.

+

+ ´ë¾ÈÀ¸·Î ´ÙÀ½ ±âÈ£ Áß Çϳª¸¦ ÁöÁ¤ÇÒ ¼ö ÀÖ½À´Ï´Ù:

+

+ P: ¹°¸®Àû »óŸ¦ ¿­¶÷ÇÕ´Ï´Ù (Áï, »ç¿ëÀÚ°¡ ¹°¸®ÀûÀ¸·Î Å°¸¦ ´©¸£°í ÀÖ´ÂÁö ¾Ë¾Æº¾´Ï´Ù). Å°³ª ¸¶¿ì½º ¹öÆ°ÀÇ ¹°¸®Àû »óÅ´ º¸Åë ³í¸®Àû »óÅÂ¿Í °°½À´Ï´Ù. ´Ü Å°º¸µå/¸¶¿ì½º °¥°í¸®°¡ ¼³Ä¡µÇ¾î ÀÖ¾î¾ß ÇÕ´Ï´Ù. ±×·¡¾ß (½ºÅ©¸³Æ®°¡ ½ÇÇà ÁßÀÎ µ¿¾È Å°¸¦ ´©¸£±â¸¸ ÇÑ´Ù¸é) »ç¿ëÀÚ°¡ ¹°¸®ÀûÀ¸·Î Å°³ª ¹öÆ°À» ´©¸£°í ÀÖ´ÂÁö ¾Æ´ÑÁö Á¤È®ÇÏ°Ô ¹Ý¿µµË´Ï´Ù. ½ºÅ©¸³Æ®°¡ °¥°í¸®¸¦ »ç¿ëÇÏ°í ÀÖ´ÂÁö KeyHistory ¸í·É¾î³ª ¸Þ´º Ç׸ñÀ» ÅëÇÏ¿© ¾Ë¾Æº¼ ¼ö ÀÖ½À´Ï´Ù. °¥°í¸®¸¦ °­Á¦·Î ¼³Ä¡ÇÏ·Á¸é ½ºÅ©¸³Æ®¿¡ #InstallKeybdHook ¶Ç´Â #InstallMouseHook Áö½Ã¾î¸¦ ÁöÁ¤ÇØ¾ß ÇÕ´Ï´Ù.

+

+ T: Åä±Û »óŸ¦ ¿­¶÷ÇÕ´Ï´Ù (Åä±ÛÀÌ °¡´ÉÇÑ Å°¿¡¸¸ À¯È¿ÇÕ´Ï´Ù. Åä±Û Å°·Î´Â Capslock, Numlock, Scrolllock, ±×¸®°í Insert°¡ ÀÖ½À´Ï´Ù). ¿­¶÷µÈ °ªÀÌ DÀÌ¸é ±× Å°°¡ "on"À̶ó´Â ¶æÀÌ°í, ¹Ý¸é¿¡ UÀ̸é "off"¶ó´Â ¶æÀÔ´Ï´Ù (±×·¯³ª GetKeyState() ÇÔ¼ö´Â "on"¿¡ true (1)¸¦ "off" false (0)¸¦ µ¹·ÁÁÝ´Ï´Ù).

+
+ +
+ +

³íÆò

+

+Å°³ª ¸¶¿ì½º/Á¶À̽ºÆ½ ¹öÆ°ÀÌ »õ·Î¿î »óÅ°¡ µÇ±â¸¦ ±â´Ù¸®·Á¸é º¸Åë GetKeyState ȸµ¹ÀÌ ´ë½Å¿¡ KeyWaitÀ» »ç¿ëÇÏ´Â °ÍÀÌ ´õ ½±½À´Ï´Ù.

+

+ºñÁ¤»óÀûÀÎ Å°º¸µå µå¶óÀ̹ö°¡ ¼³Ä¡µÈ ½Ã½ºÅÛÀº Å°ÀÇ »óŸ¦, ƯÈ÷ Capslock °°Àº Å°ÀÇ Åä±Û »óŸ¦ ´À¸®°Ô °»½ÅÇÒ °¡´É¼ºÀÌ ÀÖ½À´Ï´Ù. Å°ÀÇ »óÅ°¡ º¯°æµÇ¸é ¹Ù·Î Á¡°ËÇØ¾ß ÇÏ´Â ½ºÅ©¸³Æ®´Â ¹Ì¸® SleepÀ» »ç¿ëÇØ ½Ã½ºÅÛÀÌ Å° »óŸ¦ °»½ÅÇÒ ½Ã°£À» ÁÖ´Â °ÍÀÌ ÁÁ½À´Ï´Ù.

+

+Á¶À̽ºÆ½¿¡ GetKeyState¸¦ »ç¿ëÇÏ´Â ¿¹´Â Á¶À̽ºÆ½ ¸®¸ÊÇÎ ÆäÀÌÁö¿Í Joystick-To-Mouse ½ºÅ©¸³Æ®¸¦ ÂüÁ¶ÇϽʽÿÀ.

+ +

°ü·Ã Ç׸ñ

+

GetKeyState(), KeyWait, Key List, Á¶À̽ºÆ½ ¸®¸ÊÇÎ, KeyHistory, #InstallKeybdHook, #InstallMouseHook

+ +

¿¹Á¦

+ +
; ±âº» ¿¹Á¦µé:
+GetKeyState, state, RButton  ; ¿ìÃø ¸¶¿ì½º ¹öÆ°.
+GetKeyState, state, Joy2  ; ù ¹ø° Á¶À̽ºÆ½ÀÇ µÎ ¹ø° ¹öÆ°.
+
+GetKeyState, state, Shift
+if state = D
+    MsgBox Àû¾îµµ ÇϳªÀÇ Shift Å°°¡ ´­·Á ÀÖ½À´Ï´Ù.
+else
+    MsgBox Shift Å°°¡ ¾î´À Âʵµ ´­·Á ÀÖÁö ¾Ê½À´Ï´Ù.
+
+GetKeyState, state, CapsLock, T ;  CapsLockÀÌ ÄÑÁ® ÀÖÀ¸¸é D, ±×·¸Áö ¾ÊÀ¸¸é UÀÔ´Ï´Ù.
+state := GetKeyState("Capslock", "T")  ; CapsLockÀÌ ÄÑÁ® ÀÖÀ¸¸é Âü, ±×·¸Áö ¾ÊÀ¸¸é °ÅÁþÀÔ´Ï´Ù.
+
+; ¸®¸ÊÇÎ ¿¹Á¦ (ÀÌ ¿¹Á¦´Â ¿À·ÎÁö º¸¿©ÁÖ±â À§ÇÑ ¿ëµµÀÔ´Ï´Ù.
+; ³»ÀåµÈ ¸®¸ÊÇΠƯ¡À» »ç¿ëÇÏ´Â ÆíÀÌ ´õ ½±½À´Ï´Ù):
+; ´ÙÀ½ ÇÖÅ°¿¡¼­, NumpadAdd°¡ ´­·Á ÀÖ´Â µ¿¾È ¸¶¿ì½º ¹öÆ°µµ ´­·Á ÀÖ½À´Ï´Ù.
+; NumpadAdd¸¦ ¸¶¿ì½º ¹öÆ°À¸·Î º¯½Å½ÃÅ°´Â È¿°ú°¡ ÀÖ½À´Ï´Ù. ÀÌ ¹æ¹ýÀ» »ç¿ëÇϸé
+; »ç¿ëÀÚ°¡ Å°³ª ¹öÆ°À» ´©¸£°í ÀÖ´Â µ¿¾È ÇàÀ§¸¦ ¹Ýº¹ÇÒ ¼ö ÀÖ½À´Ï´Ù:
+*NumpadAdd::
+MouseClick, left,,, 1, 0, D  ; ¿ÞÂÊ ¸¶¿ì½º ¹öÆ°À» ´©¸£°í ÀÖ½À´Ï´Ù.
+Loop
+{
+    Sleep, 10
+    GetKeyState, state, NumpadAdd, P
+    if state = U  ; Å°¸¦ ³õ¾Ò½À´Ï´Ù. ±×·¡¼­ ȸµ¹À̸¦ ºüÁ® ³ª¿É´Ï´Ù.
+        break
+    ; ... ¿©±â¿¡ ¹Ýº¹ÇÏ°í ½ÍÀº ÇàÀ§¸¦ »ðÀÔÇϽʽÿÀ.
+}
+MouseClick, left,,, 1, 0, U  ; ¸¶¿ì½º ¹öÆ°À» ¶Á´Ï´Ù.
+return
+
+; ¿¹Á¦: Á¶À̽ºÆ½ Ãà À§Ä¡¿¡ µû¶ó Á¶À̽ºÆ½ ¹öÆ°ÀÇ ÇàÀ§¸¦ ´Ù¸£°Ô ¸¸µì´Ï´Ù.
+joy2:: 
+GetKeyState, joyx, JoyX 
+if joyx > 75 
+    MsgBox Action #1 (Á¶À̽ºÆ½ÀÌ ¿À¸¥ÂÊÀ¸·Î ±â¿î µ¿¾È ¹öÆ°ÀÌ ´­·È½À´Ï´Ù).
+else if joyx < 25 
+    MsgBox Action #2 (Á¶À̽ºÆ½ÀÌ ¿ÞÂÊÀ¸·Î ±â¿î µ¿¾È ¹öÆ°ÀÌ ´­·È½À´Ï´Ù).
+else
+    MsgBox Action #3 (Á¶À̽ºÆ½ÀÌ ¼öÆòÀ¸·Î °¡¿îµ¥¿¡ ÀÖ´Â µ¿¾È ¹öÆ°ÀÌ ´­·È½À´Ï´Ù).
+return
+
+; ´Ù¸¥ ¿¹Á¦µéÀº Á¶À̽ºÆ½ ¸®¸ÊÇÎ ÆäÀÌÁö¿Í Joystick-To-Mouse ½ºÅ©¸³Æ®¸¦ ÂüÁ¶ÇϽʽÿÀ.
+ + + diff --git a/src/docs/commands/Gosub.htm b/src/docs/commands/Gosub.htm new file mode 100644 index 0000000..5ee15d6 --- /dev/null +++ b/src/docs/commands/Gosub.htm @@ -0,0 +1,49 @@ + + + + +Gosub + + + + + + + +

Gosub

+ +

ÁöÁ¤µÈ ¶óº§·Î Á¡ÇÁÇÏ¿© ReturnÀ» ¸¸³¯ ¶§±îÁö ½ÇÇàÀ» °è¼ÓÇÕ´Ï´Ù.

+ +
Gosub, Label
+

¸Å°³º¯¼ö

+
+ +
Label
+

Á¡ÇÁÇØ °¥ ¶óº§, ÇÖÅ° ¶óº§, ¶Ç´Â ÇÖ½ºÆ®¸µ ¶óº§ÀÇ À̸§. ±× °á°ú Label ¾Æ·¡ÀÇ ¸í·É¾îµéÀÌ ReturnÀ̳ª ExitÀ» ¸¸³¯ ¶§±îÁö ½ÇÇàµË´Ï´Ù. "Return"Àº ½ºÅ©¸³Æ®¸¦ ´Ù½Ã Gosub ¾Æ·¡ÀÇ Ã¹ ¸í·É¾î·Î Á¡ÇÁÇؼ­ °Å±â¿¡¼­ ½ÇÇàÀ» Àç°³ÇÏ°Ô ¸¸µì´Ï´Ù. "Exit"Àº ÇöÀç ¾²·¹µå¸¦ Á¾·áÇÕ´Ï´Ù.

+ +
+ +

³íÆò

+

+°ÅÀÇ ¸ðµç ¸í·É¾îÀÇ ¸Å°³º¯¼ö¿Í ¸¶Âù°¡Áö·Î, ¶óº§Àº º¯¼ö ÂüÁ¶ÀÏ ¼ö ÀÖ½À´Ï´Ù. %MyLabel%¿Í °°Àº °æ¿ì º¯¼ö¿¡ ÀúÀåµÈ À̸§ÀÌ ¸ñÇ¥·Î »ç¿ëµË´Ï´Ù. ±×·¸Áö¸¸, ¼öÇ༺´ÉÀº ¾à°£ ÁÙ¾îµì´Ï´Ù. ¿Ö³ÄÇÏ¸é ¸ñÇ¥ ¶óº§À» ½ºÅ©¸³Æ®°¡ óÀ½ ÀûÀçµÉ ¶§ "ÇÑ ¹ø¸¸ ã¾Æ º¸´Â °ÍÀÌ ¾Æ´Ï¶ó" ¸Å¹ø ã¾Æ º¸¾Æ¾ß Çϱ⠶§¹®ÀÔ´Ï´Ù.

+

+%MyLabel%¿Í °°Àº µ¿Àû ¶óº§À» »ç¿ëÇÒ ¶§, ¶óº§ÀÌ Á¸ÀçÇÏÁö ¾ÊÀ¸¸é ¿¡·¯ ´ëÈ­»óÀÚ°¡ ³ªÅ¸³³´Ï´Ù. À̸¦ ÇÇÇÏ·Á¸é, ¹Ì¸® IsLabel()À» È£ÃâÇϽʽÿÀ. ¿¹¸¦ µé¾î:

+
if IsLabel(VarContainingLabelName)
+    Gosub %VarContainingLabelName%
+

+Gosub°¡ °£´ÜÇÏ°í ÀϹÝÀûÀÎ ¸ñÀûÀÇ ¼­ºê·çƾ¿¡´Â À¯¿ëÇÏÁö¸¸, º¸´Ù º¹ÀâÇÑ ¸ñÀûÀ¸·Î´Â ÇÔ¼öÀÇ »ç¿ëÀ» ±ÇÀåÇÕ´Ï´Ù.

+ +

°ü·Ã Ç׸ñ

+

+Return, ÇÔ¼ö, IsLabel(), ºí·Ï, Loop, Goto

+

¿¹Á¦

+
Gosub, Label1 
+MsgBox, Label1 ¼­ºê·çƾÀÌ ¹ÝȯµÇ¾ú½À´Ï´Ù (Á¾·áµÊ).
+return
+
+Label1:
+MsgBox, Label1 ¼­ºê·çƾÀÌ Áö±Ý ½ÇÇà ÁßÀÔ´Ï´Ù.
+return
+ + + diff --git a/src/docs/commands/Goto.htm b/src/docs/commands/Goto.htm new file mode 100644 index 0000000..ee3a2ef --- /dev/null +++ b/src/docs/commands/Goto.htm @@ -0,0 +1,45 @@ + + + + +Goto + + + + + + + +

Goto

+ +

ÁöÁ¤µÈ ¶óº§·Î Á¡ÇÁÇؼ­ ½ÇÇàÀ» °è¼ÓÇÕ´Ï´Ù.

+ +
Goto, Label
+

¸Å°³º¯¼ö

+
+ +
Label
+

Á¡ÇÁÇØ °¥ ¶óº§ À̸§.

+ +
+ +

³íÆò

+

+%MyLabel%¿Í °°Àº µ¿ÀûÀÎ ¶óº§À» »ç¿ëÇÒ ¶§, ¶óº§ÀÌ Á¸ÀçÇÏÁö ¾ÊÀ¸¸é ¿¡·¯ ´ëÈ­»óÀÚ°¡ ³ªÅ¸³³´Ï´Ù. À̸¦ ÇÇÇÏ·Á¸é, ¹Ì¸® IsLabel()¸¦ È£ÃâÇϽʽÿÀ. ¿¹¸¦ µé¾î:

+
if IsLabel(VarContainingLabelName)
+    Goto %VarContainingLabelName%
+

+Goto´Â »ç¿ëÀ» ±ÇÀåÇÏÁö ¾Ê½À´Ï´Ù. ¿Ö³ÄÇϸé ÀϹÝÀûÀ¸·Î ½ºÅ©¸³Æ®¸¦ ´õ Àб⠾î·Æ°í °ü¸®Çϱâ Èûµé°Ô ¸¸µé±â ¶§¹®ÀÔ´Ï´Ù. Else, Blocks, Break, ±×¸®°í Continue¸¦ Goto¿¡ ´ëÇÑ ´ë¾ÈÀ¸·Î »ý°¢ÇØ º¸½Ê½Ã¿À.

+ +

°ü·Ã Ç׸ñ

+

+Gosub, Return, IsLabel(), Else, ºí·Ï, Break, Continue

+

¿¹Á¦

+
Goto, MyLabel
+...
+MyLabel:
+Sleep, 100
+...
+ + + diff --git a/src/docs/commands/GroupActivate.htm b/src/docs/commands/GroupActivate.htm new file mode 100644 index 0000000..5403f33 --- /dev/null +++ b/src/docs/commands/GroupActivate.htm @@ -0,0 +1,48 @@ + + + + +GroupActivate + + + + + + + +

GroupActivate

+ +

GroupAdd·Î Á¤ÀÇµÈ Ã¢ ±×·ì¿¡¼­ ´ÙÀ½ âÀ» È°¼ºÈ­ÇÕ´Ï´Ù.

+ +
GroupActivate, GroupName [, R]
+

¸Å°³º¯¼ö

+
+ +
GroupName
+

È°¼ºÈ­ ÇÒ ±×·ìÀÇ À̸§, ÃÖÃÊ·Î GroupAdd·Î Á¤ÀǵǾî ÀÖ½À´Ï´Ù.

+ +
R
+

ÀÌ ¸Å°³º¯¼ö´Â ±×·ì¿¡¼­ ¸â¹ö°¡ ÇöÀç ÀüÇô È°¼ºÈ­µÇ¾î ÀÖÁö ¾ÊÀ» °æ¿ì °¡Àå ¿À·¡µÈ âÀ» È°¼ºÈ­ÇÒ Áö ¾Æ´Ï¸é °¡Àå »õ·Î¿î âÀ» È°¼ºÈ­ÇÒ Áö °áÁ¤ÇÕ´Ï´Ù. »ý·«Çϸé, °¡Àå ¿À·¡µÈ âÀÌ ¾ðÁ¦³ª È°¼ºÈ­µË´Ï´Ù. ±âÈ£ RÀ̶ó¸é, °¡Àå »õ·Î¿î â (°¡Àå ÃÖ±Ù¿¡ È°¼ºÈ­ µÈ â) ÀÌ È°¼ºÈ­µË´Ï´Ù. ±×·¯³ª ¸í·É¾î°¡ ÁÖ¾îÁö´Â ¼ø°£ ±×·ì¿¡ ¾Æ¹« ¸â¹öµµ È°¼ºÈ­µÇ¾î ÀÖÁö ¾ÊÀ» °æ¿ì¿¡¸¸ ±×·¸½À´Ï´Ù. "R"Àº Àӽ÷ΠÀüÇô °ü·Ã ¾ø´Â ÀÛ¾÷À¸·Î ÀüȯÇÒ °æ¿ì¿¡ À¯¿ëÇÕ´Ï´Ù. GroupActivate, GroupDeactivate, ¶Ç´Â GroupClose¸¦ ÅëÇÏ¿© ±×·ìÀ¸·Î ´Ù½Ã µ¹¾Æ ¿À¸é, °¡Àå ¿À·¡µÈ âÀÌ ¾Æ´Ï¶ó ¿©·¯ºÐÀÌ °¡Àå ÃÖ±Ù¿¡ ÀÛ¾÷ÇÑ Ã¢ÀÌ È°¼ºÈ­µË´Ï´Ù..

+ +
+ +

ErrorLevel [AHK_L 54+]

+

ErrorLevelÀº È°¼ºÈ­ ÇÒ Ã¢À» ¹ß°ßÇÒ ¼ö ¾øÀ¸¸é 1ÀÌ ¼³Á¤µÇ°í ±×·¸Áö ¾ÊÀ¸¸é 0ÀÌ ¼³Á¤µË´Ï´Ù.

+ +

³íÆò

+

+ÀÌ ¸í·É¾î´Â ±×·ìÀÇ Ã¢ ±Ô°Ý¿¡ ºÎÇÕÇϴ ù âÀÌ È°¼ºÈ­ µÇµµ·Ï ¸¸µì´Ï´Ù. µÎ ¹ø°·Î »ç¿ëÇÏ¸é ¼ø¼­´ë·Î ´ÙÀ½ âÀÌ È°¼ºÈ­ µË´Ï´Ù. µîµî. º¸Åë, ÇÖÅ°¿¡ ÇÒ´çµÇ±â ¶§¹®¿¡ ÀÌ Ã¢-¼øȸ ÇàÀ§´Â ±× Å°¸¦ ´©¸£¸é ÀÚµ¿À¸·Î ¼öÇàµË´Ï´Ù.

+

+¶Ç´Ù¸¥ âÀÌ È°¼ºÈ­ µÇÀÚ ¸¶ÀÚ ±× Áï½Ã ¶Ç âÀÌ È°¼ºÈ­µÇ¸é, ¾î¶² ½Ã½ºÅÛ¿¡¼­´Â (OS¿Í ±× ¼³Á¤¿¡ µû¶ó) ŽºÅ© ¹Ù ¹öÆ°ÀÌ ±ôºý°Å¸± ¼ö ÀÖ½À´Ï´Ù. À̸¦ ÇÇÇÏ·Á¸é #WinActivateForce¸¦ »ç¿ëÇϽʽÿÀ.

+

+â ±×·ì¿¡ °üÇÑ ´õ ÀÚ¼¼ÇÑ Á¤º¸´Â GroupAdd¸¦ ÂüÁ¶ÇϽʽÿÀ.

+ +

°ü·Ã Ç׸ñ

+

+GroupAdd, GroupDeactivate, GroupClose, #WinActivateForce

+ +

¿¹Á¦

+
GroupActivate, MyGroup, R
+ + + diff --git a/src/docs/commands/GroupAdd.htm b/src/docs/commands/GroupAdd.htm new file mode 100644 index 0000000..1c5482b --- /dev/null +++ b/src/docs/commands/GroupAdd.htm @@ -0,0 +1,92 @@ + + + + +GroupAdd + + + + + + + +

GroupAdd

+ +

â ±×·ì¿¡ â ±Ô°ÝÀ» Ãß°¡ÇÕ´Ï´Ù. ÇÊ¿äÇÏ¸é ±×·ìÀ» »ý¼ºÇÕ´Ï´Ù.

+ +
GroupAdd, GroupName [, WinTitle, WinText, Label, ExcludeTitle, ExcludeText]
+

¸Å°³º¯¼ö

+
+ +
GroupName
+

ÀÌ Ã¢ ±Ô°Ý¿¡ Ãß°¡ÇÒ ±×·ìÀÇ À̸§. ±×·ìÀÌ Á¸ÀçÇÏÁö ¾ÊÀ¸¸é, »ý¼ºµË´Ï´Ù. ±×·ì À̸§Àº ´ë¼Ò¹®ÀÚ¸¦ °¡¸®Áö ¾Ê½À´Ï´Ù.

+ +
WinTitle
+

¸ñÇ¥ âÀ» ½Äº°ÇÒ Ã¢ Á¦¸ñ ¶Ç´Â ±âŸ ±âÁØ. WinTitle ÂüÁ¶.

+ +
WinText
+

Á¸ÀçÇϸé, ÀÌ ¸Å°³º¯¼ö´Â ¸ñÇ¥ â ÅؽºÆ®ÀÇ ºÎ¹®ÀÚ¿­ÀÔ´Ï´Ù (Window Spy¿¡ ³ëÃâµÊ). ¼ûÀº ÅؽºÆ®´Â GroupActivate, GroupDeactivate, and GroupClose°¡ »ç¿ëµÇ´Â ¼ø°£¿¡ DetectHiddenText°¡ ÄÑÁ® ÀÖ¾î¾ß(ON) ŽÁöµË´Ï´Ù.

+ +
Label
+

GroupActivate¸í·É¾î°¡ »ç¿ëµÉ ¶§ ÀÌ ±×·ì¿¡ ºÎÇÕÇϴ âÀÌ Á¸ÀçÇÏÁö ¾ÊÀ¸¸é ½ÇÇàÇÒ ¼­ºê·çƾÀÇ ¶óº§ (¶Ç´Â AHK_L 54 ÀÌÀüÀÌ¸é ´ÙÀ½ â ±Ô°Ý). ¸¶Ä¡ Gosub°¡ »ç¿ëµÈ °Íó·³ ¶óº§·Î Á¡ÇÁÇÕ´Ï´Ù. ¾Æ¹«°Íµµ ¾øÀ¸¸é »ý·«Çϰųª ºñ¿ö µÓ´Ï´Ù.

+ +
ExcludeTitle
+

Á¦¸ñ¿¡ ÀÌ °ªÀÌ Àִ âÀº ¹«½ÃÇÕ´Ï´Ù.

+ +
ExcludeText
+

ÅؽºÆ®¿¡ ÀÌ °ªÀÌ Àִ âÀº ¹«½ÃÇÕ´Ï´Ù.

+ +
+ +

³íÆò

+

+ÀÌ ¸í·É¾î¸¦ »ç¿ëÇÒ ¶§¸¶´Ù »õ·Î¿î ±ÔÄ¢ÀÌ ±×·ì¿¡ Ãß°¡µË´Ï´Ù. ´Ù¸¥ ¸»·Î Çϸé, ±×·ìÀº °íÁ¤µÈ â ¸ñ·ÏÀÌ ¾Æ´Ï¶ó ±âÁØ ÁýÇÕÀ¸·Î ±¸¼ºµË´Ï´Ù. ³ªÁß¿¡, ±×·ìÀ» GroupActivate¿Í °°Àº ¸í·É¾î°¡ »ç¿ëÇÒ ¶§, ¹ÙÅÁÈ­¸é À§ÀÇ °¢ âÀº ÀÌ ±âÁØ¿¡ ¸Â´ÂÁö Á¡°ËµË´Ï´Ù. âÀÌ ±×·ìÀÇ ±âÁØ Áß Çϳª¿¡ ºÎÇÕÇϸé, ºÎÇÕÇÑ °ÍÀ¸·Î °£Áֵ˴ϴÙ.

+

+SetTitleMatchMode¿Í DetectHiddenWindows´Â ÀÌ ¸í·É¾îÀÇ ÇàÀ§¿¡ Á÷Á¢ÀûÀ¸·Î ¿µÇâÀ» ÁÖÁö´Â ¾ÊÁö¸¸, GroupActivate¿Í GroupClose °°Àº ´Ù¸¥ ±×·ì ¸í·É¾î¿¡´Â ¿µÇâÀ» ¹ÌĨ´Ï´Ù. ¶Ç ahk_groupÀ» ´Ù¸¥ ¸í·É¾îÀÇ WinTitle¿¡ »ç¿ëÇÒ ¶§¿¡µµ ¿µÇâÀ» ¹ÌĨ´Ï´Ù.

+

+â ±×·ìÀº ÀüÇüÀûÀ¸·Î °ü·Ã â Áý´ÜÀ» ÇÔ²² ¹­´Âµ¥ »ç¿ëµË´Ï´Ù. ¸¹Àº âÀÌ °ü·ÃµÇ´Â ÀÛ¾÷¿¡ ¶Ç´Â ¸¹Àº ÇÏÀ§ âÀ» ¼ÒÀ¯ÇÑ ¾îÇø®ÄÉÀ̼ǿ¡ À¯¿ëÇÕ´Ï´Ù. ¿¹¸¦ µé¾î, ±×·¡ÇÈ ÇÁ·Î±×·¥À̳ª ÅؽºÆ® ÆíÁý±âÀÇ ¸¹Àº ½Çü¿Í ÀÚÁÖ ÀÛ¾÷ÇÑ´Ù¸é, GroupActivate¸¦ ÇÖÅ°¿¡ »ç¿ëÇؼ­ ±× ÇÁ·Î±×·¥ÀÇ °¢ ½Çü¸¦ ÇÑ ¹ø¿¡ Çϳª¾¿ ¹æ¹®ÇÒ ¼ö ÀÖ½À´Ï´Ù. âÀ» ãÀ¸·Á°í ¾ËÆ®-ÅÇÀ» ´©¸£°Å³ª ŽºÅ© ¹Ù ¹öÆ°À» ´©¸¦ ÇÊ¿ä°¡ ¾ø½À´Ï´Ù.

+

+°¢ ±×·ìÀÇ ¿£Æ®¸®´Â ÇÑ ¹ø¸¸ Ãß°¡ÇÏ¸é µÇ±â ¶§¹®¿¡, ÀÌ ¸í·É¾î´Â ÀüÇüÀûÀ¸·Î (½ºÅ©¸³Æ®ÀÇ »ó´Ü ºÎºÐ) ÀÚµ¿ ½ÇÇà ¼½¼Ç¿¡ »ç¿ëµË´Ï´Ù. Áߺ¹ ¿£Æ®¸®¸¦ ±×·ì¿¡ Ãß°¡ÇÏ·Á°í ½ÃµµÇÏ¸é ¹«½ÃµË´Ï´Ù.

+

+±×·ì¿¡ ¸ðµç âÀ» Æ÷ÇÔÇÏ·Á¸é (Ưº°ÇÑ ÇÁ·Î±×·¥ °ü¸®ÀÚ Ã¢ Á¦¿Ü), ´ÙÀ½ ¿¹Á¦¸¦ »ç¿ëÇϽʽÿÀ:

+ +
GroupAdd, AllWindows
+

+¸ðµç â ¸í·É¾î´Â â ±×·ì¿¡ ÀÛ¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. ahk_group MyGroupNameÀ» WinTitle ¸Å°³º¯¼ö¿¡ ÁöÁ¤ÇÏ¸é µË´Ï´Ù. ¸í·É¾î WinMinimize, WinMaximize, WinRestore, WinHide, WinShow, WinClose, ±×¸®°í WinKillÀº ±×·ìÀÇ ¸ðµç â¿¡ ÀÛ¿ëÇÒ °ÍÀÔ´Ï´Ù. ´ë½Å¿¡ ÃÖ»ó´Ü â¿¡¸¸ ÀÛ¿ë½ÃÅ°°í ½ÍÀ¸¸é, ´ÙÀ½ ¿¹Á¦¸¦ µû¸£½Ê½Ã¿À:

+ +
WinHide % "ahk_id " . WinExist("ahk_group MyGroup")
+

+´ëÁ¶ÀûÀ¸·Î, WinActivate¿Í IfWinExist¿Í °°Àº ´Ù¸¥ â ¸í·É¾î´Â ±×·ìÀÇ ÃÖ»óÀ§ â¿¡¸¸ ÀÛµ¿ÇÕ´Ï´Ù.

+ +

°ü·Ã Ç׸ñ

+

+GroupActivate, GroupDeactivate, GroupClose

+ +

¿¹Á¦

+ +
; ½ºÅ©¸³Æ®ÀÇ »ó´Ü ÀÚµ¿ ½ÇÇà ¼½¼Ç¿¡¼­:
+GroupAdd, MSIE, ahk_class IEFrame ; ÀÌ ±×·ì¿¡ Internet Explorer ⸸ Ãß°¡ÇÕ´Ï´Ù.
+return ; ÀÚµ¿ ½ÇÇà ¼½¼ÇÀÇ ³¡.
+
+; ÀÌ ±×·ìÀ» È°¼ºÈ­ ÇÒ ÇÖÅ°¸¦ ÇÒ´çÇÕ´Ï´Ù. ¿­¸° ¸ðµç
+; MSIE âÀ», ÇÑ ¹ø¿¡ Çϳª ¾¿, ¼øȸÇÕ´Ï´Ù 
+; (Áï, ÇÖÅ°¸¦ ´©¸¦ ¶§¸¶´Ù).
+Numpad1::GroupActivate, MSIE, r
+
+; ´ÙÀ½Àº MS Outlook 2002¿¡ ´ëÇÑ Á» º¹ÀâÇÑ ±×·ìÀÔ´Ï´Ù.
+; ½ºÅ©¸³Æ®ÀÇ »ó´Ü ÀÚµ¿ ½ÇÇà ¼½¼Ç¿¡¼­:
+SetTitleMatchMode, 2 
+GroupAdd, mail, Message - Microsoft Word ; ÇöÀç ÀÛ¼º ÁßÀÎ ¸ÞÀÏÀ» À§ÇÑ °ÍÀÔ´Ï´Ù
+GroupAdd, mail, - Message ( ; ÀÌ¹Ì ¿­¸° Ç׸ñµéÀ» À§ÇÑ °ÍÀÔ´Ï´Ù
+; À¯·É âÀÌ È°¼ºÈ­µÇ´Â °ÍÀ» ÇÇÇÏ·Á¸é Ãß°¡ ÅؽºÆ®°¡ ÇÊ¿äÇÕ´Ï´Ù:
+GroupAdd, mail, Advanced Find, Sear&ch for the word(s)
+GroupAdd, mail, , Recurrence: 
+GroupAdd, mail, Reminder 
+GroupAdd, mail, - Microsoft Outlook 
+return  ; ÀÚµ¿ ½ÇÇà ¼½¼ÇÀÇ ³¡.
+
+
+Numpad5::GroupActivate, mail ; °¢ ¾Æ¿ô·è âÀ», ÇÑ ¹ø¿¡ Çϳª ¾¿ ¹æ¹®ÇÒ, ÇÖÅ°¸¦ ÇÒ´çÇÕ´Ï´Ù.
+ + + diff --git a/src/docs/commands/GroupClose.htm b/src/docs/commands/GroupClose.htm new file mode 100644 index 0000000..d367002 --- /dev/null +++ b/src/docs/commands/GroupClose.htm @@ -0,0 +1,46 @@ + + + + +GroupClose + + + + + + + +

GroupClose

+ +

GroupActivate ¶Ç´Â GroupDeactivateÀ¸·Î È°¼ºÈ­ µÇ¾ú´ø È°¼º âÀ» ´Ý½À´Ï´Ù. ´ÙÀ½ âÀ» ¼ø¼­´ë·Î È°¼ºÈ­ÇÕ´Ï´Ù. ¶ÇÇÑ ±×·ìÀÇ ¸ðµç âÀ» ´ÝÀ» ¼öµµ ÀÖ½À´Ï´Ù.

+ +
GroupClose, GroupName [, A|R]
+

¸Å°³º¯¼ö

+
+ +
GroupName
+

ÃÖÃÊ·Î GroupAddÀÌ Á¤ÀÇÇÑ ±×·ìÀÇ À̸§

+ +
A|R
+

±âÈ£ A¶ó¸é, ±×·ìÀÇ ¸ðµç ¸â¹ö°¡ ´ÝÈü´Ï´Ù. ÀÌ°ÍÀº È¿°ú°¡ WinClose ahk_group GroupName¿Í °°½À´Ï´Ù.

+

+ ±×·¸Áö ¾Ê°í: ÀÌ ¸í·É¾î°¡ È°¼º âÀ» ´ÝÀ¸¸é, ¿¬¼ÓÀûÀ¸·Î ´ÙÀ½ âÀ» È°¼ºÈ­ ÇÕ´Ï´Ù. ÀÌ ¸Å°³º¯¼ö´Â °¡Àå »õ·Î¿î âÀ» È°¼ºÈ­ÇÒÁö ¾Æ´Ï¸é °¡Àå ¿À·¡µÈ âÀ» È°¼ºÈ­ ÇÒÁö °áÁ¤ÇÕ´Ï´Ù. »ý·«Çϸé, °¡Àå ¿À·¡µÈ âÀÌ Ç×»ó È°¼ºÈ­ µË´Ï´Ù. ±âÈ£ RÀ̶ó¸é, °¡Àå »õ·Î¿î âÀÌ (°¡Àå ÃÖ±Ù¿¡ È°¼ºÈ­ µÈ âÀÌ) È°¼ºÈ­ µË´Ï´Ù. ±×·¯³ª, ¸í·É¾î°¡ ÁÖ¾îÁú ¶§ ±×·ìÀÇ ¸â¹ö°¡ Çϳªµµ È°¼ºÈ­µÇ¾î ÀÖÁö ¾ÊÀ» °æ¿ì¿¡¸¸ ±×·¸½À´Ï´Ù. "R"ÀÌ À¯¿ëÇÑ °æ¿ì´Â Àӽ÷Π°ü·Ã ¾ø´Â ÀÛ¾÷À¸·Î ÀüȯÇÒ °æ¿ìÀÔ´Ï´Ù. GroupActivate, GroupDeactivate, ¶Ç´Â GroupClose¸¦ ÅëÇÏ¿© ±×·ìÀ¸·Î µ¹¾Æ¿Ã ¶§, °¡Àå ¿À·¡µÈ âÀÌ ¾Æ´Ï¶ó ¿©·¯ºÐÀÌ °¡Àå ÃÖ±Ù¿¡ ÀÛ¾÷ÇÑ Ã¢ÀÌ È°¼ºÈ­ µË´Ï´Ù.

+ +
+ +

³íÆò

+

+A|R ¸Å°³º¯¼ö°¡ "A"°¡ ¾Æ´Ò ¶§, ÀÌ ¸í·É¾îÀÇ ÇàÀ§´Â GroupName¿¡ ´ëÇÑ ÀÌÀü ÇàÀ§°¡ GroupActivateÀ̾ú´Â°¡ ¾Æ´Ï¸é GroupDeactivateÀΰ¡¿¡ ÀÇÇØ °áÁ¤µË´Ï´Ù. GroupDeactivate¿´´Ù¸é, ÀÌ ¸í·É¾î´Â ±×·ìÀÇ ¸â¹ö°¡ ¾Æ´Ò ¶§¸¸ È°¼º âÀ» ´Ý½À´Ï´Ù (±×·¸Áö ¾ÊÀ¸¸é ¾Æ¹« Àϵµ ÇÏÁö ¾Ê½À´Ï´Ù). + +¸¸¾à GroupActivateÀ̾ú°Å³ª ¾Æ¹«°Íµµ ¾ø¾ú´Ù¸é, ÀÌ ¸í·É¾î´Â È°¼ºÃ¢ÀÌ ±×·ìÀÇ ¸â¹öÀÏ °æ¿ì¿¡¸¸ ´Ý½À´Ï´Ù (±×·¸Áö ¾ÊÀ¸¸é ¾Æ¹«Àϵµ ÇÏÁö ¾Ê½À´Ï´Ù). ÀÌ ÇàÀ§ ´öºÐ¿¡ GroupNameÀÇ GroupActivate ¶Ç´Â GroupDeactivate ÇÖÅ°¿Í ¦ÀÌ µÇ°Ô GroupCloseÀ» ÇÖÅ°¿¡ ÇÒ´çÇÒ ¼ö ÀÖ½À´Ï´Ù.

+

+â ±×·ì¿¡ °üÇÑ ´õ ÀÚ¼¼ÇÑ Á¤º¸´Â GroupAdd¸¦ ÂüÁ¶ÇϽʽÿÀ.

+ +

°ü·Ã Ç׸ñ

+

GroupAdd, GroupActivate, GroupDeactivate

+ +

¿¹Á¦

+
GroupClose, MyGroup, R
+ + + diff --git a/src/docs/commands/GroupDeactivate.htm b/src/docs/commands/GroupDeactivate.htm new file mode 100644 index 0000000..42836f8 --- /dev/null +++ b/src/docs/commands/GroupDeactivate.htm @@ -0,0 +1,44 @@ + + + + +GroupDeactivate + + + + + + + +

GroupDeactivate

+ +

GroupActivate¿Í ºñ½ÁÇÏÁö¸¸ ±×·ì¿¡ ¾ø´Â ´ÙÀ½ âÀ» È°¼ºÈ­ÇÕ´Ï´Ù.

+ +
GroupDeactivate, GroupName [, R]
+

¸Å°³º¯¼ö

+
+ +
GroupName
+

óÀ½¿¡ GroupAdd¿¡ ÀÇÇØ Á¤ÀǵÈ, ¸ñÇ¥ ±×·ìÀÇ À̸§.

+ +
R
+

ÀÌ ¸Å°³º¯¼ö´Â ±×·ìÀÇ ¸â¹ö°¡ ÇöÀç È°¼º »óÅÂÀÏ ¶§ °¡Àå ¿À·¡µÈ ºñ-¸â¹ö°¡ È°¼ºÈ­ µÉÁö ¾Æ´Ï¸é °¡Àå »õ·Î¿î ºñ-¸â¹ö âÀÌ È°¼ºÈ­ µÉÁö °áÁ¤ÇÕ´Ï´Ù. »ý·«Çϸé, °¡Àå ¿À·¡µÈ ºñ-¸â¹ö âÀÌ ¾ðÁ¦³ª È°¼ºÈ­µË´Ï´Ù. ±âÈ£ RÀ̸é, °¡Àå »õ·Î¿î ºñ-¸â¹ö âÀÌ (°¡Àå ÃÖ±Ù¿¡ È°¼ºÈ­µÈ âÀÌ) È°¼ºÈ­ µË´Ï´Ù. ±×·¯³ª ¸í·É¾î°¡ ÁÖ¾îÁú ¶§ ±×·ìÀÇ ¸â¹ö°¡ È°¼ºÈ­µÇ¾î ÀÖÀ» °æ¿ì¿¡¸¸ È°¼ºÈ­ µË´Ï´Ù. "R"Àº Àӽ÷Π°ü·Ã ¾ø´Â ÀÛ¾÷À¸·Î ÀüȯÇÒ °æ¿ì¿¡ À¯¿ëÇÕ´Ï´Ù. GroupActivate, GroupDeactivate, ¶Ç´Â GroupClose¸¦ ÅëÇÏ¿© ±×·ìÀ¸·Î µ¹¾Æ¿Ã ¶§, °¡Àå ¿À·¡µÈ âÀÌ ¾Æ´Ï¶ó °¡Àå ÃÖ±Ù¿¡ ÀÛ¾÷ÇÑ Ã¢ÀÌ È°¼ºÈ­ µË´Ï´Ù.

+ +
+ +

³íÆò

+

+GroupDeactivate ¶§¹®¿¡ ±×·ìÀÇ Ã¢ ±Ô°Ý¿¡ ºÎÇÕÇÏÁö ¾Ê´Â°¡Àå ù ¹ø° âÀÌ È°¼ºÈ­ µË´Ï´Ù. GroupDeactivate¸¦ µÎ ¹ø° »ç¿ëÇÏ¸é ¿¬¼ÓÀûÀ¸·Î ´ÙÀ½ âÀ» È°¼ºÈ­ÇÕ´Ï´Ù. µîµî. º¸Åë, GroupDeactivate´Â ÇÖÅ°¿¡ ÇÒ´çÇؼ­ ±× Å°¸¦ ´©¸£¸é ÀÚµ¿À¸·Î ÀÌ·± â ÇàÀ§°¡ ¼öÇàµÇµµ·Ï ÇÕ´Ï´Ù.

+

+ÀÌ ¸í·É¾î´Â ÀÚÁÖ ½ÇÇàÇØ¾ß Çؼ­ °ÅÀÇ ¾ðÁ¦³ª ½ÇÇà ÁßÀΠâµéÀÌ ¸¹À» ¶§ À¯¿ëÇÕ´Ï´Ù. ÀÌ Ã¢µéÀ» ±×·ì¿¡ Ãß°¡Çϸé, GroupDeactivate¸¦ »ç¿ëÇØ º°·Î »ç¿ëÇÏÁö ¾Ê´Â ⸶´Ù ¹æ¹®Çϸ鼭 ´ÝÀ»Áö ¸»Áö °áÁ¤ÇÒ ¼ö ÀÖ½À´Ï´Ù. ÀÌ·¸°Ô ÇÏ¸é ¼ÕÀ¸·Î ÇÏ´Â °Íº¸´Ù ¹ÙÅÁÈ­¸éÀ» ÈξÀ ´õ »¡¸® Á¤¸®ÇÒ ¼ö ÀÖ½À´Ï´Ù.

+

+â ±×·ì¿¡ °üÇÑ ´õ ÀÚ¼¼ÇÑ Á¤º¸´Â GroupAdd¸¦ ÂüÁ¶ÇϽʽÿÀ.

+ +

°ü·Ã Ç׸ñ

+

+GroupAdd, GroupActivate, GroupClose

+

¿¹Á¦

+
GroupDeactivate, MyFavoriteWindows  ; ¹ÙÅÁÈ­¸éÀ» Á¤¸®Çϱâ À§ÇØ  º°·Î-»ç¿ëÇÏÁö ¾ÊÀº âÀ» ¹æ¹®ÇÕ´Ï´Ù.
+ + + diff --git a/src/docs/commands/Gui.htm b/src/docs/commands/Gui.htm new file mode 100644 index 0000000..77de6fc --- /dev/null +++ b/src/docs/commands/Gui.htm @@ -0,0 +1,936 @@ + + + + +GUI + + + + + + + +

GUI

+ +

â°ú ÄÜÆ®·ÑÀ» »ý¼ºÇÏ°í °ü¸®ÇÕ´Ï´Ù. ±×·± âÀº µ¥ÀÌÅÍ ¿£Æ®¸® Æû ¶Ç´Â ¸ÂÃã »ç¿ëÀÚ ÀÎÅÍÆäÀ̽º¿¡ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù.

+ +
Gui, sub-command [, Param2, Param3, Param4]
+

¸ñÂ÷

+ + +

Gui, New [, Options, Title] [v1.1.04+]

+

+âÀ» ¸¸µé°í ÇöÀç ¾²·¹µå¿¡ ´ëÇÏ¿© ±âº» âÀ¸·Î ¼³Á¤ÇÕ´Ï´Ù.

+
Gui, New  ; À̸§ ¾ø°í ¹øÈ£ ¾ø´Â GUI¸¦ »õ·Î Çϳª ¸¸µì´Ï´Ù.
+Gui, Name: New  ; »õ·Î GUI¸¦ ¸¸µì´Ï´Ù. °°Àº À̸§À¸·Î ±âÁ¸ÀÇ GUI°¡ ÀÖÀ¸¸é Á¦°ÅÇÕ´Ï´Ù.
+
+

Options ¸ÞÀÎ GUI ¸í·É¾î°¡ Áö¿øÇÏ´Â ¿É¼ÇÀ» ´ãÀ» ¼ö ÀÖ½À´Ï´Ù.

+

TitleÀÌ »ý·«µÇ¸é, ½ºÅ©¸³Æ® ÆÄÀÏÀÇ À̸§ÀÌ »ç¿ëµË´Ï´Ù.

+

ÀÌ ¸í·É¾î´Â ´ÙÀ½ ¾àÁ¡ÀÌ µû¶ó ¿É´Ï´Ù:

+ +

±àÁ¤ÀûÀÎ ¸é¿¡ °üÇÏ¿©:

+ + +

À̸§ÀÌ ÁÖ¾îÁöÁö ¾ÊÀ¸¸é, ´ÙÀ½ÀÌ Àû¿ëµË´Ï´Ù:

+ +

ÁÖÀÇ: v1.1.08 ÀÌÀü¿¡¼­, ÀÌ ¸í·É¾î´Â À̸§ÀÌ ÁöÁ¤µÇ¸é ±âº» Gui¸¦ ¼³Á¤ÇÏÁö ¾Ê¾Ò½À´Ï´Ù.

+ +

Gui, Add, ControlType [, Options, Text]

+

ÄÜÆ®·ÑÀ» GUI â¿¡ Ãß°¡ÇÕ´Ï´Ù (ÇÊ¿äÇϸé, ¸ÕÀú GUI â ÀÚü¸¦ »ý¼ºÇÕ´Ï´Ù).

+ +

ControlTypeÀº ´ÙÀ½ Áß ÇϳªÀÔ´Ï´Ù:

+ +

¿¹¸¦ µé¾î:

+
Gui, Add, Text,, Please enter your name:
+Gui, Add, Edit, vName
+Gui, Show
+ +

Gui, Show [, Options, Title]

+

+µû·Î Options¿¡ ÁöÁ¤ÇÏÁö ¾ÊÀ¸¸é, ÀÌ ¸í·É¾î´Â âÀ» º¸ÀÌ°Ô ¸¸µé°í, (ÇÊ¿äÇϸé) â Å©±â¸¦ º¹¿øÇÏ°í, È°¼ºÈ­ Çϸç, ±×¸®°í ±×ÀÇ Å¸ÀÌƲÀ» ¼³Á¤ÇÕ´Ï´Ù. TitleÀÌ »ý·«µÇ¸é, ÀÌÀü Á¦¸ñÀÌ À¯ÁöµË´Ï´Ù (¶Ç´Â ¾øÀ¸¸é, ½ºÅ©¸³Æ®ÀÇ À̸§ÀÌ »ç¿ëµË´Ï´Ù).

+

+¾Æ·¡ÀÇ X, Y, W, ±×¸®°í H ¿É¼ÇÀ» »ý·«Çϸé âÀÇ ÀÌÀü Å©±â¿Í À§Ä¡¸¦ À¯ÁöÇÒ ¼ö ÀÖ½À´Ï´Ù. ÀÌÀüÀÇ À§Ä¡°¡ ¾øÀ» °æ¿ì, ¾Æ·¡¿¡ ¾ð±ÞµÈ X ¶Ç´Â/±×¸®°í Y ¿É¼ÇÀÌ ¾ø´Ù¸é âÀº µÎ Â÷¿ø Áß Çϳª¿¡ ¶Ç´Â µÑ ¸ðµÎ¿¡ ¸Â°Ô ÀÚµ¿ Áß¾Ó Á¤·ÄµË´Ï´Ù. ÀÌÀüÀÇ Å©±â°¡ ¾øÀ» °æ¿ì, âÀº ³»¿ëÀ» °¡Áø ÄÜÆ®·ÑÀÇ Å©±â¿Í À§Ä¡¿¡ ¸Â°Ô ÀÚµ¿ Á¶ÀýµË´Ï´Ù.

+

+´ÙÀ½ ¹®ÀÚ¿­ÀÌ Options¿¡ Á¸ÀçÇÒ ¼ö ÀÖ½À´Ï´Ù (°¢ ¼ýÀÚ¸¦ ½ÊÁø¼ö·Î ÁöÁ¤ÇϽʽÿÀ. ½ÊÀ°Áø¼ö°¡ ¾Æ´Õ´Ï´Ù):

+

+Wn: n¿¡ âÀÇ Å¬¶óÀ̾ðÆ® ±¸¿ªÀÇ ³Êºñ (Çȼ¿ ´ÜÀ§)¸¦ ÁöÁ¤ÇÕ´Ï´Ù (Ŭ¶óÀ̾ðÆ® ±¸¿ª¿¡¼­ âÀÇ Å׵θ®, Á¦¸ñ ¹Ù, ±×¸®°í ¸Þ´º ¹Ù´Â Á¦¿ÜµË´Ï´Ù).

+

+Hn: n¿¡ âÀÇ Å¬¶óÀ̾ðÆ® ±¸¿ªÀÇ ³ôÀ̸¦ Çȼ¿ ´ÜÀ§·Î ÁöÁ¤ÇÕ´Ï´Ù.

+

+Xn: n¿¡ È­¸é¿¡¼­ âÀÇ X-À§Ä¡¸¦ Çȼ¿ ´ÜÀ§·Î ÁöÁ¤ÇÕ´Ï´Ù. À§Ä¡°¡ 0À̸é È­¸é¿¡¼­ °¡Àå ¿ÞÂÊ¿¡ º¸ÀÌ´Â ¿ÞÂÊÀÇ Ä÷³ Çȼ¿ÀÔ´Ï´Ù.

+

+Yn: n¿¡ È­¸é¿¡¼­ Y-À§Ä¡¸¦ Çȼ¿ ´ÜÀ§·Î ÁöÁ¤ÇÕ´Ï´Ù. À§Ä¡ 0Àº È­¸é¿¡¼­ º¸ÀÌ´Â °¡Àå À§ÂÊ ÇàÀÇ Çȼ¿ÀÔ´Ï´Ù.

+

Center: âÀ» È­¸é¿¡¼­ ¼öÆò ¼öÁ÷À¸·Î °¡¿îµ¥¿¡ Á¤·ÄÇÕ´Ï´Ù.

+

xCenter: âÀ» È­¸é¿¡¼­ ¼öÆòÀ¸·Î Áß¾Ó Á¤·ÄÇÕ´Ï´Ù. ¿¹¸¦ µé¾î: Gui, Show, xCenter y0.

+

yCenter: È­¸é¿¡¼­ âÀ» ¼öÁ÷À¸·Î Áß¾Ó Á¤·ÄÇÕ´Ï´Ù.

+

AutoSize: âÀÇ Å©±â¸¦ ÇöÀç º¸ÀÌ´Â ÄÜÆ®·Ñ¿¡¸¸ ¸Â°Ô º¯°æÇÕ´Ï´Ù. ÀÌ°ÍÀº »õ ÄÜÆ®·ÑÀ» Ãß°¡ÇÑ ÈÄ Ã¢ÀÇ Å©±â¸¦ ¹Ù²Ü ¶§, ¶Ç´Â ±âÁ¸ÀÇ ÄÜÆ®·ÑÀÌ Å©±â°¡ ¹Ù²î°Å³ª, ¼û°Å³ª, ¶Ç´Â ´Ù½Ã ³ªÅ¸³ª°Å³ª ÇÒ ¶§ À¯¿ëÇÕ´Ï´Ù. ¿¹¸¦ µé¾î:
+ Gui, Show, AutoSize Center

+


+ ´ÙÀ½ Áß Çϳª°¡ Á¸ÀçÇÒ ¼öµµ ÀÖ½À´Ï´Ù:

+

Minimize: âÀ» ÃÖ¼ÒÈ­ÇÏ°í ±× ¾Æ·¡¿¡ Àִ âÀ» È°¼ºÈ­ ÇÕ´Ï´Ù.

+

Maximize: âÀ» ÃÖ´ëÈ­ÇÏ°í È°¼ºÈ­ÇÕ´Ï´Ù.

+

Restore: âÀ» º¹±¸ÇÕ´Ï´Ù. âÀ» º¸¿©ÁÖ°í È°¼ºÈ­ÇÕ´Ï´Ù.

+

NoActivate: âÀ» º¹±¸ÇÕ´Ï´Ù. âÀ» È°¼ºÈ­ÇÏÁö ¾Ê°í º¸¿©ÁÝ´Ï´Ù.

+

NA: âÀ» È°¼ºÈ­ÇÏÁö ¾Ê°í º¸¿©ÁÝ´Ï´Ù. ±× âÀÌ ÃÖ¼ÒÈ­µÇ¾î ÀÖ´õ¶óµµ, ±×´ë·Î ÀÖ°ÚÁö¸¸ ¾Æ¸¶µµ z-¼ø¼­´Â ´õ ³ô¾ÆÁú °ÍÀÔ´Ï´Ù (z-¼ø¼­¶õ ¾ËÆ®-ÅÇ ¼±ÅÃÀÚ¿¡ º¸¿©Áö´Â ¼ø¼­ÀÔ´Ï´Ù). +âÀÌ ÀÌÀü¿¡ ¼û¾î ÀÖ¾úÀ¸¸é, ÀÌ ¶§¹®¿¡ ¾Æ¸¶µµ È°¼º âÀÌ ºñÈ°¼ºÈ­µÇÁö ¾Ê¾Ò´Ù°í ÇÒÁö¶óµµ ±× À§¿¡ ³ªÅ¸³¯ °ÍÀÔ´Ï´Ù.

+

+Hide: âÀ» °¨Ãß°í ±× ¾Æ·¡ÀÇ Ã¢À» È°¼ºÈ­ ÇÕ´Ï´Ù. ÀÌ°ÍÀº ±â´É»ó Gui Cancel°ú µ¿ÀÏÇÕ´Ï´Ù. ´Ü, ¼ûÀº âÀ» À̵¿ÇÏ°í, Å©±â º¯°æÀ» ÇÒ ¼ö ÀÖ°í ¶Ç´Â º¸¿©ÁÙ ÇÊ¿ä ¾øÀÌ »õ Á¦¸ñÀ» ÁÙ ¼ö ÀÖ´Ù´Â Á¡Àº ´Ù¸¨´Ï´Ù. ¿¹¸¦ µé¾î: Gui, Show, Hide x55 y66 w300 h200, New Title.

+ +

Gui, Submit [, NoHide]

+

+°¢ ÄÜÆ®·ÑÀÇ ³»¿ëÀ» ±×ÀÇ ¿¬°ü º¯¼ö¿¡ ÀúÀåÇÏ°í âÀ» °¨Ãä´Ï´Ù. ´Ü, NoHide ¿É¼ÇÀÌ ÀÖ´Â °æ¿ì´Â ¿¹¿ÜÀÔ´Ï´Ù. ´ÙÁß-¼±Åà ListBox¿Í °°ÀÌ ¿©·¯ ÇʵåÀÇ Ãâ·ÂÀ» »ý»êÇÏ´Â ÄÜÆ®·Ñ¿¡ ´ëÇÏ¿©, ±× Ãâ·ÂÀº âÀÇ ÇöÀç °¡¸§ÀÚ¸¦ »ç¿ëÇÕ´Ï´Ù. ±× âÀÌ Á¸ÀçÇÏÁö ¾ÊÀ¸¸é -- ¾Æ¸¶µµ Gui Destroy¸¦ ÅëÇÏ¿© »ç¶óÁ® ¹ö·È´Ù¸é -- ÀÌ ¸í·É¾î´Â ¾Æ¹« È¿°ú°¡ ¾ø½À´Ï´Ù.

+ +

Gui, Cancel

+

±×ÀÇ ¿¬°ü º¯¼ö¿¡ ÄÜÆ®·ÑÀÇ ³»¿ëÀ» ÀúÀåÇÏÁö ¾Ê°í âÀ» °¨Ãä´Ï´Ù. âÀÌ Á¸ÀçÇÏÁö ¾ÊÀ¸¸é -- ¾Æ¸¶µµ Gui Destroy¸¦ ÅëÇÏ¿© Æı«µÇ¾î ¹ö·È´Ù¸é -- ÀÌ ¸í·É¾î´Â ¾Æ¹« È¿°úµµ ¾ø½À´Ï´Ù.

+ +

Gui, Destroy

+

+â°ú ±×ÀÇ ¸ðµç ÄÜÆ®·ÑÀ» (Á¸ÀçÇϸé) Á¦°ÅÇÏ°í, »óÀÀÇÏ´Â ¸Þ¸ð¸®¿Í ½Ã½ºÅÛ ÀÚ¿øÀ» Ç®¾îÁÝ´Ï´Ù. ³ªÁß¿¡ ½ºÅ©¸³Æ®°¡ ±× âÀ» ´Ù½Ã ¸¸µé¸é, ±Û²Ã°ú »ö±ò °°Àº âÀÇ ¸ðµç Ư¼ºÀº (¸¶Ä¡ âÀÌ Á¸ÀçÇÏÁö ¾Ê¾Ò´ø °Íó·³) ±âº» °ªÀ¸·Î ½ÃÀÛÇÕ´Ï´Ù. Gui Destroy¸¦ »ç¿ëÇÏÁö ¾Ê´õ¶óµµ, ¸ðµç GUI âÀº ½ºÅ©¸³Æ®°¡ Á¾·áÇÒ ¶§ ÀÚµ¿À¸·Î Æı«µË´Ï´Ù.

+ +

Gui, Font [, Options, FontName]

+

+â¿¡ Ãß°¡µÈ ÄÜÆ®·Ñ¿¡ ´ëÇÏ¿© ÀÌ ½ÃÁ¡ºÎÅÍ ±Û²Ã ¸ð¾ç, Å©±â, ½ºÅ¸ÀÏ ±×¸®°í/¶Ç´Â »öÀ» ¼³Á¤ÇÕ´Ï´Ù. ¿¹¸¦ µé¾î:

+ +
gui, font, s10, Verdana  ; Set 10-point Verdana.
+

+¸¶Áö¸· ¸Å°³º¯¼ö µÎ °³¸¦ »ý·«ÇÏ¸é ±Û²ÃÀ» ½Ã½ºÅÛÀÇ ±âº» GUI ¸ð¾ç, Å©±â ±×¸®°í »öÀ¸·Î º¹±¸ÇÒ ¼ö ÀÖ½À´Ï´Ù.

+

+FontNameÀº ±Û²Ã À̸§ÀÔ´Ï´Ù. ¿¹¸¦ µé¾î ±Û²Ã Å×ÀÌºí¿¡¼­ °í¸¦ ¼ö ÀÖ´Â À̸§ÀÔ´Ï´Ù. + +FontNameÀ» »ý·«Çϰųª ½Ã½ºÅÛ¿¡ Á¸ÀçÇÏÁö ¾ÊÀ¸¸é, ÀÌÀüÀÇ ±Û²Ã ¸ð¾çÀÌ »ç¿ëµË´Ï´Ù (¶Ç´Â ¾øÀ¸¸é, ½Ã½ºÅÛÀÇ ±âº» GUI ¸ð¾çÀÌ »ç¿ëµË´Ï´Ù). ¼±È£ÇÏ´Â ±Û²ÃÀÌ ¾ø´Ù°í ÇÒÁö¶óµµ ¿©·¯ ½Ã½ºÅÛ¿¡¼­ GUI âÀÌ ºñ½ÁÇÑ ±Û²ÃÀ» °¡Áö°Ô ¸¸µå´Â µ¥ À¯¿ëÇÕ´Ï´Ù. ¿¹¸¦ µé¾î, ´ÙÀ½ ¸í·É¾î¸¦ ¼ø¼­´ë·Î »ç¿ëÇϸé, Verdana ±Û²ÃÀÌ Arialº¸´Ù ¿ì¼±ÇÏ°í, ArialÀº MS sans serifº¸´Ù ¿ì¼± ¼øÀ§°¡ ÁÖ¾îÁý´Ï´Ù:

+ +
gui, font,, MS sans serif
+gui, font,, Arial
+gui, font,, Verdana  ; ¼±È£ÇÏ´Â ±Û²Ã.
+

+Options ¸Å°³º¯¼ö°¡ ºñ¾î ÀÖÀ¸¸é, ÀÌÀüÀÇ ±Û²Ã ¼Ó¼ºÀÌ »ç¿ëµË´Ï´Ù. ±×·¸Áö ¾ÊÀ¸¸é, ´ÙÀ½ ¿É¼Ç ±âÈ£µéÀ» ´ë½Å ÁöÁ¤ÇϽʽÿÀ:

+

+C: Ä÷¯ À̸§ (Ä÷¯ Â÷Æ® ÂüÁ¶) ¶Ç´Â RGB °ª -- ¶Ç´Â ´Ü¾î Default¸¦ ÁöÁ¤ÇÏ¸é ½Ã½ºÅÛÀÇ ±âº» Ä÷¯¿¡ ÀÇÁ¸ÇÒ ¼ö ÀÖ½À´Ï´Ù (´ëºÎºÐÀÇ ½Ã½ºÅÛ¿¡¼­ °ËÁ¤»ö). ¿¹¸¦ µé¾î: cRed, cFFFFAA, cDefault. ÁÖÀÇ: ButtonsÀº ¸ÂÃã »öÀ» ÁؼöÇÏÁö ¾Ê½À´Ï´Ù. ¶ÇÇÑ, C ¿É¼ÇÀ» Æ÷ÇÔÇÔÀ¸·Î½á ÇöÀç »ö ¸»°í ±Û²Ã »öÀ» °¡Áö°í ÄÜÆ®·ÑÀ» °³º°ÀûÀ¸·Î ¸¸µé ¼ö ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î: Gui, Add, Text, cRed, My Text.

+

+S: Å©±â (Æ÷ÀÎÆ® ´ÜÀ§). ¿¹¸¦ µé¾î: s12 (½ÊÁø¼ö·Î ÁöÁ¤ÇϽʽÿÀ. ½ÊÀ°Áø¼ö°¡ ¾Æ´Õ´Ï´Ù)

+

+W: µÎ²² (µÎ²¨¿ò), 1°ú 1000 »çÀÌÀÇ ¼ýÀÚÀÔ´Ï´Ù (400Àº º¸ÅëÀÌ°í 700ÀÌ¸é º¼µåüÀÔ´Ù). ¿¹¸¦ µé¾î: w600 (½ÊÀ°Áø¼ö°¡ ¾Æ´Ï¶ó ½ÊÁø¼ö·Î ÁöÁ¤ÇϽʽÿÀ)

+

+´ÙÀ½ ´Ü¾îµéÀ» Áö¿øÇÕ´Ï´Ù: bold, italic, strike, underline, ±×¸®°í norm. NormÀº ±Û²ÃÀ» º¸Åë µÎ²²¿Í/¹«°Ô·Î µ¹·ÁÁÝ´Ï´Ù. ±×¸®°í ÀÌÅŸ¯, Ãë¼Ò¼±, ±×¸®°í ¹ØÁÙÀ» ²ü´Ï´Ù (±×·¯³ª ±âÁ¸ÀÇ »ö°ú Å©±â´Â À¯ÁöÇÕ´Ï´Ù). normÀ» »ç¿ëÇÏ¿© ¸ðµç ¼Ó¼ºÀ» ²ö ´ÙÀ½ ¼±ÅÃÀûÀ¸·Î Çϳª¾¿ ÄÑ´Â °ÍÀÌ °¡´ÉÇÕ´Ï´Ù. ¿¹¸¦ µé¾î, norm italicÀ» ÁöÁ¤ÇÏ¸é ±Û²ÃÀ» Á¤»óÀ¸·Î ¸¸µç ´ÙÀ½ ÀÌÅø¯À¸·Î ¼³Á¤ÇÕ´Ï´Ù.

+

+¿©·¯ ¿É¼ÇÀ» ÁöÁ¤ÇÏ·Á¸é, °¢ ¿É¼Ç »çÀÌ¿¡ ½ºÆäÀ̽º¸¦ Æ÷ÇÔ½ÃÅ°½Ê½Ã¿À. ¿¹¸¦ µé¾î: cBlue s12 bold.

+

+½ºÅ©¸³Æ®°¡ ¿©·¯ GUI âÀ» »ý¼ºÇϸé, °¢ ⸶´Ù ÄÜÆ®·ÑÀ» ´õ ¸¸µé ¸ñÀûÀ¸·Î ÀÚ½ÅÀÇ "ÇöÀç ±Û²Ã"À» ±â¾ïÇÕ´Ï´Ù.

+

+°ü·ÃÇÏ¿©, ¿î¿µ üÁ¦´Â »ç¿ëÀÚ°¡ ±Û²Ã, Ä÷¯, ¶Ç´Â ¾ÆÀÌÄÜÀ» °í¸£µµ·Ï Ç¥ÁØ ´ëÈ­»óÀÚ¸¦ Á¦°øÇÕ´Ï´Ù. ÀÌ ´ëÈ­»óÀÚ´Â DllCall()À» ÅëÇÏ¿© º¸¿©ÁÙ ¼ö ÀÖ½À´Ï´Ù. ´ÙÀ½¿¡ ¿¹½ÃÇÕ´Ï´Ù: www.autohotkey.com/forum/topic17230.html.

+

+Q: [AHK_L 19+]: ÅؽºÆ® °¡°ø Ç°Áú. ¿¹¸¦ µé¾î: q3. Q ´ÙÀ½¿¡ ´ÙÀ½ Å×ÀÌºí¿¡ ÀÖ´Â ¼ýÀÚ°¡ µû¶ó¿Í¾ß ÇÕ´Ï´Ù:

+ + + + + + + +
0 = DEFAULT_QUALITY±Û²ÃÀÇ ¸ð½ÀÀº »ó°üÇÏÁö ¾Ê½À´Ï´Ù.
1 = DRAFT_QUALITYPROOF_QUALITY¸¦ »ç¿ëÇÒ ¶§¿¡ ºñÇØ ±Û²ÃÀÇ ¸ð½ÀÀÌ ´ú Áß¿äÇÕ´Ï´Ù.
2 = PROOF_QUALITY³í¸®Àû ±Û²Ã ¼Ó¼º¿¡ Á¤È®ÇÏ°Ô ºÎÇÕÇÏ´Â °Íº¸´Ù ±Û²ÃÀÇ ¹®ÀÚ Ç°ÁúÀÌ ´õ Áß¿äÇÕ´Ï´Ù.
3 = NONANTIALIASED_QUALITY±Û²ÃÀ» ºÎµå·´°Ô ¿Ü°û¼± ó¸®ÇÏÁö ¾Ê½À´Ï´Ù.
4 = ANTIALIASED_QUALITY±Û²ÃÀÌ Áö¿øÇÏ¸é ±Û²ÃÀ» ºÎµå·´°Ô ¿Ü°û¼± ó¸®ÇÕ´Ï´Ù. ±×¸®°í ±Û²ÃÀÇ Å©±â´Â ³Ê¹« ÀÛÁöµµ ³Ê¹« Å©Áöµµ ¾Ê½À´Ï´Ù.
5 = CLEARTYPE_QUALITYWindows XP ÀÌÈÄ: ¼³Á¤Çϸé, ClearType ¿Ü°û¼± ó¸® ¹æ¹ýÀ» »ç¿ëÇÏ¿© ÅؽºÆ®¸¦ °¡°øÇÕ´Ï´Ù.
+

+ÀÌ·± °ªµéÀÇ Àǹ̿¡ °üÇÑ ´õ ÀÚ¼¼ÇÑ Á¤º¸´Â MSDN: CreateFont¸¦ ÂüÁ¶ÇϽʽÿÀ.

+

+°íÇ°Áú ¼³Á¤ÀÌ º¸Åë ±âº»°ªÀ̱⠶§¹®¿¡, ÀÌ Æ¯Â¡Àº ÁÖ·Î ¾ØƼ-¿¤¸®¾î½ÌÀ» ²ô¸é ÅؽºÆ®°¡ ´õ ¼±¸íÇÏ°Ô º¸ÀÏ °æ¿ì¿¡ »ç¿ëµË´Ï´Ù.

+ +

Gui, Color [, WindowColor, ControlColor]

+

+âÀÇ ±×ÀÇ ÄÜÆ®·ÑÀÇ ¹è°æ»öÀ» ¼³Á¤ÇÕ´Ï´Ù. WindowColor´Â GUI â ÀÚü¿¡ ´ëÇÑ ¹è°æ»öÀ¸·Î »ç¿ëµË´Ï´Ù. ControlColor´Â â¿¡ Á¸ÀçÇÏ´Â ±×¸®°í Á¸ÀçÇÒ ¸ðµç ÄÜÆ®·Ñ¿¡ Àû¿ëµË´Ï´Ù (±×·¸Áö¸¸ ¾î¶² À¯ÇüÀÇ ÄÜÆ®·ÑÀÇ ¸ÂÃã »öÀ» Áö¿øÇÏÁö ¾Ê½À´Ï´Ù). ControlColorÀ» óÀ½¿¡´Â ListViews¿Í TreeViews°¡ ÁؼöÇÏÁö¸¸, ¿¬À̾ ControlColor¸¦ º¯°æÇÏ¸é ¿µÇâÀ» ¹ÌÄ¡Áö ¾Ê½À´Ï´Ù. ±×·± °æ¿ì, GuiControl +BackgroundFF9977, MyListView¸¦ »ç¿ëÇÏ¿© ¸í½ÃÀûÀ¸·Î »öÀ» º¯°æÇϽʽÿÀ.

+

+µÎ ¸Å°³º¯¼ö Áß Çϳª¶óµµ ±×´ë·Î µÎ¸é ÇöÀç »öÀÌ À¯ÁöµË´Ï´Ù. ±×·¸Áö ¾ÊÀ¸¸é, 16°¡Áö ±âº» HTML Ä÷¯ À̸§ ¶Ç´Â6-ÀÚ¸® RGB Ä÷³ À̸§ (0x Á¢µÎ»ç´Â ¼±ÅÃÀû), ¶Ç´Â ´Ü¾î Default¸¦ ÁöÁ¤ÇÏ¸é ±×ÀÇ ±âº» °ªÀ¸·Î µ¹¾Æ°¥ ¼ö ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î: Silver, FFFFAA, 0xFFFFAA, Default.

+

+±âº»°ªÀ¸·Î, âÀÇ ¹è°æ »öÀº ½Ã½ºÅÛÀÇ ¹öÆ°»öÀÔ´Ï´Ù. ±×¸®°í ÄÜÆ®·ÑÀÇ ¹è°æ»öÀº ½Ã½ºÅÛÀÇ ±âº» âÀÇ »öÀÔ´Ï´Ù (º¸Åë Èò»ö).

+

+¸Þ´º ¹Ù¿Í ±×ÀÇ ÇÏÀ§ ¸Þ´º »öÀº ´ÙÀ½ ¿¹Á¦¿Í °°ÀÌ ¹Ù²Ü ¼ö ÀÖ½À´Ï´Ù: Menu, MyMenuBar, Color, White.

+

+¹è°æÀ» Åõ¸íÇÏ°Ô ¸¸µé·Á¸é WinSet TransColor¸¦ »ç¿ëÇϽʽÿÀ. ±×·¸Áö¸¸, ¸ÕÀú Gui, ColorÀ» ÅëÇÏ¿© ¸ÂÃã âÀ» ÇÒ´çÇÏÁö ¾Ê°í ÀÌ·¸°Ô Çϸé, ¹öÆ°µµ Åõ¸íÇÏ°Ô µË´Ï´Ù. À̸¦ ÇÇÇÏ·Á¸é, ¸ÕÀú ¸ÂÃã »öÀ» ÇÒ´çÇÑ ´ÙÀ½ ±× »öÀ» Åõ¸íÇÏ°Ô ¸¸µå½Ê½Ã¿À. ¿¹¸¦ µé¾î:

+
Gui, Color, EEAA99
+Gui +LastFound  ; GUI âÀ» ¸¶Áö¸· ¹ß°ß âÀ¸·Î ¸¸µé¾î ¾Æ·¡ ÁÙ¿¡ »ç¿ëÇÕ´Ï´Ù.
+WinSet, TransColor, EEAA99
+

+¶Ç Å׵θ®¿Í Á¦¸ñ ¹Ù¸¦ Åõ¸í ¹è°æÀ» °¡Áø âÀ¸·ÎºÎÅÍ Á¦°ÅÇÏ·Á¸é, âÀ» Åõ¸íÇÏ°Ô ¸¸µç ÈÄ¿¡ ´ÙÀ½°ú °°ÀÌ ÇϽʽÿÀ:

+ +
Gui -Caption  ; ¶Ç´Â ±âº» âÀÌ ¾Æ´Ï¶ó¸é Gui, GuiName:-CaptionÀ» »ç¿ëÇϽʽÿÀ.
+

+ÀÌ ÆäÀÌÁöÀÇ ÇÏ´Ü ±Ùó¿¡ À§¸¦ ½Ã¿¬ÇØÁÖ´Â È­¸é-À§ µð½ºÇ÷¹ÀÌ (OSD)ÀÇ ¿¹Á¦°¡ ÀÖ½À´Ï´Ù.

+ +

Gui, Margin [, X, Y]

+

+X ±×¸®°í Y´Â ¸í½ÃÀûÀÎ X ¶Ç´Â Y ÁÂÇ¥°¡ ¾ø´Â ÄÜÆ®·ÑÀ» ÀÚµ¿ ¹èÄ¡ÇÒ ¶§ âÀÇ »ó/ÇÏ/ÁÂ/¿ì¿¡ µÑ ¿©¹éÀÇ Çȼ¿ÀÇ °³¼öÀÔ´Ï´Ù. ¶Ç, ÀÚµ¿ ¹èÄ¡µÈ ÄÜÆ®·ÑµéÀ» ¼­·Î ºÐ¸®ÇÒ ¼öÁ÷ ¼öÆò °Å¸®¸¦ °áÁ¤Çϱâ À§ÇØ ¿©¹éÀÌ »ç¿ëµË´Ï´Ù. ¸¶Áö¸·À¸·Î, (¸í½ÃÀûÀ¸·Î Å©±â°¡ ÁÖ¾îÁöÁö ¾ÊÀ» ¶§) óÀ½ Gui Show¸¦ »ç¿ëÇÒ ¶§ âÀÇ Å©±â¸¦ °è»êÇϱâ À§ÇØ ¿©¹éÀÌ °í·ÁµË´Ï´Ù.

+

+Gui, MarginÀº ±âº» â¿¡¸¸ ¿µÇâÀ» ÁÖ´Â ¹Ý¸é¿¡, Gui, Name:Margin´Â À̸§ºÙÀº â¿¡¸¸ ¿µÇâÀ» ¹ÌĨ´Ï´Ù. ÀÌ ¸í·É¾î°¡ »ç¿ëµÇÁö ¾ÊÀ¸¸é, ù ÄÜÆ®·ÑÀÌ Ã¢¿¡ Ãß°¡µÉ ¶§, ±× âÀº ÇöÀç ¼±ÅÃµÈ ±Û²ÃÀÇ Å©±â¿¡ ºñ·ÊÇÏ¿© »ç¹æ¿¡ ±âº» ¿©¹éÀ» ¾ò½À´Ï´Ù (»óÇÏ·Î ±Û²Ã ³ôÀÌÀÇ 0.75 ¹è ±×¸®°í Á¿ì·Î ±Û²Ã ³ôÀÌÀÇ 1.25 ¹è).

+

+ÄÜÆ®·ÑÀ» Ãß°¡ÇÏ´Â µ¿¾È ¿©¹éÀ» ¹Ù²Ü ¼ö ÀÖÁö¸¸, ±× ¶§ÀÇ º¯°æÀº ÀÌ¹Ì Á¸ÀçÇÏ´Â ÄÜÆ®·Ñ¿¡´Â ¿µÇâÀ» ÁÖÁö ¾Ê°í ¾ÕÀ¸·Î Ãß°¡µÉ ÄÜÆ®·Ñ¿¡¸¸ ¿µÇâÀ» ÁÝ´Ï´Ù. ¸¶Áö¸·À¸·Î, X¤¤ Y°¡ ºñ¾î ÀÖÀ¸¸é »óÀÀÇÏ´Â ¿©¹éÀº ¹Ù²îÁö ¾Ê½À´Ï´Ù.

+ +

Gui, +/-Option1 +/-Option2 ...

+

+GUI ¸í·É¾î ¹Ù·Î ´ÙÀ½¿¡ ¿©·¯ ¿É¼ÇÀ» ÁöÁ¤ÇÒ ¼ö ÀÖ½À´Ï´Ù. ¼öÇ༺´ÉÀÇ ÀÌÀ¯·Î, ¸ðµç ¿É¼ÇÀ» ÇÑ ÁÙ¿¡¼­ ¼³Á¤ÇÏ´Â °ÍÀÌ ´õ ÁÁ½À´Ï´Ù. ±×¸®°í âÀ» ¸¸µé±â Àü¿¡ (Áï, Gui Add¿Í °°Àº ´Ù¸¥ ÇÏÀ§-¸í·É¾îµéÀ» »ç¿ëÇϱâ Àü¿¡) ±×·¸°Ô ÇÏ´Â ÆíÀÌ ´õ ÁÁ½À´Ï´Ù.

+

+ÀÌ ¸í·É¾îÀÇ È¿°ú´Â Á¡ÁõÀûÀÔ´Ï´Ù. Áï, ¸í½ÃÀûÀ¸·Î ÁöÁ¤µÈ ¼³Á¤¸¸ º¯°æÇÕ´Ï´Ù. ´Ù¸¥ ¼³Á¤µéÀº ±×´ë·Î µÓ´Ï´Ù.

+

+Ç÷¯½º »çÀÎÀ» ÁöÁ¤ÇÏ¸é ¿É¼ÇÀ» Ãß°¡ÇÒ ¼ö ÀÖ°í ¸¶À̳ʽº »çÀÎÀº Á¦°ÅÇÒ ¼ö ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î:

+
Gui +Resize -MaximizeBox  ; ±âº» GUI âÀÇ ¼³Á¤À» º¯°æÇÕ´Ï´Ù.
+Gui MyGui:+Resize -MaximizeBox  ; À̸§ÀÌ MyGuiÀÎ GUIÀÇ ¼³Á¤À» º¯°æÇÕ´Ï´Ù.
+

+AlwaysOnTop: âÀ» Ç×»ó ´Ù¸¥ ¸ðµç â À§¿¡ ÀÖµµ·Ï ¸¸µì´Ï´Ù. ÀÌ È¿°ú´Â WinSet AlwaysOnTop°ú °°½À´Ï´Ù.

+

+Border: °¡´Â-ÁÙ Å׵θ®¸¦ ⠵ѷ¹¿¡ µÎ¸¨´Ï´Ù. ÀÌ°ÍÀº ÀϹÝÀûÀÌÁö ¾Ê½À´Ï´Ù.

+

+Caption (±âº»À¸·Î Á¸Àç): Á¦¸ñ ¹Ù¿Í µÎ²¨¿î â Å׵θ®/¸ð¼­¸®¸¦ Á¦°øÇÕ´Ï´Ù. â¿¡¼­ ĸ¼ÇÀ» Á¦°ÅÇÒ ¶§ WinSet TransColor¸¦ »ç¿ëÇÏ°í ÀÖ´Ù¸é, TransColor¸¦ ¼³Á¤ÇÑ ÈÄ¿¡ Á¦°ÅÇϽʽÿÀ.

+

+Delimiter: ÆÄÀÌÇÁ (|) ¸»°í âÀÌ »ç¿ëÇØ¾ß ÇÏ´Â ÇÊµå °¡¸§ÀÚ¸¦ ÁöÁ¤ÇÕ´Ï´Ù. ÀÌ °¡¸§ÀÚ´Â ÄÜÆ®·ÑÀÇ ³»¿ëÀÌ Gui Add¸¦ ÅëÇÏ¿© Ãß°¡µÇ°Å³ª, GuiControl¸¦ ÅëÇÏ¿© º¯°æµÇ°Å³ª, ¶Ç´Â Gui Submit³ª GuiControlGet¸¦ ÅëÇÏ¿© ¿­¶÷µÉ ¶§ »ç¿ëµË´Ï´Ù. + +´Ü¾î Delimiter ´ÙÀ½¿¡ ¹Ù·Î ¹®ÀÚ Çϳª¸¦ ÁöÁ¤ÇϽʽÿÀ. ¿¹¸¦ µé¾î, Gui +Delimiter`nÀº ¶óÀÎÇÇµå ¹®ÀÚ¸¦ »ç¿ëÇÕ´Ï´Ù. ÀÌ´Â °è¼Ó ¼½¼Ç¿¡ ƯÈ÷ ÀûÀýÇÒ ¼ö ÀÖ½À´Ï´Ù. ºñ½ÁÇÏ°Ô, Gui +Delimiter|´Â ±âº» °¡¸§ÀÚ·Î µÇµ¹¾Æ °©´Ï´Ù. + +½ºÆäÀ̽º³ª ÅÇÀ» »ç¿ëÇÏ·Á¸é, Gui +DelimiterSpace ¶Ç´Â Gui +DelimiterTabÀ» ÁöÁ¤ÇϽʽÿÀ. ±¸ºÐÀÚ°¡ ¹Ù²î¸é, ÀÌ Æ¯Á¤ÇÑ Ã¢À§¿¡¼­ ÀÛµ¿ÇÏ´Â ±âÁ¸ÀÇ ±×¸®°í ÀÕµû¸£´Â ¸ðµç ¾²·¹µå¿¡ ¿µÇâÀ» ÁÝ´Ï´Ù.

+

+Disabled: âÀ» ºñÈ°¼ºÈ­ ÇÕ´Ï´Ù. »ç¿ëÀÚ°¡ ±×ÀÇ ÄÜÆ®·Ñ°ú »óÈ£ÀÛ¿ëÇÏÁö ¸øÇÏ°Ô ¸·½À´Ï´Ù. ÀÌ´Â Á¾Á¾ ´Ù¸¥ âÀ» ¼ÒÀ¯ÇÑ Ã¢¿¡ »ç¿ëµË´Ï´Ù (Owner ÂüÁ¶).

+

DPIScale [v1.1.11+]: Gui -DPIScale¸¦ »ç¿ëÇϸé DPI ½ºÄÉÀϸµÀ» ²ø ¼ö ÀÖ½À´Ï´Ù. ÀÌ´Â ±âº» °ªÀ¸·Î ÄÑÁ® ÀÖ½À´Ï´Ù. ºñ-Ç¥ÁØ DPI ¼³Á¤ÀÇ ½Ã½ºÅÛ¿¡ DPI ½ºÄÉÀϸµÀÌ È°¼ºÈ­ µÇ¸é, ÀÌ Gui ¸í·É¾î´Â ÀÚµ¿À¸·Î ÁÂÇ¥¿Í Å©±â¸¦ Á¶ÀýÇÏ¿© ÄÜÆ®·Ñ¿¡ ´ë·« ºñ½ÁÇÏ°Ô º¸ÀÌ´Â Å©±â¸¦ ÁÝ´Ï´Ù (±×·¯³ª Çػ󵵴 ´õ ³ô½À´Ï´Ù). ¿¹¸¦ µé¾î, DPI°¡ 144 (150%)À̸é, Gui Show, w100´Â Gui¸¦ 150 Çȼ¿ ³Êºñ·Î ¸¸µéÁö¸¸, A_GuiWidth´Â ¿©ÀüÈ÷ 100À» µ¹·ÁÁÝ´Ï´Ù. A_ScreenDPI¿¡´Â ½Ã½ºÅÛÀÇ ÇöÀç DPI°¡ ´ã°Ü ÀÖ½À´Ï´Ù.

+

+HwndOutputVar [v1.1.04+]: ÀÌ ¿É¼ÇÀº OutputVar¿¡ GUIÀÇ Ã¢ ÇÚµé (HWND)À» ÀúÀåÇÕ´Ï´Ù. ¿¹¸¦ µé¾î: Gui +HwndMyGuiHwnd. ÇÔ¼ö ¾È¿¡¼­ MyGuiHwnd´Â ÇÔ¼öÀû µ¿Àû º¯¼ö·Î Ãë±ÞµË´Ï´Ù. GUIÀÇ HWND´Â Á¾Á¾ PostMessage, SendMessage, ±×¸®°í DllCall¿Í ÇÔ²² »ç¿ëµË´Ï´Ù. ¶ÇÇÑ ahk_id WinTitle·Î ¶Ç´Â GUI À̸§ ´ë½Å¿¡ Á÷Á¢ÀûÀ¸·Î »ç¿ëµÇ±âµµ ÇÕ´Ï´Ù; ¿¹¸¦ µé¾î, Gui %MyGuiHwnd%:Destroy.

+

+Label [v1.0.44.09+]: ÀÌ Ã¢ÀÇ Æ¯º° ¶óº§¿¡ ¸ÂÃã À̸§À» ¼³Á¤ÇÕ´Ï´Ù. ¿¹¸¦ µé¾î, Gui MyGui:+LabelMyGui_On´Â MyGuiGuiClose¿Í MyGuiGuiSize ´ë½Å¿¡ ¶óº§ MyGui_OnClose¿Í MyGui_OnSize ¸¦ »ç¿ëÇÕ´Ï´Ù. ´Ù¸¥ ¸»·Î Çϸé, ¸ðµç Ư¼ö ¶óº§ÀÇ À̸§¿¡ ¹®ÀÚ¿­ "MyGuiGui"´Â "MyGui_On"À¸·Î ±³Ã¼µË´Ï´Ù. ÀÌ´Â ¶ÇÇÑ ¿©·¯ âÀÌ °°Àº ¶óº§ ¼¼Æ®¸¦ °øÀ¯Çϵµ·Ï ¸¸µå´Â µ¥ »ç¿ëÇÒ ¼öµµ ÀÖ½À´Ï´Ù (ÀÌ °æ¿ì ½ºÅ©¸³Æ®´Â A_Gui¿¡ ¹®ÀÇÇØ ¾î´À âÀÌ ¼­ºê·çƾÀ» ±âµ¿Çß´ÂÁö °áÁ¤ÇÒ ¼ö ÀÖ½À´Ï´Ù).

+

+LastFound: ¸¶Áö¸· ¹ß°ß âÀÌ µÉ âÀ» ¼³Á¤ÇÕ´Ï´Ù (±×·¸Áö¸¸ Gui ¾²·¹µå ¾È¿¡¼­´Â ÀÚµ¿À¸·Î 󸮵DZ⠶§¹®¿¡ ºÒÇÊ¿ä ÇÕ´Ï´Ù). ÀÌ ´öºÐ¿¡ WinSet°ú °°Àº ¸í·É¾îµéÀº ¼û¾î ÀÖÀ» °æ¿ì¿¡µµ âÀ» ó¸®ÇÒ ¼ö ÀÖ½À´Ï´Ù (Áï, DetectHiddenWindows´Â ÇÊ¿äÇÏÁö ¾Ê½À´Ï´Ù). ÀÌ°ÍÀº ƯÈ÷ º¸¿©ÁÖ±â Àü¿¡ âÀÇ Æ¯¼ºÀ» ¹Ù²Ù´Â µ¥ À¯¿ëÇÕ´Ï´Ù. ¿¹¸¦ µé¾î:

+
Gui +LastFound
+WinSet, TransColor, %CustomColor% 150
+Gui Show
+

+LastFoundExist [v1.0.43.09+]: ´Ù¸¥ ¿É¼Ç°ú ´Ù¸£°Ô, LastFoundExist´Â °°Àº ÁÙ¿¡ ´Ù¸¥ ¿¬»êÀÌ ¾øÀ» °æ¿ì¿¡¸¸ ÀÎÁöµË´Ï´Ù. +LastFoundExist´Â +LastFound¿Í °°½À´Ï´Ù. ´Ü, âÀÌ ¾ÆÁ÷ Á¸ÀçÇÏÁö ¾ÊÀ» °æ¿ì¿¡µµ »ý¼ºµÇÁö ¾Ê´Â´Ù´Â Á¡Àº ´Ù¸¨´Ï´Ù. ÁÖ¿ä »ç¿ë¹ýÀº ƯÁ¤ GUI âÀÌ Á¸ÀçÇÏ´ÂÁö ŽÁöÇÏ´Â °ÍÀÔ´Ï´Ù. ¿¹¸¦ µé¾î:

+
Gui MyGui:+LastFoundExist
+IfWinExist
+    MsgBox GUI "MyGui" already exists.
+

+MaximizeBox: ÃÖ´ëÈ­ ¹öÆ°À» Á¦¸ñ ¹Ù¿¡ È°¼ºÈ­ÇÕ´Ï´Ù. ÀÌ°ÍÀº ¶Ç ¾Æ·¡ÀÇ ResizeÀÇ ÀϺο¡ Æ÷Ç﵃ ¼öµµ ÀÖ½À´Ï´Ù.

+

MinimizeBox (±âº» °ªÀ¸·Î º¸¿©ÁÜ): ÃÖ¼ÒÈ­ ¹öÆ°À» Á¦¸ñ ¹Ù¿¡ È°¼ºÈ­ ÇÕ´Ï´Ù.

+

+MinSize ±×¸®°í MaxSize [v1.0.44.13+]: âÀÇ ÃÖ´ë ÃÖ¼Ò Å©±â¸¦ °áÁ¤ÇÕ´Ï´Ù. ¿¹¸¦ µé¾î, »ç¿ëÀÚ°¡ ±×ÀÇ ¸ð¼­¸®¸¦ ²ø¾î Å©±â¸¦ ¹Ù²Ü ¶§, ´Ü¾î MinSize ±×¸®°í/¶Ç´Â MaxSize¸¦ ¾Õ¿¡ Á¢µÎ»ç ¾øÀÌ ÁöÁ¤Çϸé âÀÇ ÇöÀç Å©±â¸¦ ÇÑ°è °ªÀ¸·Î »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù (â¿¡ ÇöÀç Å©±â°¡ ¾øÀ¸¸é, Gui Show¸¦ ¸Ç óÀ½ »ç¿ëÇßÀ» ¶§ÀÇ Å©±â¸¦ »ç¿ëÇÕ´Ï´Ù). ´ë¾ÈÀ¸·Î, ³Êºñ¿Í X, ´ÙÀ½¿¡ ³ôÀ̸¦ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù; ¿¹¸¦ µé¾î: Gui +Resize +MinSize640x480. Â÷¿øÀº Çȼ¿ ´ÜÀ§ÀÔ´Ï´Ù. ±×¸®°í âÀÇ Å¬¶óÀ̾ðÆ® ±¸¿ªÀ» ÁöÁ¤ÇÕ´Ï´Ù (ÀÌ ±¸¿ª¿¡¼­ Å׵θ®, Á¦¸ñ ¹Ù, ±×¸®°í ¸Þ´º ¹Ù¸¦ Á¦¿ÜµË´Ï´Ù). °¢ ¼ýÀÚ¸¦ ½ÊÁø¼ö·Î ÁöÁ¤ÇϽʽÿÀ. ½ÊÀ°Áø¼ö°¡ ¾Æ´Õ´Ï´Ù.

+

+³Êºñ ¶Ç´Â ³ôÀ̸¦ »ý·«ÇÏ¸é ±×´ë·Î µÑ ¼ö ÀÖ½À´Ï´Ù (¿¹, +MinSize640x ¶Ç´Â +MinSizex480). °Ô´Ù°¡, Min/MaxSize´Â ¿©·¯ ¹ø ÁöÁ¤ÇØ ÇÑ Â÷¿ø¿¡´Â âÀÇ ÇöÀç Å©±â¸¦ »ç¿ëÇÏ°í ´Ù¸¥ Â÷¿ø¿¡´Â ¸í½ÃÀûÀÎ Å©±â¸¦ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î, +MinSize +MinSize640x´Â ³ôÀÌ¿¡ âÀÇ ÇöÀç Å©±â¸¦ »ç¿ëÇÏ°í ³Êºñ¿¡ 640À» »ç¿ëÇÕ´Ï´Ù.

+

+MinSize ±×¸®°í MaxSize°¡ »ç¿ëµÇÁö ¾ÊÀ¸¸é, ¿î¿µ üÁ¦ÀÇ ±âº» °ªÀÌ »ç¿ëµË´Ï´Ù (ºñ½ÁÇÏ°Ô, Gui -MinSize -MaxSize¸¦ »ç¿ëÇÏ¸é ±âº» °ªÀ¸·Î µÇµ¹¾Æ °¥ ¼ö ÀÖ½À´Ï´Ù). ÁÖÀÇ: âÀº +ResizeÀÌ ÀÖ¾î¾ß »ç¿ëÀÚ¿¡°Ô Å©±â º¯°æÀ» Çã¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù.

+

+OwnDialogs: Gui +OwnDialogs´Â °¢ ¾²·¹µå¸¶´Ù ÁöÁ¤ÇØ¾ß ÇÕ´Ï´Ù (¿¹¸¦ µé¾î ButtonOK ¼­ºê·çƾ). ¿¬ÀÌ¾î º¸¿©Áö´Â MsgBox, InputBox, FileSelectFile, ±×¸®°í FileSelectFolder ´ëÈ­»óÀÚ´Â ±× âÀÌ ¼ÒÀ¯ÇØ¾ß ÇÕ´Ï´Ù. ±×·± ´ëÈ­»óÀÚ´Â ¸ð´ÞÀÌ µÇ´Âµ¥, Ãë¼ÒÇϱâ Àü±îÁö »ç¿ëÀÚ°¡ ±× GUI â°ú »óÈ£ÀÛ¿ëÇÒ ¼ö ¾ø´Ù´Â ¶æÀÔ´Ï´Ù. ´ëÁ¶ÀûÀ¸·Î, ToolTip, Progress, ±×¸®°í SplashImage âÀº ¼ÒÀ¯µÇ¾î ÀÖ´Â °æ¿ì¿¡µµ ¸ð´ÞÀÌ µÇÁö ¾Ê½À´Ï´Ù; ±×³É ±×ÀÇ ¼ÒÀ¯ÀÚº¸´Ù ¾ðÁ¦³ª À§¿¡ ÀÖÀ» »ÓÀÔ´Ï´Ù. ¾î´À °æ¿ìµç, ¼ÒÀ¯µÈ ´ëÈ­»óÀÚ ¶Ç´Â âÀº ¼ÒÀ¯ÇÑ GUI âÀÌ Æı«µÇ¸é ÀÚµ¿À¸·Î Æı«µË´Ï´Ù.

+

+ÀüÇüÀûÀ¸·Î ÀÌ ¼³Á¤À» ´Ù½Ã ²ø ÇÊ¿ä´Â ¾ø½À´Ï´Ù. ¿Ö³ÄÇÏ¸é ´Ù¸¥ ¾²·¹µå¿¡´Â ¿µÇâÀ» ÁÖÁö ¾Ê±â ¶§¹®ÀÔ´Ï´Ù. ±×·¸Áö¸¸, ¾²·¹µå°¡ ¼ÒÀ¯ÇÑ Ã¢°ú ¼ÒÀ¯µÈ ´ëÈ­»óÀÚ¸¦ ¸ðµÎ º¸¿©ÁÙ ÇÊ¿ä°¡ ÀÖ´Ù¸é, ÀÌ ¼³Á¤À» Gui -OwnDialogs¸¦ ÅëÇÏ¿© ²ô¸é µË´Ï´Ù.

+

+âÀ̸§ Á¢µÎ»ç°¡ ÁöÁ¤µÇÁö ¾ÊÀ¸¸é -- ¿¹¸¦ µé¾î Gui MyGui:+OwnDialogs ´ë½Å¿¡ Gui +OwnDialogs¿Í °°ÀÌ »ç¿ëÇϸé -- ¾²·¹µåÀÇ ±âº» âÀÌ ±× ´ëÈ­»óÀÚ¸¦ ¼ÒÀ¯ÇÕ´Ï´Ù.

+

+Owner: +Owner¸¦ »ç¿ëÇÏ¸é ±× Ã¢À» ¶Ç´Ù¸¥ â¿¡°Ô ±Í¼Ó½Ãų ¼ö ÀÖ½À´Ï´Ù. ¼ÒÀ¯µÈ âÀº ±âº»À¸·Î ŽºÅ©¹Ù ¹öÆ°ÀÌ ¾ø½À´Ï´Ù. ±×¸®°í º¸ÀÌ¸é ¾ðÁ¦³ª ±×ÀÇ ¼ÒÀ¯ â À§¿¡ ³ªÅ¸³³´Ï´Ù. ¶ÇÇÑ ±×ÀÇ ¼ÒÀ¯ âÀÌ Æı«µÉ ¶§ ÀÚµ¿À¸·Î Æı«µË´Ï´Ù. +Owner´Â âÀÇ ¼ÒÀ¯ÀÚ¸¦ »ý¼ºÇÑ ÈÄ¿¡ »ç¿ëÇØ¾ß ÇÕ´Ï´Ù. ±×·¯³ª v1.1.05 ÀÌÈÄ´Â ¼ÒÀ¯µÈ âÀÌ »ý¼ºµÇ±â Àü ¶Ç´Â ÈÄ¿¡ »ç¿ëÇصµ µË´Ï´Ù. +Owner¸¦ »ç¿ëÇÏ´Â ¹æ¹ýÀº ´ÙÀ½ ¿¹Á¦¿Í °°ÀÌ µÎ °¡Áö°¡ ÀÖ½À´Ï´Ù:

+ +
Gui, MyGui:+OwnerMyOtherGui  ; MyGui¸¦ MyOtherGui¿¡ ±Í¼Ó½Ãŵ´Ï´Ù.
+Gui, MyGui:+Owner  ; MyGui¸¦ ½ºÅ©¸³Æ®ÀÇ ¸ÞÀΠâ¿¡ ±Í¼Ó½ÃÄÑ Å½ºÅ©¹Ù ¹öÆ°ÀÌ ³ªÅ¸³ªÁö ¸øÇϵµ·Ï ¹æÁöÇÕ´Ï´Ù.
+

+[v1.1.03+]: +Owner ´ÙÀ½¿¡ ¹Ù·Î ±âÁ¸ÀÇ Gui ¹øÈ£³ª À̸§ ¶Ç´Â ÃÖ»óÀ§ ¼öÁØ Ã¢ÀÇ HWND°¡ µû¶ó¿Ã ¼ö ÀÖ½À´Ï´Ù.

+

+ȣȯ¼º ÁÖÀÇ: v1.1.03 ÀÌÈÄ·Î, +Owner´Â WS_CHILD ½ºÅ¸ÀÏÀ» Á¦°ÅÇÏ°í WS_POPUP ½ºÅ¸ÀÏÀ» ¼³Á¤ÇÕ´Ï´Ù. GuiÀÇ ºÎ¸ð âÀ» ¼³Á¤ÇÏ·Á¸é, ½ºÅ©¸³Æ®´Â +Parent ¿É¼ÇÀ» »ç¿ëÇϰųª, ¾Æ´Ï¸é +Owner ¿É¼ÇÀ» »ç¿ëÇÑ ÈÄ¿¡ ÀûÀýÇÑ ½ºÅ¸ÀÏÀ» ¿À¹ö¶óÀ̵å ÇؾßÇÕ´Ï´Ù.

+

+¼ÒÀ¯µÈ â Áß Çϳª°¡ º¸ÀÌ´Â µ¿¾È ¼ÒÀ¯ â°ú »ç¿ëÀÚ°¡ »óÈ£ÀÛ¿ëÇÏÁö ¸øÇϵµ·Ï ¹æÁöÇÏ·Á¸é, Gui +Disabled¸¦ ÅëÇÏ¿© ¼ÒÀ¯ âÀ» ºñÈ°¼ºÈ­ ÇϽʽÿÀ. ³ªÁß¿¡ (¼ÒÀ¯µÈ âÀ» Ãë¼ÒÇϰųª ¼ÒÀ¯µÈ âÀÌ Æı«µÇ´Â ¼ø°£), Gui -Disabled¸¦ ÅëÇÏ¿© ¼ÒÀ¯ âÀ» ´Ù½Ã È°¼ºÈ­ ÇϽʽÿÀ. Ãë¼Ò/Æı« Àü¿¡ ÀÌ·¸°Ô ÇϽʽÿÀ. ±×·¡¾ß ¼ÒÀ¯ âÀÌ ÀÚµ¿À¸·Î ´Ù½Ã È°¼ºÈ­ µË´Ï´Ù.

+

+Parent [v1.1.03+]: +Parent ´ÙÀ½¿¡ ±âÁ¸ÀÇ Gui ¹øÈ£³ª À̸§ ¶Ç´Â âÀ̳ª ÄÜÆ®·ÑÀÇ HWND¸¦ ÁöÁ¤Çϸé ÀÌ Ã¢ÀÇ ºÎ¸ð âÀ¸·Î »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. ±× Gui¸¦ ´Ù½Ã ÃÖ»óÀ§ ¼öÁØ Ã¢À¸·Î ¹Ù²Ù·Á¸é, -Parent¸¦ »ç¿ëÇϽʽÿÀ. ÀÌ ¿É¼ÇÀº âÀÌ »ý¼ºµÈ ÈÄ¿¡µµ ÀÛµ¿ÇÕ´Ï´Ù.

+

+Resize: âÀÇ Å©±â¸¦ º¯°æ °¡´ÉÇϵµ·Ï ¸¸µì´Ï´Ù. ±×¸®°í ±×ÀÇ ÃÖ´ëÈ­ ¹öÆ°À» Á¦¸ñ ¹Ù¿¡ È°¼ºÈ­ ÇÕ´Ï´Ù. ÃÖ´ëÈ­ ¹öÆ°ÀÇ È°¼ºÈ­¸¦ ÇÇÇÏ·Á¸é, +Resize -MaximizeBox¸¦ ÁöÁ¤ÇϽʽÿÀ.

+

+SysMenu (±âº»À¸·Î Á¸Àç): -SysMenu (¸¶À̳ʽº SysMenu)¸¦ ÁöÁ¤ÇÏ¸é ½Ã½ºÅÛ ¸Þ´º¿Í ¾ÆÀÌÄÜÀ» âÀÇ Á»ó ¸ð¼­¸®¿¡¼­ »ý·«ÇÒ ¼ö ÀÖ½À´Ï´Ù. »Ó¸¸ ¾Æ´Ï¶ó Á¦¸ñ ¹ÙÀÇ ÃÖ´ë, ÃÖ¼Ò, ±×¸®°í ´Ý±â ¹öÆ°µµ »ý·«µË´Ï´Ù.

+

+Theme: -Theme¸¦ ÁöÁ¤Çϸé, ±× ´ÙÀ½¿¡ â¿¡ »ý¼ºµÇ´Â ÄÜÆ®·ÑÀº ¸ðµÎ Windows XP À̻󿡼­ °íÀü Å׸¶ÀÇ ¸ð½ÀÀ» °¡Áý´Ï´Ù. ³ªÁß¿¡ Ãß°¡·Î ÇöÀç Å׸¶¸¦ ÁؼöÇÏ´Â ÄÜÆ®·ÑÀ» »ý¼ºÇÏ·Á¸é, +Theme¸¦ ÅëÇÏ¿© ´Ù½Ã ¿ø·¡´ë·Î ¹Ù²Ü ¼ö ÀÖ½À´Ï´Ù. ÁÖÀÇ: ÀÌ ¿É¼ÇÀº Windows XPº¸´Ù ¿À·¡µÈ ¿î¿µ üÁ¦¿¡ ÀÛµ¿ÇÏÁö ¾ÊÀ¸¸ç, XP ÀÚü¿¡µµ °íÀü Å׸¶°¡ ÀÖÀ¸¸é ¾Æ¹« È¿°ú°¡ ¾ø½À´Ï´Ù. ¸¶Áö¸·À¸·Î, ÀÌ ¼³Á¤Àº ÄÜÆ®·Ñ¿¡ °³º°ÀûÀ¸·Î ¹Ù²Ü ¼ö ÀÖ½À´Ï´Ù. »ý¼ºµÉ ¶§ ±×ÀÇ ¿É¼Ç¿¡+Theme ¶Ç´Â -ThemeÀ» ÁöÁ¤ÇÏ¸é µË´Ï´Ù.

+

+ToolWindow: Á¼Àº Á¦¸ñ ¹Ù¸¦ Á¦°øÇÏÁö¸¸, ŽºÅ©¹Ù ¹öÆ°Àº ¾ø½À´Ï´Ù.

+

+(Unnamed Style): Ç÷¯½º³ª ¸¶À̳ʽº »çÀÎ ´ÙÀ½¿¡ ¹Ù·Î ½ÊÁø ¶Ç´Â ½ÊÀ°Áø ½ºÅ¸ÀÏ ¹øÈ£¸¦ ÁöÁ¤ÇϽʽÿÀ.

+

(Unnamed ExStyle): Ç÷¯½º³ª ¸¶À̳ʽº »çÀÎ ´ÙÀ½¿¡ ¹Ù·Î ±âÈ£ E ±×¸®°í ½ÊÁø ¶Ç´Â ½ÊÀ°Áø È®Àå ½ºÅ¸ÀÏ ¹øÈ£¸¦ ÁöÁ¤ÇϽʽÿÀ. ¿¹¸¦ µé¾î, +E0x40000´Â WS_EX_APPWINDOW ½ºÅ¸ÀÏÀ» Ãß°¡ÇÕ´Ï´Ù. ÀÌ ½ºÅ¸ÀÏÀº â¿¡ ŽºÅ©¹Ù ¹öÆ°À» Á¦°øÇÕ´Ï´Ù. ´Ù¸¥ È®Àå ½ºÅ¸ÀÏÀº (º°·Î »ç¿ëµÇÁö ¾Ê±â ¶§¹®¿¡) ¿©±â¿¡ ¹®¼­È­µÇÁö ¾Ê¾ÒÁö¸¸, WS_EX_APPWINDOW¸¦ www.microsoft.com¿¡¼­ °Ë»öÇØ º¸¸é º¸½Ç ¼ö ÀÖ½À´Ï´Ù.

+ + +

+¸Þ´º ¹Ù¸¦ â¿¡ Ãß°¡ÇÕ´Ï´Ù. Menu ¸í·É¾î¸¦ »ç¿ëÇϸé ÀÌ ¸ñÀûÀ¸·Î Æò¹üÇÑ ¸Þ´º¸¦ ¸¸µé ¼ö ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î:

+ +
Menu, FileMenu, Add, &Open`tCtrl+O, MenuFileOpen  ; Ctrl+O¿¡ °üÇÑ °ÍÀº ¾Æ·¡ÀÇ ³íÆòÀ» ÂüÁ¶ÇϽʽÿÀ.
+Menu, FileMenu, Add, E&xit, MenuHandler
+Menu, HelpMenu, Add, &About, MenuHandler
+Menu, MyMenuBar, Add, &File, :FileMenu  ; À§¿¡¼­ »ý¼ºÇÑ µÎ °³ÀÇ ÇÏÀ§ ¸Þ´º¸¦ ºÎÂøÇÕ´Ï´Ù.
+Menu, MyMenuBar, Add, &Help, :HelpMenu
+Gui, Menu, MyMenuBar
+

+À§ÀÇ Ã¹ ÁÙ¿¡, &Open ´ÙÀ½¿¡ (±× »çÀÌ¿¡ ÅÇ ¹®ÀÚ) Ctrl+O°¡ µû¶ó ¿À´Â °ÍÀ» ÁÖ¸ñÇϽʽÿÀ. »ç¿ëÀÚ°¡ ¸Þ´º Ç׸ñÀ» ¼±ÅÃÇÏ´Â ´ë½Å ´©¸¦ Å°º¸µå ´ÜÃàÅ°¸¦ °¡¸®Åµ´Ï´Ù. [v1.1.04+]: ´ÜÃà Å°°¡ Ctrl, Alt ±×¸®°í Shift¿Í °°Àº Ç¥ÁØ ¼ö½Ä Å° À̸§¸¸ »ç¿ëÇϸé, GUI¿¡ ´ëÇÏ¿© ÀÚµ¿À¸·Î Å°º¸µå ´ÜÃàÅ°·Î µî·ÏµË´Ï´Ù. ½Äº° Å°°¡ ¾ø´Â ´ÜÀÏ-¹®ÀÚ ´ÜÃàÅ°´Â ´ë¼Ò¹®ÀÚ¸¦ ±¸º°ÇÏ°í IME ¶Ç´Â Alt+NNNN °°Àº ºñÁ¤»óÁ¤ÀÎ ¼ö´ÜÀ¸·Î Ã˹߽Ãų ¼ö ÀÖ½À´Ï´Ù.

+

+ƯÁ¤ Å° Á¶ÇÕÀÌ ÀÚµ¿À¸·Î ÀÛµ¿ÇÏÁö ¾ÊÀ¸¸é, ¹®¸Æ-°¨Áö ÇÖÅ°¸¦ »ç¿ëÇÏ´Â °ÍÀÌ ÇÊ¿äÇÒ ¼ö ÀÖ½À´Ï´Ù. ±×·¸Áö¸¸, ±×·± ÇÖÅ°´Â ÀüÇüÀûÀ¸·Î Send·Î Ã˹ߵÇÁö ¾ÊÀ¸¸ç Ç¥ÁØ Å°º¸µå ´ÜÃàÅ°º¸´Ù ´Ù¸¥ ½ºÅ©¸³Æ®¿Í °£¼·À» ÀÏÀ¸Å³ °¡´É¼ºÀÌ ´õ ³ô½À´Ï´Ù.

+

+âÀÇ ÇöÀç ¸Þ´º ¹Ù¸¦ Á¦°ÅÇÏ·Á¸é, Gui Menu¸¦ »ç¿ëÇϽʽÿÀ (Áï, ¸¶Áö¸· ¸Å°³º¯¼ö¸¦ »ý·«ÇϽʽÿÀ).

+

+¸Þ´º°¡ ÀÏ´Ü ¸Þ´º ¹Ù·Î »ç¿ëµÈ ÀûÀÌ ÀÖ´Ù¸é, Æ˾÷ ¸Þ´º³ª ÇÏÀ§¸Þ´º·Î »ç¿ëÇؼ­´Â ¾ÈµË´Ï´Ù. ¿Ö³ÄÇÏ¸é ¸Þ´º ¹Ù´Â ³»ºÎÀûÀ¸·Î ´Ù¸¥ Çü½ÄÀ» ¿ä±¸Çϱ⠶§¹®ÀÔ´Ï´Ù (±×·¸Áö¸¸, ÀÌ Á¦ÇÑÀº ¸Þ´º ¹Ù ÀÚü¿¡¸¸ Àû¿ëµÇÁö, ±×ÀÇ ÇÏÀ§ ¸Þ´º¿¡´Â Àû¿ëµÇÁö ¾Ê½À´Ï´Ù). À̸¦ ¿ìȸÇÒ ÇÊ¿ä°¡ ÀÖ´Ù¸é, ¸Þ´º ¹Ù·Î »ç¿ëÇÒ ¸Þ´º¸¦ Çϳª ¸¸µé°í ´Ù¸¥ ¸ñÀûÀ¸·Î »ç¿ëÇÒ ¸Þ´º¸¦ Çϳª ´õ ¶È °°ÀÌ ¸¸µå½Ê½Ã¿À.

+

+ÇöÀç ¸Þ´º ¹Ù·Î »ç¿ëÁßÀÎ ¸Þ´º ¹Ù¿¡ Delete¿Í DeleteAll°ú °°ÀÌ Æı«ÀûÀÎ ¸Þ´º ºÎ-¸í·É¾î¸¦ »ç¿ëÇÏ´Â °ÍÀº Áö¿øÇÏÁö ¾ÊÀ¸¸ç ±×·¯¸é ¿¡·¯ ´ëÈ­»óÀÚ°¡ ³ªÅ¸³³´Ï´Ù (´Ü, UseErrorLevel°¡ °ÜÁ® ÀÖ´Â °æ¿ì´Â ¿¹¿ÜÀÔ´Ï´Ù). + +±×·± ½ÄÀ¸·Î º¯°æÇÏ·Á¸é ´ÙÀ½ ´Ü°è¸¦ µû¸£½Ê½Ã¿À: +

    +
  1. Gui Menu¸¦ ÅëÇÏ¿© ¸Þ´º ¹Ù¸¦ ¶¼¾î³À´Ï´Ù (Áï, MenuNameÀ» »ý·«ÇϽʽÿÀ); +
  2. Æı«ÇÕ´Ï´Ù; +
  3. Gui, Menu, MyMenuBar¸¦ ÅëÇÏ¿© ¸Þ´º ¹Ù¸¦ ´Ù½Ã ºÎÂøÇÕ´Ï´Ù. +
+

+ +

Gui, Hide / Minimize / Maximize / Restore

+

+Gui Hide´Â Gui Cancel¿Í µ¿µîÇÕ´Ï´Ù. ´Ù¸¥ ¼¼ °¡Áö ¸í·É¾î´Â âÀ» (ÇÊ¿äÇϸé) ´Ù½Ã º¸¿©ÁØ ´ÙÀ½ °Å±â¿¡ ÁöÁ¤µÈ ¿¬»êÀ» ¼öÇàÇÕ´Ï´Ù. âÀÌ Á¸ÀçÇÏÁö ¾ÊÀ¸¸é -- ¾Æ¸¶µµ Gui Destroy¸¦ ÅëÇÏ¿© Æı«µÇ¾î ¹ö·È´Ù¸é -- ÀÌ ¸í·É¾îµéÀº ¾Æ¹« È¿°ú°¡ ¾ø½À´Ï´Ù.

+ +

Gui, Flash [, Off]

+

+ŽºÅ©¹ÙÀÇ Ã¢ ¹öÆ°À» ±ôºýÀÔ´Ï´Ù. â Á¦¸ñ ¹Ù¿Í ŽºÅ©¹Ù ¹ÙÆ°ÀÇ »öÀ» µÚÁý¾î ±ô¹ÛÀÔ´Ï´Ù. ¼±ÅÃÀûÀÎ ´Ü¾î OFF ´Â Á¦¸ñ ¹Ù¿Í ŽºÅ© ¹Ù ¹öÆ°ÀÌ ¿ø·¡ÀÇ »öÀ¸·Î µ¹¾Æ¿Àµµ·Ï ¸¸µì´Ï´Ù (±×·¯³ª ½ÇÁ¦ ÇàÀ§´Â OS ¹öÀü¿¡ µû¶ó ´Þ¶óÁú ¼ö ÀÖ½À´Ï´Ù). ¾Æ·¡ÀÇ ¿¹Á¦¿¡¼­, âÀº ¼¼ ¹ø ±ôºýÀÔ´Ï´Ù. ¿Ö³ÄÇÏ¸é ±ôºýÀÓ ÇÑ ½Ö ¸¶´Ù »öÀÌ µÚÁý¾îÁö°í ´ÙÀ½ ¿ø·¡ÀÇ ¸ð½ÀÀ¸·Î º¹±¸µÇ±â ¶§¹®ÀÔ´Ï´Ù:

+
Loop 6
+{
+    Gui Flash
+    Sleep 500  ; ÀÌ °ªÀº ±²ÀåÈ÷ ¹Î°¨ÇÕ´Ï´Ù; ÀÌ °ªÀ» ¹Ù²Ù¸é ¿¹»ó ¸øÇÑ ÇàÀ§¸¦ ¾ß±âÇÒ ¼ö ÀÖ½À´Ï´Ù.
+}
+ +

Gui, GuiName:Default

+

+ÇöÀç ¾²·¹µåÀÇ ±âº» GUI â À̸§À» ¹Ù²ß´Ï´Ù. ÀÌ À̸§Àº â À̸§ÀÌ GuiControl, GuiControlGet, ±×¸®°í Gui ¸í·É¾î ÀÚü¿¡ ÁöÁ¤µÇ¾î ÀÖÁö ¾ÊÀ¸¸é »ç¿ëµË´Ï´Ù. ´ÙÀ½ ¿¹Á¦¿¡¼­, ±âº» â À̸§Àº "MyGui"·Î ¹Ù²ò´Ï´Ù: Gui MyGui:Default. ±âº» â¿¡ °üÇÑ ´õ ÀÚ¼¼ÇÑ Á¤º¸´Â ¾²·¹µåÀÇ ±âº» âÀ» ÂüÁ¶ÇϽʽÿÀ.

+ +

SmartGUI Creator¸¦ ÅëÇÑ À§Ä¡ ¹èÁ¤°ú ·¹À̾ƿô

+

+´ÙÀ½ ¼½¼Ç¿¡¼­ ±â¼úÇÏ´Â ¿É¼ÇµéÀº °£´ÜÇÑ ·¹À̾ƿô¿¡ Àû´çÇÏÁö¸¸, RajatÀÇ SmartGUI Creator¸¦ »ç¿ëÇÏ´Â ÆíÀÌ ´õ ½¬¿ï ¼ö ÀÖ½À´Ï´Ù. ¿Ö³ÄÇÏ¸é ¿ÏÀüÈ÷ ´«À¸·Î º¼ ¼ö Àֱ⠶§¹®ÀÔ´Ï´Ù; Áï,, "´«¿¡ º¸ÀÌ´Â ´ë·Î ¾ò½À´Ï´Ù". SmartGUI Creator´Â ¹«·áÀÌ°í www.autohotkey.com/docs/SmartGUI/À¸·ÎºÎÅÍ ³»·Á ¹ÞÀ» ¼ö ÀÖ½À´Ï´Ù

+ +

ÄÜÆ®·ÑÀÇ À§Ä¡ ¹èÁ¤°ú Å©±â º¯°æ

+

+OptionsÀ¸·ÎºÎÅÍ ¾î¶² Â÷¿ø ±×¸®°í/¶Ç´Â ÁÂÇ¥°¡ »ý·«µÇ¸é, ±× ÄÜÆ®·ÑÀº ÀÌÀü ÄÜÆ®·Ñ¿¡ »ó´ëÀûÀ¸·Î À§Ä¡°¡ °áÁ¤µÇ°í ÀÚµ¿À¸·Î ±×ÀÇ ³»¿ë¿¡ ¸Â°Ô ÀÚ¿¬½º·± Å©±â·Î °áÁ¤µË´Ï´Ù.

+

+´ÙÀ½ ¿É¼ÇÀÌ Áö¿øµË´Ï´Ù:

+

R: ÅؽºÆ® Çà (R2.5¿Í °°ÀÌ ºÎµ¿ ¼Ò¼öÁ¡ ¼ö¸¦ Æ÷ÇÔÇÒ ¼ö ÀÖ½À´Ï´Ù). RÀ» ¼³Á¤ÇÏ´Â °ÍÀÌ H (³ôÀÌ)¸¦ ¼³Á¤ÇÏ´Â °Íº¸´Ù ´õ ¼±È£µË´Ï´Ù. R¿É¼Ç°ú H ¿É¼ÇÀÌ ¸ðµÎ Á¸ÀçÇϸé, RÀÌ ¿ì¼± ¼øÀ§¸¦ °®½À´Ï´Ù. GroupBox¿¡ ´ëÇÏ¿©, ÀÌ ¼³Á¤Àº ¹Ú½º ¾ÈÀÇ °ø°£¿¡ ¿¹¾àµÈ ÄÜÆ®·ÑÀÇ °³¼öÀÔ´Ï´Ù. DropDownLists, ComboBoxes, ±×¸®°í ListBoxes¿¡ ´ëÇÏ¿©, ÄÜÆ®·ÑÀÇ ¸®½ºÆ® ºÎºÐ ¾È¿¡ ÇÑ ¹ø¿¡ º¸ÀÌ´Â Ç׸ñÀÇ °³¼öÀÔ´Ï´Ù (±×·¯³ª Windows XP ÀÌÈÄ¿¡¼­, Á¾Á¾ DropDownList¿Í ComboBoxor¿¡ R ¿É¼Ç°úH ¿É¼ÇÀ» ¸ðµÎ »ý·«ÇÏ´Â °ÍÀÌ ¹Ù¶÷ÁýÇÕ´Ï´Ù. ±×·¡¾ß Æ˾÷ ¸®½ºÆ®°¡ ÀÚµ¿À¸·Î »ç¿ë°¡´ÉÇÑ »ç¿ëÀÚÀÇ ¹ÙÅÁÈ­¸éÀÇ ³ôÀ̸¦ ÀÌ¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù). ´Ù¸¥ ÄÜÆ®·Ñ À¯Çü¿¡ ´ëÇÏ¿©, RÀº ±× ÄÜÆ®·Ñ ¾È¿¡ ½Ã°¢ÀûÀ¸·Î µü ¸Â´Â ÅؽºÆ®ÀÇ ÇàÀÇ °³¼öÀÔ´Ï´Ù.

+

+W: Çȼ¿ ´ÜÀ§ ³Êºñ. »ý·«µÇ¸é, ¾î¶² ÄÜÆ®·Ñ À¯ÇüÀº ³»¿ë¿¡ ±â¹ÝÇÏ¿© ³Êºñ¸¦ ÀÚµ¿À¸·Î °è»êÇÕ´Ï´Ù. ´Ù¸¥ ÄÜÆ®·Ñ À¯ÇüÀº ´ÙÀ½°ú °°ÀÌ ±âº» ³Êºñ°¡ ÀÖ½À´Ï´Ù:
+ ÅÇ ÄÜÆ®·Ñ: + ÇöÀç ±Û²Ã Å©±âÀÇ 30 ¹è, ´õÇϱâ X-¿©¹éÀÇ ¼¼ ¹è.
+¼öÁ÷ Áøµµ ¹Ù: ÇöÀç ±Û²Ã Å©±âÀÇ µÎ ¹è.
+¼öÆò Áøµµ ¹Ù, ¼öÆò ½½¶óÀÌ´õ, µå·Ó´Ù¿î ¸®½ºÆ®, ÄÞº¸¹Ú½º, ¸®½ºÆ®¹Ú½º, ÆíÁý¹Ú½º, ±×¸®°í ÇÖÅ°: ÇöÀç ±Û²Ã Å©±â 15¹è (´Ü, ±×·ì¹Ú½º´Â ¾È ¿©¹éÀ» À§ÇØ 18¹èÀ̹ǷΠÁ¦¿Ü).

+ +

+H: Çȼ¿ ´ÜÀ§ ³ôÀÌ. H¿É¼Ç°ú R¿É¼ÇÀÌ ¸ðµÎ ¾øÀ¸¸é, DropDownLists, ComboBoxes, ListBoxes, ±×¸®°í ºó ¿©·¯-ÁÙ ÆíÁý ÄÜÆ®·ÑÀº ±âº» °ªÀÌ 3 ÇàÀÔ´Ï´Ù; GroupBoxes´Â ±âº» °ªÀÌ 2 ÇàÀÔ´Ï´Ù; ¼öÁ÷ ½½¶óÀÌ´õ¿Í Áøµµ ¹Ù´Â ±âº» °ªÀÌ 5 ÇàÀÔ´Ï´Ù; ¼öÆò ½½¶óÀÌ´õ´Â ±âº» °ªÀÌ 30 Çȼ¿ÀÔ´Ï´Ù (´Ü, µÎ²²°¡ ÁöÁ¤µÇ¾î ÀÖ´Â °æ¿ì´Â Á¦¿Ü); ¼öÆò Áøµµ ¹Ù´Â ±âº» °ªÀÌ ÇöÀç ±Û²ÃÀÇ 2¹èÀÔ´Ï´Ù; ÇÖÅ° ÄÜÆ®·ÑÀº ±âº» °ªÀÌ 1 ÇàÀÔ´Ï´Ù; ±×¸®°í ÅÇ ÄÜÆ®·ÑÀº ±âº»°ªÀÌ 10 ÇàÀÔ´Ï´Ù. ´Ù¸¥ ÄÜÆ®·Ñ À¯Çü¿¡ ´ëÇÏ¿©, ³ôÀÌ´Â ±×ÀÇ ³»¿ë¿¡ ±â¹ÝÇÏ¿© ÀÚµ¿À¸·Î °è»êµË´Ï´Ù.

+

+DropDownLists ±×¸®°í ComboBoxes¿¡ ´ëÇÏ¿©, H´Â ÄÜÆ®·Ñ¿¡¼­ ¾ðÁ¦³ª º¸ÀÌ´Â ºÎºÐ°ú ±×ÀÇ ¸®½ºÆ® ºÎºÐÀ» Á¶ÇÕÇØ ³ôÀ̸¦ °áÁ¤ÇÑ´Ù´Â °ÍÀ» ÁÖ¸ñÇϽʽÿÀ. (±×·¯³ª ³ôÀÌ°¡ ³Ê¹« ³·°Ô ¼³Á¤µÇ´õ¶óµµ, Àû¾îµµ ÇϳªÀÇ Ç׸ñÀº ¸®½ºÆ®¿¡ ¾ðÁ¦³ª º¸ÀÏ °ÍÀÔ´Ï´Ù). ¶ÇÇÑ, ¸ðµç À¯ÇüÀÇ ÄÜÆ®·Ñ¿¡ ´ëÇÏ¿©, H ¿É¼Çº¸´Ù R ¿É¼ÇÀ» ÅëÇÏ¿© ¼ýÀÚ¸¦ ÁöÁ¤ÇÏ´Â °ÍÀÌ ´õ ÁÁ½À´Ï´Ù. ¿Ö³ÄÇϸé ÄÜÆ®·ÑÀÌ ºÎºÐÀûÀ¸·Î ºÒ¿ÏÀüÇÏ°Ô ÅؽºÆ®¸¦ º¸¿©ÁÖÁö ¸øÇÏ°Ô ¹æÁöÇϱ⠶§¹®ÀÔ´Ï´Ù.

+

+wp+n, hp+n, wp-n, hp-n (¿©±â¿¡¼­ nÀº ¼ýÀÚÀÓ)¸¦ »ç¿ëÇϸé ÄÜÆ®·ÑÀÇ ³Êºñ¿Í ³ô½Ã¸¦ ÀÌÀü¿¡ Ãß°¡µÈ ÄÜÆ®·ÑÀÇ ³Êºñ¿Í ³ôÀÌ¿Í °°°Ô ¼³Á¤ÇÒ ¼ö ÀÖ½À´Ï´Ù. ¼±ÅÃÀûÀ¸·Î Ç÷¯½º³ª ¸¶À̳ʽº »çÀÎÀ» »ç¿ëÇØ Á¶ÀýÇÏ¸é µË´Ï´Ù. ¿¹¸¦ µé¾î, wp´Â ÀÌÀü ÄÜÆ®·ÑÀÇ ³Êºñ·Î ÄÜÆ®·ÑÀÇ ³Êºñ¸¦ ¼³Á¤ÇÕ´Ï´Ù. ±×¸®°í wp-50Àº ÀÌÀü ÄÜÆ®·ÑÀÇ ³Êºñº¸´Ù 50 ÀÛ°Ô ¼³Á¤ÇÕ´Ï´Ù.

+

+X: X-À§Ä¡. ¿¹¸¦ µé¾î, x0 y0¸¦ ÁöÁ¤Çϸé ÄÜÆ®·ÑÀ» âÀÇ Å¬¶óÀ̾ðÆ® ±¸¿ªÀÇ Á»ó ¸ð¼­¸®¿¡ ¹èÄ¡ÇÕ´Ï´Ù. Ŭ¶óÀ̾ðÆ® ±¸¿ªÀº Á¦¸ñ ¹Ù¿Í ¸Þ´º ¹Ù ¾Æ·¡¿¡ ÀÖ½À´Ï´Ù. X´Â »ý·«µÇ¾úÁö¸¸ Y´Â ÁöÁ¤µÇ¾ú´Ù¸é, ÄÜÆ®·ÑÀº ÀÌÀü¿¡ Ãß°¡µÈ ¸ðµç ÄÜÆ®·ÑÀÇ ¿À¸¥ÂÊ¿¡ ¹èÄ¡µË´Ï´Ù. ÀÌ°ÍÀ» »õ·Î¿î "¿­"ÀÇ ½ÃÀÛÀ¸·Î °£ÁÖÇÒ ¼ö ÀÖ½À´Ï´Ù.

+

+Y: Y-À§Ä¡. Y°¡ »ý·«µÇ¾úÁö¸¸ X´Â ÁöÁ¤µÇ¾ú´Ù¸é, ±× ÄÜÆ®·ÑÀº ÀÌÀü¿¡ Ãß°¡µÈ ¸ðµç ÄÜÆ®·ÑÀÇ ¾Æ·¡¿¡ ¹èÄ¡µË´Ï´Ù. ÀÌ°ÍÀ» »õ "Çà"ÀÇ ½ÃÀÛÀ¸·Î °£ÁÖÇÒ ¼ö ÀÖ½À´Ï´Ù.

+

+X³ª Y¸¦ »ý·«ÇÏ¸é ¾ÕÀ¸·Î ÄÜÆ®·ÑÀÇ Å©±â³ª ±Û²ÃÀ» ¹Ù²Ü¶§ ±×¿¡ µü ¸Â°Ô GUI ·¹À̾ƿôÀ» Áöµ¿À¸·Î Á¶ÀýÇÒ ¼ö ÀÖÀ¸¹Ç·Î À¯¿ëÇÕ´Ï´Ù. +´ëÁ¶ÀûÀ¸·Î, ¸Å ÄÜÆ®·Ñ¸¶´Ù Àý´ë À§Ä¡¸¦ ÁöÁ¤ÇÏ¸é ¼öÀÛ¾÷À¸·Î ¾Æ·¡¿¡ ÀÖ´Â ¸ðµç ÄÜÆ®·ÑÀÇ À§Ä¡¸¦ È®´ëµÈ ¶Ç´Â Ãà¼ÒµÈ ÄÜÆ®·ÑÀÇ ¿À¸¥ÂÊÀ¸·Î À̵¿ÇØ¾ß ÇÕ´Ï´Ù.

+

+X¿Í Y°¡ ¸ðµÎ »ý·«µÇ¸é, ÄÜÆ®·ÑÀº Ç¥ÁØ Æеù °Å¸®¸¦ »ç¿ëÇÏ¿© ÀÌÀü ÄÜÆ®·ÑÀÇ ¾Æ·¡¿¡ ¹èÄ¡µË´Ï´Ù.

+

+X¿Í Y¿¡ ´ëÇÏ¿©, ¼±ÅÃÀûÀÎ Ç÷¯½º »çÀÎÀ» Æ÷ÇÔ½ÃÅ°¸é ÀÌÀü¿¡ Ãß°¡µÈ ÄÜÆ®·ÑÀÇ ¿À¸¥ÂÊ ¶Ç´Â ¾Æ·¡ÂÊ °¡ÀåÀÚ¸®¿¡ (°¢°¢) »ó´ëÀûÀ¸·Î ÄÜÆ®·ÑÀ» ¹èÄ¡ÇÒ ¼ö ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î, Y+10À» ÁöÁ¤Çϸé Ç¥ÁØ Æеù °Å¸®¸¦ »ç¿ëÇÏ´Â ´ë½Å¿¡ ÀÌÀü ÄÜÆ®·ÑÀÇ 10 Çȼ¿ ¾Æ·¡¿¡ ÄÜÆ®·ÑÀ» ¹èÄ¡ÇÕ´Ï´Ù. ºñ½ÁÇÏ°Ô, X+10À» ÁöÁ¤Çϸé ÀÌÀü ÄÜÆ®·ÑÀÇ 10 Çȼ¿ ¿À¸¥ÂÊÀ¸·Î ÄÜÆ®·ÑÀ» ¹èÄ¡ÇÕ´Ï´Ù. X-10°ú °°Àº À½¼ö´Â Àý´ë À§Ä¡ ÁöÁ¤À» À§ÇØ ¿¹¾àµÇ¾î ÀÖÀ¸¹Ç·Î, À½ÀÇ ¿ÀÇÁ¼ÂÀ» »ç¿ëÇÏ·Á¸é, ±× ¾Õ¿¡ Ç÷¯½º »çÀÎÀ» Æ÷ÇÔÇϽʽÿÀ. ¿¹¸¦ µé¾î: X+-10.

+

+[v1.1.16+]: X+¿Í Y+¿¡ ´ëÇÏ¿©, ±âÈ£ MÀ» âÀÇ ÇöÀç ¿©¹é¿¡ ´ë¾ÈÀ¸·Î »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î, x+mÀº ÀÌÀü ÄÜÆ®·ÑÀÇ ¿À¸¥ÂÊ °¡ÀåÀÚ¸®¿¡´Ù Ç¥ÁØ Æеù °Å¸®¸¦ »ç¿ëÇÕ´Ï´Ù. xp y+m´Â ÀÌÀü ÄÜÆ®·ÑÀÇ ¾Æ·¡¿¡ ÄÜÆ®·ÑÀ» ¹èÄ¡ÇÕ´Ï´Ù. ¹Ý¸é¿¡ X ÁÂÇ¥¸¸ ÁöÁ¤ÇÏ¸é º¸Åë ±âº»°ªÀ¸·Î yp¸¦ ¶æÇÕ´Ï´Ù.

+

+xp+n, yp+n, xp-n, yp-n (¿©±â¿¡¼­ n´Â ¼ýÀÚÀÓ)´Â ÀÌÀü ÄÜÆ®·ÑÀÇ Á»ó ¸ð¼­¸®¿¡ »ó´ëÀûÀ¸·Î ÄÜÆ®·ÑÀ» ¹èÄ¡ÇÏ´Â µ¥ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. Á¾Á¾ GroupBox ¾È¿¡ ÄÜÆ®·ÑµéÀ» ½Î ³ÖÀ» ¶§ À¯¿ëÇÕ´Ï´Ù.

+

+xm°ú ymÀ» »ç¿ëÇϸé âÀÇ Á嫆 ±×¸®°í »ó´Ü ¿©¹é¿¡ (°¢°¢) ÄÜÆ®·ÑÀ» ¹èÄ¡ÇÒ ¼ö ÀÖ½À´Ï´Ù (ÀÌ µÎ ¿É¼Ç ´ÙÀ½¿¡ Ç÷¯½º/¸¶À̳ʽº »çÀΰú ¼ýÀÚ°¡ Çϳª µû¶ó¿Ã ¼öµµ ÀÖ½À´Ï´Ù). x-À§Ä¡ ¾øÀÌ ymÀ» ÁöÁ¤Çϸé, ÄÜÆ®·ÑÀº ¼öÁ÷À¸·Î »ó´Ü ¿©¹é¿¡ ¹èÄ¡µÇÁö¸¸ ¼öÆòÀ¸·Î´Â ÀÌÀü¿¡ Ãß°¡µÈ ¸ðµç ÄÜÆ®·ÑÀÇ ¿À¸¥ÂÊ¿¡ ¹èÄ¡µË´Ï´Ù. ÀÌ°ÍÀ» »õ·Î¿î "¿­"ÀÇ ½ÃÀÛÀ¸·Î °£ÁÖÇÒ ¼ö ÀÖ½À´Ï´Ù. ±× ¹Ý´ë·Î ¿ª½Ã ¸¶Âù°¡ÁöÀÔ´Ï´Ù.

+

+xs ±×¸®°í ys: ÀÌ ¿É¼ÇµéÀº xm ±×¸®°í ym°ú ºñ½ÁÇÏÁö¸¸ ÀÌÀü¿¡ ±×ÀÇ ¿É¼Ç¿¡ ´Ü¾î SectionÀ» °¡Áö°í ÄÜÆ®·ÑÀ» Ãß°¡ÇÒ ¶§ ÀúÀåµÈ ÁÂÇ¥¸¦ ÂüÁ¶ÇÕ´Ï´Ù (âÀÇ Ã¹ ¹ø° ÄÜÆ®·ÑÀº ¾ðÁ¦³ª »õ ¼½¼ÇÀ» ½ÃÀÛÇÕ´Ï´Ù. ±×ÀÇ ¿É¼Ç¿¡ ±× ´Ü¾î°¡ ÁöÁ¤µÇ¾î ÀÖÁö ¾Ê¾Æµµ »ó°üÀÌ ¾ø½À´Ï´Ù). + +x-À§Ä¡ ¾øÀÌ ys¸¦ ÁöÁ¤Çϸé, ÄÜÆ®·ÑÀº ÀÌÀü¿¡ ÀúÀåµÈ y-À§Ä¡¿¡ ¹èÄ¡µÇÁö¸¸, °¡Àå ÃÖ±Ù¿¡ »ç¿ëµÈ ´Ü¾î Section ¶§¹®¿¡, Ãß°¡µÈ ¸ðµç ÄÜÆ®·ÑÀÇ ¿À¸¥ÂÊ¿¡ ¹èÄ¡µË´Ï´Ù ; ÀÌ°ÍÀ» ±× ¼½¼Ç ¾È¿¡¼­ »õ ¿­ÀÌ ½ÃÀÛÇÑ °ÍÀ¸·Î °£ÁÖÇصµ ÁÁ½À´Ï´Ù. ¿¹¸¦ µé¾î:

+ +
gui, add, edit, w600  ; »ó´çÈ÷ ³ÐÀº ÆíÁý ÄÜÆ®·ÑÀ» âÀÇ »ó´Ü¿¡ Ãß°¡ÇÕ´Ï´Ù.
+gui, add, text, section, First Name:  ; ÀÌ ÄÜÆ®·ÑÀÇ À§Ä¡¸¦ ÀúÀåÇÏ°í »õ ¼½¼ÇÀ» ½ÃÀÛÇÕ´Ï´Ù.
+gui, add, text,, Last Name:
+gui, add, edit, ys  ; ÀÌ ¼½¼Ç ¾È¿¡¼­ »õ ¿­À» ½ÃÀÛÇÕ´Ï´Ù.
+gui, add, edit
+gui, show
+

+À§ÀÇ ¹Ý´ëµµ (y-À§Ä¡¸¦ »ý·«ÇÏ°í xs¸¸ ÁöÁ¤Çصµ) ¿ª½Ã ¸¶Âù°¡ÁöÀÔ´Ï´Ù .

+

+xs¿Í ys ´ÙÀ½¿¡ ¼±ÅÃÀûÀ¸·Î Ç÷¯½º/¸¶À̳ʽº »çÀΰú ¼ýÀÚ Çϳª°¡ µû¶ó¿Ã ¼öµµ ÀÖ½À´Ï´Ù. ¶ÇÇÑ, ´Ü¾î Section°ú xs/ys¸¦ µÑ ´Ù ÄÜÆ®·ÑÀÇ ¿É¼Ç¿¡ ÁöÁ¤ÇÏ´Â °Íµµ °¡´ÉÇÕ´Ï´Ù; ÀÌ·¸°Ô Çϸé ÀÚ±â Àڽſ¡ ´ëÇؼ­´Â ÀÌÀü ¼½¼ÇÀ» »ç¿ëÇÏÁö¸¸ µÚÀÌÀº ÄÜÆ®·Ñ¿¡´Â »õ ¼½¼ÇÀ» È®¸³ÇÕ´Ï´Ù.

+ +

»ç¿ëÀÚ ÀÔ·ÂÀ» ÀúÀåÇÏ°í ±×¿¡ ¹ÝÀÀÇϱâ

+

+V: º¯¼ö. º¯¼ö¸¦ ÄÜÆ®·Ñ¿¡ ¿¬°ü Áþ½À´Ï´Ù. ±âÈ£ V ´ÙÀ½¿¡ ¹Ù·Î, Àü¿ª º¯¼öÀÇ À̸§À» ÁöÁ¤ÇϽʽÿÀ (¶Ç´Â Àü¿ª º¯¼ö¸¦ °¡¸®Å°´Â ByRef Áö¿ª º¯¼ö, ¶Ç´Â v1.0.46.01+¿¡¼­´Â Á¤Àû º¯¼ö). ¿¹¸¦ µé¾î, vMyEdit¸¦ ÁöÁ¤Çϸé Gui Submit ¸í·É¾î°¡ »ç¿ëµÉ ¶§¸¶´Ù ÄÜÆ®·ÑÀÇ ³»¿ëÀÌ º¯¼ö MyEdit¿¡ ÀúÀåµË´Ï´Ù. ÄÜÆ®·ÑÀÌ ÀÔ·ÂÀÌ ºÒ°¡´ÉÇÏ´õ¶óµµ -- Text ÄÜÆ®·ÑÀ̳ª GroupBox ÄÜÆ®·ÑÀÌ¶óµµ --º¯¼ö¸¦ °Å±â¿¡ ¿¬°üÁöÀ¸¸é ¿©ÀüÈ÷ µµ¿òÀÌ µË´Ï´Ù. ¿Ö³ÄÇÏ¸é º¯¼öÀÇ À̸§ÀÌ ÄÜÆ®·ÑÀÇ À¯ÀÏÇÑ ½Äº°ÀÚ·Î ±â¿©ÇÒ ¼ö À־ GuiControl, GuiControlGet, ±×¸®°í A_GuiControl¿¡ »ç¿ëÇÒ ¼ö Àֱ⠶§¹®ÀÔ´Ï´Ù. ÁÖÀÇ: Gui SubmitÀº ÀÔ·Â ºÒ°¡´ÉÇÑ ÄÜÆ®·ÑÀÇ (¿¹¸¦ µé¾îText ±×¸®°í GroupBox) º¯¼öÀÇ ³»¿ëÀº ¹°·ÐÀÌ°í, ´ÙÀ½ ¼½¼Ç¿¡ ¹®¼­È­µÈ °Íµéµµ º¯°æÇÏÁö ¸øÇÕ´Ï´Ù (¿¹¸¦ µé¾î ListView ±×¸®°í TreeView).

+

+G: Gosub (g-label). »ç¿ëÀÚ°¡ ÄÜÆ®·ÑÀ» Ŭ¸¯Çϰųª º¯°æÇÒ ¶§ ÇÔ¼öÀÇ ¼­ºê·çƾÀ» ÀÚµ¿À¸·Î ±âµ¿ÇÕ´Ï´Ù. ±âÈ£ G ´ÙÀ½¿¡ °ð¹Ù·Î, ½ÇÇàÇÒ ¶óº§ÀÇ À̸§À» ÁöÁ¤ÇϽʽÿÀ. gCancelÀº ÁöÁ¤ÇÏ¸é ¹¬½ÃÀûÀÎ Gui CancelÀ» ½ÇÇàÇÒ ¼ö ÀÖ½À´Ï´Ù (±×·¯³ª À̸§ÀÌ "Cancel"ÀÎ ¶óº§ÀÌ ½ºÅ©¸³Æ®¿¡ Á¸ÀçÇϸé, ´ë½Å¿¡ ±× ¶óº§ÀÌ ½ÇÇàµË´Ï´Ù). ¼­ºê·çƾÀº ´ÙÀ½ÀÇ ³»Àå º¯¼öµéÀ» ÂüÁ¶ÇÒ ¼öµµ ÀÖ½À´Ï´Ù: A_Gui, A_GuiControl, A_GuiEvent, ±×¸®°í A_EventInfo.

+

+[v1.1.20+]:À¯È¿ÇÑ ¶óº§ À̸§ÀÌ ¾Æ´Ï¸é, ÇÔ¼ö À̸§À» ´ë½Å »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. ´Ù¸¥ ¹æ¹ýÀ¸·Î, GuiControl ¸í·É¾î¸¦ »ç¿ëÇϸé ÇÔ¼ö °´Ã¼¸¦ ÄÜÆ®·Ñ¿¡ ¿¬°üÁöÀ» ¼ö ÀÖ½À´Ï´Ù. ÇÔ¼ö´Â ¼±ÅÃÀûÀ¸·Î ´ÙÀ½ ¸Å°³º¯¼ö¸¦ ¹ÞÀ» ¼ö ÀÖ½À´Ï´Ù (¿©±â¿¡¼­ gCtrlEventÀº ÇÔ¼ö¸¦ ¼³Á¤ÇÕ´Ï´Ù):

+ +
CtrlEvent(CtrlHwnd, GuiEvent, EventInfo, ErrorLevel)
+

+¸Å°³º¯¼öÀÇ Àǹ̴ ÄÜÆ®·ÑÀÇ À¯Çü¿¡ µû¶ó ´Ù¸¨´Ï´Ù.

+ +

Controls: °øÅë ½ºÅ¸ÀÏ°ú ±âŸ ¿É¼Ç

+

+ÁÖÀÇ: ¾Õ¿¡ ºÎÈ£°¡ ¾øÀ¸¸é, Ç÷¯½º »çÀÎÀÌ ÀÖ´Ù°í °£Áֵ˴ϴÙ; ¿¹¸¦ µé¾î, WrapÀº +Wrap¿Í °°½À´Ï´Ù. ´ëÁ¶ÀûÀ¸·Î, -Wrap´Â ´Ü¾î-³Ñ±â±â Ư¼ºÀ» Á¦°ÅÇÕ´Ï´Ù.

+

+AltSubmit: º¸Á¶ÀûÀÎ Á¦Ãâ ¹æ¹ýÀ» »ç¿ëÇÕ´Ï´Ù. DropDownList, ComboBox, ±×¸®°í ListBox¿¡ ´ëÇÏ¿© ÀÌ ¸Å°³º¯¼ö´Â Gui Submit ¸í·É¾î°¡ ÅؽºÆ®°¡ ¾Æ´Ï¶ó ¼±ÅÃµÈ Ç׸ñÀÇ À§Ä¡¸¦ ÀúÀåÇϵµ·Ï ¸¸µì´Ï´Ù. Ç׸ñÀÌ ¼±ÅõÇÁö ¾ÊÀ¸¸é, ComboBox´Â ¿©ÀüÈ÷ ±×ÀÇ ÆíÁý Çʵ忡 ÅؽºÆ®¸¦ ÀúÀåÇÕ´Ï´Ù; ºñ½ÁÇÏ°Ô, DropDownList ¶Ç´Â ListBox´Â ¿©ÀüÈ÷ ±×ÀÇ Ãâ·Â º¯¼ö¸¦ ºñ¿ó´Ï´Ù. ÁÖÀÇ: AltSubmit´Â ¶Ç ±×·± ÄÜÆ®·ÑÀÇ ³»¿ëÀ» ¿­¶÷ÇÒ ¶§ GuiControlGetÀÇ ÇàÀ§¿¡µµ ¿µÇâÀ» ¹ÌĨ´Ï´Ù.

+

+C: ÅؽºÆ®ÀÇ »ö±ò (¹öÆ°¿¡´Â ¾Æ¹« ¿µÇâÀÌ ¾ø½À´Ï´Ù). ±âÈ£ C ´ÙÀ½¿¡ °ð¹Ù·Î »ö À̸§ (Ä÷¯ Â÷Æ® ÂüÁ¶) ¶Ç´Â RGB °ªÀ» ÁöÁ¤ÇϽʽÿÀ (0x Á¢µÎ»ç´Â ¼±ÅÃÀûÀÓ). ¿¹Á¦: cRed, cFF2211, c0xFF2211, cDefault.

+

+Disabled: ÀÔ·Â °¡´ÉÇÑ ÄÜÆ®·ÑÀÌ ºñÈ°¼º »óÅ·Π³ªÅ¸³ªµµ·Ï ¸¸µì´Ï´Ù. ±×·¡¼­ »ç¿ëÀÚ´Â ±×ÀÇ ³»¿ë¿¡ ÃÊÁ¡À» µÎ°Å³ª º¯°æÇÒ ¼ö ¾ø½À´Ï´Ù. GuiControl Enable¸¦ »ç¿ëÇÏ¸é ³ªÁß¿¡ È°¼ºÈ­ ÇÒ ¼ö ÀÖ½À´Ï´Ù. ÁÖÀÇ: Edit ÄÜÆ®·ÑÀ» Àбâ Àü¿ëÀ¸·Î ¸¸µé·Á¸é, ´ë½Å¿¡ ¹®ÀÚ¿­ ReadOnly¸¦ ÁöÁ¤ÇϽʽÿÀ. ¶ÇÇÑ, ´Ü¾î Disabled´Â ¼±ÅÃÀûÀ¸·Î ´ÙÀ½¿¡ ¹Ù·Î 0 ¶Ç´Â 1ÀÌ µû¶ó¿Í ½ÃÀÛ »óŸ¦ ³ªÅ¸³¾ ¼ö ÀÖ½À´Ï´Ù (0À̸é È°¼ºÈ­ 1ÀÌ¸é ºñÈ°¼ºÈ­¸¦ ³ªÅ¸³À´Ï´Ù). ´Ù¸¥ ¸»·Î, Disabled¿Í Disabled%VarContainingOne%´Â °°½À´Ï´Ù.

+

+Hidden: ÄÜÆ®·ÑÀº óÀ½¿¡ ¾È º¸ÀÔ´Ï´Ù. GuiControl Show¸¦ »ç¿ëÇÏ¸é ³ªÁß¿¡ º¸¿©ÁÙ ¼ö ÀÖ½À´Ï´Ù. ´Ü¾î HiddenÀº ¼±ÅÃÀûÀ¸·Î ´ÙÀ½¿¡ °ð¹Ù·Î 0 ¶Ç´Â 1ÀÌ µû¶ó¿Í ½ÃÀÛ »óŸ¦ ³ªÅ¸³¾ ¼ö ÀÖ½À´Ï´Ù (0ÀÌ¸é º¸ÀÌ°í 1ÀÌ¸é ¼û½À´Ï´Ù). ´Ù¸¥ ¸»·Î, Hidden°ú Hidden%VarContainingOne%´Â °°½À´Ï´Ù.

+

+Left: ÄÜÆ®·ÑÀÇ ³»¿ëÀ» ±×ÀÇ °¡´ÉÇÑ ³Êºñ ¾È¿¡¼­ ¿ÞÂÊÀ¸·Î Á¤·ÄÇÕ´Ï´Ù. ÀÌ ¿É¼ÇÀº ´ÙÀ½ ÄÜÆ®·Ñ¿¡ ¿µÇâÀ» ¹ÌĨ´Ï´Ù: Text, Edit, Button, Checkbox, Radio, UpDown, Slider, Tab, Tab2, GroupBox, DateTime.

+

+Right: ÄÜÆ®·ÑÀÇ ÅؽºÆ®¸¦ ±×ÀÇ °¡´ÉÇÑ ³Êºñ ¾È¿¡¼­ ¿À¸¥ÂÊÀ¸·Î Á¤·ÄÇÕ´Ï´Ù. üũ¹Ú½º¿Í ¶óµð¿À¹öÆ°¿¡ ´ëÇÏ¿©, ÀÌ´Â ¶Ç ¹Ú½º ÀÚ½ÅÀ» ÄÜÆ®·ÑÀÇ ¿ÞÂÊÀÌ ¾Æ´Ï¶ó ¿À¸¥ÂÊ¿¡ ¹èÄ¡ÇÕ´Ï´Ù. ÀÌ ¿É¼ÇÀº ´ÙÀ½ ÄÜÆ®·Ñ¿¡ ¿µÇâÀ» ÁÝ´Ï´Ù: Text, Edit, Button, Checkbox, Radio, UpDown, Slider, Tab, Tab2, GroupBox, DateTime, Link.

+

+Center: ÄÜÆ®·ÑÀÇ ÅؽºÆ®¸¦ ±×ÀÇ °¡´ÉÇÑ ³Êºñ ¾È¿¡¼­ °¡¿îµ¥·Î Á¤·ÄÇÕ´Ï´Ù. ÀÌ ¿É¼ÇÀº ´ÙÀ½ ÄÜÆ®·Ñ¿¡ ¿µÇâÀ» ÁÝ´Ï´Ù: Text, Edit, Button, Checkbox, Radio, Slider, GroupBox.

+

+Section: »õ ¼½¼ÇÀ» ½ÃÀÛÇÏ°í ³ªÁß¿¡ À§¿¡ ±â¼úÇÑ xs¿Í ys À§Ä¡ ÁöÁ¤ ¿É¼Ç¿¡ »ç¿ëÇϱâ À§ÇØ ÀÌ ÄÜÆ®·ÑÀÇ À§Ä¡¸¦ ÀúÀåÇÕ´Ï´Ù.

+

+Tabstop: -TabstopÀ» (Áï, ¸¶À̳ʽº ÅǽºÅ¾) »ç¿ëÇÏ¸é »ç¿ëÀÚ°¡ TAB Å°¸¦ ´­·¯ Ç×ÇØÇÒ ¶§. ÀÔ·Â °¡´É ÄÜÆ®·ÑÀ» °Ç³Ê¶Û ¼ö ÀÖ½À´Ï´Ù.

+

+Wrap: ±×ÀÇ °¡´ÉÇÑ ³Êºñ ¾È¿¡¼­ ÄÜÆ®·ÑÀÇ ³»¿ë¿¡ ´Ü¾î-³Ñ±â±â¸¦ È°¼ºÈ­ÇÕ´Ï´Ù. °ÅÀÇ ¸ðµç ÄÜÆ®·Ñ À¯ÇüÀÌ ´Ü¾î-Áٳѱâ±â¸¦ ÄÑ°í ½ÃÀÛÇϱ⠶§¹®¿¡, ´Ü¾î ³Ñ±â±â¸¦ ²ô·Á¸é -Wrap¸¦ »ç¿ëÇսÿÀ.

+

+VScroll: ÀÌ·± À¯ÇüÀÇ ÄÜÆ®·Ñ¿¡ ÀûÀýÇÏ¸é ¼öÁ÷ ½ºÅ©·Ñ ¹Ù¸¦ Á¦°øÇÕ´Ï´Ù.

+

+HScroll: ÀÌ·± À¯ÇüÀÇ ÄÜÆ®·Ñ¿¡ ÀûÀýÇÏ¸é ¼öÆò ½ºÅ©·Ñ ¹Ù¸¦ Á¦°øÇÕ´Ï´Ù. ÀÌ ¹®´ÜÀÇ ³ª¸ÓÁö´Â ListBox¿¡¸¸ Àû¿ëµË´Ï´Ù. ¼öÆò ½ºÅ©·Ñ ³Êºñ´Â ¸®½ºÆ® ¹Ú½º ³ÊºñÀÇ 3 ¹è°¡ ±âº»°ªÀÔ´Ï´Ù. ´Ù¸¥ ½ºÅ©·Ñ ³Êºñ¸¦ ÁöÁ¤ÇÏ·Á¸é, ¼ýÀÚ¸¦ ´Ü¾î HScroll ¹Ù·Î ´ÙÀ½¿¡ ÁöÁ¤ÇϽʽÿÀ. ¿¹¸¦ µé¾î, HScroll500Àº ¸®½ºÆ®¹Ú½º ¾È¿¡¼­ 500 Çȼ¿ÀÇ ¼öÆò ½ºÅ©·ÑÀ» Çã¿ëÇÕ´Ï´Ù. ±×·¸Áö¸¸, ÁöÁ¤µÈ ½ºÅ©·Ñ ³Êºñ°¡ ¸®½ºÆ®¹Ú½ºÀÇ ³Êºñº¸´Ù ÀÛÀ¸¸é, ½ºÅ©·Ñ ¹Ù°¡ º¸ÀÌÁö ¾Ê½À´Ï´Ù (±×·¸Áö¸¸ Á¶±ÝÀ̶óµµHScrollÀÌ º¸¿©¾ß ¼öÆò ½ºÅ©·Ñ¹Ù¸¦ ³ªÁß¿¡ GuiControl, +HScroll500, MyScrollBar¸¦ ÅëÇÏ¿© Ãß°¡ÇÒ ¼ö ÀÖ½À´Ï´Ù. ±×·¸Áö ¾ÊÀ¸¸é ºÒ°¡´ÉÇÕ´Ï´Ù).

+ +

ÄÜÆ®·Ñ: Àß ¾²ÀÌÁö ¾Ê´Â ½ºÅ¸ÀÏ°ú ¿É¼Ç

+

+BackgroundTrans: Åõ¸í ¹è°æÀ» »ç¿ëÇÕ´Ï´Ù. ÄÜÆ®·ÑÀÌ ÅؽºÆ® ±×¸² ¶Ç´Â ±×·ì¹Ú½º Äܵå·Ñ µÚ¿¡ À־ ¶Õ°í º¼ ¼ö ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î, ±×¸² ÄÜÆ®·Ñ À§¿¡ º¸¿©Áö´Â Åõ¸íÇÑ ÅؽºÆ® ÄÜÆ®·ÑÀº ÅؽºÆ®¸¦ ±×¸²ÀÇ ÀϺκÐó·³ º¸ÀÌ°Ô ¸¸µì´Ï´Ù. GuiControl +Background¸¦ »ç¿ëÇϸé ÀÌ ¿É¼ÇÀ» ³ªÁß¿¡ Á¦°ÅÇÒ ¼ö ÀÖ½À´Ï´Ù. Åõ¸í À̹ÌÁö¿¡ °üÇÑ ´õ ÀÚ¼¼ÇÑ Á¤º¸´Â Picture ÄÜÆ®·ÑÀÇ AltSubmit ¼½¼ÇÀ» ÂüÁ¶ÇϽʽÿÀ. +¾Ë·ÁÁø ÇÑ°è: BackgroundTrans´Â ListView°¡ µé¾î ÀÖ´Â Tab ÄÜÆ®·Ñ ¾ÈÀÇ ÄÜÆ®·Ñ¿¡´Â Á¦´ë·Î ÀÛµ¿ÇÏÁö ¾ÊÀ» ¼ö ÀÖ½À´Ï´Ù.

+

+-Background (Áï, ¸¶À̳ʽº ¹è°æ): Ç¥ÁØ ¹è°æ»öÀ» »ç¿ëÇÕ´Ï´Ù. Gui Color ¸í·É¾î·Î ¼³Á¤µÈ »öÀ» »ç¿ëÇÏÁö ¾Ê½À´Ï´Ù. ÀÌ°ÍÀº ÁÖ·Î Tab ÄÜÆ®·ÑÀÌ Ã¢ »öÀÌ ¾Æ´Ï¶ó ±×ÀÇ Ç¥ÁØ »öÀ» °¡Áöµµ·Ï ¸¸µå´Â µ¥ »ç¿ëµË´Ï´Ù. GuiControl +Background¸¦ »ç¿ëÇÏ¸é ³ªÁß¿¡ ÀÌ ¿É¼ÇÀ» Á¦°ÅÇÒ ¼ö ÀÖ½À´Ï´Ù.

+

+Border: ÄÜÆ®·Ñ µÑ·¹¿¡ ¾ãÀº ÁÙ Å׵θ®¸¦ µÎ¸¨´Ï´Ù. ´ëºÎºÐÀÇ ÄÜÆ®·ÑÀº ÀÌ°ÍÀÌ ÇÊ¿äÇÏÁö ¾Ê½À´Ï´Ù. ¿Ö³ÄÇϸé ÀÌ¹Ì À¯Çü-Á¾¼ÓÀûÀÎ Å׵θ®°¡ Àֱ⠶§¹®ÀÔ´Ï´Ù. Å׵θ®¸¦ ±âÁ¸ÀÇ ÄÜÆ®·Ñ¿¡ Ãß°¡ÇÒ ¶§, ÄÜÆ®·ÑÀÇ ³Êºñ¿Í ³ôÀ̸¦ °¢°¢ 1 Çȼ¿¾¿ Áõ°¡½Ãų ÇÊ¿ä°¡ ÀÖÀ» ¼öµµ ÀÖ½À´Ï´Ù.

+

+HwndOutputVar [v1.0.46.01+]: Gui Add¿Í ÇÔ²² »ç¿ëµÉ ¶§, ÀÌ ¿É¼ÇÀº »õ·Î »ý¼ºµÈ ÄÜÆ®·ÑÀÇ Ã¢ ÇÚµé (HWND)À» OutputVar¿¡ ÀúÀåÇÕ´Ï´Ù. ¿¹¸¦ µé¾î: Gui, Add, Edit, vMyEdit HwndMyEditHwnd. ÇÔ¼ö ¾È¿¡ »ç¿ëµÉ ¶§, MyEditHwndÀº ÇÔ¼ö µ¿Àû º¯¼ö·Î Ãë±ÞµË´Ï´Ù. ÄÜÆ®·ÑÀÇ HWND´Â Á¾Á¾ PostMessage, SendMessage, ±×¸®°í DllCall¿¡ »ç¿ëµË´Ï´Ù. ¶Ç Á÷Á¢ÀûÀ¸·Î ahk_id WinTitle·Î »ç¿ëµÇ±âµµ ÇÕ´Ï´Ù (ÀÌ°ÍÀº ¼ûÀº ÄÜÆ®·Ñ¿¡µµ ÀÛµ¿ÇÕ´Ï´Ù. ½ÉÁö¾î DetectHiddenWindows°¡ ²¨Á®(Off) À־ »ó°ü ¾ø½À´Ï´Ù). ¶Ç´Â [in v1.1.04+] GuiControl°ú GuiControlGet¿¡ ControlID ¸Å°³º¯¼ö·Î »ç¿ëµË´Ï´Ù. + +°ü·ÃÇÏ¿© ¸»¾¸ µå¸®ÀÚ¸é, ºÎ¸ð âÀÇ HWND´Â Gui MyGui:+HwndOutputVar¸¦ ÅëÇÏ¿© ¿­¶÷ÇÒ ¼ö ÀÖ½À´Ï´Ù.

+

+Theme: ÀÌ ¿É¼ÇÀº »õ·Î »ý¼ºµÈ ÄÜÆ®·Ñ¿¡ ´ëÇÏ¿© âÀÇ ÇöÀç Å׸¶ ¼³Á¤À» ¿À¹ö¶óÀ̵å ÇÏ´Â µ¥ »ç¿ëµÉ ¼ö ÀÖ½À´Ï´Ù. ±âÁ¸ÀÇ ÄÜÆ®·Ñ¿¡ »ç¿ëµÉ ¶§´Â ¾Æ¹« È¿°úµµ ¾ø½À´Ï´Ù; ±×·¸Áö¸¸, ¹Ì·¡ÀÇ ¹öÀü¿¡¼­ ÀÌ ±â´ÉÀº º¯°æµÉ ¼ö ÀÖ½À´Ï´Ù. ÀÚ¼¼ÇÑ °ÍÀº Gui +/-Theme¸¦ ÂüÁ¶ÇϽʽÿÀ.

+

+(Unnamed Style): Ç÷¯½º ¶Ç´Â ¸¶À̳ʽº »çÀÎ ´ÙÀ½¿¡ ¹Ù·Î ½ÊÁø ¶Ç´Â ½ÊÀ°Áø ½ºÅ¸ÀÏ ¹øÈ£¸¦ ÁöÁ¤ÇϽʽÿÀ. ºÎÈ£°¡ »ý·«µÇ¸é, Ç÷¯½º »çÀÎÀÌ ÀÖ´Ù°í °£Áֵ˴ϴÙ.

+

+(Unnamed ExStyle): Ç÷¯½º³ª ¸¶À̳ʽº »çÀÎ ´ÙÀ½¿¡ °ð¹Ù·Î ±âÈ£ E ±×¸®°í ½ÊÁø ¶Ç´Â ½ÊÀ°Áø È®Àå ½ºÅ¸ÀÏ ¹øÈ£¸¦ ÁöÁ¤ÇϽʽÿÀ. »çÀÎÀÌ »ý·«µÇ¸é, Ç÷¯½º »çÀÎÀÌ ÀÖ´Ù°í °£Áֵ˴ϴÙ. ¿¹¸¦ µé¾î, E0x200´Â WS_EX_CLIENTEDGE ½ºÅ¸ÀÏÀ» Ãß°¡ÇÕ´Ï´Ù. ÀÌ ½ºÅ¸ÀÏÀº Ç« µé¾î°£ »ç¹æ Å׵θ®¸¦ Á¦°øÇϹǷΠ±×¸²À̳ª ±âŸ ÄÜÆ®·Ñ¿¡ ÀûÀýÇÕ´Ï´Ù. ´Ù¸¥ È®Àå ½ºÅ¸ÀÏÀº (°ÅÀÇ »ç¿ëµÇÁö ¾ÊÀ¸¹Ç·Î) ¿©±â¿¡ ¹®¼­È­µÇÁö ¾Ê¾ÒÁö¸¸, WS_EX_CLIENTEDGE¸¦ www.microsoft.com¿¡¼­ °Ë»öÇØ º¸½Ê½Ã¿À.

+ +

â À̺¥Æ®

+

´ÙÀ½ ¶óº§ (¼­ºê·çƾ)Àº ½ºÅ©¸³Æ®¿¡ Á¸ÀçÇÑ´Ù¸é ÀÚµ¿À¸·Î GUI â°ú ¿¬°üµË´Ï´Ù:

+ +

[v1.1.20+]: ÁÖ¾îÁø À̺¥Æ®¿¡ ´ëÇÏ¿© ¶óº§ÀÌ Á¸ÀçÇÏÁö ¾ÊÀ¸¸é, ±× À̸§ÀÇ ÇÔ¼ö°¡ ´ë½Å È£ÃâµË´Ï´Ù. ±× ÇÔ¼ö´Â ¼±ÅÃÀûÀ¸·Î ù ¸Å°³º¯¼ö·Î GUIÀÇ HWND¸¦ ¹ÞÀ» ¼ö ÀÖ½À´Ï´Ù. ¾î¶² À̺¥Æ®´Â Ãß°¡·Î ¸Å°³º¯¼ö°¡ ÀÖ½À´Ï´Ù.

+

+1 ¹ø âÀ» Á¦¿ÜÇÏ°í ´Ù¸¥ âµé¿¡ ´ëÇÏ¿©, âÀÇ À̸§À̳ª ¹øÈ£´Â À§¿¡ ¾ð±ÞµÈ Ư¼ö ¶óº§¿¡ ´ëÇÏ¿© Á¢µÎ»ç·Î »ç¿ëµË´Ï´Ù; ¿¹¸¦ µé¾î, 2GuiEscape ±×¸®°í 2GuiClose´Â 2 ¹ø âÀÇ ±âº» ¶óº§ÀÌ µË´Ï´Ù. ¹Ý¸é¿¡ MyGuiGuiEscape ±×¸®°í MyGuiGuiClose´Â MyGui¿¡ ´ëÇÏ¿© ±âº» ¶óº§ÀÌ µË´Ï´Ù. ¸ÂÃã Á¢µÎ»ç¸¦ ¼³Á¤ÇÏ·Á¸é, Gui +Label¸¦ »ç¿ëÇϽʽÿÀ.

+ +

+GuiClose: ´ÙÀ½ Áß Çϳª·Î âÀÌ ´ÝÈú ¶§ ±âµ¿µË´Ï´Ù: Á¦¸ñ ¹Ù¿¡¼­ X¸¦ ´©¸§, ½Ã½ºÅÛ ¸Þ´º¿¡¼­ "´Ý±â"¸¦ ¼±ÅÃÇÔ, ¶Ç´Â WinClose·Î ´ÝÀ½. ÀÌ ¶óº§ÀÌ ¾øÀ» °æ¿ì, âÀ» ´ÝÀ¸¸é ±×³É °¨Ãä´Ï´Ù. ÀÌ È¿°ú´Â Gui Cancel°ú °°½À´Ï´Ù. GuiClose¿¡ ÀÀ´äÇÏ¿© °¡Àå ÈçÇÑ Á¶Ä¡ Áß Çϳª´Â ExitAppÀÔ´Ï´Ù; ¿¹¸¦ µé¾î:

+ +
GuiClose:
+ExitApp
+

+[v1.1.20+]: GuiClose°¡ ÇÔ¼öÀ̸é, GUI´Â ´ÝÈ÷´Â °Ô ±âº»°ªÀÔ´Ï´Ù. ±× ÇÔ¼ö´Â 0 ¾Æ´Ñ Á¤¼ö¸¦ µ¹·ÁÁÖ¾î ´ÝÈ÷Áö ¸øÇϵµ·Ï ÇÒ ¼ö ÀÖ½À´Ï´Ù. ¾Æ·¡ ¿¹Á¦¿¡ º¸¿©ÁÖ´Â ¹Ù¿Í °°½À´Ï´Ù:

+ +
GuiClose(GuiHwnd) {  ; ÀÌ ¸Å°³º¯¼ö¸¦ ¼±¾ðÇÏ´Â °ÍÀº ¼±ÅÃÀûÀÔ´Ï´Ù.
+    MsgBox 4,, GUI¸¦ Á¤¸» ´Ý°í ½Í½À´Ï±î?
+    ifMsgBox No
+        return true  ; true = 1
+}
+ +

+GuiEscape: GUI âÀÌ È°¼ºÈ­ µÇ¾î ÀÖ´Â µ¿¾È¿¡ »ç¿ëÀÚ°¡ Escape Å°¸¦ ´©¸¦ ¶§ ±âµ¿µË´Ï´Ù. ¶óº§ÀÌ ¾øÀ¸¸é, Escape¸¦ ´­·¯µµ È¿°ú°¡ ¾ø½À´Ï´Ù. +¾Ë·ÁÁø ÇÑ°è: âÀÇ Ã¹ ÄÜÆ®·ÑÀÌ È°¼ºÈ­ µÇ¾î ÀÖÁö ¾ÊÀ¸¸é (ÄÜÆ®·Ñ À¯Çü¿¡ µû¶ó ´Ù¸§), GuiEscape ¶óº§Àº ±âµ¿ÇÏÁö ¾Ê½À´Ï´Ù. ÀÌ·± È¿°ú¸¦ »ý»êÇÏ´Â ´Ù¸¥ »óȲÀÌ ÀÖÀ» ¼ö ÀÖ½À´Ï´Ù.

+ +

GuiSize: âÀÌ Å©±â°¡ ¹Ù²ð¶§, ÃÖ´ëÈ­, ÃÖ¼ÒÈ­, ¶Ç´Â º¹¿øµÉ ¶§ ±âµ¿µË´Ï´Ù. ³»Àå º¯¼ö A_GuiWidth¿Í A_GuiHeight¿¡ âÀÇ Å¬¶óÀ̾ðÆ® ±¸¿ªÀÇ ³Êºñ¿Í ³ôÀÌ°¡ ´ã±é´Ï´Ù. Ŭ¶óÀ̾ðÆ® ±¸¿ª¿¡¼­ Á¦¸ñ ¹Ù, ¸Þ´º ¹Ù, ±×¸®°í Å׵θ®¸¦ Á¦¿ÜÇÕ´Ï´Ù. °Ô´Ù°¡, A_EventInfo ±×¸®°í ErrorLevel´Â ¸ðµÎ ´ÙÀ½ ¼ýÀÚ Áß Çϳª¸¦ ´ã½À´Ï´Ù:

+

+ 0: âÀÌ º¹¿øµÇ¾ú´Ù. ¶Ç´Â Å׵θ®¸¦ ²ø¾î¼­ Á¤»óÀûÀ¸·Î Å©±â°¡ º¯°æµÇ¾ú´Ù.
+ 1: âÀÌ ÃÖ¼ÒÈ­µÇ¾ú´Ù.
+ 2: âÀÌ ÃÖ´ëÈ­µÇ¾ú´Ù.

+

+½ºÅ©¸³Æ®´Â GuiSize¸¦ »ç¿ëÇØ »ç¿ëÀÚÀÇ Ã¢ Å©±â º¯°æ¿¡ ÀÀ´äÇÏ¿© ÄÜÆ®·ÑÀÇ Å©±â¿Í À§Ä¡¸¦ ´Ù½Ã Á¶ÀýÇÒ ¼ö ÀÖ½À´Ï´Ù. tmplinshi¿Í toralf°¡ ¸¸µç AutoXYWH() ¸¦ »ç¿ëÇÏ¸é ´õ ½±°Ô ÀÌ°ÍÀ» ó¸®ÇÒ ¼ö ÀÖ½À´Ï´Ù.

+

+âÀÌ Å©±â°¡ ¹Ù²ð ¶§ (½ºÅ©¸³Æ®°¡ ¹Ù²Ù¾îµµ), GuiSize´Â Áï½Ã È£ÃâµÇÁö ¾ÊÀ» ¼ö ÀÖ½À´Ï´Ù. ´Ù¸¥ â À̺¥Æ®¿Í ¸¶Âù°¡Áö·Î, ÇöÀç ¾²·¹µå°¡ ÀÎÅÍ·´Æ®°¡ ºÒ°¡´ÉÇÏ´Ù¸é, GuiSize´Â ¾²·¹µå°¡ ÀÎÅÍ·´Æ®°¡ °¡´ÉÇØÁú ¶§±îÁö È£ÃâµÇÁö ¾Ê½À´Ï´Ù. ½ºÅ©¸³Æ®°¡ ¹æ±Ý âÀÇ Å©±â¸¦ º¯°æÇß´Ù¸é, ´ÙÀ½ ¿¹Á¦¸¦ µû¶ó GuiSize°¡ Áï½Ã È£ÃâµÇ´Â °ÍÀ» È®ÀÎÇϽʽÿÀ:

+ +
Critical Off  ; Critical OnÀÌ »ç¿ëµÇÁö ¾Ê¾Ò´õ¶óµµ.
+Sleep -1
+

+[v1.1.22.05+]: Gui Show´Â ÀÚµ¿À¸·Î Sleep -1À» ¼öÇàÇÕ´Ï´Ù. ±×·¡¼­ ÀϹÝÀûÀ¸·Î ±× °æ¿ì¿¡´Â SleepÀ» È£ÃâÇÒ ÇÊ¿ä°¡ ¾ø½À´Ï´Ù.

+

+[v1.1.20+]: GuiSize°¡ ÇÔ¼öÀ̸é, ±×ÀÇ ¸Å°³º¯¼ö´Â ´ÙÀ½°ú °°½À´Ï´Ù:

+
GuiSize(GuiHwnd, EventInfo, Width, Height)
+ +

+GuiContextMenu: »ç¿ëÀÚ°¡ Á¦¸ñ ¹Ù¿Í ¶óº§À» Á¦¿ÜÇÏ°í âÀ» ¾Æ¹«µ¥³ª Ŭ¸¯ÇÏ¸é ±âµ¿µË´Ï´Ù. ¶Ç Apps Å°³ª Shift-F10 Å°´­¸²¿¡ ÀÀ´äÇÏ¿© ±âµ¿µË´Ï´Ù. ´ëºÎºÐÀÇ ´Ù¸¥ GUI ¶óº§°ú ´Ù¸£°Ô, GuiContextMenu´Â µ¿½Ã¿¡ ¿©·¯ º´Çà ¾²·¹µå¸¦ °¡Áú ¼ö ÀÖ½À´Ï´Ù. ´ÙÀ½ ³»Àå º¯¼ö¸¦ GuiContextMenu¿¡¼­ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù:

+
    +
  1. A_GuiControl, ¾È¿¡ À̺¥Æ®¸¦ ¹ÞÀº ÄÜÆ®·ÑÀÇ ÅؽºÆ®³ª º¯¼ö À̸§ÀÌ µé¾î ÀÖ½À´Ï´Ù (¾øÀ¸¸é ºñ¾î ÀÖ½À´Ï´Ù).
  2. +
  3. A_EventInfo: ListBox, ListView, ¶Ç´Â TreeView°¡ ¹®¸Æ ¸Þ´ºÀÇ ¸ñÇ¥ÀÏ ¶§ (À§ÀÇ A_GuiControl°¡ °áÁ¤ÇÔ), A_EventInfo´Â ¾î´À ÄÜÆ®·ÑÀÇ Ç׸ñÀÌ ¸ñÇ¥ÀÎÁö ÁöÁ¤ÇÕ´Ï´Ù:
    + ListBox ¶Ç´Â ListView: A_EventInfo¿¡´Â ÇöÀç ÃÊÁ¡ÀÌ ÀÖ´Â ÇàÀÇ ¹øÈ£°¡ ´ã°Ü ÀÖ½À´Ï´Ù (¾øÀ¸¸é 0).
    + TreeView: ¿ìŬ¸¯¿¡ ´ëÇÏ¿©, A_EventInfo¿¡´Â Ŭ¸¯µÈ Ç׸ñÀÇ ID ¹øÈ£°¡ ´ã±é´Ï´Ù (¶Ç´Â »ç¿ëÀÚ°¡ Ç׸ñ ¸»°í ´Ù¸¥ °÷À» Ŭ¸¯ Çß´Ù¸é 0ÀÔ´Ï´Ù). AppsKey¿Í Shift-F10¿¡ ´ëÇÏ¿©, A_EventInfo¿¡´Â ¼±ÅÃµÈ Ç׸ñÀÇ ID ¹øÈ£°¡ ´ã±é´Ï´Ù.
  4. +
  5. A_GuiX ±×¸®°í A_GuiY, ¿©±â¿¡´Â ½ºÅ©¸³Æ®°¡ ¸Þ´º¸¦ º¸¿©ÁÙ X ÁÂÇ¥¿Í Y ÁÂÇ¥°¡ ´ã±é´Ï´Ù (¿¹, Menu, MyContext, Show, %A_GuiX%, %A_GuiY%). ÁÂÇ¥´Â âÀÇ Á¶»ó´Ü ¸ð¼­¸®¿¡ »ó´ëÀûÀÔ´Ï´Ù.
  6. +
  7. A_GuiEvent, »ç¿ëÀÚ°¡ ¿ìŬ¸¯ÇÏ¸é ´Ü¾î RightClickÀÌ ´ã±â°í ¸Þ´º°¡ Apps Å° ¶Ç´Â Shift-F10¿¡ ÀÇÇÏ¿© Ã˹ߵǾú´Ù¸é NormalÀÌ ´ã±é´Ï´Ù.
  8. +
+

ÁÖÀÇ: Edit ±×¸®°í MonthCal ÄÜÆ®·ÑÀº ÀڽŸ¸ÀÇ ¹®¸ÆÀÌ Àֱ⠶§¹®¿¡, ±× Áß¿¡ Çϳª¿¡ ¿ìŬ¸¯ÇÏ´õ¶óµµ GuiContextMenu´Â ±âµ¿µÇÁö ¾Ê½À´Ï´Ù.

+

+[v1.1.20+]: GuiContextMenu°¡ ÇÔ¼öÀ̸é, ±×ÀÇ ¸Å°³º¯¼ö´Â ´ÙÀ½°ú °°½À´Ï´Ù:

+
GuiContextMenu(GuiHwnd, CtrlHwnd, EventInfo, IsRightClick, X, Y)
+

+CtrlHwnd´Â ÄÜÆ®·ÑÀÌ À̺¥Æ®¸¦ ¹ÞÁö ¾Ê¾ÒÀ¸¸é ºñ¾î ÀÖ½À´Ï´Ù. IsRightClickÀº A_GuiEvent°¡ RightClickÀ̸é ÂüÀÔ´Ï´Ù.

+ +

+GuiDropFiles: ²ø¾î ¶³±¸±â ¿¬»êÀÇ ÀϺηΠÆÄÀÏ/Æú´õ°¡ â¿¡ ¶³±¸¾îÁú ¶§¸¶´Ù ±âµ¿µË´Ï´Ù (±×·¯³ª ¶óº§ÀÌ ÀÌ¹Ì ½ÇÇà ÁßÀ̸é, ¶³±¸±â À̺¥Æ®´Â ¹«½ÃµË´Ï´Ù). ´ÙÀ½ ³»Àå º¯¼ö´Â GuiDropFiles ¾È¿¡¼­ »ç¿ë°¡´É ÇÕ´Ï´Ù:

+
    +
  1. A_GuiControl, ¾È¿¡ ÆÄÀÏÀÌ ¶³±¸¾îÁø ÄÜÆ®·ÑÀÇ ÅؽºÆ® ¶Ç´Â º¯¼ö À̸§ÀÌ ´ã°Ü ÀÖ½À´Ï´Ù (¾øÀ¸¸é ºñ¾î ÀÖÀ½).
  2. +
  3. A_EventInfo ±×¸®°í ErrorLevel, µÑ ¸ðµÎ ¾È¿¡ ¶³±¸¾îÁø ÆÄÀÏÀÇ °³¼ö°¡ ´ã°Ü ÀÖ½À´Ï´Ù.
  4. +
  5. A_GuiX ±×¸®°í A_GuiY, ¾È¿¡ ÆÄÀÏÀÌ ¶³±¸¾îÁø °÷ÀÇ XÁÂÇ¥¿Í Y ÁÂÇ¥°¡ °¢°¢ ´ã°Ü ÀÖ½À´Ï´Ù (ÁÂÇ¥´Â âÀÇ Á»ó ¸ð¼­¸®¿¡ »ó´ëÀûÀÔ´Ï´Ù).
  6. +
  7. A_GuiEvent, ¾È¿¡ ¶³±¸¾îÁø ÆÄÀÏÀÇ À̸§ÀÌ µé¾î ÀÖ½À´Ï´Ù. ¸¶Áö¸·À» Á¦¿ÜÇÏ°í °¢°¢ÀÇ ÆÄÀÏÀ̸§Àº ¶óÀÎÇǵå (`n)·Î ³¡´Õ´Ï´Ù.
  8. +
+

°³º° ÆÄÀÏÀ» ÃßÃâÇÏ·Á¸é, ¾Æ·¡¿¡ º¸¿©ÁÖ´Â ¹Ù¿Í °°ÀÌ ÆÄ½Ì È¸µ¹À̸¦ »ç¿ëÇϽʽÿÀ: +

+
; ¿¹Á¦ #1:
+Loop, parse, A_GuiEvent, `n
+{
+    MsgBox, 4,, File number %A_Index% is:`n%A_LoopField%.`n`nContinue?
+    IfMsgBox, No, Break
+}
+
+; ¿¹Á¦ #2: ù ÆÄÀϸ¸ ÃßÃâÇÏ·Á¸é, ´ÙÀ½ ¿¹Á¦¸¦ µû¸£½Ê½Ã¿À:
+Loop, parse, A_GuiEvent, `n
+{
+    FirstFile = %A_LoopField%
+    Break
+}
+
+; ¿¹Á¦ #3: ¾ËÆĺª ¼øÀ¸·Î ÆÄÀÏÀ» ó¸®ÇÏ·Á¸é, ´ÙÀ½ ¿¹Á¦¸¦ µû¸£½Ê½Ã¿À:
+FileList = %A_GuiEvent%
+Sort, FileList
+Loop, parse, FileList, `n
+    MsgBox File number %A_Index% is:`n%A_LoopField%.
+

+â¿¡ ´ëÇÏ¿© ²ø¾î ¶³±¸±â¸¦ Àá½Ã ²ô·Á¸é, Gui -E0x10¸¦ ÅëÇÏ¿© WS_EX_ACCEPTFILES ½ºÅ¸ÀÏÀ» Á¦°ÅÇϽʽÿÀ. ³ªÁß¿¡ ´Ù½Ã È°¼ºÈ­ÇÏ·Á¸é, Gui +E0x10¸¦ »ç¿ëÇϽʽÿÀ.

+

+[v1.1.20+]: GuiDropFilesÀÌ ÇÔ¼öÀ̸é, ±× ¸Å°³º¯¼ö´Â ¾Æ·¡ ¿¹Á¦¿¡ º¸¿©ÁÖ´Â ¹Ù¿Í °°½À´Ï´Ù. CtrlHwnd´Â ÆÄÀÏÀÌ GUI ÀÚü¿¡ ¶³±¸¾îÁö¸é ºñ¾î ÀÖ½À´Ï´Ù. FileArray´ÂÆÄÀÏÀ̸§ÀÇ ¹è¿­ (°´Ã¼)ÀÔ´Ï´Ù. ¿©±â¿¡¼­ FileArray[1]Àº ù ¹ø° ÆÄÀÏÀÌ°í FileArray.MaxIndex()´Â ÆÄÀÏÀÇ °³¼ö¸¦ µ¹·ÁÁÝ´Ï´Ù. for-ȸµ¹À̸¦ »ç¿ëÇϸé ÆÄÀÏÀ» ¹Ýº¹ÇÒ ¼ö ÀÖ½À´Ï´Ù:

+ +
GuiDropFiles(GuiHwnd, FileArray, CtrlHwnd, X, Y) {
+    for i, file in FileArray
+        MsgBox File %i% is:`n%file%
+}
+
+ +

´Ù¸¥ À̺¥Æ®¸¦ ŽÁöÇÏ°í ÀÀ´äÇϱâ: ´Ù¸¥ À¯ÇüÀÇ GUI À̺¥Æ®´Â OnMessage()¸¦ ÅëÇÏ¿© ŽÁöÇÏ°í ó¸®ÇÒ ¼ö ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î, »ç¿ëÀÚ°¡ ¸¶¿ì½º¸¦ âÀÇ Æ¯Á¤ ÄÜÆ®·Ñ¿¡ ¿Ã·Á ³õÀ» ¶§¸¶´Ù ½ºÅ©¸³Æ®´Â ¹®¸Æ-°¨Áö µµ¿ò¸»À» ÅøÆÁÀ» ÅëÇÏ¿© º¸¿©ÁÙ ¼ö ÀÖ½À´Ï´Ù. ÀÌ°ÍÀº GUI ToolTip ¿¹Á¦¿¡¼­ ½Ã¿¬ÇÕ´Ï´Ù.

+ +

¿©·¯ GUI â ¸¸µé±â

+

+ ±âº» â ¸»°í ´Ù¸¥ âÀ» ó¸®ÇÏ·Á¸é, ±×ÀÇ À̸§ ¶Ç´Â ¹øÈ£ (¶Ç´Â v1.1.03+À̶ó¸é, ±×ÀÇ HWND) ±×¸®°í ´ÙÀ½¿¡ ½ÖÁ¡À» µÎ°í ºÎ-¸í·É¾î¸¦ ´ÙÀ½ ¿¹Á¦¿Í °°ÀÌ Æ÷ÇÔÇϽʽÿÀ:

+ +
Gui, MyGui:Add, Text,, Text for about-box.
+Gui, MyGui:Show
+

+Gui MyGui:DefaultÀ» »ç¿ëÇϸé À§ÀÇ "MyGui:" Á¢µÎ»ç°¡ ÇÊ¿ä ¾ø½À´Ï´Ù. °Ô´Ù°¡, ÀÌ Á¢µÎ»ç´Â GUI ¾²·¹µå°¡ ±× ¾²·¹µå¸¦ ±âµ¿ÇÑ °°Àº â¿¡ ÀÛµ¿Çϸé ÇÊ¿ä°¡ ¾ø½À´Ï´Ù.

+

+[v1.1.03+]: Gui À̸§Àº ¹Ýµå½Ã º¯¼ö À̸§°ú °°Àº ±ÔÄ¢À» Áö°Ü¾ß ÇÕ´Ï´Ù. 1°ú 99 »çÀÌÀÇ ¼ýÀÚ°¡ ¾Æ´Ñ ¼ýÀÚ ¶Ç´Â µÎ ÀÚ¸® ¹®ÀÚº¸´Ù ´õ ±ä ¼ýÀÚ´Â (¿¹¸¦ µé¾î 0x01) ¹Ýµå½Ã ±âÁ¸ÀÇ GuiÀÇ HWNDÀ̾î¾ß ÇÕ´Ï´Ù. ±×·¸Áö ¾ÊÀ¸¸é ¸í·É¾î´Â ½ÇÆÐÇÕ´Ï´Ù. Ãë±ÞÇÒ ¼ö Àִ âÀÇ °³¼ö´Â ¿î¿µ üÁ¦ÀÇ ÀÚ¿ø¿¡¸¸ Á¦Çѵ˴ϴÙ.

+

+[v1.1.04+]: À̸§ ¾ø´Â GUI âÀÇ ¹øÈ£´Â Gui, New¸¦ »ç¿ëÇÏ¿© ¸¸µé ¼ö ÀÖ½À´Ï´Ù.

+ +

GUI À̺¥Æ®, ¾²·¹µå, ±×¸®°í ¼­ºê·çƾ

+

+GUI ¾²·¹µå´Â GUI ÇàÀ§ÀÇ °á°ú·Î ±âµ¿µÈ ¾²·¹µå·Î Á¤Àǵ˴ϴÙ. GUI ÇàÀ§¿¡´Â GUI âÀÇ ¸Þ´º ¹Ù·ÎºÎÅÍ Ç׸ñÀ» ¼±ÅÃÇÏ´Â °Í, ¶Ç´Â ±×ÀÇ g-labelsÁß Çϳª¸¦ (¹öÆ°À» ´­·¯¼­) Ã˹߽ÃÅ°´Â ÀÏÀÌ Æ÷ÇԵ˴ϴÙ.

+

+GUI ¾²·¹µåÀÇ ±âº» â À̸§Àº ±× ¾²·¹µå¸¦ ±âµ¿ÇÑ Ã¢ÀÇ À̸§ÀÔ´Ï´Ù. ºñ-GUI ¾²·¹µå´Â 1À» ±âº» °ªÀ¸·Î »ç¿ëÇÕ´Ï´Ù.

+

+GUI ¾²·¹µå°¡ ±âµ¿ÇÒ ¶§¸¶´Ù, ±× ¾²·¹µåÀÇ ¸¶Áö¸· ¹ß°ß âÀº ±× GUI â ÀÚü·Î ½ÃÀÛÇÕ´Ï´Ù. ÀÌ ´öºÐ¿¡ â°ú ÄÜÆ®·Ñ¿¡ ´ëÇÑ ¸í·É¾îµéÀÌ -- ¿¹¸¦ µé¾î WinMove, WinHide, WinSet, WinSetTitle, ±×¸®°í ControlGetFocus ¸í·É¾î°¡ -- GUI â Àڽſ¡°Ô ÀÛµ¿ÇÒ ¶§´Â WinTitle°ú WinText¸¦ »ý·«ÇÒ ¼ö ÀÖ½À´Ï´Ù (½ÉÁö¾î ¼û¾î À־ ÀÛµ¿ÇÕ´Ï´Ù).

+

+¾Õ¿¡¼­ Ŭ¸¯Çؼ­ ±×ÀÇ g-labelÀÌ ÀÌ¹Ì ½ÇÇà ÁßÀÎ µ¿¾È¿¡ ÄÜÆ®·ÑÀ» Ŭ¸¯ÇÏ¸é ¾Æ¹« È¿°úµµ ¾ø°í ±× À̺¥Æ®´Â Æó±âµË´Ï´Ù. À̸¦ ÇÇÇÏ·Á¸é, CriticalÀ» ¼­ºê·çƾÀÇ Ã¹ ÁÙ¿¡ »ç¿ëÇϽʽÿÀ (±×·¸Áö¸¸, ÀÌ·¸°Ô Çϸé ÇÖÅ° ´©¸§°ú °°ÀÌ ´Ù¸¥ ¾²·¹µåµµ ¹öÆÛó¸® ¶Ç´Â Áö¿¬µÉ °ÍÀÔ´Ï´Ù.).

+

+³»Àå º¯¼ö A_Gui¿Í A_GuiControl ¾È¿¡´Â ÇöÀç ¾²·¹µå¸¦ ±âµ¿ÇÑ Ã¢ À̸§°ú ÄÜÆ®·Ñ ID°¡ ´ã°Ü ÀÖ½À´Ï´Ù. ´õ ÀÚ¼¼ÇÑ °ÍÀº A_Gui ±×¸®°í A_GuiControl¸¦ ÂüÁ¶ÇϽʽÿÀ.

+

+¿©·¯ À̺¥Æ®°¡ °°Àº ¼­ºê·çƾÀ» ¼öÇàÇϵµ·Ï ¸¸µé·Á¸é, ¶óº§µéÀ» ¿¬¼ÓÀûÀ¸·Î ¼­ºê·çƾ À§¿¡ ÁöÁ¤ÇϽʽÿÀ. ¿¹¸¦ µé¾î:

+
GuiEscape:
+GuiClose:
+ButtonCancel:
+ExitApp  ; À§ÀÇ ¸ðµç ¶óº§Àº ÀÌ°ÍÀ» ¼öÇàÇÕ´Ï´Ù.
+

+¸ðµç GUI ¾²·¹µå´Â SendMode¿Í °°Àº ¼³Á¤¿¡ ´ëÇÏ¿© ±âº» °ªÀ» °¡Áö°í »õ·Ó°Ô ½ÃÀÛÇÕ´Ï´Ù. ÀÌ ±âº» °ªÀº ÀÚµ¿-½ÇÇà ¼½¼Ç¿¡¼­ º¯°æÇÒ ¼ö ÀÖ½À´Ï´Ù.

+ + +

+GUI âÀº ÅÇ Å°·Î Ç×ÇØÇÒ ¼ö ÀÖ½À´Ï´Ù. ÅÇ Å°´Â ÃÊÁ¡À» ´ÙÀ½ ÀÔ·Â-°¡´É ÄÜÆ®·Ñ·Î À̵¿½Ãŵ´Ï´Ùl (Tabstop ½ºÅ¸ÀÏÀÌ Á¦°ÅµÈ ÄÜÆ®·ÑÀº °Ç³Ê ¶Ý´Ï´Ù). Ç×ÇØÀÇ ¼ø¼­´Â ÄÜÆ®·ÑÀÌ ¿ø·¡ Ãß°¡µÈ ¼ø¼­·Î °áÁ¤µË´Ï´Ù. âÀÌ Ã³À½ º¸À̸é, Tabstop ½ºÅ¸ÀÏÀ» °¡Áö°í Àִ ù ¹ø° ÀÔ·Â-°¡´É ÄÜÆ®·ÑÀÌ Å°º¸µå ÃÊÁ¡À» °¡Áý´Ï´Ù (´ëºÎºÐÀÇ ÄÜÆ®·Ñ À¯ÇüÀº ±âº»À¸·Î ÅǽºÅ¾ ½ºÅ¸ÀÏÀ» °¡Áö°í ÀÖ½À´Ï´Ù).

+

+¾î¶² ÄÜÆ®·ÑÀº Å°º¸µå ´ÜÃàÅ°¸¦ ¸¸µå´Â ¾ÚÆÛ¼¾µå°¡ Æ÷ÇԵǾî ÀÖÀ» ¼ö ÀÖ½À´Ï´Ù (&). ÀÌ ´ÜÃà Å°´Â ÄÜÆ®·ÑÀÇ ÅؽºÆ®¿¡ ¹ØÁÙ ¹®ÀÚ·Î º¸¿©Áý´Ï´Ù (½Ã½ºÅÛ ¼³Á¤¿¡ µû¶ó ´Ù¸§). »ç¿ëÀÚ´Â ALT Å°¸¦ ´©¸¥ ä·Î »óÀÀÇÏ´Â ¹®ÀÚ¸¦ ŸÀÚÇÏ¿© ±× ´ÜÃàÅ°¸¦ È°¼ºÈ­ ÇÕ´Ï´Ù. ¹öÆ°, üũ¹Ú½º, ±×¸®°í ¶óµð¿À ¹öÆ°¿¡ ´ëÇÏ¿©, ´ÜÃàÅ°¸¦ ´©¸£´Â °ÍÀº ÄÜÆ®·ÑÀ» Ŭ¸¯ÇÏ´Â °Í°ú µ¿ÀÏÇÕ´Ï´Ù. GroupBoxes¿Í Text controls¿¡ ´ëÇÏ¿©, ´ÜÃàÅ°¸¦ ´©¸£¸é Å°º¸µå ÃÊÁ¡ÀÌ Ã¹ ¹ø° ÀÔ·Â-°¡´É tabstop ÄÜÆ®·Ñ·Î Á¡ÇÁÇÕ´Ï´Ù. ±×·¸Áö¸¸ ¿©·¯ ÄÜÆ®·ÑÀÌ °°Àº ´ÜÃàÅ°¸¦ °¡Áö°í ÀÖ´Â °æ¿ì, ´ÜÃà Å°¸¦ ´©¸£¸é °°Àº ´ÜÃàÅ°¸¦ °¡Áö°í ÀÖ´Â ¸ðµç ÄÜÆ®·Ñ Áß¿¡ Çϳª¸¦ °ñ¶ó ¹«ÀÛÀ§·Î Á¡ÇÁÇÕ´Ï´Ù.

+

+¾ÚÆÛ¼¾µå¸¦ ±ÛÀÚ ±×´ë·Î À§¿¡ ¾ð±ÞÇÑ ÄÜÆ®·Ñ À¯Çü¿¡ º¸¿©ÁÖ·Á¸é, µÎ °³ÀÇ ¾ÚÆÛ¼¾µå¸¦ ¿¬¼ÓÀ¸·Î ´ÙÀ½ ¿¹Á¦¿Í °°ÀÌ ÁöÁ¤ÇϽʽÿÀ: Save && Exit.

+ +

âÀÇ ¸ð½À

+

+¾ÆÀÌÄÜ¿¡ ´ëÇÏ¿© GUI âÀº âÀÌ ¸¸µé¾îÁö´Â ¼ø°£ È¿°ú°¡ ÀÖ´ø Æ®·¹ÀÌ ¾ÆÀÌÄÜÀ» »ç¿ëÇÕ´Ï´Ù. ±×·¡¼­, ´Ù¸¥ ¾ÆÀÌÄÜÀ» °¡Áö·Á¸é, Æ®·¹ÀÌ ¾ÆÀÌÄÜÀ» ¹Ù²Ù°í ³ª¼­ âÀ» ¸¸µå½Ê½Ã¿À. ¿¹¸¦ µé¾î: Menu, Tray, Icon, MyIcon.ico. ¶Ç ÀÛÀº ¾ÆÀÌÄÜ ¸»°í Å« ¾ÆÀÌÄÜÀ» °¡Áö´Â °Íµµ °¡´ÉÇÕ´Ï´Ù (Å« ¾ÆÀÌÄÜÀº ¾ËÆ®-ÅÇ Å½ºÅ© Àüȯ±â¿¡ º¸¿©Áý´Ï´Ù.). ÀÌ°ÍÀº DllCall°ú SendMessage¸¦ ÅëÇÏ¿© ´Þ¼ºÇÒ ¼ö ÀÖ½À´Ï´Ù; ¿¹¸¦ µé¾î:

+ +
hIcon32 := DllCall("LoadImage", uint, 0
+    , str, "My Icon.ico"  ; ¾ÆÀÌÄÜ ÆÄÀÏ (ÀÌ ÆÄÀÏ¿¡ ¿©·¯ ¾ÆÀÌÄÜÀÌ µé¾î ÀÖÀ» ¼ö ÀÖ½À´Ï´Ù).
+    , uint, 1  ; À̹ÌÁöÀÇ Á¾·ù: IMAGE_ICON
+    , int, 32, int, 32  ; À̹ÌÁöÀÇ ¿øÇÏ´Â ³Êºñ¿Í ³ôÀÌ (LoadImage°¡ ¾î´À ¾ÆÀÌÄÜÀÌ Á¦ÀÏ ÁÁÀºÁö °áÁ¤ÇÏ´Â µ¥ µµ¿òÀÌ µË´Ï´Ù).
+    , uint, 0x10)  ; Flags: LR_LOADFROMFILE
+Gui +LastFound
+SendMessage, 0x80, 1, hIcon32  ; 0x80´Â WM_SETICONÀÔ´Ï´Ù; ±×¸®°í 1Àº ICON_BIGÀÌ´Â ¶æÀÔ´Ï´Ù ( 0À̸é ICON_SMALLÀ» ÀǹÌÇÔ).
+Gui Show
+

+OSÀÇ Á¦ÇÑ ¶§¹®¿¡, ºñ-±âº» ÅؽºÆ® Ä÷¯°¡ ÁöÁ¤µÈ üũ¹Ú½º, ¶óµð¿À ¹öÆ°, ±×¸®°í ±×·ì¹Ú½º´Â Windows XP À̻󿡼­ °íÀü Å׸¶ÀÇ °Ñ¸ð½ÀÀ» °¡Áý´Ï´Ù.

+

+°ü·Ã ÁÖÁ¦: âÀÇ ¿©¹é.

+ +

ÃÑÆò

+

+GuiControl°ú GuiControlGetÀ» »ç¿ëÇϸé GUI âÀÇ ÄÜÆ®·ÑÀ» °³º°ÀûÀ¸·Î ó¸®ÇÒ ¼ö ÀÖ½À´Ï´Ù.

+

+°¢ GUI âÀº ÃÖ´ë 11,000 °³ÀÇ ÄÜÆ®·ÑÀ» °¡Áú ¼ö ÀÖ½À´Ï´Ù. ±×·¸Áö¸¸, 5000 °³°¡ ³Ñ´Â ÄÜÆ®·ÑÀ» ¸¸µé ¶§ Á¶½ÉÇϽʽÿÀ. ¿Ö³ÄÇÏ¸é ¾î¶² ÄÜÆ®·Ñ À¯Çü¿¡ ´ëÇؼ­´Â ½Ã½ºÅÛÀÇ ¾ÈÁ¤¼º¿¡ ¹®Á¦°¡ »ý±æ ¼ö Àֱ⠶§¹®ÀÔ´Ï´Ù.

+

+½ºÅ©¸³Æ® ¾îµð¼­µç GUI ¸í·É¾î¸¦ »ç¿ëÇϸé ÀÚµ¿À¸·Î ¿µ¼ÓÀûÀÌ µË´Ï´Ù (±× GUI ¸í·É¾î°¡ ½ÇÁ¦·Î ½ÇÇàµÇÁö ¾Ê´õ¶óµµ »ó°ü ¾ø½À´Ï´Ù). ¶Ç ´ÜÀÏ ½ÇüÀ̱⵵ ÇÕ´Ï´Ù. ´Ü, #SingleInstance Áö½Ã¾î¸¦ »ç¿ëÇØ ¿À¹ö¶óÀ̵å ÇÑ °æ¿ì´Â ¿¹¿ÜÀÔ´Ï´Ù.

+ +

°ü·Ã Ç׸ñ

+

+GuiControl, GuiControlGet, Menu, ÄÜÆ®·Ñ À¯Çü, ListView, TreeView, Control, ControlGet, SplashImage, MsgBox, FileSelectFile, FileSelectFolder

+ +

¿¹Á¦

+
; ¿¹Á¦: SplashTextOn°ú ºñ½ÁÇÑ È¿°ú¸¦ ¾ò½À´Ï´Ù:
+
+Gui, +AlwaysOnTop +Disabled -SysMenu +Owner  ; +Owner¸¦ »ç¿ëÇϸé ŽºÅ© ¹Ù ¹öÆ°ÀÌ º¸ÀÌÁö ¾Ê½À´Ï´Ù.
+Gui, Add, Text,, Some text to display.
+Gui, Show, NoActivate, Title of Window  ; NoActivate´Â ÇöÀç È°¼º âÀ» ºñÈ°¼ºÈ­ÇÏÁö ¸øÇϵµ·Ï ÇÕ´Ï´Ù.
+

 

+
; ¿¹Á¦: À̸§°ú ¼ºÀ» ¹°¾î º¸´Â °£´ÜÇÑ ÀÔ·Â-¹Ú½º:
+
+Gui, Add, Text,, First name:
+Gui, Add, Text,, Last name:
+Gui, Add, Edit, vFirstName ym  ; ym ¿É¼ÇÀº ÄÜÆ®·ÑÀÇ »õ ¿­À» ½ÃÀÛÇÕ´Ï´Ù.
+Gui, Add, Edit, vLastName
+Gui, Add, Button, default, OK  ; ¶óº§ ButtonOK´Â (Á¸ÀçÇϸé) ¹öÆ°ÀÌ ´­¸± ¶§ ½ÇÇàµË´Ï´Ù.
+Gui, Show,, Simple Input Example
+return  ; ÀÚµ¿-½ÇÇà ¼½¼ÇÀÇ ³¡. ½ºÅ©¸³Æ®´Â »ç¿ëÀÚ°¡ ¹«¾ð°¡ ÀÏÀ» ÇÒ ¶§ ±îÁö ÈÞ½Ä »óÅ¿¡ µé¾î°©´Ï´Ù.
+
+GuiClose:
+ButtonOK:
+Gui, Submit  ; °¢ ÄÜÆ®·ÑÀÇ ¿¬°ü º¯¼ö¿¡ »ç¿ëÀÚÀÇ ÀÔ·ÂÀ» ÀúÀåÇÕ´Ï´Ù.
+MsgBox You entered "%FirstName% %LastName%".
+ExitApp
+

 

+
; ¿¹Á¦: ÅÇ ÄÜÆ®·Ñ:
+
+Gui, Add, Tab2,, First Tab|Second Tab|Third Tab  ; Tab2 vs. Tab´Â v1.0.47.05¸¦ ¿ä±¸ÇÕ´Ï´Ù.
+Gui, Add, Checkbox, vMyCheckbox, Sample checkbox
+Gui, Tab, 2
+Gui, Add, Radio, vMyRadio, Sample radio1
+Gui, Add, Radio,, Sample radio2
+Gui, Tab, 3
+Gui, Add, Edit, vMyEdit r5  ; r5´Â ³ôÀÌ°¡ 5 Çà À̶ó´Â ¶æÀÔ´Ï´Ù.
+Gui, Tab  ; Áï, À̾ Ãß°¡µÇ´Â ÄÜÆ®·ÑµéÀº ÅÇ ÄÜÆ®·Ñ¿¡ ¼ÓÇÏÁö ¾Ê½À´Ï´Ù.
+Gui, Add, Button, default xm, OK  ; xmÀº ¹öÆ°À» ÁÂÇÏ ¸ð¼­¸®¿¡ ¹èÄ¡ÇÕ´Ï´Ù.
+Gui, Show
+return
+
+ButtonOK:
+GuiClose:
+GuiEscape:
+Gui, Submit  ; °¢ ÄÜÆ®·ÑÀÇ ³»¿ëÀ» ±×ÀÇ ¿¬°ü º¯¼ö¿¡ ÀúÀåÇÕ´Ï´Ù.
+MsgBox You entered:`n%MyCheckbox%`n%MyRadio%`n%MyEdit%
+ExitApp
+

 

+ +
; ¿¹Á¦: µð·ºÅ丮¿¡ ÀÖ´Â ÆÄÀÏÀ» ´ã°í ÀÖ´Â ListBox:
+
+Gui, Add, Text,, Pick a file to launch from the list below.`nTo cancel, press ESCAPE or close this window.
+Gui, Add, ListBox, vMyListBox gMyListBox w640 r10
+Gui, Add, Button, Default, OK
+Loop, C:\*.*  ; ÀÌ Æú´õ¿Í ¿ÍÀϵåÄ«µå ÆÐÅÏÀ» ¿©·¯ºÐÀÇ ±âÈ£¿¡ ¸Â°Ô ¹Ù²Ù½Ê½Ã¿À.
+{
+    GuiControl,, MyListBox, %A_LoopFileFullPath%
+}
+Gui, Show
+return
+
+MyListBox:
+if A_GuiEvent <> DoubleClick
+    return
+; ±×·¸Áö ¾ÊÀ¸¸é, »ç¿ëÀÚ°¡ ¸®½ºÆ® Ç׸ñÀ» ´õºíŬ¸¯ÇÑ °ÍÀÔ´Ï´Ù. ±×·¡¼­ OK¸¦ Ŭ¸¯ÇÑ °Í°ú ¶È°°ÀÌ Ãë±ÞÇÕ´Ï´Ù.
+; ±×·¡¼­ ´ÙÀ½ ¶óº§·Î ºüÁ® ³ª°©´Ï´Ù.
+ButtonOK:
+GuiControlGet, MyListBox  ; ListBoxÀÇ ÇöÀç ¼±ÅÃÀ» ¿­¶÷ÇÕ´Ï´Ù.
+MsgBox, 4,, Would you like to launch the file or document below?`n`n%MyListBox%
+IfMsgBox, No
+    return
+; ±×·¸Áö ¾ÊÀ¸¸é, ±âµ¿À» ½ÃµµÇÕ´Ï´Ù:
+Run, %MyListBox%,, UseErrorLevel
+if ErrorLevel = ERROR
+    MsgBox Could not launch the specified file.  Perhaps it is not associated with anything.
+return
+
+GuiClose:
+GuiEscape:
+ExitApp
+

 

+ +
; ¿¹Á¦: »ç¿ëÀÚ°¡ ¸¶¿ì½º¸¦ ƯÁ¤ ÄÜÆ®·Ñ¿¡ ¿Ã·Á ³õÀ» ¶§¸¶´Ù (ÅøÆÁÀ» ÅëÇÏ¿©) ¹®¸Æ-°¨Áö µµ¿ò¸»À» º¸¿©ÁÝ´Ï´Ù:
+
+Gui, Add, Edit, vMyEdit
+MyEdit_TT := "This is a tooltip for the control whose variable is MyEdit."
+Gui, Add, DropDownList, vMyDDL, Red|Green|Blue
+MyDDL_TT := "Choose a color from the drop-down list."
+Gui, Add, Checkbox, vMyCheck, This control has no tooltip.
+Gui, Show
+OnMessage(0x200, "WM_MOUSEMOVE")
+return
+
+WM_MOUSEMOVE()
+{
+    static CurrControl, PrevControl, _TT  ; _TT´Â ¾Æ·¡ÀÇ ToolTip ¸í·É¾î¿¡ »ç¿ëÇϱâ À§ÇØ ºó »óŸ¦ À¯ÁöÇÕ´Ï´Ù.
+    CurrControl := A_GuiControl
+    If (CurrControl <> PrevControl and not InStr(CurrControl, " "))
+    {
+        ToolTip  ; ÀÌÀüÀÇ ÅøÆÁÀ» ¸ðµÎ ²ü´Ï´Ù.
+        SetTimer, DisplayToolTip, 1000
+        PrevControl := CurrControl
+    }
+    return
+
+    DisplayToolTip:
+    SetTimer, DisplayToolTip, Off
+    ToolTip % %CurrControl%_TT  ; ¾ÕÀÇ ÆÛ¼¾Æ® »çÀÎÀº Ç¥Çö½ÄÀ» »ç¿ëÇ϶ó°í ¾Ë¸³´Ï´Ù.
+    SetTimer, RemoveToolTip, 3000
+    return
+
+    RemoveToolTip:
+    SetTimer, RemoveToolTip, Off
+    ToolTip
+    return
+}
+
+
+GuiClose:
+ExitApp
+

 

+
; ¿¹Á¦: Åõ¸í âÀ» ÅëÇÑ È­¸é-À§ µð½ºÇ÷¹ÀÌ (OSD):
+
+CustomColor = EEAA99  ; RGB »ö °¡´É (¾Æ·¡¿¡¼­ Åõ¸íÇÏ°Ô ¸¸µé °ÍÀÔ´Ï´Ù).
+Gui +LastFound +AlwaysOnTop -Caption +ToolWindow  ; +ToolWindow´Â ŽºÅ©¹Ù ¹öÆ°°ú ¾ËÆ®-ÅÇ ¸Þ´º Ç׸ñÀ» ȸÇÇÇÕ´Ï´Ù.
+Gui, Color, %CustomColor%
+Gui, Font, s32  ; Ä¿´Ù¶õ ±Û²Ã Å©±â¸¦ ¼³Á¤ÇÕ´Ï´Ù (32-Æ÷ÀÎÆ®).
+Gui, Add, Text, vMyText cLime, XXXXX YYYYY  ; XX & YY´Â ÀÚµ¿-Å©±â Á¶Àý âÀ¸·Î ±â¿©ÇÕ´Ï´Ù.
+; ÀÌ »öÀ» °¡Áø ¸ðµç Çȼ¿À» Åõ¸íÇÏ°Ô ¸¸µé°í ÅؽºÆ® ÀÚü´Â ¹ÝÅõ¸íÇÏ°Ô ¸¸µì´Ï´Ù (150):
+WinSet, TransColor, %CustomColor% 150
+SetTimer, UpdateOSD, 200
+Gosub, UpdateOSD  ; ŸÀ̸Ӹ¦ ±â´Ù¸®Áö ¾Ê°í ¸ÕÀú Áï½Ã °»½ÅÇÕ´Ï´Ù.
+Gui, Show, x0 y400 NoActivate  ; NoActivate´Â ÇöÀç È°¼º âÀ» ºñÈ°¼ºÈ­ÇÏÁö ¸øÇϵµ·Ï ¸·½À´Ï´Ù.
+return
+
+UpdateOSD:
+MouseGetPos, MouseX, MouseY
+GuiControl,, MyText, X%MouseX%, Y%MouseY%
+return
+

 

+
; ¿¹Á¦: ¹è°æ À̹ÌÁö À§¿¡ ÁßøµÈ ¿òÁ÷ÀÌ´Â Áøµµ ¹Ù.
+
+Gui, Color, White
+Gui, Add, Picture, x0 y0 h350 w450, %A_WinDir%\system32\ntimage.gif
+Gui, Add, Button, Default xp+20 yp+250, Start the Bar Moving
+Gui, Add, Progress, vMyProgress w416
+Gui, Add, Text, vMyText wp  ; wp´Â "ÀÌÀüÀÇ ³Êºñ¸¦ »ç¿ëÇ϶ó"´Â ¶æÀÔ´Ï´Ù.
+Gui, Show
+return
+
+ButtonStartTheBarMoving:
+Loop, %A_WinDir%\*.*
+{
+    if A_Index > 100
+        break
+    GuiControl,, MyProgress, %A_Index%
+    GuiControl,, MyText, %A_LoopFileName%
+    Sleep 50
+}
+GuiControl,, MyText, Bar finished.
+return
+
+GuiClose:
+ExitApp
+

 

+
; ¿¹Á¦: °£´ÜÇÑ À̹ÌÁö ºä¾î:
+
+Gui, +Resize
+Gui, Add, Button, default, &Load New Image
+Gui, Add, Radio, ym+5 x+10 vRadio checked, Load &actual size
+Gui, Add, Radio, ym+5 x+10, Load to &fit screen
+Gui, Add, Pic, xm vPic
+Gui, Show
+return
+
+ButtonLoadNewImage:
+FileSelectFile, file,,, Select an image:, Images (*.gif; *.jpg; *.bmp; *.png; *.tif; *.ico; *.cur; *.ani; *.exe; *.dll)
+if file =
+    return
+Gui, Submit, NoHide ; ¶óµð¿À ¹öÆ°ÀÇ °ªÀ» ÀúÀåÇÕ´Ï´Ù.
+if Radio = 1  ; À̹ÌÁö¸¦ ±×ÀÇ ½ÇÁ¦ Å©±â·Î º¸¿©ÁÝ´Ï´Ù.
+{
+    Width = 0
+    Height = 0
+}
+else ; Second radio is selected: À̹ÌÁö¸¦ È­¸é Å©±â¿¡ ¸Â°Ô Á¶ÀýÇÕ´Ï´Ù.
+{
+    Width := A_ScreenWidth - 28  ; ¸¶À̳ʽº 28 ¸¸Å­ Å×Åõ¸®¿Í ¿©¹é ¾È¿¡  ¿©À¯°¡ ÀÖ½À´Ï´Ù.
+    Height = -1  ; "È­¸é ºñÀ² À¯Áö"°¡ °¡Àå ÁÁ¾Æ º¸ÀÔ´Ï´Ù.
+}
+GuiControl,, Pic, *w%width% *h%height% %file%  ; À̹ÌÁö¸¦ ÀûÀçÇÕ´Ï´Ù.
+Gui, Show, xCenter y0 AutoSize, %file%  ; ±×¸² Å©±â¿¡ ¸Â°Ô âÀ» Á¶ÀýÇÕ´Ï´Ù.
+return
+
+GuiClose:
+ExitApp
+

 

+
; ¿¹Á¦: ¸Þ´º ¹Ù°¡ ÀÖ´Â °£´ÜÇÑ ÅؽºÆ® ÆíÁý±â.
+
+; ¸Þ´º ¹Ù¸¦ À§ÇÏ¿© ºÎ-¸Þ´º¸¦ »ý¼ºÇÕ´Ï´Ù:
+Menu, FileMenu, Add, &New, FileNew
+Menu, FileMenu, Add, &Open, FileOpen
+Menu, FileMenu, Add, &Save, FileSave
+Menu, FileMenu, Add, Save &As, FileSaveAs
+Menu, FileMenu, Add  ; Separator line.
+Menu, FileMenu, Add, E&xit, FileExit
+Menu, HelpMenu, Add, &About, HelpAbout
+
+; ºÎ-¸Þ´º¸¦ ¸Þ´º ¹Ù¿¡ ºÎÂøÇØ ¸Þ´º ¹Ù¸¦ »ý¼ºÇÕ´Ï´Ù:
+Menu, MyMenuBar, Add, &File, :FileMenu
+Menu, MyMenuBar, Add, &Help, :HelpMenu
+
+; ¸Þ´º ¹Ù¸¦ â¿¡ ºÎÂøÇÕ´Ï´Ù:
+Gui, Menu, MyMenuBar
+
+; ¸ÞÀÎ ÆíÁý ÄÜÆ®·ÑÀ» »ý¼ºÇÏ°í ±× Ã¢À» º¸¿©ÁÝ´Ï´Ù:
+Gui, +Resize  ; âÀ» Å©±â°¡ º¯°æ°¡´ÉÇÏ°Ô ¸¸µì´Ï´Ù.
+Gui, Add, Edit, vMainEdit WantTab W600 R20
+Gui, Show,, Untitled
+CurrentFileName =  ; ÇöÀç ÆÄÀÏÀÌ ¾øÀ½À» ³ªÅ¸³À´Ï´Ù.
+return
+
+FileNew:
+GuiControl,, MainEdit  ; ÆíÁý ÄÜÆ®µéÀ» ºñ¿ó´Ï´Ù.
+return
+
+FileOpen:
+Gui +OwnDialogs  ; »ç¿ëÀÚ°¡ FileSelectFile ´ëÈ­»óÀÚ¸¦ Æ÷±âÇϵµ·Ï ¸¸µé°í ³ª¼­ ¸ÞÀΠâÀ¸·Î µÇµ¹¾Æ ¿É´Ï´Ù.
+FileSelectFile, SelectedFileName, 3,, Open File, Text Documents (*.txt)
+if SelectedFileName =  ; No file selected.
+    return
+Gosub FileRead
+return
+
+FileRead:  ; È£ÃâÀÚ´Â º¯¼ö SelectedFileNameÀ» ¿ì¸® ´ë½Å¿¡ ¼³Á¤ÇÕ´Ï´Ù.
+FileRead, MainEdit, %SelectedFileName%  ; ÆÄÀÏÀÇ ³»¿ëÀ» º¯¼ö ¾ÈÀ¸·Î ÀÐ¾î µéÀÔ´Ï´Ù.
+if ErrorLevel
+{
+    MsgBox Could not open "%SelectedFileName%".
+    return
+}
+GuiControl,, MainEdit, %MainEdit%  ; ÅؽºÆ®¸¦ ÄÜÆ®·Ñ ¾È¿¡ ³Ö½À´Ï´Ù.
+CurrentFileName = %SelectedFileName%
+Gui, Show,, %CurrentFileName%   ; ÆÄÀÏ À̸§À» Á¦¸ñ ¹Ù¿¡ º¸¿©ÁÝ´Ï´Ù.
+return
+
+FileSave:
+if CurrentFileName =   ; ¾ÆÁ÷ ÆÄÀÏÀ̸§ÀÌ ¼±ÅõÇÁö ¾Ê¾Ò½À´Ï´Ù. ±×·¡¼­ ´ë½Å Save-As¸¦ ¼öÇàÇÕ´Ï´Ù.
+    Goto FileSaveAs
+Gosub SaveCurrentFile
+return
+
+FileSaveAs:
+Gui +OwnDialogs  ; »ç¿ëÀÚ°¡ FileSelectFile ´ëÈ­»óÀÚ¸¦ Æ÷±âÇϵµ·Ï ¸¸µé°í ¸ÞÀΠâÀ¸·Î µ¹¾Æ¿É´Ï´Ù.
+FileSelectFile, SelectedFileName, S16,, Save File, Text Documents (*.txt)
+if SelectedFileName =  ; ÆÄÀÏÀÌ ¼±ÅõÇÁö ¾Ê¾Ò½À´Ï´Ù.
+    return
+CurrentFileName = %SelectedFileName%
+Gosub SaveCurrentFile
+return
+
+SaveCurrentFile:  ; È£ÃâÀÚ´Â CurrentFileNameÀÌ ºñ¾î ÀÖÁö ¾ÊÀ½À» È®ÀÎÇÕ´Ï´Ù.
+IfExist %CurrentFileName%
+{
+    FileDelete %CurrentFileName%
+    if ErrorLevel
+    {
+        MsgBox The attempt to overwrite "%CurrentFileName%" failed.
+        return
+    }
+}
+GuiControlGet, MainEdit  ; ÆíÁý ÄÜÆ®·ÑÀÇ ³»¿ëÀ» ¿­¶÷ÇÕ´Ï´Ù.
+FileAppend, %MainEdit%, %CurrentFileName%  ; ³»¿ëÀ» ÆÄÀÏ¿¡ ÀúÀåÇÕ´Ï´Ù.
+; ¼º°øÇϸé, ÆÄÀÏ À̸§À» Á¦¸ñ ¹Ù¿¡ º¸¿©ÁÝ´Ï´Ù (FileSaveAs¿¡ ÀÇÇÏ¿© È£ÃâµÇ´Â °æ¿ì):
+Gui, Show,, %CurrentFileName%
+return
+
+HelpAbout:
+Gui, About:+owner1  ; ¸ÞÀΠâÀ» (Gui #1) "about box"ÀÇ ¼ÒÀ¯ÀÚ·Î ¸¸µì´Ï´Ù.
+Gui +Disabled  ; ¸ÞÀΠâÀ» ºñÈ°¼ºÈ­ ÇÕ´Ï´Ù.
+Gui, About:Add, Text,, Text for about box.
+Gui, About:Add, Button, Default, OK
+Gui, About:Show
+return
+
+AboutButtonOK:  ; ÀÌ ¼½¼ÇÀº À§ÀÇ "about box"°¡ »ç¿ëÇÕ´Ï´Ù.
+AboutGuiClose:
+AboutGuiEscape:
+Gui, 1:-Disabled  ; ¸ÞÀΠâÀ» ´Ù½Ã È°¼ºÈ­ ÇÕ´Ï´Ù (´ÙÀ½ ´Ü°è·Î ³ª¾Æ°¡±â Àü¿¡ ¹Ýµå½Ã È°¼ºÈ­ ÇØ¾ß ÇÔ).
+Gui Destroy  ; about box¸¦ Æı«ÇÕ´Ï´Ù.
+return
+
+GuiDropFiles:  ; ²ø¾î & ¶³±¸±â¸¦ Áö¿øÇÕ´Ï´Ù.
+Loop, Parse, A_GuiEvent, `n
+{
+    SelectedFileName = %A_LoopField%  ; ù ¹ø° ÆÄÀϸ¸ ¾ò½À´Ï´Ù (¿©·¯ ÆÄÀÏÀÌ ÀÖÀ» °æ¿ì¿¡).
+    break
+}
+Gosub FileRead
+return
+
+GuiSize:
+if ErrorLevel = 1  ; âÀº ÃÖ¼ÒÈ­µÇ¾î ÀÖ½À´Ï´Ù. ¾Æ¹« ÇÊ¿äµµ ¾ø½À´Ï´Ù.
+    return
+; ±×·¸Áö ¾ÊÀ¸¸é, âÀº Å©±â°¡ º¯°æµÇ°Å³ª ÃÖ´ëÈ­µË´Ï´Ù. ÆíÁý ÄÜÆ®·ÑÀÇ Å©±â¸¦À» ±×¿¡ ¸Â°Ô Á¶ÀýÇÕ´Ï´Ù.
+NewWidth := A_GuiWidth - 20
+NewHeight := A_GuiHeight - 20
+GuiControl, Move, MainEdit, W%NewWidth% H%NewHeight%
+return
+
+FileExit:     ; »ç¿ëÀÚ°¡ File ¸Þ´º¿¡¼­ "Exit"À» ¼±ÅÃÇß½À´Ï´Ù.
+GuiClose:  ; »ç¿ëÀÚ°¡ âÀ» ´Ý¾Ò½À´Ï´Ù.
+ExitApp
+ + diff --git a/src/docs/commands/GuiControl.htm b/src/docs/commands/GuiControl.htm new file mode 100644 index 0000000..d3e780d --- /dev/null +++ b/src/docs/commands/GuiControl.htm @@ -0,0 +1,157 @@ + + + + +GuiControl + + + + + + + +

GuiControl

+ +

GUI â ¾ÈÀÇ ÄÜÆ®·ÑÀ» ´Ù¾çÇÏ°Ô º¯°æÇÕ´Ï´Ù.

+ +
GuiControl, Sub-command, ControlID [, Param3]
+

¸Å°³º¯¼ö

+
+ +
Sub-command
+

¾Æ·¡ ¸®½ºÆ® ÂüÁ¶.

+ +
ControlID
+

¸ñÇ¥ ÄÜÆ®·Ñ¿¡ ¿¬°ü º¯¼ö°¡ ÀÖ´Ù¸é, ±× º¯¼öÀÇ À̸§À» ControlID·Î ÁöÁ¤ÇϽʽÿÀ (ÀÌ ¹æ¹ýÀº ´ÙÀ½¿¡ ±â¼úÇÏ´Â ¹æ¹ýº¸´Ù ¿ì¼± ¼øÀ§°¡ ³ô½À´Ï´Ù). ÀÌ·± ÀÌÀ¯ ¶§¹®¿¡, º¸Åë º¯¼ö¸¦ ÄÜÆ®·Ñ¿¡ ÇÒ´çÇÏ´Â °ÍÀÌ °¡Àå ÁÁ½À´Ï´Ù. ³ªÁß¿¡ ±× ÄÜÆ®·Ñ¿¡ GuiControl ¶Ç´Â GuiControlGetÀ» ÅëÇÏ¿© Á¢±ÙÇÕ´Ï´Ù. ±× ÄÜÆ®·ÑÀÌ ((GroupBox³ª Text °°ÀÌ) ÀÔ·Â-°¡´É À¯ÇüÀÌ ¾Æ´ÒÁö¶óµµ Á¢±ÙÇÒ ¼ö ÀÖ½À´Ï´Ù.

+

+ ±×·¸Áö¸¸, ControlID´Â ClassNN (ÄÜÆ®·ÑÀÇ Å¬·¡½ºÀ̸§°ú ½Çü ¹øÈ£) ¶Ç´Â ÄÜÆ®·ÑÀÇ ÅؽºÆ®ÀÏ ¼ö ÀÖ½À´Ï´Ù. µÑ ¸ðµÎ Window Spy¸¦ ÅëÇÏ¿© ¾Ë¾Æ³¾ ¼ö ÀÖ½À´Ï´Ù. ÅؽºÆ®¸¦ »ç¿ëÇÒ ¶§ ºÎÇÕ ÇàÀ§´Â SetTitleMatchMode·Î °áÁ¤µË´Ï´Ù. ÁÖÀÇ: ±×¸² ÄÜÆ®·ÑÀÇ ÆÄÀÏ À̸§Àº (±× ÄÜÆ®·ÑÀÌ »ý¼ºµÇ´Â ¼ø°£¿¡ ÁöÁ¤µÈ ´ë·Î) ±×ÀÇ ControlID·Î »ç¿ëÀÌ °¡´ÉÇÕ´Ï´Ù.

+

+ [v1.1.04+]: ControlID´Â ÄÜÆ®·ÑÀÇ HWND°¡ µÉ ¼ö ÀÖ½À´Ï´Ù.

+

+ ÄÜÆ®·ÑÀÌ ±âº» GUI À§¿¡ ÀÖÁö ¾ÊÀ¸¸é, ±× GUIÀÇ À̸§µµ ¿ª½Ã ÁöÁ¤ÇØ¾ß ÇÕ´Ï´Ù -- ´Ü, [v1.1.20+]¿¡¼­´Â ControlIDÀÌ HWNDÀÔ´Ï´Ù. °¢ HWND°¡ À¯ÀÏÇϱ⠶§¹®ÀÔ´Ï´Ù. ÀÚ¼¼ÇÑ °ÍÀº ³íÆòÀ» ÂüÁ¶ÇϽʽÿÀ.

+
+ +
Param3
+

ÀÌ ¸Å°³º¯¼ö´Â »ý·«ÇÕ´Ï´Ù. ´Ü, ¾Æ·¡ÀÇ ºÎ-¸í·É¾î ¸®½ºÆ®¿¡¼­ °íÁöÇÑ °æ¿ì´Â ¿¹¿ÜÀÔ´Ï´Ù.

+ +
+ +

ErrorLevel

+

+[v1.1.04+] ÀÌ ¸í·É¾î´Â ½ÇÆнà ¿¹¿Ü¸¦ ´øÁú ¼ö ÀÖ½À´Ï´Ù. ´õ ÀÚ¼¼ÇÑ Á¤º¸´Â ½ÇÇà½Ã°£ ¿¡·¯¸¦ ÂüÁ¶ÇϽʽÿÀ.

+

ErrorLevelÀº ÁöÁ¤µÈ â/ÄÜÆ®·ÑÀÌ Á¸ÀçÇÏÁö ¾Ê°Å³ª ±âŸ ¾î¶² ¹®Á¦ ¶§¹®¿¡ ¸í·É¾î°¡ ÀÛµ¿ÇÏÁö ¸øÇß´Ù¸é 1ÀÌ ¼³Á¤µË´Ï´Ù. ±×·¸Áö ¾ÊÀ¸¸é 0ÀÌ ¼³Á¤µË´Ï´Ù.

+ +

ºÎ-¸í·É¾î

+

+(Blank): Sub-command¸¦ ºñ¿öµÎ¸é Param3À» ÅëÇÏ¿© »õ·Î¿î ³»¿ëÀ» ÄÜÆ®·Ñ¿¡ ³ÖÀ» ¼ö ÀÖ½À´Ï´Ù. ±¸Ã¼ÀûÀ¸·Î ¸»ÇØ:

+

Picture: Param3Àº ÀûÀçÇÒ »õ À̹ÌÁöÀÇ ÆÄÀÏÀ̸§À̾î¾ß ÇÕ´Ï´Ù (Áö¿øµÇ´Â ÆÄÀÏ À¯ÇüÀº Gui Picture¸¦ ÂüÁ¶ÇϽʽÿÀ). ¹Ù·Î ±× ÆÄÀÏÀ̸§ ¾Õ¿¡ ´ÙÀ½ ¿É¼ÇÀ» ÁöÁ¤ÇÒ ¼ö ÀÖ½À´Ï´Ù: + +*wN (³Êºñ N), *hN (³ôÀÌ N), ±×¸®°í *IconN (DLL ¶Ç´Â EXE ÆÄÀÏ ¾È¿¡¼­ ¾ÆÀÌÄÜ ±×·ì ¹øÈ£ N). + +´ÙÀ½ ¿¹Á¦¿¡¼­, µÎ ¹ø° ¾ÆÀÌÄÜ ±×·ìÀÇ ±âº» ¾ÆÀÌÄÜÀÌ ³Êºñ 100 ±×¸®°í ³ôÀÌ ÀÚµ¿À¸·Î "È­¸é ºñÀ² À¯Áö"¸¦ ÅëÇÏ¿© ÀûÀçµË´Ï´Ù: GuiControl,, MyPic, *icon2 *w100 *h-1 C:\My Application.exe. *w0 *h0À» ÁöÁ¤ÇÏ¸é ±× À̹ÌÁöÀÇ ½ÇÁ¦ ³Êºñ¿Í ³ôÀ̸¦ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. *w¿Í *h¸¦ »ý·«Çϸé, À̹ÌÁö´Â ÄÜÆ®·ÑÀÇ ÇöÀç Å©±â¿¡ ¸Â°Ô Á¶ÀýµË´Ï´Ù. ¿©·¯-¾ÆÀÌÄÜ .ICO ÆÄÀϷκÎÅÍ ÀûÀçÇÒ ¶§, ³Êºñ¿Í ³ôÀ̸¦ ÁöÁ¤Çصµ ¾î´À ¾ÆÀÌÄÜÀ» ÀûÀçÇÒÁö °áÁ¤µË´Ï´Ù. ÁÖÀÇ: ¸¶Áö¸· ¿É¼Ç°ú ÆÄÀÏÀ̸§ »çÀÌ¿¡ ÅÇÀ̳ª ½ºÆäÀ̽º´Â Çϳª¸¸ »ç¿ëÇϽʽÿÀ; ³ª¸ÓÁö ½ºÆäÀ̽º¿Í ÅÇÀº ÆÄÀÏÀ̸§ÀÇ ÀϺηΠ°£Áֵ˴ϴÙ.

+

+Text/Button/GroupBox/StatusBar: Param3¿¡ ÄÜÆ®·ÑÀÇ »õ ÅؽºÆ®¸¦ ÁöÁ¤ÇϽʽÿÀ. ÄÜÆ®·ÑÀº ÀÚµ¿À¸·Î È®´ëµÇÁö ¾Ê±â ¶§¹®¿¡, ÄÜÆ®·ÑÀÇ Å©±â¸¦ Å°¿ï ÇÊ¿ä°¡ ÀÖ´Ù¸é GuiControl, Move, MyText, W300¸¦ »ç¿ëÇϽʽÿÀ. StatusBar¿¡ ´ëÇÏ¿©, ÀÌ·¸°Ô Çϸé ÅؽºÆ®¿¡¼­ ¿ÀÁ÷ ¾Õ ºÎºÐ¸¸ ¼³Á¤µË´Ï´Ù (´õ À¯¿¬ÇÏ·Á¸é SB_SetText()¸¦ »ç¿ëÇϽʽÿÀ).

+

+Edit: Param3 ¾È¿¡¼­ ¾Õ¿¡ ij¸®Áö ¸®ÅÏÀÌ ¾ø´Â (`r) ¶óÀÎÇǵå´Â (`n) ÀÚµ¿À¸·Î CR+LF (`r`n)·Î º¯È¯µÇ¾î¼­ ¿Ã¹Ù¸£°Ô Ç¥½ÃµÇµµ·Ï ¸¸µì´Ï´Ù. ±×·¸Áö¸¸, ÀÌ°ÍÀº º¸Åë ½Å°æ¾µ ÇÊ¿ä°¡ ¾ø½À´Ï´Ù. Gui Submit¿Í GuiControlGet OutputVar ¸í·É¾î°¡ CR+LF¸¦ LF (`n)·Î ±³Ã¼Çؼ­ ÀÚµ¿À¸·Î ÀÌ º¯È¯À» ȯ¿øÇϱ⠶§¹®ÀÔ´Ï´Ù.

+

+Hotkey: Param3À» ºñ¿ì¸é ÄÜÆ®·ÑÀ» û¼ÒÇÒ ¼ö ÀÖ½À´Ï´Ù. Áï ¼ö½ÄÅ°¿Í Å° À̸§À» ºñ¿ï ¼ö ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î: ^!c, ^Numpad1, +Home. À¯ÀÏÇÏ°Ô Áö¿øµÇ´Â ¼ö½ÄÅ°´Â ^ (Control), ! (Alt), ±×¸®°í + (Shift)ÀÔ´Ï´Ù. »ç¿ë °¡´ÉÇÑ Å° À̸§Àº Å° ¸ñ·ÏÀ» ÂüÁ¶ÇϽʽÿÀ.

+

+Checkbox: Param3°¡ 0ÀÌ¸é ¹öÆ°ÀÇ Ã¼Å©Ç¥½ÄÀ» Áö¿ï ¼ö ÀÖ½À´Ï´Ù. 1À̸é üũ Ç¥½ÄÀ» ÇÕ´Ï´Ù. ¶Ç´Â -1À̸é ȸ»ö üũ°¡ Ç¥½ÄµË´Ï´Ù. ±×·¸Áö ¾ÊÀ¸¸é, Param3Àº ÄÜÆ®·ÑÀÇ »õ ĸ¼Ç/ÅؽºÆ®·Î °£Áֵ˴ϴÙ. ÀÌ ÇàÀ§¸¦ ¿À¹ö¶óÀ̵å ÇÏ´Â ¹æ¹ýÀº ¾Æ·¡ÀÇ Text¸¦ ÂüÁ¶ÇϽʽÿÀ.

+

+Radio: À§ÀÇ Checkbox¿Í µ¿ÀÏÇÕ´Ï´Ù. ±×·¸Áö¸¸, ¶óµð¿À ¹öÆ°ÀÌ Ã¼Å©µÇ¾î (ÄÑÁ®) ÀÖ°í ±×¸®°í ¿©·¯-¶óµð¿À ±×·ìÀÇ ¸â¹ö¶ó¸é, ±× ±×·ì¿¡¼­ ´Ù¸¥ ¶óµð¿À ¹öÆ°Àº ÀÚµ¿À¸·Î üũ Ç¥½ÄÀÌ ÇØÁ¦µË´Ï´Ù. º¯¼ö°¡ Çϳª¸¸ ÀÖ´Â ¶óµð¿À ±×·ì ¾È¿¡¼­ »õ ¹öÆ°¿¡ üũ Ç¥½Ã¸¦ ÇÏ·Á¸é, ControlID¿¡ ¹öÆ°ÀÇ À̸§/ÅؽºÆ®¸¦ ÁöÁ¤ÇϽʽÿÀ. ´Ü, ±× º¯¼ö°¡ Á÷Á¢ÀûÀ¸·Î ¿¬°üµÇ¾î ÀÖ´Â ¹öÆ°ÀÌ ¾Æ´Ï¾î¾ß ÇÕ´Ï´Ù.

+

+DateTime/MonthCal: Param3¿¡ YYYYMMDDHH24MISS Çü½ÄÀ¸·Î ³¯Â¥-½Ã°£ µµÀåÀ» ÁöÁ¤ÇϽʽÿÀ. %A_Now%¸¦ ÁöÁ¤Çϸé ÇöÀç ³¯Â¥¿Í ½Ã°£À» »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù (¿À´Ã). DateTime ÄÜÆ®·Ñ¿¡ ´ëÇÏ¿©, Param3À» »ý·«Çϸé (¸¸¾à ÀÌ ´É·ÂÀ» °¡Áö°í »ý¼ºµÇ¾úÀ» °æ¿ì) ÄÜÆ®·Ñ¿¡ ³¯Â¥/½Ã°£ÀÌ ¼±ÅõÇÁö ¾ÊÀ» ¼öµµ ÀÖ½À´Ï´Ù. MonthCal ÄÜÆ®·Ñ¿¡ ´ëÇÏ¿©, ÄÜÆ®·ÑÀÌ ´ÙÁß-¼±ÅÃÀÌ µÈ´Ù¸é ¹üÀ§¸¦ ÁöÁ¤ÇÒ ¼öµµ ÀÖ½À´Ï´Ù.

+

UpDown/Slider/Progress: Param3Àº ÄÜÆ®·ÑÀÇ »õ À§Ä¡°¡ µÇ¾î¾ß ÇÕ´Ï´Ù. Param3ÀÇ Ã¹ ¹®ÀÚ°¡ Ç÷¯½º »çÀÎÀ̸é, ±× ¼ýÀÚ´Â ÇöÀç À§Ä¡·ÎºÎÅÍÀÇ ¿ÀÇÁ¼Â(»ó´ë°Å¸®)·Î °£Áֵ˴ϴÙ. ¿¹¸¦ µé¾î, +10À̸é À§Ä¡°¡ 10¸¸Å­ Áõ°¡ÇÏ°í +-10À̸é (Ç÷¯½º ¸¶À̳ʽº 10) À§Ä¡°¡ 10¸¸Å­ °¨¼ÒÇÕ´Ï´Ù. »õ À§Ä¡°¡ ÄÜÆ®·ÑÀÇ ¹üÀ§ ¹ÛÀ̸é, ±× ÄÜÆ®·ÑÀº ÀϹÝÀûÀ¸·Î ±× ±ÙóÀÇ À¯È¿ÇÑ °ªÀÌ ¼³Á¤µË´Ï´Ù.

+

+Tab/DropDownList/ComboBox/ListBox: Param3¿¡´Â ÄÜÆ®·ÑÀÇ ¸®½ºÆ® ³¡¿¡ Ãß°¡µÉ ¿£Æ®¸® ¸®½ºÆ®°¡ ÆÄÀÌÇÁ ¹®ÀÚ·Î ±¸ºÐµÇ¾î µé¾î ÀÖ¾î¾ß ÇÕ´Ï´Ù. ´ë½Å¿¡ ±× ¸®½ºÆ®¸¦ ±³Ã¼ÇÏ·Á¸é (µ¤¾î¾²·Á¸é) ÆÄÀÌÇÁ ¹®ÀÚ¸¦ ù ¹®ÀÚ·Î Æ÷ÇÔ½ÃÅ°½Ê½Ã¿À (¿¹, |Red|Green|Blue). ÄÜÆ®·ÑÀ» ºñ¿ì·Á¸é, ÆÄÀÌÇÁ ¹®ÀÚ¸¸ ÁöÁ¤ÇϽʽÿÀ (|). ¹Ì¸®-¼±ÅÃµÈ ¿£Æ®¸® Áß Çϳª¸¦ ¾òÀ¸·Á¸é, µÎ °³ÀÇ ÆÄÀÌÇÁ¸¦ ±× ´ÙÀ½¿¡ Æ÷ÇÔ½ÃÅ°½Ê½Ã¿À (¿¹, Red|Green||Blue). ÇÊµå »çÀÌÀÇ °¡¸§ÀÚ´Â ÆÄÀÌÇÁ ¸»°í ´Ù¸¥ °ÍÀ¸·Î ¹Ù²Ü ¼ö ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î, Gui +Delimiter`nÀÌ¸é ¶óÀÎÇǵå·Î ¹Ù²î°í Gui +DelimiterTabÀ̸é ÅÇÀ¸·Î ¹Ù²ò´Ï´Ù (`t).

+

+Tab controls: À§ÀÇ ¹®´Ü¿¡¼­ ±â¼úÇÑ ÇàÀ§ ÀÌ¿Ü¿¡µµ, ÅÇÀÇ ºÎ-ÄÜÆ®·ÑÀº ¿©ÀüÈ÷ ÀÚ½ÅÀÇ ¿ø·¡ÀÇ ÅÇ ¹øÈ£¿Í ¿¬°üµÇ¾î ÀÖ½À´Ï´Ù; Áï, Àý´ë·Î ÅÇÀÇ ½ÇÁ¦ Ç¥½Ã-À̸§°ú ¿¬°üµÇÁö ¾Ê½À´Ï´Ù. ÀÌ·± ÀÌÀ¯·Î, ÅÇÀÇ À̸§À» ¹Ù²Ù°Å³ª À̵¿À» Çصµ ºÎ-ÄÜÆ®·ÑÀÌ ¼ÓÇÑ ÅÇ ¹øÈ£´Â ¹Ù²îÁö ¾Ê½À´Ï´Ù. ¿¹¸¦ µé¾î, ¼¼ °³ÀÇ ÅÇ "Red|Green|Blue"°¡ ÀÖ°í GuiControl,, MyTab, |Red|Blue¸¦ ¼ö´ÜÀ¸·Î µÎ ¹ø° ÅÇÀ» Á¦°ÅÇϸé, ¿ø·¡ Green°ú ¿¬°üµÇ¾î ÀÖ´ø ºÎ-¸í·É¾î´Â ÀÌÁ¦ Blue¿Í ¿¬°üµË´Ï´Ù. ÀÌ·± ÇàÀ§ ¶§¹®¿¡, º¸Åë ³¡¿¡ ÀÖ´Â ÅǸ¸ Á¦°ÅÇØ¾ß ÇÕ´Ï´Ù. ÀÌ·± ½ÄÀ¸·Î Á¦°ÅµÈ ÅǵéÀº ³ªÁß¿¡ ´Ù½Ã Ãß°¡ÇÒ ¼ö ÀÖ½À´Ï´Ù. ±× ¶§ ¿ø·¡ ÄÜÆ®·Ñ ¼¼Æ®¸¦ ´Ù½Ã ¿ä±¸ÇÒ °ÍÀÔ´Ï´Ù.

+

+ListView ±×¸®°í TreeView: À̰͵éÀº Sub-command°¡ ºñ¾î ÀÖÀ» ¶§ Áö¿øµÇÁö ¾Ê½À´Ï´Ù. ´ë½Å¿¡, ³»Àå ListView ÇÔ¼ö¿Í TreeView ÇÔ¼ö¸¦ »ç¿ëÇϽʽÿÀ.

+


+ GuiControl, Text: À§¿Í µ¿ÀÏÇÏ°Ô ÇàÀ§ÇÕ´Ï´Ù. ´Ü, ´ÙÀ½Àº ¿¹¿ÜÀÔ´Ï´Ù:
+Checkbox/Radio: Param3Àº »õ ÅؽºÆ®/ĸ¼ÇÀ¸·Î °£Áֵ˴ϴÙ. -1, 0, ¶Ç´Â 1ÀÏÁö¶óµµ ¸¶Âù°¡ÁöÀÔ´Ï´Ù.
+DateTime: Param3Àº ÄÜÆ®·ÑÀÌ º¸¿©ÁÖ´Â »õ ³¯Â¥/½Ã°£ Çü½ÄÀ¸·Î °£Áֵ˴ϴÙ. Param3À» »ý·«Çϸé, ¸ÂÃã Æ÷¸ËÀº ¸ðµÎ Á¦°ÅµÇ°í ªÀº-³¯Â¥ Çü½ÄÀÌ È¿·ÂÀ» ¹ßÈÖÇÕ´Ï´Ù.
+ComboBox: Param3Àº ComboBoxÀÇ Edit ÄÜÆ®·Ñ ¾È¿¡ Á÷Á¢ÀûÀ¸·Î ³ÖÀ» ÅؽºÆ®·Î °£Áֵ˴ϴÙ.

+

+GuiControl, Move: ÄÜÆ®·ÑÀ» À̵¿Çϰųª Å©±â¸¦ ¹Ù²ß´Ï´Ù. ´ÙÀ½ ¿É¼Ç ±âÈ£ Áß Çϳª ÀÌ»óÀ» Param3¿¡ ÁöÁ¤ÇϽʽÿÀ: X (GUI âÀÇ Å¬¶óÀ̾ðÆ® ±¸¿ª¿¡ »ó´ëÀûÀÎ x-ÁÂÇ¥, Ŭ¶óÀ̾ðÆ® ±¸¿ª¿¡¼­ Á¦¸ñ ¹Ù, ¸Þ´º ¹Ù, ±×¸®°í Å׵θ®´Â Á¦¿ÜµË´Ï´Ù); Y (y-ÁÂÇ¥), W (Width), H (Height). (°¢ ¼ýÀÚ´Â ½ÊÀ°Áø¼ö°¡ ¾Æ´Ï¶ó ½ÊÁø¼ö·Î ÁöÁ¤ÇϽʽÿÀ.) ¿¹¸¦ µé¾î:

+
GuiControl, Move, MyEdit, x10 y20 w200 h100
+GuiControl, Move, MyEdit, % "x" VarX+10 "y" VarY+5 "w" VarW*2 "h" VarH*1.5 ; "% " Á¢µÎ ½Éº¼À» ÅëÇÏ¿© Ç¥Çö½ÄÀ» »ç¿ëÇÕ´Ï´Ù.
+

+GuiControl, MoveDraw: (À§ÀÇ)"Move"¿Í °°½À´Ï´Ù. ´Ü, ÄÜÆ®·ÑÀÌ Á¡À¯ÇÏ°í ÀÖ´Â GUI âÀ» ´Ù½Ã Ä¥Çϱ⵵ ÇÕ´Ï´Ù. ÀÌ ¶§¹®¿¡ ¹Ýº¹ÀûÀ¸·Î »¡¸® È£ÃâÇÏ¸é ¿øÇÏÁö ¾Ê´Â ±ôºý°Å¸²ÀÌ ¹ß»ýÇÒ ¼ö ÀÖÁö¸¸, GroupBoxes¿Í °°Àº ÄÜÆ®·ê À¯Çü¿¡ ±×¸² ÀÜ»óÀÌ ³²´Â ¹®Á¦°¡ ÇØ°áµË´Ï´Ù. v1.0.48.04+¿¡¼­, ¸¶Áö¸· ¸Å°³º¯¼ö¸¦ »ý·«Çϸé À̵¿ÇÒ ÇÊ¿ä ¾øÀÌ ´Ù½Ã ±×¸± ¼ö ÀÖ½À´Ï´Ù.

+

+GuiControl, Focus: Å°º¸µå ÃÊÁ¡À» ÄÜÆ®·Ñ¿¡ ¼³Á¤ÇÕ´Ï´Ù. È¿°ú°¡ ÀÖÀ¸·Á¸é, âÀº ÀϹÝÀûÀ¸·Î ÃÖ¼ÒÈ­µÇ¾î Àְųª ¼û¾î ÀÖÀ¸¸é ¾ÈµË´Ï´Ù.

+

+GuiControl, Enable / Disable: ÄÜÆ®·ÑÀ» È°¼ºÈ­ Çϰųª ºÒ´ÉÀ¸·Î ¸¸µì´Ï´Ù (ȸ»ö ó¸®). ÅÇ ÄÜÆ®·Ñ¿¡ ´ëÇÏ¿©, ÀÌ´Â ¶ÇÇÑ ÅÇÀÇ ¸ðµç ÇÏÀ§-ÄÜÆ®·Ñµµ ÄÑ°í ²ü´Ï´Ù. ±×·¸Áö¸¸, GuiControl DisableÀ» ÅëÇÏ¿© ¸í½ÃÀûÀ¸·Î ²¨Áø ÇÏÀ§-ÄÜÆ®·ÑÀº ±× ¼³Á¤À» ±â¾ïÇÕ´Ï´Ù. ±×·¡¼­ ±×ÀÇ Tab ÄÜÆ®·ÑÀÌ ´Ù½Ã È°¼ºÈ­ µÇ¾îµµ ¿©ÀüÈ÷ ºÒ´É »óÅ·ΠÀÖ½À´Ï´Ù. ´Ü¾î Disable ¶Ç´Â Enable ´ÙÀ½¿¡ Áï½Ã ¼±ÅÃÀûÀ¸·Î 0 ¶Ç´Â 1ÀÌ µû¶ó¿Ã ¼ö ÀÖ½À´Ï´Ù. 0ÀÌ¸é ¹Ý´ë·Î µÚÁý¾îÁö´Â È¿°ú°¡ ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î, Enable ±×¸®°í Enable%VarContainingOne%ÀÌ¸é µÑ ¸ðµÎ ÄÜÆ®·ÑÀ» È°¼ºÈ­ ÇÏÁö¸¸, Enable%VarContainingZero%´Â ÄÜÆ®·ÑÀ» ºÒ´ÉÈ­ ½Ãŵ´Ï´Ù.

+

+GuiControl, Hide / Show: ÄÜÆ®·ÑÀ» º¸¿©Áְųª °¨Ãä´Ï´Ù. Tab ÄÜÆ®·Ñ¿¡ ´ëÇÏ¿©, ÀÌ°ÍÀº ¶Ç ÅÇÀÇ ¸ðµç ÇÏÀ§ ÄÜÆ®·Ñµµ º¸¿©Áְųª °¨Ãä´Ï´Ù. ¶Ç ÄÜÆ®·ÑÀÇ ´ÜÃà Å°°¡ (¹ØÁÙ ±âÈ£) ÀÛµ¿ÇÏÁö ¸øÇϵµ·Ï ¸·°í ½Í´Ù¸é, GuiControl Disable¸¦ ÅëÇÏ¿© ±× ÄÜÆ®·ÑÀ» ²ô½Ê½Ã¿À. ´Ü¾î Hide ¶Ç´Â Show´Â ´ÙÀ½¿¡ ¹Ù·Î ¼±ÅÃÀûÀ¸·Î 0 ¶Ç´Â 1ÀÌ µû¶ó¿Ã ¼ö ÀÖ½À´Ï´Ù. 0ÀÌ¸é ¹Ý´ë·Î µÚÁý¾îÁö´Â È¿°ú°¡ ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î, Show ±×¸®°í Show%VarContainingOne%´Â µÑ ´Ù ÄÜÆ®·ÑÀ» º¸¿©ÁÖÁö¸¸, Show%VarContainingZero%´Â ÄÜÆ®·ÑÀ» °¨Ãä´Ï´Ù.

+

+GuiControl, Delete (¾ÆÁ÷ ±¸ÇöµÇÁö ¾ÊÀ½): ÀÌ ºÎ-¸í·É¾î´Â ¾ÆÁ÷ Á¸ÀçÇÏÁö ¾Ê½À´Ï´Ù. ¿ìȸåÀ¸·Î¼­, (À§ÀÇ) Hide ¶Ç´Â DisableÀ» »ç¿ëÇϰųª ¶Ç´Â Gui Destroy¸¦ ÅëÇÏ¿© Àüü âÀ» Æı«ÇÏ°í ´Ù½Ã »ý¼ºÇϽʽÿÀ.

+

+GuiControl, Choose, ControlID, N: ListBox, DropDownList, ComboBox, ¶Ç´Â Tab ÄÜÆ®·Ñ ¾ÈÀÇ ¼±ÅÃÀÌ N¹ø ° ¿£Æ®¸®°¡ µÇµµ·Ï ¼³Á¤ÇÕ´Ï´Ù. NÀº 1À̸é ù ¿£Æ®¸®, 2ÀÌ¸é µÎ ¹ø° ¿£Æ®¸®, µîµîÀÌ µÇ¾î¾ß ÇÕ´Ï´Ù. NÀÌ Á¤¼ö°¡ ¾Æ´Ï¸é, ´ë½Å¿¡ ¾Æ·¡¿¡ ±â¼úÇÑ ChooseString ¹æ¹ýÀÌ »ç¿ëµË´Ï´Ù. [v1.1.06+]: NÀÌ 0À̸é, ListBox, DropDownList ¶Ç´Â ComboBoxÀÇ ÇöÀç ¼±ÅÃÀÌ Á¦°ÅµË´Ï´Ù.

+

+Control Choose¿Í ´Ù¸£°Ô, ÀÌ ºÎ-¸í·É¾î´Â ÄÜÆ®·Ñ¿¡ ¿¬°üµÈ ¾î¶² g-labelµµ Ã˹߽ÃÅ°Áö ¾Ê½À´Ï´Ù. ´Ü, N ¾Õ¿¡ ÆÄÀÌÇÁ ¹®ÀÚ°¡ ÀÖ´Â °æ¿ì´Â ¿¹¿ÜÀÔ´Ï´Ù (±×·¸´Ù°í Çϵµ¶óµµ, g-labelÀº »õ ¼±ÅÃÀÌ ÀÌÀü ¼±Åðú ´Ù¸¦ °æ¿ì¿¡¸¸ Ã˹ߵ˴ϴÙ. Àû¾îµµ Tab ÄÜÆ®·ÑÀº ±×·¸½À´Ï´Ù.). + +¿¹¸¦ µé¾î: GuiControl, Choose, MyListBox, |3.

+

+¶Ç Á¾·á À̺¥Æ®¸¦ ÀϾµµ·Ï ¸¸µé·Á¸é (ListBoxÀÇ °æ¿ì ´õºí Ŭ¸¯), + +¾Õ¿¡ ÆÄÀÌÇÁ¸¦ Çϳª ´ë½Å¿¡ µÎ °³ Æ÷ÇÔÇϽʽÿÀ (ÀÌ°ÍÀº Tab ÄÜÆ®·Ñ¿¡´Â Áö¿øµÇÁö ¾Ê½À´Ï´Ù).

+

+´ÙÁß-¼±Åà ListBox¿¡¼­ ¸ðµç Ç׸ñÀ» ¼±ÅÃÇϰųª ÇØÁ¦ÇÏ·Á¸é, ´ÙÀ½ ¿¹Á¦¸¦ µû¸£½Ê½Ã¿À:

+
Gui +LastFound  ; ¾Æ·¡¿¡¼­ WinTitleÀ» ÁöÁ¤ÇÒ ÇÊ¿ä°¡ ¾ø½À´Ï´Ù.
+PostMessage, 0x185, 1, -1, ListBox1  ; ¸ðµç Ç׸ñÀ» ¼±ÅÃÇÕ´Ï´Ù. 0x185°¡ LB_SETSELÀÔ´Ï´Ù.
+PostMessage, 0x185, 0, -1, ListBox1  ; ¸ðµç Ç׸ñÀ» ¼±Åà ÇØÁ¦ÇÕ´Ï´Ù.
+GuiControl, Choose, ListBox1, 0  ; ¸ðµç Ç׸ñÀ» ¼±Åà ÇØÁ¦ÇÕ´Ï´Ù (v1.1.06+ ÇÊ¿ä).
+

+GuiControl, ChooseString, ControlID, String: ListBox, DropDownList, ComboBox, ¶Ç´Â Tab ÄÜÆ®·Ñ¿¡¼­ ¾ÕÂÊ ºÎºÐÀÌ String¿¡ ºÎÇÕÇÏ´Â ¿£Æ®¸®°¡ ¼±ÅÃÀÌ µÇµµ·Ï ¼³Á¤ÇÕ´Ï´Ù. °Ë»öÀº ´ë¼Ò¹®ÀÚ¸¦ ±¸ºÐÇÏÁö ¾Ê½À´Ï´Ù. ¿¹¸¦ µé¾î, ÄÜÆ®·Ñ ¾È¿¡ "UNIX Text" Ç׸ñÀÌ ´ã°Ü ÀÖÀ» °æ¿ì, ´Ü¾î unix (¼Ò¹®ÀÚ)¸¸ ÁöÁ¤Çصµ ÃæºÐÈ÷ ¼±ÅÃÇÒ ¼ö ÀÖ½À´Ï´Ù. ÆÄÀÌÇÁ¿Í ÀÌÁß-ÆÄÀÌÇÁ Á¢µÎ ±âÈ£µµ Áö¿øÇÕ´Ï´Ù (ÀÚ¼¼ÇÑ °ÍÀº À§ÀÇ "Choose"¸¦ ÂüÁ¶ÇϽʽÿÀ).

+

+GuiControl, Font: ÄÜÆ®·ÑÀÇ ±Û²ÃÀ» ¸ð¾ç, Å©±â, »ö ±×¸®°í ÇöÀç È¿°ú°¡ ÀÖ´Â ½ºÅ¸ÀÏ¿¡ ´ëÇÏ¿© º¯°æÇÕ´Ï´Ù. ¿¹¸¦ µé¾î:

+
+Gui, Font, s18 cRed Bold, Verdana  ; ¿øÇÑ´Ù¸é, ÀÌ¿Í °°Àº ÁÙÀ» »ç¿ëÇÏ¿© â¿¡ »õ·Î¿î ±âº» ±Û²ÃÀ» ¼³Á¤ÇÒ ¼ö ÀÖ½À´Ï´Ù.
+GuiControl, Font, MyEdit  ; À§ÀÇ ±Û²ÃÀ» ÄÜÆ®·Ñ¿¡ Àû¿ëÇÕ´Ï´Ù.
+

+GuiControl, +/-Option1 +/-Option2 ...: ´Ù¾çÇÑ ÄÜÆ®·Ñ-Á¾¼ÓÀû ¶Ç´Â ÀϹÝÀû ¿É¼Ç°ú ½ºÅ¸ÀÏÀ» Ãß°¡Çϰųª Á¦°ÅÇÕ´Ï´Ù.

+

+´ÙÀ½ ¿¹Á¦¿¡¼­, AltSubmit ¿É¼ÇÀº È°¼ºÈ­µÇÁö¸¸ ÄÜÆ®·ÑÀÇ g-labelÀº Á¦°ÅµË´Ï´Ù:

+ +
GuiControl,  +AltSubmit -g, MyListBox
+

+´ÙÀ½ ¿¹Á¦¿¡¼­, OK ¹öÆ°¿¡ »õ ±âº» ¹öÆ°ÀÌ ÁÖ¾îÁý´Ï´Ù:

+ +
GuiControl, +Default, OK
+

+½ºÅ¸ÀÏ ±×¸®°í È®Àå ½ºÅ¸Àϵµ ÀνÄÇÏÁö¸¸, ±× Áß ¾î¶² °ÍÀº ÄÜÆ®·ÑÀÌ »ý¼ºµÈ ÈÄ¿¡ Àû¿ëÇϰųª Á¦°ÅÇÒ ¼ö ¾ø½À´Ï´Ù. ErrorLevelÀº ÁöÁ¤µÈ º¯°æÀÌ Àû¾îµµ Çϳª¶óµµ ¼º°øÇϸé 0ÀÌ ¼³Á¤µË´Ï´Ù. ±×·¸Áö ¾ÊÀ¸¸é, 1·Î ¼³Á¤µÇ¾î ¾Æ¹« º¯°æµµ Àû¿ëÇÒ ¼ö ¾ø¾úÀ½À» ¾Ë·ÁÁÝ´Ï´Ù. º¯°æÀÌ ¼º°øÀûÀ¸·Î Àû¿ëµÇ¾ú´Ù ÇÒÁö¶óµµ, ÄÜÆ®·ÑÀº ±× º¯°æÀ» ¹«½ÃÇϱâ·Î °áÁ¤ÇÒ ¼öµµ ÀÖ½À´Ï´Ù.

+

[v1.1.20+]: ÄÜÆ®·ÑÀÇ À̺¥Æ®¸¦ ó¸®Çϱâ À§ÇØ ÇÔ¼ö °´Ã¼¸¦ ¼³Á¤ÇÏ·Á¸é, Param3Àº ¹Ýµå½Ã ´ÙÀ½ µÎ ¿¹ Áß Çϳª¿Í °°ÀÌÇϳªÀÇ º¯¼ö ÂüÁ¶°¡ µÇ¾î¾ß ÇÕ´Ï´Ù. ÇÔ¼ö °´Ã¼¸¦ µ¹·ÁÁÖ´Â ´Ù¸¥ Ç¥Çö½ÄÀº ÇöÀç Áö¿øÇÏÁö ¾Ê½À´Ï´Ù.

+ +
GuiControl +g, ControlID, %FuncObj%
+GuiControl +g, ControlID, % FuncObj
+
+ +

³íÆò

+

+±âº» âÀÌ ¾Æ´Ñ âÀ» ó¸®ÇÏ·Á¸é (¾Æ·¡ ÂüÁ¶), ±×ÀÇ À̸§À̳ª ¹øÈ£¸¦ ÁöÁ¤ÇÏ°í ´ÙÀ½¿¡ ½ÖÁ¡ ±×¸®°í ºÎ-¸í·É¾î¸¦ ´ÙÀ½ ¿¹Á¦¿Í °°ÀÌ ÁöÁ¤ÇϽʽÿÀ:

+ +
GuiControl, MyGui:Show, MyButton
+GuiControl, MyGui:, MyListBox, Item1|Item2
+

+º¯¼ö Çϳª°¡ ¿©·¯ GUI â¿¡ »ç¿ëµÉ ¼ö Àֱ⠶§¹®¿¡ ControlID°¡ ÄÜÆ®·ÑÀÇ ¿¬°ü ¹è¿­À̶ó°í ÇÒÁö¶óµµ ²À ÀÌ·¸°Ô ÇØ¾ß ÇÕ´Ï´Ù. [v1.1.20+]¿¡¼­´Â GUI À̸§À» »ý·«ÇÒ ¼ö ÀÖ½À´Ï´Ù. ControlID°¡ ÄÜÅ©·ÑÀÇ HWNDÀÏÁö¶óµµ ¸¶Âù°¡ÁöÀÔ´Ï´Ù.

+

+GUI ¾²·¹µå´Â GUI ÇàÀ§ÀÇ °á°ú·Î ±âµ¿µÈ ¾²·¹µå·Î Á¤Àǵ˴ϴÙ. GUI ÇàÀ§·Î´Â GUI âÀÇ ¸Þ´º ¹Ù·ÎºÎÅÍ Ç׸ñÀ» ¼±ÅÃÇÏ´Â °Í, ¶Ç´Â (¹öÆ°À» ´­·¯¼­) ±×ÀÇ g-labelsÁß Çϳª¸¦ Ã˹߽ÃÅ°´Â °ÍÀÌ Æ÷ÇԵ˴ϴÙ.

+

+GUI ¾²·¹µåÀÇ ±âº» â À̸§Àº ±× ¾²·¹µå¸¦ ±âµ¿ÇÑ Ã¢ÀÇ À̸§ÀÔ´Ï´Ù. ºñ-GUI ¾²·¹µå´Â 1À» ±âº»°ªÀ¸·Î »ç¿ëÇÕ´Ï´Ù.

+ +

°ü·Ã Ç׸ñ

+

+Gui, GuiControlGet, Control

+ +

¿¹Á¦

+ +
GuiControl,, MyListBox, |Red|Green|Blue  ; ÇöÀç ¸®½ºÆ®¸¦ »õ ¸®½ºÆ®·Î ±³Ã¼ÇÕ´Ï´Ù.
+GuiControl,, MyEdit, New text line 1.`nNew text line 2.
+GuiControl,, MyRadio2, 1  ; ÀÌ ¶óµð¿À ¹öÆ°À» ÄÑ°í ÀÌ ±×·ìÀÇ ´Ù¸¥ ¸ðµç °ÍµéÀº ²ü´Ï´Ù.
+GuiControl, Move, OK, x100 y200  ; OK ¹öÆ°À» »õ À§Ä¡·Î À̵¿ÇÕ´Ï´Ù.
+GuiControl, Focus, LastName  ; º¯¼ö³ª ÅؽºÆ®ÀÇ À̸§ÀÌ "LastName".ÀÎ ÄÜÆ®·Ñ¿¡ Å°º¸µå ÃÊÁ¡À» ¼³Á¤ÇÕ´Ï´Ù.
+ + + diff --git a/src/docs/commands/GuiControlGet.htm b/src/docs/commands/GuiControlGet.htm new file mode 100644 index 0000000..63392e0 --- /dev/null +++ b/src/docs/commands/GuiControlGet.htm @@ -0,0 +1,117 @@ + + + + +GuiControlGet + + + + + + + +

GuiControlGet

+ +

GUI â¿¡ ÀÖ´Â ÄÜÆ®·Ñ¿¡ °üÇÏ¿© ´Ù¾çÇÑ À¯ÇüÀÇ Á¤º¸¸¦ ¿­¶÷ÇÕ´Ï´Ù.

+ +
GuiControlGet, OutputVar [, Sub-command, ControlID, Param4]
+

¸Å°³º¯¼ö

+
+ +
OutputVar
+

°á°ú¸¦ ÀúÀåÇÒ º¯¼öÀÇ À̸§. ¸í·É¾î¸¦ ¿Ï·áÇÏÁö ¸øÇϸé (¾Æ·¡ ErrorLevel ÂüÁ¶), ÀÌ º¯¼ö´Â ºñ¿öÁý´Ï´Ù.

+ +
Sub-command
+

¾Æ·¡ ¸®½ºÆ® ÂüÁ¶.

+ +
ControlID
+

ºñ¾î ÀÖ°Å³Ä »ý·«µÇ¸é, ¸¶Ä¡ Ãâ·Â º¯¼öÀÇ À̸§ÀÌ ÁöÁ¤µÇ¾î ÀÖ´Â µíÀÌ ÇàÀ§ÇÕ´Ï´Ù. ¿¹¸¦ µé¾î, GuiControlGet, MyEditÀº GuiControlGet, MyEdit,, MyEdit°ú °°½À´Ï´Ù.

+

¸ñÇ¥ ÄÜÆ®·Ñ¿¡ ¿¬°ü ¹è¿­ÀÌ ÀÖÀ¸¸é, ±× º¯¼öÀÇ À̸§À» ControlID·Î ÁöÁ¤ÇϽʽÿÀ (ÀÌ ¹æ¹ýÀº ´ÙÀ½ÀÌ ±â¼úÇÑ ¹æ¹ýº¸´Ù ¿ì¼± ¼øÀ§°¡ ³ô½À´Ï´Ù). ÀÌ·± ÀÌÀ¯·Î, º¸Åë ³ªÁß¿¡ GuiControl ¶Ç´Â GuiControlGet¸¦ ÅëÇÏ¿© Á¢±ÙÇÒ ÄÜÆ®·Ñ¿¡ º¯¼ö¸¦ ÇÒ´çÇÏ´Â °ÍÀÌ Á¦ÀÏ ÁÁ½À´Ï´Ù. ½ÉÁö¾î ±× ÄÜÆ®·ÑÀÌ ÀÔ·ÂÀÌ °¡´ÉÇÏÁö ¾Ê´õ¶óµµ »ó°üÀÌ ¾ø½À´Ï´Ù (GroupBox ¶Ç´Â Text).

+

+ ±×·¸Áö ¾ÊÀ¸¸é, ControlID´Â ClassNN (ÄÜÆ®·ÑÀÇ Å¬·¡½ºÀ̸§°ú ½Çü ¹øÈ£) ¶Ç´Â ±× ÄÜÆ®·ÑÀÇ ÅؽºÆ®ÀÏ ¼ö ÀÖ½À´Ï´Ù. µÑ ¸ðµÎ Window Spy¸¦ ÅëÇÏ¿© ¾Ë¾Æ³¾ ¼ö ÀÖ½À´Ï´Ù. ÅؽºÆ®¸¦ »ç¿ëÇÒ ¶§, ºÎÇÕ ÇàÀ§´Â SetTitleMatchMode¿¡ ÀÇÇÏ¿© °áÁ¤µË´Ï´Ù. ÁÖÀÇ: ±×¸² ÄÜÆ®·ÑÀÇ ÆÄÀÏ À̸§ÀÌ (±× ÄÜÆ®·ÑÀÌ »ý¼ºµÇ´Â ¼ø°£¿¡ ÁöÁ¤µÈ ´ë·Î ) ±×ÀÇ ControlID·Î »ç¿ëµÉ ¼öµµ ÀÖ¾¹´Ï´Ù.

+

[v1.1.04+]: ControlID´Â ÄÜÆ®·ÑÀÇ HWNDÀÏ ¼ö ÀÖ½À´Ï´Ù. ´Ù¸¥ ControlID¿Í ¸¶Âù°¡Áö·Î, Sub-command´Â ±âº» âÀÌ ¾Æ´Ò °æ¿ì ±× GUIÀÇ À̸§°ú ¹øÈ£µµ Æ÷ÇÔÇÒ ¼ö ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î, GuiControlGet Value, 2:, %Hwnd%.

+ +
Param4
+

ÀÌ ¸Å°³º¯¼ö´Â »ý·«µË´Ï´Ù. ´Ü, ¾Æ·¡ ºÎ-¸í·É¾î ¸®½ºÆ®¿¡¼­ °íÁöÇÑ °æ¿ì´Â ¿¹¿ÜÀÔ´Ï´Ù.

+ +
+ +

ErrorLevel

+

+[v1.1.04+] ÀÌ ¸í·É¾î´Â ½ÇÆнà ¿¹¿Ü¸¦ ´øÁú ¼ö ÀÖ½À´Ï´Ù. ´õ ÀÚ¼¼ÇÑ Á¤º¸´Â ½ÇÇà½Ã°£ ¿¡·¯¸¦ ÂüÁ¶ÇϽʽÿÀ.

+

+ErrorLevelÀº ÁöÁ¤µÈ â/ÄÜÆ®·ÑÀÌ Á¸ÀçÇÏÁö ¾Ê°Å³ª ¶Ç´Â ´Ù¸¥ ¾î¶² ¹®Á¦ ¶§¹®¿¡ ¸í·É¾î°¡ ÀÛµ¿ÇÏÁö ¸øÇϸé 1ÀÌ ¼³Á¤µË´Ï´Ù. ±×·¸Áö ¾ÊÀ¸¸é 0ÀÌ ¼³Á¤µË´Ï´Ù.

+ +

Sub-commands

+

+(Blank): Sub-command¸¦ ºñ¿ö µÎ¸é ÄÜÆ®·ÑÀÇ ³»¿ëÀ» ¿­¶÷ÇÒ ¼ö ÀÖ½À´Ï´Ù. ¸ðµç ÄÜÆ®·Ñ À¯ÇüÀº À̸§ ÀÚü·Î ¼³¸íÀÌ µË´Ï´Ù. ÇÏÁö¸¸ ´ÙÀ½Àº ¿¹¿ÜÀÔ´Ï´Ù:

+

+Picture: ÄÜÆ®·ÑÀÌ »ý¼ºµÉ ¶§ ÁöÁ¤µÇ¾î ÀÖ´Â, ±×¸² ÆÄÀÏÀÇ ¿ø·¡ À̸§À» ¿­¶÷ÇÕ´Ï´Ù. ÀÌ À̸§Àº »õ ±×¸² ÆÄÀÏ À̸§À» ÁöÁ¤ÇÏ´õ¶óµµ ¹Ù²îÁö ¾Ê½À´Ï´Ù.

+

+Edit: ³»¿ëÀ» ¿­¶÷ÇÕ´Ï´Ù. ±×·¯³ª ÅؽºÆ® ¾ÈÀÇ ÁÙ ³Ñ±è ¹®ÀÚ´Â Æò¹üÇÑ ¶óÀÎÇÇµå ¹®ÀÚ(`n)·Î Ç¥ÇöµË´Ï´Ù. ÀüÅëÀûÀÎ CR+LF (`r`n)·Î Ç¥½ÃµÇÁö ¾Ê½À´Ï´Ù. ÀÌ ÁÙ ³¡ ¸ðµå´ÂControlGetText ±×¸®°í ControlSetText¿Í °°Àº ºñ-GUI ¸í·É¾îµéÀÌ »ç¿ëÇÕ´Ï´Ù. .

+

+Hotkey: ÄÜÆ®·Ñ¿¡ ÇÖÅ°°¡ ¾øÀ¸¸é ºó °ªÀÌ ¿­¶÷µË´Ï´Ù. ±×·¸Áö ¾ÊÀ¸¸é ¼ö½ÄÅ°¿Í Å° À̸§À» ¿­¶÷ÇÕ´Ï´Ù. ¿¹Á¦: ^!C, ^Home, +^NumpadHome.

+

+Checkbox/Radio: ÄÜÆ®·Ñ¿¡ üũ°¡ ÀÖÀ¸¸é 1ÀÌ ¿­¶÷µË´Ï´Ù. üũ Ç¥½ÄÀÌ ¾øÀ¸¸é 0ÀÌ ¿­¶÷µË´Ï´Ù. ¶Ç´Â ȸ»ö üũ Ç¥½ÄÀÌ ÀÖÀ¸¸é -1ÀÌ ¿­¶÷µË´Ï´Ù. ´ë½Å¿¡ ÄÜÆ®·ÑÀÇ ÅؽºÆ®/ĸ¼ÇÀ» ¿­¶÷ÇÏ·Á¸é, ´Ü¾î Text¸¦ Param4¿¡ ÁöÁ¤ÇϽʽÿÀ. ÁÖÀÇ: Gui Submit ¸í·É¾î¿Í ´Ù¸£°Ô, ¶óµð¿À ¹öÆ°Àº ¾ðÁ¦³ª °³º°ÀûÀ¸·Î ¿­¶÷µË´Ï´Ù. ¶óµð¿À ±×·ì ¾È¿¡ ÀÖµç ¾øµç »ó°üÀÌ ¾ø½À´Ï´Ù.

+

+UpDown/Slider/Progress: ÄÜÆ®·ÑÀÇ ÇöÀç À§Ä¡¸¦ ¿­¶÷ÇÕ´Ï´Ù.

+

+Tab/DropDownList/ComboBox/ListBox: ÇöÀç ¼±ÅÃµÈ Ç׸ñ/ÅÇÀÇ ÅؽºÆ®¸¦ ¿­¶÷ÇÕ´Ï´Ù (¶Ç´Â ÄÜÆ®·Ñ¿¡ AltSubmit Ư¼ºÀÌ ÀÖ´Ù¸é ±×ÀÇ À§Ä¡¸¦ ¿­¶÷ÇÕ´Ï´Ù). ComboBox¿¡ ´ëÇÏ¿©, ¼±ÅÃµÈ Ç׸ñÀÌ ¾øÀ¸¸é, ÄÜÆ®·ÑÀÇ ÆíÁý Çʵ忡 ÀÖ´Â ÅؽºÆ®°¡ ´ë½Å ¿­¶÷µË´Ï´Ù. ´ÙÁß-¼±Åà ListBox¿¡ ´ëÇÏ¿©, ±× âÀÇ ÇöÀç ±¸ºÐÀÚ¸¦ »ç¿ëÇÏ¿© Ãâ·ÂµË´Ï´Ù.

+

+ListView ±×¸®°í TreeView: À̵éÀº Sub-command°¡ ºñ¾î ÀÖÀ¸¸é Áö¿øµÇÁö ¾Ê½À´Ï´Ù. ´ë½Å¿¡ ³»Àå ListView ÇÔ¼ö¿Í TreeView ÇÔ¼ö¸¦ »ç¿ëÇϽʽÿÀ.

+

+StatusBar: ÅؽºÆ®ÀÇ ¾Õ ºÎºÎ¸¸ ¿­¶÷ÇÕ´Ï´Ù.

+

+ActiveX: ÄÜÆ®·ÑÀÇ ActiveX ÄÞÆ÷³ÍÆ®¿¡ ´ëÇÏ¿© »õ Æ÷Àå °´Ã¼¸¦ ¿­¶÷ÇÕ´Ï´Ù.

+

+ÁÖÀÇ: ÄÜÆ®·Ñ¿¡¼­ ±×ÀÇ ³»¿ëÀÌ ¾Æ´Ï¶ó ÅؽºÆ®/ĸ¼ÇÀ» ¹«Á¶°Ç ¿­¶÷ÇÏ·Á¸é, ´Ü¾î Text¸¦ Param4¿¡ ÁöÁ¤ÇϽʽÿÀ.

+ +

 

+ +

GuiControlGet, OutputVar, Pos: ÄÜÆ®·ÑÀÇ À§Ä¡¿Í Å©±â¸¦ ¿­¶÷ÇÕ´Ï´Ù. À§Ä¡´Â GUI âÀÇ Å¬¶óÀ̾ðÆ® ±¸¿ª¿¡ »ó´ëÀûÀÔ´Ï´Ù. Ŭ¶óÀ̾ðÆ® ±¸¿ª¿¡¼­ Á¦¸ñ ¹Ù, ¸Þ´º ¹Ù, ±×¸®°í Å׵θ®´Â Á¦¿ÜµË´Ï´Ù. Á¤º¸´Â ³× °³ÀÇ º¯¼ö ¾È¿¡ ÀúÀåµË´Ï´Ù. ³× º¯¼öÀÇ À̸§Àº ¸ðµÎ OutputVar·Î ½ÃÀÛÇÕ´Ï´Ù. ¿¹¸¦ µé¾î:

+
GuiControlGet, MyEdit, Pos
+MsgBox The X coordinate is %MyEditX%. The Y coordinate is %MyEditY%. The width is %MyEditW%. The height is %MyEditH%.
+

+ÇÔ¼ö ¾È¿¡¼­, Áö¿ª º¯¼ö ´ë½Å¿¡ Àü¿ª º¯¼ö ÁýÇÕÀ» »ý¼ºÇÏ·Á¸é, ÀÌ ¸í·É¾î¸¦ »ç¿ëÇϱâ Àü¿¡ OutputVar¸¦ Àü¿ª º¯¼ö·Î ¼±¾ðÇϽʽÿÀ (Àü¿ª-°£ÁÖ ÇÔ¼öµé¿¡ ´ëÇÏ¿© ±× ¹Ý´ëµµ ¸¶Âù°¡ÁöÀÔ´Ï´Ù). ±×·¸Áö¸¸, ÈçÇÑ È¥¶õÀÇ ±Ù¿ø ¶§¹®¿¡, Á¾Á¾ °¢ º¯¼ö¸¦ ÁýÇÕ ¾È¿¡ ¼±¾ðÇÏ´Â °ÍÀÌ ÇÊ¿äÇϱ⵵ ÇÕ´Ï´Ù.

+ +

 

+

+GuiControlGet, OutputVar, Focus: ÇöÀç Å°º¸µå ÃÊÁ¡ÀÌ ÀÖ´Â ÄÜÆ®·ÑÀÇ ½Äº°ÀÚ¸¦ ¿­¶÷ÇÕ´Ï´Ù (ClassNN). ÁöÁ¤µÈ GUI âÀÌ È°¼ºÈ­µÇ¾î ÀÖ¾î¾ß ±×ÀÇ ÄÜÆ®·ÑµéÀÌ ÃÊÁ¡À» °¡Áú ¼ö Àֱ⠶§¹®¿¡, OutputVar´Â âÀÌ È°¼ºÈ­µÇ¾î ÀÖÁö ¾ÊÀ¸¸é ºñ¿öÁý´Ï´Ù. ¿¹¸¦ µé¾î: GuiControlGet, focused_control, focus.

+

+GuiControlGet, OutputVar, FocusV [v1.0.43.06+]: (À§ÀÇ) Focus¿Í °°½À´Ï´Ù. ´Ü, ÃÊÁ¡ÀÌ ÀÖ´Â ÄÜÆ®·ÑÀÇ ¿¬°ü º¯¼öÀÇ À̸§À» ¿­¶÷ÇÕ´Ï´Ù. ±× ÄÜÆ®µ¹¿¡ ¿¬°ü º¯¼ö°¡ ¾øÀ¸¸é, ÄÜÆ®µ¹ÀÇ ÅؽºÆ®/ĸ¼ÇÀÇ ¾ÕÂÊ 63 ±ÛÀÚ°¡ ´ë½Å ¿­¶÷µË´Ï´Ù (ÀÌ°ÍÀº °¢ ¹öÆ°¿¡ º¯¼ö À̸§À» ºÎ¿©ÇÏ´Â °ÍÀ» ÇÇÇϱâ À§ÇØ ¾ÆÁÖ ÀÚÁÖ »ç¿ëµË´Ï´Ù).

+

+GuiControlGet, OutputVar, Enabled: ÄÜÆ®·ÑÀÌ ÄÑÁ® ÀÖÀ¸¸é 1ÀÌ ¿­¶÷µÇ°í ²¨Á® ÀÖÀ¸¸é 0ÀÌ ¿­¶÷µË´Ï´Ù.

+

+GuiControlGet, OutputVar, Visible: ÄÜÆ®·ÑÀÌ º¸À̸é 1À» ¿­¶÷ÇÏ°í º¸ÀÌÁö ¾ÊÀ¸¸é 0À» ¿­¶÷ÇÕ´Ï´Ù.

+

+GuiControlGet, OutputVar, Hwnd [v1.0.46.16+]: ÄÜÆ®·ÑÀÇ Ã¢ ÇÚµé(HWND)À» ¿­¶÷ÇÕ´Ï´Ù. ÄÜÆ®·ÑÀÇ HWND´Â Á¾Á¾ PostMessage, SendMessage, ±×¸®°í DllCall°ú ÇÔ²² »ç¿ëµË´Ï´Ù. ÁÖÀÇ: HwndOutputVar°¡ º¸Åë HWND¸¦ ¾ò´Â ´õ °£°áÇÑ ¹æ¹ýÀÔ´Ï´Ù.

+

GuiControlGet, OutputVar, Name [v1.1.03+]: ÄÜÆ®·Ñ¿¡ ¿¬°üµÈ º¯¼öÀÇ À̸§À» ¿­¶÷ÇÕ´Ï´Ù. ½ÇÆÐÇϸé OutputVar´Â ºñ¿öÁý´Ï´Ù.

+ +

³íÆò

+

+±âº» âÀÌ ¾Æ´Ñ âÀ» ó¸®ÇÏ·Á¸é (¾Æ·¡ ÂüÁ¶), ±×ÀÇ À̸§ ¶Ç´Â ¹øÈ£ ±×¸®°í ½ÖÁ¡ ´ÙÀ½¿¡ ºÎ-¸í·É¾î¸¦ ´ÙÀ½ ¿¹Á¦¿Í °°ÀÌ Æ÷ÇÔ½ÃÅ°½Ê½Ã¿À:

+ +
GuiControlGet, MyEdit, MyGui:
+GuiControlGet, MyEdit, MyGui:Pos
+GuiControlGet, Outputvar, MyGui:Focus
+

+ÀÌ°ÍÀº ControlID°¡ ÄÜÆ®·ÑÀÇ ¿¬°ü º¯¼ö ¶Ç´Â HWNDÀÏÁö¶óµµ ÇʼöÀÔ´Ï´Ù.

+

+GUI ¾²·¹µå´Â GUI ÇàÀ§ÀÇ °á°ú·Î ±âµ¿µÈ ¾²·¹µå·Î Á¤Àǵ˴ϴÙ. GUI ÇàÀ§¿¡´Â GUI âÀÌ ¸Þ´º ¹Ù·ÎºÎÅÍ Ç׸ñÀ» ¼±ÅÂÇÏ´Â °Í, ¶Ç´Â ±×ÀÇ g-labelsÁß Çϳª¸¦ (¹öÆ°À» ´­·¯¼­) ÃË¹ß ½ÃÅ°´Â °ÍÀÌ Æ÷ÇԵ˴ϴÙ.

+

+GUI ¾²·¹µå¿¡ ´ëÇÏ¿© ±âº» â À̸§Àº ±× ¾²·¹µå¸¦ ±âµ¿ÇÑ Ã¢ÀÇ À̸§ÀÔ´Ï´Ù. ºñ-GUI ¾²·¹µå´Â 1À» ±âº»°ªÀ¸·Î »ç¿ëÇÕ´Ï´Ù.

+ +

°ü·Ã Ç׸ñ

+

+Gui, GuiControl, ControlGet

+ +

¿¹Á¦

+ +
GuiControlGet, MyEdit
+GuiControlGet, CtrlContents,, MyEdit  ; À§¿Í °°½À´Ï´Ù. ´Ü, ±âº»-¾Æ´Ñ Ãâ·Â º¯¼ö¸¦ »ç¿ëÇÕ´Ï´Ù.
+GuiControlGet, MyCheckbox1 ; üũµÇ¾î ÀÖÀ¸¸é 1, üũ°¡ ¾øÀ¸¸é 0À» ¿­¶÷ÇÕ´Ï´Ù.
+GuiControlGet, MyCheckbox1,,, Text  ; üũ¹Ú½ºÀÇ Ä¸¼Ç/ÅؽºÆ®¸¦ ¿­¶÷ÇÕ´Ï´Ù.
+GuiControlGet, Pic, Pos, Static4  ; À§Ä¡/Å©±â´Â PicX, PicY, PicW, ±×¸®°í PicH¿¡ ÀúÀåµË´Ï´Ù.
+ + + diff --git a/src/docs/commands/GuiControls.htm b/src/docs/commands/GuiControls.htm new file mode 100644 index 0000000..2b5688b --- /dev/null +++ b/src/docs/commands/GuiControls.htm @@ -0,0 +1,738 @@ + + + + +GUI Control Types + + + + + + + +

GUI ÄÜÆ®·Ñ À¯Çü

+ +

¸ñÂ÷

+ + +

Text

+

+¼³¸í: Å׵θ® ¾ø´Â ÅؽºÆ®¸¦ Æ÷ÇÔÇÑ ±¸¿ª. »ç¿ëÀÚ°¡ ÆíÁýÇÒ ¼ö ¾ø½À´Ï´Ù. Á¾Á¾ ´Ù¸¥ ÄÜÆ®·Ñ¿¡ ¶óº§ ¿ëµµ·Î »ç¿ëµË´Ï´Ù. ¿¹Á¦:

+
Gui, Add, Text,, À̸§À» ÀÔ·ÂÇϽʽÿÀ:
+

+ÀÌ °æ¿ì, °¡Àå ¸¶Áö¸· ¸Å°³º¯¼ö´Â º¸¿©ÁÙ ¹®ÀÚ¿­ÀÔ´Ï´Ù. ¶óÀÎÇǵå(`n)¸¦ Æ÷ÇÔÇØ »õ ÁÙÀ» ½ÃÀÛÇÒ ¼ö ÀÖ½À´Ï´Ù. °Ô´Ù°¡, °è¼Ó ¼½¼ÇÀ» ¼ö´ÜÀ¸·Î ÇÏ¿© ÇϳªÀÇ ±â´Ù¶õ ÁÙÀ» ¿©·¯ °³ÀÇ ÂªÀº ÁÙ·Î ³ª´­ ¼ö ÀÖ½À´Ï´Ù.

+

+³Êºñ (W)°¡ Options¿¡ ÁöÁ¤µÇ¾úÁö¸¸ Çà (R)À̳ª ³ôÀÌ (H)°¡ ÁöÁ¤µÇÁö ¾Ê¾Ò´Ù¸é, ÅؽºÆ®´Â ÇÊ¿äÇÏ¸é ¿öµå·¦ÀÌ µð°í, ÄÜÆ®·ÑÀÇ ³ôÀÌ´Â ÀÚµ¿À¸·Î ¼³Á¤µË´Ï´Ù.

+

+ÄÜÆ®·ÑÀÇ ³»¿ëÀº Gui ¸í·É¾îÀÇ ¸¶Áö¸· ¸Å°³º¯¼ö¿¡ ÀÖÀ¸¹Ç·Î, ±âÈ£ ±×´ë·ÎÀÇ ½°Ç¥´Â ÇǽŽÃų ÇÊ¿ä°¡ ¾ø½À´Ï´Ù. ÀÌ ±ÔÄ¢Àº ´Ù¸¥ ¸ðµç ¸í·É¾îÀÇ ¸¶Áö¸· ¸Å°³º¯¼ö¿¡µµ Àû¿ëµË´Ï´Ù.

+

+gMySubroutine°ú °°Àº g-labelÀº ÄÜÆ®·ÑÀÇ ¿É¼Ç¿¡ ³ª¿­ÇÒ ¼ö ÀÖ½À´Ï´Ù. ÀÌ·¸°Ô ÇÏ¸é »ç¿ëÀÚ°¡ ÅؽºÆ®¸¦ Ŭ¸¯ÇÒ ¶§¸¶´Ù MySubroutine ¶óº§ÀÌ ÀÚµ¿À¸·Î ±âµ¿ÇÕ´Ï´Ù. ÀÌ°ÍÀ» »ç¿ëÇÏ¸é ´ÙÀ½ ¿¹Á¦ ½ºÅ©¸³Æ®¿Í °°ÀÌ Çª¸¥»ö ¹ØÁÙ ÇÏÀÌÆÛ¸µÅ©¸¦ Èä³»³¾ ¼ö ÀÖ½À´Ï´Ù:

+
Gui, Font, underline
+Gui, Add, Text, cBlue gLaunchGoogle, ±¸±ÛÀ» ±âµ¿ÇÏ·Á¸é ¿©±â¸¦ Ŭ¸¯ÇϽʽÿÀ.
+
+; ´ë¾ÈÀ¸·Î, Link ÄÜÆ®·ÑÀ» »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù:
+Gui, Add, Link,, ±¸±ÛÀ» ±âµ¿ÇÏ·Á¸é <a href="www.google.com">¿©±â¸¦</a> Ŭ¸¯ÇϽʽÿÀ.
+Gui, Font, norm
+Gui, Show
+return
+
+LaunchGoogle:
+Run www.google.com
+return
+

+´õºí Ŭ¸¯Àº A_GuiEvent¿¡ ´Ü¾î DoubleClickÀÌ µé¾î ÀÖ´ÂÁö Á¡°ËÇÏ¿© ŽÁöÇÒ ¼ö ÀÖ½À´Ï´Ù.

+

+¾ÚÆÛ¼¾µå (&)¸¦ ÅؽºÆ®¿¡ »ç¿ëÇÏ¸é ¹®ÀÚ Áß Çϳª¿¡ ¹ØÁÙÀ» ±×À» ¼ö ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î:

+
Gui, Add, Text,, &First Name:
+Gui, Add, Edit
+

+À§ÀÇ ¿¹Á¦¿¡¼­, ±âÈ£ F´Â ¹ØÁÙÀÌ ±×¾îÁý´Ï´Ù. »ç¿ëÀÚ´Â ´ÜÃàÅ° Alt+F¸¦ ´­·¯ ÅؽºÆ® ÄÜÆ®·Ñ ´ÙÀ½¿¡ Ãß°¡µÈ ù ¹ø° ÀÔ·Â °¡´É ÄÜÆ®·Ñ¿¡ Å°º¸µå ÃÊÁ¡À» ¼³Á¤ÇÒ ¼ö ÀÖ½À´Ï´Ù. +´ë½Å¿¡ ±âÈ£ ±×´ë·Î ¾ÚÆÛ¼¾µå¸¦ º¸¿©ÁÖ·Á¸é, µÎ °³ÀÇ ¿¬¼Ó ¾ÚÆÛ¼¾µå¸¦ ÁöÁ¤ÇÏ¸é µË´Ï´Ù (&&). ¾ÚÆÛ¼¾µå¸¦ Ư¼ö Ãë±ÞÇÏÁö ¾Êµµ·Ï ÇÏ·Á¸é, ÄÜÆ®·Ñ ¿É¼Ç¿¡ 0x80À» Æ÷ÇÔ½ÃÅ°½Ê½Ã¿À.

+

+Right, Center, ±×¸®°í Hidden°ú °°Àº ´Ù¸¥ ¿É¼ÇÀº ÀÏ¹Ý ¿É¼ÇÀ» ÂüÁ¶ÇϽʽÿÀ. ´ÙÀ½µµ ÂüÁ¶ÇϽʽÿÀ: ÄÜÆ®·ÑÀÇ À§Ä¡ ÁöÁ¤°ú Å©±â Á¶Àý.

+ +

Edit

+

+¼³¸í: »ç¿ëÀÚ°¡ ÀÚÀ¯·Ó°Ô ÅؽºÆ®¸¦ ŸÀÚÇÒ ¼ö ÀÖ´Â ±¸¿ª. ¿¹Á¦:

+
Gui, Add, Edit, r9 vMyEdit, ÆíÁý ÄÜÆ®·Ñ ¾È¿¡ ³ªÅ¸³¯ ÅؽºÆ® (ÀÌ ¸Å°³º¯¼ö¸¦ »ý·«ÇÏ¸é ºó ä·Î ½ÃÀÛÇÔ).
+

+ÀÌ ÄÜÆ®·ÑÀº ¿©·¯ ÁÙÀÇ ÅؽºÆ®°¡ ÀÖÀ¸¸é ¿©·¯ ÁÙ ¸ðµå°¡ µË´Ï´Ù. ¿¹¸¦ µé¾î r3À» Options¿¡ ÁöÁ¤Çϸé 3-Á٠¥¸® ÆíÁý ÄÜÆ®·ÑÀÌ »ý¼ºµË´Ï´Ù. ±âº» Ư¼ºÀº ´ÙÀ½°ú °°½À´Ï´Ù: ¼öÁ÷ ½ºÅ©·Ñ¹Ù, ´Ü¾î Áٳѱâ±â È°¼ºÈ­, ±×¸®°í ¿£ÅÍ Å°¸¦ ÀÔ·ÂÀ¸·Î ¹Þ½À´Ï´Ù. âÀÇ ±âº» ¹öÆ°À» Ã˹߽ÃÅ°Áö ¾Ê½À´Ï´Ù.

+

+¿©·¯-ÁÙ ÆíÁý ÄÜÆ®·Ñ¿¡¼­ »õ ÁÙÀ» ½ÃÀÛÇϸé, ¸¶Áö¸· ¸Å°³º¯¼ö¿¡ (³»¿ë) ¶óÀÎÇǵå Çϳª(`n) ¶Ç´Â ij¸®Áö ¸®ÅÏ°ú ¶óÀÎÇǵåÀÇ Á¶ÇÕ (`r`n)ÀÌ Æ÷ÇԵ˴ϴÙ. µÎ ¹æ¹ý ¸ðµÎ ±âÈ£ ±×´ë·ÎÀÇ `r`n ½ÖÀ» ÆíÁý ÄÜÆ®·Ñ ¾È¿¡ »ý»êÇÕ´Ï´Ù. ±×·¸Áö¸¸, Gui SubmitÀ̳ª GuiControlGet¸¦ ÅëÇÏ¿© ÄÜÆ®·ÑÀÌ º¯¼ö·Î ÀúÀåµÉ ¶§, °¢ `r`nÀº ÅؽºÆ®¿¡¼­ ¾ðÁ¦³ª Æò¹üÇÑ ¶óÀÎÇǵå·Î (`n) º¯È¯µË´Ï´Ù. ±× ÅؽºÆ®¸¦ ÆÄÀÏ¿¡ ¾²·Á¸é, ´ÙÀ½ ¿¹Á¦¸¦ µû¸£½Ê½Ã¿À: + +FileAppend, %MyEdit%, C:\Saved File.txt.

+

+ÄÜÆ®·Ñ¿¡ ´Ü¾î ³Ñ±â±â°¡ ÄÑÁ® ÀÖÀ¸¸é (¿©·¯-ÁÙ ÆíÁý ÄÜÆ®·Ñ¿¡ ±âº»°ª), »ç¿ëÀÚ°¡ ŸÀÚÇÒ ¶§ ÀϾ´Â Áٳѱâ±â´Â ¶óÀÎÇÇµå ¹®ÀÚ¸¦ »ý»êÇÏÁö ¾Ê½À´Ï´Ù (¿£ÅÍ Å°¸¦ ´­·¯¾ß¸¸ »ðÀԵ˴ϴÙ).

+

+gMySubroutine°ú °°Àº g-labelÀº ÄÜÆ®·ÑÀÇ ¿É¼Ç¿¡ ³ª¿­ÇÒ ¼ö ÀÖ½À´Ï´Ù. ÀÌ·¸°Ô ÇÏ¸é »ç¿ëÀÚ³ª ½ºÅ©¸³Æ®°¡ ÄÜÆ®·ÑÀÇ ³»¿ëÀ» º¯°æÇÒ ¶§¸¶´Ù ÀÚµ¿À¸·Î MySubroutine ¶óº§ÀÌ ±âµ¿ÇÕ´Ï´Ù.

+

+ÆÁ: ÅؽºÆ® ÆÄÀÏÀ» ÆíÁý ÄÜÆ®·Ñ ¾ÈÀ¸·Î ÀûÀçÇÏ·Á¸é FileRead ±×¸®°í GuiControlÀ» »ç¿ëÇϽʽÿÀ. ¿¹¸¦ µé¾î:

+
Gui, Add, Edit, R20 vMyEdit
+FileRead, FileContents, C:\My File.txt
+GuiControl,, MyEdit, %FileContents%
+

Edit Options

+

+¿É¼ÇÀ» Ãß°¡ÇÏ´Â°Ô ¾Æ´Ï¶ó Á¦°ÅÇÏ·Á¸é, ¾Õ¿¡´Ù ¸¶À̳ʽº ±âÈ£¸¦ ¹èÄ¡ÇϽʽÿÀ:

+

+ÇÑ°è: »ç¿ëÀÚÀÇ ÀÔ·ÂÀº ÆíÁý Çʵ忡¼­ º¸ÀÌ´Â ³Êºñ¿¡ Á¦Çѵ˴ϴÙ. ´ë¾ÈÀ¸·Î, ƯÁ¤ °³¼öÀÇ ¹®ÀÚ·Î ÀÔ·ÂÀ» Á¦ÇÑÇÏ·Á¸é, ¹Ù·Î ´ÙÀ½¿¡ ¼ýÀÚ¸¦ ÁöÁ¤ÇϽʽÿÀ. ¿¹¸¦ µé¾î, Limit10´Â 10 ¹®ÀÚ°¡ ³ÑÀ¸¸é ´õ ÀÌ»ó ÀԷµÇÁö ¾Ê½À´Ï´Ù.

+

+Lowercase: »ç¿ëÀÚ°¡ ŸÀÚÇÏ´Â ¹®ÀÚµéÀº ÀÚµ¿À¸·Î ¼Ò¹®ÀÚ·Î º¯È¯µË´Ï´Ù.

+

+Multi: ¿©·¯ ÁÙ ÆíÁýÀ» Çã¿ëÇÕ´Ï´Ù. ±×·¸Áö¸¸, º¸Åë ÁöÁ¤ÇÒ ÇÊ¿ä°¡ ¾ø½À´Ï´Ù. ¿Ö³ÄÇÏ¸é ³ôÀÌ (H), Çà (R), ¶Ç´Â ³»¿ë(Text)¿¡ ±â¹ÝÇÏ¿© ÀÚµ¿À¸·Î ŽÁöÇϱ⠶§¹®ÀÔ´Ï´Ù.

+

+Number: »ç¿ëÀÚ°¡ Çʵ忡 ¼ýÀÚ¸»°í ´Ù¸¥ °ÍÀº ŸÀÚÇÏÁö ¸øÇϵµ·Ï ¸·½À´Ï´Ù (±×·¸Áö¸¸, ¿©ÀüÈ÷ ºñ-¼ýÀÚ¸¦ ¾È¿¡ ºÙ¿© ³Ö´Â °ÍÀº °¡´ÉÇÕ´Ï´Ù). ¼ýÀÚ ÀÔ·ÂÀ» °­Á¦ÇÏ´Â ¶Ç´Ù¸¥ ¹æ¹ýÀº UpDown ÄÜÆ®·ÑÀ» Edit ÄÜÆ®·Ñ¿¡ ºÙÀÌ´Â °ÍÀÔ´Ï´Ù.

+

+Password: »ç¿ëÀÚÀÇ ÀÔ·ÂÀ» °¨Ãä´Ï´Ù (¿¹¸¦ µé¾î ¾ÏÈ£ ÀÔ·Â). »ç¿ëÀÚ°¡ ŸÀÚÇÏ´Â ¹®ÀÚ¸¦ ÀºÆó ¹®ÀÚ·Î ±³Ã¼ÇÕ´Ï´Ù. ¸ÂÃã ÀºÆó ¹®ÀÚ°¡ ÇÊ¿äÇÏ´Ù¸é, ±× ¹®ÀÚ¸¦ ´Ü¾î Password ´ÙÀ½¿¡ ¹èÄ¡ÇϽʽÿÀ. ¿¹¸¦ µé¾î, Password*´Â ÀºÆó ¹®ÀÚ¸¦ °ËÀº»ö ¿ø (ºÒ¸´)ÀÌ ¾Æ´Ï¶ó º°Ç¥·Î ¸¸µì´Ï´Ù. ºÒ¸´Àº Windows XP¿¡¼­ ±âº»°ªÀÔ´Ï´Ù. ÁÖÀÇ: ÀÌ ¿É¼ÇÀº ¿©·¯-ÁÙ ÆíÁý ÄÜÆ®·Ñ¿¡ ¾Æ¹« È¿°ú°¡ ¾ø½À´Ï´Ù.

+

+ReadOnly: »ç¿ëÀÚ°¡ ÄÜÆ®·ÑÀÇ ³»¿ëÀ» º¯°æÇÏÁö ¸øÇϵµ·Ï ¸·½À´Ï´Ù. ±×·¸Áö¸¸, ÅؽºÆ®´Â ¿©ÀüÈ÷ ½ºÅ©·ÑÇÒ ¼ö ÀÖ°í, ¼±ÅÃÇؼ­ Ŭ¸³º¸µå·Î º¹»çÇÒ ¼ö ÀÖ½À´Ï´Ù.

+

+Tn: ±âÈ£ T¸¦ »ç¿ëÇϸé ÅÇ ½ºÅ¾À» ¿©·¯-ÁÙ ÆíÁý ÄÜÆ®·Ñ ¾È¿¡ ¼³Á¤ÇÒ ¼ö ÀÖ½À´Ï´Ù (ÅÇ ½ºÅ¾Àº ±âÈ£ ±×´ë·ÎÀÇ TAB ¹®ÀÚ°¡ Á¡ÇÁÇØ °¥ ¿­ À§Ä¡¸¦ °áÁ¤Çϱ⠶§¹®¿¡, ÅؽºÆ®¸¦ ¿­ ¾ÈÀ¸·Î Æ÷¸ËÇØ ³Ö´Â µ¥ »ç¿ëµË´Ï´Ù). ±âÈ£ T°¡ ¾øÀ¸¸é, ÅÇ ½ºÅ¾Àº ¸Å 32 ´ëÈ­»óÀÚ ´ÜÀ§¸¶´Ù ¼³Á¤µË´Ï´Ù (°¢ "´ëÈ­»óÀÚ ´ÜÀ§"ÀÇ ³Êºñ´Â ¿î¿µ üÁ¦¿¡ ÀÇÇÏ¿© °áÁ¤µË´Ï´Ù). ±âÈ£ T¸¸ »ç¿ëÇϸé, ÅÇ ½ºÅ¾Àº ÄÜÆ®·Ñ Àüü ³Êºñ¿¡ °ÉÃļ­ ¸Å n ´ÜÀ§¸¶´Ù ¼³Á¤µË´Ï´Ù. ¿¹¸¦ µé¾î, Gui, Add, Edit, vMyEdit r16 t64À̸é ÅÇ »çÀÌÀÇ °Å¸®°¡ µÎ ¹è°¡ µË´Ï´Ù. ¸ÂÃã ÅÇ ½ºÅ¾À» ÁöÁ¤ÇÏ·Á¸é ±âÈ£ T¸¦ ´ÙÀ½ ¿¹Á¦¿Í °°ÀÌ ¿©·¯ ¹ø ÁöÁ¤ÇϽʽÿÀ: Gui, Add, Edit, vMyEdit r16 t8 t16 t32 t64 t128. ÅÇ ½ºÅ¾ 1¹øÀº ¸®½ºÆ®ÀÇ Àý´ë ¿­ À§Ä¡¿¡ ¼³Á¤µÇ°í, ÃÖ´ë 50°³ÀÇ ÅÇ ½ºÅ¾±îÁö ¼³Á¤µË´Ï´Ù. ÁÖÀÇ: ÅÇ ½ºÅ¾Àº ¿©·¯ ÁÙ ÆíÁý Å«Æ®·ÑÀ» ¿ä±¸ÇÕ´Ï´Ù.

+

+Uppercase: »ç¿ëÀÚ°¡ ŸÀÚÇÑ ¹®ÀÚµéÀº ÀÚµ¿À¸·Î ´ë¹®ÀÚ·Î º¯È¯µË´Ï´Ù.

+

+WantCtrlA [v1.0.44+]: WantCtrlA (¸¶À̳ʽº WantCtrlA)¸¦ ÁöÁ¤ÇÏ¸é »ç¿ëÀÚ°¡ Control-A¸¦ ´­·¯¼­ ÆíÁý ÄÜÆ®·Ñ ¾ÈÀÇ ¸ðµç ÅؽºÆ®¸¦ ¼±ÅÃÇÏÁö ¸øÇϵµ·Ï ¸·½À´Ï´Ù.

+

+WantReturn: -WantReturn (Áï, ¸¶À̳ʽº »çÀÎ ´ÙÀ½¿¡ WantReturn)À» ÁöÁ¤ÇÏ¸é ¿©·¯-ÁÙ ÆíÁý ÄÜÆ®·ÑÀÌ Enter Å°´­¸²À» ÀâÁö ¸øÇϵµ·Ï ¸·½À´Ï´Ù. ±×·¯¸é Enter¸¦ ´­·¯°í âÀÇ ±âº» ¹öÆ°À» ´©¸¥ °Í°ú °°°Ô µË´Ï´Ù. ÀÌ °æ¿ì, »ç¿ëÀÚ´Â Control-Enter¸¦ ´­·¯ »õ ÁÙÀ» ½ÃÀÛÇÒ ¼ö ÀÖ½À´Ï´Ù.

+

+WantTab: ÅÇ Å°´­¸²ÀÌ ´ÙÀ½ ÄÜÆ®·Ñ·Î Ç×ÇØÇÏ´Â ´ë½Å¿¡ ÅÇ ¹®ÀÚ¸¦ »ý»êÇÏ°Ô ¸¸µì´Ï´Ù. ÀÌ ¿É¼ÇÀÌ ¾ø´Ù¸é, »ç¿ëÀÚ´Â Control-TabÀ» ´­·¯ ÅÇ ¹®ÀÚ¸¦ ¿©·¯-ÁÙ ÆíÁý ÄÜÆ®·Ñ ¾È¿¡ »ý»êÇÒ ¼ö ÀÖ½À´Ï´Ù. ÁÖÀÇ: WantTabÀº ÇÑ-ÁÙ ÆíÁý ÄÜÆ®·Ñ ¾È¿¡¼­µµ ÀÛµ¿ÇÏÁö¸¸, °¢ ÅÇ ¹®ÀÚ´Â ºó ³×¸ð ¹®ÀÚ·Î º¸¿©Áý´Ï´Ù (¹°·Ð ½ÇÁ¦ ÅÇÀ¸·Î ÀúÀåµÇ¾î ÀÖ½À´Ï´Ù).

+

+-Wrap (¸¶À̳ʽº Wrap): ¿©·¯-ÁÙ ÆíÁý ÄÜÆ®·Ñ¿¡ ´Ü¾î ³Ñ±â±â¸¦ ²ü´Ï´Ù. ÀÌ ½ºÅ¸ÀÏÀº ÄÜÆ®·ÑÀÌ »ý¼ºµÈ ÈÄ¿¡´Â º¯°æÇÒ ¼ö ¾ø±â ¶§¹®¿¡, ´ÙÀ½ Áß ÇÑ ¹æ¹ýÀ» »ç¿ëÇØ º¯°æÇϽʽÿÀ: 1) â°ú ±×ÀÇ ÄÜÆ®·ÑµéÀ» Æı«(Destroy)ÇÑ ´ÙÀ½ ´Ù½Ã »ý¼ºÇϽʽÿÀ; ¶Ç´Â 2) Çϳª´Â ´Ü¾î ³Ñ±â±â¸¦ È°¼ºÈ­ÇÏ°í ´Ù¸¥ Çϳª´Â ²¨¼­ µÎ °³ÀÇ Áßø ÆíÁý ÄÜÆ®·ÑÀ» »ý¼ºÇϽʽÿÀ. ÇöÀç »ç¿ëµÇÁö ¾Ê´Â ÄÜÆ®·ÑÀ» ºñ¿ì°Å³ª ¶Ç´Â ¼û±æ ¼ö ÀÖ½À´Ï´Ù.

+

+ÀÏ¹Ý ¿É¼Ç¿¡¼­ ´Ù¸¥ ¿É¼Çµé ¿¹¸¦ µé¾î Right, Center, ±×¸®°í HiddenÀ» Âü°íÇϽʽÿÀ. ´ÙÀ½µµ ÂüÁ¶ÇϽʽÿÀ: ÄÜÆ®·ÑÀÇ À§Ä¡¿Í Å©±â º¯°æ.

+

+´õ °­·ÂÇÑ ÆíÁý ÄÜÆ®·Ñ: HiEditÀº ¸ÖƼ ÅÇÀ» Áö¿øÇÏ´Â ´ë¿ë·® ÆÄÀÏ ÆíÁý ÄÜÆ®·ÑÀÔ´Ï´Ù. ¹«·áÀÌ¸ç ¸Þ¸ð¸®¸¦ ¾ÆÁÖ Àû°Ô ¼ÒºñÇÕ´Ï´Ù. ÅؽºÆ®¿Í ÀÌÁø ÆÄÀÏÀ» ¸ðµÎ ÆíÁýÇÒ ¼ö ÀÖ½À´Ï´Ù. ´õ ÀÚ¼¼ÇÑ Á¤º¸¿Í µ¥¸ð´Â ´ÙÀ½À» ÂüÁ¶ÇϽʽÿÀ: www.autohotkey.com/forum/topic19141.html

+

UpDown

+

+¼³¸í: »ç¿ëÀÚ°¡ Ŭ¸¯ÇØ °ªÀ» Áõ°¡½ÃÅ°°Å³ª °¨¼Ò ½Ãų ¼ö ÀÖ´Â ÇÑ ½ÖÀÇ È­»ìÇ¥ ¹öÆ°. ±âº»°ªÀ¸·Î UpDown ÄÜÆ®·ÑÀº ÀÚµ¿À¸·Î ÀÌÀü¿¡ Ãß°¡µÈ ÄÜÆ®·Ñ¿¡ ºÎÂøµË´Ï´Ù. ÀÌ ÀÌÀüÀÇ ÄÜÆ®·ÑÀ» UpDownÀÇ Ä£±¸ ÄÜÆ®·ÑÀ̶ó°í ºÎ¸¨´Ï´Ù. °¡Àå ÈçÇÑ ¿¹´Â ½ºÇdzÊ("spinner")Àε¥, UpDown ÄÜÆ®·ÑÀÌ Edit ÄÜÆ®·Ñ¿¡ ºÎÂøµË´Ï´Ù. ¿¹¸¦ µé¾î:

+ +
Gui, Add, Edit
+Gui, Add, UpDown, vMyUpDown Range1-10, 5
+

+À§ÀÇ ¿¹Á¦¾î¼­, Edit ÄÜÆ®·ÑÀº UpDownÀÇ Ä£±¸ ÄÜÆ®·ÑÀÔ´Ï´Ù. »ç¿ëÀÚ°¡ È­»ìÇ¥ ¹öÆ° Áß Çϳª¸¦ ´©¸¦ ¶§¸¶´Ù, Edit ÄÜÆ®·Ñ ¾ÈÀÇ ¼ýÀÚ°¡ ÀÚµ¿À¸·Î ´Ã¾î³ª°Å³ª ÁÙ¾îµì´Ï´Ù.

+

+UpDownÀÇ Ä£±¸ ÄÜÆ®·ÑÀº Text ¶Ç´Â ListBox ÄÜÆ®·Ñµµ °¡´ÉÇÕ´Ï´Ù. ±×·¸Áö¸¸, OS Á¦ÇÑ ¶§¹®¿¡, ÀÌ·± ÄÜÆ®·Ñ ¸»°í ´Ù¸¥ ÄÜÆ®·ÑµéÀº (¿¹¸¦ µé¾î ComboBox¿Í DropDownList) g-¶óº§ ±×¸®°í ±âŸ Ư¡°ú Á¦´ë·Î ÀÛµ¿ÇÏÁö ¾Ê½À´Ï´Ù.

+

+UpDownÀÇ ½ÃÀÛ À§Ä¡¸¦ ¸¶Áö¸· ¸Å°³º¯¼ö·Î ÁöÁ¤ÇϽʽÿÀ (»ý·«Çϸé, 0¿¡¼­ ½ÃÀÛÇϰųª Çã¿ë ¹üÀ§ ¾È¿¡¼­ 0¿¡ °¡Àå °¡±î¿î ¼ýÀÚ¿¡¼­ ½ÃÀÛÇÕ´Ï´Ù).

+

+Gui Submit ¸í·É¾î¸¦ »ç¿ëÇϸé, ÄÜÆ®·ÑÀÇ ¿¬°ü Ãâ·Â º¯¼ö°¡ (ÀÖ´Ù¸é) ÇöÀç UpDownÀÇ À§Ä¡¸¦ ¼ýÄ¡·Î ¹Þ½À´Ï´Ù. UpDownÀÌ Edit ÄÜÆ®·Ñ¿¡ ºÎÂøµÇ¾î ÀÖ°í »ç¿ëÀÚÀÇ ÀÔ·ÂÀ» Æò°¡ÇÏ°í ½ÍÁö ¾Ê´Ù¸é, EditÀÇ °ª ¸»°í UpDownÀÇ °ªÀ» »ç¿ëÇÏ´Â °ÍÀÌ ÁÁ½À´Ï´Ù. ¿Ö³ÄÇÏ¸é »ç¿ëÀÚ°¡ Edit ÄÜÆ®·Ñ¿¡ ºñ-¼ýÀÚ¸¦ ÀÔ·ÂÇϰųª ¹üÀ§¸¦ ¹þ¾î³­ °ªÀ» ÀÔ·ÂÇÏ´õ¶óµµ UpDownÀº ¾ðÁ¦³ª ¹üÀ§ ¾È¿¡¼­ ¼ýÀÚ¸¦ »êÃâÇϱ⠶§¹®ÀÔ´Ï´Ù. °ü·ÃÇÏ¿© ¸»ÇÏÀÚ¸é, ¼¼ ÀÚ¸® ÀÌ»óÀÇ ¼ýÀÚ´Â ±âº»°ªÀ¸·Î õÀÇ ÀÚ¸® °¡¸§ÀÚ (¿¹¸¦ µé¾î ½°Ç¥)°¡ ÀÖ½À´Ï´Ù. ÀÌ·± °¡¸§ÀÚµéÀº UpDownÀÇ Ãâ·Â º¯¼ö°¡ ¾Æ´Ï¶ó EditÀÇ Ãâ·Â º¯¼ö¿¡ ÀúÀåµË´Ï´Ù.

+

+UpDown¿¡ g-¶óº§ÀÌ ÀÖ´Ù¸é, »ç¿ëÀÚ°¡ È­»ìÇ¥ ¹öÆ°À» Ŭ¸¯Çϰųª Å°º¸µå¿¡¼­ È­»ìÇ¥ Å°¸¦ ´©¸¦ ¶§¸¶´Ù ±âµ¿µË´Ï´Ù. g-¶óº§ÀÌ ±âµ¿ÇÒ ¶§¸¶´Ù UpDownÀÇ À§Ä¡¸¦ ±×ÀÇ ¿¬°ü Ãâ·Â º¯¼ö¿¡ (ÀÖ´Ù¸é) ÀúÀåÇÕ´Ï´Ù.

+ +

UpDown ¿É¼Ç

+

+Horz: ÄÜÆ®·ÑÀÇ ¹öÆ° ¹æÇâÀ» ÁÂ/¿ì·Î ¸¸µì´Ï´Ù. +±âº»°ªÀ¸·Î, Horz´Â ¶Ç ÄÜÆ®·ÑÀ» ºÐ¸®½Ãŵ´Ï´Ù (Ä£±¸ ¾øÀ½). +ÀÌ ÇàÀ§´Â Horz 16¸¦ ÄÜÆ®·ÑÀÇ ¿É¼Ç¿¡ ÁöÁ¤ÇÏ¸é ¿À¹ö¶óÀ̵åÇÒ ¼ö ¾ø½À´Ï´Ù.

+

+Left: UpDownÀ» ±×ÀÇ Ä£±¸ÀÇ ¿ÞÂÊ¿¡ ¹èÄ¡ÇÕ´Ï´Ù.

+

+Range: ¹üÀ§¸¦ 0°ú 100 ¸»°í ÁöÁ¤ÇÕ´Ï´Ù. ´Ü¾î Range ´ÙÀ½¿¡, ÃÖ¼Ò°ª, ¿·ÁÙ, ±×¸®°í ÃÖ´ë°ªÀ» ÁöÁ¤ÇϽʽÿÀ. ¿¹¸¦ µé¾î Range1-1000ÀÌ¸é ¼ýÀÚ¸¦ 1ºÎÅÍ 1000±îÁö ¼±Åõǵµ·Ï Çã¿ëÇÕ´Ï´Ù; Range-50-50ÀÌ¸é ¼ýÀÚ¸¦ -50ºÎÅÍ 50±îÁö Çã¿ëÇÕ´Ï´Ù; ±×¸®°í Range-10--5ÀÌ¸é ¼ýÀÚ¸¦ -10ºÎÅÍ -5±îÁö Çã¿ëÇÕ´Ï´Ù. ÃÖ¼Ò°ª°ú ÃÖ´ë°ªÀ» ¹Ù²Ù¸é È­»ìÇ¥°¡ Á¤»ó ¹æÇâ°ú ¹Ý´ë ¹æÇâÀ¸·Î À̵¿ÇÕ´Ï´Ù. ÃÖ´ë Çã¿ë ¹üÀ§´Â -2147483648-2147483647ÀÔ´Ï´Ù. ¸¶Áö¸·À¸·Î, Ä£±¸ ÄÜÆ®·ÑÀÌ ListBoxÀ̸é, ¹üÀ§´Â ±âº»°ªÀÌ ¼öÁ÷¿¡ 32767-0ÀÌ°í ¼öÆò¿¡ ±× ¹Ý´ëÀÔ´Ï´Ù (Horz).

+

+Wrap: +»ç¿ëÀÚ°¡ ÃÖ¼Ò°ª ¶Ç´Â ÃÖ´ë°ªÀ» ³Ñ¾î¼­·Á°í ½ÃµµÇϸé ÄÜÆ®·ÑÀº ±×ÀÇ ¹üÀ§ ¹Ý´ë ³¡À¸·Î µ¹¸³´Ï´Ù. +WrapÀÌ ¾ø´Ù¸é, ÄÜÆ®·ÑÀº ÃÖ´ë ÃÖ¼Ò °ª¿¡ µµ´ÞÇÏ¸é ¸ØÃä´Ï´Ù

+

+-16 (¸¶À̳ʽº 16): ¼öÁ÷ UpDownÀ» ºÐ¸®½Ãŵ´Ï´Ù; Áï, Ä£±¸°¡ ¾ø½À´Ï´Ù. ÀÌ·¸°Ô ÇÏ¸é ¶ÇÇÑ ÄÜÆ®·ÑÀÌ Ä£±¸ ÄÜÆ®·ÑÀÇ Å©±â¸¦ µû¸£Áö ¾Ê°í ÁöÁ¤µÈ ³Êºñ¿Í ³ôÀÌ ±×¸®°í À§Ä¡¸¦ ÁؼöÇÕ´Ï´Ù. °Ô´Ù°¡, ºÐ¸®µÈ UpDownÀº ÀڽŸ¸ÀÇ À§Ä¡¸¦ ³»ºÎÀûÀ¸·Î ÃßÀû °ü¸®ÇÕ´Ï´Ù. ÀÌ À§Ä¡´Â Gui Submit¿Í °°Àº ¼ö´ÜÀ» ÅëÇÏ¿© Á¤»óÀûÀ¸·Î ¿­¶÷ÇÒ ¼ö ÀÖ½À´Ï´Ù.

+

+0x80: 0x80À» Options¿¡ Æ÷ÇÔÇϸé õÀÇ ÀÚ¸® °¡¸§ÀÚ¸¦ »ý·«ÇÒ ¼ö ÀÖ½À´Ï´Ù. ÀÌ °¡¸§ÀÚ´Â º¸Åë Ä£±¸ ÄÜÆ®·ÑÀÇ ¼Ò¼öÁ¡ ¼¼ ÀÚ¸®¸¶´Ù ³ªÅ¸³³´Ï´Ù. ±×·¸Áö¸¸, ÀÌ ½ºÅ¸ÀÏÀº º¸Åë »ç¿ëµÇÁö ¾Ê½À´Ï´Ù. ¿Ö³ÄÇÏ¸é ½ºÅ©¸³Æ®°¡ (±×ÀÇ Ä£±¸ ÄÜÆ®·ÑÀÌ ¾Æ´Ï¶ó) UpDown ÄÜÆ®·Ñ ÀÚü·ÎºÎÅÍ ¿­¶÷ÇÒ ¶§ °¡¸§ÀÚ¸¦ ¼ýÀڷκÎÅÍ Á¦¿ÜÇϱ⠶§¹®ÀÔ´Ï´Ù.

+

+1 ¸»°í ´Ù¸¥ °ª ¸¸Å­ Áõ°¡½ÃÅ°±â: +ÀÌ ½ºÅ©¸³Æ®¿¡¼­, NumEricÀº UpDownÀÇ Áõ°¨°ªÀ» 1 ¾Æ´Ñ °ªÀ¸·Î (¿¹¸¦ µé¾î 5 ¶Ç´Â 0.1) º¯°æÇÏ´Â ¹ýÀ» º¸¿©ÁÝ´Ï´Ù..

+

´ÙÀ½ ÂüÁ¶: ÄÜÆ®·ÑÀÇ À§Ä¡¿Í Å©±â º¯°æ.

+ +

Picture (¶Ç´Â Pic)

+

+¼³Á¤: À̹ÌÁö¸¦ ´ã°í ÀÖ´Â ±¸¿ª (Áö¿øµÇ´Â ÆÄÀÏ À¯ÇüÀº ¸¶Áö¸· µÎ ¹®´ÜÀ» ÂüÁ¶). ¸¶Áö¸· ¸Å°³º¯¼ö´Â À̹ÌÁöÀÇ ÆÄÀÏÀ̸§ÀÔ´Ï´Ù. Àý´ë °æ·Î¸¦ ÁöÁ¤ÇÏÁö ¾ÊÀ¸¸é A_WorkingDir¿¡ ÀÖ´Ù°í °£Áֵ˴ϴÙ. ¿¹¸¦ µé¾î:

+ +
Gui, Add, Picture, w300 h-1, C:\My Pictures\Company Logo.gif
+

+À̹ÌÁöÀÇ ½ÇÁ¦ ³Êºñ ±×¸®°í/¶Ç´Â ³ôÀ̸¦ À¯ÁöÇÏ·Á¸é, W ±×¸®°í/¶Ç´Â H ¿É¼ÇÀ» »ý·«ÇϽʽÿÀ. ±×·¸Áö ¾ÊÀ¸¸é, À̹ÌÁö´Â ÁöÁ¤µÈ ³Êºñ ±×¸®°í/¶Ç´Â ³ôÀ̵µ Å©±â°¡ Á¶ÀýµË´Ï´Ù (ÀÌ ³Êºñ¿Í ³ôÀÌ´Â ¶ÇÇÑ ¾î´À ¾ÆÀÌÄÜÀ» ´ÙÁß-¾ÆÀÌÄÜ .ICO ÆÄÀϷκÎÅÍ ÀûÀçÇÒÁö °áÁ¤Çϱ⵵ ÇÕ´Ï´Ù). ±×ÀÇ È­¸é ºñÀ²À» À¯ÁöÇÑ Ã¤·Î À̹ÌÁö¸¦ ´Ã¸®°Å³ª ÁÙÀÌ·Á¸é, -1À» Â÷¿ø Áß Çϳª¿¡ ÁöÁ¤ÇÏ°í ¾ç¼ö¸¦ ³ª¸ÓÁö Â÷¿ø¿¡ ÁöÁ¤ÇϽʽÿÀ. ¿¹¸¦ µé¾î, w200 h-1À¸·Î ÁöÁ¤Çϸé À̹ÌÁö¸¦ 200 Çȼ¿ ³Êºñ·Î ¸¸µé°í ³ôÀÌ´Â ÀÚµ¿À¸·Î ¼³Á¤ÇÕ´Ï´Ù. ±×¸²À» ÀûÀçÇÒ ¼ö ¾ø°Å³ª º¸¿©ÁÙ ¼ö ¾øÀ¸¸é (¿¹, ÆÄÀÏÀÌ ¾øÀ¸¸é), ÄÜÆ®·ÑÀº ºó ä·Î ÀÖ°í ±×ÀÇ ³Êºñ¿Í ³ôÀÌ´Â 0À¸·Î ¼³Á¤µË´Ï´Ù.

+

+gMySubroutine°ú °°Àº g-¶óº§À» ÄÜÆ®·ÑÀÇ ¿É¼Ç¿¡ ³ª¿­ÇÒ ¼ö ÀÖ½À´Ï´Ù. ÀÌ·¸°Ô Çϸé MySubroutine ¶óº§ÀÌ »ç¿ëÀÚ°¡ ±×¸²À» Ŭ¸¯ÇÒ ¶§¸¶´Ù ÀÚµ¿À¸·Î ±âµ¿µË´Ï´Ù. ´õºí-Ŭ¸¯Àº A_GuiEvent¿¡ ´Ü¾î DoubleClickÀÌ µé¾î ÀÖ´ÂÁö Á¡°ËÇØ º¸¸é ŽÁöÇÒ ¼ö ÀÖ½À´Ï´Ù.

+

+±×¸²À» ´Ù¸¥ ÄÜÆ®·Ñ¿¡ ¹è°æÀ¸·Î »ç¿ëÇÏ·Á¸é, ±×¸²Àº º¸Åë ±×·± ÄÜÆ®·Ñº¸´Ù ¸ÕÀú ÀûÀçÇØ¾ß ÇÕ´Ï´Ù. ±×·¸Áö¸¸, ±×·± ÄÜÆ®·ÑÀÌ ÀÔ·Â °¡´ÉÇÏ°í ±×¸²Àº g-¶óº§ÀÌ ÀÖ´Â °æ¿ì¶ó¸é, ´Ù¸¥ ÄÜÆ®·Ñ µÚ¿¡ ±×¸² ÄÜÆ®·ÑÀ» »ý¼ºÇÏ°í 0x4000000¸¦ (WS_CLIPSIBLINGSÀÓ) ±×¸²ÀÇ Options¿¡ Æ÷ÇÔ½ÃÅ°½Ê½Ã¿À. ÀÌ Æ®¸¯À¸·Î ±×¸²Àº ¶ÇÇÑ Tab ÄÜÆ®·Ñ ¶Ç´Â ListView µÚÀÇ ¹è°æÀÌ µÉ ¼ö ÀÖ½À´Ï´Ù.

+

+¾ÆÀÌÄÜ, Ä¿¼­, ±×¸®°í ¾Ö´Ï¸ÞÀÌ¼Ç Ä¿¼­: ¾ÆÀÌÄÜ°ú Ä¿¼­´Â ´ÙÀ½ À¯ÇüÀÇ ÆÄÀϷκÎÅÍ ÀûÀçÇÒ ¼ö ÀÖ½À´Ï´Ù: ICO, CUR, ANI, EXE, DLL, CPL, SCR, ±×¸®°í ¾ÆÀÌÄÜ ÀÚ¿øÀ» ´ãÀº ±âŸ À¯Çüµé. ÆÄÀÏÀÇ Ã¹ ¹ø° ¾ÆÀÌÄÜÀÌ ¾Æ´Ï¶ó ¾ÆÀÌÄÜ ±×·ìÀ» »ç¿ëÇÏ·Á¸é, Options¿¡ ´Ü¾î Icon°ú À̾ ¹Ù·Î ±× ±×·ì ¹øÈ£¸¦ Æ÷ÇÔ½ÃÅ°½Ê½Ã¿À. ´ÙÀ½ ¿¹Á¦¿¡¼­, µÎ ¹ø° ¾ÆÀÌÄÜ ±×·ìÀ¸·ÎºÎÅÍ ±âº» ¾ÆÀÌÄÜÀÌ »ç¿ëµË´Ï´Ù: Gui, Add, Picture, Icon2, C:\My Application.exe.

+

+´Ü¾î AltSubmitÀ» Options¿¡ ÁöÁ¤Çϸé ÇÁ·Î±×·¥Àº ¸¶ÀÌÅ©·Î¼ÒÇÁÆ®»çÀÇ GDIPlus.dllÀ» ÀÌ¿ëÇÏ¿© À̹ÌÁö¸¦ ÀûÀçÇÕ´Ï´Ù. ÀÌ ¶§¹®¿¡ GIF, BMP, ±×¸®°í ¾ÆÀÌÄÜ À̹ÌÁö¿¡ ´Ù¸¥ ¸ð½ÀÀÌ »ý±æ ¼ö ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î, Åõ¸í ¹è°æÀ» °¡Áø ICO/GIF¸¦ Åõ¸í ºñÆ®¸ÊÀ¸·Î ÀûÀçÇÏ·Á°í ÇÕ´Ï´Ù. ÀÌ ¶§¹®¿¡ BackgroundTrans ¿É¼ÇÀÌ ÄÑÁý´Ï´Ù. GDIPlus¸¦ »ç¿ëÇÒ ¼ö ¾øÀ¸¸é (´ÙÀ½ ¹®´Ü ÂüÁ¶), AltSubmitÀº ¹«½ÃµÇ°í À̹ÌÁö´Â º¸ÅëÀÇ ¹æ¹ýÀ» »ç¿ëÇÏ¿© ÀûÀçµË´Ï´Ù.

+

+¸ðµç ¿î¿µ üÁ¦´Â GIF, JPG, BMP, ICO, CUR, ±×¸®°í ANI À̹ÌÁö¸¦ Áö¿øÇÕ´Ï´Ù. Windows XP ÀÌÈÄ¿¡, PNG, TIF, Exif, WMF, ±×¸®°í EMF¿Í °°Àº À̹ÌÁö¸¦ Ãß°¡·Î Áö¿øÇÕ´Ï´Ù. XP º¸´Ù ¿À·¡µÈ ¿î¿µ üÁ¦´Â ¸¶ÀÌÅ©·Î¼ÒÇÁÆ®»çÀÇ ¹«·á GDI+ DLLÀ» AutoHotkey.exe Æú´õ ¾ÈÀ¸·Î º¹»çÇØ Áö¿øÇÒ ¼ö ÀÖ½À´Ï´Ù (±×·¯³ª ÄÄÆÄÀÏ ½ºÅ©¸³Æ®ÀÇ °æ¿ì´Â, ±× DLLÀ» ½ºÅ©¸³Æ®ÀÇ Æú´õ ¾ÈÀ¸·Î º¹»çÇØ ³ÖÀ¸½Ê½Ã¿À). ÀÌ DLLÀ»³»·Á ¹ÞÀ¸·Á¸é, www.microsoft.com¿¡ ´ÙÀ½ ¹®±¸¸¦ °Ë»öÇϽʽÿÀ: gdi redistributable

+

+¾Ö´Ï¸ÞÀÌ¼Ç GIF: ¾Ö´Ï¸ÞÀÌ¼Ç GIF ÆÄÀÏÀ» ±×¸² ÄÜÆ®·Ñ¿¡ º¸¿©ÁÙ ¼ö ÀÖÁö¸¸, ½ÇÁ¦·Î´Â ¿òÁ÷ÀÌÁö ¾Ê½À´Ï´Ù. À̸¦ ÇØ°áÇÏ·Á¸é, AniGIF DLLÀ» »ç¿ëÇϽʽÿÀ (ºñ »ó¾÷Àû ¸ñÀûÀ¸·Î´Â ¹«·áÀÔ´Ï´Ù). ´ÙÀ½¿¡ ½Ã¿¬ÇÕ´Ï´Ù: www.autohotkey.com/forum/topic19264.html

+

Button

+

+¼³¸í: ´­·¯¼­ Á¶Ä¡¸¦ Ã˹ßÇÒ ¼ö Àִ Ǫ½Ã¹öÆ°. ÀÌ °æ¿ì, ¸¶Áö¸· ¸Å°³º¯¼ö´Â ¹öÆ°ÀÇ À̸§ÀÔ´Ï´Ù (¹öÆ° ÀÚü¿¡ º¸¿©Áü). À̸§¿¡ ¶óÀÎÇǵå (`n)¸¦ Æ÷ÇÔÇÏ¸é »õ ÁÙÀ» ½ÃÀÛÇÒ ¼ö ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î:

+ +
Gui, Add, Button, Default, OK
+

+À§ÀÇ ¿¹Á¦´Â ±×ÀÇ Options¿¡ ´Ü¾î Default¸¦ Æ÷ÇÔ½ÃÄÑ "OK"¸¦ ±âº» ¹öÆ°À¸·Î ¸¸µì´Ï´Ù. ±âº» ¹öÆ°ÀÇ ÇàÀ§´Â »ç¿ëÀÚ°¡ ENTER¸¦ ´©¸¦ ¶§¸¶´Ù ÀÚµ¿À¸·Î Ã˹ߵ˴ϴÙ. ´Ü, Å°º¸µå ÃÊÁ¡ÀÌ ´Ù¸¥ ¹öÆ°¿¡ Àְųª ¿©·¯ÁÙ ÆíÁý ÄÜÆ®·Ñ¿¡ WantReturn ½ºÅ¸ÀÏÀÌ ÀÖ´Â °æ¿ì´Â ¿¹¿ÜÀÔ´Ï´Ù. ³ªÁß¿¡ ±âº» ¹öÆ°À» ´Ù¸¥ ¹öÆ°À¸·Î ¹Ù²Ù·Á¸é, ´ÙÀ½ ¿¹Á¦¸¦ µû¸£½Ê½Ã¿À. Cancel ¹öÆ°À» ±âº» ¹öÆ°À¸·Î ¸¸µì´Ï´Ù: GuiControl, +Default, Cancel. ³ªÁß¿¡ âÀ» ±âº» ¹öÆ°ÀÌ ¾øµµ·Ï º¯°æÇÏ·Á¸é, ´ÙÀ½ ¿¹Á¦¸¦ µû¸£½Ê½Ã¿À: GuiControl, -default, OK.

+

+¾ÚÆÛ¼¾µå (&)¸¦ À̸§ ¹öÆ°¿¡ »ç¿ëÇÏ¸é ±×ÀÇ ±ÛÀÚ¿¡ ¹ØÁÙÀ» ±×À» ¼ö ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î:

+ +
Gui, Add, Button,, &Pause
+

+À§ÀÇ ¿¹Á¦¿¡¼­, ±âÈ£ P¿¡ ¹ØÁÙÀÌ ±×¾îÁý´Ï´Ù. ±×·¯¸é »ç¿ëÀÚ´Â Alt+P¸¦ ´­·¯¼­ ´ÜÃà Å°·Î »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. ±âÈ£ ±×´ë·Î ¾ÚÆÛ¼¾µå¸¦ º¸¿©ÁÖ·Á¸é, ¾ÚÆÛ¼¾µå µÎ °³¸¦ ¿¬¼ÓÇØ ÁöÁ¤ÇϽʽÿÀ (&&).

+

+¹öÆ°¿¡ ¸í½ÃÀûÀÎ g-¶óº§ÀÌ ¾ø´Ù¸é, ÀÚµ¿ ¶óº§ÀÌ ÀÖ´Ù°í °£Áֵ˴ϴÙ. ¿¹¸¦ µé¾î ù ¹ø° GUI â¿¡ OK ¹öÆ°ÀÌ ÀÖ´Ù¸é, ±× ButtonOK ¶óº§ÀÌ (Á¸ÀçÇÑ´Ù¸é) ±× ¹öÆ°ÀÌ ´­¸± ¶§ ±âµ¿µË´Ï´Ù. ù ¹ø° â ¸»°í ´Ù¸¥ GUI â¿¡ ´ëÇÏ¿©, â ¹øÈ£°¡ ¹öÆ°ÀÇ ÀÚµ¿ ¶óº§ ¾Õ¿¡ Æ÷ÇԵ˴ϴÙ; ¿¹¸¦ µé¾î: 2ButtonOK.

+

+¹öÆ°ÀÇ ÅؽºÆ®¿¡ ½ºÆäÀ̽º³ª &`r`n`t` ÁýÇÕ¿¡ ÀÖ´Â ¹®ÀÚ°¡ µé¾î ÀÖ´Ù¸é, ±×ÀÇ ÀÚµ¿ ¶óº§Àº ±×·± ¹®ÀÚµéÀ» »ý·«ÇÕ´Ï´Ù. ¿¹¸¦ µé¾î, ¹öÆ° Á¦¸ñÀÌ "&Pause"À̶ó¸é ÀÚµ¿ ¶óº§Àº ButtonPause°¡ µË´Ï´Ù. ºñ½ÁÇÏ°Ô, ¹öÆ° Á¦¸ñ "Save && Exit"À̶ó¸é ÀÚµ¿ ¶óº§Àº ButtonSaveExitÀÌ µË´Ï´Ù (µÎ °³ÀÇ ¿¬¼Ó ¾ÚÆÛ»÷µå´Â ¾ÚÆÛ¼¾µå Çϳª¸¦ ±âÈ£ ±×´ë·Î ³ªÅ¸³»´Â µ¥ »ç¿ëµË´Ï´Ù).

+

+¾Ë·ÁÁø ÇÑ°è: ¾î¶² ¹ÙÅÁÈ­¸é Å׸¶´Â ¹öÆ°ÀÇ ÅؽºÆ®¸¦ Á¦´ë·Î º¸¿©ÁÖÁö ¸øÇÒ ¼ö ÀÖ½À´Ï´Ù. ÀÌ·± ÀÏÀÌ ÀϾ¸é, -Wrap (¸¶À̳ʽº Wrap)À» ¹öÆ°ÀÇ ¿É¼Ç¿¡ Æ÷ÇÔ½ÃÄÑ º¸½Ê½Ã¿À. ±×·¸Áö¸¸, ÀÌ·¸°Ô ÇÏ¸é ¿©·¯ ÁÙ ÅؽºÆ®´Â Æ÷±âÇØ¾ß ÇÕ´Ï´Ù.

+ +

Checkbox

+

+¼³¸í: üũÇϰųª ÇØÁ¦ÇØ On/Off, Yes/No, µîµîÀ» Ç¥ÇöÇÒ ¼ö ÀÖ´Â ÀÛÀº ¹Ú½º. ¿¹Á¦:

+
Gui, Add, Checkbox, vShipToBillingAddress, û±¸Áö ÁÖ¼Ò·Î ¹è¼ÛÇÒ±î¿ä?
+

+¸¶Áö¸· ¸Å°³º¯¼ö´Â ¹Ú½º ¿·¿¡ º¸¿©Áö´Â ¶óº§ÀÔ´Ï´Ù. ÀüÇüÀûÀ¸·Î ÇÁ·ÒÇÁÆ®·Î »ç¿ëµÇ°Å³ª üũ¹Ú½º°¡ ¹«¾ùÀ» ÇÏ´ÂÁö ¼³¸íÇϴµ¥ »ç¿ëµË´Ï´Ù. ¶óÀÎÇǵ带 (`n) Æ÷ÇÔÇÏ¸é »õ ÁÙÀ» ½ÃÀÛÇÒ ¼ö ÀÖ½À´Ï´Ù. ³Êºñ (W)°¡ Options¿¡ ÁöÁ¤µÇ¾úÁö¸¸ Çà(R)À̳ª ³ôÀÌ(H)°¡ ¾ø´Ù¸é, ÄÜÆ®·ÑÀÇ ÅؽºÆ®´Â ÇÊ¿äÇÏ¸é ´Ü¾î-³Ñ±â±â µË´Ï´Ù. ±×¸®°í ÄÜÆ®·ÑÀÇ ³ôÀÌ´Â ÀÚµ¿À¸·Î ¼³Á¤µË´Ï´Ù. üũ¹Ú½ºÀÇ ¿¬°ü Ãâ·Â º¯¼ö´Â (ÀÖ´Ù¸é) üũµÇ¾î ÀÖÀ» °æ¿ì 1, ÇØÁ¦µÇ¾î ÀÖÀ¸¸é 0, ±×¸®°í ȸ»ö󸮵È/¹Ì°áÁ¤ »óÅÂÀ̸é -1À» ¹Þ½À´Ï´Ù.

+

+´Ü¾î Check3À» Options¿¡ ÁöÁ¤ÇÏ¸é ¼¼ ¹ø° »óŸ¦ ÄÓ ¼ö ÀÖ½À´Ï´Ù. ÀÌ »óŸ¦ ±î¸¸»öÀÌ ¾Æ´Ï¶ó ȸ»ö üũǥ½ÄÀ» º¸¿©ÁÝ´Ï´Ù (ȸ»öÀº üũ¹Ú½º°¡ üũµÇÁöµµ ÇØÁ¦µÇÁöµµ ¾ÊÀº »óŶó´Â °ÍÀ» ³ªÅ¸³À´Ï´Ù). ´Ü¾î Checked ¶Ç´Â CheckedGrayÀ» Options¿¡ ÁöÁ¤Çϸé üũ¹Ú½º¸¦ °¢°¢ °ËÁ¤»ö ¶Ç´Â ȸ»ö üũǥ½ÄÀ» °¡Áö°í ½ÃÀÛÇϵµ·Ï ¸¸µé ¼ö ÀÖ½À´Ï´Ù. ´Ü¾î Checked´Â ´ÙÀ½¿¡ ¼±ÅÃÀûÀ¸·Î 0, 1, ¶Ç´Â -1ÀÌ µû¶ó¿Í ½ÃÀÛ »óŸ¦ ³ªÅ¸³¾ ¼ö ÀÖ½À´Ï´Ù. ´Ù¸¥ ¸»·Î, Checked ±×¸®°í Checked%VarContainingOne%´Â °°½À´Ï´Ù.

+

+gMySubroutine¿Í °°Àº g-¶óº§À» ÄÜÆ®·ÑÀÇ ¿É¼Ç¿¡ ³ª¿­ÇÒ ¼ö ÀÖ½À´Ï´Ù. ÀÌ·¸°Ô ÇÏ¸é »ç¿ëÀÚ°¡ üũ¹Ú½º¸¦ Ŭ¸¯Çϰųª º¯°æÇÒ ¶§¸¶´Ù MySubroutine ¶óº§ÀÌ Áöµ¿À¸·Î ±âµ¿µË´Ï´Ù.

+

+¾Ë·ÁÁø ÇÑ°è: ¾î¶² ¹ÙÅÁÈ­¸é Å׸¶´Â ¹öÆ°ÀÇ ÅؽºÆ®¸¦ Á¦´ë·Î º¸¿©ÁÖÁö ¸øÇÒ ¼ö ÀÖ½À´Ï´Ù. ÀÌ·± ÀÏÀÌ ÀϾ¸é, -Wrap (¸¶À̳ʽº Wrap)À» ¹öÆ°ÀÇ ¿É¼Ç¿¡ Æ÷ÇÔ½ÃÄÑ º¸½Ê½Ã¿À. ±×·¸Áö¸¸, ÀÌ·¸°Ô ÇÏ¸é ¿©·¯ ÁÙ ÅؽºÆ®´Â Æ÷±âÇØ¾ß ÇÕ´Ï´Ù.

+ +

Radio

+

+¶óµð¿À ¹öÆ°Àº üũÇϰųª ÇØÁ¦ÇÒ ¼ö ÀÖ´Â ÀÛÀº ºó µ¿±×¶ó¹ÌÀÔ´Ï´Ù. ¿¹¸¦ µé¾î:

+
Gui, Add, Radio, vMyRadioGroup, ¹è¼ÛÇϱâ Àü¿¡ ¸ðµç ¹°Ç°ÀÌ ÁغñµÇ±â¸¦ ±â´Ù¸³´Ï´Ù.
+

+ÀÌ ÄÜÆ®·ÑÀº º¸Åë ¶óµð¿À ±×·ì ÇüÅ·Π³ªÅ¸³³´Ï´Ù. °¢ ±×·ì¸¶´Ù µÎ °³ ÀÌ»óÀÇ ¹öÆ°À» ´ã°í ÀÖ½À´Ï´Ù. »ç¿ëÀÚ°¡ ¶óµð¿À ¹öÆ°À» Ŭ¸¯ÇØ ÄѸé, ±× ±×·ìÀÇ ´Ù¸¥ ¹öÆ°Àº ÀÚµ¿À¸·Î ²¨Áý´Ï´Ù (»ç¿ëÀÚ´Â È­»ìÇ¥ Å°·Î ±×·ì ¾ÈÀ» Ç×ÇØÇÒ ¼ö ÀÖ½À´Ï´Ù). ¿¬À̾î Ãß°¡µÇ´Â ¸ðµç ¶óµð¿À ¹öÆ°¿¡ ¶óµð¿À ±×·ìÀÌ ÀÚµ¿À¸·Î »ý¼ºµË´Ï´Ù. »õ ±×·ìÀ» ½ÃÀÛÇÏ·Á¸é, ´Ü¾î GroupÀ» »õ ±×·ìÀÇ Ã¹ ¹ø° ¹öÆ°ÀÇ Options¿¡ ÁöÁ¤ÇϽʽÿÀ -- ¶Ç´Â ±×³É ºñ-¶óµð¿À ÄÜÆ®·ÑÀ» ±× »çÀÌ¿¡ Ãß°¡ÇϽʽÿÀ. ±×·¯¸é ÀÚµ¿À¸·Î »õ ±×·ìÀÌ ½ÃÀÛÇϱ⠶§¹®ÀÔ´Ï´Ù.

+

+¸¶Áö¸· ¸Å°³º¯¼ö¿¡, ¶óµð¿À ¹öÆ°ÀÇ ¿À¸¥ÂÊ¿¡ º¸¿© ÁÙ ¶óº§À» ÁöÁ¤ÇϽʽÿÀ. ÀÌ ¶óº§Àº ÀüÇüÀûÀ¸·Î ÇÁ·ÒÇÁÆ®³ª ¼³¸íÀ¸·Î »ç¿ëµË´Ï´Ù. ¶óÀÎÇǵ带 Æ÷ÇÔÇϸé (`n) »õ ÁÙÀ» ½ÃÀÛÇÒ ¼ö ÀÖ½À´Ï´Ù. ³Êºñ (W)°¡ Options¿¡ ÁöÁ¤µÇ¾úÁö¸¸ Çà (R)µµ ³ôÀÌ (H)µµ ÁöÁ¤µÇÁö ¾Ê¾Ò´Ù¸é, ÄÜÆ®·ÑÀÇ ÅؽºÆ®´Â ÇÊ¿äÇÏ¸é ´Ü¾î ³Ñ±â±â°¡ µÇ°í, ³ôÀÌ´Â ÀÚµ¿À¸·Î ¼³Á¤µË´Ï´Ù.

+

+´Ü¾î Checked¸¦ Options¿¡ ÁöÁ¤ÇÏ¸é ¹öÆ°À» ÄÑÁø("on") »óÅ·Π½ÃÀÛÇÒ ¼ö ÀÖ½À´Ï´Ù. ´Ü¾î Checked ´ÙÀ½¿¡ ¼±ÅÃÀûÀ¸·Î ¹Ù·Î 0 ¶Ç´Â 1ÀÌ µû¶ó¿Í ½ÃÀÛ »óŸ¦ ¾Ë¸± ¼ö ÀÖ½À´Ï´Ù: 0À̸é ÇØÁ¦µÇ¾î ÀÖ´Â °ÍÀÌ°í 1À̸é üũµÇ¾î ÀÖ´Â °ÍÀÔ´Ï´Ù. ´Ù¸¥ ¸»·Î, Checked ±×¸®°í Checked%VarContainingOne%´Â °°½À´Ï´Ù.

+

+¶óµð¿À ¹öÆ°ÀÇ ¿¬°ü Ãâ·Â º¯¼ö´Â (ÀÖ´Ù¸é) "on"¿¡ ¼ýÀÚ 1À» ¹Þ°í "off"¿¡ 0À» ¹Þ½À´Ï´Ù. ±×·¸Áö¸¸, ¶óµð¿À ±×·ì¿¡ ¹öÆ° Çϳª¸¸ º¯¼ö°¡ÀÖ´Ù¸é ´ë½Å ±× º¯¼ö°¡ ÇöÀç ¼±ÅÃµÈ ¹öÆ°ÀÇ ¹øÈ£¸¦ ¹Þ½À´Ï´Ù: 1À̸é ù ¹ø° ¶óµð¿À ¹öÆ° (¿ø·¡ »ý¼º ¼ø¼­´ë·Î), 2ÀÌ¸é µÎ ¹ø° ¶óµð¿À ¹öÆ° µîµî. ¼±ÅÃµÈ ¹öÆ°ÀÌ ¾øÀ¸¸é, 0ÀÌ ÀúÀåµË´Ï´Ù.

+

+gMySubroutine¿Í °°Àº g-¶óº§À» ÄÜÆ®·ÑÀÇ ¿É¼Ç¿¡ ³ª¿­ÇÒ ¼ö ÀÖ½À´Ï´Ù. ÀÌ·¸°Ô ÇÏ¸é »ç¿ëÀÚ°¡ ¹öÆ°À» ÄÓ ¶§¸¶´Ù MySubroutine ¶óº§ÀÌ ÀÚµ¿À¸·Î ±âµ¿µË´Ï´Ù. ÀÌÀü ¹®´Ü¿¡¼­ ´ÜÀÏ-º¯¼ö ¸ðµå¿Í ´Ù¸£°Ô, g-¶óº§Àº ¶óµð¿À ±×·ì¿¡¼­ °¢ ¹öÆ°¸¶´Ù ÁöÁ¤ÇØ¾ß ±âµ¿µË´Ï´Ù. ÀÌ·¸°Ô Çϸé À¯¿¬ÇÏ°Ô ¾î¶² ¹öÆ°ÀÇ Å¬¸¯Àº ¹«½ÃÇÒ ¼ö ÀÖ½À´Ï´Ù. ¸¶Áö¸·À¸·Î, ´õºíŬ¸¯À» ŽÁöÇÏ·Á¸é A_GuiEvent¿¡ ´Ü¾î DoubleClickÀÌ ´ã°Ü ÀÖ´ÂÁö Á¡°ËÇÏ¸é µË´Ï´Ù.

+

+¾Ë·ÁÁø ÇÑ°è: ¾î¶² ¹ÙÅÁÈ­¸é Å׸¶´Â ¹öÆ°ÀÇ ÅؽºÆ®¸¦ Á¦´ë·Î º¸¿©ÁÖÁö ¸øÇÒ ¼ö ÀÖ½À´Ï´Ù. ÀÌ·± ÀÏÀÌ ÀϾ¸é, -Wrap (¸¶À̳ʽº Wrap)À» ¹öÆ°ÀÇ ¿É¼Ç¿¡ Æ÷ÇÔ½ÃÄÑ º¸½Ê½Ã¿À. ±×·¸Áö¸¸, ÀÌ·¸°Ô ÇÏ¸é ¿©·¯ ÁÙ ÅؽºÆ®´Â Æ÷±âÇØ¾ß ÇÕ´Ï´Ù.

+ + +

+¼³¸í: ÀÛÀº ¹öÆ°À» ´©¸£¸é ÀÀ´äÇÏ¿© º¸¿©ÁÖ´Â ¼±Åà ¸®½ºÆ®. ÀÌ °æ¿ì ¸¶Áö¸· ¸Å°³º¯¼ö´Â ÆÄÀÌÇÁ·Î ±¸ºÐµÈ ¼±Åà ¸®½ºÆ®ÀÔ´Ï´Ù. ¿¹, Choice1|Choice2|Choice3. ¿¹Á¦:

+ +
Gui, Add, DropDownList, vColorChoice, Black|White|Red|Green|Blue
+

+âÀÌ Ã³À½ ³ªÅ¸³¯ ¶§ Ç׸ñ Áß¿¡ Çϳª¸¦ ¹Ì¸® ¼±ÅÃÇÏ·Á¸é, µÎ °³ÀÇ ÆÄÀÌÇÁ ¹®ÀÚ¸¦ ±× ´ÙÀ½¿¡ ºÙÀ̽ʽÿÀ (¿¹, Red|Green||Blue). ´Ù¸¥ ¹æ¹ýÀ¸·Î, Options¿¡ ´Ü¾î Choose ¿Í ¹Ù·Î À̾ ¹Ì¸®-¼±ÅÃÇÒ ¹øÈ£¸¦ ÁöÁ¤ÇϽʽÿÀ. ¿¹¸¦ µé¾î, Choose5ÀÌ¸é ´Ù¼¸ ¹ø° Ç׸ñÀ» ¹Ì¸® ¼±ÅÃÇÕ´Ï´Ù (´Ù¸¥ ¿É¼Ç°ú ¸¶Âù°¡Áö·Î, Choose%Var%¿Í °°Àº º¯¼öµµ °¡´ÉÇÕ´Ï´Ù). ÄÜÆ®·ÑÀÌ »ý¼ºµÈ ÀÌÈÄ¿¡ ¼±ÅÃÀ» º¯°æÇϰųª ¶Ç´Â ¸®½ºÆ®·ÎºÎÅÍ Ç׸ñÀ» Á¦°ÅÇϰųª/Ãß°¡ÇÏ·Á¸é, GuiControl¸¦ »ç¿ëÇϽʽÿÀ.

+

+´Ü¾î Uppercase ¶Ç´Â Lowercase¸¦ Options¿¡ ÁöÁ¤Çϸé ÀÚµ¿À¸·Î ¸®½ºÆ® ¾ÈÀÇ ¸ðµç Ç׸ñµéÀ» ´ë¹®ÀÚ ¶Ç´Â ¼Ò¹®ÀÚ·Î º¯È¯ÇÕ´Ï´Ù. ´Ü¾î Sort¸¦ ÁöÁ¤ÇÏ¸é ¸®½ºÆ®ÀÇ ³»¿ëÀ» ÀÚµ¿À¸·Î ¾ËÆĺª ¼ø¼­·Î Á¤·ÄÇÕ´Ï´Ù (ÀÌ°ÍÀº ³ªÁß¿¡ GuiControlÀ» ÅëÇÏ¿© Ãß°¡µÇ´Â Ç׸ñµé¿¡µµ ¸ðµÎ ¿µÇâÀ» ¹ÌĨ´Ï´Ù). Sort ¿É¼ÇÀº ¶ÇÇÑ ¸®½ºÆ®°¡ µå·Ó ´Ù¿îµÉ ¶§¸¶´Ù Á¡Áø °Ë»öÀ» È°¼ºÈ­ ÇÕ´Ï´Ù; ´öºÐ¿¡ ±×ÀÇ À̸§ Áß ¾Õ ¸î ±ÛÀÚ¸¸ ŸÀÚÇصµ Ç׸ñÀ» ¼±ÅÃÇÒ ¼ö ÀÖ½À´Ï´Ù.

+

+Gui Submit ¸í·É¾î°¡ »ç¿ëµÉ ¶§, ±× ÄÜƲ·ÎÀÇ ¿¬°ü Ãâ·Â º¯¼ö°¡ (ÀÖ´Ù¸é) ÇöÀç ¼±ÅÃµÈ Ç׸ñÀÇ ÅؽºÆ®¸¦ ¹Þ½À´Ï´Ù. ±×·¸Áö¸¸, ÄÜÆ®·Ñ¿¡ AltSubmit Ư¼ºÀÌ ÀÖ´Ù¸é, ±× Ãâ·Â º¯¼ö´Â ´ë½Å¿¡ ±× Ç׸ñÀÇ À§Ä¡ ¹øÈ£¸¦ ¹Þ½À´Ï´Ù (ù Ç׸ñÀº 1ÀÌ°í, µÎ ¹ø° Ç׸ñÀº 2ÀÔ´Ï´Ù. µîµî).

+

+gMySubroutine¿Í °°Àº g-¶óº§Àº ÄÜÆ®·ÑÀÇ ¿É¼Ç¿¡ ³ª¿­ÇÒ ¼ö ÀÖ½À´Ï´Ù. ÀÌ·¸°Ô ÇÏ¸é »ç¿ëÀÚ°¡ »õ Ç׸ñÀ» ¼±ÅÃÇÒ ¶§¸¶´Ù ÀÚµ¿À¸·Î MySubroutine ¶óº§ÀÌ ±âµ¿µË´Ï´Ù.

+

+R ¶Ç´Â H ¿É¼ÇÀ» »ç¿ëÇϸé Æ˾÷ ¸®½ºÆ®ÀÇ ³ôÀ̸¦ Á¦¾îÇÒ ¼ö ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î R5¸¦ ÁöÁ¤ÇÏ¸é ¸®½ºÆ®°¡ 5 Çà ³ôÀÌ°¡ µË´Ï´Ù. ¹Ý¸é¿¡ H400ÀÌ¸é ¼±Åà Çʵå¿Í ¸®½ºÆ®ÀÇ ÃÑ ³ôÀÌ°¡ 400 Çȼ¿·Î ¼³Á¤µË´Ï´Ù. R°ú H¸¦ ¸ðµÎ »ý·«Çϸé, ¸®½ºÆ®´Â ÀÚµ¿À¸·Î È®´ëµÇ¾î »ç¿ëÀÚÀÇ ¹ÙÅÁÈ­¸é ³ôÀ̸¦ È°¿ëÇÕ´Ï´Ù (±×·¸Áö¸¸, Windows XPº¸´Ù ¿À·¡µÈ ¿î¿µ üÁ¦´Â ±âº»À¸·Î 3 ÇàÀ» º¸¿©ÁÝ´Ï´Ù).

+

+¼±Åà Çʵ峪 ¸®½ºÆ® Ç׸ñÀÇ ³ôÀ̸¦ ¼³Á¤ÇÏ·Á¸é, ¾Æ·¡ ¿¹Á¦¿Í °°ÀÌ CB_SETITEMHEIGHT ¸Þ½ÃÁö¸¦ »ç¿ëÇϽʽÿÀ:

+ +
Gui Add, DDL, vcbx w200 hwndhcbx, One||Two
+; CB_SETITEMHEIGHT = 0x153
+PostMessage, 0x153, -1, 50,, ahk_id %hcbx%  ; ¼±Åà ÇʵåÀÇ ³ôÀ̸¦ ¼³Á¤ÇÕ´Ï´Ù.
+PostMessage, 0x153,  0, 50,, ahk_id %hcbx%  ; ¸®½ºÆ® Ç׸ñÀÇ ³ôÀ̸¦ ¼³Á¤ÇÕ´Ï´Ù.
+Gui Show, h70, Test
+

+ÇÊµå »çÀÌÀÇ °¡¸§ÀÚ´Â ÆÄÀÌÇÁ (|) ¸»°í ´Ù¸¥ °ÍÀ¸·Î ¹Ù²Ü ¼ö ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î Gui +Delimiter`nÀÌ¸é ¶óÀÎÇǵå·Î ¹Ù²î°í Gui +DelimiterTabÀ̸é ÅÇ ¹®ÀÚ·Î ¹Ù²ò´Ï´Ù (`t).

+ +

ComboBox

+

+¼³¸í: DropDownList¿Í µ¿ÀÏÇÏÁö¸¸ ¸®½ºÆ®·ÎºÎÅÍ Ç׸ñÀ» °í¸£´Â ´ë½Å¿¡ ÀÚÀ¯·Î¿î Çü½ÄÀÇ ÅؽºÆ® ÀÔ·ÂÀ» Çã¿ëÇÕ´Ï´Ù. ¿¹¸¦ µé¾î:

+ +
Gui, Add, ComboBox, vColorChoice, Red|Green|Blue|Black|White
+

+À§ÀÇ DropDownList¿Í °°Àº ¿É¼ÇÀ» ¸ðµÎ Çã¿ëÇÏ´Â ¿Ü¿¡µµ, ´Ü¾î LimitÀ» Options¿¡ Æ÷ÇÔÇÏ¸é »ç¿ëÀÚÀÇ ÀÔ·ÂÀ» ComboBoxÀÇ ÆíÁý ÇʵåÀÇ °¡½Ã ³Êºñ·Î Á¦ÇÑÇÒ ¼ö ÀÖ½À´Ï´Ù. ¶ÇÇÑ, ´Ü¾î SimpleÀ» ÁöÁ¤Çϸé ComboBox¸¦ ¸¶Ä¡ ±× ¾Æ·¡¿¡ ListBox¸¦ °¡Áø ÆíÁý Çʵåó·³ ÇàÀ§Çϵµ·Ï ¸¸µé ¼ö ÀÖ½À´Ï´Ù.

+

+Gui Submit ¸í·É¾î¸¦ »ç¿ëÇϸé, ±× ÄÜÆ®·ÑÀÇ ¿¬°ü Ãâ·Â º¯¼ö°¡ (ÀÖ´Ù¸é) ÇöÀç ¼±ÅÃµÈ Ç׸ñÀÇ ÅؽºÆ®¸¦ ¹Þ½À´Ï´Ù. ±×·¸Áö¸¸, ÄÜÆ®·Ñ¿¡ AltSubmit Ư¼ºÀÌ ÀÖ´Ù¸é, ±× Ãâ·Â º¯¼ö´Â ´ë½Å¿¡ Ç׸ñÀÇ À§Ä¡ ¹øÈ£¸¦ ¹Þ½À´Ï´Ù (ù Ç׸ñÀº 1ÀÌ°í, µÎ ¹ø° Ç׸ñÀº 2ÀÌ¸ç µîµî.). ¾î´À °æ¿ìµç, ¼±ÅÃµÈ Ç׸ñÀÌ ¾ø´Ù¸é, ±× Ãâ·Â º¯¼ö´Â ComboBoxÀÇ ÆíÁý ÇÊµå ³»¿ëÀÌ ¼³Á¤µË´Ï´Ù.

+

+gMySubroutine °°Àº g-¶óº§À» ÄÜÆ®·ÑÀÇ ¿É¼Ç¿¡ ³ª¿­ÇÒ ¼ö ÀÖ½À´Ï´Ù. ÀÌ·¸°Ô ÇÏ¸é »ç¿ëÀÚ°¡ »õ Ç׸ñÀ» ¼±ÅÃÇÒ ¶§¸¶´Ù MySubroutine ¶óº§ÀÌ ÀÚµ¿À¸·Î ±âµ¿µË´Ï´Ù.

+ +

ListBox

+

+¼³¸í: ¼±ÅÃÀÌ °¡´ÉÇÑ ¸®½ºÆ®¸¦ ´ã°í ÀÖ´Â »ó´ëÀûÀ¸·Î ³ôÀº ¹Ú½º. ÀÌ °æ¿ì, ¸¶Áö¸· ¸Å°³º¯¼ö´Â ÆÄÀÌÇÁ ¹®ÀÚ·Î ±¸ºÐµÈ ¼±Åà ¸®½ºÆ®ÀÔ´Ï´Ù. ¿¹¸¦ µé¾î Choice1|Choice2|Choice3. ¿¹Á¦:

+ +
Gui, Add, ListBox, vColorChoice, Red|Green|Blue|Black|White
+

+âÀÌ Ã³À½ ³ªÅ¸³¯ ¶§ ¹Ì¸® ¸®½ºÆ®ÀÇ Ç׸ñÀ» ¼±ÅÃÇØ µÎ·Á¸é, µÎ °³ÀÇ ÆÄÀÌÇÁ ¹®ÀÚ¸¦ °¢°¢ÀÇ Ç׸ñ µÚ¿¡ Æ÷ÇÔ½ÃÅ°½Ê½Ã¿À. (¿©·¯ Ç׸ñÀ» ¹Ì¸® ¼±ÅÃÇÏ·Á¸é Multi ¿É¼ÇÀÌ ÇÊ¿äÇÕ´Ï´Ù). ´ë¾ÈÀ¸·Î, Options¿¡ ´Ü¾îChoose¿Í ¹Ù·Î À̾ ÇϳªÀÇ Ç׸ñ ¹øÈ£¸¦ ÁöÁ¤ÇÏ¸é ¹Ì¸® ¼±ÅÃÇÒ ¼ö ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î, Choose5ÀÌ¸é ´Ù¼¸ ¹ø° Ç׸ñÀÌ ¹Ì¸® ¼±Åõ˴ϴÙ. ÄÜÆ®·ÑÀÌ »ý¼ºµÈ µÚ¿¡ ¸®½ºÆ®·ÎºÎÅÍ ¿£Æ®¸®¸¦ Ãß°¡/Á¦°ÅÇϰųª ¼±ÅÃÀ» º¯°æÇÏ·Á¸é, GuiControlÀ» »ç¿ëÇϽʽÿÀ.

+

+Gui Submit ¸í·É¾î¸¦ »ç¿ëÇÒ ¶§, ÄÜÆ®·ÑÀÇ ¿¬°ü Ãâ·Â º¯¼ö°¡ (ÀÖ´Ù¸é) ÇöÀç ¼±ÅÃµÈ Ç׸ñÀÇ ÅؽºÆ®¸¦ ¹Þ½À´Ï´Ù. ±×·¸Áö¸¸, ÄÜÆ®·Ñ¿¡ AltSubmit Ư¼ºÀÌ ÀÖ´Ù¸é, ±× Ãâ·Â º¯¼ö´Â ´ë½Å¿¡ ±× Ç׸ñÀÇ À§Ä¡ ¹øÈ£¸¦ ¹Þ½À´Ï´Ù (ù ¹ø° Ç׸ñÀº 1, µÎ ¹ø°´Â 2 µîµî).

+

+gMySubroutine°ú °°Àº g-¶óº§Àº ÄÜÆ®·ÑÀÇ ¿É¼Ç¿¡ ³ª¿­ÇÒ ¼ö ÀÖ½À´Ï´Ù. ÀÌ·¸°Ô ÇÏ¸é »ç¿ëÀÚ°¡ »õ Ç׸ñÀ» ¼±ÅÃÇÒ ¶§¸¶´Ù MySubroutine ¶óº§ÀÌ ÀÚµ¿À¸·Î ±âµ¿µË´Ï´Ù. »ç¿ëÀÚ°¡ Ç׸ñÀ» ´õºí Ŭ¸¯Çϸé, ³»Àå º¯¼ö A_GuiEvent¿¡ NormalÀÌ ¾Æ´Ï¶ó ¹®ÀÚ¿­ DoubleClickÀÌ ´ã±é´Ï´Ù. ¶ÇÇÑ, º¯¼ö A_EventInfo¿¡´Â ´õºí Ŭ¸¯µÈ ±× Ç׸ñÀÇ À§Ä¡°¡ ´ã±é´Ï´Ù (1Àº ù Ç׸ñ, 2ÀÌ¸é µÎ ¹ø° Ç׸ñ µîµî.).

+

+¹æ´ëÇÑ °³¼öÀÇ Ç׸ñÀ» ListBox¿¡ Ãß°¡ÇÒ ¶§, ¿¬»ê Àü¿¡ GuiControl, -Redraw, MyListBox¸¦ ¹Ì¸® »ç¿ëÇÏ°í ³ªÁß¿¡ GuiControl, +Redraw, MyListBox¸¦ »ç¿ëÇÏ¸é ¼öÇ༺´É Çâ»óÀ» ²ÒÇÒ ¼ö ÀÖ½À´Ï´Ù .

+ +

ListBox ¿É¼Ç

+

+Choose: À§ ÂüÁ¶.

+

+Multi: ½¬ÇÁÆ®-Ŭ¸¯ ¶Ç´Â ÄÜÆ®·Ñ-Ŭ¸¯À» ÅëÇÏ¿© ¿©·¯ Ç׸ñÀ» ¼±ÅÃÇϵµ·Ï Çã¿ëÇÕ´Ï´Ù (½¬ÇÁÆ®/ÄÜÆ®·Ñ Ŭ¸¯À» ÇÇÇÏ·Á¸é, ´Ü¾î Multi ´ë½Å¿¡ ¼ýÀÚ 8À» »ç¿ëÇϽʽÿÀ). ÀÌ °æ¿ì, Gui SubmitÀº ÆÄÀÌÇÁ·Î ±¸ºÐµÈ Ç׸ñ-¹®ÀÚ¿­ ¸®½ºÆ®¸¦ ÄÜÆ®·ÑÀÇ Ãâ·Â º¯¼ö¿¡ ÀúÀåÇÕ´Ï´Ù. ±×·¸Áö¸¸, AltSubmit ¿É¼ÇÀÌ ÄÑÁ® ÀÖÀ¸¸é, Gui SubmitÀº ÆÄÀÌÇÁ·Î ±¸ºÐµÈ Ç׸ñ ¹øÈ£ ¸®½ºÆ®¸¦ ´ë½Å »ç¿ëÇÕ´Ï´Ù. ¿¹¸¦ µé¾î, 1|2|3À̶ó¸é ¾ÕÂÊ ¼¼ Ç׸ñÀÌ ¼±ÅõǾú´Ù´Â °ÍÀ» ³ªÅ¸³À´Ï´Ù. °³º°ÀûÀ¸·Î Ç׸ñÀ» ¹®ÀÚ¿­·ÎºÎÅÍ ÃßÃâÇÏ·Á¸é, ´ÙÀ½ ¿¹Á¦¿Í °°ÀÌ ÆÄ½Ì È¸µ¹À̸¦ »ç¿ëÇϽʽÿÀ:

+
Loop, parse, MyListBox, |
+{
+    MsgBox Selection number %A_Index% is %A_LoopField%.
+}
+

ÇÊµå »çÀÌÀÇ °¡¸§ÀÚ´Â ÆÄÀÌÇÁ ¹®ÀÚ (|) ´ë½Å ´Ù¸¥ °ÍÀ¸·Î ¹Ù²Ü ¼ö ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î Gui +Delimiter`nÀÌ¸é ¶óÀÎÇǵå·Î ¹Ù²Ù°í Gui +DelimiterTabÀ̸é ÅÇ ¹®ÀÚ (`t)·Î ¹Ù²ò´Ï´Ù.

+

+ReadOnly: Ç׸ñµéÀÌ ¼±ÅÃµÉ ¶§ ½Ã°¢ÀûÀ¸·Î °­Á¶µÇÁö ¸øÇϵµ·Ï ¸·½À´Ï´Ù (±×·¯³ª Gui Submit´Â ¿©ÀüÈ÷ ±× ¼±ÅÃµÈ Ç׸ñÀ» ÀúÀåÇÕ´Ï´Ù).

+

+Sort: ÀÚµ¿À¸·Î ¸®½ºÆ®ÀÇ ³»¿ëÀ» ¾ËÆĺª ¼ø¼­·Î Á¤·ÄÇÕ´Ï´Ù (ÀÌ°ÍÀº ¶ÇÇÑ ³ªÁß¿¡ GuiControlÀ» ÅëÇÏ¿© Ãß°¡µÇ´Â ¸ðµç Ç׸ñ¿¡µµ ¿µÇâÀ» ÁÝ´Ï´Ù). Sort ¿É¼ÇÀº ¶ÇÇÑ Á¡Áõ °Ë»öÀ» È°¼ºÈ­ ÇÕ´Ï´Ù. ±× ´öºÐ¿¡ Ç׸ñÀ» ±×ÀÇ À̸§ ¾Õ ¸î ±ÛÀÚ¸¸ ŸÀÚÇؼ­ ¼±ÅÃÇÒ ¼ö ÀÖ½À´Ï´Ù.

+

+Tn: ±âÈ£ T¸¦ »ç¿ëÇϸé ÅÇ ½ºÅ¾À» ¼³Á¤ÇÒ ¼ö ÀÖ½À´Ï´Ù. ÅÇ ½ºÅ¾Àº ÅؽºÆ®¸¦ ¿­ ¾ÈÀ¸·Î Æ÷¸ËÇØ ³Ö´Âµ¥ »ç¿ëµË´Ï´Ù. ±âÈ£ T¸¦ »ç¿ëÇÏÁö ¾ÊÀ¸¸é, ÅÇ ½ºÅ¾Àº ¸Å 32 ´ëÈ­»óÀÚ ´ÜÀ§¸¶´Ù ¼³Á¤µË´Ï´Ù (°¢ "´ëÈ­»óÀÚ ´ÜÀ§"ÀÇ ³Êºñ´Â ¿î¿µ üÁ¦°¡ °áÁ¤ÇÕ´Ï´Ù). ±âÈ£ T¸¦ ÇÑ ¹ø¸¸ »ç¿ëÇϸé, ÅÇ ½ºÅ¾Àº ÄÜÆ®·ÑÀÇ Àüü ³Êºñ¿¡ °ÉÃļ­ ¸Å n ´ÜÀ§¸¶´Ù ¼³Á¤µË´Ï´Ù. ¿¹¸¦ µé¾î, Gui, Add, ListBox, vMyListBox t64À̸é ÅÇ ½ºÅ¾ »çÀÌÀÇ ±âº» °Å¸®°¡ µÎ ¹è°¡ µË´Ï´Ù. ¸ÂÃã ÅǽºÅ¾Àº ´ÙÀ½ ¿¹Á¦¿Í °°ÀÌ ±âÈ£ T¸¦ ¿©·¯ ¹ø ÁöÁ¤ÇϽʽÿÀ: Gui, Add, ListBox, vMyListBox t8 t16 t32 t64 t128. ÅÇ ½ºÅ¾Àº ¸®½ºÆ®¿¡¼­ Àý´ë ¿­ À§Ä¡¸¶´Ù Çϳª¾¿ ¼³Á¤µÇ°í ÃÖ´ë 50°³±îÁö ¼³Á¤ÇÒ ¼ö ÀÖ½À´Ï´Ù.

+

+0x100: ¿É¼Ç¿¡ 0x100À» Æ÷ÇÔÇϸé LBS_NOINTEGRALHEIGHT ½ºÅ¸ÀÏÀ» ÄÓ ¼ö ÀÖ½À´Ï´Ù. ÀÌ·¸°Ô Çϸé ÇàÀÌ ¾Æ·¡¿¡ ºÎºÐÀûÀ¸·Î ³ªÅ¸³ªÁö ¾Êµµ·Ï °­Á¦·Î ListBox¸¦ ÁöÁ¤µÈ ³ôÀÌ¿Í Á¤È®ÇÏ°Ô °°°Ô ¸¸µì´Ï´Ù. ÀÌ ¿É¼ÇÀº ¶ÇÇÑ ListBox°¡ ±×ÀÇ ±Û²ÃÀÌ º¯ÇÒ ¶§ ÁÙ¾îµéÁö ¸øÇÏ°Ô ¸·½À´Ï´Ù.

+

+ÅؽºÆ® ÇàÀÇ °³¼ö¸¦ ÁöÁ¤ÇÏ·Á¸é (¶Ç´Â ³ôÀÌ¿Í ³Êºñ¸¦ ÁöÁ¤ÇÏ·Á¸é), ÄÜÆ®·ÑÀÇ À§Ä¡¿Í Å©±â º¯°æÀ» ÂüÁ¶ÇϽʽÿÀ.

+ +

ListView ±×¸®°í TreeView

+

+º°µµ·Î ListView ÆäÀÌÁö¿Í TreeView ÆäÀÌÁö¸¦ ÂüÁ¶ÇϽʽÿÀ.

+ + +

+¼³¸í: Ŭ¸¯ÀÌ °¡´ÉÇÑ ¸µÅ©µéÀ» ´ã°í ÀÖ´Â ÅؽºÆ® ÄÜÆ®·Ñ. ¸µÅ© ÄÜÆ®·ÑÀº HTML-ºñ½ÁÇÑ Á¶ÆÇ ¾ð¾î¸¦ »ç¿ëÇÕ´Ï´Ù. ±×·¯³ª ¿ÀÁ÷ <A> ű׸¸ Áö¿øÇÕ´Ï´Ù. ¿©´Â ÅÂ±× ¾È¿¡, Attribute="value" ÇüÅÂÀÇ ¼Ó¼ºÀ» ÁöÁ¤ÇÒ ¼ö ÀÖ½À´Ï´Ù. ÀÌ°ÍÀº ÀüÇüÀûÀ¸·Î ID ¶Ç´Â HREF ¼Ó¼ºÀÔ´Ï´Ù. ¿¹¸¦ µé¾î:

+ +
Gui, Add, Link,, ´ÙÀ½Àº <a href="http://ahkscript.org">¸µÅ©</a>ÀÇ ¿¹ÀÔ´Ï´Ù.
+Gui, Add, Link,, ¸µÅ©´Â ÅؽºÆ® ¾Æ¹«µ¥³ª <a id="1">ÀÌ·¸°Ô</a> ¶Ç´Â <a id="2">ÀÌ·¸°Ô</a> »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù.
+

+HREF ¼Ó¼ºÀÌ ¼³Á¤µÇ¾î ÀÖ°í ½ÇÇàÀÌ °¡´ÉÇÏ´Ù¸é (URLÀ̳ª ¸í·É¾îó·³) ¸µÅ©¸¦ Ŭ¸¯Çϸé ÀÚµ¿À¸·Î 󸮵˴ϴÙ. HREF ¼Ó¼ºÀÌ »ç¿ëµÇÁö ¾Ê°Å³ª ½ÇÇàÇÒ ¼ö ¾ø´Ù¸é gMySubroutine°ú °°Àº g-¶óº§ÀÌ Á¦°øµÇ¾î ÀÖ´Ù¸é ÀÌ ¶óº§ÀÌ ±âµ¿µË´Ï´Ù. ±×·¯¸é ErrorLevel º¯¼ö¿¡ ±× ¼Ó¼ºÀÇ °ªÀÌ ´ã±é´Ï´Ù. ±×·¡¼­ Ŭ¸¯µÈ ¸µÅ©¸¦ ½Äº°ÇÒ ¼ö ÀÖ½À´Ï´Ù.

+ +

Hotkey

+

+¼³¸í: ÇÑ ÁÙÂ¥¸® ÆíÁý ÄÜÆ®·Ñó·³ º¸ÀÌÁö¸¸ ´ë½Å¿¡ »ç¿ëÀÚ°¡ ´©¸¥ Å°º¸µå Á¶ÇÕÀ» ¹Þ´Â ¹Ú½º. ¿¹¸¦ µé¾î, »ç¿ëÀÚ°¡ Control+Alt+C¸¦ ¿µ¾î Å°º¸µå ·¹À̾ƿô¿¡¼­ ´­·¶´Ù¸é, ¹Ú½º´Â "Ctrl + Alt + C"¸¦ º¸¿©ÁÝ´Ï´Ù.

+ +
Gui, Add, Hotkey, vChosenHotkey
+

+Gui Submit ¸í·É¾î¸¦ »ç¿ëÇϸé, ÄÜÆ®·ÑÀÇ ¿¬°ü Ãâ·Â º¯¼ö°¡ (ÀÖ´Ù¸é) ÇÖÅ° ¼ö½ÄÅ°¿Í À̸§À» ¹Þ½À´Ï´Ù. Hotkey ¸í·É¾î¿Í ȣȯµË´Ï´Ù. + +¿¹¸¦ µé¾î: ^!C, +!Home, +^Down, ^Numpad1, !NumpadEnd. ÄÜÆ®·Ñ¿¡ ÇÖÅ°°¡ ¾ø´Ù¸é, ±× Ãâ·Â º¯¼ö´Â ºñ¿öÁý´Ï´Ù. ÁÖÀÇ: ¾î¶² Å°µéÀº ´Ù¸¥ À̸§À¸·Î ¿­¶÷µÇ¾úÀ½¿¡µµ ¶È °°ÀÌ º¸ÀÔ´Ï´Ù. ¿¹¸¦ µé¾î, ^Numpad7¿Í ^NumpadHome´Â µÑ ´Ù Ctrl + Num 7·Î º¸ÀÔ´Ï´Ù.

+

+±âº»°ªÀ¸·Î, ÄÜÆ®·ÑÀº ÇÖÅ°¸¦ ÁöÁ¤ÇÏÁö ¾Ê°í ½ÃÀÛÇÕ´Ï´Ù. ´ë½Å¿¡ ±âº»°ª ÇÖÅ°¸¦ ÁöÁ¤ÇÏ·Á¸é, ±×ÀÇ ¼ö½ÄÅ°¿Í À̸§À» ´ÙÀ½ ¿¹Á¦¿Í °°ÀÌ ¸¶Áö¸· ¸Å°³º¯¼ö¿¡ ÁöÁ¤ÇϽʽÿÀ: Gui, Add, Hotkey, vChosenHotkey, ^!p
+Áö¿øµÇ´Â À¯ÀÏÇÑ ¼ö½ÄÅ°´Â ^ (Control), ! (Alt), ±×¸®°í + (Shift)ÀÔ´Ï´Ù. °¡´ÉÇÑ Å° À̸§Àº Å° ¸®½ºÆ®¸¦ ÂüÁ¶ÇϽʽÿÀ.

+

+gMySubroutine¿Í °°Àº g-¶óº§À» ÄÜÆ®·ÑÀÇ ¿É¼Ç¿¡ ³ª¿­ÇÒ ¼ö ÀÖ½À´Ï´Ù. ÀÌ·¸°Ô ÇÏ¸é »ç¿ëÀÚ°¡ ÇÖÅ°¸¦ º¯°æÇÒ ¶§¸¶´Ù ÀÚµ¿À¸·Î MySubroutine ¶óº§ÀÌ ±âµ¿µË´Ï´Ù. g-¶óº§ÀÌ ±âµ¿ÇÒ ¶§¸¶´Ù ±× ÇÖÅ°°¡ ÄÜÆ®·ÑÀÇ ¿¬°ü Ãâ·Â º¯¼ö¿¡ ÀúÀåµË´Ï´Ù. ÁÖÀÇ: g-¶óº§Àº ºÒ¿ÏÀüÇÑ ÇÖÅ°°¡ Á¸ÀçÇÒ ¶§¿¡µµ ±âµ¿µË´Ï´Ù. ¿¹¸¦ µé¾î »ç¿ëÀÚ°¡ Control Å°¸¦ ´©¸£°í ÀÖ´Ù¸é, g-¶óº§Àº ÇÑ ¹ø ±âµ¿µÇ°í ±× Ãâ·Â º¯¼ö¿¡ ¿ÀÁ÷ À­²©¼è (^)¸¸ ´ã±é´Ï´Ù. »ç¿ëÀÚ°¡ ±× ÇÖÅ°¸¦ ¿Ï·áÇϸé, ¶óº§ÀÌ ´Ù½Ã ±âµ¿µÇ°í ºñ·Î¼­ º¯¼ö¿¡ ¿ÏÀüÇÑ ÇÖÅ°°¡ ´ã±é´Ï´Ù.

+

+»ç¿ëÀÚ°¡ ÀÔ·ÂÇÏ´Â ÇÖÅ°ÀÇ À¯ÇüÀ» Á¦ÇÑÇÏ·Á¸é, ´Ü¾î Limit µÚ¿¡ ´ÙÀ½ ¼ýÀÚ Áß Çϳª ¶Ç´Â ±× ÇÕÀ» ÁöÁ¤ÇϽʽÿÀ:

+

+1: ¼ö½ÄÅ°°¡ ¾øÀ¸¸é ºÒ°¡
+2: Shift-Å° ´Üµ¶ ºÒ°¡
+4: Control-Å° ´Üµ¶ ºÒ°¡
+8: Alt-Å° ´Üµ¶ ºÒ°¡
+16: Shift-Control Å° ºÒ°¡
+32: Shift-Alt Å° ºÒ°¡
+64: ÀÌ °ªÀº Áö¿øÇÏÁö ¾ÊÀ½ (¿Ã¹Ù¸£°Ô ÀÛµ¿ÇÏÁö ¾ÊÀ» °ÍÀÓ).
+128: Shift-Control-Alt Å° ºÒ°¡.

+

+¿¹¸¦ µé¾î, Limit1Àº ¼ö½ÄÅ°°¡ ¾øÀÌ ¼ýÀÚ³ª ¹®ÀÚ°¡ ÀԷµÇÁö ¸øÇϵµ·Ï ¸·½À´Ï´Ù. Limit15À̸é Àû¾îµµ µÎ °³ÀÇ ¼ö½Ä Å°¸¦ ¿ä±¸ÇÕ´Ï´Ù. »ç¿ëÀÚ°¡ ±ÝÁö ¼ö½Ä Å° Á¶ÇÕÀ» ŸÀÚÇϸé, Control+Alt Á¶ÇÕÀÌ ÀÚµ¿À¸·Î ±×¸®°í ½Ã°¢ÀûÀ¸·Î ´ë½ÅÇÕ´Ï´Ù.

+

+ÇÖÅ° ÄÜÆ®·ÑÀº ´É·Â¿¡ Á¦ÇÑÀÌ ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î, ¸¶¿ì½º/Á¶À̽ºÆ½ ÇÖÅ°¸¦ Áö¿øÇÏÁö ¾ÊÀ¸¸ç À©µµ¿ìÁî Å° (LWin ±×¸®°í RWin)¸¦ Áö¿øÇÏÁö ¾Ê½À´Ï´Ù. À̸¦ ¿ìȸÇÏ´Â ÇÑ °¡Áö ¹æ¹ýÀº ¿©·¯ üũ¹Ú½º¸¦ ¼ö´ÜÀ¸·Î »ç¿ëÀÚ¿¡°Ô Á¦°øÇÏ´Â °ÍÀÔ´Ï´Ù. ±×·¯¸é »ç¿ëÀÚ´Â À©µµ¿ìÁî Å°¿Í °°Àº Ãß°¡ ¼ö½ÄÅ°¸¦ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù.

+ +

DateTime

+

+¼³¸í: ÇÑ ÁÙ ÆíÁý ÄÜÆ®·Ñó·³ º¸ÀÌ´Â ¹Ú½º. ±×·¯³ª ³¯Â¥¿Í ½Ã°£À» ¹Þ½À´Ï´Ù. µå·Ó-´Ù¿î ´Þ·Âµµ Á¦°øÇÕ´Ï´Ù. ¿¹¸¦ µé¾î:

+ +
Gui, Add, DateTime, vMyDateTime, LongDate
+

+¸¶Áö¸· ¸Å°³º¯¼ö´Â ´ÙÀ½ Áß ÇϳªÀÔ´Ï´Ù:

+

+(»ý·«): »ý·«Çϸé, ·ÎÄÉÀÏÀÇ ÂªÀº ³¯Â¥ Çü½ÄÀÌ »ç¿ëµË´Ï´Ù. ¿¹¸¦ µé¾î, ¾î¶² ·ÎÄÉÀÏ¿¡¼­´Â ´ÙÀ½°ú °°ÀÌ º¸ÀÔ´Ï´Ù: 6/1/2005

+

+LongDate: ·ÎÄÉÀÏÀÇ ±ä ³¯Â¥ Çü½ÄÀ» »ç¿ëÇÏ´Ï´Ù. ¿¹¸¦ µé¾î, ¾î¶² ·ÎÄÉÀÏ¿¡¼­ ´ÙÀ½°ú °°ÀÌ º¸ÀÔ´Ï´Ù: Wednesday, June 01, 2005

+

+Time: ·ÎÄÉÀÏÀÇ ½Ã°£ Çü½ÄÀ» »ç¿ëÇÏ¿© ½Ã°£¸¸ º¸¿©ÁÝ´Ï´Ù. ³¯Â¥´Â º¸ÀÌÁö ¾ÊÁö¸¸, ¿©ÀüÈ÷ ÄÜÆ®·Ñ¿¡ Á¸ÀçÇÏ¸ç ½Ã°£°ú ÇÔ²² YYYYMMDDHH24MISS Çü½ÄÀ¸·Î ¿­¶÷ÇÒ ¼ö ÀÖ½À´Ï´Ù.

+

+(¸ÂÃã Çü½Ä): ³¯Â¥¿Í ½Ã°£ Çü½ÄÀ» Á¶ÇÕÇØ ÁöÁ¤ÇϽʽÿÀ. ¿¹¸¦ µé¾î, M/d/yy HH:mmÀ̸é 6/1/05 21:37¿Í °°ÀÌ º¸ÀÔ´Ï´Ù. ºñ½ÁÇÏ°Ô, dddd MMMM d, yyyy hh:mm:ss ttÀ̸é "Wednesday June 1, 2005 09:37:45 PM" ó·³ º¸ÀÔ´Ï´Ù. ±âÈ£¿Í ¼ýÀÚ¸¦ ±×´ë·Î º¸¿© ÁÖ·Á¸é Ȭµû¿ÈÇ¥·Î ´ÙÀ½ ¿¹Á¦¿Í °°ÀÌ µÑ·¯ ½Î¾ß ÇÕ´Ï´Ù: 'Date:' MM/dd/yy 'Time:' hh:mm:ss tt. ´ëÁ¶ÀûÀ¸·Î, ºñ-¾ËÆĺª¼ýÀÚ´Â ½ºÆäÀ̽º, ÅÇ, Á¤»ç¼±, ½ÖÁ¡, ½°Ç¥, ±âŸµîµîÀÇ ±¸µÎÁ¡ ±âÈ£´Â Ȭµû¿ÈÇ¥·Î µÑ·¯½Ò ÇÊ¿ä°¡ ¾ø½À´Ï´Ù. ÀÌ¿¡ ´ëÇÑ ¿¹¿Ü´Â Ȭµû¿ÈÇ¥ ÀÚüÀÔ´Ï´Ù: ±âÈ£ ±×´ë·ÎÀÇ È¬µû¿ÈÇ¥¸¦ »ç¿ëÇÏ·Á¸é, ¿¬¼ÓÇؼ­ Ȭµû¿ÈÇ¥¸¦ µÎ°³ ('''') »ç¿ëÇϰųª, ¾Æ´Ï¸é ±×³É ¹Ù±ù¿¡ µû¿ÈÇ¥ ½ÖÀÌ ÀÌ¹Ì ÀÖ´Â °æ¿ì ±×³É µÎ °³¸¦ »ç¿ëÇϽʽÿÀ.

+ +

DateTime »ç¿ë¹ý

+

+¿À´Ã ¸»°í ´Ù¸¥ ³¯Â¥¸¦ ¹Ì¸® ¼±ÅÃÇÏ·Á¸é, Options¿¡ ´Ü¾î Choose¿Í ±× ´ÙÀ½¿¡ ¹Ù·Î ³¯Â¥¸¦ YYYYMMDD Çü½ÄÀ¸·Î Æ÷ÇÔ½ÃÅ°½Ê½Ã¿À. ¿¹¸¦ µé¾î,, Choose20050531À̸é May 31, 2005¸¦ ¹Ì¸® ¼±ÅÃÇÕ´Ï´Ù (´Ù¸¥ ¿É¼Ç°ú ¸¶Âù°¡Áö·Î, Choose%Var%¿Í °°Àº º¯¼öµµ °¡´ÉÇÏ´Ï´Ù). ³¯Â¥/½Ã°£À» ¼±ÅÃÇÏÁö ¾ÊÀ¸·Á¸é, ChooseNoneÀ» ÁöÁ¤ÇϽʽÿÀ. ChooseNone´Â ¶Ç ÄÜÆ®·Ñ¿¡ ³¯Â¥°¡ ¾øÀ» ¶§¸¶´Ù ÄÜÆ®·Ñ ¾È¿¡ üũ°¡ ÇØÁ¦µÇ¾î Àִ üũ¹Ú½º¸¦ »ý¼ºÇÕ´Ï´Ù. ÄÜÆ®·Ñ¿¡ ³¯Â¥°¡ ¾øÀ» ¶§¸¶´Ù, Gui Submit ±×¸®°í GuiControlGetÀº ºó °ªÀ» ¿­¶÷ÇÕ´Ï´Ù (ºó ¹®ÀÚ¿­).

+

+³¯Â¥¿¡ ½Ã°£Àº ¼±ÅÃÀûÀ¸·Î ³ªÅ¸³³´Ï´Ù. ±×·¸Áö¸¸ ÄÜÆ®·Ñ¿¡¼­ ³ª¿À°Å³ª µé¾î°¥ ¶§ ¹Ýµå½Ã ³¯Â¥°¡ ¸ÕÀú ¿Í¾ß ÇÕ´Ï´Ù. ½Ã°£ ºÎºÐÀÇ Çü½ÄÀº HH24MISS (½Ã°£, ºÐ, ÃÊ)ÀÌ°í, ¿©±â¿¡¼­ HH24´Â 24-½Ã°£ Çü½ÄÀ¸·Î ³ªÅ¸³³´Ï´Ù; ¿¹¸¦ µé¾î, 09´Â ¿ÀÀü 9½ÃÀÌ°í 21ÀÌ¸é ¿ÀÈÄ 9½ÃÀÔ´Ï´Ù. ±×·¡¼­, ¿ÏÀüÇÑ ³¯Â¥-½Ã°£ ¹®ÀÚ¿­Àº ´ÙÀ½ YYYYMMDDHH24MISSÀÇ Çü½ÄÀÔ´Ï´Ù.

+

+³¯Â¥¸¦ YYYYMMDDHH24MISS Çü½ÄÀ¸·Î ÁöÁ¤ÇÒ ¶§, ¿ÀÁ÷ ¾Õ ºÎºÐ¸¸ º¸¿©ÁÙ ÇÊ¿ä°¡ ÀÖ½À´Ï´Ù. »ý·«µÈ ³ª¸ÓÁö ºÎºÐÀº ´ÙÀ½ÀÇ ±âº»°ªÀÌ °ø±ÞµË´Ï´Ù:
+MM: Month 01
+DD: Day 01
+HH24: Hour 00
+MI: Minute 00
+SS: Second 00

+

+µå·Ó-´Ù¿î ´Þ·Â ¾È¿¡¼­, ¾Æ·¡¿¡ ÀÖ´Â ¿À´Ã-¹®ÀÚ¿­À» Ŭ¸¯ÇÏ¸é ¿À´Ã ³¯Â¥¸¦ ¼±ÅÃÇÒ ¼ö ÀÖ½À´Ï´Ù. °Ô´Ù°¡, ÇØ¿Í ´Þ À̸§À» Ŭ¸¯ÇÏ¸é ½±°Ô ÇØ¿Í ´ÞÀ» Ç×ÇØÇÒ ¼ö ÀÖ½À´Ï´Ù.

+

+Å°º¸µå Ç×ÇØ: Up/Down È­»ìÇ¥ Å°, NumpadPlus/Minus, ±×¸®°í Home/End¸¦ »ç¿ëÇϸé ÄÜÆ®·ÑÀÇ °ªÀ» ´Ã¸®°Å³ª ÁÙÀÏ ¼ö ÀÖ½À´Ï´Ù. LeftArrow ±×¸®°í RightArrow¸¦ »ç¿ëÇϸé ÄÜÆ®·Ñ ¾ÈÀÇ Çʵ忡¼­ Çʵå·Î À̵¿ÇÒ ¼ö ÀÖ½À´Ï´Ù. µå·Ó-´Ù¿î ´Þ·Â ¾È¿¡¼­, È­»ìÇ¥ Å°¸¦ »ç¿ëÇÏ¸é ³¯¿¡¼­ ³¯·Î À̵¿ÇÒ ¼ö ÀÖ½À´Ï´Ù; PageUp/Down¸¦ »ç¿ëÇϸé ÇÑ ´Þ¾¿ µÚ·Î ¾ÕÀ¸·Î À̵¿ÇÒ ¼ö ÀÖ½À´Ï´Ù; Ctrl-PageUp/Down¸¦ »ç¿ëÇϸé ÇÑ Çؾ¿ ¾ÕÀ¸·Î µÚ·Î À̵¿ÇÒ ¼ö ÀÖ½À´Ï´Ù; ±×¸®°í Home/EndÀ» »ç¿ëÇÏ¸é ±× ´ÞÀÇ Ã¹ ³¯°ú ¸¶Áö¸· ³¯À» ¼±ÅÃÇÒ ¼ö ÀÖ½À´Ï´Ù.

+

+Gui SubmitÀ» »ç¿ëÇϸé, ÄÜÆ®·ÑÀÇ ¿¬°ü Ãâ·Â º¯¼ö°¡ (ÀÖ´Ù¸é) ¼±ÅÃµÈ ³¯Â¥¿Í ½Ã°£À» YYYYMMDDHH24MISS Çü½ÄÀ¸·Î ¹Þ½À´Ï´Ù. ³¯Â¥¿Í ½Ã°£ ¸ðµÎ ³ªÅ¸³³´Ï´Ù. ½ÇÁ¦·Î ÄÜÆ®·Ñ ¾È¿¡ º¸ÀÌ´ÂÁö ¾Ê´ÂÁö¿¡ »ó°üÀÌ ¾ø½À´Ï´Ù.

+

+ÄÜÆ®·Ñ¿¡ g-¶óº§ÀÌ ÀÖ´Ù¸é, »ç¿ëÀÚ°¡ ³¯Â¥³ª ½Ã°£À» º¯°æÇÒ ¶§¸¶´Ù ±× ¶óº§ÀÌ ±âµ¿µË´Ï´Ù. ±âµ¿µÉ ¶§¸¶´Ù, ±× ÄÜÆ®·ÑÀÇ ¿¬°ü Ãâ·Â º¯¼ö°¡ (ÀÖ´Ù¸é) ÀÚµ¿À¸·Î ÇöÀç ¼±ÅÃµÈ ³¯Â¥/½Ã°£À¸·Î ÀÚµ¿ ¾÷µ¥ÀÌÆ® µË´Ï´Ù.

+ +

DateTime ¿É¼Ç

+

+Choose: À§ ÂüÁ¶.

+

+Range: ¼±ÅÃµÈ ³¯Â¥ÀÇ ¹üÀ§¸¦ Á¦ÇÑÇÕ´Ï´Ù. ´Ü¾î Range ´ÙÀ½¿¡, ÃÖ¼Ò ³¯Â¥¿Í ÃÖ´ë ³¯Â¥¸¦ YYYYMMDD Çü½ÄÀ¸·Î ÁöÁ¤ÇϽʽÿÀ (±× »çÀÌ¿¡ ¿·ÁÙ). ¿¹¸¦ µé¾î, Range20050101-20050615ÀÌ¸é ³¯Â¥¸¦ 2005³âÀÇ Àü¹Ý 5.5 ´Þ·Î Á¦ÇÑÇÕ´Ï´Ù. ÃÖ¼Ò ³¯Â¥ ¶Ç´Â ÃÖ´ë ³¯Â¥¸¦ »ý·«ÇÏ¸é ±× ¹æÇâÀ¸·Î ÄÜÆ®·ÑÀ» Á¦¾îÇÏÁö ¾Ê°í ±×´ë·Î µÓ´Ï´Ù. ¿¹¸¦ µé¾î, Range20010101ÀÌ¸é ³¯Â¥¸¦ 2001³â ¹Ì¸¸ÀÌ ¼±ÅõÇÁö ¸øÇϵµ·Ï ¸·°í Range-20091231 (¾Õ¿¡ ¿·ÁÙ)ÀÌ¸é ³¯Â¥¸¦ 2009³âÀ» ÃÊ°úÇÏ¿© ¼±ÅõÇÁö ¸øÇÏ°Ô ¸·½À´Ï´Ù. Range ¿É¼ÇÀÌ ¾ø´Ù¸é, 1601°ú 9999 »çÀÌÀÇ ³¯Â¥¸¦ ¾ó¸¶µçÁö ¼±ÅÃÇÒ ¼ö ÀÖ½À´Ï´Ù. ³¯Â¥ ¾ÈÀÇ ½Ã°£Àº Á¦ÇÑÇÒ ¼ö ¾ø½À´Ï´Ù.

+

+Right: Ķ¸°´õ°¡ ÄÜÆ®·Ñ¿¡ ¿À¸¥ÂÊ¿¡ µå·Ó ´Ù¿îµË´Ï´Ù.

+

+1: ¼ýÀÚ 1À» Options¿¡ ÁöÁ¤ÇÏ¸é ¾÷-´Ù¿î ÄÜÆ®·ÑÀ» ÄÜÆ®·ÑÀÇ ¿À¸¥ÂÊ¿¡ Á¦°øÇØ ³¯Â¥-½Ã°£ °ªÀ» º¯°æÇÒ ¼ö ÀÖ½À´Ï´Ù. ±×·¯¸é µå·Ó-´Ù¿î ´Þ·ÂÀÌ ±³Ã¼µË´Ï´Ù. ÀÌ°ÍÀº À§¿¡ ±â¼úÇÑ ±ä ³¯Â¥(LongDate) ¿É¼Ç Çü½Ä°ú ÀÛµ¿ÇÏÁö ¾Ê½À´Ï´Ù.

+

+2: ¼ýÀÚ 2¸¦ Options¿¡ ÁöÁ¤Çϸé üũ¹Ú½º¸¦ ÄÜÆ®·Ñ ¾È¿¡ Á¦°øÇÒ ¼ö ÀÖ½À´Ï´Ù. ±×·¯¸é »ç¿ëÀڴ üũ Ç¥½ÄÀ» ÇØÁ¦ÇØ ³¯Â¥/½Ã°£ÀÌ ¼±ÅõÇÁö ¾Ê¾ÒÀ½À» ¾Ë¸± ¼ö ÀÖ½À´Ï´Ù.

+ +

MonthCal

+

+¼³¸í: ´Þ·Â Çü½ÄÀ¸·Î ÇÑ ´ÞÀÇ ¸ðµç ³¯Â¥¸¦ º¸¿©ÁÖ´Â ³ô°í ³ÐÀº ÄÜÆ®·Ñ. »ç¿ëÀÚ´Â ³¯Â¥ ¶Ç´Â ÇÑ ¹üÀ§ÀÇ ³¯Â¥¸¦ ¼±ÅÃÇÒ ¼ö ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î:

+ +
Gui, Add, MonthCal, vMyCalendar
+

+¿À´Ã ¸»°í ´Ù¸¥ ³¯Â¥¸¦ ¹Ì¸® ¼±ÅÃÇÏ·Á¸é, ¸¶Áö¸· ¸Å°³º¯¼ö¿¡ YYYYMMDD Çü½ÄÀ¸·Î ÁöÁ¤ÇϽʽÿÀ (¿¹, 20050531). ÇÑ ¹üÀ§ÀÇ ³¯Â¥µµ ¹Ì¸® ¼±ÅÃÇÒ ¼ö ÀÖ½À´Ï´Ù. »çÀÌ¿¡ ¿· ÁÙÀ» µÎ°í µÎ ³¯Â¥¸¦ Æ÷ÇÔÇÏ¸é µË´Ï´Ù (¿¹, 20050525-20050531).

+

+MonthCal¿¡ ´ëÇÏ¿© º¸Åë ³Êºñ (W)¿Í ³ôÀÌ (H)¸¦ »ý·«ÇÏ´Â °ÍÀÌ ÁÁ½À´Ï´Ù. ¿Ö³ÄÇϸé ÇÑ ´Þ¿¡ Á¤È®ÇÏ°Ô ¸Âµµ·Ï ÀÚµ¿À¸·Î Å©±â°¡ Á¶ÀýµÇ±â ¶§¹®ÀÔ´Ï´Ù. ¼öÁ÷À¸·Î ¿©·¯ ´ÞÀ» º¸¿©ÁÖ·Á¸é, specify R2 ÀÌ»óÀ» Options¿¡ ÁöÁ¤ÇϽʽÿÀ. ¿©·¯ ´ÞÀ» ¼öÆòÀ¸·Î º¸¿©ÁÖ·Á¸é, W-2 (W À½¼ö 2) ÀÌ»óÀ» ÁöÁ¤ÇϽʽÿÀ. ÀÌ ¿É¼ÇµéÀº ¸ðµÎ ¾ç ¹æÇâÀ¸·Î È®´ëÇϱâ À§ÇØ Á¸ÀçÇÕ´Ï´Ù.

+

+ÄÜÆ®·Ñ ¾Æ·¡ÀÇ ¿À´Ã-¹®ÀÚ¿­À» Ŭ¸¯ÇÏ¸é ¿À´Ã ³¯Â¥¸¦ ¼±ÅÃÇÒ ¼ö ÀÖ½À´Ï´Ù. °Ô´Ù°¡, ÇØ¿Í ´Þ À̸§À» Ŭ¸¯ÇÏ¸é ½±°Ô »õ ÇØ¿Í ´ÞÀ» ¼±ÅÃÇÒ ¼ö ÀÖ½À´Ï´Ù.

+

+DateTimeÀÇ Ä¶¸°´õ¿Í ´Ù¸£°Ô, Å°º¸µå Ç×ÇØ´Â º¸Åë MonthCal¿¡ Áö¿øµÇÁö ¾Ê½À´Ï´Ù.

+

+Gui Submit ¸í·É¾î¸¦ »ç¿ëÇϸé, ÄÜÆ®·ÑÀÇ ¿¬°ü Ãâ·Â º¯¼ö°¡ (ÀÖ´Ù¸é) ¼±ÅÃµÈ ³¯Â¥¸¦ YYYYMMDD ÇüÅ·Π¹Þ½À´Ï´Ù (½Ã°£ ºÎºÐ ¾øÀÌ). ±×·¸Áö¸¸, ´ÙÁß-¼±Åà ¿É¼ÇÀÌ ÄÑÁ® ÀÖ´Ù¸é, ÃÖ¼Ò ³¯Â¥¿Í ÃÖ´ë ³¯Â¥°¡ »çÀÌ¿¡ ¿·ÁÙÀ» µÎ°í ¿­¶÷µË´Ï´Ù (¿¹, 20050101-20050108). ´ÙÁß-¼±Åà ´Þ·Â¿¡¼­ ÇϳªÀÇ ³¯Â¥¸¸ ¼±ÅõǾú´Ù¸é, ÃÖ´ë ³¯Â¥¿Í ÃÖ¼Ò ³¯Â¥´Â µ¿ÀÏÇÕ´Ï´Ù. StringSplitÀ» »ç¿ëÇÏ¸é ³¯Â¥¸¦ ºÐÇØÇÒ ¼ö ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î, ´ÙÀ½Àº ÃÖ¼Ò ³¯Â¥¸¦ Date1¿¡ ÃÖ´ë ³¯Â¥¸¦ Date2¿¡ ¹èÁ¤ÇÕ´Ï´Ù: StringSplit, Date, MyMonthCal, -.

+

+MonthCal¿¡ g-¶óº§ÀÌ ÀÖ´Ù¸é, ±âµ¿ÇÒ ¶§¸¶´Ù ÄÜÆ®·ÑÀÇ ¿¬°ü Ãâ·Â º¯¼ö°¡ (ÀÖ´Ù¸é) ÇöÀç ¼±ÅÃµÈ ³¯Â¥ ¶Ç´Â ¹üÀ§·Î ¾÷µ¥ÀÌÆ® µË´Ï´Ù. ±âº»°ªÀ¸·Î, g-¶óº§Àº ´ÙÀ½°ú °°Àº °æ¿ì¿¡¸¸ ±âµ¿ÇÕ´Ï´Ù: 1) »ç¿ëÀÚ°¡ ¼±ÅÃÀ» º¯°æÇÑ °æ¿ì; ¶Ç´Â 2) 2 ºÐ¸¶´Ù »õ ³¯Â¥°¡ µµÂøÇÏ´Â °æ¿ì (ÀÌ ÇàÀ§´Â OSÀÇ ±â¹¦ÇÑ ÇàÀ§ÀÔ´Ï´Ù). ±×·¸Áö¸¸, ´Ü¾î AltSubmit°¡ ÄÜÆ®·ÑÀÇ Options¿¡ ÀÖ´Ù¸é, g-¶óº§ÀÌ ´õ ÀÚÁÖ ±âµ¿µË´Ï´Ù. ±×¸®°í ³»Àå º¯¼ö A_GuiEvent¿¡ ³¯Â¥¸¦ º¯°æÇÏ¸é ´Ü¾î NormalÀÌ ´ã±é´Ï´Ù. ³¯Â¥¸¦ Ŭ¸¯ÇÏ¸é ¼ýÀÚ 1ÀÌ ´ã±â°í, MonthCalÀÌ "¸¶¿ì½º ³ªÆ÷"¸¦ ³õÀ¸¸é ¼ýÀÚ 2°¡ ´ã±é´Ï´Ù. ¿¹¸¦ µé¾î, »ç¿ëÀÚ°¡ »õ ³¯Â¥¸¦ ´õºí Ŭ¸¯Çϸé, Áö-¶óº§ÀÌ ´Ù¼¸ ¹ø ±âµ¿µË´Ï´Ù: ÇѹøÀº Normal·Î, µÎ ¹ø°´Â 1, ±×¸®°í ¼¼ ¹ø°´Â 2ÀÔ´Ï´Ù. À̸¦ ÀÌ¿ëÇÏ¸é ´õºí Ŭ¸¯À» ŽÁöÇÒ ¼ö ÀÖ½À´Ï´Ù. ¼ýÀÚ°¡ 1ÀÎ ½Çü »çÀÌÀÇ ½Ã°£À» ÃøÁ¤ÇÏ¸é µË´Ï´Ù.

+

+³¯Â¥¸¦ YYYYMMDD Çü½ÄÀ¸·Î ÁöÁ¤ÇÒ ¶§, MM ±×¸®°í/¶Ç´Â DD ºÎºÐÀº »ý·«ÀÌ °¡´ÉÇÕ´Ï´Ù. ÀÌ °æ¿ì 1À̶ó°í °£Áֵ˴ϴÙ. ¿¹¸¦ µé¾î, 200205´Â 20020501·Î °£Áֵǰí, 2005´Â 20050101·Î °£Áֵ˴ϴÙ.

+ +

MonthCal Options

+

+Multi: ´ÙÁß-¼±ÅÃ. »ç¿ëÀÚ´Â ½¬ÇÁÆ® Ŭ¸¯À̳ª Ŭ¸¯ ²ø±â·Î ÇÑ ¹üÀ§ÀÇ ÀÎÁ¢ÇÑ ³¯Â¥µéÀ» ¼±ÅÃÇÒ ¼ö ÀÖ½À´Ï´Ù (»ç¿ëÀÚ´Â ¿©ÀüÈ÷ ÇϳªÀÇ ³¯Â¥¸¦ ¼±ÅÃÇÒ ¼ö ÀÖ½À´Ï´Ù). ÀÌ ¿É¼ÇÀ» ¸í½ÃÀûÀ¸·Î ÁöÁ¤Çϰųª ÀÚµ¿À¸·Î ÄÓ ¼ö ÀÖ½À´Ï´Ù ÄÜÆ®·ÑÀÌ »ý¼ºµÉ ¶§ ¼±Åà ¹üÀ§¸¦ ÁöÁ¤ÇÏ¸é µË´Ï´Ù. ¿¹¸¦ µé¾î: Gui, Add, MonthCal, vMyCal, 20050101-20050108. ÄÜÆ®·ÑÀÌ »ý¼ºµÇ¸é, ÀÌ ¿É¼ÇÀº ¹Ù²Ü ¼ö ¾ø½À´Ï´Ù.

+

+Range: ´Þ·ÂÀÌ À̵¿ÇÒ ¼ö ÀÖ´Â ¹üÀ§¸¦ Á¦ÇÑÇÕ´Ï´Ù. ´Ü¾î Range ´ÙÀ½¿¡, YYYYMMDD Çü½ÄÀ¸·Î ÃÖ¼Ò ³¯Â¥¿Í (»çÀÌ¿¡ ¿·ÁÙ) ÃÖ¼Ò ³¯Â¥¸¦ ÁöÁ¤ÇϽʽÿÀ. ¿¹¸¦ µé¾î, Range20050101-20050615ÀÌ¸é ¼±ÅÃÀÌ 2005 ³âÀÇ Àü¹Ý 5.5 ´Þ·Î Á¦Çѵ˴ϴÙ. ÃÖ¼Ò ³¯Â¥³ª ÃÖ´ë ³¯Â¥¸¦ »ý·«ÇÏ¸é ´Þ·ÂÀ» ±× ¹æÇâÀ¸·Î Á¦ÇÑÇÏÁö ¾Ê°í ±×´ë·Î µÓ´Ï´Ù. ¿¹¸¦ µé¾î, Range20010101À̸é 2001 ¹Ì¸¸ÀÇ ³¯Â¥´Â ¼±ÅÃÇÏÁö ¸øÇÕ´Ï´Ù. ±×¸®°í Range-20091231À̸é (¾Õ¿¡ ¿·ÁÙ) 2009³âÀ» ÃÊ°úÇÑ ³¯Â¥´Â ¼±ÅÃÇÏÁö ¸øÇÕ´Ï´Ù. Range ¿É¼ÇÀÌ ¾ø´Ù¸é, 1601°ú 9999 »çÀÌÀÇ ³¯Â¥¸¦ ¾ó¸¶µçÁö ¼±ÅÃÇÒ ¼ö ÀÖ½À´Ï´Ù.

+

+4: ¼ýÀÚ 4¸¦ Options¿¡ ÁöÁ¤ÇÏ¸é °¢°¢ÀÇ ³¯Â¥ Çà ¿ÞÂÊ¿¡ ÁÖ ¹øÈ£¸¦ º¸¿©ÁÙ ¼ö ÀÖ½À´Ï´Ù (1-52) . ÁÖ 1Àº ù ÁÖ¿¡ Àû¾îµµ 4ÀÏ ÀÌ»ó ÀÖ¾î¾ß ÇÕ´Ï´Ù.

+

+8: ¼ýÀÚ 8À» Options¿¡ ÁöÁ¤ÇÏ¸é ¿À´Ã ³¯Â¥¿¡ µ¿±×¶ó¹Ì¸¦ Ä¡Áö ¾Ê½À´Ï´Ù.

+

16: ¼ýÀÚ 16À» Options¿¡ ÁöÁ¤ÇÏ¸é ¿À´Ã ³¯Â¥°¡ ÄÜÆ®·Ñ ¾Æ·¡¿¡ ³ªÅ¸³ªÁö ¾Ê½À´Ï´Ù.

+ +

Slider

+

+¼³¸í: »ç¿ëÀÚ°¡ ¼öÁ÷ ¶Ç´Â ¼öÆòÀ¸·Î Æ®·¢À» µû¶ó°¡¸ç À̵¿ÇÒ ¼ö ÀÖ´Â ½½¶óÀ̵ù ¹Ù. ŽºÅ©¹Ù Æ®·¹ÀÌ¿¡ Àִ ǥÁØ º¼·ý ÄÜÆ®·ÑÀÌ ½½¶óÀÌ´õÀÇ ÇÑ ¿¹ÀÔ´Ï´Ù. ¿¹Á¦:

+ +
Gui, Add, Slider, vMySlider, 50
+

+½½¶óÀÌ´õÀÇ ½ÃÀÛ À§Ä¡¸¦ ¸¶Áö¸· ¸Å°³º¯¼ö·Î ÁöÁ¤ÇϽʽÿÀ. ¸¶Áö¸· ¸Å°³º¯¼ö¸¦ »ý·«Çϸé, ½½¶óÀÌ´õ´Â 0¿¡¼­ ½ÃÀÛÇϰųª Çã¿ë °¡´ÉÇÑ ¹üÀ§¿¡¼­ 0¿¡ °¡±î¿î ¼ö¿¡¼­ ½ÃÀÛÇÕ´Ï´Ù.

+

+»ç¿ëÀÚ´Â ÄÜÆ®·ÑÀ» ´ÙÀ½°ú °°Àº ¼ö´ÜÀ» »ç¿ëÇÏ¿© ½½¶óÀ̵åÇÒ ¼ö ÀÖ½À´Ï´Ù: 1) ¹Ù¸¦ ¸¶¿ì½º·Î ²ø¾î¼­; 2) ¹ÙÀÇ Æ®·¢ ±¸¿ª¿¡ Ŭ¸¯Çؼ­; 3) ÄÜÆ®·Ñ¿¡ ÃÊÁ¡ÀÌ ÀÖ´Â µ¿¾È ¸¶¿ì½º ÈÙÀ» µ¹·Á¼­; ¶Ç´Â 4) ÄÜÆ®·Ñ¿¡ ÃÊÁ¡ÀÌ ÀÖ´Â µ¿¾È ´ÙÀ½ Å°¸¦ ´­·¯¼­: Arrow keys, Page-up, Page-down, Home, ±×¸®°í End.

+

+Gui Submit ¸í·É¾î¸¦ »ç¿ëÇϸé, ÄÜÆ®·ÑÀÇ ¿¬°ü Ãâ·Â º¯¼ö°¡ (ÀÖ´Ù¸é) ½½¶óÀÌ´õÀÇ ÇöÀç À§Ä¡¸¦ ¹Þ½À´Ï´Ù. ±× À§Ä¡´Â ¶ÇÇÑ ÄÜÆ®·ÑÀÇ g-¶óº§ÀÌ ±âµ¿µÉ ¶§¸¶´Ù Ãâ·Â º¯¼ö¿¡ ÀúÀåµË´Ï´Ù.

+

+½½¶óÀÌ´õ¿¡ g-¶óº§ÀÌ ÀÖ´Ù¸é, ±âº»°ªÀ¸·Î ¿ÀÁ÷ »ç¿ëÀÚ°¡ ½½¶óÀÌ´õ À̵¿À» ¸ØÃß¾úÀ» °æ¿ì¿¡¸¸ (¿¹¸¦ µé¾î ¸¶¿ì½º¸¦ ²ø´Ù°¡ ¹öÆ°À» ³õÀº °æ¿ì) ±âµ¿µË´Ï´Ù. ±×·¸Áö¸¸, ´Ü¾î AltSubmitÀÌ ÄÜÆ®·ÑÀÇ Options¿¡ ÀÖ´Ù¸é, g-¶óº§Àº ¸ðµç ½½¶óÀÌ´õ À̺¥Æ®¿¡ ±âµ¿µË´Ï´Ù. ±×¸®°í ³»Àå º¯¼ö A_GuiEvent¿¡ ´ÙÀ½ ¼ýÀÚ ¶Ç´Â ¹®ÀÚ¿­ Áß Çϳª°¡ ´ã±é´Ï´Ù:

+

+ 0: »ç¿ëÀÚ°¡ ¿Þ-È­»ìÇ¥ Å° ¶Ç´Â À§-È­»ìÇ¥ Å°¸¦ ´­·¶½À´Ï´Ù.
+ 1: »ç¿ëÀÚ°¡ ¿ì-È­»ìÇ¥ Å° µµ´Â ¾Æ·¡-È­»ìÇ¥ Å°¸¦ ´­·¶½À´Ï´Ù.
+ 2: »ç¿ëÀÚ°¡ ÆäÀÌÁö-¾÷ Å°¸¦ ´­·¶½À´Ï´Ù.
+ 3: »ç¿ëÀÚ°¡ ÆäÀÌÁö-´Ù¿î Å°¸¦ ´­·¶½À´Ï´Ù.
+ 4: »ç¿ëÀÚ°¡ ¸¶¿ì½º ÈÙÀ» »ç¿ëÇÏ¿© ½½¶óÀÌ´õ¸¦ À̵¿½ÃÄ×½À´Ï´Ù. ¶Ç´Â »õ·Î¿î À§Ä¡¿¡ ²ø¾î ¶³±¸±â¸¦ ³¡³Â½À´Ï´Ù.
+ 5: »ç¿ëÀÚ°¡ ÇöÀç ¸¶¿ì½º·Î ½½¶óÀÌ´õ¸¦ ²ø°í ÀÖ½À´Ï´Ù; Áï, ¸¶¿ì½º ¹öÆ°ÀÌ ÇöÀç ´­·Á ÀÖ½À´Ï´Ù.
+ 6: »ç¿ëÀÚ°¡ Ȩ۸¦ ´­·¯ ½½¶óÀÌ´õ¸¦ ¿ÞÂÊ ¶Ç´Â À§ÂÊÀ¸·Î º¸³Â½À´Ï´Ù.
+ 7: »ç¿ëÀÚ°¡ ¿£µå Å°¸¦ ´­·¯ ½½¶óÀÌ´õ¸¦ ¿À¸¥ÂÊÀ̳ª ¾Æ·§ÂÊÀ¸·Î º¸³Â½À´Ï´Ù.
+ Normal: »ç¿ëÀÚ°¡ ¸¶¿ì½º³ª Å°º¸µå¸¦ ÅëÇÏ¿© ½½¶óÀÌ´õ À̵¿À» ¸¶ÃƽÀ´Ï´Ù. ÁÖÀÇ: ¸¶¿ì½º ÈÙ À̵¿ÀÇ ¿¹¿Ü·Î (#4), À§ÀÇ ¼ýÀÚ-À̺¥Æ® Áß Çϳª¿¡ ÀÌ¹Ì ±âµ¿µÇ¾úÀ½¿¡µµ ºÒ±¸ÇÏ°í g-¶óº§ÀÌ "Á¤»ó" À̺¥Æ®¿¡ ´ëÇÏ¿© ´Ù½Ã ±âµ¿ÇÕ´Ï´Ù.

+ +

½½¶óÀÌ´õ ¿É¼Ç

+

+Buddy1 ±×¸®°í Buddy2: ÃÖ´ë µÎ °³ÀÇ ±âÁ¸ÀÇ ÄÜÆ®·ÑÀ» ÁöÁ¤Çϸé ÀÚµ¿À¸·Î ½½¶óÀÌ´õÀÇ ¾ç ³¡¿¡ Àç¹èÄ¡µË´Ï´Ù. Buddy1Àº Áº¯ ¶Ç´Â »óº¯¿¡ º¸¿©Áý´Ï´Ù (Vertical ¿É¼Ç ¿©ºÎ¿¡ µû¶ó ´Þ¶óÁü). Buddy2´Â ¿ìº¯ ¶Ç´Â ÇϺ¯¿¡ º¸¿©Áý´Ï´Ù. ´Ü¾î Buddy1 ¶Ç´Â Buddy2 ´ÙÀ½¿¡, ±âÁ¸ÀÇ ÄÜÆ®·ÑÀÇ º¯¼ö À̸§À» ÁöÁ¤ÇϽʽÿÀ. ¿¹¸¦ µé¾î, Buddy1MyTopTextÀ̶ó¸é º¯¼ö À̸§ÀÌ MyTopTextÀÎ ÄÜÆ®·ÑÀ» ÇÒ´çÇÕ´Ï´Ù.

+

+Center: ¾öÁö ¼ÕÀâÀÌ´Â (»ç¿ëÀÚ°¡ À̵¿ÇÏ´Â ¸·´ë) ¾çÂÊÀÌ »ÏÁ·ÇÏÁö ¾Ê°í ¹¶¶×ÇØÁý´Ï´Ù.

+

+Invert: ÄÜÆ®·ÑÀ» µÚÁý½À´Ï´Ù. ³·Àº °ªÀÌ ÁÂ/»óÀÌ ¾Æ´Ï¶ó ¿ì/ÇÏ¿¡ ÀÖ´Ù°í °£Áֵ˴ϴÙ. ÀÌ°ÍÀº ÀüÇüÀûÀ¸·Î ¼öÁ÷ ½½¶óÀÌ´õ¸¦ ÀüÅëÀûÀÎ º¼·ý ÄÜÆ®·ÑÀÇ ¹æÇâÀ¸·Î À̵¿½ÃÅ°´Âµ¥ »ç¿ëµË´Ï´Ù. ÁÖÀÇ: ¾Æ·¡¿¡ ±â¼úÇÑ ToolTip ¿É¼ÇÀº µÚÁý±â¸¦ ÁؼöÇÏÁö ¾Ê½À´Ï´Ù. ±×·¯¹Ç·Î ÀÌ °æ¿ì´Â »ç¿ëÇÏ¸é ¾È µË´Ï´Ù.

+

+Left: ¾öÁö ¼ÕÀâÀÌ´Â (»ç¿ëÀÚ¿¡ ÀÇÇÏ¿© À̵¿µÇ´Â ¸·´ë) ¾Æ·¡°¡ ¾Æ´Ï¶ó À§ÂÊÀ¸·Î »ÏÁ·ÇÕ´Ï´Ù. ±×·¯³ª Vertical ¿É¼ÇÀ» ÄѸé, ¾öÁö ¼ÕÀâÀÌ´Â ¿À¸¥ÂÊÀÌ ¾Æ´Ï¶ó ¿ÞÂÊÀ¸·Î »ÏÁ·ÇÕ´Ï´Ù.

+

+Line: »ç¿ëÀÚ°¡ È­»ìÇ¥ Å°¸¦ ´©¸¦ ¶§ À̵¿ÇÒ À§Ä¡ ¹øÈ£¸¦ ÁöÁ¤ÇÕ´Ï´Ù. ´Ü¾î Line ´ÙÀ½¿¡, À̵¿ÇÒ À§Ä¡ ¹øÈ£¸¦ ÁöÁ¤ÇϽʽÿÀ. ¿¹¸¦ µé¾î: Line2.

+

+NoTicks: Æ®·¢À» µû¶ó ƽǥ½ÄÀ» »ý·«ÇÕ´Ï´Ù.

+

+Page: »ç¿ëÀÚ°¡ Page-up ¶Ç´Â Page-down Å°¸¦ ´©¸¦ ¶§ À̵¿ÇÒ À§Ä¡ÀÇ ¹øÈ£¸¦ ÁöÁ¤ÇÕ´Ï´Ù. ´Ü¾î Page ´ÙÀ½¿¡, À̵¿ÇÒ À§Ä¡ÀÇ ¹øÈ£¸¦ ÁöÁ¤ÇϽʽÿÀ. ¿¹¸¦ µé¾î: Page10.

+

+Range: ¹üÀ§¸¦ 0ºÎÅÍ 100¸»°í ´Ù¸£°Ô ÁöÁ¤ÇÕ´Ï´Ù. ´Ü¾î Range ´ÙÀ½¿¡, ÃÖ¼Ò°ª, ¿· ÁÙ, ÃÖ´ë°ªÀ» ÁöÁ¤ÇϽʽÿÀ. ¿¹¸¦ µé¾î, +Range1-1000ÀÌ¸é ¼ýÀÚ¸¦ 1ºÎÅÍ 1000±îÁö ¼±ÅÃÇÒ ¼ö ÀÖ½À´Ï´Ù; Range-50-50ÀÌ¸é ¼ýÀÚ¸¦ -50ºÎÅÍ 50±îÁö ¼±ÅÃÇÒ ¼ö ÀÖ½À´Ï´Ù; ±×¸®°í Range-10--5ÀÌ¸é ¼ýÀÚ¸¦ -10ºÎÅÍ -5±îÁö Çã¿ëÇÕ´Ï´Ù.

+

+Thick: ¾öÁö ³×¸ðÀÇ ±æÀ̸¦ ÁöÁ¤ÇÕ´Ï´Ù (»ç¿ëÀÚ°¡ À̵¿ÇÏ´Â »ç°¢Çü ¸·´ë). ´Ü¾î Thick ´ÙÀ½¿¡, Çȼ¿ ´ÜÀ§·Î µÎ²²¸¦ ÁöÁ¤ÇϽʽÿÀ (¿¹, Thick30). Windows XP À̻󿡼­ ÀÏÁ¤ µÎ²²¸¦ ³Ñ¾î¼­¸é, ¾Æ¸¶µµ Center ¿É¼ÇÀ» ÁöÁ¤Çϰųª ¾Æ´Ï¸é ÄÜÆ®·Ñ¿¡¼­ Á¦°ÅÇÒ ÇÊ¿ä°¡ ÀÖÀ» °ÍÀÔ´Ï´Ù (ÄÜÆ®·Ñ ¿É¼Ç¿¡ -ThemeÀ» ÁöÁ¤Çϸé ÇØ°áÇÒ ¼ö ÀÖ½À´Ï´Ù).

+

+TickInterval: ÁöÁ¤µÈ °£°ÝÀ¸·Î Æ®·¢À» µû¶ó ƽǥ½ÄÀ» Á¦°øÇÕ´Ï´Ù. ´Ü¾î TickInterval ´ÙÀ½¿¡, Ãß°¡ ƽ Ç¥½ÄÀ» º¸¿©ÁÙ °£°ÝÀ» ÁöÁ¤ÇÕ´Ï´Ù (°£°ÝÀ» »ý·«Çϸé, 1À̶ó°í °£ÁÖÇÕ´Ï´Ù). ¿¹¸¦ µé¾î, TickInterval10À̸é ƽǥ½ÄÀÌ ¸Å 10 À§Ä¡¸¶´Ù Çϳª¾¿ º¸ÀÔ´Ï´Ù.

+

+ToolTip: »ç¿ëÀÚ°¡ ½½¶óÀÌ´õ¸¦ ²ô´Â µ¿¾È À§Ä¡¸¦ ¼ýÀÚ·Î º¸°íÇÏ´Â ÅøÆÁÀ» »ý¼ºÇÕ´Ï´Ù. ÅøÆÁÀ» ±âº» À§Ä¡ ¾Æ´Ñ °÷¿¡ º¸¿©ÁÖ·Á¸é, ´ë½Å ´ÙÀ½ Áß Çϳª¸¦ ÁöÁ¤ÇϽʽÿÀ: ToolTipLeft ¶Ç´Â ToolTipRight (¼öÁ÷ ½½¶óÀÌ´õ ¿ë); ToolTipTop ¶Ç´Â ToolTipBottom (¼öÆò ½½¶óÀÌ´õ ¿ë).

+

Vertical: ÄÜÆ®·ÑÀ» À§ ¾Æ·¡·Î ¿òÁ÷ÀÔ´Ï´Ù.

+

+À§ÀÇ ¿É¼ÇµéÀº ÄÜÆ®·ÑÀÌ »ý¼ºµÈ ÈÄ¿¡ GuiControlÀ» ÅëÇÏ¿© ¹Ù²Ü ¼ö ÀÖÀÖ½À´Ï´Ù.

+ +

Progress

+

+¼³¸í: ÀüÇüÀûÀ¸·Î ¿¬»êÀÇ ¿Ï¼ºÀ» ÇâÇØ ¾ó¸¶³ª ¸¹ÀÌ Áøµµ°¡ ³ª°¬´ÂÁö ³ªÅ¸³»´Â µ¥ »ç¿ëµÇ´Â ÀÌÁß Ä÷¯ ¹Ù. ¿¹Á¦:

+ +
Gui, Add, Progress, w300 h20 cBlue vMyProgress
+

+¹ÙÀÇ ½ÃÀÛ À§Ä¡¸¦ ¸¶Áö¸· ¸Å°³º¯¼ö¿¡ ÁöÁ¤ÇϽʽÿÀ (»ý·«Çϸé, ¹Ù´Â 0¿¡¼­ ½ÃÀÛÇϰųª Çã¿ëÇÏ´Â ¹üÀ§ ³»¿¡¼­ 0¿¡ °¡Àå ±î±î¿î ¼ýÀÚ¿¡¼­ ½ÃÀÛÇÕ´Ï´Ù). ³ªÁß¿¡ ¹ÙÀÇ À§Ä¡¸¦ ¹Ù²Ù·Á¸é, ´ÙÀ½ ¿¹Á¦¸¦ µû¸£½Ê½Ã¿À. ¸ðµç ¿¹Á¦°¡ ¿¬°ü º¯¼ö À̸§ÀÌ MyProgressÀÎ ÇÁ·Î±×·¹½º ¹Ù¿¡ ÀÛµ¿ÇÕ´Ï´Ù:

+ +
GuiControl,, MyProgress, +20  ; ÇöÀç À§Ä¡¸¦ 20¸¸Å­ Áõ°¡½Ãŵ´Ï´Ù.
+GuiControl,, MyProgress, 50  ; ÇöÀç À§Ä¡¸¦ 50À¸·Î ¼³Á¤ÇÕ´Ï´Ù.
+

+¼öÆò ÇÁ·Î±×·¹½º ¹Ù¿¡ ´ëÇÏ¿©, ¹ÙÀÇ µÎ²²´Â ±× ÄÜÆ®·ÑÀÇ ³ôÀÌ¿Í °°½À´Ï´Ù. ¼öÁ÷ ½ºÅ©·Ñ ¹Ù¿¡ ´ëÇÏ¿©, ¹ÙÀÇ ³Êºñ´Â ±× ÄÜÆ®·ÑÀÇ ³Êºñ¿Í °°½À´Ï´Ù.

+ +

Progress ¿É¼Ç

+

+Cn: ¹ÙÀÇ Ä÷¯¸¦ ¹Ù²ß´Ï´Ù. n¿¡ 16°¡Áö ±âº» HTML Ä÷¯ À̸§Áß Çϳª ¶Ç´Â 6-ÀÚ¸® RGB Ä÷¯ °ªÀ» ÁöÁ¤ÇϽʽÿÀ. ¿¹Á¦: cRed, cFFFF33, cDefault. C ¿É¼ÇÀ» »ç¿ëÇÏÁö ¾ÊÀ¸¸é (¶Ç´Â cDefault¸¦ ÁöÁ¤Çϸé), ½Ã½ºÅÛÀÇ ±âº» ¹Ù Ä÷¯°¡ »ç¿ëµË´Ï´Ù.

+

+BackgroundN: ¹ÙÀÇ ¹è°æ»öÀ» º¯°æÇÕ´Ï´Ù. n¿¡ 16°¡Áö ±âº» HTML Ä÷¯ À̸§Áß Çϳª ¶Ç´Â 6-ÀÚ¸® RGB °ªÀ» ÁöÁ¤ÇϽʽÿÀ. ¿¹Á¦: BackgroundGreen, BackgroundFFFF33, BackgroundDefault. Background ¿É¼ÇÀ» »ç¿ëÇÏÁö ¾ÊÀ¸¸é (¶Ç´Â BackgroundDefault¸¦ ÁöÁ¤Çϸé), ¹è°æ»öÀº ±× µÚ¿¡ Àִ âÀÇ ¹è°æ»ö ¶Ç´Â ÅÇ ÄÜÆ®·ÑÀÇ ¹è°æ»öÀÌ »ç¿ëµË´Ï´Ù.

+

+Range: ¹üÀ§¸¦ 0ºÎÅÍ 100¸»°í ´Ù¸¥ °ªÀ¸·Î ¹Ù²Ü ¼ö ÀÖ½À´Ï´Ù. ´Ü¾î Range ´ÙÀ½¿¡, ÃÖ¼Ò°ª, ¿·ÁÙ Çϳª, ±×¸®°í ÃÖ´ë °ªÀ» ÁöÁ¤ÇϽʽÿÀ. ¿¹¸¦ µé¾î, Range0-1000ÀÌ¸é ¼ýÀÚ¸£ 0ºÎÅÍ 1000±îÁö Áö¿øÇÕ´Ï´Ù; Range-50-50ÀÌ¸é ¼ýÀÚ¸¦ -50ºÎÅÍ 50±îÁö Çã¿ëÇÕ´Ï´Ù; ±×¸®°í Range-10--5À̸é -10ºÎÅÍ -5 ±îÁöÀÇ ¼ýÀÚ¸¦ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù.

+

+-Smooth (¸¶À̳ʽº Smooth): ºÎµå·´°Ô ¿¬¼ÓµÈ ¹Ù°¡ ¾Æ´Ï¶ó ¼¼Å©¸ÕÆ®ÀÇ ±æÀ̸¦ º¸¿©ÁÝ´Ï´Ù. -Smooth¸¦ ÁöÁ¤Çؾ߸¸ Windows XP ÀÌÈÄ¿¡¼­ Å׸¶ ÇÁ·Î±×·¹½º ¹Ù¸¦ º¸¿©ÁÙ ¼ö ÀÖ½À´Ï´Ù. ´Ù¸¥ Á¶°ÇÀ¸·Î´Â ¹Ù¿¡ ¸ÂÃã Ä÷¯°¡ ¾ø¾î¾ß ÇÑ´Ù´Â °ÍÀÔ´Ï´Ù; Áï, C ±×¸®°í Background ¿É¼ÇÀº »ý·«ÇØ¾ß ÇÕ´Ï´Ù.

+

+Vertical: ¹Ù¸¦ ¼¼¿ì°Å³ª ¼öÁ÷À¸·Î ´Ã¾î¶ß¸³´Ï´Ù.

+

+À§ÀÇ ¿É¼ÇÀº ÄÜÆ®·ÑÀÌ »ý¼ºµÈ ÈÄ¿¡ GuiControl¸¦ ÅëÇÏ¿© ¹Ù²Ü ¼ö ÀÖ½À´Ï´Ù.

+ +

GroupBox

+

+¼³¸í: »ç°¢ Å׵θ®/ÇÁ·¹ÀÓ, Á¾Á¾ ´Ù¸¥ ÄÜÆ®·Ñ µÑ·¹¿¡ ¼­·Î °ü·ÃÀÌ ÀÖÀ½À» ³ªÅ¸³»´Â µ¥ »ç¿ëµÊ. ÀÌ °æ¿ì, ¸¶Áö¸· ¸Å°³º¯¼ö´Â ¹Ú½ºÀÇ Á¦¸ñÀÌ°í, Á¸ÀçÇÑ´Ù¸é, Á»ó ¸ð¼­¸®¿¡ º¸¿©Áý´Ï´Ù. ¿¹Á¦:

+ +
Gui, Add, GroupBox, w400 h300, Geographic Criteria
+

+±âº»°ªÀ¸·Î GroupBoxÀÇ Á¦¸ñÀº ¿ÀÁ÷ ÇÑÁÙÀÇ ÅؽºÆ®¸¸ °¡Áú ¼ö ÀÖ½À´Ï´Ù. ÀÌ´Â ¿É¼Ç¿¡ Wrap À» ÁöÁ¤ÇÏ¸é ¹Ù²Ü ¼ö ÀÖ½À´Ï´Ù.

+

+ÄÜÆ®·Ñ ¾È¿¡ ÇàÀÇ °³¼ö¸¦ ÁöÁ¤ÇÏ·Á¸é (¶Ç´Â ±×ÀÇ ³Êºñ¿Í ³ôÀ̸¦ ÁöÁ¤ÇÏ·Á¸é), ÄÜÆ®·ÑÀÇ À§Ä¡¿Í Å©±â º¯°æÀ» ÂüÁ¶ÇϽʽÿÀ.

+ +

Tab2

+

+¼³¸í: ¿©·¯ ÆäÀÌÁö¸¦ ´ã°í ÀÖ´Â Ä¿´Ù¶õ ÄÜÆ®·Ñ. °¢ ÆäÀÌÁö¿¡ ´Ù¸¥ ÄÜÆ®·ÑÀÌ ´ã°Ü ÀÖ½À´Ï´Ù. ÀÌ °üÁ¡¿¡¼­ ÇÑ ¹ß ´õ ³ª¾Æ°¡ ÀÌ·± ÆäÀÌÁöµéÀ» "ÅÇ"À̶ó°í ºÎ¸¨´Ï´Ù.

+

+Tab2 vs. Tab: v1.0.47.05¿¡¼­ "Tab2" ÄÜÆ®·ÑÀÌ Ãß°¡µÇ¾ú½À´Ï´Ù. ¿ø·¡ "Tab" ÄÜÆ®·ÑÀÇ Èñ±ÍÇÑ Àç±×¸®±â ¹®Á¦¸¦ ÇØ°áÇÏ¿´½À´Ï´Ù (¿¹, ±×ÀÇ ÄÜÆ®·ÑÀÇ ¾î¶² ºÎºÐÀ» ¿¹¸¦ µé¾î ½ºÅ©·Ñ¹Ù¸¦ Ŭ¸¯ÇÏ¿© GUI¸¦ È°¼ºÈ­ Çϸé Á¦´ë·Î ´Ù½Ã ±×¸®Áö ¸øÇß½À´Ï´Ù). ¿ø·¡ÀÇ ÅÇ ÄÜÆ®·ÑÀº ÇÏÀ§ ȣȯÀ» À§ÇØ À¯ÁöµË´Ï´Ù. ¿Ö³ÄÇϸé Tab2´Â ÀÚ½ÅÀÇ ÅÇ ÄÜÆ®·ÑÀ» Àڽſ¡°Ô Æ÷ÇÔµÈ ÄÜÆ®·Ñµé ´ÙÀ½¿¡ ÅÇ-Å° Ç×ÇØ ¼ø¼­·Î ¹èÄ¡Çϱ⠶§¹®ÀÔ´Ï´Ù. »õ ½ºÅ©¸³Æ®´Â °¡´ÉÇϸé Tab2¸¦ »ç¿ëÇØ¾ß ÇÕ´Ï´Ù. ¿¹Á¦:

+ +
Gui, Add, Tab2,, General|View|Appearance|Settings
+

+À§ÀÇ ¸¶Áö¸· ¸Å°³º¯¼ö´Â ÆÄÀÌÇÁ·Î ±¸ºÐµÈ ÅÇ À̸§ ¸®½ºÆ®ÀÔ´Ï´Ù. âÀÌ Ã³À½ ³ªÅ¸³¯ ¶§ ÅÇ Áß¿¡ Çϳª¸¦ ¹Ì¸® ¼±ÅÃÇÏ·Á¸é, µÎ °³ÀÇ ÆÄÀÌÇÁ ¹®ÀÚ¸¦ ±× ´ÙÀ½¿¡ Æ÷ÇÔÇϽʽÿÀ (¿¹, Red|Green||Blue). ´Ù¸¥ ¹æ¹ýÀ¸·Î, Options¿¡ ´Ü¾î Choose¿Í ¹Ù·Î ´ÙÀ½¿¡ ¹Ì¸® ¼±ÅÃÇÒ ¼ýÀÚ¸¦ ÁöÁ¤ÇÒ ¼öÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î, Choose5´Â ´Ù¼¸ ¹ø° ÅÇÀ» ¹Ì¸® ¼±ÅÃÇÕ´Ï´Ù (´Ù¸¥ ¿É¼Çµéó·³, Choose%Var%¿Í °°Àº º¯¼ö°¡ µÉ ¼öµµ ÀÖ½À´Ï´Ù). ÄÜÆ®·ÑÀÌ »ý¼ºµÈ ´ÙÀ½¿¡ ¼±ÅÃµÈ ÅÇÀ» º¯°æÇÏ·Á¸é, ¶Ç´Â ÅÇÀ» Ãß°¡Çϰųª Á¦°ÅÇÏ·Á¸é, GuiControlÀ» »ç¿ëÇϽʽÿÀ.

+

+ÅÇ ÄÜÆ®·ÑÀ» ¸¸µé°í ³­ ÈÄ, À̾ Ãß°¡µÇ´Â ÄÜÆ®·ÑµéÀº ÀÚµ¿À¸·Î ±×ÀÇ Ã¹ ¹ø° ÅÇ¿¡ ¼ÓÇÕ´Ï´Ù. ÀÌ°ÍÀº ´ÙÀ½ ¿¹Á¦¸¦ µû¶ó ¾ðÁ¦µçÁö ¹Ù²Ü ¼ö ÀÖ½À´Ï´Ù:

+ +
Gui, Tab  ; ¹Ì·¡ÀÇ ÄÜÆ®·ÑµéÀº ÅÇ ÄÜÆ®·ÑÀÇ ÀϺΰ¡ ¾Æ´Õ´Ï´Ù.
+Gui, Tab, 3  ; ¹Ì·¡ÀÇ ÄÜÆ®·ÑµéÀº ÇöÀç ÅÇ ÄÜÆ®·ÑÀÇ ¼¼ ¹ø° ÅÇ¿¡ ¼ÓÇÕ´Ï´Ù.
+Gui, Tab, 3, 2  ; ¹Ì·¡ÀÇ ÄÜÆ®·ÑµéÀº µÎ ¹ø° ÅÇ ÄÜÆ®·ÑÀÇ ¼¼ ¹ø° ÅÇÀÌ ¼ÒÀ¯ÇÕ´Ï´Ù.
+Gui, Tab, Name  ; ¹Ì·¡ÀÇ ÄÜÆ®·ÑµéÀº À̸§ÀÌ Name (´ë¼Ò¹®ÀÚ ±¸ºÐ ¾øÀ½)À¸·Î ½ÃÀÛÇÏ´Â ÅÇÀÌ ¼ÒÀ¯ÇÕ´Ï´Ù.
+Gui, Tab, Name,, Exact  ; À§¿Í µ¿ÀÏÇÏÁö¸¸ Á¤È®ÇÏ°Ô ºÎÇÕÇØ¾ß ÇÕ´Ï´Ù (´ë¼Ò¹®ÀÚµµ ±¸ºÐ).
+

+À§ÀÇ ¿¹Á¦¸¦ »ç¿ëÇØ ¾ÆÁ÷ Á¸ÀçÇÏÁö ¾Ê´Â ÅÇÀ̳ª ÅÇ ÄÜÆ®·Ñ¿¡ ÇÒ´çÇÏ´Â °Íµµ °¡´ÉÇÕ´Ï´Ù (Name ¹æ¹ýÀº ¿¹¿ÜÀÓ). ±×·¯³ª ±× °æ¿ì, ¾Æ·¡¿¡ ±â¼úµÈ »óÅÂÀûÀÎ À§Ä¡ ÁöÁ¤ ¿É¼ÇÀ» Áö¿øÇÏÁö ¾Ê½À´Ï´Ù.

+

+¹èÄ¡: ÅÇ ÄÜÆ®·ÑÀÇ °¢ ÅÇÀÌ ±×ÀÇ Ã¹ ºÎ-ÄÜÆ®·ÑÀ» ¹ÞÀ» ¶§, ±× ºÎ-ÄÜÆ®·ÑÀº Ư¼öÇÑ ±âº» À§Ä¡°¡ ÀÖ½À´Ï´Ù. ±âº» À§Ä¡´Â ´ÙÀ½ Á¶°Ç¿¡ µû¸¨´Ï´Ù: +

    +
  1. X¿Í Y ÁÂÇ¥°¡ µÑ ´Ù »ý·«µÇ¸é, ±× ù ºÎ-ÄÜÆ®·ÑÀº (Ç¥ÁØ ¿©¹éÀ» °¡Áø) ÅÇ ÄÜÆ®·Ñ ³»ºÎÀÇ Á»ó ¸ð¼­¸®¿¡ ¹èÄ¡µË´Ï´Ù. ±×¸®°í ù ºÎÄÜÆ®·Ñ ¿ÜÀÇ ºÎÄÜÆ®·ÑµéÀº ±× ¾Æ·¡·Î ¹èÄ¡µË´Ï´Ù; +
  2. X+n ±×¸®°í/¶Ç´Â Y+n ¿É¼ÇÀÌ ÁöÁ¤µÇ¾úÀ¸¸é, ±× ù ºÎ ÄÜÆ®·ÑÀº ÅÇ ÄÜÆ®·Ñ ³»ºÎÀÇ Á»ó ¸ð¼­¸®¿¡ »ó´ëÀûÀ¸·Î ¹èÄ¡µË´Ï´Ù. ¿¹¸¦ µé¾î, x+10 y+10À» ÁöÁ¤ÇÏ¸é ±× ºÎÄÜÆ®·ÑÀÌ Á»ó ¸ð¼­¸®·ÎºÎÅÍ 10 Çȼ¿ ¿À¸¥ÂÊ ±×¸®°í 10 Çȼ¿ ¾Æ·¡ÂÊ¿¡ ÀÚ¸®¸¦ Àâ½À´Ï´Ù. +
+

+

+ºÎ-ÄÜÆ®·ÑµéÀº ¹Ýµå½Ã ÅÇ ÄÜÆ®·ÑÀÇ °æ°è ¾È¿¡ Á¸ÀçÇØ¾ß ÇÒ ÇÊ¿ä´Â ¾ø½À´Ï´Ù: ÅÇÀÌ ¼±Åõǰųª ÇØÁ¦µÉ ¶§ ¿©ÀüÈ÷ ¼û°Å³ª º¸¿©Áý´Ï´Ù. ÀÌ ÇàÀ§´Â ƯÈ÷ ¾Æ·¡¿¡ ±â¼úµÈ "¹öÆ°" ½ºÅ¸ÀÏÀÇ ÇàÀ§¿¡ ÀûÇÕÇÕ´Ï´Ù.

+

+Gui Submit ¸í·É¾î¸¦ »ç¿ëÇϸé, ÄÜÆ®·ÑÀÇ ¿¬°ü Ãâ·Â º¯¼ö°¡ (ÀÖ´Ù¸é) ÇöÀç ¼±ÅÃµÈ ÅÇÀÇ À̸§À» ¹Þ½À´Ï´Ù. ±×·¸Áö¸¸, ±× ÄÜÆ®·Ñ¿¡ AltSubmit Ư¼ºÀÌ ÀÖ´Ù¸é, ±× Ãâ·Â º¯¼ö´Â ´ë½Å¿¡ ÅÇÀÇ À§Ä¡¸¦ ¹Þ½À´Ï´Ù (ù¹ø° ÅÇÀº 1ÀÌ°í, µÎ ¹ø°´Â 2ÀÌ°í, µîµî.).

+

+gMySubroutine°ú °°Àº g-¶óº§À» ÄÜÆ®·ÑÀÇ ¿É¼Ç¿¡ ³ª¿­ÇÒ ¼ö ÀÖ½À´Ï´Ù. ÀÌ·¸°Ô Çϸé MySubroutine ¶óº§ÀÌ »ç¿ëÀÚ°¡ »õ ÅÇÀ¸·Î º¯°æÇÒ ¶§¸¶´Ù ÀÚµ¿À¸·Î ±âµ¿µË´Ï´Ù. ÅÇ ÄÜÆ®·Ñ¿¡ g-¶óº§°ú Ãâ·Â º¯¼ö°¡ µÑ ´Ù ÀÖ´Ù¸é, »ç¿ëÀÚ°¡ »õ ÅÇÀ¸·Î ÀüȯÇÒ ¶§¸¶´Ù, Ãâ·Â º¯¼ö´Â ÀÌÀü¿¡ ¼±ÅÃµÈ ÅÇ À̸§ÀÌ ¼³Á¤µË´Ï´Ù (¶Ç´Â AltSubmitÀÇ °æ¿ì¶ó¸é ¹øÈ£°¡ ¼³Á¤µË´Ï´Ù).

+

+Å°º¸µå Ç×ÇØ: »ç¿ëÀÚ´Â Control-PageDown/PageUpÀ» ´­·¯ ÅÇ ÄÜÆ®·ÑÀÇ ÆäÀÌÁö¿¡¼­ ÆäÀÌÁö·Î Ç×ÇØÇÒ ¼ö ÀÖ½À´Ï´Ù; Å°º¸µå ÃÊÁ¡ÀÌ ÅÇ ÄÜÆ®·Ñ¿¡ ¼ÓÇÏÁö ¾Ê´Â ÄÜÆ®·Ñ¿¡ ÀÖ´Ù¸é, ±× âÀÇ Ã¹ ÅÇ ÄÜÆ®·Ñ·Î ÃÊÁ¡ÀÌ À̵¿ÇÕ´Ï´Ù. Control-Tab ±×¸®°í Control-Shift-TabÀ» »ç¿ëÇÒ ¼öµµ ÀÖ½À´Ï´Ù. ´Ü, ÇöÀç ÃÊÁ¡ÀÌ ÀÖ´Â ÄÜÆ®·ÑÀÌ ¿©·¯-ÁÙ ÆíÁý ÄÜÆ®·ÑÀ̶ó¸é Àß ÀÛµ¿ÇÏÁö ¾Ê½À´Ï´Ù.

+

+°¢ âÀº ÃÖ´ë 255 ÅÇ ÄÜÆ®·ÑÀ» °¡Áú ¼ö ÀÖ½À´Ï´Ù. °¢ ÅÇ ÄÜÆ®·ÑÀº 256 ÅÇ (ÆäÀÌÁö) ÀÌ»óÀ» °¡Áú ¼ö ¾ø½À´Ï´Ù. °Ô´Ù°¡, ÅÇ ÄÜÆ®·ÑÀº ¶Ç´Ù¸¥ ÅÇ ÄÜÆ®·ÑÀ» ´ãÀ» ¼ö ¾ø½À´Ï´Ù.

+ +

Tab ¿É¼Ç

+

+Choose: À§ ÂüÁ¶.

+

-Background (¸¶À̳ʽº ´ÙÀ½¿¡ ´Ü¾î Background): âÀÇ ¸ÂÃã ¹è°æ»öÀ» ¿À¹ö¶óÀ̵å ÇÏ°í ½Ã½ºÅÛÀÇ ±âº» ÅÇ ÄÜÆ®·ÑÀ» »ç¿ëÇÕ´Ï´Ù. +Theme -Background¸¦ ÁöÁ¤Çϸé ÅÇ ÄÜÆ®·ÑÀÌ ÇöÀç ¹ÙÅÁÈ­¸é Å׸¶¸¦ ÁؼöÇϵµ·Ï ¸¸µé ¼ö ÀÖ½À´Ï´Ù. ±×·¸Áö¸¸, ´ëºÎºÐÀÇ ÄÜÆ®·Ñ À¯ÇüÀº ±×·± ÅÇ ÄÜÆ®·Ñ ¾È¿¡¼­ ÀÌ»óÇÏ°Ô º¸ÀÏ °ÍÀÔ´Ï´Ù. ¿Ö³ÄÇÏ¸é ¹è°æ»öÀÌ ÅÇ ÄÜÆ®·ÑÀÇ ¹è°æ»ö°ú ¾î¿ï¸®Áö ¾Ê±â ¶§¹®ÀÔ´Ï´Ù. ¾î¶² ÄÜÆ®·Ñ À¯Çü¿¡ ´ëÇؼ­´Â BackgroundTransÀ» ¿É¼Ç¿¡ Ãß°¡Çϸé ÀÌ ¹®Á¦¸¦ ÇØ°áÇÒ ¼ö ÀÖ½À´Ï´Ù (¿¹¸¦ µé¾î Text).

+

+Buttons: ÀÏ·ÃÀÇ ÅÇÀÌ ¾Æ´Ï¶ó ÀÏ·ÃÀÇ ¹öÆ°µéÀ» ÄÜÆ®·Ñ »ó´Ü¿¡ »ý¼ºÇÕ´Ï´Ù (ÀÌ °æ¿ì, ±âº»ÀûÀ¸·Î Å׵θ®°¡ ¾ø½À´Ï´Ù. ¿Ö³ÄÇÏ¸é º¸¿©Áֱ⠱¸¿ª¿¡ ÀüÇüÀûÀ¸·Î ÄÜÆ®·ÑÀÌ µé¾î ÀÖÁö ¾Ê±â ¶§¹®ÀÔ´Ï´Ù).

+

+Left/Right/Bottom: ´ÙÀ½ ´Ü¾î Áß Çϳª¸¦ ÁöÁ¤Çϸé ÅÇÀ» »ó´Ü ´ë½Å¿¡ ¿ÞÂÊ, ¿À¸¥ÂÊ, ¾Æ·¡ÂÊ¿¡ ¹èÄ¡ÇÒ ¼ö ÀÖ½À´Ï´Ù. Left¿Í RightÀÇ ÇÑ°è¿¡ °üÇÑ °ÍÀº TCS_VERTICAL¸¦ ÂüÁ¶ÇϽʽÿÀ.

+

+-Wrap: ÅÇÀÌ ÇÑ ÇàÀ» ³Ñ°Ô Â÷ÁöÇÏÁö ¸øÇϵµ·Ï ¸·½À´Ï´Ù (ÀÌ °æ¿ì ÅÇÀÌ ³Ê¹« ¸¹ÀÌ ¸ÂÃâ ¼ö ¾øÀ¸¸é, È­»ìÇ¥ ¹öÆ°ÀÌ ³ªÅ¸³ª »ç¿ëÀÚ´Â ±×¸¦ ¿­¾î ´õ ¸¹Àº ÅÇÀ» º¼ ¼ö ÀÖ½À´Ï´Ù).

+

+ÄÜÆ®·Ñ ¾È¿¡ ÅؽºÆ® ÇàÀÇ °³¼ö¸¦ (¶Ç´Â ±×ÀÇ ³ôÀÌ¿Í ³Êºñ¸¦) ÁöÁ¤ÇÏ·Á¸é, ÄÜÆ®·ÑÀÇ À§Ä¡¿Í Å©±â º¯°æÀ» ÂüÁ¶ÇϽʽÿÀ.

+

+ÅÇ ¾ÈÀÇ ¾ÆÀÌÄÜ: SendMessage¸¦ ÅëÇÏ¿© ¾ÆÀÌÄÜÀ» °¢ ÅÇÀÇ À̸§/ÅؽºÆ® ¿·¿¡ º¸¿©ÁÙ ¼ö ÀÖ½À´Ï´Ù. ÀÌ°ÍÀº Æ÷·³ ÁÖÁ¦ ÅÇ ¾ÈÀÇ ¾ÆÀÌÄÜ¿¡¼­ ´Ù·ì´Ï´Ù.

+ +

StatusBar[v1.0.44+]

+

+¼³¸í: âÀÇ ÇÏ´Ü¿¡ ºÎÂøµÇ´Â ÇÑ ÇàÀÇ ÅؽºÆ® ±×¸®°í/¶Ç´Â ¾ÆÀÌÄܵé, ÀüÇüÀûÀ¸·Î »óȲ º¯È­¸¦ º¸°íÇÏ´Â µ¥ »ç¿ëµË´Ï´Ù. ¿¹Á¦:

+ +
Gui, Add, StatusBar,, »óÅ ¹ÙÀÇ ½ÃÀÛ ÅؽºÆ® (»ý·«ÇÏ¸é ºó ä·Î ½ÃÀÛÇÔ).
+SB_SetText("ÇöÀç " . RowCount . " ÇàÀÌ ¼±ÅõǾú½À´Ï´Ù.")
+

+»óŹÙÀÇ °¡Àå °£´ÜÇÑ »ç¿ë¹ýÀº ¹«¾ð°¡ ¹Ù²ð ¶§¸¶´Ù »ç¿ëÀÚ¿¡°Ô º¸°íÇØ¾ß ÇÑ´Ù¸é SB_SetText()¸¦ È£ÃâÇÏ´Â °ÍÀÔ´Ï´Ù. ¿©·¯ Á¤º¸¸¦ º¸°íÇØ¾ß ÇÑ´Ù¸é, SB_SetParts()¸¦ ÅëÇÏ¿© ¹Ù¸¦ ¿©·¯ ±¸¿ªÀ¸·Î ³ª´©½Ê½Ã¿À. ¾ÆÀÌÄÜÀ» ¹Ù¿¡ º¸¿©ÁÖ·Á¸é, SB_SetIcon()¸¦ È£ÃâÇϽʽÿÀ.

+

+´ÙÀ½ÀÇ ¸ðµç StatusBar ÇÔ¼öµéÀº ÇöÀç ¾²·¹µåÀÇ ±âº» GUI â¿¡ ÀÛµ¿ÇÕ´Ï´Ù (ÀÌ´Â Gui, 2:Default¸¦ ÅëÇÏ¿© ¹Ù²Ü ¼ö ÀÖ½À´Ï´Ù). ±âº» âÀÌ Á¸ÀçÇÏÁö ¾Ê°Å³ª »óÅ ¹Ù°¡ ¾øÀ¸¸é, ¸ðµç SB ÇÔ¼öµéÀº 0À» µ¹·ÁÁÖ¾î ¹®Á¦°¡ ÀÖÀ½À» ¾Ë¸³´Ï´Ù.

+ +

SB_SetText(NewText [, PartNumber, Style])

+

+»óÅ ¹ÙÀÇ ÁöÁ¤µÈ ºÎºÐ¿¡ NewText¸¦ º¸¿©ÁÝ´Ï´Ù. PartNumber¸¦ »ý·«Çϸé, ±âº»°ªÀº 1ÀÔ´Ï´Ù. ±×·¸Áö ¾ÊÀ¸¸é, 1°ú 256 »çÀÌÀÇ Á¤¼ö¸¦ ÁöÁ¤ÇϽʽÿÀ. StyleÀ» »ý·«Çϸé, ±âº»°ªÀº 0ÀÔ´Ï´Ù. ±âº»À¸·Î ¹Ù°¡ µé¾î°¡ º¸ÀÌ°Ô ¸¸µå´Â ÀüÅëÀûÀÎ Å׵θ®¸¦ »ç¿ëÇÕ´Ï´Ù. ±×·¸Áö ¾ÊÀ¸¸é, 1À» ÁöÁ¤Çϸé Å×Åõ¸®°¡ ¾ø°í 2¸¦ ÁöÁ¤ÇÏ¸é ¹Ù°¡ Æ¢¾î ³ª¿À°Ô º¸ÀÌ°Ô ¸¸µå´Â Å×Åõ¸®¸¦ °¡Áý´Ï´Ù. ¸¶Áö¸·À¸·Î, NewTextÀÇ ¾îµð¿¡³ª ÃÖ´ë µÎ °³ÀÇ ÅÇ ¹®ÀÚ (`t)°¡ ³ªÅ¸³¯ ¼ö ÀÖ½À´Ï´Ù: ù ¹ø° ÅÇÀÇ ¿À¸¥ÂÊ¿¡ ÀÖ´Â °ÍµéÀº ¸ðµÎ ±× ºÎºÐ ¾È¿¡¼­ Áß¾Ó¿¡ Á¤·ÄµË´Ï´Ù. ±×¸®°í µÎ ¹ø° ÅÇ ¿À¸¥ÂÊÀ¸·Î ÀÖ´Â °ÍµéÀº ¸ðµÎ ¿À¸¥ÂÊ¿¡ Á¤·ÄµË´Ï´Ù. SB_SetText()´Â ¼º°øÇϸé 1 ½ÇÆÐÇϸé 0À» µ¹·ÁÁÝ´Ï´Ù.

+ +

SB_SetParts([Width1, Width2, ... Width255])

+

+¹Ù¸¦ ÁöÁ¤µÈ ³Êºñ¿¡ ¸Â°Ô ¿©·¯ ºÎºÐÀ¸·Î ³ª´¯´Ï´Ù (Çȼ¿ ´ÜÀ§). ¸ðµç ¸Å°³º¯¼ö¸¦ »ý·«Çϸé, ¹Ù´Â ÇÑ °³Â¥¸® ±ä ºÎºÐÀ¸·Î º¹±¸µË´Ï´Ù. ±×·¸Áö ¾ÊÀ¸¸é, ¸¶Áö¸·Àº Á¦¿ÜÇÏ°í °¢ ºÎºÐÀÇ ³Êºñ¸¦ ÁöÁ¤ÇϽʽÿÀ (¸¶Áö¸·Àº ¹ÙÀÇ ³ª¸ÓÁö ³Êºñ°¡ ä¿ó´Ï´Ù). ¿¹¸¦ µé¾î, SB_SetParts(50, 50)´Â ¼¼ ºÎºÐÀ» »ý¼ºÇÕ´Ï´Ù: ¾ÕÂÊ µÎ ºÐÀº °¢°¢ ³Êºñ°¡ 50Çȼ¿ÀÌ°í ¸¶Áö¸·Àº ³ª¸ÓÁö ³Êºñ°¡ ´Ù ä¿ó´Ï´Ù. ÁÖÀÇ: SB_SetParts()·Î "»èÁ¦µÈ" ºÎºÐÀº ´ÙÀ½¿¡ º¸¿©Áú ¶§ ÅؽºÆ® ¾øÀÌ ½ÃÀÛÇÕ´Ï´Ù. (¶Ç, ±×ÀÇ ¾ÆÀÌÄܵéÀº ÀÚµ¿À¸·Î Æı«µË´Ï´Ù). ¼º°øÇϸé, SB_SetParts()´Â 0 ¾Æ´Ñ °ªÀ» µ¹·ÁÁÝ´Ï´Ù (»óÅ ¹ÙÀÇ HWND). ½ÇÆÐÇϸé 0À» µ¹·ÁÁÝ´Ï´Ù.

+ +

SB_SetIcon(Filename [, IconNumber, PartNumber])

+

+ÀÛÀº ¾ÆÀÌÄÜÀ» ÁöÁ¤µÈ ºÎºÐ¿¡ ÀÖ´Â ÅؽºÆ® ¿ÞÂÊ¿¡ º¸¿©ÁÝ´Ï´Ù (PartNumber¸¦ »ý·«Çϸé, ±âº»°ªÀº 1ÀÔ´Ï´Ù). FilenameÀº ¾ÆÀÌÄÜ (.ICO), Ä¿¼­ (.CUR), ¶Ç´Â ¿¡´Ï¸ÞÀÌ¼Ç Ä¿¼­ (.ANI) ÆÄÀÏÀÇ À̸§ÀÔ´Ï´Ù (¾Ö´Ï¸ÞÀÌ¼Ç Ä¿¼­´Â ½ÇÁ¦·Î ¹Ù¿¡¼­ ¿òÁ÷ÀÓÀÌ ¾ø½À´Ï´Ù). ´Ù¸¥ ¾ÆÀÌÄÜ ÀÚ¿øÀ¸·Î´Â ´ÙÀ½ À¯ÇüÀÇ ÆÄÀÏÀÌ Æ÷ÇԵ˴ϴÙ: EXE, DLL, CPL, SCR, ±×¸®°í ±âŸ ¾ÆÀÌÄÜ ÀÚ¿øÀ» º¸À¯ÇÑ À¯Çüµé. ÆÄÀÏ¿¡ Àִ ù ¹ø° ¾ÆÀÌÄÜ ¸»°í ¾ÆÀÌÄÜ ±×·ìÀ» »ç¿ëÇÏ·Á¸é, ±×ÀÇ ¹øÈ£¸¦ IconNumber¿¡ ÁöÁ¤ÇϽʽÿÀ. ¿¹¸¦ µé¾î, SB_SetIcon("Shell32.dll", 2)ÀÌ¸é µÎ ¹ø° ¾ÆÀÌÄÜ ±×·ìÀÇ ±âº» ¾ÆÀÌÄÜÀ» »ç¿ëÇÕ´Ï´Ù. IconNumber°¡ À½¼öÀ̸é, ±×ÀÇ Àý´ë°ªÀÌ ½ÇÇà ÆÄÀÏ ¾È¿¡ ÀÖ´Â ¾ÆÀÌÄÜÀÇ ÀÚ¿ø ID¶ó°í °£Áֵ˴ϴÙ. SB_SetIcon()´Â ¼º°øÇÏ¸é ±× ¾ÆÀÌÄÜÀÇ HICON¸¦ µ¹·ÁÁÝ´Ï´Ù. ½ÇÆÐÇϸé 0À» µ¹·ÁÁÝ´Ï´Ù. HICONÀº ´ëºÎºÐÀÇ ½ºÅ©¸³Æ®¿¡¼­ ¹«½ÃÇصµ ¾ÈÀüÇÑ ½Ã½ºÅÛ ÀÚ¿øÀÔ´Ï´Ù. ¿Ö³ÄÇÏ¸é »óÅ ¹Ù âÀÌ Æı«µÉ ¶§ ÀÚµ¿À¸·Î Æı«µÇ±â ¶§¹®ÀÔ´Ï´Ù. ºñ½ÁÇÏ°Ô, SB_SetIcon()ÀÌ ¿¹Àü ¾ÆÀÌÄÜÀ» »õ ¾ÆÀÌÄÜÀ¸·Î ±³Ã¼Çϸé ÀÚµ¿À¸·Î ¿¹Àü ¾ÆÀÌÄÜÀÌ Æı«µË´Ï´Ù. ÀÌ´Â ´ÙÀ½°ú °°ÀÌ ÇÇÇÒ ¼ö ÀÖ½À´Ï´Ù:

+ +
Gui +LastFound
+SendMessage, 0x40F, part_number - 1, my_hIcon, msctls_statusbar321  ; 0x40F is SB_SETICON.
+ +

SB_SetProgress()

+

+»óÅ ¹Ù ¾È¿¡ ÇÁ·Î±×·¹½º ¹Ù¸¦ ¸¸µé°í Á¦¾îÇÕ´Ï´Ù. ÀÌ ±â´ÉÀº ´ÙÀ½¿¡¼­ ¾òÀ» ¼ö ÀÖ½À´Ï´Ù: www.autohotkey.com/forum/topic37754.html

+ +

G-Label °íÁö

+

+gMySubroutine°ú °°Àº g-¶óº§À» ÄÜÆ®·ÑÀÇ ¿É¼Ç¿¡ ³ª¿­ÇÒ ¼ö ÀÖ½À´Ï´Ù. ÀÌ·¸°Ô ÇÏ¸é »ç¿ëÀÚ°¡ ¹Ù¸¦ Ŭ¸¯ÇÒ ¶§¸¶´Ù MySubroutine ¶óº§ÀÌ ÀÚµ¿À¸·Î ±âµ¿µË´Ï´Ù. ÀÌ ¼­ºê·çƾÀº ³»Àå º¯¼ö A_Gui¿Í A_GuiControl¸¦ Âü°íÇÒ ¼ö ÀÖ½À´Ï´Ù. ´õ¿í Áß¿äÇÑ °ÍÀº A_GuiEvent¸¦ Âü°íÇÒ ¼ö ÀÖ´Ù´Â °ÍÀε¥, ÀÌ ¾È¿¡ ´ÙÀ½ ¹®ÀÚ¿­ Áß Çϳª°¡ µé¾î ÀÖ½À´Ï´Ù (¹Ì·¡ ¹öÀü°úÀÇ È£È¯À» À§ÇØ, ½ºÅ©¸³Æ®´Â ÀÌ °ªµé¸¸ÀÌ °¡´ÉÇÑ À¯ÀÏÇÑ °ªÀ̶ó°í °£ÁÖÇÏ¸é ¾È µË´Ï´Ù):

+ +

±Û²Ã ±×¸®°í »ö

+

+±Û²Ã Å©±â, ¸ð¾ç, ±×¸®°í ½ºÅ¸ÀÏÀ» (´Ù¸¥ º¸ÅëÀÇ ÄÜÆ®·Ñó·³) Gui Font¸¦ ÅëÇÏ¿© ¼³Á¤ÇÒ ¼ö ÀÖÁö¸¸, ÅؽºÆ® Ä÷¯´Â ¹Ù²Ü ¼ö ¾ø½À´Ï´Ù. ¶ÇÇÑ, Gui Color¸¦ ÁؼöÇÏÁö ¾Ê½À´Ï´Ù; ´ë½Å¿¡, Options¿¡ ´Ü¾î Background¿Í Áï½Ã Ä÷¯ À̸§ (Ä÷¯-Â÷Æ® ÂüÁ¶) ¶Ç´Â RGB °ªÀ» ÁöÁ¤Çϸé (0x Á¢µÎ»ç´Â ¼±ÅÃÀû) »óÅ ¹ÙÀÇ ¹è°æ »öÀ» ¹Ù²Ü ¼ö ÀÖ½À´Ï´Ù. ¿¹Á¦: BackgroundSilver, BackgroundFFDD99, BackgroundDefault.

+ +

StatusBar °¨Ãß±â

+

+»óÅ ¹Ù´Â »ý¼º½Ã Gui, Add, StatusBar, Hidden vMyStatusBar¸¦ ÅëÇÏ¿© ¼ûÀ» ¼ö ÀÖ½À´Ï´Ù. »ý¼º ÈÄ¿¡ ¼û±â·Á¸é GuiControl, Hide, MyStatusBar¸¦ »ç¿ëÇϽʽÿÀ. º¸¿©ÁÖ·Á¸é, GuiControl, Show, MyStatusBar¸¦ »ç¿ëÇϽʽÿÀ. ÁÖÀÇ: »óŹٸ¦ ¼û°Üµµ âÀÇ ³ôÀÌ´Â ÁÙÁö ¾Ê½À´Ï´Ù. ÁÙÀÌ°í ½Í´Ù¸é, ´ÙÀ½ ¹æ¹ýÀÌ ½±½À´Ï´Ù: Gui, Show, AutoSize.

+ +

½ºÅ¸ÀÏ (º°·Î »ç¿ë ¾ÈµÊ)

+

+StatusBar ½ºÅ¸ÀÏ Å×À̺í ÂüÁ¶.

+ +

¾Ë·ÁÁø ÇÑ°è

+

+1) »óÅ ¹Ù¿Í ÁßøµÇ´Â ÄÜÆ®·ÑÀº Á¾Á¾ »óÅ ¹Ù À§¿¡ ±×·ÁÁú ¼ö ÀÖ½À´Ï´Ù. À̸¦ ÇÇÇÏ´Â ÇÑ °¡Áö ¹æ¹ýÀº GuiSize labelÀ» ÅëÇÏ¿© µ¿ÀûÀ¸·Î ±×·± ÄÜÆ®·ÑÀ» ÁÙÀÌ´Â °ÍÀÔ´Ï´Ù. 2) â ´ç »óÅ ¹Ù°¡ Çϳª »ÓÀ̶ó´Â Á¦ÇÑÀÌ ÀÖ½À´Ï´Ù.

+ +

¿¹Á¦

+

+TreeView ÆäÀÌÁö ¾Æ·¡¿¡ ¿©·¯ ºÎºÐ »óÅ ¹Ù¸¦ ½Ã¿¬ÇÕ´Ï´Ù.

+ +

ActiveX [v1.1.03+]

+

+ActiveX ÄÄÆ÷³ÍÆ®´Â MSIE ºê¶ó¿ìÀú ÄÜÆ®·Ñ °°ÀÌ ´ÙÀ½ ¿¹Á¦¸¦ µû¶ó GUI â¿¡ ³»ÀåÇÒ ¼ö ÀÖ½À´Ï´Ù:

+ +
Gui Add, ActiveX, w980 h640 vWB, Shell.Explorer  ; ¸¶Áö¸· ¸Å°³º¯¼ö´Â ActiveX ÄÄÆ÷³ÍÆ®ÀÇ À̸§ÀÔ´Ï´Ù.
+WB.Navigate("http://ahkscript.org/boards/")  ; ÀÌ°ÍÀº À¥ ºê¶ó¿ìÀú ÄÜÆ®·Ñ¿¡ Á¾¼ÓÀûÀÔ´Ï´Ù.
+Gui Show
+

+ÄÜÆ®·ÑÀÌ »ý¼ºµÉ ¶§, ActiveX °´Ã¼´Â ÄÜÆ®·ÑÀÇ ¿¬°ü º¯¼ö¿¡ ÀúÀåµË´Ï´Ù. GuiControlGetÀ» »ç¿ëÇÏ¸é ±× °´Ã¼¸¦ ¿­¶÷ÇÒ ¼öµµ ÀÖ½À´Ï´Ù.

+

+ÀÌ °´Ã¼°¡ ³ëÃâÇÏ´Â À̺¥Æ®¸¦ ó¸®ÇÏ·Á¸é, ¾Æ·¡¿¡ º¸¿©ÁÖ´Â ¹Ù¿Í °°ÀÌ ComObjConnect¸¦ »ç¿ëÇϽʽÿÀ:

+ +
Gui Add, Edit, w930 r1 vURL, http://ahkscript.org/boards/
+Gui Add, Button, x+6 yp w44 Default, Go
+Gui Add, ActiveX, xm w980 h640 vWB, Shell.Explorer
+ComObjConnect(WB, WB_events)  ; WBÀÇ À̺¥Æ®¸¦ WB_events Ŭ·¡½º °´Ã¼¿¡ ¿¬°áÇÕ´Ï´Ù.
+Gui Show
+; °è¼ÓÇؼ­ ÃÖÃÊÀÇ ÆäÀÌÁö¸¦ ÀûÀçÇÕ´Ï´Ù:
+ButtonGo:
+Gui Submit, NoHide
+WB.Navigate(URL)
+return
+
+class WB_events
+{
+    NavigateComplete2(wb, NewURL)
+    {
+        GuiControl,, URL, %NewURL%  ; URL ÆíÁý ÄÜÆ®·ÑÀ» ¾÷µ¥ÀÌÆ® ÇÕ´Ï´Ù.
+    }
+}
+
+GuiClose:
+ExitApp
+

+ComObjTypeÀ» »ç¿ëÇϸé ÄÜÆ®·ÑÀÇ º¯¼ö¿¡ ÀúÀåµÈ °´Ã¼ÀÇ À¯ÇüÀ» ¾Ë¾Æ³¾ ¼ö ÀÖ½À´Ï´Ù.

+ +

Custom [v1.1.10+]

+

+AutoHotkey°¡ Á÷Á¢ÀûÀ¸·Î Áö¿øÇÏÁö ¾Ê´Â ÄÜÆ®·Ñµµ GUI ⠾ȿ¡ ÀÓº£µåÇÒ ¼ö ÀÖ½À´Ï´Ù. ÀÓº£µå ÇÏ·Á¸é, Gui, Add¿¡ Class ¿É¼ÇÀ» ÅëÇÏ¿© Win32 Ŭ·¡½º À̸§À» ÁöÁ¤ÇØ¾ß ÇÕ´Ï´Ù. ¿¹Á¦:

+
Gui, Add, Custom, ClassComboBoxEx32  ; ComboBoxEx ÄÜÆ®·ÑÀ» Ãß°¡ÇÕ´Ï´Ù.
+Gui, Add, Custom, ClassScintilla  ; Scintilla ÄÜÆ®·ÑÀ» Ãß°¡ÇÕ´Ï´Ù.  SciLexer.dll ¶óÀ̺귯¸®¸¦ ¸ÕÀú ÀûÀçÇÑ ÈÄ¿¡ ÄÜÆ®·ÑÀ» Ãß°¡ÇÒ ¼ö ÀÖ½À´Ï´Ù.
+

+Gui, Add ¶Ç´Â GuiControl/Get¸¦ ÅëÇÏ¿© ÅؽºÆ®¸¦ ÄÜÆ®·Ñ¿¡¼­ ¿­¶÷Çϰųª ±³Ã¼ÇÒ ¶§ ¿ÀÅäÇÖÅ°´Â Ç¥ÁØ À©µµ¿ìÁî ÄÜÆ®·Ñ ÅؽºÆ® ·çƾÀ» »ç¿ëÇÕ´Ï´Ù.

+

+G-¶óº§ °íÁö: gMySubroutine¿Í °°Àº g-¶óº§À» ÄÜÆ®·ÑÀÇ ¿É¼Ç¿¡ ³ª¿­ÇÏ¸é ±× ÄÜÆ®·ÑÀ¸·ÎºÎÅÍ µé¾î¿À´Â À̺¥Æ®µéÀ» ³ªÆ÷ÇÒ ¼ö ÀÖ½À´Ï´Ù. ÀÌ ¼­ºê·çƾÀº ³»Àå º¯¼ö A_Gui¿Í A_GuiControl¸¦ Âü°íÇÒ ¼ö ÀÖ½À´Ï´Ù. ´õ¿í Áß¿äÇÑ °ÍÀº A_GuiEventµµ Âü°íÇÒ ¼ö ÀÖ´Ù´Â °ÍÀε¥, ±× ¾È¿¡ ´ÙÀ½ ¹®ÀÚ¿­ Áß Çϳª°¡ µé¾î ÀÖ½À´Ï´Ù (¹Ì·¡ ¹öÀü°úÀÇ È£È¯À» À§ÇØ, ½ºÅ©¸³Æ®´Â ÀÌ °ªµé¸¸ÀÌ À¯ÀÏÇÑ °ªÀ̶ó°í °£ÁÖÇÏ¸é ¾È µË´Ï´Ù):

+ +

´ÙÀ½ ¿¹Á¦´Â IP ÁÖ¼Ò ÄÜÆ®·ÑÀ» Ãß°¡ÇÏ°í »ç¿ëÇÏ´Â ¹ýÀ» º¸¿©ÁÝ´Ï´Ù:

+ +
Gui, Add, Custom, ClassSysIPAddress32 r1 w150 hwndhIPControl gIPControlEvent
+Gui, Add, Button, Default, OK
+IPCtrlSetAddress(hIPControl, A_IPAddress1)
+Gui, Show
+return
+
+GuiClose:
+ExitApp
+
+ButtonOK:
+Gui, Hide
+ToolTip
+MsgBox % "You chose " IPCtrlGetAddress(hIPControl)
+ExitApp
+
+IPControlEvent:
+if A_GuiEvent = Normal
+{
+    ; WM_COMMAND ¸Þ½ÃÁö¸¦ ¹Þ¾Ò½À´Ï´Ù.
+
+    if (A_EventInfo = 0x0300)  ; EN_CHANGE
+        ToolTip Control changed!
+}
+else if A_GuiEvent = N
+{
+    ; WM_NOTIFY ¸Þ½ÃÁö¸¦ ¹Þ¾Ò½À´Ï´Ù.
+
+    ; °íÁö Äڵ带 ¾ò½À´Ï´Ù. º¸Åë ÀÌ Çʵå´Â UIntÀÌÁö¸¸  IP ÁÖ¼Ò ÄÜÆ®·ÑÀº
+    ; À½¼ö Äڵ带 »ç¿ëÇÕ´Ï´Ù. ±×·¡¼­ ÆíÀÇ»ó ºÎÈ£ÀÖ´Â Á¤¼ö·Î ÀнÀ´Ï´Ù.
+    nmhdr_code := NumGet(A_EventInfo + 2*A_PtrSize, "int")
+    if (nmhdr_code != -860)  ; IPN_FIELDCHANGED
+        return
+
+    ; NMIPADDRESS ±¸Á¶Ã¼·ÎºÎÅÍ Á¤º¸¸¦ ÃßÃâÇÕ´Ï´Ù
+    iField := NumGet(A_EventInfo + 2*A_PtrSize + 4, "int")
+    iValue := NumGet(A_EventInfo + 2*A_PtrSize + 8, "int")
+    if iValue >= 0
+        ToolTip Field #%iField% modified: %iValue%
+    else
+        ToolTip Field #%iField% left empty
+}
+return
+
+IPCtrlSetAddress(hControl, ipaddress)
+{
+    static WM_USER := 0x400
+    static IPM_SETADDRESS := WM_USER + 101
+
+    ; SendMessage¿¡ »ç¿ëÇϱâ À§ÇØ IP ÁÖ¼Ò¸¦ 32-ºñÆ® ¿öµå·Î ÆÑÇÕ´Ï´Ù.
+    ipaddrword := 0
+    Loop, Parse, ipaddress, .
+        ipaddrword := (ipaddrword * 256) + A_LoopField
+    SendMessage IPM_SETADDRESS, 0, ipaddrword,, ahk_id %hControl%
+}
+
+IPCtrlGetAddress(hControl)
+{
+    static WM_USER := 0x400
+    static IPM_GETADDRESS := WM_USER + 102
+
+    VarSetCapacity(addrword, 4)
+    SendMessage IPM_GETADDRESS, 0, &addrword,, ahk_id %hControl%
+    return NumGet(addrword, 3, "UChar") "." NumGet(addrword, 2, "UChar") "." NumGet(addrword, 1, "UChar") "." NumGet(addrword, 0, "UChar")
+}
+ +

°ü·Ã Ç׸ñ

+

ListView, TreeView, Gui, GuiControl, GuiControlGet, Menu

+ + + diff --git a/src/docs/commands/Hotkey.htm b/src/docs/commands/Hotkey.htm new file mode 100644 index 0000000..d3c754d --- /dev/null +++ b/src/docs/commands/Hotkey.htm @@ -0,0 +1,233 @@ + + + + +Hotkey + + + + + + + +

Hotkey

+ +

½ºÅ©¸³Æ®°¡ ½ÇÇàµÇ´Â µ¿¾È¿¡ ÇÖÅ°¸¦ ¸¸µé°í, º¯°æÇÏ°í, ÄÑ°í ²ü´Ï´Ù.

+ +
Hotkey, KeyName [, Label, Options]
+Hotkey, IfWinActive/Exist [, WinTitle, WinText]
+Hotkey, If [, Expression]
+

¸Å°³º¯¼ö

+
+ +
KeyName
+

ÇÖÅ° È°¼ºÈ­ Å°ÀÇ À̸§, ¼ö½Ä ½Éº¼À» Æ÷ÇÔ. ¿¹¸¦ µé¾î, Win+C ÇÖÅ°¶ó¸é #c¸¦ ÁöÁ¤ÇÕ´Ï´Ù.

+

+ KeyNameÀÌ ÀÌ¹Ì ÇÖÅ°·Î Á¸ÀçÇϸé, ±× ÇÖÅ°´Â ±× ¸í·É¾îÀÇ ´Ù¸¥ ¸Å°³º¯¼öµéÀÇ °ªÀ» °¡Áö°í °»½ÅµË´Ï´Ù.

+

+ KeyNameÀº ±âÁ¸ÀÇ ÇÖÅ° ¶óº§ÀÇ À̸§ÀÌ µÉ ¼öµµ ÀÖ½À´Ï´Ù (Áï, °ã-½ÖÁ¡ ¶óº§). ±×·± °æ¿ì ÇÖÅ°´Â ±× ¸í·É¾îÀÇ ´Ù¸¥ ¸Å°³º¯¼öµéÀÇ °ªÀ» °¡Áö°í °»½ÅµË´Ï´Ù.

+

+ ±âÁ¸ÀÇ ÇÖÅ°¸¦ ÁöÁ¤ÇÒ ¶§, KeyNameÀº ´ë¼Ò¹®ÀÚ¸¦ ±¸ºÐÇÏÁö ¾Ê½À´Ï´Ù. ±×·¸Áö¸¸, Å°ÀÇ À̸§Àº ¹Ýµå½Ã ±âÁ¸ÀÇ ÇÖÅ°¿Í öÀÚ°¡ °°¾Æ¾ß ÇÕ´Ï´Ù (¿¹,. ÀÌ·± ¸ñÀûÀ¸·Î Esc´Â Escape¿Í °°Áö ¾Ê½À´Ï´Ù). ¶Ç, ^!+#¿Í °°Àº ¼ö½Ä ½Éº¼ ¼ø¼­´Â ¹®Á¦°¡ µÇÁö ¾Ê½À´Ï´Ù. GetKeyNameÀ» »ç¿ëÇϸé Å° À̸§ÀÇ Ç¥ÁØ Ã¶ÀÚ¸¦ ¿­¶÷ÇÒ ¼ö ÀÖ½À´Ï´Ù.

+

+ ÇÖÅ°°¡ óÀ½ ¸¸µé¾îÁú ¶§ -- Hotkey ¸í·É¾î ¶Ç´Â °ã-½ÖÁ¡ ¶óº§À» »ç¿ëÇÏ¿© -- ±×ÀÇ Å° À̸§°ú ±×ÀÇ ¼ö½Ä ½Éº¼ÀÇ ¼ø¼­´Â ±× ÇÖÅ°ÀÇ ¿µ±¸ÇÑ À̸§ÀÌ µÇ¾î A_ThisHotkey¿¡ ¹Ý¿µµË´Ï´Ù. ÀÌ À̸§Àº ±× ÇÖÅ°ÀÇ ¸ðµç º¯ÇüÀÌ °øÀ¯ÇÏ°í, ¹Ù²îÁö ¾Ê½À´Ï´Ù. ³ªÁß¿¡ Hotkey ¸í·É¾î°¡ ±× ÇÖÅ°¿¡ ´Ù¸¥ ½Éº¼ ¼ø¼­¸¦ °¡Áö°í Á¢±ÙÇصµ ¸¶Âù°¡ÁöÀÔ´Ï´Ù.

+

+ [v1.1.15+]: ÇÖÅ° º¯ÇüÀÌ ÀÌ¹Ì Á¸ÀçÇϸé, ±×ÀÇ ÇàÀ§´Â KeyName¿¡ Æ¿µå (~) Á¢µÎ»ç°¡ Àִ°¡ ¾ø´Â°¡¿¡ ¸Â°Ô °»½ÅµË´Ï´Ù. ±×·¸Áö¸¸, v1.1.19 ÀÌÀü¿¡¼­, ÇÖÅ°´Â LabelÀÌ »ý·«µÇ¸é °»½ÅµÇÁö ¾Ê¾Ò½À´Ï´Ù.

+

+ [v1.1.19+]: °¥°í¸® »ç¿ë ($) Á¢µÎ ½Éº¼À» ±âÁ¸ÀÇ ÇÖÅ°¿¡ Ãß°¡ÇÒ ¼ö ÀÖ½À´Ï´Ù. ÀÌ Á¢µÎ ½Éº¼Àº ÇÖÅ°ÀÇ ¸ðµç º¯Çü¿¡ ¿µÇâÀ» ÁÖ¸ç Á¦°Å°¡ ºÒ°¡´ÉÇÕ´Ï´Ù. v1.1.19ÀÌÀü¿¡¼­, ±âÁ¸ ÇÖÅ°ÀÇ º¯ÇüÀ» º¯°æÇÒ ¶§ ÀÌ Á¢µÎ ½Éº¼Àº ¹«½ÃµÇ¾ú½À´Ï´Ù.

+
+ +
Label
+

ÇÖÅ°°¡ ´­¸± ¶§ ±×ÀÇ ³»¿ëÀÌ (»õ·Î¿î ¾²·¹µå·Î) ½ÇÇàµÉ ¶óº§ÀÇ À̸§. Á¤»ó ¶óº§°ú ÇÖÅ°/ÇÖ½ºÆ®¸µ ¶óº§À» ¸ðµÎ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. µÚ¿¡ µû¶ó¿À´Â ½ÖÁ¡Àº Æ÷ÇÔÇÏ¸é ¾ÈµË´Ï´Ù. LabelÀÌ µ¿ÀûÀ̸é (¿¹, %VarContainingLabelName%), IsLabel(VarContainingLabelName)À» ¹Ì¸® È£ÃâÇØ ±× ¶óº§ÀÌ Á¸ÀçÇÏ´ÂÁö È®ÀÎÇÒ ¼ö ÀÖ½À´Ï´Ù.

+

+ [v1.1.20+]: À¯È¿ÇÏÁö ¾ÊÀº ¶óº§ À̸§À̶ó¸é, ÀÌ ¸Å°³º¯¼ö´Â ÇÔ¼öÀÇ À̸§, ¶Ç´Â (ÇÔ¼ö °´Ã¼¸¦ ´ã°í ÀÖ´Â) ´ÜÀÏ º¯¼ö ÂüÁ¶ÀÏ ¼ö ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î, Hotkey %funcobj%, On ¶Ç´Â Hotkey % funcobj, On. °´Ã¼¸¦ µ¹·ÁÁÖ´Â ´Ù¸¥ Ç¥Çö½ÄÀº ÇöÀç Áö¿øµÇÁö ¾Ê½À´Ï´Ù. ÇÖÅ°°¡ ½ÇÇàµÉ ¶§, ÇÔ¼ö´Â ¸Å°³º¯¼ö ¾øÀÌ È£ÃâµË´Ï´Ù. ÇÖÅ°´Â ÇÔ¼ö·Î Á¤ÀÇµÉ ¼ö ÀÖ½À´Ï´Ù. Hotkey ¸í·É¾î°¡ ÇÊ¿ä¾ø½À´Ï´Ù.

+

+ ÀÌ ¸Å°³º¯¼ö´Â KeyNameÀÌ ÀÌ¹Ì ÇÖÅ°·Î Á¸ÀçÇÏ¸é ºó ä·Î ÀÖÀ» ¼ö ÀÖ½À´Ï´Ù. ±×·± °æ¿ì, ±×ÀÇ ¶óº§Àº ¹Ù²îÁö ¾Ê½À´Ï´Ù. ÀÌ°ÍÀº ÇÖÅ°ÀÇ ¿É¼Ç¸¸ ¹Ù²Ü ¶§ À¯¿ëÇÕ´Ï´Ù.

+

+ ¶óº§ ¶Ç´Â ÇÔ¼ö°¡ ÁöÁ¤µÇ¾î ÀÖÁö¸¸ ÇÖÅ°´Â ÀÌÀü¿¡ ÀÌ ¸í·É¾î ¶§¹®¿¡ ²¨Á® ÀÖ´Ù¸é, ±× ÇÖÅ°´Â ¿©ÀüÈ÷ ²¨Áø ä·Î ÀÖÀ» °ÍÀÔ´Ï´Ù. À̸¦ ÇÇÇÏ·Á¸é ´Ü¾î ONÀ» Options¿¡ Æ÷ÇÔ½ÃÅ°½Ê½Ã¿À.

+

+ ÀÌ ¸Å°³º¯¼ö´Â ´ÙÀ½ Ư¼ö °ªµé Áß Çϳª°¡ µÉ ¼öµµ ÀÖ½À´Ï´Ù:

+

On: ÇÖÅ°°¡ È°¼ºÈ­ µË´Ï´Ù. ÇÖÅ°°¡ ÀÌ¹Ì ÄÑÁ® ÀÖ´Ù¸é ¾Æ¹« Á¶Ä¡µµ ¾ø½À´Ï´Ù.

+

Off: ÇÖÅ°°¡ ºñÈ°¼ºÈ­ µË´Ï´Ù. ÇÖÅ°°¡ ÀÌ¹Ì ²¨Á® ÀÖ´Ù¸é ¾Æ¹« Á¶Ä¡µµ ¾ø½À´Ï´Ù.

+

Toggle: ÇÖÅ°¸¦ ¹Ý´ë »óÅ·Π¼³Á¤ÇÕ´Ï´Ù (enabled ¶Ç´Â disabled).

+

AltTab (±âŸ µîµî): À̰͵éÀº Ư¼öÇÑ Alt-Tab ÇÖÅ° ÃÊÄ¡µé·Î¼­ ¿©±â¿¡ ±â¼úµÇ¾î ÀÖ½À´Ï´Ù.

+

ÁÖÀÇ: À̸§ÀÌ On, Off, Toggle ¶Ç´Â AltTabÀ¸·Î (¶Ç´Â ÀÌ ¸í·É¾î·Î ÀÎÁöµÇ´Â ±âŸ º¯ÇüÀ¸·Î) ¶óº§À» Á¤ÀÇÇϸé ÀÏ°ü¼º ¾ø´Â ÇàÀ§¸¦ ¾ß±âÇÒ ¼ö ÀÖ½À´Ï´Ù. ÀÌ·± °ªµéÀº Àý´ë·Î ¶óº§ À̸§À¸·Î »ç¿ëÇÏÁö ¾Ê±â¸¦ ¹Ù¶ø´Ï´Ù.

+
+ +
Options
+

´ÙÀ½ ±âÈ£µé°ú ¼±ÅÃÀûÀ¸·Î ±× »çÀÌ¿¡ ½ºÆäÀ̽º°¡ ÀÖ´Â ¹®ÀÚ¿­. ¿¹¸¦ µé¾î: UseErrorLevel B0.

+

UseErrorLevel: ¸í·É¾ï ¹®Á¦¸¦ ¸¸³ª¸é, ÀÌ ¿É¼ÇÀº °æ°í ´ëÈ­»óÀÚ¸¦ °Ç³Ê¶Ù°í, ErrorLevel¿¡ ¾Æ·¡ Å×À̺íÀÇ ÄÚµå Áß Çϳª¸¦ ¼³Á¤ÇÑ ´ÙÀ½, ÇöÀç ¾²·¹µå¸¦ °è¼Ó ½ÇÇà½Ãŵ´Ï´Ù.

+

+ On: ÇÖÅ°°¡ ÇöÀç ²¨Á® ÀÖÀ¸¸é ÄÕ´Ï´Ù.

+

+ Off: ÇÖÅ°°¡ ÇöÀç ÄÑÁ® ÀÖÀ¸¸é ²ü´Ï´Ù. ÀÌ´Â ÀüÇüÀûÀ¸·Î óÀ½¿¡ ²ö »óÅ·Π½ÃÀÛÇÏ´Â ÇÖÅ°¸¦ ¸¸µå´Â µ¥ »ç¿ëµË´Ï´Ù.

+

+ B ¶Ç´Â B0: ±âÈ£ B¸¦ ÁöÁ¤Çϸé ÇÖÅ°¸¦ #MaxThreadsBuffer¿¡ ±â¼úµÈ ´ë·Î ¹öÆÛ Ã³¸®ÇÕ´Ï´Ù. B0 (B ´ÙÀ½¿¡ ¿µ)À» ÁöÁ¤Çϸé ÀÌ À¯ÇüÀÇ ¹öÆÛ Ã³¸®¸¦ ²ø ¼ö ÀÖ½À´Ï´Ù.

+

+ Pn: ±âÈ£ P ´ÙÀ½¿¡ ÇÖÅ°ÀÇ ¾²·¹µå ¿ì¼± ¼øÀ§¸¦ ÁöÁ¤ÇϽʽÿÀ. ÇÖÅ°¸¦ ¸¸µé ¶§ P ¿É¼ÇÀ» »ý·«Çϸé, 0ÀÌ »ç¿ë µË´Ï´Ù.

+

+ Tn: #MaxThreadsPerHotkey¿¡ ±â¼úµÈ °Íó·³ ±âÈ£ T ´ÙÀ½¿¡ ÀÌ ÇÖÅ°¿¡ Çã¿ëÇÒ ¾²·¹µåÀÇ °³¼ö¸¦ ÁöÁ¤ÇÕ´Ï´Ù. ¿¹¸¦ µé¾î: T5.

+

+ B³ª T ¿É¼Ç ±âÈ£°¡ »ý·«µÇ°í ±×¸®°í ÇÖÅ°°¡ ÀÌ¹Ì Á¸ÀçÇϸé, ±×·± ¿É¼ÇÀº ¹Ù²îÁö ¾Ê½À´Ï´Ù. ±×·¯³ª ÇÖÅ°°¡ ¾ÆÁ÷ Á¸ÀçÇÏÁö ¾ÊÀ¸¸é -- Áï, ÀÌ ¸í·É¾î·Î »ý¼ºµÉ ¿¹Á¤À̶ó¸é -- ¿É¼ÇÀº ÃÖ±Ù¿¡ È¿°ú°¡ ÀÖ´ø ¿É¼ÇÀÌ ±âº»°ªÀÌ µË´Ï´Ù. ¿¹¸¦ µé¾î, ½ºÅ©¸³Æ® ¾Æ·¡¿¡ ÃÖ´ëÇÑ °¡±õ°Ô ³ªÅ¸³ª´Â #MaxThreadsBufferÀÇ ½Çü°¡ »ç¿ëµË´Ï´Ù. + + #MaxThreadsBuffer°¡ ½ºÅ©¸³Æ®¿¡ ³ªÅ¸³ªÁö ¾ÊÀ¸¸é, ±×ÀÇ ±âº» ¼³Á¤ÀÌ (ÀÌ °æ¿ì¿¡´Â OFF°¡) »ç¿ëµË´Ï´Ù. ÀÌ ÇàÀ§´Â #IfWin¿¡µµ Àû¿ëµË´Ï´Ù: °¡Àå ¾Æ·¡ÂÊ¿¡ ³ªÅ¸³ª´Â ½Çü°¡ »õ·Î »ý¼ºµÈ ÇÖÅ°¿¡ Àû¿ëµË´Ï´Ù. ´Ü, ½ºÅ©¸³Æ®°¡ ½ÃÀÛµÈ ÀÌÈÄ·Î "Hotkey IfWin"ÀÌ ½ÇÇàµÈ °æ¿ì´Â ¿¹¿ÜÀÔ´Ï´Ù.

+
+ +
IfWinActive
+ IfWinExist
+

(IfWinNotActive ±×¸®°í IfWinNotExistµµ Áö¿øÇÕ´Ï´Ù). À̺Î-¸í·É¾îµéÀº ¿¬ÀÌ¾î »ý¼ºµÇ´Â ¸ðµç ÇÖÅ°°¡ ¹®¸ÆÀ» °¨ÁöÇÏ°Ô ¸¸µì´Ï´Ù. ÀÚ¼¼ÇÑ °ÍÀº ¾Æ·¡ ÂüÁ¶.

+ +
WinTitle
+ WinText
+

+ ÀÌ ¸Å°³º¯¼öµé ¾È¿¡¼­, %var%¿Í °°Àº º¯¼ö ÂüÁ¶´Â ¸ðµÎ ¸í·É¾î°¡ ¿Ï·áµÇ´Â ¼ø°£ ¿µ¼ÓÀûÀÌ µË´Ï´Ù. ´Ù¸¥ ¸»·Î, ±× ´ÙÀ½ºÎÅÍ º¯¼öÀÇ ³»¿ë¿¡ °¡ÇÏ´Â º¯°æÀ» ±âÁ¸ÀÇ IfWin ÇÖÅ°µéÀº º¸Áö ¸øÇÕ´Ï´Ù.

+

+ #IfWinActive/Existó·³, WinTitle ±×¸®°í WinText´Â SetTitleMatchMode ±×¸®°í DetectHiddenWindows¿¡ ÀÚµ¿-½ÇÇà ¼½¼Ç¿¡ ¼³Á¤µÈ ´ë·Î ±âº» ¼³Á¤À» »ç¿ëÇÕ´Ï´Ù. ´õ ÀÚ¼¼ÇÑ °ÍÀº #IfWinActive/Exist¸¦ ÂüÁ¶ÇϽʽÿÀ.

+ +
If, Expression
+
+

[AHK_L]: #If ExpressionÀÇ »ó´ëÆí. ExpressionÀº ±âÁ¸ÀÇ #If Expression¿¡¼­ "#If" ¶Ç´Â "#If,"¸¦ Á¦¿ÜÇÑ ÅؽºÆ®¿¡ Á¤È®ÇÏ°Ô ºÎÇÕÇØ¾ß ÇÕ´Ï´Ù. + + Hotkey ¸í·É¾î¿¡ »ç¿ëµÉ ¶§, ½°Ç¥°¡ "If"°¡ µÚ¿¡ ÇÊ¿äÇÕ´Ï´Ù. ÀÌ ¸í·É¾î´Â »õ Ç¥Çö½ÄÀ» ¸¸µé ¼ö ¾øÁö¸¸, ±âÁ¸ÀÇ Ç¥Çö½ÄÀ» »ç¿ëÇÏ¿© ÇÖÅ°¸¦ »õ·Î ¸¸µé ¼ö ÀÖ½À´Ï´Ù. #If ¿¹Á¦ 4¸¦ ÂüÁ¶ÇϽʽÿÀ.

+

¾Ë·ÁÁø ÇÑ°è: Expression¿¡ and/or ¿¬»êÀÚ°¡ Æ÷ÇԵǾî ÀÖÀ¸¸é, ±âÁ¸ÀÇ Ç¥Çö½ÄÀ¸·Î ÀÎÁöµÇÁö ¾Ê½À´Ï´Ù. ¿ìȸåÀ¸·Î, µ¿µîÇÑ &&/|| ¿¬»êÀÚ¸¦ ¿ø·¡ÀÇ #If Ç¥Çö½Ä°ú Hotkey ¸í·É¾î¿¡ °Ç³Ù Ç¥Çö½Ä¿¡ ¸ðµÎ »ç¿ëÇϽʽÿÀ.

+
+ +
+ +

ErrorLevel

+

[v1.1.04+] ÀÌ ¸í·É¾î´Â ½ÇÆнà ¿¹¿Ü¸¦ ´øÁú ¼ö ÀÖ½À´Ï´Ù. ´õ ÀÚ¼¼ÇÑ Á¤º¸´Â ½ÇÇà½Ã°£ ¿¡·¯¸¦ ÂüÁ¶ÇϽʽÿÀ.

+

ErrorLevelÀº ´ÙÀ½°ú °°À» °æ¿ì¿¡¸¸ ¹Ù²ò´Ï´Ù: 1) ù ¹ø° ¸Å°³º¯¼ö°¡ IfWin[Not]Active/ExistÀÎ °æ¿ì ¹®Á¦ ÀÖÀ¸¸é 1ÀÌ ¼³Á¤µÇ°í ±×·¸Áö ¾ÊÀ¸¸é 0ÀÌ ¼³Á¤µË´Ï´Ù; ¶Ç´Â 2) ´Ü¾î UseErrorLevelÀÌ Options ¸Å°³º¯¼ö¿¡ Á¸ÀçÇÏ´Â °æ¿ìÀÔ´Ï´Ù.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
¿¡·¯¼³¸í
1Label ¸Å°³º¯¼ö°¡ Á¸ÀçÇÏÁö ¾Ê´Â ¶óº§ À̸§À» ÁöÁ¤ÇÕ´Ï´Ù.
2KeyName ¸Å°³º¯¼ö´Â ÇöÀç Å°º¸µå ·¹À̾ƿô/¾ð¾î°¡ ÀÎÁöÇÏÁö ¸øÇϰųª Áö¿øÇÏÁö ¾Ê´Â Çϳª ÀÌ»óÀÇ Å°¸¦ ÁöÁ¤ÇÕ´Ï´Ù.
3Áö¿øµÇÁö ¾Ê´Â Á¢µÎ Å°. ¿¹¸¦ µé¾î, WheelDown & Enter°ú °°ÀÌ ¸¶¿ì½º ÈÙÀ» ÇÖÅ°¿¡ Á¢µÎ Å°·Î »ç¿ëÇÏ´Â °ÍÀº Áö¿øµÇÁö ¾Ê½À´Ï´Ù.
4KeyName ¸Å°³º¯¼ö°¡ AltTab ¶Ç´Â ShiftAltTab Á¶Ä¡¿Í ÇÔ²² »ç¿ëÇϱ⿡ ÀûÇÕÇÏÁö ¾Ê½À´Ï´Ù. µÎ Å°ÀÇ Á¶ÇÕÀÌ ÇÊ¿äÇÕ´Ï´Ù. ¿¹¸¦ µé¾î: RControl & RShift::AltTab.
5¸í·É¾î°¡ Á¸ÀçÇÏÁö ¾Ê´Â ÇÖÅ°¸¦ º¯°æÇÏ·Á°í ½ÃµµÇß½À´Ï´Ù.
6¸í·É¾î°¡ Á¸ÀçÇÏÁö ¾Ê´Â ±âÁ¸ ÇÖÅ°ÀÇ º¯ÇüÀ» º¯°æÇÏ·Á°í ½ÃµµÇß½À´Ï´Ù. À̸¦ ÇØ°áÇÏ·Á¸é, Hotkey IfWin¸¦ »ç¿ëÇØ º¯°æµÉ ±× ÇÖÅ°ÀÇ º¯ÇüÀÌ ºÎÇÕÇÒ ±âÁØÀ» ¼³Á¤ÇϽʽÿÀ.
98ÀÌ ÇÖÅ°¸¦ »ý¼ºÇÏ¸é ½ºÅ©¸³Æ®-´ç-1000-ÇÖÅ° Á¦ÇÑÀ» ÃÊ°úÇÕ´Ï´Ù (±×·¸Áö¸¸, °¢ ÇÖÅ°´Â ¹«ÇÑ °³¼öÀÇ º¯ÇüÀ» °¡Áú ¼ö ÀÖÀ¸¸ç, ÇÖ½ºÆ®¸µÀÇ °³¼ö¿¡µµ Á¦ÇÑÀÌ ¾ø½À´Ï´Ù).
99¸Þ¸ð¸® °í°¥. ¾ÆÁÖ Èñ±ÍÇÑ °æ¿ìÀÌ¸ç º¸Åë ¿î¿µ üÁ¦°¡ ºÒ¾ÈÁ¤ÇÑ »óÅ°¡ µÉ °æ¿ì¿¡¸¸ ÀϾ´Ï´Ù.
+


+ÆÁ: UseErrorLevel ¿É¼ÇÀº ÇÖÅ° º¯ÇüÀÇ Á¸À縦 Å×½ºÆ® ÇÏ´Â µ¥ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î:

+ +
Hotkey, ^!p,, UseErrorLevel
+if ErrorLevel in 5,6
+    MsgBox ÇÖÅ°°¡ Á¸ÀçÇÏÁö ¾Ê½À´Ï´Ù. ¾Æ´Ï¸é ÇöÀç IfWin ±âÁØ¿¡ ¸Â´Â º¯ÇüÀÌ ¾ø½À´Ï´Ù.
+ +

³íÆò

+

+ÇöÀçÀÇ IfWin ¼³Á¤Àº Hotkey ¸í·É¾î°¡ ó¸®ÇÒ ÇÖÅ°ÀÇ º¯ÇüÀ» °áÁ¤ÇÕ´Ï´Ù.

+

+¼±ÅÃµÈ ÇÖÅ°¿Í ÇÖ½ºÆ®¸µÀ» ÇöÀç È°¼º âÀÇ À¯Çü¿¡ ±â¹ÝÇÏ¿© ÀÚµ¿À¸·Î ²ô´Â °ÍÀÌ ¸ñÀûÀ̶ó¸é, Hotkey, ^!c, Offº¸´Ù º¸Åë #IfWinActive/Exist¸¦ (¶Ç´Â µ¿ÀûÀÎ »ó´ëÀÎ ¾Æ·¡ÀÇ "Hotkey IfWinActive/Exist"¸¦) »ç¿ëÇÏ´Â °ÍÀÌ ´õ Æí¸®ÇÕ´Ï´Ù.

+

+°ã-½ÖÁ¡ ¶óº§À» ÅëÇÏ¿© ÇÖÅ°¸¦ ¸¸µå´Â °ÍÀÌ Hotkey ¸í·É¾î¸¦ »ç¿ëÇÏ´Â ¹æ¹ýº¸´Ù ´õ ¼öÇ༺´ÉÀÌ ÁÁ½À´Ï´Ù. ¿Ö³ÄÇÏ¸é ½ºÅ©¸³Æ®°¡ ½ÃÀÛÇÒ ¶§ ÇÖÅ°¸¦ (Çϳª ¾¿ÀÌ ¾Æ´Ï¶ó) ¸ðµÎ ÀÏ°ýÀûÀ¸·Î ÄÓ ¼ö Àֱ⠶§¹®ÀÔ´Ï´Ù. ±×·¯¹Ç·Î, ½ºÅ©¸³Æ®°¡ ½ÇÇàÀ» ½ÃÀÛÇؾ߸¸ À̸§À» ¾Ë ¼ö ÀÖ´Â Å°µéÀ» »ý¼ºÇÏ´Â µ¥¿¡¸¸ ÀÌ ¸í·É¾î¸¦ »ç¿ëÇÏ´Â °ÍÀÌ Á¦ÀÏ ÁÁ½À´Ï´Ù. ±×·± °æ¿ì ÇÑ °¡Áö´Â ´Ù¾çÇÑ ÇàÀ§¿¡ ´ëÇÑ ½ºÅ©¸³Æ®ÀÇ ÇÖÅ°¸¦ INI ÆÄÀÏÀ» ÅëÇÏ¿© ȯ°æ±¸¼ºÇÒ ¶§ÀÔ´Ï´Ù.

+

+ÁÖ¾îÁø ¶óº§Àº ¿©·¯ ÇÖÅ°ÀÇ ¸ñÇ¥°¡ µÉ ¼ö ÀÖ½À´Ï´Ù. ¶óº§ÀÌ ÇÖÅ°¿¡ È£ÃâµÇ¾ú´Ù¸é, ³»Àå º¯¼ö A_ThisHotkey¸¦ Á¡°ËÇÏ¸é ¾î´À ÇÖÅ°ÀÎÁö ¾Ë¾Æ³¾ ¼ö ÀÖ½À´Ï´Ù.

+

+½ºÅ©¸³Æ®°¡ º¸·ù(suspended) ÁßÀ̶ó¸é, »õ·Î Ãß°¡µÈ/È°¼ºÈ­µÈ ÇÖÅ°µµ º¸·ù°¡ ²¨Áú ¶§±îÁö ÇÔ²² º¸·ùµË´Ï´Ù (´Ü, Suspend ¼½¼Ç¿¡ ±â¼úµÈ ´ë·Î ¸éÁ¦µÈ °æ¿ì´Â ¿¹¿ÜÀÔ´Ï´Ù).

+

+ÀÌ ¸í·É¾î°¡ °¡ÇÑ º¯°æ ¶§¹®¿¡ Á¤´ç¼ºÀ» ¾òÀ¸¸é Å°º¸µå ±×¸®°í/¶Ç´Â ¸¶¿ì½º °¥°í¸®°¡ ¼³Ä¡µÇ°Å³ª Á¦°ÅµË´Ï´Ù.

+

+Hotkey ¸í·É¾î´Â ÀÚ½ÅÀÇ ¼ÒÀ¯°¡ ¾Æ´Ñ ½ºÅ©¸³Æ®¿¡¼­ Á÷Á¢ÀûÀ¸·Î ÇÖÅ°¸¦ ÄѰųª ²ø ¼ö ¾øÁö¸¸, ´ëºÎºÐÀÇ °æ¿ì °°Àº ÇÖÅ°µéÀ» ¸¸µé°Å³ª È°¼ºÈ­ ÇÔÀ¸·Î½á ¿À¹ö¶óÀ̵å ÇÒ ¼ö ÀÖ½À´Ï´Ù. + +ÀÌ°ÍÀÇ ÀÛµ¿ ¿©ºÎ´Â ´ÙÀ½ ¿äÀÎÀÇ Á¶ÇÕ¿¡ µû¶ó ´Ù¸¨´Ï´Ù: +

    +
  1. ¿À¹ö¶óÀÌµå µÉ ÇÖÅ°°¡ ´Ù¸¥ ½ºÅ©¸³Æ®¿¡¼­ °¥°í¸® ÇÖÅ°Àΰ¡ (ºñ-°¥°í¸® ÇÖÅ°´Â ¾ðÁ¦³ª ¿À¹ö¶óÀ̵åÇÒ ¼ö ÀÖ½À´Ï´Ù); + +
  2. ÃÖ±Ù¿¡ ½ÃÀÛµÈ ½ºÅ©¸³Æ®ÀÇ ÇÖÅ°°¡ ÀϹÝÀûÀ¸·Î ´Ù¸¥ ½ºÅ©¸³Æ®ÀÇ ÇÖÅ°º¸´Ù ¿ì¼± ¼øÀ§°¡ ³ô´Ù´Â »ç½Ç +(±×·¯¹Ç·Î, ¿À¹ö¶óÀ̵å ÇÒ ½ºÅ©¸³Æ®°¡ ÃÖ±Ù¿¡ ½ÃÀ۵Ǿú´Ù¸é, ±×ÀÇ ¿À¹ö¶óÀ̵å´Â ¾ðÁ¦³ª ¼º°øÇÕ´Ï´Ù); + +
  3. ÀÌ ÇÖÅ°¸¦ È°¼ºÈ­ Çϰųª »ý¼ºÇÏ¸é »õ·Î Å°º¸µå ¶Ç´Â ¸¶¿ì½º °¥°í¸®°¡ È°¼ºÈ­ µÇ´Â°¡ (±×·¸´Ù¸é, ¿À¹ö¶óÀ̵å´Â ¾ðÁ¦³ª ¼º°øÇÕ´Ï´Ù). +
+ + +

+

+½ºÅ©¸³Æ®¿¡ ÇϳªÀÇ ÇÖÅ°¸¸ À־, ½ºÅ©¸³Æ®´Â ¿µ¼ÓÀûÀÌ µË´Ï´Ù. ExitÀÌ ¾Æ´Ï¶ó ExitApp¸¦ »ç¿ëÇØ¾ß Á¾·áÇÒ ¼ö ÀÖ´Ù´Â ¶æÀÔ´Ï´Ù. ÇÖÅ° ½ºÅ©¸³Æ®´Â ¶Ç ÀÚµ¿À¸·Î #SingleInstance°¡ µË´Ï´Ù. ´Ü, #SingleInstance Off°¡ ÁöÁ¤µÈ °æ¿ì´Â ¿¹¿ÜÀÔ´Ï´Ù.

+ +

Hotkey, IfWinXX [, WinTitle, WinText]¿¡ °üÇÑ ³íÆò

+

+"Hotkey IfWin" ¸í·É¾î´Â ½ºÅ©¸³Æ®°¡ ½ÇÇàÁßÀÎ µ¿¾È¿¡ ¹®¸Æ °¨Áö ÇÖÅ°¸¦ »ý¼ºÇϵµ·Ï Çã¿ëÇÕ´Ï´Ù (´ëÁ¶ÀûÀ¸·Î, #IfWinActive/Exist Áö½Ã¾î´Â À§Ä¡¿¡ ¹Î°¨ÇÏ°í ½ºÅ©¸³Æ®°¡ ½ÇÇàÀ» ½ÃÀÛÇϱâ Àü¿¡ È¿°ú°¡ ÀÖ½À´Ï´Ù). ¿¹¸¦ µé¾î:

+ +
Hotkey, IfWinActive, ahk_class Notepad
+Hotkey, ^!e, MyLabel  ; ³ëÆ®Æе忡¼­¸¸ ÀÛµ¿ÇÏ´Â ÇÖÅ°¸¦ »ý¼ºÇÕ´Ï´Ù.
+

+"Hotkey IfWin"¸¦ »ç¿ëÇÏ¸é µÚÀÌ¾î »ý¼ºµÇ°Å³ª º¯°æµÇ´Â ¸ðµç ÇÖÅ°¿¡ ¹®¸Æ °¨Áö°¡ ¿µÇâÀ» ¹ÌĨ´Ï´Ù. + +°Ô´Ù°¡, IfWin ºÎ-¸í·É¾î´Â ¼­·Î ¹èŸÀûÀÔ´Ï´Ù; Áï, ÃÖ±ÙÀÇ ºÎ-¸í·É¾î¸¸ È¿°ú°¡ ÀÖ½À´Ï´Ù.

+

+ +¹®¸Æ °¨Áö¸¦ ²ô·Á¸é (Áï, À̾ »ý¼ºµÇ´Â ÇÖÅ°¸¦ ¸ðµç â¿¡ ÀÛµ¿½ÃÅ°·Á¸é), IfWin ºÎ-¸í·É¾î¸¦ ÁöÁ¤Ç쵂 WinTitle/Text ¸Å°³º¯¼ö¸¦ »ý·«ÇϽʽÿÀ. ¿¹¸¦ µé¾î: Hotkey, IfWinActive.

+

+"Hotkey IfWin"°¡ ½ºÅ©¸³Æ®¿¡¼­ »ç¿ëµÇÁö ¾ÊÀ¸¸é, ÃÖ±Ù¿¡ »ç¿ëÇÑ #IfWin Áö½Ã¾î°¡ (ÀÖ´Ù¸é) ±× Hotkey ¸í·É¾î¿¡ ´ëÇÏ¿© ¿µÇâÀ» ¹ÌĨ´Ï´Ù.

+

+¸¶¿ì½º³ª Å°º¸µå ÇÖÅ°°¡ IfWin¿¡ ÀÇÇÏ¿© ²¨Áú ¶§, ÀÚ½ÅÀÇ °íÀ¯ ÇÔ¼ö¸¦ ¼öÇàÇÕ´Ï´Ù; Áï, ¸¶Ä¡ ±×·± ÇÖÅ°°¡ ÀüÇô ¾ø´Â °Íó·³ È°¼ºÃ¢±îÁö °Ç³×Áý´Ï´Ù. ÇÑ °¡Áö ¿¹¿Ü°¡ ÀÖ½À´Ï´Ù: Á¶À̽ºÆ½ ÇÖÅ°´Â ¿¹¿ÜÀÔ´Ï´Ù: IfWinÀÌ ÀÛµ¿ÇÏ´õ¶óµµ, ¹öÆ°À» ´©¸£´Â °ÍÀ» ´Ù¸¥ ÇÁ·Î±×·¥ÀÌ º¸Áö ¸øÇϵµ·Ï ¸·Áö ¾Ê½À´Ï´Ù.

+ +

º¯Çü (Áߺ¹) ÇÖÅ°

+

+ƯÁ¤ ÇÖÅ°´Â °¢ Á¤ÀǸ¶´Ù IfWin ±âÁØÀÌ ´Ù¸£´Ù¸é ÇÑ ¹ø ÀÌ»ó ¸¸µé ¼ö ÀÖ½À´Ï´Ù. ÀÌ·± °ÍµéÀ» ÇÖÅ° º¯ÇüÀ̶ó°í ºÎ¸¨´Ï´Ù. ¿¹¸¦ µé¾î:

+ +
Hotkey, IfWinActive, ahk_class Notepad
+Hotkey, ^!c, MyLabelForNotepad
+Hotkey, IfWinActive, ahk_class WordPadClass
+Hotkey, ^!c, MyLabelForWordPad
+Hotkey, IfWinActive
+Hotkey, ^!c, MyLabelForAllOtherWindows
+

+ÇÖÅ°ÀÇ º¯ÇüÀÌ Çϳª ÀÌ»ó Ã˹ßÇÒ ¼ö ÀÖ´Ù¸é, °¡Àå ÀÏÂï ¸¸µé¾îÁø º¯Çü¸¸ Ã˹ߵ˴ϴÙ. ÀÌ¿¡ ´ëÇÑ ¿¹¿Ü´Â Àü¿ª º¯ÇüÀÔ´Ï´Ù (IfWin ±âÁØÀÌ ¾ø´Â º¯Çü): Ç×»ó ¿ì¼± ¼øÀ§°¡ ³·½À´Ï´Ù. ±×·¡¼­ ´Ù¸¥ º¯ÇüÀÌ ÀüÇô ÃË¹ßµÉ ¼ö ¾øÀ» ¶§¸¸ Ã˹ߵ˴ϴÙ.

+

+Áߺ¹ ÇÖÅ°¸¦ »ý¼ºÇÒ ¶§, ^!+#¿Í °°Àº ¼ö½Ä ½Éº¼ÀÇ ¼ø¼­´Â ¹®Á¦°¡ µÇÁö ¾Ê½À´Ï´Ù. ¿¹¸¦ µé¾î, ^!c´Â !^c¿Í °°½À´Ï´Ù. ±×·¸Áö¸¸, Å°´Â ÀÏ°ü¼ºÀÖ°Ô Ã¶ÀÚ¸¦ ½á¾ß ÇÕ´Ï´Ù. ¿¹¸¦ µé¾î, Esc´Â ÀÌ·± ¸ñÀûÀ¸·Î Escape¿Í °°Áö ¾Ê½À´Ï´Ù (±×·¸Áö¸¸ ´ë¼Ò¹®ÀÚ´Â ¹®Á¦°¡ µÇÁö ¾Ê½À´Ï´Ù). ¸¶Áö¸·À¸·Î, ¿ÍÀϵåÄ«µå Á¢µÎ ½Éº¼ (*)À» °¡Áø ÇÖÅ°´Â ¸ðµÎ ºñ-¿ÍÀϵåÄ«µå ÇÖÅ°¿Í ¿ÏÀüÈ÷ ´Ù¸¨´Ï´Ù; ¿¹¸¦ µé¾î, *F1°ú F1´Â °¢°¢ ÀÚ½ÅÀÇ º¯ÇüÀ» °¡Áý´Ï´Ù.

+

+IfWin ÇÖÅ°¿¡ °üÇÑ ´õ ÀÚ¼¼ÇÑ Á¤º¸´Â #IfWinÀÇ ÃÑÆòÀ» ÂüÁ¶ÇϽʽÿÀ.

+ +

°ü·Ã Ç׸ñ

+

+ÇÖÅ° ½Éº¼, #IfWinActive/Exist, #MaxThreadsBuffer, #MaxThreadsPerHotkey, Suspend, IsLabel(), Threads, Thread, Critical, Gosub, Return, Menu, SetTimer

+ +

¿¹Á¦

+ +
Hotkey, ^!z, MyLabel
+return
+
+MyLabel:
+MsgBox You pressed %A_ThisHotkey%.
+return
+
+; ±âŸ ¿¹Á¦µé:
+Hotkey, RCtrl & RShift, AltTab ; RCtrl & RShift¸¦ Alt-Tab ó·³ ÀÛµ¿Çϵµ·Ï ¸¸µì´Ï´Ù.
+Hotkey, #c, On  ; Win-C ÇÖÅ°¸¦ ÀçÈ°¼ºÈ­ÇÕ´Ï´Ù.
+Hotkey, $+#c, Off  ; Shift-Win-C ÇÖÅ°¸¦ ²ü´Ï´Ù.
+Hotkey, ^!a, , T5  ; ÇÖÅ°°¡ ´Ù¼¸ °³ÀÇ ¾²·¹µå¸¦ Çã¿ëÇϵµ·Ï ¹Ù²ß´Ï´Ù.
+
+Hotkey, IfWinActive, ahk_class Notepad
+Hotkey, ^!c, MyLabelForNotepad  ; ³ëÆ®Æе忡¼­¸¸ ÀÛµ¿ÇÏ´Â ÇÖÅ°·Î Ctrl-Alt-C¸¦ »ý¼ºÇÕ´Ï´Ù..
+ + + diff --git a/src/docs/commands/IfBetween.htm b/src/docs/commands/IfBetween.htm new file mode 100644 index 0000000..c308492 --- /dev/null +++ b/src/docs/commands/IfBetween.htm @@ -0,0 +1,63 @@ + + + + +If var [not] between LowerBound and UpperBound + + + + + + + +

If var [not] between LowerBound and UpperBound

+ +

º¯¼öÀÇ ³»¿ëÀÌ ¼ýÄ¡ÀûÀ¸·Î ¶Ç´Â ¾ËÆĺª ¼øÀ¸·Î µÎ °ª(Æ÷ÇÔ) »çÀÌ¿¡ ÀÖ´ÂÁö Á¡°ËÇÕ´Ï´Ù.

+ +
if Var between LowerBound and UpperBound
+if Var not between LowerBound and UpperBound
+

¸Å°³º¯¼ö

+
+ +
Var
+

Á¡°ËÇÒ º¯¼öÀÇ À̸§.

+ +
LowerBound
+

ÁöÁ¤ÇÑ ¹üÀ§ ¾È¿¡ ÀÖÀ¸·Á¸é, Var´Â ÀÌ ¹®ÀÚ¿­º¸´Ù, ¼ýÀÚº¸´Ù ¶Ç´Â º¯¼ö ÂüÁ¶º¸´Ù Å©°Å³ª °°¾Æ¾ß ÇÕ´Ï´Ù.

+ +
UpperBound
+

ÁöÁ¤ÇÑ ¹üÀ§ ¾È¿¡ ÀÖÀ¸·Á¸é, Var´Â ÀÌ ¹®ÀÚ¿­º¸´Ù, ¼ýÀÚ º¸´Ù, ¶Ç´Â º¯¼ö ÂüÁ¶º¸´Ù À۰ųª °°¾Æ¾ß ÇÕ´Ï´Ù.

+ +
+ +

³íÆò

+

+¸Å°³º¯¼ö ¼¼ °³°¡ ¸ðµÎ ¼ø¼öÇÏ°Ô ¼ýÄ¡À̸é, ¹®ÀÚ¿­ÀÌ ¾Æ´Ï¶ó ¼ýÀÚ·Î ºñ±³µË´Ï´Ù. ±×·¸Áö ¾ÊÀ¸¸é, ¹®ÀÚ¿­Ã³·³ ¾ËÆĺª ¼øÀ¸·Î ºñ±³µË´Ï´Ù (Áï, ¾ËÆĺª ¼ø¼­·Î Var°¡ ÁöÁ¤ÇÑ ¹üÀ§ ¾È¿¡ ÀÖ´ÂÁö °áÁ¤µË´Ï´Ù). ±× °æ¿ì, StringCaseSense OnÀ» »ç¿ëÇÏ¸é ´ë¼Ò¹®ÀÚ¸¦ ±¸ºÐÇØ ºñ±³ÇÒ ¼ö ÀÖ½À´Ï´Ù.

+

+¿¬»êÀÚ "between", "is", "in", ±×¸®°í "contains"´Â Ç¥Çö½Ä ¾È¿¡ Áö¿øµÇÁö ¾Ê½À´Ï´Ù.

+ +

°ü·Ã Ç׸ñ

+

+IfEqual/Greater/Less, if var in/contains MatchList, if var is type, IfInString, StringCaseSense, EnvAdd, ºí·Ï, Else

+ +

¿¹Á¦

+
if var between 1 and 5
+    MsgBox, %var%´Â ¹üÀ§°¡ 1 ÀÌ»ó 5 ÀÌÇÏÀÔ´Ï´Ù.
+
+if var not between 0.0 and 1.0
+    MsgBox %var%´Â ¹üÀ§°¡ 0.0 ÀÌ»ó 1.0 ÀÌÇÏÀÔ´Ï´Ù.
+
+if var between %VarLow% and %VarHigh%
+    MsgBox %var%´Â %VarLow%°ú %VarHigh% »çÀÌ¿¡ ÀÖ½À´Ï´Ù.
+
+if var between blue and red
+    MsgBox %var%´Â ¾ËÆĺª ¼ø¼­·Î ´Ü¾î blue¿Í red »çÀÌ¿¡ ÀÖ½À´Ï´Ù.
+
+LowerLimit = 1
+UpperLimit = 10
+InputBox, UserInput, %LowerLimit%°ú %UpperLimit% »çÀÌÀÇ ¼ýÀÚ¸¦ ÀÔ·ÂÇϽʽÿÀ.
+if UserInput not between %LowerLimit% and %UpperLimit%
+    MsgBox ÀÔ·ÂÀÌ À¯È¿ÇÑ ¹üÀ§ ¾È¿¡ ÀÖÁö ¾Ê½À´Ï´Ù.
+ + + diff --git a/src/docs/commands/IfEqual.htm b/src/docs/commands/IfEqual.htm new file mode 100644 index 0000000..462df2e --- /dev/null +++ b/src/docs/commands/IfEqual.htm @@ -0,0 +1,97 @@ + + + + +If/IfEqual/IfNotEqual/IfLess/IfLessOrEqual/IfGreater/IfGreaterOrEqual + + + + + + + +

If/IfEqual/IfNotEqual/IfLess/IfLessOrEqual/IfGreater/IfGreaterOrEqual

+ +

+º¯¼ö¸¦ º¯¼öÇØ ºñ±³ÇØ TRUE·Î Æò°¡µÉ °æ¿ì ¼öÇàÇÒ ¸í·É¾î(µé)À» ÁöÁ¤ÇÕ´Ï´Ù. ¸í·É¾î°¡ ¿©·µ Á¸ÀçÇϸé, ºí·Ï (È°°ýÈ£) ¾È¿¡ µÑ·¯ ½Î½Ê½Ã¿À.

+ +
IfEqual, var, value (same: if var = value)
+IfNotEqual, var, value (same: if var <> value) (!= can be used in place of <>)
+IfGreater, var, value (same: if var > value)
+IfGreaterOrEqual, var, value (same: if var >= value)
+IfLess, var, value (same: if var < value)
+IfLessOrEqual, var, value (same: if var <= value)
+If var ; º¯¼öÀÇ ³»¿ëÀÌ ºñ¾î Àְųª 0À̸é, °ÅÁþÀ¸·Î °£Áֵ˴ϴÙ. ±×·¸Áö ¾ÊÀ¸¸é ÂüÀÔ´Ï´Ù.
+
+´ÙÀ½µµ ÂüÁ¶: IfInString
+

¸Å°³º¯¼ö

+
+ +
var
+

º¯¼ö À̸§.

+ +
value
+

±âÈ£ ¹®ÀÚ¿­, ¼ýÀÚ ¶Ç´Â º¯¼ö ÂüÁ¶ (¿¹, %var2%). var¸¦ ºó ¹®ÀÚ¿­¿¡ ºñ±³ÇÏ°í ½Í´Ù¸é °ªÀ» »ý·«ÇÒ ¼ö ÀÖ½À´Ï´Ù.

+ +
+ +

³íÆò

+

+º¯¼ö(var)¿Í °ª(value)ÀÌ ¼ø¼öÇÏ°Ô ¼ýÄ¡¶ó¸é, ¹®ÀÚ¿­ÀÌ ¾Æ´Ï¶ó ¼ýÀÚ·Î ºñ±³µË´Ï´Ù. ±×·¸Áö ¾ÊÀ¸¸é, ¹®ÀÚ¿­·Î ¾ËÆĺª ¼øÀ¸·Î ºñ±³µË´Ï´Ù (Áï, ¾ËÆĺª ¼ý¼­·Î var°¡ valueº¸´Ù Å«Áö ÀÛÀºÁö °°ÀºÁö °áÁ¤ÇÕ´Ï´Ù).

+

+IF ¶Ç´Â ELSE°¡ ¿©·¯ ÁÙÀ» ¼ÒÀ¯Çϸé, ±×·± ÁÙµéÀº È°°ýÈ£·Î µÑ·¯ ½Î¾ß ÇÕ´Ï´Ù. ¿¹¸¦ µé¾î:

+
if count <= 0
+{
+    WinClose Untitled - Notepad
+    MsgBox ¾î¶² Ç׸ñµµ Á¸ÀçÇÏÁö ¾Ê½À´Ï´Ù.
+}
+

+±×·¸Áö¸¸, ÇÑ ÁÙ¸¸ IF ¶Ç´Â ELSE¿¡ ¼ÓÇÑ´Ù¸é, È°°ýÈ£´Â ¼±ÅÃÀûÀÔ´Ï´Ù.

+

+¸í·É¾î-À̸§ ½ºÅ¸ÀÏÀ» »ç¿ëÇÑ´Ù¸é, ¶Ç´Ù¸¥ ¸í·É¾î´Â IF ¼­¼ú¹®°ú °°Àº ÁÙ¿¡¸¸ ³ªÅ¸³¯ ¼ö ÀÖ½À´Ï´Ù. ´Ù¸¥ ¸»·Î, ´ÙÀ½Àº À¯È¿ÇÕ´Ï´Ù:

+ +
IfEqual, x, 1, Sleep, 1
+IfGreater, x, 1, EnvAdd, x, 2
+

+±×·¯³ª ´ÙÀ½Àº À¯È¿ÇÏÁö ¾Ê½À´Ï´Ù:

+ +
if x = 1 Sleep 1
+IfGreater, x, 1, x += 2
+

+One True Brace (OTB) ½ºÅ¸ÀÏÀº ÀÌ·± À¯ÇüÀÌ if ¼­¼ú¹®¿¡ »ç¿ëÇÏ¸é ¾È µË´Ï´Ù. ¿ÀÁ÷ Ç¥Çö½Ä if-¼­¼ú¹®¿¡¸¸ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù.

+

+°ü·ÃÇÏ¿© ¸»¾¸µå¸®ÀÚ¸é, ´ÙÀ½ ¸í·É¾î if var [not] between LowerBound and UpperBound´Â º¯¼ö°¡ µÎ °ª »çÀÌ¿¡ ÀÖ´ÂÁö Á¡°ËÇÕ´Ï´Ù. ±×¸®°í if var [not] in value1,value2´Â º¯¼öÀÇ ³»¿ëÀÌ °ª ¸ñ·Ï ¾È¿¡ Á¸ÀçÇÏ´ÂÁö Á¡°ËÇÏ´Â µ¥ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù.

+ +

°ü·Ã Ç׸ñ

+

+IF (expression), StringCaseSense, ÇÒ´ç Ç¥Çö½Ä (:=), if var in/contains MatchList, if var between, IfInString, ºí·Ï, Else

+ +

¿¹Á¦

+ +
if counter >= 1
+    Sleep, 10
+
+if counter >=1   ; ¸¸¾à IF¿¡ ¿©·¯ ÁÙÀÌ ÀÖ´Ù¸é, ±× ÁÙµéÀº È°°ýÈ£ ¾È¿¡ ½Î ³ÖÀ¸½Ê½Ã¿À:
+{
+    WinClose, Untitled - Notepad
+    Sleep 10
+}
+
+if MyVar = %MyVar2%
+    MsgBox MyVar¿Í MyVar2ÀÇ ³»¿ëÀº µ¿ÀÏÇÕ´Ï´Ù.
+else if MyVar =
+{
+    MsgBox, 4,, MyVar°¡ ºñ¾î ÀÖ½À´Ï´Ù. °è¼ÓÇϽðڽÀ´Ï±î?
+    IfMsgBox, No
+        Return
+}
+else if MyVar <> ,
+    MsgBox MyVarÀÇ °ªÀº ½°Ç¥°¡ ¾Æ´Õ´Ï´Ù.
+else
+    MsgBox MyVarÀÇ °ªÀº ½°Ç¥ÀÔ´Ï´Ù.
+
+if Done
+    MsgBox º¯¼ö DoneÀº ºñ¾î ÀÖÁöµµ ¾Ê°í 0µµ ¾Æ´Õ´Ï´Ù.
+ + + diff --git a/src/docs/commands/IfExist.htm b/src/docs/commands/IfExist.htm new file mode 100644 index 0000000..42fd923 --- /dev/null +++ b/src/docs/commands/IfExist.htm @@ -0,0 +1,41 @@ + + + + +IfExist / IfNotExist + + + + + + + +

IfExist / IfNotExist

+ +

ÆÄÀÏÀ̳ª Æú´õÀÇ Á¸Àç ¿©ºÎ¸¦ Á¡°ËÇÕ´Ï´Ù.

+ +
IfExist, FilePattern
+IfNotExist, FilePattern
+AttributeString := FileExist(FilePattern)
+

¸Å°³º¯¼ö

+
+ +
FilePattern
+

Á¡°ËÇÒ °æ·Î, ÆÄÀÏÀ̸§ ¶Ç´Â ÆÄÀÏ ÆÐÅÏ. Àý´ë °æ·Î¸¦ ÁöÁ¤ÇÏÁö ¾ÊÀ¸¸é FilePatternÀº %A_WorkingDir%¿¡ ÀÖÀ» °ÍÀ̶ó°í °£Áֵ˴ϴÙ.

+ +
+ +

°ü·Ã Ç׸ñ

+

+FileExist(), ºí·Ï, Else, File-ȸµ¹ÀÌ

+ +

¿¹Á¦

+
IfExist, D:\
+    MsgBox, µå¶óÀ̺갡 Á¸ÀçÇÕ´Ï´Ù.
+IfExist, D:\Docs\*.txt
+    MsgBox, Àû¾îµµ ÇϳªÀÇ .txt ÆÄÀÏÀÌ Á¸ÀçÇÕ´Ï´Ù.
+IfNotExist, C:\Temp\FlagFile.txt
+    MsgBox, ¸ñÇ¥ ÆÄÀÏÀÌ Á¸ÀçÇÏÁö ¾Ê½À´Ï´Ù.
+ + + diff --git a/src/docs/commands/IfExpression.htm b/src/docs/commands/IfExpression.htm new file mode 100644 index 0000000..5bc90e0 --- /dev/null +++ b/src/docs/commands/IfExpression.htm @@ -0,0 +1,75 @@ + + + + +if (expression) + + + + + + + +

if (Ç¥Çö½Ä)

+ +

Ç¥Çö½ÄÀÌ TRUE·Î Æò°¡µÇ¸é ¼öÇàÇÒ ¸í·É¾î(µé)À» ÁöÁ¤ÇÕ´Ï´Ù.

+ +
if (expression)
+

³íÆò

+

+Ç¥Çö½ÄÀÌ ÀÖ´Â if-¼­¼ú¹®Àº ÀüÅëÀûÀÎ-if¿Í ´Ù¸¨´Ï´Ù. If FoundColor <> Blue¿Í °°Àº °æ¿ì ´Ü¾î "if" ´ÙÀ½ ¹®ÀÚ°¡ ¿©´Â È°°ýÈ£°¡ ¾Æ´Õ´Ï´Ù. +º¸Åë Àüü Ç¥Çö½ÄÀ» È°°ýÈ£ ¾È¿¡ ½Î ³ÖÀ¸¸é ÀÌ·¸°Ô ÇÒ ¼ö ÀÖÁö¸¸, if (x > 0) and (y > 0)¿Í °°ÀÌ Çصµ ´Þ¼ºÇÒ ¼ö ÀÖ½À´Ï´Ù. °Ô´Ù°¡, ´Ü¾î "if" ´ÙÀ½ÀÇ Ã¹ Ç׸ñÀÌ ÇÔ¼ö È£ÃâÀ̰ųª ¶Ç´Â "not"À̳ª "!"¿Í °°Àº ¿¬»êÀÚÀÏ °æ¿ì ¿©´Â-È°°ýÈ£´Â ¿ÏÀüÈ÷ »ý·«Çصµ µË´Ï´Ù.

+

+if-¼­¼ú¹®ÀÇ Ç¥Çö½ÄÀÌ ÂüÀ¸·Î Æò°¡µÇ¸é (ºó ¹®ÀÚ¿­ ¶Ç´Â ¼ýÀÚ 0¸¸ ¾Æ´Ï¸é ¾î¶² °á°úµµ ÂüÀ̹ǷÎ), ±× ÁÙ ¶Ç´Â ±× ¹ØÀÇ ºí·ÏÀÌ ½ÇÇàµË´Ï´Ù. ±×·¸Áö ¾Ê°í, »óÀÀÇÏ´Â ELSE°¡ ÀÖ´Ù¸é, ½ÇÇàÀº ±× ÁÙ ¶Ç´Â ±× ¹ØÀÇ ºí·ÏÀ¸·Î Á¡ÇÁÇÕ´Ï´Ù.

+

+IF ¶Ç´Â ELSE°¡ ¿©·¯ ÁÙÀ» ¼ÒÀ¯Çϸé, ±×·± ÁÙµéÀº ¹Ýµå½Ã È°°ýÈ£ ¾È¿¡ µÑ·¯½Î¾ß ÇÕ´Ï´Ù. ±×·¸Áö¸¸, ÇÑ ÁÙ¸¸ IF³ª ELSE¿¡ ¼ÓÇÑ´Ù¸é, È°°ýÈ£´Â ¾ø¾îµµ µË´Ï´Ù. ÀÌ ÆäÀÌÁö ¾Æ·¡ÀÇ ¿¹Á¦µéÀ» ÂüÁ¶ÇϽʽÿÀ.

+

+One True Brace (OTB) ½ºÅ¸ÀÏÀº ¼±ÅÃÀûÀ¸·Î Ç¥Çö½Ä if-¼­¼ú¹®°ú ÇÔ²² »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù (±×·¯³ª ÀüÅëÀûÀÎ if-¼­¼ú¹®Àº ¾È µË´Ï´Ù). ¿¹¸¦ µé¾î:

+
if (x < y) {
+    ...
+}
+if WinExist("Untitled - Notepad") {
+    WinActivate
+}
+if IsDone {
+    ...
+} else {
+    ...
+}
+

+"else" ¼­¼ú¹®°ú ´Ù¸£°Ô -- ±×ÀÇ ¿À¸¥ÂÊ¿¡ ¿À±â¸¸ ÇÏ¸é ¼­¼ú¹®¿¡ Á¾·ù¿¡ »ó°ü¾øÀÌ Áö¿øÇÏ´Â -- if-¼­¼ú¹®Àº ¿ÀÁ÷ ±×ÀÇ ¿À¸¥ÂÊ¿¡ ¿À´Â "{"¸¸ Áö¿øÇÕ´Ï´Ù.

+

+°ü·ÃÇÏ¿©, ¸í·É¾î if var [not] between LowerBound and UpperBound ´Â º¯¼ö°¡ µÎ º¯¼ö »çÀÌ¿¡ ÀÖ´ÂÁö Á¡°ËÇÕ´Ï´Ù. ±×¸®°í if var [not] in value1,value2´Â º¯¼öÀÇ ³»¿ëÀÌ °ª ¸ñ·Ï ¾È¿¡ Á¸ÀçÇÏ´ÂÁö Á¡°ËÇÏ´Â µ¥ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù.

+ +

°ü·Ã Ç׸ñ

+

+Ç¥Çö½Ä, ÇÒ´ç Ç¥Çö½Ä (:=), if var in/contains MatchList, if var between, IfInString, ºí·Ï, Else, While-ȸµ¹ÀÌ

+ +

¿¹Á¦

+
if (A_Index > 100 or Done)
+    return
+
+if (A_TickCount - StartTime > 2*MaxTime + 100)
+{
+    MsgBox ³Ê¹« ¸¹Àº ½Ã°£Áö °æ°úÇÏ¿´½À´Ï´Ù.
+    ExitApp
+}
+
+if (Color = "Blue" or Color = "White")
+{
+    MsgBox Ä÷¯´Â Çã¿ëµÈ °ª Áß ÇϳªÀÔ´Ï´Ù.
+    ExitApp
+}
+else if (Color = "Silver")
+{
+    MsgBox ȸ»öÀº Çã¿ëÇÏÁö ¾Ê´Â »öÀÔ´Ï´Ù.
+    return
+}
+else
+{
+    MsgBox ÀÌ »öÀº ÀÎÁöÇÒ ¼ö ¾ø½À´Ï´Ù.
+    ExitApp
+}
+ + + diff --git a/src/docs/commands/IfIn.htm b/src/docs/commands/IfIn.htm new file mode 100644 index 0000000..c819d9f --- /dev/null +++ b/src/docs/commands/IfIn.htm @@ -0,0 +1,81 @@ + + + + +If var [not] in/contains value1,value2,... + + + + + + + +

If var [not] in/contains value1,value2,...

+ +

+º¯¼öÀÇ ³»¿ëÀÌ ¸ñ·Ï¿¡ ÀÖ´Â Ç׸ñ Áß Çϳª¿¡ ÀÏÄ¡ÇÏ´ÂÁö Á¡°ËÇÕ´Ï´Ù.

+ +
if Var in MatchList
+if Var not in MatchList
+
+if Var contains MatchList
+if Var not contains MatchList
+

¸Å°³º¯¼ö

+
+ +
Var
+
+

³»¿ëÀ» Á¡°ËÇÒ º¯¼öÀÇ À̸§. "in" ¿¬»êÀÚ´Â Á¤È®ÇÏ°Ô ¸®½ºÆ® Ç׸ñ¿¡ ºÎÇÕÇϱ⸦ ¿ä±¸ÇÕ´Ï´Ù. "contains" ¿¬»êÀÚ´Â ºÎÇÕÀÌ ´õ ½±°Ô ÀϾ´Ï´Ù: Var¿¡ ¸®½ºÆ® Ç׸ñ Áß Çϳª°¡ ºÎ¹®ÀÚ¿­·Î Æ÷ÇԵǾî Àֱ⸸ ÇÏ¸é ºÎÇÕÇÕ´Ï´Ù.

+ +
MatchList
+

½°Ç¥·Î-°¡¸¥ ¹®ÀÚ¿­ ¸®½ºÆ®. °¢ ¹®ÀÚ¿­Àº VarÀÇ ³»¿ë°ú ºñ±³ÇØ ºÎÇÕÇÕ´Ï´Ù. °¡¸£´Â ½°Ç¥ µÑ·¹ÀÇ ½ºÆäÀ̽º³ª ÅÇÀº Àǹ̰¡ ÀÖ½À´Ï´Ù. ºÎÇÕ ¹®ÀÚ¿­ÀÇ ÀϺΰ¡ µÈ´Ù´Â ¶æÀÔ´Ï´Ù. ¿¹¸¦ µé¾î, MatchList¿¡ ABC , XYZ°¡ ¼³Á¤µÇ¸é Var¿¡´Â ¹Ýµå½Ã ABC¿Í µÚ¿¡ ÇϳªÀÇ ½ºÆäÀ̽º°¡ ´ã±â°Å³ª ¶Ç´Â XYZ¿Í ±× ¾Õ¿¡ ½ºÆäÀ̽º Çϳª°¡ µé¾î ÀÖ¾î¾ß ºÎÇÕÇÒ ¼ö ÀÖ½À´Ï´Ù.

+

+ ¿¬¼ÓÀûÀÎ µÎ °³ÀÇ ½°Ç¥´Â ±ÛÀÚ ±×´ë·ÎÀÇ ½°Ç¥ Çϳª°¡ °á°úÀÔ´Ï´Ù. ¿¹¸¦ µé¾î, ´ÙÀ½Àº ±ÛÀÚ ±×´ë·ÎÀÇ ½°Ç¥ Çϳª¸¦ string1ÀÇ ³¡¿¡ »ý»êÇÕ´Ï´Ù: If Var In string1,,,string2. ºñ½ÁÇÏ°Ô, ´ÙÀ½ ¸ñ·Ï¿¡´Â Ç׸ñ Çϳª°¡ µé¾î ÀÖ°í ±× ¾È¿¡ ±ÛÀÚ ±×´ë·ÎÀÇ ½°Ç¥°¡ Çϳª µé¾î ÀÖ½À´Ï´Ù: If Var In single,,item. ¸ñ·Ï ¾È¿¡ ºó Ç׸ñÀ» Æ÷ÇÔÇÏ·Á¸é, ù ¹®ÀÚ¸¦ ´ÙÀ½ ¿¹Á¦¿Í °°ÀÌ ½°Ç¥·Î ¸¸µå½Ê½Ã¿À: If Var In ,string1,string2 ("contains" ¿¬»êÀÚ¸¦ »ç¿ëÇÒ ¶§, ºó Ç׸ñÀº ¾ðÁ¦³ª ºÎÇÕÇÕ´Ï´Ù. ¿Ö³ÄÇÏ¸é ºó ¹®ÀÚ¿­Àº ¸ðµç ¹®ÀÚ¿­¿¡ Àֱ⠶§¹®ÀÔ´Ï´Ù).

+

+ MatchList ¾ÈÀÇ Ç׸ñµéÀº °³º°ÀûÀÎ ¸Å°³º¯¼ö·Î Ãë±ÞµÇÁö ¾Ê±â ¶§¹®¿¡, ¸®½ºÆ®´Â º¯¼ö ¾È¿¡ ¿ÏÀüÈ÷ Æ÷Ç﵃ ¼ö ÀÖ½À´Ï´Ù. ½ÇÁ¦·Î, ±×ÀÇ ±æÀÌ°¡ 16383 ¹®ÀÚ¸¦ ³Ñ¾î¼­¸é º¯¼ö ¾È¿¡ ÀϺθ¸ Æ÷ÇԵ˴ϴÙ. ±× ±æÀÌ°¡ ½ºÅ©¸³Æ® ÁÙÀÇ ÃÖ´ë ±æÀÌÀ̱⠶§¹®ÀÔ´Ï´Ù. ¿¹¸¦ µé¾î, MatchList´Â %List1%,%List2%,%List3%À¸·Î ±¸¼ºµÉ ¼ö ÀÖ½À´Ï´Ù -- ¿©±â¿¡¼­ °¢°¢ÀÇ ºÎ¸ñ·ÏÀº ºÎÇÕÇÒ ¹æ´ëÇÑ ¸®½ºÆ®°¡ Æ÷ÇԵǾî ÀÖ½À´Ï´Ù.

+

+ ¸ñ·Ï¿¡¼­ 16384 ¹®ÀÚº¸´Ù ±ä Ç׸ñÀº ÃÊ°úµÈ ¹®ÀÚµéÀ» »õ·Î¿î ¸®½ºÆ® Ç׸ñÀ¸·Î Ãë±ÞÇÕ´Ï´Ù. ±×·¡¼­, º¸Åë ±×·± Ç׸ñÀº ÇÇÇÏ´Â °ÍÀÌ °¡Àå ÁÁ½À´Ï´Ù.

+ +
+ +

³íÆò

+

+¾ðÁ¦³ª ¼ýÀÚ¼øÀÌ ¾Æ´Ï¶ó ¾ËÆĺª ¼øÀ¸·Î ºñ±³µË´Ï´Ù. ¿¹¸¦ µé¾î, ¹®ÀÚ¿­ "11"´Â ¸®½ºÆ® Ç׸ñ "11.0"°ú ÀÏÄ¡ÇÏÁö ¾Ê½À´Ï´Ù.

+

+"contains" ¿¬»êÀÚ´Â IfInString/IfNotInString¸¦ »ç¿ëÇÑ °Í°ú °°½À´Ï´Ù. ´Ü, ´ÙÁß °Ë»ö ¹®ÀÚ¿­Àº Áö¿øÇÏÁö ¾Ê½À´Ï´Ù (¹«¾ùÀÌµç ºÎÇÕÇÕ´Ï´Ù).

+

+StringCaseSense OnÀ» »ç¿ëÇÏ¸é ´ë¼Ò¹®ÀÚ¸¦ ±¸ºÐÇØ ºñ±³ÇÒ ¼ö ÀÖ½À´Ï´Ù.

+

+MatchList°¡ ±æ¸é, ¿©·¯ °³ÀÇ ÂªÀº ÁÙ·Î ³ª´­ ¼ö ÀÖ½À´Ï´Ù. °è¼Ó ¼½¼ÇÀ» »ç¿ëÇÏ¸é µÇ´Âµ¥, ÀÌ´Â °¡µ¶¼º°ú À¯Áö°ü¸®¼ºµµ Çâ»ó½ÃÄÑ ÁÝ´Ï´Ù.

+

+¿¬»êÀÚ "between", "is", "in", ±×¸®°í "contains"Àº Ç¥Çö½Ä¿¡ Áö¿øµÇÁö ¾Ê½À´Ï´Ù.

+ +

°ü·Ã Ç׸ñ

+

+if var between, IfEqual/Greater/Less, IfInString, StringCaseSense, ºí·Ï, Else

+ +

¿¹Á¦

+
if var in exe,bat,com
+    MsgBox ÆÄÀÏ È®ÀåÀÚ°¡ ½ÇÇà À¯ÇüÀÔ´Ï´Ù.
+
+if var in 1,2,3,5,7,11 ; ¸®½ºÆ® ¾È¿¡ ½ºÆäÀ̽º¸¦ ȸÇÇÇÕ´Ï´Ù.
+    MsgBox %var%´Â ¼Ò¼öÀÔ´Ï´Ù.
+
+if var contains 1,3  ; °ªµéÀ» ¹®ÀÚ¿­·Î ºñ±³ÇÑ´Ù´Â °ÍÀ» ÁÖ¸ñÇϽʽÿÀ. ¼ýÀÚ·Î ºñ±³ÇÏÁö ¾Ê½À´Ï´Ù.
+    MsgBox Var¿¡ 1 ¶Ç´Â 3ÀÌ ´ã°Ü ÀÖ½À´Ï´Ù (Var´Â 1, 3, 10, 21, 23, µîµîÀÌ µÉ ¼ö ÀÖ½À´Ï´Ù.)
+
+if var in %MyItemList%
+    MsgBox %var%´Â ¸ñ·Ï ¾È¿¡ ÀÖ½À´Ï´Ù.
+
+InputBox, UserInput, Enter YES or NO
+if UserInput not in yes,no
+    MsgBox ÀÔ·ÂÀÌ À¯È¿ÇÏÁö ¾Ê½À´Ï´Ù.
+
+WinGetTitle, active_title, A
+if active_title contains Address List.txt,Customer List.txt
+    MsgBox ¿øÇϴ â Áß Çϳª°¡ È°¼ºÈ­ »óÅÂÀÔ´Ï´Ù.
+if active_title not contains metapad,Notepad
+    MsgBox ±×·¯³ª ¸ÞŸÆе忡µµ ³ëÆ®Æе忡µµ ÆÄÀÏÀÌ ¿­·Á ÀÖÁö ¾Ê½À´Ï´Ù.
+ + + diff --git a/src/docs/commands/IfInString.htm b/src/docs/commands/IfInString.htm new file mode 100644 index 0000000..2da7e52 --- /dev/null +++ b/src/docs/commands/IfInString.htm @@ -0,0 +1,60 @@ + + + + +IfInString / IfNotInString + + + + + + + +

IfInString / IfNotInString

+ +

º¯¼ö¿¡ ÁöÁ¤µÈ ¹®ÀÚ¿­ÀÌ ´ã°Ü ÀÖ´ÂÁö Á¡°ËÇÕ´Ï´Ù.

+ +
IfInString, var, SearchString
+IfNotInString, var, SearchString
+Position := InStr(Haystack, Needle [, CaseSensitive?, StartingPos]]) ; ÀÚ¼¼ÇÑ °ÍÀº InStr() function¸¦ ÂüÁ¶ÇÕ´Ï´Ù.
+ +

¸Å°³º¯¼ö

+
+ +
var
+
ºÎÇÕÀ» À§ÇØ ±×ÀÇ ³»¿ëÀ» °Ë»öÇÒ

º¯¼öÀÇ À̸§.

+ +
SearchString
+

°Ë»öÇÒ ¹®ÀÚ¿­. ºÎÇÕÀº ´ë¼Ò¹®ÀÚ¸¦ ±¸ºÐÇÏÁö ¾Ê½À´Ï´Ù. ´Ü, StringCaseSense°¡ ÄÑÁ® ÀÖ´Â °æ¿ì´Â ¿¹¿ÜÀÔ´Ï´Ù.

+ +
+ +

³íÆò

+

+³»Àå º¯¼ö %A_Space%¿Í %A_Tab%´Â ¾È¿¡ ½ºÆäÀ̽º Çϳª¿Í ÅÇ ¹®ÀÚ Çϳª°¡ °¢°¢ µé¾î ÀÖ½À´Ï´Ù. ÀÌ·± ¹®ÀÚµéÀ» ´Üµ¶À¸·Î °Ë»öÇÒ ¶§ À¯¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù.

+

+¶Ç´Ù¸¥ ¸í·É¾î´Â ÀÌ ¸í·É¾î¿Í °°Àº ÁÙ¿¡ ³ªÅ¸³¯ ¼ö ÀÖ½À´Ï´Ù. ´Ù¸¥ ¸»·Î Çϸé, ´ÙÀ½Àº µÑ ´Ù µ¿µîÇÕ´Ï´Ù:

+
IfInString, MyVar, abc, Gosub, Process1
+IfInString, MyVar, abc
+    Gosub, Process1
+

+±×·¸Áö¸¸, À̸§ÀÖ´Â ¸í·É¾î ¸»°í ´Ù¸¥ Ç׸ñÀº °°Àº ÁÙ¿¡ Áö¿øÇÏÁö ¾Ê½À´Ï´Ù. ¿¹¸¦ µé¾î:

+
IfInString, MyVar, abc, found := true  ; À¯È¿ÇÏÁö ¾ÊÀ½.
+ +

°ü·Ã Ç׸ñ

+

+InStr(), RegExMatch(), StringGetPos, StringCaseSense, IfEqual, if var in/contains MatchList, if var between, if var is type, ºí·Ï, Else

+ +

¿¹Á¦

+
Haystack = abcdefghijklmnopqrs
+Needle = abc
+IfInString, Haystack, %Needle%
+{
+    MsgBox, ¹®ÀÚ¿­ÀÌ ¹ß°ßµÇ¾ú½À´Ï´Ù.
+    return
+}
+else
+    Sleep, 1
+ + + diff --git a/src/docs/commands/IfIs.htm b/src/docs/commands/IfIs.htm new file mode 100644 index 0000000..376e686 --- /dev/null +++ b/src/docs/commands/IfIs.htm @@ -0,0 +1,100 @@ + + + + +If var is [not] type + + + + + + + +

If var is [not] type

+ +

º¯¼öÀÇ ³»¿ëÀÌ ¼ýÄ¡ÀÎÁö, ´ë¹®ÀÚÀÎÁö µîµîÀ» Á¡°ËÇÕ´Ï´Ù.

+ +
if var is type
+if var is not type
+ +

¸Å°³º¯¼ö

+
+ +
var
+

º¯¼ö À̸§.

+ +
type
+

¾Æ·¡ÀÇ ³íÆò ÂüÁ¶.

+ +
+ +

³íÆò

+

+Áö¿øµÇ´Â À¯Çü:

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
integervar°¡ ºñ¾î ÀÖÁö ¾Ê°í ±×¸®°í ¼ø¼öÇÏ°Ô (¼Ò¼öÁ¡ ¾ø´Â) ¼ýÄ¡ ¹®ÀÚ¿­ (½ÊÀ°Áø¼ö ¶Ç´Â ½ÊÁø¼ö)À̸é ÂüÀÔ´Ï´Ù. ¼±µÎ¿Í ÈĹ̿¡ ½ºÆäÀ̽º¿Í ÅÇÀ» Çã¿ëÇÕ´Ï´Ù. ÀÌ ¹®ÀÚ¿­Àº Ç÷¯½º ¶Ç´Â ¸¶À̳ʽº »çÀÎÀ¸·Î ½ÃÀÛÇÒ ¼öµµ ÀÖ½À´Ï´Ù.
floatvar±â ºñ¾î ÀÖÁö ¾Ê°í ±×¸®°í ºÎµ¿ ¼Ò¼öÁ¡ ¼ö¸¦ Æ÷ÇÔÇÏ°í ÀÖÀ¸¸é ÂüÀÔ´Ï´Ù; Áï, ¼Ò¼öÁ¡ÀÌ ÀÖ´Â ¼ø¼ö ¼ýÄ¡ ¹®ÀÚ¿­À̸é ÂüÀÔ´Ï´Ù. ¼±µÎ¿Í ÈĹ̿¡ ½ºÆäÀ̽º¿Í ÅÇÀ» Çã¿ëÇÕ´Ï´Ù. ÀÌ ¹®ÀÚ¿­À» Ç÷¯½º ¶Ç´Â ¸¶À̳ʽº »çÀÎÀ¸·Î ½ÃÀÛÇÒ ¼öµµ ÀÖ½À´Ï´Ù.
numbervar¿¡ Á¤¼ö³ª ºÎµ¿ ¼Ò¼öÁ¡ ¼ö°¡ ´ã±â¸é ÂüÀÔ´Ï´Ù (°¢°¢ÀÇ Á¶°ÇÀº À§ÀÇ ±â¼úÀ» µû¸¨´Ï´Ù).
digitvar°¡ ºñ¾î Àְųª ¿ÀÁ÷ ¼ýÀÚ¸¸ ´ã°í ÀÖÀ¸¸é ÂüÀÔ´Ï´Ù. Áï, 0¿¡¼­ 9±îÁö·Î ±¸¼ºµÇ¸é ÂüÀÔ´Ï´Ù. ´Ù¸¥ ¹®ÀÚµéÀº ´ÙÀ½°ú °°ÀÌ Çã¿ëµÇÁö ¾Ê½À´Ï´Ù: ½ºÆäÀ̽º, ÅÇ, Ç÷¯½º »çÀÎ, ¸¶À̳ʽº »çÀÎ, ¼Ò¼ö Á¡, ½ÊÀ°Áø ¼ö, ±×¸®°í 0x Á¢µÎ»ç.
xdigit½ÊÀ°Áø ÀÚ¸®: digit¿Í µ¿ÀÏÇÏÁö¸¸ A ºÎÅÍ F (´ë¹®ÀÚ ¶Ç´Â ¼Ò¹®ÀÚ))µµ Çã¿ëÇÕ´Ï´Ù. v1.0.44.09+¿¡¼­´Â Á¢µÎ»ç 0xµµ Çã¿ëÇÕ´Ï´Ù.
alphavar°¡ ºñ¾î Àְųª ¾ËÆĺª¸¸ Æ÷ÇÔÇÏ°í ÀÖÀ¸¸é ÂüÀÔ´Ï´Ù. ¹®ÀÚ¿­¿¡ ¼ýÀÚ, ½ºÆäÀ̽º, ÅÇ, ±¸µÎÁ¡ ¶Ç´Â ±âŸ ºñ-¾ËÆĺª ¹®ÀÚ¸¦ ´ã°í ÀÖÀ¸¸é °ÅÁþÀÔ´Ï´Ù. ¿¹¸¦ µé¾î, var¿¡ ½ºÆäÀ̽º°¡ ÀÖ°í ´ÙÀ½ ±âÈ£°¡ µû¶ó¿À¸é, ¾ËÆĺªÀ¸·Î °£ÁÖÇÏÁö ¾Ê½À´Ï´Ù.
uppervar°¡ ºñ¾î Àְųª ¶Ç´Â ¿ÀÁ÷ ´ë¹®ÀÚ¸¸ ´ã°í ÀÖÀ¸¸é ÂüÀÔ´Ï´Ù. ¹®ÀÚ¿­¿¡ ¼ýÀÚ, ½ºÆäÀ̽º, ÅÇ, ±¸µÎÁ¡ ¶Ç´Â ±âŸ ºñ-´ë¹®ÀÚ¸¦ ´ã°í ÀÖÀ¸¸é °ÅÁþÀÔ´Ï´Ù.
lowervar°¡ ºñ¾î Àְųª ¿ÀÁ÷ ¼Ò¹®ÀÚ¸¸ ´ã°í ÀÖÀ¸¸é ÂüÀÔ´Ï´Ù. ¼ýÀÚ°¡ Àְųª, ½ºÆäÀ̽º, ÅÇ, ±¸µÎÁ¡, ¶Ç´Â ±âŸ ºñ-¼Ò¹®ÀÚ°¡ ¹®ÀÚ¿­¿¡ ÀÖÀ¸¸é °ÅÁþÀÔ´Ï´Ù.
alnumalpha¿Í µ¿ÀÏÇÏÁö¸¸ 0 ºÎÅÍ 9 »çÀÌÀÇ ¹®ÀÚµµ Çã¿ëÇÕ´Ï´Ù.
spacevar°¡ ºñ¾î Àְųª °ø¹é ¹®ÀÚ¸¸ ´ã°í ÀÖÀ¸¸é ÂüÀÔ´Ï´Ù. °ø¹é ¹®ÀÚ´Â ´ÙÀ½°ú °°ÀÌ ±¸¼ºµË´Ï´Ù: ½ºÆäÀ̽º (%A_Space%), ÅÇ (%A_Tab% or `t), Áٳѱè (`n), ¸®ÅÏ (`r), ¼öÁ÷ ÅÇ (`v), ±×¸®°í ÀåÇǵå (`f).
time

var¿¡ À¯È¿ÇÑ ³¯Â¥-½Ã°£ µµÀåÀÌ µé¾î ÀÖÀ¸¸é ÂüÀÔ´Ï´Ù. Çü½ÄÀÌ YYYYMMDDHH24MISSÀ̰ųª ¾Æ´Ï¸é ¾ÕÂÊ ºÎºÐ¸¸ÀÌ¶óµµ µË´Ï´Ù. ¿¹¸¦ µé¾î, 2004¿Í °°Àº 4-ÀÚ¸® ¹®ÀÚ¿­Àº À¯È¿·Î °£ÁÖÇÕ´Ï´Ù. StringLenÀ» »ç¿ëÇϸé Ãß°¡·Î ½Ã°£ ±¸¼º ºÎºÐÀÌ Á¸ÀçÇÏ´ÂÁö ¾Ë¾Æ³¾ ¼ö ÀÖ½À´Ï´Ù.

+

1601³â ¹Ì¸¸Àº À¯È¿·Î °£ÁÖÇÏÁö ¾Ê½À´Ï´Ù. ¿î¿µ üÁ¦°¡ º¸Åë Áö¿øÇÏÁö ¾Ê±â ¶§¹®ÀÔ´Ï´Ù. ÃÖ´ë ÇØ´Â 9999³âÀÔ´Ï´Ù.

+

´Ü¾î DATE¸¦ ´Ü¾î TIME ´ë½Å »ç¿ëÇصµ, °á°ú´Â °°½À´Ï´Ù.

+
+

ÁÖÀÇ: ¿¬»êÀÚ "between", "is", "in", ±×¸®°í "contains"´Â Ç¥Çö½Ä¿¡ Áö¿øÇÏÁö ¾Ê½À´Ï´Ù.

+

+[AHK_L 42+]: ½Ã½ºÅÛ ·ÎÄÉÀÏÀº StringCaseSense LocaleÀÌ »ç¿ëµÇÁö ¾Ê´Â ÇÑ ¹«½ÃµË´Ï´Ù.

+ +

°ü·Ã Ç׸ñ

+

+%A_YYYY%, SetFormat, FileGetTime, IfEqual, if var in/contains MatchList, if var between, StringLen, IfInString, StringUpper, EnvAdd, ºí·Ï, Else

+ +

¿¹Á¦

+
if var is float
+    MsgBox, %var%´Â ºÎµ¿ ¼Ò¼öÁ¡ ¼öÀÔ´Ï´Ù.
+else if var is integer
+    MsgBox, %var%´Â Á¤¼öÀÔ´Ï´Ù.
+if var is time
+    MsgBox, %var%´Â ¶ÇÇÑ À¯È¿ÇÑ ³¯Â¥-½Ã°£À̱⵵ ÇÕ´Ï´Ù.
+ + + diff --git a/src/docs/commands/IfMsgBox.htm b/src/docs/commands/IfMsgBox.htm new file mode 100644 index 0000000..5c35189 --- /dev/null +++ b/src/docs/commands/IfMsgBox.htm @@ -0,0 +1,49 @@ + + + + +IfMsgBox + + + + + + + +

IfMsgBox

+ +

°¡Àå ÃÖ±Ù¿¡ MsgBox ¸í·É¾î°¡ ÀÛµ¿ ÁßÀÎ µ¿¾È ¾î´À ¹öÆ°À» »ç¿ëÀÚ°¡ ´­·¶´ÂÁö Á¡°ËÇÕ´Ï´Ù.

+ +
IfMsgBox, ButtonName
+

¸Å°³º¯¼ö

+
+ +
ButtonName
+

»ç¿ëÀÚ°¡ ´©¸¥ ¹öÆ°Àº ´ÙÀ½ ¹®ÀÚ¿­ Áß ÇϳªÀÔ´Ï´Ù:

+

Yes
+ No
+ OK
+ Cancel
+ Abort
+ Ignore
+ Retry
+ Continue [v1.0.44.08+]
+ TryAgain [v1.0.44.08+]
+ Timeout (Áï, MsgBox°¡ ½Ã°£Á¦ÇÑ¿¡ °É·È´Ù¸é ´Ü¾î "timeout"ÀÌ Á¸ÀçÇÕ´Ï´Ù.)

+
+ +
+ +

°ü·Ã Ç׸ñ

+

MsgBox

+

¿¹Á¦

+
MsgBox, 4, , °è¼ÓÇϽðڽÀ´Ï´Ù?, 5  ; 5-ÃÊ·Î ½Ã°£ Á¦ÇÑ.
+IfMsgBox, No
+    Return  ; »ç¿ëÀÚ°¡ "No" ¹öÆ°À» ´­·¶½À´Ï´Ù.
+IfMsgBox, Timeout
+    Return ; Áï, »ý·«Çϸé "No"¶ó°í °£ÁÖÇÕ´Ï´Ù.
+; ±×·¸Áö ¾ÊÀ¸¸é, °è¼ÓÇÕ´Ï´Ù:
+...
+ + + diff --git a/src/docs/commands/ImageSearch.htm b/src/docs/commands/ImageSearch.htm new file mode 100644 index 0000000..d58649c --- /dev/null +++ b/src/docs/commands/ImageSearch.htm @@ -0,0 +1,95 @@ + + + + +ImageSearch + + + + + + + + +

ImageSearch

+ +

È­¸é ÇÑ ±¸¿ª¿¡¼­ À̹ÌÁö¸¦ °Ë»öÇÕ´Ï´Ù.

+ +
ImageSearch, OutputVarX, OutputVarY, X1, Y1, X2, Y2, ImageFile
+

¸Å°³º¯¼ö

+
+ +
OutputVarX/Y
+

È­¸é¿¡¼­ À̹ÌÁö°¡ ¹ß°ßµÈ Á»ó Çȼ¿ÀÇ X¿Í Y ÁÂÇ¥¸¦ ÀúÀåÇÒ º¯¼öÀÇ À̸§ (ÀÏÄ¡°¡ ¹ß°ßµÇÁö ¾ÊÀ¸¸é, º¯¼ö´Â ºñ¿öÁý´Ï´Ù). ÁÂÇ¥´Â È°¼ºÃ¢¿¡ »ó´ëÀûÀÔ´Ï´Ù. ´Ü, CoordMode°¡ »ç¿ëµÇ´Â ÁÂÇ¥ ü°è¸¦ ¹Ù²Û °æ¿ì´Â ¿¹¿ÜÀÔ´Ï´Ù.

+

ÀÌ ¸Å°³º¯¼ö°¡ ºñ¾î ÀÖ´Â °æ¿ì°¡ ÀÖ½À´Ï´Ù. ±×·¯¸é ErrorLevel (¾Æ·¡ ÂüÁ¶)¸¦ »ç¿ëÇÏ¿© ÀÏÄ¡°¡ ¹ß°ßµÇ¾ú´ÂÁö ¾Ë¾Æ³¾ ¼ö ÀÖ½À´Ï´Ù.

+ +
X1,Y1
+

°Ë»öÇÒ »ç°¢ÇüÀÇ Á»ó X¿Í Y ÁÂÇ¥, Ç¥Çö½Ä °¡´É. ÁÂÇ¥´Â È°¼º â¿¡ »ó´ëÀûÀÔ´Ï´Ù. ´Ü, CoordMode°¡ »ç¿ëµÇ¾î ÁÂÇ¥ ü°è¸¦ ¹Ù²Û °æ¿ì´Â ¿¹¿ÜÀÔ´Ï´Ù.

+ +
X2,Y2
+

°Ë»öÇÒ »ç°¢ÇüÀÇ ¿ìÇÏ ¸ð¼­¸® X¿Í Y ÁÂÇ¥, Ç¥Çö½Ä °¡´É. ÁÂÇ¥´Â È°»ó â¿¡ »ó´ëÀûÀÔ´Ï´Ù. ´Ü, CoordMode°¡ »ç¿ëµÇ¾î ÁÂÇ¥ ü°è¸¦ ¹Ù²Û °æ¿ì´Â ¿¹¿ÜÀÔ´Ï´Ù.

+ +
ImageFile
+

À̹ÌÁöÀÇ ÆÄÀÏ À̸§, Àý´ë °æ·Î¸¦ ÁöÁ¤ÇÏÁö ¾ÊÀ¸¸é %A_WorkingDir%¿¡ ÀÖ´Ù°í °£Áֵ˴ϴÙ. ¸ðµç ¿î¿µ üÁ¦´Â GIF, JPG, BMP, ICO, CUR, ±×¸®°í ANI À̹ÌÁö¸¦ Áö¿øÇÕ´Ï´Ù (BMP À̹ÌÁö´Â ¹Ýµå½Ã 16-ºñÆ® ÀÌ»óÀ̾î¾ß ÇÕ´Ï´Ù). ´Ù¸¥ ¾ÆÀÌÄÜ ÀÚ¿øÀ¸·Î´Â ´ÙÀ½ ÆÄÀÏ À¯ÇüÀÌ Æ÷ÇԵ˴ϴÙ: EXE, DLL, CPL, SCR, ±×¸®°í ±âŸ ¾ÆÀÌÄÜ ÀÚ¿øÀ» Æ÷ÇÔÇÑ À¯Çüµé. Windows XP À̻󿡼­, Ãß°¡ À̹ÌÁö Æ÷¸ËÀ¸·Î PNG, TIF, Exif, WMF, ±×¸®°í EMF°¡ Áö¿øµË´Ï´Ù. ¿î¿µ üÁ¦°¡ XP ¹Ì¸¸À̸é Microsoft»çÀÇ ¹«·á GDI+ DLLÀ» AutoHotkey.exe Æú´õ ¾ÈÀ¸·Î º¹»çÇØ ³ÖÀ» ¼ö ÀÖ½À´Ï´Ù (±×·¯³ª ÄÄÆÄÀÏµÈ ½ºÅ©¸³Æ®ÀÇ °æ¿ì¶ó¸é, ±× DLLÀ» ½ºÅ©¸³Æ®ÀÇ Æú´õ ¾ÈÀ¸·Î º¹»çÇØ ³ÖÀ¸½Ê½Ã¿À). ±× DLLÀ» ³»·Á ¹ÞÀ¸·Á¸é, ´ÙÀ½ ¹®±¸¸¦ www.microsoft.com¿¡ ³Ö°í °Ë»öÇØ º¸½Ê½Ã¿À: gdi redistributable

+

Options: ´ÙÀ½ ¹®ÀÚ¿­ÀÌ ¿À°í ´ÙÀ½¿¡ ¹Ù·Î À̹ÌÁö ÆÄÀÏ À̸§ÀÌ µû¶ó¿É´Ï´Ù. °¢ ¿É¼ÇÀº ´ÙÀ½ ¿É¼Ç°ú »çÀÌ¿¡ ÇϳªÀÇ ½ºÆäÀ̽º³ª ÅÇÀ¸·Î ±¸ºÐÇϽʽÿÀ. ¿¹¸¦ µé¾î: *2 *w100 *h-1 C:\Main Logo.bmp.

+

*IconN: ÆÄÀÏ¿¡¼­ ù ¹ø° ¾ÆÀÌÄÜ ¸»°í ¾ÆÀÌÄÜ ±×·ìÀ» »ç¿ëÇÏ·Á¸é, *Icon°ú ´ÙÀ½¿¡ ¹Ù·Î ±×·ìÀÇ ¹øÈ£¸¦ ÁöÁ¤ÇϽʽÿÀ. ¿¹¸¦ µé¾î, *Icon2ÀÌ¸é µÎ ¹ø° ¾ÆÀÌÄÜ ±×·ìÀ¸·ÎºÎÅÍ ±âº» ¾ÆÀÌÄÜÀÌ ÀûÀçµË´Ï´Ù.

+

+ *n (º¯Çü): n¿¡ 0ºÎÅÍ 255 (Æ÷ÇÔ) »çÀÌÀÇ ¼ýÀÚ¸¦ ÁöÁ¤Çϸé, Â÷¿ø¿¡ »ó°ü¾øÀÌ °¢ Çʼ¿ Ä÷¯ÀÇ Àû³ìû ¿ä¼ÒÀÇ Ã¤µµ¿¡ ´ëÇÏ¿© Çã¿ëµÈ ½¦ÀÌµå º¯ÇüÀÇ °³¼ö¸¦ ³ªÅ¸³¾ ¼ö ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î, *2ÀÌ¸é µÎ °³ÀÇ ½¦ÀÌµå º¯ÇüÀ» Çã¿ëÇÕ´Ï´Ù. ÀÌ ¸Å°³º¯¼ö´Â À̹ÌÁöÀÇ Ä÷¯°¡ Á¶±Ý¾¿ ¹Ù²ð °æ¿ì ¶Ç´Â ImageFileÀÌ GIF³ª JPG °°Àº Æ÷¸ËÀ» »ç¿ëÇÒ °æ¿ì µµ¿òÀÌ µË´Ï´Ù. ÀÌ Æ÷¸ËÀº È­¸é¿¡ À̹ÌÁö¸¦ Á¤È®ÇÏ°Ô ³ªÅ¸³»Áö ¸øÇÕ´Ï´Ù. 255 ½¦ÀÌµå º¯ÇüÀ» ÁöÁ¤Çϸé, ¸ðµç »öÀÌ ºÎÇÕÇÕ´Ï´Ù. ±âº» °ªÀº 0 ½¦À̵åÀÔ´Ï´Ù.

+

+ *TransN: ÀÌ ¿É¼ÇÀ» ÀÌ¿ëÇÏ¸é ´õ ½±°Ô ºÎÇÕÀ» ã¾Æ³¾ ¼ö ÀÖ½À´Ï´Ù. À̹ÌÁö ¾È¿¡¼­ È­¸é ¾ÈÀÇ ¾î´À Ä÷¯¿¡µµ ºÎÇÕÇÒ ÇÑ Ä÷¯¸¦ ÁöÁ¤ÇÏ¸é µË´Ï´Ù. Åõ¸í ±¸¿ªÀÌ ÀÖ´Â PNG, GIF, ±×¸®°í TIF ÆÄÀÏÀ» ã´Â µ¥ ¾ÆÁÖ ÀÚÁÖ »ç¿ëµË´Ï´Ù (±×·¸Áö¸¸, ¾ÆÀÌÄÜÀº ÀÌ ¿É¼ÇÀÌ ÇÊ¿ä ¾ø½À´Ï´Ù. ¿Ö³ÄÇÏ¸é ¾ÆÀÌÄÜÀÇ Åõ¸í»öÀº ÀÚµ¿À¸·Î Áö¿øµÇ±â ¶§¹®ÀÔ´Ï´Ù). GIF ÆÄÀÏ¿¡ ´ëÇÏ¿©, *TransWhiteÀÌ¸é °ÅÀÇ ´ëºÎºÐ ÀÛµ¿ÇÒ °ÍÀÔ´Ï´Ù. PNG¿Í TIF ÆÄÀÏ¿¡ ´ëÇÏ¿©, *TransBlack°¡ Á¦ÀÏ ÁÁÀ» °ÍÀÔ´Ï´Ù. ±×·¸Áö ¾ÊÀ¸¸é, N¿¡ ´Ù¸¥ ¾î¶² Ä÷¯ À̸§ ¶Ç´Â RGB °ªÀ» ÁöÁ¤ÇϽʽÿÀ (°¡À̵å´Â Ä÷¯ Â÷Æ®¸¦ ÂüÁ¶ÇϽʽÿÀ. ¾Æ´Ï¸é RGB ¸ðµå·Î PixelGetColor¸¦ »ç¿ëÇϽʽÿÀ ). ¿¹Á¦: *TransBlack, *TransFFFFAA, *Trans0xFFFFAA.

+

+ *wn and *hn: À̹ÌÁö Å©±â¸¦ Á¶ÀýÇÒ ³Êºñ¿Í ³ôÀÌ + (ÀÌ ³Êºñ¿Í ³ôÀÌ´Â ¶Ç ¿©·¯-¾ÆÀÌÄÜ .ICO ÆÄÀϷκÎÅÍ ¾î´À ¾ÆÀÌÄÜÀ» ÀûÀçÇÒÁö °áÁ¤Çϱ⵵ ÇÕ´Ï´Ù.). ÀÌ µÎ ¿É¼ÇÀ» ¸ðµÎ »ý·«Çϸé, ICO, DLL, ¶Ç´Â EXE ÆÄÀϷκÎÅÍ ÀûÀçµÈ ¾ÆÀÌÄÜÀº ½Ã½ºÅÛÀÇ ±âº» ¼ÒÇü-¾ÆÀÌÄÜ Å©±â·Î Á¶ÀýµË´Ï´Ù. º¸Åë ÀÌ´Â 16 x 16 ÀÔ´Ï´Ù (*w0 *h0¸¦ ÁöÁ¤ÇÏ¸é °­Á¦·Î ½ÇÁ¦ÀÇ/³»ºÎÀÇ Å©±â¸¦ »ç¿ëÇϵµ·Ï ¸¸µé ¼ö ÀÖ½À´Ï´Ù.). ¾ÆÀÌÄÜÀÌ ¾Æ´Ñ À̹ÌÁö´Â ±×ÀÇ ½ÇÁ¦ Å©±â·Î ÀûÀçµË´Ï´Ù. ÀÌ À̹ÌÁö¸¦ ±×ÀÇ °¡·Î ¼¼·Î ºñÀ²À» À¯ÁöÇÑ Ã¤ ´Ã¸®°Å³ª ÁÙÀÌ·Á¸é, ÇÑ Â÷¿ø¿¡ -1À» ÁöÁ¤ÇÏ°í ´Ù¸¥ Â÷¿ø¿¡´Â ¾ç¼ö¸¦ ÁöÁ¤ÇϽʽÿÀ. ¿¹¸¦ µé¾î, *w200 *h-1À» ÁöÁ¤Çϸé À̹ÌÁö°¡ 200 Çȼ¿ ³Êºñ°¡ µÇ¸ç ±×ÀÇ ³ôÀÌ´Â ÀÚµ¿À¸·Î ¼³Á¤µË´Ï´Ù.

+ +
+ +

ErrorLevel

+

+[v1.1.04+] ÀÌ ¸í·É¾î´Â °Ë»öÇÏ´Â µ¿¾È ¹®Á¦°¡ ÀÖ´Ù¸é ¿¹¿Ü¸¦ ´øÁú ¼ö ÀÖ½À´Ï´Ù. ´õ ÀÚ¼¼ÇÑ Á¤º¸´Â ½ÇÇà½Ã°£ ¿¡·¯¸¦ ÂüÁ¶ÇϽʽÿÀ.

+

+ErrorLevelÀº À̹ÌÁö¸¦ ÁöÁ¤µÈ ±¸¿ª ¾È¿¡¼­ ¹ß°ßÇϸé 0ÀÌ ¼³Á¤µÇ°í, ¹ß°ßÇÏÁö ¸øÇϸé 1ÀÌ ¼³Á¤µË´Ï´Ù. ¾Æ´Ï¸é ÀÌ ¸í·É¾î°¡ °Ë»öÀ» ¼öÇàÇÏÁö ¸øÇϵµ·Ï ¸·´Â ¹®Á¦°¡ ÀÖ¾ú´Ù¸é 2°¡ ¼³Á¤µË´Ï´Ù (¿¹¸¦ µé¾î À̹ÌÁö ÆÄÀÏÀ» ¿­Áö ¸øÇϰųª Æ÷¸Ë ¿É¼ÇÀÌ ½ÉÇÏ°Ô À߸øµÇ¾úÀ» °æ¿ì).

+ +

³íÆò

+

+ImageSearch¸¦ »ç¿ëÇϸé È­¸é¿¡¼­ ±×·¡ÇÈ °´Ã¼¸¦ ŽÁöÇÒ ¼ö ÀÖ½À´Ï´Ù. ±×·¡ÇÈ °´Ã¼´Â ÅؽºÆ®°¡ ¾øÀ¸¸ç ÀÖ´Ù°í ÇÏ´õ¶óµµ ½±°Ô ŽÁöÇϱⰡ ¾î·Æ½À´Ï´Ù. ¿¹¸¦ µé¾î, ±×¸² ¹öÆ°, ¾ÆÀÌÄÜ, À¥ ÆäÀÌÁö ¸µÅ©, ¶Ç´Â °ÔÀÓ °´Ã¼ÀÇ À§Ä¡¸¦ ¾Ë¾Æ³»´Â µ¥ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. ÀÏ´Ü ¹ß°ßµÇ¸é, ±×·± °´Ã¼´Â ClickÀ» ÅëÇÏ¿© Ŭ¸¯ÇÒ ¼ö ÀÖ½À´Ï´Ù.

+

Á¾Á¾ À¯¿ëÇÑ Àü·«ÀÌ ÀÖ½À´Ï´Ù. Àüü À̹ÌÁöº¸´Ù À̹ÌÁöÀÇ ÀÛÀº ±¸¿ª¸¸ ¶¼¾î³» °Ë»öÇÏ´Â °ÍÀÌ ´õ À¯¿ëÇÕ´Ï´Ù. ÀÌ·¸°Ô Çϸé À̹ÌÁö°¡ ÀüüÀûÀ¸·Î ¹Ù²îÁö¸¸, ±× ¾È¿¡¼­ ¾î¶² ºÎºÐÀº ¾ðÁ¦³ª °°Àº °æ¿ì, ½Å·Ú¼ºÀ» °³¼±ÇÒ ¼ö ÀÖ½À´Ï´Ù. Ŭ¸³ÇÎ ±¸¿ªÀ» ÃßÃâÇÏ´Â ÇÑ °¡Áö ¹æ¹ýÀº ´ÙÀ½°ú °°½À´Ï´Ù:

+
    +
  1. À̹ÌÁö°¡ È°¼º â¿¡ º¸ÀÌ´Â µ¿¾È Alt+PrintScreen¸¦ ´©¸¨´Ï´Ù. ÀÌ·¸°Ô Çϸé È­¸éÀÇ ÂûĬ±×¸²ÀÌ Å¬¸³º¸µå¿¡ ÀúÀåµË´Ï´Ù.
  2. +
  3. Paint¿Í °°Àº À̹ÌÁö ó¸® ÇÁ·Î±×·¥À» ¿±´Ï´Ù.
  4. +
  5. Ŭ¸³º¸µåÀÇ ³»¿ëÀ» ºÙ¿© ³Ö½À´Ï´Ù (Áï, À§ÀÇ ÂûĬ±×¸²).
  6. +
  7. ±× À̹ÌÁö¸¸ °¡Áö´Â º¯ÇÏÁö ¾Ê°í À¯ÀÏÇÑ ±¸¿ªÀ» ¼±ÅÃÇÕ´Ï´Ù.
  8. +
  9. ±× ±¸¿ªÀ» »õ À̹ÌÁö ¹®¼­¿¡ º¹»çÇØ ºÙ¿© ³Ö½À´Ï´Ù.
  10. +
  11. ImageSearch¿¡ »ç¿ëÇϱâ À§ÇØ ÀÛÀº ÆÄÀÏ·Î ÀúÀåÇÕ´Ï´Ù.
  12. +
+

+ÀÏÄ¡°¡ µÇ·Á¸é, È­¸é À§ÀÇ À̹ÌÁö´Â ImageFile ¸Å°³º¯¼ö¿Í ±×ÀÇ ¿É¼ÇÀ» ÅëÇÏ¿© ÀûÀçµÈ À̹ÌÁö¿Í Å©±â°¡ °°¾Æ¾ß ÇÕ´Ï´Ù.

+

+°Ë»öµÉ ±¸¿ªÀº ¹Ýµå½Ã º¸¿©¾ß ÇÕ´Ï´Ù; ´Ù¸¥ ¸»·Î, ´Ù¸¥ â µÚ¿¡ °¡·ÁÁø âÀÇ ±¸¿ªÀº °Ë»öÇÒ ¼ö ¾ø½À´Ï´Ù. ´ëÁ¶ÀûÀ¸·Î, ¸¶¿ì½º Ä¿¼­ ¾Æ·¡¿¡ ºÎºÐÀûÀ¸·Î °¡·ÁÁø À̹ÌÁö´Â º¸Åë ŽÁö°¡ °¡´ÉÇÕ´Ï´Ù. ÀÌ¿¡ ´ëÇÑ ¿¹¿Ü´Â °ÔÀÓ Ä¿¼­ÀÔ´Ï´Ù. °ÔÀÓ Ä¿¼­´Â ´ëºÎºÐÀÇ °æ¿ì ±× ¾Æ·¡¿¡ ÀÖ´Â À̹ÌÁö¸¦ µ¤¾î¹ö¸³´Ï´Ù.

+

+°Ë»öÀº ±¸¿ªÀÇ À§ÂÊ¿¡¼­ ½ÃÀÛÇØ ¾Æ·¡·Î ³»·Á¿À¹Ç·Î, ¿©·¯ °³°¡ ºÎÇÕÇÒ °æ¿ì, À§ÂÊ¿¡ °¡±î¿î ºÎÇÕÀÌ ¹ß°ßµË´Ï´Ù.

+

+Åõ¸í»öÀ» Æ÷ÇÔÇÑ ¾ÆÀÌÄÜÀº ÀÚµ¿À¸·Î ±× Åõ¸í Ä÷¯°¡ È­¸é À§ÀÇ ¾î¶² Ä÷¯¿Íµµ ºÎÇÕÇϵµ·Ï Çã¿ëÇÕ´Ï´Ù. ±×·¯¹Ç·Î, ¾ÆÀÌÄÜ µÚ¿¡ ÀÖ´Â »öÀº ¹®Á¦°¡ µÇÁö ¾Ê½À´Ï´Ù.

+

+ImageSearch´Â 8-ºñÆ® Ä÷¯ È­¸é (256-Ä÷¯) ÀÌ»óÀ» Áö¿øÇÕ´Ï´Ù.

+

+°Ë»ö ÇàÀ§´Â µð½ºÇ÷¹ÀÌ ¾î´ðÅÍÀÇ Ä÷¯ ±íÀÌ¿¡ µû¶ó ´Þ¶óÁú ¼ö ÀÖ½À´Ï´Ù (ƯÈ÷ GIF ÆÄÀÏ°ú JPG ÆÄÀÏ). ±×·¯¹Ç·Î, ½ºÅ©¸³Æ®¸¦ ´ÙÁß Ä÷¯ ±íÀÌ¿¡¼­ ½ÇÇàÇÏ·Á¸é, °¢°¢ÀÇ ±íÀÌ ¼³Á¤¿¡ Å×½ºÆ®ÇØ º¸´Â °ÍÀÌ Á¦ÀÏ ÁÁ½À´Ï´Ù. ½¦ÀÌµå º¯Çü ¿É¼Ç (*n)À» »ç¿ëÇÏ¸é ´ÙÁß Ä÷³ ±íÀÌ¿¡ °ÉÃļ­ ±× ÇàÀ§¸¦ ÀÏ°ü¼ºÀÌ ÀÖ°Ô ¸¸µå´Â µ¥ µµ¿òÀÌ µË´Ï´Ù.

+

+È­¸é À§¿¡¼­ À̹ÌÁö°¡ ¹ÝÅõ¸íÀ̶ó¸é, ¾Æ¸¶µµ ImageSearch´Â ±×°ÍÀ» ã´Â µ¥ ½ÇÆÐÇÒ °ÍÀÔ´Ï´Ù. À̸¦ ¿ìȸÇÏ·Á¸é, ½¦ÀÌµå º¯Çü ¿É¼Ç (*n)À» »ç¿ëÇϰųª WinSet, Transparent, Off¸¦ »ç¿ëÇÏ¿© ±× âÀ» Àӽ÷ΠºÒÅõ¸íÇÏ°Ô ¸¸µå½Ê½Ã¿À.

+ +

°ü·Ã Ç׸ñ

+

PixelSearch, PixelGetColor, CoordMode, MouseGetPos

+ +

¿¹Á¦

+
ImageSearch, FoundX, FoundY, 40,40, 300, 300, C:\My Images\test.bmp
+
+CoordMode Pixel  ; ¾Æ·¡ÀÇ ÁÂÇ¥¸¦ È°¼º âÀÌ ¾Æ´Ï¶ó È­¸é¿¡ »ó´ëÀûÀ¸·Î ¹ø¿ªÇÕ´Ï´Ù.
+ImageSearch, FoundX, FoundY, 0, 0, A_ScreenWidth, A_ScreenHeight, *Icon3 %A_ProgramFiles%\SomeApp\SomeApp.exe
+if ErrorLevel = 2
+    MsgBox °Ë»öÀ» ¼öÇàÇÒ ¼ö ¾ø¾ú½À´Ï´Ù.
+else if ErrorLevel = 1
+    MsgBox ¾ÆÀÌÄÜÀ» È­¸é¿¡¼­ ¹ß°ßÇÒ ¼ö ¾ø¾ú½À´Ï´Ù.
+else
+    MsgBox ¾ÆÀÌÄÜÀ» %FoundX%x%FoundY%¿¡¼­ ¹ß°ßÇÏ¿´½À´Ï´Ù.
+ + + diff --git a/src/docs/commands/IniDelete.htm b/src/docs/commands/IniDelete.htm new file mode 100644 index 0000000..655a188 --- /dev/null +++ b/src/docs/commands/IniDelete.htm @@ -0,0 +1,47 @@ + + + + +IniDelete + + + + + + + +

IniDelete

+ +

Ç¥ÁØ Æ÷¸ËÀÇ .ini ÆÄÀϷκÎÅÍ °ªÀ» Çϳª »èÁ¦ÇÕ´Ï´Ù.

+ +
IniDelete, Filename, Section [, Key]
+

¸Å°³º¯¼ö

+
+ +
Filename
+

.ini ÆÄÀÏÀÇ À̸§, Àý´ë °æ·Î°¡ ÁöÁ¤µÇ¾î ÀÖÁö ¾ÊÀ¸¸é %A_WorkingDir%¿¡ ÀÖ´Ù°í °£ÁÖÇÕ´Ï´Ù.

+ +
Section
+

.ini ÆÄÀÏÀÇ ¼½¼Ç À̸§. °¢°ýÈ£ ¾È¿¡ ³ªÅ¸³ª´Â Á¦¸ñ ¹®±¸ÀÔ´Ï´Ù. (°¢°ýÈ£´Â ÀÌ ¸Å°³º¯¼ö ¾È¿¡ Æ÷ÇÔ½ÃÅ°Áö ¸¶½Ê½Ã¿À).

+ +
Key
+

.ini ÆÄÀÏÀÇ Å° À̸§. »ý·«Çϸé, Àüü SectionÀÌ »èÁ¦µË´Ï´Ù.

+ +
+

ErrorLevel

+

[v1.1.04+] ÀÌ ¸í·É¾î´Â ½ÇÆнà ¿¹¿Ü¸¦ ´øÁú ¼ö ÀÖ½À´Ï´Ù. ´õ ¸¹Àº Á¤º¸´Â ½ÇÇà½Ã°£ ¿¡·¯¸¦ ÂüÁ¶ÇϽʽÿÀ.

+

ErrorLevelÀº ¹®Á¦°¡ ÀÖÀ¸¸é 1·Î ¼³Á¤µË´Ï´Ù. ±×·¸Áö ¾ÊÀ¸¸é 0ÀÌ ¼³Á¤µË´Ï´Ù

+ +

³íÆò

+

+Ç¥ÁØ ini ÆÄÀÏÀº ¸ð½ÀÀÌ ´ÙÀ½°ú °°½À´Ï´Ù:

+
[SectionName]
+Key=Value
+ +

°ü·Ã Ç׸ñ

+

IniRead, IniWrite, RegDelete

+

¿¹Á¦

+
IniDelete, C:\Temp\myfile.ini, section2, key
+ + + diff --git a/src/docs/commands/IniRead.htm b/src/docs/commands/IniRead.htm new file mode 100644 index 0000000..9124992 --- /dev/null +++ b/src/docs/commands/IniRead.htm @@ -0,0 +1,76 @@ + + + + +IniRead + + + + + + + +

IniRead

+ +

Ç¥ÁØ Çü½ÄÀÇ .ini ÆÄÀϷκÎÅÍ ¼½¼Ç À̸§ÀÇ ¸®½ºÆ® ¶Ç´Â ¼½¼Ç, °ªÀ» ÀнÀ´Ï´Ù.

+ +
IniRead, OutputVar, Filename, Section, Key [, Default]
+IniRead, OutputVarSection, Filename, Section
+IniRead, OutputVarSectionNames, Filename
+
+ +

¸Å°³º¯¼ö

+
+ +
OutputVar
+
+

¿­¶÷µÈ °ªÀ» ÀúÀåÇÒ º¯¼öÀÇ À̸§. º¯¼ö¸¦ ¿­¶÷ÇÒ ¼ö ¾øÀ¸¸é, º¯¼ö´Â Default ¸Å°³º¯¼ö°¡ °¡¸®Å°´Â °ªÀÌ ¼³Á¤µË´Ï´Ù (¾Æ·¡¿¡ ±â¼úÇÔ).

+
+ +
OutputVarSection
+

[AHK_L 57+]: Key ¸Å°³º¯¼ö¸¦ »ý·«Çϸé Àüü ¼½¼ÇÀ» ÀÐÀ» ¼ö ÀÖ½À´Ï´Ù. ÁÖ¼®°ú ºó ÁÙÀº »ý·«µË´Ï´Ù. ¿ÀÁ÷ ¼½¼Ç¿¡¼­ ¾Õ ÂÊ 65,533 ¹®ÀÚ¸¸ ¿­¶÷µË´Ï´Ù.

+ +
OutputVarSectionNames
+

[AHK_L 57+]: Key¿Í Section ¸Å°³º¯¼ö¸¦ ¸ðµÎ »ý·«ÇÏ¸é ¼½¼Ç À̸§À» ¶óÀÎÇǵå·Î (`n) ±¸ºÐÇÑ ¸®½ºÆ®¸¦ ¿­¶÷ÇÒ ¼ö ÀÖ½À´Ï´Ù.

+ +
Filename
+

.ini ÆÄÀÏÀÇ À̸§, Àý´ë °æ·Î¸¦ ÁöÁ¤ÇÏÁö ¾ÊÀ¸¸é %A_WorkingDir%¿¡ ÀÖ´Ù°í °£Áֵ˴ϴÙ.

+ +
Section
+

.ini ÆÄÀÏ¿¡ ÀÖ´Â ¼½¼Ç À̸§, °¢ °ýÈ£ ¾È¿¡ ³ªÅ¸³ª´Â Á¦¸ñ ¹®±¸ (ÀÌ ¸Å°³º¯¼ö¿¡ °¢°ýÈ£´Â Æ÷ÇÔµÇÁö ¾Ê½À´Ï´Ù).

+ +
Key
+

.ini ÆÄÀÏ¿¡ ÀÖ´Â Å° À̸§.

+ +
Default
+

¿äûµÈ Å°°¡ ¹ß°ßµÇÁö ¾ÊÀ¸¸é OutputVar¿¡ ÀúÀåÇÒ °ª. »ý·«µÇ¸é, ´Ü¾î ERROR°¡ ±âº»°ªÀÔ´Ï´Ù. ºó °ª (ºó ¹®ÀÚ¿­)À» ÀúÀåÇÏ·Á¸é, %A_Space%¸¦ ÁöÁ¤ÇϽʽÿÀ.

+

[AHK_L 57+]: Key°¡ »ý·«µÇ¸é ÀÌ ¸Å°³º¯¼ö´Â »ç¿ëµÇÁö ¾Ê½À´Ï´Ù.

+
+ +
+

ErrorLevel

+

+ErrorLevel´Â ÀÌ ¸í·É¾î·Î ¼³Á¤µÇÁö ¾Ê½À´Ï´Ù. ¹®Á¦°¡ ÀÖ¾ú´Ù¸é, OutputVar¿¡´Â À§¿¡ ±â¼úÇÑ ¹Ù¿Í °°ÀÌ Default °ªÀÌ ¼³Á¤µË´Ï´Ù.

+ +

³íÆò

+

+¿î¿µ üÁ¦´Â ÀÚµ¿À¸·Î ¿­¶÷µÈ ¹®ÀÚ¿­¿¡¼­ ¾Õ µÚ ½ºÆäÀ̽º/ÅÇÀ» »ý·«ÇÕ´Ï´Ù. À̸¦ ¹æÁöÇÏ·Á¸é, ¹®ÀÚ¿­À» Ȭµû¿ÈÇ¥ ¶Ç´Â °ãµû¿ÈÇ¥·Î µÑ·¯ ½Î½Ê½Ã¿À. °¡Àå ¹Ù±ùÂÊ È¬µû¿ÈÇ¥ ¶Ç´Â °ãµû¿ÈÇ¥µµ »ý·«µË´Ï´Ù. ±×·¯³ª µû¿ÈÇ¥ ¾ÈÀÇ ½ºÆäÀ̽º´Â À¯ÁöµË´Ï´Ù.

+

+65,535 ¹®ÀÚº¸´Ù ±ä °ªÀº °á°ú°¡ ÀÏ°ü¼ºÀÌ ¾øÀ» °¡´É¼ºÀÌ ³ô½À´Ï´Ù.

+

Ç¥ÁØ ini ÆÄÀÏÀÇ ¸ð½ÀÀº ´ÙÀ½°ú °°½À´Ï´Ù:

+
[SectionName]
+Key=Value
+

+À¯´ÏÄÚµå: IniRead¿Í IniWrite´Â ¿ÜºÎ ÇÔ¼ö GetPrivateProfileString¿Í WritePrivateProfileString¿¡ ÀÇÁ¸ÇØ °ªÀ» ÀÐ°í ¾¹´Ï´Ù. ÀÌ·± ÇÔ¼öµéÀº À¯´ÏÄڵ带 UTF-16 ÆÄÀϸ¸ Áö¿øÇÕ´Ï´Ù; ´Ù¸¥ ¸ðµç ÆÄÀÏÀº ½Ã½ºÅÛÀÇ ±âº» ANSI ÄÚµå ÆäÀÌÁö¸¦ »ç¿ëÇÑ´Ù°í °£Áֵ˴ϴÙ.

+ +

°ü·Ã Ç׸ñ

+

+IniDelete, IniWrite, RegRead, ÆÄÀÏ-Àбâ ȸµ¹ÀÌ, FileRead

+ +

¿¹Á¦

+ +
IniRead, OutputVar, C:\Temp\myfile.ini, section2, key
+MsgBox, °ªÀº %OutputVar%ÀÔ´Ï´Ù.
+ + + diff --git a/src/docs/commands/IniWrite.htm b/src/docs/commands/IniWrite.htm new file mode 100644 index 0000000..f8eb3af --- /dev/null +++ b/src/docs/commands/IniWrite.htm @@ -0,0 +1,73 @@ + + + + +IniWrite + + + + + + + +

IniWrite

+ +

°ªÀ̳ª ¼½¼ÇÀ» Ç¥ÁØ Çü½ÄÀÇ .ini ÆÄÀÏ¿¡ ¾¹´Ï´Ù.

+ +
IniWrite, Value, Filename, Section, Key
+IniWrite, Pairs, Filename, Section
+ +

¸Å°³º¯¼ö

+
+ +
Value
+
+

KeyÀÇ µîÈ£ »çÀÎ (=)ÀÇ ¿À¸¥ÂÊ¿¡ ¾º¿©Áú ¹®ÀÚ¿­À̳ª ¼ýÀÚ.

+

ÅؽºÆ®°¡ ±æ¸é, ¿©·¯ ªÀº ÁÙ·Î ÀÚ¸¦ ¼ö ÀÖ½À´Ï´Ù. °è¼Ó ¼½¼ÇÀ» »ç¿ëÇÏ¸é µÇ´Âµ¥, ÀÌ·¸°Ô ÇÏ¸é °¡µ¶¼º°ú À¯Áö°ü¸®¼ºÀÌ Çâ»óµË´Ï´Ù.

+
+ +
Pairs
+
+

[AHK_L 57+]: .ini ÆÄÀÏ¿¡ ¾µ ¼½¼ÇÀÇ ¿ÏÀüÇÑ ³»¿ë, [SectionName] Çì´õ´Â Á¦¿Ü. Key´Â »ý·«ÇØ¾ß ÇÕ´Ï´Ù. PairsÀº ºó ÁÙÀÌ µé¾î ÀÖÀ¸¸é ¾È µË´Ï´Ù. ¼½¼ÇÀÌ ÀÌ¹Ì Á¸ÀçÇϸé, ¸¶Áö¸· Å°=°ª ½Ö±îÁö ¸ðÁ¶¸® µ¤¾î¾²±â µË´Ï´Ù. Pairs¿¡´Â µîÈ£ »çÀÎ (=) ¾ø´Â ÁÙÀÌ µé¾î ÀÖÀ» ¼ö ÀÖÁö¸¸, ÀÌ·¸°Ô µÇ¸é °á°ú´Â ÀÏ°ü¼ºÀÌ ¾ø½À´Ï´Ù. ÁÖ¼®À» ÆÄÀÏ¿¡ ¾µ ¼ö ÀÖÁö¸¸, IniReadÀÌ ´Ù½Ã ÀÐÀ» ¶§ ´Ù °È¾î³» ¹ö¸³´Ï´Ù.

+
+ +
Filename
+

.ini ÆÄÀÏÀÇ À̸§, Àý´ë °æ·Î¸¦ ÁöÁ¤ÇÏÁö ¾ÊÀ¸¸é %A_WorkingDir%¿¡ ÀÖ´Ù°í °£Áֵ˴ϴÙ.

+ +
Section
+

.ini ÆÄÀÏ¿¡ ÀÖ´Â ¼½¼ÇÀÇ À̸§, °¢ °ýÈ£ ¾È¿¡ ³ªÅ¸³ª´Â Á¦¸ñ ¹®±¸ÀÔ´Ï´Ù (ÀÌ ¸Å°³º¯¼ö¿¡ °¢°ýÈ£´Â Æ÷ÇÔÇÏÁö ¾Ê½À´Ï´Ù).

+ +
Key
+

.ini ÆÄÀÏ¿¡ ÀÖ´Â Å° À̸§.

+ +
+

ErrorLevel

+

+[v1.1.04+] ÀÌ ¸í·É¾î´Â ½ÇÆнà ¿¹¿Ü¸¦ ´øÁú ¼ö ÀÖ½À´Ï´Ù. ´õ ÀÚ¼¼ÇÑ Á¤º¸´Â ½ÇÇà½Ã°£ ¿¡·¯¸¦ ÂüÁ¶ÇϽʽÿÀ.

+

ErrorLevelÀº ¹®Á¦°¡ ÀÖ¾úÀ¸¸é 1 ¾ø¾úÀ¸¸é 0ÀÌ ¼³Á¤µË´Ï´Ù.

+ +

³íÆò

+

+65,535 ¹®ÀÚ°¡ ³Ñ´Â °ªÀ» ÆÄÀÏ¿¡ ¾µ ¼ö´Â ÀÖÁö¸¸, ±× °á°ú´Â ÀÏ°ü¼ºÀÌ ¾øÀ¸¹Ç·Î º¸Åë IniRead ¶Ç´Â ´Ù¸¥ ¾îÇø®ÄÉÀ̼ǿ¡¼­ ¿Ã¹Ù¸£°Ô ÀÐ¾î µéÀÏ ¼ö ¾ø½À´Ï´Ù.

+ +

Ç¥ÁØ ini ÆÄÀÏÀÇ ¸ð½ÀÀº ´ÙÀ½°ú °°½À´Ï´Ù:

+ +
[SectionName]
+Key=Value
+

+»õ ÆÄÀÏÀº AutoHotkey ¹öÀü¿¡ µû¶ó ½Ã½ºÅÛÀÇ ±âº» ANSI ÄÚµåÆäÀÌÁö ¶Ç´Â UTF-16À¸·Î »ý¼ºµË´Ï´Ù. UTF-16 ÆÄÀÏÀº ºó ÁÙ·Î ½ÃÀÛÇÏ´Â µí º¸ÀÏ ¼ö ÀÖ½À´Ï´Ù. ù ÁÙ¿¡ UTF-16 ¹ÙÀÌÆ® ¼ø¼­ Ç¥½ÄÀÌ µé¾î Àֱ⠶§¹®ÀÔ´Ï´Ù. ¿ìȸåÀº ¾Æ·¡¸¦ ÂüÁ¶ÇϽʽÿÀ.

+

+ +À¯´ÏÄÚµå: IniRead¿Í IniWrite´Â ¿ÜºÎ ÇÔ¼ö GetPrivateProfileString¿Í WritePrivateProfileString¿¡ ÀÇÁ¸ÇÏ¿© °ªÀ» ÀÐ°í ¾¹´Ï´Ù. ÀÌ ÇÔ¼öµéÀº À¯´ÏÄڵ带 ¿ÀÁ÷ UTF-16 ÆÄÀϸ¸ Áö¿øÇÕ´Ï´Ù; ´Ù¸¥ ¸ðµç ÆÄÀÏÀº ½Ã½ºÅÛÀÇ ±âº» ANSI ÄÚµå ÆäÀÌÁö¸¦ »ç¿ëÇÑ´Ù°í °£ÁÖÇÕ´Ï´Ù. À¯´ÏÄÚµå ½ºÅ©¸³Æ®¿¡¼­, IniWriteÀº °¢ »õ ÆÄÀÏ¿¡ UTF-16À» »ç¿ëÇÕ´Ï´Ù. ÀÌ°Ô ½È´Ù¸é, IniWrite¸¦ È£ÃâÇϱâ Àü¿¡ ÆÄÀÏÀÌ Á¸ÀçÇÏ´ÂÁö ¸ÕÀú È®ÀÎÇϽʽÿÀ. ¿¹¸¦ µé¾î:

+ +
FileAppend,, NonUnicode.ini, CP0 ; ¸¶Áö¸· ¸Å°³º¯¼ö´Â ´ëºÎºÐÀÇ °æ¿ì ¼±ÅÃÀûÀÔ´Ï´Ù.
+ +

°ü·Ã Ç׸ñ

+

IniDelete, IniRead, RegWrite

+ +

¿¹Á¦

+ +
IniWrite, ÀÌ°ÍÀÌ »õ °ªÀÔ´Ï´Ù, C:\Temp\myfile.ini, section2, key
+ + + diff --git a/src/docs/commands/Input.htm b/src/docs/commands/Input.htm new file mode 100644 index 0000000..394d569 --- /dev/null +++ b/src/docs/commands/Input.htm @@ -0,0 +1,177 @@ + + + + +Input + + + + + + + +

Input

+ +

»ç¿ëÀÚ°¡ ¹®ÀÚ¸¦ ŸÀÚÇϱ⸦ ±â´Ù¸³´Ï´Ù.

+ +
Input [, OutputVar, Options, EndKeys, MatchList]
+

¸Å°³º¯¼ö

+
+ +
OutputVar
+

»ç¿ëÀÚ°¡ ÀÔ·ÂÇÑ ÅؽºÆ®¸¦ ÀúÀåÇÒ º¯¼öÀÇ À̸§ (±âº»°ªÀ¸·Î, ÀÎÀ§Àû ÀԷµµ ³ªÆ÷µË´Ï´Ù).

+

+ ÀÌ ¸Å°³º¯¼ö ±×¸®°í ´Ù¸¥ ¸Å°³º¯¼öµéÀÌ »ý·«µÇ¸é, ¶Ç´Ù¸¥ ¾²·¹µå¿¡¼­ ÁøÇà ÁßÀÎ InputÀÌ Áï½Ã Á¾·áµË´Ï´Ù. ±×¸®°í ±×ÀÇ ErrorLevelÀº ´Ü¾î NewInputÀÌ ¼³Á¤µË´Ï´Ù. ´ëÁ¶ÀûÀ¸·Î, ÇöÀç ¸í·É¾îÀÇ ErrorLevelÀº ÀÌÀü InputÀÌ Á¾·áµÇ¾úÀ¸¸é 0ÀÌ ¼³Á¤µË´Ï´Ù. ¶Ç´Â Á¾·áÇÒ ÀÌÀü InputÀÌ ¾ø¾úÀ¸¸é 1ÀÌ ¼³Á¤µË´Ï´Ù.

+

+ OutputVar´Â »ç½Ç»ó Å°´­¸²À» ÀúÀåÇÏÁö ¾Ê½À´Ï´Ù. ´ë½Å¿¡, Å°´­¸²À¸·Î »ý»êµÇ´Â ¹®ÀÚµéÀ» È°¼º âÀÇ Å°º¸µå ·¹À̾ƿô/¾ð¾î¿¡ ¸Â°Ô ÀúÀåÇÕ´Ï´Ù. °á°úÀûÀ¸·Î, ¹®ÀÚ¸¦ »ý»êÇÏÁö ¾Ê´Â Å°´­¸²Àº (¿¹¸¦ µé¾î PageUp ±×¸®°í Escape) ÀúÀåµÇÁö ¾Ê½À´Ï´Ù (±×·¸Áö¸¸ ¾Æ·¡ÀÇ EndKeys ¸Å°³º¯¼ö¸¦ ÅëÇÏ¿© ÀÎÁöÇÒ ¼ö ÀÖ½À´Ï´Ù).

+

TAB (`t)°ú °°Àº °ø¹é ¹®ÀÚµéÀº ¹®ÀÚ ±×´ë·Î ÀúÀåµË´Ï´Ù. ENTER´Â ¶óÀÎÇǵå (`n)·Î ÀúÀåµË´Ï´Ù.

+ +
Options
+

´Ù¸¥ ±âÈ£·Î ±¸¼ºµÇ´Â ¹®ÀÚ¿­ (¼ø¼­¿¡ »ó°ü¾øÀÌ, »çÀÌ¿¡ ¼±ÅÃÀûÀ¸·Î ½ºÆäÀ̽º Çã¿ë):

+

B: ¹é½ºÆäÀ̽º´Â ¹«½ÃµË´Ï´Ù. º¸Åë, Input µ¿¾È¿¡ ¹é½ºÆäÀ̽º¸¦ ´©¸£¸é ÃÖ±Ù¿¡ ´­¸° ¹®ÀÚ°¡ ¹®ÀÚ¿­ ³¡À¸·ÎºÎÅÍ Á¦°ÅµË´Ï´Ù. ÁÖÀÇ: (ÆíÁý±â¿¡¼­) ÀÔ·Â ÅؽºÆ®°¡ º¸ÀÌ°í ±×¸®°í È­»ìÇ¥ Å°³ª ±âŸ ¼ö´ÜÀ» »ç¿ëÇÏ¿© ±× ¾ÈÀ» Ç×ÇØÇϸé, ¹é½ºÆäÀ̽º´Â ij·µ ¾ÕÀÇ ¹®ÀÚ°¡ ¾Æ´Ï¶ó ¸¶Áö¸· ¹®ÀÚ¸¦ Á¦°ÅÇØ ¹ö¸³´Ï´Ù (»ðÀÔ ÁöÁ¡).

+

C: ´ë¼Ò¹®ÀÚ ±¸ºÐ. º¸Åë, MatchList´Â ´ë¼Ò¹®ÀÚ¸¦ ±¸ºÐÇÏÁö ¾Ê½À´Ï´Ù (1.0.43.03 ÀÌÀü¿¡¼­´Â ¿ÀÁ÷ A-Z ±âÈ£¸¸ ´ë¼Ò¹®ÀÚ·Î º¯È­µÈ´Ù°í ÀÎÁöÇÕ´Ï´Ù. ü/Ü¿Í °°Àº ±âÈ£´Â ÀÎÁöÇÏÁö ¾Ê½À´Ï´Ù).

+

I: ¿ÀÅäÇÖÅ° ½ºÅ©¸³Æ®°¡ »ý»êÇÏ´Â ÀÔ·ÂÀ» ¹«½ÃÇÕ´Ï´Ù. ¿¹¸¦ µé¾î SendEvent ¸í·É¾î. ±×·¸Áö¸¸ SendInput ±×¸®°í SendPlay ¹æ¹ýÀº ÀÌ ¼³Á¤¿¡ »ó°ü ¾øÀÌ ¾ðÁ¦³ª ¹«½ÃµË´Ï´Ù.

+

L: ±æÀÌ Á¦ÇÑ (¿¹, L5). ÃÖ´ë·Î Çã¿ëµÇ´Â ÀÔ·Â ±æÀÌ. ÅؽºÆ®°¡ ÀÌ ±æÀÌ¿¡ µµ´ÞÇϸé, InputÀº Á¾·áÇÏ°í ErrorLevelÀº ´Ü¾î Max°¡ ¼³Á¤µË´Ï´Ù. ´Ü, ÅؽºÆ®°¡ MatchList ¹®±¸ Áß Çϳª¿¡ ºÎÇÕÇÏ´Â °æ¿ì´Â ¿¹¿ÜÀÔ´Ï´Ù. ÀÌ °æ¿ì ErrorLevelÀº ´Ü¾î Match°¡ ¼³Á¤µË´Ï´Ù. ±æÀ̸¦ ÁöÁ¤ÇÏÁö ¾ÊÀ¸¸é, 16383 ±æÀÌ·Î Á¦Çѵ˴ϴÙ. ÀÌ °ªÀº Àý´ë ÃÖ´ëÄ¡À̱⵵ ÇÕ´Ï´Ù.

+

M: Control-AºÎÅÍ Control-Z±îÁöÀÇ º¯Çü Å°´­¸²Àº ½ÇÁ¦ ASCII ¹®ÀÚ°¡±×¿¡ »óÀÀÇÑ´Ù¸é ÀÎÁöµÇ°í º¯È¯µË´Ï´Ù. ´ÙÀ½ ¿¹Á¦¸¦ ¿¬±¸ÇØ º¸½Ê½Ã¿À. Control-C¸¦ ÀÎÁöÇÕ´Ï´Ù:

+ +
Transform, CtrlC, Chr, 3 ; Ctrl-C¿¡ ´ëÇÑ ¹®ÀÚ¸¦ CtrlC º¯¼ö¿¡ ÀúÀåÇÕ´Ï´Ù.
+Input, OutputVar, L1 M
+if OutputVar = %CtrlC%
+    MsgBox, Control-C¸¦ ´­·¶½À´Ï´Ù.
+ExitApp
+

ÁÖÀÇ: Ctrl-AºÎÅÍ Ctrl-Z±îÁöÀÇ ¹®ÀÚ´Â Chr(1)ºÎÅÍ Chr(26)¿¡ »óÀÀÇÕ´Ï´Ù. ¶ÇÇÑ, M ¿É¼Ç ¶§¹®¿¡ Ctrl-LeftArrow¿Í °°ÀÌ ¾î¶² Å°º¸µå ´ÜÃàÅ°´Â InputÀÌ ÁøÇà ÁßÀÎ µ¿¾È À߸øµÈ ÇàÀ§¸¦ ÇÒ ¼ö ÀÖ½À´Ï´Ù.

+

+ T: Timeout (¿¹, T3). ÀÔ·ÂÀ» Á¾·áÇÏ°í ErrorLevel¿¡ ´Ü¾î TimeoutÀ» ¼³Á¤Çϱâ Àü¿¡ ±â´Ù¸± ÃÊÀÇ °³¼ö. ÀÔ·Â ½Ã°£ÀÌ ÃÊ°úÇϸé, OutputVar´Â »ç¿ëÀÚ°¡ ±× µ¿¾È ŸÀÚÇÑ ¸ðµç °ÍµéÀÌ ¼³Á¤µË´Ï´Ù. ÀÌ °ªÀº ºÎµ¿ ¼Ò¼öÁ¡ ¼öÀÏ ¼ö ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î 2.5.

+

V: Visible. º¸Åë, »ç¿ëÀÚÀÇ ÀÔ·ÂÀ» ¸·½À´Ï´Ù (½Ã½ºÅÛÀ¸·ÎºÎÅÍ ¼û½À´Ï´Ù). ÀÌ ¿É¼ÇÀ» »ç¿ëÇÏ¸é »ç¿ëÀÚÀÇ Å°´­¸²À» È°¼º â¿¡ Àü´ÞÇÒ ¼ö ÀÖ½À´Ï´Ù.

+

*: Wildcard (¾Æ¹«µ¥³ª ãÀ½). º¸Åë, »ç¿ëÀÚ°¡ ŸÀÚÇÑ °ÍÀº Á¤È®ÇÏ°Ô MatchList ¹®±¸ Áß Çϳª¿¡ ºÎÇÕÇØ¾ß ÀÏÄ¡°¡ ÀϾ´Ï´Ù. ÀÌ ¿É¼ÇÀ» »ç¿ëÇϸé ÀÔ·Â Å×½ºÆ®ÀÇ Àüü ±æÀ̸¦ °Ë»öÇؼ­ ºÎÇÕÀ» Á» ´õ ¸¹ÀÌ Ã£À» ¼ö ÀÖ½À´Ï´Ù.

+

E [v1.1.20+]: Å° Äڵ尡 ¾Æ´Ï¶ó ¹®ÀÚ ÄÚµå·Î ÇÑ-¹®ÀÚ Á¾·á Å°¸¦ ó¸®ÇÕ´Ï´Ù. + + ÀÌ·¸°Ô Çϸé È°¼º âÀÇ Å°º¸µå ·¹À̾ƿôÀÌ ½ºÅ©¸³Æ®ÀÇ Å°º¸µå ·¹À̾ƿô°ú ´Ù¸¦ °æ¿ì °á°ú°¡ ´õ ÀÏ°ü¼ºÀÌ ÀÖ½À´Ï´Ù. + + ¶ÇÇÑ ½ÇÁ¦·Î ÁÖ¾îÁø Á¾·á ¹®ÀÚ¸¦ »ý¼ºÇÏÁö ¾Ê´Â Å° Á¶ÇÕÀÌ ÀÔ·ÂÀ» Á¾·áÇÏÁö ¸øÇϵµ·Ï ¸·½À´Ï´Ù; + + ¿¹¸¦ µé¾î, @°¡ Á¾·á Å°À̸é, (E ¿É¼ÇÀÌ »ç¿ëµÉ °æ¿ì) US ·¹À̾ƿô¿¡¼­ Shift+2´Â Ã˹ߵÇÁö¸¸ Ctrl+Shift+2´Â Ã˹ߵÇÁö ¾Ê½À´Ï´Ù. C ¿É¼Çµµ »ç¿ëµÈ´Ù¸é, Á¾·á Å°´Â ´ë¼Ò¹®ÀÚ¸¦ ±¸ºÐÇÕ´Ï´Ù.

+
+ +
EndKeys
+

Å°·Î ±¸¼ºµÈ ¸®½ºÆ®, ±× Áß¿¡ Çϳª°¡ ´­¸®¸é ÀÔ·ÂÀ» Á¾·áÇÕ´Ï´Ù (EndKey ÀÚü´Â OutputVar¿¡ ¾º¿©ÁöÁö ¾Ê½À´Ï´Ù). ÀÔ·ÂÀÌ ÀÌ·± ½ÄÀ¸·Î Á¾·áµÉ ¶§, ErrorLevelÀº ´Ü¾î EndKey ´ÙÀ½¿¡ ½ÖÁ¡ ±×¸®°í EndKeyÀ̸§ÀÌ ¼³Á¤µË´Ï´Ù. ¿¹¸¦ µé¾î: EndKey:., EndKey:Escape.

+

+ EndKey ¸®½ºÆ®´Â Send ¸í·É¾î¿Í ºñ½ÁÇÑ Çü½ÄÀ» »ç¿ëÇÕ´Ï´Ù. ¿¹¸¦ µé¾î, {Enter}.{Esc}¸¦ ÁöÁ¤Çϸé ENTER, period (.), ¶Ç´Â ESCAPE°¡ ÀÔ·ÂÀ» Á¾·á½Ãŵ´Ï´Ù. È°°ýÈ£ ÀÚü¸¦ Á¾·á Å°·Î »ç¿ëÇÏ·Á¸é, {{} ±×¸®°í/¶Ç´Â {}}À» ÁöÁ¤ÇϽʽÿÀ.

+

+ Control, Alt, ¶Ç´Â Shift¸¦ Á¾·á Å°·Î »ç¿ëÇÏ·Á¸é, ±× Å°ÀÇ Á߸³ ¹öÀüÀÌ ¾Æ´Ï¶ó, ÁÂ/¿ì ¹öÀüÀ» »ç¿ëÇϽʽÿÀ. + ¿¹¸¦ µé¾î, {Control}°¡ ¾Æ´Ï¶ó {LControl}{RControl}·Î ÁöÁ¤ÇϽʽÿÀ.

+

+ Control-C (^c)¿Í °°Àº ¼ö½Ä Å°´Â Áö¿øµÇÁö ¾ÊÁö¸¸, ½¬ÇÁÆ® Å°¸¦ ÇÔ²² ´­·¯¾ß ÇÏ´Â ´Ù¸¥ ¹®ÀÚµéÀº -- Áï, ?!:@&{}¿Í °°Àº ±¸µÎÁ¡ -- v1.0.14+ºÎÅÍ Áö¿øµË´Ï´Ù. + ´Ù¸¥ ¹®ÀÚµéÀº v1.1.20+ºÎÅÍ À§¿¡ ±â¼úµÈ E ¿É¼ÇÀ¸·Î Áö¿øÇÕ´Ï´Ù. .

+

+ {vkFF}¿Í °°ÀÌ ¸í½ÃÀûÀÎ °¡»ó Å° º¸µåµµ ¿ª½Ã ÁöÁ¤ÇÒ ¼ö ÀÖ½À´Ï´Ù. ÀÌ°ÍÀº Å°¿¡ À̸§µµ ¾ø°í °Ç³×Áú ¶§ º¸ÀÌ´Â ¹®ÀÚµµ »ý»êÇÏÁö ¾Ê´Â ¾ÆÁÖ Èñ±ÍÇÑ °æ¿ì¿¡ À¯¿ëÇÕ´Ï´Ù. ±×ÀÇ °¡»ó Å° ÄÚµå´Â ´ÙÀ½°ú °°ÀÌ Á¾·áÇÒ ¼ö ÀÖ½À´Ï´Ù. ¾Æ·¡ Å° ¸®½ºÆ® ÆäÀÌÁö¿¡ ÀÖ´Â ´Ü°è¸¦ µû¸£½Ê½Ã¿À.

+
+ +
MatchList
+

Å° ¹®±¸¸¦ ½°Ç¥·Î-°¡¸¥ ¸®½ºÆ®. ÀÌ ¹®±¸¿¡ ºÎÇÕÇϸé InputÀº Á¾·áµË´Ï´Ù (±× °æ¿ì ErrorLevelÀº ´Ü¾î Match°¡ ¼³Á¤µË´Ï´Ù). »ç¿ëÀÚ°¡ ŸÀÚÇÑ ¸ðµç °ÍÀº Á¤È®ÇÏ°Ô ÀÌ ¹®±¸ Áß Çϳª¿¡ ºÎÇÕÇØ¾ß ÀÏÄ¡°¡ ÀϾ´Ï´Ù (´Ü, * ¿É¼ÇÀÌ ÀÖ´Â °æ¿ì´Â ¿¹¿ÜÀÔ´Ï´Ù). °Ô´Ù°¡, ±¸ºÐ ½°Ç¥ µÑ·¹¿¡ ÀÖ´Â ½ºÆäÀ̽º³ª ÅÇÀº Àǹ̰¡ ÀÖ½À´Ï´Ù. Áï, ºÎÇÕ ¹®ÀÚ¿­ÀÇ ÀϺΰ¡ µË´Ï´Ù. ¿¹¸¦ µé¾î, MatchList°¡ "ABC , XYZ "À̶ó¸é, »ç¿ëÀÚ°¡ ABC µÚ¿¡ ¶Ç´Â XYZ ¾Õ¿¡ ½ºÆäÀ̽º¸¦ ŸÀÚÇØ¾ß ºÎÇÕÀÌ ÀϾ´Ï´Ù.

+

¿¬¼ÓÀûÀ¸·Î ½°Ç¥ µÎ °³´Â ¹®ÀÚ ±×´ë·ÎÀÇ ½°Ç¥ Çϳª°¡ °á°úÀÔ´Ï´Ù. ¿¹¸¦ µé¾î, ´ÙÀ½Àº ¹®ÀÚ¿­ÀÇ ³¡¿¡ ¹®ÀÚ ±×´ë·ÎÀÇ ½°Ç¥ Çϳª¸¦ »ý»êÇÕ´Ï´Ù: "string1,,,string2". ºñ½ÁÇÏ°Ô, ´ÙÀ½ ¸®½ºÆ®´Â ¿ÀÁ÷ ¾È¿¡ ¹®ÀÚ ±×´ë·ÎÀÇ ½±Ç¥¸¦ °¡Áø ÇϳªÀÇ Ç׸ñ¸¸ ´ã½À´Ï´Ù: "single,,item".

+

+ MatchList ¾ÈÀÇ Ç׸ñµéÀº °³º°ÀûÀ¸·Î Ãë±ÞÇÏÁö ¾Ê±â ¶§¹®¿¡, ÀÌ ¸®½ºÆ®¸¦ ¿ÏÀüÈ÷ ÇÑ º¯¼ö ¾È¿¡ ´ãÀ» ¼ö ÀÖ½À´Ï´Ù. ½ÇÁ¦·Î, ±×ÀÇ ±æÀÌ°¡ 16383À» ÃÊ°úÇϸé ÀüºÎ ¶Ç´Â ÀϺθ¦ º¯¼ö¿¡ ´ã¾Æ¾ß ÇÕ´Ï´Ù. ½ºÅ©¸³Æ® ÁÙÀÇ ÃÖ´ë ±æÀÌÀ̱⠶§¹®ÀÔ´Ï´Ù. +¿¹¸¦ µé¾î, MatchList´Â %List1%,%List2%,%List3%À¸·Î ±¸¼ºµÉ ¼ö ÀÖ½À´Ï´Ù -- ¿©±â¿¡¼­ °¢ º¯¼ö´Â ºÎÇÕ ¹®±¸ÀÇ ¹æ´ëÇÑ ºÎ-¸®½ºÆ®¸¦ ´ã°í ÀÖ½À´Ï´Ù.

+
+ +
+ +

ErrorLevel

+

[v1.1.04+] ÀÌ ¸í·É¾î´Â ¾Æ¹« ¸Å°³º¯¼ö ¾øÀÌ È£ÃâµÇ¾ú´Âµ¥ InputÀÌ ÁøÇà ÁßÀÌÁö ¾ÊÀ¸¸é ¿¹¿Ü¸¦ ´øÁú ¼ö ÀÖ½À´Ï´Ù. ´õ ÀÚ¼¼ÇÑ Á¤º¸´Â ½ÇÇà½Ã°£ ¿¡·¯¸¦ ÂüÁ¶ÇϽʽÿÀ.

+ + + + + + + + + + + + + + + + + + + + + + + + + +

1 ¶Ç´Â 0

ÀÌ ¸í·É¾î°¡ ¸Å°³º¯¼ö ¾øÀÌ »ç¿ëµÉ ¶§¸¶´Ù, ErrorLevelÀº ÀÌÀü ÀÔ·ÂÀÌ ¼º°øÀûÀ¸·Î Á¾·áÇϸé 0ÀÌ ¼³Á¤µÇ°í, ¾Æ¹« Inputµµ ÁøÇàµÇÁö ¾Ê°í ÀÖÀ¸¸é 1ÀÌ ¼³Á¤µË´Ï´Ù.

NewInputInputÀÌ Input ¸í·É¾î¸¦ »ç¿ëÇÏ´Â ¶Ç´Ù¸¥ ¾²·¹µå¿¡ ÀÇÇÏ¿© ÀÎÅÍ·´Æ® µÇ¾ú½À´Ï´Ù.
MaxInputÀÌ Çã¿ëµÈ ÃÖ´ë ±æÀÌ¿¡ µµ´ÞÇÏ¿´½À´Ï´Ù. ±×¸®°í MatchList ¾ÈÀÇ Ç׸ñ¿¡ ºÎÇÕÇÏÁö ¸øÇß½À´Ï´Ù.
TimeoutInput ½Ã°£ Á¦ÇÑ ÃÊ°ú.
MatchInputÀÌ MatchList ¾ÈÀÇ Ç׸ñ Áß Çϳª¿¡ ºÎÇÕÇÕ´Ï´Ù.
EndKey:name +

EndKeys Áß Çϳª°¡ ´­·È½À´Ï´Ù. InputÀ» Á¾·áÇÕ´Ï´Ù. ÀÌ °æ¿ì, ErrorLevel¿¡ ´Ü¾î EndKey°¡ ´ã±â°í ´ÙÀ½¿¡ ½ÖÁ¡ Çϳª¿Í È°°ýÈ£ ¾øÀÌ Á¾·á Å°ÀÇ À̸§ÀÌ µû¶ó¿É´Ï´Ù. ¿¹, "EndKey:Enter", "EndKey:Escape", µîµî.

+

+ nameÀÌ Å°ÀÇ "Á¤±ÔÈ­ µÈ" À̸§ÀÓÀ» ÁÖ¸ñÇϽʽÿÀ. EndKeys¿¡ ¾î¶»°Ô ¾º¿©Á® ÀÖ´ÂÁö´Â »ó°üÀÌ ¾ø½À´Ï´Ù. ¿¹¸¦ µé¾î, {Esc} ±×¸®°í {vk1B}´Â ¸ðµÎ "ErrorLevel:Escape"¸¦ »ý»êÇÕ´Ï´Ù. GetKeyName()¸¦ »ç¿ëÇϸé Á¤±ÔÈ­µÈ À̸§À» ¿­¶÷ÇÒ ¼ö ÀÖ½À´Ï´Ù.

+

+ E ¿É¼ÇÀÌ »ç¿ëµÇ¾ú´Ù¸é, nameÀº ŸÀÚµÇ¾î µé¾î ¿Â ½ÇÁ¦ ¹®ÀÚÀÔ´Ï´Ù. ±×·¸Áö ¾ÊÀ¸¸é, Å° À̸§Àº ½ºÅ©¸³Æ®ÀÇ È°¼º Å°º¸µå ·¹À̾ƿô¿¡ µû¶ó °áÁ¤µË´Ï´Ù.

+

+ [v1.1.20] ÀÌÀü¿¡¼­, Á¾·á Å°ÀÇ VK Äڵ尡 0x41 (A)ºÎÅÍ 0x5A (Z) ±îÁöÀÇ ¹üÀ§¿¡ ÀÖ´Ù¸é, ErrorLevelÀº º¸Åë ±×¿¡ »óÀÀÇÏ´Â ASCII ¹®ÀÚ¸¦ ´ã¾Ò½À´Ï´Ù. ÇöÀç Å°º¸µå ·¹À̾ƿô¿¡ ¿Ã¹Ù¸¥°¡ ¾Æ´Ñ°¡´Â »ó°üÀÌ ¾ø¾ú½À´Ï´Ù. v1.1.20 ÀÌÈÄ·Î, ¿Ã¹Ù¸¥ ¹®ÀÚ°¡ »ç¿ëµË´Ï´Ù. AºÎÅÍ Z ¹üÀ§ÀÇ ¹®ÀÚ°¡ »ç¿ëµÇ¸é, ÇÏÀ§ ȣȯÀ» À§ÇØ ´ë¹®ÀÚ°¡ »ç¿ëµË´Ï´Ù; ±×·¸Áö ¾ÊÀ¸¸é º¸Åë ¼Ò¹®ÀÚÀÔ´Ï´Ù.

+
+

³íÆò

+

+ InputÀÌ ÀÌ¹Ì ¶Ç´Ù¸¥ ¾²·¹µå¿¡¼­ ÁøÇà ÁßÀÎ µ¿¾È ÀÌ ¸í·É¾î°¡ »ç¿ëµÇ¸é, ±× InputÀº Á¾·áµÇ°í ±×ÀÇ ErrorLevel¿¡ ´Ü¾î NewInputÀÌ ¼³Á¤µË´Ï´Ù. ±× ÀÌÈÄ (¸Å°³º¯¼ö°¡ ÁÖ¾îÁö¸é), »õ InputÀÌ ½ÃÀ۵˴ϴÙ.

+

+InputÀÌ ÁøÇà ÁßÀÎ µ¿¾È¿¡, ¸ÂÃã ¸Þ´º Ç׸ñ°ú ŸÀÌ¸Ó ¼­ºê·çƾ°ú °°Àº »õ ¾²·¹µå¸¦ ¿©ÀüÈ÷ »ý¼ºÇÒ ¼ö ÀÖ½À´Ï´Ù. ºñ½ÁÇÏ°Ô, InputÀÌ º¸¿©µµ Å°º¸µå ÇÖÅ°µµ ¿©ÀüÈ÷ È¿°ú°¡ ÀÖ½À´Ï´Ù. InputÀÌ º¸ÀÌÁö ¾Ê´Â´Ù¸é, ¿ÀÁ÷ °¥°í¸® ÇÖÅ°¸¸ Ã˹߽Ãų ¼ö ÀÖ½À´Ï´Ù.

+

+½ºÅ©¸³Æ®°¡ óÀ½À¸·Î ÀÌ ¸í·É¾î¸¦ »ç¿ëÇÒ ¶§, (¾ÆÁ÷ ¼³Ä¡µÇÁö ¾Ê¾Ò´Ù¸é) Å°º¸µå °¥°í¸®°¡ ¼³Ä¡µË´Ï´Ù. °Ô´Ù°¡, ÀÌ ½ºÅ©¸³Æ®´Â ¿µ¼ÓÀûÀÌ µË´Ï´Ù. Áï, ExitApp¸¦ »ç¿ëÇØ¾ß Á¾·áÇÒ ¼ö ÀÖ´Ù´Â ¶æÀÔ´Ï´Ù. Å°º¸µå °¥°í¸®´Â ´ÙÀ½ Suspend ¸í·É¾î³ª Hotkey ¸í·É¾î¸¦ »ç¿ëÇÒ ¶§±îÁö ¿©ÀüÈ÷ ¼³Ä¡µÇ¾î ÀÖÀ» °ÍÀÔ´Ï´Ù. ±× ¼ø°£ ÇÖÅ°°¡ ÇÖÅ°°¡ ¿ä±¸ÇÏÁö ¾ÊÀ¸¸é Á¦°ÅµË´Ï´Ù.

+

+¿©·¯ ¾ð¾î³ª Å°º¸µå ·¹À̾ƿôÀ» »ç¿ëÇÑ´Ù¸é, InputÀº ½ºÅ©¸³Æ®°¡ ¾Æ´Ï¶ó È°¼º âÀÇ Å°º¸µå ·¹À̾ƿôÀ» »ç¿ëÇÕ´Ï´Ù (InputÀÌ º¸ÀÌ´ÂÁö ¿©ºÎ¿¡ »ó°üÀÌ ¾ø½À´Ï´Ù). ±×·¸Áö¸¸, 1.0.44.03 ÀÌÀüÀº ½ºÅ©¸³Æ® ÀÚ½ÅÀÇ ¶óÀ̾ƿôÀÌ »ç¿ëµË´Ï´Ù.

+

+±×·¸°Ô À¯¿¬ÇÏÁö´Â ¸øÇÏÁö¸¸, ÇÖ½ºÆ®¸µÀÌ ÀϹÝÀûÀ¸·Î Input ¸í·É¾îº¸´Ù ´õ »ç¿ëÇϱ⠽±½À´Ï´Ù.

+ +

°ü·Ã Ç׸ñ

+

KeyWait, ÇÖ½ºÆ®¸µ, InputBox, #InstallKeybdHook, ¾²·¹µå, if var in/contains MatchList

+ +

¿¹Á¦

+ +
; »ç¿ëÀÚ°¡ Å°¸¦ ´©¸£±â¸¦ ±â´Ù¸³´Ï´Ù. º¸ÀÌÁö ¾Ê´Â ¹®ÀÚ¸¦ »ý»êÇÏ´Â Å°µéµµ 
+;  -- ¿¹¸¦ µé¾î ¼ö½Ä Å°, ÇÔ¼ö Å° ±×¸®°í È­»ìÇ¥ Å°µµ --  
+; Á¾·á Å°(end keys)¿¡ ³ª¿­µÇ¹Ç·Î ¿ª½Ã ŽÁöµË´Ï´Ù.
+Input, SingleKey, L1, {LControl}{RControl}{LAlt}{RAlt}{LShift}{RShift}{LWin}{RWin}{AppsKey}{F1}{F2}{F3}{F4}{F5}{F6}{F7}{F8}{F9}{F10}{F11}{F12}{Left}{Right}{Up}{Down}{Home}{End}{PgUp}{PgDn}{Del}{Ins}{BS}{Capslock}{Numlock}{PrintScreen}{Pause}
+

 

+
; ´ÙÀ½Àº ÀÛµ¿ÇÏ´Â ÇÖÅ° ¿¹Á¦ÀÔ´Ï´Ù.
+; ÇÖÅ°¿¡ Æ¿µå (~) Á¢µÎ ½Éº¼ÀÌ ÀÖÀ¸¹Ç·Î, Å° ´­¸²ÀÌ È°¼º â±îÁö ¶Õ°í Àü´ÞµË´Ï´Ù.
+; ±×·¡¼­, ÆíÁý±â ¾È¿¡¼­ [btw¸¦ ŸÀÚÇϸé (¶Ç´Â ±âŸ ´Ù¸¥ ºÎÇÕÇÏ´Â ¹®±¸¸¦ ŸÀÚÇϸé)
+; ½ºÅ©¸³Æ®´Â ÀÚµ¿À¸·Î ¿©·¯ºÐÀÌ ÁöÁ¤ÇÑ ÇàÀ§¸¦ ¼öÇàÇÕ´Ï´Ù.
+; (¿¹¸¦ µé¾î ŸÀÚµÈ ÅؽºÆ®¸¦ ±³Ã¼ÇÕ´Ï´Ù):
+
+~[::
+Input, UserInput, V T5 L4 C, {enter}.{esc}{tab}, btw,otoh,fl,ahk,ca
+if (ErrorLevel = "Max")
+{
+    MsgBox, You entered "%UserInput%", which is the maximum length of text.
+    return
+}
+if (ErrorLevel = "Timeout")
+{
+    MsgBox, You entered "%UserInput%" at which time the input timed out.
+    return
+}
+if (ErrorLevel = "NewInput")
+    return
+If InStr(ErrorLevel, "EndKey:")
+{
+    MsgBox, You entered "%UserInput%" and terminated the input with %ErrorLevel%.
+    return
+}
+; ±×·¸Áö ¾ÊÀ¸¸é, ºÎÇÕÀÌ ¹ß°ßµÇ¾ú½À´Ï´Ù.
+if (UserInput = "btw")
+    Send, {backspace 4}by the way
+else if (UserInput = "otoh")
+    Send, {backspace 5}on the other hand
+else if (UserInput = "fl")
+    Send, {backspace 3}Florida
+else if (UserInput = "ca")
+    Send, {backspace 3}California
+else if (UserInput = "ahk")
+    Run, http://ahkscript.org
+return
+ + + diff --git a/src/docs/commands/InputBox.htm b/src/docs/commands/InputBox.htm new file mode 100644 index 0000000..2d1bb59 --- /dev/null +++ b/src/docs/commands/InputBox.htm @@ -0,0 +1,80 @@ + + + + +InputBox + + + + + + + +

InputBox

+ +

»ç¿ëÀÚ°¡ ¹®ÀÚ¿­À» ÀÔ·ÂÇϵµ·Ï ¿ä±¸ÇÏ´Â ÀÔ·Â ¹Ú½º¸¦ º¸¿©ÁÝ´Ï´Ù.

+ +
InputBox, OutputVar [, Title, Prompt, HIDE, Width, Height, X, Y, Font, Timeout, Default]
+

¸Å°³º¯¼ö

+
+ +
OutputVar
+

»ç¿ëÀÚ°¡ ÀÔ·ÂÇÑ ÅؽºÆ®¸¦ ÀúÀåÇÒ º¯¼öÀÇ À̸§.

+ +
Title
+

ÀÔ·Â ¹Ú½ºÀÇ Á¦¸ñ. ºñ¾î Àְųª »ý·«Çϸé, ½ºÅ©¸³ÀÇ À̸§ÀÌ ±âº»°ªÀÔ´Ï´Ù.

+ +
Prompt
+

ÀÔ·Â ¹Ú½ºÀÇ ÅؽºÆ®, º¸Åë ¾î¶² Á¾·ùÀÇ ÀÔ·ÂÀ» ¿¹»óÇÏ°í ÀÖ´ÂÁö »ç¿ëÀÚ¿¡°Ô º¸¿©ÁÖ´Â ¸Þ½ÃÁöÀÔ´Ï´Ù. Prompt°¡ ±æ¸é, °è¼Ó ¼½¼ÇÀ» ¼ö´ÜÀ¸·Î ÇÏ¿© ´õ ªÀº ÁÙµé·Î ºÐ¸®ÇÒ ¼ö ÀÖ½À´Ï´Ù. ±×·¯¸é °¡µ¶¼º°ú À¯Áö°ü¸®¼ºÀÌ Çâ»óµË´Ï´Ù.

+ +
HIDE
+

ÀÌ ¸Å°³º¯¼ö°¡ ´Ü¾î HIDEÀ̸é, »ç¿ëÀÚÀÇ ÀÔ·ÂÀÌ °¡·ÁÁý´Ï´Ù. Æнº¿öµå¸¦ ÀÔ·ÂÇÒ ¶§ À¯¿ëÇÕ´Ï´Ù.

+ +
Width
+

ÀÌ ¸Å°³º¯¼ö°¡ ºñ¾î Àְųª »ý·«Çϸé, âÀÇ ½ÃÀÛ ³Êºñ´Â 375ÀÔ´Ï´Ù. ÀÌ ¸Å°³º¯¼ö´Â Ç¥Çö½ÄÀÏ ¼ö ÀÖ½À´Ï´Ù.

+ +
Height
+

ÀÌ ¸Å°³º¯¼ö°¡ ºñ¾î Àְųª »ý·«µÇ¸é, âÀÇ ½ÃÀÛ ³Êºñ´Â 189°¡ µË´Ï´Ù. ÀÌ ¸Å°³º¯¼ö´Â Ç¥Çö½ÄÀÏ ¼ö ÀÖ½À´Ï´Ù.

+ +
X, Y
+

âÀÇ X ÁÂÇ¥¿Í Y ÁÂÇ¥ (0,0À» »ç¿ëÇÏ¸é ¹ÙÅÁÈ­¸éÀÇ Á»ó ¸ð¼­¸®·Î À̵¿ÇÕ´Ï´Ù), Ç¥Çö½Ä °¡´É. ÁÂÇ¥°¡ ºñ¾î Àְųª »ý·«Çϸé, ´ëÈ­»óÀÚ´Â ÇØ´ç Â÷¿øÀÇ °¡¿îµ¥¿¡ Á¤·ÄµË´Ï´Ù. ÁÂÇ¥°¡ À½¼öÀÌ¸é ±× Ã¢À» ºÎºÐÀûÀ¸·Î ¹èÄ¡Çϰųª ¿ÏÀüÈ÷ ¹ÙÅÁÈ­¸é ¹ÛÀ¸·Î ¹èÄ¡ÇÒ ¼ö ÀÖ½À´Ï´Ù.

+ +
Font
+

¾ÆÁ÷ ±¸ÇöµÇÁö ¾Ê¾Ò½À´Ï´Ù (ºó ä·Î µÎ½Ê½Ã¿À). ¾ÕÀ¸·Î verdana:8¿Í °°Àº °ÍÀ» ¹Þ°Ô µÉ °ÍÀÔ´Ï´Ù.

+ +
Timeout
+

ÃÊ ´ÜÀ§ ½Ã°£Á¦ÇÑ (¼Ò¼öÁ¡À» Æ÷ÇÔÇÒ ¼ö ÀÖ°í Ç¥Çö½Ä °¡´É). ÀÌ °ªÀÌ 2147483 (24.8 ÀÏ)À» ÃÊ°úÇϸé, 2147483À¸·Î ¼³Á¤µË´Ï´Ù. ½Ã°£Á¦ÇÑÀ» °æ°úÇϸé, InputBox âÀÌ ÀÚµ¿À¸·Î ´ÝÈ÷°í ErrorLevel¿¡ 2°¡ ¼³Á¤µË´Ï´Ù. OutputVar´Â ¿©ÀüÈ÷ »ç¿ëÀÚ°¡ ÀÔ·ÂÇÑ °ÍÀÌ ¼³Á¤µË´Ï´Ù.

+ +
Default
+

InputBox ´ëÈ­»óÀÚ°¡ óÀ½ ½ÃÀÛÇÒ ¶§ ÆíÁý Çʵ忡 ³ªÅ¸³¯ ÅؽºÆ®. »ç¿ëÀÚ´Â ¹é½ºÆäÀ̽º³ª ±âŸ ¼ö´ÜÀ¸·Î º¯°æÇÒ ¼ö ÀÖ½À´Ï´Ù.

+ +
+

ErrorLevel

+

[v1.1.04+] ÀÌ ¸í·É¾î´Â ½ÇÆнà ¿¹¿Ü¸¦ ´øÁú ¼ö ÀÖ½À´Ï´Ù. ´õ ÀÚ¼¼ÇÑ Á¤º¸´Â ½ÇÇà½Ã°£ ¿¡·¯¸¦ ÂüÁ¶ÇϽʽÿÀ.

+ +

¾Æ·¡ ÂüÁ¶.

+ +

³íÆò

+

+ÀÌ ´ëÈ­»óÀÚ·Î »ç¿ëÀÚ´Â ÅؽºÆ®¸¦ ÀÔ·ÂÇÏ°í OK ¶Ç´Â CANCEL¸¦ ´©¸¦ ¼ö ÀÖ½À´Ï´Ù. »ç¿ëÀÚ´Â ´ëÈ­»óÀÚÀÇ Å׵θ®¸¦ ²ø¾î Å©±â¸¦ Á¶ÀýÇÒ ¼ö ÀÖ½À´Ï´Ù.

+

+ErrorLevel´Â »ç¿ëÀÚ°¡ CANCEL ¹öÆ°À» ´©¸£¸é 1ÀÌ ¼³Á¤µÇ°í OK ¹öÆ°À» ´©¸£¸é 0ÀÌ ¼³Á¤µË´Ï´Ù. ¾Æ´Ï¸é ´ëÈ­»óÀÚ°¡ ½Ã°£ Á¦ÇÑ¿¡ °É¸®¸é 2°¡ ¼³Á¤µË´Ï´Ù. ¼¼ °æ¿ì ¸ðµÎ OutputVar¿¡´Â »ç¿ëÀÚ°¡ ÀÔ·ÂÇÑ °ªÀÌ ¼³Á¤µË´Ï´Ù. + +ÀÌ·¸°Ô Çϸé CANCEL ¹öÆ°Àº CANCEL¸»°í ½ºÅ©¸³Æ® µðÀÚÀ̳ʰ¡ ¿øÇÏ´Â ÇÔ¼ö¸¦ ¼öÇàÇÒ ¼ö ÀÖ½À´Ï´Ù.

+

+GUI âÀº Gui +OwnDialogs¸¦ »ç¿ëÇÏ¿© ¸ð´Þ InputBox¸¦ º¸¿©ÁÙ ¼öµµ ÀÖ½À´Ï´Ù. ¸ð´Þ InputBox¸¦ »ç¿ëÇÏ¸é »ç¿ëÀÚ´Â InputBox¸¦ ³¡³¾ ¶§±îÁö GUI â°ú »óÈ£ÀÛ¿ëÇÒ ¼ö ¾ø½À´Ï´Ù.

+ +

°ü·Ã Ç׸ñ

+

+GUI, Input, MsgBox, FileSelectFile, FileSelectFolder, SplashTextOn, ToolTip

+ +

¿¹Á¦

+
InputBox, password, ¾ÏÈ£¸¦ ÀÔ·ÂÇϽʽÿÀ, (ÀÔ·ÂÀº º¸ÀÌÁö ¾ÊÀ» °Ì´Ï´Ù), hide 
+InputBox, UserInput, Phone Number, ÀüÈ­ ¹øÈ£¸¦ ÀÔ·ÂÇϽʽÿÀ., , 640, 480
+if ErrorLevel
+    MsgBox, CANCELÀ» ´­·¶½À´Ï´Ù.
+else
+    MsgBox, "%UserInput%"À» ÀÔ·ÂÇß½À´Ï´Ù.
+ + + diff --git a/src/docs/commands/KeyHistory.htm b/src/docs/commands/KeyHistory.htm new file mode 100644 index 0000000..25d7e83 --- /dev/null +++ b/src/docs/commands/KeyHistory.htm @@ -0,0 +1,44 @@ + + + + +KeyHistory + + + + + + + +

KeyHistory

+ +

½ºÅ©¸³Æ® Á¤º¸¸¦ º¸¿©ÁÖ°í ÃÖ±ÙÀÇ Å°´­¸²°ú ¸¶¿ì½º Ŭ¸¯ÀÇ ÀÌ·ÂÀ» º¸¿©ÁÝ´Ï´Ù.

+ +
KeyHistory
+

³íÆò

+

+ÀÌ ¸í·É¾î´Â ¸ÞÀΠâ¿¡¼­ "View->Key history" ¸Þ´º Ç׸ñÀ» ¼±ÅÃÇÑ °Í°ú µ¿µîÇÕ´Ï´Ù.

+

+Å° ÀÌ·ÂÀ» ²ô·Á¸é, ´ÙÀ½ ÁÙÀ» ½ºÅ©¸³Æ® ¾Æ¹«µ¥³ª ÁöÁ¤ÇϽʽÿÀ:

+ +
#KeyHistory 0
+

+#KeyHistory´Â ¶Ç º¸¿©ÁÙ À̺¥Æ®ÀÇ °³¼ö¸¦ ¹Ù²Ù´Â µ¥¿¡µµ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù.

+

+ÀÌ Æ¯Â¡Àº ¸ñÀûÀÌ ½ºÅ©¸³Æ®¿Í ÇÖÅ°ÀÇ µð¹ö±×¸¦ µ½´Â µ¥ ÀÖ½À´Ï´Ù. ¶ÇÇÑ ºñ-Ç¥ÁØ Å°º¸µå Å°ÀÇ ½ºÄµ Äڵ带 ŽÁöÇÏ´Â µ¥¿¡µµ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. Å° ¸®½ºÆ® ÆäÀÌÁö ¾Æ·¡¿¡ ±â¼úµÈ ´Ü°è¸¦ »ç¿ëÇÏ¸é µË´Ï´Ù (½ºÄµ Äڵ带 ¾Ë¸é ±×·± Å°¸¦ ÇÖÅ°·Î ¸¸µé ¼ö ÀÖ½À´Ï´Ù).

+

+ÈÙ À̺¥Æ®ÀÇ °¡»ó Å° (VK) (WheelDown, WheelUp, WheelLeft, ±×¸®°í WheelRight)´Â °ª º¸À¯Àڷμ­ ¿ÀÅäÇÖÅ°ÀÇ ¹Ù±ù¿¡¼­´Â ¾Æ¹« Àǹ̰¡ ¾ø½À´Ï´Ù. ¶ÇÇÑ ÈÙ À̺¥Æ®ÀÇ ½ºÄµ ÄÚµå´Â ½ÇÁ¦·Î´Â ÈÙÀ» µ¹¸®´Â ´«±ÝÀÇ °³¼öÀÔ´Ï´Ù (º¸Åë 1).

+

+½ºÅ©¸³Æ®¿¡ Å°º¸µå °¥°í¸®°¡ ¼³Ä¡µÇ¾î ÀÖÁö ¾ÊÀ¸¸é, KeyHistory âÀº ½ºÅ©¸³Æ® ÀÚü¿¡¼­ ¸¸µé¾î³»´Â Å°º¸µå À̺¥Æ®¸¸ º¸¿©ÁÝ´Ï´Ù (Áï, »ç¿ëÀÚÀÇ À̺¥Æ®´Â º¸¿©ÁÖÁö ¾Ê½À´Ï´Ù). ½ºÅ©¸³Æ®¿¡ ¸¶¿ì½º °¥°í¸®°¡ ¼³Ä¡µÇ¾î ÀÖÁö ¾ÊÀ¸¸é, ¸¶¿ì½º ¹öÆ° À̺¥Æ®´Â º¸ÀÌÁö ¾Ê½À´Ï´Ù. ½ºÅ©¸³Æ®°¡ °¥°í¸®¸¦ »ç¿ëÇÏ´Â Áö ±× ¿©ºÎ´Â ½ºÅ©¸³Æ®ÀÇ ¸ÞÀΠâ¿¡¼­ "View->Key History"¸¦ ÅëÇÏ¿© º¼ ¼ö ÀÖ½À´Ï´Ù (Æ®·¹ÀÌ ¾ÆÀÌÄÜÀÇ "Open"À» ÅëÇÏ¿© Á¢±ÙÀÌ °¡´ÉÇÕ´Ï´Ù). °­Á¦·Î °¥°í¸®¸¦ ¼³Ä¡ÇÒ ¼ö ÀÖ½À´Ï´Ù. ½ºÅ©¸³Æ®¿¡ ´ÙÀ½ ÁÙÀ» Ãß°¡ÇÏ¸é µË´Ï´Ù:

+
#InstallKeybdHook
+#InstallMouseHook
+ +

°ü·Ã Ç׸ñ

+

+#KeyHistory, #InstallKeybdHook, #InstallMouseHook, ListHotkeys, ListLines, ListVars, GetKeyState, KeyWait, A_PriorKey

+ +

¿¹Á¦

+
KeyHistory ; ÀÌ·Â Á¤º¸¸¦ ⠾ȿ¡ º¸¿©ÁÝ´Ï´Ù.
+ + + diff --git a/src/docs/commands/KeyWait.htm b/src/docs/commands/KeyWait.htm new file mode 100644 index 0000000..7985c38 --- /dev/null +++ b/src/docs/commands/KeyWait.htm @@ -0,0 +1,100 @@ + + + + +KeyWait + + + + + + + +

KeyWait

+ +

Å°³ª ¸¶¿ì½º/Á¶À̽ºÆ½ ¹öÆ°ÀÌ ´­¸®°Å³ª ¶¼¾îÁö±â¸¦ ±â´Ù¸³´Ï´Ù.

+ +
KeyWait, KeyName [, Options]
+

¸Å°³º¯¼ö

+
+ +
KeyName
+

ÀÌ°ÍÀº Å°º¸µå·ÎºÎÅÍ ¹®ÀÚ Çϳª ¶Ç´Â Å° ¸®½ºÆ®·ÎºÎÅÍÀÇ À̸§ Áß Çϳª°¡ µÉ ¼ö ÀÖ½À´Ï´Ù. ¸¶¿ì½º/Á¶À̽ºÆ½ ¹öÆ°°ú °°Àº °æ¿ì, Á¶À̽ºÆ½ ¼Ó¼ºÀº ¹öÆ° Áö¿øÇÕ´Ï´Ù.

+

+ ¸í½ÃÀûÀÎ °¡»ó Å° Äڵ嵵 vkFF¿Í °°ÀÌ ¿ª½Ã ÁöÁ¤ÇÒ ¼ö ÀÖ½À´Ï´Ù. Èñ±ÍÇÑ °æ¿ìÀ̱â´Â ÇÏÁö¸¸ Å°¿¡ À̸§ÀÌ ¾ø°Å³ª ´­¸± ¶§ º¸ÀÌÁö ¾Ê´Â ¹®ÀÚ¸¦ »ý»êÇÏ´Â °æ¿ì¿¡ À¯¿ëÇÕ´Ï´Ù. ±×ÀÇ °¡»ó Å° ÄÚµå´Â ´ÙÀ½ Å° ¸®½ºÆ® ÆäÀÌÁö ¾Æ·¡¿¡ ÀÖ´Â ´Ü°è¸¦ ¹â¾Æ ¾Ë¾Æ³¾ ¼ö ÀÖ½À´Ï´Ù .

+ +
Options
+

ÀÌ ¸Å°³º¯¼ö°¡ ºñ¾î ÀÖÀ¸¸é, ¸í·É¾î´Â ÁöÁ¤µÈ Å°³ª ¸¶¿ì½º/Á¶À̽ºÆ½ ¹öÆ°À» ¹°¸®ÀûÀ¸·Î »ç¿ëÀÚ°¡ ¶¼±â¸¦ ¹«ÇÑÁ¤ ±â´Ù¸³´Ï´Ù. ±×·¸Áö¸¸, Å°º¸µå °¥°í¸®°¡ ¼³Ä¡µÇ¾î ÀÖÁö ¾Ê°í KeyNameÀÌ Send ¸í·É¾î¿Í °°Àº ¼ö´ÜÀ¸·Î ÀÎÀ§ÀûÀ¸·Î ¶¾ Å°º¸µå Å°À̸é, ±× Å°´Â ¹°¸®ÀûÀ¸·Î ¶¾ °Íó·³ º¸ÀÏ °ÍÀÔ´Ï´Ù. ¸¶¿ì½º °¥°í¸®°¡ ¼³Ä¡µÇ¾î ÀÖÁö ¾ÊÀ» ¶§ ¸¶¿ì½º ¹öÆ°µµ ¸¶Âù°¡ÁöÀÔ´Ï´Ù.

+

Options: ´ÙÀ½ ±âÈ£·Î ±¸¼ºµÇ´Â ¹®ÀÚ¿­ (¼ø¼­´ë·Î, ¼±ÅÃÀûÀ¸·Î »çÀÌ¿¡ ½ºÆäÀ̽º Çã¿ë):

+

D: Å°°¡ ´­¸®±â¸¦ ±â´Ù¸³´Ï´Ù.

+

L: Å°ÀÇ ³í¸®Àû »óŸ¦ Á¡°ËÇÕ´Ï´Ù. ÀÌ´Â OS¿Í È°¼º âÀÌ ¹Ï°í ÀÖ´Â Å°ÀÇ »óÅÂÀÔ´Ï´Ù (¹Ýµå½Ã ¹°¸®Àû »óÅÂ¿Í °°Àº °ÍÀº ¾Æ´Õ´Ï´Ù). ÀÌ ¿É¼ÇÀº Á¶À̽ºÆ½ ¹öÆ°¿¡ ´ëÇؼ­´Â ¹«½ÃµË´Ï´Ù.

+

T: ½Ã°£Á¦ÇÑ (¿¹, T3). ½ÃÇÑ Á¾·á¸¦ ¼±¾ðÇϱâ Àü¿¡ ±â´Ù¸± ÃÊÀÇ °³¼ö. ½ÃÇÑÀÌ Áö³ª¸é ErrorLevel¿¡ 1ÀÌ ¼³Á¤µË´Ï´Ù. Å°³ª ¹öÆ°ÀÌ ÁöÁ¤µÈ »óŸ¦ ÀÌ·ç¸é, ÀÌ ¸í·É¾î´Â ½ÃÇÑÀÌ Áö³ª±â¸¦ ±â´Ù¸®Áö ¾Ê½À´Ï´Ù. ´ë½Å¿¡, Áï½Ã ErrorLevel¿¡ 0À» ¼³Á¤ÇÏ°í ½ºÅ©¸³Æ®´Â ½ÇÇàÀ» °è¼ÓÇÕ´Ï´Ù.

+

½Ã°£Á¦ÇÑ °ªÀº 2.5¿Í °°ÀÌ ºÎµ¿ ¼Ò¼öÁ¡ ¼ö°¡ µÉ ¼ö ÀÖ½À´Ï´Ù. ±×·¯³ª 0x03¿Í °°Àº ½ÊÀ°Áø ¼ö´Â ¾ÈµË´Ï´Ù.

+ +
+ +

ErrorLevel

+

+¸í·É¾î°¡ ½ÃÇÑÁ¦ÇÑ¿¡ °É¸®¸é ErrorLevel¿¡ 1ÀÌ ¼³Á¤µÇ°í ±×·¸Áö ¾ÊÀ¸¸é 0ÀÌ ¼³Á¤µË´Ï´Ù.

+ +

³íÆò

+

+Å°³ª ¸¶¿ì½º ¹öÆ°ÀÇ ¹°¸®Àû »óÅ´ º¸Åë ³í¸®Àû »óÅÂ¿Í °°½À´Ï´Ù. ´Ü, Å°º¸µå/¸¶¿ì½º °¥°í¸®°¡ ¼³Ä¡µÇ¾î ÀÖÁö ¾Ê¾Æ¾ß ÇÕ´Ï´Ù. ¼³Ä¡°¡ µÇ¾î ÀÖÀ¸¸é, »ç¿ëÀÚ°¡ ¹°¸®ÀûÀ¸·Î Å°¸¦ ´©¸£°í ÀÖ´ÂÁö ¾Æ´ÑÁö Á¤È®ÇÏ°Ô ¹Ý¿µÇÕ´Ï´Ù. ¿©·¯ºÐÀÇ ½ºÅ©¸³Æ®°¡ °¥°í¸®¸¦ »ç¿ëÇÏ°í ÀÖ´ÂÁö ¾Ë°í ½ÍÀ¸¸é KeyHistory ¸í·É¾î ¶Ç´Â ¸Þ´º¸¦ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. µÎ °¥°í¸®¸¦ ¸ðµÎ °­Á¦·Î ¼³Ä¡ÇÏ·Á¸é ½ºÅ©¸³Æ®¿¡ #InstallKeybdHook Áö½Ã¾î¿Í #InstallMouseHook Áö½Ã¾î¸¦ Ãß°¡ÇÏ¸é µË´Ï´Ù.

+

+ÀÌ ¸í·É¾î°¡ ´ë±â »óÅ¿¡ ÀÖ´Â µ¿¾È, »õ ¾²·¹µå¸¦ ÇÖÅ°, ¸ÂÃã ¸Þ´º Ç׸ñ, ¶Ç´Â ŸÀ̸Ӹ¦ ÅëÇÏ¿© ±âµ¿ÇÒ ¼ö ÀÖ½À´Ï´Ù.

+

+µÎ °³ ÀÌ»óÀÇ Å°°¡ ¶¼¾îÁö±â¸¦ ±â´Ù¸®·Á¸é, KeyWait¸¦ ¿¬¼ÓÀûÀ¸·Î »ç¿ëÇϽʽÿÀ. ¿¹¸¦ µé¾î:

+ +
KeyWait Control  ; Control°ú Alt°¡ ¸ðµÎ ¶¼¾îÁö±â¸¦ ±â´Ù¸³´Ï´Ù.
+KeyWait Alt
+

+Å° ÁýÇÕ ÁßÀÇ ÇÑ Å°°¡ ¶¼¾îÁö±â¸¦ ±â´Ù¸®·Á¸é, Input ¸í·É¾îÀÇ ¿¹Á¦ ¼½¼ÇÀ» ÂüÁ¶ÇϽʽÿÀ.

+ +

°ü·Ã Ç׸ñ

+

+GetKeyState, Key List, Input, KeyHistory, #InstallKeybdHook, #InstallMouseHook, ClipWait, WinWait

+ +

¿¹Á¦

+ +
; ¿¹Á¦ #1: ±âº» »ç¿ë¹ý:
+KeyWait, a  ; A Å°°¡ ¶¼¾îÁö±â¸¦ ±â´Ù¸³´Ï´Ù.
+KeyWait, LButton, D  ; ¿ÞÂÊ ¸¶¿ì½º ¹öÆ°ÀÌ ´­¸®±â¸¦ ±â´Ù¸³´Ï´Ù.
+KeyWait, Joy1, D T3  ; ù ¹ø° Á¶À̽ºÆ½ ¹öÆ°ÀÌ ´­¸®±â¸¦ 3 ÃʱîÁö ±â´Ù¸³´Ï´Ù.
+KeyWait, LAlt, L  ; ¿ÞÂÊ Alt Å°°¡ ³í¸®ÀûÀ¸·Î ¶¼¾îÁö±â¸¦ ±â´Ù¸³´Ï´Ù.
+

 

+
; ¿¹Á¦ #2: °£´ÜÇÑ ÇÖÅ°:
+~Capslock::
+KeyWait, Capslock  ; »ç¿ëÀÚ°¡ ¹°¸®ÀûÀ¸·Î ¶¼±â¸¦ ±â´Ù¸³´Ï´Ù.
+MsgBox Capslock Å°¸¦ ´©¸£°í ¶Ã½À´Ï´Ù.
+return
+

 

+
; ¿¹Á¦ #3: Å° ¶Ç´Â ¸¶¿ì½º ¹öÆ° ¸®¸ÊÇÎÇϱâ
+; (ÀÌ°ÍÀº ¿ÀÁ÷ ½Ã¿¬¿ëÀÔ´Ï´Ù. ³»ÀåµÈ ¸®¸ÊÇΠƯ¡À» »ç¿ëÇÏ´Â °ÍÀÌ ´õ ½±½À´Ï´Ù):
+; ¿Þ¹öÆ°ÀÌ ´­·Á ÀÖ´Â µ¿¾È NumpadAdd¸¦ ´­·¶½À´Ï´Ù.
+; ±× È¿°ú·Î NumpadAdd°¡ ¿Þ ¹öÆ°À¸·Î º¯½ÅÇÕ´Ï´Ù.
+*NumpadAdd::
+MouseClick, left,,, 1, 0, D  ; ¿Þ¹öÆ°À» ´©¸£°í ÀÖ½À´Ï´Ù.
+KeyWait, NumpadAdd  ; Å°°¡ ¶¼¾îÁö±â¸¦ ±â´Ù¸³´Ï´Ù.
+MouseClick, left,,, 1, 0, U  ; ¸¶¿ì½º ¹öÆ°À» ¶Á´Ï´Ù.
+return
+

 

+
; ¿¹Á¦ #4: Å°°¡ µÎ ¹ø ´­¸± ¶§¸¦ ŽÁöÇÕ´Ï´Ù (´õºí Ŭ¸¯°ú À¯»ç).
+; KeyWait´Â Å°º¸µåÀÇ ÀÚµ¿ ¹Ýº¹ Ư¡ ¶§¹®¿¡ RControl Å°¸¦ ´©¸¥ ä ¶Ç´Ù¸¥ Å°¸¦ º¯°æÇÒ ¶§
+; ¿øÇÏÁö ¾Ê´Â ÀÌÁß-´­¸²ÀÌ µÇÁö ¾Êµµ·Ï ¹æÁöÇÏ´Â µ¥ »ç¿ëµË´Ï´Ù. 
+; ÇÖÅ°ÀÇ ¾²·¹µå¸¦ °è¼Ó ½ÇÇàµÇµµ·Ï À¯ÁöÇØ ÀÚµ¿-¹Ýº¹À» ¸·°í,
+; #MaxThreadsPerHotkeyÀÌ ±âº» ¼³Á¤À¸·Î 1À» À¯ÁöÇϵµ·Ï ÇÔÀ¸·Î½á ÀÌ ±â´ÉÀ» ±¸ÇöÇÕ´Ï´Ù.
+; ÁÖÀÇ:  SetTimer ÆäÀÌÁö ÇÏ´Ü¿¡ 1, 2, 3-Ŭ¸¯À» ±¸º°ÇÏ´Â
+; ´õ Á¤±³ÇÑ ½ºÅ©¸³Æ®°¡ ÀÖ½À´Ï´Ù.
+
+~RControl::
+if (A_PriorHotkey <> "~RControl" or A_TimeSincePriorHotkey > 400)
+{
+    ; ´­¸² »çÀÌ¿¡ ³Ê¹« ½Ã°£ÀÌ ¸¹½À´Ï´Ù. ±×·¡¼­ ÀÌ°ÍÀº ´õºí Ŭ¸¯ÀÌ ¾Æ´Õ´Ï´Ù.
+    KeyWait, RControl
+    return
+}
+MsgBox ¿À¸¥ÂÊ ÄÜÆ®·Ñ Å°¸¦ µÎ ¹ø ´­·¶½À´Ï´Ù.
+return
+ + + diff --git a/src/docs/commands/ListHotkeys.htm b/src/docs/commands/ListHotkeys.htm new file mode 100644 index 0000000..ecff58d --- /dev/null +++ b/src/docs/commands/ListHotkeys.htm @@ -0,0 +1,43 @@ + + + + +ListHotkeys + + + + + + + +

ListHotkeys

+ +

ÇöÀç ½ºÅ©¸³Æ®°¡ »ç¿ë ÁßÀÎ ÇÖÅ°¸¦ º¸¿©ÁÝ´Ï´Ù. ±×µéÀÇ ¼­ºê·çƾÀÌ ÇöÀç ½ÇÇàÁßÀÎÁö ±×¸®°í ±×µéÀÌ Å°º¸µå ¶Ç´Â ¸¶¿ì½º °¥°í¸®¸¦ »ç¿ëÇÏ´ÂÁö ¿©ºÎ¸¦ º¸¿©ÁÝ´Ï´Ù.

+ +
ListHotkeys
+

+ÀÌ ¸í·É¾î´Â ¸ÞÀΠâÀÇ View->Hotkeys ¸Þ´º Ç׸ñÀ» ¼±ÅÃÇÑ °Í°ú µ¿ÀÏÇÕ´Ï´Ù.

+

+ÇÖÅ°°¡ Hotkey ¸í·É¾î¸¦ ÅëÇÏ¿© ²¨Á® ÀÖÀ¸¸é, OFF ¶Ç´Â PART·Î ³ª¿­µÉ °ÍÀÔ´Ï´Ù("PART"¶õ ÇÖÅ°ÀÇ º¯ÇüÁß ÀϺθ¸ ²¨Á® ÀÖ´Ù´Â ¶æÀÔ´Ï´Ù).

+

+[v1.1.16+]: ÇÖÅ°ÀÇ º¯ÇüÁß Çϳª¶óµµ 0-¾Æ´Ñ #InputLevelÀ» °¡Áö°í ÀÖ´Ù¸é, ±× ·¹º§ (¶Ç´Â ÃÖ¼Ò ±×¸®°í ÃÖ´ë ·¹º§)À» º¸¿©ÁÝ´Ï´Ù.

+

+ÇÖÅ°ÀÇ ¼­ºê ·çƾ Áß Çϳª¶óµµ ÇöÀç ½ÇÇà ÁßÀ̸é, ±× ÇÖÅ°¿¡ ´ëÇÏ¿© ¾²·¹µåÀÇ Àüü °³¼ö¸¦ º¸¿©ÁÝ´Ï´Ù.

+

+¸¶Áö¸·À¸·Î, ÇÖÅ°ÀÇ À¯Çüµµ º¸¿©ÁÝ´Ï´Ù. ÇÖÅ°ÀÇ À¯ÇüÀº ´ÙÀ½ Áß ÇϳªÀÔ´Ï´Ù:

+

+reg: ÇÖÅ°°¡ ¿î¿µ üÁ¦ÀÇ RegisterHotkey() ÇÔ¼ö¸¦ ÅëÇÏ¿© ±¸ÇöµÇ¾ú½À´Ï´Ù.
+ reg(no): À§¿Í µ¿ÀÏÇÏÁö¸¸ ÀÌ ÇÖÅ°´Â ºñÈ°¼º »óÅÂÀÔ´Ï´Ù (Áö¿øµÇÁö ¾Ê°Å³ª ¶Ç´Â º¸·ù(suspended) µÇ¾ú±â ¶§¹®).
+ k-hook: ÇÖÅ°°¡ Å°º¸µå °¥°í¸®¸¦ ÅëÇÏ¿© ±¸ÇöµÇ¾ú½À´Ï´Ù.
+ m-hook: ÇÖÅ°°¡ ¸¶¿ì½º °¥°í¸®¸¦ ÅëÇÏ¿© ±¸ÇöµÇ¾ú½À´Ï´Ù.
+ 2-hooks: ÇÖÅ°°¡ À§¿¡ ¾ð±ÞµÈ µÎ °¥°í¸®¸¦ ¸ðµÎ ¿ä±¸ÇÕ´Ï´Ù.
+ joypoll: ÇÖÅ°°¡ Á¶À̽ºÆ½À» ±ÔÄ¢ÀûÀÎ °£°ÝÀ¸·Î Æú¸µÇؼ­ ±¸ÇöµÇ¾ú½À´Ï´Ù.

+ +

°ü·Ã Ç׸ñ

+

#InstallKeybdHook, #InstallMouseHook, #UseHook, KeyHistory, ListLines, ListVars, #MaxThreadsPerHotkey, #MaxHotkeysPerInterval

+ +

¿¹Á¦

+
ListHotkeys
+ + + diff --git a/src/docs/commands/ListLines.htm b/src/docs/commands/ListLines.htm new file mode 100644 index 0000000..e39cf93 --- /dev/null +++ b/src/docs/commands/ListLines.htm @@ -0,0 +1,63 @@ + + + + +ListLines + + + + + + + +

ListLines

+ +

ÃÖ±Ù¿¡ ½ÇÇàµÈ ½ºÅ©¸³Æ® ÁÙµéÀ» º¸¿©ÁÝ´Ï´Ù.

+ +
ListLines [, On|Off]
+

¸Å°³º¯¼ö

+
+ +
On|Off
+

ºñ¾î Àְųª »ý·«Çϸé, ÃÖ±Ù¿¡ ½ÇÇàµÈ ÁÙ ÀÌ·ÂÀ» º¸¿©ÁÝ´Ï´Ù. v1.0.48.01+¿¡¼­, ¼±ÅÃÀûÀΠù ¹ø° ¸Å°³º¯¼ö¸¦ Ãß°¡Çߴµ¥, ÀÌ°ÍÀº On ¶Ç´Â OffÀÏ ¼ö ÀÖ½À´Ï´Ù. ´ÙÀ½°ú °°ÀÌ ÇöÀç ¾²·¹µåÀÇ ÇàÀ§¿¡¸¸ ¿µÇâÀ» ÁÝ´Ï´Ù:

+

On: ÀÕµû¶ó-½ÇÇàµÇ´Â ÁÙµéÀ» À̷¿¡ Æ÷ÇÔÇÕ´Ï´Ù. ÀÌ°ÍÀº ¸ðµç ½ºÅ©¸³Æ®°¡ ½ÃÀÛÇÒ ¶§ ±âº»°ªÀÔ´Ï´Ù.

+

Off: ÀÕµû¶ó-½ÇÇàµÇ´Â ÁÙµéÀ» ÀÌ·ÂÀ¸·ÎºÎÅÍ Á¦¿ÜÇÕ´Ï´Ù.

+ +
+ +

³íÆò

+

+(¸Å°³º¯¼ö ¾øÀÌ) ListLines´Â ¸ÞÀΠâ¿¡¼­ "View->Lines most recently executed" ¸Þ´º Ç׸ñÀ» ¼±ÅÃÇÑ °Í°ú µ¿µîÇÕ´Ï´Ù. ½ºÅ©¸³Æ®¸¦ µð¹ö±×ÇÏ´Â µ¥ µµ¿òÀ» ÁÙ ¼ö ÀÖ½À´Ï´Ù.

+

+ListLines Off/On¸¦ »ç¿ëÇÏ¸é ¼±ÅÃÀûÀ¸·Î ¾î¶² ÁÙµéÀ» ÀÌ·ÂÀ¸·ÎºÎÅÍ Á¦¿ÜÇÒ ¼ö ÀÖ½À´Ï´Ù. ±×·¯¸é ÀÌ·ÂÀÌ ³Ê¹« ºü¸£°Ô ²Ë Â÷´Â °ÍÀ» ¸·´Âµ¥ µµ¿òÀÌ µÉ ¼ö ÀÖ½À´Ï´Ù (¿¹¸¦ µé¾î ºü¸£°í ¸¹Àº ¹Ýº¹ÀÌ Àִ ȸµ¹ÀÌ °°Àº °æ¿ì). ListLines Offµµ ¸î ÆÛ¼¾Æ®´Â ¼öÇ༺´É Çâ»ó¿¡ µµ¿òÀÌ µË´Ï´Ù.

+

+»õ·Î ±âµ¿µÈ ¾²·¹µå´Â ¸ðµÎ (ÇÖÅ°, ¸ÂÃã ¸Þ´º Ç׸ñ, ¶Ç´Â ŸÀÌ¸Ó ¼­ºê·çƾÀº) ÀÌ ¸í·É¾î¿¡ ´ëÇÑ ±âº» ¼³Á¤À» °¡Áö°í »õ·Ó°Ô ½ÃÀÛÇÕ´Ï´Ù. ÀÌ ±âº» °ªÀº ÀÚµ¿ ½ÇÇà ¼½¼Ç (½ºÅ©¸³Æ®ÀÇ »ó´Ü)¿¡¼­ ÀÌ ¸í·É¾î¸¦ »ç¿ëÇÏ¿© ¹Ù²Ü ¼ö ÀÖ½À´Ï´Ù.

+

+³»Àå º¯¼ö "A_ListLines"°°Àº °ÍÀº ¾øÁö¸¸, ºñ½ÁÇÑ ±â´ÉÀ» ¾òÀ» ¼ö ÀÖ½À´Ï´Ù. ½ºÅ©¸³Æ®¿¡ ´ÙÀ½À» Æ÷ÇÔÇϽʽÿÀ:

+ +
ListLines(PassTrueToTurnOnOrFalseToTurnOff)  ; ListLinesÀÇ ÀÌÀü ¼³Á¤À» µ¹·ÁÁÝ´Ï´Ù (´ÙÀ½À» È£ÃâÇϱâ Àü¿¡).
+{
+    static sListLines := true  ; ¸ðµç ½ºÅ©¸³Æ®°¡ ½ÃÀÛÇÒ ¶§ ±âº»°ªÀº "ListLines On"ÀÔ´Ï´Ù.
+    ListLines % PassTrueToTurnOnOrFalseToTurnOff ? "On" : "Off"  ; ÀÌ ¾Æ·¡·Î ½ÇÇàµÇ´Â ÁÙµéÀ» ·Î±×·ÎºÎÅÍ Á¦¿ÜÇϱâ À§ÇØ ListLines¸¦ ¹«Á¶°Ç ½ÇÇàÇÕ´Ï´Ù.
+    ListLines_prev := sListLines
+    sListLines := PassTrueToTurnOnOrFalseToTurnOff
+    return ListLines_prev
+}
+
+; À§ÀÇ ÇÔ¼ö¸¦ »ç¿ëÇÏ·Á¸é:
+prev_ListLines := ListLines(false)  ; ListLines¸¦ Àӽ÷Π²ü´Ï´Ù.
+; ...
+ListLines(prev_ListLines)  ; ListLines¸¦ ÀÌÀüÀÇ ¼³Á¤À¸·Î º¹±¸ÇÕ´Ï´Ù.
+

+°ü·ÃÇÏ¿© ÇÑ ¸¶µð Çϸé, ³»Àå º¯¼ö A_LineNumber¿Í A_LineFile¿¡´À °¢°¢ ÇöÀç ½ÇÇà ÁßÀÎ ÁÙ ¹øÈ£¿Í ÀÚ½ÅÀÌ ¼ÓÇÑ ÆÄÀÏ À̸§ÀÌ ´ã±é´Ï´Ù.

+ +

°ü·Ã Ç׸ñ

+

+KeyHistory, ListHotkeys, ListVars

+ +

¿¹Á¦

+
ListLines
+ListLines Off
+ + + diff --git a/src/docs/commands/ListVars.htm b/src/docs/commands/ListVars.htm new file mode 100644 index 0000000..f465258 --- /dev/null +++ b/src/docs/commands/ListVars.htm @@ -0,0 +1,37 @@ + + + + +ListVars + + + + + + + +

ListVars

+ +

½ºÅ©¸³Æ®ÀÇ º¯¼öµéÀ» º¸¿©ÁÝ´Ï´Ù: À̸§°ú ÇöÀç ³»¿ë.

+ +
ListVars
+

³íÆò

+

+ÀÌ ¸í·É¾î´Â ¸ÞÀΠâ¿¡¼­ "View->Variables" ¸Þ´º Ç׸ñÀ» ¼±ÅÃÇÑ °Í°ú µ¿µîÇÕ´Ï´Ù. ½ºÅ©¸³Æ®¸¦ µð¹ö±×ÇÒ ¶§ µµ¿òÀÌ µË´Ï´Ù.

+

¸®½ºÆ®ÀÇ °¢ ÁÙÀº ´ÙÀ½°ú °°ÀÌ ±¸¼ºµË´Ï´Ù:
+ 1) º¯¼öÀÇ À̸§.
+ 2) º¯¼ö ³»¿ëÀÇ ±æÀÌ¿Í º¯¼öÀÇ °¡¿ë´É·Â. ¿¹¸¦ µé¾î: [50 of 63]
+ 3) º¯¼ö ³»¿ëÀÇ ¾ÕÂÊ ¹®ÀÚ 60°³.

+

+ÀÌ ¸í·É¾î°¡ ÇÔ¼ö ¾È¿¡ »ç¿ëµÇ¸é, ±× ÇÔ¼öÀÇ Áö¿ª º¯¼öµéÀÌ (½ºÅ©¸³Æ®ÀÇ Àü¿ª º¯¼öµéº¸´Ù) ¸ÕÀú È­¸é¿¡ º¸¿©Áý´Ï´Ù.

+

+¾Ë·ÁÁø ÇÑ°è: ÇÔ¼ö¿¡ (¶Ç´Â Àü¿ª º¯¼ö ¸®½ºÆ®¿¡) 10,000°³°¡ ³Ñ°Ô º¯¼ö°¡ µé¾î ÀÖ´Ù¸é, ÀÌ ¸í·É¾î´Â Á¤È®ÇÏ°Ô ¾ËÆĺª ¼ø¼­·Î º¸¿©ÁÖÁö ¸øÇÒ ¼ö ÀÖ½À´Ï´Ù; Áï, ¾î¶² °ÍÀº »©°í º¸¿©ÁÙ °¡´É¼ºÀÌ ÀÖ½À´Ï´Ù.

+ +

°ü·Ã Ç׸ñ

+

KeyHistory, ListHotkeys, ListLines

+ +

¿¹Á¦

+
ListVars
+ + + diff --git a/src/docs/commands/ListView.htm b/src/docs/commands/ListView.htm new file mode 100644 index 0000000..84fed41 --- /dev/null +++ b/src/docs/commands/ListView.htm @@ -0,0 +1,621 @@ + + + + +ListView (GUI) + + + + + + + + +

ListView

+ +

¸ñÂ÷

+ +

¼Ò°³¿Í °£´ÜÇÑ ¿¹Á¦

+

+List-View´Â ¿î¿µ üÁ¦°¡ Á¦°øÇÏ´Â ´ë´ÜÈ÷ Á¤±³ÇÑ ÄÜÆ®·Ñ Áß ÇϳªÀÔ´Ï´Ù. ÀÚÁÖ º¸´Â ÇüÅ·δÂ, Çà°ú ¿­À» Å×ÀÌºí ¹æ½ÄÀ¸·Î º¸¿©ÁÖ´Â °ÍÀÌ ÀÖ½À´Ï´Ù. ±× ¿¹·Î´Â À©µµ¿ìÁî Ž»ö±â¿¡¼­ ÆÄÀÏ°ú Æú´õ¸¦ (ÀÚ¼¼È÷ º¸±â) ³ª¿­ÇØ º¸¿©ÁÝ´Ï´Ù.

+

+Á¤±³Çϱâ´Â ÇÏÁö¸¸, ±âº»ÀûÀΠƯ¡Àº »ç¿ëÇϱ⠽±½À´Ï´Ù. ListView¸¦ »ý¼ºÇÏ´Â ±¸¹®Àº ´ÙÀ½°ú °°½À´Ï´Ù:

+ +
Gui, Add, ListView, Options, ColumnTitle1|ColumnTitle2|...
+

+´ÙÀ½Àº ÀÛµ¿ÇÏ´Â ½ºÅ©¸³Æ®ÀÔ´Ï´Ù. »ç¿ëÀÚÀÇ "My Documents" Æú´õ¿¡ µç ÆÄÀÏ ¸ñ·ÏÀ» ´ãÀº ListView¸¦ ¸¸µé°í º¸¿©ÁÝ´Ï´Ù:

+ +
; ListView¸¦ µÎ °³ÀÇ ¿­, À̸§°ú Å©±â·Î Çؼ­ ¸¸µì´Ï´Ù:
+Gui, Add, ListView, r20 w700 gMyListView, Name|Size (KB)
+
+; Æú´õ·ÎºÎÅÍ ÆÄÀÏ À̸§ ¸ñ·ÏÀ» ¼öÁýÇØ ±×°ÍÀ» ListView¿¡ ³Ö½À´Ï´Ù:
+Loop, %A_MyDocuments%\*.*
+    LV_Add("", A_LoopFileName, A_LoopFileSizeKB)
+
+LV_ModifyCol()  ; ±×ÀÇ ³»¿ë¿¡ ¸Â°Ô °¢ ¿­Àº ÀÚµ¿À¸·Î Å©±â°¡ Á¶ÀýµË´Ï´Ù.
+LV_ModifyCol(2, "Integer")  ; Á¤·ÄÀÇ ¸ñÀûÀ¸·Î, 2 ¹ø ¿­Àº Á¤¼ö¶ó´Â °ÍÀ» ³ªÅ¸³À´Ï´Ù.
+
+; âÀ» º¸¿©ÁÖ°í µ¹¾Æ°©´Ï´Ù. »ç¿ëÀÚ°¡ ÇàÀ» ´õºí Ŭ¸¯ÇÒ ¶§¸¶´Ù ½ºÅ©¸³Æ®¿¡ °íÁöµË´Ï´Ù.
+Gui, Show
+return
+
+MyListView:
+if A_GuiEvent = DoubleClick
+{
+    LV_GetText(RowText, A_EventInfo)  ; ÇàÀÇ Ã¹ Çʵå·ÎºÎÅÍ ÅؽºÆ®¸¦ ¾ò½À´Ï´Ù.
+    ToolTip You double-clicked row number %A_EventInfo%. Text: "%RowText%"
+}
+return
+
+GuiClose:  ; âÀÌ ´ÝÈ÷¸é ½ºÅ©¸³Æ®°¡ ÀÚµ¿À¸·Î Á¾·áÇØ¾ß ÇÑ´Ù°í ¾Ë¸³´Ï´Ù.
+ExitApp
+ +

"Gui, Add, ListView, Options"¿¡ ´ëÇÑ ¿É¼Ç°ú ½ºÅ¸ÀÏ

+

+AltSubmit: ½ºÅ©¸³Æ®¿¡°Ô Á¤»óº¸´Ù ´õ ¸¹Àº À¯ÇüÀÇ ListView À̺¥Æ®¸¦ °íÁöÇÕ´Ï´Ù. ´Ù¸¥ ¸»·Î Çϸé, g-¶óº§ÀÌ ´õ ÀÚÁÖ ±âµ¿µË´Ï´Ù. ÀÚ¼¼ÇÑ °ÍÀºListView °íÁö¸¦ ÂüÁ¶ÇϽʽÿÀ.

+

+Background: ´Ü¾î Background ´ÙÀ½¿¡ ¹Ù·Î »ö À̸§ (Ä÷¯ Â÷Æ® ÂüÁ¶) ¶Ç´Â RGB °ªÀ» ÁöÁ¤ÇϽʽÿÀ (0x Á¢µÎ»ç´Â ¼±ÅÃÀûÀÔ´Ï´Ù). ¿¹¸¦ µé¾î: BackgroundSilver, BackgroundFFDD99. +ÀÌ ¿É¼ÇÀÌ Á¸ÀçÇÏÁö ¾ÊÀ¸¸é, ListView´Â óÀ½¿¡ ±âº»°ªÀÌ Gui ColorÀÇ ¸¶Áö¸· ¸Å°³º¯¼ö·Î ¼³Á¤µÈ ¹è°æ»öÀ¸·Î ½ÃÀÛÇÕ´Ï´Ù. (¾ø´Ù¸é, ½Ã½ºÅÛÀÇ ±âº» ¹è°æ»öÀÌ »ç¿ëµË´Ï´Ù). BackgroundDefault¸¦ ÁöÁ¤ÇÏ¸é ½Ã½ºÅÛÀÇ ±âº» ¹è°æ»ö¿¡ Àû¿ëµË´Ï´Ù (º¸Åë Èò»ö). ¿¹¸¦ µé¾î, GuiControl, +BackgroundDefault, MyListView¸¦ ÅëÇÏ¿© ListView¸¦ ±âº»°ªÀ¸·Î º¹±¸ÇÒ ¼ö ÀÖ½À´Ï´Ù.

+

+C: ÅؽºÆ® Ä÷¯. ±âÈ£ C ´ÙÀ½¿¡ ¹Ù·Î Ä÷¯ À̸§ (Ä÷¯ Â÷Æ® ÂüÁ¶) ¶Ç´Â RGB °ªÀ» ÁöÁ¤ÇϽʽÿÀ (0x Á¢µÎ»ç´Â ¼±ÅÃÀûÀÔ´Ï´Ù). ¿¹¸¦ µé¾î: cRed, cFF2211, c0xFF2211, cDefault.

+

+Checked: °¢ ÇàÀÇ ¿ÞÂÊ¿¡ üũ¹Ú½º¸¦ Á¦°øÇÕ´Ï´Ù. ÇàÀ» Ãß°¡ÇÒ ¶§, ´Ü¾î Check¸¦ ±×ÀÇ ¿É¼Ç¿¡ ÁöÁ¤ÇÏ¸é ¹Ú½º¸¦ üũǥ½ÄµÈ »óÅ·Π½ÃÀÛÇÒ ¼ö ÀÖ½À´Ï´Ù. »ç¿ëÀÚ´Â ±× üũ¹Ú½º¸¦ Ŭ¸¯Çϰųª ½ºÆäÀ̽º¹Ù¸¦ ´­·¯ ÇàÀ» üũÇϰųª ÇØÁ¦ÇÒ ¼ö ÀÖ½À´Ï´Ù.

+

+Count: ´Ü¾î Count ´ÙÀ½¿¡ ¹Ù·Î ListView°¡ ±Ã±ØÀûÀ¸·Î ´ãÀ» ÇàÀÇ ÃÑ °³¼ö¸¦ ÁöÁ¤ÇϽʽÿÀ. Á¦ÇÑÀº ¾ø½À´Ï´Ù: ÀÌ ÇѰ踦 ³Ñ¾î¼­µµ ÇàÀº ¿©ÀüÈ÷ Ãß°¡ÇÒ ¼ö ÀÖ½À´Ï´Ù. ´ë½Å¿¡, ÀÌ ¿É¼ÇÀº ÇàÀ» Ãß°¡ÇÒ ¶§¸¶´Ù ¸Þ¸ð¸®¸¦ ÇÒ´çÇϱ⠺¸´Ù ÇÑ ¹ø¸¸ ÇÒ´çÇÒ ¼ö ÀÖµµ·Ï Á¦¾îÇϱâ À§ÇÑ ÈùÆ®·Î ±â¿©ÇÕ´Ï´Ù. ±×·¯¸é Çà-Ãß°¡ ¼öÇ༺´ÉÀÌ Å©°Ô °³¼±µË´Ï´Ù (¶ÇÇÑ Á¤·Ä ¼öÇ༺´Éµµ Çâ»óµË´Ï´Ù). ¼öÇ༺´ÉÀ» ´õ¿í °³¼±ÇÏ·Á¸é, ¹æ´ëÇÑ °³¼öÀÇ ÇàÀ» Ãß°¡Çϱâ Àü¿¡ GuiControl, -Redraw, MyListView¸¦ »ç¿ëÇϽʽÿÀ. ÀÌÈÄ·Î, GuiControl, +Redraw, MyListView¸¦ »ç¿ëÇÏ¸é ´Ù½Ã ±×¸®±â¸¦ ´Ù½Ã ÄÓ ¼ö ÀÖ½À´Ï´Ù (¶ÇÇÑ ÄÜÆ®·Ñµµ ´Ù½Ã Ä¥ÇÕ´Ï´Ù).

+

+Grid: ¼öÁ÷ ¼öÆò ÁÙÀ» ½Ã°¢ÀûÀ¸·Î Á¦°øÇØ Çà¿Í ¿­ »çÀÌÀÇ °æ°è¸¦ ³ªÅ¸³À´Ï´Ù.

+

+Hdr: -Hdr (¸¶À̳ʽº Hdr)À» ÁöÁ¤ÇÏ¸é ¿­ Á¦¸ñÀÌ ´ã±ä Ưº°ÇÑ ÃÖ»óÀ§ ÇàÀ» »ý·«ÇÒ ¼ö ÀÖ½À´Ï´Ù. ³ªÁß¿¡ ´Ù½Ã º¸ÀÌ°Ô ÇÏ·Á¸é, GuiControl, +Hdr, MyListView¸¦ »ç¿ëÇϽʽÿÀ.

+

+LV: ¹®ÀÚ¿­ LV ´ÙÀ½¿¡ ¹Ù·Î È®Àå ListView ½ºÅ¸ÀÏ ¹øÈ£¸¦ ÁöÁ¤ÇϽʽÿÀ. ÀÌ·± ½ºÅ¸ÀϵéÀº ¿ÏÀüÈ÷ ÃÑĪ È®Àå ½ºÅ¸ÀÏ°ú ´Ù¸¨´Ï´Ù. +¿¹¸¦ µé¾î, -E0x200¸¦ ÁöÁ¤Çϸé ÄÜÆ®·ÑÀÇ ±âº» Å׵θ®¸¦ ¾ø¾Ö±â À§ÇØ ÃÑĪ È®Àå ½ºÅ¸ÀÏ WS_EX_CLIENTEDGE°¡ Á¦°ÅµË´Ï´Ù. ´ëÁ¶ÀûÀ¸·Î, -LV0x20¸¦ ÁöÁ¤Çϸé LVS_EX_FULLROWSELECTÀÌ Á¦°ÅµË´Ï´Ù.

+

+LV0x10: -LV0x10À» ÁöÁ¤ÇÏ¸é »ç¿ëÀÚ°¡ ¿­ Çì´õ¸¦ ¿ÞÂÊÀ̳ª ¿À¸¥ÂÊÀ¸·Î ²ø¾î¼­ ÀçÁ¤·ÄÇÒ ¼ö ¾ø½À´Ï´Ù. ±×·¸Áö¸¸, ÀÌ·¸°Ô ÇÏ´Â °ÍÀº º¸Åë ºÒÇÊ¿äÇÕ´Ï´Ù. ¿Ö³ÄÇÏ¸é ¿­À» ¹°¸®ÀûÀ¸·Î Àç¹èÄ¡ÇÏ´Â °ÍÀº ½ºÅ©¸³Æ®¿¡ º¸¿©Áö´Â ¿­ ¼ø¼­¿¡ ¿µÇâÀ» ¹ÌÄ¡Áö ¾Ê±â ¶§¹®ÀÔ´Ï´Ù. ¿¹¸¦ µé¾î, ù ¹ø° ¿­Àº ½ºÅ©¸³Æ®ÀÇ °üÁ¡¿¡¼­ ¾ðÁ¦³ª ¿­ 1ÀÔ´Ï´Ù. »ç¿ëÀÚ°¡ ¹°¸®ÀûÀ¸·Î ±× ¿­À» ¿ÞÂÊÀ̳ª ¿À¸¥ÂÊ ´Ù¸¥ ¿­·Î À̵¿Çß´Ù°í ÇÒÁö¶óµµ ¸¶Âù°¡ÁöÀÔ´Ï´Ù.

+

+LV0x20: -LV0x20À» ÁöÁ¤Çϸé Çà¿¡¼­ ù ¹ø° Çʵ带 Ŭ¸¯Çؾ߸¸ ¼±Åõ˴ϴ٠(º¸Åë, ÇÊµå ¾Æ¹«µ¥³ª Ŭ¸¯Çصµ ¼±Åõ˴ϴÙ). ÀÌ·¸°Ô Çϸé +»ç¿ëÀÚ°¡ Çà ±×·ì µÑ·¹ÀÇ »ç°¢ ¹Ú½º¸¦ ²ø¾î¼­ ÇàµéÀ» ´õ ½±°Ô ¼±ÅÃÇÒ ¼ö ÀÖ½À´Ï´Ù.

+

+Multi: -Multi (¸¶À̳ʽº Multi)¸¦ ÁöÁ¤ÇÏ¸é »ç¿ëÀÚ°¡ ÇÑ ¹ø¿¡ Çϳª¾¿¸¸ ¼±ÅÃÇÒ ¼ö ÀÖ½À´Ï´Ù.

+

+NoSortHdr: Çì´õ¸¦ Ŭ¸¯Çصµ ¼±ÅõÇÁö ¾Ê½À´Ï´Ù. +º¸ÅëÀÇ ¹öưó·³ º¸ÀÌÁö ¾Ê°í ³³Â¦ ´­¸° ¸ð½ÀÀÔ´Ï´Ù. ´ëºÎºÐÀÇ ´Ù¸¥ ListView ½ºÅ¸ÀÏ°ú ´Ù¸£°Ô, ÀÌ ½ºÅ¸ÀÏÀº ListView°¡ »ý¼ºµÈ ÈÄ¿¡ º¯°æÇÒ ¼ö ¾ø½À´Ï´Ù.

+

+NoSort: »ç¿ëÀÚ°¡ ¿­ Çì´õ¸¦ Ŭ¸¯Çϸé ÀϾ´Â ÀÚµ¿ Á¤·ÄÀ» ²ü´Ï´Ù. ±×·¸Áö¸¸, ±× Çì´õ´Â ¿©ÀüÈ÷ ½Ã°¢ÀûÀ¸·Î ¹öưó·³ ÇàÀ§ÇÕ´Ï´Ù (´Ü, NoSortHdr°¡ ÁöÁ¤µÈ °æ¿ì´Â ¿¹¿ÜÀÔ´Ï´Ù). °Ô´Ù°¡, g-¶óº§Àº ¿©ÀüÈ÷ ColClick notificationÀ» ¹Þ¾Æ¼­, °Å±â¿¡ ¸ÂÃã Á¤·Ä ¶Ç´Â ±âŸ Á¶Ä¡·Î ÀÀ´äÇÒ ¼ö ÀÖ½À´Ï´Ù.

+

+ReadOnly: -ReadOnly (¸¶À̳ʽº ReadOnly)¸¦ ÁöÁ¤ÇÏ¸é °¢ ÇàÀÇ Ã¹ ¿­¿¡ ÀÖ´Â ÅؽºÆ®¸¦ ÆíÁýÇÒ ¼ö ÀÖ½À´Ï´Ù. ÇàÀ» ÆíÁýÇÏ·Á¸é, ¼±ÅÃÇÑ ´ÙÀ½, F2 Å°¸¦ ´©¸£½Ê½Ã¿À. ´Ù¸¥ ¹æ¹ýÀ¸·Î, ÇàÀ» ÇÑ ¹ø Ŭ¸¯Çؼ­ ¼±ÅÃÇÑ ´ÙÀ½, 0.5 Ãʸ¦ ±â´Ù¸° ´ÙÀ½, °°Àº ÇàÀ» ´Ù½Ã Ŭ¸¯Çϸé ÆíÁýÇÒ ¼ö ÀÖ½À´Ï´Ù.

+

+R: ÇàÀÇ ³ôÀÌ (»ý¼º½Ã). ±âÈ£ R ´ÙÀ½¿¡ ¹Ù·Î ÄÜÆ®·Ñ ¾È¿¡ ¿©À¯¸¦ ÁÖ±â À§ÇØ Çã¿ëÇÒ ÇàÀÇ °³¼ö¸¦ ÁöÁ¤ÇϽʽÿÀ. ¿¹¸¦ µé¾î, R10´Â ÄÜÆ®·Ñ¿¡ 10 Çà ³ôÀ̸¦ ¸¸µì´Ï´Ù. ListView°¡ º¸°í ¸ðµå°¡ ¾Æ´Ï¶ó º¸±â ¸ðµå·Î »ý¼ºµÇ¾ú´Ù¸é, ÄÜÆ®·ÑÀº Å©±â°¡ ÅؽºÆ® ÇàÀÌ ¾Æ´Ï¶ó ¾ÆÀÌÄÜ Çà¿¡ ¸ÂÃß¾î Á¶ÀýµË´Ï´Ù. ÁÖÀÇ: ¾ÆÀÌÄÜÀ» ListViewÀÇ Çà¿¡ Ãß°¡ÇÏ¸é °¢ ÇàÀÇ ³ôÀÌ°¡ Áõ°¡ÇÕ´Ï´Ù. ±×·¡¼­ ÀÌ ¿É¼ÇÀÌ ºÎÁ¤È®ÇÏ°Ô µË´Ï´Ù.

+

+Sort: ÄÜÆ®·ÑÀÌ Ã¹ ¿­ÀÇ ³»¿ë¿¡ ¸ÂÃß¾î ¾ËÆĺª ¼ø¼­·Î Á¤·ÄÀ» À¯ÁöÇÕ´Ï´Ù.

+

+SortDesc: À§¿Í °°Áö¸¸ ³»¸² Â÷¼øÀÔ´Ï´Ù.

+

+WantF2 [v1.0.44+]: -WantF2 (¸¶À̳ʽº WantF2)¸¦ ÁöÁ¤Çϸé F2 Å°·Î ÇöÀç ÃÊÁ¡ÀÌ ÀÖ´Â ÇàÀ» ÆíÁýÇÒ ¼ö ¾ø½À´Ï´Ù. ÀÌ ¼³Á¤Àº -ReadOnlyµµ ÄÑÁ® ÀÖ¾î¾ß È¿°ú°¡ ÀÖ½À´Ï´Ù. ÀÌ ¼³Á¤¿¡ »ó°ü ¾øÀÌ, g-¶óº§Àº ¿©ÀüÈ÷ F2 °íÁö¸¦ ¹Þ½À´Ï´Ù.

+

+(À̸§ ¾ø´Â ¹øÈ£ ½ºÅ¸ÀÏ): À§ÀÇ ½ºÅ¸ÀÏ ¸»°í´Â ÀÚÁÖ »ç¿ëµÇÁö ¾Ê±â ¶§¹®¿¡, ³ª¸ÓÁö ½ºÅ¸ÀÏÀº À̸§ÀÌ ¾ø½À´Ï´Ù. ¸ñ·ÏÀº ListView ½ºÅ¸ÀÏ Å×À̺íÀ» ÂüÁ¶ÇϽʽÿÀ.

+ +

º¸±â ¸ðµå

+

+ListView´Â ´Ù¼¸°¡Áö º¸±â ¸ðµå°¡ ÀÖ½À´Ï´Ù. ±× Áß¿¡ °¡Àå ¸¹ÀÌ »ç¿ëµÇ´Â º¸±â´Â º¸°í ¸ðµåÀÔ´Ï´Ù (ÀÌ°ÍÀÌ ±âº»°ª). ´Ù¸¥ º¸±â ¸ðµå Áß Çϳª¸¦ »ç¿ëÇÏ·Á¸é, ±× À̸§À» ¿É¼Ç ¸ñ·Ï¿¡ ÁöÁ¤ÇϽʽÿÀ. º¸±â ¸ðµå´Â ÄÜÆ®·ÑÀÌ »ý¼ºµÈ ÈÄ¿¡µµ ¹Ù²Ü ¼ö ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î: GuiControl, +IconSmall, MyListView.

+

+Icon: Å«-¾ÆÀÌÄÜ º¸±â·Î º¸¿©ÁÝ´Ï´Ù. ÀÌ º¸±â ¸ðµå ±×¸®°í Report¸¦ Á¦¿ÜÇÏ°í ´Ù¸¥ ¸ðµç ¸ðµå¿¡¼­, ù ¿­ÀÌ ¾Æ´Ñ ´Ù¸¥ Ä÷³¿¡ ÀÖ´Â ÅؽºÆ®´Â º¸ÀÌÁö ¾Ê½À´Ï´Ù. ÀÌ ¸ðµå¿¡¼­ ¾ÆÀÌÄÜÀ» º¸¿©ÁÖ·Á¸é, ListView´Â Å«-¾ÆÀÌÄÜ ImageList¸¦ °Å±â¿¡ ÇÒ´çÇØ¾ß ÇÕ´Ï´Ù.

+

+Tile: Å«-¾ÆÀÌÄÜ º¸±â·Î º¸¿©ÁÝ´Ï´Ù. ±×·¯³ª °¢ Ç׸ñÀÇ ÅؽºÆ®¸¦ ¾Æ·¡°¡ ¾Æ´Ñ ¿À¸¥ÂÊ¿¡ º¸¿©Áشٰųª ÇÏ´Â ÀÎü°øÇÐÀû Â÷ÀÌ°¡ ÀÖ½À´Ï´Ù. + +Checkboxes´Â ÀÌ º¸±â ¸ðµå¿¡¼­ ÀÛµ¿ÇÏÁö ¾Ê½À´Ï´Ù. ¶ÇÇÑ, Windows XP ¹Ì¸¸ÀÌ ¿î¿µ üÁ¦¿¡¼­ ÀÌ ¸ðµå·Î º¸¿©Áֱ⸦ ½ÃµµÇØ ºÁ¾ß ¾Æ¹« È¿°úµµ ¾ø½À´Ï´Ù.

+

+IconSmall: ÀÛÀº-¾ÆÀÌÄÜ º¸±â·Î º¸¿©ÁÝ´Ï´Ù.

+

+List: ¸®½ºÆ® ÇüÅ·ΠÀÛÀº-¾ÆÀÌÄÜ º¸±â·Î º¸¿©ÁÝ´Ï´Ù. ¾ÆÀÌÄÜÀ» ¿­¿¡ º¸¿©ÁÝ´Ï´Ù. ¿­ÀÇ °³¼ö´Â ÄÜÆ®·ÑÀÇ ³Êºñ¿Í ±× ¾È¿¡ µç °¡Àå ³ÐÀº ÅؽºÆ®ÀÇ ³Êºñ¿¡ µû¶ó ´Ù¸¨´Ï´Ù

+

+Report: ´Ù½Ã º¸°í ¸ðµå·Î ÀüȯÇÕ´Ï´Ù. ÀÌ°ÍÀÌ ¿ø·¡ ÃʱⰪÀÔ´Ï´Ù. ¿¹¸¦ µé¾î: GuiControl, +Report, MyListView.

+ +

ListView¿ë ³»Àå ÇÔ¼ö

+

+¸ðµç ListView ÇÔ¼ö´Â ÇöÀç ¾²·¹µåÀÇ ±âº» GUI â¿¡ ÀÛµ¿ÇÕ´Ï´Ù (ÀÌ´Â Gui, 2:Default¸¦ ÅëÇÏ¿© ¹Ù²Ü ¼ö ÀÖ½À´Ï´Ù). ±âº» âÀÌ Á¸ÀçÇÏÁö ¾Ê°Å³ª ListView ÄÜÆ®·ÑÀÌ ¾øÀ¸¸é, ¸ðµç ÇÔ¼ö´Â 0À» µ¹·ÁÁÖ¾î ¹®Á¦¸¦ ¾Ë¸³´Ï´Ù.

+

+â¿¡ Çϳª ÀÌ»óÀÇ ListView ÄÜÆ®·ÑÀÌ ÀÖÀ¸¸é, ±âº»°ªÀ¸·Î ÇÔ¼öµéÀº ÃÖ±Ù¿¡ Ãß°¡µÈ ÄÜÆ®·Ñ¿¡ ÀÛµ¿ÇÕ´Ï´Ù. À̸¦ ¹Ù²Ù·Á¸é, Gui, ListView, ListViewName¸¦ ÁöÁ¤ÇϽʽÿÀ. ¿©±â¿¡¼­ ListViewNameÀº ListViewÀÇ ¿¬°ü º¯¼öÀÇ À̸§À̰ųª, Window Spy°¡ º¸¿©ÁÖ´Â ClassNN ¶Ç´Â(v1.1.04+¿¡¼­) ±×ÀÇ HWNDÀÏ ¼ö ÀÖ½À´Ï´Ù. ÀÏ´Ü º¯°æµÇ¸é, ¸ðµç ±âÁ¸ÀÇ ±×¸®°í ¹Ì·¡ÀÇ ¾²·¹µå´Â ÁöÁ¤µÈ ListView¸¦ »ç¿ëÇÕ´Ï´Ù.

+

+¹®±¸ "row number"°¡ ÀÌ ÆäÀÌÁö¿¡ »ç¿ëµÇ¸é, ListView ¾È¿¡¼­ ÇàÀÇ ÇöÀç À§Ä¡¸¦ ÂüÁ¶ÇÕ´Ï´Ù. ÃÖ»óÀ§ ÇàÀº 1ÀÌ°í, µÎ ¹ø° ÇàÀº 2À̸ç, ±×¸®°í µîµî. ÇÑ ÇàÀÌ Ãß°¡µÈ ÈÄ¿¡, ±×ÀÇ Çà ¹øÈ£´Â ´Ù¸¥ ÇàÀ» Á¤·ÄÇÏ°í Áö¿ì¸ç ±×¸®°í »ðÀÔÇϱ⠶§¹®¿¡ ¹Ù²î´Â °æÇâÀÌ ÀÖ½À´Ï´Ù. ±×·¯¹Ç·Î, ±×ÀÇ ³»¿ë¿¡ ±â¹ÝÇÏ¿© ƯÁ¤ÇÑ Çà(µé)À» ãÀ¸·Á¸é, º¸Åë ȸµ¹ÀÌ ¾È¿¡¼­ LV_GetText()¸¦ »ç¿ëÇÏ´Â °ÍÀÌ °¡Àå ÁÁ½À´Ï´Ù.

+ +

Çà ÇÔ¼ö

+

LV_Add([Options, Field1, Field2, ...])

+

+»õ ÇàÀ» ¸®½ºÆ® ¾Æ·¡¿¡ Ãß°¡ÇÕ´Ï´Ù. ¸Å°³º¯¼ö Field1°ú ±âŸ´Â »õ ÇàÀÇ ¿­·Î¼­, ÅؽºÆ® ¶Ç´Â ¼ýÄ¡ÀÏ ¼ö ÀÖ½À´Ï´Ù (¼ýÄ¡ Ç¥Çö½Ä °á°ú Æ÷ÇÔ). Çʵ带 ¸ðµå ºñ¿ì·Á¸é, "" ºñ½ÁÇÑ °ÍÀ» ÁöÁ¤ÇϽʽÿÀ. ¸ðµç ¿­À» ä¿ì±â¿¡ Çʵ尡 ºÎÁ·Çϸé, ¸¶Áö¸· ¿­Àº ºóä·Î ³²½À´Ï´Ù. ÇÊµæ ³Ê¹« ¸¹´Ù¸é, ¸¶Áö¸· ÇʵåµéÀº ¿ÏÀüÈ÷ ¹«½ÃµË´Ï´Ù.

+

+½ÇÆнÃ, LV_Add()´Â 0À» µ¹·ÁÁÝ´Ï´Ù. ¼º°øÇϸé, »õ Çà ¹øÈ£¸¦ µ¹·ÁÁÝ´Ï´Ù. ListView°¡ Sort ¶Ç´Â SortDesc ½ºÅ¸ÀÏÀ» °¡Áö°í ÀÖ´Ù¸é ¹Ýµå½Ã ¹ÌÀÚ¸· Çà ¹øÈ£ÀÏ ÇÊ¿ä´Â ¾ø½À´Ï´Ù.

+ +

Çà ¿É¼Ç

+

+Options ¸Å°³º¯¼ö´Â¾Æ·¡ ¸®½ºÆ®ÀÇ ´Ü¾î·Î ±¸¼ºµÇ´Â ¹®ÀÚ¿­ÀÔ´Ï´Ù (´ë¼Ò¹®ÀÚ ±¸¹® ¾øÀ½). °¢ ´Ü¾î¸¦ ´Ù¸§ ´Ü¾î¿Í »çÀÌ¿¡ ½ºÆäÀ̽º³ª ÅÇÀ¸·Î ±¸ºÐÇϽʽÿÀ. ¿É¼ÇÀ» Á¦°ÅÇÏ·Á¸é, ¾Õ¿¡ ¸¶À̳ʽº »çÀÎÀ» Ãß°¡ÇϽʽÿÀ. ¿É¼ÇÀ» Ãß°¡ÇÏ·Á¸é, Ç÷¯½º »çÀÎÀ» Çã¿ëÇÏÁö¸¸ Çʼö´Â ¾Æ´Õ´Ï´Ù.

+

+Check: üũǥ½ÄÀ» Çà¿¡ º¸¿©ÁÝ´Ï´Ù (ListView°¡ üũ¹Ú½º¸¦ °¡Áö°í ÀÖ´Ù¸é). ³ªÁß¿¡ ÇØÁ¦ÇÏ·Á¸é, LV_Modify(RowNumber, "-Check")¸¦ »ç¿ëÇϽʽÿÀ.

+

+Col: ´Ü¾î Col ´ÙÀ½¿¡ ¹Ù·Î ¿­ ¹øÈ£¸¦ ÁöÁ¤ÇϽʽÿÀ. °Å±âºÎÅÍ ¸Å°³º¯¼ö Col1°ú ±âŸ¸¦ Àû¿ëÇϱ⠽ÃÀÛÇÕ´Ï´Ù. + +ÀÌ°ÍÀº ÇÑ Çà¿¡¼­ ¿ÞÂÊ¿¡ ÀÖ´Â Çʵ忡 ¿µÇâÀ» ÁÖÁö ¾Ê°í °³º° Çʵ带 º¯°æÇÏ´Â µ¥ LV_Modify()¿Í ¾ÆÁÖ ÀÚÁÖ »ç¿ëµË´Ï´Ù.

+

+Focus: Å°º¸µå ÃÊÁ¡À» Çà¿¡ ¼³Á¤ÇÕ´Ï´Ù (Á¾Á¾ Select¿Í ÇÔ²² »ç¿ëµË´Ï´Ù). ³ªÁß¿¡ ÃÊÁ¡À» ÇØÁ¦ÇÏ·Á¸é, LV_Modify(RowNumber, "-Focus")À» »ç¿ëÇϽʽÿÀ.

+

+Icon: ´Ü¾î Icon ´ÙÀ½¿¡ ¹Ù·Î ÀÌ ÇàÀÇ ¾ÆÀÌÄÜ ¹øÈ£¸¦ ÁöÁ¤ÇÕ´Ï´Ù. ÀÌ ¾ÆÀÌÄÜÀº ù ¿­ÀÇ ¿ÞÂÊ¿¡ º¸¿©Áý´Ï´Ù. ÀÌ ¿É¼ÇÀÌ ¾øÀ¸¸é, ImageList¿¡¼­ ù ¾ÆÀÌÄÜÀÌ »ç¿ëµË´Ï´Ù. ºó ¾ÆÀÌÄÜÀ» º¸¿©ÁÖ·Á¸é, ImageListÀÇ ¾ÆÀÌÄÜÀÇ ¹øÈ£º¸´Ù ´õ Å« ¹øÈ£¸¦ ÁöÁ¤ÇϽʽÿÀ. ÄÜÆ®·Ñ¿¡ ÀÛÀº-¾ÆÀÌÄÜ ImageList°¡ ¾ø´Ù¸é, º¸°í ¸ðµå¿¡¼­ ¾ÆÀÌÄܵµ º¸ÀÌÁö ¾Ê°í ¾ÆÀÌÄÜÀ» À§ÇØ ½ºÆäÀ̽ºµµ º¸Á¸µÇÁö ¾Ê½À´Ï´Ù.

+

+Select: ÇàÀ» ¼±ÅÃÇÕ´Ï´Ù. ³ªÁß¿¡ ÇØÁ¦ÇÏ·Á¸é, LV_Modify(RowNumber, "-Select")¸¦ »ç¿ëÇϽʽÿÀ. ÇàµéÀ» ¼±ÅÃÇÒ ¶§, º¸Åë Àû¾îµµ ÇÑ ÇàÀº ¾ðÁ¦³ª ÃÊÁ¡ Ư¼ºÀ» °¡Áö´ÂÁö È®ÀÎÇÏ´Â °ÍÀÌ °¡Àå ÁÁ½À´Ï´Ù. ¿Ö³ÄÇÏ¸é ±×·¡¼­ Apps Å°°¡ ±×ÀÇ ¹®¸Æ ¸Þ´º¸¦ (ÀÖ´Ù¸é) ÃÊÁ¡ Çà ±Ùó¿¡ º¸¿©ÁÙ ¼ö Àֱ⠶§¹®ÀÔ´Ï´Ù. ´Ü¾î Select´Â ¼±ÅÃÀûÀ¸·Î ´ÙÀ½¿¡ ¹Ù·Î 0 ¶Ç´Â 1ÀÌ µû¶ó¿Í ½ÃÀÛ »óŸ¦ ¾Ë·ÁÁÙ ¼ö ÀÖ½À´Ï´Ù. ´Ù¸¥ ¸»·Î, "Select" ±×¸®°í "Select" . VarContainingOne´Â °°½À´Ï´Ù (¿©±â¿¡¼­ Á¡Àº °áÇÕ ¿¬»êÀÚÀÔ´Ï´Ù). ÀÌ Å×Å©´ÐÀº ¶ÇÇÑ À§ÀÇ Focus ±×¸®°í Check¿¡µµ ÀÛµ¿ÇÕ´Ï´Ù

+

+Vis [v1.0.44+]: ÁöÁ¤µÈ ÇàÀÌ ÇÊ¿äÇϸé ListView¸¦ ½ºÅ©·ÑÇؼ­ ¿ÏÀüÈ÷ º¸À̵µ·Ï È®ÀÎÇÕ´Ï´Ù. ÀÌ°ÍÀº LV_Modify()¿¡¸¸ ¿µÇâÀ» ÁÝ´Ï´Ù; ¿¹¸¦ µé¾î: LV_Modify(RowNumber, "Vis").

+ +

LV_Insert(RowNumber [, Options, Col1, Col2, ...])

+

+LV_Add()¿Í µ¿ÀÏÇÏ°Ô ÇàÀ§ÇÕ´Ï´Ù. ´Ü, ù ¹ø° ¸Å°³º¯¼ö°¡ ´Ù¸¨´Ï´Ù. ÀÌ ¸Å°³º¯¼ö´Â »õ·Î »ðÀÔµÈ ÇàÀÇ Çà ¹øÈ£¸¦ ÁöÁ¤ÇÕ´Ï´Ù. RowNumber ÀÌÇÏÀÇ ÇàÀº ¸ðµÎ ¾Æ·¡·Î À̵¿ÇØ »õ ÇàÀ» À§ÇØ ÀÚ¸®¸¦ ³» ÁÝ´Ï´Ù. RowNumber°¡ ¸®½ºÆ®ÀÇ Çà °¹¼öº¸´Ù ´õ Å©¸é (±×·¸Áö¸¸ 2147483647 ³ôÀ̱îÁö Çã¿ëµÊ), ±× »õ ÇàÀº ¸®½ºÆ® ³¡¿¡ Ãß°¡µË´Ï´Ù. Options¿¡ °üÇÑ °ÍÀº, Çà ¿É¼ÇÀ» ÂüÁ¶ÇϽʽÿÀ.

+

+LV_Modify(RowNumber, Options [, NewCol1, NewCol2, ...])

+

+ÇàÀÇ ÅؽºÆ®¿Í ¼Ó¼ºÀ» º¯°æÇÕ´Ï´Ù. ¼º°øÇϸé 1 ½ÇÆÐÇϸé 0À» µ¹·ÁÁÝ´Ï´Ù.RowNumber°¡ 0À̸é, ÄÜÆ®·Ñ ¾ÈÀÇ ¸ðµç ÇàÀÌ º¯°æµË´Ï´Ù (ÀÌ °æ¿ì ÇÔ¼ö´Â ¿ÏÀüÈ÷ ¼º°øÇϸé 1À» µ¹·ÁÁÖ°í ºÎºÐÀûÀ¸·Îµµ ½ÇÆÐÇϸé 0À» µ¹·ÁÁÝ´Ï´Ù). ù µÎ °³ÀÇ ¸Å°³º¯¼ö¸¸ Á¸ÀçÇϸé, ±× ÇàÀÇ ¼Ó¼º¸¸ º¯°æµÇ°í ±×ÀÇ ÅؽºÆ®´Â º¯°æµÇÁö ¾Ê½À´Ï´Ù. ºñ½ÁÇÏ°Ô, ³Ê¹« ¸Å°³º¯¼ö°¡ Àû¾î¼­ ¸ðµç ¿­À» ó¸®ÇÒ ¼ö ¾øÀ¸¸é, ¸¶Áö¸·¿¡ ÀÖ´Â ¿­µéÀº ¹Ù²îÁö ¾Ê½À´Ï´Ù. ColN option¸¦ »ç¿ëÇÏ¸é ´Ù¸¥ ¿­À» °Çµå¸®Áö ¾Ê°í ƯÁ¤ÇÑ ¿­À» ¾÷µ¥ÀÌÆ®ÇÒ ¼ö ÀÖ½À´Ï´Ù. ´Ù¸¥ ¿É¼ÇÀ¸, Çà ¿É¼ÇÀ» ÂüÁ¶ÇϽʽÿÀ.

+ +

LV_Delete([RowNumber])

+

+ÀÌ ¸Å°³º¯¼ö¸¦ »ý·«Çϸé, ListView ¾ÈÀÇ ¸ðµç ÇàÀÌ »èÁ¦µË´Ï´Ù. ±×·¸Áö ¾ÊÀ¸¸é, ¿ÀÁ÷ ÁöÁ¤µÈ RowNumber¸¸ »èÁ¦µË´Ï´Ù. ¼º°øÇϸé 1 ½ÇÆÐÇϸé 0À» µ¹·ÁÁÝ´Ï´Ù.

+ +

¿­ ÇÔ¼ö

+

+LV_ModifyCol([ColumnNumber, Options, ColumnTitle])

+

+ÁöÁ¤µÈ ¿­ÀÇ ÅؽºÆ®¿Í ¼Ó¼º ±×¸®°í Çì´õ¸¦ º¯°æÇÕ´Ï´Ù. ù ¿­Àº ¹øÈ£°¡ 1ÀÔ´Ï´Ù (0 ¾Æ´Ô). ¸ðµç ¸Å°³º¯¼ö¸¦ »ý·«Çϸé, ¸ðµç ¿­ÀÇ ³Êºñ°¡ ÇàÀÇ ³»¿ë¿¡ ¸Â°Ô Á¶ÀýµË´Ï´Ù. ù ¸Å°³º¯¼ö¸¸ Á¸ÀçÇϸé, ¿ÀÁ÷ ÁöÁ¤µÈ Ä÷³¸¸ ÀÚµ¿À¸·Î Å©±â°¡ Á¶ÀýµË´Ï´Ù. ÀÚµ¿ Å©±â Á¶ÀýÀº º¸°í¼­ (ÀÚ¼¼ÇÏ°Ô) º¸±â ¸ðµå¿¡¼­¸¸ È¿°ú°¡ ÀÖ½À´Ï´Ù. ÀÌ ÇÔ¼ö´Â ¼º°øÇϸé 1 ½ÇÆÐÇϸé 0À» µ¹·ÁÁÝ´Ï´Ù.

+ +

¿­ ¿É¼Ç

+

+Options ¸Å°³º¯¼ö´Â ¾Æ·¡ ¸®½ºÆ®ÀÇ ´Ü¾î·Î ±¸¼ºµÈ ¹®ÀÚ¿­ÀÔ´Ï´Ù (´ë¼Ò¹®ÀÚ ±¸ºÐ ¾ÈÇÔ). °¢ ´Ü¾î¸¦ ´ÙÀ½ ´Ü¾î¿Í ½ºÆäÀ̽º³ª ÅÇÀ¸·Î °¡¸£½Ê½Ã¿À. ¿É¼ÇÀ» Á¦°ÅÇÏ·Á¸é, ±× ¾Õ¿¡ ¸¶À̳ʽº »çÀÎÀ» Ãß°¡ÇÕ´Ï´Ù. ¿É¼ÇÀ» Ãß°¡ÇÏ·Á¸é ±× ¾Õ¿¡ Ç÷¯½º »çÀÎÀ» Çã¿ëÇÏÁö¸¸ Çʼö´Â ¾Æ´Õ´Ï´Ù.

+ +

¿­ ¿É¼Ç: ÀϹÝ

+

+N: N ¿¡ ¿­ÀÇ »õ ³Êºñ¸¦ Çȼ¿ ´ÜÀ§·Î ÁöÁ¤ÇϽʽÿÀ. ÀÌ ¹øÈ£´Â ¿É¼ÇÀÌ Çϳª¸¸ ÀÖ´Ù¸é µû¿ÈÇ¥ ó¸®ÇÏÁö ¾Ê¾Æµµ µË´Ï´Ù. ¿¹¸¦ µé¾î ´ÙÀ½ µÎ ¿¹Á¦´Â ¸ðµÎ À¯È¿ÇÕ´Ï´Ù: LV_ModifyCol(1, 50) ±×¸®°í LV_ModifyCol(1, "50 Integer").

+

+Auto: ¿­ÀÇ ³Êºñ¸¦ ±×ÀÇ ³»¿ë¿¡ ¸Â°Ô Á¶ÀýÇÕ´Ï´Ù. ÀÌ°ÍÀº º¸°í¼­ (ÀÚ¼¼ÇÏ°Ô) º¸±â ¸ðµå°¡ ¾Æ´Ï¸é ¾Æ¹« ¿µÇâÀÌ ¾ø½À´Ï´Ù.

+

+AutoHdr: ¿­ÀÇ ³Êºñ¸¦ ±×ÀÇ ³»¿ë°ú Çì´õ ÅؽºÆ®ÀÇ ³Êºñ¿¡ ¸Â°Ô ´õ Å«ÂÊÀ¸·Î Á¶ÀýÇÕ´Ï´Ù. ¸¶Áö¸· ¿­¿¡ Àû¿ëµÇ¸é, ListView¿¡¼­ ³ª¸ÓÁö ¸ðµç ½ºÆäÀ̽ºÀÇ ³Êºñ¸¸Å­ ³Ð¾îÁý´Ï´Ù. º¸Åë ÇàµéÀ» Ãß°¡ÇÑ ÈÄ¿¡¸¸ ÀÌ ¼³Á¤À» Àû¿ëÇÏ´Â °ÍÀÌ ÁÁ½À´Ï´Ù. ¿Ö³ÄÇÏ¸é ±×·¡¾ß ¸¶Áö¸· ¿­ÀÇ Å©±â¸¦ Á¶ÀýÇÒ ¶§ »õ·Î µµÂøÇÑ ¼öÁ÷ ½ºÅ©·Ñ¹Ù¸¦ °í·ÁÇÒ ¼ö Àֱ⠶§¹®ÀÔ´Ï´Ù. ÀÌ ¿É¼ÇÀº º¸°í¼­ (ÀÚ¼¼ÇÏ°Ô) º¸±â ¸ðµå°¡ ¾Æ´Ï¸é ¾Æ¹« È¿°ú°¡ ¾ø½À´Ï´Ù.

+

+Icon: ´Ü¾î Icon ´ÙÀ½¿¡ ¹Ù·Î ImageListÀÇ ¾ÆÀÌÄÜ ¹øÈ£¸¦ ÁöÁ¤ÇÏ¸é ¿­ Çì´õÀÇ ÅؽºÆ® ¿·¿¡ º¸¿©ÁÙ ¼ö ÀÖ½À´Ï´Ù. -Icon (¸¶À̳ʽº icon)À» ÁöÁ¤ÇÏ¸é ±âÁ¸ÀÇ ¾ÆÀÌÄÜÀ» Á¦°ÅÇÒ ¼ö ÀÖ½À´Ï´Ù.

+

+IconRight: ¾ÆÀÌÄÜÀ» ¿ÞÂÊÀÌ ¾Æ´Ï¶ó ¿­ÀÇ ¿À¸¥ÂÊ¿¡ ¹èÄ¡ÇÕ´Ï´Ù.

+ +

¿­ ¿É¼Ç: µ¥ÀÌÅÍ À¯Çü

+

+Float: Á¤·ÄÀÇ ¸ñÀûÀ¸·Î, ÀÌ ¿­¿¡ ºÎµ¿ ¼Ò¼öÁ¡ ¼ö°¡ µé¾î ÀÖ´Ù´Â °ÍÀ» ³ªÅ¸³À´Ï´Ù (½ÊÀ°Áø Çü½ÄÀº Áö¿øÇÏÁö ¾Ê½À´Ï´Ù). Float¿Í Text ¿­¿¡ ´ëÇÏ¿© Á¤·ÄÀÇ ¼öÇ༺´ÉÀº Á¤¼ö¿¡ ºñÇØ ÃÖ´ë 25 ¹è±îÁö ´À¸± ¼ö ÀÖ½º´Ï´Ù.

+

+Integer: Á¤·ÄÀÇ ¸ñÀûÀ¸·Î, ÀÌ ¿­¿¡ Á¤¼ö°¡ µé¾î ÀÖ´Ù´Â °ÍÀ» ³ªÅ¸³À´Ï´Ù. ÀûÀýÇÏ°Ô Á¤·ÄµÇ·Á¸é, °¢ Á¤¼ö´Â 32-ºñÆ®¿©¾ß ÇÕ´Ï´Ù; Áï, ¹üÀ§°¡ -2147483648¿¡¼­ 2147483647 À̳»¿©¾ß ÇÕ´Ï´Ù. °ªÀÌ Á¤¼ö°¡ ¾Æ´Ï¶ó¸é, Á¤·ÄÇÒ ¶§ 0À¸·Î °£Áֵ˴ϴ٠(´Ü, ¼ýÀÚ·Î ½ÃÀÛÇÏ´Â °æ¿ì´Â ¿¹¿ÜÀÔ´Ï´Ù. ÀÌ °æ¿ì ±× ¼ýÀÚ°¡ »ç¿ëµË´Ï´Ù). ¼ýÀÚ´Â ½ÊÀ°Áø Çü½Ä ¶Ç´Â ½ÊÁø Çü½ÄÀ¸·Î ³ªÅ¸³¯ ¼ö ÀÖ½À´Ï´Ù (¿¹, 0xF9E0).

+

+Text: ¿­À» ´Ù½Ã ÅؽºÆ®-¸ðµå Á¤·Ä·Î ¹Ù²ß´Ï´Ù. ÀÌ°ÍÀÌ ¸ðµç ¿­¿¡ ±âº»°ªÀÔ´Ï´Ù. ¿ÀÁ÷ ÅؽºÆ®ÀÇ ¾ÕÂÊ 8190 ±ÛÀÚ¸¸ Á¤·ÄÀÇ ¸ñÀûÀ¸·Î Àǹ̰¡ ÀÖ½À´Ï´Ù (´Ü, Logical ¿É¼ÇÀº¿¹¿ÜÀε¥, ÀÌ °æ¿ì Á¦ÇÑ 4094 ±ÛÀÚÀÔ´Ï´Ù).

+ +

¿­ ¿É¼Ç: Á¤·Ä / Á¤µ·

+

+Center: ÅؽºÆ®¸¦ ¿­ °¡¿îµ¥·Î Á¤·ÄÇÕ´Ï´Ù. Á¤¼ö ¶Ç´Â ºÎµ¿ ¼Ò¼öÁ¡ ¼ö ¿­À» Áß¾Ó Á¤·ÄÇÏ·Á¸é, ´Ü¾î Center¸¦ ´Ü¾î Integer ¶Ç´Â Float µÚ¿¡ ³õÀ¸½Ê½Ã¿À.

+

+Left: ¿­ÀÇ ÅؽºÆ®¸¦ ¿ÞÂÊ¿¡ Á¤·ÄÇÕ´Ï´Ù. ÀÌ°ÍÀÌ ¸ðµç ¿­ÀÇ ±âº» °ªÀÔ´Ï´Ù. ¿¹Àü ¿î¿µÃ¼Á¦¿¡¼­, ù ¿­Àº °­Á¦·Î ¿ÞÂÊ Á¤·ÄµÉ ¼ö ÀÖ½À´Ï´Ù.

+

+Right: ¿­ÀÇ ÅؽºÆ®¸¦ ¿À¸¥ÂÊ¿¡ Á¤·ÄÇÕ´Ï´Ù. ÀÌ ¼Ó¼ºÀº Integer ±×¸®°í Float ¿­¿¡´Â ÁöÁ¤ÇÒ ÇÊ¿ä°¡ ¾ø½À´Ï´Ù. ¿Ö³ÄÇÏ¸é ±âº»ÀûÀ¸·Î ¿ìÃø Á¤·ÄÀ̱⠶§¹®ÀÔ´Ï´Ù. ±âº» °ªÀº "Integer Left" ¶Ç´Â "Float Center"¿Í °°ÀÌ ÁöÁ¤ÇØ ¹Ù²Ü ¼ö ÀÖ½À´Ï´Ù.

+ +

¿­ ¿É¼Ç: Á¤·Ä

+

+Case: ¿­ÀÇ Á¤·ÄÀº ´ë¼Ò¹®ÀÚ¸¦ ±¸ºÐÇÕ´Ï´Ù (only ÅؽºÆ® ¿­¿¡¸¸ ¿µÇâÀ» ¹ÌĨ´Ï´Ù). ¿É¼Ç Case, CaseLocale, ±×¸®°í LogicalÀÌ ¸ðµÎ »ý·«µÇ¸é, ´ë¹®ÀÚ A-Z¸¦ Á¤·ÄÀÇ ¸ñÀûÀ¸·Î ¼Ò¹®ÀÚ¿Í µ¿ÀÏÇÏ°Ô Ãë±ÞÇÕ´Ï´Ù.

+

+CaseLocale [v1.0.43.03+]: ¿­ÀÇ Á¤·ÄÀº ÇöÀç »ç¿ëÀÚÀÇ ·ÎÄÉÀÏ¿¡ ±â¹ÝÇÏ¿© ´ë¼Ò¹®ÀÚ¸¦ ±¸ºÐÇÏÁö ¾Ê½À´Ï´Ù (ÅؽºÆ® Ä÷³¿¡¸¸ ¿µÇâÀ» ¹ÌĨ´Ï´Ù). ¿¹¸¦ µé¾î, ´ëºÎºÐÀÇ ¿µ¾î¿Í ¼­±¸ À¯·´ ·ÎÄÉÀÏÀº ±âÈ£ A-Z ±×¸®°í Ä¿Í Ü °°Àº ANSI ±âÈ£µéÀ» ¼Ò¹®ÀÚ·Î Ãë±ÞÇÕ´Ï´Ù. ÀÌ ¹æ¹ýÀº ¶ÇÇÑ "word sort"¸¦ »ç¿ëÇϴµ¥, ÀÌ°ÍÀº "coop" ±×¸®°í "co-op"¿Í °°Àº ´Ü¾îµéÀÌ ÇÔ²² ÀÖ´Â °Íó·³ ÇÏÀÌÇ°ú ¾îÆ÷½ºÆ®·ÎÇǸ¦ Ãë±ÞÇÕ´Ï´Ù.

+

+Desc: ³»¸² Â÷¼øÀÔ´Ï´Ù. »ç¿ëÀÚ°¡ Á¤·ÄÀ» ½ÃÀÛÇÏ¸é ¿­À» ³»¸² Â÷¼øÀ¸·Î ½ÃÀÛÇÕ´Ï´Ù.

+

+Logical [v1.0.44.12+]: CaseLocale°ú °°½À´Ï´Ù. ´Ü, ÅؽºÆ®¿¡¼­ ¼ýÀÚ ¿¬¼ÓÀº ´Ü¼øÈ÷ ¹®ÀÚ°¡ ¾Æ´Ï¶ó ¼ø¼öÇÑ ¼ýÀÚ·Î Ãë±ÞµË´Ï´Ù. ¿¹¸¦ µé¾î, ¹®ÀÚ¿­ "T33"Àº "T4"º¸´Ù Å©´Ù°í °£Áֵ˴ϴÙ. Logical Àº Windows XP ÀÌ»óÀ» ¿ä±¸ÇÕ´Ï´Ù (ÀÌÀü ¿î¿µÃ¼Á¦¿¡¼­´Â CaseLocaleÀÌ ´ë½Å ÀÚµ¿À¸·Î »ç¿ëµË´Ï´Ù). °Ô´Ù°¡, Logical°ú Case´Â ÇöÀç ¼­·Î ¹èŸÀûÀÔ´Ï´Ù: µÑ Áß¿¡ ÃÖ±Ù¿¡ ÁöÁ¤µÈ °Í¸¸ È¿°ú°¡ ÀÖ½À´Ï´Ù.

+

+NoSort: »ç¿ëÀÚ°¡ ÀÌ ¿­À» Ŭ¸¯ÇÏ´õ¶óµµ ÀÚµ¿À¸·Î Á¤·ÄÇÏÁö ¸øÇϵµ·Ï ¸·½À´Ï´Ù. ¸ðµç ¿­¿¡ Á¤·ÄÀ» ²ô·Á¸é NoSort¸¦ ListViewÀÇ ¿É¼Ç¿¡ Æ÷ÇÔ½ÃÅ°½Ê½Ã¿À. ListView¿¡ g-¶óº§ÀÌ ÀÖ´Ù¸é, »ç¿ëÀÚ°¡ Á¤·Ä-ºÒ°¡ Ä÷³À» Ŭ¸¯ÇÒ ¶§ ColClick °íÁö¸¦ ¿©ÀüÈ÷ ¹Þ½À´Ï´Ù.

+

+Sort: Áï½Ã ¿À¸§ Â÷¼øÀ¸·Î ¿­À» Á¤·ÄÇÕ´Ï´Ù (Desc ¿É¼ÇÀÌ ÁöÁ¤µÇ¾î ÀÖ´õ¶óµµ ¿À¸§Â÷¼øÀ¸·Î Á¤·ÄÇÕ´Ï´Ù).

+

+SortDesc: Áï½Ã ¿­À» ³»¸² Â÷¼øÀ¸·Î Á¤·ÄÇÕ´Ï´Ù.

+

+Uni: ´Ü¹æÇâÀ¸·Î Á¤·ÄÇÕ´Ï´Ù. ÀÌ·¸°Ô ÇÏ¸é °°Àº ¿­¿¡ µÎ ¹ø Ŭ¸¯ÇÏ´õ¶óµµ Á¤·Ä ¹æÇâÀÌ ¹Ù²îÁö ¾Ê½À´Ï´Ù.

+ +

LV_InsertCol(ColumnNumber [, Options, ColumnTitle])

+

+»õ ¿­À» »ý¼ºÇؼ­ ±×°ÍÀ» ÁöÁ¤µÈ ColumnNumber·Î »ðÀÔÇÕ´Ï´Ù (´Ù¸¥ ¿­Àº ¿À¸¥ÂÊÀ¸·Î À̵¿Çؼ­ µé¾î°¡ °ø°£À» ¸¸µì´Ï´Ù). ù ¿­Àº 1ÀÔ´Ï´Ù (0ÀÌ ¾Æ´Ô). ColumnNumberÀÌ ÇöÀç ÄÜÆ®·Ñ¿¡ ÀÖ´Â ¿­ÀÇ ÃÑ °³¼öº¸´Ù Å©¸é, ±× »õ ¿­Àº ¸®½ºÆ® ³¡¿¡ Ãß°¡µË´Ï´Ù. »õ·Î »ðÀÔµÈ ¿­Àº ±× ¾Æ·¡¿¡ ºó ³»¿ëÀ» °¡Áö°í ½ÃÀÛÇÕ´Ï´Ù. ´Ü, ù ¿­ÀÎ °æ¿ì´Â Á¦¿ÜÇÕ´Ï´Ù. ÀÌ °æ¿ì´Â ¾ÕÀÇ Ã¹ ¿­ÀÇ ³»¿ëÀ» »ó¼Ó¹Þ°í ±× ù ¿­Àº ºó ³»¿ëÀ» ¾ò½À´Ï´Ù. »õ ¿­ÀÇ ¼Ó¼ºÀº -- ¿¹¸¦ µé¾î Á¤¼ö Á¤·ÄÀΰ¡ ¾Æ´Ñ°¡ ÇÏ´Â ¼Ó¼ºÀº -- ¾ðÁ¦³ª ±âº»°ªÀ» °¡Áö°í ½ÃÀÛÇÕ´Ï´Ù. ´Ü, OptionsÀ» ÅëÇÏ¿© ¹Ù²Û °æ¿ì´Â ¿¹¿ÜÀÔ´Ï´Ù. ÀÌ ÇÔ¼ö´Â »õ ¿­ÀÇ À§Ä¡ ¹øÈ£¸¦ µ¹·ÁÁÝ´Ï´Ù (½ÇÆÐÇϸé 0). ListView¿¡ÀÇ ¿­ÀÇ ÃÖ´ë °³¼ö´Â 200ÀÔ´Ï´Ù.

+ +

LV_DeleteCol(ColumnNumber)

+

+ÁöÁ¤µÈ ¿­°ú ±× ¾Æ·¡ÀÇ ¸ðµç ³»¿ëÀ» »èÁ¦ÇÕ´Ï´Ù. ¼º°øÇϸé 1 ½ÇÆÐÇϸé 0À» µ¹·ÁÁÝ´Ï´Ù. ¿­ÀÌ ÀÏ´Ü »èÁ¦µÇ¸é, ±× ¿À¸¥ÂÊ¿¡ ÀÖ´Â ¿­µéÀÇ ¹øÈ£´Â 1 ¸¸Å­¾¿ ÁÙ¾îµì´Ï´Ù. °á°úÀûÀ¸·Î, LV_DeleteCol(2)¸¦ µÎ ¹ø È£ÃâÇÏ¸é µÎ ¹ø° ¼¼ ¹ø° ¿­ÀÌ »èÁ¦µË´Ï´Ù. Windows XPº¸´Ù ¿À·¡µÈ ¿î¿µ üÁ¦¿¡¼­, ¿ø·¡ÀÇ Ã¹ ¿­À» »èÁ¦ÇÏ·Á°í ½ÃµµÇÏ¸é ½ÇÆÐÇÏ°í 0À» µ¹·ÁÁÝ´Ï´Ù.

+ +

ListView·ÎºÎÅÍ µ¥ÀÌÅÍ ¾ò±â

+

LV_GetCount(["Selected | Column"])

+

+¸Å°³º¯¼ö¸¦ »ý·«Çϸé, ÇÔ¼ö´Â ÄÜÆ®·Ñ¿¡ ÀÖ´Â ÇàÀÇ ÃÑ °³¼ö¸¦ µ¹·ÁÁÝ´Ï´Ù. ¸Å°³º¯¼ö°¡ "S" ¶Ç´Â "Selected"À̸é, ¼±ÅõÈ/°­Á¶µÈ Çàµé¸¸ °è»ê¿¡ Æ÷ÇԵ˴ϴÙ. ¸Å°³º¯¼ö°¡ "Col" ¶Ç´Â "Column"À̸é, ÇÔ¼ö´Â ÄÜÆ®·Ñ¿¡ ÀÖ´Â ¿­ÀÇ ÃÑ °³¼ö¸¦ µ¹·ÁÁÝ´Ï´Ù. ÀÌ ÇÔ¼ö´Â ¾ðÁ¦³ª ¼ø°£ÀûÀÔ´Ï´Ù. ¿Ö³ÄÇϸé ÄÜÆ®·ÑÀÌ ÀÌ·± °è¼öµéÀ» ÃßÀû°ü¸®ÇÏ°í Àֱ⠶§¹®ÀÔ´Ï´Ù.

+

+ÀÌ ÇÔ¼ö´Â Á¾Á¾ LoopÀÇ ÃÖ»ó´Ü¿¡ »ç¿ëµÇ¸ç, ÀÌ °æ¿ì ÇÔ¼ö´Â (ù ¹Ýº¹ÀÌ ½ÃÀÛÇϱâ Àü¿¡) ¿ÀÁ÷ ÇÑ ¹ø¸¸ È£ÃâµË´Ï´Ù. ¿¹¸¦ µé¾î:

+
Loop % LV_GetCount()
+{
+    LV_GetText(RetrievedText, A_Index)
+    if InStr(RetrievedText, "some filter text")
+        LV_Modify(A_Index, "Select")  ; ù Çʵ忡 ¿©°ú ÅؽºÆ®°¡ µé¾î ÀÖ´Â ÇàÀ» ¼±ÅÃÇÕ´Ï´Ù.
+}
+

+ListViewÀÇ ¿­ ³Êºñ¸¦ ¿­¶÷ÇÏ·Á¸é -- INI ÆÄÀÏ¿¡ ÀúÀåÇؼ­ ¼¼¼Ç »çÀÌ¿¡ ±â¾ïÇÏ´Â µ¥ »ç¿ëÇϱâ À§ÇØ -- ´ÙÀ½ ¿¹Á¦¸¦ µû¸£½Ê½Ã¿À:

+ +
Gui +LastFound
+Loop % LV_GetCount("Column")
+{
+    SendMessage, 4125, A_Index - 1, 0, SysListView321  ; 4125 is LVM_GETCOLUMNWIDTH.
+    MsgBox Column %A_Index%'s width is %ErrorLevel%.
+}
+

LV_GetNext([StartingRowNumber, "Checked | Focused"])

+

+´ÙÀ½À¸·Î ¼±ÅõÈ, üũµÈ ¶Ç´Â ÃÊÁ¡ÀÌ ÀÖ´Â ÇàÀÇ ¹øÈ£¸¦ ¿­¶÷ÇÕ´Ï´Ù. ¾Æ¹«°Íµµ ¹ß°ßµÇÁö ¾ÊÀ¸¸é, 0ÀÌ ¹ÝȯµË´Ï´Ù. StartingRowNumber°¡ »ý·«µÇ°Å³ª 1 º¸´Ù ÀÛÀ¸¸é, °Ë»öÀº ¸®½ºÆ®ÀÇ »ó´Ü¿¡¼­ ½ÃÀÛÇÕ´Ï´Ù. ±×·¸Áö ¾ÊÀ¸¸é °Ë»öÀº StartingRowNumber ´ÙÀ½ ÇàºÎÅÍ ½ÃÀÛÇÕ´Ï´Ù. µÎ ¹ø° ¸Å°³º¯¼ö°¡ »ý·«µÇ¸é, ÇÔ¼ö´Â ´Ù¸¥ ¼±ÅõÈ/°­Á¶µÈ ÇàÀ» °Ë»öÇÕ´Ï´Ù. ±×·¸Áö ¾ÊÀ¸¸é "C" ¶Ç´Â "Checked"¸¦ ÁöÁ¤ÇØ ´ÙÀ½ üũµÈ ÇàÀ» °Ë»öÇϽʽÿÀ; ¾Æ´Ï¸é "F" ¶Ç´Â "Focused"¸¦ ÁöÁ¤ÇØ ÃÊÁ¡ÀÌ ÀÖ´Â ÇàÀ» ãÀ¸½Ê½Ã¿À (Àü ¸®½ºÆ®¸¦ ÅëƲ¾î ÃÊÁ¡ÀÌ ÀÖ´Â ÇàÀº Àý´ë Çϳª ¹Û¿¡ ¾ø½À´Ï´Ù. ±×¸®°í Á¾Á¾ ÀüÇô ¾øÀ» ¼öµµ ÀÖ½À´Ï´Ù). ´ÙÀ½ ¿¹Á¦´Â ListView¿¡¼­ ¼±ÅÃµÈ ¸ðµç ÇàµéÀ» º¸°í ÇÕ´Ï´Ù:

+ +
RowNumber = 0  ; ÀÌ·¸°Ô Çϸé ù ȸµ¹ÀÌ ¹Ýº¹ÀÌ ¸®½ºÆ®ÀÇ ÃÖ»ó´Ü¿¡¼­ °Ë»öÀ» ½ÃÀÛÇÕ´Ï´Ù.
+Loop
+{
+    RowNumber := LV_GetNext(RowNumber)  ; ¾ÕÀÇ ¹Ýº¹¿¡¼­ ¹ß°ßÇÑ Çà ¹Ù·Î ´ÙÀ½ºÎÅÍ °Ë»öÀ» Àç°³ÇÕ´Ï´Ù.
+    if not RowNumber  ; À§¿¡¼­ 0À» µ¹·ÁÁÖ¾ú°í, ±×·¡¼­ ´õ ÀÌ»ó ¼±ÅÃµÈ ÇàÀÌ ¾ø½À´Ï´Ù.
+        break
+    LV_GetText(Text, RowNumber)
+    MsgBox The next selected row is #%RowNumber%, whose first field is "%Text%".
+}
+

+ƯÁ¤ Çà ¹øÈ£°¡ üũµÇ¾î ÀÖ´ÂÁö ¾Ë¾Æ ³»´Â ¶Ç´Ù¸¥ ¹æ¹ýÀº ´ÙÀ½°ú °°½À´Ï´Ù:

+ +
Gui +LastFound
+SendMessage, 4140, RowNumber - 1, 0xF000, SysListView321  ; 4140´Â LVM_GETITEMSTATE.ÀÔ´Ï´Ù. 0xF000´Â LVIS_STATEIMAGEMASKÀÔ´Ï´Ù.
+IsChecked := (ErrorLevel >> 12) - 1  ; RowNumber°¡ üũµÇ¾î ÀÖÀ¸¸é IsChecked¿¡ ÂüÀÌ ¼³Á¤µÇ°í,±×·¸Áö ¾ÊÀ¸¸é °ÅÁþÀÌ ¼³Á¤µË´Ï´Ù.
+ +

LV_GetText(OutputVar, RowNumber [, ColumnNumber])

+

+ÁöÁ¤µÈ RowNumber¿Í ColumnNumber¿¡¼­ ÅؽºÆ®¸¦ ã¾Æ OutputVar¿¡ ÀúÀåÇÕ´Ï´Ù. ColumnNumber¸¦ »ý·«Çϸé, ±âº»°ªÀº 1ÀÔ´Ï´Ù (ù ¿­¿¡ ÀÖ´Â ÅؽºÆ®). RowNumber°¡ 0À̸é, ¿­ Çì´õ ÅؽºÆ®°¡ ¿­¶÷µË´Ï´Ù. ÅؽºÆ®°¡ 8191ÀÚ º¸´Ù ±æ¸é, ¾ÕÂÊ 8191 ±ÛÀÚ¸¸ ¿­¶÷µË´Ï´Ù. ¼º°øÇϸé 1À» µ¹·ÁÁÖ°í ½ÇÆÐÇϸé 0À» µ¹·ÁÁÝ´Ï´Ù. ½ÇÆнÃ, OutputVarµµ ºñ¿öÁý´Ï´Ù.

+

+½ºÅ©¸³Æ®¿¡ º¸¿©Áö´Â ¿­ ¹øÈ£´Â »ç¿ëÀÚ°¡ ¿­À» ²ø¾î ¶³±¸¾îµµ ¿µÇâÀ» ¹ÞÁö ¾Ê½À´Ï´Ù. ¿¹¸¦ µé¾î ¿ø·¡ÀÇ Ã¹ ¿­ÀÌ ¹øÈ£´Â 1ÀÔ´Ï´Ù. »ç¿ëÀÚ°¡ ±× ¿­À» ²ø¾î ¿À¸¥ÂÊ ´Ù¸¥ ¿­¿¡ ¶³±¸¾îµµ ¸¶Âù°¡ÁöÀÔ´Ï´Ù.

+ +

G-¶óº§ °íÁö (Primary)

+

+gMySubroutine°ú °°Àº g-¶óº§Àº ÄÜÆ®·ÑÀÇ ¿É¼Ç¿¡ ³ª¿­ÇÒ ¼ö ÀÖ½À´Ï´Ù. ÀÌ·¸°Ô ÇÏ¸é »ç¿ëÀÚ°¡ ÄÜÆ®·Ñ¿¡ ¾î¶² Á¶Ä¡¸¦ ¼öÇàÇÒ ¶§¸¶´Ù MySubroutine ¶óº§ÀÌ ÀÚµ¿À¸·Î ±âµ¿µË´Ï´Ù. ÀÌ ¼­ºê·çƾÀº ³»Àå º¯¼ö A_Gui¿Í A_GuiControl¸¦ Âü°íÇØ ¾î´À â ¾î´À ListView°¡ ±× À̺¥Æ®¸¦ ¹ß»ý½ÃÄ×´ÂÁö ¾Ë¾Æ³¾ ¼ö ÀÖ½À´Ï´Ù. ´õ Áß¿äÇÑ °ÍÀº, A_GuiEvent¸¦ Âü°íÇÒ ¼ö ÀÖ´Ù´Â °ÍÀε¥, ¿©±â¿¡ ´ÙÀ½ ¹®ÀÚ¿­À̳ª ±âÈ£ Áß Çϳª°¡ ´ã°Ü ÀÖ½À´Ï´Ù (¹Ì·¡ ¹öÀü°úÀÇ È£È¯À» À§ÇØ, ½ºÅ©¸³Æ®´Â À̰͸¸ÀÌ °¡´ÉÇÑ À¯ÀÏÇÑ °ªµéÀ̶ó°í °£ÁÖÇÏ¸é ¾ÈµË´Ï´Ù):

+

+DoubleClick: »ç¿ëÀÚ°¡ ÄÜÆ®·Ñ ¾È¿¡¼­ ´õºíŬ¸¯ Çß½À´Ï´Ù. º¯¼ö A_EventInfo¿¡ ÃÊÁ¡ Çà ¹øÈ£°¡ ´ã±é´Ï´Ù. LV_GetNext()¸¦ ´ë½Å »ç¿ëÇϸé ù ¹ø°·Î ¼±ÅÃµÈ Çà ¹øÈ£¸¦ ¾Ë ¼ö ÀÖ½À´Ï´Ù. »ç¿ëÀÚ°¡ ºó °÷¿¡ ´õºíŬ¸¯ Çß´Ù¸é 0ÀÔ´Ï´Ù.

+

+R: »ç¿ëÀÚ°¡ ÄÜÆ®·Ñ ¾È¿¡¼­ ´õºí-¿ìŬ¸¯ Çß½À´Ï´Ù. º¯¼ö A_EventInfo ¾È¿¡ ÃÊÁ¡ Çà ¹øÈ£°¡ ´ã±é´Ï´Ù.

+

+ColClick: »ç¿ëÀÚ°¡ ¿­ Çì´õ¸¦ Ŭ¸¯ Çß½À´Ï´Ù. º¯¼ö A_EventInfo¿¡ ±× ¿­ ¹øÈ£°¡ ´ã±é´Ï´Ù. ÀÌ°ÍÀº ±× ¿­ÀÌ »ý¼ºµÉ ¶§ ÇÒ´çµÈ ¿ø·¡ÀÇ ¿­ ¹øÈ£ÀÔ´Ï´Ù; Áï, »ç¿ëÀÚ¿¡ ÀÇÇÑ ²ø±â¿Í ¶³±¸±â´Â ÀüÇô ¹Ý¿µÇÏÁö ¾Ê½À´Ï´Ù. ¿­ Ŭ¸¯¿¡ ÇÑ °¡Áö °¡´ÉÇÑ ¹ÝÀÀÀº ¼ûÀº ¿­ ±âºÐÀ¸·Î Á¤·ÄÇÏ´Â °ÍÀÔ´Ï´Ù (³Êºñ°¡ 0). ¾È¿¡ Á¤·Ä¿¡ ÀûÇÕÇÑ Çü½ÄÀ¸·Î µ¥ÀÌÅÍ°¡ µé¾î ÀÖ½À´Ï´Ù (¿¹¸¦ µé¾î YYYYMMDD Á¤¼ö ³¯Â¥). +±×·± ¼ûÀº ¿­Àº Á» ´õ Ä£¼÷ÇÑ Çü½ÄÀ¸·Î °°Àº µ¥ÀÌÅ͸¦ º¸¿©ÁÖ´Â ´Ù¸¥ Ä÷³À» ¹Ì·¯ÇÒ ¼ö ÀÖ½À´Ï´Ù (¿¹¸¦ µé¾î MM/DD/YY). +¿¹¸¦ µé¾î, ½ºÅ©¸³Æ®´Â LV_ModifyCol(3, 0)¸¦ ÅëÇÏ¿© ¿­ 3À» ¼û±æ ¼ö ÀÖ½À´Ï´Ù. ´ÙÀ½ LV_ModifyCol(2, "NoSort")¸¦ ÅëÇÏ¿© ´«¿¡ º¸ÀÌ´Â 2 ¹ø ¿­¿¡ ÀÚµ¿ Á¤·ÄÀ» ²¨¹ö¸³´Ï´Ù. ´ÙÀ½, 2 ¹ø ¿­¿¡ ´ëÇÑ ColClick °íÁö¿¡ ´ëÇÑ ÀÀ´äÀ¸·Î, ½ºÅ©¸³Æ®´Â LV_ModifyCol(3, "Sort")¸¦ ÅëÇÏ¿© ¼ûÀº ¿­À» ±âÁØÀ¸·Î ListView¸¦ Á¤·ÄÇÒ °ÍÀÔ´Ï´Ù.

+

+D: »ç¿ëÀÚ°¡ ÇàÀ̳ª ¾ÆÀÌÄÜÀ» ²ø·Á°í ½ÃµµÇß½À´Ï´Ù (ÇöÀç ÇàÀ̳ª ¾ÆÀÌÄÜ ²ø±â´Â ³»ºÎÀûÀ¸·Î Áö¿øÇÏÁö ¾Ê½À´Ï´Ù). º¯¼ö A_EventInfo¿¡ ÃÊÁ¡ Çà ¹øÈ£°¡ ´ã±é´Ï´Ù. v1.0.44+¿¡¼­, ÀÌ °íÁö´Â ½ÉÁö¾î AltSubmitÀÌ ¾ø¾îµµ ÀϾ´Ï´Ù.

+

+d (¼Ò¹®ÀÚ D): ¿ÞŬ¸¯ ²ø±â°¡ ¾Æ´Ï¶ó ¿ìŬ¸¯ ²ø±â¶ó´Â Á¡¸¸ Á¦¿ÜÇϸé À§¿Í °°½À´Ï´Ù.

+

+e (¼Ò¹®ÀÚ E): »ç¿ëÀÚ°¡ ÇàÀÇ Ã¹ Çʵå ÆíÁýÀ» ¸¶ÃƽÀ´Ï´Ù (»ç¿ëÀÚ´Â ListViewÀÇ ¿É¼Ç¿¡ -ReadOnly°¡ ÀÖÀ» °æ¿ì¿¡¸¸ ÆíÁýÇÒ ¼ö ÀÖ½À´Ï´Ù). º¯¼ö A_EventInfo¿¡ ±× Çà ¹øÈ£°¡ ´ã±é´Ï´Ù.

+ +

G-¶óº§ °íÁö (Secondary)

+

+ListView°¡ ¿É¼Ç¿¡ ´Ü¾î AltSubmitÀ» °¡Áö°í ÀÖ´Ù¸é, ±×ÀÇ g-¶óº§Àº ÈξÀ ´õ ÀÚÁÖ ±âµ¿µÇ°í A_GuiEvent¿¡ ´ÙÀ½ Ãß°¡ °ªÀÌ ´ã±æ ¼ö ÀÖ½À´Ï´Ù:

+

+Normal: »ç¿ëÀÚ°¡ ÇàÀ» ¿ÞŬ¸¯ Çß½À´Ï´Ù. º¯¼ö A_EventInfo¿¡ ÃÊÁ¡ Çà ¹øÈ£°¡ ´ã±é´Ï´Ù.

+

+RightClick: »ç¿ëÀÚ°¡ ÇàÀ» ¿ìŬ¸¯ Çß½À´Ï´Ù. º¯¼ö A_EventInfo¿¡ ÃÊ÷ Çà ¹øÈ£°¡ ´ã±é´Ï´Ù. ´ëºÎºÐÀÇ °æ¿ì, ÀÌ¿¡ ÀÀ´äÇÏ¿© ¸Þ´º¸¦ º¸¿©ÁÖ´Â °ÍÀÌ ÁÁ½À´Ï´Ù. ´ë½Å¿¡, GuiContextMenu label¸¦ »ç¿ëÇϽʽÿÀ. ¿Ö³ÄÇϸé Apps Å°µµ ÀÎÁöÇϱ⠶§¹®ÀÔ´Ï´Ù. ¿¹¸¦ µé¾î:

+ +
GuiContextMenu:  ; ¿ìŬ¸¯ ¶Ç´Â Apps Å°ÀÇ ´©¸§¿¡ ÀÀ´äÇÏ¿© ±âµ¿µË´Ï´Ù.
+if A_GuiControl <> MyListView  ; ÀÌ Á¡°ËÀº ¼±ÅÃÀûÀÔ´Ï´Ù. ListView ¾È¿¡ Ŭ¸¯ÇßÀ» °æ¿ì¿¡¸¸ ¸Þ´º¸¦ º¸¿©ÁÝ´Ï´Ù.
+    return
+; ¸Þ´º¸¦ ÁÖ¾îÁø A_GuiX ±×¸®°í A_GuiY ÁÂÇ¥¿¡ º¸¿©ÁÝ´Ï´Ù. ÀÌ°ÍÀ» »ç¿ëÇØ¾ß ÇÕ´Ï´Ù
+; ¿Ö³ÄÇÏ¸é »ç¿ëÀÚ°¡ Apps Å°¸¦ ´©¸£´õ¶óµµ ¿Ã¹Ù¸¥ ÁÂÇ¥¸¦ Á¦°øÇϱ⠶§¹®ÀÔ´Ï´Ù:
+Menu, MyContextMenu, Show, %A_GuiX%, %A_GuiY%
+return
+

+A: ÇÑ ÇàÀÌ È°¼ºÈ­µÇ¾ú½À´Ï´Ù. ±âº»À¸·Î ´õºí Ŭ¸¯µÇ¸é È°¼ºÈ­µË´Ï´Ù. º¯¼ö A_EventInfo¿¡ ±× Çà ¹øÈ£°¡ ´ã±é´Ï´Ù.

+

+C: ListView°¡ ¸¶¿ì½º ¸¶¿ì½º ³ªÆ÷¸¦ ³õ¾Ò½À´Ï´Ù.

+

+E: »ç¿ëÀÚ°¡ ÇÑ ÇàÀÇ Ã¹ Çʵå ÆíÁýÀ» ½ÃÀÛÇß½À´Ï´Ù (»ç¿ëÀÚ´Â ListView°¡ ¿É¼Ç¿¡ -ReadOnly¸¦ °¡Áö°í ÀÖÀ» °æ¿ì¿¡¸¸ ÆíÁýÀÌ Çã¿ëµË´Ï´Ù). º¯¼ö A_EventInfo¿¡ Çà ¹øÈ£°¡ ´ã±é´Ï´Ù.

+

+F: ListView°¡ Å°º¸µå ÃÊÁ¡À» ¹Þ¾Ò½À´Ï´Ù.

+

+f (¼Ò¹®ÀÚ F): ListView°¡ Å°º¸µå ÃÊÁ¡À» ÀÒ¾ú½À´Ï´Ù.

+

+I: Ç׸ñÀÌ º¯°æµÊ. ¼±ÅÃ/üũ/ÇØÁ¦ µîµîÀ¸·Î ÀÎÇØ ÇÑ ÇàÀÌ º¯°æµÇ¾ú½À´Ï´Ù. »ç¿ëÀÚ°¡ »õ ÇàÀ» ¼±ÅÃÇϸé, Àû¾îµµ ±×·± °íÁö¸¦ µÎ °³ ¹Þ½À´Ï´Ù: Çϳª´Â ÀÌÀü ÇàÀÇ ÇØÁ¦ÀÌ°í ´Ù¸¥ Çϳª´Â »õ ÇàÀÇ ¼±Åÿ¡ °íÁö°¡ ¿É´Ï´Ù. v1.0.44+¿¡¼­, º¯¼ö A_EventInfo¿¡ ±× Çà ¹øÈ£°¡ ´ã±é´Ï´Ù. v1.0.46.10+¿¡¼­, ErrorLevel¿¡ ´ÙÀ½ ±âÈ£ Áß Çϳª°¡ ´ã°Ü ¾î¶»°Ô Ç׸ñÀÌ º¯°æµÇ¾ú´ÂÁö ¾Ë·ÁÁÝ´Ï´Ù: S (select) ¶Ç´Â s (de-select), ±×¸®°í/¶Ç´Â F (focus) ¶Ç´Â f (de-focus), ±×¸®°í/¶Ç´Â C (checkmark) ¶Ç´Â c (uncheckmark). +¿¹¸¦ µé¾î, SF´Â ÇàÀÌ ¼±ÅõǾî ÀÖ²¿ ÃÊÁ¡ÀÌ ÀÖ´Ù´Â ¶æÀÔ´Ï´Ù. ƯÁ¤ ±âÈ£°¡ Á¸ÀçÇÏ´ÂÁö ŽÁöÇÏ·Á¸é ÆÄ½Ì È¸µ¹ÀÌ ¶Ç´Â ´ë¼Ò¹®ÀÚ ±¸ºÐ ¿É¼ÇÀ¸·Î InStr()À» »ç¿ëÇϽʽÿÀ; ¿¹¸¦ µé¾î: InStr(ErrorLevel, "S", true). ÁÖÀÇ: ¹Ì·¡ ¹öÀü°úÀÇ È£È¯À» À§ÇØ, ½ºÅ©¸³Æ®´Â "SsFfCc"¸¸ÀÌ À¯ÀÏÇÏ°Ô °¡´ÉÇÏ´Ï ±âÈ£¶ó°í °£ÁÖÇÏ¸é ¾ÈµË´Ï´Ù. ¶ÇÇÑ, CriticalÀ» g-¶óº§ÀÇ Ã¹ ÁÙ¿¡ ÁöÁ¤ÇÏ¸é ¸ðµç "I" °íÁö¸¦ ¹ÞÀ» ¼ö ÀÖ´Ù´Â °ÍÀ» È®½ÅÇÒ ¼ö ÀÖ½À´Ï´Ù (±×·¸Áö ¾ÊÀ¸¸é, ½ºÅ©¸³Æ®°¡ µû¶ó °¡Áö ¸øÇÒ °æ¿ì ¾î¶² °íÁö´Â ÀÒ¾î ¹ö¸± ¼ö ÀÖ½À´Ï´Ù).

+

+K: ListView¿¡ ÃÊÁ¡ÀÌ ÀÖ´Â µ¿¾È¿¡ »ç¿ëÀÚ°¡ Å°¸¦ ´­·¶½À´Ï´Ù. A_EventInfo¿¡ ±× Å°ÀÇ °¡»ó Å°Äڵ尡 ´ã±é´Ï´Ù. ÀÌ ¼ýÀÚ´Â ¹üÀ§°¡ 1°ú 255 »çÀÌÀÔ´Ï´Ù. ÀÌ°ÍÀ» GetKeyNameÀ» ÅëÇÏ¿© Å° À̸§À̳ª ¹®ÀÚ·Î º¯È¯ÇÒ ¼ö ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î, key := GetKeyName(Format("vk{:x}", A_EventInfo)). ´ëºÎºÐÀÇ Å°º¸µå ·¹À̾ƿô¿¡¼­ A-Z Å°´Â Chr(A_EventInfo)¸¦ ÅëÇÏ¿© ±×¿¡ »óÀÀÇÏ´Â ¹®ÀÚ·Î º¯È¯ÇÒ ¼ö ÀÖ½À´Ï´Ù. F2 Å°´­¸²Àº WantF2¿¡ »ó°ü ¾øÀÌ ¹Þ½À´Ï´Ù. ±×·¸Áö¸¸, Enter Å°´­¸²Àº ¹ÞÁö ¾Ê½À´Ï´Ù; ±×¸¦ ¹ÞÀ¸·Á¸é, ¾Æ·¡¿¡ ±â¼úÇÏ´Â °Íó·³ ±âº» ¹öÆ°À» »ç¿ëÇϽʽÿÀ.

+

+M: Marquee. »ç¿ëÀÚ°¡ ÇÑ ±×·ìÀÇ ÇàÀ̳ª ¾ÆÀÌÄÜ µÑ·¹ÀÇ ¼±Åà »ç°¢ÇüÀ» ²ø±â ½ÃÀÛÇß½À´Ï´Ù.

+

+S: »ç¿ëÀÚ°¡ ListView¸¦ ½ºÅ©·ÑÇϱ⠽ÃÀÛÇß½À´Ï´Ù.

+

+s (¼Ò¹®ÀÚ S): »ç¿ëÀÚ°¡ ListView ½ºÅ©·ÑÀ» ³¡³Â½À´Ï´Ù.

+ +

ImageList (¾ÆÀÌÄÜÀ» ListView¿¡ Ãß°¡ÇÏ´Â ¼ö´Ü)

+

+À̹ÌÁö-¸®½ºÆ®´Â ÇÑ ±×·ìÀÇ µ¿ÀÏÇÑ Å©±âÀÇ ¾ÆÀÌÄÜÀ¸·Î¼­ ¸Þ¸ð¸®¿¡ ÀúÀåµÇ¾î ÀÖ½À´Ï´Ù. »ý¼ºµÉ ¶§, °¢ ImageList´Â ºñ¾î ÀÖ½À´Ï´Ù. ½ºÅ©¸³Æ®´Â IL_Add()¸¦ ¹Ýº¹ÀûÀ¸·Î È£ÃâÇØ ¾ÆÀÌÄÜÀ» ±× ¸®½ºÆ®¿¡ Ãß°¡ÇÕ´Ï´Ù. °¢ ¾ÆÀÌÄÜÀº ¼ø¼­´ë·Î ¹øÈ£°¡ 1 ºÎÅÍ ÇÒ´çµË´Ï´Ù. ½ºÅ©¸³Æ®´Â ÀÌ ¹øÈ£¸¦ ÂüÁ¶ÇØ Æ¯Á¤ ¾ÆÀÌÄÜÀ» ÇàÀ̳ª ¿­ Çì´õ¿¡ º¸¿©ÁÝ´Ï´Ù. ´ÙÀ½ ¿¹Á¦´Â ¾ÆÀÌÄÜÀ» ListViewÀÇ Çà¿¡ »ðÀÔÇÏ´Â ¹æ¹ýÀ» º¸¿©ÁÝ´Ï´Ù:

+ +
Gui, Add, ListView, h200 w180, Icon & Number|Description  ; ListView¸¦ »ý¼ºÇÕ´Ï´Ù.
+ImageListID := IL_Create(10)  ; ImageList¸¦ ¸¸µé¾î 10 °³ÀÇ ÀÛÀº ¾ÆÀÌÄÜÀ» º¸À¯ÇÕ´Ï´Ù.
+LV_SetImageList(ImageListID)  ; À§ÀÇ ImageList¿¡ ÇöÀç ListView¸¦ ÇÒ´çÇÕ´Ï´Ù.
+Loop 10  ; ImageList¿¡ ÀÏ·ÃÀÇ ¾ÆÀÌÄÜÀ» DLL·ÎºÎÅÍ ÀûÀçÇÕ´Ï´Ù.
+    IL_Add(ImageListID, "shell32.dll", A_Index) 
+Loop 10  ; ÇàµéÀ»ListView¿¡ Ãß°¡ÇÕ´Ï´Ù (º¸¿©ÁÖ±â À§ÇÑ ¸ñÀûÀ¸·Î, °¢ ¾ÆÀÌÄÜ ´ç ÇÑ Ç྿).
+    LV_Add("Icon" . A_Index, A_Index, "n/a")
+LV_ModifyCol("Hdr")  ; ¿­ ³Êºñ¸¦ ÀÚµ¿-Á¶ÀýÇÕ´Ï´Ù.
+Gui Show
+return
+
+GuiClose:  ; »ç¿ëÀÚ°¡ ListViewÀÇ GUI âÀ» ´ÝÀ¸¸é ½ºÅ©¸³Æ®¸¦ Á¾·áÇÕ´Ï´Ù.
+ExitApp
+ +

IL_Create([InitialCount, GrowCount, LargeIcons?])

+

+»õ·Î ImageList¸¦ ¸¸µì´Ï´Ù. óÀ½¿¡´Â ºñ¾î ÀÖ°í, ImageListÀÇ À¯ÀÏÇÑ ID¸¦ µ¹·ÁÁÝ´Ï´Ù (½ÇÆÐÇϸé 0À» µ¹·ÁÁÝ´Ï´Ù). InitialCount´Â ¸®½ºÆ®¿¡ Áï½Ã »ðÀÔÇÒ °ÍÀ̶ó°í ¿¹»óÇÏ´Â ¾ÆÀÌÄÜÀÇ °³¼öÀÔ´Ï´Ù (»ý·«Çϸé, ±âº»°ªÀº 2ÀÔ´Ï´Ù). GrowCount´Â ¾ÆÀÌÄÜÀÇ °³¼öÀÔ´Ï´Ù. ÀÌ °ªÀ» ±âÁØÀ¸·Î ÇöÀç ¸®½ºÆ®°¡ °¡¿ë ´É·ÂÀ» ÃÊ°úÇÒ ¶§¸¶´Ù ¸®½ºÆ®°¡ Áõ°¡ÇÕ´Ï´Ù (»ý·«Çϸé, ±âº»°ªÀº 5ÀÔ´Ï´Ù). LargeIcons´Â ¼ýÄ¡ °ªÀ̾î¾ß ÇÕ´Ï´Ù: 0ÀÌ ¾Æ´Ï¸é, ImageList´Â Å« ¾ÆÀÌÄÜÀ» ´ã½À´Ï´Ù. 0À̸é ÀÛÀº ¾ÆÀÌÄÜÀ» ´ã½À´Ï´Ù (»ý·«Çϸé ÀÌ°ÍÀÌ ±âº»°ªÀÔ´Ï´Ù). ¸®½ºÆ®¿¡ Ãß°¡µÈ ¾ÆÀÌÄܵéÀº ÀÛ°í Å« ¾ÆÀÌÄÜ¿¡ ´ëÇÑ ½Ã½ºÅÛÀÇ Å©±â¸¦ ÁؼöÇÏ¿© ¸Â°Ô ÀÚµ¿À¸·Î Å©±â°¡ Á¶ÀýµË´Ï´Ù.

+ +

LV_SetImageList(ImageListID [, 0|1|2])

+

+ÀÌ ÇÔ¼ö´Â º¸Åë ÇàÀ» ListView¿¡ Ãß°¡Çϱâ ÀÌÀü¿¡ È£ÃâµË´Ï´Ù. ¾ÆÀÌÄÜÀÌ ListViewÀÇ Çà ¿·¿¡ (¼±ÅÃÀûÀ¸·Î ±×ÀÇ ¿­¿¡) º¸¿©Áöµµ·Ï ImageList¸¦ ¼³Á¤ÇÕ´Ï´Ù. ImageListID´Â ÀÌÀü¿¡ IL_Create()¸¦ È£ÃâÇØ ¹ÝȯµÈ ¹øÈ£ÀÔ´Ï´Ù. µÎ ¹ø° ¸Å°³º¯¼ö¸¦ »ý·«Çϸé, ImageList¿¡¼­ ¾ÆÀÌÄÜÀÇ À¯ÇüÀÌ Å«Áö ÀÛÀºÁö ÀÚµ¿À¸·Î ŽÁöµË´Ï´Ù. ±×·¸Áö ¾ÊÀ¸¸é, Å« ¾ÆÀÌÄÜ¿¡ 0À» ÁöÁ¤ÇÏ°í, ÀÛÀº ¾ÆÀÌÄÜ¿¡ 1À» ÁöÁ¤Çϸç, ±×¸®°í »óÅ ¾ÆÀÌÄÜ¿¡´Â 2¸¦ ÁöÁ¤ÇϽʽÿÀ (»óÅ ¾ÆÀÌÄÜÀº ¾ÆÁ÷ Á÷Á¢ÀûÀ¸·Î Áö¿øÇÏÁö ¾ÊÁö¸¸, SendMessage¸¦ ÅëÇÏ¿© »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù).

+

+ListView´Â ÃÖ´ë µÎ °³ÀÇ ImageList¸¦ °¡Áú ¼ö ÀÖ½À´Ï´Ù: ÀÛÀº ¾ÆÀÌÄÜ / Å« ¾ÆÀÌÄÜ. ½ºÅ©¸³Æ®¿¡¼­ »ç¿ëÀÚ°¡ Å« ¾ÆÀÌÄÜ º¸±â¿¡¼­ ÀÛÀº ¾ÆÀÌÄÜ º¸±â·Î ÀüȯÇÒ ¼ö ÀÖµµ·Ï ÇØ ÁֹǷΠÀ¯¿ëÇÕ´Ï´Ù. ¿©·¯ ImageList¸¦ ListView¿¡ Ãß°¡ÇÏ·Á¸é, LV_SetImageList()¸¦ µÎ ¹ø È£ÃâÇÏ°í, µÎ ¹ø° ¸®½ºÆ®ÀÇ ImageListID¸¦ ÁöÁ¤ÇÕ´Ï´Ù. ListView°¡ Å«-¾ÆÀÌÄÜ°ú ÀÛÀº-¾ÆÀÌÄÜ ImageList¸¦ ¸ðµÎ °®°í ÀÖ´Ù¸é µÎ ¸®½ºÆ®¿¡ °°Àº ¼ø¼­·Î ¾ÆÀÌÄÜÀÌ µé¾î ÀÖ´ÂÁö È®ÀÎÇØ¾ß ÇÕ´Ï´Ù. ¿Ö³ÄÇÏ¸é °°Àº ID ¹øÈ£¸¦ »ç¿ëÇÏ¿© ƯÁ¤ ¾ÆÀÌÄÜÀÇ Å« ¾ÆÀÌÄÜ°ú ÀÛÀº ¾ÆÀÌÄÜÀ» ÂüÁ¶Çϱ⠶§¹®ÀÔ´Ï´Ù.

+

+¾ÆÀÌÄÜ°ú ŸÀÏÀ» Á¦¿ÜÇÏ°í ¸ðµç º¸±â ¸ðµå¿¡ ÀÛÀº ¾ÆÀÌÄÜÀ» º¸¿©ÁÖ´Â °ÍÀÌ ÀüÅëÀûÀÎ ¹æ½ÄÀÌÁö¸¸, ÀÌ ÇàÀ§´Â Å« ¾ÆÀÌÄÜ ¸®½ºÆ®¸¦ LV_SetImageList¿¡ °Ç³×°í 1 (ÀÛÀº-¾ÆÀÌÄÜ)À» µÎ ¹ø° ¸Å°³º¯¼ö¿¡ ÁöÁ¤ÇÏ¸é ¹Ù²Ü ¼ö ÀÖ½À´Ï´Ù. ÀÌ·¸°Ô ÇÏ¸é ¶ÇÇÑ Å« ¾ÆÀÌÄÜ¿¡ ¸Â°Ô ListView¿¡¼­ °¢ ÇàÀÇ ³ôÀÌ°¡ Áõ°¡ÇÕ´Ï´Ù.

+

+¼º°øÇϸé, LV_SetImageList()´Â ÀÌÀü¿¡ ListView¿¡ ¿¬°üµÇ¾î ÀÖ´ø ImageListID¸¦ µ¹·ÁÁÝ´Ï´Ù (¾øÀ¸¸é 0). ±×·¸°Ô ¶¼¾î³½ ImageList´Â IL_Destroy(ImageListID)¸¦ ÅëÇÏ¿© Á¤»óÀûÀ¸·Î Æı«µË´Ï´Ù.

+ +

IL_Add(ImageListID, Filename [, IconNumber, ResizeNonIcon?])

+

+¾ÆÀÌÄÜÀ̳ª ±×¸²À» ÁöÁ¤µÈ ImageListID¿¡ Ãß°¡ÇÕ´Ï´Ù. ±×¸®°í ±× »õ·Î¿î ¾ÆÀÌÄÜÀÇ À妽º¸¦ µ¹·ÁÁÝ´Ï´Ù (1Àº ù ¹ø° ¾ÆÀÌÄÜ, 2´Â µÎ ¹ø° ¾ÆÀÌÄÜÀÌ°í ±×¸®°í. µîµî). FilenameÀº ¾ÆÀÌÄÜ (.ICO), Ä¿¼­ (.CUR), ¶Ç´Â ¾Ö´Ï¸ÞÀÌ¼Ç Ä¿¼­ (.ANI) ÆÄÀÏÀÇ À̸§ÀÔ´Ï´Ù (¾Ö´Ï¸ÞÀÌ¼Ç Ä¿¼­´Â ½ÇÁ¦·Î´Â ListView¿¡ º¸¿©Áú ¶§ ¿òÁ÷ÀÌÁö ¾Ê½À´Ï´Ù).´Ù¸¥ ¾ÆÀÌÄÜ ¼Ò½º·Î´Â ´ÙÀ½ À¯ÇüÀÇ ÆÄÀÏÀÌ Æ÷ÇԵ˴ϴÙ: EXE, DLL, CPL, SCR, ±×¸®°í ±âŸ ¾ÆÀÌÄÜ ÀÚ¿øÀ» Æ÷ÇÔÇÑ À¯Çüµé. ÆÄÀÏ¿¡ ù ¹ø° ¾ÆÀÌÄÜ ¸»°í ¾ÆÀÌÄÜ ±×·ìÀ» »ç¿ëÇÏ·Á¸é, ±×ÀÇ ¹øÈ£¸¦ IconNumber¿¡ ÁöÁ¤ÇϽʽÿÀ. IconNumber°¡ À½¼öÀ̸é, ±×ÀÇ Àý´ë °ªÀº ½ÇÇà ÆÄÀÏ ¾ÈÀÇ ¾ÆÀÌÄÜÀÇ ÀÚ¿ø ID·Î °£Áֵ˴ϴÙ. ´ÙÀ½ ¿¹Á¦¿¡¼­, µÎ ¹ø° ±×·ìÀ¸·ÎºÎÅÍ ±âº» ¾ÆÀÌÄÜÀÌ »ç¿ëµË´Ï´Ù: + +IL_Add(ImageListID, "C:\My Application.exe", 2).

+

+BMP, GIF ±×¸®°í JPG °°Àº ºñ-¾ÆÀÌÄÜ À̹ÌÁöµµ ÀûÀç°¡ °¡´ÉÇÕ´Ï´Ù. ±×·¸Áö¸¸, ÀÌ °æ¿ì µÎ °³ÀÇ ¸Å°³º¯¼ö¸¦ ÁöÁ¤ÇØ¾ß ¿Ã¹Ù¸¥ ÇàÀ§¸¦ È®ÀÎÇÒ ¼ö ÀÖ½À´Ï´Ù: IconNumber´Â ¸¶½ºÅ©/Åõ¸í »ö ¹øÈ£À̾î¾ß ÇÕ´Ï´Ù (0xFFFFFF [Èò»ö]´Â ´ëºÎºÐÀÇ ±×¸²¿¡ °¡Àå ÁÁÀº ¼±ÅÃÀÔ´Ï´Ù); + +±×¸®°í ResizeNonIcon´Â 0ÀÌ ¾Æ´Ï¾î¾ß ÇÕ´Ï´Ù. ±×·¡¾ß ±×¸² Å©±â¸¦ Á¶ÀýÇÏ¿© ¾ÆÀÌÄÜ Çϳª°¡ µÉ ¼ö Àְųª, ¾Æ´Ï¸é ±× À̹ÌÁö¸¦ ºÐÇØÇÏ¿© ±×ÀÇ ½ÇÁ¦ Å©±â¿¡ ¸Â°Ô ¾ó¸¶µçÁö ¸¹Àº ¾ÆÀÌÄÜÀ» ¸¸µé¾î ³¾ ¼ö ÀÖ½À´Ï´Ù.

+

+¸ðµç ¿î¿µ üÁ¦´Â GIF, JPG, BMP, ICO, CUR, ±×¸®°í ANI À̹ÌÁö¸¦ Áö¿øÇÕ´Ï´Ù. Windows XP ÀÌÈÄ·Î, PNG, TIF, Exif, WMF, ±×¸®°í EMF °°Àº À̹ÌÁö Çü½ÄÀ» Ãß°¡·Î Áö¿øÇÕ´Ï´Ù. XPº¸´Ù ¿À·¡µÈ ¿î¿µ üÁ¦´Â ¸¶ÀÌÅ©·Î¼ÒÇÁÆ®»çÀÇ ¹«·á GDI+ DLLÀ» AutoHotkey.exe Æú´õ ¾ÈÀ¸·Î º¹»çÇØ ³Ö¾î Áö¿øÇÒ ¼ö ÀÖ½À´Ï´Ù (±×·¯³ª ÄÄÆÄÀÏµÈ ½ºÅ©¸³Æ®ÀÇ °æ¿ì, DLLÀ» ½ºÅ©¸³Æ®ÀÇ Æú´õ ¾ÈÀ¸·Î º¹»çÇØ ³ÖÀ¸½Ê½Ã¿À). DLLÀ» ³»·Á ¹ÞÀ¸·Á¸é, www.microsoft.com¿¡¼­ ´ÙÀ½ ±¸ÀýÀ» °Ë»öÇϽʽÿÀ: gdi redistributable

+ +

IL_Destroy(ImageListID)

+

+ÁöÁ¤µÈ ImageList¸¦ »èÁ¦ÇÕ´Ï´Ù ±×¸®°í ¼º°øÇϸé 1À» µ¹·ÁÁÖ°í ½ÇÆÐÇϸé 0À» µ¹·ÁÁÝ´Ï´Ù. º¸Åë ImageList¸¦ Æı«ÇÒ ÇÊ¿ä°¡ ¾ø½À´Ï´Ù. ¿Ö³ÄÇϸé ÀÏ´Ü ListView¿¡ ºÎÂøµÇ¸é, ListView³ªÀÇ ±×ÀÇ ºÎ¸ð âÀÌ Æı«µÉ ¶§ ÀÚµ¿À¸·Î °°ÀÌ Æı«µÇ±â ¶§¹®ÀÔ´Ï´Ù. ±×·¸Áö¸¸, ListView°¡ (±×ÀÇ ¿É¼Ç¿¡ 0x40¸¦ °¡Á®¼­) ImageList¸¦ ´Ù¸¥ ListView¿Í °øÀ¯Çϸé, ½ºÅ©¸³Æ®´Â ±×¸¦ »ç¿ëÇÏ´Â ¸ðµç ListView¸¦ Æı«ÇÑ ÈÄ¿¡ ¸í½ÃÀûÀ¸·Î ±× ImageList¸¦ Æı«ÇØ¾ß ÇÕ´Ï´Ù. ºñ½ÁÇÏ°Ô, ½ºÅ©¸³Æ®°¡ ListViewÀÇ ¿¹Àü ImageListÁß Çϳª¸¦ »õ °ÍÀ¸·Î ±³Ã¼Çϸé, ¸í½ÃÀûÀ¸·Î ±× ¿¹Àü ¸®½ºÆ®¸¦ Æı«ÇØ¾ß ÇÕ´Ï´Ù.

+ +

ListView ÃÑÆò

+

+Gui Submit ¸í·É¾î´Â ListView ÄÜÆ®·Ñ¿¡ ¾Æ¹« ¿µÇâÀÌ ¾ø½À´Ï´Ù. ±×·¯¹Ç·Î, ½ºÅ©¸³Æ®´Â ListViewÀÇ ¿¬°ü º¯¼ö¸¦ »ç¿ëÇÏ¿© (ÀÖ´Ù¸é) µ¤¾î¾µ °ÆÁ¤¾øÀÌ ´Ù¸¥ µ¥ÀÌÅ͸¦ ÀúÀåÇÒ ¼ö ÀÖ½À´Ï´Ù.

+

+Ä÷³ÀÌ Á¤·ÄµÈ ÈÄ¿¡ -- »ç¿ëÀÚ°¡ ±×ÀÇ Çì´õ¸¦ Ŭ¸¯Ç߰ųª ½ºÅ©¸³Æ®°¡ LV_ModifyCol(1, "Sort")¸¦ È£ÃâÇÔÀ¸·Î½á -- ÀÌÈÄ¿¡ Ãß°¡µÇ´Â ÇàµéÀº Á¤·Ä ¼ø¼­¸¦ ÁؼöÇÏÁö ¾Ê°í ¸®½ºÆ®¿¡ ³¡¿¡ ³ªÅ¸³³´Ï´Ù. +ÀÌ¿¡ ´ëÇÑ ¿¹¿Ü´Â Sort¿Í SortDesc ½ºÅ¸ÀÏÀε¥, »õ·Î Ãß°¡µÈ ÇàµéÀ» ¿Ã¹Ù¸¥ À§Ä¡·Î À̵¿½Ãŵ´Ï´Ù.

+ +

+ListView¿¡ ÃÊÁ¡ÀÌ ÀÖ´Â µ¿¾È »ç¿ëÀÚ°¡ Enter¸¦ ´©¸¦ ¶§¸¦ ŽÁöÇÏ·Á¸é À» ¶§ ±âº» ¹öÆ°À» »ç¿ëÇϽʽÿÀ (¿øÇÏ¸é °¨Ãâ ¼ö ÀÖ½À´Ï´Ù). ¿¹¸¦ µé¾î:

+ +
Gui, Add, Button, Hidden Default, OK
+...
+ButtonOK:
+GuiControlGet, FocusedControl, FocusV
+if FocusedControl <> MyListView
+    return
+MsgBox % "Enter was pressed. The focused row number is " . LV_GetNext(0, "Focused")
+return
+

+Å°º¸µå·Î Çà¿¡¼­ ÇàÀ¸·Î Ç×ÇØÇÏ´Â ÀÏ ¿Ü¿¡µµ, »ç¿ëÀڴ ù ¿­ÀÇ ÇÑ Ç׸ñÀÇ Ã¹ ¹®ÀÚ¸¦ ŸÀÚÇϸé Á¡Áõ °Ë»öÀ» ¼öÇàÇÒ ¼öµµ ÀÖ½À´Ï´Ù. ÀÌ·¸°Ô ÇÏ¸é ¼±ÅÃÀÌ °¡Àå °¡±õ°Ô ºÎÇÕÇÏ´Â ÇàÀ¸·Î Á¡ÇÁÇÕ´Ï´Ù.

+

+±æÀÌ¿¡ »ó°ü¾øÀÌ ÅؽºÆ®¸¦ ListViewÀÇ °¢ Çʵ忡 ÀúÀåÇÒ ¼ö ÀÖÁö¸¸, ¾ÕÂÊ 260 ±ÛÀÚ¸¸ È­¸é¿¡ º¸¿©Áý´Ï´Ù.

+

ListView¿¡¼­ ÃÖ´ë ÇàÀÇ °³¼ö´Â ¿ÀÁ÷ ½Ã½ºÅÛ ¸Þ¸ð¸®¿¡¸¸ Á¦ÇѵÇÁö¸¸, Count ¿É¼Ç¿¡ ±â¼úÇÑ °Íó·³ Çà-Ãß°¡ ¼öÇ༺´ÉÀ» Å©°Ô °³¼±ÇÒ ¼ö ÀÖ½À´Ï´Ù.

+

+ListView µÑ·¹¿¡ ±×¸²À» ¹è°æÀ¸·Î »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù (Áï, ListView¸¦ ¾×ÀÚƲ¿¡ ³ÖÀ» ¼ö ÀÖ½À´Ï´Ù). ÀÌ·¸°Ô ÇÏ·Á¸é, ListView µÚ¿¡ ±×¸² ÄÜÆ®·ÑÀ»À» »ý¼ºÇÏ°í ±×¸²ÀÇ Options¿¡ 0x4000000¸¦ Æ÷ÇÔ½ÃÅ°½Ê½Ã¿À (WS_CLIPSIBLINGSÀÓ).

+

+½ºÅ©¸³Æ®¸¦ â ´ç ¿©·¯ ListView¸¦ »ý¼ºÇÒ ¼ö ÀÖ½À´Ï´Ù. ±âº» ¸®½ºÆ®ºä ¸»°í ´Ù¸¥ ListView¸¦ ó¸®ÇÏ·Á¸é, ³»Àå ÇÔ¼ö¸¦ ÂüÁ¶ÇϽʽÿÀ.

+

+SendMessage·Î ¿­À» Á÷Á¢ »èÁ¦Çϰųª »ðÀÔÇÏÁö ¾Ê´Â °ÍÀÌ ÁÁ½À´Ï´Ù. ¿Ö³Ä¸é ÇÁ·Î±×·¥Àº °¢ ¿­¿¡ ¼±È£ÇÏ´Â Á¤·Ä ±âÁØÀÌ ´Ù µû·Î À־, µ¿±âÈ­°¡ ¾ÈµÉ ¼ö Àֱ⠶§¹®ÀÔ´Ï´Ù. ´ë½Å¿¡, ³»Àå ¿­ ÇÔ¼ö¸¦ »ç¿ëÇϽʽÿÀ.

+

+ListViewÀÇ Å©±â¸¦ ¹Ù²Ù°Å³ª ¼û±â°Å³ª ±Û²ÃÀ» ¹Ù²Ù´Â °Í°ú °°Àº Á¶Ä¡µéÀ» ¼öÇàÇÏ·Á¸é GuiControlÀ» »ç¿ëÇϽʽÿÀ.

+

+ÅؽºÆ®¸¦ (½ºÅ©¸³Æ®°¡ ¼ÒÀ¯ÇÑ °ÍÀÌ ¾Æ´Ñ) ¿ÜºÎ ListView·ÎºÎÅÍ ÃßÃâÇÏ·Á¸é, ControlGet List¸¦ »ç¿ëÇϽʽÿÀ.

+ +

°ü·Ã Ç׸ñ

+

+TreeView, Other Control Types, Gui, GuiContextMenu, GuiControl, GuiControlGet, ListView ½ºÅ¸ÀÏ Å×À̺í

+ +

¿¹Á¦

+ +
; 0À» ù Çà ¹øÈ£·Î ÁöÁ¤ÇØ ¸ðµç ÇàÀ» ¼±ÅÃÇϰųª ÇØÁ¦ÇÕ´Ï´Ù:
+LV_Modify(0, "Select")   ; ¸ðµÎ ¼±ÅÃÇÕ´Ï´Ù.
+LV_Modify(0, "-Select")  ; ¸ðµÎ ÇØÁ¦ÇÕ´Ï´Ù.
+LV_Modify(0, "-Check")  ;  ¸ðµç üũ¹Ú½º¸¦ ÇØÁ¦ÇÕ´Ï´Ù.
+
+; ¸ðµç ¿­À» ±×ÀÇ ³»¿ë¿¡ ¸Â°Ô ÀÚµ¿ Å©±â Á¶ÀýÇÕ´Ï´Ù:
+LV_ModifyCol()  ; ÀÌ ¸ðµå¿¡´Â ¸Å°³º¯¼ö°¡ ¾ø½À´Ï´Ù.
+

 

+
; MAIN EXAMPLE
+; ´ÙÀ½ ½ºÅ©¸³Æ®´Â ÀÌ ÆäÀÌÁö À§¿¡ ÀÖ´Â ¿¹Á¦¿¡ ºñÇØ ´õ Á¤±³ÇÕ´Ï´Ù.
+; »ç¿ëÀÚ°¡ ¼±ÅÃÇÑ Æú´õ ¾ÈÀÇ °¢ ÆÄÀϵéÀ» ±×ÀÇ À¯Çü¿¡ ¸Â°Ô ¾ÆÀÌÄÜÀ» ¿¬°üÁö¾î º¸¿©ÁÝ´Ï´Ù.
+; »ç¿ëÀÚ´Â ÆÄÀÏÀ» ´õºíŬ¸¯ Çϰųª Çϳª ÀÌ»óÀÇ ÆÄÀÏÀ» ¿ìŬ¸¯ÇØ ¹®¸Æ ¸Þ´º¸¦ º¸¿©ÁÙ ¼ö ÀÖ½À´Ï´Ù.
+
+; »ç¿ëÀÚ¿¡°Ô âÀ» ²ø¾î Å©±â¸¦ º¯°æÇϵµ·Ï Çã¿ëÇÕ´Ï´Ù:
+Gui +Resize
+
+; ¹öÆ°À» ¸¸µì´Ï´Ù:
+Gui, Add, Button, Default gButtonLoadFolder, Load a folder
+Gui, Add, Button, x+20 gButtonClear, Clear List
+Gui, Add, Button, x+20, Switch View
+
+; ListView¿Í ±×ÀÇ Ä÷³À» »ý¼ºÇÕ´Ï´Ù:
+Gui, Add, ListView, xm r20 w700 vMyListView gMyListView, Name|In Folder|Size (KB)|Type
+LV_ModifyCol(3, "Integer")  ; Á¤·ÄÀ» À§ÇØ, Size ¿­ÀÌ Á¤¼öÀÓÀ» ³ªÅ¸³À´Ï´Ù.
+
+; ListView°¡ ¾ÆÀÌÄÜÀ» º¸¿©ÁÙ ¼ö ÀÖµµ·Ï ImageList¸¦ ¸¸µì´Ï´Ù:
+ImageListID1 := IL_Create(10)
+ImageListID2 := IL_Create(10, 10, true)  ; ÀÛÀº ¾ÆÀÌÄÜ°ú ÇÔ²²ÇÒ Å« ¾ÆÀÌÄÜ ¸®½ºÆ®.
+
+; ImageList¸¦ ListView¿¡ ºÙ¿©¼­ ³ªÁß¿¡ ¾ÆÀÌÄÜÀ» º¸¿©ÁÙ ¼ö ÀÖµµ·Ï ÇÕ´Ï´Ù:
+LV_SetImageList(ImageListID1)
+LV_SetImageList(ImageListID2)
+
+; ¹®¸Æ ¸Þ´º·Î »ç¿ëµÉ Æ˾÷ ¸Þ´º¸¦ ¸¸µì´Ï´Ù:
+Menu, MyContextMenu, Add, Open, ContextOpenFile
+Menu, MyContextMenu, Add, Properties, ContextProperties
+Menu, MyContextMenu, Add, Clear from ListView, ContextClearRows
+Menu, MyContextMenu, Default, Open  ; Make "Open" a bold font to indicate that double-click does the same thing.
+
+; âÀ» º¸¿©ÁÖ°í µ¹¾Æ¿É´Ï´Ù. OS´Â ½ºÅ©¸³Æ®¿¡°Ô
+; »ç¿ëÀÚ°¡ Àû¹ýÇÑ ÇàÀ§¸¦ ¼öÇàÇÒ ¶§¸¶´Ù °íÁöÇÕ´Ï´Ù:
+Gui, Show
+return
+
+
+ButtonLoadFolder:
+Gui +OwnDialogs  ; ¸ÞÀΠâÀ» »ç¿ëÇϱâ Àü¿¡ »ç¿ëÀÚ¿¡°Ô ´ÙÀ½ ´ëÈ­»óÀÚ¸¦ °­Á¦·Î Ãë¼ÒÇϵµ·Ï ¸¸µì´Ï´Ù..
+FileSelectFolder, Folder,, 3, Select a folder to read:
+if not Folder  ; »ç¿ëÀÚ°¡ ´ëÈ­»óÀÚ¸¦ Ãë¼ÒÇß½À´Ï´Ù.
+    return
+
+; Æú´õ À̸§ÀÇ ¸¶Áö¸· ±ÛÀÚÀÚ ¿ª»ç¼±ÀÎÁö Á¡°ËÇÕ´Ï´Ù. Ȥ½Ã ·çÆ® µð·ºÅ丮 ÀÏ ¼ö ÀÖ½À´Ï´Ù.
+; ¸¸¾à C:\¿Í °°´Ù¸é, ±×°ÍÀ» Á¦°ÅÇØ ³ªÁß¿¡ µÎ°³ÀÇ ¿ª»ç¼±ÀÌ µÇ´Â °ÍÀ» ¸·½À´Ï´Ù.
+StringRight, LastChar, Folder, 1
+if LastChar = \
+    StringTrimRight, Folder, Folder, 1  ; µÚ¿¡ µû¸£´Â ¿ª»ç¼±À» Á¦°ÅÇÕ´Ï´Ù.
+
+; SHFILEINFO ±¸Á¶¿¡ ÇÊ¿äÇÑ ¹öÆÛ Å©±â¸¦ °è»êÇÕ´Ï´Ù.
+sfi_size := A_PtrSize + 8 + (A_IsUnicode ? 680 : 340)
+VarSetCapacity(sfi, sfi_size)
+
+; ¼±ÅÃµÈ Æú´õ·ÎºÎÅÍ ÆÄÀÏ À̸§ ¸ñ·ÏÀ» ¼öÁýÇØ ±×°ÍÀ» ListView¿¡ Ãß°¡ÇÕ´Ï´Ù:
+GuiControl, -Redraw, MyListView  ; ÀûÀçÇÏ´Â µ¿¾È ´Ù½Ã ±×¸®±â¸¦ ²¨¼­ ¼öÇ༺´ÉÀ» Çâ»ó½Ãŵ´Ï´Ù.
+Loop %Folder%\*.*
+{
+    FileName := A_LoopFileFullPath  ; ¾Æ·¡¿¡ »ç¿ëÇϱâ À§ÇØ ¹Ýµå½Ã ¾²±â °¡´ÉÇÑ º¯¼ö¿¡ ÀúÀåÇØ¾ß ÇÕ´Ï´Ù.
+
+    ; À¯ÀÏÇÑ È®Àå ID¸¦ ±¸¼ºÇØ º¯¼ö À̸§¿¡ ºÒ¹ýÀÎ ¿¹¸¦ µé¾î ´ë½Ã °°Àº ¹®ÀÚµéÀ» ÇÇÇÕ´Ï´Ù.
+    ; ÀÌ À¯ÀÏÇÑ ID ¹æ¹ýÀº ¼öÇ༺´Éµµ ÁÁ½À´Ï´Ù.
+    ; ¿Ö³ÄÇÏ¸é ¹è¿­¿¡¼­ Ç׸ñÀ» ãÀ¸¸é °Ë»ö-ȸµ¹ÀÌ°¡ ÇÊ¿ä¾ø±â ¶§¹®ÀÔ´Ï´Ù.
+    SplitPath, FileName,,, FileExt  ; ÆÄÀÏÀÇ È®ÀåÀÚ¸¦ ¾ò½À´Ï´Ù.
+    if FileExt in EXE,ICO,ANI,CUR
+    {
+        ExtID := FileExt  ; Ư¼öÇÑ ID¸¦ À§Ä¡ º¸À¯ÀÚ·Î »ç¿ëÇÕ´Ï´Ù.
+        IconNumber = 0  ; ¹ß°ßÇÏÁö ¸øÇÑ °ÍÀ¸·Î Ç¥½ÄÀ» ºÙ¿©¼­ ÀÌ·± À¯ÇüÀÌ °¢°¢ À¯ÀÏÇÑ ¾ÆÀÌÄÜÀ» °¡Áöµµ·Ï ÇÕ´Ï´Ù.
+    }
+    else  ; ¾î¶² ´Ù¸¥ È®ÀåÀÚ/ÆÄÀÏ-À¯ÇüÀÔ´Ï´Ù. ±×·¡¼­ ±×ÀÇ À¯ÀÏÇÑ ID¸¦ °è»êÇÕ´Ï´Ù.
+    {
+        ExtID = 0  ; ´Ù¸¥ È®ÀåÀÚº¸´Ù ´õ ªÀº È®ÀåÀÚ¸¦ ó¸®Çϱâ À§ÇØ ÃʱâÈ­ÇÕ´Ï´Ù.
+        Loop 7     ; È®ÀåÀÚ ±æÀ̸¦ 7 ¹®ÀÚ·Î Á¦ÇÑÇÕ´Ï´Ù. ±×·¡¼­ 64-ºñÆ® °ª¿¡ ¸Â½À´Ï´Ù.
+        {
+            StringMid, ExtChar, FileExt, A_Index, 1
+            if not ExtChar  ; ´õ ÀÌ»ó ¹®ÀÚ°¡ ¾ø½À´Ï´Ù.
+                break
+            ;  °¢ ¹®ÀÚ¸¶´Ù ´Ù¸¥ ºñÆ® À§Ä¡¸¦ ÇÒ´çÇؼ­ À¯ÀÏÇÑ ID¸¦ ÃßÃâÇÕ´Ï´Ù.:
+            ExtID := ExtID | (Asc(ExtChar) << (8 * (A_Index - 1)))
+        }
+        ; ÀÌ ÆÄÀÏ È®ÀåÀÚ°¡ ÀÌ¹Ì ImageList¿¡ ¾ÆÀÌÄÜÀÌ ÀÖ´ÂÁö Á¡°ËÇÕ´Ï´Ù.
+        ; ±×·¸´Ù¸é, ¿©·¯ È£ÃâÀ» ÇÏÁö ¾Ê¾Æµµ µÇ°í ¼öÇ༺´ÉÀÌ Å©°Ô °³¼±µË´Ï´Ù,
+        ; ƯÈ÷, ¼ö ¹é°³ÀÇ ÆÄÀÏÀÌ µéÀº Æú´õ¶ó¸é ƯÈ÷ ±×·¸½À´Ï´Ù:
+        IconNumber := IconArray%ExtID%
+    }
+    if not IconNumber  ; ¾ÆÁ÷ ÀÌ È®ÀåÀÚ¿¡ ¾ÆÀÌÄÜÀÌ ¾ø½À´Ï´Ù. ±×·¡¼­ ÀûÀçÇÕ´Ï´Ù.
+    {
+        ; ÀÌ ÆÄÀÏ È®Àå¿¡ ¿¬°üµÈ °íÇ°ÁúÀÇ ÀÛÀº ¾ÆÀÌÄÜÀ» ¾ò½À´Ï´Ù:
+        if not DllCall("Shell32\SHGetFileInfo" . (A_IsUnicode ? "W":"A"), "str", FileName
+            , "uint", 0, "ptr", &sfi, "uint", sfi_size, "uint", 0x101)  ; 0x101 is SHGFI_ICON+SHGFI_SMALLICON
+            IconNumber = 9999999  ; ºó ¾ÆÀÌÄÜÀ» º¸¿©ÁÖ±â À§ÇØ ¹üÀ§¸¦ ¹þ¾î³ªµµ·Ï ¼³Á¤ÇÕ´Ï´Ù.
+        else ; ¾ÆÀÌÄÜÀÌ ¼º°øÀûÀ¸·Î ÀûÀçµÇ¾ú½À´Ï´Ù.
+        {
+            ; ±¸Á¶·ÎºÎÅÍ hIcon ¸â¹ö¸¦ ÃßÃâÇÕ´Ï´Ù:
+            hIcon := NumGet(sfi, 0)
+            ; HICONÀ» Á÷Á¢ ÀÛÀº-¾ÆÀÌÄÜ ±×¸®°í Å«-¾ÆÀÌÄÜ ¸®½ºÆ®¿¡ Ãß°¡ÇÕ´Ï´Ù.
+            ; ¾Æ·¡´Â +1À» »ç¿ëÇØ, ¹ÝȯµÈ À妽ºÆ®¸¦ 0 ±â¹Ý¿¡¼­ 1 ±â¹ÝÀ¸·Î º¯È¯ÇÕ´Ï´Ù:
+            IconNumber := DllCall("ImageList_ReplaceIcon", "ptr", ImageListID1, "int", -1, "ptr", hIcon) + 1
+            DllCall("ImageList_ReplaceIcon", "ptr", ImageListID2, "int", -1, "ptr", hIcon)
+            ; ÀÌÁ¦ ImageList ¾ÈÀ¸·Î º¹»çµÇ¾úÀ¸¹Ç·Î, ¿øº»Àº Æı«ÇØ¾ß ÇÕ´Ï´Ù:
+            DllCall("DestroyIcon", "ptr", hIcon)
+            ; ¾ÆÀÌÄÜÀ» ij½¬ÇØ ¸Þ¸ð¸®¸¦ Àý¾àÇÏ°í ÀûÀç ¼öÇ༺´ÉÀ» °³¼±ÇÕ´Ï´Ù:
+            IconArray%ExtID% := IconNumber
+        }
+    }
+
+    ; ListView¿¡ »õ ÇàÀ» ¸¸µé°í ±×°ÍÀ» À§¿¡¼­ °áÁ¤µÈ ¾ÆÀÌÄÜ ¹øÈ£¿¡ ÇÒ´çÇÕ´Ï´Ù:
+    LV_Add("Icon" . IconNumber, A_LoopFileName, A_LoopFileDir, A_LoopFileSizeKB, FileExt)
+}
+GuiControl, +Redraw, MyListView  ; (À§¿¡¼­ ²¨ ¹ö¸°) ´Ù½Ã ±×¸®±â¸¦ ´Ù½Ã ÄÕ´Ï´Ù.
+LV_ModifyCol()  ; ±×ÀÇ ³»¿ë¿¡ ¸Â°Ô °¢ ¿­ÀÇ Å©±â¸¦ ÀÚµ¿ Á¶ÀýÇÕ´Ï´Ù.
+LV_ModifyCol(3, 60) ;±×ÀÇ Çì´õ¸¦ ³ëÃâ½ÃÅ°±â À§ÇØ Size ¿­À» ¾à°£ ´õ ³Ð°Ô ÇÕ´Ï´Ù.
+return
+
+
+ButtonClear:
+LV_Delete()  ; ListView¸¦ Áö¿ìÁö¸¸, °£´ÜÇÏ°Ô ÇϱâÀ§ÇØ ¾ÆÀÌÄÜ Ä³½¬´Â ±×´ë·Î À¯ÁöÇÕ´Ï´Ù.
+return
+
+ButtonSwitchView:
+if not IconView
+    GuiControl, +Icon, MyListView    ; ¾ÆÀÌÄÜ º¸±â·Î ÀüȯÇÕ´Ï´Ù.
+else
+    GuiControl, +Report, MyListView  ; ÀÚ¼¼È÷ º¸±â·Î ´Ù½Ã ÀüȯÇÕ´Ï´Ù.
+IconView := not IconView             ; ´ÙÀ½À» ´ëºñÇØ µÚÁý½À´Ï´Ù.
+return
+
+MyListView:
+if A_GuiEvent = DoubleClick  ; ½ºÅ©¸³Æ®°¡ Á¡°ËÇÒ ¼ö ÀÖ´Ù´Â ´Ù¸¥ °ªµéÀÌ ¸¹ÀÌ ÀÖ½À´Ï´Ù.
+{
+    LV_GetText(FileName, A_EventInfo, 1) ; ù ÇʵåÀÇ ÅؽºÆ®¸¦ ¾ò½À´Ï´Ù.
+    LV_GetText(FileDir, A_EventInfo, 2)  ; µÎ ¹ø° ÇʵåÀÇ ÅؽºÆ®¸¦ ¾ò½À´Ï´Ù.
+    Run %FileDir%\%FileName%,, UseErrorLevel
+    if ErrorLevel
+        MsgBox Could not open "%FileDir%\%FileName%".
+}
+return
+
+GuiContextMenu:  ; ¿ìŬ¸¯À̳ª Apps Å° ´©¸§¿¡ ÀÀ´äÇÏ¿© ±âµ¿µË´Ï´Ù.
+if A_GuiControl <> MyListView  ; ListView ¾ÈÀ» Ŭ¸¯ÇÒ ¶§¸¸ ¸Þ´º¸¦ º¸¿©ÁÝ´Ï´Ù.
+    return
+; ¸Þ´º¸¦ Á¦°øµÈ A_GuiX¿Í A_GuiY ÁÂÇ¥¿¡ º¸¿©ÁÝ´Ï´Ù. ÀÌ°ÍÀ» ½á¾ß ÇÕ´Ï´Ù.
+; ¿Ö³ÄÇÏ¸é »ç¿ëÀÚ°¡ Apps Å°¸¦ ´©¸£´õ¶óµµ ¿Ã¹Ù¸¦ ÁÂÇ¥¸¦ Á¦°øÇϱ⠶§¹®ÀÔ´Ï´Ù:
+Menu, MyContextMenu, Show, %A_GuiX%, %A_GuiY%
+return
+
+ContextOpenFile:  ; »ç¿ëÀÚ°¡ ¹®¸Æ ¸Þ´º¿¡¼­ "Open"À» ¼±ÅÃÇß½À´Ï´Ù.
+ContextProperties:  ; »ç¿ëÀÚ°¡ ¹®¸Æ ¸Þ´º¿¡¼­ "Properties"¸¦ ¼±ÅÃÇß½À´Ï´Ù.
+; °£´ÜÇÏ°Ô Çϱâ À§ÇØ, ¼±ÅÃµÈ ¸ðµç ÇàÀÌ ¾Æ´Ï¶ó ¿ÀÁ÷ ÃÊÁ¡ Çุ ó¸®ÇÕ´Ï´Ù:
+FocusedRowNumber := LV_GetNext(0, "F")  ; ÃÊÁ¡ ÇàÀ» ã½À´Ï´Ù.
+if not FocusedRowNumber  ; ÃÊÁ¡ ÇàÀÌ ¾ø½À´Ï´Ù.
+    return
+LV_GetText(FileName, FocusedRowNumber, 1) ; ù ÇʵåÀÇ ÅؽºÆ®¸¦ ¾ò½À´Ï´Ù.
+LV_GetText(FileDir, FocusedRowNumber, 2)  ; µÎ ¹ø° ÇʵåÀÇ ÅؽºÆ®¸¦ ¾ò½À´Ï´Ù.
+IfInString A_ThisMenuItem, Open  ; »ç¿ëÀÚ°¡ ¹®¸Æ ¸Þ´º¿¡¼­ "Open"À» ¼±ÅÃÇß½À´Ï´Ù.
+    Run %FileDir%\%FileName%,, UseErrorLevel
+else  ; »ç¿ëÀÚ°¡ ¹®¸Æ ¸Þ´º¿¡¼­ "Properties"¸¦ ¼±ÅÃÇß½À´Ï´Ù.
+    Run Properties "%FileDir%\%FileName%",, UseErrorLevel
+if ErrorLevel
+    MsgBox Could not perform requested action on "%FileDir%\%FileName%".
+return
+
+ContextClearRows:  ; »ç¿ëÀÚ°¡ ¹®¸Æ ¸Þ´º¿¡¼­ "Clear"¸¦ ¼±ÅÃÇß½À´Ï´Ù.
+RowNumber = 0  ; ÀÌ·¸°Ô Çϸé ù ¹Ýº¹ÀÌ ÃÖ»ó´Ü¿¡¼­ °Ë»öÀ» ½ÃÀÛÇÕ´Ï´Ù.
+Loop
+{
+    ; ÇàÀ» »èÁ¦ÇÏ¸é ±× ¾Æ·¡ÀÇ ¸ðµç ´Ù¸¥ ÇàÀÇ RowNumber°¡ ÁÙ¾î µé±â ¶§¹®¿¡,
+    ; 1À» »©¼­ ÀÌÀü¿¡ ¹ß°ßµÈ Çà ¹øÈ£¿Í °°Àº ¹øÈ£¸¦ °Ë»ö¿¡ Æ÷ÇÔ½Ãŵ´Ï´Ù
+    ; (ÀÎÁ¢ ÇàµéÀÌ ¼±ÅÃµÈ °æ¿ì):
+    RowNumber := LV_GetNext(RowNumber - 1)
+    if not RowNumber  ; À§¿¡¼­ 0À» µ¹·ÁÁÖ¾ú½À´Ï´Ù. ±×·¡¼­ ´õ ÀÌ»ó ¼±ÅÃµÈ ÇàÀÌ ¾ø½À´Ï´Ù.
+        break
+    LV_Delete(RowNumber)  ; ListView·ÎºÎÅÍ ÇØ´ç ÇàÀ» Á¦°ÅÇÕ´Ï´Ù.
+}
+return
+
+GuiSize:  ; »ç¿ëÀÚÀÇ Ã¢ Å©±â Á¶Àý¿¡ ÀÀ´äÇÏ¿© ListView¸¦ Å°¿ì°Å³ª ÁÙÀÔ´Ï´Ù.
+if A_EventInfo = 1  ; âÀÌ ÃÖ¼ÒÈ­µÇ¾ú½À´Ï´Ù. ´õ ÀÌ»ó Á¶Ä¡°¡ ÇÊ¿ä ¾ø½À´Ï´Ù.
+    return
+; ±×·¸Áö ¾ÊÀ¸¸é, âÀÌ Å©±â°¡ ¹Ù²î¾ú°Å³ª ÃÖ´ëÈ­µÇ¾ú½À´Ï´Ù. ±×¿¡ ¸Âµµ·Ï ListViewÀÇ Å©±â¸¦ Á¶ÀýÇÕ´Ï´Ù.
+GuiControl, Move, MyListView, % "W" . (A_GuiWidth - 20) . " H" . (A_GuiHeight - 40)
+return
+
+GuiClose:  ; âÀÌ ´ÝÈú ¶§, ÀÚµ¿À¸·Î ½ºÅ©¸³Æ®¸¦ Á¾·áÇÕ´Ï´Ù:
+ExitApp
+ + + diff --git a/src/docs/commands/Loop.htm b/src/docs/commands/Loop.htm new file mode 100644 index 0000000..d6baeee --- /dev/null +++ b/src/docs/commands/Loop.htm @@ -0,0 +1,71 @@ + + + + +Loop + + + + + + + +

Loop (normal)

+ +

ÀÏ·ÃÀÇ ¸í·É¾îµéÀ» ¹Ýº¹ÀûÀ¸·Î ½ÇÇàÇÕ´Ï´Ù: ÁöÁ¤µÈ Ƚ¼ö ¸¸Å­ ¹Ýº¹Çϰųª ¾Æ´Ï¸é break¸¦ ¸¸³¯ ¶§±îÁö ¹Ýº¹ÇÕ´Ï´Ù.

+ +
Loop [, Count]
+

¸Å°³º¯¼ö

+
+ +
Count
+

ȸµ¹À̸¦ ¼öÇàÇÒ (¹Ýº¹) Ƚ¼ö. »ý·«µÇ¸é, ȸµ¹ÀÌ´Â break ¶Ç´Â returnÀ» ¸¸³¯ ¶§±îÁö ¹«ÇÑÈ÷ °è¼ÓµË´Ï´Ù.

+

+ Count°¡ %ItemCount%¿Í °°Àº º¯¼ö ÂüÁ¶À̸é, ȸµ¹ÀÌ´Â º¯¼ö°¡ ºñ°Å³ª 1º¸´Ù ÀÛÀº ¼ýÀÚ¸¦ Æ÷ÇÔÇÒ ¶§ ¿ÏÀüÈ÷ °Ç³Ê ¶Ý´Ï´Ù.

+

+ ÆÄÀÏ-ÆÐÅÏ È¸µ¹À̸¦ Áö¿øÇÒ ÇÊ¿ä°¡ Àֱ⠶§¹®¿¡, Count´Â Ç¥Çö½ÄÀÌ µÇ¸é ¾ÈµË´Ï´Ù. ±×·¸Áö¸¸, ¸ðµç ºñ-Ç¥Çö½Ä ¸Å°³º¯¼öó·³, ¾Õ¿¡´Ù %¿Í ½ºÆäÀ̽º Çϳª¸¦ µÎ¸é °­Á¦·Î Ç¥Çö½Äó·³ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î: Loop % Count + 1. ±×·± °æ¿ì, Ç¥Çö½ÄÀº ȸµ¹ÀÌ°¡ ½ÃÀ۵DZâ Àü¿¡ ¿ÀÁ÷ ÇÑ ¹ø¸¸ Æò°¡µË´Ï´Ù.

+ +
+ +

³íÆò

+

+ȸµ¹ÀÌ ¸í·É¾î´Â º¸Åë ´ÙÀ½ ºí·ÏÀÌ µû¶ó¿É´Ï´Ù. ºí·ÏÀº ȸµ¹ÀÌÀÇ ¸öÀ» Çü¼ºÇÏ´Â ¼­¼ú¹® Áý´ÜÀÔ´Ï´Ù. ±×·¸Áö¸¸, ¼­¼ú¹®ÀÌ Çϳª¸¸ Àִ ȸµ¹ÀÌ´Â ºí·ÏÀÌ ÇÊ¿äÇÏÁö ¾Ê½À´Ï´Ù (ÀÌ·± ¸ñÀûÀ¸·Î "if"¿Í ±×ÀÇ "else"´Â ÇϳªÀÇ ¼­¼ú¹®À¸·Î °£Áֵ˴ϴÙ).

+

+ÀÌ ¸í·É¾îÀÇ ÀϹÝÀûÀÎ »ç¿ë¹ýÀº ¹«ÇÑ È¸µ¹ÀÌÀÔ´Ï´Ù. break ¸í·É¾î¸¦ ȸµ¹ÀÌÀÇ ¸ö ¾îµò°¡¿¡ »ç¿ëÇØ È¸µ¹À̸¦ ³¡³¾ ¶§¸¦ °áÁ¤ÇÕ´Ï´Ù.

+

+ȸµ¹ÀÌ ¾È¿¡ break¿Í continue¸¦ »ç¿ëÇÏ´Â °ÍÀ» Àû±Ø ±ÇÀåÇÕ´Ï´Ù. goto´Â ÀÚÁ¦ÇϽʽÿÀ. ¿Ö³ÄÇϸé ÀϹÝÀûÀ¸·Î ½ºÅ©¸³Æ®¸¦ ´õ ÀÌÇØÇϱ⠾î·Æ°Ô ¸¸µé°í À¯Áö°ü¸®Çϱ⵵ ´õ Èûµé°Ô ¸¸µé±â ¶§¹®ÀÔ´Ï´Ù. "Do...While" ȸµ¹À̸¦ ¸¸µé·Á¸é, ȸµ¹ÀÌ ¸öüÀÇ ¸¶Áö¸· ¼­¼ú¹®À» IF ¼­¼ú¹®À¸·Î ¸¸µé¾î¼­ Á¶°ÇÀûÀ¸·Î break ¸í·É¾î¸¦ ½ÇÇàÇϵµ·Ï ¸¸µå½Ê½Ã¿À. °°Àº Å×Å©´ÐÀ» »ç¿ëÇϸé "While" ȸµ¹À̸¦ ¸¸µé ¼ö ÀÖ½À´Ï´Ù. ±×·¯³ª ±× ´ë½Å¿¡ While ¸í·É¾î¸¦ »ç¿ëÇØ¾ß ÇÕ´Ï´Ù.

+

+³»Àå º¯¼ö A_Index¿¡´Â ÇöÀç ȸµ¹ÀÌ ¹Ýº¹ Ƚ¼ö°¡ ´ã±é´Ï´Ù. ȸµ¹ÀÌÀÇ ¸öü°¡ óÀ½ ½ÇÇàµÉ ¶§ 1ÀÌ ´ã±â°í, ±× ´ÙÀ½ ½ÇÇà ¶§ 2°¡ ´ã±é´Ï´Ù; µîµî. ³»ºÎ ȸµ¹ÀÌ°¡ ¿ÜºÎ ȸµ¹ÀÌ·Î µÑ·¯ ½Î¿© ÀÖ´Ù¸é, ³»ºÎ ȸµ¹ÀÌ°¡ ¿ì¼± ¼øÀ§°¡ ÀÖ½À´Ï´Ù. A_Index´Â ¸ðµç À¯ÇüÀÇ È¸µ¹ÀÌ¿¡ ÀÛµ¿ÇÕ´Ï´Ù. ¿©±â¿¡´Â ÆÄÀÏ-ȸµ¹ÀÌ¿Í ·¹Áö½ºÆ®¸®-ȸµ¹ÀÌ°¡ Æ÷ÇԵ˴ϴÙ; ±×·¯³ª A_Index´Â ȸµ¹ÀÌ ¹ÛÀ̸é 0ÀÌ ´ã±é´Ï´Ù.

+

+One True Brace (OTB) ½ºÅ¸ÀÏÀ» ¼±ÅÃÀûÀ¸·Î Á¤»ó ȸµ¹ÀÌ¿¡ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù (±×·¯³ª Ưº°ÇÑ È¸µ¹ÀÌ¿¡´Â ¾ÈµË´Ï´Ù. ¿¹¸¦ µé¾î ÆÄÀÏ-ÆÐÅÏ È¸µ¹ÀÌ ±×¸®°í ÆÄ½Ì È¸µ¹ÀÌ). ¿¹¸¦ µé¾î:

+
Loop {
+    ...
+}
+Loop %RepeatCount% {
+    ...
+}
+

+Ư¼ö ȸµ¹ÀÌ: ȸµ¹À̸¦ »ç¿ëÇØ ÀÚµ¿À¸·Î ÆÄÀÏ, Æú´õ, ·¹Áö½ºÆ®¸® Ç׸ñÀ» (ÇÑ ¹ø¿¡ Çϳª¾¿) ¿­¶÷ÇÒ ¼ö ÀÖ½À´Ï´Ù. ÀÚ¼¼ÇÑ °ÍÀº ÆÄÀÏ-ȸµ¹ÀÌ ±×¸®°í ·¹Áö½ºÆ®¸®-ȸµ¹À̸¦ ÂüÁ¶ÇϽʽÿÀ. °Ô´Ù°¡, ÆÄÀÏ-Àбâ ȸµ¹ÀÌ´Â ÆÄÀÏÀÇ Àüü ³»¿ëÀ» ÇÑ ¹ø¿¡ ÇÑ ÁÙ¾¿ ó¸®ÇÒ ¼ö ÀÖ½À´Ï´Ù. ¸¶Áö¸·À¸·Î, ÆÄ½Ì È¸µ¹ÀÌ´Â °¡¸§ÀÚ·Î ±¸ºÐµÈ ¹®ÀÚ¿­ ¾È¿¡ Æ÷ÇÔµÈ °³º° ÇʵåµéÀ» ó¸®ÇÒ ¼ö ÀÖ½À´Ï´Ù.

+ +

°ü·Ã Ç׸ñ

+

+Until, While-ȸµ¹ÀÌ, For-ȸµ¹ÀÌ, ÆÄÀÏ°ú Æú´õ ȸµ¹ÀÌ, ·¹Áö½ºÆ®¸® ȸµ¹ÀÌ, ÆÄÀÏ-Àбâ ȸµ¹ÀÌ, ÆÄ½Ì È¸µ¹ÀÌ, Break, Continue, ºí·Ï

+ +

¿¹Á¦

+
Loop, 3
+{
+    MsgBox, ¹Ýº¹ ¼ýÀÚ´Â %A_Index%ÀÔ´Ï´Ù.  ; A_Index´Â 1, 2, ±× ´ÙÀ½¿¡ 3ÀÌ µË´Ï´Ù
+    Sleep, 100
+}
+
+Loop
+{
+    if a_index > 25
+        break  ; ȸµ¹À̸¦ Á¾·áÇÕ´Ï´Ù
+    if a_index < 20
+        continue ; ¾Æ·¡¸¦ °Ç³Ê ¶Ù°í »õ ¹Ýº¹À» ½ÃÀÛÇÕ´Ï´Ù
+    MsgBox, a_index = %a_index% ; ÀÌ °÷Àº ¼ýÀÚ¸¦ 20ºÎÅÍ 25 ±îÁö¸¸ º¸¿©ÁÝ´Ï´Ù.
+}
+ + + diff --git a/src/docs/commands/LoopFile.htm b/src/docs/commands/LoopFile.htm new file mode 100644 index 0000000..17d71b7 --- /dev/null +++ b/src/docs/commands/LoopFile.htm @@ -0,0 +1,241 @@ + + + + +Loop (files & folders) + + + + + + + +

Loop (files & folders)

+ +

ÁöÁ¤µÈ ÆÄÀÏÀ̳ª Æú´õ¸¦ , ÇÑ ¹ø¿¡ Çϳª¾¿ ¿­¶÷ÇÕ´Ï´Ù.

+ +
Loop, Files, FilePattern [, Mode]  ; v1.1.21+ (±ÇÀå)
+
Loop, FilePattern [, IncludeFolders?, Recurse?]
+

¸Å°³º¯¼ö

+
+ +
Files [v1.1.21+]
+

¹®ÀÚ ±×´ë·Î Files (´ë¼Ò¹®ÀÚ-±¸º°). º¯¼ö³ª Ç¥Çö½Ä ºÒ°¡´É.

+ +
FilePattern
+

ÆÄÀÏÀ̳ª Æú´õÀÇ À̸§, ¶Ç´Â C:\Temp\*.tmp¿Í °°Àº ¿ÍÀϵåÄ«µå ÆÐÅÏ. FilePatternÀº Àý´ë °æ·Î°¡ ÁöÁ¤µÇ¾î ÀÖÁö ¾ÊÀ¸¸é %A_WorkingDir%¿¡ ÀÖ´Ù°í °£Áֵ˴ϴÙ.

+

+ º°Ç¥¿Í ¹°À½Ç¥ Ç¥½Ä ¸ðµÎ ¿ÍÀϵåÄ«µå·Î Áö¿øµË´Ï´Ù. ÆÐÅÏÀÌ ÆÄÀÏÀÇ ±ä/º¸Åë À̸§¿¡ ¶Ç´Â ±×ÀÇ 8.3 ªÀº À̸§¿¡ ³ªÅ¸³ª¸é ÀÏÄ¡°¡ ÀϾ´Ï´Ù.

+

+ ÀÌ ¸Å°³º¯¼ö°¡ ´ÜÀÏ ÆÄÀÏÀ̳ª Æú´õÀÌ°í (Áï, ¿ÍÀϵåÄ«µå°¡ ¾Æ´Ï°í) Recurse°¡ 1·Î ¼³Á¤µÇ¾ú°Å³ª Mode¿¡ RÀÌ Æ÷ÇԵǾî ÀÖÀ¸¸é, ºÎÇÕÇÏ´Â °ÍÀÌ ¿©·µÀÏ ¼ö ÀÖ½À´Ï´Ù. ÁöÁ¤µÈ ÆÄÀÏ À̸§ÀÌ °Ë»öµÇ´Â ¿©·¯ Æú´õ¿¡ ³ªÅ¸³ª±â ¶§¹®ÀÔ´Ï´Ù.

+ +
Mode [v1.1.21+]
+

´ÙÀ½ ±âÈ£µé·Î ±¸¼ºµË´Ï´Ù:

+

D: µð·ºÅ丮 Æ÷ÇÔ (Æú´õ).
+ F: ÆÄÀÏ Æ÷ÇÔ. F¿Í D¸¦ ¸ðµÎ »ý·«Çϸé ÆÄÀϵµ Æ÷ÇԵ˴ϴÙ.
+ R: ¼­ºêµð·ºÅ丮 ¾ÈÀ¸·Î Àç±ÍÇÕ´Ï´Ù (¼­ºêÆú´õ). RÀÌ »ý·«µÇ¸é, ¼­ºêµð·ºÅ丮ÀÇ ÆÄÀÏ°ú Æú´õ Æ÷ÇÔµÇÁö ¾Ê½À´Ï´Ù.

+
+ +
IncludeFolders?
+

´ÙÀ½ ¼ýÀÚ Áß Çϳª, ¶Ç´Â ºñ¾î ÀÖÀ¸¸é ±âº»°ª »ç¿ë:
+ 0 (±âº»°ª) Æú´õ´Â ¿­¶÷ÇÏÁö ¾Ê½À´Ï´Ù (ÆÄÀϸ¸ ¿­¶÷).
+ 1 ¿ÍÀϵåÄ«µå ÆÐÅÏ¿¡ ºÎÇÕÇÏ´Â ¸ðµç ÆÄÀÏ°ú Æú´õ¸¦ ¿­¶÷ÇÕ´Ï´Ù.
+ 2 Æú´õ¸¸ ¿­¶÷ÇÕ´Ï´Ù (ÆÄÀÏ ¿­¶÷ ¾ÈÇÔ).

+ +
Recurse?
+
´ÙÀ½ ¼ýÀÚ Áß Çϳª, ¶Ç´Â ºñ¾î ÀÖÀ¸¸é ±âº»°ªÀ» »ç¿ëÇÕ´Ï´Ù:
+ 0 (±âº»°ª) ¼­ºêÆú´õ ¾ÈÀ¸·Î Àç±ÍÇÏÁö ¾Ê½À´Ï´Ù.
+1 ¼­ºêÆú´õ ¾ÈÀ¸·Î Àç±ÍÇØ µé¾î°¡ °Å±â¿¡¼­ FilePattern¿¡ ºÎÇÕÇÏ´Â ¸ðµç ÆÄÀÏ°ú Æú´õ¸¦ ¿­¶÷ÇÕ´Ï´Ù. À̸§ÀÌ FilePattern¿¡ ºÎÇÕÇÏÁö ¾Ê¾Æµµ ¸ðµç ¼­ºêÆú´õ¸¦ Àç±ÍÇØ µé¾î°©´Ï´Ù.
+ +
+ +

ÆÄÀÏ-ȸµ¹ÀÌ ¾È¿¡¼­ »ç¿ëÇÒ ¼ö Àִ Ưº°ÇÑ º¯¼ö

+

+´ÙÀ½ º¯¼öµéÀº ÆÄÀÏ-ȸµ¹À̶ó¸é ¸ðµÎ Á¸ÀçÇÕ´Ï´Ù. ¾ÈÂÊ ÆÄÀÏ-ȸµ¹ÀÌ°¡ ¹Ù±ù ÆÄÀÏ-ȸµ¹ÀÌ¿¡ µÑ·¯ ½Î¿© ÀÖ´Ù¸é, ¾ÈÂÊ ÆÄÀÏ È¸µ¹ÀÌ°¡ ¿ì¼±±ÇÀÌ ÀÖ½À´Ï´Ù:

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
A_LoopFileNameÇöÀç ¿­¶÷µÈ ÆÄÀÏÀ̳ª Æú´õÀÇ À̸§ (°æ·Î ¾øÀ½).
A_LoopFileExtÆÄÀÏ È®ÀåÀÚ (¿¹, TXT, DOC, ¶Ç´Â EXE). ¸¶Ä§Ç¥ (.)´Â Æ÷ÇÔµÇÁö ¾Ê½À´Ï´Ù.
A_LoopFileFullPathÇöÀç ¿­¶÷µÈ ÆÄÀÏ/Æú´õÀÇ Àüü °æ·Î¿Í À̸§. FilePattern¿¡ Àý´ë °æ·Î°¡ ¾Æ´Ï¶ó »ó´ë °æ·Î°¡ ´ã°Ü ÀÖ´Ù¸é, ¿©±â¿¡µµ »ó´ë °æ·Î°¡ ´ã±é´Ï´Ù. °Ô´Ù°¡, FilePatternÀÌ ÂªÀº (8.3) Æú´õ À̸§ÀÌ¸é ¿ª½Ã ªÀº À̸§ÀÌ ´ã±é´Ï´Ù (±ä ¹öÀüÀ» ¾òÀ¸·Á¸é ´ÙÀ½ Ç׸ñÀ» ÂüÁ¶ÇϽʽÿÀ).
A_LoopFileLongPath´ÙÀ½°ú °°Àº Á¡¿¡¼­ A_LoopFileFullPath¿Í ´Ù¸¨´Ï´Ù: +
    +
  1. ¾ðÁ¦³ª ÆÄÀÏÀÇ Àý´ë/¿ÏÀüÇÑ °æ·Î°¡ ´ã±é´Ï´Ù. FilePattern¿¡ Àý´ë °æ·Î°¡ ´ã°Ü À־ »ó°üÀÌ ¾ø½À´Ï´Ù; +
  2. FilePattern ÀÚüÀÇ ÂªÀº (8.3) Æú´õ À̸§Àº ±ä À̸§À¸·Î º¯È¯µË´Ï´Ù; +
  3. FilePattern ¾ÈÀÇ ¹®ÀÚ´Â ÆÄÀÏ ½Ã½ºÅÛ¿¡ ÀúÀåµÈ ´ë¼Ò¹®ÀÚ¿¡ ¸ÂÃß¾î ´ë¹®ÀÚ³ª ¼Ò¹®ÀÚ·Î º¯È¯µË´Ï´Ù . ÀÌ´Â ÆÄÀÏ À̸§À» Ž»ö±â¿¡ º¸À̵íÀÌ Á¤È®ÇÑ °æ·Î À̸§À¸·Î -- ¿¹¸¦ µé¾î ½ºÅ©¸³Æ® ¾È¿¡ ¸í·É ÁÙ ¸Å°³º¯¼ö·Î °Ç³×¾îÁö´Â °æ·Î -- º¯È¯ÇÏ´Â µ¥ À¯¿ëÇÕ´Ï´Ù. +
+
A_LoopFileShortPath

ÇöÀç ¿­¶÷µÈ ÆÄÀÏ/Æú´õÀÇ 8.3 ªÀº °æ·Î¿Í À̸§. ¿¹¸¦ µé¾î: C:\MYDOCU~1\ADDRES~1.txt. FilePattern¿¡ Àý´ë °æ·Î°¡ ¾Æ´Ï¶ó »ó´ë °æ·Î°¡ ´ã±â¸é, ¿©±â¿¡¼­ °æ·Îµµ ¿ª½Ã »ó´ë °æ·Î°¡ µË´Ï´Ù.

+

+ ´ÜÀÏ ÆÄÀÏÀ̳ª Æú´õ¿¡ ´ëÇÏ¿© ¿Ïº®ÇÑ 8.3 °æ·Î¿Í À̸§À» ¿­¶÷ÇÏ·Á¸é, FilePattern¿¡ ±×ÀÇ À̸§À» ´ÙÀ½ ¿¹Á¦¿Í °°ÀÌ ÁöÁ¤ÇϽʽÿÀ:

+ +
Loop, C:\My Documents\Address List.txt
+    ShortPathName = %A_LoopFileShortPath%
+

+ ÁÖÀÇ: ÀÌ º¯¼ö´Â ÆÄÀÏÀÌ ÂªÀº À̸§ÀÌ ¾ø´Ù¸é ºñ¾î ÀÖ½À´Ï´Ù. ÀÌ·± ÀÏÀº ·¹Áö½ºÆ®¸®¿¡ NtfsDisable8dot3NameCreation°¡ ¼³Á¤µÇ¾î ÀÖ´Â ½Ã½ºÅÛ¿¡¼­ ÀϾ ¼ö ÀÖ½À´Ï´Ù. + ¶Ç FilePattern¿¡ »ó´ë °æ·Î°¡ µé¾î ÀÖ°í ȸµ¹ÀÌÀÇ ¸öü°¡ SetWorkingDir¸¦ »ç¿ëÇÏ´Â °æ¿ì¿¡µµ ÀϾ ¼ö ÀÖ½À´Ï´Ù. + ÇöÀç ȸµ¹ÀÌ ÀÚü¿¡ ¿µÇâÀÌ ÀÖ´Â ÇöÀç ÀÛ¾÷ µð·ºÅ丮·ÎºÎÅÍ ´Ù¸¥ µð·ºÅ丮·Î ÀüȯÇÏ¸é ¾ÈµË´Ï´Ù.

A_LoopFileShortName + 8.3 ªÀº À̸§, ¶Ç´Â ÆÄÀÏÀÇ ¶Ç´Ù¸¥ À̸§. ÆÄÀÏ¿¡ ªÀº À̸§ÀÌ ¾ø´Ù¸é (±ä À̸§ÀÌ 8.3º¸´Ù ´õ ª°Å³ª ¶Ç´Â ¾î¼¸é NTFS ÆÄÀÏ ½Ã½ºÅÛ¿¡¼­ ªÀº-À̸§ »ý¼ºÀÌ ²¨Á® Àֱ⠶§¹®¿¡), A_LoopFileNameÀÌ ´ë½Å ¿­¶÷µË´Ï´Ù.
A_LoopFileDirA_LoopFileNameÀÌ °ÅÁÖÇÏ´Â µð·ºÅ丮ÀÇ °æ·Î. FilePattern¿¡ Àý´ë °æ·Î°¡ ¾Æ´Ï¶ó »ó´ë °æ·Î°¡ µé¾î ÀÖ´Ù¸é, ¿©±âÀÇ °æ·Îµµ »ó´ë °æ·Î°¡ µË´Ï´Ù. ·çÆ® µð·ºÅ丮´Â µÚ¿¡ ¿ª»ç¼±À» Æ÷ÇÔÇÏÁö ¾Ê½À´Ï´Ù. ¿¹¸¦ µé¾î: C:
A_LoopFileTimeModifiedÆÄÀÏÀÌ ¸¶Áö¸·À¸·Î ¼öÁ¤µÈ ½Ã°¢. Çü½ÄÀº YYYYMMDDHH24MISS.
A_LoopFileTimeCreatedÆÄÀÏÀÌ »ý¼ºµÈ ½Ã°¢. Çü½ÄÀº YYYYMMDDHH24MISS.
A_LoopFileTimeAccessedÆÄÀÏ¿¡ ¸¶Áö¸·À¸·Î Á¢±ÙÇÑ ½Ã°¢. Çü½ÄÀº YYYYMMDDHH24MISS.
A_LoopFileAttribÇöÀç ¿­¶÷µÈ ÆÄÀÏÀÇ ¼Ó¼º.
A_LoopFileSizeÇöÀç ¿­¶÷µÈ ÆÄÀÏÀÇ ¹ÙÀÌÆ® ´ÜÀ§ Å©±â. 4 ±â°¡ ¹ÙÀÌÆ®º¸´Ù Å« ÆÄÀϵµ Áö¿øÇÕ´Ï´Ù.
A_LoopFileSizeKBÇöÀç ¿­¶÷µÈ ÆÄÀÏÀÇ Kbytes ´ÜÀ§ Å©±â, °¡Àå °¡±î¿î Á¤¼ö·Î ¹Ý³»¸²µË´Ï´Ù.
A_LoopFileSizeMBÇöÀç ¿­¶÷µÈ ÆÄÀÏÀÇ Mbytes ´ÜÀ§ Å©±â, °¡Àå °¡±î¿î Á¤¼ö·Î ¹Ý³»¸² µË´Ï´Ù.
+

³íÆò

+

+ÆÄÀÏ È¸µ¹ÀÌ´Â ÆÄÀÏ/Æú´õÀÇ Áý´ÜÀ» ÇÑ ¹ø¿¡ Çϳª¾¿ ó¸®ÇÏ°í ½ÍÀ» ¶§ À¯¿ëÇÕ´Ï´Ù.

+

+¼ûÀº ÆÄÀÏÀ» Æ÷ÇÔÇÏ¿©, ºÎÇÕÇÏ´Â ¸ðµç ÆÄÀÏÀÌ ¿­¶÷µË´Ï´Ù. ´ëÁ¶ÀûÀ¸·Î, DIR¿Í °°Àº OS Ư¡Àº ±âº»À¸·Î ¼ûÀº ÆÄÀÏÀ» Á¦¿ÜÇÕ´Ï´Ù. ¼ûÀº, ½Ã½ºÅÛ, ¶Ç´Â Àбâ Àü¿ë ÆÄÀÏÀ» ó¸®ÇÏÁö ¾Êµµ·Ï ÇÏ·Á¸é, ȸµ¹ÀÌ ¾È¿¡ ´ÙÀ½°ú °°Àº Äڵ带 »ç¿ëÇϽʽÿÀ:

+ +
if A_LoopFileAttrib contains H,R,S  ; ¼Ó¼ºÀÌ H (Hidden), R (Read-only), ¶Ç´Â S (System)ÀÎ ÆÄÀÏÀº °Ç³Ê ¶Ý´Ï´Ù. ÁÖÀÇ: "H,R,S"¿¡ ½ºÆäÀ̽º°¡ ¾ø½À´Ï´Ù.
+    continue  ; ÀÌ ÆÄÀÏÀ» °Ç³Ê ¶Ù°í ´ÙÀ½ ÆÄÀÏ·Î °©´Ï´Ù.
+

+ÆÄÀÏÀ» Àç±ÍÀûÀ¸·Î °Ë»öÇÏ´Â µ¿¾È Àý´ë °æ·Î ´ë½Å¿¡ »ó´ë °æ·Î¸¦ ¾òÀ¸·Á¸é, SetWorkingDirÀ» »ç¿ëÇÏ¿© ȸµ¹À̸¦ ½ÃÀÛÇϱâ Àü¿¡ ¸ÕÀú ±âº» Æú´õ·Î º¯°æÇÑ ´ÙÀ½, Loop¿¡¼­´Â ±× °æ·Î¸¦ »ý·«ÇϽʽÿÀ (¿¹, Loop, *.*, 0, 1). ±×·¯¸é A_LoopFileFullPath¿¡ ±× ±âº» Æú´õ¿¡ »ó´ëÀûÀÎ ÆÄÀÏÀÇ °æ·Î°¡ ´ã±é´Ï´Ù.

+

+ÆÄÀÏ-ȸµ¹ÀÌ´Â ÀÚ½ÅÀÇ ¹üÀ§ ¾È¿¡¼­ ÆÄÀÏÀ̳ª Æú´õ¸¦ ¸¸µé°Å³ª À̸§À» ¹Ù²Ü °æ¿ì ½º½º·Î¸¦ È¥¶õ¿¡ ºüÆ®¸± ¼ö ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î, FileMove³ª ±âŸ ¼ö´ÜÀ¸·Î ÆÄÀÏ À̸§À» º¯°æÇÑ´Ù¸é, ±×·± ÆÄÀÏÀº °¢°¢ µÎ ¹ø ¹ß°ßÀÌ µÉ ¼ö ÀÖ½À´Ï´Ù: ÇÑ ¹øÀº ±×ÀÇ ¿¹Àü À̸§À¸·Î ±×¸®°í ´Ù½Ã »õ À̸§À¸·Î ¹ß°ßµË´Ï´Ù. + +À̸¦ ¿ìȸÇÏ·Á¸é, ÆÄÀÏ ¸®½ºÆ®°¡ »ý¼ºµÈ ÈÄ¿¡¸¸ ÆÄÀÏÀÇ À̸§À» ¹Ù²Ù½Ê½Ã¿À. ¿¹¸¦ µé¾î:

+ +
FileList =
+Loop, Files, *.jpg
+   FileList = %FileList%%A_LoopFileName%`n
+Loop, Parse, FileList, `n
+   FileMove, %A_LoopField%, renamed_%A_LoopField%
+

+NTFS ÆÄÀÏ ½Ã½ºÅÛÀÇ ÆÄÀÏÀº ¾Æ¸¶µµ ¾ðÁ¦³ª ¾ËÆĺª ¼ø¼­·Î ¿­¶÷µÉ °ÍÀÔ´Ï´Ù. ´Ù¸¥ ÆÄÀÏ ½Ã½ºÅÛ¿¡¼­´Â Ưº°ÇÑ ¼ø»ç°¡ ¾øÀÌ ¿­¶÷µË´Ï´Ù. ƯÁ¤ ¼ø¼­·Î ¿­¶÷ÇÏ·Á¸é, ¾Æ·¡ ¼½¼ÇÀÇ ¿¡Á¦¿¡¼­ º¸¿©ÁÖ´Â °Íó·³ Sort ¸í·É¾î¸¦ »ç¿ëÇϽʽÿÀ.

+

+ÆÄÀÏÀ̳ª Æú´õ À̸§ÀÌ 259 ¹®ÀÚ°¡ ³Ñ¾î°¡¸é ¸¶Ä¡ Á¸ÀçÇÏÁö ¾Ê´Â °Íó·³ °Ç³Ê ¶Ý´Ï´Ù. ±×·± ÆÄÀÏÀº °ÅÀÇ ¾ø½À´Ï´Ù. º¸Åë ¿î¿µ üÁ¦¿¡¼­ ±×·± ÆÄÀÏÀº »ý¼ºÀ» Çã¿ëÇÏÁö ¾Ê±â ¶§¹®ÀÔ´Ï´Ù.

+

+Blocks, Break, Continue, ±×¸®°í A_Index º¯¼ö (¸ðµç À¯ÇüÀÇ È¸µ¹ÀÌ¿¡ Á¸ÀçÇÔ)¿¡ °üÇÑ Á¤º¸´Â Loop¸¦ ÂüÁ¶ÇϽʽÿÀ.

+ +

°ü·Ã Ç׸ñ

+

Loop, Break, Continue, Blocks, SplitPath, FileSetAttrib, FileSetTime

+ +

¿¹Á¦

+ +
; ¿¹Á¦ #1:
+Loop Files, %A_ProgramFiles%\*.txt, R  ; ¼­ºêÆú´õ ¾ÈÀ¸·Î Àç±ÍÇÕ´Ï´Ù.
+{
+    MsgBox, 4, , Filename = %A_LoopFileFullPath%`n`nContinue?
+    IfMsgBox, No
+        break
+}
+

 

+
; ¿¹Á¦ #2: Æú´õÀÇ Å©±â¸¦ °è»êÇÕ´Ï´Ù. ±×ÀÇ ¼­ºêÆú´õ ¾È¿¡ ÀÖ´Â ÆÄÀϵéÀ» ¸ðµÎ Æ÷ÇÔÇÕ´Ï´Ù:
+SetBatchLines, -1  ; ÃÖ´ë ¼Óµµ·Î ¿¬»êÀ» ½ÇÇàÇÕ´Ï´Ù.
+FolderSizeKB = 0
+FileSelectFolder, WhichFolder  ; »ç¿ëÀÚ¿¡°Ô Æú´õ¸¦ °í¸£µµ·Ï ¿ä±¸ÇÕ´Ï´Ù.
+Loop, Files, %WhichFolder%\*.*, R
+    FolderSizeKB += %A_LoopFileSizeKB%
+MsgBox Size of %WhichFolder% is %FolderSizeKB% KB.
+

 

+
; ¿¹Á¦ #3: À̸§À¸·Î Á¤·ÄµÈ ÆÄÀÏ À̸§µéÀ» ¿­¶÷ÇÕ´Ï´Ù. (´ÙÀ½ ¿¹Á¦´Â ³¯Â¥·Î Á¤·Ä):
+FileList =  ; ºó °ªÀ¸·Î ÃʱâÈ­ÇÕ´Ï´Ù.
+Loop, C:\*.*
+    FileList = %FileList%%A_LoopFileName%`n
+Sort, FileList, R  ; R ¿É¼ÇÀº ¿ª¼øÀ¸·Î Á¤·ÄÇÕ´Ï´Ù. ´Ù¸¥ ¿É¼ÇÀº Sort¸¦ ÂüÁ¶ÇϽʽÿÀ.
+Loop, parse, FileList, `n
+{
+    if A_LoopField =  ; ¸®½ºÆ® ¸Ç ³¡¿¡ ÀÖ´Â ºó Ç׸ñÀº ¹«½ÃÇÕ´Ï´Ù.
+        continue
+    MsgBox, 4,, File number %A_Index% is %A_LoopField%.  Continue?
+    IfMsgBox, No
+        break
+}
+

 

+
; ¿¹Á¦ #4: ¼öÁ¤ ³¯Â¥·Î Á¤·ÄµÈ ÆÄÀÏ À̸§µéÀ» ¿­¶÷ÇÕ´Ï´Ù:
+FileList =
+Loop, Files, %A_MyDocuments%\Photos\*.*, FD  ; ÆÄÀÏ°ú µð·ºÅ丮¸¦ Æ÷ÇÔÇÕ´Ï´Ù
+    FileList = %FileList%%A_LoopFileTimeModified%`t%A_LoopFileName%`n
+Sort, FileList  ; Sort by date.
+Loop, Parse, FileList, `n
+{
+    if A_LoopField =  ; ¸®½ºÆ® ¸Ç ³¡ÀÇ ¸¶Áö¸· ¶óÀÎÇǵå (ºó Ç׸ñ)Àº ¹«½ÃÇÕ´Ï´Ù.
+        continue
+    StringSplit, FileItem, A_LoopField, %A_Tab%  ; ÅÇ ¹®ÀÚ¿¡¼­ µÎ ºÎºÐÀ¸·Î ³ª´¯´Ï´Ù.
+    MsgBox, 4,, The next file (modified at %FileItem1%) is:`n%FileItem2%`n`nContinue?
+    IfMsgBox, No
+        break
+}
+

 

+
; ¿¹Á¦ #5: ¸ñÇ¥ ÆÄÀÏ°ú ºñ±³Çؼ­ ´õ »õ·Î¿î ¼Ò½º ÆÄÀϸ¸ º¹»çÇÕ´Ï´Ù:
+CopyIfNewer:
+; È£ÃâÀÚ´Â º¯¼ö CopySourcePattern°ú CopyDest¸¦ ¿ì¸® ´ë½Å ¼³Á¤ÇØ ÁÝ´Ï´Ù.
+Loop, Files, %CopySourcePattern%
+{
+    copy_it = n
+    IfNotExist, %CopyDest%\%A_LoopFileName%  ; ¸ñÇ¥ ÆÄÀÏÀÌ ¾ÆÁ÷ Á¸ÀçÇÏÁö ¾ÊÀ¸¸é Ç×»ó º¹»çÇÕ´Ï´Ù.
+        copy_it = y
+    else
+    {
+        FileGetTime, time, %CopyDest%\%A_LoopFileName%
+        EnvSub, time, %A_LoopFileTimeModified%, seconds  ; ¸ñÇ¥ ÆÄÀÏÀÇ ½Ã°£À¸·ÎºÎÅÍ ¼Ò½º ÆÄÀÏÀÇ ½Ã°£À» »®´Ï´Ù.
+        if time < 0  ; ¼Ò½º ÆÄÀÏÀº ¸ñÇ¥ ÆÄÀϺ¸´Ù ´õ »õ·Ó½À´Ï´Ù.
+            copy_it = y
+    }
+    if copy_it = y
+    {
+        FileCopy, %A_LoopFileFullPath%, %CopyDest%\%A_LoopFileName%, 1   ;  overwrite=yes¸¦ »ç¿ëÇÏ¿© º¹»çÇÕ´Ï´Ù
+        if ErrorLevel
+            MsgBox, Could not copy "%A_LoopFileFullPath%" to "%CopyDest%\%A_LoopFileName%".
+    }
+}
+Return
+

 

+
; ¿¹Á¦ #6: ¸í·ÉÁÙ ¸Å°³º¯¼ö¸¦ ÅëÇÏ¿© °Ç³×¾îÁø ÆÄÀÏ À̸§À» ±ä À̸§, ¿ÏÀüÇÑ À̸§À¸·Î º¯È¯ÇÕ´Ï´Ù.
+; ±×¸®°í ÆÄÀÏ ½Ã½ºÅÛ¿¡ ÀúÀåµÈ ´ë¼Ò¹®ÀÚ¿¡ ¸Â°Ô À̸§À» ´ë¹®ÀÚ³ª ¼Ò¹®ÀÚ·Î ±³Á¤ÇÕ´Ï´Ù.
+Loop %0%  ; ½ºÅ©¸³Æ®¿¡ ¶³±¸¾îÁø °¢ ÆÄÀÏ¿¡ ´ëÇÏ¿© (¶Ç´Â ¸Å°³º¯¼ö·Î °Ç³×¾îÁø).
+{
+    GivenPath := %A_Index%  ; ´ÙÀ½ ¸í·ÉÁÙ ¸Å°³º¯¼ö¸¦ ¿­¶÷ÇÕ´Ï´Ù.
+    Loop %GivenPath%, 1
+        LongPath = %A_LoopFileLongPath%
+    MsgBox The case-corrected long path name of file`n%GivenPath%`nis:`n%LongPath%
+}
+ + + diff --git a/src/docs/commands/LoopParse.htm b/src/docs/commands/LoopParse.htm new file mode 100644 index 0000000..c4e7742 --- /dev/null +++ b/src/docs/commands/LoopParse.htm @@ -0,0 +1,137 @@ + + + + +Loop (parse a string) + + + + + + + +

Loop (¹®ÀÚ¿­À» Çؼ®ÇÔ)

+ +

+¹®ÀÚ¿­·ÎºÎÅÍ ºÎ¹®ÀÚ¿­(Çʵå)¸¦ ÇÑ ¹ø¿¡ Çϳª¾¿ ¿­¶÷ÇÕ´Ï´Ù.

+ +
Loop, Parse, InputVar [, Delimiters, OmitChars]
+

¸Å°³º¯¼ö

+
+ +
Parse
+

ÀÌ °³º¯¼ö´Â ´Ü¾î PARSE¸¸ µË´Ï´Ù. ´Ù¸¥ ȸµ¹ÀÌ À¯Çü°ú ´Ù¸£°Ô, º¯¼ö ÂüÁ¶´Â ´Ü¾î PARSE·Î °áÁ¤µÈ´Ù°í ÇÒÁö¶óµµ Çã¿ëÇÏÁö ¾Ê½À´Ï´Ù.

+ +
InputVar
+
+

³»¿ëÀ» ºÐ¼®ÇÒ º¯¼öÀÇ À̸§. À̸§À» ÆÛ¼¾Æ® »çÀÎÀ¸·Î µÑ·¯ ½ÎÁö ¸¶½Ê½Ã¿À. º¯¼öÀÇ ³»¿ëÀ» À̸§À¸·Î »ç¿ëÇÏ°í ½Í´Ù¸é ¿¹¿ÜÀÔ´Ï´Ù.

+

[v1.1.21+]: ÀÌ ¸Å°³º¯¼ö´Â % Ç¥Çö½ÄÀÌ µÉ ¼ö ÀÖÁö¸¸, ÆÛ¼¾Æ®-½ºÆäÀ̽º Á¢µÎ»ç°¡ ¹Ýµå½Ã »ç¿ëµÇ¾î¾ß ÇÕ´Ï´Ù.

+
+ +
Delimiters
+

ÀÌ ¸Å°³º¯¼ö°¡ ºñ¾î Àְųª »ý·«µÇ¸é, InputVarÀÇ °¢ ¹®ÀÚ´Â º°µµÀÇ ºÎ¹®ÀÚ¿­·Î °£Áֵ˴ϴÙ.

+

+ ÀÌ ¸Å°³º¯¼ö°¡ CSVÀ̸é, InputVar´Â Ç¥ÁØÀÇ ½°Ç¥·Î °¡¸¥ °ª Çü½ÄÀ¸·Î Çؼ®µË´Ï´Ù. ´ÙÀ½Àº CSVÁÙÀÇ ¿¹·Î¼­ MS Excel·Î »ý»êÇß½À´Ï´Ù:

+ +
"first field",SecondField,"the word ""special"" is quoted literally",,"last field, has literal comma"
+ +

+ ±×·¸Áö ¾ÊÀ¸¸é, Delimiters¿¡´Â Çϳª ÀÌ»óÀÇ ¹®ÀÚ°¡ ´ã±é´Ï´Ù (´ë¼Ò¹®ÀÚ ±¸º°), °¢ ¹®ÀÚ¸¶´Ù InputVar¿¡¼­ ºÎ¹®ÀÚ¿­ÀÌ ÀϾ´Â °æ°è¸¦ °áÁ¤ÇÕ´Ï´Ù.

+

+ Delimiter ¹®ÀÚµéÀº ºÎ¹®ÀÚ¿­ ÀÚüÀÇ ÀϺηΠ°£ÁÖµÇÁö ¾Ê½À´Ï´Ù. ¶Ç, InputVar ¾È¿¡¼­ ÇÑ ½ÖÀÇ ±¸ºÐÀÚ »çÀÌ¿¡ ¾Æ¹«°Íµµ ¾ø´Ù¸é, »óÀÀÇÏ´Â ¹®ÀÚ¿­Àº ºñ¾î ÀÖ½À´Ï´Ù.

+

¿¹¸¦ µé¾î: `, (ÇÇ½ÅµÈ ½°Ç¥)´Â ¹®ÀÚ¿­À» ½°Ç¥°¡ ÃâÇöÇÒ ¶§¸¶´Ù °¡¸¨´Ï´Ù. ºñ½ÁÇÏ°Ô, %A_Tab%%A_Space%´Â InputVar¿¡¼­ ½ºÆäÀ̽º³ª ÅÇÀ» ¸¸³¯ ¶§¸¶´Ù »õ ¹®ÀÚ¿­À» ½ÃÀÛ½Ãŵ´Ï´Ù.

+

+ ¹®ÀÚ Çϳª°¡ ¾Æ´Ï¶ó ¹®ÀÚ¿­À» ±¸ºÐÀÚ·Î »ç¿ëÇÏ·Á¸é, ¸ÕÀú StringReplace¸¦ »ç¿ëÇØ ÇØ´ç ¹®ÀÚ¿­ÀÌ ³ªÅ¸³ª¸é ¸ðµÎ ÅؽºÆ®¿¡¼­ Àý´ë·Î ¹®ÀÚ ±×´ë·Î »ç¿ëµÇÁö ¾Ê´Â ¹®ÀÚ Çϳª·Î ±³Ã¼ÇÕ´Ï´Ù. ¿¹¸¦ µé¾î ´ÙÀ½ÀÇ Æ¯¼ö ¹®ÀÚµé Áß Çϳª: ¢¤¥¦§©ª«®µ¶. ´ÙÀ½ ¿¹Á¦¸¦ ¿¬±¸ÇØ º¸½Ê½Ã¿À. ¹®ÀÚ¿­ <br>À» ±¸ºÐÀÚ·Î »ç¿ëÇÕ´Ï´Ù:

+ +
StringReplace, NewHTML, HTMLString, <br>, ¢, All
+Loop, parse, NewHTML, ¢ ; ¼¾Æ® ½Éº¼¿¡ ±â¹ÝÇÏ¿© ¹®ÀÚ¿­À» Çؼ®ÇÕ´Ï´Ù.
+{
+...
+}
+ +
OmitChars
+

+ °¢ ºÎ¹®ÀÚ¿­ÀÇ ¼±µÎ¿Í ÈĹ̿¡¼­ ¹èÁ¦ÇÒ ¹®ÀÚÀÇ (¼±ÅÃÀû) ¸®½ºÆ® (´ë¼Ò¹®ÀÚ ±¸ºÐ). ¿¹¸¦ µé¾î, OmitChars°¡ %A_Space%%A_Tab%À̸é, ½ºÆäÀ̽º¿Í ÅÇÀÌ ¿­¶÷µÈ ¸Å ºÎ¹®ÀÚ¿­·ÎºÎÅÍ ¼±µÎ¿Í ÈĹ̿¡¼­ Á¦°ÅµË´Ï´Ù (°¡¿îµ¥´Â ¾Æ´Ô).

+

+ Delimiters°¡ ºñ¾î ÀÖÀ¸¸é, OmitChars´Â °í·Á ´ë»ó¿¡¼­ ¹èÁ¦ÇÒ ¹®ÀÚµéÀ» °¡¸®Åµ´Ï´Ù (ȸµ¹ÀÌ´Â ±×·± ¹®ÀÚµéÀ» º¸Áö ¸øÇÕ´Ï´Ù).

+

+ ´ëºÎºÐÀÇ ´Ù¸¥ ¸í·É¾îÀÇ ¸¶Áö¸· ¸Å°³º¯¼ö¿Í ´Ù¸£°Ô, OmitChars¿¡¼­ ½°Ç¥´Â ¹Ýµå½Ã ÇǽŽÃÄÑ¾ß ÇÕ´Ï´Ù (`,).

+ +
+ +

³íÆò

+

+¹®ÀÚ¿­ ÆÄ½Ì È¸µ¹ÀÌ´Â ¹®ÀÚ¿­¿¡ µé¾î ÀÖ´Â °¢ Çʵ带 ÇÑ ¹ø¿¡ Çϳª¾¿ ó¸®ÇÒ ¶§ À¯¿ëÇÕ´Ï´Ù. (StringSplitÀº ¿µ±¸ÀûÀÎ ÀÇ»ç-¹è¿­À» »ý¼ºÇϱ⠶§¹®¿¡) ÆÄ½Ì È¸µ¹ÀÌ´Â StringSplit º¸´Ù ¸Þ¸ð¸®¸¦ ´ú »ç¿ëÇÏ°í ´ëºÎºÐÀÇ °æ¿ì ´õ »ç¿ëÇϱ⠽±½À´Ï´Ù.

+

+³»Àå º¯¼ö A_LoopField´Â ¸ðµç ÆÄ½Ì È¸µ¹ÀÌ ¾È¿¡ Á¸ÀçÇÕ´Ï´Ù. ¾È¿¡ InputVar·ÎºÎÅÍ ÆĽÌÇÑ ÇöÀçÀÇ ºÎ¹®ÀÚ¿­(Çʵå)°¡ µé¾î ÀÖ½À´Ï´Ù. ³»ºÎ ÆÄ½Ì È¸µ¹ÀÌ°¡ ¹Ù±ù ÆÄ½Ì È¸µ¹ÀÌ·Î µÑ·¯ ½Î¿© ÀÖ´Ù¸é ³»ºÎ ȸµ¹ÀÌÀÇ Çʵ尡 ¿ì¼± ¼øÀ§°¡ ³ô½À´Ï´Ù.

+

+³»Àå º¯¼ö "A_LoopDelimiter"´Â ÀüÇô ¾øÁö¸¸, ÀÌ ÆäÀÌÁö ¸Ç ¾Æ·¡ ¿¹Á¦´Â °¢ Çʵ帶´Ù ¾î´À ±¸ºÐÀÚ¸¦ »ç¿ëÇÏ°í ÀÖ´Â º¸¿©ÁÝ´Ï´Ù.

+

+InputVarÀÇ Å©±â ¶Ç´Â ±×ÀÇ ÇʵåÀÇ Å©±â¿¡´Â Á¦ÇÑÀÌ ¾ø½À´Ï´Ù. °Ô´Ù°¡, InputVarÀÇ ³»¿ëÀÌ È¸µ¹À̸¦ ½ÇÇàÇÏ´Â µ¿¾È¿¡ ¹Ù²ï´Ù¸é, ±× ȸµ¹ÀÌ´Â ±× º¯È­¸¦ "º¸Áö ¸øÇÕ´Ï´Ù". ¿Ö³ÄÇÏ¸é ¿ø·¡ ³»¿ëÀÇ Àӽà »çº»À» ó¸®ÇÏ°í Àֱ⠶§¹®ÀÔ´Ï´Ù.

+

+Çؼ®Çϱâ Àü¿¡ Çʵ带 ´Ù¸¥ ¼ø¼­·Î Á¤µ·ÇÏ·Á¸é, Sort ¸í·É¾î¸¦ »ç¿ëÇϽʽÿÀ.

+

+Blocks, Break, Continue, ±×¸®°í A_Index º¯¼ö (¸ðµç ȸµ¹ÀÌ¿¡ Á¸Àç)¿¡ °üÇÑ Á¤º¸´Â Loop¸¦ ÂüÁ¶ÇϽʽÿÀ.

+ +

°ü·Ã Ç׸ñ

+

+StringSplit, file-reading loop, Loop, Break, Continue, Blocks, Sort, FileSetAttrib, FileSetTime

+ +

¿¹Á¦

+ +
; ¿¹Á¦ #1:
+Colors = red,green,blue
+Loop, parse, Colors, `,
+{
+    MsgBox, Color number %A_Index% is %A_LoopField%.
+}
+

 

+ +
; ¿¹Á¦ #2: º¯¼ö ¾È¿¡ ÁÙµéÀ» Çϳª¾¿ ÀÐ¾î µéÀÔ´Ï´Ù (ÆÄÀÏ-Àбâ ȸµ¹ÀÌ¿Í À¯»ç).
+; FileRead¸¦ ÅëÇÏ¿© ÆÄÀÏÀ» º¯¼ö ¾È¿¡ ÀûÀçÇÒ ¼ö ÀÖ½À´Ï´Ù:
+Loop, parse, FileContents, `n, `r  ; `nÀ» ¸ÕÀú `rÀ» ´ÙÀ½¿¡ ÁöÁ¤ÇØ¾ß Windows¿Í Unix ÆÄÀÏÀ» ¸ðµÎ Çؼ®ÇÒ ¼ö ÀÖ½À´Ï´Ù.
+{
+    MsgBox, 4, , Line number %A_Index% is %A_LoopField%.`n`nContinue?
+    IfMsgBox, No, break
+}
+

 

+
; ¿¹Á¦ #3: À§ÀÇ ¿¹Á¦¿Í °°Áö¸¸ Ŭ¸³º¸µå¿ëÀÔ´Ï´Ù.
+; Ŭ¸³º¸µå¿¡ ÆÄÀÏÀÌ ´ã°Ü ÀÖÀ» ¶§ À¯¿ëÇÕ´Ï´Ù. ±×·± ÆÄÀÏÀº º¸Åë Ž»öâÀ¸·ÎºÎÅÍ º¹»çµË´Ï´Ù 
+; (ÇÁ·Î±×·¥Àº ÀÚµ¿À¸·Î ±×·± ÆÄÀÏÀ» ±×µéÀÇ ÆÄÀÏ À̸§À¸·Î º¯È¯ÇÕ´Ï´Ù):
+Loop, parse, clipboard, `n, `r
+{
+    MsgBox, 4, , File number %A_Index% is %A_LoopField%.`n`nContinue?
+    IfMsgBox, No, break
+}
+

 

+
; Example #4: ½°Ç¥·Î °¡¸¥ °ª (CSV) ÆÄÀÏÀ» Çؼ®ÇÕ´Ï´Ù:
+Loop, read, C:\Database Export.csv
+{
+    LineNumber = %A_Index%
+    Loop, parse, A_LoopReadLine, CSV
+    {
+        MsgBox, 4, , Field %LineNumber%-%A_Index% is:`n%A_LoopField%`n`nContinue?
+        IfMsgBox, No
+            return
+    }
+}
+

 

+
; ¿¹Á¦ #5: ¾î´À ±¸ºÐÀÚ¿¡ ¸¶ÁÖÇß´ÂÁö ¾Ë¾Æ³»±â.
+
+; °Ë»öÇÒ ¹®ÀÚ¿­À» ÃʱâÈ­ ÇÕ´Ï´Ù.
+Colors = red,green|blue;yellow|cyan,magenta
+; ¹®ÀÚ¿­¿¡¼­ À§Ä¡¸¦ ÃßÀûÇÒ °è¼ö¸¦ ÃʱâÈ­ÇÕ´Ï´Ù.
+Position := 0
+
+Loop, Parse, Colors, `,|;
+{
+    ; ÀÌ ÇʵåÀÇ ³¡¿¡¼­ ±¸ºÐÀÚÀÇ À§Ä¡¸¦ °è»êÇÕ´Ï´Ù.
+    Position += StrLen(A_LoopField) + 1
+    ; Çؼ® ȸµ¹ÀÌ°¡ ¹ß°ßÇÑ ±¸ºÐÀÚ¸¦ ¿­¶÷ÇÕ´Ï´Ù.
+    Delimiter := SubStr(Colors, Position, 1)
+
+    MsgBox Field: %A_LoopField%`nDelimiter: %Delimiter%
+}
+ + + diff --git a/src/docs/commands/LoopReadFile.htm b/src/docs/commands/LoopReadFile.htm new file mode 100644 index 0000000..5a40f08 --- /dev/null +++ b/src/docs/commands/LoopReadFile.htm @@ -0,0 +1,164 @@ + + + + +Loop (read file contents) + + + + + + + +

Loop (ÆÄÀÏ ³»¿ë Àбâ)

+ +

ÅؽºÆ® ÆÄÀÏ¿¡¼­ ÇÑ ¹ø¿¡ ÇÑ ÁÙ¾¿ ¿­¶÷ÇÕ´Ï´Ù (FileReadLineº¸´Ù ¼öÇ༺´ÉÀÌ ÁÁ½À´Ï´Ù).

+ +
Loop, Read, InputFile [, OutputFile]
+

¸Å°³º¯¼ö

+
+ +
Read
+

ÀÌ ¸Å°³º¯¼ö´Â ¹Ýµå½Ã ´Ü¾î READÀ̾î¾ß ÇÕ´Ï´Ù.

+ +
InputFile
+

±×ÀÇ ³»¿ëÀÌ È¸µ¹ÀÌ¿¡ ÀÐÇô Áú ÅؽºÆ® ÆÄÀÏÀÇ À̸§. Àý´ë °æ·Î°¡ ÁöÁ¤µÇ¾î ÀÖÁö ¾ÊÀ¸¸é %A_WorkingDir%¿¡ ÀÖ´Ù°í °£Áֵ˴ϴÙ. Windows¿Í Unix Çü½ÄÀ» Áö¿øÇÕ´Ï´Ù; Áï, ÆÄÀÏ ÁÙÀº ij¸®Áö ¸®ÅÏ°ú ¶óÀÎÇǵå·Î (`r`n) ³¡³ª°Å³ª ¾Æ´Ï¸é ±×³É ¶óÀÎÇǵå·Î (`n) ³¡³¯ ¼ö ÀÖ½À´Ï´Ù.

+ +
OutputFile
+

(¼±ÅÃÀû) ȸµ¹À̸¦ ÇÏ´Â µ¿¾È ¿­¾î µÑ ÆÄÀÏÀÇ À̸§. Àý´ë °æ·Î¸¦ ÁöÁ¤ÇÏÁö ¾ÊÀ¸¸é %A_WorkingDir%¿¡ ÀÖ´Ù°í °£Áֵ˴ϴÙ.

+

ȸµ¹ÀÌ ¸öü ¾È¿¡¼­ ¸Å°³ º¯¼ö Çϳª¸¸ (¾º¿©Áú ÅؽºÆ®¸¸) °¡Áö°í FileAppend ¸í·É¾î¸¦ »ç¿ëÇϸé ÀÌ Æ¯º°ÇÑ ÆÄÀÏ¿¡ Ãß°¡ÇÒ ¼ö ÀÖ½À´Ï´Ù. ÀÌ·± ¹æ½ÄÀ¸·Î ÆÄÀÏ¿¡ Ãß°¡Çϸé FileAppend¸¦ ¸Å°³º¯¼ö 2 °³¿Í ÇÔ²² »ç¿ëÇÏ´Â °Íº¸´Ù ´õ ¼öÇ༺´ÉÀÌ ÁÁ½À´Ï´Ù. ¿Ö³ÄÇϸé ÆÄÀÏÀ» °¢ ¿¬»ê¸¶´Ù ´Ý°í ´Ù½Ã ¿­ ÇÊ¿ä°¡ ¾ø±â ¶§¹®ÀÔ´Ï´Ù. ÀØÁö ¸»°í ÅؽºÆ® ³¡¿¡ ¶óÀÎÇǵ带 (`n) Ãß°¡ÇϽʽÿÀ.

+

+ ¾Æ¹«°Íµµ ¾º¿©ÁöÁö ¾ÊÀ¸¸é ÆÄÀÏÀº ¿­¸®Áö ¾Ê½À´Ï´Ù. ÀÌ·± ÀÏÀº Loop°¡ ÀüÇô ¹Ýº¹À» ¼öÇàÇÏÁö ¾Ê°Å³ª FileAppend ¸í·É¾î¸¦ ÀüÇô »ç¿ëÇÏÁö ¾ÊÀ» ¶§ ÀϾ´Ï´Ù.

+

+ ÀÌÁø ¸ðµå: ÅؽºÆ® ¸ðµå°¡ ¾Æ´Ï¶ó ÀÌÁø ¸ðµå·Î Ãß°¡ÇÏ·Á¸é, ÆÄÀÏ À̸§ ¾Õ¿¡ º°Ç¥¸¦ ¹èÄ¡ÇϽʽÿÀ. ÀÌ·¸°Ô ÇÏ¸é °¢ ¶óÀÎÇÇµå ¹®ÀÚ°¡ (`n) À©µµ¿ìÁîÀÇ Ç¥ÁØ CR+LF°¡ ¾Æ´Ï¶ó ´ÜÀÏ ¶óÀÎÇǵå·Î ¾º¿©Áý´Ï´Ù (LF). ¿¹¸¦ µé¾î: *C:\My Unix File.txt. º°Ç¥°¡ ¾ø´õ¶óµµ, FileAppend¸¦ óÀ½ »ç¿ëÇÒ ¶§ Loop¿¡¼­ ij¸®Áö ¸®ÅÏ°ú ¶óÀÎÇǵ带 ¾²¸é (`r`n) ÀÌÁø ¸ðµå°¡ ÀÚµ¿À¸·Î ÄÑÁý´Ï´Ù(?).

+

+ Ç¥ÁØ Ãâ·Â (stdout): º°Ç¥¸¦ (*) OutputFile¿¡ ÁöÁ¤Çϸé FileAppend°¡ ¾²´Â ¸ðµç ÅؽºÆ®´Â Ç¥ÁØ Ãâ·ÂÀ¸·Î Àü¼ÛµË´Ï´Ù (stdout). ±×·± Ãâ·ÂÀ» ÆÄÀÏ¿¡ ¹æÇâÀüȯÇϰųª, ¶Ç´Ù¸¥ EXE·Î ÆÄÀÌÇÁ ó¸®Çϰųª, ¶Ç´Â ¸ÚÁø ÅؽºÆ® ÆíÁý±â·Î ³ªÆ÷ÇÒ ¼ö´Â ÀÖÁö¸¸, ±âµ¿µÈ ¸í·É¾î ÇÁ·ÒÇÁÆ®¿¡ ½ºÅ©¸³Æ®°¡ ³ªÅ¸³ªÁö ¾Ê½À´Ï´Ù. ´õ ÀÚ¼¼ÇÑ °ÍÀº FileAppend¸¦ ÂüÁ¶ÇϽʽÿÀ.

+

+ ÇÇ½ÅµÈ ½°Ç¥: ´ëºÎºÐÀÇ ´Ù¸¥ ¸í·É¾îÀÇ ¸¶Áö¸· ¸Å°³º¯¼ö¿Í ´Ù¸£°Ô, OutputFile¿¡¼­ ½°Ç¥´Â ¹Ýµå½Ã ÇǽŽÃÄÑ¾ß ÇÕ´Ï´Ù (`,).

+ +
+ +

³íÆò

+

+ÆÄÀÏ-Àбâ ȸµ¹ÀÌ´Â ÅؽºÆ® ÆÄÀÏ¿¡ µç °¢ ÁÙÀ» ÇÑ ¹ø¿¡ Çϳª¾¿ ó¸®ÇÒ ¶§ À¯¿ëÇÕ´Ï´Ù. FileReadLineÀ» »ç¿ëÇÏ´Â °Íº¸´Ù ´õ ¼öÇ༺´ÉÀÌ ÁÁ½À´Ï´Ù. ¿Ö³ÄÇá¸é: 1) ¿¬»ê ±â°£µ¿¾È ÆÄÀÏÀÌ ¿­¸° »óÅ·ΠÀÖÀ» ¼ö ÀÖ½À´Ï´Ù; ±×¸®°í 2) ±× ÆÄÀÏÀº ¿äûµÈ ÁÙ ¹øÈ£Ãú ã±â À§ÇØ ¸Å¹ø ´Ù½Ã ½ºÄµÇÒ ÇÊ¿ä°¡ ¾ø½À´Ï´Ù.

+

+³»Àå º¯¼ö A_LoopReadLineÀº ¸ðµç ÆÄÀÏ-Àбâ ȸµ¹ÀÌ ¾È¿¡ Á¸ÀçÇÕ´Ï´Ù. ¾È¿¡ ÇöÀç ÁÙÀÇ ³»¿ëÀÌ ´ã°Ü ÀÖ½À´Ï´Ù. ÁÙ ³¡À» Ç¥½ÄÇϴ ij¸®Áö ¸®ÅÏ°ú ¶óÀÎÇǵå´Â Á¦¿ÜµÇ¾î ÀÖ½À´Ï´Ù (`r`n). ³»ºÎ ÆÄÀÏ-Àбâ ȸµ¹ÀÌ°¡ ¹Ù±ù ÆÄÀÏ-Àбâ ȸµ¹ÀÌ·Î µÑ·¯ ½Î¿© ÀÖ´Ù¸é, °¡Àå ¾ÈÂÊ È¸µ¹ÀÌÀÇ ÆÄÀÏ-ÁÙÀÌ ¿ì¼± ¼øÀ§¸¦ °®½À´Ï´Ù.

+

+ÁÙ ´ç 65,534 ¹®ÀÚ ±æÀ̱îÁö ÀÐÀ» ¼ö ÀÖ½À´Ï´Ù. ÁÙ ±æÀÌ°¡ ÀÌ Á¦ÇÑÀ» ÃÊ°úÇϸé, ³ª¸ÓÁö ¹®ÀÚµéÀ» ´ÙÀ½ ȸµ¹ÀÌ ¶§ ÀÐÈü´Ï´Ù.

+

+InputFileÀ¸·ÎºÎÅÍ ¿­¶÷µÈ °¢ ÁÙÀÇ ³»¿ëÀ» ºÐÇØÇϱâ À§ÇØ StringSplit ¶Ç´Â ÆÄ½Ì È¸µ¹ÀÌ°¡ Á¾Á¾ »ç¿ëµË´Ï´Ù. ¿¹¸¦ µé¾î, InputFileÀÇ °¢ ÁÙÀÌ ÅÇÀ¸·Î-±¸ºÐµÈ ÀÏ·ÃÀÇ Çʵå·Î ±¸¼ºµÇ¾î ÀÖ´Ù¸é, ±× ÇʵåµéÀº ´ÙÀ½ ¿¹Á¦¿Í °°ÀÌ °³º°ÀûÀ¸·Î ¿­¶÷ÇÒ ¼ö ÀÖ½À´Ï´Ù:

+
Loop, read, C:\Database Export.txt
+{
+    Loop, parse, A_LoopReadLine, %A_Tab%
+    {
+        MsgBox, Field number %A_Index% is %A_LoopField%.
+    }
+}
+

+Àüü ÆÄÀÏÀ» º¯¼ö ¾ÈÀ¸·Î ÀûÀçÇÏ·Á¸é, FileRead¸¦ »ç¿ëÇϽʽÿÀ. ¿Ö³ÄÇϸé ȸµ¹À̺¸´Ù ¼öÇ༺´ÉÀÌ (ƯÈ÷ ¹æ´ëÇÑ ÆÄÀÏ¿¡ ´ëÇÏ¿©) ÈξÀ ´õ ÁÁ±â ¶§¹®ÀÔ´Ï´Ù.

+

+¿©·¯ ÆÄÀÏÀ» µ¿½Ã¿¡ ¿­·Á¸é, ´ÙÀ½ ¿¹Á¦¿¡ º¸¿©ÁÖ´Â ¹Ù¿Í °°ÀÌ DllCall()¸¦ »ç¿ëÇϽʽÿÀ.

+

+Blocks, Break, Continue, ±×¸®°í (¸ðµç À¯ÇüÀÇ È¸µ¹ÀÌ¿¡ Á¸ÀçÇÏ´Â) A_Index º¯¼ö¿¡ °üÇÑ Á¤º¸´Â Loop¸¦ ÂüÁ¶ÇϽʽÿÀ.

+

+¹ÙÀÌÆ® ¼ø¼­ Ç¥½ÄÀÌ ¾øÀ» ¶§ ÆÄÀÏÀ» ¾î¶»°Ô µðÄÚµåÇÒÁö Á¦¾îÇÏ·Á¸é FileEncodingÀ» »ç¿ëÇϽʽÿÀ.

+ +

°ü·Ã Ç׸ñ

+

FileEncoding, FileOpen/File Object, FileRead, FileReadLine, FileAppend, Sort, Loop, Break, Continue, Blocks, FileSetAttrib, FileSetTime

+ +

¿¹Á¦

+
; ¿¹Á¦ #1: 1st ÆÄÀÏ¿¡¼­ ´Ü¾î FAMILY°¡ µç Áٵ鸸 2nd ÆÄÀÏ¿¡ ¾º¿©Áý´Ï´Ù.
+; ±âÁ¸ÀÇ ÆÄÀÏ¿¡ Ãß°¡ÇÏ´Â°Ô ¾Æ´Ï¶ó µ¤¾î¾²·Á¸é ù ÁÙÀ» ÁÖ¼® ÇØÁ¦ÇϽʽÿÀ.
+;FileDelete, C:\Docs\Family Addresses.txt
+
+Loop, read, C:\Docs\Address List.txt, C:\Docs\Family Addresses.txt
+{
+    IfInString, A_LoopReadLine, family, FileAppend, %A_LoopReadLine%`n
+}
+

 

+
; ¿¹Á¦ #2: ÅؽºÆ® ÆÄÀϷκÎÅÍ ¸¶Áö¸· ÁÙÀ» ¿­¶÷ÇÕ´Ï´Ù.
+Loop, read, C:\Log File.txt
+    last_line := A_LoopReadLine  ; ȸµ¹ÀÌ°¡ ³¡³¯ ¶§, ¿©±â¿¡ ±× ¸¶Áö¸· ÁÙÀ» º¸À¯ÇÕ´Ï´Ù.
+

 

+
; ¿¹Á¦ #3: ´ÙÀ½ ½ºÅ©¸³Æ®´Â HTMLÀ̳ª ÅؽºÆ® ÆÄÀϷκÎÅÍ
+; FTP¿Í HTTPÀÇ URLÀ» ¸ðµÎ ÃßÃâÇÏ·Á°í ½ÃµµÇÕ´Ï´Ù:
+FileSelectFile, SourceFile, 3,, Pick a text or HTML file to analyze.
+if SourceFile =
+    return  ; ÀÌ °æ¿ì Á¾·áÇÕ´Ï´Ù.
+
+SplitPath, SourceFile,, SourceFilePath,, SourceFileNoExt
+DestFile = %SourceFilePath%\%SourceFileNoExt% Extracted Links.txt
+
+IfExist, %DestFile%
+{
+    MsgBox, 4,, Overwrite the existing links file? Press No to append to it.`n`nFILE: %DestFile%
+    IfMsgBox, Yes
+        FileDelete, %DestFile%
+}
+
+LinkCount = 0
+Loop, read, %SourceFile%, %DestFile%
+{
+    URLSearchString = %A_LoopReadLine%
+    Gosub, URLSearch
+}
+MsgBox %LinkCount% links were found and written to "%DestFile%".
+return
+
+
+URLSearch:
+; ´ÙÀ½°ú °°ÀÌ Æ¯º°ÇÑ ¹æ½ÄÀ¸·Î 󸮵˴ϴÙ. ¿Ö³ÄÇÏ¸é ¾î¶² URLÀº ´Ù¸¥ URLÀ» ÀڽŠ¾È¿¡ ³»ÀåÇϱ⠶§¹®ÀÔ´Ï´Ù:
+StringGetPos, URLStart1, URLSearchString, http://
+StringGetPos, URLStart2, URLSearchString, ftp://
+StringGetPos, URLStart3, URLSearchString, www.
+
+; °¡Àå ¿ÞÂÊÀÇ ½ÃÀÛ ÁöÁ¡À» ã½À´Ï´Ù:
+URLStart = %URLStart1%  ; ±âº» ½ÃÀÛ ÁöÁ¡À» ¼³Á¤ÇÕ´Ï´Ù.
+Loop
+{
+    ; "URLStart%A_Index%"¸¦ ÇÑ ¹ø¸¸ °áÁ¤Çϸé
+    ; (Àû¾îµµ ¸¹Àº º¯¼ö°¡ ÀÖ´Â ½ºÅ©¸³Æ®¿¡¼­) ¼öÇ༺´ÉÀÌ Çâ»óµË´Ï´Ù
+    ArrayElement := URLStart%A_Index%
+    if ArrayElement =  ; ÀÇ»ç-¹è¿­ÀÇ ³¡¿¡ µµ´ÞÇß½À´Ï´Ù.
+        break
+    if ArrayElement = -1  ; ÀÌ ¿ä¼Ò´Â ÀÚ°ÝÀÌ ¾ø½À´Ï´Ù.
+        continue
+    if URLStart = -1
+        URLStart = %ArrayElement%
+    else ; URLStart´Â ¾È¿¡ À¯È¿ÇÑ À§Ä¡¸¦ °¡Áö°í ÀÖ½À´Ï´Ù.. ±×·¡¼­ ±×°ÍÀ» ArrayElement¿Í ºñ±³ÇÕ´Ï´Ù.
+    {
+        if ArrayElement <> -1
+            if ArrayElement < %URLStart%
+                URLStart = %ArrayElement%
+    }
+}
+
+if URLStart = -1  ; URLÀÌ URLSearchString¿¡ Á¸ÀçÇÏÁö ¾Ê½À´Ï´Ù.
+    return
+
+; ±×·¸Áö ¾ÊÀ¸¸é, ÀÌ URLÀ» ÃßÃâÇÕ´Ï´Ù:
+StringTrimLeft, URL, URLSearchString, %URLStart%  ; ½ÃÀÛ/ºÎÀûÀý ºÎºÐÀ» Á¦°ÅÇÕ´Ï´Ù.
+Loop, parse, URL, %A_Tab%%A_Space%<>  ; (ÀÖ´Ù¸é) ù ¹ø° ½ºÆäÀ̽º, ÅÇ, ¶Ç´Â ¾Þ±Û ¹®ÀÚ¸¦ ã½À´Ï´Ù.
+{
+    URL = %A_LoopField%
+    break  ; Áï, ù ¹ø° "Çʵå"¸¦ °¡Á® ¿À±â À§ÇØ ¿ÀÁ÷ ÇÑ ¹ø¸¸ ȸµ¹À̸¦ ¼öÇàÇÕ´Ï´Ù.
+}
+; Á¾·á ¹®ÀÚ°¡ ¹ß°ßµÇÁö ¾Ê¾Æ¼­ À§ÀÇ È¸µ¹ÀÌ¿¡ ¹Ýº¹ÀÌ ¾ø´Ù¸é,
+; URL º¯¼öÀÇ ³»¿ëÀ» ±×´ë·Î µÓ´Ï´Ù.
+
+; URLÀÌ °ãµû¿ÈÇ¥·Î ³¡³ª¸é, °ãµû¿ÈÇ¥¸¦ Á¦°ÅÇÕ´Ï´Ù. Áö±Ý ´çÀåÀº StringReplace°¡ »ç¿ëµË´Ï´Ù.
+; ±×·¯³ª °ãµû¿ÈÇ¥°¡ URL ¾È¿¡ Á¸ÀçÇصµ À¯È¿ÇÑ °Í °°½À´Ï´Ù.
+; ±×·¡¼­ Á¦°ÅÇÏ¸é ¼Õ»óÀ» ÀÔÈú ¼öµµ ÀÖ½À´Ï´Ù:
+StringReplace, URLCleansed, URL, ",, All
+FileAppend, %URLCleansed%`n
+LinkCount += 1
+
+; ÀÌ ÁÙ¿¡ ´Ù¸¥ URLµéÀÌ ÀÖ´Â ¾Ë¾Æ º¾´Ï´Ù:
+StringLen, CharactersToOmit, URL
+CharactersToOmit += %URLStart%
+StringTrimLeft, URLSearchString, URLSearchString, %CharactersToOmit%
+Gosub, URLSearch  ; Àڽſ¡°Ô Àç±Í È£ÃâÀ» ÇÕ´Ï´Ù.
+return
+ + + diff --git a/src/docs/commands/LoopReg.htm b/src/docs/commands/LoopReg.htm new file mode 100644 index 0000000..39e42f8 --- /dev/null +++ b/src/docs/commands/LoopReg.htm @@ -0,0 +1,182 @@ + + + + +Loop (registry) + + + + + + + +

Loop (·¹Áö½ºÆ®¸®)

+ +

ÁöÁ¤µÈ ·¹Áö½ºÆ®¸® ¼­ºêÅ°ÀÇ ³»¿ëÀ» ÇÑ ¹ø¿¡ Çϳª¾¿ ¿­¶÷ÇÕ´Ï´Ù.

+ +
Loop, Reg, RootKey[\Key, Mode]  ; v1.1.21+ (̵̧)
+
Loop, RootKey [, Key, IncludeSubkeys?, Recurse?]
+

¸Å°³º¯¼ö

+
+ +
Reg [v1.1.21+]
+

¹®ÀÚ ±×´ë·ÎÀÇ ´Ü¾î Reg (´ë¼Ò¹®ÀÚ ±¸ºÐ). ÀÌ°ÍÀº º¯¼ö ¶Ç´Â Ç¥Çö½ÄÀÌ µÇ¸é ¾ÈµË´Ï´Ù. ÀÌ Å°¿öµå°¡ Á¸ÀçÇϸé, Key´Â ¹Ýµå½Ã ½°Ç¥ ´ë½Å¿¡ Á¤»ç¼±À¸·Î RootKey¿Í ºÐ¸®ÇØ¾ß ÇÕ´Ï´Ù. µÑ ¸ðµÎ ÇϳªÀÇ º¯¼ö¿¡ ´ã±æ ¼ö ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î, Loop, Reg, HKLM\Software ¶Ç´Â Loop, Reg, %FullPathOfKey%.

+ +
RootKey
+

HKEY_LOCAL_MACHINE (HKLM), HKEY_USERS (HKU), HKEY_CURRENT_USER (HKCU), HKEY_CLASSES_ROOT (HKCR), ¶Ç´Â HKEY_CURRENT_CONFIG (HKCC) Áß Çϳª°¡ µÇ¾î¾ß ÇÕ´Ï´Ù.

+

¿ø°Ý ·¹Áö½ºÆ®¸®¿¡ Á¢±ÙÇÏ·Á¸é, ÄÄÇ»ÅÍ À̸§°ú ½ÖÁ¡À» ¾Õ¿¡ ¹èÄ¡ÇϽʽÿÀ. ´ÙÀ½ ¿¹Á¦¿Í °°ÀÌ: \\workstation01:HKEY_LOCAL_MACHINE

+ +
Key
+

Å°ÀÇ À̸§ (¿¹, Software\SomeApplication). ºñ¾î Àְųª »ý·«Çϸé, RootKeyÀÇ ³»¿ëÀÌ ¿­¶÷µË´Ï´Ù.

+ +
Mode [v1.1.21+]
+

´ÙÀ½ ±âÈ£·Î ±¸¼ºµË´Ï´Ù:

+

K: Å°¸¦ Æ÷ÇÔÇÕ´Ï´Ù.
+ V: °ªÀ» Æ÷ÇÔÇÕ´Ï´Ù. K¿Í V¸¦ ¸ðµÎ »ý·«ÇÏ¸é °ªµéµµ Æ÷ÇԵ˴ϴÙ.
+ R: ÇÏÀ§Å°·Î Àç±ÍÇØ µé¾î°©´Ï´Ù. RÀÌ »ý·«µÇ¸é, KeyÀÇ ÇÏÀ§Å°ÀÇ Å°¿Í °ªÀº Æ÷ÇÔµÇÁö ¾Ê½À´Ï´Ù.

+
+ +
IncludeSubkeys?
+

0 (±âº»°ª) Key ¾È¿¡ Æ÷ÇÔµÈ ÇÏÀ§Å°´Â ¿­¶÷ÇÏÁö ¾Ê½À´Ï´Ù (¿ÀÁ÷ °ª¸¸ ¿­¶÷ÇÕ´Ï´Ù).
+ 1 ¸ðµç °ªµé°ú ÇÏÀ§Å°¸¦ ¿­¶÷ÇÕ´Ï´Ù.
+ 2 ÇÏÀ§Å°¸¸ ¿­¶÷ÇÕ´Ï´Ù (°ªÀº ¿­¶÷ÇÏÁö ¾Ê½À´Ï´Ù).

+ +
Recurse?
+
0 (±âº»°ª) ÇÏÀ§Å°¿¡ Àç±ÍÇÏÁö ¾Ê½À´Ï´Ù.
+1 ÇÏÀ§Å°¿¡ Àç±ÍÇØ µé¾î°©´Ï´Ù. ±×·¡¼­ ±× ¾È¿¡ Æ÷ÇÔµÈ ¸ðµç °ª°ú Å°¸¦ ¿­¶÷ÇÕ´Ï´Ù.
+ +
+ +

³íÆò

+

+·¹Áö½ºÆ®¸®-ȸµ¹ÀÌ´Â ·¹Áö½ºÆ®¸® °ª ¶Ç´Â ÇÏÀ§Å°ÀÇ Áý´ÜÀ» ÇÑ ¹ø¿¡ Çϳª¾¿ ó¸®ÇÏ°í ½ÍÀ» ¶§ À¯¿ëÇÕ´Ï´Ù. °ª°ú ÇÏÀ§Å°´Â ¿ª¼øÀ¸·Î (¾Æ·¡¿¡¼­ À§·Î) ¿­¶÷µÇ¹Ç·Î ȸµ¹À̸¦ ¹æÇØÇÏÁö ¾Ê°í ȸµ¹ÀÌ ¾È¿¡ RegDelete¸¦ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù.

+

´ÙÀ½ º¯¼öµéÀÌ ·¹Áö½ºÆ®¸®-ȸµ¹ÀÌ ¾È¿¡ Á¸ÀçÇÕ´Ï´Ù. ³»ºÎ ·¹Áö½ºÆ®¸®-ȸµ¹ÀÌ°¡ ¿ÜºÎ ·¹Áö½ºÆ®¸®-ȸµ¹ÀÌ ¾È¿¡ ½Î¿© ÀÖ´Ù¸é, ³»ºÎ ȸµ¹ÀÌÀÇ ·¹Áö½ºÆ®¸® Ç׸ñÀÌ ¿ì¼± ¼øÀ§¸¦ °®½À´Ï´Ù:

+ + + + + + + + + + + + + + + + + + + + + +
A_LoopRegNameÇöÀç ¿­¶÷µÈ Ç׸ñÀÇ À̸§. °ª À̸§ ¶Ç´Â ÇÏÀ§Å°ÀÇ À̸§ Áß ÇϳªÀÔ´Ï´Ù. + °ª À̸§¿¡ °ªÀÌ ÇÒ´çµÇ¾î ÀÖÀ¸¸é Windows RegEditÀÌ "(Default)"·Î º¸¿©ÁÖ´Â °ª À̸§ÀÌ ¿­¶÷µË´Ï´Ù. ±×·¯³ª A_LoopRegName´Â °ª À̸§¿¡ ´ëÇÏ¿© ºñ¿öÁý´Ï´Ù.
A_LoopRegTypeÇöÀç ¿­¶÷µÈ Ç׸ñÀÇ À¯Çü, ´ÙÀ½ ´Ü¾î Áß ÇϳªÀÔ´Ï´Ù: KEY (Áï, ÇöÀç ¿­¶÷µÈ Ç׸ñÀº °ªÀÌ ¾Æ´Ï¶ó ÇÏÀ§Å°ÀÔ´Ï´Ù), REG_SZ, REG_EXPAND_SZ, REG_MULTI_SZ, REG_DWORD, REG_QWORD, REG_BINARY, REG_LINK, REG_RESOURCE_LIST, REG_FULL_RESOURCE_DESCRIPTOR, REG_RESOURCE_REQUIREMENTS_LIST, REG_DWORD_BIG_ENDIAN (¾Æ¸¶µµ ´ëºÎºÐÀÇ À©µµ¿ìÁî Çϵå¿þ¾î¿¡¼­´Â º¸±â Èûµé °ÍÀÔ´Ï´Ù). ÇöÀç ¿­¶÷µÈ Ç׸ñÀÌ ¹ÌÁöÀÇ À¯ÇüÀÌ¸é ºñ¾î ÀÖ½À´Ï´Ù.
A_LoopRegKeyÁ¢±Ù ÁßÀÎ ·çÆ® Å°ÀÇ À̸§ (HKEY_LOCAL_MACHINE, HKEY_USERS, HKEY_CURRENT_USER, HKEY_CLASSES_ROOT, ¶Ç´Â HKEY_CURRENT_CONFIG). ¿ø°Ý ·¹Áö½ºÆ®¸® Á¢±ÙÀ» À§ÇÏ¿©, ÀÌ °ªÀº ÄÄÇ»ÅÍ À̸§À» Æ÷ÇÔÇÏÁö ¾Ê½À´Ï´Ù.
A_LoopRegSubKeyÇöÀç SubKeyÀÇ À̸§. ÀÌ Å°´Â Key ¸Å°³º¯¼ö¿Í °°½À´Ï´Ù. ´Ü, Recurse ¸Å°³º¯¼ö°¡ Àç±ÍÀûÀ¸·Î ´Ù¸¥ ÇÏÀ§Å°µéÀ» ŽÇèÇÏ´Â µ¥ »ç¿ëÁßÀÌ¸é ¿¹¿ÜÀÔ´Ï´Ù. ±×·± °æ¿ì¶ó¸é, ÇöÀç ¿­¶÷µÈ Ç׸ñÀÇ Àüü °æ·ÎÀÔ´Ï´Ù. ·çÆ® Å°¸¦ Æ÷ÇÔÇÏÁö ¾Ê½À´Ï´Ù. ¿¹¸¦ µé¾î: Software\SomeApplication\My SubKey
A_LoopRegTimeModifiedÇöÀç ÇÏÀ§Å° ¶Ç´Â ±×ÀÇ °ªÀÌ ¸¶Áö¸·À¸·Î º¯°æµÈ ½Ã°£. Çü½ÄÀº YYYYMMDDHH24MISSÀÔ´Ï´Ù. ÀÌ º¯¼ö´Â ÇöÀç ¿­¶÷µÈ Ç׸ñÀÌ ÇÏÀ§Å°°¡ ¾Æ´Ï¸é ºñ¾î ÀÖ½À´Ï´Ù (Áï, A_LoopRegType´Â ´Ü¾î KEY°¡ ¾Æ´Õ´Ï´Ù).
+

+·¹Áö½ºÆ®¸®-ȸµ¹ÀÌ ¾È¿¡¼­ »ç¿ëµÉ ¶§, ´ÙÀ½ ¸í·É¾îµéÀ» »ç¿ëÇϸé ÇöÀç ¿­¶÷µÈ Ç׸ñÀ» ó¸®ÇØ¾ß ÇÒÁö ¸»Áö °£´ÜÇÏ°Ô ¾Ë·ÁÁÙ ¼ö ÀÖ½À´Ï´Ù:

+ + + + + + + + + + + + + +
RegRead, OutputVarÇöÀç Ç׸ñÀ» ÀнÀ´Ï´Ù. ÇöÀç Ç׸ñÀÌ Å°À̸é, ErrorLevel¿¡ 1ÀÌ ¼³Á¤µÇ°í OutputVar´Â ºñ¿öÁý´Ï´Ù.
RegWrite [, Value]ÇöÀç Ç׸ñÀ» ¾¹´Ï´Ù. Value¸¦ »ý·«Çϸé, Ç׸ñÀº ±×ÀÇ À¯Çü¿¡ µû¶ó 0ÀÌ µÇ°Å³ª ºñ¿öÁý´Ï´Ù. ÇöÀç Ç׸ñÀÌ Å°À̸é, ErrorLevelÀº 1ÀÌ ¼³Á¤µÇ°í ´Ù¸¥ È¿°ú´Â ÀüÇô ¾ø½À´Ï´Ù.
RegDeleteÇöÀç Ç׸ñÀ» »èÁ¦ÇÕ´Ï´Ù. ÇöÀç Ç׸ñÀÌ Å°À̸é, ±×ÀÇ ¼­ºêÅ° ±×¸®°í ±× ¾È¿¡ Æ÷ÇÔµÈ °ª±îÁö ÇÔ²² »èÁ¦µË´Ï´Ù.
+

+(À§¿¡ ±â¼úµÈ RootKey ¸Å°³º¯¼ö¸¦ ÅëÇÏ¿©) ¿ø°Ý ·¹Áö½ºÆ®¸®¿¡ Á¢±ÙÇÒ ¶§, ´ÙÀ½ »çÇ×ÀÌ Àû¿ëµË´Ï´Ù:

+ +

+Blocks, Break, Continue, ±×¸®°í A_Index º¯¼ö (¸ðµç ȸµ¹ÀÌ¿¡ Á¸Àç)¿¡ °üÇÑ ´õ ÀÚ¼¼ÇÑ Á¤º¸´Â Loop¸¦ ÂüÁ¶ÇϽʽÿÀ.

+ +

°ü·Ã Ç׸ñ

+

+Loop, Break, Continue, ºí·Ï, RegRead, RegWrite, RegDelete, SetRegView

+ +

¿¹Á¦

+
; ¿¹Á¦: »ç¿ëÀÚ°¡ ŸÀÚÇÑ ÀÎÅÍ³Ý ÀͽºÇ÷η¯ÀÇ URL ÀÌ·ÂÀ» »èÁ¦ÇÕ´Ï´Ù:
+Loop, HKEY_CURRENT_USER, Software\Microsoft\Internet Explorer\TypedURLs
+    RegDelete
+

 

+
; ¿¹Á¦: ÀÛµ¿ÇÏ´Â Å×½ºÆ® ½ºÅ©¸³Æ®:
+Loop, Reg, HKEY_CURRENT_USER\Software\Microsoft\Windows, KVR
+{
+    if a_LoopRegType = key
+        value =
+    else
+    {
+        RegRead, value
+        if ErrorLevel
+            value = *error*
+    }
+    MsgBox, 4, , %a_LoopRegName% = %value% (%a_LoopRegType%)`n`nContinue?
+    IfMsgBox, NO, break
+}
+

 

+
; ¿¹Á¦: Àüü ·¹Áö½ºÆ®¸®¿¡¼­ ƯÁ¤ °ªÀ»
+; Àç±ÍÀûÀ¸·Î ¿­¶÷ÇÏ´Â ¿¹Á¦.
+SetBatchLines -1  ; ÃÖ´ë ¼Óµµ·Î °Ë»öÇÕ´Ï´Ù.
+RegSearchTarget = Notepad  ; ¼­ºê·çƾ¿¡ ¹«¾ùÀ» °Ë»öÇÏ°í ½ÍÀºÁö ¾Ë¸³´Ï´Ù.
+Gosub, RegSearch
+return
+
+RegSearch:
+ContinueRegSearch = y
+Loop, Reg, HKEY_LOCAL_MACHINE, KVR
+{
+    Gosub, CheckThisRegItem
+    if ContinueRegSearch = n ; ¸ØÃß¾î¾ß ÇÕ´Ï´Ù.
+        return
+}
+Loop, Reg, HKEY_USERS, KVR
+{
+    Gosub, CheckThisRegItem
+    if ContinueRegSearch = n ; ¸ØÃß¾î¾ß ÇÕ´Ï´Ù.
+        return
+}
+Loop, Reg, HKEY_CURRENT_CONFIG, KVR
+{
+    Gosub, CheckThisRegItem
+    if ContinueRegSearch = n ; ¸ØÃß¾î¾ß ÇÕ´Ï´Ù.
+        return
+}
+; ÁÖÀÇ: HKEY_USERS¸¦ °Ë»ö ÁßÀ̶ó¸é 
+; HKEY_CURRENT_USER´Â °Ë»öÇÒ ÇÊ¿ä°¡ ¾ø´Ù°í ÇÊÀÚ´Â ¹Ï½À´Ï´Ù.
+; ¸¶Âù°¡Áö·Î HKEY_LOCAL_MACHINE¸¦ °Ë»ö ÁßÀ̶ó¸é.
+; HKEY_CLASSES_ROOTµµ °Ë»öÇÒ ÇÊ¿ä°¡ ¾øÀ» °ÍÀÔ´Ï´Ù.
+
+return
+
+CheckThisRegItem:
+if A_LoopRegType = KEY  ; Å° À̸§µµ Á¡°ËÇÏ°í ½Í´Ù¸é ´ÙÀ½ µÎ ÁÙÀ» Á¦°ÅÇϽʽÿÀ.
+    return
+RegRead, RegValue
+if ErrorLevel
+    return
+IfInString, RegValue, %RegSearchTarget%
+{
+    MsgBox, 4, , The following match was found:`n%A_LoopRegKey%\%A_LoopRegSubKey%\%A_LoopRegName%`nValue = %RegValue%`n`nContinue?
+    IfMsgBox, No
+        ContinueRegSearch = n  ; È£ÃâÀÚ¿¡°Ô °Ë»öÀ» ¸ØÃ߶ó°í ¾Ë¸³´Ï´Ù.
+}
+return
+ + + diff --git a/src/docs/commands/Menu.htm b/src/docs/commands/Menu.htm new file mode 100644 index 0000000..f695abf --- /dev/null +++ b/src/docs/commands/Menu.htm @@ -0,0 +1,285 @@ + + + + +Menu + + + + + + + +

Menu

+ +

+¸Þ´º¿Í ¸Þ´º Ç׸ñÀ» ¸¸µé°í, Á¦°ÅÇÏ°í, º¯°æÇÏ°í ±×¸®°í º¸¿©ÁÝ´Ï´Ù. Æ®·¹ÀÌ ¾ÆÀÌÄÜ°ú ÅøÆÁÀ» º¯°æÇÕ´Ï´Ù. ÄÄÆÄÀÏµÈ ½ºÅ©¸³Æ®ÀÇ ¸ÞÀΠâÀÌ ¿­¸±Áö ¸»Áö Á¦¾îÇÕ´Ï´Ù.

+ +
Menu, MenuName, Cmd [, P3, P4, P5]
+

¸Å°³º¯¼ö

+
+ +
MenuName
+

TRAY ¶Ç´Â ¸ÂÃã ¸Þ´ºÀÇ À̸§ÀÌ µÉ ¼ö ÀÖ½À´Ï´Ù. ¸ÂÃã ¸Þ´º´Â ±×ÀÇ À̸§ÀÌ Add ¸í·É¾î¿¡ óÀ½ »ç¿ëµÉ ¶§ ÀÚµ¿À¸·Î »ý¼ºµË´Ï´Ù. ¿¹¸¦ µé¾î: Menu, MyMenu, Add, Item1.

+

ÀÏ´Ü »ý¼ºµÇ¸é, ¸ÂÃã ¸Þ´º´Â Show ¸í·É¾î·Î º¸¿©ÁÙ ¼ö ÀÖ½À´Ï´Ù. Add ¸í·É¾î¸¦ ÅëÇÏ¿© ¿©·¯ ¸Þ´º¿¡ ºÎ¸Þ´º·Î ºÎÂøÇÒ ¼öµµ ÀÖ½À´Ï´Ù.

+ +
Cmd, P3, P4, P5
+

ÀÌ ³× °³ÀÇ ¸Å°³º¯¼ö´Â ¼­·Î ÀÇÁ¸ÀûÀÔ´Ï´Ù. Çã¿ëµÇ´Â Á¶ÇÕÀº ¾Æ·¡ÀÇ ¸®½ºÆ®¸¦ ÂüÁ¶ÇϽʽÿÀ.

+ +
+ +

¸Þ´º¿¡ Ç׸ñÀ» Ãß°¡Çϰųª º¯°æÇϱâ

+

+Add [, MenuItemName, Label-or-Submenu, Pn]: ÀÌ°ÍÀº ´ÙÁß ¸ñÀûÀÇ ¸í·É¾î·Î¼­ ¸Þ´º Ç׸ñÀ» Ãß°¡Çϰųª, ºÎ¸Þ´º¸¦ »õ·Î¿î ºÎ¸Þ´º ¶Ç´Â ¶óº§·Î °»½ÅÇϰųª ¶Ç´Â ÇÑ Ç׸ñÀ» Á¤»ó Ç׸ñ¿¡¼­ ºÎ¸Þ´º·Î (¶Ç´Â ±× ¹Ý´ë·Î) º¯È¯ÇÕ´Ï´Ù. MenuItemNameÀÌ ¾ÆÁ÷ Á¸ÀçÇÏÁö ¾ÊÀ¸¸é, ¸Þ´º¿¡ Ãß°¡µË´Ï´Ù. ±×·¸Áö ¾ÊÀ¸¸é, MenuItemNameÀº »õ·Î ÁöÁ¤µÈ ¶óº§ ¶Ç´Â ºÎ¸Þ´º(Label-or-Submenu)·Î °»½ÅµË´Ï´Ù.

+

+¸Þ´º °¡¸§ÁÙÀ» Ãß°¡ÇÏ·Á¸é, ¼¼ °³ÀÇ ¸Å°³º¯¼ö¸¦ ¸ðµÎ »ý·«ÇϽʽÿÀ.

+

+¶óº§ ¼­ºê·çƾÀº »ç¿ëÀÚ°¡ ¸Þ´º Ç׸ñÀ» ¼±ÅÃÇÒ ¶§ »õ ¾²·¹µå·Î ½ÇÇàµË´Ï´Ù (Gosub ±×¸®°í ÇÖÅ° ¼­ºê·çƾ°ú ºñ½ÁÇÕ´Ï´Ù). Label-or-Submenu¸¦ »ý·«Çϸé, MenuItemNameÀÌ ¶óº§°ú ¸Þ´º Ç׸ñÀÇ À̸§À¸·Î »ç¿ëµË´Ï´Ù.

+

[v1.1.20+]: ±âÁ¸ÀÇ ¶óº§ À̸§ÀÌ ¾Æ´Ï¸é, Label-or-Submenu´Â ÇÔ¼öÀÇ À̸§À̰ųª, ¾Æ´Ï¸é ÇÔ¼ö °´Ã¼¸¦ ´ã°í ÀÖ´Â ´ÜÀÏ º¯¼ö ÂüÁ¶ÀÏ ¼ö ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î, %funcobj% ¶Ç´Â % funcobj. °´Ã¼¸¦ µ¹·ÁÁÖ´Â ´Ù¸¥ Ç¥Çö½ÄÀº ÇöÀç Áö¿øÇÏÁö ¾Ê½À´Ï´Ù. ÇÔ¼ö´Â ¾Æ·¡¿¡ º¸¿©ÁÖ´Â ¹Ù¿Í °°ÀÌ ¼±ÅÃÀûÀ¸·Î ¸Å°³º¯¼ö¸¦ Á¤ÀÇÇÒ ¼ö ÀÖ½À´Ï´Ù:

+ +
FunctionName(ItemName, ItemPos, MenuName)
+

+MenuItemName¸¦ ºÎ¸Þ´º°¡ µÇ°Ô ¸¸µé·Á¸é -- ¼±ÅÃµÇ¸é »õ ¸Þ´º¸¦ ¿©´Â ¸Þ´º Ç׸ñÀ» ¸¸µé·Á¸é -- Label-or-Submenu¿¡ ½ÖÁ¡ ±×¸®°í ±âÁ¸ ¸ÂÃã ¸Þ´ºÀÇ MenuNameÀ» ÁöÁ¤ÇϽʽÿÀ. ¿¹¸¦ µé¾î:

+ +
Menu, MySubmenu, add, Item1
+Menu, tray, add, ÀÌ ¸Þ´º Ç׸ñÀº ºÎ¸Þ´ºÀÔ´Ï´Ù, :MySubmenu
+

+¸¶Áö¸· ¸Å°³º¯¼ö¿¡´Â ±âÈ£ P ±×¸®°í ´ÙÀ½¿¡ ¸Þ´ºÀÇ ¾²·¹µå ¿ì¼±¼øÀ§°¡ ´ã±æ ¼ö ÀÖ½À´Ï´Ù. ¿¹, P1. ¸Þ´º Ç׸ñÀ» Ãß°¡ÇÒ ¶§ ÀÌ ¸Å°³º¯¼ö¸¦ »ý·«Çϸé, ¿ì¼±¼øÀ§´Â 0ÀÌ µÉ ÅÙµ¥, ÀÌ°ÍÀÌ ±âº»°ªÀÔ´Ï´Ù. ¸Þ´º Ç׸ñÀ» °»½ÅÇÒ ¶§ »ý·«Çϸé, Ç׸ñÀÇ ¿ì¼±¼øÀ§´Â ¹Ù²îÁö ¾Ê½À´Ï´Ù. ±âÁ¸ Ç׸ñÀÇ ¿ì¼± ¼øÀ§¸¸ ¹Ù²Ù·Á¸é, Label-or-Submenu ¸Å°³º¯¼ö¸¦ »ý·«ÇϽʽÿÀ. ¿ì¼± ¼øÀ§¿¡ ½ÊÁø¼ö¸¦ »ç¿ëÇϽʽÿÀ (½ÊÀ°Áø¼ö´Â ºÒ°¡).

+

+Delete [, MenuItemName]: ¸Þ´º·ÎºÎÅÍ MenuItemNameÀ» »èÁ¦ÇÕ´Ï´Ù. Exit (¾Æ·¡ ÂüÁ¶)¿Í °°Àº Ç¥ÁØ ¸Þ´º Ç׸ñÀº °³º°ÀûÀ¸·Î »èÁ¦ÇÒ ¼ö ¾ø½À´Ï´Ù. ±âº» ¸Þ´º Ç׸ñÀÌ »èÁ¦µÇ¸é, ±× È¿°ú´Â NoDefault ¿É¼ÇÀ» »ç¿ëÇÑ °Í°ú ºñ½ÁÇÕ´Ï´Ù. MenuItemNameÀ» »ý·«Çϸé, Àüü MenuName ¸Þ´º°¡ »èÁ¦µË´Ï´Ù. MenuNameÀ» ºÎ¸Þ´º·Î »ç¿ëÇÏ°í ÀÖ´Â ´Ù¸¥ ¸Þ´º¿¡ ÀÖ´Â ¸Þ´º Ç׸ñµµ ¸¶Âù°¡Áö·Î »èÁ¦µË´Ï´Ù.

+

+DeleteAll: ¸Þ´º·ÎºÎÅÍ ¸ðµç ¸ÂÃã ¸Þ´º Ç׸ñÀ» Á¦°ÅÇÏ°í, ¸Þ´º¸¦ ºó ä·Î µÓ´Ï´Ù. ´Ü, Ç¥ÁØ Ç׸ñµéÀÌ ´ã°Ü ÀÖ´Â °æ¿ì´Â ¿¹¿ÜÀÔ´Ï´Ù (¾Æ·¡ ÂüÁ¶). Delete ¸í·É¾î·Î ¿ÏÀüÈ÷ »èÁ¦µÇ´Â ¸Þ´º¿Í ´Ù¸£°Ô (À§ ÂüÁ¶), ºó ¸Þ´º´Â ¿©ÀüÈ÷ Á¸ÀçÇÕ´Ï´Ù. ±×·¡¼­ ±× ¸Þ´º¸¦ ºÎ¸Þ´º·Î »ç¿ëÇÏ´Â ´Ù¸¥ ¸Þ´ºµµ ¿©ÀüÈ÷ ±× ºÎ¸Þ´º¸¦ À¯ÁöÇÕ´Ï´Ù.

+

+Rename, MenuItemName [, NewName]: MenuItemNameÀ» NewNameÀ¸·Î º¯°æÇÕ´Ï´Ù (NewNameÀÌ ºñ¾î ÀÖ´Ù¸é, MenuItemName´Â °¡¸§ÁÙ·Î º¯È¯µË´Ï´Ù). NewName´Â ±âÁ¸ÀÇ ¸ÂÃã ¸Þ´º Ç׸ñ°ú °°À¸¸é ¾ÈµË´Ï´Ù. ±× ¸Þ´º Ç׸ñÀÇ ÇöÀç ¸ñÇ¥ ¶óº§À̳ª ºÎ¸Þ´º´Â ¹Ù²îÁö ¾Ê½À´Ï´Ù.

+

+Check, MenuItemName: º¸À̴ üũǥ½ÄÀ» (¾ÆÁ÷ ¾ø´Ù¸é) MenuItemName¿·ÀÇ ¸Þ´º¿¡ Ãß°¡ÇÕ´Ï´Ù.

+

+Uncheck, MenuItemName: MenuItemNameÀ¸·ÎºÎÅÍ Ã¼Å©Ç¥½ÄÀ» (ÀÖ´Ù¸é) Á¦°ÅÇÕ´Ï´Ù.

+

+ToggleCheck, MenuItemName: üũǥ½ÄÀ» ¾ø´Ù¸é Ãß°¡ÇÕ´Ï´Ù; ±×·¸Áö ¾ÊÀ¸¸é, Á¦°ÅÇÕ´Ï´Ù.

+

+Enable, MenuItemName: ÀÌÀü¿¡ ²¨Á® ÀÖ¾ú´Ù¸é (ȸ»öó¸®) MenuItemNameÀ» »ç¿ëÀÚ°¡ ´Ù½Ã ÇÑ ¹ø ¼±ÅÃÇϵµ·Ï Çã¿ëÇÕ´Ï´Ù.

+

+Disable, MenuItemName: MenuItemName¸¦ ȸ»öÀ¸·Î ¹Ù²Ù¾î¼­ »ç¿ëÀÚ°¡ ¼±ÅÃÇÒ ¼ö ¾ø´Ù´Â °ÍÀ» ³ªÅ¸³À´Ï´Ù.

+

+ToggleEnable, MenuItemName: ÀÌÀü¿¡ ÄÑÁ® ÀÖ¾ú´Ù¸é MenuItemName¸¦ ²ü´Ï´Ù; ±×·¸Áö ¾ÊÀ¸¸é ÄÕ´Ï´Ù.

+

+Default [, MenuItemName]: ¸Þ´ºÀÇ ±âº» Ç׸ñÀ» MenuItemNameÀ¸·Î ¹Ù²Ù°í ±× Ç׸ñÀÇ ±Û²ÃÀ» º¼µåü·Î ¸¸µì´Ï´Ù (TRAY ¸»°í ¸Þ´º¿¡ ±âº» Ç׸ñÀ» ¼³Á¤ÇÏ´Â °ÍÀº ¼øÀüÈ÷ Àå½ÄÀûÀÎ È¿°úÀÔ´Ï´Ù). »ç¿ëÀÚ°¡ Æ®·¹ÀÌ ¾ÆÀÌÄÜÀ» Ŭ¸¯ÇÒ ¶§, ±×ÀÇ ±âº» ¸Þ´º Ç׸ñÀÌ ±âµ¿µË´Ï´Ù. ±âº» Ç׸ñÀÌ ¾ø´Ù¸é, ´õºíŬ¸¯Çصµ ¾Æ¹« È¿°ú°¡ ¾ø½À´Ï´Ù. MenuItemName¸¦ »ý·«Çϸé, ±× È¿°ú´Â ¾Æ·¡ÀÇNoDefault¸¦ »ç¿ëÇÑ °Í°ú µ¿ÀÏÇÕ´Ï´Ù.

+

+NoDefault: Æ®·¹ÀÌ ¸Þ´º¿¡ ´ëÇÏ¿©: ¸Þ´º°¡ ´Ù½Ã Ç¥ÁØÀÇ ±âº» ¸Þ´º Ç׸ñÀ» °¡Áöµµ·Ï ¹Ù²ß´Ï´Ù. ºñ-ÄÄÆÄÀÏ ½ºÅ©¸³Æ®¿¡ ±âº» ¸Þ´º Ç׸ñÀº OPENÀÌ°í ÄÄÆÄÀÏµÈ ½ºÅ©¸³Æ®¿¡ ´ëÇؼ­´Â ¾ø½À´Ï´Ù (´Ü, MainWindow ¿É¼ÇÀÌ ÄÑÁ® ÀÖÀ» °æ¿ì´Â Á¦¿ÜÇÕ´Ï´Ù). ÀÌÀü¿¡ NoStandard ¸í·É¾î¸¦ »ç¿ëÇ߱⠶§¹®¿¡ (¾Æ·¡ ÂüÁ¶) OPEN ¸Þ´º Ç׸ñÀÌ Á¸ÀçÇÏÁö ¾ÊÀ¸¸é, ±âº» Ç׸ñÀÌ ¾øÀ¸¹Ç·Î Æ®·¹ÀÌ ¾ÆÀÌÄÜÀ» ´õºí Ŭ¸¯Çصµ ¾Æ¹« È¿°ú°¡ ¾ø½À´Ï´Ù. TRAY ¸»°í ´Ù¸¥ ¸Þ´º¿¡ ´ëÇÏ¿©: ±âÁ¸ÀÇ ±âº» Ç׸ñ¿¡´Â º¼µåü°¡-¾Æ´Ñ ±Û²ÃÀ» µ¹·ÁÁÝ´Ï´Ù.

+

+Standard: Ç¥ÁØ ¸Þ´º Ç׸ñÀ» (¾ÆÁ÷ Á¸ÀçÇÏÁö ¾ÊÀ¸¸é) ¸Þ´º ¾Æ·¡¿¡ »ðÀÔÇÕ´Ï´Ù. ÀÌ ¸í·É¾î´Â Æ®·¹ÀÌ ¸Þ´º³ª ±âŸ ¸Þ´º¿¡ »ç¿ëµÉ ¼ö ÀÖ½À´Ï´Ù.

+

+NoStandard: ¸ðµç Ç¥ÁØ (¸ÂÃã-¾Æ´Ñ) ¸Þ´º Ç׸ñÀ» (Á¸ÀçÇÑ´Ù¸é) Æ®·¹ÀÌ ¸Þ´º·ÎºÎÅÍ Á¦°ÅÇÕ´Ï´Ù.

+ + +

+Icon, MenuItemName, FileName [, IconNumber, IconWidth]: MenuItemNameÀÇ ¾ÆÀÌÄÜÀ» ¼³Á¤ÇÕ´Ï´Ù. FileNameÀº ¾ÆÀÌÄÜ ÆÄÀÏÀ̰ųª AutoHotkey°¡ Áö¿øÇÏ´Â Çü½ÄÀÌ À̹ÌÁöÀÏ ¼ö ÀÖ½À´Ï´Ù. ÆÄÀÏ¿¡¼­ ù ¹ø° ¾ÆÀÌÄÜ ¸»°í ¾ÆÀÌÄÜ ±×·ìÀ» »ç¿ëÇÏ·Á¸é, ±× ¹øÈ£¸¦ IconNumber¿¡ ÁöÁ¤ÇϽʽÿÀ (»ý·«Çϸé, ±âº» °ªÀº 1ÀÔ´Ï´Ù). IconNumber°¡ À½¼öÀ̸é, ±×ÀÇ Àý´ë °ªÀÌ ½ÇÇà ÆÄÀÏ ¾È¿¡ Á¸ÀçÇÏ´Â ¾ÆÀÌÄÜÀÇ ÀÚ¿ø IDÀÏ °Å¶ó°í °£ÁÖÇÕ´Ï´Ù. ¾ÆÀÌÄÜÀÇ ³Êºñ´Â IconWidth¿¡ ÁöÁ¤ÇϽʽÿÀ. IconNumberÀÌ ³ªÅ¸³»´Â ¾ÆÀÌÄÜ ±×·ì ¾È¿¡ ¿©·¯ ¾ÆÀÌÄÜ Å©±â°¡ ÀÖ´Ù¸é, °¡Àå ±ÙÁ¢ÇÏ°Ô ºÎÇÕÇÏ´Â ¾ÆÀÌÄÜÀÌ »ç¿ëµÇ°í ±× ¾ÆÀÌÄÜÀÌ ÁöÁ¤µÈ Å©±â¿¡ ¸Â°Ô Á¶ÀýµË´Ï´Ù. »ç¿ë¹ýÀº ¿¹Á¦ ¼½¼ÇÀ» ÂüÁ¶ÇϽʽÿÀ.

+

+ÇöÀç Windows Vista ÀÌÈÄ¿¡¼­ ¾ÆÀÌÄÜ¿¡ Åõ¸í¼ºÀ» À¯ÁöÇϵµ·Ï ¼³Á¤ÇÏ·Á¸é "½ÇÁ¦ Å©±â"¸¦ ÁöÁ¤ÇÏ´Â °ÍÀÌ ÇÊ¿äÇÕ´Ï´Ù. ¿¹¸¦ µé¾î:

+ +
Menu, MenuName, Icon, MenuItemName, Filename.png,, 0
+

+¾Ë·ÁÁø ÇÑ°è: Gui ¸Þ´º ¹ÙÀÇ ¾ÆÀÌÄܵéÀº Windows XP ÀÌÀü¿¡¼­ ¿Ã¹Ù¸£°Ô ¹èÄ¡µÇÁö ¾Ê½À´Ï´Ù.

+

+NoIcon, MenuItemName: MenuItemNameÀÇ ¾ÆÀÌÄÜÀ», ÀÖ´Ù¸é Á¦°ÅÇÕ´Ï´Ù. + +

Æ®·¹ÀÌ ¾ÆÀÌÄÜ ¶Ç´Â ÅøÆÁ º¯°æÇϱâ (MenuNameÀÌ ¹Ýµå½ÃTRAYÀ̾î¾ß ÇÔ)

+

+Icon [, FileName, IconNumber, 1]: ½ºÅ©¸³Æ®ÀÇ ¾ÆÀÌÄÜÀ» FileNameÀÇ ¾ÆÀÌÄÜ Áß Çϳª·Î ¹Ù²ß´Ï´Ù. ´ÙÀ½ À¯ÇüÀÇ ÆÄÀÏÀ» Áö¿øÇÕ´Ï´Ù: ICO, CUR, ANI, EXE, DLL, CPL, SCR, ±×¸®°í ¾ÆÀÌÄÜ ÀÚ¿øÀ» º¸À¯ÇÑ ±âŸ À¯Çüµé. ÆÄÀÏÀÇ Ã¹ ¹ø° ¾ÆÀÌÄÜ ¸»°í ¾ÆÀÌÄÜ ±×·ìÀ» »ç¿ëÇÏ·Á¸é, ±×ÀÇ ¹øÈ£¸¦ IconNumber¿¡ ÁöÁ¤ÇϽʽÿÀ (»ý·«Çϸé, ±âº»°ªÀº 1ÀÔ´Ï´Ù). ¿¹¸¦ µé¾î, 2ÀÌ¸é ±âº» ¾ÆÀÌÄÜÀ» µÎ ¹ø° ¾ÆÀÌÄÜ ±×·ìÀ¸·ÎºÎÅÍ ÀûÀçÇÒ °ÍÀÔ´Ï´Ù. IconNumber°¡ À½¼öÀ̸é, ±×ÀÇ Àý´ë °ªÀÌ ½ÇÇà ÆÄÀÏ ¾È¿¡ ÀÖ´Â ¾ÆÀÌÄÜÀÇ ÀÚ¿ø IDÀÏ °Å¶ó°í °£ÁÖÇÕ´Ï´Ù. º°Ç¥ (*)¸¦ FileName¿¡ ÁöÁ¤ÇÏ¸é ½ºÅ©¸³Æ®¸¦ ±âº» ¾ÆÀÌÄÜÀ¸·Î º¹±¸ÇÒ ¼ö ÀÖ½À´Ï´Ù.

+

+¸¶Áö¸· ¸Å°³º¯¼ö: 1À» ÁöÁ¤ÇÏ¸é ¾ÆÀÌÄÜÀ» µ¿°áÇÕ´Ï´Ù. ¶Ç´Â 0ÀÌ¸é ±× ¾ÆÀÌÄÜÀ» Çص¿ÇÕ´Ï´Ù (¶Ç´Â ºñ¿ö µÎ¸é µ¿°á/Çص¿ »óŸ¦ ¹Ù²ÙÁö ¾Ê°í ±×´ë·Î À¯ÁöÇÒ ¼ö ÀÖ½À´Ï´Ù). ¾ÆÀÌÄÜÀÌ µ¿°áµÉ ¶§, Pause¿Í Suspend´Â ±×°ÍÀ» ¹Ù²ÙÁö ¾Ê½À´Ï´Ù. ÁÖÀÇ: ÇöÀç ¾ÆÀÌÄÜÀ» µ¿°áÇϰųª Çص¿ÇÏ·Á¸é, 1 ¶Ç´Â 0À» ´ÙÀ½ ¿¹Á¦¿Í °°ÀÌ »ç¿ëÇϽʽÿÀ: Menu, Tray, Icon,,, 1.

+

+Æ®·¹ÀÌ ¾ÆÀÌÄÜÀ» º¯°æÇϸé InputBox, Progress, ±×¸®°í À̾-»ý¼ºµÇ´Â GUI âÀÌ º¸¿©ÁÖ´Â ¾ÆÀÌÄܵµ º¯°æµË´Ï´Ù. ÄÄÆÄÀÏµÈ ½ºÅ©¸³Æ®µµ ¿µÇâÀ» ¹Þ½À´Ï´Ù. ÄÄÆÄÀÏÇÒ ¶§ ¸ÂÃã ¾ÆÀÌÄÜÀ» ÁöÁ¤Çß´õ¶óµµ ¸¶Âù°¡ÁöÀÔ´Ï´Ù. ÁÖÀÇ: ¾ÆÀÌÄÜÀ» º¯°æÇÏ´õ¶óµµ Æ®·¹ÀÌ ¾ÆÀÌÄÜÀº ¾ðÇÏÀ̵åµÇÁö ¾Ê½À´Ï´Ù. ÀÌÀü¿¡ #NoTrayIcon°ú °°Àº ¼ö´ÜÀ¸·Î ¼û°å´Ù¸é ¸»ÀÔ´Ï´Ù; ¾ðÇÏÀ̵å ÇÏ·Á¸é, (¸Å°³º¯¼ö ¾øÀÌ) Menu, Tray, Icon¸¦ »ç¿ëÇϽʽÿÀ.

+

+ .ICO ¸»°í ´Ù¸¥ À¯ÇüÀ¸·ÎºÎÅÍ Æ®·¹ÀÌ ¾ÆÀÌÄÜÀ» ÀûÀçÇÒ ¶§ ¾à°£ ¿Ö°îÀÌ ¹ß»ýÇÒ ¼ö ÀÖ½À´Ï´Ù. ƯÈ÷ 16x16 ¾ÆÀÌÄÜÀÌ ±×·¸½À´Ï´Ù. À̸¦ ÇÇÇÏ·Á¸é, ¿øÇÏ´Â Æ®·¹ÀÌ ¾ÆÀÌÄÜÀ» .ICO ÆÄÀÏ¿¡ ÀúÀåÇϽʽÿÀ.

+

+¾î¶² ¾ÆÀÌÄܵéÀº ¿î¿µ üÁ¦ÀÇ DLL°ú CPL¿¡ ³»ÀåµÇ¾î À־ À¯¿ëÇÕ´Ï´Ù. ¿¹¸¦ µé¾î: Menu, Tray, Icon, Shell32.dll, 174.

+

+³»Àå º¯¼ö A_IconNumber¿Í A_IconFile¿¡´Â ÇöÀç ¾ÆÀÌÄÜÀÇ ¹øÈ£¿Í (¿ÏÀüÇÑ °æ·Î) À̸§ÀÌ µé¾î ÀÖ½À´Ï´Ù (±âº» ¾ÆÀÌÄÜÀÌ¸é µÑ ´Ù ºñ¾î ÀÖ½À´Ï´Ù).

+

+Icon (¸Å°³º¯¼ö ¾øÀ½): ¾ÆÁ÷ Á¸ÀçÇÏÁö ¾ÊÀ¸¸é Æ®·¹ÀÌ ¾ÆÀÌÄÜÀ» »ý¼ºÇÕ´Ï´Ù. ÀÌ·¸°Ô Çϸé #NoTrayIconÀÌ ¿À¹ö¶óÀÌµå µË´Ï´Ù. ÀÌ Áö½Ã¾î°¡ ½ºÅ©¸³Æ®¿¡ Á¸ÀçÇصµ ¸¶Âù°¡ÁöÀÔ´Ï´Ù.

+

+NoIcon: Æ®·¹ÀÌ ¾ÆÀÌÄÜÀÌ Á¸ÀçÇϸé Á¦°ÅÇÕ´Ï´Ù. ÀÌ ¸í·É¾î¸¦ ½ºÅ©¸³Æ® ¸Ç ²À´ë±â¿¡ »ç¿ëÇϸé, ½ºÅ©¸³Æ®°¡ ±âµ¿ÇÒ ¶§ Æ®·¹ÀÌ ¾ÆÀÌÄÜÀÌ Àá±ñ º¸ÀÏ ¼ö ÀÖ½À´Ï´Ù. À̸¦ ÇÇÇÏ·Á¸é , ´ë½Å #NoTrayIconÀ» »ç¿ëÇϽʽÿÀ. Æ®·¹ÀÌ ¾ÆÀÌÄÜÀÌ ÇöÀç ¼û¾î ÀÖÀ¸¸é ³»Àå º¯¼ö A_IconHidden ¾È¿¡ 1ÀÌ ´ã±é´Ï´Ù. ±×·¸Áö ¾ÊÀ¸¸é 0ÀÌ ´ã±é´Ï´Ù.

+

+Tip [, Text]: Æ®·¹ÀÌ ¾ÆÀÌÄÜÀÇ ÅøÆÁÀ» º¯°æÇÕ´Ï´Ù -- ÅøÆÁÀº ¸¶¿ì½º°¡ À§¸¦ Áö³ª°¥ ¶§ º¸¿©Áý´Ï´Ù. ¿©·¯-ÁÙ ÅøÆÁÀ» »ý¼ºÇÏ·Á¸é, °¢ ÁÙ »çÀÌ¿¡ ¶óÀÎÇǵå (`n) ¹®ÀÚ¸¦ »ç¿ëÇϽʽÿÀ. ¿¹, Line1`nLine2. Text¿¡¼­ ¾ÕÂÊ 127 °³¸¸ º¸¿©ÁÝ´Ï´Ù. ±×¸®°í Text´Â (Á¸ÀçÇϸé) ù ¹ø° ÅÇ ¹®ÀÚ¿¡¼­ Àß·Á ³ª°©´Ï´Ù. Text¸¦ »ý·«Çϸé, ÅøÆÁÀº ±×ÀÇ ±âº» ÅؽºÆ®·Î º¹±¸µË´Ï´Ù. ³»Àå º¯¼ö A_IconTip¿¡´Â ÅøÆÁÀÇ ÇöÀç ÅؽºÆ®°¡ ´ã±é´Ï´Ù (ÅؽºÆ®°¡ ±âº» °ªÀÌ¸é ºñ¾î ÀÖ½À´Ï´Ù).

+ +

±âŸ ¸í·É¾î

+

Show [, X, Y]: MenuNameÀ» º¸¿©ÁֹǷÎ, »ç¿ëÀÚ´Â È­»ìÇ¥ Å°, ¸Þ´º ´ÜÃàÅ° (¹ØÁÙ ±âÈ£), ¶Ç´Â ¸¶¿ì½º·Î Ç׸ñÀ» ¼±ÅÃÇÒ ¼ö ÀÖ½À´Ï´Ù. ¾î¶² ¸Þ´ºµµ º¸¿©ÁÙ ¼ö ÀÖ½À´Ï´Ù. ¿©±â¿¡´Â Æ®·¹ÀÌ ¸Þ´ºµµ Æ÷ÇÔµÇÁö¸¸, GUI ¸Þ´º ¹Ù´Â ¿¹¿ÜÀÔ´Ï´Ù. X¿Í Y¸¦ ¸ðµÎ »ý·«Çϸé, ¸Þ´º´Â ¸¶¿ì½º Ä¿¼­ÀÇ ÇöÀç À§Ä¡¿¡ º¸¿©Áý´Ï´Ù. µÑ Áß¿¡ Çϳª¸¸ »ý·«Çϸé, »ý·«µÈ À§Ä¡¿¡ ¸¶¿ì½º Ä¿¼­ÀÇ À§Ä¡°¡ ´ë½Å »ç¿ëµË´Ï´Ù. X¿Í Y´Â È°¼º â¿¡ »ó´ëÀûÀÔ´Ï´Ù. Àüü È­¸é¿¡ »ó´ëÀûÀ¸·Î ¸¸µé·Á¸é ¹Ì¸® "CoordMode, Menu"¸¦ ÁöÁ¤ÇϽʽÿÀ.

+

+Color, ColorValue [, Single]: ¸Þ´ºÀÇ ¹è°æ»öÀ» ColorValue·Î ¹Ù²ß´Ï´Ù. ÀÌ »öÀº 16 °¡Áö ±âº» HTML »ö»ó À̸§ ¶Ç´Â 6-ÀÚ¸® RGB Ä÷¯ °ªÀÔ´Ï´Ù (Ä÷¯ Â÷Æ® ÂüÁ¶). +ColorValue¸¦ ºñ¿ö µÎ¸é (¶Ç´Â ´Ü¾î Default¸¦ ÁöÁ¤Çϸé) ¸Þ´º¸¦ ±×ÀÇ ±âº» Ä÷¯·Î º¹±¸ÇÒ ¼ö ÀÖ½À´Ï´Ù. ´Ü¾î SingleÀÌ ´ÙÀ½ ¸Å°³º¯¼ö¿¡ Á¸ÀçÇÏÁö ¾ÊÀ¸¸é, ÀÌ ¸Þ´º¿¡ ºÎÂøµÈ ºÎ¸Þ´ºµéµµ ¸ðµÎ »öÀÌ ¹Ù²ò´Ï´Ù.

+

+Click, ClickCount: 1À» ClickCount¿¡ ÁöÁ¤Çϸé ÇÑ ¹ø Ŭ¸¯À¸·Î Æ®·¹ÀÌ ¸Þ´ºÀÇ ±âº» ¸Þ´º Ç׸ñÀ» È°¼ºÈ­ ÇÒ ¼ö ÀÖ½À´Ï´Ù. 2¸¦ ClickCount¿¡ ÁöÁ¤Çϸé (´õºí-Ŭ¸¯ÇØ) ±âº» ÇàÀ§·Î µ¹¾Æ¿Ã ¼ö ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î: Menu, Tray, Click, 1.

+

+MainWindow: ÀÌ ¸í·É¾î´Â ÄÄÆÄÀÏµÈ ½ºÅ©¸³Æ®¿¡¸¸ ¿µÇâÀ» ÁÝ´Ï´Ù. ½ºÅ©¸³Æ®ÀÇ ¸ÞÀΠâÀ» Æ®·¹ÀÌ ¾ÆÀÌÄÜÀ» ÅëÇÏ¿© ¿­ ¼ö ÀÖ½À´Ï´Ù. ±×·¸Áö ¾ÊÀ¸¸é ºÒ°¡´ÉÇÕ´Ï´Ù. + +¶ÇÇÑ ¿¹¸¦ µé¾î "ÃÖ±Ù¿¡ ½ÇÇàµÈ ÁÙ"°ú °°ÀÌ, ¸ÞÀΠâÀÇ View ¸Þ´º¿¡ ÀÖ´Â Ç׸ñµéÀ» È°¼ºÈ­ ÇÕ´Ï´Ù. ÀÌ ¸Þ´º´Â ½ºÅ©¸³Æ®ÀÇ ¼Ò½º ÄÚµå¿Í ±âŸ Á¤º¸¸¦ º¸¿©ÁÝ´Ï´Ù. +MenuName´Â ¹Ýµå½Ã TRAYÀ̾î¾ß ÇÕ´Ï´Ù.

+

+NoMainWindow (default): ÀÌ ¸í·É¾î´Â ÄÄÆÄÀÏµÈ ½ºÅ©¸³Æ®¿¡¸¸ ¿µÇâÀ» ÁÝ´Ï´Ù. ½ºÅ©¸³Æ®¸¦ ±×ÀÇ ±âº» ÇàÀ§·Î º¹±¸ÇÕ´Ï´Ù. Áï, ¸ÞÀΠâÀÌ ¿­¸®Áö ¸øÇϵµ·Ï ¸·½À´Ï´Ù. ÀÌ ¿É¼ÇÀÌ ÄÑÁ® ÀÖ´Â µ¿¾È¿¡µµ, ´ÙÀ½ ¸í·É¾îµéÀº ½ºÅ©¸³Æ®¿¡¼­ ½ÇÇà½Ã°£¿¡ ¸¸³ª¸é ¿©ÀüÈ÷ ¸ÞÀΠâÀ» º¸¿©ÁÙ ¼ö ÀÖ½À´Ï´Ù: ListLines, ListVars, ListHotkeys, ±×¸®°í KeyHistory. MenuNameÀº ¹Ýµå½Ã TRAYÀ̾î¾ß ÇÕ´Ï´Ù.

+

+UseErrorLevel [, off]: ÀÌ ¿É¼ÇÀÌ ½ºÅ©¸³Æ®¿¡ »ç¿ëµÇÁö ¾ÊÀ¸¸é, ±âº» °ªÀº OFFÀÔ´Ï´Ù. OFF ¼³Á¤Àº Menu ¸í·É¾î°¡ ¿¡·¯¸¦ ¹ß»ý½Ãų ¶§¸¶´Ù ´ëÈ­»óÀÚ¸¦ º¸¿©ÁÖ°í ÇöÀç ¾²·¹µå¸¦ Á¾·áÇÕ´Ï´Ù. Menu, Tray, UseErrorLevel¸¦ ÁöÁ¤ÇÏ¸é ±× ´ëÈ­»óÀÚ¿Í ¾²·¹µå Á¾·á¸¦ ¸·À» ¼ö ÀÖ½À´Ï´Ù; ´ë½Å¿¡, ErrorLevelÀº ¹®Á¦°¡ ÀÖÀ¸¸é 1ÀÌ ¾øÀ¸¸é 0ÀÌ ¼³Á¤µË´Ï´Ù. ÀÌ ¿É¼ÇÀ» ´Ù½Ã ²ô·Á¸é, ´ÙÀ½ ¸Å°³º¯¼ö¿¡ OFF¸¦ ÁöÁ¤ÇϽʽÿÀ. ÀÌ ¼³Á¤Àº Àü¿ªÀûÀÔ´Ï´Ù. MenuNameÀº ¹°·ÐÀÌ°í, ¸ðµç ¸Þ´º¿¡ ¿µÇâÀ» ¹ÌÄ£´Ù´Â ¶æÀÔ´Ï´Ù.

+ +

³íÆò

+

+¸Þ´º Ç׸ñ ÀÇ À̸§¿¡ ÀÖ´Â ±ÛÀÚ Áß Çϳª¿¡ ¹ØÁÙÀ» ±×À¸·Á¸é, ±× ±ÛÀÚ ¾Õ¿¡ ¾ÚÆÛ¼¾µå¸¦ (&) ¹èÄ¡ÇϽʽÿÀ. ¸Þ´º°¡ ³ªÅ¸³¯ ¶§, ±×·± Ç׸ñÀº Å°º¸µå¿¡¼­ »óÀÀÇÏ´Â Å°¸¦ ´­·¯¼­ ¼±ÅÃÇÒ ¼ö ÀÖ½À´Ï´Ù. ±ÛÀÚ ±×´ë·Î ¾ÚÆÛ¼¾µå¸¦ º¸¿©ÁÖ·Á¸é, ¿¬¼ÓÀûÀ¸·Î ¾ÚÆÛ¼¾µå µÎ °³¸¦ ´ÙÀ½ ¿¹Á¦¿Í °°ÀÌ ÁöÁ¤ÇϽʽÿÀ: "Save && Exit"

+

+¸Þ´º¿Í ¸Þ´º Ç׸ñÀÇ À̸§Àº ÃÖ´ë 260 ¹®ÀÚ±îÁö Çã¿ëµË´Ï´Ù.

+

+±âÁ¸ÀÇ ¸Þ´º³ª ¸Þ´º Ç׸ñÀ» ÂüÁ¶ÇÒ ¶§, ±× À̸§Àº ´ë¼Ò¹®ÀÚ¸¦ ±¸º°ÇÏÁö ¾ÊÁö¸¸ ¾ÚÆÛ¼¾µå´Â ¹Ýµå½Ã Æ÷ÇÔ½ÃÄÑ¾ß ÇÕ´Ï´Ù. ¿¹¸¦ µé¾î: &Open

+

+°¡¸§ ÁÙÀº Menu, Tray, Add¸¦ »ç¿ëÇÏ¸é ¸Þ´º¿¡ Ãß°¡ÇÒ ¼ö ÀÖ½À´Ï´Ù (Áï, ´Ù¸¥ ¸ðµç ¸Å°³º¯¼ö »ý·«). ±×·¸Áö¸¸, °¡¸§ ÁÙÀº ÇöÀç °³º°ÀûÀ¸·Î Á¦°ÅÇÒ ¼ö ¾ø½À´Ï´Ù. À̸¦ ¿ìȸÇÏ·Á¸é, Menu, Tray, DeleteAll¸¦ »ç¿ëÇÑ ´ÙÀ½ ¿©·¯ºÐÀÇ ¸Â¿ò ¸Þ´º Ç׸ñÀ» ´Ù½Ã ºÎÂøÇϽʽÿÀ.

+

+»õ ¸Þ´º Ç׸ñÀº ¾ðÁ¦³ª ¸Þ´º ¾Æ·¡¿¡ Ãß°¡µË´Ï´Ù. Æ®·¹ÀÌ ¸Þ´º¿¡ ´ëÇÏ¿©: ¿©·¯ºÐÀÌ ¸Þ´º Ç׸ñÀ» Ç¥ÁØ ¸Þ´º Ç׸ñº¸´Ù À§¿¡ ³õÀ¸·Á¸é (¿©·¯ºÐÀÇ ¸Þ´º Ç׸ñÀ» Ãß°¡ÇÑ ÈÄ) Menu, Tray, NoStandard¸¦ ½ÇÇàÇÑ ´ÙÀ½¿¡ Menu, Tray, Standard¸¦ ½ÇÇàÇϽʽÿÀ.

+

+"Pause Script" ±×¸®°í "Suspend Hotkeys"¿Í °°Àº Ç¥ÁØ ¸Þ´º Ç׸ñÀº ¸Þ´º ºÎ-¸í·É¾î·Î °³º°ÀûÀ¸·Î ÀÛµ¿½Ãų ¼ö ¾ø½À´Ï´Ù.

+

+¸Þ´º°¡ ¿ÏÀüÈ÷ ºñ°Ô µÇ¸é -- ¿¹¸¦ µé¾î Menu, MyMenu, DeleteAllÀ» »ç¿ëÇÏ¿© -- º¸¿©ÁÙ ¼ö ¾ø½À´Ï´Ù. Æ®·¹ÀÌ ¸Þ´º°¡ ºñ°Ô µÇ¸é, Æ®·¹ÀÌ ¾ÆÀÌÄÜ¿¡ ¿ìŬ¸¯°ú ´õºíŬ¸¯ÀÌ ¾Æ¹« È¿°ú°¡ ¾ø½À´Ï´Ù (±×·± °æ¿ì º¸Åë #NoTrayIconÀ» »ç¿ëÇÏ´Â ÆíÀÌ ´õ ÁÁ½À´Ï´Ù).

+

+¸Þ´º Ç׸ñÀÇ ¼­ºê·çƾÀÌ ÀÌ¹Ì ½ÇÇà ÁßÀÌ°í »ç¿ëÀÚ°¡ °°Àº ¸Þ´º¸¦ ´Ù½Ã ¼±ÅÃÇÑ´Ù¸é, »õ ¾²·¹µå°¡ »ý¼ºµÇ°í ÀÌÀüÀÇ ¾²·¹µå¸¦ °¡·Îä¾î °°Àº ¼­ºê·çƾÀ» ½ÇÇàÇÕ´Ï´Ù. ´ë½Å¿¡ ±×·± À̺¥Æ®¸¦ ³ªÁßÀ¸·Î ¹öÆÛ Ã³¸®ÇÏ·Á¸é, CriticalÀ» ¼­ºê·çƾÀÇ Ã¹ ÁÙ¿¡ »ç¿ëÇϽʽÿÀ (±×·¸Áö¸¸, ÀÌ·¸°Ô ÇÏ¸é ¶Ç ÇÖÅ° ´©¸§°ú °°Àº ´Ù¸¥ ¾²·¹µåµµ ¿ª½Ã ¹öÆÛ/¿¬±â 󸮵˴ϴÙ).

+

+¼­ºê·çƾÀÌ ¸Þ´º Ç׸ñÀ» ÅëÇÏ¿© ±âµ¿ÇÒ ¶§¸¶´Ù ±× ¼­ºê·çƾÀº ¿¹¸¦ µé¾î SendMode¿¡ ¼³Á¤µÈ ±âº» °ªÀ» °¡Áö°í »õ·Ó°Ô ½ÃÀÛÇÕ´Ï´Ù. ÀÌ·± ±âº» °ªÀº ÀÚµ¿-½ÇÇà ¼½¼Ç¿¡¼­ ¹Ù²Ü ¼ö ÀÖ½À´Ï´Ù.

+

+³»Àå º¯¼ö A_ThisMenuItem ±×¸®°í A_ThisMenuItemPos¿¡ »ç¿ëÀÚ°¡ ÃÖ±Ù¿¡ ¼±ÅÃÇÑ ¸ÂÃã ¸Þ´º Ç׸ñÀÇ À̸§°ú À§Ä¡°¡ ´ã°Ü ÀÖ½À´Ï´Ù (ºñ¾î ÀÖÀ¸¸é ¼±Åà ¾øÀ½). ºñ½ÁÇÏ°Ô, A_ThisMenu´Â A_ThisMenuItem°¡ ¼±ÅÃµÈ ¸Þ´ºÀÇ À̸§ÀÔ´Ï´Ù. ÀÌ·± º¯¼öµéÀº ³»¿ëÀÌ ¾ðÁ¦³ª °°Áö ¾ÊÀº ¸Þ´º¸¦ ±¸¼ºÇÒ ¶§ À¯¿ëÇÕ´Ï´Ù. ±×·± °æ¿ì, º¸Åë ±×·± ¸ðµç ¸Þ´º Ç׸ñÀÌ °°Àº ¶óº§À» °¡¸®Å°µµ·Ï ¸¸µé°í ±× ¶óº§ÀÌ À§ÀÇ º¯¼öµéÀ» ÂüÁ¶Çؼ­ ¾î¶² ÇàÀ§¸¦ ÃëÇÒÁö °áÁ¤ÇÏ´Â °ÍÀÌ ÁÁ½À´Ï´Ù.

+

+ºñ-ÇÖÅ°, ºñ-GUI ½ºÅ©¸³Æ®¸¦ °è¼Ó ½ÇÇàµÇµµ·Ï À¯ÁöÇÏ·Á¸é -- ¿¹¸¦ µé¾î ¿ÀÁ÷ ¸ÂÃã ¸Þ´º³ª ¸Þ´º Ç׸ñ¸¸ ´ã°í ÀÖ´Â ½ºÅ©¸³Æ® -- #Persistent¸¦ »ç¿ëÇϽʽÿÀ.

+ +

°ü·Ã Ç׸ñ

+

GUI, Threads, Thread, Critical, #NoTrayIcon, Gosub, Return, SetTimer, #Persistent

+ +

¿¹Á¦

+
; ¿¹Á¦ #1: ÀÌ ½ºÅ©¸³Æ®´Â »õ ¸Þ´º Ç׸ñÀ» Æ®·¹ÀÌ ¾ÆÀÌÄÜ ¸Þ´ºÀÇ ¾Æ·¡¿¡ ºÎÂøÇÕ´Ï´Ù.
+
+#Persistent  ; »ç¿ëÀÚ°¡ Á¾·áÇÒ ¶§±îÁö ½ºÅ©¸³Æ®ÀÇ ½ÇÇàÀ» °è¼Ó À¯ÁöÇÕ´Ï´Ù.
+Menu, tray, add  ; °¡¸§ ÁÙÀ» ¸¸µì´Ï´Ù.
+Menu, tray, add, Item1, MenuHandler  ; »õ ¸Þ´º Ç׸ñÀ» ¸¸µì´Ï´Ù.
+return
+
+MenuHandler:
+MsgBox You selected %A_ThisMenuItem% from menu %A_ThisMenu%.
+return
+

 

+
; ¿¹Á¦ #2: ÀÌ ½ºÅ©¸³Æ®´Â »ç¿ëÀÚ°¡ Win-Z ÇÖÅ°¸¦ ´©¸¦ ¶§ º¸¿©ÁÙ Æ˾÷ ¸Þ´º¸¦ »ý¼ºÇÕ´Ï´Ù.
+
+; ¾à°£ÀÇ Ç׸ñÀ» ºÎÂøÇؼ­ Æ˾÷ ¸Þ´º¸¦ »ý¼ºÇÕ´Ï´Ù.
+Menu, MyMenu, Add, Item1, MenuHandler
+Menu, MyMenu, Add, Item2, MenuHandler
+Menu, MyMenu, Add  ; Add a separator line.
+
+; À§ÀÇ ¸Þ´ºÀÇ ºÎ¸Þ´º°¡ µÉ ¶Ç´Ù¸¥ ¸Þ´º¸¦ »ý¼ºÇÕ´Ï´Ù.
+Menu, Submenu1, Add, Item1, MenuHandler
+Menu, Submenu1, Add, Item2, MenuHandler
+
+; ù ¹ø° ¸Þ´º¿¡ ºÎ¸Þ´º¸¦ Çϳª »ý¼ºÇÕ´Ï´Ù (¿À¸¥ÂÊ È­»ìÇ¥ Ç¥½Ã). »ç¿ëÀÚ°¡ ±×°ÍÀ» ¼±ÅÃÇϸé, µÎ ¹ø° ¸Þ´º°¡ º¸¿©Áý´Ï´Ù.
+Menu, MyMenu, Add, My Submenu, :Submenu1
+
+Menu, MyMenu, Add  ; ±× ºÎ¸Þ´º ¾Æ·¡¿¡ °¡¸§ ÁÙÀ» Ãß°¡ÇÕ´Ï´Ù.
+Menu, MyMenu, Add, Item3, MenuHandler  ; ±× ºÎ¸Þ´º ¾Æ·¡¿¡ ¶Ç´Ù¸¥ ¸Þ´º Ç׸ñÀ» Ãß°¡ÇÕ´Ï´Ù.
+return  ; ½ºÅ©¸³Æ®ÀÇ ÀÚµ¿ ½ÇÇà ¼½¼ÇÀÌ ³¡³µ½À´Ï´Ù.
+
+MenuHandler:
+MsgBox You selected %A_ThisMenuItem% from the menu %A_ThisMenu%.
+return
+
+#z::Menu, MyMenu, Show  ; Áï, Win-Z ÇÖÅ°¸¦ ´©¸£¸é ¸Þ´º°¡ ³ªÅ¸³³´Ï´Ù.
+

 

+ +
; ¿¹Á¦ #3: ÀÌ ½ºÅ©¸³Æ®´Â ´Ù¾çÇÑ ¸Þ´º ¸í·É¾îÀÇ ¿¹¸¦ º¸¿©ÁÝ´Ï´Ù.
+
+#Persistent
+#SingleInstance
+menu, tray, add ; °¡¸§ ÁÙ
+menu, tray, add, TestToggle&Check
+menu, tray, add, TestToggleEnable
+menu, tray, add, TestDefault
+menu, tray, add, TestStandard
+menu, tray, add, TestDelete
+menu, tray, add, TestDeleteAll
+menu, tray, add, TestRename
+menu, tray, add, Test
+return
+
+;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
+
+TestToggle&Check:
+menu, tray, ToggleCheck, TestToggle&Check
+menu, tray, Enable, TestToggleEnable ; ´ÙÀ½ Å×½ºÆ®µµ È°¼ºÈ­ µË´Ï´Ù. ÀÚ±â ÀÚ½ÅÀ» ²ö °ÍÀº ¾ðµÎÇÒ ¼ö ¾ø±â ¶§¹®ÀÔ´Ï´Ù.
+menu, tray, add, TestDelete ; À§¿Í ºñ½ÁÇÕ´Ï´Ù.
+return
+
+TestToggleEnable:
+menu, tray, ToggleEnable, TestToggleEnable
+return
+
+TestDefault:
+if default = TestDefault
+{
+    menu, tray, NoDefault
+    default =
+}
+else
+{
+    menu, tray, Default, TestDefault
+    default = TestDefault
+}
+return
+
+TestStandard:
+if standard <> n
+{
+    menu, tray, NoStandard
+    standard = n
+}
+else
+{
+    menu, tray, Standard
+    standard = y
+}
+return
+
+TestDelete:
+menu, tray, delete, TestDelete
+return
+
+TestDeleteAll:
+menu, tray, DeleteAll
+return
+
+TestRename:
+if NewName <> renamed
+{
+    OldName = TestRename
+    NewName = renamed
+}
+else
+{
+    OldName = renamed
+    NewName = TestRename
+}
+menu, tray, rename, %OldName%, %NewName%
+return
+
+Test:
+MsgBox, You selected "%A_ThisMenuItem%" in menu "%A_ThisMenu%".
+return
+ +
; ¿¹Á¦ #4: ÀÌ ½ºÅ©¸³Æ®´Â ¾ÆÀÌÄÜÀ» ±×ÀÇ ¸Þ´º Ç׸ñ¿¡ Ãß°¡ÇÕ´Ï´Ù.
+Menu, FileMenu, Add, Script Icon, MenuHandler
+Menu, FileMenu, Add, Suspend Icon, MenuHandler
+Menu, FileMenu, Add, Pause Icon, MenuHandler
+Menu, FileMenu, Icon, Script Icon, %A_AhkPath%, 2 ; ÆÄÀϷκÎÅÍ µÎ ¹ø° ¾ÆÀÌÄÜ ±×·ìÀ» »ç¿ëÇÕ´Ï´Ù.
+Menu, FileMenu, Icon, Suspend Icon, %A_AhkPath%, -206 ; ÀÚ¿ø ½Äº°ÀÚ°¡ 206ÀÎ ¾ÆÀÌÄÜÀ» »ç¿ëÇÕ´Ï´Ù.
+Menu, FileMenu, Icon, Pause Icon, %A_AhkPath%, -207 ; ÀÚ¿ø ½Äº°ÀÚ°¡ 207ÀÎ ¾ÆÀÌÄÜÀ» »ç¿ëÇÕ´Ï´Ù.
+Menu, MyMenuBar, Add, &File, :FileMenu
+Gui, Menu, MyMenuBar
+Gui, Add, Button, gExit, Exit This Example
+Gui, Show
+MenuHandler:
+Return
+
+Exit:
+ExitApp
+
+ + diff --git a/src/docs/commands/MouseClick.htm b/src/docs/commands/MouseClick.htm new file mode 100644 index 0000000..dbe88db --- /dev/null +++ b/src/docs/commands/MouseClick.htm @@ -0,0 +1,100 @@ + + + + +MouseClick + + + + + + + +

MouseClick

+ +

¸¶¿ì½º ¹öÆ°À» Ŭ¸¯Çϰųª ´©¸¨´Ï´Ù. ¶Ç´Â ¸¶¿ì½º ÈÙÀ» µ¹¸³´Ï´Ù. ÁÖÀÇ: Click ¸í·É¾î°¡ ÀϹÝÀûÀ¸·Î ´õ À¯¿¬ÇÏ°í »ç¿ëÇϱ⠽±½À´Ï´Ù.

+ +
MouseClick [, WhichButton , X, Y, ClickCount, Speed, D|U, R]
+

¸Å°³º¯¼ö

+
+ +
WhichButton
+

Ŭ¸¯ÇÒ ¹öÆ°: Left (±âº»°ª), Right, Middle (¶Ç´Â °¢°¢ ±×³É ¾Õ ¸Ó¸® ±ÛÀÚ Çϳª); ¶Ç´Â ³× ¹ø° ´Ù¼¸ ¹ø° ¸¶¿ì½º ¹öÆ° (X1 ¶Ç´Â X2). ¿¹¸¦ µé¾î: MouseClick, X1. ÀÌ ¸Å°³º¯¼ö´Â »ý·«ÇÒ ¼ö ÀÖ½À´Ï´Ù. »ý·«ÇÒ °æ¿ì ±âº»°ªÀº Left(¿ÞÂÊ)ÀÔ´Ï´Ù.

+

¸¶¿ì½º ÈÙÀ» µ¹¸²: WheelUp ¶Ç´Â WU¸¦ ÁöÁ¤Çϸé ÈÙÀ» À§·Î µ¹¸³´Ï´Ù (¸Ö¸®); WheelDown ¶Ç´Â WD¸¦ ÁöÁ¤Çϸé ÈÙÀ» ¾Æ·¡·Î µ¹¸³´Ï´Ù (°¡±îÀÌ). v1.0.48+¿¡¼­, WheelLeft (WL) ¶Ç´Â WheelRight (WR)À» ÁöÁ¤Çϸé ÈÙÀ» ¿ÞÂÊ ¶Ç´Â ¿À¸¥ÂÊÀ¸·Î °¢°¢ µ¹¸± ¼ö ÀÖ½À´Ï´Ù (±×·¯³ª ÀÌ°ÍÀº Windows Vista ¹Ì¸¸ÀÇ ¿î¿µ üÁ¦¿¡¼­´Â ¾Æ¹« È¿°ú°¡ ¾ø½À´Ï´Ù). ClickCount´Â ÈÙÀ» µ¹¸± ´«±ÝÀÇ °³¼öÀÔ´Ï´Ù.

+

+ »ç¿ëÀÚ°¡ Á¦¾îÆÇÀ» ÅëÇÏ¿© ¸¶¿ì½ºÀÇ ÁÂ¿ì ¹öÆ°À» ¹Ù²Û °æ¿ì¿¡ ÀÚµ¿À¸·Î º¸¿ÏÇÏ·Á¸é ´ë½Å¿¡ Click ¸í·É¾î¸¦ »ç¿ëÇϽʽÿÀ.

+ +
X, Y
+

Ŭ¸¯Çϱâ Àü¿¡ ¸¶¿ì½º Ä¿¼­°¡ À̵¿ÇØ °¥ x/y ÁÂÇ¥, Ç¥Çö½Ä °¡´É. ÁÂÇ¥´Â È°¼º â¿¡ »ó´ëÀûÀÔ´Ï´Ù. ´Ü, CoordMode¸¦ »ç¿ëÇÏ¿© ÁÂÇ¥ ü°è¸¦ ¹Ù²Û °æ¿ì´Â ¿¹¿ÜÀÔ´Ï´Ù. »ý·«Çϸé, Ä¿¼­ÀÇ ÇöÀç À§Ä¡°¡ »ç¿ëµË´Ï´Ù.

+ +
ClickCount
+

¸¶¿ì½º¸¦ Ŭ¸¯ÇÒ È½¼ö, Ç¥Çö½Ä °¡´É. »ý·«Çϸé, ¹öÆ°Àº ÇÑ ¹ø¸¸ Ŭ¸¯µË´Ï´Ù.

+ +
Speed
+

¸¶¿ì½º°¡ À̵¿ÇÒ ¼Óµµ. ¹üÀ§´Â 0 (°¡Àå ºü¸§)ºÎÅÍ 100 (°¡Àå ´À¸²)±îÁö, Ç¥Çö½Ä °¡´É. ÁÖÀÇ: ¼Óµµ°¡ 0ÀÌ¸é ¸¶¿ì½º´Â ¼ø°£ À̵¿ÇÕ´Ï´Ù. »ý·«Çϸé, ±âº» ¼Óµµ (SetDefaultMouseSpeed°¡ ¼³Á¤ÇÑ °ª, ¾Æ´Ï¸é 2)°¡ »ç¿ëµË´Ï´Ù.

+

Speed´Â SendInput/Play ¸ðµå¿¡¼­ ¹«½ÃµË´Ï´Ù; ÀÌ ¸ðµå´Â ¸¶¿ì½º¸¦ ¼ø°£ À̵¿½Ãŵ´Ï´Ù (¹°·Ð SetMouseDelay´Â SendPlay¿¡ Àû¿ëÇÏ´Â ¸ðµå°¡ ÀÖ½À´Ï´Ù). ½Ã°¢ÀûÀ¸·Î ¸¶¿ì½º¸¦ ´õ õõÈ÷ À̵¿½ÃÅ°·Á¸é -- ¿¹¸¦ µé¾î ûÁßÀ» À§ÇÏ¿© µ¥¸ð¸¦ ¼öÇàÇÏ´Â ½ºÅ©¸³Æ®¿Í °°ÀÌ -- (¼±ÅÃÀûÀ¸·Î BlockInput°ú ÇÔ²²) SendEvent {Click 100, 200} ¶Ç´Â SendMode Event¸¦ »ç¿ëÇϽʽÿÀ .

+ +
D|U
+

ÀÌ ¸Å°³º¯¼ö¸¦ »ý·«Çϸé, °¢ Ŭ¸¯Àº "down" À̺¥Æ® ´ÙÀ½¿¡ "up" À̺¥Æ®·Î ±¸¼ºµË´Ï´Ù. ´Ù¸¥ ¹æ¹ýÀ¸·Î´Â:
+ D = ¸¶¿ì½º ¹öÆ°À» ´©¸£Áö¸¸ ¶¼Áö´Â ¾Ê½À´Ï´Ù(Áï, ´©¸§ À̺¥Æ®¸¦ ¹ß»ý½Ãŵ´Ï´Ù).
+ U = ¸¶¿ì½º ¹öÆ°À» ³õ½À´Ï´Ù (Áï, ¶À À̺¥Æ®¸¦ ¹ß»ý½Ãŵ´Ï´Ù).

+ +
R
+

ÀÌ ¸Å°³º¯¼ö°¡ ±â RÀ̸é, X¿Í Y ÁÂÇ¥´Â ÇöÀç ¸¶¿ì½º À§Ä¡·ÎºÎÅÍÀÇ »ó´ë°Å¸®(offsets)À¸·Î Ãë±ÞµË´Ï´Ù. ´Ù¸¥ ¸»·Î, Ä¿¼­´Â ÇöÀç À§Ä¡·ÎºÎÅÍ X Çȼ¿ ¸¸Å­ ¿À¸¥ÂÊÀ¸·Î (À½¼öÀÌ¸é ¿ÞÂÊÀ¸·Î) ±×¸®°í Y Çȼ¿ ¸¸Å­ ¾Æ·¡ÂÊÀ¸·Î (À½¼öÀ̸é À§ÂÊÀ¸·Î) À̵¿ÇÕ´Ï´Ù.

+ +
+ +

³íÆò

+

ÀÌ ¸í·É¾î´Â SendMode°¡ ¼³Á¤ÇÑ Àü¼Û ¹æ¹ýÀ» »ç¿ëÇÕ´Ï´Ù.

+

+MouseClickº¸´Ù Click ¸í·É¾î¸¦ ±ÇÀåÇÕ´Ï´Ù. ¿Ö³ÄÇϸé:

+
    +
  1. Á¦¾îÆÇÀ» ÅëÇÏ¿© ¸¶¿ì½º ÁÂ¿ì ¹öÆ°ÀÌ ¹Ù²Ù¾îµµ ÀÚµ¿À¸·Î º¸»óÇÕ´Ï´Ù.
  2. +
  3. ÀϹÝÀûÀ¸·Î ´õ »ç¿ëÇϱ⠽±½À´Ï´Ù.
  4. +
+

shift-click ¶Ç´Â control-clickÀ» ¼öÇàÇÏ·Á¸é, ´ÙÀ½ ¿¹Á¦¿Í °°ÀÌ ¿¬»êÀÇ ¾Õ µÚ¿¡ Send ¸í·É¾î¸¦ »ç¿ëÇϽʽÿÀ:

+ +
; ¿¹Á¦ #1: 
+Send, {Control down}
+MouseClick, left, 55, 233
+Send, {Control up}
+
+; ¿¹Á¦ #2:
+Send, {Shift down}
+MouseClick, left, 55, 233
+Send, {Shift up}
+

+SendPlay ¸ðµå´Â ´Ù¸¥ ¸ðµå¿¡ ºñÇØ ±¤¹üÀ§ÇÑ °ÔÀÓ¿¡ ¼º°øÀûÀ¸·Î ¸¶¿ì½º À̺¥Æ®¸¦ ¹ß»ý½Ãų ¼ö ¾ø½À´Ï´Ù. °Ô´Ù°¡, ¾î¶² ¾îÇø®ÄÉÀ̼ǰú °ÔÀÓÀº ¸¶¿ì½º¸¦ ³Ê¹« »¡¸® ¿òÁ÷ÀÌ¸é ¸¶¿ì½º¸¦ ÃßÀûÇÏ´Â µ¥ ¾î·Á¿òÀÌ ÀÖÀ» ¼öÀÖ½À´Ï´Ù. speed ¸Å°³º¯¼ö ¶Ç´Â SetDefaultMouseSpeed¸¦ »ç¿ëÇÏ¸é ¼Óµµ¸¦ ÁÙÀÏ ¼ö ÀÖ½À´Ï´Ù (±âº» SendEvent ¸ðµå Àü¿ë).

+

+¾î¶² ¾îÇø®ÄÉÀ̼ÇÀº ¸¶¿ì½º ÈÙ¿¡ ´ëÇÏ¿© 1º¸´Ù Å« ClickCount¸¦ ÁؼöÇÏÁö ¾Ê½À´Ï´Ù. ±×·± °æ¿ì´Â ´ÙÀ½ ¿¹Á¦¿Í °°ÀÌ Loop(ȸµ¹ÀÌ)¸¦ »ç¿ëÇϽʽÿÀ:

+ +
Loop, 5
+    MouseClick, WheelUp
+

+BlockInput ¸í·É¾î¸¦ »ç¿ëÇÏ¸é »ç¿ëÀÚ°¡ ¹°¸®ÀûÀ¸·Î ¸¶¿ì½º¸¦ ¿òÁ÷¿©µµ ¸¶¿ì½º ¸í·É¾î·Î Èä³»³½ ¸¶¿ì½º À̺¥Æ®°¡ ¹æÇØ ¹ÞÁö ¾Ê½À´Ï´Ù. ±×·¸Áö¸¸, ÀϹÝÀûÀ¸·Î SendInput/Play ¸ðµå¿¡´Â ºÒÇÊ¿äÇÕ´Ï´Ù. ¿Ö³ÄÇϸé ÀÚµ¿À¸·Î »ç¿ëÀÚÀÇ ¹°¸®Àû ¸¶¿ì½º À̵¿À» ´ÙÀ½À¸·Î ¿¬±âÇϱ⠶§¹®ÀÔ´Ï´Ù.

+

+¸¶¿ì½ºÀÇ Å¬¸¯ ´Ù¿î°ú Ŭ¸¯ ¾÷ »çÀÌ¿¡ ÀÚµ¿À¸·Î Áö¿¬ ½Ã°£ÀÌ »ðÀԵ˴ϴ٠(´Ü, SendInput ¸ðµå¿Í ¸¶¿ì½º È٠ȸÀüÀº ¿¹¿Ü). Áö¿¬ ½Ã°£ÀÇ ±æÀ̸¦ º¯°æÇÏ·Á¸é SetMouseDelay¸¦ »ç¿ëÇϽʽÿÀ.

+ +

°ü·Ã Ç׸ñ

+

+CoordMode, SendMode, SetDefaultMouseSpeed, SetMouseDelay, Click, MouseClickDrag, MouseGetPos, + MouseMove, ControlClick, BlockInput

+ +

¿¹Á¦

+ +
; ÇöÀç ¸¶¿ì½º À§Ä¡¿¡ ´õºíŬ¸¯ ÇÕ´Ï´Ù:
+MouseClick, left
+MouseClick, left
+
+; À§¿Í µ¿ÀÏÇÕ´Ï´Ù:
+MouseClick, left, , , 2
+
+; ÁöÁ¤µÈ ÁÂÇ¥·Î À̵¿ÇÑ ´ÙÀ½ ¿ìŬ¸¯ÇÕ´Ï´Ù:
+MouseClick, right, 200, 300
+
+; ´ÙÀ½Àº ¸¶¿ì½º ÈÙÀ» µ¹¸®´Â µÎ °³ÀÇ ÇÖÅ°ÀÔ´Ï´Ù:
+#up::MouseClick, WheelUp, , , 2  ; µÎ ´«±Ý ¸¸Å­ µ¹¸³´Ï´Ù.
+#down::MouseClick, WheelDown, , , 2
+ + + diff --git a/src/docs/commands/MouseClickDrag.htm b/src/docs/commands/MouseClickDrag.htm new file mode 100644 index 0000000..618d474 --- /dev/null +++ b/src/docs/commands/MouseClickDrag.htm @@ -0,0 +1,83 @@ + + + + +MouseClickDrag + + + + + + + +

MouseClickDrag

+ +

ÁöÁ¤µÈ ¸¶¿ì½º ¹öÆ°À» Ŭ¸¯ÇÏ°í ´©¸¨´Ï´Ù. ¸¶¿ì½º¸¦ ¸ñÇ¥ ÁÂÇ¥·Î À̵¿½ÃŲ ´ÙÀ½, ¹öÆ°À» ³õ½À´Ï´Ù.

+ +
MouseClickDrag, WhichButton, X1, Y1, X2, Y2 [, Speed, R]
+

¸Å°³º¯¼ö

+
+ +
WhichButton
+

Ŭ¸¯ÇÒ ¹öÆ°: Left, Right, Middle (¶Ç´Â °¢°¢ ¾Õ ±ÛÀÚ Çϳª). X1Àº ³× ¹ø° ¹öÆ°, X2´Â ´Ù¼¸ ¹ø° ¹öÆ°ÀÔ´Ï´Ù. ¿¹¸¦ µé¾î: MouseClickDrag, X1, ....

+

+ »ç¿ëÀÚ°¡ Á¦¾îÆÇÀ» ÅëÇÏ¿© ¸¶¿ì½º ÁÂ¿ì ¹öÆ°À» ¹Ù²Û °æ¿ì ÀÚµ¿À¸·Î º¸»óÇÏ·Á¸é, ´ë½Å¿¡ Click ¸í·É¾î¸¦ »ç¿ëÇϽʽÿÀ.

+ +
X1, Y1
+

²ø±â¸¦ ½ÃÀÛÇÒ À§Ä¡ÀÇ x/y ÁÂÇ¥, Ç¥Çö½Ä °¡´É (¸¶¿ì½º´Â ²ø±â°¡ ½ÃÀ۵DZ⠹ٷΠÀü ÀÌ ÁÂÇ¥·Î À̵¿ÇÕ´Ï´Ù). ÁÂÇ¥´Â È°¼º â¿¡ »ó´ëÀûÀÔ´Ï´Ù. ´Ü, CoordMode¸¦ »ç¿ëÇÏ¿© ÁÂÇ¥ ü°è¸¦ ¹Ù²Û °æ¿ì´Â ¿¹¿ÜÀÔ´Ï´Ù. »ý·«Çϸé, ¸¶¿ì½ºÀÇ ÇöÀç À§Ä¡°¡ »ç¿ëµË´Ï´Ù.

+ +
X2, Y2
+

¸¶¿ì½º¸¦ ²ø¾î´Ù ³õÀ» x/y ÁÂÇ¥ (Áï, ¹öÆ°ÀÌ ´­·Á ÀÖ´Â µ¿¾È), Ç¥Çö½Ä. ÁÂÇ¥´Â È°¼º â¿¡ »ó´ëÀûÀÔ´Ï´Ù. ´Ü, CoordMode¸¦ »ç¿ëÇÏ¿© ÁÂÇ¥¸¦ ¹Ù²Û °æ¿ì´Â ¿¹¿ÜÀÔ´Ï´Ù.

+ +
Speed
+

¸¶¿ì½º¸¦ À̵¿ÇÒ ¼Óµµ. ¹üÀ§´Â 0 (°¡Àå ºü¸§)ºÎÅÍ 100 (°¡Àå ´À¸²)±îÁöÀÔ´Ï´Ù. Ç¥Çö½Ä °¡´É. ÁÖÀÇ: ¼Óµµ°¡ 0ÀÌ¸é ¸¶¿ì½º¸¦ ¼ø°£ À̵¿½Ãŵ´Ï´Ù. »ý·«Çϸé, ±âº» ¼Óµµ (SetDefaultMouseSpeed°¡ ¼³Á¤Çϰųª ±×·¸Áö ¾ÊÀ¸¸é 2)°¡ »ç¿ëµË´Ï´Ù.

+

Speed´Â SendInput/Play ¸ðµå¿¡¼­ ¹«½ÃµË´Ï´Ù; ÀÌ ¸ðµå¿¡¼­ ¸¶¿ì½º´Â ¼ø°£ À̵¿ÇÕ´Ï´Ù (¹°·Ð SetMouseDelay¿¡´Â SendPlay¿¡ Àû¿ëÇÒ ¸ðµå°¡ ÀÖ½À´Ï´Ù). ½Ã°¢ÀûÀ¸·Î ¸¶¿ì½º¸¦ ´õ ´À¸®°Ô À̵¿½ÃÅ°·Á¸é -- ¿¹¸¦ µé¾î ûÁßÀ» À§ÇÑ µ¥¸ð¸¦ ¼öÇàÇÏ´Â ½ºÅ©¸³Æ®¶ó¸é -- (¼±ÅÃÀûÀ¸·Î BlockInput°ú ÇÔ²²) SendEvent {Click 100, 200} ¶Ç´Â SendMode Event¸¦ »ç¿ëÇϽʽÿÀ.

+ +
R
+

ÀÌ ¸Å°³º¯¼ö°¡ ±âÈ£ RÀ̸é, X1°ú Y1 ÁÂÇ¥´Â ÇöÀç ¸¶¿ì½º À§Ä¡·ÎºÎÅÍÀÇ »óÅ°Ÿ®(offsets)·Î Ãë±ÞµË´Ï´Ù. ´Ù¸¥ ¸»·Î, Ä¿¼­´Â ÇöÀç À§Ä¡·ÎºÎÅÍ X1 Çȼ¿ ¸¸Å­ ¿À¸¥ÂÊÀ¸·Î (À½¼öÀÌ¸é ¿ÞÂÊÀ¸·Î) ±×¸®°í Y1 Çȼ¿ ¸¸Å­ ¾Æ·¡·Î (À½¼öÀ̸é À§·Î) À̵¿ÇÕ´Ï´Ù.

+

+ ºñ½ÁÇÏ°Ô, X2¿Í Y2 ÁÂÇ¥´Â X1°ú Y1 ÁÂÇ¥·ÎºÎÅÍÀÇ »ó´ë°Å¸®·Î Ãë±ÞµË´Ï´Ù. ¿¹¸¦ µé¾î, ´ÙÀ½Àº ¸ÕÀú ±×ÀÇ ½ÃÀÛ À§Ä¡·ÎºÎÅÍ Ä¿¼­¸¦ ¾Æ·¡·Î ¿À¸¥ÂÊÀ¸·Î 5 Çȼ¿ ¸¸Å­ À̵¿½Ãŵ´Ï´Ù. ±× ´ÙÀ½¿¡ ±× À§Ä¡·ÎºÎÅÍ ¸¶¿ì½º¸¦ ¾Æ·¡·Î ±×¸®°í ¿À¸¥ÂÊÀ¸·Î 10 Çȼ¿ ¸¸Å­ ²ø¾î ³õ½À´Ï´Ù: MouseClickDrag, Left, 5, 5, 10, 10, , R.

+ +
+ +

³íÆò

+

+ÀÌ ¸í·É¾î´Â SendMode¿¡ ÀÇÇÏ¿© ¼³Á¤µÈ Àü¼Û ¹æ¹ýÀ» »ç¿ëÇÕ´Ï´Ù.

+

+²ø±â´Â ´Ù¾çÇÑ Send ¸í·É¾îµéÀ» ÅëÇؼ­ ´Þ¼ºÇÒ ¼öµµ ÀÖ½À´Ï´Ù. ÀÌ ÆíÀÌ ´õ À¯¿¬ÇÕ´Ï´Ù. ¿Ö³ÄÇÏ¸é ¸í·É¾î À̸§À» ÅëÇÏ¿© ¸ðµå¸¦ ÁöÁ¤ÇÒ ¼ö Àֱ⠶§¹®ÀÔ´Ï´Ù. ¿¹¸¦ µé¾î:

+ +
SendEvent {Click 6, 52, down}{click 45, 52, up}
+

+À§ÀÇ ¹æ¹ýÀÇ ¶Ç´Ù¸¥ ÀåÁ¡Àº MouseClickDrag¿Í ´Ù¸£°Ô, »ç¿ëÀÚ°¡ Á¦¾îÆÇÀ» ÅëÇÏ¿© ¸¶¿ì½º ÁÂ¿ì ¹öÆ°À» ¹Ù²Û °æ¿ì¿¡µµ ÀÚµ¿À¸·Î º¸»óÇØ Áشٴ °ÍÀÔ´Ï´Ù.

+

+SendPlay ¸ðµå´Â ´Ù¸¥ ¸ðµå¿¡ ºñÇØ ´õ ±¤¹üÀ§ÇÑ °ÔÀÓ¿¡ ¼º°øÀûÀ¸·Î ¸¶¿ì½º À̺¥Æ®¸¦ ¹ß»ý½Ãų ¼ö ÀÖ½À´Ï´Ù. ±×·¸Áö¸¸, SendPlay¸¦ ÅëÇÏ¿© ²ô´Â °ÍÀº ¿¹¸¦ µé¾î WordPad¿Í Metapad °°ÀÌ RichEdit ÄÜÆ®·Ñ¿¡ ÀÛµ¿ÇÏÁö ¾ÊÀ» °¡´É¼ºÀÌ ³ô½À´Ï´Ù (±×¸®°í ´Ù¸¥ °Íµéµµ ¸¶Âù°¡ÁöÀÔ´Ï´Ù).

+

+¾î¶² ¾îÇø®ÄÉÀ̼ǰú¤¿ °ÔÀÓÀº ¸¶¿ì½º°¡ ³Ê¹« »¡¸® À̵¿Çϸé ÃßÀûÇÏÁö ¸øÇÒ ¼ö ÀÖ½À´Ï´Ù. speed ¸Å°³º¯¼ö³ª SetDefaultMouseSpeed¸¦ »ç¿ëÇÏ¸é ±× ¼Óµµ¸¦ ÁÙÀÏ ¼ö ÀÖ½À´Ï´Ù (±âº» SendEvent ¸ðµå Àü¿ë).

+

+BlockInput ¸í·É¾î¸¦ »ç¿ëÇÏ¸é »ç¿ëÀÚÀÇ ¹°¸®Àû ¸¶¿ì½º ¿òÁ÷ÀÓ¿¡ ¸¶¿ì½º ¸í·É¾î·Î ¹ß»ýµÈ ¸¶¿ì½º À̺¥Æ®µéÀÌ ¹æÇØ ¹ÞÁö ¾Ê½À´Ï´Ù. ±×·¸Áö¸¸, ÀϹÝÀûÀ¸·Î SendInput/Play ¸ðµå¿¡´Â ºÒÇÊ¿äÇÕ´Ï´Ù. ¿Ö³ÄÇϸé ÀÚµ¿À¸·Î »ç¿ëÀÚÀÇ ¹°¸®Àû ¸¶¿ì½º ¿òÁ÷ÀÓÀ» µÚ·Î ¿¬±â½ÃÄÑ Áֱ⠶§¹®ÀÔ´Ï´Ù.

+

+¸¶¿ì½ºÀÇ Å¬¸¯ ´Ù¿î°ú Ŭ¸¯ ¾÷ »çÀÌ¿¡ ÀÚµ¿ ½Ã°£ Áö¿¬ÀÌ ÀÖ½À´Ï´Ù (SendInput ¸ðµå´Â ¿¹¿Ü). ÀÌ Áö¿¬Àº ¶Ç ¸¶¿ì½º°¡ ²ø±â ¿¬»êÀ» ÇÏ´Â µ¿¾È À̵¿ »çÀÌ¿¡¼­µµ ÀϾ´Ï´Ù. Áö¿¬ ½Ã°£ÀÇ ±æÀ̸¦ º¯°æÇÏ·Á¸é SetMouseDelay¸¦ »ç¿ëÇϽʽÿÀ.

+ +

°ü·Ã Ç׸ñ

+

CoordMode, SendMode, SetDefaultMouseSpeed, SetMouseDelay, Click, MouseClick, MouseGetPos, + MouseMove, BlockInput

+ +

¿¹Á¦

+
MouseClickDrag, left, 0, 200, 600, 400
+
+; ´ÙÀ½ ¿¹Á¦´Â MS Paint¸¦ ¿­¾î ÀÛÀº ÁýÀ» ±×¸³´Ï´Ù:
+Run, mspaint.exe
+WinWaitActive, ahk_class MSPaintApp,, 2
+if ErrorLevel
+    return
+MouseClickDrag, L, 150, 250, 150, 150
+MouseClickDrag, L, 150, 150, 200, 100
+MouseClickDrag, L, 200, 100, 250, 150
+MouseClickDrag, L, 250, 150, 150, 150
+MouseClickDrag, L, 150, 150, 250, 250
+MouseClickDrag, L, 250, 250, 250, 150
+MouseClickDrag, L, 250, 150, 150, 250
+MouseClickDrag, L, 150, 250, 250, 250
+ + + diff --git a/src/docs/commands/MouseGetPos.htm b/src/docs/commands/MouseGetPos.htm new file mode 100644 index 0000000..3e66fb1 --- /dev/null +++ b/src/docs/commands/MouseGetPos.htm @@ -0,0 +1,69 @@ + + + + +MouseGetPos + + + + + + + +

MouseGetPos

+ +

¸¶¿ì½º Ä¿¼­ÀÇ ÇöÀç À§Ä¡¸¦ ¿­¶÷ÇÕ´Ï´Ù. ¼±ÅÃÀûÀ¸·Î ¾î´À â°ú ÄÜÆ®·Ñ¿¡ ¸¶¿ì½º Ä¿¼­°¡ ¿Ã¶ó°¡ ÀÖ´ÂÁö ¿­¶÷ÇÕ´Ï´Ù.

+ +
MouseGetPos, [OutputVarX, OutputVarY, OutputVarWin, OutputVarControl, 1|2|3]
+

¸Å°³º¯¼ö

+
+ +
OutputVarX/Y
+

X¿Í Y ÁÂÇ¥¸¦ ¿­¶÷ÇÒ º¯¼öÀÇ À̸§. ¿­¶÷µÈ ÁÂÇ¥´Â È°¼º â¿¡ »ó´ëÀûÀÔ´Ï´Ù. ´Ü, CoordMode¸¦ »ç¿ëÇÏ¿© È­¸é ÁÂÇ¥¸¦ ¹Ù²Û °æ¿ì´Â ¿¹¿ÜÀÔ´Ï´Ù.

+
+ +
OutputVarWin
+

ÀÌ ¼±ÅÃÀûÀÎ ¸Å°³º¯¼ö´Â ¸¶¿ì½º Ä¿¼­ ¾Æ·¡¿¡ Àִ âÀÇ À¯ÀÏÇÑ ID ¹øÈ£¸¦ ÀúÀåÇÒ º¯¼öÀÇ À̸§ÀÔ´Ï´Ù. âÀ» ¾Ë¾Æ³¾ ¼ö ¾øÀ¸¸é, ÀÌ º¯¼ö´Â ºñ¿öÁý´Ï´Ù.

+

âÀº È°¼ºÈ­µÇÁö ¾Ê¾Æµµ ŽÁöµË´Ï´Ù. ¼ûÀº âÀº ŽÁöÇÒ ¼ö ¾ø½À´Ï´Ù.

+ +
OutputVarControl
+

ÀÌ ¼±ÅÂÀûÀÎ ¸Å°³º¯¼ö´Â ¸¶¿ì½º Ä¿¼­ ¾Æ·¡¿¡ ÀÖ´Â ÄÜÆ®·ÑÀÇ À̸§(ClassNN)À» ÀúÀåÇÒ º¯¼öÀÇ À̸§ÀÔ´Ï´Ù. ÄÜÆ®·ÑÀ» °áÁ¤ÇÒ ¼ö ¾øÀ¸¸é, ÀÌ º¯¼ö´Â ºñ¿öÁý´Ï´Ù.

+

+ ÄÜÆ®·ÑÀÇ À̸§Àº ¾ðÁ¦³ª Window Spy·Î º¸¿©Áö´Â À̸§°ú ÀÏÄ¡ÇØ¾ß ÇÕ´Ï´Ù. ÃÖ¼Ò v1.0.14+ÀÌ»ó ¿ä±¸. ±×·¸Áö¸¸ Window Spy¿Í ´Ù¸£°Ô, ¸¶¿ì½º Ä¿¼­ ¾Æ·¡ÀÇ Ã¢ÀÌ È°¼ºÈ­µÇ¾î ÀÖÁö ¾Ê¾Æµµ ÄÜÆ®·ÑÀ» ŽÁöÇÒ ¼ö ÀÖ½À´Ï´Ù.

+ +
1|2|3
+

»ý·«Çϸé, ±âº» °ªÀº 0ÀÔ´Ï´Ù. ±×·¸Áö ¾ÊÀ¸¸é, ´ÙÀ½ ¼ýÀÚ Áß Çϳª¸¦ ÁöÁ¤ÇϽʽÿÀ:

+

1: OutputVarControlÀ» ¾Ë¾Æ ³»´Â µ¥ ´õ °£´ÜÇÑ ¹æ¹ýÀ» »ç¿ëÇÕ´Ï´Ù. ÀÌ ¹æ¹ýÀº SysEditÀ̳ª TextPad °°Àº ´ÙÁß ¹®¼­ ÀÎÅÍÆäÀ̽º(Multiple Document Interface (MDI)) ¾îÇø®ÄÉÀ̼ǿ¡¼­ È°¼º/ÃÖ»óÀ§ ÀÚ¼Õ Ã¢À» ¿Ã¹Ù¸£°Ô ¿­¶÷ÇÕ´Ï´Ù. ±×·¸Áö¸¸, ´Ù¸¥ ¸ñÀûÀ¸·Î´Â Á¤¹ÐÇÏÁö ¸øÇÕ´Ï´Ù. ¿¹¸¦ µé¾î GroupBox ÄÜÆ®·Ñ ¾ÈÀÇ ÄÜÆ®·ÑÀº Á¦´ë·Î ŽÁöÇÏÁö ¸øÇÕ´Ï´Ù.

+

+ 2 [v1.0.43.06+]: ÄÜÆ®·ÑÀÇ ClassNNÀÌ ¾Æ´Ï¶ó ÄÜÆ®·ÑÀÇ HWND¸¦ OutputVarControl¿¡ ÀúÀåÇÕ´Ï´Ù.

+

3 [v1.0.43.06+]: À§ÀÇ 1°ú 2ÀÇ Á¶ÇÕ.

+ +
+ +

³íÆò

+

+»óÀÀÇÏ´Â Á¤º¸°¡ ÇÊ¿äÇÏÁö ¾ÊÀ» °æ¿ì Ãâ·Â º¯¼ö´Â ¸ðµÎ »ý·«ÇÒ ¼ö ÀÖ½À´Ï´Ù.

+ +

°ü·Ã Ç׸ñ

+

+CoordMode, WinGet, SetDefaultMouseSpeed, Click

+ +

¿¹Á¦

+
MouseGetPos, xpos, ypos 
+Msgbox, The cursor is at X%xpos% Y%ypos%. 
+
+; ÀÌ ¿¹Á¦¿¡¼­ ¸¶¿ì½º¸¦ À̵¿½ÃÄѼ­ ÇöÀç ¸¶¿ì½º ¾Æ·¡¿¡ ÀÖ´Â
+; âÀÇ Á¦¸ñÀ» º¼ ¼ö ÀÖ½À´Ï´Ù:
+#Persistent
+SetTimer, WatchCursor, 100
+return
+
+WatchCursor:
+MouseGetPos, , , id, control
+WinGetTitle, title, ahk_id %id%
+WinGetClass, class, ahk_id %id%
+ToolTip, ahk_id %id%`nahk_class %class%`n%title%`nControl: %control%
+return
+ + + diff --git a/src/docs/commands/MouseMove.htm b/src/docs/commands/MouseMove.htm new file mode 100644 index 0000000..f594031 --- /dev/null +++ b/src/docs/commands/MouseMove.htm @@ -0,0 +1,62 @@ + + + + +MouseMove + + + + + + + +

MouseMove

+ +

¸¶¿ì½º Ä¿¼­¸¦ À̵¿½Ãŵ´Ï´Ù.

+ +
MouseMove, X, Y [, Speed, R]
+

¸Å°³º¯¼ö

+
+ +
X, Y
+

¸¶¿ì½º¸¦ À̵¿ÇÒ x/y ÁÂÇ¥, Ç¥Çö½Ä °¡´É. Á¶Ç¥´Â È°¼º â¿¡ »ó´ëÀûÀÔ´Ï´Ù. ´Ü, CoordMode¸¦ »ç¿ëÇÏ¿© ÁÂÇ¥ ü°è¸¦ ¹Ù²Ù¾ú´Ù¸é ¿¹¿ÜÀÔ´Ï´Ù.

+ +
Speed
+

¸¶¿ì½º¸¦ À̵¿ÇÒ ¼Óµµ. ¹üÀ§´Â 0 (°¡Àå ºü¸§)ºÎÅÍ 100 (°¡Àå ´À¸²)±îÁö. Ç¥Çö½Ä °¡´É. ÁÖÀÇ: ¼Óµµ°¡ 0ÀÌ¸é ¸¶¿ì½º´Â ¼ø°£ À̵¿ÇÕ´Ï´Ù. »ý·«Çϸé, ±âº» ¼Óµµ°¡ (SetDefaultMouseSpeed°¡ ¼³Á¤ÇÑ ¶Ç´Â 2) »ç¿ëµË´Ï´Ù.

+

Speed´Â SendInput/Play ¸ðµå¿¡ ´ëÇؼ­´Â ¹«½ÃµË´Ï´Ù; ¸¶¿ì½º¸¦ ¼ø°£ À̵¿½Ãŵ´Ï´Ù (±×·¸Áö¸¸ SetMouseDelay´Â SendPlay¿¡ Àû¿ëÇÒ ¸ðµå°¡ ÀÖ½À´Ï´Ù). ½Ã°¢ÀûÀ¸·Î ¸¶¿ì½º¸¦ ´õ ´À¸®°Ô À̵¿½ÃÅ°·Á¸é -- ûÁßÀ» À§ÇØ µ¥¸ð¸¦ ¼öÇàÇÏ´Â ½ºÅ©¸³Æ®¶ó¸é -- SendEvent {Click 100, 200} ¶Ç´Â SendMode Event (¼±ÅÃÀûÀ¸·Î BlockInput°ú ÇÔ²²) »ç¿ëÇϽʽÿÀ.

+ +
R
+

ÀÌ ¸Å°³º¯¼ö°¡ ±âÈ£ RÀ̸é, X¿Í Y ÁÂÇ¥´Â ÇöÀç ¸¶¿ì½º À§Ä¡·ÎºÎÅÍÀÇ »ó´ë°Å¸®(offsets)·Î Ãë±ÞµË´Ï´Ù. ´Ù¸¥ ¸»·Î, Ä¿¼­´Â °ÅÀÇ ÇöÀç À§Ä¡ X Çȼ¿ ¸¸Å­ ¿À¸£ÂÊÀ¸·Î (À½¼öÀÌ¸é ¿ÞÂÊÀ¸·Î) ±×¸®°í Y Çȼ¿ ¸¸Å­ ¾Æ·¡ÂÊÀ¸·Î (À½¼öÀ̸é À§·Î) À̵¿ÇÕ´Ï´Ù.

+ +
+ +

³íÆò

+

+ÀÌ ¸í·É¾î´Â SendMode°¡ ¼³Á¤ÇÑ Àü¼Û ¹æ¹ýÀ» »ç¿ëÇÕ´Ï´Ù.

+

+SendPlay ¸ðµå´Â ´Ù¸¥ ¸ðµåº¸´Ù ´õ ±¤¹üÀ§ÇÑ °ÔÀÓ¿¡¼­ ¼º°øÀûÀ¸·Î ¸¶¿ì½º À̺¥Æ®¸¦ ¹ß»ý½Ãų ¼ö ÀÖ½À´Ï´Ù. °Ô´Ù°¡, ¾î¶² ¾îÇø®ÄÉÀ̼ǰú °ÔÀÓÀº ¸¶¿ì½º°¡ ³Ê¹« ºü¸£°Ô ¿òÁ÷Àδٸé ÃßÀûÇÏ´Â µ¥ ¾î·Á¿òÀÌ ÀÖÀ» ¼ö ÀÖ½À´Ï´Ù. speed ¸Å°³º¯¼ö³ª SetDefaultMouseSpeed¸¦ »ç¿ëÇÏ¸é ±× ¼Óµµ¸¦ ÁÙÀÏ ¼ö ÀÖ½À´Ï´Ù (±âº» SendEvent ¸ðµå Àü¿ë).

+

+BlockInput ¸í·É¾îÀ» »ç¿ëÇÏ¸é »ç¿ëÀÚÀÇ ¹°¸®ÀûÀÎ ¸¶¿ì½º È°µ¿ ¶§¹®¿¡ ¸¶¿ì½º ¸í·É¾î·Î »ý»êÇÑ Èä³»³½ ¸¶¿ì½º À̺¥Æ®°¡ ¾îÁö·´°Ô µÇ´Â °ÍÀ» ¸·À» ¼ö ÀÖ½À´Ï´Ù. ±×·¸Áö¸¸, ÀÌ°ÍÀº º¸Åë SendInput/Play ¸ðµå¿¡´Â ºÒÇÊ¿äÇÕ´Ï´Ù. ¿Ö³ÄÇϸé ÀÚµ¿À¸·Î »ç¿ëÀÚÀÇ ¹°¸®Àû ¸¶¿ì½º È°µ¿À» ³ªÁßÀ¸·Î ¿¬±âÇϱ⠶§¹®ÀÔ´Ï´Ù.

+

+¸¶¿ì½ºÀÇ ¸Å ¿òÁ÷ÀÓ¸¶´Ù ÀÚµ¿À¸·Î Áö¿¬ ½Ã°£ÀÌ »ðÀԵ˴ϴ٠(SendInput ¸ðµå´Â ¿¹¿Ü). SetMouseDelay¸¦ »ç¿ëÇϸé Áö¿¬ ½Ã°£ÀÇ ±æÀ̸¦ º¯°æÇÒ ¼ö ÀÖ½À´Ï´Ù.

+

+´ÙÀ½Àº ¸¶¿ì½º Ä¿¼­¸¦ À̵¿ÇÏ´Â ´Ù¸¥ ¹æ¹ýÀÔ´Ï´Ù. ¾î¶² ´ÙÁß-¸ð´ÏÅÍ ±¸¼º¿¡¼­´Â ´õ Àß ÀÛµ¿ÇÒ ¼öµµ ÀÖ½À´Ï´Ù:

+ +
DllCall("SetCursorPos", int, 100, int, 400)  ; ù ¹ø° ¼ýÀÚ´Â X-ÁÂÇ¥ÀÌ°í µÎ ¹ø° ÁÂÇ¥´Â YÀÔ´Ï´Ù (È­¸é¿¡ »ó´ëÀûÀÔ´Ï´Ù).
+

+°ü·ÃÇÏ¿© ¸»¾¸µå¸®¸é, ¸¶¿ì½º Ä¿¼­´Â Ä¿¼­-¼û±â±â ¿¹Á¦¿Í °°ÀÌ Àӽ÷Π¼ûÀ» ¼ö ÀÖ½À´Ï´Ù.

+ +

°ü·Ã Ç׸ñ

+

+CoordMode, SendMode, SetDefaultMouseSpeed, SetMouseDelay, Click, MouseClick, MouseClickDrag, MouseGetPos, BlockInput

+ +

¿¹Á¦

+
; ¸¶¿ì½º¸¦ »õ À§Ä¡·Î À̵¿ÇÕ´Ï´Ù:
+MouseMove, 200, 100
+
+; ¸¶¿ì½º¸¦ õõÈ÷ (¼Óµµ 50 vs. 2) ÇöÀç À§Ä¡·ÎºÎÅÍ
+; 20 Çȼ¿¸¸Å­ ¿À¸¥ÂÊÀ¸·Î ±×¸®°í 30 Çȼ¿ ¸¸Å­ ¾Æ·¡ÂÊÀ¸·Î À̵¿½Ãŵ´Ï´Ù:
+MouseMove, 20, 30, 50, R
+ + + diff --git a/src/docs/commands/MsgBox.htm b/src/docs/commands/MsgBox.htm new file mode 100644 index 0000000..8536985 --- /dev/null +++ b/src/docs/commands/MsgBox.htm @@ -0,0 +1,229 @@ + + + + +MsgBox + + + + + + + + +

MsgBox

+ +

ÁöÁ¤µÈ ÅؽºÆ®¸¦ ÀÛÀº â¿¡ º¸¿©ÁÝ´Ï´Ù. ±× ¾È¿¡ Çϳª ÀÌ»óÀÇ ¹öÆ°ÀÌ µé¾î ÀÖ½À´Ï´Ù (¿¹¸¦ µé¾î Yes ±×¸®°í No).

+ +
MsgBox, Text
+MsgBox [, Options, Title, Text, Timeout]
+ +

¸Å°³º¯¼ö

+
+ +
Text
+

¸ðµç ¸Å°³º¯¼ö¸¦ »ý·«Çϸé, MsgBox´Â ÅؽºÆ® "°è¼ÓÇÏ·Á¸é OK¸¦ ´©¸£½Ê½Ã¿À."¸¦ º¸¿©ÁÝ´Ï´Ù. ±×·¸Áö ¾ÊÀ¸¸é, ÀÌ ¸Å°³º¯¼ö´Â »ç¿ëÀÚ¿¡°Ô ¹«¾ùÀ» ÇØ¾ß ÇÏ´ÂÁö ¶Ç´Â Á¤º¸¸¦ Á¦°øÇϱâ À§ÇØ ¸Þ½ÃÁö ¹Ú½º ¾È¿¡ º¸¿©ÁÖ´Â ÅؽºÆ®ÀÔ´Ï´Ù.

+

ÇǽŠ¿¬¼Ó¿­À» »ç¿ëÇϸé Ư¼ö ¹®ÀÚ¸¦ Ç¥±âÇÒ ¼ö ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î, `nÀº ¶óÀÎÇÇµå ¹®ÀÚ¸¦ ³ªÅ¸³À´Ï´Ù. ÀÌ ¹®ÀÚ´Â ÇöÀç ÁÙÀ» ³¡³»°í »õ ÁÙÀ» ½ÃÀÛÇÕ´Ï´Ù. ±×¸®ÇÏ¿©, text1`n`ntext2´Â text1°ú text2 »çÀÌ¿¡ ºó ÁÙÀ» ¸¸µì´Ï´Ù.

+

+ Text°¡ ±æ¸é, °è¼Ó ¼½¼ÇÀ» ¼ö´ÜÀ¸·Î ¿©·¯ ªÀº ÁÙµé·Î °¡¸¦ ¼ö ÀÖ½À´Ï´Ù. ÀÌ·¸°Ô ÇÏ¸é °¡µ¶¼º°ú À¯Áö°ü¸®¼ºÀÌ °³¼±µË´Ï´Ù.

+ +
Options
+

¸Þ½ÃÁö ¹Ú½ºÀÇ Á¾·ù¿Í °¡´ÉÇÑ ¹öÆ° Á¶ÇÕÀ» ³ªÅ¸³À´Ï´Ù. ºñ¾î Àְųª »ý·«Çϸé, ±âº»°ªÀº 0ÀÔ´Ï´Ù. Çã¿ëµÇ´Â °ªµéÀº ¾Æ·¡ÀÇ Ç¥¸¦ ÂüÁ¶ÇϽʽÿÀ.

+

+ ÀÌ ¸Å°³º¯¼ö´Â ±âÈ£ ±×´ë·ÎÀÇ ¼ýÀÚÀ̰ųª (v1.1.06+) ¶Ç´Â % Options¿Í °°Àº °­Á¦ Ç¥Çö½ÄÀÔ´Ï´Ù. ºñ¾î ÀÖÁö ¾ÊÀº ´Ù¸¥ °ªµéÀº ÀÌ ¸Å°³º¯¼ö·Î ÀÎÁöÇÏÁö ¾Ê°í, ´ÜÀÏ-¸Å°³º¯¼öÀÇ TextÀÇ ÀϺηΠÀÎÁöÇÕ´Ï´Ù.

+ +
Title
+

¸Þ½ÃÁö ¹Ú½º âÀÇ Á¦¸ñ. »ý·«Çϰųª ºñ¾î ÀÖÀ¸¸é, ±âº»°ªÀº ½ºÅ©¸³Æ®ÀÇ (°æ·Î ¾øÀÌ) À̸§ÀÔ´Ï´Ù.

+ +
Timeout
+

(¼±ÅÃÀû) ÃÊ´ÜÀ§ ½Ã°£ Á¦ÇÑ, ¾È¿¡ ½ÊÁø ¼Ò¼öÁ¡ÀÌ µé¾î ÀÖÁö¸¸ ±âº»ÀûÀ¸·Î Ç¥Çö½ÄÀÌ ¾Æ´Õ´Ï´Ù. v1.1.06+¿¡¼­, % mins*60¿Í °°Àº °­Á¦ Ç¥Çö½ÄÀÏ ¼ö ÀÖ½À´Ï´Ù.

+

+ °ªÀÌ 2147483 (24.8 ÀÏ)À» ³Ñ¾î¼­¸é, 2147483ÀÌ ¼³Á¤µË´Ï´Ù. ½Ã°£Á¦ÇÑÀÌ °æ°úÇÑ ÈÄ¿¡ ¸Þ½ÃÁö ¹Ú½º´Â ÀÚµ¿À¸·Î ´ÝÈü´Ï´Ù. ±×¸®°í IfMsgBox ¸í·É¾î°¡ ±× °ª TIMEOUTÀ» º¸°Ô µË´Ï´Ù.

+

+ ¾Ë·ÁÁø ÇÑ°è: MsgBox¿¡ ¿ÀÁ÷ OK ¹öÆ°¸¸ ÀÖÀ» °æ¿ì, ¶Ç´Ù¸¥ ¾²·¹µå¿¡ ÀÇÇØ ÀÚ½ÅÀÇ ¾²·¹µå°¡ ÀÎÅÍ·´Æ® µÇ¾î ÀÖ´Â µ¿¾È¿¡ MsgBox ½Ã°£Á¦ÇÑÀÌ ³¡³ª¸é IfMsgBox´Â OK ¹öÆ°ÀÌ ´­·È´Ù°í »ý°¢ÇÕ´Ï´Ù.

+ +
+ +

+Options ¸Å°³º¯¼ö´Â ´ÙÀ½ °ªÀ» Á¶ÇÕ(ÇÕ)À¸·Î ±¸¼ºµË´Ï´Ù.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
±â´É½ÊÁø¼ö °ª½ÊÀ°Áø¼ö °ª
OK (Áï, OK ¹öÆ°ÀÌ º¸¿©Áý´Ï´Ù)00x0
OK/Cancel10x1
Abort/Retry/Ignore20x2
Yes/No/Cancel30x3
Yes/No40x4
Retry/Cancel50x5
Cancel/Try Again/Continue60x6
µµ¿ò¸» ¹öÆ° Ãß±â (¾Æ·¡ ³íÆò ÂüÁ¶)163840x4000
   
¼Õ ¾ÆÀÌÄÜ (ÁßÁö/¿¡·¯)160x10
Áú¹® ¾ÆÀÌÄÜ320x20
°¨Åº ¾ÆÀÌÄÜ480x30
º°Ç¥ ¾ÆÀÌÄÜ (Á¤º¸)640x40
   
2nd ¹öÆ°ÀÌ ±âº»°ª2560x100
3rd ¹öÆ°ÀÌ ±âº»°ª5120x200
   
System Modal (Ç×»ó À§)40960x1000
Task Modal81920x2000
Ç×»ó À§ (½ºÅ¸ÀÏ WS_EX_TOPMOST)
+ (½Ã½ºÅÛ ¸ðµ¨°ú °°Áö¸¸ Á¦¸ñ ¹Ù ¾ÆÀÌÄÜÀÌ »ý·«µË´Ï´Ù)
2621440x40000
   
ÅؽºÆ®¸¦ ¿ìÃø Á¤·Ä5242880x80000
Hebrew/Arabic¿¡ ´ëÇÏ¿© ¿À¸¥ÂÊ¿¡¼­ ¿ÞÂÊÀ¸·Î ÀÐÀ½ 10485760x100000
+

³íÆò

+

+À§ÀÇ Ç¥¿¡¼­ MsgBox¿¡ º¸¿©ÁÙ °ªµéÀ» ´õÇؼ­ »ç¿ëµË´Ï´Ù. ¿¹¸¦ µé¾î, ±âº» ¹öÆ°À» Yes ´ë½Å¿¡ No·Î ÇÏ¿© Yes/No ¹Ú½º¸¦ ÁöÁ¤ÇÏ·Á¸é, Options °ªÀº 256+4 (260)°¡ µË´Ï´Ù. ½ÊÀ°Áø¼ö·Î 0x100+0x4 (0x104)°¡ µË´Ï´Ù.

+

+MsgBox´Â ¶È¶ÈÇÏ°Ô ½°Ç¥¸¦ ó¸®ÇÕ´Ï´Ù. ±×·¡¼­ º¸Åë Text ¸Å°³º¯¼ö ¾È¿¡ ÀÖ´Â ½°Ç¥¸¦ ÇǽŠ½Ãų ÇÊ¿ä°¡ ¾ø½À´Ï´Ù.

+

+ÃÖ±ÙÀÇ MsgBox¿¡¼­ »ç¿ëÀÚ°¡ ¾î´À ¹öÆ°À» ´­·¶´ÂÁö ¾Ë¾Æ ³»·Á¸é, IfMsgBox ¸í·É¾î¸¦ »ç¿ëÇϽʽÿÀ. ¿¹¸¦ µé¾î:

+ +
MsgBox, 4,, °è¼Ó ÇϽðڽÀ´Ï±î? (Yes ¶Ç´Â No¸¦ ´©¸£½Ê½Ã¿À)
+IfMsgBox Yes
+    MsgBox Yes¸¦ ´©¸£¼Ì½À´Ï´Ù.
+else
+    MsgBox No¸¦ ´©¸£¼Ì½À´Ï´Ù.
+

+¹öÆ°ÀÇ À̸§µéÀº ´ÙÀ½ ¿¹Á¦¸¦ µû¶ó Àç´ÜÇÒ ¼ö ÀÖ½À´Ï´Ù.

+

+Á¤º¸: MsgBox âÀÌ È°¼ºÈ­µÇ¾î ÀÖ´Â µ¿¾È Control-C¸¦ ´©¸£¸é ±×ÀÇ ÅؽºÆ®¸¦ Ŭ¸³º¸µå·Î º¹»çÇÕ´Ï´Ù. ÀÌ°ÍÀº AutoHotkey°¡ »ý»êÇÑ MsgBox´Â ¹°·ÐÀÌ°í ¸ðµç MsgBox¿¡ Àû¿ëµË´Ï´Ù.

+

+GUI â°ú ÇÔ²² MsgBox »ç¿ëÇϱâ: GUI âÀº Gui +OwnDialogs¸¦ »ç¿ëÇÏ¸é ¸ð´Þ MsgBox¸¦ º¸¿©ÁÙ ¼ö ÀÖ½À´Ï´Ù. ¸ð´Þ MsgBox¿¡¼­ »ç¿ëÀÚ´Â MsgBox¸¦ ³¡³¾ ¶§±îÁö GUI â°ú »óÈ£ ÀÛ¿ëÇÒ ¼ö ¾ø½À´Ï´Ù. ±×·± °æ¿ì, À§ÀÇ Å×ÀÌºí¿¡ ÀÖ´Â System Modal ¶Ç´Â Task Modal ¿É¼ÇÀ» ÁöÁ¤ÇÒ ÇÊ¿ä°¡ ¾ø½À´Ï´Ù.

+

+Gui +OwnDialogs°¡ °ÜÁ® ÀÖÁö ¾ÊÀ¸¸é, Task Modal ¿É¼Ç(8192)À» »ç¿ëÇÏ¸é »ç¿ëÀÚ°¡ MsgBox¸¦ ³¡³¾ ¶§±îÁö ½ºÅ©¸³Æ®ÀÇ ¸ðµç âÀ» ²ø ¼ö ÀÖ½À´Ï´Ù.

+

+µµ¿ò¸» ¹öÆ°: µµ¿ò¸» ¹öÆ° ¿É¼Ç (83)ÀÌ Options¿¡ Á¸ÀçÇϸé, µµ¿ò¸» ¹öÆ°À» Ŭ¸¯Çصµ ¾Æ¹« È¿°úµµ ¾ø½À´Ï´Ù. ´Ü, ´ÙÀ½ µÎ Á¶°ÇÀÌ ¸ðµÎ ÂüÀÎ °æ¿ì´Â ¿¹¿ÜÀÔ´Ï´Ù:

+
    +
  1. Gui +OwnDialogs¸¦ ¼ö´ÜÀ¸·Î MsgBox¸¦ GUI âÀÌ ¼ÒÀ¯ÇÕ´Ï´Ù.
  2. +
  3. ½ºÅ©¸³Æ®°¡ WM_HELP ¸Þ½ÃÁö (0x53)¸¦ °¨½ÃÇÏ°í ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î: OnMessage(0x53, "WM_HELP"). WM_HELP() ÇÔ¼ö°¡ È£ÃâµÉ ¶§, »ç¿ëÀÚ¸¦ ¾È³» ÇÒ ¼ö ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î ¶Ç´Ù¸¥ âÀ̳ª MsgBox¸¦ º¸¿©ÁÝ´Ï´Ù.
  4. +
+

+´Ý±â ¹öÆ° (MsgBoxÀÇ Á¦¸ñ ¹Ù¿¡ ÀÖ´Â): MsgBox âÀº ¿î¿µ üÁ¦ÀÇ ³»Àå Ư¡À̱⠶§¹®¿¡ , ±×ÀÇ X ¹öÆ°Àº ¾î¶² ¹öÆ°ÀÌ Á¸ÀçÇÒ °æ¿ì¿¡¸¸ È°¼º È­µË´Ï´Ù. ¿ÀÁ÷ OK ¹öÆ°¸¸ ÀÖ´Ù¸é, X ¹öÆ°À» Ŭ¸¯ÇÏ´õ¶óµµ OK¸¦ Ŭ¸¯ÇÑ °Í°ú °°½À´Ï´Ù. ±×·¸Áö ¾ÊÀ¸¸é, X ¹öÆ°Àº ºñÈ°¼ºÈ­ µË´Ï´Ù. ´Ü, Cancel ¹öÆ°ÀÌ ÀÖ´Ù¸é ¿¹¿ÜÀε¥, ÀÌ °æ¿ì X¸¦ Ŭ¸¯ÇÑ °ÍÀº Cancel¸¦ ´©¸¥ °Í°ú °°½À´Ï´Ù.

+ +

°ü·Ã Ç׸ñ

+

IfMsgBox, InputBox, FileSelectFile, FileSelectFolder, ToolTip, GUI

+ +

¿¹Á¦

+
MsgBox ÀÌ°ÍÀº ¸Å°³º¯¼ö°¡ ÇÑ °³ÀÎ ¹æ¹ýÀÔ´Ï´Ù. ½°Ç¥ (,)´Â ÇǽŽÃų ÇÊ¿ä°¡ ¾ø½À´Ï´Ù.
+MsgBox, 4, , ÀÌ°ÍÀº ¸Å°³º¯¼ö°¡ ¼¼ °³ÀÎ ¹æ¹ýÀÔ´Ï´Ù. ½°Ç¥ (,)´Â ÇǽŠ½Ãų ÇÊ¿ä°¡ ¾ø½À´Ï´Ù.
+MsgBox, 4, , °è¼ÓÇϽðڽÀ´Ï±î? (YES ¶Ç´Â NO¸¦ ´©¸¨´Ï´Ù)
+IfMsgBox No
+    return
+MsgBox, 4, , ¸Å°³º¯¼ö°¡ ³× °³ÀÎ ¹æ¹ý: ÀÌ MsgBox´Â ½Ã°£Á¦ÇÑÀÌ 5ÃÊÀÔ´Ï´Ù. °è¼ÓÇϽðڽÀ´Ï±î?, 5
+IfMsgBox Timeout
+    MsgBox 5 ÃÊ ¾È¿¡ YES ¶Ç´Â NO¸¦ ´©¸£Áö ¾Ê¾Ò½À´Ï´Ù.
+else IfMsgBox No
+    return
+    
+; ¸Å°³º¯¼ö ¾Õ¿¡ "% "¸¦ ¹èÄ¡Çϸé, Ç¥Çö½ÄÀÌ µË´Ï´Ù. ´ÙÀ½ ¿¹Á¦¿¡¼­,
+; °è»êÀÌ ¼öÇàµÇ°í, ÀǽÃ-¹è¿­ ¿ø¼Ò¿¡ Á¢±ÙÇÕ´Ï´Ù. ±×¸®°í ÇÔ¼ö¸¦ È£ÃâÇÕ´Ï´Ù.
+; ÀÌ ¸ðµç Ç׸ñµéÀº "." ¿¬»êÀÚ·Î °áÇյǾî ÇϳªÀÇ ¹®ÀÚ¿­À» Çü¼ºÇØ MsgBox¿¡ º¸¿©Áý´Ï´Ù:
+MsgBox % "New width for object #" . A_Index . " is: " . RestrictWidth(ObjectWidth%A_Index% * ScalingFactor)
+
+; ´ÙÀ½ ¿¹Á¦´Â MsgBox°¡ ÃÊÁ¡À» ÈÉÄ¡°í ÀÖ´Ù°í »ç¿ëÀÚ¿¡°Ô °æ°íÇÕ´Ï´Ù (ÀÌ °æ¿ì »ç¿ëÀÚ°¡ ŸÀÚÇÏ°í ÀÖÀ½).
+SplashTextOn,,, MsgBox°¡ °ð »ç¶óÁý´Ï´Ù.
+Sleep 3000
+SplashTextOff
+MsgBox ¹é¾÷ÀÌ ¿Ï·áµÇ¾ú½À´Ï´Ù.
+ + + diff --git a/src/docs/commands/NumGet.htm b/src/docs/commands/NumGet.htm new file mode 100644 index 0000000..cd96cff --- /dev/null +++ b/src/docs/commands/NumGet.htm @@ -0,0 +1,53 @@ + + + + +NumGet + + + + + + +

NumGet

+

ÁöÁ¤µÈ ÁÖ¼Ò+¿ÀÇÁ¼Â¿¡ ÀúÀåµÈ ÀÌÁø ¼ýÀÚ¸¦ µ¹·ÁÁÝ´Ï´Ù.

+
Number := NumGet(VarOrAddress [, Offset = 0][, Type = "UPtr"])
+ +

¸Å°³º¯¼ö

+
+ +
VarOrAddress
+
+

¸Þ¸ð¸® ÁÖ¼Ò ¶Ç´Â º¯¼ö. VarOrAddress°¡ MyVar °°Àº º¯¼ö À̸é, ±× º¯¼öÀÇ ¹®ÀÚ¿­ ¹öÆÛÀÇ ÁÖ¼Ò°¡ »ç¿ëµË´Ï´Ù. ÀÌ°ÍÀº º¸Åë &MyVar¸¦ °Ç³×´Â °Í°ú µ¿µîÇÏÁö¸¸, "&"¸¦ »ý·«ÇÏ¸é ´õ ¼öÇ༺´ÉÀÌ ÁÁ°í ¸ñÇ¥ ÁÖ¼Ò + ¿ÀÇÁ¼ÂÀÌ À¯È¿ÇÏ´Ù´Â È®½ÅÀ» ÇÒ ¼ö ÀÖ½À´Ï´Ù.

+

º¯¼ö¿¡ ¸ñÇ¥ ÁÖ¼Ò°¡ ´ã°Ü ÀÖÀ¸¸é º¯¼ö ÂüÁ¶¸¦ °Ç³×Áö ¸¶½Ê½Ã¿À; ±× °æ¿ì, MyVar+0¿Í °°Àº Ç¥Çö½ÄÀ» °Ç³×½Ê½Ã¿À.

+
+ +
Offset
+

»ó´ë°Å¸®(¿ÀÇÁ¼Â) - ¹ÙÀÌÆ® ´ÜÀ§ - VarOrAddress¿¡ ´õÇØÁ®¼­ ¸ñÇ¥ ÁÖ¼Ò¸¦ °áÁ¤ÇÕ´Ï´Ù.

+ +
Type
+
+

´ÙÀ½ ¹®ÀÚ¿­ Áß Çϳª (»ý·«Çϸé UPtrÀÌ ±âº»°ªÀÔ´Ï´Ù):
+ UInt, Int, Int64, Short, UShort, Char, UChar, Double, Float, Ptr ¶Ç´Â UPtr

+

DllCall¿Í ´Ù¸£°Ô, À̰͵éÀº ¹®ÀÚ ±×´ë·ÎÀÇ ¹®ÀÚ¿­·Î »ç¿ëµÉ ¶§ ¹Ýµå½Ã µû¿ÈÇ¥·Î µÑ·¯ ½Î¾ß ÇÕ´Ï´Ù.

+

ÀÚ¼¼ÇÑ °ÍÀº DllCall À¯ÇüÀ» ÂüÁ¶ÇϽʽÿÀ.

+
+ +
+ +

¹Ýȯ °ª

+

+¸ñÇ¥ ÁÖ¼Ò°¡ À¯È¿ÇÏÁö ¾ÊÀ¸¸é, ºó ¹®ÀÚ¿­ÀÌ µ¹¾Æ¿É´Ï´Ù. ±×·¸Áö¸¸, ¾î¶² ¹«È¿ ÁÖ¼Ò´Â ±×·± ½ÄÀ¸·Î ŽÁöÇÒ ¼ö ¾ø½À´Ï´Ù. ±×·¡¼­ ¿¹»óÄ¡ ¸øÇÑ ÇàÀ§¸¦ ¾ß±âÇÒ ¼ö ÀÖ½À´Ï´Ù.

+

+±×·¸Áö ¾ÊÀ¸¸é, ÁöÁ¤µÈ ÁÖ¼Ò+¿ÀÇÁ¼Â¿¡ ÀÖ´Â ¼ýÀÚ°¡ ¹ÝȯµË´Ï´Ù.

+ +

ÃÑÆò

+

+¼¼ °³ÀÇ ¸Å°³º¯¼ö¸¸ Á¸ÀçÇϸé, ¼¼ ¹ø° ¸Å°³º¯¼ö´Â Offset ¶Ç´Â TypeÀÏ ¼ö ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î, NumPut(x, var, "int")´Â À¯È¿ÇÕ´Ï´Ù.

+ +

°ü·Ã Ç׸ñ

+

NumPut, DllCall, VarSetCapacity

+ + + + diff --git a/src/docs/commands/NumPut.htm b/src/docs/commands/NumPut.htm new file mode 100644 index 0000000..0d249cb --- /dev/null +++ b/src/docs/commands/NumPut.htm @@ -0,0 +1,61 @@ + + + + +NumPut + + + + + + +

NumPut

+

ÁöÁ¤µÈ ÁÖ¼Ò + ¿ÀÇÁ¼Â¿¡ ÀÌÁø Çü½ÄÀ¸·Î ¼ýÀÚ¸¦ ÀúÀåÇÕ´Ï´Ù.

+
NumPut(Number, VarOrAddress [, Offset = 0][, Type = "UPtr"])
+ +

¸Å°³º¯¼ö

+
+ +
Number
+

ÀúÀåÇÒ ¼ýÀÚ.

+ +
VarOrAddress
+
+

+ ¸Þ¸ð¸® ÁÖ¼Ò ¶Ç´Â º¯¼ö. VarOrAddress°¡ MyVar¿Í °°Àº º¯¼öÀ̸é, º¯¼öÀÇ ¹®ÀÚ¿­ ¹öÆÛÀÇ ÁÖ¼Ò°¡ »ç¿ëµË´Ï´Ù. ÀÌ°ÍÀº º¸Åë &MyVar¸¦ °Ç³×´Â °Í°ú µ¿µîÇÏÁö¸¸, "&"¸¦ »ý·«ÇÏ¸é ¼öÇ༺´ÉÀÌ Çâ»óµÇ°í ¸ñÇ¥ ÁÖ¼Ò + ¿ÀÇÁ¼ÂÀÌ À¯È¿ÇÏ´Ù°í È®½ÅÇÒ ¼ö ÀÖ½À´Ï´Ù.

+

+ º¯¼ö¿¡ ¸ñÇ¥ ÁÖ¼Ò°¡ µé¾î ÀÖ´Ù¸é º¯¼ö ÂüÁ¶¸¦ °Ç³×Áö ¸¶½Ê½Ã¿À; ±×·² °æ¿ì, MyVar+0¿Í °°Àº Ç¥Çö½ÄÀ» °Ç³×½Ê½Ã¿À.

+
+ +
Offset
+

¸ñÇ¥ ÁÖ¼Ò¸¦ °áÁ¤Çϱâ À§ÇØ VarOrAddress¿¡ ´õÇØÁö´Â - ¹ÙÀÌÆ® ´ÜÀ§ - ¿ÀÇÁ¼Â.

+ +
Type
+
+

´ÙÀ½ ¹®ÀÚ¿­ Áß Çϳª (»ý·«Çϸé UPtrÀÌ ±âº»°ª):
+ UInt, Int, Int64, Short, UShort, Char, UChar, Double, Float, Ptr or UPtr

+

DllCall°ú ´Ù¸£°Ô, À̰͵éÀº ±âÈ£ ¹®ÀÚ¿­·Î »ç¿ëµÉ ¶§ ¹Ýµå½Ã µû¿ÈÇ¥·Î µÑ·¯¾ß ÇÕ´Ï´Ù.

+

ÀÚ¼¼ÇÑ °ÍÀº DllCall Types¸¦ ÂüÁ¶ÇϽʽÿÀ.

+
+ +
+ +

¹Ýȯ °ª

+

+¸ñÇ¥ ÁÖ¼Ò°¡ À¯È¿ÇÏÁö ¾ÊÀ¸¸é, ºó ¹®ÀÚ¿­ÀÌ ¹ÝȯµË´Ï´Ù. ±×·¸Áö¸¸, ¾î¶² ¹«È¿ÇÑ ÁÖ¼Ò´Â ±×´ë·Î ŽÁöÇÒ ¼ö ¾øÀ¸¹Ç·Î, ¿¹»óÄ¡ ¸øÇÑ ÇàÀ§¸¦ ¾ß±âÇÒ ¼ö ÀÖ½À´Ï´Ù.

+

+±×·¸Áö ¾ÊÀ¸¸é, ¹æ±Ý ¾º¿©Áø Ç׸ñÀÇ ¿À¸¥ÂÊ ÁÖ¼Ò°¡ ¹ÝȯµË´Ï´Ù. ÀÌ°ÍÀº ¿¹¸¦ µé¾î DllCall¿¡ »ç¿ëÇÒ ±¸Á¶Ã¼¿¡¼­ ´Ù¸¥ À¯ÇüÀÇ ¼ýÀÚ¸¦ ¿¬¼ÓÀûÀ¸·Î ¾µ ¶§ º¸Åë »ç¿ëµË´Ï´Ù.

+ +

ÃÑÆò

+

+Á¤¼ö°¡ ³Ê¹« Ä¿¼­ ÁöÁ¤µÈ Type¿¡ ¸ÂÁö ¾ÊÀ¸¸é, Á¦ÀÏ Áß¿äÇÑ ºñÆ®(MSB)°¡ ¹«½ÃµË´Ï´Ù; ¿¹, NumPut(257, var, 0, "Char")´Â ¼ýÀÚ 1À» ÀúÀåÇÕ´Ï´Ù.

+

+¸Å°³º¯¼ö°¡ ¼¼ °³¸¸ ÀÖÀ¸¸é, ¼¼ ¹ø° ¸Å°³º¯¼ö´Â Offset ¶Ç´Â TypeÀÌ µÉ ¼ö ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î, NumPut(x, var, "int")´Â À¯È¿ÇÕ´Ï´Ù.

+ +

°ü·Ã Ç׸ñ

+

+NumGet, DllCall, VarSetCapacity

+ + + + diff --git a/src/docs/commands/ObjAddRef.htm b/src/docs/commands/ObjAddRef.htm new file mode 100644 index 0000000..bc65323 --- /dev/null +++ b/src/docs/commands/ObjAddRef.htm @@ -0,0 +1,58 @@ + + + + +ObjAddRef() / ObjRelease() + + + + + + + + +

ObjAddRef() / ObjRelease() [AHK_L 53+]

+ +

°´Ã¼ÀÇ ÂüÁ¶ Ƚ¼ö¸¦ ÁÙÀ̰ųª ´Ã¸³´Ï´Ù.

+ +
ObjAddRef(Ptr)
ObjRelease(Ptr)
+

¸Å°³º¯¼ö

+
+ +
Ptr
+

°ü¸®µÇÁö ¾Ê´Â °´Ã¼ Æ÷ÀÎÅÍ ¶Ç´Â COM ÀÎÅÍÆäÀ̽º Æ÷ÀÎÅÍ.

+ +
+ +

¹Ýȯ °ª

+

ÀÌ ÇÔ¼öµéÀº »õ·Î¿î ÂüÁ¶ Ƚ¼ö¸¦ µ¹·ÁÁÝ´Ï´Ù. ÀÌ °ªÀº µð¹ö±ë ¸ñÀûÀ¸·Î¸¸ »ç¿ëÇØ¾ß ÇÕ´Ï´Ù.

+ +

°ü·Ã Ç׸ñ

+

+´ÙÀ½ ±ÛµéÀº COM¿¡ Àû¿ëµÉ ¶§ÀÇ ÂüÁ¶ Ƚ¼ö¸¦ ´Ù·ç°í ÀÖÁö¸¸, ÀϹÝÀûÀ¸·Î ¿ÀÅäÇÖÅ° °´Ã¼¿¡µµ Àû¿ëµÇ´Â Áß¿äÇÑ °³³ä°ú ±ÔÄ¢À» ¾ð±ÞÇÕ´Ï´Ù: IUnknown::AddRef, IUnknown::Release, ÂüÁ¶ Ƚ¼ö ±ÔÄ¢.

+ +

¿¹Á¦

+

ComObjConnect¸¦ ÂüÁ¶ÇϽʽÿÀ.

+ +
obj := Object()
+
+; ´ÙÀ½ µÎ ÁÙÀº µ¿µîÇÕ´Ï´Ù:
+ptr1 := Object(obj)
+ptr2 := ObjectToPointer(obj)
+
+ObjectToPointer(obj) {
+    if !IsObject(obj)
+        return ""
+    ptr := &obj
+    ObjAddRef(ptr)
+    return ptr
+}
+
+; Object() ¶Ç´Â ObjectToPointer()¸¦ ÅëÇÏ¿© ¿­¶÷µÈ Æ÷ÀÎÅÍ´Â °¢°¢ ¼öÀÛ¾÷À¸·Î Ç®¾îÁÖ¾î¾ß ÇÕ´Ï´Ù.
+; ±×·¡¾ß °´Ã¼°¡ ¿µ¿øÈ÷ ÇØÁ¦µÇ¸ç »ç¿ëµÈ ¸Þ¸ð¸®µµ µ¹·ÁÁÙ ¼ö ÀÖ½À´Ï´Ù.
+ObjRelease(ptr2)
+ObjRelease(ptr1)
+
+ + + diff --git a/src/docs/commands/ObjBindMethod.htm b/src/docs/commands/ObjBindMethod.htm new file mode 100644 index 0000000..2e1b3ec --- /dev/null +++ b/src/docs/commands/ObjBindMethod.htm @@ -0,0 +1,37 @@ + + + + +ObjBindMethod() + + + + + + + +

ObjBindMethod() [v1.1.20+]

+ +

ÁÖ¾îÁø °´Ã¼ÀÇ ¸Þ½îµå¸¦ È£ÃâÇÏ´Â BoundFunc object¸¦ »ý¼ºÇÕ´Ï´Ù.

+ +
BoundFunc := ObjBindMethod(Obj, Method, Params)
+ +

¸Å°³º¯¼ö

+
+ +
Obj
+

°´Ã¼.

+ +
Method
+

¸Þ½îµå À̸§.

+ +
Params
+

¸Å°³º¯¼ö °³¼ö.

+ +
+ +

³íÆò

+

ÀÚ¼¼ÇÑ °ÍÀº BoundFunc °´Ã¼¸¦ ÂüÁ¶ÇϽʽÿÀ.

+ + + diff --git a/src/docs/commands/OnClipboardChange.htm b/src/docs/commands/OnClipboardChange.htm new file mode 100644 index 0000000..a56edf6 --- /dev/null +++ b/src/docs/commands/OnClipboardChange.htm @@ -0,0 +1,92 @@ + + + + +OnClipboardChange + + + + + + + +

OnClipboardChange

+ +

¾îÇø®ÄÉÀ̼ÇÀÌ (½ºÅ©¸³Æ®µµ ¸¶Âù°¡Áö·Î) Ŭ¸³º¸µåÀÇ ³»¿ëÀ» º¯°æÇÒ ¶§¸¶´Ù (Á¸ÀçÇÑ´Ù¸é) À̸§ÀÌ OnClipboardChangeÀÎ ¶óº§ÀÌ ÀÚµ¿À¸·Î ±âµ¿µË´Ï´Ù. ÀÌ ¶óº§Àº ¶Ç ½ºÅ©¸³Æ®°¡ óÀ½ ½ÃÀÛÇÒ ¶§ ÇÑ ¹ø ½ÇÇàµË´Ï´Ù.

+

+³»Àå º¯¼ö A_EventInfo¿¡ ´ÙÀ½°ú °°ÀÌ ´ã°Ü ÀÖ½À´Ï´Ù:
+0 ÇöÀç Ŭ¸³º¸µå°¡ ºñ¾î ÀÖ½À´Ï´Ù;
+1 ÅؽºÆ®·Î Ç¥ÇöÀÌ °¡´ÉÇÑ °ÍÀÌ µé¾î ÀÖ½À´Ï´Ù (¿©±â¿¡´Â Ž»ö âÀ¸·ÎºÎÅÍ º¹»çµÈ ÆÄÀÏÀÌ Æ÷ÇԵ˴ϴÙ);
+2 ±×¸²°ú °°ÀÌ ÀüÇô ÅؽºÆ®°¡ ¾Æ´Ñ °ÍÀÌ µé¾î ÀÖ½À´Ï´Ù.

+

+´ÙÀ½ ¿¹Á¦´Â ÀÛµ¿ÇÏ´Â ½ºÅ©¸³Æ®ÀÔ´Ï´Ù. ½ÇÇàµÉ ¶§¸¶´Ù, °£·«ÇÏ°Ô °¢ Ŭ¸³º¸µåÀÇ º¯°æ¿¡ ´ëÇÏ¿© ÅøÆÁÀ» º¸¿©ÁÝ´Ï´Ù.

+ +
#Persistent
+return
+
+OnClipboardChange:
+ToolTip Clipboard data type: %A_EventInfo%
+Sleep 1000
+ToolTip  ; Turn off the tip.
+return
+ +  +

OnClipboardChange() [v1.1.20+]

+

+Ŭ¸³º¸µåÀÇ ³»¿ëÀÌ º¯°æµÉ ¶§¸¶´Ù ½ÇÇàµÉ ÇÔ¼ö ¶Ç´Â ÇÔ¼ö °´Ã¼¸¦ µî·ÏÇÕ´Ï´Ù.

+ +
OnClipboardChange(Func [, AddRemove])
+

¸Å°³º¯¼ö

+
+ +
Func
+

È£ÃâÇÒ ÇÔ¼ö À̸§ ¶Ç´Â ÇÔ¼ö °´Ã¼. ÇÔ¼öÀÇ ¸Å°³º¯¼ö¿Í ¹Ýȯ °ªÀº ¾Æ·¡¿¡ ±â¼úÇÕ´Ï´Ù.

+ +
AddRemove
+

´ÙÀ½ °ª Áß Çϳª:
+ 1 (±âº»°ª): ÀÌÀü¿¡ µî·ÏµÈ ÇÔ¼ö ´ÙÀ½¿¡ ÀÌ ÇÔ¼ö¸¦ È£ÃâÇÕ´Ï´Ù.
+ -1: ÀÌÀü¿¡ µî·ÏµÈ ÇÔ¼ö º¸´Ù ¸ÕÀú ÀÌ ÇÔ¼ö¸¦ È£ÃâÇÕ´Ï´Ù.
+ 0: ÀÌ ÇÔ¼ö¸¦ È£ÃâÇÏÁö ¾Ê½À´Ï´Ù.

+

+ OnClipboardChange ¶óº§ÀÌ Á¸ÀçÇϸé, ¾ðÁ¦³ª ¸ÕÀú È£ÃâµË´Ï´Ù.

+ +
+ +

Func

+
FunctionName(Type)
+
+
Type
+

´ÙÀ½ °ª Áß Çϳª°¡ ´ã°Ü ÀÖ½À´Ï´Ù:
+ 0 Ŭ¸³º¸µå°¡ ÇöÀç ºñ¾î ÀÖ½À´Ï´Ù;
+ 1 ÅؽºÆ®·Î Ç¥ÇöÇÒ ¼ö ÀÖ´Â °ÍÀÌ µé¾î ÀÖ½À´Ï´Ù (¿©±â¿¡´Â Ž»ö âÀ¸·ÎºÎÅÍ º¹»çµÈ ÆÄÀÏÀÌ Æ÷ÇԵ˴ϴÙ);
+ 2 ±×¸²°ú °°ÀÌ ÀüÇô ÅؽºÆ®°¡ ¾Æ´Ñ °ÍÀÌ µé¾î ÀÖ½À´Ï´Ù.

+ +
Return Value
+

+ ÀÌ°ÍÀÌ ¸¶Áö¸· ÇÔ¼ö ¶Ç´Â À¯ÀÏÇÑ OnClipboardChange ÇÔ¼ö¶ó¸é ¹Ýȯ°ªÀº ¹«½ÃµË´Ï´Ù. ±×·¸Áö ¾ÊÀ¸¸é, ÇÔ¼ö´Â 0 ¾Æ´Ñ °ªÀ» µ¹·ÁÁÖ¾î ¿¬À̾ ´Ù¸¥ ÇÔ¼ö°¡ È£ÃâµÇÁö ¸øÇϵµ·Ï ¸·½À´Ï´Ù.

+
+ +

¿¹Á¦

+

+´ÙÀ½ ¿¹Á¦´Â À§ÀÇ ¿¹Á¦¿Í µ¿µîÇÕ´Ï´Ù. ±×·¯³ª ÀÌ ÇÔ¼ö´Â ½ºÅ©¸³Æ®°¡ óÀ½ ½ÇÇàµÉ ¶§ È£ÃâµÇÁö ¾Ê½À´Ï´Ù; ¿ÀÁ÷ Ŭ¸³º¸µåÀÇ ³»¿ëÀÌ º¯°æµÉ ¶§¸¸ È£ÃâµË´Ï´Ù.

+
#Persistent
+OnClipboardChange("ClipChanged")
+return
+
+ClipChanged(Type) {
+    ToolTip Clipboard data type: %Type%
+    Sleep 1000
+    ToolTip  ; Turn off the tip.
+}
+ +

³íÆò

+

+OnClipboardChange ¶óº§ ¶Ç´Â ÇÔ¼ö°¡ ÀÌ¹Ì ½ÇÇàµÇ°í ÀÖ´Â µ¿¾È¿¡ Ŭ¸³º¸µå°¡ º¯°æµÇ¸é, ±× °íÁö À̺¥Æ®´Â Æó±âµË´Ï´Ù. ÀÌ°ÍÀÌ ¹Ù¶÷Á÷ÇÏÁö ¾Ê´Ù¸é, CriticalÀ» ¶óº§ÀÇ Ã¹ ÁÙ¿¡ ÁöÁ¤ÇϽʽÿÀ. ±×·¸Áö¸¸, ÀÌ°ÍÀº ¶Ç OnClipboardChange ¾²·¹µå°¡ ½ÇÇà ÁßÀÎ µ¿¾È¿¡ ÀϾ´Â ´Ù¸¥ ¾²·¹µå¸¦ (¿¹¸¦ µé¾î ÇÖÅ° ´©¸§À») ¹öÆÛó¸®/¿¬±âÇÕ´Ï´Ù.

+

+½ºÅ©¸³Æ® ÀÚü°¡ Ŭ¸³º¸µå¸¦ ¹Ù²Ù¸é, ±×ÀÇ OnClipboardChange ¶óº§ ¶Ç´Â ÇÔ¼ö´Â ÀüÇüÀûÀ¸·Î Áï½Ã ½ÇÇàµÇÁö ¾Ê½À´Ï´Ù; Áï, Ŭ¸³º¸µå¸¦ º¯°æÇÑ ¸í·É¾î ¹Ù·Î ¾Æ·¡ÀÇ ¸í·É¾îµéÀÌ ¸ÕÀú ½ÇÇàµÉ °¡´É¼ºÀÌ ³ô½À´Ï´Ù. ÀÌ ¶óº§À̳ª ÇÔ¼ö¸¦ °­Á¦·Î Áï½Ã ½ÇÇàÇÏ·Á¸é, Ŭ¸³º¸µå¸¦ º¯°æÇÑ ÈÄ¿¡ Sleep 20¿Í °°ÀÌ Âª°Ô Áö¿¬ÇϽʽÿÀ.

+ +

°ü·Ã Ç׸ñ

+

Clipboard, OnExit, OnMessage(), RegisterCallback()

+ + + diff --git a/src/docs/commands/OnExit.htm b/src/docs/commands/OnExit.htm new file mode 100644 index 0000000..6c9fb76 --- /dev/null +++ b/src/docs/commands/OnExit.htm @@ -0,0 +1,154 @@ + + + + +OnExit + + + + + + + +

OnExit

+ +

+½ºÅ©¸³Æ®°¡ Á¾·áÇÒ ¶§ ÀÚµ¿À¸·Î ½ÇÇàÇÒ ¼­ºê·çƾ ¶Ç´Â ÇÔ¼ö¸¦ ÁöÁ¤ÇÕ´Ï´Ù.

+ +
OnExit [, Label]
+OnExit(Func [, AddRemove])  ; Requires [v1.1.20+]
+

¸Å°³º¯¼ö

+
+ +
Label
+

»ý·«Çϸé, ÀÌÀü¿¡ µî·ÏµÈ ¶óº§ÀÌ µî·Ï ÇØÁ¦µË´Ï´Ù. ±×·¸Áö ¾ÊÀ¸¸é ½ºÅ©¸³Æ®°¡ ¾î¶² ¹æ½ÄÀ¸·Îµç Á¾·áÇÒ ¶§ ±×ÀÇ ³»¿ëÀÌ (»õ ¾²·¹µå·Î) ½ÇÇàµÉ ¶óº§ÀÇ À̸§À» ÁöÁ¤ÇϽʽÿÀ.

+ +
Func
+

½ºÅ©¸³Æ®°¡ Á¾·áÇÒ ¶§ È£ÃâÇÒ ÇÔ¼ö À̸§ ¶Ç´Â ÇÔ¼ö °´Ã¼. ÀÌ ÇÔ¼ö´Â ¼±ÅÃÀûÀ¸·Î ¾Æ·¡¿Í °°ÀÌ ¸Å°³º¯¼ö¸¦ Á¤ÀÇÇÒ ¼ö ÀÖ½À´Ï´Ù. OnExit ÇÔ¼ö°¡ 0 ¾Æ´Ñ Á¤¼ö °ªÀ» µ¹·Á ÁÖ¸é, ½ºÅ©¸³Æ®´Â Á¾·áÇÏÁö ¾Ê½À´Ï´Ù. ±×·¸Áö ¾ÊÀ¸¸é, ½ºÅ©¸³Æ®´Â ¸ðµç µî·ÏµÈ ÇÔ¼ö¸¦ È£ÃâÇÑ ÈÄ¿¡ Á¾·áÇÕ´Ï´Ù.

+ +
ExitFunc(ExitReason, ExitCode)
+ +
AddRemove
+

´ÙÀ½ °ª Áß Çϳª:
+ 1 (±âº»°ª): ÀÌÀü¿¡ µî·ÏµÈ ÇÔ¼öµé ´ÙÀ½¿¡ ÀÌ ÇÔ¼ö¸¦ È£ÃâÇÕ´Ï´Ù.
+ -1: ÀÌÀü¿¡ µî·ÏµÈ ÇÔ¼öº¸´Ù ¸ÕÀú ÀÌ ÇÔ¼ö¸¦ È£ÃâÇÕ´Ï´Ù.
+ 0: ÇÔ¼ö¸¦ È£ÃâÇÏÁö ¾Ê½À´Ï´Ù.

+

¶óº§(¼­ºê·çƾ)ÀÌ µî·ÏµÇ¾î ÀÖÀ¸¸é, ±×°ÍÀÌ ¾ðÁ¦³ª ¸ÕÀú È£ÃâµË´Ï´Ù.

+ +
+ +

³íÆò

+

Áß¿ä: ½ºÅ©¸³Æ®¸¦ Á¾·áÇÏ´Â ´ë½Å¿¡ ÁöÁ¤µÈ ¼­ºê·çƾÀÌ È£ÃâµÇ±â ¶§¹®¿¡, ±× ¼­ºê·çƾÀº Á¾·á°¡ ÇÊ¿äÇÏ¸é ¹Ýµå½Ã ExitApp ¸í·É¾î¸¦ »ç¿ëÇØ¾ß ÇÕ´Ï´Ù. [v1.1.20+]: »õ ½ºÅ©¸³Æ®´Â ¼­ºê·çƾ ´ë½Å¿¡ ÇÔ¼ö¸¦ »ç¿ëÇØ¾ß ÇÕ´Ï´Ù -- ÀÌ·¸°Ô ÇÏ¸é ¿ì¹ßÀûÀ¸·Î Á¾·á°¡ ºÒ°¡´ÉÇÑ ½ºÅ©¸³Æ®¸¦ ¸¸µé¾î ³¾ À§ÇèÀ» ÁÙ¿© ÁÝ´Ï´Ù. ±×¸®°í Exit ¶Ç´Â ExitApp¿¡ °Ç³Ù Á¾·á Äڵ尡 º¸Á¸µÈ´Ù´Â È®½ÅÀ» ÇÒ ¼ö ÀÖ½À´Ï´Ù.

+

+[v1.1.20+]: ¾ó¸¶µçÁö OnExit ÇÔ¼ö¸¦ µî·ÏÇÒ ¼ö ÀÖ½À´Ï´Ù. ¶óº§ (¼­ºê·çƾ)µµ µî·ÏµÇ¾î ÀÖ´Ù¸é, ÇÔ¼ö´Â ¼­ºê·çƾÀÌ ExitApp¸¦ È£ÃâÇÑ µÚ¿¡ È£ÃâµË´Ï´Ù. OnExit ÇÔ¼ö´Â º¸Åë ExitApp¸¦ È£ÃâÇÏ¸é ¾ÈµË´Ï´Ù; ±×·² °æ¿ì, ½ºÅ©¸³Æ®´Â Áï½Ã Á¾·áÇÕ´Ï´Ù.

+

+¾î¶² ¼ö´ÜÀ¸·Îµç ½ºÅ©¸³Æ®°¡ Á¾·áÇÒ ¶§ OnExit ¼­ºê·çƾÀÌ È£ÃâµË´Ï´Ù (´Ü, "End Task"¿Í °°Àº °ÍÀ¸·Î Á¾·áµÇ´Â °æ¿ì´Â ¿¹¿ÜÀÔ´Ï´Ù). ¶ÇÇÑ #SingleInstance ±×¸®°í Reload ¸í·É¾î°¡ ÀÌÀüÀÌ ½Çü¸¦ Á¾·áÇϵµ·Ï ¿ä±¸ÇÒ ¶§¸¶´Ù È£ÃâµË´Ï´Ù.

+

+½ºÅ©¸³Æ®´Â OnMessage(0x11, "WM_QUERYENDSESSION")¸¦ ÅëÇÏ¿© ½Ã½ºÅÛ ¼Ë´Ù¿îÀ̳ª ·Î±×¿ÀÇÁ¸¦ ŽÁöÇÒ ¼ö ÀÖ°í ¼±ÅÃÀûÀ¸·Î Ãë¼ÒÇÒ ¼öµµ ÀÖ½À´Ï´Ù.

+

+ +OnExit ¾²·¹µå´Â #MaxThreads¸¦ ÁؼöÇÏÁö ¾Ê½À´Ï´Ù. + +(ÇÊ¿äÇÏ¸é ¾ðÁ¦µçÁö ±âµ¿ÇÕ´Ï´Ù). + +°Ô´Ù°¡, ½ÇÇà ÁßÀÎ µ¿¾È, ´Ù¸¥ ¾²·¹µå·Î ÀÎÅÍ·´Æ® ÇÒ ¼ö ¾ø½À´Ï´Ù. ¿©±â¿¡´Â ÇÖÅ°, ¸ÂÃã ¸Þ´º Ç׸ñ, ±×¸®°í ŸÀÌ¸Ó ¼­ºê·çƾÀÌ Æ÷ÇԵ˴ϴÙ. + +±×·¸Áö¸¸, »ç¿ëÀÚ°¡ ¸ÞÀÎ ¸Þ´º³ª Æ®·¹ÀÌ ¸Þ´º·ÎºÎÅÍ ExitÀ» ¼±ÅÃÇß´Ù¸é ÀÎÅÍ·´Æ® µË´Ï´Ù (±×¸®°í ½ºÅ©¸³Æ®´Â Á¾·áÇÕ´Ï´Ù). ±×·¸Áö ¾ÊÀ¸¸é ½ºÅ©¸³Æ®¿¡ Reload ¶Ç´Â #SingleInstance °á°ú·Î Á¾·áÇϵµ·Ï ¿ä±¸ÇÕ´Ï´Ù. ÀÌ ¶§¹®¿¡ OnExit ¼­ºê·çƾÀº »¡¸® ³¡³ªµµ·Ï ¼³°èÇØ¾ß ÇÕ´Ï´Ù. ´Ü, »ç¿ëÀÚ°¡ ¹«½¼ ÀÏÀÌ ÁøÇàµÇ´ÂÁö ¾Ë°í ÀÖ´Â °æ¿ì´Â ¿¹¿ÜÀÔ´Ï´Ù.

+

+OnExit ¾²·¹µå°¡ ½ÇÇà½Ã°£ ¿¡·¯ °°Àº ½ÇÆÐ Á¶°ÇÀ» ¸¸³ª¸é, ½ºÅ©¸³Æ®´Â Á¾·áÇÕ´Ï´Ù. ÀÌ ¶§¹®¿¡ °áÇÔÀÌ ÀÖ´Â OnExit ¼­ºê·çƾÀº ½ºÅ©¸³Æ®¸¦ Á¾·áÇÏÁö ¸øÇÏ°Ô ¸·À» ¼ö ¾ø½À´Ï´Ù.

+

+Exit ¶Ç´Â ExitApp ¸í·É¾î ¶§¹®¿¡, Á¾·á Äڵ带 ÁöÁ¤ÇÑ OnExit ¼­ºê·çƾÀÌ ±âµ¿µÇ¸é, v1.1.19 ÀÌÀü¿¡¼­ ±× ÄÚµå´Â ¹«½ÃµÇ°í ´õ ÀÌ»ó »ç¿ëÇÒ ¼ö ¾ø½À´Ï´Ù. + +[v1.1.20+]¿¡¼­ ÃÖÃÊÀÇ Á¾·á Äڵ尡 »ç¿ëµË´Ï´Ù. ´Ü, ExitApp È£ÃâÇÏ¿© »õ Á¾·á ÄÚµå·Î ¿À¹ö¶óÀ̵åÇÑ °æ¿ì´Â ¿¹¿ÜÀÔ´Ï´Ù.

+

+OnExit ¼­ºê·çƾÀÌ Á¾·á ½Ãµµ·Î È£ÃâµÉ ¶§¸¶´Ù, SendMode¿Í °°Àº ¼³Á¤¿¡ ´ëÇÑ ±âº» °ªµéÀ» °¡Áö°í »õ·Ó°Ô ½ÃÀÛÇÕ´Ï´Ù. ÀÌ·± ±âº»°ªµéÀº ÀÚµ¿-½ÇÇà ¼½¼Ç¿¡¼­ ¹Ù²Ü ¼ö ÀÖ½À´Ï´Ù.

+

+³»Àå ÇÔ¼ö A_ExitReason´Â ºñ¾î ÀÖ½À´Ï´Ù. ´Ü, OnExit ¼­ºê·çƾÀÌ ÇöÀç ½ÇÇà ÁßÀ̰ųª ÀÌÀüÀÌ Á¾·á ½Ãµµ·Î ÀÎÇØ Àû¾îµµ ÇÑ ¹ø È£ÃâµÈ °æ¿ì´Â ¿¹¿ÜÀÔ´Ï´Ù. ºñ¾î ÀÖÁö ¾ÊÀ¸¸é, ´ÙÀ½ ´Ü¾î Áß ÇϳªÀÔ´Ï´Ù:

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Logoff»ç¿ëÀÚ°¡ ·Î±×¿ÀÇÁ ÁßÀÔ´Ï´Ù.
Shutdown¿¹¸¦ µé¾î Shutdown ¸í·É¾î·Î ½Ã½ºÅÛÀÌ ´ÝÈ÷°í ÀÖ´Â ÁßÀ̰ųª Àç½ÃÀÛ ÁßÀÔ´Ï´Ù.
Close½ºÅ©¸³Æ®¿¡ WM_CLOSE ¶Ç´Â WM_QUIT ¸Þ½ÃÁö°¡ Àü¼ÛµÇ¾ú½À´Ï´Ù. ½ºÅ©¸³Æ®¿¡ ½É°¢ÇÑ ¿¡·¯°¡ ÀÖ½À´Ï´Ù. ¶Ç´Â ´Ù¸¥ ¾î¶² ¹æ¹ýÀ¸·Î ´ÝÇû½À´Ï´Ù. ÀÌ ¸ðµç °ÍÀÌ ºñÁ¤»óÀûÀÌÁö¸¸, WM_CLOSE´Â ½ºÅ©¸³Æ®ÀÇ ¸ÞÀΠâ¿¡ »ç¿ëµÈ WinClose¿¡ ÀÇÇØ ¾ß±âµÉ ¼öµµ ÀÖ½À´Ï´Ù. À̸¦ ¹æÁöÇÏ·Á¸é, ¸ÞÀΠâÀ» Send, !{F4}·Î Ãë¼ÒÇϽʽÿÀ.
Error½ÇÇà½Ã°£ ¿¡·¯°¡ ÇÖÅ°°¡ ¾ø°í ¿µ¼ÓÀûÀÌ ¾Æ´Ñ ½ºÅ©¸³Æ®¿¡ ÀϾ½À´Ï´Ù. ½ÇÇà½Ã°£ ¿¡·¯ÀÇ ¿¹´Â Run/RunWait°¡ ÁöÁ¤µÈ ÇÁ·Î±×·¥À̳ª ¹®¼­¸¦ ±âµ¿½ÃÅ°Áö ¸øÇÏ´Â °æ¿ìÀÔ´Ï´Ù.
Menu»ç¿ëÀÚ°¡ ¸ÞÀΠâÀÇ ¸Þ´º ¶Ç´Â Ç¥ÁØ Æ®·¹ÀÌ ¸Þ´º·ÎºÎÅÍ ·ÎºÎÅÍ Exit¸¦ ¼±ÅÃÇß½À´Ï´Ù.
ExitExit ¶Ç´Â ExitApp ¸í·É¾î°¡ »ç¿ëµÇ¾ú½À´Ï´Ù (¸ÂÃã ¸Þ´º Ç׸ñ Æ÷ÇÔ).
Reload½ºÅ©¸³Æ®°¡Reload ¸í·É¾î³ª ¸Þ´º Ç׸ñÀ» ÅëÇÏ¿© ÀçÀûÀç ÁßÀÔ´Ï´Ù.
Single#SingleInstanceÀÇ °á°ú·Î ½ºÅ©¸³Æ®°¡ ÀÚ½ÅÀÇ »õ ½Çü·Î ±³Ã¼ ÁßÀÔ´Ï´Ù.
+ +

°ü·Ã Ç׸ñ

+

OnMessage(), RegisterCallback(), OnClipboardChange, ExitApp, Shutdown, #Persistent, Threads, Gosub, Return, Menu

+ +

¿¹Á¦

+

+´ÙÀ½ ¿¹Á¦´Â #Persistent¸¦ »ç¿ëÇÏ¿© ½ºÅ©¸³Æ®°¡ ÀÚµ¿À¸·Î Á¾·áÇÏ´Â °ÍÀ» ¸·½À´Ï´Ù. ½ºÅ©¸³Æ®¸¦ ½ÇÇàÇÑ ÈÄ¿¡, Æ®·¹ÀÌ ¾ÆÀÌÄÜÀ» ¿ìŬ¸¯ÇÏ°í ExitÀ» Ŭ¸¯ÇØ º¸¸é OnExit ¶Ç´Â ÇÔ¼ö°¡ ÀÛµ¿ÇÏ´ÂÁö °ËÁõÇØ º¼ ¼ö ÀÖ½À´Ï´Ù. ±× ´ÙÀ½ "Yes"¸¦ Ŭ¸¯ÇÏ¸é ½ºÅ©¸³Æ®°¡ Á¾·áÇÏ°í "No"¸¦ Ŭ¸¯ÇÏ¸é ½ÇÇàÀ» ±×´ë·Î À¯ÁöÇÕ´Ï´Ù.

+ +
#Persistent
+OnExit, ExitSub
+return
+
+ExitSub:
+if A_ExitReason not in Logoff,Shutdown  ; ÀÌ ÁÙ¿¡¼­ ½°Ç¥ µÑ·¹¿¡ ½ºÆäÀ̽º¸¦ ÇÇÇϽʽÿÀ.
+{
+    MsgBox, 4, , Á¾·áÇÏ°í ½Í½À´Ï±î?
+    IfMsgBox, No
+        return
+}
+ExitApp  ; OnExit ¼­ºê·çƾÀÌ ÀÖ´Â ½ºÅ©¸³Æ®´Â Á¾·áÇÏÁö ¾Ê½À´Ï´Ù. ´Ü, ¼­ºê·çƾÀÌ ExitApp¸¦ »ç¿ëÇÏ´Â °æ¿ì´Â ¿¹¿ÜÀÔ´Ï´Ù.
+  +
#Persistent
+
+; Á¾·á½Ã¿¡ È£ÃâµÉ ÇÔ¼ö¸¦ µî·ÏÇÕ´Ï´Ù:
+OnExit("ExitFunc")
+
+; Á¾·á½Ã¿¡ È£Ãâµ¹ °´Ã¼¸¦ µî·ÏÇÕ´Ï´Ù:
+OnExit(ObjBindMethod(MyObject, "Exiting"))
+
+ExitFunc(ExitReason, ExitCode)
+{
+    if ExitReason not in Logoff,Shutdown
+    {
+        MsgBox, 4, , ³¡³»°í ½Í½À´Ï±î?
+        IfMsgBox, No
+            return 1  ; OnExit ÇÔ¼ö´Â Á¾·á¸¦ ¸·±â À§ÇØ ¹Ýµå½Ã 0 ¾Æ´Ñ °ªÀ» µ¹·ÁÁÖ¾î¾ß ÇÕ´Ï´Ù.
+    }
+    ; ExitApp¸¦ È£ÃâÇÏÁö ¸¶½Ê½Ã¿À -- ±×·¯¸é ´Ù¸¥ OnExit ÇÔ¼ö°¡ È£ÃâµÇÁö ¸øÇÕ´Ï´Ù.
+}
+
+class MyObject
+{
+    Exiting()
+    {
+        MsgBox, Á¾·áÇϱâ Àü¿¡ MyObject°¡ û¼Ò ÁßÀÔ´Ï´Ù...
+        /*
+        this.SayGoodbye()
+        this.CloseNetworkConnections()
+        */
+    }
+}
+ + + diff --git a/src/docs/commands/OnMessage.htm b/src/docs/commands/OnMessage.htm new file mode 100644 index 0000000..f003808 --- /dev/null +++ b/src/docs/commands/OnMessage.htm @@ -0,0 +1,289 @@ + + + + +OnMessage + + + + + + + +

OnMessage()

+ +

+½ºÅ©¸³Æ®°¡ ÁöÁ¤µÈ ¸Þ½ÃÁö¸¦ ¹ÞÀ» ¶§ ÀÚµ¿À¸·Î È£ÃâÇÒ ÇÔ¼ö ¶Ç´Â ÇÔ¼ö °´Ã¼¸¦ ÁöÁ¤ÇÕ´Ï´Ù .

+
OnMessage(MsgNumber [, Function, MaxThreads])
+

¸Å°³º¯¼ö

+
+ +
MsgNumber
+

°¨½Ã ¶Ç´Â ÁúÀÇÇÒ ¸Þ½ÃÁö ¹øÈ£, ¹üÀ§´Â 0ºÎÅÍ 4294967295 (0xFFFFFFFF)±îÁö. ½Ã½ºÅÛ ¸Þ½ÃÁö (Áï, 0x400 ¾Æ·¡ÀÇ ¸Þ½ÃÁö)¸¦ °¨½ÃÇÏ°í ½ÍÁö ¾ÊÀ¸¸é, °¡´ÉÇϸé 4096 (0x1000)º¸´Ù ´õ Å« ¹øÈ£¸¦ °í¸£´Â °ÍÀÌ Á¦ÀÏ ÁÁ½À´Ï´Ù. ÀÌ·¸°Ô ÇÏ¸é ¿ÀÅäÇÖÅ°¿¡ ³»ºÎÀûÀ¸·Î »ç¿ëµÇ´Â ¸Þ½ÃÁö¸¦ °£¼·ÇÒ ±âȸ°¡ ÁÙ¾îµì´Ï´Ù.

+ +
Function
+

ÇÔ¼öÀÇ À̸§, [v1.1.20+]¿¡¼­´Â ÇÔ¼ö °´Ã¼. ±âÈ£ ±×´ë·ÎÀÇ ÇÔ¼ö À̸§À» °Ç³×·Á¸é, µû¿ÈÇ¥·Î µÑ·¯ ½Î¾ß ÇÕ´Ï´Ù.

+

+ ¾î¶»°Ô ÇÔ¼ö°¡ µî·ÏµÇ´Â°¡ ±×¸®°í OnMessageÀÇ ¹Ýȯ °ªÀº ÀÌ ¸Å°³º¯¼ö°¡ ¹®ÀÚ¿­Àΰ¡ ¾Æ´Ï¸é ÇÔ¼ö °´Ã¼Àΰ¡¿¡ ´Þ·Á ÀÖ½À´Ï´Ù. ´õ ÀÚ¼¼ÇÑ °ÍÀº ÇÔ¼ö À̸§ vs °´Ã¼¸¦ ÂüÁ¶ÇϽʽÿÀ.

+
+ +
MaxThreads [v1.0.47+]
+

ÀÌ Á¤¼ö´Â º¸Åë »ý·«µË´Ï´Ù. ÀÌ °æ¿ì °¨½Ã ÇÔ¼ö´Â ÇÑ ¹ø¿¡ ÇÑ ¾²·¹µå·Î Á¦Çѵ˴ϴÙ. ÀÌ°ÍÀÌ º¸Åë Á¦ÀÏ ÁÁ½À´Ï´Ù. ±×·¸Áö ¾ÊÀ¸¸é ½ºÅ©¸³Æ®°¡ °¨½Ã ÇÔ¼ö°¡ ÀÚ½ÅÀ» È£ÃâÇÏ¸é ½Ã°£ ¼ø¼­°¡ ¾û¸ÁÀΠä·Î ¸Þ½ÃÁöµéÀ» ó¸®Çϱ⠶§¹®ÀÔ´Ï´Ù. ±×·¯¹Ç·Î, MaxThreads¿¡ ´ëÇÑ ´ë¾ÈÀ¸·Î¼­, ¾Æ·¡¿¡ ±â¼úÇÏ´Â °Íó·³ CriticalÀ» »ç¿ëÀ» °í·ÁÇØ º¸½Ê½Ã¿À.

+

+ [v1.1.20+]: ±âº»°ªÀ¸·Î, ¿©·¯ ÇÔ¼ö°¡ ÇϳªÀÇ MsgNumber¿¡ µî·ÏµÇ¾î ÀÖÀ¸¸é, µî·ÏµÈ ¼ø¼­´ë·Î È£ÃâµË´Ï´Ù. ÀÌÀü¿¡ µî·ÏµÈ ÇÔ¼öº¸´Ù ¸ÕÀú È£ÃâµÉ ÇÔ¼ö¸¦ µî·ÏÇÏ·Á¸é, MaxThreads¿¡ À½¼ö¸¦ ÁöÁ¤ÇϽʽÿÀ. ¿¹¸¦ µé¾î, OnMessage(Msg, Fn, -2)´Â ÀÌÀü¿¡ Msg¿¡ µî·ÏµÈ ´Ù¸¥ ¾î¶² ÇÔ¼öº¸´Ùµµ ¸ÕÀú FnÀ» È£ÃâµÇµµ·Ï µî·ÏÇÕ´Ï´Ù. ±×¸®°í Fn¿¡ ÃÖ´ë 2 °³ÀÇ ¾²·¹µå¸¦ Çã¿ëÇÕ´Ï´Ù. ±×·¸Áö¸¸, ±× ÇÔ¼ö°¡ ÀÌ¹Ì µî·ÏµÇ¾î ÀÖÀ¸¸é, µî·ÏÀ» ÇØÁ¦ÇÏ°í ´Ù½Ã Àçµî·Ï ÇÏÁö ¾ÊÀº ÇÑ ¼ø¼­°¡ ¹Ù²îÁö ¾Ê½À´Ï´Ù.

+ +
+ +

ÇÔ¼ö À̸§ vs ÇÔ¼ö

+

OnMessageÀÇ ¹Ýȯ °ª°ú ÇàÀ§´Â Function ¸Å°³º¯¼ö°¡ ÇÔ¼ö À̸§Àΰ¡ ¾Æ´Ï¸é °´Ã¼Àΰ¡¿¡ µû¶ó ´Ù¸¨´Ï´Ù.

+ +

ÇÔ¼ö À̸§

+

+ÇÏÀ§ ȣȯÀ» À§ÇØ, °¢°¢ÀÇ À¯ÀÏÇÑ MsgNumber¸¦ °¨½ÃÇÏ·Á¸é ±â²¯ÇØ¾ß ÇÑ °³ÀÇ ÇÔ¼ö¸¸ À̸§À¸·Î µî·ÏÇÒ ¼ö ÀÖ½À´Ï´Ù -- ÀÌ°ÍÀ» "legacy" °¨½Ã¶ó°í ºÎ¸¨´Ï´Ù.

+

+legacy °¨½Ã ÇÔ¼ö°¡ óÀ½ µî·ÏµÇ¸é, ÀÌÀü¿¡ µî·ÏµÈ °¨½Ã ÇÔ¼öµé ¾Õ¿¡ È£ÃâµÉÁö µÚ¿¡ È£ÃâµÉÁö´Â MaxThreads ¸Å°³º¯¼ö¿¡ ´Þ·Á ÀÖ½À´Ï´Ù. ÀÌ °¨½Ã ÇÔ¼ö°¡ ´Ù¸¥ ÇÔ¼ö¸¦ È£ÃâÇϵµ·Ï ¾÷µ¥ÀÌÆ®ÇÏ´õ¶óµµ ¸ÕÀú µî·ÏÇØÁ¦ ÇÏÁö ¾Ê´Â ÇÑ ¼ø¼­¿¡ ¿µÇâÀ» ÁÖÁö ¾Ê½À´Ï´Ù.

+

+´ÙÀ½ ÄÚµå´Â MsgNumber¿¡ ´ëÇÏ¿© ÇöÀç legacy °¨½Ã ÇÔ¼ö¸¦ µî·ÏÇϰųª ¾÷µ¥ÀÌÆ®ÇÕ´Ï´Ù (º¯¼ö¸¦ °Ç³Ù´Ù¸é µû¿ÈÇ¥´Â »ý·«ÇÕ´Ï´Ù):

+ +
Name := OnMessage(MsgNumber, "FunctionName")
+ +

¹Ýȯ °ªÀº ´ÙÀ½ Áß ÇϳªÀÔ´Ï´Ù:

+ +

+´ÙÀ½Àº MsgNumber¿¡ ´ëÇÏ¿© ÇöÀçÀÇ legacy °¨½ÃÀÚ¸¦ (ÀÖ´Ù¸é) µî·ÏÀ» ÇØÁ¦ÇÏ°í ±×ÀÇ À̸§À» µ¹·ÁÁÝ´Ï´Ù (¾øÀ¸¸é ºó °ªÀ» µ¹·ÁÁÜ):

+ +
Name := OnMessage(MsgNumber, "")
+

+´ÙÀ½Àº MsgNumber¿¡ ´ëÇÏ¿© ÇöÀçÀÇ legacy °¨½ÃÀÚÀÇ À̸§À» µ¹·ÁÁÝ´Ï´Ù (¾ø´Ù¸é ºó °ªÀ» µ¹·ÁÁÜ):

+ +
Name := OnMessage(MsgNumber)
+ +

ÇÔ¼ö °´Ã¼

+

+ (Á¤»ó ÇÔ¼ö¸¦ Æ÷ÇÔÇÏ¿©) °¹¼ö¿¡ »ó°ü¾øÀÌ ¾ó¸¶µçÁö ÇÔ¼ö °´Ã¼´Â ÁÖ¾îÁø MsgNumber¸¦ °¨½ÃÇÒ ¼ö ÀÖ½À´Ï´Ù.

+

+´ÙÀ½ µÎ ÁÙÀº ÀÌÀü¿¡ µî·ÏÇÑ ÇÔ¼öµé ´ÙÀ½¿¡ È£ÃâµÉ ÇÔ¼ö °´Ã¼¸¦ µî·ÏÇÕ´Ï´Ù:

+ +
+OnMessage(MsgNumber, FuncObj)     ; Option 1
+OnMessage(MsgNumber, FuncObj, 1)  ; Option 2 (MaxThreads = 1)
+
+

+´ÙÀ½Àº ÀÌÀü¿¡ µî·ÏµÈ ÇÔ¼öº¸´Ù ¸ÕÀú È£ÃâµÉ ÇÔ¼ö °´Ã¼¸¦ µî·ÏÇÕ´Ï´Ù:

+ +
OnMessage(MsgNumber, FuncObj, -1)
+

+ÇÔ¼ö °´Ã¼¸¦ µî·Ï ÇØÁ¦ÇÏ·Á¸é MaxThreads¿¡ 0À» ÁöÁ¤ÇϽʽÿÀ:

+
OnMessage(MsgNumber, FuncObj, 0)
+ +

½ÇÆÐ

+

½ÇÆд FunctionÀÌ ´ÙÀ½°ú °°Àº °æ¿ì¿¡ ÀϾ´Ï´Ù:

+
    +
  1. °´Ã¼°¡ ¾Æ´Ï°Å³ª, »ç¿ëÀÚ-Á¤ÀÇ ÇÔ¼öÀÇ À̸§ ¶Ç´Â ºó¹®ÀÚ¿­ÀÔ´Ï´Ù;
  2. +
  3. ¸Å°³º¯¼ö¸¦ ´Ù¼¸ °³ ÀÌ»ó ¿ä±¸ÇÑ´Ù°í ¾Ë·ÁÁ® ÀÖ½À´Ï´Ù
  4. +
  5. ¶Ç´Â v1.0.48.05 ÀÌÀü¿¡¼­, ByRef ¶Ç´Â ¼±ÅÃÀû ¸Å°³º¯¼ö¸¦ °¡Áö°í ÀÖ½À´Ï´Ù.
  6. +
+

+v1.1.19.03 ÀÌÀü¿¡¼­ ½ÇÆд ÀÌ¹Ì 500 °³ÀÇ ¸Þ½ÃÁö¸¦ °¨½Ã ÁßÀε¥ ½ºÅ©¸³Æ®°¡ »õ ¸Þ½ÃÁö¸¦ °¨½ÃÇÏ·Á°í ½ÃµµÇÏ´Â °æ¿ì¿¡µµ ÀϾ´Ï´Ù.

+

+FunctionÀÌ °´Ã¼À̸é, ½ÇÆнà ¿¹¿Ü¸¦ ´øÁý´Ï´Ù. ±×·¸Áö ¾ÊÀ¸¸é, ºó ¹®ÀÚ¿­À» µ¹·ÁÁÝ´Ï´Ù.

+ +

ÇÔ¼öÀÇ ¸Å°³º¯¼ö

+

+¿©·¯ ¸Þ½ÃÁö¸¦ °¨½ÃÇϵµ·Ï ÇÒ´çµÈ ÇÔ¼ö´Â ÃÖ´ë ³× °³±îÁö ¸Å°³º¯¼ö¸¦ ¹ÞÀ» ¼ö ÀÖ½À´Ï´Ù:

+ +
MyMessageMonitor(wParam, lParam, msg, hwnd)
+{
+    ... body of function...
+}
+

+¸Å°³º¯¼ö¿¡ °Ç³Ù À̸§¿¡ »ó°ü ¾øÀÌ, ´ÙÀ½ Á¤º¸°¡ ¼ø¼­´ë·Î ¸Å°³º¯¼ö¿¡ ÇÒ´çµË´Ï´Ù.:

+

+¸Å°³º¯¼ö #1: ¸Þ½ÃÁöÀÇ WPARAM °ª.
+¸Å°³º¯¼ö #2: ¸Þ½ÃÁöÀÇ LPARAM °ª.
+¸Å°³º¯¼ö #3: ¸Þ½ÃÁö ¹øÈ£, ÇÔ¼ö°¡ ¿©·¯ ¸Þ½ÃÁö¸¦ °¨½ÃÇÒ ¶§ À¯¿ëÇÕ´Ï´Ù.
+¸Å°³º¯¼ö #4: ¸Þ½ÃÁö°¡ Àü¼ÛµÈ âÀ̳ª ÄÜÆ®·ÑÀÇ HWND (À¯ÀÏÇÑ ID). HWND´Â ahk_id¿Í ÇÔ²² »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù.

+

+WPARAM ±×¸®°í LPARAMÀº ½ºÅ©¸³Æ®ÀÇ ½ÇÇà ÆÄÀÏÀÌ 32-ºñÆ®ÀÎÁö 64-ºñÆ®ÀÎÁö¿¡ µû¶ó ºÎÈ£ ¾ø´Â 32-ºñÆ® Á¤¼öÀ̰ųª (0ºÎÅÍ 232-1±îÁö) ¶Ç´Â ºÎÈ£ ÀÖ´Â 64-ºñÆ® Á¤¼öÀÔ´Ï´Ù (-263ºÎÅÍ 263-1±îÁö). +32-ºñÆ® ½ºÅ©¸³Æ®¿¡ ´ëÇÏ¿©, µé¾î¿À´Â ¸Å°³º¯¼ö°¡ ºÎÈ£ ÀÖ´Â Á¤¼ö¸¦ ÀǵµÇÑ´Ù¸é, À½¼ö´Â ´ÙÀ½ ¿¹Á¦¸¦ µû¶ó ³ëÃâ½Ãų ¼ö ÀÖ½À´Ï´Ù:

+ +
if (A_PtrSize = 4 && wParam > 0x7FFFFFFF)  ; A_PtrSize¸¦ Á¡°ËÇØ ½ºÅ©¸³Æ®°¡ 32-ºñÆ®ÀÓÀ» È®ÀÎÇÕ´Ï´Ù.
+    wParam := -(~wParam) - 1
+

+»óÀÀÇÏ´Â Á¤º¸°¡ ÇÊ¿äÇÏÁö ¾ÊÀ¸¸é ¸®½ºÆ®ÀÇ ³¡À¸·ÎºÎÅÍ Çϳª ÀÌ»óÀÇ ¸Å°³º¯¼ö¸¦ »ý·«ÇÒ ¼ö ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î, MyMsgMonitor(wParam, lParam)·Î Á¤ÀÇµÈ ÇÔ¼ö´Â ¾Õ¿¡¼­ µÎ °³ÀÇ ¸Å°³º¯¼ö¸¸ ¹Þ½À´Ï´Ù. ±×¸®°í MyMsgMonitor()·Î Á¤ÀÇµÈ ÇÔ¼ö´Â ¸Å°³º¯¼ö¸¦ ÀüÇô ¹ÞÁö ¾Ê½À´Ï´Ù.

+ +

ÇÔ¼ö¿¡¼­ »ç¿ë°¡´ÉÇÑ Ãß°¡ Á¤º¸

+

+À§¿¡¼­ ¹ÞÀº ¸Å°³º¯¼ö ¸»°íµµ, ÇÔ¼ö´Â ´ÙÀ½ ³»Àå º¯¼ö·ÎºÎÅÍ °ªµéÀ» Âü°íÇÒ ¼öµµ ÀÖ½À´Ï´Ù:

+ +

°¨½Ã ÇÔ¼öÀÇ ¸¶Áö¸· ¹ß°ß âÀº ¸Þ½ÃÁö°¡ Àü¼ÛµÈ ºÎ¸ð âÀ¸·Î ½ÃÀÛÇÕ´Ï´Ù (ÄÜÆ®·Ñ¿¡ Àü¼ÛµÇ¾ú¾îµµ ¸¶Âù°¡ÁöÀÔ´Ï´Ù). âÀº ¼û¾î ÀÖÁö¸¸ GUI âÀº ¾Æ´Ï¶ó¸é (¿¹¸¦ µé¾î ½ºÅ©¸³Æ®ÀÇ ¸ÞÀΠâ), »ç¿ëÇϱâ Àü¿¡ ¸ÕÀú DetectHiddenWindows¸¦ ÄѽʽÿÀ. ¿¹¸¦ µé¾î:

+
DetectHiddenWindows On
+MsgParentWindow := WinExist()  ; ¸Þ½ÃÁö°¡ Àü¼ÛµÈ âÀÇ À¯ÀÏÇÑ ID¸¦ ÀúÀåÇÕ´Ï´Ù.
+ +

ÇÔ¼ö´Â ¹«¾ùÀ»µ¹·ÁÁÖ¾î¾ß Çϴ°¡

+

+°¨½Ã ÇÔ¼ö°¡ ¸Å°³º¯¼ö ¾øÀÌ ReturnÀ» »ç¿ëÇϰųª, ""¿Í °°Àº ºó °ªÀ» ÁöÁ¤Çϸé (¶Ç´Â ÀüÇô ReturnÀ» »ç¿ëÇÏÁö ¾ÊÀ¸¸é), µé¾î¿À´Â ¸Þ½ÃÁö´Â ÇÔ¼ö°¡ ³¡³¯ ¶§ Á¤»óÀûÀ¸·Î 󸮵˴ϴÙ. +ÇÔ¼ö°¡ Á¾·áÇϰųª(Exits) Á¸ÀçÇÏÁö ¾Ê´Â ÆÄÀÏÀ» ½ÇÇàÇÏ´Â ½ÇÇà½Ã°£ ¿¡·¯¸¦ ¾ß±âÇÏ´õ¶óµµ °°Àº ÀÏÀÌ ÀϾ´Ï´Ù. ´ëÁ¶ÀûÀ¸·Î, Á¤¼ö¸¦ µ¹·ÁÁÖ¸é, ±× ¸Þ½ÃÁö´Â Áï½Ã ¹Ý¼ÛµË´Ï´Ù; Áï, ÇÁ·Î±×·¥Àº ¸Þ½ÃÁö¸¦ ´õ ÀÌ»ó ó¸®ÇÏÁö ¾Ê½À´Ï´Ù. ¿¹¸¦ µé¾î, WM_LBUTTONDOWN (0x201)À» °¨½ÃÇÏ´Â ÇÔ¼ö°¡ Á¤¼ö¸¦ µ¹·ÁÁÖ¸é ¸ñÇ¥ âÀº ¸¶¿ì½º Ŭ¸¯ÀÌ ÀϾ »ç½ÇÀ» °íÁö ¹ÞÁö ¸øÇÕ´Ï´Ù. ¸¹Àº °æ¿ì (¿¹¸¦ µé¾î PostMessage¸¦ ÅëÇÏ¿© µµÂøÇÏ´Â ¸Þ½ÃÁöÀÇ °æ¿ì), ¾î¶² Á¤¼ö°¡ ¹ÝȯµÇ¾îµµ »ó°üÇÏÁö ¾Ê½À´Ï´Ù; ±×·¯³ª Àß ¸ð¸£°Ú´Ù¸é, 0ÀÌ º¸Åë °¡Àå ¾ÈÀüÇÕ´Ï´Ù.

+

+À¯È¿ÇÑ ¹Ýȯ °ªÀÇ ¹üÀ§´Â ½ºÅ©¸³Æ®ÀÇ ½ÇÇàÆÄÀÏÀÌ 32-ºñÆ®Àΰ¡ 64-ºñÆ®Àΰ¡¿¡ µû¶ó ´Ù¸¨´Ï´Ù. ºñ¾î ÀÖÁö ¾ÊÀº °ªÀº ¹Ýµå½Ã ¹üÀ§°¡ 32ºñÆ®-½ºÅ©¸³Æ®¿¡ ´ëÇÏ¿© (A_PtrSize = 4) -231ºÎÅÍ 232-1±îÁö ±×¸®°í 64-ºñÆ® ½ºÅ©¸³Æ®¿¡ ´ëÇÏ¿©(A_PtrSize = 8) -263ºÎÅÍ 263-1±îÁöÀÔ´Ï´Ù.

+

+[v1.1.20+]: ÇϳªÀÇ ¸Þ½ÃÁö¿¡ ´ëÇÏ¿© ¿©·¯ °¨½Ã ÇÔ¼ö°¡ ÀÖ´Ù¸é, ºñ¾î ÀÖÁö ¾ÊÀº °ªÀ» µ¹·ÁÁÙ ¶§±îÁö Çϳª¾¿ È£ÃâµË´Ï´Ù.

+ +

ÃÑÆò

+

+Á¤»ó ÇÔ¼ö-È£Ãâ°ú ´Ù¸£°Ô, °¨½Ã ¸Þ½ÃÁö°¡ µµÂøÇϸé ÇÔ¼ö´Â »õ·Î¿î ¾²·¹µå·Î È£ÃâµË´Ï´Ù. ÀÌ ¶§¹®¿¡, ÇÔ¼ö´Â SendMode ±×¸®°í DetectHiddenWindows°ú °°Àº ±âº»°ªÀ» °¡Áö°í »õ·Ó°Ô ½ÃÀÛÇÕ´Ï´Ù. ÀÌ ±âº»°ªÀº ÀÚµ¿-½ÇÇà ¼½¼Ç¿¡¼­ ¹Ù²Ü ¼ö ÀÖ½À´Ï´Ù.

+

+ÄÜÆ®·Ñ¿¡ (Æ÷½ºÆ® ¹æ½ÄÀÌ ¾Æ´Ï¶ó) ¼¾µå ¹æ½ÄÀ¸·Î Àü¼ÛµÇ´Â ¸Þ½ÃÁö´Â °üÁ¦µÇÁö ¾Ê½À´Ï´Ù. ¿Ö³ÄÇÏ¸é ½Ã½ºÅÛÀº ±×·± ¸Þ½ÃÁöµéÀ» È­¸é µÚÀÇ ÄÜÆ®·Ñ¿¡ Á÷Á¢ º¸³» ¹ö¸®±â ¶§¹®ÀÔ´Ï´Ù. ÀÌ·± ÀÏÀº ½Ã½ºÅÛ¿¡¼­-»ý¼ºµÇ´Â ¸Þ½ÃÁöµé¿¡´Â º°·Î ¹®Á¦°¡ µÇÁö ¾Ê½À´Ï´Ù. ¿Ö³ÄÇÏ¸é ´ëºÎºÐ Æ÷½ºÆ® ¹æ½ÄÀ¸·Î Àü¼ÛµÇ±â ¶§¹®ÀÔ´Ï´Ù..

+

+OnMessage¸¦ È£ÃâÇÏ´Â ½ºÅ©¸³Æ®´Â ÀÚµ¿À¸·Î ¿µ¼ÓÀûÀÌ µË´Ï´Ù. ¶ÇÇÑ ´ÜÀÏ ½ÇüÀ̱⵵ ÇÕ´Ï´Ù. ´Ü, #SingleInstance¸¦ »ç¿ëÇÏ¿© ¿À¹ö¶óÀ̵åµÈ °æ¿ì´Â ¿¹¿ÜÀÔ´Ï´Ù.

+

+ÇÔ¼ö°¡ ¿©ÀüÈ÷ ½ÇÇàÁßÀÎ µ¿¾È¿¡ ¶Ç °°Àº ¸Þ½ÃÁö°¡ µµÂøÇϸé, ±× ÇÔ¼ö´Â ´Ù½Ã È£ÃâµÇÁö ¾Ê½À´Ï´Ù (´Ü, MaxThreads°¡ 1º¸´Ù Å« °æ¿ì´Â ¿¹¿ÜÀÔ´Ï´Ù); ´ë½Å¿¡, ±× ¸Þ½ÃÁö´Â °¨½ÃµÇÁö ¾ÊÀº °ÍÀ¸·Î Ãë±ÞµË´Ï´Ù. ÀÌ°ÍÀÌ ¸¶À½¿¡ µéÁö ¾ÊÀ¸¸é, 0x312 ÀÌ»óÀÇ ¸Þ½ÃÁö´Â ±×ÀÇ ÇÔ¼ö°¡ ¿Ï·áÇÒ ¶§±îÁö ¹öÆÛ Ã³¸®ÇÒ ¼ö ÀÖ½À´Ï´Ù. ÇÔ¼öÀÇ Ã¹ ÁÙ¿¡ CriticalÀ» ÁöÁ¤ÇÏ¸é µË´Ï´Ù. ´ë¾ÈÀ¸·Î, °¨½Ã ÇÔ¼ö°¡ ÀÏÀ» ³¡³¾¸¸Å­ ÃæºÐÈ÷ ±ä ½Ã°£À» Áö¼ÓÇϱ⸸ ÇÏ¸é ¾²·¹µå ÀÎÅÍ·´Æ®·Î °°Àº ÀÏÀ» ´Þ¼ºÇÒ ¼ö ÀÖ½À´Ï´Ù. ´ëÁ¶ÀûÀ¸·Î, 0x312º¸´Ù ÀÛÀº ¸Þ½ÃÁö´Â Critical ¶Ç´Â Thread InterruptÀ¸·Î ¹öÆÛ Ã³¸®ÇÒ ¼ö ¾ø½À´Ï´Ù (±×·¸Áö¸¸, v1.0.46+¿¡¼­, CriticalÀº µµ¿òÀÌ µË´Ï´Ù. ¿Ö³ÄÇÏ¸é ¸Þ½ÃÁö¸¦ ´ú Á¡°ËÇϱ⠶§¹®¿¡, ÇÔ¼ö°¡ ´õ ¸¹Àº ½Ã°£À» °¡Áö°í ÀÏÀ» ³¡³¾ ¼ö ÀÖ½À´Ï´Ù). ±×·± ¸Þ½ÃÁö¸¦ ³õÄ¡Áö ¾Êµµ·Ï º¸ÀåÇÏ´Â À¯ÀÏÇÑ ¹æ¹ýÀº ÇÔ¼ö°¡ 6¹Ð¸®ÃÊ ¾Æ·¡¿¡¼­ ÀÏÀ» ³¡³»µµ·Ï È®ÀÎÇÏ´Â °ÍÀÔ´Ï´Ù (¹°·Ð ÀÌ Á¦ÇÑÀº Critical 30À» ÅëÇÏ¿© ´õ ¿Ã¸± ¼ö ÀÖ½À´Ï´Ù). + +ÀÌ·¸°Ô ÇÏ´Â ÇÑ °¡Áö ¹æ¹ýÀº 0x312º¸´Ù Å« °¨½Ã ¸Þ½ÃÁö¸¦ ÀÚ½ÅÀÇ ½ºÅ©¸³Æ®¿¡ Æ÷½ºÆ®Çؼ­ ¹Ì·¡ÀÇ ¾²·¹µå¸¦ ¹Ì¸® Å¥¿¡ ÁغñÇÏ´Â °ÍÀÔ´Ï´Ù. ±× ¸Þ½ÃÁöÀÇ ÇÔ¼ö´Â ÀӰ豸¿ªÀ» ±×ÀÇ Ã¹ ÁÙ¿¡ ÁöÁ¤Çؼ­ ±×ÀÇ ¸Þ½ÃÁö°¡ ¹öÆÛ Ã³¸® µÇµµ·Ï È®ÀÎÇØ¾ß ÇÕ´Ï´Ù.

+

+½ºÅ©¸³Æ®°¡ Àý´ëÀûÀ¸·Î ÀÎÅÍ·´Æ®°¡ ºÒ°¡´ÉÇÑ µ¿¾È¿¡ 0x312º¸´Ù ÀÛÀº °¨½Ã ¸Þ½ÃÁö°¡ µµÂøÇϸé -- ¿¹¸¦ µé¾î ¸Þ´º°¡ º¸¿©Áö°Å³ª, KeyDelay/MouseDelay°¡ ÁøÇà ÁßÀ̰ųª, ¶Ç´Â Ŭ¸³º¸µå°¡ ¿­·Á ÀÖ´Ù¸é -- ±× ¸Þ½ÃÁöÀÇ ÇÔ¼ö´Â È£ÃâµÇÁö ¾Ê½À´Ï´Ù. ±×¸®°í ±× ¸Þ½ÃÁö´Â °üÁ¦µÇÁö ¾ÊÀº °ÍÀ¸·Î 󸮵˴ϴÙ. ´ëÁ¶ÀûÀ¸·Î 0x312 ÀÌ»óÀÇ °¨½Ã ¸Þ½ÃÁö´Â ÀÌ·± ÀÎÅÍ·´Æ® ºÒ°¡´É ±â°£µ¿¾È¿¡ ¹öÆÛ Ã³¸®µË´Ïµð; Áï, ±×ÀÇ ÇÔ¼ö´Â ½ºÅ©¸³Æ®°¡ ÀÎÅÍ·´Æ® °¡´ÉÇØÁú ¶§ È£ÃâµË´Ï´Ù.

+

+ ¾²·¹µå ÀÎÅÍ·´Æ® ¶Ç´Â ÀӰ豸¿ªÀÇ ¼³Á¤ ¶§¹®¿¡ ½ºÅ©¸³Æ®°¡ ÀÎÅÍ·´Æ®°¡ ºÒ°¡´ÉÇÑ µ¿¾È¿¡ 0x312 º¸´Ù ÀÛÀº °¨½Ã ¸Þ½ÃÁö°¡ µµÂøÇϸé, ÇöÀç ¾²·¹µå°¡ ÀÎÅÍ·´Æ® µÇ¾î ±×ÀÇ °¨½Ã ÇÔ¼ö¸¦ È£ÃâÇÒ ¼ö ÀÖ½À´Ï´Ù. ´ëÁ¶ÀûÀ¸·Î 0x312 ÀÌ»óÀÇ °¨½Ã ¸Þ½ÃÁö´Â ¾²·¹µå°¡ ÀÏÀ» ³¡³»°Å³ª ÀÎÅÍ·´Æ®°¡ °¡´ÉÇØÁú ¶§±îÁö ¹öÆÛ Ã³¸®µË´Ï´Ù.

+

+OnMessage ¾²·¹µåÀÇ ¿ì¼± ¼øÀ§´Â ¾ðÁ¦³ª 0ÀÔ´Ï´Ù. °á°úÀûÀ¸·Î ÇöÀç ¾²·¹µåÀÇ ¿ì¼± ¼øÀ§°¡ 0º¸´Ù ³ôÀ¸¸é ¾î¶² ¸Þ½ÃÁöµµ °üÁ¦µÇÁö ¾Ê°í ¹öÆÛ Ã³¸®µÇÁö ¾Ê½À´Ï´Ù.

+

+(0x400¹Ì¸¸ÀÇ) ½Ã½ºÅÛ ¸Þ½ÃÁö´Â ÁÖÀÇÇؼ­ »ç¿ëÇØ¾ß ÇÕ´Ï´Ù. ¿¹¸¦ µé¾î, °¨½Ã ÇÔ¼ö°¡ »¡¸® ÀÏÀ» ³¡³»Áö ¸øÇϸé, ±× ¸Þ½ÃÁö¿¡ ´ëÇÑ ÀÀ´äÀº ½Ã½ºÅÛÀÇ ¿¹»óº¸´Ù ÈξÀ ´õ °É¸³´Ï´Ù. ÀÌ ¶§¹®¿¡ ºÎÀÛ¿ëÀ» ¾ß±âÇÒ ¼ö ÀÖ½À´Ï´Ù. °¨½Ã ÇÁ·Î±×·¥ÀÌ ´õ ÀÌ»óÀÇ ¸Þ½ÃÁö 󸮸¦ ¾ï´©¸£±â À§ÇØ Á¤¼ö¸¦ µ¹·ÁÁÖ¸é ¿øÇÏÁö ¾Ê´Â ÇàÀ§°¡ ÀϾ ¼öµµ ÀÖ½À´Ï´Ù. ½Ã½ºÅÛÀº ´Ù¸¥ ó¸® ´Ù¸¥ ÀÀ´äÀ» ¿¹»óÇÏ°í Àֱ⠶§¹®ÀÔ´Ï´Ù.

+

+½ºÅ©¸³Æ®°¡ MsgBox¿Í °°Àº ½Ã½ºÅÛ Ã¢À» º¸¿©ÁÖ°í ÀÖÀ» ¶§, ÄÜÆ®·Ñ¿¡ Æ÷½ºÆ®µÇ´Â ¸Þ½ÃÁö´Â ¸ðµÎ °üÁ¦°¡ µÇÁö ¾Ê½À´Ï´Ù. ¿¹¸¦ µé¾î, ½ºÅ©¸³Æ®°¡ MsgBox¸¦ º¸¿©ÁÖ°í ÀÖ°í »ç¿ëÀÚ°¡ GUI â¿¡ ¹öÆ°À» Ŭ¸¯Çϸé, WM_LBUTTONDOWN ¸Þ½ÃÁö´Â °¨½Ã ÇÔ¼ö¸¦ È£ÃâÇÏÁö ¾Ê°í Á÷Á¢ ¹öÆ°¿¡ Àü¼ÛµË´Ï´Ù.

+

+¿ÜºÎ ÇÁ·Î±×·¥Àº PostThreadMessage() ¶Ç´Â ±âŸ API È£ÃâÀ» ÅëÇÏ¿© ¸Þ½ÃÁö¸¦ Á÷Á¢ ½ºÅ©¸³Æ®ÀÇ ¾²·¹µå¿¡ Æ÷½ºÆ®ÇÒ ¼ö ÀÖÁö¸¸, ÀÌ°ÍÀº ±ÇÀåÇÏÁö ¾Ê½À´Ï´Ù. ¿Ö³ÄÇÏ¸é ±× ¸Þ½ÃÁöµéÀº ½ºÅ©¸³Æ®°¡ MsgBox °°Àº ½Ã½ºÅÛ Ã¢À» º¸¿©ÁÖ°í ÀÖ´Â ÁßÀ̶ó¸é ¼Ò½ÇµÇ¾î ¹ö¸®±â ¶§¹®ÀÔ´Ï´Ù. ´ë½Å¿¡, º¸Åë ½ºÅ©¸³Æ®ÀÇ ¸ÞÀΠâÀ̳ª ±×ÀÇ GUI â ÁßÀÇ Çϳª¿¡ ¸Þ½ÃÁö¸¦ º¸³»´Â °ÍÀÌ °¡Àå ÁÁ½À´Ï´Ù (send vs post).

+ +

°ü·Ã Ç׸ñ

+

RegisterCallback(), OnExit, OnClipboardChange, Post/SendMessage, ÇÔ¼ö, â ¸Þ½ÃÁö ¸ñ·Ï, ¾²·¹µå, Critical, DllCall()

+ +

¿¹Á¦

+ +
; ¿¹Á¦: ´ÙÀ½ÀÇ ÀÛµ¿ÇÏ´Â ½ºÅ©¸³Æ®´Â GUI â¿¡¼­ ¸¶¿ì½º Ŭ¸¯À» °¨½ÃÇÕ´Ï´Ù
+; °ü·Ã ÁÖÁ¦: GuiContextMenu
+
+Gui, Add, Text,, ÀÌ Ã¢ ¾Æ¹«µ¥³ª Ŭ¸¯ÇϽʽÿÀ.
+Gui, Add, Edit, w200 vMyEdit
+Gui, Show
+OnMessage(0x201, "WM_LBUTTONDOWN")
+return
+
+WM_LBUTTONDOWN(wParam, lParam)
+{
+    X := lParam & 0xFFFF
+    Y := lParam >> 16
+    if A_GuiControl
+        Control := "`n(in control " . A_GuiControl . ")"
+    ToolTip Gui #%A_Gui% â¿¡¼­ Ŭ¶óÀ̾ðÆ® ÁÂÇ¥ %X%x%Y%.%Control%¿¡ ¿ÞŬ¸¯ Çß½À´Ï´Ù.
+}
+
+GuiClose:
+ExitApp
+ +
; ¿¹Á¦: ´ÙÀ½ ½ºÅ©¸³Æ®´Â ½Ã½ºÅÛ ¼Ë´Ù¿î/·Î±×¿ÀÆ÷¸¦ ŽÁöÇÕ´Ï´Ù. ±×¸®°í ±×°ÍÀ» Ãë¼ÒÇÒ ±âȸ¸¦ ÁÝ´Ï´Ù
+; Windows Vista ÀÌÈÄ´Â ÀÛµ¿ÇÏÁö ¾Ê´Â´Ù°í º¸°íµÇ¾ú½À´Ï´Ù).
+; °ü·Ã ÁÖÁ¦: OnExit
+
+; ´ÙÀ½ DllCallÀº ¼±ÅÃÀûÀÔ´Ï´Ù: OS¿¡°Ô ÀÌ ½ºÅ©¸³Æ®¸¦ (´Ù¸¥ ¸ðµç ¾îÇø®ÄÉÀ̼Ǻ¸´Ù) ¸ÕÀú ´ÝÀ¸¶ó°í ¸í·ÉÇÕ´Ï´Ù.
+DllCall("kernel32.dll\SetProcessShutdownParameters", UInt, 0x4FF, UInt, 0)
+OnMessage(0x11, "WM_QUERYENDSESSION")
+return
+
+WM_QUERYENDSESSION(wParam, lParam)
+{
+    ENDSESSION_LOGOFF = 0x80000000
+    if (lParam & ENDSESSION_LOGOFF)  ; »ç¿ëÀÚ°¡ ·Î±×¿ÀÇÁÁßÀÔ´Ï´Ù.
+        EventType = Logoff
+    else  ; ½Ã½ºÅÛÀº ¼Ë´Ù¿î ¶Ç´Â Àç½ÃÀÛ ÁßÀÔ´Ï´Ù.
+        EventType = Shutdown
+    MsgBox, 4,, %EventType% in progress.  Allow it?
+    IfMsgBox Yes
+        return true  ; OS¿¡°Ô ¼Ë´Ù¿î/·Î±×¿ÀÇÁ¸¦ °è¼Ó Çã¿ëÇϵµ·Ï ¸í·ÉÇÕ´Ï´Ù.
+    else
+        return false  ; OS¿¡°Ô ¼Ë´Ù¿î/·Î±×¿ÀÇÁ¸¦ Ãë¼ÒÇϵµ·Ï ¸í·ÉÇÕ´Ï´Ù.
+}
+ +
; ¿¹Á¦: ½ºÅ©¸³Æ®¿¡°Ô ´Ù¸¥ ½ºÅ©¸³Æ®³ª ÇÁ·Î±×·¥À¸·ÎºÎÅÍ ¸ÂÃã ¸Þ½ÃÁö¿Í ÃÖ´ë µÎ °³ÀÇ ¼ýÀÚ¸¦ ¹Þµµ·Ï ¸¸µì´Ï´Ù.
+; (¼ýÀÚ ´ë½Å¿¡ ¹®ÀÚ¿­À» Àü¼ÛÇÏ·Á¸é, ÀÌ ´ÙÀ½ ¿¹Á¦¸¦ º¸½Ê½Ã¿À).
+
+OnMessage(0x5555, "MsgMonitor")
+OnMessage(0x5556, "MsgMonitor")
+
+MsgMonitor(wParam, lParam, msg)
+{
+    ; ½Å¼ÓÇÏ°Ô µ¹¾Æ°¡´Â °ÍÀÌ Áß¿äÇÏ´Ù¸é, ToolTipÀ» »ç¿ëÇÏ´Â ÆíÀÌ ´õ ÁÁ½À´Ï´Ù.
+    ; MsgBox °°Àº °æ¿ì´Â ÇÔ¼ö°¡ ÀÏÀ» ³¡³»Áö ¸øÇϵµ·Ï ¹æÇØÇϱ⠶§¹®ÀÔ´Ï´Ù:
+    ToolTip Message %msg% arrived:`nWPARAM: %wParam%`nLPARAM: %lParam%
+}
+
+; ´ÙÀ½À» ´Ù¸¥ ½ºÅ©¸³Æ® ¾È¿¡¼­ »ç¿ëÇϸé À§ÀÇ ½ºÅ©¸³Æ® ¾È¿¡¼­ ÇÔ¼ö¸¦ ½ÇÇàÇÒ ¼ö ÀÖ½À´Ï´Ù:
+SetTitleMatchMode 2
+DetectHiddenWindows On
+if WinExist("Name of Receiving Script.ahk ahk_class AutoHotkey")
+    PostMessage, 0x5555, 11, 22  ; ÀÌ ¸Þ½ÃÁö´Â À§ÀÇ WinExist() ¶§¹®¿¡ "¸¶Áö¸· ¹ß°ß â"À¸·Î Àü¼ÛµË´Ï´Ù.
+DetectHiddenWindows Off  ; PostMessage°¡ ³¡³¯ ¶§±îÁö ²ô¸é ¾ÈµË´Ï´Ù.
+ +
; ¿¹Á¦: ¹®ÀÚ¿­À» ±æÀÌ¿¡ »ó°ü¾øÀÌ ÇÑ ½ºÅ©¸³Æ®¿¡¼­ ´Ù¸¥ ½ºÅ©¸³Æ®·Î Àü¼ÛÇÕ´Ï´Ù.  ´ÙÀ½Àº ÀÛµ¿ÇÏ´Â ¿¹Á¦ÀÔ´Ï´Ù.
+; »ç¿ëÇÏ·Á¸ç´Ï, ´ÙÀ½ ½ºÅ©¸³Æ®µéÀ» ÀúÀåÇÏ°í ½ÇÇàÇÑ ´ÙÀ½ Win+Space¸¦ ´©¸£¸é 
+; InputBox¸¦ º¼¼ö ÀÖ½À´Ï´Ù. ±× ¾È¿¡ ¹®ÀÚ¿­À» ŸÀÚÇØ ³ÖÀ¸¸é µË´Ï´Ù.
+
+; ´ÙÀ½ ½ºÅ©¸³Æ®¸¦ "Receiver.ahk"·Î ÀúÀåÇÏ°í ±âµ¿½ÃÅ°½Ê½Ã¿À:
+#SingleInstance
+OnMessage(0x4a, "Receive_WM_COPYDATA")  ; 0x4a is WM_COPYDATA
+return
+
+Receive_WM_COPYDATA(wParam, lParam)
+{
+    StringAddress := NumGet(lParam + 2*A_PtrSize)  ; CopyDataStructÀÇ lpData ¸â¹ö¸¦ ¹Þ½À´Ï´Ù.
+    CopyOfData := StrGet(StringAddress)  ; ±¸Á¶Ã¼·ÎºÎÅÍ ¹®ÀÚ¿­À» º¹»çÇÕ´Ï´Ù.
+    ; ±×°ÍÀ» ToolTip vs. MsgBox·Î º¸¿©ÁÝ´Ï´Ù. ±×·¡¼­ ÀûÀýÇÑ ½Ã°£¿¡ µ¹·ÁÁÙ ¼ö ÀÖ½À´Ï´Ù:
+    ToolTip %A_ScriptName%`nReceived the following string:`n%CopyOfData%
+    return true  ;  1 (true)À» µ¹·ÁÁÖ´Â °ÍÀÌ ÀÌ ¸Þ½ÃÁö¸¦ ½ÂÀÎÇÏ´Â ÀüÅëÀûÀÎ ¹æ½ÄÀÔ´Ï´Ù.
+}
+
+; ´ÙÀ½ ½ºÅ©¸³Æ®¸¦ "Sender.ahk"·Î ÀúÀåÇÑ ´ÙÀ½ ±âµ¿½ÃÅ°½Ê½Ã¿À. ±× ´ÙÀ½, Win+Space ÇÖÅ°¸¦ ´©¸£½Ê½Ã¿À.
+TargetScriptTitle = Receiver.ahk ahk_class AutoHotkey
+
+#space::  ; Win+Space ÇÖÅ°. ´©¸£¸é ¸Þ½ÃÁö ¹®ÀÚ¿­À» ÀÔ·ÂÇÒ InputBox°¡ ³ªÅ¸³³´Ï´Ù.
+InputBox, StringToSend, Send text via WM_COPYDATA, Enter some text to Send:
+if ErrorLevel  ; »ç¿ëÀÚ°¡ Ãë¼Ò ¹öÆ°À» ´­·¶½À´Ï´Ù.
+    return
+result := Send_WM_COPYDATA(StringToSend, TargetScriptTitle)
+if result = FAIL
+    MsgBox SendMessage failed. Does the following WinTitle exist?:`n%TargetScriptTitle%
+else if result = 0
+    MsgBox Message sent but the target window responded with 0, which may mean it ignored it.
+return
+
+Send_WM_COPYDATA(ByRef StringToSend, ByRef TargetScriptTitle)  ; ByRef´Â ÀÌ °æ¿ì ¸Þ¸ð¸®¸¦ »ó´çÈ÷ Àý¾àÇØ ÁÝ´Ï´Ù.
+; ´ÙÀ½ ÇÔ¼ö´Â ÁöÁ¤µÈ ¹®ÀÚ¿­À» ÁöÁ¤µÈ â¿¡ Àü¼ÛÇÏ°í ÀÀ´äÀ» µ¹·ÁÁÝ´Ï´Ù.
+; ¸ñÇ¥ âÀÌ ¸Þ½ÃÁö¸¦ ó¸®ÇßÀ¸¸é ÀÀ´äÀº 1ÀÔ´Ï´Ù. ¶Ç´Â ¹«½ÃÇß´Ù¸é 0ÀÔ´Ï´Ù.
+{
+    VarSetCapacity(CopyDataStruct, 3*A_PtrSize, 0)  ; ±¸Á¶Ã¼ÀÌ ¸Þ¸ð¸® ±¸¿ªÀ» ¼³Á¤ÇÕ´Ï´Ù.
+    ; ¸ÕÀú ±¸Á¶Ã¼ÀÇ cbData ¸â¹ö¿¡ ¹®ÀÚ¿­ÀÇ Å©±â¸¦ ¼³Á¤ÇÕ´Ï´Ù. ±×ÀÇ 0 Á¾·á¹®ÀÚ¸¦ Æ÷ÇÔÇÕ´Ï´Ù:
+    SizeInBytes := (StrLen(StringToSend) + 1) * (A_IsUnicode ? 2 : 1)
+    NumPut(SizeInBytes, CopyDataStruct, A_PtrSize)  ; OSÀÇ ¿ä±¸´ë·Î ÀÌ·¸°Ô ó¸®ÇÕ´Ï´Ù.
+    NumPut(&StringToSend, CopyDataStruct, 2*A_PtrSize)  ; lpData¿¡ ¹®ÀÚ¿­ ÀÚü¸¦ °¡¸®Å°µµ·Ï ¼³Á¤ÇÕ´Ï´Ù.
+    Prev_DetectHiddenWindows := A_DetectHiddenWindows
+    Prev_TitleMatchMode := A_TitleMatchMode
+    DetectHiddenWindows On
+    SetTitleMatchMode 2
+    SendMessage, 0x4a, 0, &CopyDataStruct,, %TargetScriptTitle%  ; 0x4a´Â WM_COPYDATAÀÔ´Ï´Ù. Post°¡ ¾Æ´Ï¶ó Send¸¦ »ç¿ëÇØ¾ß ÇÕ´Ï´Ù.
+    DetectHiddenWindows %Prev_DetectHiddenWindows%  ; È£ÃâÀÚ¿¡ ´ëÇÏ¿© ¿ø·¡ ¼³Á¤À» º¹±¸ÇÕ´Ï´Ù.
+    SetTitleMatchMode %Prev_TitleMatchMode%         ; À§¿Í °°½À´Ï´Ù.
+    return ErrorLevel  ; SendMessageÀÇ ÀÀ´äÀ» ´Ù½Ã È£ÃâÀÚ¿¡°Ô Àü¼ÛÇÕ´Ï´Ù.
+}
+ +
; ¿¹Á¦: WinLIRC Ŭ¶óÀ̾ðÆ® ½ºÅ©¸³Æ®¸¦ ÂüÁ¶ÇϽʽÿÀ.
+; ³×Æ®¿öÅ© Á¢¼Ó¿¡ µ¥ÀÌÅÍ°¡ µµÂøÇÒ ¶§ OnMessage()¸¦ »ç¿ëÇÏ¿© °íÁö¸¦ ¹Þ´Â ¹æ¹ýÀ» º¸¿© ÁÝ´Ï´Ù.
+ + + diff --git a/src/docs/commands/OutputDebug.htm b/src/docs/commands/OutputDebug.htm new file mode 100644 index 0000000..082864c --- /dev/null +++ b/src/docs/commands/OutputDebug.htm @@ -0,0 +1,40 @@ + + + + +OutputDebug + + + + + + + +

OutputDebug

+ +

¹®ÀÚ¿­À» µð¹ö°Å¿¡ (ÀÖ´Ù¸é) Àü¼ÛÇÏ¿© º¸¿©ÁÝ´Ï´Ù.

+ +
OutputDebug, Text
+

¸Å°³º¯¼ö

+
+ +
Text
+

º¸¿©ÁÖ±â À§ÇØ µð¹ö°Å¿¡ Àü¼ÛÇÒ ÅؽºÆ®. ÀÌ ÅؽºÆ®¿¡´Â ¶óÀÎÇǵå (`n)°¡ Æ÷ÇÔµÇ¾î »õ ÁÙÀ» ½ÃÀÛÇÒ ¼ö ÀÖ½À´Ï´Ù. °Ô´Ù°¡, ±â´Ù¶õ ÇÑ ÁÙÀº °è¼Ó ¼½¼ÇÀ» ¼ö´ÜÀ¸·Î ¿©·¯ °³ÀÇ ÂªÀº ÁÙµé·Î °¡¸¦ ¼ö ÀÖ½À´Ï´Ù.

+ +
+ +

³íÆò

+

+½ºÅ©¸³Æ®ÀÇ ÇÁ·Î¼¼½º¿¡ µð¹ö°Å°¡ ¾ø´Ù¸é, ½Ã½ºÅÛ µð¹ö°Å°¡ ±× ¹®ÀÚ¿­À» È­¸é¿¡ º¸¿©ÁÝ´Ï´Ù. ½Ã½ºÅÛ µð¹ö°Å°¡ ²¨Á® ÀÖ´Ù¸é, ÀÌ ¸í·É¾î´Â ¾Æ¹« È¿°ú°¡ ¾ø½À´Ï´Ù.

+

+µð¹ö°ÅÀÇ ÇÑ °¡Áö ¿¹´Â DebugViewÀÔ´Ï´Ù. ÀÌ µð¹ö°Å´Â ¹«·áÀ̸ç www.sysinternals.com¿¡¼­ ¾òÀ» ¼ö ÀÖ½À´Ï´Ù.

+

+´ÙÀ½µµ ÂüÁ¶ÇϽʽÿÀ: ´Ù¸¥ µð¹ö±ë ¹æ¹ýµé

+ +

°ü·Ã Ç׸ñ

+

FileAppend, °è¼Ó ¼½¼Ç

+

¿¹Á¦

+
OutputDebug, %A_Now%: â "%TargetWindowTitle%"°¡ Á¸ÀçÇÏÁö ¾ÊÀ¸¹Ç·Î, ÇÁ·Î¼¼½º°¡ Á¾·áµÇ¾ú½À´Ï´Ù.
+ + + diff --git a/src/docs/commands/Pause.htm b/src/docs/commands/Pause.htm new file mode 100644 index 0000000..ed3b2d8 --- /dev/null +++ b/src/docs/commands/Pause.htm @@ -0,0 +1,70 @@ + + + + +Pause + + + + + + + +

Pause

+ +

½ºÅ©¸³Æ®ÀÇ ÇöÀç ¾²·¹µå¸¦ Á¤ÁöÇÕ´Ï´Ù.

+ +
#p::Pause ; Win+P¸¦ ÇÑ ¹ø ´©¸£¸é ½ºÅ©¸³Æ®°¡ Á¤ÁöµË´Ï´Ù. ´Ù½Ã ´©¸£¸é ½ºÅ©¸³Æ®°¡ Àç°³µË´Ï´Ù.
+Pause [, On|Off|Toggle, OperateOnUnderlyingThread?]
+

¸Å°³º¯¼ö

+
+ +
On|Off|Toggle
+

ºñ¾î Àְųª »ý·«µÇ¸é, ±âº» °ªÀº ToggleÀÔ´Ï´Ù. ±×·¸Áö ¾ÊÀ¸¸é, ´ÙÀ½ ´Ü¾î Áß Çϳª¸¦ ÁöÁ¤ÇØ¾ß ÇÕ´Ï´Ù:

+

Toggle: ÇöÀç ¾²·¹µå¸¦ Á¤ÁöÇÕ´Ï´Ù. ´Ü, ±× ¾Æ·¡ÀÇ ¾²·¹µå°¡ Á¤ÁöÇØ ÀÖ´Â °æ¿ì´Â ¿¹¿ÜÀÔ´Ï´Ù. ÀÌ °æ¿ì ±× ¾Æ·¡ÀÇ ¾²·¹µå°¡ Àç°³µË´Ï´Ù.

+

On: ÇöÀç ¾²·¹µå¸¦ Á¤ÁöÇÕ´Ï´Ù.

+

Off: ÇöÀç ¾²·¹µå ¾Æ·¡ÀÇ ¾²·¹µå°¡ Á¤ÁöµÇ¾î ÀÖÀ¸¸é, Àç°³µÉ ¶§ ±× ¾Æ·¡ÀÇ ¾²·¹µå°¡ Àç°³µË´Ï´Ù. ±×·¸Áö ¾ÊÀ¸¸é, ÀÌ ¸í·É¾î´Â ¾Æ¹« È¿°ú°¡ ¾ø½À´Ï´Ù.
+

+ +
OperateOnUnderlyingThread?
+

Pause Off¿¡ ´ëÇÏ¿© ÀÌ ¸Å°³º¯¼ö´Â ¹«½ÃµË´Ï´Ù. ¿Ö³ÄÇÏ¸é ¾ðÁ¦³ª ±× ¾Æ·¡ÀÇ ¾²·¹µå À§¿¡¼­ ÀÛµ¿Çϱ⠶§¹®ÀÔ´Ï´Ù. ´Ù¸¥ °Í¿¡ ´ëÇؼ­´Â, Pause°¡ ÄÑÁ® ÀÖÀ» °æ¿ì¿¡¸¸ È¿°ú°¡ ÀÖ½À´Ï´Ù (ToggleÀ» »ç¿ë Æ÷ÇÔ).

+

´ÙÀ½ ¼ýÀÚ Áß Çϳª¸¦ ÁöÁ¤ÇϽʽÿÀ:

+

0 (¶Ç´Â »ý·«): ÇöÀç ¾²·¹µå°¡ Á¤ÁöÇÕ´Ï´Ù; Áï, ÇöÀç Pause ¸í·É¾î¸¦ ½ÇÇàÇÑ ¾²·¹µå.

+

1: + ÇöÀç ¾²·¹µå ¾Æ·¡ÀÇ ¾²·¹µå¸¦ Á¤ÁöÇÑ °ÍÀ¸·Î Ç¥½ÄÀ» ´ä´Ï´Ù. ±×·¡¼­ Àç°³Çϸé, (ÀÖ´Ù¸é) ½ÇÇà ÁßÀÎ ¸í·É¾î¸¦ Á¾·áÇÑ ´ÙÀ½, Á¤Áö »óÅ·Πµé¾î°©´Ï´Ù. ÇöÀç ¾²·¹µå ¾Æ·¡¿¡ ¾²·¹µå°¡ ¾øÀ¸¸é, ½ºÅ©¸³Æ® ÀÚü°¡ Á¤ÁöÇÕ´Ï´Ù. ÀÌ ¶§¹®¿¡ ŸÀ̸Ӱ¡ ÀÛµ¿À» ¸ØÃä´Ï´Ù (ÀÌ È¿°ú´Â ½ºÅ©¸³Æ®¿¡ ¾²·¹µå°¡ ¾øÀ» ¶§ "Pause Script" ¸Þ´º Ç׸ñÀ» »ç¿ëÇÑ °Í°ú µ¿ÀÏÇÕ´Ï´Ù).

+

ÁÖÀÇ: A_IsPaused¿¡´Â ±× ¾Æ·¡ÀÇ ¾²·¹µåÀÇ Á¤Áö »óÅ°¡ ´ã±é´Ï´Ù.

+ +
+ +

³íÆò

+

+ÇÖÅ°¿Í ÇÖ½ºÆ®¸µÀ» ²¨¹ö¸®´Â Suspend¿Í ´Ù¸£°Ô, pause¸¦ ÄѸé ÇöÀç ¾²·¹µå°¡ µ¿°áµË´Ï´Ù. ºÎÀÛ¿ëÀ¸·Î, ±× ¾Æ·¡¿¡ ÀÎÅÍ·´Æ®µÈ ¾²·¹µå°¡ ÀÖ´Ù¸é µ¿¸é »óÅ°¡ µË´Ï´Ù.

+

+¾²·¹µå°¡ Á¤ÁöÇÒ ¶§¸¶´Ù, ŸÀ̸Ӵ ½ÇÇàµÇÁö ¾Ê½À´Ï´Ù. ´ëÁ¶ÀûÀ¸·Î, ¸í½ÃÀûÀ¸·Î ±âµ¿µÈ ¾²·¹µå´Â ÇÖÅ° ±×¸®°í ¸Þ´º Ç׸ñ°ú °°ÀÌ ¿©ÀüÈ÷ ±âµ¿µÉ ¼ö ÀÖ½À´Ï´Ù; ±×·¯³ª ¾²·¹µå°¡ ³¡³¯ ¶§, ±× ¾Æ·¡ÀÇ ¾²·¹µå´Â ¸ØÃâ °ÍÀÔ´Ï´Ù. ´Ù¸¥ ¸»·Î, °¢ ¾²·¹µå´Â ´Ù¸¥ ¾²·¹µå¿Í µ¶¸³ÀûÀ¸·Î Á¤ÁöÇÒ ¼ö ÀÖ½À´Ï´Ù.

+

+½ºÅ©¸³Æ®ÀÇ ÇöÀç ¾²·¹µå°¡ Á¤Áö »óÅ¿¡ ÀÖÀ¸¸é Æ®·¹ÀÌ ¾ÆÀÌÄÜÀÇ »ö±òÀÌ ÃÊ·Ï»ö¿¡¼­ »¡°£»öÀ¸·Î ¹Ù²ò´Ï´Ù. ÀÌ Ä÷¯ º¯È­´Â ¾ÆÀÌÄÜÀ» µ¿°áÇϸé ÇÇÇÒ ¼ö ÀÖ½À´Ï´Ù. Menu ¸í·É¾îÀÇ ¸¶Áö¸· ¸Å°³º¯¼ö¿¡ 1À» ÁöÁ¤ÇÏ¸é µË´Ï´Ù. ¿¹¸¦ µé¾î:

+ +
Menu, Tray, Icon, C:\My Icon.ico, , 1
+

+½ºÅ©¸³Æ®¸¦ Á¤ÁöÇÏÁö ¾Ê°í ŸÀ̸Ӹ¦ ²ô·Á¸é Thread, NoTimers¸¦ »ç¿ëÇϽʽÿÀ.

+

+Pause ¸í·É¾î´Â ±â´É ¸é¿¡¼­ ³»Àå ¸Þ´º Ç׸ñ "Pause Script"¿Í ºñ½ÁÇÕ´Ï´Ù.

+

+¸Þ´º¸¦ (Æ®·¹ÀÌ ¸Þ´º, ¸Þ´º ¹Ù, GUI ¹®¸Æ ¸Þ´º, µîµî.) º¸¿©ÁÖ°í ÀÖ´Â µ¿¾È (°ø½ÄÀûÀ¸·Î Á¤ÁöÇÑ °ÍÀº ¾Æ´ÏÁö¸¸) ½ºÅ©¸³Æ®´Â ¾ðÁ¦³ª Á¤ÁöÇÕ´Ï´Ù.

+ +

°ü·Ã Ç׸ñ

+

+Suspend, Menu, ExitApp, ¾²·¹µå, SetTimer

+ +

¿¹Á¦

+
Pause::Pause  ; Åä±Û-Á¤Áö ÇÔ¼ö¸¦ "pause" Å°¿¡ ÇÒ´çÇÕ´Ï´Ù...
+#p::Pause  ; ... ¶Ç´Â ±×°ÍÀ» Win+p³ª ±âŸ ´Ù¸¥ ÇÖÅ°¿¡ ÇÒ´çÇÕ´Ï´Ù.
+ +
; Pause ¸í·É¾î¸¦ ¶Ç´Ù¸¥ ½ºÅ©¸³Æ®¿¡ Àü¼ÛÇÕ´Ï´Ù.
+DetectHiddenWindows, On
+WM_COMMAND := 0x111
+ID_FILE_PAUSE := 65403
+PostMessage, WM_COMMAND, ID_FILE_PAUSE,,, C:\YourScript.ahk ahk_class AutoHotkey
+ + + diff --git a/src/docs/commands/PixelGetColor.htm b/src/docs/commands/PixelGetColor.htm new file mode 100644 index 0000000..8667d17 --- /dev/null +++ b/src/docs/commands/PixelGetColor.htm @@ -0,0 +1,65 @@ + + + + +PixelGetColor + + + + + + + +

PixelGetColor

+ +

ÁöÁ¤µÈ x,y ÁÂÇ¥¿¡ ÀÖ´Â Çȼ¿ÀÇ Ä÷¯¸¦ ¿­¶÷ÇÕ´Ï´Ù.

+ +
PixelGetColor, OutputVar, X, Y [, Alt|Slow|RGB]
+

¸Å°³º¯¼ö

+
+ +
OutputVar
+

½ÊÀ°Áø BGR Çü½ÄÀ¸·Î Ä÷¯ ID¸¦ ÀúÀåÇÒ º¯¼öÀÇ À̸§. ¿¹¸¦ µé¾î, º¸¶ó»öÀº 0x800080À¸·Î Á¤Àǵ˴ϴÙ. û»öÀÇ Ã¤µµ°¡ 80ÀÌ°í Àû»öÀÇ Ã¤µµ°¡ 80 ±×¸®°í ³ì»öÀº äµµ°¡ 0À̱⠶§¹®ÀÔ´Ï´Ù.

+ +
X, Y
+

Çȼ¿ÀÇ X¿Í Y ÁÂÇ¥, Ç¥Çö½Ä °¡´É. ÁÂÇ¥´Â È°¼º â¿¡ »ó´ëÀûÀÔ´Ï´Ù. ´Ü, CoordMode¸¦ »ç¿ëÇÏ¿© ÁÂÇ¥ ü°è¸¦ ¹Ù²Ù¾ú´Ù¸é ¿¹¿ÜÀÔ´Ï´Ù.

+ +
Alt|Slow|RGB
+

ÀÌ ¸Å°³º¯¼ö´Â 0 °³ ÀÌ»óÀÇ ´ÙÀ½ ´Ü¾î°¡ ´ã±é´Ï´Ù. ´Ü¾î°¡ ¿©·¯ °³ Á¸ÀçÇϸé, ´ÙÀ½ ´Ü¾î¿Í ½ºÆäÀ̽º·Î °¡¸£½Ê½Ã¿À (¿¹, Alt RGB).

+

+ Alt [v1.0.43.10+]: ´ëü ¹æ¹ýÀ» »ç¿ëÇÏ¿© »öÀ» ¿­¶÷ÇÕ´Ï´Ù. Á¤»ó ¹æ¹ýÀ¸·Î´Â ƯÁ¤ À¯ÇüÀÇ Ã¢¿¡ ´ëÇÏ¿© Á¤È®Çϰųª À¯È¿ÇÑ Ä÷¯¸¦ ¾òÀ» ¼ö ¾øÀ» °æ¿ì¿¡ »ç¿ëµË´Ï´Ù. ÀÌ ¹æ¹ýÀº Á¤»ó ¹æ¹ýº¸´Ù ´ë·« 10% Á¤µµ ´À¸³´Ï´Ù.

+

+ Slow [v1.0.43.10+]: ´õ Á¤±³ÇÑ ¹æ¹ýÀ» »ç¿ëÇÏ¿© Ä÷¯¸¦ ¿­¶÷ÇÕ´Ï´Ù. ¾î¶² Àüü È­¸é ¾îÇø®ÄÉÀ̼ǿ¡¼­ ´Ù¸¥ ¸Þ½îµå´Â ½ÇÆÐÇÏÁö¸¸ ÀÌ ¹æ¹ýÀº ÀÛµ¿ÇÒ °¡´É¼ºÀÌ ÀÖ½À´Ï´Ù. ÀÌ ¹æ¹ýÀº Á¤»ó ¹æ¹ýº¸´Ù ´ë·« ¼¼ ¹è ´À¸³´Ï´Ù. ÁÖÀÇ: Slow°¡ Altº¸´Ù ¿ì¼± ¼øÀ§°¡ ³ô½À´Ï´Ù. ±×·¡¼­ ÀÌ °æ¿ì´Â Alt¸¦ ÁöÁ¤ÇÒ ÇÊ¿ä°¡ ¾ø½À´Ï´Ù.

+

+ RGB: Ä÷¯¸¦ RGB vs. BGR Æ÷¸ËÀ¸·Î ¿­¶÷ÇÕ´Ï´Ù. ´Ù¸¥ ¸»·Î, Àû»ö°ú û»öÀ» ±³È¯ÇÕ´Ï´Ù. ÀÌ´Â WinSet, Gui, Progress, ±×¸®°í SplashImage°ú ȣȯµÇ´Â Ä÷¯¸¦ ¿­¶÷ÇÏ´Â µ¥ À¯¿ëÇÕ´Ï´Ù.

+ +
+ +

ErrorLevel

+

[v1.1.04+] ÀÌ ¸í·É¾î´Â ½ÇÆнà ¿¹¿Ü¸¦ ´øÁú ¼ö ÀÖ½À´Ï´Ù. ´õ ÀÚ¼¼ÇÑ Á¤º¸´Â ½ÇÇà½Ã°£ ¿¡·¯¸¦ ÂüÁ¶ÇϽʽÿÀ.

+

ErrorLevelÀº ¹®Á¦°¡ ÀÖ¾úÀ¸¸é 1 ±×·¸Áö ¾ÊÀ¸¸é 0ÀÌ ¼³Á¤µË´Ï´Ù.

+ +

³íÆò

+

+Çȼ¿Àº ¹Ýµå½Ã º¸¿©¾ß ÇÕ´Ï´Ù; ´Ù¸¥ ¸»·Î, â¿¡¼­ ´Ù¸¥ â¿¡ °¡·ÁÁø Çȼ¿ Ä÷¯´Â ¿­¶÷ÇÒ ¼ö ¾ø½À´Ï´Ù. ´ëÁ¶ÀûÀ¸·Î, ¸¶¿ì½º ¾Æ·¡ÀÇ Ä¿¼­´Â º¸Åë ŽÁöÇÒ ¼ö ÀÖ½À´Ï´Ù. ÀÌ¿¡ ´ëÇÑ ¿¹¿Ü´Â °ÔÀÓ Ä¿¼­ÀÔ´Ï´Ù. ´ëºÎºÐÀÇ °æ¿ì °ÔÀÓ Ä¿¼­´Â ÀÚ½ÅÀÇ ¾Æ·¡¿¡ Çȼ¿À» ¼û±é´Ï´Ù.

+

+ÇöÀç È­¸éÀÇ Ä÷¯¸¦ ¾Ë¾Æ³»·Á¸é Window Spy (Æ®·¹ÀÌ ¾ÆÀÌÄÜ ¸Þ´º)¸¦ »ç¿ëÇϰųª ¶Ç´Â ÀÌ ÆäÀÌÁö ¾Æ·¡¿¡ ¿¡Á¦¸¦ »ç¿ëÇϽʽÿÀ.

+ +

¾Ë·ÁÁø ÇÑ°è:

+ + +

°ü·Ã Ç׸ñ

+

PixelSearch, ImageSearch, CoordMode, MouseGetPos

+ +

¿¹Á¦

+
^!z::  ; Control+Alt+Z ÇÖÅ°.
+MouseGetPos, MouseX, MouseY
+PixelGetColor, color, %MouseX%, %MouseY%
+MsgBox ÇöÀç Ä¿¼­ À§Ä¡ÀÇ Ä÷¯´Â %color%ÀÔ´Ï´Ù.
+return
+ + + diff --git a/src/docs/commands/PixelSearch.htm b/src/docs/commands/PixelSearch.htm new file mode 100644 index 0000000..2ceeafc --- /dev/null +++ b/src/docs/commands/PixelSearch.htm @@ -0,0 +1,73 @@ + + + + +PixelSearch + + + + + + + +

PixelSearch

+ +

È­¸éÀÇ ±¸¿ªÀ» °Ë»öÇØ ÁöÁ¤µÈ Ä÷¯ÀÇ Çȼ¿À» ã½À´Ï´Ù.

+ +
PixelSearch, OutputVarX, OutputVarY, X1, Y1, X2, Y2, ColorID [, Variation, Fast|RGB]
+

¸Å°³º¯¼ö

+
+ +
OutputVarX/Y
+

+ ColorID¿¡ ºÎÇÕÇϴ ù ¹ø° Çȼ¿ÀÇ X¿Í YÀÇ ÁÂÇ¥¸¦ ÀúÀåÇÒ º¯¼öÀÇ À̸§ (ºÎÇÕÀÌ ¹ß°ßµÇÁö ¾ÊÀ¸¸é, º¯¼ö´Â ºñ¿öÁý´Ï´Ù). ÁÂÇ¥´Â È°¼º â¿¡ »ó´ëÀûÀÔ´Ï´Ù. ´Ü, CoordMode¸¦ »ç¿ëÇÏ¿© ÁÂÇ¥ ü°è¸¦ ¹Ù²Û °æ¿ì´Â ¿¹¿ÜÀÔ´Ï´Ù.

+

+ ÀÌ ¸Å°³º¯¼ö°¡ ºñ¾î ÀÖÀ¸¸é, ErrorLevel (¾Æ·¡ ÂüÁ¶)¸¦ »ç¿ëÇÏ¿© ºÎÇÕÀÌ ¹ß°ßµÇ¾ú´ÂÁö ¾Ë¾Æ³¾ ¼ö ÀÖ½À´Ï´Ù.

+ +
X1, Y1
+

°Ë»öÇÒ »ç°¢ ±¸¿ªÀÇ Á»ó ¸ð¼­¸®ÀÇ X¿Í YÀÇ ÁÂÇ¥. Ç¥Çö½Ä °¡´É. ÁÂÇ¥´Â È°¼º â¿¡ »ó´ëÀûÀÔ´Ï´Ù. ´Ü, CoordMode¸¦ »ç¿ëÇÏ¿© ÁÂÇ¥ ü°è¸¦ ¹Ù²Û °æ¿ì´Â ¿¹¿ÜÀÔ´Ï´Ù..

+ +
X2, Y2
+

°Ë»öÇÒ »ç°¢ ±¸¿ªÀÇ ¿ìÇÏ ¸ð¼­¸®ÀÇ X¿Í YÀÇ ÁÂÇ¥. Ç¥Çö½Ä °¡´É. ÁÂÇ¥´Â È°¼º â¿¡ »ó´ëÀûÀÔ´Ï´Ù. ´Ü, CoordMode¸¦ »ç¿ëÇÏ¿© ÁÂÇ¥ ü°è¸¦ ¹Ù²Û °æ¿ì´Â ¿¹¿ÜÀÔ´Ï´Ù.

+ +
ColorID
+

°Ë»ö¿¡ »ç¿ëÇÒ Ã»-³ì-Àû(Blue-Green-Red (BGR)) Çü½ÄÀÇ ½ÊÀ°Áø ¶Ç´Â ½ÊÁø Ä÷¯ ID. Ç¥Çö½Ä °¡´É. Color ID´Â Window Spy¸¦ »ç¿ëÇÏ¿© ¶Ç´Â PixelGetColor¸¦ ÅëÇÏ¿© ¾Ë¾Æ³¾ ¼ö ÀÖ½À´Ï´Ù (Æ®·¹ÀÌ ¸Þ´º·Î Á¢±Ù °¡´É). ¿¹¸¦ µé¾î: 0x9d6346.

+ +
Variation
+

0°ú 255 (Æ÷ÇÔ) »çÀÌÀÇ °ª. + Ä÷¯ÀÇ Àû³ìû äµµ¿¡ ´ëÇÏ¿© ¹æÇâ¿¡ °ü°è¾øÀÌ ¸î °³ÀÇ ½¦ÀÌµå º¯ÇüÀ» Çã¿ëÇÒÁö ³ªÅ¸³À´Ï´Ù. (Ç¥Çö½Ä °¡´É). ÀÌ ¸Å°³º¯¼ö´Â ±¸ÇÏ´Â Ä÷¯°¡ ¾ðÁ¦³ª Á¤È®ÇÏ°Ô °°Àº ½¦À̵尡 ¾Æ´Ò °æ¿ì À¯¿ëÇÕ´Ï´Ù. 255 ½¦À̵åÀÇ º¯ÇüÀ» ÁöÁ¤Çß´Ù¸é, ¸ðµç Ä÷¯°¡ ºÎÇÕÇÕ´Ï´Ù. ±âº»°ªÀº 0 ½¦À̵åÀÔ´Ï´Ù.

+ +
Fast|RGB
+

ÀÌ ¸Å°³º¯¼ö´Â ´Ü¾î Fast, RGB¸¦ ´ã°Å³ª ¶Ç´Â µÑ ´ãÀ» ¼ö ÀÖ½À´Ï´Ù (µÑ ´Ù Á¸ÀçÇϸé, ½ºÆäÀ̽º·Î µÑ»çÀ̸¦ °¡¸£½Ê½Ã¿À; Áï, Fast RGB).

+

+ Fast: + ºü¸¥ °Ë»ö ¹æ¹ýÀ» »ç¿ëÇÕ´Ï´Ù. ´ëºÎºÐÀÇ °æ¿ì °Ë»ö¿¡ »ç¿ëµÈ CPU ½Ã°£ÀÇ ¾çÀ» ±ØÀûÀ¸·Î ÁÙ¿©ÁÝ´Ï´Ù. 8-ºñÆ® (256-»ö) Ä÷¯ ±íÀ̸¦ Áö¿øÇÏÁö¸¸, ºü¸¥ ¸ðµå´Â 24-ºñÆ® ¶Ç´Â 32-ºñÆ® Ä÷¯¿¡¼­ ÈξÀ ´õ ºü¸¨´Ï´Ù. È­¸éÀÇ Ä÷¯ ±íÀÌ°¡ 16-ºñÆ® ÀÌÇ϶ó¸é, Variation ¸Å°³º¯¼ö´Â ºü¸¥ ¸ðµå¿¡¼­ ´À¸° ¸ðµå¿Í ¾à°£ ´Ù¸£°Ô ÇൿÇÒ ¼öµµ ÀÖ½À´Ï´Ù. ¸¶Áö¸·À¸·Î, ºü¸¥ ¸ðµå´Â È­¸éÀ» Ä÷³ ´ÜÀ§°¡ ¾Æ´Ï¶ó ÁÙ ´ÜÀ§·Î (À§¿¡¼­ ¾Æ·¡·Î) °Ë»öÇÕ´Ï´Ù. ±×·¯¹Ç·Î, ºÎÇÕÇÏ´Â Çȼ¿ÀÌ ¸¹Àº °æ¿ì ´À¸° ¸ðµå¿¡¼­ ¹ß°ßµÇ´Â Çȼ¿°ú ´Ù¸¥ Çȼ¿À» ¹ß°ßÇÒ ¼öµµ ÀÖ½À´Ï´Ù.

+

+ RGB: ColorID´Â BGRÀÌ ¾Æ´Ï¶ó RGB °ªÀ¸·Î ¹ø¿ªµË´Ï´Ù. ´Ù¸¥ ¸»·Î, Àû°ú û ±¸¼º¿ä¼Ò°¡ ¼­·Î ¹Ù²ò´Ï´Ù.

+ +
+ +

ErrorLevel

+

[v1.1.04+] ÀÌ ¸í·É¾î´Â °Ë»öÇÏ´Â µ¿¾È ¹®Á¦°¡ ÀÖÀ¸¸é ¿¹¿Ü¸¦ ´øÁú ¼ö ÀÖ½À´Ï´Ù. ´õ ÀÚ¼¼ÇÑ Á¤º¸´Â ½ÇÇà½Ã°£ ¿¡·¯¸¦ ÂüÁ¶ÇϽʽÿÀ.

+

ErrorLevelÀº ÁöÁ¤µÈ ±¸¿ª¿¡¼­ Ä÷¯¸¦ ¹ß°ßÇÏ¿´À¸¸é 0ÀÌ ¼³Á¤µÇ°í, ¹ß°ßÇÏÁö ¸øÇßÀ¸¸é 1ÀÌ ¼³Á¤µË´Ï´Ù. ¾Æ´Ï¸é ¹®Á¦°¡ À־ °Ë»öÀ» ¼öÇàÇÏÁö ¸øÇßÀ¸¸é 2°¡ ¼³Á¤µË´Ï´Ù.

+ +

³íÆò

+

+°Ë»öµÉ ±¸¿ªÀº ¹Ýµå½Ã º¸¿©¾ß ÇÕ´Ï´Ù; ´Ù¸¥ ¸»·Î, â¿¡¼­ ¶Ç´Ù¸¥ â¿¡ °¡·ÁÁø ±¸¿ªÀº °Ë»öÀÌ ºÒ°¡´ÉÇÏ´Ï´Ù. ´ëÁ¶ÀûÀ¸·Î, ¸¶¿ì½º Ä¿¼­ ¾Æ·¡ÀÇ Çȼ¿Àº º¸Åë ŽÁöÇÒ ¼ö ÀÖ½À´Ï´Ù. ÀÌ¿¡ ´ëÇÑ ¿¹¿Ü´Â °ÔÀÓ Ä¿¼­ÀÔ´Ï´Ù. ´ëºÎºÐÀÇ °æ¿ì °ÔÀÓ Ä¿¼­´Â ÀÚ½ÅÀÇ ¾Æ·¡¿¡ ÀÖ´Â Çȼ¿µéÀ» °¨Ãä´Ï´Ù.

+

+Slow ¸ðµå Àü¿ë: ±âº»°ªÀ¸·Î, °Ë»öÀº ÇØ´ç ±¸¿ªÀÇ Á»ó ¸ð¼­¸®·ÎºÎÅÍ ½ÃÀÛÇÏ¿© ¼öÁ÷À¸·Î ³»·Á°¡¸ç Çȼ¿ÀÌ ºÎÇÕÇÏ´ÂÁö ¸ÂÃß¾î º¾´Ï´Ù. ºÎÇÕÀ» ¹ß°ßÇÏÁö ¸øÇϸé, °Ë»öÀº Ä÷³ ¿À¸¥ÂÊ¿¡¼­ ºÎÇÕÇÏ´Â Çȼ¿À» ãÀ» ¶§±îÁö °è¼ÓµË´Ï´Ù. ±âº»°ªÀÌ Á¿¡¼­ ¿ì·Î °Ë»ö ¼ø¼­´Â ¸Å°³º¯¼ö ¸®½ºÆ®¿¡¼­ X1¿Í X2¸¦ ¹Ù²Ù¸é µÚÁý¾î Áý´Ï´Ù. ´Ù¸¥ ¸»·Î, X1ÀÌ X2º¸´Ù ´õ Å©¸é, °Ë»öÀº X1Ä÷³¿¡¼­ ½ÃÀÛÇÏ¿©, ¿À¸¥ÂÊ¿¡¼­ ¿ÞÂÊÀ¸·Î ¼öÇàµË´Ï´Ù. ºñ½ÁÇÏ°Ô, Y1ÀÌ Y2º¸´Ù Å©¸é, °Ë»öµÉ Çȼ¿ Ä÷³ÀÌ À§°¡ ¾Æ´Ï¶ó ¾Æ·¡ºÎÅÍ ½ÃÀÛÇÕ´Ï´Ù. ¸¶Áö¸·À¸·Î, °Ë»öµÉ ±¸¿ªÀÌ ¹æ´ëÇÏ°í °Ë»öÀÌ ³ôÀº ºóµµ·Ï ¹Ýº¹µÇ¸é, CPU ½Ã°£À» ¸¹ÀÌ ¼ÒºñÇÒ ¼ö ÀÖ½À´Ï´Ù. À̸¦ °æ°¨ÇÏ·Á¸é, °Ë»ö ±¸¿ªÀÇ Å©±â¸¦ ÃÖ¼ÒÇÑÀ¸·Î À¯ÁöÇϽʽÿÀ.

+ +

°ü·Ã Ç׸ñ

+

+PixelGetColor, ImageSearch, CoordMode, MouseGetPos

+ +

¿¹Á¦

+ +
PixelSearch, Px, Py, 200, 200, 300, 300, 0x9d6346, 3, Fast
+if ErrorLevel
+    MsgBox, ÇØ´ç Ä÷¯¸¦ ÁöÁ¤µÈ ±¸¿ª¿¡¼­ ¹ß°ßÇÏÁö ¸øÇß½À´Ï´Ù.
+else
+    MsgBox, 3 ½¦À̵åÀÇ º¯Çü ¾È¿¡¼­ Ä÷¯°¡ X%Px% Y%Py%¿¡¼­ ¹ß°ßµÇ¾ú½À´Ï´Ù.
+ + + diff --git a/src/docs/commands/PostMessage.htm b/src/docs/commands/PostMessage.htm new file mode 100644 index 0000000..3bfd442 --- /dev/null +++ b/src/docs/commands/PostMessage.htm @@ -0,0 +1,141 @@ + + +PostMessage / SendMessage + + + + + + + + +

PostMessage / SendMessage

+ +

¸Þ½ÃÁö¸¦ âÀ̳ª ÄÜÆ®·Ñ¿¡ º¸³À´Ï´Ù (SendMessage´Â ½ÂÀÎÀ» ±â´Ù¸³´Ï´Ù).

+ +
PostMessage, Msg [, wParam, lParam, Control, WinTitle, WinText, ExcludeTitle, ExcludeText]
+SendMessage, Msg [, wParam, lParam, Control, WinTitle, WinText, ExcludeTitle, ExcludeText, Timeout]
+

¸Å°³º¯¼ö

+
+ +
Msg
+

Àü¼ÛÇÒ ¸Þ½ÃÁö ¹øÈ£, Ç¥Çö½Ä°¡´É. ¼ýÀÚ¸¦ ¾Ë¾Æ ³»·Á¸é ¸Þ½ÃÁö ¸ñ·ÏÀ» ÂüÁ¶ÇϽʽÿÀ.

+ +
wParam
+

¸Þ½ÃÁöÀÇ Ã¹ ¹ø° ±¸¼º¿ä¼Ò. Ç¥Çö½Ä °¡´É. ºñ¾î Àְųª »ý·«Çϸé 0ÀÌ Àü¼ÛµË´Ï´Ù.

+ +
lParam
+

¸Þ½ÃÁöÀÇ µÎ ¹ø° ±¸¼º¿ä¼Ò. Ç¥Çö½Ä °¡´É. ºñ¾î Àְųª »ý·«Çϸé 0ÀÌ Àü¼ÛµË´Ï´Ù.

+ +
Control
+

ÀÌ ¸Å°³º¯¼ö°¡ ºñ¾îÀְųª »ý·«µÇ¸é, ¸Þ½ÃÁö´Â ±×ÀÇ ÄÜÆ®·Ñ Áß¿¡ Çϳª°¡ ¾Æ´Ï¶ó Á÷Á¢ ¸ñÇ¥ â¿¡ Àü¼ÛµË´Ï´Ù. ±×·¸Áö ¾ÊÀ¸¸é, ÀÌ ¸Å°³º¯¼ö´Â ClassNN (Ŭ·¡½ºÀ̸§°ú ÄÜÆ®·ÑÀÇ ½Çü ¹øÈ£) ¶Ç´Â ÄÜÆ®·ÑÀÇ ÅؽºÆ®ÀÏ ¼ö ÀÖ½À´Ï´Ù. µÑ ¸ðµÎ Window Spy·Î ¾Ë¾Æ³¾ ¼ö ÀÖ½À´Ï´Ù. ÅؽºÆ®¸¦ »ç¿ëÇÒ ¶§, ºÎÇÕ ÇàÀ§´Â SetTitleMatchMode·Î °áÁ¤µË´Ï´Ù.

+

+ ÄÜÆ®·ÑÀÇ HWND (â ÇÚµé)À» ó¸®ÇÏ·Á¸é, Control ¸Å°³º¯¼ö¸¦ ºñ¿ö µÎ°í ahk_id %ControlHwnd%¸¦ WinTitle ¸Å°³º¯¼ö¿¡ ÁöÁ¤ÇϽʽÿÀ (ÀÌ°ÍÀº ¼ûÀº â¿¡µµ ÀÛµ¿ÇÕ´Ï´Ù. DetectHiddenWindows°¡ ²¨Á® À־(Off) ¸¶Âù°¡ÁöÀÔ´Ï´Ù). ÄÜÆ®·ÑÀÇ HWND´Â ÀüÇüÀûÀ¸·Î ControlGet Hwnd, MouseGetPos, ¶Ç´Â DllCall¸¦ ÅëÇÏ¿© ¿­¶÷ÇÕ´Ï´Ù.

+
+ +
WinTitle
+

¸ñÇ¥ âÀ» ½Äº°Çϴ â Á¦¸ñ ¶Ç´Â ±âŸ ±âÁØ. WinTitle ÂüÁ¶.

+ +
WinText
+

Á¸ÀçÇϸé, ÀÌ ¸Å°³º¯¼ö´Â ¸ñÇ¥ â ÅؽºÆ®ÀÇ ºÎ¹®ÀÚ¿­ÀÔ´Ï´Ù (Window Spy¿¡ ³ëÃâ). ¼ûÀº ÅؽºÆ®´Â DetectHiddenText°¡ ÄÑÁ® ÀÖ¾î¾ß(ON) ŽÁöµË´Ï´Ù.

+ +
ExcludeTitle
+

Á¦¸ñ¿¡ ÀÌ °ªÀÌ Àִ âÀº ¹«½ÃÇÕ´Ï´Ù.

+ +
ExcludeText
+

ÅؽºÆ®¿¡ ÀÌ °ªÀÌ Àִ âÀº ¹«½ÃÇÕ´Ï´Ù.

+ +
Timeout
+

[AHK_L 42+]: ¸ñÇ¥ âÀÌ ¸Þ½ÃÁö¸¦ ó¸®Çϱ⸦ ±â´Ù¸± ¹Ð¸®ÃÊÀÇ ÃÖ´ë °³¼ö. »ý·«ÇÏ¸é ±âº»°ªÀº 5000 (¹Ð¸®ÃÊ)ÀÔ´Ï´Ù. ÀÌ °ªÀº ÀÌ ¸Å°³º¯¼ö¸¦ Áö¿øÇÏÁö ¾Ê¾Ò´ø ¿¹Àü ¹öÀüÀÇ AutoHotkey¿¡¼­ ±âº»°ªÀÔ´Ï´Ù. ¸Þ½ÃÁö°¡ ÀÌ ½Ã°£ ¾È¿¡ 󸮵ÇÁö ¾ÊÀ¸¸é, ¸í·É¾î´Â ³¡³ª°í ErrorLevel¿¡ ´Ü¾î FAILÀ» ¼³Á¤ÇÕ´Ï´Ù. ÀÌ ¸Å°³º¯¼ö´Â Ç¥Çö½ÄÀÏ ¼ö ÀÖ½À´Ï´Ù.

+ +
+ +

ErrorLevel

+

+[v1.1.04+] ÀÌ ¸í·É¾î´Â ½ÇÆнà ¿¹¿Ü¸¦ ´øÁú ¼ö ÀÖ½À´Ï´Ù. ´õ ÀÚ¼¼ÇÑ Á¤º¸´Â ½ÇÇà½Ã°£ ¿¡·¯¸¦ ÂüÁ¶ÇϽʽÿÀ.

+

+PostMessage: ErrorLevelÀº ¹®Á¦°¡ ÀÖ¾úÀ¸¸é 1ÀÌ ¼³Á¤µË´Ï´Ù. ¿¹¸¦ µé¾î ¸ñÇ¥ âÀ̳ª ÄÜÆ®·ÑÀÌ Á¸ÀçÇÏÁö ¾ÊÀ» °æ¿ì¿¡ 1ÀÌ ¼³Á¤µË´Ï´Ù. ±×·¸Áö ¾ÊÀ¸¸é 0ÀÌ ¼³Á¤µË´Ï´Ù.

+

SendMessage: ErrorLevelÀº ¹®Á¦°¡ ÀÖ¾ú°Å³ª ½Ã°£Á¦ÇÑ¿¡ °É¸®¸é ´Ü¾î FAILÀÌ ¼³Á¤µË´Ï´Ù. ±×·¸Áö ¾ÊÀ¸¸é, ¸Þ½ÃÁöÀÇ ¼ýÀÚ °ª °á°ú°¡ ¼³Á¤µË´Ï´Ù. °¡²û ÀÌ °ªÀÌ ¸Þ½ÃÁö¿Í ±×ÀÇ ¸ñÇ¥ âÀÇ ¼ºÁú¿¡ µû¶ó "reply"ÀÏ °æ¿ì°¡ ÀÖ½À´Ï´Ù.

+

+°¡´ÉÇÑ °ªÀÇ ¹üÀ§´Â ¿ÀÅäÇÖÅ°ÀÇ ¹öÀü°ú ¸ñÇ¥ â¿¡ µû¶ó ´Ù¸¨´Ï´Ù. 32-ºñÆ® ¹öÀüÀÇ ¿ÀÅäÇÖÅ°¸¦ »ç¿ëÇϰųª, ¶Ç´Â ¸ñÇ¥ âÀÌ 32-ºñÆ®À̸é, ±× °á°ú´Â 0ºÎÅÍ 4294967295 ±îÁöÀÇ 32-ºñÆ® ¹«ºÎÈ£ Á¤¼öÀÔ´Ï´Ù. 64-ºñÆ® ¹öÀüÀÇ ¿ÀÅäÇÖÅ°¸¦ 64-ºñÆ® â¿¡ »ç¿ëÇϸé, ±× °á°ú´Â -9223372036854775808°ú 9223372036854775807 ±îÁöÀÇ 64-ºñÆ® ºÎÈ£ÀÖ´Â Á¤¼öÀÔ´Ï´Ù .

+

+°á°ú°¡ 32-ºñÆ® ºÎÈ£ ÀÖ´Â Á¤¼öÀ̱⸦ ¿øÇÑ´Ù¸é (-2147483648ºÎÅÍ 2147483648±îÁöÀÇ °ª), ´ÙÀ½°ú °°ÀÌ 32-ºñÆ®·Î Àß¶ó³»°í ºÎÈ£ÀÖ´Â °ªÀ¸·Î º¯È¯ÇÒ ¼ö ÀÖ½À´Ï´Ù:

+ +
MsgReply := ErrorLevel << 32 >> 32
+

+ÀÌ º¯È¯Àº AutoHotkey 64-ºñÆ®¿¡¼­µµ ÇÊ¿äÇÒ ¼ö°¡ ÀÖ½À´Ï´Ù. ¿Ö³ÄÇϸé, 32-ºñÆ® âÀ¸·ÎºÎÅÍÀÇ °á°ú´Â È®ÀåµÇÁö ¾Ê±â ¶§¹®ÀÔ´Ï´Ù. ¿¹¸¦ µé¾î, 32-ºñÆ® âÀ¸·ÎºÎÅÍÀÇ °á°ú°¡ -1ÀÌ¸é ¾î´À ¿ÀÅäÇÖÅ° ¹öÀü¿¡¼­µµ 0xFFFFFFFFÀ¸·Î º¸ÀÔ´Ï´Ù. ¹Ý¸é¿¡ 64-ºñÆ® âÀ¸·ÎºÎÅÍÀÇ °á°ú°¡ -1À̸é 32ºñÆ® ¹öÀüÀÇ ¿ÀÅäÇÖÅ°¿¡¼­´Â 0xFFFFFFFFÀ¸·Î º¸ÀÌ°í 64ºñÆ® ¹öÀü¿¡¼­´Â -1·Î º¸ÀÔ´Ï´Ù.

+ +

³íÆò

+

+ÀÌ ¸í·É¾îµéÀº ÁÖÀÇÇؼ­ »ç¿ëÇØ¾ß ÇÕ´Ï´Ù. ¿Ö³ÄÇÏ¸é ¾û¶×ÇÑ Ã¢¿¡ ¸Þ½ÃÁö¸¦ Àü¼ÛÇϸé (¶Ç´Â ¹«È¿ÇÑ ¸Þ½ÃÁö¸¦ Àü¼ÛÇϸé) ¿¹»óÄ¡ ¸øÇÑ ÇàÀ§¸¦ ¾ß±âÇÏ°Ô µÇ°í ½ÉÁö¾î ¸ñÇ¥ ¾îÇø®ÄÉÀ̼ÇÀÌ Ãæµ¹À» ÀÏÀ¸Å³ ¼ö Àֱ⠶§¹®ÀÔ´Ï´Ù. ´ëºÎºÐÀÇ ¾îÇø®ÄÉÀ̼ÇÀº ¿ÜºÎ ¼Ò½º·ÎºÎÅÍ ¾î¶² À¯ÇüÀÇ ¸Þ½ÃÁö¸¦ ¹Þµµ·Ï ¼³°èµÇ¾î ÀÖÁö ¾Ê½À´Ï´Ù.

+

+PostMessage´Â ¸Þ½ÃÁö¸¦ ¸ñÇ¥ â¿¡ ¿¬°üµÈ ¸Þ½ÃÁö Å¥¿¡ ³Ö½À´Ï´Ù. ½ÂÀÎÀ̳ª ÀÀ´äÀ» ±â´Ù¸®Áö ¾Ê½À´Ï´Ù. ´ëÁ¶ÀûÀ¸·Î, SendMessage´Â ¸ñÇ¥ âÀÌ ±× ¸Þ½ÃÁö¸¦ ó¸®Çϱ⸦ ½Ã°£Á¦ÇÑ¿¡ °É¸± ¶§±îÁö ±â´Ù¸³´Ï´Ù.

+

+wParam°ú lParam ¸Å°³º¯¼ö´Â Á¤¼ö¿©¾ß ÇÕ´Ï´Ù. AutoHotkey ¶Ç´Â ¸ñÇ¥ âÀÌ 32-ºñÆ®À̸é, ¿ÀÁ÷ ¾Æ·¡ÀÇ 32 ºñÆ®¸¸ »ç¿ëµË´Ï´Ù; Áï, °ªÀº ¹üÀ§°¡ -2147483648°ú 4294967295 (0xFFFFFFFF) »çÀÌÀÔ´Ï´Ù. ¿ÀÅäÇÖÅ°¿Í ¸ñÇ¥ âÀÌ ¸ðµÎ 64-ºñÆ®À̸é, ¿ÀÅäÇÖÅ°°¡ Áö¿øÇÏ´Â ¾î¶² Á¤¼öµµ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. ¿ÀÅäÇÖÅ°ÀÇ ¸ðµç Á¤¼ö °ªÃ³·³, Á¢µÎ»ç°¡ 0xÀÌ¸é ½ÊÀ°Áø¼ö¸¦ ³ªÅ¸³À´Ï´Ù. ¿¹¸¦ µé¾î 0xFF´Â 255¿Í µ¿µîÇÕ´Ï´Ù.

+

+¹®ÀÚ¿­Àº º¯¼öÀÇ ÁÖ¼Ò¸¦ ÁöÁ¤Çϸé wParam ¶Ç´Â lParamÀ» ÅëÇÏ¿© Àü¼ÛÇÒ ¼ö ÀÖ½À´Ï´Ù. ´ÙÀ½ ¿¹Á¦´Â ÁÖ¼Ò ¿¬»êÀÚ (&)¸¦ »ç¿ëÇØ Àü¼ÛÇÕ´Ï´Ù:

+ +
SendMessage, 0xC, 0, &MyVar, ClassNN, WinTitle  ; 0XC is WM_SETTEXT
+

+v1.0.43.06+¿¡¼­, ¸Þ½ÃÁö ¼ö½ÅÀÚ¿¡ ÀÇÇÏ¿© MyVar ¾È¿¡ ¹èÁ¤µÈ ¹®ÀÚ¿­Àº º°µµÀÇ Ãß°¡ ÀýÂ÷ ¾øÀÌ ÀûÀýÇÏ°Ô ÀÎÁöµË´Ï´Ù. ±×·¸Áö¸¸, ÀÌ°ÍÀº ¸Å°³º¯¼öÀÇ Ã¹ ¹®ÀÚ°¡ ¾ÚÆÛ¼¾µå (&)ÀÏ °æ¿ì¿¡¸¸ ÀÛµ¿ÇÕ´Ï´Ù; ¿¹¸¦ µé¾î, 5+&MyVar´Â ÀÛµ¿ÇÏÁö ¾ÊÁö¸¸ &MyVar ¶Ç´Â &MyVar+5´Â ÀÛµ¿ÇÕ´Ï´Ù.

+

+ÀοëºÎÈ£ 󸮵È/±âÈ£ ±×´ë·ÎÀÇ ¹®ÀÚ¿­µµ ´ÙÀ½ ¿¹Á¦¿Í °°ÀÌ Àü¼ÛÇÒ ¼ö ÀÖ½À´Ï´Ù (& ¿¬»êÀÚ´Â ÀÌ °æ¿ì »ç¿ëÇÏ¸é ¾È µË´Ï´Ù):

+ +
Run Notepad
+WinWait Untitled - Notepad
+SendMessage, 0xC, 0, "New Notepad Title"  ; 0XC is WM_SETTEXT
+

+¸Þ½ÃÁö Çϳª¸¦ ¼û¾î ÀÖµç ºñÈ°¼ºÈ­µÇ¾î ÀÖµç ½Ã½ºÅÛ¿¡ ÀÖ´Â ¸ðµç â¿¡ º¸³»·Á¸é, ahk_id 0xFFFF¸¦ WinTitle (0xFFFF´Â HWND_BROADCASTÀÓ)¿¡ ÁöÁ¤ÇϽʽÿÀ. ÀÌ Å×Å©´ÐÀº ´ÙÀ½ ¿¹Á¦¿Í °°ÀÌ ¹æ¼Û¿ë ÀǵµÀÇ ¸Þ½ÃÁö¿¡¸¸ »ç¿ëÇØ¾ß ÇÕ´Ï´Ù:

+ +
SendMessage, 0x1A,,,, ahk_id 0xFFFF  ; 0x1A is WM_SETTINGCHANGE
+

+½ºÅ©¸³Æ®°¡ ¸Þ½ÃÁö¸¦ ¹Þµµ·Ï ÇÏ·Á¸é OnMessage()¸¦ »ç¿ëÇϽʽÿÀ.

+

+ÀÌ ¸í·É¾îµåµéÀ» »ç¿ëÇÏ´Â ¹æ¹ý¿¡ °üÇÑ ¼Ò°³´Â ¸Þ½ÃÁö ÀÚ½À¼­¸¦ ÂüÁ¶ÇϽʽÿÀ.

+

+â Á¦¸ñ°ú ÅؽºÆ®´Â ´ë¼Ò¹®ÀÚ¸¦ ±¸ºÐÇÕ´Ï´Ù. ¼ûÀº âÀº DetectHiddenWindows°¡ ÄÑÁ® ÀÖ¾î¾ß ŽÁöµË´Ï´Ù.

+ +

°ü·Ã Ç׸ñ

+

Message List, Message Tutorial, OnMessage(), Automating Winamp, DllCall, ControlSend, WinMenuSelectItem

+ +

¿¹Á¦

+
#o::  ; ¸ð´ÏÅ͸¦ ²ø Win+O ÇÖÅ°.
+Sleep 1000  ; »ç¿ëÀÚ¿¡°Ô Å°¸¦ ¶¿ ±âȸ¸¦ ÁÝ´Ï´Ù (Å°¸¦ ¶¼¸é ¸ð´ÏÅÍ°¡ ´Ù½Ã ²¡´Ï´Ù).
+; Turn Monitor Off:
+SendMessage, 0x112, 0xF170, 2,, Program Manager  ; 0x112´Â WM_SYSCOMMANDÀÌ°í, 0xF170´Â SC_MONITORPOWERÀÔ´Ï´Ù.
+; À§¿¡ ÁÖ¸ñÇϽʽÿÀ: 2 ´ë½Å¿¡ -1À» »ç¿ëÇÏ¸é ¸ð´ÏÅÍ°¡ ÄÑÁý´Ï´Ù.
+; 2 ´ë½Å¿¡ 1À» »ç¿ëÇÏ¸é ¸ð´ÏÅÍÀÇ ÀúÀü·Â ¸ðµå°¡ ÄÑÁý´Ï´Ù.
+return
+
+; »ç¿ëÀÚ°¡ ¼±ÅÃÇÑ È­¸é º¸È£±â¸¦ ½ÃÀÛÇÕ´Ï´Ù:
+SendMessage, 0x112, 0xF140, 0,, Program Manager  ; 0x112´Â WM_SYSCOMMANDÀÌ°í, 0xF140´Â SC_SCREENSAVEÀÔ´Ï´Ù.
+
+; ÇÑ ÁÙ À§·Î °¨½À´Ï´Ù (¼öÁ÷ ½ºÅ©·Ñ ¹Ù°¡ ÀÖ´Â ÄÜÆ®·Ñ¿¡ ´ëÇÏ¿©):
+ControlGetFocus, control, A
+SendMessage, 0x115, 0, 0, %control%, A
+
+; ÇÑ ÁÙ ¾Æ·¡·Î °¨½À´Ï´Ù:
+ControlGetFocus, control, A
+SendMessage, 0x115, 1, 0, %control%, A
+
+; È°¼º âÀÇ Å°º¸µå ·¹À̾ƿô/¾ð¾î¸¦ ¿µ¾î·Î ÀüȯÇÕ´Ï´Ù:
+PostMessage, 0x50, 0, 0x4090409,, A  ; 0x50Àº WM_INPUTLANGCHANGEREQUESTÀÔ´Ï´Ù.
+
+; ÀÌ ¿¹Á¦´Â Winamp¿¡°Ô ÇöÀç È°¼ºÈ­µÇ¾î ÀÖ´Â Æ®·¢ ¹øÈ£¸¦ ¹°¾îº¾´Ï´Ù:
+SetTitleMatchMode, 2
+SendMessage, 1024, 0, 120, - Winamp
+if ErrorLevel <> FAIL
+{
+    ErrorLevel++  ; WinampÀÇ Ä«¿îÆ®´Â "0"¿¡¼­ ½ÃÀÛÇÕ´Ï´Ù. ±×·¡¼­ 1·Î Á¶Á¤ÇÕ´Ï´Ù.
+    MsgBox, Track #%ErrorLevel% is active or playing.
+}
+; ´õ ÀÚ¼¼ÇÑ Á¤º¸´Â Winamp ÀÚµ¿È­ Çϱ⸦ ÂüÁ¶ÇϽʽÿÀ.
+
+; AHK ½ºÅ©¸³Æ®ÀÇ ÇÁ·Î¼¼½º ID¸¦ ã±â À§ÇØ ("WinGet PID"¿¡ ´ëÇÑ ´ë¾È):
+SetTitleMatchMode, 2
+DetectHiddenWindows, on
+SendMessage, 0x44, 0x405, 0, , SomeOtherScript.ahk - AutoHotkey v
+MsgBox %ErrorLevel% is the process id.
+ + + diff --git a/src/docs/commands/Process.htm b/src/docs/commands/Process.htm new file mode 100644 index 0000000..8b35034 --- /dev/null +++ b/src/docs/commands/Process.htm @@ -0,0 +1,170 @@ + + + + +Process + + + + + + + +

Process

+ +

+´ÙÀ½ ¿¬»ê Áß Çϳª¸¦ ÇÁ·Î¼¼½º¿¡ ¼öÇàÇÕ´Ï´Ù: Á¸ÀçÇϴ°¡; ¿ì¼± ¼øÀ§ º¯°æ; ´Ý±â; ´ÝÈ÷±â¸¦ ±â´Ù¸®±â.

+ +
Process, Cmd [, PID-or-Name, Param3]
+

¸Å°³º¯¼ö

+
+ +
Cmd
+

´ÙÀ½ ´Ü¾î Áß Çϳª:

+

+ Exist: ºÎÇÕÇÏ´Â ÇÁ·Î¼¼½º°¡ Á¸ÀçÇϸé ErrorLevel¿¡ Process ID (PID)¸¦ ¼³Á¤ÇÕ´Ï´Ù. ±×·¸Áö ¾ÊÀ¸¸é 0ÀÌ ¼³Á¤µË´Ï´Ù. PID-or-Name ¸Å°³º¯¼ö°¡ ºñ¾î ÀÖÀ¸¸é, ±× ½ºÅ©¸³Æ®ÀÇ PID°¡ ¿­¶÷µË´Ï´Ù. ´Ù¸¥ ¹æ¹ýÀ¸·Î ½ºÅ©¸³Æ®ÀÇ PID¸¦ ¿­¶÷ÇÏ´Â ÇÑÁ٠¥¸® ¹æ¹ýÀÌ ÀÖ½À´Ï´Ù: PID := DllCall("GetCurrentProcessId").

+

+ Close: ºÎÇÕÇÏ´Â ÇÁ·Î¼¼½º°¡ ¼º°øÀûÀ¸·Î Á¾·áÇϸé, ErrorLevel¿¡ ±×ÀÇ ÀÌÀü Process ID (PID)°¡ ¼³Á¤µË´Ï´Ù. ±×·¸Áö ¾ÊÀ¸¸é (ºÎÇÕÇÏ´Â ÇÁ·Î¼¼½º°¡ ¾ø°Å³ª Á¾·á¿¡ ¹®Á¦°¡ ÀÖ¾úÀ¸¸é), 0ÀÌ ¼³Á¤µË´Ï´Ù. ÇÁ·Î¼¼½º´Â °©ÀÚ±â Á¾·áÇϱ⠶§¹®¿¡ -- ÀÓ°è ÁöÁ¡¿¡¼­ ±×ÀÇ ÀÛ¾÷ÀÌ ÀÎÅÍ·´Æ® µÈ´Ù°Å³ª ±×ÀÇ Ã¢¿¡ µ¥ÀÌÅ͸¦ ÀúÀåÇÏÁö ¸øÇÏ°í ÀÒ¾î¹ö¸°´Ù°Å³ªÇÒ °¡´É¼ºÀÌ Àֱ⠶§¹®¿¡ -- ÀÌ ¹æ¹ýÀº ±×ÀÇ Ã¢ Áß¿¡ Çϳª¿¡ WinClose¸¦ »ç¿ëÇؼ­ ÇÁ·Î¼¼½º¸¦ ´ÝÀ» ¼ö ¾øÀ» °æ¿ì¿¡¸¸ »ç¿ëÇØ¾ß ÇÕ´Ï´Ù.

+

+ List: List´Â ¾ÆÁ÷ Áö¿øÇÏÁö ¾ÊÁö¸¸, ¿¹Á¦ ¼½¼Ç¿¡¼­ DllCallÀ» ÅëÇÏ¿© ÇÁ·Î¼¼½º ¸ñ·ÏÀ» ¿­¶÷ÇÏ´Â ¹ýÀ» º¸¿©ÁÝ´Ï´Ù.

+

+ Param3¿¡ óÀ½ ºÎÇÕÇÏ´Â ÇÁ·Î¼¼½ºÀÇ Priority: ¿ì¼± ¼øÀ§¸¦ (À©µµ¿ìÁîÀÇ ÀÛ¾÷ °ü¸®ÀÚ¿¡ º¸¿©ÁÖ´Â ¼øÀ§) º¯°æÇÏ°í ErrorLevel¿¡ ±×ÀÇ Process ID (PID)¸¦ ¼³Á¤ÇÕ´Ï´Ù. PID-or-Name ¸Å°³º¯¼ö°¡ ºñ¾î ÀÖÀ¸¸é, ½ºÅ©¸³Æ®ÀÇ ÀÚ½ÅÀÇ ¿ì¼± ¼øÀ§°¡ º¯°æµË´Ï´Ù. ºÎÇÕÇÏ´Â ÇÁ·Î¼¼½º°¡ ¾ø°Å³ª ¿ì¼± ¼øÀ§¸¦ º¯°æÇÏ´Â µ¥ ¹®Á¦°¡ ÀÖ¾úÀ¸¸é, ErrorLevelÀº 0ÀÌ ¼³Á¤µË´Ï´Ù.

+

+ Param3Àº ´ÙÀ½ ±âÈ£³ª ´Ü¾îÁß Çϳª°¡ µÇ¾î¾ß ÇÕ´Ï´Ù: L (Low), B (BelowNormal), N (Normal), A (AboveNormal), H (High), R (Realtime). ÁÖÀÇ: ½Ç½Ã°£ ¿ì¼± ¼øÀ§¸¦ °¡Áö°í ½ÇÇàµÇµµ·Ï ¼³°èµÇÁö ¾ÊÀº ÇÁ·Î¼¼½º´Â ½Ã½ºÅÛÀÇ ¾ÈÁ¤¼ºÀ» ÈѼÕÇÒ ¼ö ÀÖ½À´Ï´Ù.

+

+ Wait: ºÎÇÕÇÏ´Â ÇÁ·Î¼¼½º°¡ ³¡³ª±â¸¦ Param3 ÃʱîÁö ±â´Ù¸³´Ï´Ù (¼Ò¼öÁ¡ Æ÷ÇÔ °¡´É). Param3À» »ý·«Çϸé, ¹«ÇÑÁ¤ ±â´Ù¸³´Ï´Ù. ºÎÇÕÇÏ´Â ÇÁ·Î¼¼½º¸¦ ¹ß°ßÇϸé, ErrorLevel¿¡ ±×ÀÇ Process ID (PID)°¡ ¼³Á¤µË´Ï´Ù. ¸í·É¾î°¡ ½Ã°£Á¦ÇÑ¿¡ °É¸®¸é, ErrorLevel¿¡ 0ÀÌ ¼³Á¤µË´Ï´Ù.

+

+ WaitClose: ºÎÇÕÇÏ´Â ¸ðµç ÇÁ·Î¼¼½º°¡ ´ÝÈú ¶§±îÁö Param3 ÃʱîÁö ±â´Ù¸³´Ï´Ù (¼Ò¼öÁ¡ Æ÷ÇÔ °¡´É). Param3À» »ý·«Çϸé, ¹«ÇÑÁ¤ ±â´Ù¸³´Ï´Ù. ºÎÇÕÇÏ´Â ÇÁ·Î¼¼½º°¡ ¸ðµÎ ´ÝÈ÷¸é, ErrorLevel¿¡ 0ÀÌ ¼³Á¤µË´Ï´Ù. ¸í·É¾î°¡ ½Ã°£ Á¦ÇÑ¿¡ °É¸®¸é, ErrorLevel¿¡ ¿©ÀüÈ÷ Á¸ÀçÇϴ ù ¹ø° ºÎÇÕ Process ID (PID)°¡ ¼³Á¤µË´Ï´Ù.

+ +
PID-or-Name
+

ÀÌ ¸Å°³º¯¼ö´Â ¾Æ·¡¿¡ ±â¼úÇÏ´Â °Íó·³ ¼ýÀÚ (PID)À̰ųª ÇÁ·Î¼¼½º À̸§ÀÏ ¼ö ÀÖ½À´Ï´Ù. ¶Ç ºñ¿ö µÎ¸é ½ºÅ©¸³Æ® ÀÚüÀÇ ¿ì¼± ¼øÀ§¸¦ º¯°æÇÒ ¼öµµ ÀÖ½À´Ï´Ù.

+

PID: Process ID´Â ƯÁ¤ÇÑ ÇÁ·Î¼¼½º Çϳª¸¦ À¯ÀÏÇÏ°Ô ½Äº°ÇÏ´Â ¼ýÀÚÀÔ´Ï´Ù (ÀÌ ¼ýÀÚ´Â ±× ÇÁ·Î¼¼½º°¡ »ì¾Æ ÀÖ´Â µ¿¾È¿¡¸¸ À¯È¿ÇÕ´Ï´Ù). »õ·Î ±âµ¿µÈ ÇÁ·Î¼¼½ºÀÇ PID´Â Run ¸í·É¾î¸¦ ÅëÇÏ¿© ¾Ë¾Æ³¾ ¼ö ÀÖ½À´Ï´Ù. ºñ½ÁÇÏ°Ô, âÀÇ PID´Â WinGetÀ¸·Î ¾Ë¾Æ³¾ ¼ö ÀÖ½À´Ï´Ù. Process ¸í·É¾î ÀÚü·Îµµ PID¸¦ ¾Ë¾Æ³¾ ¼ö ÀÖ½À´Ï´Ù.

+

Name: ÇÁ·Î¼¼½ºÀÇ À̸§Àº º¸Åë (°æ·Î ¾øÀÌ) ½ÇÇà ÆÄÀÏÀÇ À̸§°ú °°½À´Ï´Ù. ¿¹, notepad.exe ¶Ç´Â winword.exe. À̸§Àº ¿©·¯ ½ÇÇà ÇÁ·Î¼¼½º¿¡ ºÎÇÕÇÒ ¼ö Àֱ⠶§¹®¿¡, ù ¹ø° ÇÁ·Î¼¼½º¿¡¸¸ ÀÛµ¿ÇÕ´Ï´Ù. À̸§Àº ´ë¼Ò¹®ÀÚ¸¦ ±¸º°ÇÏÁö ¾Ê½À´Ï´Ù.

+ +
Param3
+

ÀÚ¼¼ÇÑ °ÍÀº À§¿¡¼­ Cmd¸¦ ÂüÁ¶.

+ +
+ +

ErrorLevel

+

ÀÚ¼¼ÇÑ °ÍÀº À§¿¡¼­ Cmd¸¦ ÂüÁ¶.

+ +

³íÆò

+

+Wait ±×¸®°í WaitClose¿¡ ´ëÇÏ¿©: ÇÁ·Î¼¼½º´Â 100 ¹Ð¸®Ãʸ¶´Ù Á¡°ËµË´Ï´Ù; Á¶°ÇÀÌ ¸¸Á·µÇ´Â ¼ø°£, ¸í·É¾î´Â ±â´Ù¸®±â¸¦ ¸ØÃä´Ï´Ù. ´Ù¸¥ ¸»·Î, ½Ã°£Á¦ÇÑÀÌ °æ°úÇϱ⸦ ±â´Ù¸®Áö ¾Ê°í, Áï½Ã ErrorLevel¿¡ À§¿¡ ±â¼úÇÑ ´ë·Î ¼³Á¤ÇÑ ´ÙÀ½, °è¼ÓÇؼ­ ½ºÅ©¸³Æ®¸¦ ½ÇÇàÇÕ´Ï´Ù. ¶ÇÇÑ, ¸í·É¾î°¡ ´ë±â »óÅ¿¡ ÀÖÀº µ¿¾È¿¡, ÇÖÅ°, ¸ÂÃã ¸Þ´º Ç׸ñ, ¶Ç´Â ŸÀ̸Ӹ¦ ÅëÇÏ¿© »õ ¾²·¹µå¸¦ ±âµ¿ÇÒ ¼ö ÀÖ½À´Ï´Ù.

+ +

°ü·Ã Ç׸ñ

+

Run, WinGet, WinClose, WinKill, WinWait, WinWaitClose, IfWinExist

+ +

¿¹Á¦

+
; ¿¹Á¦ #1:
+
+Run Notepad.exe, , , NewPID
+Process, priority, %NewPID%, High
+MsgBox »õ·Î ±âµ¿µÈ ³ëÆ®ÆеåÀÇ PID´Â %NewPID%ÀÔ´Ï´Ù.
+

 

+
; ¿¹Á¦ #2:
+
+Process, wait, Notepad.exe, 5.5
+NewPID = %ErrorLevel%  ; ErrorLevelÀÌ ÀÚÁÖ ¹Ù²î±â ¶§¹®¿¡ °ªÀ» Áï½Ã ÀúÀåÇÕ´Ï´Ù.
+if NewPID = 0
+{
+    MsgBox ÁöÁ¤ÇÑ ÇÁ·Î¼¼½º°¡ 5.5 ÃÊ À̳»¿¡ ³ªÅ¸³ªÁö ¾Ê¾Ò½À´Ï´Ù.
+    return
+}
+; ±×·¸Áö ¾ÊÀ¸¸é:
+MsgBox ºÎÇÕÇÏ´Â ÇÁ·Î¼¼½º°¡ ³ªÅ¸³µ½À´Ï´Ù (ÇÁ·Î¼¼½º ID´Â %NewPID%ÀÔ´Ï´Ù).
+Process, priority, %NewPID%, Low
+Process, priority, , High  ; ½ºÅ©¸³Æ® ÀÚü¿¡ ³ôÀº ¼øÀ§¸¦ ¼³Á¤ÇÕ´Ï´Ù.
+WinClose Untitled - Notepad
+Process, WaitClose, %NewPID%, 5
+if ErrorLevel ; ÇØ´ç PID°¡ ¿©ÀüÈ÷ Á¸ÀçÇÕ´Ï´Ù.
+    MsgBox ÇÁ·Î¼¼½º°¡ 5 ÃÊ À̳»¿¡ ´ÝÈ÷Áö ¾Ê¾Ò½À´Ï´Ù.
+

 

+
; ¿¹Á¦ #3: È°¼º âÀÇ ÇÁ·Î¼¼½º ¿ì¼±¼øÀ§¸¦ º¯°æÇÒ ÇÖÅ°:
+
+#z:: ; Win+Z ÇÖÅ°
+WinGet, active_pid, PID, A
+WinGetTitle, active_title, A
+Gui, 5:Add, Text,, Ãë¼ÒÇÏ·Á¸é ESCAPE¸¦ ´©¸£°Å³ª, ´ÙÀ½ â¿¡ ´ëÇÏ¿© »õ ¿ì¼±¼øÀ§¸¦`n´õºí Ŭ¸¯ÇϽʽÿÀ:`n%active_title%
+Gui, 5:Add, ListBox, vMyListBox gMyListBox r5, Normal|High|Low|BelowNormal|AboveNormal
+Gui, 5:Add, Button, default, OK
+Gui, 5:Show,, Set Priority
+return
+
+5GuiEscape:
+5GuiClose:
+Gui, Destroy
+return
+
+MyListBox:
+if A_GuiEvent <> DoubleClick
+    return
+; ±×·¸Áö ¾ÊÀ¸¸é ´ÙÀ½ ¶óº§·Î °©´Ï´Ù:
+5ButtonOK:
+GuiControlGet, MyListBox
+Gui, Destroy
+Process, Priority, %active_pid%, %MyListBox%
+if ErrorLevel
+    MsgBox ¼º°ø:  "%MyListBox%"¿¡ ¿ì¼±¼øÀ§°¡¹Ù²î¾ú½À´Ï´Ù.
+else
+    MsgBox ¿¡·¯: "%MyListBox%"¿¡ ¿ì¼± ¼øÀ§¸¦ ¹Ù²ÙÁö ¸øÇß½À´Ï´Ù.
+return
+

 

+
; ¿¹Á¦ #4: DllCallÀ» ÅëÇÏ¿© ½ÇÇà ÇÁ·Î¼¼½º ¸ñ·ÏÀ» ¿­¶÷ÇÏ°í ±× ¸ñ·ÏÀ» MsgBox¿¡ º¸¿©ÁÝ´Ï´Ù.
+
+d := "  |  "  ; ¹®ÀÚ¿­ °¡¸§ÀÚ
+s := 4096  ; ¹öÆÛ¿Í ¹è¿­ÀÇ Å©±â (4 KB)
+
+Process, Exist  ; ErrorLevel¿¡ ½ÇÇàÁßÀÎ ½ºÅ©¸³Æ®ÀÇ PID¸¦ ¼³Á¤ÇÕ´Ï´Ù
+; PROCESS_QUERY_INFORMATION (0x0400)·Î ÀÌ ½ºÅ©¸³Æ®ÀÇ ÇÚµéÀ» ¾ò½À´Ï´Ù
+h := DllCall("OpenProcess", "UInt", 0x0400, "Int", false, "UInt", ErrorLevel, "Ptr")
+; ´ÙÀ½ ÇÁ·Î¼¼½º·Î Á¶Àý°¡´ÉÇÑ Á¢±Ù ÅäÅ«À» ¿±´Ï´Ù (TOKEN_ADJUST_PRIVILEGES = 32)
+DllCall("Advapi32.dll\OpenProcessToken", "Ptr", h, "UInt", 32, "PtrP", t)
+VarSetCapacity(ti, 16, 0)  ; Ư±Ç ±¸Á¶Ã¼
+NumPut(1, ti, 0, "UInt")  ; Ư±Ç ¹è¿­¿¡ ÀÖ´Â ÇÑ ¿£Æ®¸®...
+; µð¹ö±× Ư±ÇÀÇ Áö¿ªÀûÀ¸·Î À¯ÀÏÇÑ ½Äº°ÀÚ¸¦ ¿­¶÷ÇÕ´Ï´Ù:
+DllCall("Advapi32.dll\LookupPrivilegeValue", "Ptr", 0, "Str", "SeDebugPrivilege", "Int64P", luid)
+NumPut(luid, ti, 4, "Int64")
+NumPut(2, ti, 12, "UInt")  ; ´ÙÀ½ Ư±ÇÀ» È°¼º È­ÇÕ´Ï´Ù: SE_PRIVILEGE_ENABLED = 2
+; ÀÌ ÇÁ·Î¼¼½ºÀÇ Æ¯±ÇÀ» »õ Á¢±Ù ÅäÅ«À¸·Î ¾÷µ¥ÀÌÆ®ÇÕ´Ï´Ù:
+r := DllCall("Advapi32.dll\AdjustTokenPrivileges", "Ptr", t, "Int", false, "Ptr", &ti, "UInt", 0, "Ptr", 0, "Ptr", 0)
+DllCall("CloseHandle", "Ptr", t)  ; ÀÌ Á¢±Ù ÅäÅ« ÇÚµéÀ» ´Ý¾Æ¼­ ¸Þ¸ð¸®¸¦ Àý¾àÇÕ´Ï´Ù
+DllCall("CloseHandle", "Ptr", h)  ; ÀÌ ÇÁ·Î¼¼½º ÇÚµéÀ» ´Ý¾Æ¼­ ¸Þ¸ð¸®¸¦ Àý¾àÇÕ´Ï´Ù
+
+hModule := DllCall("LoadLibrary", "Str", "Psapi.dll")  ; ¶óÀ̺귯¸®¸¦ ¹Ì¸® ÀûÀçÇØ ¼öÇ༺´ÉÀ» ³ôÀÌ´Ï´Ù.
+s := VarSetCapacity(a, s)  ; ÇÁ·Î¼¼½º ½Äº°ÀÚÀÇ ¸ñ·ÏÀ» ¹ÞÀ» ¹è¿­:
+c := 0  ; ÇÁ·Î¼¼½º ½Äº°ÀÚ¸¦ À§ÇÑ Ä«¿îÅÍ
+DllCall("Psapi.dll\EnumProcesses", "Ptr", &a, "UInt", s, "UIntP", r)
+Loop, % r // 4  ; ½Äº°ÀÚ¸¦ À§ÇÏ¿© ¹è¿­À» DWORD (32 ºñÆ®)·Î ºÐÇØÇÕ´Ï´Ù:
+{
+   id := NumGet(a, A_Index * 4, "UInt")
+   ; ´ÙÀ½À¸·Î ÇÁ·Î¼¼½º¸¦ ¿±´Ï´Ù: PROCESS_VM_READ (0x0010) | PROCESS_QUERY_INFORMATION (0x0400)
+   h := DllCall("OpenProcess", "UInt", 0x0010 | 0x0400, "Int", false, "UInt", id, "Ptr")
+   if !h
+      continue
+   VarSetCapacity(n, s, 0)  ; ¸ðµâÀÇ ±âº» À̸§À» ¹ÞÀ» ¹öÆÛ:
+   e := DllCall("Psapi.dll\GetModuleBaseName", "Ptr", h, "Ptr", 0, "Str", n, "UInt", A_IsUnicode ? s//2 : s)
+   if !e    ; 32-ºñÆ® ¸ðµåÀÏ ¶§ 64-ºñÆ® ÇÁ·Î¼¼½º¸¦ À§ÇÑ ´ëºñ ¹æ¹ý:
+      if e := DllCall("Psapi.dll\GetProcessImageFileName", "Ptr", h, "Str", n, "UInt", A_IsUnicode ? s//2 : s)
+         SplitPath n, n
+   DllCall("CloseHandle", "Ptr", h)  ; ÇÁ·Î¼¼½º ÇÚµéÀ» ´Ý¾Æ ¸Þ¸ð¸®¸¦ Àý¾àÇÕ´Ï´Ù
+   if (n && e)  ; À̹ÌÁö°¡ ³ÎÀÌ ¾Æ´Ï¸é ¸ñ·Ï¿¡ Ãß°¡ÇÕ´Ï´Ù:
+      l .= n . d, c++
+}
+DllCall("FreeLibrary", "Ptr", hModule)  ; ¶óÀ̺귯¸®¸¦ ³»·Á¼­ ¸Þ¸ð¸®¸¦ Ç®¾îÁÝ´Ï´Ù
+;Sort, l, C  ; ÀÌ ÁÙÀ» ÁÖ¼® ÇØÁ¦ÇÏ¸é ¸®½ºÆ®¸¦ ¾ËÆĺª ¼ø¼­·Î ¸®½ºÆ®¸¦ Á¤·ÄÇÒ ¼ö ÀÖ½À´Ï´Ù
+MsgBox, 0, %c% Processes, %l%
+

 

+
; ¿¹Á¦ #5: COMÀ» ÅëÇÏ¿© ÇöÀç ½ÇÇà ÁßÀÎ ÇÁ·Î¼¼½º ¸ñ·ÏÀ» ¿­¶÷ÇÕ´Ï´Ù.
+
+Gui, Add, ListView, x2 y0 w400 h500, Process Name|Command Line
+for process in ComObjGet("winmgmts:").ExecQuery("Select * from Win32_Process")
+    LV_Add("", process.Name, process.CommandLine)
+Gui, Show,, Process List
+
+; Win32_Process: http://msdn.microsoft.com/en-us/library/aa394372.aspx
+
+ + + diff --git a/src/docs/commands/Progress.htm b/src/docs/commands/Progress.htm new file mode 100644 index 0000000..a6975c7 --- /dev/null +++ b/src/docs/commands/Progress.htm @@ -0,0 +1,236 @@ + + + + +Progress/SplashImage + + + + + + + + +

Progress / SplashImage

+ +

ÇÁ·Î±×·¹½º ¹Ù³ª À̹ÌÁö¸¦ ´ã°í Àִ âÀ» »ý¼ºÇϰųª ¾÷µ¥ÀÌÆ® ÇÕ´Ï´Ù.

+ +
SplashImage, Off
+SplashImage [, ImageFile, Options, SubText, MainText, WinTitle, FontName]
+
+Progress, Off
+Progress, ProgressParam1 [, SubText, MainText, WinTitle, FontName]
+

¸Å°³º¯¼ö

+
+ +
ImageFile
+

´Ü¾î OFFÀ̸é, âÀº Æı«µË´Ï´Ù. ´Ü¾î SHOWÀ̸é, âÀÌ ÇöÀç ¼û¾î ÀÖÀ» °æ¿ì º¸¿©Áý´Ï´Ù.

+

±×·¸Áö ¾ÊÀ¸¸é, ÀÌ°ÍÀº º¸¿©ÁÙ BMP, GIF, ¶Ç´Â JPG À̹ÌÁöÀÇ ÆÄÀÏÀ̸§ÀÔ´Ï´Ù (PNG, TIF, ±×¸®°í ICO¿Í °°ÀÌ ´Ù¸¥ ÆÄÀÏ Çü½ÄÀ» º¸¿©ÁÖ·Á¸é, Gui ¸í·É¾î¸¦ »ç¿ëÇÏ¿© ±×¸² ÄÜÆ®·ÑÀÌ µé¾î Àִ âÀ» »ý¼ºÇÏ´Â ¹æ¹ýÀ» °í·ÁÇϽʽÿÀ).

+

[AHK_L 59+]: Gui°¡ Áö¿øÇÏ´Â Æ÷¸ËÀÌ¸é ¸ðµÎ SplashImage¿Í »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù.

+

ImageFileÀº Àý´ë °æ·Î¸¦ ÁöÁ¤ÇÏÁö ¾ÊÀ¸¸é %A_WorkingDir%¿¡ ÀÖ´Ù°í °£ÁÖÇÕ´Ï´Ù. ImageFile ±×¸®°í OptionsÀÌ ºñ¾î ÀÖ°í âÀÌ ÀÌ¹Ì Á¸ÀçÇϸé, ±×ÀÇ À̹ÌÁö´Â ¹Ù²îÁö ¾ÊÁö¸¸ ÅؽºÆ®´Â ¾÷µ¥ÀÌÆ®µÇ¾î SubText, MainText, ±×¸®°í WinTitle¿¡ Á¦°øµÈ »õ ¹®ÀÚ¿­À» ¹Ý¿µÇÕ´Ï´Ù.

+

»õ·Î »ý¼ºµÈ â¿¡ ´ëÇÏ¿©, ImageFileÀÌ ºñ¾î Àְųª À̹ÌÁö¸¦ ÀûÀçÇϴµ¥ ¹®Á¦°¡ ÀÖÀ¸¸é, âÀº ±×¸² ¾øÀÌ º¸¿©Áý´Ï´Ù.

+ +
ProgressParam1
+

ÇÁ·Î±×·¹½º âÀÌ ÀÌ¹Ì Á¸ÀçÇÏ´Â °æ¿ì: Param1ÀÌ ´Ü¾î OFFÀ̸é, âÀº Æı«µË´Ï´Ù. Param1ÀÌ ´Ü¾î SHOWÀ̸é, âÀÌ ÇöÀç ¼û¾î ÀÖÀ» °æ¿ì º¸¿©Áý´Ï´Ù.

+

±×·¸Áö ¾Ê°í, Param1ÀÌ ¼ø¼ö ¼ýÀÚÀ̸é, ±×ÀÇ ¹Ù À§Ä¡°¡ ±× °ª¿¡ ¸Â°Ô ¹Ù²ò´Ï´Ù. Param1ÀÌ ºñ¾î ÀÖÀ¸¸é, ±×ÀÇ ¹Ù À§Ä¡´Â ¹Ù²îÁö ¾ÊÁö¸¸ ±×ÀÇ ÅؽºÆ®´Â ¾÷µ¥ÀÌÆ®µÇ¾î SubText, MainText, ±×¸®°í WinTitle¿¡ Á¦°øµÈ »õ ¹®ÀÚ¿­À» ¹Ý¿µÇÕ´Ï´Ù. ÀÌ µÎ ¹æ¹ý ¸ðµÎ, âÀÌ ¾ÆÁ÷ Á¸ÀçÇÏÁö ¾ÊÀ¸¸é, ¸ðµç ¿É¼Ç¿¡ ´ëÇÏ¿© ±âº» °ªÀ» °¡Áö°í âÀÌ »ý¼ºµË´Ï´Ù.

+

ÇÁ·Î±×·¹½º âÀÌ Á¸ÀçÇÏÁö ¾ÊÀ¸¸é: »õ ÇÁ·Î±×·¹½º âÀÌ »ý¼ºµË´Ï´Ù (¿¹ÀüÀÇ ÇÁ·Î±×·¹½º âÀ» ±³Ã¼ÇÕ´Ï´Ù), ±×¸®°í Param1Àº ¾Æ·¡ ¸®½ºÆ®ÀÇ ¿É¼ÇÀ¸·Î ±¸¼ºµÈ ¹®ÀÚ¿­ÀÔ´Ï´Ù.

+ +
Options
+

´õ ¾Æ·¡ÀÇ ¸®½ºÆ® ¿É¼ÇÀ¸·Î ±¸¼ºµÈ ¹®ÀÚ¿­.

+ +
SubText
+

À̹ÌÁö³ª ¹Ù Ç¥½ÃÀÚ ¾Æ·¡¿¡ º¸¿©ÁÙ ÅؽºÆ®. ´Ü¾î-³Ñ±â±â°¡ ÀϾÁö¸¸, »õ ÁÙÀ» ¸í½ÃÀûÀ¸·Î ½ÃÀÛÇÏ·Á¸é, ¶óÀÎÇǵ带 »ç¿ëÇϽʽÿÀ (`n). ±âÁ¸ âÀÇ ÅؽºÆ®¸¦ ºñ¿ì·Á¸é, %A_Space%¸¦ ÁöÁ¤ÇϽʽÿÀ. â ³ôÀ̸¦ ÀÚµ¿ °è»êÇϱâ À§ÇØ, ºó ÁÙÀº ¾Æ·¡ÀÇ MainText¿Í ºñ½ÁÇÏ°Ô º¸Á¸ÇÒ ¼ö ÀÖ½À´Ï´Ù.

+ +
MainText
+

À̹ÌÁö³ª ¹Ù Ç¥½ÃÀÚ À§¿¡ º¸¿©ÁÙ ÅؽºÆ® (±Û²ÃÀÌ ¹Ý-º¼µåüÀÓ). ´Ü¾î-³Ñ±â±â°¡ ÀϾÁö¸¸, »õ ÁÙÀ» ¸í½ÃÀûÀ¸·Î ½ÃÀÛÇÏ·Á¸é, ¶óÀÎÇǵ带 »ç¿ëÇϽʽÿÀ (`n).

+

ºñ¾î Àְųª »ý·«Çϸé, MainText¿¡ ´ëÇÏ¿© â¿¡ ½ºÆäÀ̽º°¡ º¸Á¸µÇÁö ¾Ê½À´Ï´Ù. ³ªÁß¿¡ ÇÑ ÁÙÀ» Ãß°¡Çϱâ À§ÇØ ½ºÆäÀ̽º¸¦ º¸Á¸ÇÏ·Á¸é, ¶Ç´Â ±âÁ¸ âÀÇ ÅؽºÆ®¸¦ ºñ¿ì·Á¸é, %A_Space%¸¦ ÁöÁ¤ÇϽʽÿÀ. ù ÁÙÀ» ³Ñ¾î µû·Î ´õ ÁÙÀ» À¯ÁöÇÏ·Á¸é, ¶óÀÎÇǵ带 ´õ Ãß°¡ÇϽʽÿÀ (`n).

+

ÀÏ´Ü MainTextÀÇ ÄÜÆ®·Ñ ±¸¿ªÀÇ ³ôÀÌ°¡ ¼³Á¤µÇ¸é, âÀ» ´Ù½Ã ¸¸µéÁö ¾ÊÀº ÇÑ ¹Ù²Ü ¼ö ¾ø½À´Ï´Ù.

+ +
WinTitle
+

âÀÇ Á¦¸ñ. »ý·«µÇ°í âÀÌ »õ·Î »ý¼ºµÇ¾ú´Ù¸é, â Á¦¸ñÀº (°æ·Î ¾øÀÌ) ½ºÅ©¸³Æ®ÀÇ À̸§ÀÌ ±âº»°ªÀÌ µË´Ï´Ù. B (borderless) ¿É¼ÇÀÌ ÁöÁ¤µÇ¾ú´Ù¸é, Á¦¸ñ ¹Ù´Â º¸ÀÌÁö ¾ÊÁö¸¸ âÀº ¿©ÀüÈ÷ WinMove¿Í °°Àº ¸í·É¾î¿¡¼­ ÀÌ Á¦¸ñÀ¸·Î ÂüÁ¶ÇÒ ¼ö ÀÖ½À´Ï´Ù.

+ +
FontName
+

MainText¿Í SubText¿¡ »ç¿ëÇÒ ±Û²ÃÀÇ À̸§. ±Û²Ã Å×ÀÌºí¿¡ ´Ù¾çÇÑ À©µµ¿ìÁî ¹öÀü¿¡ Æ÷ÇÔµÈ ±Û²ÃÀÌ ³ª¿­µÇ¾î ÀÖ½À´Ï´Ù. ±Û²ÃÀÌ ÁöÁ¤µÇÁö ¾Ê¾Ò°Å³ª ãÀ» ¼ö ¾øÀ¸¸é, ½Ã½ºÅÛÀÇ ±âº» GUI ±Û²ÃÀÌ »ç¿ëµË´Ï´Ù.

+

±Û²ÃÀÇ Å©±â¿Í µÎ²² ±×¸®°í »öÀ» º¯°æÇÏ´Â ¹æ¹ýÀº ¾Æ·¡ ¿É¼Ç ¼½¼ÇÀ» ÂüÁ¶ÇϽʽÿÀ.

+ +
+ +

â Å©±â, À§Ä¡, ±×¸®°í ÇàÀ§

+

+A: âÀº ¾ðÁ¦³ª À§¿¡ ÀÖÁö ¾Ê½À´Ï´Ù.

+

+B: Borderless: â¿¡ Å׵θ®°¡ ¾ø°í Á¦¸ñ ¹Ù°¡ ¾ø½À´Ï´Ù. Å׵θ®´Â ÀÖÁö¸¸ Á¦¸ñ ¹Ù´Â ÇÊ¿ä ¾ø´Ù¸é, ¾ãÀº Å׵θ®¿¡ B1À» »ç¿ëÇÏ°í ´ëÈ­»óÀÚ ½ºÅ¸ÀÏÀÇ Å׵θ®¿¡ B2¸¦ »ç¿ëÇϽʽÿÀ.

+

+M: »ç¿ëÀÚ°¡ âÀ» À̵¿ÇÒ ¼ö ÀÖ½À´Ï´Ù (Å׵θ®°¡ ¾ø´Â °æ¿ì´Â ¿¹¿Ü). Ãß°¡·Î (Å׵θ®¸¦ ²ø¾î¼­) âÀÇ Å©±â¸¦ ¹Ù²Ù·Á¸é, M1À» ÁöÁ¤ÇϽʽÿÀ. Ãß°¡·Î ½Ã½ºÅÛ ¸Þ´º¸¦ Æ÷ÇÔÇÏ°í Á¦¸ñ ¹Ù¿¡ ÃÖ¼ÒÈ­/ÃÖ´ëÈ­/´Ý±â ¹öÆ° ÁýÇÕÀ» Æ÷ÇÔÇÏ·Á¸é, M2¸¦ ÁöÁ¤ÇϽʽÿÀ.

+

+Pn: ÇÁ·Î±×·¹½º â¿¡ ´ëÇÏ¿©, n¿¡ Á¦¸ñ ¹ÙÀÇ ½ÃÀÛ À§Ä¡¸¦ ÁöÁ¤ÇϽʽÿÀ (±âº»°ªÀº 0ÀÔ´Ï´Ù. ¶Ç´Â Çã¿ëµÇ´Â ¹üÀ§ ¾È¿¡¼­ 0¿¡ °¡Àå °¡±î¿î ¼ýÀÚÀÔ´Ï´Ù). +³ªÁß¿¡ ¹ÙÀÇ À§Ä¡¸¦ ¹Ù²Ù·Á¸é, ´ÙÀ½ ¿¹Á¦¸¦ µû¸£½Ê½Ã¿À: Progress, 50.

+

+Rx-y: ÇÁ·Î±×·¹½º â¿¡ ´ëÇÏ¿©, x-y¿¡ ¹ÙÀÇ ¹üÀ§¸¦ ÁöÁ¤ÇϽʽÿÀ (R ¿É¼ÇÀÌ ¾øÀ¸¸é, ±âº» °ªÀº 0-100ÀÔ´Ï´Ù). ¿¹¸¦ µé¾î, R0-1000À̸é 0ºÎÅÍ 1000±îÁöÀÌ ¼ýÀÚ¸¦ Çã¿ëÇÕ´Ï´Ù; R-50-50À̸é -50ºÎÅÍ 50±îÁö Çã¿ëÇÕˆ•; ±×¸®°í R-10--5À̸é -10ºÎÅÍ -5±îÁö Çã¿ëÇÕ´Ï´Ù.

+

+T: âÀÇ Å½ºÅ© ¹Ù¿¡ ¹öÆ°ÀÌ Çϳª ÁÖ¾îÁý´Ï´Ù. ±×¸®°í ¼ÒÀ¯ÁÖ°¡ ¾ø½À´Ï´Ù. º¸Åë, âÀº ½ºÅ©¸³Æ®ÀÇ ¸ÞÀΠâ¿¡ ¼ÓÇϱ⠶§¹®¿¡ ¹öÆ°ÀÌ ¾ø½À´Ï´Ù. ÀÌ ¼³Á¤Àº ¶ÇÇÑ GUI âÀÇ Gui +OwnDialogs ¼³Á¤ÀÌ ½ºÇ÷¹½Ã ¶Ç´Â ÇÁ·Î±×·¹½º âÀ» ¼ÒÀ¯ÇÏÁö ¸øÇϵµ·Ï ¸·½À´Ï´Ù.

+

+Hn: n¿¡ âÀÇ Å¬¶óÀ̾ðÆ® ±¸¿ªÀÇ ³ôÀ̸¦ ÁöÁ¤ÇϽʽÿÀ (Á¦¸ñ ¹Ù¿Í Å׵θ®¸¦ Á¦¿ÜÇÑ ±¸¿ªÀÔ´Ï´Ù). ÁöÁ¤ÇÏÁö ¾ÊÀ¸¸é, âÀÇ ÅؽºÆ®¿Í À̹ÌÁö/¹ÙÀÇ ³ôÀÌ¿¡ ±â¹ÝÇÏ¿© ±× ³ôÀÌ°¡ ÀÚµ¿À¸·Î °è»êµË´Ï´Ù.

+

+Wn: n¿¡ âÀÇ Å¬¶óÀ̾ðÆ® ±¸¿ªÀÇ ³Êºñ¸¦ ÁöÁ¤ÇϽʽÿÀ. ÁöÁ¤ÇÏÁö ¾ÊÀ¸¸é, (À̹ÌÁö°¡ ÀÖ´Ù¸é) SplashImage¿¡ ´ëÇÏ¿© ³Êºñ°¡ ÀÚµ¿À¸·Î °è»êµË´Ï´Ù. ±×·¸Áö ¾ÊÀ¸¸é, ±âº»°ªÀº 300ÀÔ´Ï´Ù.

+

+Xn: n¿¡ âÀÇ Á»ó ¸ð¼­¸®ÀÇ x-ÁÂÇ¥¸¦ ÁöÁ¤ÇϽʽÿÀ. ÁöÁ¤ÇÏÁö ¾ÊÀ¸¸é, âÀº ¼öÆòÀ¸·Î È­¸é °¡¿îµ¥¿¡ ³õÀÔ´Ï´Ù.

+

Yn: n¿¡ âÀÇ Á»ó ¸ð¼­¸®ÀÇ y-ÁÂÇ¥¸¦ ÁöÁ¤ÇϽʽÿÀ. ÁöÁ¤ÇÏÁö ¾ÊÀ¸¸é, âÀº ¼öÁ÷À¸·Î È­¸é °¡¿îµ¥¿¡ ³õÀÔ´Ï´Ù.

+

+Hide: âÀº ÃÖÃÊ¿¡ ¼û¾î ÀÖ½À´Ï´Ù. Progress Show ¶Ç´Â SplashImage Show¸¦ »ç¿ëÇØ ³ªÁß¿¡ º¸¿©ÁÙ ¼ö ÀÖ½À´Ï´Ù.

+ +

â¿¡ °´Ã¼ ¹èÄ¡Çϱâ

+

Cxy: Centered: ÀÌ ¿É¼ÇÀÌ ¾øÀ¸¸é, SubText ±×¸®°í MainText ¸ðµÎ â ÇÑ °¡¿îµ¥¿¡ ³õÀÔ´Ï´Ù. 0À» x¿¡ ÁöÁ¤Çϸé SubText°¡ ¿ÞÂÊ Á¤·ÄµË´Ï´Ù. 1À» ÁöÁ¤Çϸé Áß¾Ó¿¡ Á¤·ÄµË´Ï´Ù. y¿¡µµ ¸¶Âù°¡ÁöÀÔ´Ï´Ù. ´Ü, MainText¿¡ Àû¿ëµÇ´Â °æ¿ì´Â ¿¹¿ÜÀÔ´Ï´Ù (y´Â »ý·«ÇÒ ¼ö ÀÖ½À´Ï´Ù). ¿¹¸¦ µé¾î: c10.

+

+ZHn: °´Ã¼ÀÇ ³ôÀÌ: ÇÁ·Î±×·¹½º â¿¡ ´ëÇÏ¿©, n¿¡ ÇÁ·Î±×·¹½º ¹ÙÀÇ µÎ²²¸¦ ÁöÁ¤ÇϽʽÿÀ (±âº»°ª 20). SplashImage â¿¡ ´ëÇÏ¿©, n¿¡ À̹ÌÁö¸¦ Á¶ÀýÇÒ ³ôÀ̸¦ ÁöÁ¤ÇϽʽÿÀ. -1À» ÁöÁ¤ÇÏ¸é ³ôÀ̸¦ ZWn ÁöÁ¤µÈ ³Êºñ¿¡ ºñ·ÊÇϵµ·Ï Á¶ÀýÇÒ ¼ö ÀÖ½À´Ï´Ù (Áï, "È­¸é ºñÀ² À¯Áö"). ÁöÁ¤ÇÏÁö ¾ÊÀ¸¸é, ½ÇÁ¦ À̹ÌÁö ³ôÀÌ°¡ »ç¿ëµË´Ï´Ù. ¾î´À °æ¿ìµç, °ªÀ» 0À¸·Î ÁöÁ¤ÇÏ¸é °´Ã¼¸¦ ¿ÏÀüÈ÷ »ý·«ÇÒ ¼ö ÀÖ½À´Ï´Ù. ±×·¯¸é ¸ÂÃ㠱۲ðú Å©±â ±×¸®°í »öÀ¸·Î ¿ÀÁ÷ ÅؽºÆ®¸¸ º¸¿©ÁÖ´Â µ¥ âÀ» »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù.

+

+ZWn: °´Ã¼ÀÇ ³Êºñ (SplashImage â Àü¿ë): n¿¡ À̹ÌÁö¸¦ Á¶ÀýÇÒ ³Êºñ¸¦ ÁöÁ¤ÇϽýʽÿÀ. -1À» ÁöÁ¤ÇÏ¸é ³Êºñ¸¦ ZHn¿¡ ÁöÁ¤µÈ ³Êºñ¿¡ ºñ·ÊÇÏ¿© Á¶ÀýÇÒ ¼ö ÀÖ½À´Ï´Ù. (Áï, "È­¸é ºñÀ² À¯Áö"). ÁöÁ¤ÇÏÁö ¾ÊÀ¸¸é, ½ÇÁ¦ À̹ÌÁö ³Êºñ°¡ »ç¿ëµË´Ï´Ù.

+

+ZXn: n¿¡ âÀÇ Á¿쿡 ³²±æ ¿©¹éÀÇ ¾çÀ» ÁöÁ¤ÇϽʽÿÀ. ±âº» °ªÀº 10 Çȼ¿ÀÔ´Ï´Ù. ´Ü, SplashImage âÀº ÅؽºÆ®°¡ ¾ø°í, ±âº» °ªÀº 0ÀÔ´Ï´Ù.

+

+ZYn: n¿¡ âÀÇ »óÇÏ ±×¸®°í ÄÜÆ®·Ñ »çÀÌ¿¡ ³²±æ ºó ¼öÁ÷ °ø°£ÀÇ ¾çÀ» ÁöÁ¤ÇϽʽÿÀ. ±âº» °ªÀº 5Çȼ¿ÀÔ´Ï´Ù. ´Ü, SplashImage âÀº ÅؽºÆ®°¡ ¾ø°í, ±âº»°ªÀº 0ÀÔ´Ï´Ù.

+

+ÁÖÀÇ: ¼öÁ÷ ÇÁ·Î±×·¹½º ¹Ù¸¦ ¸¸µé°Å³ª ·¹À̾ƿôÀ» Á» ´õ À¯¿¬ÇÏ°Ô Á¦¾îÇÏ·Á¸é, ´ÙÀ½ ¿¹Á¦¿Í °°ÀÌ Gui ¸í·É¾î¸¦ »ç¿ëÇϽʽÿÀ:

+ +
Gui, Add, Progress, Vertical vMyProgress
+Gui, Show
+return
+; ... later...
+GuiControl,, MyProgress, +10  ; ¹Ù¸¦ À§·Î10 ÆÛ¼¾Æ® À̵¿½ÃÅ°ºó´Ù. +¸¦ »ý·ª°²¸é Àý´ë À§Ä¡¸¦ ÁöÁ¤ÇÒ ¼ö ÀÖ½À´Ï´Ù.
+ +

±Û²Ã Å©±â¿Í ¹«°Ô

+

+FMn: MainText¿¡ ´ëÇÑ ±Û²Ã Å©±â¸¦ n¿¡ ÁöÁ¤ÇϽʽÿÀ. ±âº»°ªÀº 0ÀÌ°í, ´ëºÎºÐÀÇ ½Ã½ºÅÛ¿¡¼­ 10 Æ÷ÀÎÆ®°¡ »ç¿ëµË´Ï´Ù. ÀÌ ±âº»°ªÀº Á¦¾îÆÇ > È­¸é ¼³Á¤¿¡¼­ ½Ã½ºÅÛÀÌ ¼±ÅÃÇÑ ±Û²Ã Å©±â¿¡ ¿µÇâÀ» ¹ÞÁö ¾Ê½À´Ï´Ù.

+

+FSn: SubText¿¡ ´ëÇÑ ±Û²Ã Å©±â¸¦ n¿¡ ÁöÁ¤ÇϽʽÿÀ. ±âº»°ªÀº 0ÀÔÀÌ°í ´ëºÎºÐÀÇ ½Ã½ºÅÛ¿¡¼­ 0 Æ÷ÀÎÆ®°¡ »ç¿ëµË´Ï´Ù.

+

+WMn: MainText¿¡ ´ëÇÏ¿© ±Û²Ã ¹«°Ô¸¦ n¿¡ ÁöÁ¤ÇϽʽÿÀ. ÀÌ µÎ²²´Â ¹üÀ§°¡ 1ºÎÅÍ 1000±îÁöÀÔ´Ï´Ù. ÁöÁ¤ÇÏÁö ¾ÊÀ¸¸é, 600 (¹Ý-º¼µåü)ÀÌ »ç¿ëµË´Ï´Ù.

+

+WSn: SubText¿¡ ´ëÇÏ¿© ±Û²Ã ¹«°Ô¸¦ n¿¡ ÁöÁ¤ÇϽʽÿÀ. µÎ²²´Â ¹üÀ¨ 1ºÎÅÍ 1000±îÁö ÀÔ´Ï´Ù (700Àº ÀüÅëÀûÀ¸·Î "º¼µåü"·Î °£Áֵ˴ϴÙ). ÁöÁ¤ÇÏÁö¾ÊÀ¸¸é, 400 (º¸Åë)ÀÌ »ç¿ëµË´Ï´Ù.

+ +

°´Ã¼ »ö

+

+»öÀº ¾Æ·¡ ¸®½ºÆ®ÀÇ »ö À̸§ Áß ÇϳªÀ̰ųª ¶Ç´Â ¿©¼¸-ÀÚ¸® ½ÊÀ°Áø RGB °ªÀÔ´Ï´Ù. ¿¹¸¦ µé¾î, cw1A00FF¸¦ ÁöÁ¤Çϸé â ¹è°æ»öÀÌ Àû»öÀº 1A, ³ì»öÀº 00, ±×¸®°í û»öÀº FF·Î ¼³Á¤µË´Ï´Ù.

+

+±× ´ÙÀ½¿¡ ¿É¼ÇÀÌ ´õ ÀÖÀ¸¸é °¢ Ä÷¯ ¿É¼Ç ´ÙÀ½¿¡ ½ºÆäÀ̽º¸¦ Ãß°¡ÇϽʽÿÀ. ¿¹¸¦ µé¾î: cbRed ct900000 cwBlue.

+

+CBn: ÇÁ·Î±×·¹½º ¹ÙÀÇ Ä÷¯: n¿¡ 16°¡Áö ±âº» HTML Ä÷³ À̸§ Áß Çϳª ¶Ç´Â 6-ÀÚ¸® RGB Ä÷¯ °ªÀ» ÁöÁ¤ÇϽʽÿÀ. ÁöÁ¤ÇÏÁö ¾ÊÀ¸¸é, ½Ã½ºÅÛÀÇ ±âº» ¹Ù Ä÷¯°¡ »ç¿ëµË´Ï´Ù. ´Ü¾î Default¸¦ ÁöÁ¤ÇÏ¸é ½Ã½ºÅÛÀÌ ±âº» ÇÁ·Î±×·¹½º ¹Ù Ä÷¯·Î µÇµ¹¾Æ ¿Ã ¼ö ÀÖ½À´Ï´Ù.

+

+CTn: ÅؽºÆ® Ä÷¯: n¿¡ 16°¡Áö ±âº» HTML Ä÷¯ À̸§ Áß Çϳª ¶Ç´Â 6-ÀÚ¸® RGB Ä÷¯ °ªÀ» ÁöÁ¤ÇϽʽÿÀ. ÁöÁ¤ÇÏÁö ¾ÊÀ¸¸é, ½Ã½ºÅÛÀÇ ±âº» ÅؽºÆ® Ä÷¯°¡ »ç¿ëµË´Ï´Ù (º¸Åë °ËÁ¤»ö). ´Ü¾î Default¸¦ ÁöÁ¤ÇÏ¸é ½Ã½ºÅÛÀÇ ±âº» ÅؽºÆ® Ä÷¯·Î µ¹¾Æ¿Ã ¼ö ÀÖ½À´Ï´Ù.

+

+CWn: âÀÇ Ä÷¯ (¹è°æ»ö): Sn¿¡ 16°¡Áö ±âº» HTML Ä÷¯ À̸§ Áß Çϳª ¶Ç´Â 6-ÀÚ¸® RGB Ä®·¯ °ªÀ» ÁöÁ¤ÇϽʽÿÀ. ÁöÁ¤ÇÏÁö ¾ÊÀ¸¸é, ½Ã½ºÅÛÀÇ ¹öÆ° »öÀÌ »ç¿ëµË´Ï´Ù (´Ü¾î Default ¸¦ ÁöÁ¤ÇÏ¸é ³ªÁß¿¡ ÀÌ Ä÷¯·Î µÇµ¹¾Æ ¿Ã ¼ö ÀÖ½À´Ï´Ù). ¹è°æ»öÀ» Åõ¸íÇÏ°Ô ¸¸µé·Á¸é, WinSet TransColor¸¦ »ç¿ëÇϽʽÿÀ.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ Ä÷¯ À̸§°ú RGB °ª +
 Black = 000000 Green = 008000
 Silver = C0C0C0 Lime = 00FF00
 Gray = 808080 Olive = 808000
 White = FFFFFF Yellow = FFFF00
 Maroon = 800000 Navy = 000080
 Red = FF0000 Blue = 0000FF
 Purple = 800080 Teal = 008080
 Fuchsia = FF00FF Aqua = 00FFFF
+

³íÆò

+

+ù ¸Å°³º¯¼ö°¡ ´Ü¾î OFFÀ̸é, ±× âÀº Æı«µË´Ï´Ù.

+

+°¢ ½ºÅ©¸³Æ®´Â ÃÖ´ë 10°³ÀÇ ÇÁ·Î±×·¹½º ⠱׸®°í 10 °³ÀÇ SplashImage âÀ» º¸¿©ÁÙ ¼ö ÀÖ½À´Ï´Ù. °¢ ⸶´Ù »ý¼º ¼ø°£¿¡ ÇÒ´çµÈ ¹øÈ£°¡ ÀÖ½À´Ï´Ù. ÁöÁ¤µÇÁö ¾ÊÀ¸¸é ±× ¹øÈ£´Â 1 (ù ¹ø°)ÀÔ´Ï´Ù. ±×·¸Áö ¾ÊÀ¸¸é, ù ¸Å°³º¯¼ö ¾Õ¿¡ û ¹øÈ£¿Í ½ÖÁ¡À» ¹èÄ¡ÇϽʽÿÀ. ¿¹¸¦ µé¾î, 2:Off·Î Progress ¸í·É¾î¸¦ »ç¿ëÇϸé 2 ¹ø ÇÁ·Î±×·¡½º âÀÌ ²¨Áý´Ï´Ù, 2:75ÀÌ¸é ±×ÀÇ ¹Ù¸¦ 75%·Î ¼³Á¤ÇÕ´Ï´Ù, 2:ÀÌ¸é ±×ÀÇ ÅؽºÆ® Çʵ尡 ¹Ù²ò´Ï´Ù. ±×¸®°í 2:BÀ̸é Å×Åõ¸® ¾ø´Â »õ ÇÁ·Î±×·¹½º âÀÌ »ý¼ºµË´Ï´Ù. ºñ½ÁÇÏ°Ô, SplashImage ¸í·É¾î¸¦ 2:Off¿Í ÇÔ²² »ç¿ëÇϸé 2 ¹ø SplashImage âÀÌ ²¨Áö°í, 2:ÀÌ¸é ±×ÀÇ ÅؽºÆ® Çʵ尡 ¹Ù²ò´Ï´Ù. ±×¸®°í 2:C:\My Images\Picture1.jpg ÀÌ¸é »õ·Î 2 ¹ø SplashImage âÀÌ »ý¼ºµË´Ï´Ù.

+

+»ý¼ºµÉ ¶§, ¹ÙÅÁÈ­¸éº¸´Ù Å« âÀº ÀÚµ¿À¸·Î ¹ÙÅÁÈ­¸é¿¡ ¸Â°Ô ÁÙ¾îµì´Ï´Ù.

+

+¸Ç ÇÁ·Î±×·¹½º ¹Ù¸¦ º¸¿© ÁÖ·Á¸é SubTextµµ MainTextµµ ÁöÁ¤ÇÏÁö ¾Ê°í, ´ÙÀ½ ¿É¼ÇÀ» Æ÷ÇÔÇÏ¸é µË´Ï´Ù: b zx0 zy0. ¸Ç À̹ÌÁö¸¦ º¸¿©ÁÖ·Á¸é °°Àº ¹æ½ÄÀ¸·Î Ç쵂 B ¿É¼ÇÀÌ ´õ ÇÊ¿äÇÕ´Ï´Ù.

+ +

+Windows XP ÀÌÈÄ·Î, ºñ-Ŭ·¡½Ä Å׸¶°¡ ÄÑÁ® ÀÖÀ¸¸é, ÇÁ·Î±×·¹½º ¹ÙÀÇ ³»ºÎ°¡ ºÎµå·´°Ô À̾îÁö´Â ¹Ù°¡ ¾Æ´Ï¶ó µüµüÇÏ°Ô ÀÏ·Ã ±¸È¹À¸·Î º¸ÀÏ ¼ö ÀÖ½À´Ï´Ù. À̸¦ ÇÇÇÏ·Á¸é, cbBlue¿Í °°ÀÌ ¹Ù Ä÷¯¸¦ ¸í½ÃÀûÀ¸·Î ÁöÁ¤ÇϽʽÿÀ.

+

+¿É¼Ç ±âÈ£¿¡ ÇÊ¿äÇÒ °æ¿ì (½ÊÀ°Áø¼ö°¡ ¾Æ´Ï¶ó) ½ÊÁø¼ö¸¦ »ç¿ëÇϽʽÿÀ. ´Ü, µû·Î °íÁöÇÏ´Â °æ¿ì´Â ¿¹¿ÜÀÔ´Ï´Ù.

+

+WinSet ±×¸®°í WinMove °°Àº ¸í·É¾î¸¦ »ç¿ëÇÏ¸é ´Ù½Ã »ý¼ºÇÒ ÇÊ¿ä¾øÀÌ ±âÁ¸ âÀÇ ¼Ó¼ºÀ» ¹Ù²Ü ¼ö ÀÖ½À´Ï´Ù.

+

+GUI âÀÌ Gui +OwnDialogs ¼ö´ÜÀ» »ç¿ëÇÏ¿© ÇÁ·Î±×·¹½º âÀ̳ª ½ºÇ÷¹½Ã âÀ» ¼ÒÀ¯ÇÒ ¼ö ÀÖ½À´Ï´Ù. ÀÌ·¸°Ô ÇÏ¸é ½ºÇ÷¹½Ã³ª ÇÁ·Î±×·¹½º âÀÌ ¼ÒÀ¯Ã¢ º¸´Ù ¾ðÁ¦³ª À§¿¡ ÀÖ°Ô µË´Ï´Ù. °Ô´Ù°¡, ±× GUI âÀÌ Æı«µÉ ¶§ ÇÁ·Î±×·¹½º âÀ̳ª ½ºÇ÷¹½Ã âµµ ÀÚµ¿À¸·Î Æı«µË´Ï´Ù.

+ +

°ü·Ã Ç׸ñ

+

+GUI, SplashTextOn, ToolTip

+ +

¿¹Á¦

+ +
Progress, b w200, My SubText, My MainText, My Title
+Progress, 50 ; ¹ÙÀÇ À§Ä¡¸¦ 50%·Î ¼³Á¤ÇÕ´Ï´Ù.
+Sleep, 4000
+Progress, Off
+
+; 18-Æ÷ÀÎÆ® Courier ÅؽºÆ®¸¦ º¸¿©Á٠âÀ» »ý¼ºÇÕ´Ï´Ù:
+Progress, m2 b fs18 zh0, This is the Text.`nThis is a 2nd line., , , Courier New
+
+; °£´ÜÇÑ SplashImage âÀ» ¸¸µì´Ï´Ù:
+SplashImage, C:\My Pictures\Company Logo.gif
+
+; Å×Åõ¸® ¾ø´Â SplashImage âÀ» »ý¼ºÇÕ´Ï´Ù. À̹ÌÁö ¾Æ·¡¿¡ Å« ÅؽºÆ®°¡ ÀÖ½À´Ï´Ù:
+SplashImage, C:\My Pictures\Company Logo.gif, b fs18, This is our company logo.
+Sleep, 4000
+SplashImage, Off
+
+; ´ÙÀ½Àº SplashImage À§¿¡ ÇÁ·Î±×·¡½º âÀ» ÁßøÇؼ­
+; ¼³Ä¡ È­¸éÀ» ¸ÚÁö°Ô º¸¿©ÁÝ´Ï´Ù:
+IfExist, C:\WINDOWS\system32\ntimage.gif, SplashImage, %A_WinDir%\system32\ntimage.gif, A,,, Installation
+Loop, %A_WinDir%\system32\*.*
+{
+    Progress, %a_index%, %a_loopfilename%, Installing..., Draft Installation
+    Sleep, 50
+    if a_index = 100
+        break
+}
+; GUI ÆäÀÌÁö ¾Æ·¡¿¡ ºñ½ÁÇÑ ¿¹Á¦°¡ ÀÖ½À´Ï´Ù. ±×ÀÇ ÀåÁ¡Àº ¿ÀÁ÷ ÇϳªÀÇ Ã¢¸¸ »ç¿ëÇÏ°í
+; â ·¹À̾ƿôÀ» ´õ ¼¶¼¼ÇÏ°Ô Á¦¾îÇÒ ¼ö ÀÖ´Ù´Â °ÍÀÔ´Ï´Ù.
+ + + diff --git a/src/docs/commands/Random.htm b/src/docs/commands/Random.htm new file mode 100644 index 0000000..b6bf07c --- /dev/null +++ b/src/docs/commands/Random.htm @@ -0,0 +1,106 @@ + + + + +Random + + + + + + + +

Random

+ +

ÀÇ»ç-¹«ÀÛÀ§ ¼ö¸¦ ¹ß»ý½Ãŵ´Ï´Ù.

+ +
Random, OutputVar [, Min, Max]
+Random, , NewSeed
+

¸Å°³º¯¼ö

+
+ +
OutputVar
+

°á°ú¸¦ ÀúÀåÇÒ º¯¼öÀÇ À̸§. ÀúÀåµÈ ºÎµ¿ ¼Ò¼öÁ¡ ¼öÀÇ Çü½ÄÀº SetFormat¿¡ ÀÇÇÏ¿© °áÁ¤µË´Ï´Ù.

+ +
Min
+
»ý¼ºµÉ °¡Àå ÀÛÀº ¼ö. À½¼ö³ª ºÎµ¿ ¼Ò¼öÁ¡¼ö ¶Ç´Â Ç¥Çö½Ä °¡´É. »ý·«Çϸé, °¡Àå ÀÛÀº °ªÀº 0ÀÔ´Ï´Ù. Á¤¼ö¿¡ ´ëÇÏ¿© Çã¿ëµÇ´Â °¡Àå ³·Àº °ªÀº -2147483648 for integersÀÌÁö¸¸, ºÎµ¿ ¼Ò¼öÁ¡ ¼ö´Â Á¦ÇÑÀÌ ¾ø½À´Ï´Ù.
+ +
Max
+

»ý¼ºµÉ °¡Àå Å« ¼ö, À½¼ö³ª ºÎµ¿ ¼Ò¼öÁ¡ ¼ö ¶Ç´Â Ç¥Çö½Ä °¡´É. »ý·«Çϸé, °¡Àå Å« ¼ö´Â Á¤¼ö¿¡ ´ëÇÏ¿© 2147483647ÀÔ´Ï´Ù (±×·¯³ª ºÎµ¿ ¼Ò¼öÁ¡ ¼ö´Â Á¦ÇÑÀÌ ¾ø½À´Ï´Ù).

+ +
NewSeed
+

ÀÌ ¸ðµå´Â ¹«ÀÛÀ§ ¼ö ¹ß»ýÀÚ¿¡ NewSeed·Î ´Ù½Ã ¾¾¾ÑÀ» ¸ÔÀÔ´Ï´Ù (Ç¥Çö½Ä °¡´É). ÀÌ°ÍÀº ÀÌ¾î ¹ß»ýµÇ´Â ¸ðµç ¹«ÀÛÀ§ ¼ö¿¡ ¿µÇâÀ» ¹ÌĨ´Ï´Ù. NewSeed´Â 0ºÎÅÍ 4294967295 (0xFFFFFFFF) »çÀÌÀÇ Á¤¼ö¿©¾ß ÇÕ´Ï´Ù. ´Ù½Ã ¾¾¾Ñ ¸Ô±â±â´Â ¹ß»ýµÈ ¹«ÀÛÀ§ ¼öÀÇ Ç°Áú/º¸¾È¼ºÀ» Çâ»ó½Ãų ¼ö ÀÖ½À´Ï´Ù. ƯÈ÷ NewSeed°¡ Ç°ÁúÀÌ ¶³¾îÁö´Â ÀÇ»ç-¹«ÀÛÀ§ ¼ö°¡ ¾Æ´Ï¶ó ÁøÂ¥ ¹«ÀÛÀ§¼öÀÌ¸é ´õ ÁÁ½À´Ï´Ù. ÀϹÝÀûÀ¸·Î, ¾¾¾Ñ ´Ù½Ã ¸ÔÀ̱â´Â ÇÑ ¹ø ÀÌ»ó ÇÒ ÇÊ¿ä°¡ ¾ø½À´Ï´Ù.

+

+ ½ºÅ©¸³Æ®¿¡¼­ ´Ù½Ã ¾¾¾Ñ ¸ÔÀ̱Ⱑ »ç¿ëµÇÁö ¾Ê¾Ò´Ù¸é, ¾¾¾ÑÀº 64-ºñÆ® °ªÀÇ ¾Æ·¡ÂÊ 32-ºñÆ®·Î ½ÃÀÛÇÕ´Ï´Ù. ÀÌ °ªÀº 1601³â 1¿ù 1ÀÏ ÀÌÈÄ·Î 100-³ª³ëÃÊ °£°ÝÀ¸·Î ³ª´« °³¼öÀÔ´Ï´Ù. + ÀÌ °ªÀº ~7.2 ºÐ¸¶´Ù 0ºÎÅÍ 4294967295 »çÀ̸¦ ¿Ô´Ù °¬´Ù ÇÕ´Ï´Ù.

+ +
+ +

³íÆò

+

+ÀÌ ¸í·É¾î´Â ÀÇ»ç-¹«ÀÛÀ§ ¼ö¸¦ »êÃâÇÕ´Ï´Ù. ÀÌ ¼ö´Â ÁøÂ¥ ¹«ÀÛÀ§ ¼ö¸¦ Èä³» ³»Áö¸¸ ½ÇÁ¦·Î´Â ´ÙÀ½ ¼ýÀÚ°¡ ¹«¾ùÀÎÁö ÃßÃø/°áÁ¤ÇϱⰡ Áö±ØÈ÷ ¾î·Á¿î º¹ÀâÇÑ °ø½Ä¿¡ ±â¹ÝÇÑ ¼ýÀÚÀÏ »ÓÀÔ´Ï´Ù.

+

+ÁöÁ¤µÈ ¹üÀ§ ¾ÈÀÇ ¼ýÀÚ´Â ¸ðµÎ ´ë·« ºñ½ÁÇÑ ºóµµ·Î ¹ß»ýµË´Ï´Ù (±×·¸Áö¸¸, ¾Æ·¡ÀÇ "¾Ë·ÁÁø ÇÑ°è"¸¦ ÂüÁ¶ÇϽʽÿÀ).

+

+Min ¶Ç´Â Max¿¡ ¼Ò¼ö Á¡ÀÌ µé¾î ÀÖ´Ù¸é, ÃÖÁ¾ °á°ú´Â ºÎµ¿ ¼Ò¼öÁ¡ ¼ö°¡ µË´Ï´Ù. Çü½ÄÀº SetFormat¿¡ ÀÇÇÏ¿© °áÁ¤µË´Ï´Ù. ±×·¸Áö ¾ÊÀ¸¸é, ±× °á°ú´Â Á¤¼öÀÔ´Ï´Ù.

+

+¾Ë·ÁÁø ÇÑ°è: ºÎµ¿ ¼Ò¼öÁ¡ ¼ö¿¡ ´ëÇÏ¿© +

    +
  1. ƯÁ¤ ¹üÀ§¿¡ ´ëÇÏ¿© ´ë·« 4,294,967,296°³ÀÇ ±¸ºÐµÈ ¼ýÀÚ¸¸ ¹ß»ý½Ãų ¼ö ÀÖ½À´Ï´Ù. ±×·¡¼­ ¹üÀ§ ¾ÈÀÇ ´Ù¸¥ ¸ðµç ¼ýÀÚµéÀº Àý´ë·Î ¹ß»ýµÇÁö ¾Ê½À´Ï´Ù; +
  2. °¡²û °á°ú°¡ ÁöÁ¤µÈ ÃÖ´ë°ª(Max)º¸´Ù ´õ Å« °æ¿ì°¡ ÀÖ½À´Ï´Ù. (ÀÌ°ÍÀº ºÎºÐÀûÀ¸·Î ºÎµ¿ ¼Ò¼öÁ¡ ¼ö·ÎºÎÅÍ Á¤¹Ðµµ¸¦ ¹°·Á ¹Þ¾Ò±â ¶§¹®ÀÔ´Ï´Ù). +
+

+ +

°ü·Ã Ç׸ñ

+

SetFormat

+ +

¿¹Á¦

+ +
Random, rand, 1, 10
+Random, rand, 0.0, 1.0
+ +

¿øº»¿¡ ÀÖ´Â ÁÖ¼® Àοë

+ +

This function uses the Mersenne Twister random number generator, MT19937, written + by Takuji Nishimura and Makoto Matsumoto, Shawn Cokus, Matthe Bellew and Isaku + Wada.

+

The Mersenne Twister is an algorithm for generating random numbers. It was + designed with consideration of the flaws in various other generators. The period, + 219937-1, and the order of equidistribution, 623 dimensions, are + far greater. The generator is also fast; it avoids multiplication and division, + and it benefits from caches and pipelines. For more information see the inventors' + web page at www.math.keio.ac.jp/~matumoto/emt.html

+

Copyright (C) 1997 - 2002, Makoto Matsumoto and Takuji Nishimura, All rights + reserved.

+

Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met:

+
    +
  1. Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer.
  2. +
  3. Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution.
  4. +
  5. The names of its contributors may not be used to endorse or promote products + derived from this software without specific prior written permission.
  6. +
+

THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, + THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE + FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, + EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

+

Do NOT use for CRYPTOGRAPHY without securely hashing several returned values + together, otherwise the generator state can be learned after reading 624 consecutive + values.

+

When you use this, send an email to: matumoto@math.keio.ac.jp with an appropriate + reference to your work. It would be nice to CC: rjwagner@writeme.com and Cokus@math.washington.edu + when you write.

+

This above has been already been done for AutoHotkey, but if you use the Random command in a publicly distributed application, + consider sending an e-mail to the above people to thank them.

+ + + diff --git a/src/docs/commands/RegDelete.htm b/src/docs/commands/RegDelete.htm new file mode 100644 index 0000000..affa84e --- /dev/null +++ b/src/docs/commands/RegDelete.htm @@ -0,0 +1,62 @@ + + + + +RegDelete + + + + + + + + +

RegDelete

+ +

·¹Áö½ºÆ®¸®·ÎºÎÅÍ °ªÀÎ ÇÏÀ§Å°¸¦ Á¦°ÅÇÕ´Ï´Ù.

+ +
RegDelete, RootKey\SubKey [, ValueName]  ; v1.1.21+
+RegDelete, RootKey, SubKey [, ValueName]
+

¸Å°³º¯¼ö

+
+ +
RootKey
+

¹Ýµå½Ã HKEY_LOCAL_MACHINE, HKEY_USERS, HKEY_CURRENT_USER, HKEY_CLASSES_ROOT, ¶Ç´Â HKEY_CURRENT_CONFIG ÁßÀÇ Çϳª¿©¾ß ÇÕ´Ï´Ù. (¶Ç´Â HKLM¿Í °°Àº ¾à¾î). ¿ø°Ý ·¹Áö½ºÆ®¸®¿¡ Á¢±ÙÇÏ·Á¸é, ÄÄÇ»ÅÍ À̸§À» ¾Õ¿¡ µÎ°í ´ÙÀ½¿¡ ½ÖÁ¡ (¶Ç´Â v1.1.21+À̸é, ¿ª»ç¼±)À», ´ÙÀ½ ¿¹Á¦¿Í °°ÀÌ ¹èÄ¡ÇϽʽÿÀ: \\workstation01:HKEY_LOCAL_MACHINE

+ +
SubKey
+

¼­ºêÅ°ÀÇ À̸§ (¿¹, Software\SomeApplication).

+ +
RootKey\SubKey [v1.1.21+]
+

RootKey ´ÙÀ½¿¡ ¹Ù·Î ¿ª»ç¼±ÀÌ µû¶ó¿À¸é (\), RootKey¿Í SubKey´Â ÇϳªÀÇ ¸Å°³º¯¼ö·Î º´Çյ˴ϴÙ.

+ +
ValueName
+

»èÁ¦ÇÒ °ªÀÇ À̸§. »ý·«µÇ¸é, Àüü SubKey°¡ »èÁ¦µË´Ï´Ù. SubkeyÀÇ ±âº» °ªÀ» »èÁ¦ÇÏ·Á¸é -- RegEditÀÌ "(±âº»)"À¸·Î º¸¿©ÁÖ´Â °ª -- ÀÌ ¸Å°³º¯¼ö¿¡ AHK_DEFAULT¸¦ »ç¿ëÇϽʽÿÀ.

+ +
+

ErrorLevel

+

+[v1.1.04+] ÀÌ ¸í·É¾î´Â ½ÇÆнà ¿¹¿Ü¸¦ ´øÁú ¼ö ÀÖ½À´Ï´Ù. ´õ ÀÚ¼¼ÇÑ Á¤º¸´Â ½ÇÇà½Ã°£ ¿¡·¯¸¦ ÂüÁ¶ÇϽʽÿÀ.

+

+ErrorLevelÀº ¹®Á¦°¡ ÀÖÀ¸¸é 1 ¾øÀ¸¸é 0ÀÌ ¼³Á¤µË´Ï´Ù.

+

+A_LastErrorÀº ¿î¿µ üÁ¦ÀÇ GetLastError() ÇÔ¼öÀÇ °á°ú°¡ ¼³Á¤µË´Ï´Ù.

+ +

³íÆò

+

+·¹Áö½ºÆ®¸®¿¡¼­ »èÁ¦ÇÏ´Â °ÍÀº ÀáÀçÀûÀ¸·Î À§ÇèÇÕ´Ï´Ù - Á¶½ÉÇؼ­ ½ÃÇàÇϽʽÿÀ!

+

+¿©·¯ Å°¿Í °ª¿¡ ÀÛµ¿ÇÏ°í ¿­¶÷ÇÏ·Á¸é, ·¹Áö½ºÆ®¸®-ȸµ¹ÀÌÀÇ »ç¿ëÀ» °í·ÁÇϽʽÿÀ.

+

+¿ø°Ý ÄÄÇ»ÅÍÀÇ ·¹Áö½ºÆ®¸®¿¡ Á¢±ÙÇÏ´Â ¹ý¿¡ °üÇÑ ÀÚ¼¼ÇÑ Á¤º¸´Â ·¹Áö½ºÆ®¸®-ȸµ¹ÀÌ¿¡¼­ ³íÆòÀ» ÂüÁ¶ÇϽʽÿÀ.

+

+32-ºñÆ® ½ºÅ©¸³Æ®¿¡¼­ ·¹Áö½ºÆ®¸®ÀÇ 64-ºñÆ® ¼½¼ÇÀ» ¶Ç´Â ±× ¹Ý´ë·Î »èÁ¦ÇÏ·Á¸é, SetRegView¸¦ »ç¿ëÇϽʽÿÀ.

+ +

°ü·Ã Ç׸ñ

+

RegRead, RegWrite, ·¹Áö½ºÆ®¸®-ȸµ¹ÀÌ, SetRegView, IniDelete

+ +

¿¹Á¦

+
RegDelete, HKEY_LOCAL_MACHINE, Software\SomeApplication, TestValue
+RegDelete, HKEY_LOCAL_MACHINE\Software\SomeApplication, TestValue  ; v1.1.21+ ÇÊ¿ä
+ + + diff --git a/src/docs/commands/RegExMatch.htm b/src/docs/commands/RegExMatch.htm new file mode 100644 index 0000000..c3f18be --- /dev/null +++ b/src/docs/commands/RegExMatch.htm @@ -0,0 +1,109 @@ + + +RegExMatch + + + + + + + +

RegExMatch() [v1.0.45+]

+ +

¹®ÀÚ¿­¿¡ ÆÐÅÏÀÌ ´ã°Ü ÀÖ´ÂÁö ¾Ë¾Æ³À´Ï´Ù (Á¤±Ô Ç¥Çö½Ä).

+ +
FoundPos := RegExMatch(Haystack, NeedleRegEx [, UnquotedOutputVar = "", StartingPosition = 1])
+

¸Å°³º¯¼ö

+

+¿ªÁÖ : Á¤±ÔÇ¥Çö½ÄÀ¸·Î ¸ñÇ¥ ¹®ÀÚ¿­¿¡¼­ ÆÐÅÏÀ» ã´Â °ÍÀ»
+°ÇÃÊ´õ¹Ì(Haystack)¿¡¼­ ¹Ù´Ã(NeedleRegEx)À» ã´Â °Í¿¡ºñÀ¯ÇÔ. +

+
+
FoundPos
+

RegExMatch()´Â ¹®ÀÚ¿­ Haystack¿¡ NeedleRegEx°¡ ³ªÅ¸³­ °¡Àå ¿ÞÂÊÀÇ À§Ä¡¸¦ µ¹·ÁÁÝ´Ï´Ù. À§Ä¡°¡ 1À̸é ù ¹ø° ¹®ÀÚÀÔ´Ï´Ù. ÆÐÅÏÀÌ ¹ß°ßµÇÁö ¾ÊÀ¸¸é 0À» µ¹·ÁÁÝ´Ï´Ù. ¿¡·¯°¡ ÀϾ¸é (NeedleRegEx ¾È¿¡¼­ ±¸¹® ¿¡·¯°¡ ÀϾ¸é), ºó ¹®ÀÚ¿­ÀÌ ¹ÝȯµË´Ï´Ù. ErrorLevelÀº 0 ´ë½Å¿¡ ¾Æ·¡ÀÇ °ª Áß Çϳª°¡ »ç¿ëµË´Ï´Ù.

+ +
Haystack
+

³»¿ëÀ» °Ë»öÇÒ ¹®ÀÚ¿­.

+ +
NeedleRegEx
+

°Ë»ö ÇÒ ÆÐÅÏ, ÆÞ-ȣȯÀÇ Á¤±Ô Ç¥Çö½ÄÀÔ´Ï´Ù (PCRE). ÆÐÅÏÀÇ ¿É¼ÇÀº ¹®ÀÚ¿­ óÀ½¿¡ Æ÷ÇÔÇØ¾ß ÇÏ°í ±× ´ÙÀ½¿¡ ´Ý´Â ¹Ý°ýÈ£°¡ µû¶ó ¿É´Ï´Ù. ¿¹¸¦ µé¾î, ÆÐÅÏ "i)abc.*123"´Â ´ë¼Ò¹®ÀÚ ºñ±¸ºÐ ¿É¼ÇÀ» ÄÑ°í "abc"¸¦ °Ë»ö ÇÑ ´ÙÀ½, 0°³ ÀÌ»óÀÇ ¹®ÀÚ¸¦ °Ë»öÇÏ°í, ´ÙÀ½¿¡ "123"À» °Ë»öÇÕ´Ï´Ù. ¿É¼ÇÀÌ ¾ø´Ù¸é, ")"´Â ¼±ÅÃÀûÀÔ´Ï´Ù; ¿¹¸¦ µé¾î, ")abc"´Â "abc"¿Í µ¿µîÇÕ´Ï´Ù.

+ +
UnquotedOutputVar
+

Mode 1 (±âº»°ª): OutputVar´Â ÇÑ µû¿ÈÇ¥¸¦ Á¦°ÅÇÑ º¯¼öÀÔ´Ï´Ù. ±× ¾È¿¡´Ù Àüü ÆÐÅÏ¿¡ ºÎÇÕÇÑ Haystack ºÎºÐÀ» ÀúÀåÇÕ´Ï´Ù. ÆÐÅÏÀÌ ¹ß°ßµÇÁö ¾ÊÀ¸¸é (Áï, ÇÔ¼ö°¡ 0À» µ¹·ÁÁÖ¸é), ÀÌ º¯¼ö¿Í ¸ðµç ¹è¿­ ¿ø¼Ò´Â ºñ¿öÁý´Ï´Ù.

+

³ªÆ÷ ºÎÆÐÅÏÀÌ NeedleRegEx ¾È¿¡ Á¸ÀçÇϸé, ±×¿¡ ºÎÇÕÇÑ °ÍµéÀº ¹ÙÅÁ À̸§ÀÌ OutputVarÀÎ ÀÇ»ç-¹è¿­¿¡ ÀúÀåµË´Ï´Ù. ¿¹¸¦ µé¾î, º¯¼öÀÇ À̸§ÀÌ Match¶ó¸é, ù ºÎÆÐÅÏ¿¡ ºÎÇÕÇÏ´Â ºÎ¹®ÀÚ¿­Àº Match1¿¡ ÀúÀåµÇ°í, µÎ ¹ø°´Â Match2¿¡ ÀúÀåµË´Ï´Ù, µîµî. ÀÌ¿¡ ´ëÇÑ ¿¹¿Ü´Â À̸§ ºÙÀÎ ºÎÆÐÅÏÀÔ´Ï´Ù: ¼ýÀÚ°¡ ¾Æ´Ï¶ó À̸§À¸·Î ÀúÀåµË´Ï´Ù. ¿¹¸¦ µé¾î, À̸§ºÙÀÎ ºÎÆÐÅÏ"(?P<Year>\d{4})" ¿¡ ºÎÇÕÇÑ ºÎ¹®ÀÚ¿­Àº MatchYear¿¡ ÀúÀåµË´Ï´Ù. ƯÁ¤ÇÑ ºÎÆÐÅÏÀÌ ÀüÇô ºÎÇÕÇÏÁö ¾ÊÀ¸¸é (Áï, ÇÔ¼ö°¡ 0À» µ¹·ÁÁÖ¸é), ±×¿¡ »óÀÀÇÏ´Â º¯¼ö´Â ºñ¿öÁý´Ï´Ù.

+

ÇÔ¼ö ¾È¿¡¼­, Áö¿ªÀÌ ¾Æ´Ñ Àü¿ª ÀÇ»ç ¹è¿­À» »ý¼ºÇÏ·Á¸é, ÀÇ»ç ¹è¿­ÀÇ ¹ÙÅÁ À̸§À» »ç¿ëÇϱâ Àü¿¡ (¿¹, Match) Àü¿ª º¯¼ö·Î ¼±¾ð ÇϽʽÿÀ. Àü¿ª-°£ÁÖ ÇÔ¼ö¿¡ ´ëÇÏ¿© ±× ¹Ý´ëµµ ¸¶Âù°¡ÁöÀÔ´Ï´Ù. ±×·¸Áö¸¸, ÈçÇÑ È¥¶õÀÇ ±Ù¿ø ¶§¹®¿¡ °¢ ¿ø¼Ò¸¶´Ù ¼±¾ðÇÒ ÇÊ¿ä°¡ ÀÖ´Â °æ¿ìµµ ÀÖ½À´Ï´Ù.

+

Mode 2 (À§Ä¡¿Í ±æÀÌ): ´ë¹®ÀÚ P°¡ RegExÀÇ ¿É¼Ç¿¡ Á¸ÀçÇϸé -- ¿¹¸¦ µé¾î "P)abc.*123" --Àüü ÆÐÅÏ ºÎÇÕÀÇ ±æÀÌ°¡ OutputVar¿¡ ÀúÀåµË´Ï´Ù (ºÎÇÕÀÌ ¾øÀ¸¸é 0). ³ªÆ÷ ºÎÆÐÅÏÀÌ Á¸ÀçÇϸé, ±× À§Ä¡¿Í ±æÀÌ°¡ µÎ °³ÀÇ ÀÇ»ç-¹è¿­¿¡ ÀúÀåµË´Ï´Ù: OutputVarPos ±×¸®°í OutputVarLen. ¿¹¸¦ µé¾î, º¯¼öÀÇ ¹ÙÅÁ À̸§ÀÌ Match¶ó¸é, ù ºÎÆÐÅÏ ºÎÇÕÀÇ À§Ä¡°¡ 1-±â¹ÝÀ¸·Î MatchPos1¿¡ ÀúÀåµÇ°í, ±×ÀÇ ±æÀÌ´Â MatchLen1¿¡ ÀúÀåµË´Ï´Ù (ºÎÆÐÅÏ¿¡ ºÎÇÕÀÌ ¾ø°Å³ª ÇÔ¼ö°¡ 0À» µ¹·ÁÁÖ¸é 0ÀÌ ÀúÀåµË´Ï´Ù). ÀÌ¿¡ ´ëÇÑ ¿¹¿Ü´Â À̸§ºÙÀÎ ºÎÆÐÅÏÀÔ´Ï´Ù: ¼ýÀÚ°¡ ¾Æ´Ï¶ó À̸§À¸·Î ÀúÀåµË´Ï´Ù (¿¹, MatchPosYear ±×¸®°í MatchLenYear).

+

Mode 3 (ÀÏÄ¡ °´Ã¼) [v1.1.05+]: ´ë¹®ÀÚ O°¡ RegEx ¿É¼Ç¿¡ Á¸ÀçÇϸé -- ¿¹¸¦ µé¾î "O)abc.*123" -- ÀÏÄ¡ °´Ã¼°¡ UnquotedOutputVar¿¡ ÀúÀåµË´Ï´Ù. ÀÌ °´Ã¼¸¦ »ç¿ëÇϸé Àüü ºÎÇÕ°ú ³ªÆ÷µÈ ºÎÆÐÅÏ °¢°¢ÀÇ À§Ä¡¿Í ±æÀÌ ±×¸®°í °ªÀ» ¿­¶÷ÇÒ ¼ö ÀÖ½À´Ï´Ù.

+
+ +
StartingPosition
+

StartingPositionÀ» »ý·«ÇÏ¸é ±âº»°ªÀº 1ÀÔ´Ï´Ù (HaystackÀÇ ½ÃÀÛ). ±×·¸Áö ¾ÊÀ¸¸é, 2¸¦ ÁöÁ¤ÇØ µÎ ¹ø° ¹®ÀÚ¿¡¼­ ½ÃÀÛÇϰųª 3À» ÁöÁ¤ÇØ ¼¼ ¹ø° ¹®ÀÚ¿¡¼­ ½ÃÀÛÇÒ ¼ö ÀÖ½À´Ï´Ù. µîµî. StartingPositionÀÌ HaystackÀÇ ±æÀ̸¦ ³Ñ¾î °¡¸é, °Ë»öÀº Haystack ³¡ÀÇ ºó ¹®ÀÚ¿­¿¡¼­ ½ÃÀÛÇÕ´Ï´Ù (ÀüÇüÀûÀ¸·Î ºÎÇÕ °á°ú°¡ ¾ø½À´Ï´Ù).

+

StartingPositionÀÌ º¸´Ù ÀÛÀ¸¸é, Haystack ³¡À¸·ÎºÎÅÍÀÇ »ó´ë°Å¸®°í °£ÁÖÇÕ´Ï´Ù. ¿¹¸¦ µé¾î, 0Àº ¸¶Áö¸· ¹®ÀÚ¿¡¼­ ½ÃÀÛÇÏ°í, -1Àº ¸¶Áö¸· ¹®ÀÚ ¹Ù·Î ¾Õ¿¡¼­ ½ÃÀÛÇÕ´Ï´Ù. StartingPositionÀÌ HaystackÀÇ ¿ÞÂÊ ³¡À» ³Ñ¾î¼­ ½ÃµµÇϸé, ¸ðµç HaystackÀ» °Ë»öÇÕ´Ï´Ù.

+

StartingPositionÀÇ °ª¿¡ »ó°ü¾øÀÌ, ¹Ýȯ °ªÀº ¾ðÁ¦³ª HaystackÀÇ Ã¹ ¹®ÀÚ¿¡ »ó´ëÀûÀÔ´Ï´Ù. ¿¹¸¦ µé¾î, "123abc789"¿¡¼­ "abc"ÀÇ À§Ä¡´Â ¾ðÁ¦³ª 4ÀÔ´Ï´Ù.

+ +
+

ErrorLevel

+

[v1.1.04+] ÀÌ ÇÔ¼ö´Â ½ÇÆнà ¿¹¿Ü¸¦ ´øÁú ¼ö ÀÖ½À´Ï´Ù ("ºÎÇÕ ¾øÀ½"°ú È¥µ¿ÇÏÁö ¸¶½Ê½Ã¿À). ´õ ÀÚ¼¼ÇÑ Á¤º¸´Â ½ÇÇà½Ã°£ ¿¡·¯¸¦ ÂüÁ¶ÇϽʽÿÀ.

+

ErrorLevelÀº ´ÙÀ½ °ªÁß Çϳª°¡ ¼³Á¤µË´Ï´Ù:

+ +

Options

+

¼ö½ÄÀÚ¿¡ °üÇؼ­ Options¸¦ ÂüÁ¶ÇϽʽÿÀ. ¿¹¸¦ µé¾î "i)abc"¿Í °°Àº °æ¿ì, ÆÐÅÏ "abc"¿¡ ´ë¼Ò¹®ÀÚ ±¸ºÐÀ» ²ü´Ï´Ù.

+ +

Match Object v1.1.05+

+

+´ë¹®ÀÚ O°¡ RegEx ¿É¼Ç¿¡ Á¸ÀçÇϸé, ÀÏÄ¡ °´Ã¼°¡ UnquotedOutputVar¿¡ ÀúÀåµË´Ï´Ù. ÀÌ °´Ã¼´Â ´ÙÀ½°ú °°Àº Ư¼ºÀ» ¼ÒÀ¯ÇÕ´Ï´Ù:

+

+Match.Pos(N): ³ªÆ÷µÈ ºÎÆÐÅÏ ¶Ç´Â Àüü ºÎÇÕÀÇ À§Ä¡¸¦ µ¹·ÁÁÝ´Ï´Ù.

+

Match.Len(N): ³ªÆ÷µÈ ºÎÆÐÅÏ ¶Ç´Â Àüü ºÎÇÕÀÇ ±æÀ̸¦ µ¹·ÁÁÝ´Ï´Ù.

+

Match.Value(N): ³ªÆ÷µÈ ºÎÆÐÅÏ ¶Ç´Â Àüü ºÎÇÕÀ» µ¹·ÁÁÝ´Ï´Ù.

+

Match.Name(N): ÁÖ¾îÁø ºÎÆÐÅÏÀÇ À̸§À» µ¹·ÁÁÝ´Ï´Ù

+

Match.Count(): ºÎÆÐÅÏÀÇ Àüü °³¼ö¸¦ µ¹·ÁÁÝ´Ï´Ù.

+

Match.Mark(): ¸¶Áö¸·À¸·Î ¸¸³­ (*MARK:NAME)ÀÇ NAMEÀ» µ¹·ÁÁÝ´Ï´Ù.

+

Match[N]: NÀÌ 0À̰ųª À¯È¿ÇÑ ºÎÆÐÅÏ ¹øÈ£ ¶Ç´Â À̸§À̶ó¸é, ÀÌ°ÍÀº Match.Value(N)°ú µ¿µîÇÕ´Ï´Ù. ±×·¸Áö ¾ÊÀ¸¸é, NÀº À§ÀÇ Æ¯¼ºÀÇ À̸§ Áß ÇϳªÀÏ ¼ö ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î, Match["Pos"] ±×¸®°í Match.Pos´Â Match.Pos()¿Í µ¿µîÇÕ´Ï´Ù. ´Ü, À̸§ÀÌ "Pos"ÀÎ ºÎÆÐÅÏÀÌ Á¸ÀçÇÏ¸é ¿¹¿ÜÀÔ´Ï´Ù. ÀÌ °æ¿ì Match.Value("Pos")¿Í µ¿µîÇÕ´Ï´Ù.

+

Match.N: À§¿Í °°½À´Ï´Ù. ´Ü, NÀÌ ÀοëºÎÈ£¸¦ ºÙÀÌÁö ¾ÊÀº À̸§À̰ųª ¼ýÀÚÀÎ °æ¿ì´Â ¿¹¿ÜÀÔ´Ï´Ù.

+

À§ÀÇ ¸ðµç Ư¼º¿¡ ´ëÇÏ¿©, NÀº ´ÙÀ½ Áß Çϳª°¡ µÉ ¼ö ÀÖ½À´Ï´Ù:

+ +

NÀ» ÁöÁ¤ÇÏ¸é ¹Ý°ýÈ£ () ´ë½Å¿¡ °¢°ýÈ£ []¸¦ »ç¿ëÇصµ µË´Ï´Ù.

+ +

¼öÇ༺´É

+

¹®ÀÚ¿­ ¾È¿¡¼­ °£´ÜÇÑ ºÎ¹®ÀÚ¿­À» °Ë»öÇÏ·Á¸é InStr()À» »ç¿ëÇϽʽÿÀ. ¿Ö³ÄÇϸé RegExMatch()º¸´Ù ´õ ºü¸£±â ¶§¹®ÀÔ´Ï´Ù.

+

¼öÇ༺´ÉÀ» °³¼±Çϱâ À§ÇÏ¿©, ÀÚÁÖ »ç¿ëµÇ´Â Á¤±Ô Ç¥Çö½Ä 100°³¸¦ ¸Þ¸ð¸®¿¡ (ÄÄÆÄÀÏµÈ ÇüÅ·Î) ij½¬ÇÕ´Ï´Ù.

+

¿¬±¸ ¿É¼Ç (S)À¸·Î Á¾Á¾ (¿¹¸¦ µé¾î ȸµ¹ÀÌ ¾È¿¡¼­) ¸¹ÀÌ »ç¿ëµÇ´Â Á¤±Ô Ç¥Çö½ÄÀÇ ¼öÇ༺´ÉÀ» °³¼±½Ãų ¼ö ÀÖ½À´Ï´Ù.

+ +

³íÆò

+

+ºÎÆÐÅÏ¿¡ À̸§À» ºÎ¿©ÇÒ ¼ö ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î ÆÐÅÏ "(?P<Year>\d{4})"¿¡ ´Ü¾î Year°¡ ºÎ¿© µÇ¾î ÀÖ½À´Ï´Ù. À̸§Àº ÃÖ´ë 32°³ÀÇ ¾ËÆĺª¼ýÀÚ¿Í ¹ØÁÙ ¹®ÀÚ·Î ±¸¼ºµÇ´Ï´Ù. ´ÙÀ½ Á¦ÇÑÀº "O" (ÀÏÄ¡ °´Ã¼) ¸ðµå¿¡ Àû¿ëµÇÁö ¾Ê½À´Ï´Ù. À̸§ ºÙÀÎ ºÎÆÐÅϵµ RegEx ¿¬»ê ÀÚü¿¡¼­ ¼ýÀÚ·Î ÂüÁ¶ÇÒ ¼ö ÀÖÁö¸¸ (¿¹, \1Àº ù ³ªÆ÷ ÆÐÅÏ¿¡ ½ÇÁ¦·Î ºÎÇÕÇÑ ¹®ÀÚ¿­À» °¡¸®Å°´Â ¿ªÂüÁ¶ÀÔ´Ï´Ù), (¼ýÀÚ°¡ ¾Æ´Ï¶ó) À̸§À¸·Î¸¸ Ãâ·Â ÀÇ»ç-º¯¼ö¿¡ ÀúÀåµË´Ï´Ù. ¿¹¸¦ µé¾î, "Year"°¡ ù ¹ø° ºÎÆÐÅÏÀ̶ó¸é, OutputVarYearÀº ±× ºÎÇÕÇÑ ºÎ¹®ÀÚ¿­ÀÌ ¼³Á¤µÇÁö¸¸, OutputVar1Àº ÀüÇô ¹Ù²îÁö ¾Ê½À´Ï´Ù (ÀÌÀü °ªÀ» ±×´ë·Î À¯ÁöÇÕ´Ï´Ù). ±×·¸Áö¸¸, À̸§¾ø´Â ºÎÆÐÅÏÀÌ "Year" ´ÙÀ½¿¡ ÀϾ¸é, ±×°ÍÀº OutputVar1ÀÌ ¾Æ´Ï¶ó OutputVar2¿¡ ÀúÀåµË´Ï´Ù.

+

+abc123¿Í °°ÀÌ ´ëºÎºÐÀÇ ¹®ÀÚ´Â Á¤±Ô Ç¥Çö½Ä ¾È¿¡ ±âÈ£ ±×´ë·Î »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. ±×·¸Áö¸¸, \.*?+[{|()^$¿Í °°Àº ¹®ÀÚ´Â ¹Ýµå½Ã ¾Õ¿¡ ¿ª»ç¼±À» ¹èÄ¡ÇØ¾ß ¹®ÀÚ ±×´ë·Î º¸¿©Áö°Ô µË´Ï´Ù. ¿¹¸¦ µé¾î, \.´Â ¹®ÀÚ ±×´ë·ÎÀÇ Á¡ÀÌ°í \\´Â ±âÈ£ ±×´ë·ÎÀÇ ¿ª»ç¼±ÀÔ´Ï´Ù. ÇǽÅÀº \Q...\EÀ» »ç¿ëÇÏ¿© ´ë½ÅÇÒ ¼ö ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î: \QLiteral Text\E.

+

+Á¤±Ô Ç¥Çö½Ä ¾È¿¡¼­, ÅÇ°ú »õÁÙ °°Àº Ư¼ö ¹®ÀÚµéÀº ¾×¼¾Æ® (`) ¶Ç´Â ¿ª»ç¼± (\)À¸·Î ÇǽŽÃų ¼ö ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î, `t´Â \t¿Í °°½À´Ï´Ù. ´Ü, x ¿É¼ÇÀÌ »ç¿ëµÈ °æ¿ì´Â ¿¹¿ÜÀÔ´Ï´Ù.

+

+Á¤±Ô Ç¥Çö½ÄÀÇ ±âº»À» ¹è¿ì·Á¸é (¶Ç´Â ÆÐÅÏ ±¸¹®À» »õ·Ó°Ô ±â¾ïÇØ º¸·Á¸é), RegEx °£Æí ÂüÁ¶¼­¸¦ ÂüÁ¶ÇϽʽÿÀ.

+

+¿ÀÅäÇÖÅ°ÀÇ Á¤±Ô Ç¥Çö½ÄÀº ÆÞ-ȣȯÀÇ Á¤±Ô Ç¥Çö½Ä (PCRE)À» »ç¿ëÇÏ¿© ±¸ÇöµÇ¾ú½À´Ï´Ù: www.pcre.org.

+ +

°ü·Ã Ç׸ñ

+

+RegExReplace(), RegEx Quick Reference, Á¤±Ô Ç¥Çö½Ä ¿ÜºÎ¿äû, InStr(), IfInString, StringGetPos, SubStr(), SetTitleMatchMode RegEx, Àü¿ªÀû ÀÏÄ¡¿Í Grep (Æ÷·³ ¸µÅ©)

+

+ÅؽºÆ® µ¥ÀÌÅ͸¦ ¾ò´Â ÈçÇÑ ¹æ¹ý: FileRead, UrlDownloadToFile, Clipboard, GUI ÆíÁý ÄÜÆ®·Ñ

+ +

¿¹Á¦

+
FoundPos := RegExMatch("xxxabc123xyz", "abc.*xyz")  ; 4¸¦ µ¹·ÁÁÝ´Ï´Ù, ºÎÇÕÀÌ ¹ß°ßµÈ À§Ä¡ÀÔ´Ï´Ù.
+FoundPos := RegExMatch("abc123123", "123$")  ; $°¡ ³¡¿¡ ºÎÇÕÇϱ⸦ ¿ä±¸Çϱ⠶§¹®¿¡ 7À» µ¹·ÁÁÝ´Ï´Ù.
+FoundPos := RegExMatch("abc123", "i)^ABC")  ; ´ë¼Ò¹®ÀÚ¸¦ ±¸ºÐÇÏÁö ¾Ê´Â ¿É¼ÇÀ» ÅëÇÏ¿© ºÎÇÕÇßÀ¸¹Ç·Î 1À» µ¹·ÁÁÝ´Ï´Ù.
+FoundPos := RegExMatch("abcXYZ123", "abc(.*)123", SubPat)  ; 1À» µ¹·ÁÁÖ°í "XYZ"¸¦ SubPat1¿¡ ÀúÀåÇÕ´Ï´Ù.
+FoundPos := RegExMatch("abc123abc456", "abc\d+", "", 2)  ; ½ÃÀÛ À§Ä¡°¡ 1ÀÌ ¾Æ´Ï¶ó 2À̱⠶§¹®¿¡ 1 ÀÌ ¾Æ´Ï¶ó 7À» µ¹·ÁÁÝ´Ï´Ù..
+
+; ÀϹÝÀûÀÎ RegEx ¿¹Á¦µéÀº RegEx °£Æí ÂüÁ¶¼­¸¦ ÂüÁ¶ÇϽʽÿÀ.
+ + + diff --git a/src/docs/commands/RegExReplace.htm b/src/docs/commands/RegExReplace.htm new file mode 100644 index 0000000..2b92ea5 --- /dev/null +++ b/src/docs/commands/RegExReplace.htm @@ -0,0 +1,107 @@ + + + + +RegExReplace + + + + + + + +

RegExReplace() [v1.0.45+]

+ +

¹®ÀÚ¿­ ¾È¿¡ ³ªÅ¸³ª´Â ÆÐÅÏ (Á¤±Ô Ç¥Çö½Ä)À» ±³Ã¼ÇÕ´Ï´Ù.

+ +
NewStr := RegExReplace(Haystack, NeedleRegEx [, Replacement = "", OutputVarCount = "", Limit = -1, StartingPosition = 1])
+

¸Å°³º¯¼ö

+
+ +
NewStr
+

RegExReplace()´Â HaystackÀÇ ³»¿ëÀ» ¿¬»êÀ¸·Î ±³Ã¼ÇÏ¿© µ¹·ÁÁÝ´Ï´Ù. ±³Ã¼°¡ ÇÊ¿äÇÏÁö ¾ÊÀ¸¸é, HaystackÀº ±×´ë·Î ¹ÝȯµË´Ï´Ù. ¿¡·¯°¡ ÀϾ¸é (¿¹¸¦ µé¾î NeedleRegEx ¾ÈÀÇ ±¸¹® ¿¡·¯°¡ ÀÖÀ¸¸é), HaystackÀº ±×´ë·Î ¹ÝȯµË´Ï´Ù (1.0.46.06 ÀÌÀü ¹öÀüÀº ¿¹¿ÜÀε¥, ""¸¦ µ¹·ÁÁÝ´Ï´Ù) ±×¸®°í ErrorLevelÀº 0 ´ë½Å¿¡ ¾Æ·¡ÀÇ °ª Áß Çϳª°¡ ¼³Á¤µË´Ï´Ù.

+ +
Haystack
+

±×ÀÇ ³»¿ëÀÌ °Ë»öµÇ°í ±³Ã¼µÉ ¹®ÀÚ¿­.

+ +
NeedleRegEx
+

°Ë»öÇÒ ÆÐÅÏ, Perl-ȣȯ Á¤±Ô Ç¥Çö½Ä (PCRE)ÀÔ´Ï´Ù. ÆÐÅÏÀÇ ¿É¼ÇÀº (ÀÖ´Ù¸é) ¹®ÀÚ¿­ÀÇ ¸Ç ¾Õ¿¡ ´Ý´Â ¹Ý°ýÈ£¸¦ Æ÷ÇÔ½ÃÄÑ¾ß ÇÕ´Ï´Ù. ¿¹¸¦ µé¾î, ÆÐÅÏ "i)abc.*123"´Â ´ë¼Ò¹®ÀÚ ±¸ºÐ ¿É¼ÇÀ» ÄÑ°í "abc"¸¦ ãÀº ´ÙÀ½, 0 °³ ÀÌ»ó ¹®ÀÚ°¡ ³ªÅ¸³ª´ÂÁö ã°í, ´ÙÀ½¿¡ "123"À» ã½À´Ï´Ù. ¾Æ¹« ¿É¼Çµµ ¾ø´Ù¸é, ")"´Â ¼±ÅÃÀûÀÔ´Ï´Ù; ¿¹¸¦ µé¾î, ")abc"´Â "abc"¿Í µ¿µîÇÕ´Ï´Ù.

+ +
Replacement
+

ºÎÇÕÇÏ¸é ±³Ã¼µÉ ¹®ÀÚ¿­, Æò¹üÇÑ ÅؽºÆ®ÀÔ´Ï´Ù (Á¤±Ô Ç¥Çö½Ä ¾Æ´Ô). $1¿Í °°Àº ¿ªÂüÁ¶¸¦ Æ÷ÇÔÇÒ ¼ö ÀÖ½À´Ï´Ù. HaystackÀ¸·ÎºÎÅÍ Ã¹ ¹ø° ºÎÆÐÅÏ¿¡ ºÎÇÕÇÑ ºÎ¹®ÀÚ¿­À» °¡Áö°í ¿É´Ï´Ù. + + °¡Àå ´Ü¼øÇÑ ¿ªÂüÁ¶´Â $0ºÎÅÍ $9ÀÔ´Ï´Ù. $0Àº Àüü ÆÐÅÏ¿¡ ºÎÇÕÇÑ ºÎ¹®ÀÚ¿­ÀÔ´Ï´Ù. $1Àº ù ºÎÆÐÅÏ¿¡ ºÎÇÕÇÑ ºÎ¹®ÀÚ¿­ÀÔ´Ï´Ù. $2´Â µÎ ¹ø° ºÎÆÐÅÏ¿¡ ºÎÇÕÇÑ ºÎ¹®ÀÚ¿­ÀÔ´Ï´Ù. µîµî. 10 ÀÌ»óÀÇ ¿ª ÂüÁ¶´Â (±×¸®°í ¼±ÅÃÀûÀ¸·Î 9 ÀÌÇϵµ), ¼ýÀÚ¸¦ È°°ýÈ£ ¾È¿¡ µÑ·¯ ½Î½Ê½Ã¿À; ¿¹, ${10}, ${11}, µîµî. À̸§ ºÎÆÐÅÏÀº ±× À̸§À» È°°ýÈ£ ¾È¿¡ µÑ·¯ ½Î½Ê½Ã¿À; ¿¹, ${SubpatternName}. ±âÈ£ ±×´ë·Î $¸¦ ÁöÁ¤ÇÏ·Á¸é, $$¸¦ »ç¿ëÇϽʽÿÀ (ÀÌ°ÍÀº ±×·± Ưº° Ãë±ÞÀÌ ÇÊ¿äÇÑ À¯ÀÏÇÑ ¹®ÀÚÀÔ´Ï´Ù; ¿ª»ç¼±Àº ÇǽŽÃÅ°´Â µ¥ ÀüÇô ÇÊ¿äÇÏÁö ¾Ê½À´Ï´Ù).

+

+ ºÎÆÐÅÏÀÇ ´ë¼Ò¹®ÀÚ¸¦ º¯È¯ÇÏ·Á¸é, $ ´ÙÀ½¿¡ ´ÙÀ½ ¹®ÀÚ Áß Çϳª¸¦ ¹èÄ¡ÇϽʽÿÀ: U ¶Ç´Â u (´ë¹®ÀÚ), L ¶Ç´Â l (¼Ò¹®ÀÚ), T ¶Ç´Â t (Á¦¸ñ°ÝÀÔ´Ï´Ù. Áï, °¢ ´Ü¾îÀÇ Ã¹ ±ÛÀÚ°¡ ´ë¹®ÀÚ°¡ µÇ°í ´Ù¸¥ ¸ðµç ±ÛÀÚ´Â ¼Ò¹®ÀÚ°¡ µË´Ï´Ù). ¿¹¸¦ µé¾î, $U1¿Í $U{1} µÑ ¸ðµÎ ù ºÎÆÐÅÏÀÇ ´ë¹®ÀÚ ¹öÀüÀ¸·Î º¯È¯ÇÕ´Ï´Ù.

+

+ Á¸ÀçÇÏÁö ¾Ê´Â ¿ªÂüÁ¶¿Í Haystack¿¡¼­ ¾Æ¹« °Íµµ ºÎÇÕÇÏÁö ¸øÇÑ °ÍµéÀº -- ¿¹¸¦ µé¾î "(abc)|(xyz)"ÀÇ ºÎÆÐÅÏ Áß Çϳª -- ºó ¹®ÀÚ¿­·Î º¯È¯µË´Ï´Ù.

+ +
OutputVarCount
+

ÀϾ ±³Ã¼ÀÇ È½¼ö¸¦ ÀúÀåÇÒ º¯¼öÀÇ À̸§. µû¿ÈÇ¥ ó¸® ¾øÀ½ (±³Ã¼°¡ ¾øÀ¸¸é 0).

+ +
Limit
+

+ LimitÀ» »ý·«Çϸé, ±âº»°ªÀº -1ÀÔ´Ï´Ù. ±âº»°ªÀº Haystack¿¡¼­ ¹ß°ßµÈ ÆÐÅÏ¿¡ ºÎÇÕÇÏ¸é ¸ðµÎ ±³Ã¼ÇÕ´Ï´Ù. ±×·¸Áö ¾ÊÀ¸¸é, Çã¿ëÇÒ ±³Ã¼ÀÇ ÃÖ´ë Ƚ¼ö¸¦ ÁöÁ¤ÇϽʽÿÀ. Haystack¿¡¼­ ¸¶Áö¸· ±³Ã¼ ÀÌÈÄÀÇ ¿À¸¥ÂÊ ºÎºÐÀº ¹Ù²îÁö ¾Ê½À´Ï´Ù.

+ +
StartingPosition
+

+ StartingPositionÀÌ »ý·«µÇ¸é, ±âº»°ªÀº 1ÀÔ´Ï´Ù (HaystackÀÇ ½ÃÀÛ). ±×·¸Áö¸¸, 2¸¦ ÁöÁ¤ÇÏ¸é µÎ ¹ø° ¹®ÀÚºÎÅÍ, 3À» ÁöÁ¤ÇÏ¸é ¼¼ ¹ø° ¹®ÀÚºÎÅÍ, µîµî ½ÃÀÛÇÒ ¼ö ÀÖ½À´Ï´Ù. StartingPositionÀÌ HaystackÀÇ ±æÀ̸¦ ³Ñ¾î ¼­¸é, °Ë»öÀº Haystack ³¡ÀÇ ºó ¹®ÀÚ¿­¿¡¼­ ½ÃÀ۵˴ϴ٠(°á°úÀûÀ¸·Î ¾Æ¹« ±³Ã¼µµ ¾ø½À´Ï´Ù).

+

+ StartingPositionÀÌ 1º¸´Ù ÀÛÀ¸¸é, Haystack ³¡À¸·ÎºÎÅÍ »ó´ë°Å¸®(offset)¶ó°í °£ÁÖÇÕ´Ï´Ù. ¿¹¸¦ µé¾î, 0Àº ¸¶Áö¸· ¹®ÀÚ¿¡¼­ ½ÃÀÛÇÏ°í, -1Àº ¸¶Áö¸· ¹®ÀÚ ¹Ù·Î Àü¿¡¼­ ½ÃÀÛÇÕ´Ï´Ù. StartingPositionÀÌ HaystackÀÇ ¿ÞÂÊ ³¡À» ³Ñ¾î°¡·Á°í ½ÃµµÇϸé, ¸ðµç HaystackÀÌ °Ë»öµË´Ï´Ù.

+

+ StartingPositionÀÇ °ª¿¡ »ó°ü ¾øÀÌ, ¹Ýȯ °ªÀº ¾ðÁ¦³ª HaystackÀÇ ¿ÏÀüÇÑ »çº»ÀÔ´Ï´Ù -- À¯ÀÏÇÑ Â÷ÀÌÁ¡Àº StartingPositionÀÌ 1À̾úÀ» ¶§¿Í ºñ±³ÇÏ¿© ¿ÞÂÊÀÌ Á» ´ú º¯°æµÈ´Ù´Â °ÍÀÔ´Ï´Ù.

+ +
+

ErrorLevel

+

[v1.1.04+] ÀÌ ÇÔ¼ö´Â ½ÇÆнà ¿¹¿Ü¸¦ ´øÁú ¼ö ÀÖ½À´Ï´Ù ("ºÎÇÕÀÌ ¹ß°ßµÇÁö ¾ÊÀ½"°ú È¥µ¿ÇÏÁö ¸» °Í). ´õ ÀÚ¼¼ÇÑ Á¤º¸´Â ½ÇÇà½Ã°£ ¿¡·¯¸¦ ÂüÁ¶ÇϽʽÿÀ.

+

ErrorLevelÀº ´ÙÀ½ Áß Çϳª°¡ ¼³Á¤µË´Ï´Ù:

+ + +

¿É¼Ç

+

+¼ö½ÄÀÚ¿¡ °üÇÑ °ÍÀº ¿É¼ÇÀ» ÂüÁ¶ÇϽʽÿÀ. ¿¹¸¦ µé¾î "i)abc"¿Í °°Àº °æ¿ì, "abc" ÆÐÅÏ¿¡¼­ ´ë¼Ò¹®ÀÚ ±¸ºÐÀ» ²ü´Ï´Ù.

+ +

¼öÇ༺´É

+

+°£´ÜÇÑ ºÎ¹®ÀÚ¿­À» ±³Ã¼ÇÏ·Á¸é, StringReplace¸¦ »ç¿ëÇϽʽÿÀ. RegExReplace()º¸´Ù ´õ ºü¸¨´Ï´Ù.

+

+±³Ã¼ÀÇ ÃÖ´ë °³¼ö¸¦ ¾Ë °æ¿ì, ±×°ÍÀ» Limit ¸Å°³º¯¼ö¿¡ ÁöÁ¤ÇÏ¸é ¼öÇ༺´ÉÀÌ Çâ»óµË´Ï´Ù. °Ë»öÀÌ ´õ »¡¸® ³¡³¯ ¼ö ÀÖ½À´Ï´Ù (ÀÌ·¸°Ô ÇÏ¸é ¿¬»êÇÏ´Â µ¿¾È ½Ã½ºÅÛ¿¡ ¸Þ¸ð¸® ºÎÇϵµ ÁÙ¾îµì´Ï´Ù.). ¿¹¸¦ µé¾î, °Å´ëÇÑ ¹®ÀÚ¿­ÀÇ ¾ÕÂÊ ±Ùó¿¡ ¿ÀÁ÷ Çϳª¸¸ ºÎÇÕÇÑ´Ù´Â »ç½ÇÀ» ¾Ë°í ÀÖ´Ù¸é, 1·Î Á¦ÇÑÇϽʽÿÀ.

+

+¼öÇ༺´ÉÀ» °³¼±Çϱâ À§ÇØ, ÃÖ±Ù¿¡ »ç¿ëµÈ Á¤±Ô Ç¥Çö½Ä 100°³¸¦ (ÄÄÆÄÀÏµÈ ÇüÅ·Î) ¸Þ¸ð¸®¿¡ ij½¬ÇÕ´Ï´Ù.

+

+¿¬±¸ ¿É¼Ç (S)´Â Á¾Á¾ (¿¹¸¦ µé¾î ȸµ¹ÀÌ ¾È¿¡¼­) ¿©·¯ ¹ø »ç¿ëµÇ´Â Á¤±Ô Ç¥Çö½ÄÀÇ ¼öÇ༺´ÉÀ» Çâ»ó½Ãŵ´Ï´Ù.

+ +

³íÆò

+

+´ëºÎºÐÀÇ ¹®ÀÚµéÀº abc123°ú °°ÀÌ Á¤±Ô Ç¥Çö½Ä ¾È¿¡ ±âÈ£ ±×´ë·Î »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. ±×·¸Áö¸¸, \.*?+[{|()^$ ¹®ÀÚµéÀº ¾Õ¿¡ ¿ª»ç¼±À» ¹èÄ¡ÇØ¾ß ±âÈ£·Î º¸ÀÌ°Ô µË´Ï´Ù. ¿¹¸¦ µé¾î, \.´Â ±âÈ£ ±×´ë·Î Á¡ÀÌ°í \\´Â ±âÈ£ ±×´ë·Î ¿ª»ç¼±ÀÔ´Ï´Ù. ÇǽÅÀº \Q...\E¸¦ »ç¿ëÇØ È¸ÇÇÇÒ ¼ö ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î: \QLiteral Text\E.

+

+Á¤±Ô Ç¥Çö½Ä ¾È¿¡¼­, ÅÇ°ú »õÁÙ¹®ÀÚ °°Àº Ư¼ö ¹®ÀÚ´Â ¾×¼¾Æ® (`) ¶Ç´Â ¿ª»ç¼± (\)À¸·Î ÇǽŽÃų ¼ö ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î, `t´Â \t°ú °°½À´Ï´Ù.

+

+Á¤±Ô Ç¥Çö½ÄÀÇ ±âÃʸ¦ ¹è¿ì·Á¸é (¶Ç´Â ÆÐÅÏ ±¸¹®À» ´Ù½Ã »ó±âÇØ º¸°í ½Í´Ù¸é), RegEx °£Æí ÂüÁ¶¼­¸¦ Àϵ¶ ÇϽʽÿÀ.

+ +

°ü·Ã Ç׸ñ

+

+RegExMatch(), RegEx °£Æí ÂüÁ¶¼­, Á¤±Ô Ç¥Çö½Ä ¿ÜºÎ¿äû, StringReplace, InStr()

+

+ÅؽºÆ® µ¥ÀÌÅÍÀÇ ±Ù¿ø: FileRead, UrlDownloadToFile, Clipboard, GUI Edit ÄÜÆ®·Ñ

+ +

¿¹Á¦

+
NewStr := RegExReplace("abc123123", "123$", "xyz")  ; "abc123xyz"À» µ¹·ÁÁÝ´Ï´Ù. ¿Ö³ÄÇϸé $´Â ³¡¿¡¸¸ ºÎÇÕÀ» Çã¿ëÇϱâ 
+¶§¹®ÀÔ´Ï´Ù.
+NewStr := RegExReplace("abc123", "i)^ABC")  ; "123"À» µ¹·ÁÁÝ´Ï´Ù. ¿Ö³ÄÇÏ¸é ´ë¼Ò¹®ÀÚ ±¸ºÐ ¿É¼ÇÀ» ÅëÇÏ¿© ºÎÇÕ¿¡ ¼º°øÇ߱⠶§¹®ÀÔ´Ï´Ù.
+NewStr := RegExReplace("abcXYZ123", "abc(.*)123", "aaa$1zzz")  ; $1 ¿ªÂüÁ¶¸¦ »ç¿ëÇÏ¿© "aaaXYZzzz"À» µ¹·Á ÁÝ´Ï´Ù.
+NewStr := RegExReplace("abc123abc456", "abc\d+", "", ReplacementCount)  ; ""¸¦ µ¹·ÁÁÖ°í 2¸¦ ReplacementCount¿¡ ÀúÀåÇÕ´Ï´Ù.
+
+; ÀϹÝÀûÀÎ RegEx ¿¹Á¦´Â RegEx °£Æí ÂüÁ¶¼­¸¦ Àϵ¶ ÇϽʽÿÀ.
+ + + diff --git a/src/docs/commands/RegRead.htm b/src/docs/commands/RegRead.htm new file mode 100644 index 0000000..d2512db --- /dev/null +++ b/src/docs/commands/RegRead.htm @@ -0,0 +1,99 @@ + + + + +RegRead + + + + + + + +

RegRead

+ +

·¹Áö½ºÆ®¸®·ÎºÎÅÍ °ªÀ» ÀнÀ´Ï´Ù.

+ +
RegRead, OutputVar, RootKey\SubKey [, ValueName]  ; v1.1.21+
+RegRead, OutputVar, RootKey, SubKey [, ValueName]
+

¸Å°³º¯¼ö

+
+ +
OutputVar
+

¿­¶÷µÈ °ªÀ» ÀúÀåÇÒ º¯¼öÀÇ À̸§. º¯¼ö¸¦ ¿­¶÷ÇÒ ¼ö ¾øÀ¸¸é, º¯¼ö´Â ºñ¿öÁö°í ErrorLevel¿¡ 1ÀÌ ¼³Á¤µË´Ï´Ù.

+ +
RootKey
+

´ÙÀ½ HKEY_LOCAL_MACHINE, HKEY_USERS, HKEY_CURRENT_USER, HKEY_CLASSES_ROOT, ¶Ç´Â HKEY_CURRENT_CONFIG Áß Çϳª (¶Ç´Â HKLM¿Í °°Àº ¾àÀÚ). ¿ø°Ý ·¹Áö½ºÆ®¸®¿¡ Á¢±ÙÇÏ·Á¸é, ´ÙÀ½ ¿¹Á¦¿Í °°ÀÌ ÄÄÇ»ÅÍ À̸§°ú ½ÖÁ¡À» (¶Ç´Â v1.1.21+À̸é, Á¤»ç¼±À») ¾Õ¿¡ ¹èÄ¡ÇϽʽÿÀ: \\workstation01:HKEY_LOCAL_MACHINE

+ +
SubKey
+

ÇÏÀ§Å°ÀÇ À̸§ (¿¹, Software\SomeApplication).

+ +
RootKey\SubKey [v1.1.21+]
+

RootKey ´ÙÀ½¿¡ Á¤»ç¼±ÀÌ ¿À¸é (\), RootKey¿Í SubKey´Â ÇϳªÀÇ ¸Å°³º¯¼ö·Î ÇÕº´µË´Ï´Ù.

+ +
ValueName
+

¿­¶÷µÉ °ªÀÇ À̸§. »ý·«Çϸé, SubkeyÀÇ ±âº» °ªÀÌ ¿­¶÷µË´Ï´Ù. ÀÌ °ªÀº RegEditÀÌ "(Default)"·Î º¸¿©ÁÖ´Â °ªÀÔ´Ï´Ù. ±âº» °ªÀÌ ¾ø´Ù¸é (Áï, RegEdit "value not set"À̶ó°í º¸¿©ÁÖ¸é), OutputVar´Â ºñ¿öÁö°í ErrorLevelÀº 1ÀÌ ¼³Á¤µË´Ï´Ù.

+ +
+

ErrorLevel

+

+[v1.1.04+] ÀÌ ¸í·É¾î´Â ½ÇÆнà ¿¹¿Ü¸¦ ´øÁú ¼ö ÀÖ½À´Ï´Ù. ´õ ÀÚ¼¼ÇÑ Á¤º¸´Â ½ÇÇà½Ã°£ ¿¡·¯¸¦ ÂüÁ¶ÇϽʽÿÀ.

+

+ErrorLevelÀº ¹®Á¦°¡ ÀÖ¾úÀ¸¸é 1ÀÌ ¼³Á¤µÇ°í (¿¹¸¦ µé¾î Á¸ÀçÇÏÁö ¾Ê´Â °ªÀ̳ª Å°) ±×·¸Áö ¾ÊÀ¸¸é 0ÀÌ ¼³Á¤µË´Ï´Ù.

+

+A_LastErrorÀº ¿î¿µ üÁ¦ÀÇ GetLastError() ÇÔ¼öÀÇ °á°ú°¡ ÀúÀåµË´Ï´Ù.

+ +

³íÆò

+

+ÇöÀç ´ÙÀ½ÀÇ °ª À¯Çü¸¸ Áö¿øµË´Ï´Ù: REG_SZ, REG_EXPAND_SZ, REG_MULTI_SZ, REG_DWORD, ±×¸®°í REG_BINARY.

+

+REG_DWORD °ªÀº ¾ðÁ¦³ª ¾çÀÇ ½ÊÁø¼ö·Î Ç¥ÇöµË´Ï´Ù.

+

+REG_BINARY Å°¸¦ ÀÐÀ» ¶§ ±× °á°ú´Â ½ÊÀ°Áø ¹®ÀÚ·Î ±¸¼ºµÈ ¹®ÀÚ¿­ÀÔ´Ï´Ù. ¿¹¸¦ µé¾î REG_BINARY °ªÀÌ 01,a9,ff,77ÀÌ¸é ¹®ÀÚ¿­ 01A9FF77·Î ÀÐÈü´Ï´Ù.

+

+REG_MULTI_SZ Å°¸¦ ÀÐÀ» ¶§, °¢ ±¸¼º¿ä¼Ò´Â ¶óÀÎÇÇµå ¹®ÀÚ·Î ³¡³³´Ï´Ù (`n). ±¸¼º¿ä¼Ò°¡ ¾ø´Ù¸é, OutputVar´Â ºñ¿öÁý´Ï´Ù. OutputVar·ÎºÎÅÍ °³º°ÀûÀ¸·Î ±¸¼º¿ä¼Ò¸¦ ÃßÃâÇÏ´Â ¹æ¹ýÀ» º¸¿©ÁÖ´Â ¿¹´Â FileSelectFileÀ» ÂüÁ¶ÇϽʽÿÀ.

+

+REG_BINARY °ªÀÌ 64Kº¸´Ù Å©¸é v1.1.10.01 À̻󿡼­¸¸ ÀÐÀ» ¼ö ÀÖ½À´Ï´Ù.

+

+¿©·¯ ·¹Áö½ºÆ®¸® Å°³ª °ªÀ» ¿­¶÷ÇÏ°í ó¸®ÇÏ·Á¸é, ·¹Áö½ºÆ®¸®-ȸµ¹ÀÌÀÇ »ç¿ëÀ» °í·ÁÇØ º¸½Ê½Ã¿À.

+

+¿ø°Ý ÄÄÇ»ÅÍÀÇ ·¹Áö½ºÆ®¸®¿¡ Á¢±ÙÇÏ´Â ¹ý¿¡ °üÇÑ ÀÚ¼¼ÇÑ Á¤º¸´Â ·¹Áö½ºÆ®¸®-ȸµ¹ÀÌÀÇ ³íÆòÀ» ÂüÁ¶ÇϽʽÿÀ.

+

+32-ºñÆ® ½ºÅ©¸³Æ®¿¡¼­ 64-ºñÆ® ¼½¼ÇÀÇ ·¹Áö½ºÆ®¸®·ÎºÎÅÍ ¿£Æ®¸®¸¦ ¶Ç´Â ±× ¹Ý´ë·Î ÀÐ°í ¾²·Á¸é, SetRegView¸¦ »ç¿ëÇϽʽÿÀ.

+ +

°ü·Ã Ç׸ñ

+

RegDelete, RegWrite, Registry-loop, SetRegView, IniRead

+ +

¿¹Á¦

+
; ¿¹Á¦: ÇÁ·Î±×·¥ ÆÄÀÏ µð·ºÅ丮ÀÇ °æ·Î¸¦ ¿­¶÷ÇÕ´Ï´Ù.
+
+; ¾Æ·¡ÀÇ ÁÙÀº OS´Â 64-ºñÆ®Àε¥ ½ºÅ©¸³Æ®´Â ±×·¸Áö ¾ÊÀ» °æ¿ì,
+; 64-ºñÆ® ÇÁ·Î±×·¥ ÆÄÀÏÀÇ °æ·Î°¡ ¹ÝȯµÈ´Ù´Â °ÍÀ» È®ÀÎÇÕ´Ï´Ù.
+SetRegView 64  ; v1.1.08+ ÇÊ¿ä
+
+RegRead, OutputVar, HKEY_LOCAL_MACHINE, SOFTWARE\Microsoft\Windows\CurrentVersion, ProgramFilesDir
+MsgBox, Program files are in: %OutputVar%
+
+; ´Ù¸¥ ±¸¹® (v1.1.21+ ÇÊ¿ä):
+RegRead, OutputVar, HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion, ProgramFilesDir
+MsgBox, Program files are in: %OutputVar%
+
+; ÇÁ·Î±×·¥ ÆÄÀÏ µð·ºÅ丮 °æ·Î¸¦ ¿­¶÷ÇÏ´Â ¶Ç´Ù¸¥ ¹æ¹ý:
+EnvGet OutputVar, % A_Is64bitOS ? "ProgramW6432" : "ProgramFiles"
+MsgBox, Program files are in: %OutputVar%
+
+

 

+
; ´ÙÀ½ ¿¹Á¦´Â ·¹Áö½ºÆ®¸® °ªÀÇ À¯ÇüÀ» ¿­¶÷ÇÕ´Ï´Ù (¿¹, REG_SZ ¶Ç´Â REG_DWORD).
+MsgBox % RegKeyType("HKCU", "Environment", "TEMP")
+return
+
+RegKeyType(RootKey, SubKey, ValueName)  ; ÀÌ ÇÔ¼ö´Â ÁöÁ¤µÈ °ªÀÇ À¯ÇüÀ» µ¹·ÁÁÝ´Ï´Ù.
+{
+    Loop, %RootKey%, %SubKey%
+        if (A_LoopRegName = ValueName)
+            return A_LoopRegType
+    return "Error"
+}
+ + + diff --git a/src/docs/commands/RegWrite.htm b/src/docs/commands/RegWrite.htm new file mode 100644 index 0000000..1b1272a --- /dev/null +++ b/src/docs/commands/RegWrite.htm @@ -0,0 +1,78 @@ + + + + +RegWrite + + + + + + + +

RegWrite

+ +

·¹Áö½ºÆ®¸®¿¡ °ªÀ» ¾¹´Ï´Ù.

+ +
RegWrite, ValueType, RootKey\SubKey [, ValueName, Value]  ; v1.1.21+
+RegWrite, ValueType, RootKey, SubKey [, ValueName, Value]
+

¸Å°³º¯¼ö

+
+ +
ValueType
+

¹Ýµå½Ã REG_SZ, REG_EXPAND_SZ, REG_MULTI_SZ, REG_DWORD, ¶Ç´Â REG_BINARY Áß Çϳª.

+ +
RootKey
+

¹Ýµå½Ã HKEY_LOCAL_MACHINE, HKEY_USERS, HKEY_CURRENT_USER, HKEY_CLASSES_ROOT, ¶Ç´Â HKEY_CURRENT_CONFIG (¶Ç´Â HKLM¿Í °°Àº ¾àÀÚ) Áß Çϳª. ¿ø°Ý ·¹Áö½ºÆ®¸®¿¡ Á¢±ÙÇÏ·Á¸é, ´ÙÀ½ ¿¹Á¦¿Í °°ÀÌ ¾Õ¿¡ ÄÄÇ»ÅÍ À̸§°ú ½ÖÁ¡ (¶Ç´Â v1.1.21+À̸é, Á¤»ç¼±)À» ¹èÄ¡ÇϽʽÿÀ: \\workstation01:HKEY_LOCAL_MACHINE

+ +
SubKey
+

ÇÏÀ§Å°ÀÇ À̸§ (¿¹, Software\SomeApplication). SubKey°¡ Á¸ÀçÇÏÁö ¾ÊÀ¸¸é, (ÇÊ¿äÇÏ¸é ±×ÀÇ Á¶»óµµ ÇÔ²²) »ý¼ºµË´Ï´Ù. SubKey°¡ ºñ¾î ÀÖÀ¸¸é, °ªÀº Á÷Á¢ÀûÀ¸·Î RootKey¿¡ ¾º¿©Áý´Ï´Ù (±×·¸Áö¸¸ ¾î¶² ¿î¿µ üÁ¦´Â HKEY_CURRENT_USERÀÌ ÃÖ»óÀ§ ·¹º§¿¡ ¾²´Â °ÍÀ» °ÅºÎÇÒ ¼öµµ ÀÖ½À´Ï´Ù).

+ +
RootKey\SubKey [v1.1.21+]
+

RootKey ´ÙÀ½¿¡ ¹Ù·Î Á¤»ç¼± (\)ÀÌ µû¶ó¿À¸é, RootKey ¿Í SubKey´Â ÇϳªÀÇ ¸Å°³º¯¼ö·Î ÇÕº´µË´Ï´Ù.

+ +
ValueName
+

¾º¿©Áú °ªÀÇ À̸§. ºñ¾î Àְųª »ý·«Çϸé, SubkeyÀÇ ±âº»°ªÀÌ »ç¿ëµË´Ï´Ù. ±âº» °ªÀº RegEdit°¡ "(Default)"·Î º¸¿©ÁÖ´Â °ªÀÔ´Ï´Ù.

+ +
Value
+

¾º¿©Áú °ª. »ý·«Çϸé, ValueType¿¡ µû¶ó ºó ¹®ÀÚ¿­ ¶Ç´Â 0ÀÌ ±âº»°ªÀÔ´Ï´Ù. ÅؽºÆ®°¡ ±æ¸é, °è¼Ó ¼½¼ÇÀ» ¼ö´ÜÀ¸·Î ªÀº ÁÙ·Î °¡¸¦ ¼ö ÀÖ½À´Ï´Ù. ÀÌ·¸°Ô ÇÏ¸é °¡µ¶¼º°ú À¯Áö°ü¸®¼ºÀÌ Çâ»óµË´Ï´Ù.

+ +
+

ErrorLevel

+

[v1.1.04+] ÀÌ ¸í·É¾î´Â ¿¹¿Ü½Ã ¿¡·¯¸¦ ´øÁú ¼ö ÀÖ½À´Ï´Ù. ´õ ÀÚ¼¼ÇÑ Á¤º¸´Â ½ÇÇà½Ã°£ ¿¡·¯¸¦ ÂüÁ¶ÇϽʽÿÀ.

+

+ErrorLevelÀº ¹®Á¦°¡ ÀÖ¾úÀ¸¸é 1ÀÌ ¼³Á¤µÇ°í ±×·¸Áö ¾ÊÀ¸¸é 0ÀÌ ¼³Á¤µË´Ï´Ù.

+

+A_LastErrorÀº ¿î¿µ üÁ¦ÀÇ GetLastError() ÇÔ¼öÀÇ °á°ú°¡ ¼³Á¤µË´Ï´Ù.

+ +

³íÆò

+

+ValueTypeÀÌ REG_DWORDÀ̸é, Value´Â -2147483648¿Í 4294967295 (0xFFFFFFFF) »çÀÌÀÇ °ªÀ̾î¾ß ÇÕ´Ï´Ù.

+

+REG_BINARY Å°¸¦ ¾µ ¶§, ½ÊÀ°Áø ¹®ÀÚ·Î ±¸¼ºµÈ ¹®ÀÚ¿­À» »ç¿ëÇϽʽÿÀ. ¿¹¸¦ µé¾î REG_BINARY °ªÀÌ 01,a9,ff,77 ÀÌ¸é ¹®ÀÚ¿­ 01A9FF77À» »ç¿ëÇØ ¾µ ¼ö ÀÖ½À´Ï´Ù.

+

+REG_MULTI_SZ Å°¸¦ ¾µ ¶§, °¢ ±¸¼º¿ä¼Ò¸¦ ´ÙÀ½ ±¸¼º¿ä¼Ò¿Í ¶óÀÎÇÇµå ¹®ÀÚ·Î °¥¶ó¾ß ÇÕ´Ï´Ù (`n). ¸¶Áö¸· ±¸¼º¿ä¼Ò´Â ¼±ÅÃÀûÀ¸·Î ¶óÀÎÇǵå·Î ³¡³ªµµ µË´Ï´Ù. ºó ±¸¼º¿ä¼Ò´Â Çã¿ëÇÏÁö ¾Ê½À´Ï´Ù. ´Ù¸¥ ¸»·Î, µÎ °³ÀÇ ¶óÀÎÇǵ带 ÇÑ ÁÙ¿¡ ÁöÁ¤ÇÏÁö ¸¶½Ê½Ã¿À (`n`n). ¿Ö³ÄÇÏ¸é ±×·¸°Ô ÇÏ¸é ¿¹»óº¸´Ù ´õ ªÀº °ªÀÌ ·¹Áö½ºÆ®¸®¿¡ ¾º¿©Áö±â ¶§¹®ÀÔ´Ï´Ù.

+

+REG_BINARY¿Í REG_MULTI_SZ °ªÀÌ 64Kº¸´Ù Å©¸é v1.1.10.01 ÀÌÈÄ¿¡¼­¸¸ Áö¿øÇÕ´Ï´Ù. ¿¹Àü ¹öÀü¿¡¼­´Â 64K±îÁö ¸¸ ³²±â°í Àß¶ó³» ¹ö¸³´Ï´Ù.

+

+¿©·¯ ·¹Áö½ºÆ®¸®³ª Å°¸¦ ¿­¶÷ÇÏ°í ó¸®ÇÏ·Á¸é, ·¹Áö½ºÆ®¸®-ȸµ¹ÀÌÀÇ »ç¿ëÀ» °í·ÁÇØ º¸½Ê½Ã¿À.

+

+¿ø°Ý ÄÄÇ»ÅÍÀÇ ·¹Áö½ºÆ®¸®¿¡ Á¢±ÙÇÏ´Â ¹ý¿¡ °üÇÑ ´õ ÀÚ¼¼ÇÑ Á¤º¸´Â ·¹Áö½ºÆ®¸®-ȸµ¹ÀÌÀÇ ³íÆòÀ» ÂüÁ¶ÇϽʽÿÀ.

+

+32-ºñÆ® ½ºÅ©¸³Æ®¿¡¼­ 64ºñÆ®- ¼½¼ÇÀÇ ·¹Áö½ºÆ®¸®¸¦ ¶Ç´Â ±× ¹Ý´ë·Î ÀÐ°í ¾²·Á¸é, SetRegView¸¦ »ç¿ëÇϽʽÿÀ.

+ +

°ü·Ã Ç׸ñ

+

RegDelete, RegRead, Registry-loop, SetRegView, IniWrite

+ +

¿¹Á¦

+
RegWrite, REG_SZ, HKEY_LOCAL_MACHINE, SOFTWARE\TestKey, MyValueName, Test Value
+RegWrite, REG_BINARY, HKEY_CURRENT_USER, Software\TEST_APP, TEST_NAME, 01A9FF77
+RegWrite, REG_MULTI_SZ, HKEY_CURRENT_USER, Software\TEST_APP, TEST_NAME, Line1`nLine2
+
+; ¶Ç´Ù¸¥ ±¸¹® (v1.1.21+ ÇÊ¿ä):
+RegWrite, REG_SZ, HKEY_LOCAL_MACHINE\SOFTWARE\TestKey, MyValueName, Test Value
+RegWrite, REG_BINARY, HKEY_CURRENT_USER\Software\TEST_APP, TEST_NAME, 01A9FF77
+RegWrite, REG_MULTI_SZ, HKEY_CURRENT_USER\Software\TEST_APP, TEST_NAME, Line1`nLine2
+ + + diff --git a/src/docs/commands/RegisterCallback.htm b/src/docs/commands/RegisterCallback.htm new file mode 100644 index 0000000..4f70cb4 --- /dev/null +++ b/src/docs/commands/RegisterCallback.htm @@ -0,0 +1,181 @@ + + + + +RegisterCallback + + + + + + + +

RegisterCallback() [v1.0.47+]

+ +

¸Ó½Å-ÄÚµå ÁÖ¼Ò¸¦ »ý¼ºÇÕ´Ï´Ù. ÀÌ ÁּҴ ȣÃâµÉ ¶§, ½ºÅ©¸³Æ®ÀÇ ÇÔ¼ö·Î ¹æÇâÀüȯ ÇÕ´Ï´Ù.

+ +
Address := RegisterCallback("FunctionName" [, Options = "", ParamCount = FormalCount, EventInfo = Address])
+

¸Å°³º¯¼ö

+
+ +
Address
+

¼º°øÇϸé, RegisterCallback()Àº ¼ýÄ¡ Áַθ¦ µ¹·ÁÁÝ´Ï´Ù. ÀÌ ÁÖ¼Ò¸¦ DllCall() ¶Ç´Â ±âŸ ¸Ó½Å-ÄÚµå ÇÔ¼ö¸¦ È£ÃâÇÒ ¼ö ÀÖ´Â ´Ù¸¥ ÇÔ¼ö°¡ È£ÃâÇÒ ¼ö ÀÖ½À´Ï´Ù. ½ÇÆÐÇϸé, ºó ¹®ÀÚ¿­À» µ¹·ÁÁÝ´Ï´Ù. ½ÇÆа¡ ÀϾ´Â °æ¿ì´Â FunctionNameÀÌ: +

    +
  1. Á¸ÀçÇÏÁö ¾ÊÀ» °æ¿ì; +
  2. ParamCount º¸´Ù ³Ê¹« ¸¹°Å³ª ³Ê¹« Àû°Ô ¸Å°³º¯¼ö¸¦ ¹ÞÀº °æ¿ì; +
  3. ¶Ç´Â ByRef ¸Å°³º¯¼ö¸¦ ¹ÞÀº °æ¿ìÀÔ´Ï´Ù. +
+

+ +
FunctionName
+
+

ÇÔ¼öÀÇ À̸§ÀÔ´Ï´Ù. ±âÈ£ ±×´ë·ÎÀÇ ¹®ÀÚ¿­ÀÏ °æ¿ì ¹Ýµå½Ã µû¿ÈÇ¥·Î µÑ·¯ ½Î¾ß ÇÕ´Ï´Ù. ÀÌ ÇÔ¼ö´Â Address°¡ È£ÃâµÉ ¶§¸¶´Ù ÀÚµ¿À¸·Î È£ÃâµË´Ï´Ù. ÇÔ¼ö´Â ¶Ç Address¿¡ °Ç³×¾îÁø ¸Å°³º¯¼öµéµµ ¹Þ½À´Ï´Ù.

+

[v1.1.06+]: ÇÔ¼ö À̸§ ´ë½Å¿¡ ÇÔ¼ö ÂüÁ¶¸¦ °Ç³Ú ¼ö ÀÖ½À´Ï´Ù.

+
+ +
Options
+

0°³ ÀÌ»óÀÇ ´ÙÀ½ ´Ü¾îµéÀ» ÁöÁ¤ÇÕ´Ï´Ù. °¢ ¿É¼ÇÀº ´ÙÀ½ ¿É¼Ç°ú ½ºÆäÀ̽º·Î ±¸ºÐÇϽʽÿÀ (¿¹, C Fast).

+

Fast ¶Ç´Â F: FunctionNameÀÌ È£ÃâµÉ ¶§¸¶´Ù »õ ¾²·¹µå°¡ ½ÃÀÛÇÏ´Â °ÍÀ» ÇÇÇÕ´Ï´Ù. ºñ·Ï ¼öÇ༺´ÉÀº ÁÁ¾ÆÁöÁö¸¸, Address·Î È£ÃâµÇ´Â ¾²·¹µå°¡ ´Þ¶óÁú °æ¿ì´Â (¿¹, µé¾î¿À´Â ¸Þ½ÃÁö¿¡ ÀÇÇÏ¿© ¿ªÈ£ÃâÀÌ ÃË¹ßµÉ ¶§´Â) ÇÇÇØ¾ß ÇÕ´Ï´Ù. ¿Ö³ÄÇϸé È£ÃâµÇ´Â ¼ø°£¿¡ ¾²·¹µå°¡ ½ÇÇàµÇ´Â °æ¿ì FunctionNameÀÌ ErrorLevel, A_LastError, ±×¸®°í ¸¶Áö¸·À¸·Î-¹ß°ßµÈ â°ú °°ÀÌ Àü¿ª ¼³Á¤À» ¹Ù²Ù¾î ¹ö¸± À§ÇèÀÌ Àֱ⠶§¹®ÀÔ´Ï´Ù. ´õ ÀÚ¼¼ÇÑ Á¤º¸´Â ³íÆòÀ» º¸½Ê½Ã¿À.

+

CDecl ¶Ç´Â C: Address°¡ "C" È£Ãâ °ü·Ê¸¦ µû¸£µµ·Ï ¸¸µì´Ï´Ù. ÀÌ´Â ÀüÇüÀûÀ¸·Î »ý·«µË´Ï´Ù. ¿Ö³ÄÇϸé Ç¥ÁØ È£Ãâ °ü·Ê°¡ ÈξÀ ´õ ¸¹ÀÌ ¿ªÈ£Ãâ¿¡ »ç¿ëµÇ±â ¶§¹®ÀÔ´Ï´Ù.

+ +
ParamCount
+

¸Å°³º¯¼öÀÇ °³¼öÀÔ´Ï´Ù. AddressÀÇ È£ÃâÀÚ°¡ °Ç³Ü´Ï´Ù. ÀüºÎ »ý·«Çϸé, ±âº»°ªÀº FunctionName¿¡ Á¤ÀÇµÈ Çʼö ¸Å°³º¯¼öÀÇ °³¼öÀÔ´Ï´Ù. ¾î´À °æ¿ìµç, È£ÃâÀÚ°¡ Á¤È®ÇÏ°Ô ÀÌ °³¼öÀÇ ¸Å°³º¯¼ö¸¦ °Ç³×´ÂÁö È®ÀÎÇϽʽÿÀ.

+ +
EventInfo
+
+

FunctionNameÀÌ Address¸¦ ÅëÇÏ¿© È£ÃâµÉ ¶§¸¶´Ù A_EventInfo¿¡¼­ º¸°ÔµÉ Á¤¼öÀÔ´Ï´Ù. FunctionNameÀÌ Çϳª ÀÌ»óÀÇ Address·Î È£ÃâµÉ ¶§ À¯¿ëÇÕ´Ï´Ù. »ý·«µÇ¸é, ±âº»°ªÀº AddressÀÔ´Ï´Ù. ÁÖÀÇ: ´Ù¸¥ Àü¿ª ¼³Á¤°ú ´Ù¸£°Ô, ÇöÀç ¾²·¹µåÀÇ A_EventInfo´Â ºü¸¥ ¸ðµå¿¡ ¿µÇâÀ» ¹ÞÁö ¾Ê½À´Ï´Ù.

+

+ ½ºÅ©¸³Æ®¸¦ ½ÇÇàÇÏ´Â ÆÄÀÏÀÌ 32-ºñÆ®À̸é, ÀÌ ¸Å°³º¯¼ö´Â 0ºÎÅÍ 4294967295 »çÀÌÀÇ °ªÀÔ´Ï´Ù. 64ºñÆ®À̸é, ÀÌ ¸Å°³º¯¼ö´Â 64-ºñÆ® Á¤¼öÀÔ´Ï´Ù. A_EventInfo´Â º¸Åë ºÎÈ£¾ø´Â Á¤¼ö¸¦ µ¹·ÁÁÖÁö¸¸, ¿ÀÅäÇÖÅ°´Â ºÎÈ£¾ø´Â 64-ºñÆ® Á¤¼ö¸¦ ¿Ïº®ÇÏ°Ô Áö¿øÇÏÁö ¸øÇÕ´Ï´Ù. ±×·¡¼­ ¾î¶² ¿¬»êÀº ±× °ªÀ» ºÎÈ£ÀÖ´Â Á¤¼ö¿¡ ½Î¼­ µ¹·ÁÁֱ⵵ ÇÕ´Ï´Ù.

+ +
+ +

¿ªÈ£Ãâ ÇÔ¼öÀÇ ¸Å°³º¯¼ö

+

+¿ªÈ£Ãâ ÁÖ¼Ò¿¡ ÇÒ´çµÈ ÇÔ¼ö´Â ¸Å°³º¯¼ö¸¦ 31°³±îÁö ¹ÞÀ» ¼ö ÀÖ½À´Ï´Ù. ¼±ÅÃÀû ¸Å°³º¯¼ö¸¦ Çã¿ëÇÕ´Ï´Ù. ÀÌ´Â ÇÔ¼ö°¡ ¿©·¯ È£ÃâÀÚ¿¡°Ô È£ÃâµÉ ¶§ À¯¿ëÇÕ´Ï´Ù.

+

+¸Å°³º¯¼ö¸¦ ¿Ã¹Ù¸£°Ô ¹ø¿ªÇÏ·Á¸é x86 È£Ãâ °ü·ÊÀÇ ÀÛµ¿ ¹æ½ÄÀ» ÀÌÇØÇØ¾ß ÇÕ´Ï´Ù. ¿ÀÅäÇÖÅ°´Â ¸Å°³º¯¼ö°¡ À¯ÇüÀÌ Á¤ÀǵÇÁö ¾ÊÀ¸¹Ç·Î, ¿ªÈ£Ãâ ÇÔ¼öÀÇ ¸Å°³º¯¼ö ¸®½ºÆ®´Â Á¤¼ö·Î ±¸¼ºµÇ¾î ÀÖ´Ù°í °£Áֵ˴ϴÙ. ±×¸®°í ¾à°£ÀÇ Àç¹ø¿ªÀÌ ¿ä±¸µË´Ï´Ù.

+ +

AutoHotkey 32-bit: µé¾î¿À´Â ¸ðµç ¸Å°³º¯¼ö´Â 32-ºñÆ® Á¤¼öÀÔ´Ï´Ù. ´õ ÀÛÀº À¯ÇüÀº 32ºñÆ®¿¡ ¸Â°Ô Æе带 µ¡´ð´Ï´Ù. ¹Ý¸é¿¡ ´õ Å« À¯ÇüÀº µÎ °³ÀÇ 32 ºñÆ® ¸Å°³º¯¼ö·Î ÂÉ°³¾îÁý´Ï´Ù.

+

+µé¾î¿À´Â ¸Å°³º¯¼ö°¡ ºÎÈ£ÀÖ´Â Á¤¼ö¸¦ ÀǵµÇϸé, À½ÀÇ Á¤¼ö´Â ´ÙÀ½ ¿¹Á¦ Áß Çϳª·Î ³ëÃâ½Ãų ¼ö ÀÖ½À´Ï´Ù:

+
; ¹æ¹ý #1
+if wParam > 0x7FFFFFFF
+    wParam := -(~wParam) - 1
+
+; ¹æ¹ý #2: ¿ÀÅäÇÖÅ°°¡ ±Ùº»ÀûÀ¸·Î ºÎÈ£ ÀÖ´Â 64-ºñÆ® Á¤¼ö¸¦ »ç¿ëÇÑ´Ù´Â »ç½Ç¿¡ ÀÇÁ¸ÇÕ´Ï´Ù.
+wParam := wParam << 32 >> 32
+ +

AutoHotkey 64-bit: µé¾î¿À´Â ¸ðµç ¸Å°³º¯¼ö´Â ºÎÈ£ÀÖ´Â 64-ºñÆ® Á¤¼öÀÔ´Ï´Ù. ¿ÀÅäÇÖÅ°´Â ºÎÈ£¾ø´Â 64-ºñÆ® Á¤¼ö¸¦ Áö¿øÇÏÁö ¾Ê½À´Ï´Ù. ´õ ÀÛÀ¸¸é 64 ºñÆ®±îÁö Æе尡 µ¡´ë¾îÁö°í, ´õ Å©¸é ¾ðÁ¦³ª ÁÖ¼Ò·Î °Ç³×Áý´Ï´Ù.

+ +

AutoHotkey 32-bit/64-bit: µé¾î¿À´Â ¸Å°³º¯¼ö°¡ 8-ºñÆ® ¶Ç´Â 16-ºñÆ®¸¦ ÀǵµÇÑ´Ù¸é (¶Ç x64 ¸Ó½Å¿¡¼­´Â 32-ºñÆ® ), °ªÀÇ »óÀ§ ºñÆ®µéÀº "¾²·¹±â"·Î ä¿öÁý´Ï´Ù. ÀÌ ¾²·¹±âµéÀº ºñÆ®º°-and ¿¬»êÀ¸·Î ´ÙÀ½ ¿¹Á¦¿Í °°ÀÌ ¿©°úÇÒ ¼ö ÀÖ½À´Ï´Ù:

+
Callback(UCharParam, UShortParam, UIntParam) {
+    UCharParam &= 0xFF
+    UShortParam &= 0xFFFF
+    UIntParam &= 0xFFFFFFFF
+    ;...
+}
+

+µé¾î¿À´Â ¸Å°³º¯¼ö°¡ ±×ÀÇ È£ÃâÀÚ¿¡°Ô ¹®ÀÚ¿­À̱⸦ ÀǵµÇÑ´Ù¸é, ½ÇÁ¦·Î ¹Þ´Â °ÍÀº ±× ¹®ÀÚ¿­ÀÇ ÁÖ¼ÒÀÔ´Ï´Ù. ¹®ÀÚ¿­ ÀÚü¸¦ ¹ÞÀ¸·Á¸é StrGetÀ» »ç¿ëÇϽʽÿÀ:

+
MyString := StrGet(MyParameter)  ; AHK_L 46+
+

+µé¾î¿À´Â ¸Å°³º¯¼ö°¡ ±¸Á¶Ã¼ÀÇ ÁÖ¼ÒÀ̸é, °¢ ¸â¹öµéÀº ´ÙÀ½ DllCall ±¸Á¶ÀÇ ´Ü°è¸¦ µû¶ó ÃßÃâÇÕ´Ï´Ù.

+ +

ÁÖ¼Ò·Î ¸Å°³º¯¼ö ¹Þ±â [AHK_L 60+]: ÇÔ¼ö°¡ °¡º¯ÇÔ¼ö·Î ¼±¾ðµÇ¾î ÀÖÀ¸¸é, ±×ÀÇ ¸¶Áö¸· ¸Å°³º¯¼ö´Â ¿ªÈ£Ãâ ÇÔ¼öÀÇ Ã¹ ¸Å°³º¯¼ö ÁÖ¼Ò¿¡ ÇÒ´çµË´Ï´Ù. ½ºÅ©¸³Æ® ¸Å°³º¯¼ö¿¡ ÇÒ´çµÇÁö ¾Ê½À´Ï´Ù. ¿¹¸¦ µé¾î:

+
+callback := RegisterCallback("TheFunc", "F", 1)  ; ¸Å°³º¯¼ö °³¼ö¸¦ ¸í½ÃÇØ¾ß ÇÕ´Ï´Ù.
+TheFunc("TheFunc was called directly.")          ; Á÷Á¢ TheFunc¸¦ È£ÃâÇÕ´Ï´Ù.
+DllCall(callback, float, 10.5, int64, 42)        ; ¿ªÈ£ÃâÀ» ÅëÇÏ¿© TheFunc¸¦ È£ÃâÇÕ´Ï´Ù.
+TheFunc(params*) {
+    if IsObject(params)
+        MsgBox % params[1]
+    else
+        MsgBox % NumGet(params+0, "float") ", " NumGet(params+A_PtrSize, "int64")
+}
+

+´ëºÎºÐÀÇ ¿ªÈ£ÃâÇÔ¼ö´Â stdcall È£Ãâ °ü·Ê¸¦ »ç¿ëÇÕ´Ï´Ù. ÀÌ °ü·Ê´Â °íÁ¤µÈ °³¼öÀÇ ¸Å°³º¯¼ö¸¦ ¿ä±¸ÇÕ´Ï´Ù. ±×·¯¹Ç·Î, ¿ªÈ£ÃâÀÌ »ý¼ºµÉ ¶§ ParamCount¸¦ ÁöÁ¤ÇØ¾ß ÇÕ´Ï´Ù. 64-ºñÆ® ºôµå¿¡¼­´Â ParamCount¸¦ »ý·«ÇÒ ¼ö ÀÖ°í 32-ºñÆ® ºôµå´Â Cdecl ¿ªÈ£ÃâÀ» »ç¿ëÇÕ´Ï´Ù - ±×·± °æ¿ì ¸ðµç ¼±ÅÃÀûÀÎ ¸Å°³º¯¼ö´Â ±âº» °ªÀ» ¹Þ°í params¿¡ ÀúÀåÇϱâ À§ÇØ ÁÖ¼Ò¸¦ °è»êÇϱâ À§ÇÑ ¸ñÀûÀ¸·Î´Â ¹«½ÃµË´Ï´Ù.

+ +

ÇÔ¼ö´Â ¹«¾ùÀ» µ¹·ÁÁÖ¾î¾ß Çϴ°¡(Return)

+

+ÇÔ¼ö°¡ ¸Å°³º¯¼ö ¾øÀÌ ReturnÀ» »ç¿ëÇϰųª, ""¿Í °°ÀÌ ºó °ªÀ» ÁöÁ¤Çϸé (¶Ç´Â ÀüÇô ReturnÀ» »ç¿ëÇÏÁö ¾ÊÀ¸¸é), 0ÀÌ ¿ªÈ£ÃâÀÇ È£ÃâÀÚ¿¡°Ô ¹ÝȯµË´Ï´Ù. ±×·¸Áö ¾ÊÀ¸¸é, ÇÔ¼ö´Â Á¤¼ö¸¦ ¹ÝȯÇØ¾ß ÇÕ´Ï´Ù. ÀÌ °ªÀº ±×·¯¸é È£ÃâÀÚ¿¡°Ô ¹ÝȯµË´Ï´Ù. ¿ÀÅäÇÖÅ° 32-ºñÆ®´Â ¹Ýȯ °ªÀ» 32-ºñÆ®·Î À߶ó³À´Ï´Ù. ¹Ý¸é¿¡ ¿ÀÅäÇÖÅ° 64-ºñÆ®´Â 64-ºñÆ® ¹Ýȯ°ªÀ» Áö¿øÇÕ´Ï´Ù. ÀÌ º¸´Ù Å« °ªÀ» (°ªÀ¸·Î) ¹ÝȯÇÏ´Â °ÍÀº Áö¿øÇÏÁö ¾Ê½À´Ï´Ù.

+ +

ºü¸£°Ô vs. ´À¸®°Ô

+

+±âº»/´À¸®°Ô ¸ðµå¿¡¼­ ÇÔ¼ö´Â SendMode ±×¸®°í DetectHiddenWindows¿Í °°Àº ¼³Á¤¿¡ ´ëÇÏ¿© ±âº» °ªÀ¸·Î »õ·Ó°Ô ½ÃÀÛÇÕ´Ï´Ù. ÀÌ ±âº»°ªµéÀº ÀÚµ¿-½ÇÇà ¼½¼Ç¿¡¼­ ¹Ù²Ü ¼ö ÀÖ½À´Ï´Ù .

+

+´ëÁ¶ÀûÀ¸·Î, ºü¸¥ ¸ðµå´Â ÇÔ¼ö°¡ È£ÃâµÇ´Â ¼ø°£¿¡ ¿ì¿¬ÇÏ°Ô ½ÇÇàÁßÀÎ ¾²·¹µå·ÎºÎÅÍ Àü¿ª ¼³Á¤À» ¹°·Á¹Þ½À´Ï´Ù. °Ô´Ù°¡, ÇÔ¼ö°¡ Àü¿ª ¼³Á¤¿¡ °¡ÇÏ´Â ¸ðµç º¯°æÀº (ErrorLevel ±×¸®°í ¸¶Áö¸·À¸·Î-¹ß°ßµÈ âÀ» Æ÷ÇÔÇÏ¿©) ÇöÀç ¾²·¹µå ¾ÈÀ¸·Î ¿µÇâÀ» ÁÝ´Ï´Ù. °á°úÀûÀ¸·Î, ºü¸¥ ¸ðµå´Â Á¤È®ÇÏ°Ô ¾î´À ¾²·¹µå·ÎºÎÅÍ ÇÔ¼ö°¡ È£ÃâµÇ´ÂÁö ¾Ë °æ¿ì¿¡¸¸ »ç¿ëÇØ¾ß ÇÕ´Ï´Ù.

+

+ÀÚ±â ÀڽŠ(¶Ç´Â ´Ù¸¥ ¾²·¹µå)·ÎºÎÅÍ ÀÎÅÍ·´Æ®µÇÁö ¾ÊÀ¸·Á¸é, ¿ªÈ£ÃâÇÔ¼ö´Â ÀÚ½ÅÀÇ Ã¹ ÁÙ¿¡ ÀÓ°è°ª(Critical)À» »ç¿ëÇØ¾ß ÇÕ´Ï´Ù. ±×·¸Áö¸¸, ÀÌ°ÍÀÌ ¿ÏÀüÇÏ°Ô È¿°ú°¡ ÀÖ´Â °ÍÀº ¾Æ´Õ´Ï´Ù. ÇÔ¼ö°¡ 0x312 º¸´Ù ÀÛÀº ¸Þ½ÃÁöÀÇ µµÂøÀ» ÅëÇÏ¿© °£Á¢ÀûÀ¸·Î È£ÃâµÉ ¶§´Â È¿·ÂÀ» ¹ÌÄ¡Áö ¸øÇÕ´Ï´Ù (CriticalÀÇ °£°ÝÀ» Áõ°¡½ÃÅ°¸é µµ¿òÀÌ µÉ ¼ö ÀÖ½À´Ï´Ù). + +°Ô´Ù°¡, ÀÓ°è°ª(Critical)À¸·Î´Â ÇÔ¼ö°¡ °£Á¢ÀûÀ¸·Î ÀÚ½ÅÀ» È£ÃâÇÏ´Â °á°ú°¡ µÇ´Â °ÍÀ» ¸·Áö ¸øÇÕ´Ï´Ù. ¿¹¸¦ µé¾î SendMessageÀ̳ª DllCall¸¦ È£ÃâÇÏ´Â °ÍÀ» ¸·À» ¼ö ¾ø½À´Ï´Ù.

+ +

¸Þ¸ð¸®

+

+RegisterCallback()À» »ç¿ëÇÒ ¶§¸¶´Ù ÀÛÀº ¸Þ¸ð¸®°¡ ÇÒ´çµË´Ï´Ù (32 ¹ÙÀÌÆ®¿¡´Ù ¾à°£ÀÇ ½Ã½ºÅÛ ¿À¹öÇìµå). OS´Â ½ºÅ©¸³Æ®°¡ Á¾·áÇÒ ¶§ ÀÌ ¸Þ¸ð¸®¸¦ ÀÚµ¿À¸·Î ÇØÁ¦Çϱ⠶§¹®¿¡ , ½ºÅ©¸³Æ®°¡ ÀÛÀº, °íÁ¤ °³¼öÀÇ ¿ªÈ£ÃâÀ» µî·ÏÇÑ´Ù¸é ¸í½ÃÀûÀ¸·Î ¸Þ¸ð¸®¸¦ ÇØÁ¦ÇÒ ÇÊ¿ä°¡ ¾ø½À´Ï´Ù. ´ëÁ¶ÀûÀ¸·Î, ½ºÅ©¸³Æ®°¡ RegisterCallback()À» ¹«Á¦ÇÑ/³¡¾øÀÌ È£ÃâÇÑ´Ù¸é ¸í½ÃÀûÀ¸·Î ´ÙÀ½°ú °°ÀÌ »ç¿ëµÇÁö ¾Ê´Â ¿ªÈ£Ãâ ÇÔ¼ö¸¦ È£ÃâÇØ¾ß ÇÕ´Ï´Ù:

+
DllCall("GlobalFree", "Ptr", Address, "Ptr")
+ +

°ü·Ã Ç׸ñ

+

DllCall(), OnMessage(), OnExit, OnClipboardChange, SortÀÇ ¿ªÈ£Ãâ, Critical, Post/SendMessage, ÇÔ¼ö, À©µµ¿ìÁî ¸Þ½ÃÁö ¸®½ºÆ®, ¾²·¹µå

+ +

¿¹Á¦

+
; ¿¹Á¦: ´ÙÀ½ ¿¹Á¦´Â ÀÛµ¿ÇÏ´Â ½ºÅ©¸³Æ®·Î¼­ ¸ðµç ÃÖ»óÀ§ âÀÇ Á¤º¸¸¦ ¿ä¾àÇØ º¸¿©ÁÝ´Ï´Ù.
+
+; ¼öÇ༺´É°ú ¸Þ¸ð¸® º¸ÀüÀ» À§ÇØ, ÁÖ¾îÁø ¿ªÈ£Ãâ¿¡ ´ëÇؼ­ RegisterCallback()À» ÇÑ ¹ø¸¸ È£ÃâÇÕ´Ï´Ù:
+if not EnumAddress  ; ºü¸¥-¸ðµå´Â ÀÌ ¾²·¹µå¿¡¼­¸¸ È£ÃâµÇ±â ¶§¹®¿¡ ±¦Âú½À´Ï´Ù:
+    EnumAddress := RegisterCallback("EnumWindowsProc", "Fast")
+
+DetectHiddenWindows On  ; ºü¸¥ ¸ðµå ¶§¹®¿¡, ÀÌ ¼³Á¤Àº ¿ªÈ£Ãâ¿¡°Ôµµ ¿µÇâÀ» ¹ÌĨ´Ï´Ù.
+
+; Á¦¾î¸¦ EnumWindows()¿¡°Ô °Ç³Ü´Ï´Ù. ÀÌ ÇÔ¼ö´Â ¹Ýº¹ÀûÀ¸·Î ¿ªÈ£ÃâÀ» È£ÃâÇÕ´Ï´Ù:
+DllCall("EnumWindows", Ptr, EnumAddress, Ptr, 0)
+MsgBox %Output%  ; ¿ªÈ£ÃâÀÌ ÃàÀûÇÑ Á¤º¸¸¦ º¸¿©ÁÝ´Ï´Ù.
+    
+EnumWindowsProc(hwnd, lParam)
+{
+    global Output
+    WinGetTitle, title, ahk_id %hwnd%
+    WinGetClass, class, ahk_id %hwnd%
+    if title
+        Output .= "HWND: " . hwnd . "`tTitle: " . title . "`tClass: " . class . "`n"
+    return true  ;  EnumWindows()¿¡°Ô ¸ðµç âÀÌ ¿­°ÅµÉ ¶§±îÁö °è¼ÓÇ϶ó°í ¸í·ÉÇÕ´Ï´Ù.
+}
+

 

+
; ¿¹Á¦: ´ÙÀ½ ÀÛµ¿ÇÏ´Â ½ºÅ©¸³Æ®·Î¼­ GUI âÀ» »ó¼Ó¹Þ´Â ¹ýÀ» º¸¿©ÁÝ´Ï´Ù.
+; ±×ÀÇWindowProcÀ» ½ºÅ©¸³Æ®ÀÇ »õ WindowProcÀ¸·Î ¹æÇâ ÀüȯÇÕ´Ï´Ù. 
+; ÀÌ °æ¿ì, ÅؽºÆ® ÄÜÆ®·ÑÀÇ ¹è°æ»öÀº ¸ÂÃã »öÀ¸·Î ¹Ù²ò´Ï´Ù.
+
+TextBackgroundColor := 0xFFBBBB  ; BGR Æ÷¸ËÀÇ ¸ÂÃã »ö.
+TextBackgroundBrush := DllCall("CreateSolidBrush", UInt, TextBackgroundColor)
+
+Gui, Add, Text, HwndMyTextHwnd, Here is some text that is given`na custom background color.
+Gui +LastFound
+GuiHwnd := WinExist()
+
+; 64-ºñÆ® ½ºÅ©¸³Æ®´Â SetWindowLong ´ë½Å¿¡ SetWindowLongPtr¸¦ È£ÃâÇØ¾ß ÇÕ´Ï´Ù:
+SetWindowLong := A_PtrSize=8 ? "SetWindowLongPtr" : "SetWindowLong"
+
+WindowProcNew := RegisterCallback("WindowProc", ""  ; ""¸¦ ÁöÁ¤ÇÏ¿© »ó¼ÓÀ» ¹Þ´Âµ¥ ºü¸¥-¸ðµå¸¦ ȸÇÇÇÕ´Ï´Ù.
+    , 4, MyTextHwnd)  ; EventInfo ¸Å°³º¯¼ö°¡ Á¸ÀçÇϸé Á¤È®ÇÏ°Ô ParamCount¸¦ ÁöÁ¤ÇØ¾ß ÇÕ´Ï´Ù.
+WindowProcOld := DllCall(SetWindowLong, Ptr, GuiHwnd, Int, -4  ; -4 is GWL_WNDPROC
+    , Ptr, WindowProcNew, Ptr) ; ¹Ýȯ°ªÀº  Ptr ¶Ç´Â UPtr vs. IntÀ¸·Î ¼³Á¤ÇØ¾ß ÇÕ´Ï´Ù.
+
+Gui Show
+return
+
+WindowProc(hwnd, uMsg, wParam, lParam)
+{
+    Critical
+    global TextBackgroundColor, TextBackgroundBrush, WindowProcOld
+    if (uMsg = 0x138 && lParam = A_EventInfo)  ; 0x138 is WM_CTLCOLORSTATIC.
+    {
+        DllCall("SetBkColor", Ptr, wParam, UInt, TextBackgroundColor)
+        return TextBackgroundBrush  ; HBRUSHÀ» µ¹·ÁÁÖ¾î OS¿¡°Ô HDC¸¦ º¯°æÇß´Ù°í ¾Ë¸³´Ï´Ù.
+    }
+    ; ±×·¸Áö ¾ÊÀ¸¸é (À§°¡ ¹ÝȯµÇÁö ¾Ê¾Ò±â ¶§¹®¿¡), 󸮵ÇÁö ¾ÊÀº ¸ðµç À̺¥Æ®¸¦ ¿ø·¡ÀÇ WindowProc¿¡ °Ç³Ü´Ï´Ù.
+    return DllCall("CallWindowProc", Ptr, WindowProcOld, Ptr, hwnd, UInt, uMsg, Ptr, wParam, Ptr, lParam)
+}
+
+GuiClose:
+ExitApp
+ + + diff --git a/src/docs/commands/Reload.htm b/src/docs/commands/Reload.htm new file mode 100644 index 0000000..fe2790d --- /dev/null +++ b/src/docs/commands/Reload.htm @@ -0,0 +1,39 @@ + + + + +Reload + + + + + + + +

Reload

+ +

½ºÅ©¸³Æ®ÀÇ ÇöÀç ½ÇÇà ÁßÀÎ ½Çü¸¦ »õ ½Çü·Î ±³Ã¼ÇÕ´Ï´Ù.

+ +
Reload
+

+ÀÌ ¸í·É¾î´Â ÀÚÁÖ º¯°æµÇ´Â ½ºÅ©¸³Æ®¿¡ À¯¿ëÇÕ´Ï´Ù. ÇÖÅ°¸¦ ÀÌ ¸í·É¾î¿¡ ÇÒ´çÇϸé, º¯°æÀ» ÆíÁý±â¿¡ ÀúÀåÇÑ ÈÄ¿¡ ½±°Ô ½ºÅ©¸³Æ®¸¦ Àç½ÃÀÛÇÒ ¼ö ÀÖ½À´Ï´Ù.

+

+¿ø·¡ ½ºÅ©¸³Æ®¿¡ °Ç³×Áö´Â ¸í·É¾î-ÁÙ ¸Å°³º¯¼ö´Â ¸ðµÎ »õ ½Çü·Î °Ç³×ÁöÁö ¾Ê½À´Ï´Ù. ±×·± ¸Å°³º¯¼ö¸¦ Àü´ÞÇÏ·Á¸é, Reload¸¦ »ç¿ëÇÏÁö ¸¶½Ê½Ã¿À. ´ë½Å¿¡, A_AhkPath ±×¸®°í A_ScriptFullPath¿Í ÇÔ²² RunÀ» »ç¿ëÇϽʽÿÀ (±×¸®°í ½ºÅ©¸³Æ®°¡ ÄÄÆÄÀÏµÈ ÇüÅ·Π»ç¿ëµÇ¾ú´Ù¸é A_IsCompiled¿Í ÇÔ²² »ç¿ëÇϽʽÿÀ). ¶Ç, ¹®ÀÚ¿­ /restart¸¦ ù ¸Å°³º¯¼ö·Î (Áï, ½ÇÇàÆÄÀÏÀÇ À̸§ µÚ¿¡) Æ÷ÇÔÇϽʽÿÀ. ±×·¯¸é ÇÁ·Î±×·¥Àº Reload¿Í °°Àº ÇàÀ§¸¦ »ç¿ëÇÕ´Ï´Ù. ´ÙÀ½µµ ÂüÁ¶ÇϽʽÿÀ: ¸í·É¾î ÁÙ ½ºÀ§Ä¡¿Í ±¸¹®.

+

+½ºÅ©¸³Æ®°¡ ½ÃÀÛÇÒ ¶§, ±×ÀÇ ¿ø·¡ ÀÛ¾÷ µð·ºÅ丮¿¡¼­ (óÀ½ ±âµ¿µÉ ¶§ Àû¿ëµÇ¾ú´ø µð·ºÅ丮¿¡¼­) ±âµ¿ÇÕ´Ï´Ù. ´Ù¸¥ ¸»·Î, SetWorkingDir´Â »õ ½Çü¿¡ »ç¿ëµÉ ÀÛ¾÷ µð·ºÅ丮¸¦ ¹Ù²ÙÁö ¾Ê½À´Ï´Ù.

+

+½ºÅ©¸³Æ®¸¦ ÀçÀûÀç ÇÒ ¼ö ¾øÀ¸¸é -- ¾Æ¸¶µµ ±¸¹® ¿¡·¯°¡ Àֱ⠶§¹®¿¡ -- ½ºÅ©¸³Æ®ÀÇ ¿ø·¡ ½Çü°¡ °è¼Ó ½ÇÇàµË´Ï´Ù. ±×·¯¹Ç·Î, ÀçÀûÀç ¸í·É¾î´Â ´ÙÀ½¿¡ ½ÇÆнÿ¡ ÃëÇÏ°í ½ÍÀº Á¶Ä¡°¡ µû¶ó¿Í¾ß ÇÕ´Ï´Ù (¿¹¸¦ µé¾î returnÀ̸é ÇöÀç ¼­ºê·çƾÀ» Á¾·áÇÕ´Ï´Ù). ¿ø·¡ ½Çü°¡ ½ÇÆи¦ ŽÁöÇϵµ·Ï ¸¸µé·Á¸é, ´ÙÀ½ ¿¹Á¦¸¦ µû¸£½Ê½Ã¿À:

+ +
Reload
+Sleep 1000 ; ¼º°øÇϸé, ÀçÀûÀç ¶§¹®¿¡ ÀÌ ½Çü´Â Sleep ½Ã°£ µ¿¾È ´ÝÈü´Ï´Ù. ±×·¡¼­ ¾Æ·¡ ÁÙÀº Àý´ë µµ´ÞÇÏÁö ¸øÇÕ´Ï´Ù.
+MsgBox, 4,, ½ºÅ©¸³Æ®¸¦ ÀçÀûÀçÇÒ ¼ö ¾ø½À´Ï´Ù. ÆíÁýÀ» À§ÇØ ¿©½Ã°Ú½À´Ï±î?
+IfMsgBox, Yes, Edit
+return
+ +

°ü·Ã Ç׸ñ

+

Edit

+

¿¹Á¦

+
^!r::Reload  ; Ctrl-Alt-R¸¦ ½ºÅ©¸³Æ®¸¦ Àç½ÃÀÛÇÒ ÇÖÅ°¿¡ ÇÒ´çÇÕ´Ï´Ù.
+ + + diff --git a/src/docs/commands/Return.htm b/src/docs/commands/Return.htm new file mode 100644 index 0000000..e00882c --- /dev/null +++ b/src/docs/commands/Return.htm @@ -0,0 +1,65 @@ + + + + +Return + + + + + + + +

Return

+ +

ÇÔ¼ö-È£Ãâ, Gosub, Hotkey È°¼ºÈ­, GroupActivate, ¶Ç´Â ±âŸ ¹æ¹ýÀ» ÅëÇÏ¿©, ÀÌÀü¿¡ Á¡ÇÁÇØ °¬´ø ¼­ºê·çƾÀ¸·ÎºÎÅÍ µ¹¾Æ¿É´Ï´Ù.

+ +
Return [, Expression]
+

¸Å°³º¯¼ö

+
+ +
Expression
+

+ ÀÌ ¸Å°³º¯¼ö´Â »ý·«ÇØ¾ß ÇÕ´Ï´Ù. ´Ü, returnÀÌ ÇÔ¼ö ¾È¿¡ »ç¿ëµÉ ¶§´Â ¿¹¿ÜÀÔ´Ï´Ù.

+

+ ÀÌ ¸Å°³º¯¼ö°¡ Ç¥Çö½ÄÀ̸é, ´ÙÀ½Àº ¸ðµÎ À¯È¿ÇÑ ¿¹Á¦ÀÔ´Ï´Ù:

+ +
return 3
+return "¹®ÀÚ¿­À» ±×´ë·Î ¹Ýȯ"
+return MyVar 
+return i + 1
+return true  ; ¼ýÀÚ 1À» µ¹·ÁÁÖ¾î "true"¸¦ ³ªÅ¸³À´Ï´Ù.
+return ItemCount < MaxItems  ; ÂüÀ̳ª °ÅÁþÀ» µ¹·ÁÁÝ´Ï´Ù.
+return FindColor(TargetColor)
+

+¾Ë·ÁÁø ÇÑ°è: ÇÏÀ§ ȣȯÀ» À§ÇØ ±×¸®°í »ç¿ëÀÇ ÆíÀǸ¦ À§ÇØ, ´ÙÀ½ µÎ ¿¹Á¦´Â ±â´ÉÀûÀ¸·Î µ¿ÀÏÇÕ´Ï´Ù:

+ +
return MyVar
+return %MyVar%
+

+´Ù¸¥ ¸»·Î, º¯¼ö Çϳª°¡ ÆÛ¼¾Æ® »çÀο¡ µÑ·¯ ½Î¿© ÀÖÀ¸¸é Ç¥Çö½ÄÀÌ ¾Æ´Ñ °ÍÀ¸·Î Ãë±ÞµË´Ï´Ù. À̸¦ ¿ìȸÇÏ·Á¸é, ¹Ý°ýÈ£·Î µÑ·¯ ½Î¼­ È®½ÇÇÏ°Ô Ç¥Çö½ÄÀ¸·Î ¸¸µå½Ê½Ã¿À; ¿¹¸¦ µé¾î: return (%MyVar%).

+ +
+

³íÆò

+

+µ¹¾Æ°¥ È£ÃâÀÚ°¡ ¾ø´Ù¸é, ReturnÀº ´ë½Å¿¡ ExitÀ» ¼öÇàÇÕ´Ï´Ù.

+

+ÇÔ¼ö·ÎºÎÅÍ È£ÃâÀÚ¿¡°Ô ¿©·¯ °ªÀ» µ¹·ÁÁÖ´Â ´Ù¾çÇÑ ¹æ¹ýÀÌ ÀÖ½À´Ï´Ù. °ªÀ» È£ÃâÀÚ¿¡°Ô µ¹·ÁÁֱ⿡ ÀÚ¼¼ÇÏ°Ô ±â¼úµÇ¾î ÀÖ½À´Ï´Ù.

+ +

°ü·Ã Ç׸ñ

+

+ÇÔ¼ö, Gosub, Exit, ExitApp, GroupActivate

+ +

¿¹Á¦

+ +
#z::
+MsgBox Win-Z ÇÖÅ°°¡ ´­·È½À´Ï´Ù.
+Gosub MySubroutine
+return
+   
+MySubroutine:
+Sleep 1000
+return
+ + + diff --git a/src/docs/commands/Run.htm b/src/docs/commands/Run.htm new file mode 100644 index 0000000..f931626 --- /dev/null +++ b/src/docs/commands/Run.htm @@ -0,0 +1,181 @@ + + + + +Run / RunWait + + + + + + + + +

Run / RunWait

+ +

¿ÜºÎ ÇÁ·Î±×·¥À» ½ÇÇàÇÕ´Ï´Ù. Run°ú ´Ù¸£°Ô, RunWait´Â ½ÇÇàÀ» °è¼ÓÇϱâ Àü¿¡ ÇÁ·Î±×·¥ÀÌ ³¡³¯ ¶§±îÁö ±â´Ù¸³´Ï´Ù.

+ +
Run, Target [, WorkingDir, Max|Min|Hide|UseErrorLevel, OutputVarPID]
+

¸Å°³º¯¼ö

+
+ +
Target
+

±âµ¿ÇÒ ¹®¼­, URL, ½ÇÇà ÆÄÀÏ (.exe, .com, .bat, etc.), ´ÜÃà ¾ÆÀÌÄÜ (.lnk), ¶Ç´Â ¹®¸Æ ¸Þ´º (³íÆò ÂüÁ¶). TargetÀÌ Áö¿ª ÆÄÀÏÀÌ°í °æ·Î°¡ ÁöÁ¤µÇ¾î ÀÖÁö ¾ÊÀ¸¸é, A_WorkingDirÀÌ Á¦ÀÏ ¸ÕÀú °Ë»öµË´Ï´Ù. °Å±â¿¡¼­ ºÎÇÕÇÏ´Â ÆÄÀÏÀÌ ¾øÀ¸¸é, ¿î¿µÃ¼Á¦´Â ("¾Ë°í ÀÖ´Â") PATH Æú´õ¸¦ °Ë»öÇØ ¹ß°ßÇÏ¸é ±× ÆÄÀÏÀ» ±âµ¿ÇÕ´Ï´Ù.

+

¸Å°³º¯¼ö¸¦ °Ç³×·Á¸é, ÇÁ·Î±×·¥À̳ª ¹®¼­ À̸§ ´ÙÀ½¿¡ ¹Ù·Î ±×°ÍµéÀ» Ãß°¡ÇÕ´Ï´Ù. ¸Å°³º¯¼ö¿¡ ½ºÆäÀ̽º°¡ ´ã°Ü ÀÖ´Ù¸é, (¾î¶² °æ¿ì´Â °ãµû¿ÈÇ¥ ¾øÀ̵µ Àß ÀÛµ¿ÇÏ°ÚÁö¸¸) ±×°ÍÀ» °ãµû¿ÈÇ¥ ¾È¿¡ µÑ·¯½Î´Â °ÍÀÌ °¡Àå ¾ÈÀüÇÕ´Ï´Ù.

+ +
WorkingDir
+

±âµ¿µÈ Ç׸ñÀ» À§ÇÑ ÀÛ¾÷ µð·ºÅ丮. ¾È¿¡ ½ºÆäÀ̽º°¡ ÀÖ´õ¶óµµ À̸§À» °ãµû¿ÈÇ¥·Î µÑ·¯½ÎÁö ¸¶½Ê½Ã¿À. »ý·«Çϸé, ½ºÅ©¸³Æ®ÀÇ ÀÛ¾÷ µð·ºÅ丮°¡ (A_WorkingDir) »ç¿ëµË´Ï´Ù.

+ +
Max|Min|Hide
+ UseErrorLevel
+

»ý·«µÇ¸é, TargetÀÌ Á¤»ó ±âµ¿ÇÕ´Ï´Ù. ´ë¾ÈÀ¸·Î, ´ÙÀ½ ´Ü¾îµéÀ» Æ÷ÇÔÇÒ ¼ö ÀÖ½À´Ï´Ù:

+

Max: ÃÖ´ëÈ­ ±âµ¿

+

Min: ÃÖ¼ÒÈ­ ±âµî

+

Hide: ¼ûÀº ä·Î ±âµ¿ (À§¿Í Á¶ÇÕÇØ »ç¿ëÇÒ ¼ö ¾ø½À´Ï´Ù)

+

ÁÖÀÇ: ¾î¶² ¾îÇø®ÄÉÀ̼ÇÀº (¿¹, Calc.exe) ¿äûÇÑ ±âµ¿ »óŸ¦ ÁؼöÇÏÁö ¾Ê½À´Ï´Ù. ±×·± °æ¿ì Max/Min/Hide´Â ¾Æ¹« È¿°ú°¡ ¾ø½À´Ï´Ù.

+

UseErrorLevel: UseErrorLevel Ȧ·Î ÁöÁ¤Çϰųª À§ÀÌ ´Ü¾î Áß Çϳª¿¡ Ãß°¡ÇØ ÁöÁ¤ÇÒ ¼ö ÀÖ½À´Ï´Ù (´Ù¸¥ ´Ü¾î¿Í´Â ½ºÆäÀ̽º·Î ±¸ºÐÇÕ´Ï´Ù). ±âµ¿¿¡ ½ÇÆÐÇϸé, ÀÌ ¿É¼ÇÀº °æ°í ´ëÈ­»óÀÚ¸¦ °Ç³Ê¶Ù°í, ErrorLevel¿¡ ERROR¸¦ ¼³Á¤Çϸç, ±×¸®°í ÇöÀç ¾²·¹µå¸¦ °è¼Ó ÁøÇàÇÕ´Ï´Ù. ±âµ¿¿¡ ¼º°øÇϸé, RunWait´Â ErrorLevelÀ» ÇÁ·Î±×·¥ÀÇ Á¾·á Äڵ忡 ¼³Á¤ÇÏ°í, RunÀº °Å±â¿¡ 0À» ¼³Á¤ÇÕ´Ï´Ù.

+

UseErrorLevelÀÌ ÁöÁ¤µÇ¸é, º¯¼ö A_LastError´Â ¿î¿µ üÁ¦ÀÇ GetLastError() ÇÔ¼öÀÇ °á°ú¿¡ ¼³Á¤µË´Ï´Ù. A_LastError´Â 0ºÎÅÍ 4294967295 »çÀÌÀÇ ¼ýÀÚÀÔ´Ï´Ù (½ÊÁø¼ö°¡ ¾Æ´Ï¶ó ¾ðÁ¦³ª 16Áø¼ö·Î Æ÷¸ËµË´Ï´Ù). ¿µ (0)Àº ¼º°øÀ» ¶æÇÏÁö¸¸, ´Ù¸¥ ¼ýÀÚ´Â ±âµ¿¿¡ ½ÇÆÐÇß´Ù´Â ¶æÀÔ´Ï´Ù. °¢ ¼ýÀڴ ƯÁ¤ÇÑ ¿¡·¯ Á¶°Ç¿¡ »ó´çÇÕ´Ï´Ù (¸ñ·ÏÀº www.microsoft.com¿¡¼­ "½Ã½ºÅÛ ¿¡·¯ ÄÚµå"¸¦ °Ë»öÇØ º¸½Ê½Ã¿À). ErrorLeveló·³, A_LastError´Â ¾²·¹µå¸¶´Ù ¼³Á¤µË´Ï´Ù; Áï, ´Ù¸¥ ¾²·¹µå°¡ ÀÎÅÍ·´Æ® Çصµ º¯°æµÇÁö ¾Ê½À´Ï´Ù. ±×·¸Áö¸¸, A_LastError´Â DllCallÀÌ ¼³Á¤Çϱ⵵ ÇÕ´Ï´Ù.

+ +
OutputVarPID
+

»õ·Î ±âµ¿ÇÑ ÇÁ·Î±×·¥ÀÇ À¯ÀÏÇÑ Process ID (PID)¸¦ ÀúÀåÇÒ º¯¼öÀÇ À̸§ÀÔ´Ï´Ù. PID¸¦ °áÁ¤ÇÒ ¼ö ¾øÀ¸¸é º¯¼ö´Â ºñ¾î ÀÖ½À´Ï´Ù, º¸Åë ±×·± °æ¿ì´Â ½ÇÇà ÆÄÀÏ º¸´Ù´Â ¹®¸Æ ¸Þ´º, ¹®¼­, ¶Ç´Â ´ÜÃà ¾ÆÀÌÄÜÀ» ±âµ¿ÇÒ ¶§ ÀϾ´Ï´Ù. RunWaitµµ ÀÌ ¸Å°³º¯¼ö¸¦ Áö¿øÇÕ´Ï´Ù. ±×·¸Áö¸¸ ±×ÀÇ OuputVarPID´Â ¹Ýµå½Ã ¶Ç´Ù¸¥ ¸Þ½îµå¿¡¼­ Á¡°ËÇØ¾ß ÇÕ´Ï´Ù (±×·¸Áö ¾ÊÀ¸¸é, ´ÙÀ½ RunWait°¡ ½ÇÇàÇÏ´Â ÁÙ¿¡ µµ´ÞÇÒ ÁîÀ½À̸é ÇÁ·Î¼¼½º°¡ Á¾·áµÇ¾î ¹ö¸®±â ¶§¹®¿¡ PID´Â ¹«È¿°¡ µÇ¾î ¹ö¸³´Ï´Ù).

+

Run ¸í·É¾î°¡ PID¸¦ ½ÇÇàÇÑ ÈÄ, ÇØ´ç ÇÁ·Î¼¼½º°¡ ¸¸µç âÀº ¾ÆÁ÷ Á¸ÀçÇÏÁö ¾ÊÀ» ¼ö ÀÖ½À´Ï´Ù. Àû¾îµµ ÇϳªÀÇ Ã¢Àº ¸¸µé¾îÁö±â¸¦ ±â´Ù¸®·Á¸é, WinWait ahk_pid %OutputVarPID%¸¦ »ç¿ëÇϽʽÿÀ.

+ +
+

ErrorLevel

+

+[v1.1.04+] ÀÌ ¸í·É¾î´Â ½ÇÆнà ¿¹¿Ü¸¦ ´øÁú ¼ö ÀÖ½À´Ï´Ù. ´õ ÀÚ¼¼ÇÑ Á¤º¸´Â ½ÇÇà½Ã°£ ¿¡·¯¸¦ ÂüÁ¶ÇϽʽÿÀ.

+

Run: (À§ÀÇ) UseErrorLevelÀÌ È¿°ú°¡ ¾ø´Â ÇÑ, ErrorLevelÀ» ¼³Á¤ÇÏÁö ¾Ê½À´Ï´Ù. ½ÇÆнà ErrorLevelÀº ´Ü¾î ERRORÀÌ ¼³Á¤µÇ°í ¼º°øÇϸé 0ÀÌ ¼³Á¤µË´Ï´Ù.

+

RunWait: ErrorLevelÀ» ÇÁ·Î±×·¥ÀÇ Á¾·á Äڵ忡 ¼³Á¤ÇÕ´Ï´Ù (ºÎÈ£ÀÖ´Â 32-ºñÆ® Á¤¼ö). UseErrorLevel°¡ ¿µÇâÀ» ¹ÌÄ¡°í ±âµ¿¿¡ ½ÇÆÐÇÏ¸é ´Ü¾î ERROR°¡ ÀúÀåµË´Ï´Ù.

+ +

³íÆò

+

+Run°ú ´Ù¸£°Ô, RunWait´Â TargetÀÌ Á¾·áÇϰųª ³¡³¯ ¶§±îÁö ±â´Ù¸³´Ï´Ù. Á¾·á ½Ã¿¡ ErrorLevelÀÌ ÇÁ·Î±×·¥ÀÇ Á¾·á Äڵ忡 ¼³Á¤µË´Ï´Ù (ºÎÈ£ÀÖ´Â 32-ºñÆ® Á¤¼ö). ¾î¶² ÇÁ·Î±×·¥Àº ¿©ÀüÈ÷ ½ÇÇà ÁßÀÓ¿¡µµ ºÒ±¸ÇÏ°í Áï½Ã ¹ÝȯµÇ´Â µí º¸ÀÔ´Ï´Ù; ÀÌ·± ÇÁ·Î±×·¥Àº ¶Ç´Ù¸¥ ÇÁ·Î¼¼½º¸¦ ÆÛÆ®¸³´Ï´Ù.

+

+Target¿¡ ½°Ç¥°¡ ´ã°Ü ÀÖÀ¸¸é, ´ÙÀ½ ¿¹Á¦¿¡ º¸¿©ÁÖ´Â ¹Ù¿Í °°ÀÌ ¼¼ ¹ø ÇǽŽÃÄÑ¾ß ÇÕ´Ï´Ù:

+
Run rundll32.exe shell32.dll`,Control_RunDLL desk.cpl`,`, 3  ; Á¦¾îÆÇ > µð½ºÇ÷¹ÀÌ > ¼³Á¤ÀÌ ¿­¸³´Ï´Ù
+

+ComspecÀ» ÅëÇÏ¿© ÇÁ·Î±×·¥À» ½ÇÇàÇÒ ¶§ (cmd.exe) -- ¾Æ¸¶µµ ÇÁ·Î±×·¥ÀÇ ÀÔ·ÂÀ̳ª Ãâ·ÂÀ» ¹æÇâÀüȯÇØ¾ß ÇÒ ÇÊ¿ä°¡ Àֱ⠶§¹®¿¡ -- ½ÇÇà ÆÄÀÏÀÇ À̸§À̳ª °æ·Î¿¡ ½ºÆäÀ̽º°¡ Æ÷ÇԵǾî ÀÖÀ¸¸é, Àüü ¹®ÀÚ¿­À» ¹Ù±ùÂÊ¿¡¼­ µû¿ÈÇ¥·Î µÑ·¯ ½Î¾ß ÇÕ´Ï´Ù. ´ÙÀ½ ¿¹Á¦¿¡¼­, ¹Ù±ù µû¿ÈÇ¥´Â »¡°£»öÀ¸·Î º¸ÀÌ°í ¾ÆÂÊÀÇ ¸ðµç µû¿ÈÇ¥´Â °ËÁ¤»öÀ¸·Î º¸ÀÔ´Ï´Ù:

+
Run %comspec% /c ""C:\My Utility.exe" "param 1" "second param" >"C:\My File.txt""
+

+TargetÀ» ±âµ¿ÇÒ ¼ö ¾øÀ¸¸é, ¿¡·¯ âÀÌ È­¸é¿¡ ³ªÅ¸³ª°í ÇöÀç ¾²·¹µå´Â Á¾·áÇÕ´Ï´Ù. ¹®ÀÚ¿­ UseErrorLevelÀÌ ¼¼ ¹ø° ¸Å°³º¯¼ö¿¡ Æ÷ÇԵǾî Àְųª ¿¡·¯¸¦ Try/Catch ¼­¼ú¹®À¸·Î Àâ´Â °æ¿ì´Â ¿¹¿Ü·Î ÇÕ´Ï´Ù.

+

+TargetÀÌ Á¤È®ÇÑ °æ·ÎÀ̸é, ¼öÇ༺´ÉÀÌ ¾à°£ °³¼±µÉ ¼ö ÀÖ½À´Ï´Ù. ¿¹, Run, C:\My Documents\Test.txt ¸»°í Run, C:\Windows\Notepad.exe "C:\My Documents\Test.txt"À¸·Î ÁöÁ¤ÇÕ´Ï´Ù.

+

+Ư¼öÇÑ CLSID Æú´õ´Â RunÀ» ÅëÇÏ¿© ¿­ ¼ö ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î:

+
Run ::{20d04fe0-3aea-1069-a2d8-08002b30309d}  ; "³» ÄÄÇ»ÅÍ" Æú´õ°¡ ¿­¸³´Ï´Ù.
+Run ::{645ff040-5081-101b-9f08-00aa002f954e}  ; ¾²·¹±âÅëÀÌ ¿­¸³´Ï´Ù.
+

+¹®¸Æ ¸Þ´º´Â Ž»öâ¿¡¼­ ÆÄÀÏ¿¡ ¿ìŬ¸¯ÇÏ¸é ³ªÅ¸³ª´Â Á¶Ä¡µé¿¡ »óÀÀÇÕ´Ï´Ù. ÆÄÀÏÀÌ ¹®¸Æ ¸Þ´º ¾øÀÌ ±âµ¿Çϸé, ±âº» ¹®¸Æ ¸Þ´º°¡ (º¸Åë "open") ±× ƯÁ¤ÇÑ ÆÄÀÏ À¯Çü¿¡ ´ëÇÏ¿© »ç¿ëµË´Ï´Ù. ÁöÁ¤Çϸé, ¹®¸Æ ¸Þ´º´Â ¸ñÇ¥ ÆÄÀÏ À̸§ ´ÙÀ½¿¡ µû¶ó¿Í¾ß ÇÕ´Ï´Ù. ÇöÀç ´ÙÀ½ ¹®¸Æ ¸Þ´º¸¦ Áö¿øÇÕ´Ï´Ù:

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
*verb[AHK_L 57+]: ½Ã½ºÅÛ¿¡-Á¤ÀÇµÈ ¶Ç´Â ¸ÂÃã ¹®¸Æ ¸Þ´º. ¿¹¸¦ µé¾î: Run *Compile %A_ScriptFullPath%
À©µµ¿ìÁî ºñ½ºÅ¸ ÀÌÈÄ¿¡¼­, *RunAs ¹®¸Æ ¸Þ´º¸¦ Run As Administrator ¿ìŬ¸¯ ¸Þ´º Ç׸ñ ´ë½Å¿¡ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù.
propertiesÁö½ÃÇÑ ÆÄÀÏ¿¡ ´ëÇÏ¿© Ž»ö±âÀÇ Æ¯¼º âÀ» º¸¿©ÁÝ´Ï´Ù. ¿¹¸¦ µé¾î: Run, properties "C:\My File.txt"
+ ÁÖÀÇ: Ư¼º âÀº ½ºÅ©¸³Æ®°¡ Á¾·áÇÒ ¶§ ÀÚµ¿À¸·Î ´ÝÈü´Ï´Ù. À̸¦ ÇÇÇÏ·Á¸é, WinWait¸¦ »ç¿ëÇØ Ã¢ÀÌ ³ªÅ¸³ª±â¸¦ ±â´Ù¸° ´ÙÀ½, WinWaitClose¸¦ »ç¿ëÇØ »ç¿ëÀÚ°¡ ´Ý±â¸¦ ±â´Ù¸®½Ê½Ã¿À.
findÁö½ÃµÈ Æú´õ¿¡ ´ëÇÏ¿© Ž»ö±âÀÇ ÆÄÀÏ °Ë»ö ¶Ç´Â ã±â âÀÇ ½Çü¸¦ ¿±´Ï´Ù. ¿¹¸¦ µé¾î: Run, find D:\
exploreÁö½ÃµÈ Æú´õ¿¡ Ž»ö±âÀÇ ½Çü¸¦ ¿±´Ï´Ù. ¿¹¸¦ µé¾î: Run, explore %A_ProgramFiles%.
editÁö½ÃµÈ ÆÄÀÏÀ» ÆíÁýÀ» À§ÇØ ¿±´Ï´Ù. Áö½ÃµÈ ÆÄÀÏÀÇ À¯Çü¿¡ "edit" Á¶Ä¡°¡ ¿¬°üµÇ¾î ÀÖÁö ¾ÊÀ¸¸é ÀÛµ¿ÇÏÁö ¾ÊÀ» ¼öµµ ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î: Run, edit "C:\My File.txt"
openÁö½ÃµÈ ÆÄÀÏÀ» ¿±´Ï´Ù (º¸Åë ÇÊ¿äÇÏÁö ¾Ê½À´Ï´Ù. ´ëºÎºÐÀÇ ÆÄÀÏ À¯Çü¿¡ ±âº» Á¶Ä¡À̱⠶§¹®ÀÔ´Ï´Ù). ¿¹¸¦ µé¾î: Run, open "My File.txt".
printÁö½ÃµÈ ÆÄÀÏÀ» ¿¬°üµÈ ¾îÇø®ÄÉÀ̼ÇÀ¸·Î ÀμâÇÕ´Ï´Ù. ¿¹¸¦ µé¾î: Run, print "My File.txt"
+

+RunWait°¡ ´ë±â »óÅ¿¡ ÀÖ´Â µ¿¾È, »õ ¾²·¹µå¸¦ ÇÖÅ°, ¸ÂÃã ¸Þ´º Ç׸ñ, ¶Ç´Â ŸÀ̸Ӹ¦ ÅëÇÏ¿© ±âµ¿ÇÒ ¼ö ÀÖ½À´Ï´Ù.

+

°ü·Ã Ç׸ñ

+

RunAs, Process, Exit, CLSID List, DllCall

+

¿¹Á¦

+
Run, Notepad.exe, C:\My Documents, max
+
+Run, mailto:someone@domain.com?subject=ÀÌ°ÍÀº Á¦¸ñ ÁÙÀÔ´Ï´Ù&body=ÀÌ°ÍÀº ¸Þ½ÃÁö ¸öüÀÇ ÅؽºÆ®ÀÔ´Ï´Ù.
+Run, ReadMe.doc, , Max UseErrorLevel  ; ÃÖ´ëÈ­ »óÅ·Π±âµ¿ÇÏ°í ½ÇÆÐÇÏ´õ¶óµµ ´ëÈ­»óÀÚ¸¦ º¸¿©ÁÖÁö ¾Ê½À´Ï´Ù.
+if ErrorLevel = ERROR
+    MsgBox ¹®¼­¸¦ ±âµ¿ÇÒ ¼ö ¾ø¾ú½À´Ï´Ù.
+
+RunWait, %comspec% /c dir c:\ >>c:\DirTest.txt, , min
+Run, c:\DirTest.txt
+Run, properties c:\DirTest.txt
+
+Run, http://www.google.com ; Áï, ¾î¶² URLµµ ±âµ¿ÇÒ ¼ö ÀÖ½À´Ï´Ù.
+Run, mailto:someone@somedomain.com  ; ±âº» À̸ÞÀÏ ÇÁ·Î±×·¥ÀÌ ¿­¸³´Ï´Ù.
+
+Run ::{20d04fe0-3aea-1069-a2d8-08002b30309d}  ; "³» ÄÄÇ»ÅÍ" Æú´õ°¡ ¿­¸³´Ï´Ù.
+Run ::{645ff040-5081-101b-9f08-00aa002f954e}  ; ¾²·¹±âÅëÀÌ ¿­¸³´Ï´Ù.
+
+; ¿©·¯ ¸í·É¾î¸¦ ¿¬¼ÓÀûÀ¸·Î ½ÇÇàÇÏ·Á¸é, »çÀÌ¿¡ "&&"¸¦ »ç¿ëÇϽʽÿÀ:
+Run, %comspec% /c dir /b > C:\list.txt && type C:\list.txt && pause
+
+ +
+; ´ÙÀ½À» »ç¿ëÇÏ¿© ¸í·É¾î¸¦ ½ÇÇàÇÏ°í ±× Ãâ·ÂÀ» ¿­¶÷ÇÒ ¼ö ÀÖ½À´Ï´Ù:
+MsgBox % RunWaitOne("dir " A_ScriptDir)
+
+; ...¶Ç´Â ´Ü ¹ø¿¡ ¿©·¯ ¸í·É¾î¸¦ ½ÇÇàÇÏ°í ±× Ãâ·ÂÀ» ¿­¶÷ÇÕ´Ï´Ù:
+MsgBox % RunWaitMany("
+(
+echo ¸í·É¾î´Â ¿©±â¿¡ ¹èÄ¡ÇÕ´Ï´Ù,
+echo Çϳª¾¿ ½ÇÇàµÉ °ÍÀÌ°í,
+echo °á±¹ Ãâ·ÂÀ» ¾ò°Ô µÉ °ÍÀÔ´Ï´Ù.
+)")
+
+RunWaitOne(command) {
+    ; WshShell °´Ã¼: http://msdn.microsoft.com/en-us/library/aew9yb99
+    shell := ComObjCreate("WScript.Shell")
+    ; cmd.exe¸¦ ÅëÇÏ¿© ¸í·É¾î Çϳª¸¦ ½ÇÇàÇÕ´Ï´Ù.
+    exec := shell.Exec(ComSpec " /C " command)
+    ; ±× ¸í·É¾îÀÇ Ãâ·ÂÀ» ÀÐ¾î µ¹·ÁÁÝ´Ï´Ù
+    return exec.StdOut.ReadAll()
+}
+
+RunWaitMany(commands) {
+    shell := ComObjCreate("WScript.Shell")
+    ; ¸í·É¾î ¹ÝÇâÀ» ²ô°í cmd.exe¸¦ ¿±´Ï´Ù
+    exec := shell.Exec(ComSpec " /Q /K echo off")
+    ; ½ÇÇàÇÒ ¸í·É¾î¸¦ »õÁÙ¹®ÀÚ·Î °¥¶ó¼­ Àü¼ÛÇÕ´Ï´Ù.
+    exec.StdIn.WriteLine(commands "`nexit")  ; ¾ðÁ¦³ª °á±¹ Á¾·áÇÕ´Ï´Ù!
+    ; ¸ðµç ¸í·É¾îÀÇ Ãâ·ÂÀ» ÀÐ¾î µ¹·ÁÁÝ´Ï´Ù.
+    return exec.StdOut.ReadAll()
+}
+
+ +
+; ExecScript: ÁÖ¾îÁø Äڵ带 »õ AutoHotkey ÇÁ·Î¼¼½º·Î ½ÇÇàÇÕ´Ï´Ù.
+ExecScript(Script, Wait:=true)
+{
+    shell := ComObjCreate("WScript.Shell")
+    exec := shell.Exec("AutoHotkey.exe /ErrorStdOut *")
+    exec.StdIn.Write(script)
+    exec.StdIn.Close()
+    if Wait
+        return exec.StdOut.ReadAll()
+}
+
+; ¿¹Á¦:
+InputBox expr,, »õ ½ºÅ©¸³Æ®·Î Æò°¡ÇÒ Ç¥Çö½ÄÀ» ÀÔ·ÂÇϽʽÿÀ.,,,,,,,, Asc("*")
+result := ExecScript("FileAppend % (" expr "), *")
+MsgBox % "Result: " result
+
+ + + diff --git a/src/docs/commands/RunAs.htm b/src/docs/commands/RunAs.htm new file mode 100644 index 0000000..bdf6d66 --- /dev/null +++ b/src/docs/commands/RunAs.htm @@ -0,0 +1,52 @@ + + + + +RunAs + + + + + + + +

RunAs

+ +

¿¬ÀÌ¾î »ç¿ëÇÒ ¸ðµç Run ±×¸®°í RunWait¿¡ ´ëÇÏ¿© »ç¿ëÀÚ ½Å¿ëÀå ¼¼Æ®¸¦ ÁöÁ¤ÇÕ´Ï´Ù.

+ +
RunAs [, User, Password, Domain]
+

¸Å°³º¯¼ö

+
+ +
User
+

ÀÌ ¸Å°³º¯¼ö¿Í ´Ù¸¥ ¸ðµç ¸Å°³º¯¼ö¸¦ ¸ðµÎ »ý·«Çϸé, RunAs Ư¡Àº ²¨Áý´Ï´Ù. ±×·¯¸é Run°ú RunWait´Â ±×µéÀÇ ±âº» ÇàÀ§·Î º¹±¸µË´Ï´Ù. ±×·¸Áö ¾ÊÀ¸¸é, ÀÌ°ÍÀº »ç¿ëÀÚ À̸§À¸·Î¼­ ±× ¾Æ·¡¿¡ »õ ÇÁ·Î¼¼½º°¡ »ý¼ºµÉ °ÍÀÔ´Ï´Ù.

+ +
Password
+

UserÀÇ ¾ÏÈ£.

+ +
Domain
+

UserÀÇ ¿µ¿ª. ·ÎÄà °èÁ¤À» »ç¿ëÇÏ·Á¸é, ÀÌ ¸Å°³º¯¼ö¸¦ ºñ¿ö µÎ½Ê½Ã¿À. ÀÛµ¿¿¡ ½ÇÆÐÇϸé, @YourComputerName¸¦ »ç¿ëÇØ º¸½Ê½Ã¿À.

+
+ +
+

³íÆò

+

+ÀÌ ¸í·É¾î´Â ¿À·ÎÁö AutoHotkey¿¡°Ô ¾ÕÀ¸·Î Run°ú RunWait¸¦ »ç¿ëÇÒ ¶§¸¶´Ù ÀüºÎ º¸Á¶ »ç¿ëÀÚ ½Å¿ëÀåÀ» »ç¿ëÇ϶ó°í (¶Ç´Â »ç¿ëÇÏÁö ¸»¶ó°í) ¾Ë¸®´Â Àϸ¸ ÇÕ´Ï´Ù.

+

+ErrorLevelÀº ÀÌ ¸í·É¾î·Î ¹Ù²îÁö ¾Ê½À´Ï´Ù. ¹«È¿ÇÑ User, Password, ¶Ç´Â DomainÀÌ ÁöÁ¤µÇ¸é, Run°ú RunWait´Â ¹®Á¦¸¦ ¼³¸íÇÏ´Â ¿¡·¯ ¸Þ½ÃÁö¸¦ º¸¿©ÁÝ´Ï´Ù (´Ü, ±×µéÀÇ UseErrorLevel ¿É¼ÇÀÌ ÄÑÁ® ÀÖ´Â °æ¿ì´Â ¿¹¿ÜÀÔ´Ï´Ù).

+

+RunAs Ư¡ÀÌ ÄÑÁ® ÀÖ´Â µ¿¾È, Run°ú RunWait´Â ¹®¼­, URL, ¶Ç´Â ½Ã½ºÅÛ ¸í·É¾î¸¦ ±âµ¿ÇÒ ¼ö ¾ø½À´Ï´Ù. ´Ù¸¥ ¸»·Î, ±âµ¿µÉ ÆÄÀÏÀº ¹Ýµå½Ã ½ÇÇà ÆÄÀÏÀ̾î¾ß ÇÕ´Ï´Ù.

+

+ÀÌ ¸í·É¾î°¡ ÀÛµ¿ÇÏ·Á¸é "º¸Á¶ ·Î±×¿Â" ¼­ºñ½º°¡ ÀÚµ¿ÀÌµç ¼öµ¿ÀÌµç ¼³Á¤µÇ¾î ÀÖ¾î¾ß ÇÕ´Ï´Ù (¼öµ¿À¸·Î ¼³Á¤µÇ¾î ÀÖÀ»Áö¶óµµ ¿ä±¸Çϸé OS´Â ÀÚµ¿À¸·Î ±× ¼­ºñ½º¸¦ ½ÃÀÛÇÕ´Ï´Ù). ¿ªÁÖ: º¸Á¶ ·Î±×¿Â(Secondary logon) ¼­ºñ½º´Â À©µµ¿ì °èÁ¤À¸·Î °ü¸®ÀÚ ±ÇÇÑÀÌ ÇÊ¿äÇÑ ÀÛ¾÷À» ¼öÇàÇÒ ¼ö ÀÖ½À´Ï´Ù.

+ +

°ü·Ã Ç׸ñ

+

+Run, RunWait

+

¿¹Á¦

+ +
RunAs, Administrator, MyPassword
+Run, RegEdit.exe
+RunAs  ; Á¤»ó ÇàÀ§·Î Àç¼³Á¤ÇÕ´Ï´Ù.
+ +  + diff --git a/src/docs/commands/Send.htm b/src/docs/commands/Send.htm new file mode 100644 index 0000000..41b61b0 --- /dev/null +++ b/src/docs/commands/Send.htm @@ -0,0 +1,561 @@ + + +Send/SendRaw/SendInput/SendPlay/SendEvent: Send keys & clicks + + + + + + + + + +

Send / SendRaw / SendInput / SendPlay / SendEvent: Send Keys & Clicks

+ +

Å°´­¸²°ú ¸¶¿ì½º Ŭ¸¯À» Èä³»³»¾î È°¼º â¿¡ Àü¼ÛÇÕ´Ï´Ù.

+ +
Send Keys
+SendRaw Keys
+SendInput Keys
+SendPlay Keys
+SendEvent Keys
+ +

¸Å°³º¯¼ö

+
+ +
Keys
+

Àü¼ÛÇÒ Å° ¿¬¼Ó¿­. ´Ù¸¥ ¸í·É¾îó·³, ù ¸Å°³º¯¼ö ¾ÕÀÇ ½°Ç¥´Â ¼±ÅÃÀûÀÔ´Ï´Ù.

+ +
+ +

³¯ ¸ðµå: SendRaw ¸í·É¾î´Â ¸ðµç ¹®ÀÚµé ¹®ÀÚ ±×´ë·Î Çؼ®ÇÕ´Ï´Ù. {Enter}¸¦ ENTER Å°´­¸²À¸·Î, ^c¸¦ Control-C·Î, µîµî º¯È¯ÇÏÁö ¾Ê½À´Ï´Ù. ±×·¸Áö¸¸, ÇǽŠ¿¬¼Ó¿­ÀÇ Á¤»ó ±ÔÄ¢, º¯¼ö ÂüÁ¶ ±×¸®°í Ç¥Çö½ÄÀº ¿©ÀüÈ÷ Àû¿ëµË´Ï´Ù. ¿Ö³ÄÇÏ¸é ¸í·É¾î°¡ ½ÇÇàµÇ±â Àü¿¡ À̰͵éÀÌ ¸ÕÀú 󸮵DZ⠶§¹®ÀÔ´Ï´Ù. SendInput, SendPlay, ¶Ç´Â SendEvent¿¡ ³¯ ¸ðµå¸¦ »ç¿ëÇÏ·Á¸é, ¹®ÀÚ¿­¿¡¼­ ù Ç׸ñ¿¡ {Raw}¸¦ ¾²½Ê½Ã¿À. ¿¹¸¦ µé¾î: SendInput {Raw}abc.

+

+Á¤»ó ¸ðµå: ³¯ ¸ðµå°¡ ¾Æ´Ò ¶§, ´ÙÀ½ ¹®ÀÚµéÀº ¼ö½ÄÀÚ·Î Ãë±ÞµË´Ï´Ù (ÀÌ ¼ö½Ä Å°µéÀº ¹Ù·Î ´ÙÀ½ Å°¿¡¸¸ ¿µÇâÀ» ÁÝ´Ï´Ù):

+

+!: ALT Å°´­¸²À» Àü¼ÛÇÕ´Ï´Ù. ¿¹¸¦ µé¾î, Send This is text!a´Â "This is text"¸¦ Àü¼ÛÇÑ ´ÙÀ½ ALT+a¸¦ ´©¸¨´Ï´Ù. ÁÖÀÇ: !A´Â ¾î¶² ÇÁ·Î±×·¥¿¡¼­´Â !a¿Í ÀüÇô ´Ù¸¥ È¿°ú¸¦ ³À´Ï´Ù. ÀÌ°ÍÀº !A°¡ ALT+SHIFT+A¸¦ ´©¸£´Â ¹Ý¸é !a´Â ALT+a¸¦ ´©¸£±â ¶§¹®ÀÔ´Ï´Ù. Àß ¸ð¸£°ÚÀ¸¸é, ¼Ò¹®ÀÚ¸¦ »ç¿ëÇϽʽÿÀ.

+

++: SHIFT Å°´­¸²À» Àü¼ÛÇÕ´Ï´Ù. ¿¹¸¦ µé¾î, Send +abC´Â "AbC"¸¦ Àü¼ÛÇÏ°í, Send !+a´Â ALT+SHIFT+a¸¦ ´©¸¨´Ï´Ù.

+

+^: CONTROL Å°´­¸²À» Àü¼ÛÇÕ´Ï´Ù. ¿¹¸¦ µé¾î, Send ^!a´Â CTRL+ALT+a¸¦ ´©¸£°í, Send ^{Home}´Â CONTROL+HOMEÀ» ´©¸¨´Ï´Ù. ÁÖÀÇ: ^A´Â ¾î¶² ÇÁ·Î±×·¥¿¡¼­ ^a¿Í ÀüÇô ´Ù¸¥ È¿°ú¸¦ ³À´Ï´Ù. ¿Ö³ÄÇϸé ^A´Â CONTROL+SHIFT+A¸¦ ´©¸£´Â ¹Ý¸é ^a´Â CONTROL+a¸¦ ´©¸£±â ¶§¹®ÀÔ´Ï´Ù. Àß ¸ð¸£°ÚÀ¸¸é, ¼Ò¹®ÀÚ¸¦ »ç¿ëÇϽʽÿÀ.

+

+#: WIN Å°´­¸²À» Àü¼ÛÇÕ´Ï´Ù. ±×·¯¹Ç·Î Send #e´Â Windows Å°¸¦ ´©¸¥ ä·Î ±âÈ£ "e"¸¦ ´©¸¨´Ï´Ù.

+


+SendInput±×¸®°í SendPlay [v1.0.43+]: SendInput ±×¸®°í SendPlay´Â Send¿Í °°Àº ±¸¹®À» »ç¿ëÇÕ´Ï´Ù. ±×·¯³ª ÀϹÝÀûÀ¸·Î ´õ ºü¸£°í ´õ ½Å·Ú¼ºÀÌ ÀÖ½À´Ï´Ù. °Ô´Ù°¡, Àü¼ÛÇÏ´Â µ¿¾È¿¡ ¹°¸®Àû Å°´­¸²°ú ¸¶¿ì½º Ŭ¸¯À» ¹öÆÛ Ã³¸®ÇØ ÁÝ´Ï´Ù. ±× ´öºÐ¿¡ »ç¿ëÀÚÀÇ Å°´­¸²ÀÌ Èð¾îÁöÁö ¾Ê°í ¿ÂÀüÇÏ°Ô Àü¼ÛµË´Ï´Ù. SendModeÀ» »ç¿ëÇϸé Send¸¦ SendInput ¶Ç´Â SendPlay°ú ¶È°°ÀÌ ¸¸µé ¼ö ÀÖ½À´Ï´Ù. °¢ ¸ðµå¿¡ °üÇÏ¿© ´õ ÀÚ¼¼ÇÑ Á¤º¸´Â ¾Æ·¡ÀÇ SendInput ±×¸®°í SendPlay¸¦ ÂüÁ¶ÇϽʽÿÀ.

+

+SendEvent [v1.0.43+]: SendEvent´Â 1.0.43-ÀÌÀüÀÇ Send ¸í·É¾î¿Í °°Àº ¹æ¹ýÀ¸·Î Å°´­¸²À» Àü¼ÛÇÕ´Ï´Ù. Å°´­¸²ÀÇ Àü¼Û ºñÀ²Àº SetKeyDelay·Î °áÁ¤µË´Ï´Ù. ±âº»°ªÀ¸·Î, Send´Â SendEvent¿Í µ¿ÀÏÇÏÁö¸¸; SendMode¸¦ ÅëÇÏ¿© SendInputÀ̳ª SendPlay¿Í °°°Ô ¸¸µé ¼ö ÀÖ½À´Ï´Ù .

+

+Key Names: ´ÙÀ½ Å×À̺íÀº Àü¼ÛÀÌ °¡´ÉÇÑ Æ¯¼ö Å°µéÀ» ³ª¿­ÇÕ´Ï´Ù. (°¢ Å° À̸§Àº È°°ýÈ£·Î µÑ·¯½Î¾ß ÇÕ´Ï´Ù):

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Å° À̸§°á°ú Å°´­¸²
{F1} - {F24}±â´É Å°. ¿¹¸¦ µé¾î: {F12}´Â F12 Å°.
{!}!
{#}#
{+}+
{^}^
{{}{
{}}}
{Enter}¸ÞÀÎ Å°º¸µåÀÇ ¿£ÅÍÅ°
{Escape} ¶Ç´Â {Esc}ESCAPE
{Space}SPACE (½ºÆäÀ̽º°¡ Àü¼ÛÇÒ ¹®ÀÚ¿­ÀÇ ¾ÕÀ̳ª µÚ¿¡ ³ªÅ¸³¯ ¶§ ÇÊ¿äÇÕ´Ï´Ù -- °¡¿îµ¥ ÀÖ´Â ½ºÆäÀ̽º´Â ¹®ÀÚ ±×´ë·Î ½ºÆäÀ̽ºÀÔ´Ï´Ù)
{Tab}ÅÇÅ°
{Backspace} ¶Ç´Â {BS}¹é½ºÆäÀ̽º
{Delete} ¶Ç´Â {Del}»èÁ¦
{Insert} ¶Ç´Â {Ins}»ðÀÔ
{Up}¸ÞÀÎ À§ È­»ìÇ¥ Å°
{Down}¸ÞÀÎ ¾Æ·¡ È­»ìÇ¥ Å°
{Left}¸ÞÀÎ ¿ÞÂÊ È­»ìÇ¥ Å°
{Right}¸ÞÀÎ ¿À¸¥ÂÊ È­»ìÇ¥ Å°
{Home}¸ÞÀΠȨ Å°
{End}¸ÞÀÎ ¿£µå Å°
{PgUp}¸ÞÀÎ ÆäÀÌÁö ¾÷ Å°
{PgDn}¸ÞÀÎ ÆäÀÌÁö ´Ù¿î Å°
  
{CapsLock}CapsLock (Win 2k/XPÀ̶ó¸é SetCapsLockStateÀ» »ç¿ëÇÏ´Â ÆíÀÌ ´õ ½Å·Ú¼ºÀÌ ³ô½À´Ï´Ù). + + + {CapsLock}¸¦ Àü¼ÛÇÏ·Á¸é ¹Ì¸® SetStoreCapslockMode OffÀÌ µÇ¾î ÀÖ¾î¾ß ÇÕ´Ï´Ù.
{ScrollLock}ScrollLock (´ÙÀ½µµ ÂüÁ¶: SetScrollLockState)
{NumLock}NumLock (´ÙÀ½µµ ÂüÁ¶: SetNumLockState)
  
{Control} ¶Ç´Â {Ctrl}CONTROL (±â¼ú Á¤º¸: ÁÂ¿ì ±¸ºÐ ¾ø´Â °¡»ó Å°¸¦ º¸³»Áö¸¸ ½ºÄµ ÄÚµå´Â ¿ÞÂÊÀ» Àü¼ÛÇÔ)
{LControl} ¶Ç´Â {LCtrl}¿ÞÂÊ CONTROL Å° (±â¼ú Á¤º¸: ÁÂ¿ì ±¸ºÐ ¾ø´Â °¡»ó Å°°¡ ¾Æ´Ï¶ó ¿ÞÂÊ °¡»ó Å°¸¦ Àü¼ÛÇÔ)
{RControl} ¶Ç´Â {RCtrl}¿À¸¥ÂÊ CONTROL Å°
{Control Down} ¶Ç´Â {Ctrl Down}{Ctrl Up}ÀÌ Àü¼ÛµÉ ¶§±îÁö CONTROL Å°¸¦ ´©¸¨´Ï´Ù. ´ë½Å¿¡ ¿ÞÂÊ ¶Ç´Â ¿À¸¥ÂÊ Å°¸¦ ´©¸£°í ÀÖÀ¸·Á¸é, {RCtrl Down}°ú {RCtrl Up}À» »ç¿ëÇϽʽÿÀ.
  
{Alt}ALT (±â¼ú Á¤º¸: ÁÂ¿ì ±¸ºÐ¾ø´Â °¡»ó Å°¸¦ Àü¼ÛÇÏÁö¸¸ ½ºÄµ ÄÚµå´Â ¿ÞÂÊ ½ºÄµÄڵ带 Àü¼ÛÇÔ)
{LAlt}¿ÞÂÊ ALT Å° (±â¼ú Á¤º¸: ÁÂ¿ì ±¸ºÐ¾ø´Â °¡»ó Å°°¡ ¾Æ´Ï¶ó ¿ÞÂÊ °¡»ó Å°¸¦ Àü¼ÛÇÕ´Ï´Ù)
{RAlt}¿À¸¥ÂÊ ALT Å° (¶Ç´Â Å°º¸µå ·¹À̾ƿô¿¡ µû¶ó AltGr)
{Alt Down}{Alt Up}ÀÌ Àü¼ÛµÉ ¶§±îÁö ALT Å°¸¦ ´©¸¨´Ï´Ù. ´ë½Å¿¡ ¿ÞÂÊ ¶Ç´Â ¿À¸¥ÂÊ Å°¸¦ ´©¸£°í ÀÖÀ¸·Á¸é {RAlt Down}°ú {RAlt Up}À» »ç¿ëÇϽʽÿÀ.
  
{Shift}SHIFT (±â¼ú Á¤º¸: ÁÂ¿ì ±¸ºÐ¾ø´Â °¡»ó Å°¸¦ Àü¼ÛÇÏÁö¸¸ ½ºÄµÄÚµå´Â ¿ÞÂÊ ½ºÄµÄڵ带 Àü¼ÛÇÔ)
{LShift}¿ÞÂÊ SHIFT Å° (±â¼ú Á¤º¸: ÁÂ¿ì ±¸ºÐ ¾ø´Â °¡»ó Å°°¡ ¾Æ´Ï¶ó ¿ÞÂÊ °¡»ó Å°¸¦ Àü¼ÛÇÔ)
{RShift}¿À¸¥ÂÊ SHIFT Å°
{Shift Down}{Shift Up}ÀÌ Àü¼ÛµÉ ¶§±îÁö SHIFT Å°¸¦ ´©¸¨´Ï´Ù. ´ë½Å¿¡ ¿ÞÂÊ ¶Ç´Â ¿À¸¥ÂÊ Å°¸¦ ´©¸£°í ÀÖÀ¸·Á¸é {RShift Down}°ú {RShift Up}À» »ç¿ëÇϽʽÿÀ.
  
{LWin}¿ÞÂÊ Windows Å°
{RWin}¿À¸¥ÂÊ Windows Å°
{LWin Down}{LWin Up}ÀÌ Àü¼ÛµÉ ¶§±îÁö ¿ÞÂÊ Windows Å°¸¦ ´©¸¨´Ï´Ù
{RWin Down}{RWin Up}ÀÌ Àü¼ÛµÉ ¶§±îÁö ¿À¸¥ÂÊ Windows Å°¸¦ ´©¸¨´Ï´Ù
  
{AppsKey}Windows App Å° (¿À¸¥ÂÊ Å¬¸¯ ¶Ç´Â ¹®¸Æ ¸Þ´º¸¦ ¿äûÇÕ´Ï´Ù)
{Sleep}ÄÄÇ»ÅÍ SLEEP Å°.
{ASC nnnnn}

ALT+nnnnn Å°Æеå Á¶ÇÕÀ» Àü¼ÛÇÕ´Ï´Ù. À̸¦ ÀÌ¿ëÇÏ¿© Å°º¸µå¿¡ Á¸ÀçÇÏÁö ¾Ê´Â Ư¼ö ¹®ÀÚµéÀ» ¹ß»ý½Ãų ¼ö ÀÖ½À´Ï´Ù. ASCII ¹®ÀÚµéÀ» ¹ß»ý½ÃÅ°·Á¸é, 1ºÎÅÍ 255 »çÀÌÀÇ ¼ýÀÚ¸¦ ÁöÁ¤ÇϽʽÿÀ. (´ëºÎºÐÀÇ ¾ð¾î¿¡ Ç¥ÁØÀÎ) ANSI ¹®ÀÚ¸¦ ¹ß»ý½ÃÅ°·Á¸é, 128ºÎÅÍ 255 »çÀÌÀÇ ¼ýÀÚ¸¦ ÁöÁ¤ÇϵÇ, ¾Õ¿¡ 0À» µ¡ºÙÀ̽ʽÿÀ. ¿¹, {Asc 0133}.

+

À¯´ÏÄÚµå ¹®ÀÚ´Â 256ºÎÅÍ 65535 »çÀÌÀÇ ¼ýÀÚ¸¦ ÁöÁ¤ÇØ ¹ß»ý½Ãų ¼ö ÀÖ½À´Ï´Ù (¾Õ¿¡ 0À» ºÙÀÌÁö ¾ÊÀ½). ±×·¸Áö¸¸, ÀÌ ¹æ¹ýÀº ¸ðµç ¾îÇø®ÄÉÀ̼ǿ¡¼­ Áö¿øµÇÁö´Â ¾Ê½À´Ï´Ù. ´ë¾ÈÀº ¾Æ·¡ ¼½¼ÇÀ» ÂüÁ¶ÇϽʽÿÀ.

{U+nnnn}

[AHK_L 24+]: À¯´ÏÄÚµå ¹®ÀÚ¸¦ Àü¼ÛÇÕ´Ï´Ù. nnnnÀº ¾Õ¿¡ 0À» Á¦¿ÜÇÏ°í ¹®ÀÚÀÇ ½ÊÀ°Áø °ªÀÔ´Ï´Ù. À¯´ÏÄÚµå ¹öÀüÀÇ ¿ÀÅäÇÖÅ°¿¡¼­´Â ÀÚµ¿À¸·Î Send¿Í ControlSendÀÌ À¯´ÏÄÚµå ÅؽºÆ®¸¦ Áö¿øÇϱ⠶§¹®¿¡ ÀÌ ¹æ¹ýÀÌ ÇÊ¿äÇÏÁö ¾Ê½À´Ï´Ù.

+

¹®ÀÚ°¡ °¡»ó Å°º¸µå¿¡ ¦Áö¾îÁöÁö ¾Ê´Â´Ù¸é, SendInput() ¶Ç´Â WM_CHARÀ» ÀÌ¿ëÇØ ±× ¹®ÀÚ¸¦ Àü¼ÛÇÒ ¼ö ÀÖ½À´Ï´Ù. ÇöÀçÀÇ Send ¸ðµå´Â ¾Æ¹« È¿°ú°¡ ¾ø½À´Ï´Ù.

{vkXX}
+ {scYYY}
+ {vkXXscYYY}

°¡»ó Å° XX¿Í ½ºÄµ ÄÚµå YYYÀÎ Å°´­¸²À» Àü¼ÛÇÕ´Ï´Ù. ¿¹¸¦ µé¾î: Send {vkFFsc159}. sc ¶Ç´Â vk ºÎºÐÀ» »ý·«Çϸé, ±× ÀÚ¸®¿¡ °¡Àå ÀûÀýÇÑ °ªÀÌ Àü¼ÛµË´Ï´Ù.

+

XX¿Í YYY¿¡ ´ëÇÑ °ªµéÀº ½ÊÀ°Áø¼öÀÌ°í º¸Åë ¸ÞÀΠâÀÌ View->Key history ¸Þ´º Ç׸ñÀ» ÅëÇÏ¿© ¾Ë¾Æ³¾ ¼ö ÀÖ½À´Ï´Ù. ´ÙÀ½µµ ÂüÁ¶: Ư¼ö Å°

  
{Numpad0} - {Numpad9}³ÑÆÐµå ¼ýÀÚ Å° (NumlockÀ» ÄÑ¸é º¸ÀÓ). ¿¹¸¦ µé¾î: {Numpad5}´Â ¼ýÀÚ 5ÀÔ´Ï´Ù.
{NumpadDot}³ÑÆеå Á¡ (NumlockÀ» ÄÑ¸é º¸ÀÓ).
{NumpadEnter}Å°ÆеåÀÇ ¿£ÅÍ Å°
{NumpadMult}³ÑÆÐµå °ö¼À Å°
{NumpadDiv}³ÑÆÐµå ³ª´°¼À Å°
{NumpadAdd}³ÑÆÐµå µ¡¼À Å°
{NumpadSub}³ÑÆÐµå »¬¼À Å°
  
{NumpadDel}Å°ÆеåÀÇ »èÁ¦ Å° (ÀÌ Å°¿Í ¾Æ·¡ÀÇ ³ÑÆеå Å°µéÀº NumlockÀÌ ²¨Á® ÀÖÀ» ¶§ »ç¿ëµË´Ï´Ù)
{NumpadIns}Å°ÆеåÀÇ »ðÀÔ Å°
{NumpadClear}Å°ÆеåÀÇ ¼Ò°Å Å° (º¸Åë NumlockÀÌ ²¨Á® ÀÖÀ» ¶§ '5' Å°).
{NumpadUp}Å°ÆеåÀÇ À§ È­»ìÇ¥ Å°
{NumpadDown}Å°ÆеåÀÇ ¾Æ·¡ È­»ìÇ¥ Å°
{NumpadLeft}Å°ÆеåÀÇ ¿ÞÂÊ È­»ìÇ¥ Å°
{NumpadRight}Å°ÆеåÀÇ ¿À¸¥ÂÊ È­»ìÇ¥ Å°
{NumpadHome}Å°ÆеåÀÇ È¨ Å°
{NumpadEnd}Å°ÆеåÀÇ ¿£µå Å°
{NumpadPgUp}Å°ÆеåÀÇ ÆäÀÌÁö-¾÷ Å°
{NumpadPgDn}Å°ÆеåÀÇ ÆäÀÌÁö-´Ù¿î Å°
  
{Browser_Back}ºê¶ó¿ìÀúÀÇ "back" ¹öÆ°
{Browser_Forward}ºê¶ó¿ìÀúÀÇ "forward" ¹öÆ°
{Browser_Refresh}ºê¶ó¿ìÀúÀÇ "refresh" ¹öÆ°
{Browser_Stop}ºê¶ó¿ìÀúÀÇ "stop" ¹öÆ°
{Browser_Search}ºê¶ó¿ìÀúÀÇ "search" ¹öÆ°
{Browser_Favorites}ºê¶ó¿ìÀúÀÇ "favorites" ¹öÆ°
{Browser_Home}ºê¶ó¿ìÀú¸¦ ±âµ¿ÇÏ°í ȨÆäÀÌÁö·Î °©´Ï´Ù
{Volume_Mute}¸¶½ºÅÍ º¼·ý À½¼Ò°Å. º¸Åë SoundSet, +1, , mute¿Í µ¿µîÇÔ.
{Volume_Down}¸¶½ºÅÍ º¼·ýÀ» ÁÙÀÔ´Ï´Ù. º¸Åë SoundSet -5¿Í µ¿µî.
{Volume_Up}¸¶½ºÅÍ º¼·ýÀ» ³ôÀÔ´Ï´Ù. º¸Åë SoundSet +5¿Í µ¿µîÇÔ.
{Media_Next}¹Ìµð¾î Ç÷¹À̾¼­ ´ÙÀ½ Æ®·¢À¸·Î
{Media_Prev}¹Ìµð¾î Ç÷¹À̾¼­ ÀÌÀü Æ®·¢À¸·Î
{Media_Stop}¹Ìµð¾î Ç÷¹À̾î ÁßÁö
{Media_Play_Pause}¹Ìµð¾î Ç÷¹À̾î Á¤Áö/¿¬ÁÖ
{Launch_Mail}À̸ÞÀÏ ¾îÇø®ÄÉÀÌ¼Ç ±âµ¿
{Launch_Media}¹Ìµð¾î Ç÷¹ÀÌ¾î ±âµ¿
{Launch_App1}»ç¿ëÀÚ app1 ±âµ¿
{Launch_App2}»ç¿ëÀÚ app2 ±âµ¿
  
{PrintScreen}È­¸é Àμâ
{CtrlBreak}Ctrl+break
{Pause}Á¤Áö
  
{Click [Options]}
+ [v1.0.43+]
Click ¸í·É¾î¿Í °°Àº ¿É¼ÇÀ» »ç¿ëÇÏ¿© ¸¶¿ì½º Ŭ¸¯À» Àü¼ÛÇÕ´Ï´Ù. ¿¹¸¦ µé¾î, {Click}Àº ¸¶¿ì½º Ä¿¼­ÀÇ ÇöÀç À§Ä¡¿¡ ¿Þ ¸¶¿ì½º ¹öÆ°À» ÇÑ ¹ø Ŭ¸¯ÇÕ´Ï´Ù. ±×¸®°í {Click 100, 200}´Â ÁÂÇ¥ 100, 200¿¡ Ŭ¸¯ÇÕ´Ï´Ù (CoordMode¿¡ ±â¹Ý). Ŭ¸¯ ¾øÀÌ ¸¶¿ì½º¸¦ À̵¿½ÃÅ°·Á¸é, ÁÂÇ¥ ´ÙÀ½¿¡ 0À» ÁöÁ¤ÇϽʽÿÀ; ¿¹¸¦ µé¾î: {Click 100, 200, 0}. ¸¶¿ì½º Ŭ¸¯ »çÀÌÀÇ Áö¿¬ ½Ã°£Àº SetMouseDelay·Î °áÁ¤µË´Ï´Ù (SetKeyDelay·Î °áÁ¤µÇÁö ¾Ê½À´Ï´Ù).
{WheelDown}, {WheelUp}, {WheelLeft}, {WheelRight}, {LButton}, {RButton}, {MButton}, {XButton1}, {XButton2}Ä¿¼­ÀÇ ÇöÀç À§Ä¡¿¡ ¸¶¿ì½º ¹öÆ° À̺¥Æ®¸¦ Àü¼ÛÇÕ´Ï´Ù (À§Ä¡¿Í ±âŸ ¿É¼Ç¿¡ °üÇÏ¿© ÅëÁ¦ÇÏ·Á¸é, À§ÀÇ {Click}À» »ç¿ëÇϽʽÿÀ). ¸¶¿ì½º Ŭ¸¯ »çÀÌÀÇ Áö¿¬ ½Ã°£Àº SetMouseDelayÀ¸·Î °áÁ¤µË´Ï´Ù. WheelLeft/Right´Â v1.0.48+À» ¿ä±¸ÇÏÁö¸¸, Windows Vista ¹Ì¸¸ÀÇ ¿î¿µ üÁ¦¿¡¼­´Â ¾Æ¹« È¿°ú°¡ ¾ø½À´Ï´Ù.
{Blind}

¹®ÀÚ¿­¿¡¼­ {Blind}°¡ ù Ç׸ñÀ̸é, ÇÁ·Î±×·¥Àº Alt/Control/Shift/Win Å°°¡ ´­¸° »óÅ¿¡¼­ ½ÃÀÛÇßÀ» °æ¿ì ¶¼·Á°í ÇÏÁö ¾Ê½À´Ï´Ù. ¿¹¸¦ µé¾î, ÇÖÅ° +s::Send {Blind}abc´Â abc°¡ ¾Æ´Ï¶ó ABC¸¦ Àü¼ÛÇÕ´Ï´Ù. ¿Ö³ÄÇÏ¸é »ç¿ëÀÚ°¡ Shift Å°¸¦ ´©¸£°í Àֱ⠶§¹®ÀÔ´Ï´Ù.

+

{Blind}´Â ¶ÇÇÑ SetStoreCapslockMode¸¦ ¹«½ÃÇÕ´Ï´Ù; Áï, CapslockÀÇ »óÅ°¡ ¹Ù²îÁö ¾Ê½À´Ï´Ù. ¸¶Áö¸·À¸·Î, {Blind}´Â Ãß°¡ Control Å°´­¸²À» »ý·«ÇÕ´Ï´Ù; ±×·¯¹Ç·Î: 1) LWin/RWin Å°¸¦ ´­·¯µµ ½ÃÀÛ ¸Þ´º°¡ Ã˹ߵÇÁö ¾Ê½À´Ï´Ù; 2) Alt Å°¸¦ ´­·¯µµ ¸Þ´º ¹Ù°¡ È°¼ºÈ­µÇÁö ¾Ê½À´Ï´Ù.

+

¸Í¸ñ-¸ðµå´Â Å°¸¦ ¸®¸ÊÇÎÇÒ ¶§ ³»ºÎÀûÀ¸·Î »ç¿ëµË´Ï´Ù. ¿¹¸¦ µé¾î, ¸®¸ÊÇÎ a::b´Â: 1) "a"¸¦ ŸÀÚÇϸé "b"¸¦ »ý»êÇÏ°í; 2) ´ë¹®ÀÚ A¸¦ ŸÀÚÇÏ¸é ´ë¹®ÀÚ B¸¦ »ý»êÇϸç ; ±×¸®°í 3) Control-A¸¦ ŸÀÚÇϸé Control-B¸¦ »ý»êÇÕ´Ï´Ù.

+

{Blind}´Â SendRaw°ú ControlSendRaw°¡ Áö¿øÇÏÁö ¾Ê½À´Ï´Ù. °Ô´Ù°¡, SendPlayµµ ¿Ïº®ÇÏ°Ô´Â Áö¿øÇÏÁö ¸øÇÕ´Ï´Ù. ƯÈ÷ ¼ö½Ä Å°µéÀ» ´Ù·ê ¶§ (Control, Alt, Shift, ±×¸®°í Win) Áö¿øÇÏÁö ¸øÇÕ´Ï´Ù.

{Raw}
+ [v1.0.43+]
Å°´­¸²À» º¸ÀÌ´Â ±×´ë·Î Àü¼ÛÇÕ´Ï´Ù. {Enter}¸¦ ENTER Å°´­¸²À¸·Î º¯È¯ÇÏÁö ¾Ê°í, ^c¸¦ Control-C·Î º¯È¯ÇÏÁö ¾Ê½À´Ï´Ù, µîµî. ¹®ÀÚ¿­ {Raw}´Â ¹®ÀÚ¿­ÀÇ ½ÃÀÛºÎÅÍ ÀϾ ÇÊ¿ä´Â ¾øÁö¸¸, ÀÏ´Ü ÁöÁ¤µÇ¸é, ¹®ÀÚ¿­ÀÇ ³ª¸ÓÁö¿¡ È¿°ú¸¦ À¯ÁöÇÕ´Ï´Ù.
+ +

Å°¸¦ ¹Ýº¹Çϱ⠶Ǵ Ű¸¦ ´©¸£°í ÀÖ±â

+

+Å°¸¦ ¹Ýº¹ÇÏ·Á¸é: Å°ÀÇ À̸§¿¡ È°°ýÈ£¸¦ µÎ¸£°í ´ÙÀ½¿¡ ¹Ýº¹ÇÒ È½¼ö¸¦ ÁöÁ¤ÇÕ´Ï´Ù. ¿¹¸¦ µé¾î:

+
Send {DEL 4}  ; Delete Å°¸¦ 4 ¹ø ´©¸¨´Ï´Ù.
+Send {S 30}   ; ´ë¹®ÀÚ S¸¦ 30°³ Àü¼ÛÇÕ´Ï´Ù.
+Send +{TAB 4}  ; Shift-TabÀ» 4 ¹ø ´©¸¨´Ï´Ù.
+

+Å°¸¦ ´©¸£°í Àְųª ¶¼±â: Å°ÀÇ À̸§À» È°°ýÈ£·Î µÑ·¯½Î°í ´ÙÀ½¿¡ ´Ü¾î Down ¶Ç´Â UpÀ» ÁöÁ¤ÇÕ´Ï´Ù. ¿¹¸¦ µé¾î:

+
Send {b down}{b up}
+Send {TAB down}{TAB up}
+Send {Up down}  ; À§ È­»ìÇ¥ Å°¸¦ ´©¸¨´Ï´Ù.
+Sleep 1000  ; 1ÃÊ µ¿¾È ´©¸£°í ÀÖ½À´Ï´Ù.
+Send {Up up}  ; À§ È­»ìÇ¥ Å°¸¦ ¶Á´Ï´Ù.
+

+Å°°¡ À§ÀÇ ¹æ¹ýÀ» ÅëÇÏ¿© ´­¸± ¶§, ÀÚµ¿ ¹Ýº¹À» ½ÃÀÛÇÏÁö ¾Ê½À´Ï´Ù. ¹Ý¸é¿¡ ¹°¸®ÀûÀ¸·Î Å°¸¦ ´©¸£°í ÀÖÀ¸¸é ÀÚµ¿ ¹Ýº¹À» ½ÃÀÛÇÕ´Ï´Ù (ÀÌ°ÍÀº ÀÚµ¿-¹Ýº¹ÀÌ µå¶óÀ̹ö/Çϵå¿þ¾îÀÇ Æ¯Â¡À̱⠶§¹®ÀÔ´Ï´Ù). ±×·¸Áö¸¸, Loop¸¦ »ç¿ëÇϸé ÀÚµ¿ ¹Ýº¹À» Èä³»³¾ ¼ö ÀÖ½À´Ï´Ù. ´ÙÀ½ ¿¹Á¦´Â 20 °³ÀÇ ÅÇ Å°´­¸²À» Àü¼ÛÇÕ´Ï´Ù:

+
Loop 20
+{
+    Send {Tab down}  ; ÀÚµ¿-¹Ýº¹Àº ¿¬¼ÓÀûÀÎ ´©¸£±â À̺¥Æ®·Î ±¸¼ºµË´Ï´Ù (¾÷-À̺¥Æ® ¾øÀ½).
+    Sleep 30  ; Å° ´­¸² »çÀÌ¿¡ ´ë±âÇÏ´Â ¹Ð¸® ÃÊ (¶Ç´Â SetKeyDelay¸¦ »ç¿ëÇϽʽÿÀ).
+}
+Send {Tab up}  ; Å°¸¦ ¶Á´Ï´Ù.
+

+´Ü¾î DownTempµµ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. ±×ÀÇ È¿°ú´Â ¼ö½Ä (Control/Shift/Alt/Win) Å°¸¦ Á¦¿ÜÇÏ°í Down°ú ¶È °°½À´Ï´Ù. + +±×·± °æ¿ì, DownTemp´Â ¿¬ÀÌÀº Àü¼Û¿¡ Å°°¡ ¿µ±¸È÷ ´­·Á ÀÖ´Â °ÍÀº ¾Æ´Ï¸ç, ±×·¯¹Ç·Î Å°´­¸²ÀÌ ¿ä±¸ÇÏ¸é ¾ðÁ¦µçÁö ¶¼¾îµµ ÁÁ´Ù°í ¾Ë·ÁÁÝ´Ï´Ù. ¿¹¸¦ µé¾î, Send {Control DownTemp} ´ÙÀ½¿¡ Send a°¡ µû¶ó¿À¸é º¸ÅëÀÇ "a" Å°´­¸²À» »ý»êÇϸç, control-A Å°´­¸²À» »ý»êÇÏÁö ¾Ê½À´Ï´Ù.

+ +

ÃÑÆò

+

+Send ¸í·É¾î°¡ Áö¿øÇÏ´Â ¹®ÀÚ¿¡ Ưº°ÇÑ Á¦ÇÑÀº ¾ø½À´Ï´Ù. ¹®ÀÚ°¡ ÇöÀç Å°º¸µå ·¹À̾ƿô¿¡ Á¸ÀçÇÏÁö ¾ÊÀ¸¸é, ¿ÀÅäÇÖÅ° ¹öÀü¿¡ µû¶ó À¯´ÏÄÚµå ¹®ÀÚ ÆÐŶ ¶Ç´Â Alt+nnnnn Á¶ÇÕÀ» Àü¼ÛÇØ Èä³»³¾ ¼ö ÀÖ½À´Ï´Ù. À¯´ÏÄÚµå ¹®ÀÚ´Â ÅؽºÆ®·Î À¯´ÏÄÚµå ¹öÀüÀÇ ¿ÀÅäÇÖÅ°¿¡¼­ Á÷Á¢ÀûÀ¸·Î Áö¿øÇÕ´Ï´Ù. ¶Ç´Â ´Ù¸¥ ¹öÀüÀ̶ó¸é {U+nnnn} Ç¥±â¹ýÀ» »ç¿ëÇÏ¸é µË´Ï´Ù.

+

+SendInput/SendPlay¿Í ºñ±³ÇÑ BlockInput: BlockInput ¸í·É¾î´Â »ç¿ëÀÚ°¡ ¹°¸®ÀûÀ¸·Î ŸÀÚÇÏ´Â Å° ´­¸²ÀÌ Èä³»³½ Å°´­¸²¿¡ ¹æÇظ¦ ¹ÞÁö ¾Êµµ·Ï ¸·¾Æ ÁÖÁö¸¸, Á¾Á¾ SendInputÀ̳ª SendPlay¸¦ »ç¿ëÇÏ¸é ´õ ÁÁÀº °æ¿ì°¡ ÀÖ½À´Ï´Ù. Å°´­¸²°ú ¸¶¿ì½º Ŭ¸¯ÀÌ ÀÎÅÍ·´Æ®°¡ ºÒ°¡´ÉÇÕ´Ï´Ù. BlockInput°ú ´Ù¸£°Ô, SendInput/Play ´Â Àü¼ÛÇÏ´Â µ¿¾È »ç¿ëÀÚ°¡ ŸÀÚÇÑ Å°µéÀ» ¹ö¸®Áö ¾Ê½À´Ï´Ù; ´ë½Å, ±×·± Å°µéÀº ¹öÆÛ Ã³¸®µÇ¾ú´Ù°¡ ³ªÁß¿¡ Àü¼ÛµË´Ï´Ù.

+

+¾öû³ª°Ô ¸¹Àº Å°´­¸²À» Àü¼ÛÇÒ °æ¿ì, °è¼Ó ¼½¼ÇÀ» »ç¿ëÇÏ¸é °¡µ¶¼º°ú À¯Áö°ü¸®¼ºÀ» °³¼±ÇÒ ¼ö ÀÖ½À´Ï´Ù.

+

+¿î¿µ üÁ¦´Â CTRL-ALT-DELETE Á¶ÇÕÀ» Çã¿ëÇÏÁö ¾Ê±â ¶§¹®¿¡, Send ^!{Delete}¿Í °°ÀÌ ÇÏ´õ¶óµµ ¾Æ¹« È¿°ú°¡ ¾ø½À´Ï´Ù.

+

+Send´Â ¾Æ¹« È¿°ú°¡ ¾øÀ» ¼ö ÀÖ½À´Ï´Ù Windows Vista ÀÌÈÄ È°¼º âÀÌ °ü¸®ÀÚ ±ÇÇÑÀ¸·Î ½ÇÇàÁßÀε¥ ½ºÅ©¸³Æ®´Â °ü¸®ÀÚ ±ÇÇÑÀÌ ¾øÀ¸¸é ±×·¸½À´Ï´Ù. ÀÌ°ÍÀº »ç¿ëÀÚ ÀÎÅÍÆäÀ̽º ±ÇÇÑ °Ý¸®(User Interface Privilege Isolation) º¸¾È ¸ÅÄ¿´ÏÁò ¶§¹®ÀÔ´Ï´Ù.

+ +

SendInput [v1.0.43+]

+

+SendInputÀº ÀϹÝÀûÀ¸·Î Å°´­¸²°ú ¸¶¿ì½º Ŭ¸¯À» Àü¼ÛÇÏ´Â µ¥ ¼±È£µÇ´Â ¹æ¹ýÀÔ´Ï´Ù. ¿Ö³ÄÇÏ¸é ¼Óµµ°¡ ¿ùµîÇÏ°í ½Å·Ú¼ºÀÌ Àֱ⠶§¹®ÀÔ´Ï´Ù. ´ëºÎºÐÀÇ »óȲ¿¡¼­, SendInputÀº °ÅÀÇ Áï½Ã ½ÇÇàµË´Ï´Ù. ±â´Ù¶õ ¹®ÀÚ¿­À» º¸³»µµ ¼ø½Ä°£ÀÔ´Ï´Ù. SendInputÀº ºü¸£±â ¶§¹®¿¡, ´õ ½Å·Ú¼ºÀÌ ÀÖ½À´Ï´Ù. ¿Ö³ÄÇÏ¸é ´Ù¸¥ âÀÌ ÀǵµÄ¡ ¾Ê°Ô ³ªÅ¸³ª°Å³ª Å°´­¸²À» °¡·Î ä´Â ºóµµ°¡ ÁÙ¾îµé±â ¶§¹®ÀÔ´Ï´Ù. SendInput µ¿¾È¿¡ »ç¿ëÀÚ°¡ ŸÀÚÇÏ¸é ¿¬±âµÇ¾ú´Ù°¡ ³ªÁß¿¡ 󸮵ǹǷΠ½Å·Ú¼ºÀº ´õ¿í °³¼±µË´Ï´Ù.

+

+´Ù¸¥ Àü¼Û ¸ðµå¿Í ´Ù¸£°Ô, ¿î¿µ üÁ¦´Â SendInputÀ» ´ë·« 5000 ¹®ÀÚ·Î Á¦ÇÑÇÕ´Ï´Ù (ÀÌ °ªÀº ¿î¿µ üÁ¦ÀÇ ¹öÀü°ú ¼öÇ༺´É ¼³Á¤¿¡ µû¶ó ´Þ¶óÁý´Ï´Ù). ÀÌ Á¦ÇÑÀ» ³Ñ¾î¼­ ¹®ÀÚµé°ú À̺¥Æ®µéÀº Àü¼ÛµÇÁö ¾Ê½À´Ï´Ù.

+

+ÁÖÀÇ: SendInputÀº SetKeyDelay¸¦ ¹«½ÃÇÕ´Ï´Ù. ¿Ö³ÄÇÏ¸é ¿î¿µ üÁ¦°¡ ÀÌ ¸ðµå¿¡¼­´Â Áö¿¬ ½Ã°£À» Áö¿øÇÏÁö ¾Ê±â ¶§¹®ÀÔ´Ï´Ù. ±×·¸Áö¸¸, ¾Æ·¡¿¡ ±â¼úÇÑ »óȲ ¾Æ·¡¿¡¼­ SendInputÀº SendEvent¿¡ ÀÇÁ¸ÇÕ´Ï´Ù. SendEvent´Â SetKeyDelay -1, 0¸¦ »ç¿ëÇÕ´Ï´Ù + +(´Ü, SendEventÀÇ Å° Áö¿¬½Ã°£ÀÌ(KeyDelay) -1,-1ÀÎ °æ¿ì´Â ¿¹¿ÜÀÔ´Ï´Ù. ÀÌ °æ¿ì´Â -1,-1ÀÌ »ç¿ëµË´Ï´Ù). + +SendInputÀÌ SendPlay¿¡ ÀÇÁ¸ÇÒ ¶§, SendPlayÀÇ Å° Áö¿¬½Ã°£(KeyDelay)À» »ç¿ëÇÕ´Ï´Ù.

+

+SendInputÀ» ½ÇÇàÇÏ´Â ½ºÅ©¸³Æ®¿¡ Àú-¼öÁØ Å°º¸µå °¥°í¸®°¡ ¼³Ä¡µÇ¾î ÀÖ´Ù¸é, SendInputÀº ÀÚµ¿À¸·Î SendEvent¿¡ ÀÇÁ¸ÇÕ´Ï´Ù (¾Æ´Ï¸é SendMode InputThenPlay°¡ ÄÑÁ® ÀÖÀ» °æ¿ì¶ó¸é SendPlay¿¡ ÀÇÁ¸ÇÕ´Ï´Ù). ¿ÜºÎ °¥°í¸®ÀÇ Á¸Àç ¶§¹®¿¡ SendInputÀÇ ¸ðµç ÀåÁ¡ÀÌ °¡·ÁÁý´Ï´Ù. ±× ¶§¹®¿¡ SendPlay¿Í SendEvent¿¡ ºñÇØ ¿­µîÇÕ´Ï´Ù. ±×·¸Áö¸¸, SendInputÀº AutoHotkey v1.0.43+ÀÌ ¾Æ´Ï¶ó¸é Àú-¼öÁØ °¥°í¸®¸¦ ŽÁöÇÒ ¼ö ¾ø±â ¶§¹®¿¡, ÀÌ·± °æ¿ì´Â ÀÇÁ¸ÇÒ °ÍÀÌ ¾øÀ¸¹Ç·Î SendPlay/Event º¸´Ù ½Å·Ú¼ºÀÌ ´õ ¶³¾îÁý´Ï´Ù.

+

+SendInputÀÌ {Click}¿Í °°Àº ¼ö´ÜÀ» ÅëÇÏ¿© ¸¶¿ì½º Ŭ¸¯À» Àü¼ÛÇÒ ¶§ ±×¸®°í CoordMode Mouse, Relative°¡ ÄÑÁ® ÀÖÀ» ¶§ (±âº»°ª), ¸ðµç Ŭ¸¯Àº Àü¼ÛÀÌ ½ÃÀÛµÉ ¶§ È°¼ºÈ­ µÈ â¿¡ »ó´ëÀûÀÔ´Ï´Ù. ±×·¯¹Ç·Î, SendInputÀÌ ÀǵµÀûÀ¸·Î (¾ËÆ®-ÅÇ °°Àº ¼ö´ÜÀ¸·Î) ¶Ç´Ù¸¥ âÀ» È°¼ºÈ­Çϸé, °°Àº ¸í·É¾î ¾È¿¡¼­ ¿¬ÀÌÀº Ŭ¸¯ÀÇ ÁÂÇ¥µéÀº ¿À·ù°¡ ÀϾ´Ï´Ù. ¿Ö³ÄÇÏ¸é ¿©ÀüÈ÷ »õ âÀÌ ¾Æ´Ï¶ó ¿¹Àü â¿¡ »ó´ëÀûÀ̱⠶§¹®ÀÔ´Ï´Ù.

+ +

SendPlay [v1.0.43+]

+

+SendPlayÀÇ °¡Àå Å« ÀåÁ¡Àº ´Ù¸¥ ¸ðµå¿Í ´Ù¸£°Ô ±¤¹üÀ§ÇÑ °ÔÀÓ¿¡¼­ ¸¶¿ì½º Ŭ¸¯°ú Å°´­¸²À» "Àç½Ã¿¬"ÇÒ ¼ö ÀÖ´Ù´Â °ÍÀÔ´Ï´Ù. ¿¹¸¦ µé¾î, ƯÁ¤ÇÑ °ÔÀÓÀº ¿ÀÁ÷ SendPlay ¿É¼ÇÀÌÀÌ ÀÖÀ» °æ¿ì¿¡¸¸ ÇÖ½ºÆ®¸µÀ» ¹Þ¾Æ µéÀÔ´Ï´Ù. ±×·¸Áö¸¸, SendPlay´Â Windows Vista ÀÌÈÄ¿¡¼­ »ç¿ëÀÚ °èÁ¤ ÅëÁ¦(User Account Control)°¡ ÄÑÁ® ÀÖÀ¸¸é, ¾Æ¹« È¿°ú°¡ ¾ø½À´Ï´Ù. ½ºÅ©¸³Æ®°¡ »ç¿ëÀÚ ±ÇÇÑÀ¸·Î ½ÇÇàµÇ¾îµµ ¸¶Âù°¡ÁöÀÔ´Ï´Ù. ´ÙÀ½ ½ºÅ©¸³Æ®´Â ÀÌ ¹®Á¦ÀÇ ¿ìȸåÀ» Á¦°øÇÕ´Ï´Ù: http://www.autohotkey.com/forum/topic75595.html.

+

+¼¼ °¡Áö Àü¼Û ¸ðµå Áß¿¡¼­, SendPlay°¡ °¡Àå ÀÌ»óÇÕ´Ï´Ù. ¿Ö³ÄÇϸé Å°´­¸²°ú ¸¶¿ì½º Ŭ¸¯À» »ç½Ç»ó Èä³»³»Áö ¾Ê±â ¶§¹®ÀÔ´Ï´Ù. ´ë½Å¿¡, ÀÏ·ÃÀÇ À̺¥Æ® (¸Þ½ÃÁö)¸¦ ¸¸µé¾î ³À´Ï´Ù. ±× ¸Þ½ÃÁöµéÀÌ È°¼º âÀ¸·Î Á÷Á¢ Èê·¯ µé¾î°©´Ï´Ù (ControlSend¿Í ºñ½ÁÇÏ°Ô, ±×·¯³ª ³·Àº ¼öÁØ¿¡¼­). °á°úÀûÀ¸·Î, SendPlay´Â ÇÖÅ°³ª ÇÖÆ®¸µÀ» Ã˹߽ÃÅ°Áö ¾Ê½À´Ï´Ù.

+

+SendInputó·³, SendPlayÀÇ Å°´­¸²Àº »ç¿ëÀÚ°¡ ŸÀÚÇÑ Å°´­¸² ¶§¹®¿¡ Èð¾îÁöÁö ¾Ê½À´Ï´Ù. ±×·¡¼­, »ç¿ëÀÚ°¡ ¾î¼´Ù°¡ SendPlay Áß¿¡ ŸÀÚ¸¦ ÇÏ´õ¶óµµ, ±×·± Å°´­¸²Àº ¿¬±âµÇ¾ú´Ù°¡ ³ªÁß¿¡ 󸮵˴ϴÙ.

+

+SendPlay´Â SendInput¿¡ ºñÇØ »ó´çÈ÷ ´À¸³´Ï´Ù. ±×·¯³ª º¸Åë ÀüÅëÀûÀÎ SendEvent ¸ðµå º¸´Ù´Â ºü¸¨´Ï´Ù (KeyDelay°¡ -1ÀÏ °æ¿ì¿¡µµ ¸¶Âù°¡ÁöÀÔ´Ï´Ù).

+

+Windows Å° (LWin ±×¸®°í RWin)´Â Å°º¸µå °¥°í¸®°¡ ¼³Ä¡µÇ¾î ÀÖÀ¸¸é SendPlay µ¿¾È ÀÚµ¿À¸·Î ¸·Èü´Ï´Ù. ÀÌ ´öºÐ¿¡ Àü¼ÛÇÏ´Â µ¿¾È¿¡ »ç¿ëÀÚ°¡ ¿ì¹ßÀûÀ¸·Î Windows Å°¸¦ ´­·¯µµ ½ÃÀÛ ¸Þ´º°¡ ³ªÅ¸³ªÁö ¾Ê½À´Ï´Ù. ´ëÁ¶ÀûÀ¸·Î, LWin¿Í RWin ¸»°í ´Ù¸¥ Å°µéÀº ¸·¾ÆÁÙ ÇÊ¿ä°¡ ÀÖ½À´Ï´Ù. ¿Ö³ÄÇÏ¸é ¿î¿µ üÁ¦°¡ ÀÚµ¿À¸·Î Å°µéÀ» (¹öÆÛ Ã³¸®ÇÏ¿©) SendPlay°¡ ³¡³¯ ¶§±îÁö ¿¬±âÇØ Áֱ⠶§¹®ÀÔ´Ï´Ù.

+

+SendPlay´Â SetKeyDelay¿Í SetMouseDelayÀÇ Ç¥ÁØ ¼³Á¤À» »ç¿ëÇÏÁö ¾Ê½À´Ï´Ù. ´ë½Å¿¡, ±âº»°ªÀ¸·Î ÀüÇô ´ë±â ½Ã°£ÀÌ ¾ø½À´Ï´Ù. ÀÌ ´ë±â ½Ã°£Àº ´ÙÀ½ ¿¹Á¦¿Í °°ÀÌ ¹Ù²Ü ¼ö ÀÖ½À´Ï´Ù:

+ +
SetKeyDelay, 0, 10, Play  ; SendPlay ¸ðµå¿¡¼­´Â 0°ú -1ÀÌ °°À½À» ÁÖ¸ñÇϽʽÿÀ.
+SetMouseDelay, 10, Play
+

+SendPlay´Â Capslock, Numlock, ¶Ç´Â Scroll-lock Å°¸¦ ÄÑ°í ²ø ¼ö ¾ø½À´Ï´Ù. ºñ½ÁÇÏ°Ô, GetKeyState·Î º¸ÀÌ´Â Å°ÀÇ »óŸ¦ ¹Ù²Ü ¼ö ¾ø½À´Ï´Ù. +´Ü, ±× Å°´­¸²µéÀÌ ½ºÅ©¸³Æ®ÀÇ Ã¢ Áß¿¡ Çϳª·Î Àü¼ÛµÈ´Ù¸é ¿¹¿ÜÀÔ´Ï´Ù. ±× ¶§±îÁö, ¿ÞÂÊ/¿À¸¥ÂÊ ¼ö½ÄÅ°¿¡ º¯È­°¡ ÀÖ´Ù¸é (¿¹, RControl) ¿ÀÁ÷ ÁÂ¿ì ±¸ºÐ ¾ø´Â ¼ö½ÄÅ°¸¦ ÅëÇؼ­¸¸ ŽÁöÇÒ ¼ö ÀÖ½À´Ï´Ù (¿¹, Control). ¶Ç, SendPlay´Â SendMode ÆäÀÌÁö¿¡ ±â¼úµÈ ´Ù¸¥ Á¦Çѵµ ÀÖ½À´Ï´Ù.

+

+SendInput ±×¸®°í SendEvent°ú ´Ù¸£°Ô, »ç¿ëÀÚ´Â Control-Alt-DelÀ̳ª Control-Escape¸¦ ´­·¯¼­ SendPlay¸¦ ÀÎÅÍ·´Æ®ÇÒ ¼ö ÀÖ½À´Ï´Ù. ÀÌ·± ÀÏÀÌ ÀϾ ¶§, ³ª¸ÓÁö Å°´­¸²Àº Àü¼ÛµÇÁö ¾ÊÁö¸¸ ½ºÅ©¸³Æ®¸¥ ¸¶Ä¡ SendPlay°¡ Á¤»óÀûÀ¸·Î Àü¼ÛÀ» ¿Ï·áÇÑ °Íó·³ ½ÇÇàÀ» °è¼ÓÇÕ´Ï´Ù.

+

+SendPlay´Â send LWin°ú RWin À̺¥Æ®¸¦ º¸³¾ ¼ö ÀÖÁö¸¸, â¿¡ Á÷Á¢ÀûÀ¸·Î Àü¼ÛÇÕ´Ï´Ù. ¿î¿µ üÁ¦ °íÀ¯ÀÇ ±â´ÉÀ» ¼öÇàÇÏÁö ¾Ê½À´Ï´Ù. À̸¦ ¿ìȸÇÏ·Á¸é SendEvent¸¦ »ç¿ëÇϽʽÿÀ. ¿¹¸¦ µé¾î, SendEvent #r´Â ½ÃÀÛ ¸Þ´ºÀÇ ½ÇÇà ´ëÈ­»óÀÚ¸¦ º¸¿©ÁÙ °ÍÀÔ´Ï´Ù.

+ +

°ü·Ã Ç׸ñ

+

+SendMode, SetKeyDelay, SetStoreCapslockMode, ÇǽŠ¿¬¼Ó¿­ (¿¹, `%), ControlSend, BlockInput, ÇÖ½ºÆ®¸µ, WinActivate

+ +

¿¹Á¦

+
Send Sincerely,{enter}John Smith  ; µÎ ÁÙÀÇ ¼­¸íÀ» ŸÀÚÇÕ´Ï´Ù.
+Send !fs ; File->Save ¸Þ´º¸¦ ¼±ÅÃÇÕ´Ï´Ù (Alt+F¸¦ ´©¸¥ ´ÙÀ½ S).
+Send {End}+{Left 4} ; ÅؽºÆ® ³¡À¸·Î Á¡ÇÁÇؼ­ ³× °³ÀÇ shift+left-arrow Å°´­¸²À» Àü¼ÛÇÕ´Ï´Ù.
+SendInput {Raw}±â´Ù¶õ ³¯ ¹®ÀÚ¿­µéÀÌ ºü¸¥ ¹æ¹ýÀ» »ç¿ëÇÏ¿© Àü¼ÛµÊ (SendInput).
+ + + diff --git a/src/docs/commands/SendLevel.htm b/src/docs/commands/SendLevel.htm new file mode 100644 index 0000000..a520edf --- /dev/null +++ b/src/docs/commands/SendLevel.htm @@ -0,0 +1,59 @@ + + + + +SendLevel + + + + + + + +

SendLevel [v1.1.06+]

+

ÇÖÅ°¿Í ÇÖ½ºÆ®¸µÀÌ ¹«½ÃÇÏ´Â ÀÎÀ§ÀûÀÎ Å°º¸µå ±×¸®°í ¸¶¿ì½º À̺¥Æ®¸¦ Á¦¾îÇÕ´Ï´Ù.

+
SendLevel, Level
+ +

¸Å°³º¯¼ö

+
+ +
Level
+

0ºÎÅÍ 100 »çÀÌÀÌ Á¤¼ö, Ç¥Çö½Ä °¡´É.

+ +
+ +

ÃÑÆò

+

+±âº»°ªÀ¸·Î, °¥°í¸®¿Í ÇÖÅ° ±×¸®°í ÇÖ½ºÆ®¸µÀº ¿ÀÅäÇÖÅ° ½ºÅ©¸³Æ®°¡ ¹ß»ý½ÃŲ Å°º¸µå¿Í ¸¶¿ì½º À̺¥Æ®¸¦ ¹«½ÃÇÕ´Ï´Ù. ¾î¶² °æ¿ì´Â ÀÌ ÇàÀ§¸¦ ¿À¹ö¶óÀ̵åÇϸé À¯¿ëÇÕ´Ï´Ù; ¿¹¸¦ µé¸é, ¸®¸Ê Å°¸¦ ´Ù¸¥ ÇÖÅ°¸¦ Ã˹߽ÃÅ°´Â µ¥ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. SendLevel°ú #InputLevelÀº À̸¦ ¿Ï¼öÇÏ´Â ¼ö´ÜÀ» Á¦°øÇÕ´Ï´Ù.

+

+SendLevelÀº ÇöÀçÀÇ ½ºÅ©¸³Æ® ¾²·¹µå·Î ¹ß»ýµÈ À̺¥Æ®¿¡ ´ëÇÏ¿© ·¹º§À» ¼³Á¤ÇÕ´Ï´Ù. ¹Ý¸é¿¡ #InputLevelÀº ±× ¾Æ·¡¿¡ ÀÖ´Â ÇÖÅ°³ª ÇÖ½ºÆ®¸µ¿¡ ´ëÇÏ¿© ·¹º§À» ¼³Á¤ÇÕ´Ï´Ù. ½ºÅ©¸³Æ®°¡ ¹ß»ý½ÃŲ À̺¥Æ®°¡ ´Ù¸¥ ÇÖÅ°³ª ÇÖ½ºÆ®¸µÀ» Ã˹ßÇÒ ¼ö ÀÖÀ¸·Á¸é, À̺¥Æ®ÀÇ Àü¼Û ·¹º§ÀÌ ÇÖÅ°³ª ÇÖ½ºÆ®¸µÀÇ ÀÔ·Â ·¹º§º¸´Ù ´õ ³ô¾Æ¾ß ÇÕ´Ï´Ù.

+ +

ȣȯ¼º:

+ +

+»õ·Î ±âµ¿µÈ ÇÖÅ° ¶Ç´Â ÇÖ½ºÆ®¸µ ¾²·¹µå´Â Àü¼Û ·¹º§À» ÀÔ·Â ·¹º§°ú °°°Ô ¼³Á¤ÇÏ°í ½ÃÀÛÇÕ´Ï´Ù. »õ·Î ±âµ¿µÈ ´Ù¸¥ ¾²·¹µå´Â (¿¹¸¦ µé¾î ¸ÂÃã ¸Þ´º Ç׸ñ ¶Ç´Â ŸÀÌ¸Ó ¼­ºê·çƾ) ±âº» ¼³Á¤À» °¡Áö°í »õ·Ó°Ô ½ÃÀÛÇÕ´Ï´Ù. ±âº»°ªÀº º¸Åë 0ÀÌÁö¸¸ ÀÚµ¿-½ÇÇà ¼½¼Ç¿¡ ÀÌ ¸í·É¾îÀ» »ç¿ëÇÏ¿© ¹Ù²Ü ¼ö ÀÖ½À´Ï´Ù.

+

+SendLevelÀÌ ÀÚµ¿-½ÇÇà ¼½¼Ç¿¡ »ç¿ëµÇ¸é, Å°º¸µå¿Í ¸¶¿ì½º ¸®¸ÊÇο¡µµ ¿µÇâÀ» ÁÝ´Ï´Ù.

+

+v1.1.06 ¹Ì¸¸ ¹öÀü ¸¶Ä¡#InputLevel 0 ±×¸®°í SendLevel 0ÀÌ ÄÑÁø °Íó·³ ÇàÀ§ÇÕ´Ï´Ù.

+ +

°ü·Ã Ç׸ñ

+

#InputLevel, Send, Click, MouseClick, MouseClickDrag

+ +

¿¹Á¦

+
+SendLevel 1
+Send btw{Space} ; "by the way "¸¦ »ý»ê.
+
+; º°µµÀÇ ½ºÅ©¸³Æ®¿¡ Á¤ÀÇÇÒ ¼ö ÀÖ½À´Ï´Ù:
+::btw::by the way
+
+ + + diff --git a/src/docs/commands/SendMode.htm b/src/docs/commands/SendMode.htm new file mode 100644 index 0000000..7d69b60 --- /dev/null +++ b/src/docs/commands/SendMode.htm @@ -0,0 +1,60 @@ + + + + +SendMode + + + + + + + +

SendMode [v1.0.43+]

+ +

Send¸¦ ±âº» (SendEvent)ÀÌ ¾Æ´Ï¶ó SendInput ¶Ç´Â SendPlay¿Í µ¿ÀǾî·Î ¸¸µì´Ï´Ù. ¶ÇÇÑ Click°ú MouseMove/Click/Drag°¡ ÁöÁ¤ÇÑ ¹æ¹ýÀ» »ç¿ëÇϵµ·Ï ¸¸µì´Ï´Ù.

+ +
SendMode Input|Play|Event|InputThenPlay
+

ù ¸Å°³º¯¼ö´Â ´ÙÀ½ ´Ü¾î Áß ÇϳªÀÔ´Ï´Ù:

+

+Event: ¸ðµç ½ºÅ©¸³Æ®°¡ ½ÃÀÛÇÒ ¶§ »ç¿ëÇÏ´Â ±âº» °ªÀÔ´Ï´Ù. Send, SendRaw, Click, ±×¸®°í MouseMove/Click/Drag¿¡ ´ëÇÏ¿© SendEvent ¹æ¹ýÀ» »ç¿ëÇÕ´Ï´Ù.

+

+Input: Send, SendRaw, Click, ±×¸®°í MouseMove/Click/Drag¿¡ ´ëÇÏ¿© SendInput ¹æ¹ýÀ¸·Î ÀüȯÇÕ´Ï´Ù .
+

+ +

+InputThenPlay [v1.0.43.02+]: À§¿Í µ¿ÀÏÇÕ´Ï´Ù. ±×·¯³ª SendInputÀÌ »ç¿ë ºÒ°¡´ÉÇÒ ¶§ Event ¸ðµå¿¡ ÀÇÁ¸Çϱ⠺¸´Ù, Play ¸ðµå¿¡ ÀÇÁ¸ÇÕ´Ï´Ù (¾Æ·¡ ÂüÁ¶). ÀÌ°ÍÀº ¶ÇÇÑ SendInputÀ» »ç¿ëÇÒ ¼ö ¾ø´Ù¸é SendInput ¸í·É¾î ÀÚüµµ Play ¸ðµå¿¡ ÀÇÁ¸ÇÏ°Ô ¸¸µì´Ï´Ù.

+

+Play: Send, SendRaw, Click, ±×¸®°í MouseMove/Click/Drag¿¡ ´ëÇÏ¿© SendPlay ¹æ¹ýÀ¸·Î ÀüȯÇÕ´Ï´Ù.
+

+ + +

³íÆò

+

+SendMode´Â Click ±×¸®°í MouseMove/Click/DragÀÇ ¸ðµåµµ º¯°æÇϱ⠶§¹®¿¡, ƯÁ¤ÇÑ ¸¶¿ì½º À̺¥Æ®¿¡ ´ëÇÏ¿© ´Ù¸¥ ¸ðµå¸¦ »ç¿ëÇÏ°í ½ÍÀ» ¶§°¡ ÀÖÀ» ¼ö ÀÖ½À´Ï´Ù. °¡Àå ½¬¿î ¹æ¹ýÀº {Click}À» »ç¿ëÇÏ´Â °ÍÀÔ´Ï´Ù. ¿¹¸¦ µé¾î:

+ +
SendEvent {Click 100, 200}  ; SendEventÀº ¿¹ÀüÀÇ ÀüÅëÀûÀÎ ¹æ½ÄÀÇ Å¬¸¯À» »ç¿ëÇÕ´Ï´Ù.
+

+SendMode°¡ ÀÚµ¿-½ÇÇà ¼½¼Ç (½ºÅ©¸³Æ®ÀÇ »ó´Ü)¿¡ »ç¿ëµÇ¸é, Å°º¸µå¿Í ¸¶¿ì½º ¸®¸ÊÇεµ ¿µÇâÀ» ¹Þ½À´Ï´Ù. ƯÈ÷, SendMode Play¸¦ ¸®¸ÊÇο¡ »ç¿ëÇÑ´Ù¸é, SendPlay ¸®¸ÊÇÎÀÇ ÇѰ踦 ÂüÁ¶ÇϽʽÿÀ.

+

+»õ·Î ±âµ¿µÈ ¾²·¹µå¸¶´Ù (¿¹¸¦ µé¾î ÇÖÅ°, ¸ÂÃã ¸Þ´º Ç׸ñ, ¶Ç´Â ŸÀÌ¸Ó ¼­ºê·çƾ) ÀÌ ¸í·É¾î¿¡ ´ëÇÑ ±âº» ¼³Á¤À» °¡Áö°í »õ·Ó°Ô ½ÃÀÛÇÕ´Ï´Ù. ÀÌ ±âº» °ªÀº ÀÚµ¿-½ÇÇà ¼½¼Ç(½ºÅ©¸³Æ®ÀÇ »ó´Ü)¿¡¼­ ÀÌ ¸í·É¾î¸¦ »ç¿ëÇÏ¸é ¹Ù²Ü ¼ö ÀÖ½À´Ï´Ù.

+ +

°ü·Ã Ç׸ñ

+

+Send, SetKeyDelay, SetMouseDelay, Click, MouseClick, MouseClickDrag, MouseMove

+ +

¿¹Á¦

+
SendMode Input
+SendMode InputThenPlay
+ + + diff --git a/src/docs/commands/SetBatchLines.htm b/src/docs/commands/SetBatchLines.htm new file mode 100644 index 0000000..1b0b0b4 --- /dev/null +++ b/src/docs/commands/SetBatchLines.htm @@ -0,0 +1,54 @@ + + + + +SetBatchLines + + + + + + + +

SetBatchLines

+ +

½ºÅ©¸³Æ®°¡ ¾ó¸¶³ª »¡¸® ½ÇÇàµÉÁö °áÁ¤ÇÕ´Ï´Ù (CPU ÀÌ¿ë¿¡ ¿µÇâÀ» ÁÜ).

+ +
SetBatchLines, 20ms
+SetBatchLines, LineCount
+

¸Å°³º¯¼ö

+
+ +
20ms
+

(20ms´Â ±×³É ¿¹Á¦ÀÏ »ÓÀÔ´Ï´Ù.) °ªÀÌ ms·Î ³¡³ª¸é, ½ºÅ©¸³Æ®°¡ ¾ó¸¶³ª ÀÚÁÖ ÀáÀÚ¾ß ÇÏ´ÂÁö ³ªÅ¸³À´Ï´Ù (°¢ ÀáÀڱ⸶´Ù 10 ms ±æÀÌÀÔ´Ï´Ù). ´ÙÀ½ ¿¹Á¦¿¡¼­, ½ºÅ©¸³Æ®´Â 20ms µ¿¾È ½ÇÇàÇÑ ÈÄ¿¡ ¸Å¹ø 10ms µ¿¾È Àâ´Ï´Ù: SetBatchLines, 20ms.

+ +
LineCount
+

10ms µ¿¾È ÀáÀÚ±â Àü¿¡ ½ÇÇàÇÒ ½ºÅ©¸³Æ® ÁÙÀÇ °³¼ö. °ªÀº ÃÖ´ë 9223372036854775807ÀÔ´Ï´Ù. ¶ÇÇÑ, ÀÌ ¸ðµå´Â ¾Õ ¹®´Ü¿¡¼­ 20ms ¸ðµå µ¿¾È ¼­·Î ¹èŸÀûÀÔ´Ï´Ù; Áï, ÇÑ ¹ø¿¡ ±× Áß¿¡ Çϳª¸¸ È¿°ú°¡ ÀÖ½À´Ï´Ù.

+ +
+ +

³íÆò

+

+SetBatchLines -1¸¦ »ç¿ëÇϸé Àý´ë ÀáÀÚÁö ¾Ê½À´Ï´Ù (Áï, ½ºÅ©¸³Æ®´Â ÃÖ´ë ¼Óµµ·Î ½ÇÇàµË´Ï´Ù).

+

+±âº» ¼³Á¤Àº 10msÀÔ´Ï´Ù. ´Ü v1.0.16 ÀÌÀü ¹öÀü¿¡¼­´Â ´ë½Å¿¡ 10 (ÁÙ)À» »ç¿ëÇß½À´Ï´Ù.

+

+ "ms" ¹æ¹ýÀº ¼Óµµ¿Í Çù·ÂÀÌ Áß¿äÇÑ ½ºÅ©¸³Æ®¿¡ ±ÇÀåÇÕ´Ï´Ù. ¿¹¸¦ µé¾î, ´ëºÎºÐÀÇ ½Ã½ºÅÛ¿¡¼­ ¼³Á¤ÀÌ 10msÀÌ¸é ½ºÅ©¸³Æ®´Â CPU ÈÞ½Ä ½Ã°£ÀÇ 50%¸¦ ³ÑÁö ¾Ê°Ô »ç¿ëÇÕ´Ï´Ù. ÀÌ·¸°Ô ÇÏ¸é ½ºÅ©¸³Æ®´Â ºü¸£°Ô ½ÇÇàµÇ¸é¼­ µ¿½Ã¿¡ ¿¹¸¦ µé¾î °ÔÀÓ°ú ºñµð¿ÀĸÃÄ/»ó¿¬°ú °°ÀÌ CPU¿¡ ¹Î°¨ÇÑ ÀÛ¾÷°ú ¿©ÀüÈ÷ ³ôÀº ¼öÁØÀÇ Çù·ÂÀ» À¯ÁöÇÒ ¼ö ÀÖ½À´Ï´Ù.

+

+³»Àå º¯¼ö A_BatchLines¿¡ ÇöÀç ¼³Á¤ÀÌ ´ã°Ü ÀÖ½À´Ï´Ù.

+

+½ºÅ©¸³Æ®ÀÇ ¼Óµµ´Â ¶ÇÇÑ ½ºÅ©¸³Æ®ÀÇ ¼ºÁú¿¡ µû¶ó ´ÙÀ½ ¸í·É¾îµé¿¡ ¿µÇâÀ» ¹Þ½À´Ï´Ù: SetWinDelay, SetControlDelay, SendMode, SetKeyDelay, SetMouseDelay, ±×¸®°í SetDefaultMouseSpeed.

+

+»õ·Î ±âµ¿µÈ ¾²·¹µå´Â (¿¹¸¦ µé¾î ÇÖÅ°, ¸ÂÃã ¸Þ´º Ç׸ñ, ¶Ç´Â ŸÀÌ¸Ó ¼­ºê·çƾ) ÀÌ ¸í·É¾î¿¡ ´ëÇÑ ±âº» ¼³Á¤À» °¡Áö°í »õ·Ó°Ô ½ÃÀÛÇÕ´Ï´Ù. ÀÌ ±âº»°ªÀº ÀÚµ¿ ½ÇÇà ¼½¼Ç (½ºÅ©¸³Æ®ÀÇ »ó´Ü)¿¡¼­ ÀÌ ¸í·É¾î¸¦ »ç¿ëÇÏ¸é ¹Ù²Ü ¼ö ÀÖ½À´Ï´Ù.

+ +

°ü·Ã Ç׸ñ

+

+SetWinDelay, SetControlDelay, SendMode, SetKeyDelay, SetMouseDelay, SetDefaultMouseSpeed, Critical

+ +

¿¹Á¦

+ +
SetBatchLines, 10ms 
+SetBatchLines, 1000
+ + + diff --git a/src/docs/commands/SetControlDelay.htm b/src/docs/commands/SetControlDelay.htm new file mode 100644 index 0000000..dbc7b45 --- /dev/null +++ b/src/docs/commands/SetControlDelay.htm @@ -0,0 +1,49 @@ + + + + +SetControlDelay + + + + + + + +

SetControlDelay

+ +

°¢ ÄÜÆ®·Ñ-º¯°æ ¸í·É¾î ´ÙÀ½¿¡ ÀϾ Áö¿¬ ½Ã°£À» ¼³Á¤ÇÕ´Ï´Ù.

+ +
SetControlDelay, Delay
+

¸Å°³º¯¼ö

+
+ +
Delay
+

¹Ð¸®ÃÊ ´ÜÀ§ ½Ã°£, Ç¥Çö½Ä °¡´É. -1À̸é Áö¿¬ ½Ã°£ÀÌ ÀüÇô ¾ø½À´Ï´Ù. 0ÀÌ¸é °¡´ÉÇÑ Àû°Ô Áö¿¬µË´Ï´Ù. ¼³Á¤ÇÏÁö ¾ÊÀ¸¸é ±âº»°ªÀ¸·Î 20ÀÔ´Ï´Ù.

+ +
+ +

³íÆò

+

+ªÀº Áö¿¬ ½Ã°£Àº (sleep) ÄÜÆ®·ÑÀ» º¯°æÇÏ´Â Control ¸í·É¾î¸¶´Ù ÀÚµ¿À¸·Î »ðÀԵ˴ϴÙ. Áï, Control, ControlMove, ControlClick, ControlFocus, ±×¸®°í ControlSetText (ControlSend´Â SetKeyDelay¸¦ »ç¿ë). +ÀÌ·¸°Ô ÇÏ´Â ÀÌÀ¯´Â ½ºÅ©¸³Æ®ÀÇ ½Å·Ú¼ºÀ» Çâ»ó½ÃÅ°±â À§Çؼ­ÀÔ´Ï´Ù. ÄÜÆ®·ÑÀº Á¾Á¾ ÀÌ·± ¸í·É¾î ¶§¹®¿¡ º¯°æÀÌ µÇ¸é "Àá½Ã ½¬´Â ½Ã°£"ÀÌ ÇÊ¿äÇÕ´Ï´Ù. ½¬´Â ½Ã°£ÀÌ ÀÖ¾î¾ß ÀÚ½ÅÀ» °»½ÅÇÒ ¼ö ÀÖ°í ½ºÅ©¸³Æ®°¡ Àü¼ÛÇÏ·Á°í ½ÃµµÇÏ´Â ´ÙÀ½ ¸í·É¾î¿¡ ÀÀ´äÇÒ ¼ö Àֱ⠶§¹®ÀÔ´Ï´Ù.

+

+Áö¿¬ ½Ã°£ÀÌ -1ÀÌ¶óµµ (ÀüÇô Áö¿¬ ½Ã°£ ¾øÀ½) Çã¿ëÇÏÁö¸¸, Àû¾îµµ 0Àº »ç¿ëÇϱ⸦ ±ÇÀåÇÕ´Ï´Ù. ±×·¯¸é CPU¿¡ ºÎÇÏ°¡ ¸¹¾Æµµ ½ºÅ©¸³Æ®°¡ ¿Ã¹Ù¸£°Ô ½ÇÇàµÉ °ÍÀ̶ó´Â º¸ÀåÀÌ ³ô¾ÆÁý´Ï´Ù.

+

+Áö¿¬ ½Ã°£ÀÌ 0ÀÌ¸é ³»ºÎÀûÀ¸·Î Sleep(0)À» ½ÇÇàÇÕ´Ï´Ù. ÀÌ´Â ±×¸¦ ÇÊ¿ä·Î ÇÏ´Â ´Ù¸¥ ÇÁ·Î¼¼½º¿¡ ½ºÅ©¸³Æ®ÀÇ ½Ã°£Á¶°¢(timeslice)ÀÇ ³ª¸ÓÁö¸¦ ³ª´©¾î ÁÝ´Ï´Ù. ³²´Â °Ô ¾øÀ¸¸é, Sleep(0)Àº ÀüÇô ÀáÀÚÁö ¾Ê½À´Ï´Ù.

+

+CPU°¡ ´À¸®°Å³ª ºÎÇÏ°¡ ¸¹À¸¸é, ¶Ç´Â ⠾ִϸÞÀ̼ÇÀÌ ÄÑÁ® ÀÖÀ¸¸é, ³ôÀº Áö¿¬ ½Ã°£ÀÌ ÇÊ¿äÇÕ´Ï´Ù.

+

+³»Àå º¯¼ö A_ControlDelay¿¡ ÇöÀç ¼³Á¤ÀÌ ´ã°Ü ÀÖ½À´Ï´Ù.

+

+»õ·Î ±âµ¿µÈ ¾²·¹µå (¿¹¸¦ µé¾î ÇÖÅ°, ¸ÂÃã ¸Þ´º Ç׸ñ, ¶Ç´Â ŸÀÌ¸Ó ¼­ºê·çƾ) ÀÌ ¸í·É¾î¿¡ ´ëÇÑ ±âº» ¼³Á¤À» °¡Áö°í »õ·Ó°Ô ½ÃÀÛÇÕ´Ï´Ù. ÀÌ ±âº» °ªÀº ÀÚµ¿-½ÇÇà ¼½¼Ç (½ºÅ©¸³Æ®ÀÇ »ó´Ü)¿¡¼­ ÀÌ ¸í·É¾î¸¦ »ç¿ëÇÏ¸é ¹Ù²Ü ¼ö ÀÖ½À´Ï´Ù.

+ +

°ü·Ã Ç׸ñ

+

+Control, ControlMove, ControlClick, ControlFocus, ControlSetText, SetWinDelay, SetKeyDelay, SetMouseDelay, SetBatchLines

+ +

¿¹Á¦

+
SetControlDelay, 0
+ + + diff --git a/src/docs/commands/SetDefaultMouseSpeed.htm b/src/docs/commands/SetDefaultMouseSpeed.htm new file mode 100644 index 0000000..7f11e3e --- /dev/null +++ b/src/docs/commands/SetDefaultMouseSpeed.htm @@ -0,0 +1,46 @@ + + + + +SetDefaultMouseSpeed + + + + + + + +

SetDefaultMouseSpeed

+ +

+ÁöÁ¤ÇÏÁö ¾ÊÀ¸¸é Click ±×¸®°í MouseMove/Click/Drag¿¡ »ç¿ëµÉ ¸¶¿ì½º ¼Óµµ¸¦ ¼³Á¤ÇÕ´Ï´Ù.

+ +
SetDefaultMouseSpeed, Speed
+

¸Å°³º¯¼ö

+
+ +
Speed
+

¸¶¿ì½º¸¦ À̵¿ÇÏ´Â ¼Óµµ. ¹üÀ§´Â 0 (°¡Àå ºü¸§)ºÎÅÍ 100 (°¡Àå ´À¸²)±îÁö. ÁÖÀÇ: ¼Óµµ°¡ 0ÀÌ¸é ¸¶¿ì½º¸¦ ¼ø°£ À̵¿ ½Ãŵ´Ï´Ù. ÀÌ ¸Å°³º¯¼ö´Â Ç¥Çö½ÄÀÏ ¼ö ÀÖ½À´Ï´Ù.

+ +
+ +

³íÆò

+

+SendInput/Play ¸ðµå¿¡ ´ëÇÏ¿© SetDefaultMouseSpeed´Â ¹«½ÃµË´Ï´Ù; ÀÌ ¸ðµå¿¡¼­´Â ¸¶¿ì½º°¡ ¼ø°£ À̵¿ÇÕ´Ï´Ù (±×·¸Áö¸¸, SetMouseDelay´Â SendPlay¿¡ Àû¿ëµÇ´Â ¸ðµå°¡ ÀÖ½À´Ï´Ù). ½Ã°¢ÀûÀ¸·Î ¸¶¿ì½º¸¦ ´õ ´À¸®°Ô À̵¿ÇÏ°í ½ÍÀ¸¸é -- ¿¹¸¦ µé¾î ûÁßÀ» À§ÇÏ¿© µ¥¸ð¸¦ ¼öÇàÇÏ´Â ½ºÅ©¸³Æ®¶ó¸é -- (¼±ÅÃÀûÀ¸·Î BlockInput°ú ÇÔ²²) SendEvent {Click 100, 200} ¶Ç´Â SendMode Event¸¦ »ç¿ëÇϽʽÿÀ.

+

+ÀÌ ¸í·É¾ï »ç¿ëµÇÁö ¾ÊÀ¸¸é, ±âº» ¸¶¿ì½º ¼Óµµ´Â 2ÀÔ´Ï´Ù. ³»Àå º¯¼ö A_DefaultMouseSpeed¿¡ ÇöÀç ¼³Á¤ÀÌ ´ã°Ü ÀÖ½À´Ï´Ù.

+

+¸í·É¾î MouseClick, MouseMove, ±×¸®°í MouseClickDrag´Â ¸ðµÎ ±âº» ¸¶¿ì½º ¼Óµµ¸¦ ¿À¹ö¶óÀ̵å ÇÒ ¸Å°³º¯¼ö°¡ ÀÖ½À´Ï´Ù.

+

+Speed°¡ 0 º¸´Ù Å©¸é, SetMouseDelayµµ ¸¶¿ì½º°¡ ¸ñÇ¥¸¦ ÇâÇØ Á¶±Ý¾¿ À̵¿ÇÒ ¶§¸¶´Ù Áö¿¬ ½Ã°£À» µÎ¾î¼­ ¼Óµµ¿¡ ¿µÇâÀ» ¹ÌĨ´Ï´Ù.

+

+»õ·Î ±âµ¿µÇ´Â ¾²·¹µå´Â (¿¹¸¦ µé¾î ÇÖÅ°, ¸ÂÃã ¸Þ´º Ç׸ñ, ¶Ç´Â ŸÀÌ¸Ó ¼­ºê·çƾ) ÀÌ ¸í·É¾î¿¡ ´ëÇÑ ±âº» ¼³Á¤À» °¡Áö°í »õ·Ó°Ô ½ÃÀÛÇÕ´Ï´Ù. ÀÌ ±âº»°ªÀº ÀÚµ¿ ½ÇÇà ¼½¼Ç (½ºÅ©¸³Æ®ÀÇ »ó´Ü)¿¡¼­ ÀÌ ¸í·É¾î¸¦ »ç¿ëÇÏ¿© º¯°æÇÒ ¼ö ÀÖ½À´Ï´Ù.

+ +

°ü·Ã Ç׸ñ

+

+SetMouseDelay, SendMode, Click, MouseClick, MouseMove, MouseClickDrag, SetWinDelay, SetControlDelay, SetKeyDelay, SetKeyDelay

+

¿¹Á¦

+
SetDefaultMouseSpeed, 0 ; ¸¶¿ì½º¸¦ ¼ø°£ À̵¿ ½Ãŵ´Ï´Ù.
+ + + diff --git a/src/docs/commands/SetEnv.htm b/src/docs/commands/SetEnv.htm new file mode 100644 index 0000000..1ffad36 --- /dev/null +++ b/src/docs/commands/SetEnv.htm @@ -0,0 +1,52 @@ + + + + +SetEnv + + + + + + + +

SetEnv (Var = Value)

+ +

ÁöÁ¤µÈ °ªÀ» º¯¼ö¿¡ ÇÒ´çÇÕ´Ï´Ù.

+ +
SetEnv, Var, Value
+Var = Value
+

¸Å°³º¯¼ö

+
+ +
Var
+

ValueÀ» ÀúÀåÇÒ º¯¼öÀÇ À̸§.

+ +
Value
+

ÀúÀåÇÒ ¼ýÀÚ ¶Ç´Â ¹®ÀÚ¿­. ¹®ÀÚ¿­ÀÌ ±æ¸é, °è¼Ó ¼½¼ÇÀ» ¼ö´ÜÀ¸·Î ´õ ªÀº ÁÙ·Î ³ª´­ ¼ö ÀÖ½À´Ï´Ù. ÀÌ·¸°Ô ÇÏ¸é °¡µ¶¼º°ú À¯Áö°ü¸®¼ºÀÌ Çâ»óµË´Ï´Ù.

+ +
+ +

³íÆò

+

±âº»°ªÀ¸·Î, Value ¾Õ µÚÀÇ ½ºÆäÀ̽º³ª ÅÇÀº Var¿¡¼­ Á¦¿ÜµË´Ï´Ù. À̸¦ ÇÇÇÏ·Á¸é, AutoTrim Off¿¡ ±â¼úµÈ ¹æ¹ýÀ» »ç¿ëÇϽʽÿÀ.

+

+"SetEnv"¶ó´Â À̸§Àº È¥¶õÀ» ÁÝ´Ï´Ù. ÀÌ°ÍÀº AutoIt v2·ÎºÎÅÍ ¹°·Á ¹ÞÀº À¯»êÀÔ´Ï´Ù. + +AutoIt v2¿Í ´Ù¸£°Ô, AutoHotkey´Â º¯¼ö¸¦ ȯ°æ¿¡ ÀúÀåÇÏÁö ¾Ê½À´Ï´Ù. ¼öÇ༺´ÉÀÌ ÁÁÁö ¾ÊÀ» »Ó¸¸ ¾Æ´Ï¶ó OS°¡ ȯ°æ º¯¼öÀÇ ±æÀ̸¦ 32 KB·Î Á¦ÇÑÇϱ⠶§¹®ÀÔ´Ï´Ù. ȯ°æ º¯¼ö¿¡ ¾²·Á¸é SetEnv ´ë½Å¿¡ EnvSetÀ» »ç¿ëÇϽʽÿÀ.

+

+°Å´ëÇÑ º¯¼ö°¡ Á¡À¯ÇÑ ¸Þ¸ð¸®´Â ¾Æ¹« °Íµµ ¼³Á¤ÇÏÁö ¾ÊÀ¸¸é ÇØÁ¦ÇÒ ¼ö ÀÖ½À´Ï´Ù. ¿¹, Var =.

+

+ÀÌ ¸í·É¾î ±×¸®°í OutputVar¸¦ ¹Þ´Â ±âŸ ¸í·É¾î·Î ÀÇ»ç-¹è¿­À» »ý¼ºÇÒ ¼ö ÀÖ½À´Ï´Ù. OuputVar¿¡ ¶Ç´Ù¸¥ º¯¼ö¸¦ °¡¸®Å°´Â ÂüÁ¶¸¦ ´ãµµ·Ï ¸¸µé¸é µË´Ï´Ù. ¿¹, array%i% = 123. ´õ ÀÚ¼¼ÇÑ °ÍÀº ¹è¿­À» ÂüÁ¶ÇϽʽÿÀ.

+ +

°ü·Ã Ç׸ñ

+

+AutoTrim, EnvSet, EnvAdd, EnvSub, EnvMult, EnvDiv, If, ¹è¿­

+ +

¿¹Á¦

+
Var1 = ÀÌ°ÍÀº ¹®ÀÚ¿­ÀÔ´Ï´Ù.
+Color2 = 450
+Color3 = %Var1%
+Array%i% = %A_TICKCOUNT%
+ + + diff --git a/src/docs/commands/SetExpression.htm b/src/docs/commands/SetExpression.htm new file mode 100644 index 0000000..11371c8 --- /dev/null +++ b/src/docs/commands/SetExpression.htm @@ -0,0 +1,61 @@ + + + + +Var := expression + + + + + + + +

Var := expression

+ +

Ç¥Çö½ÄÀ» Æò°¡ÇØ ±× °á°ú¸¦ º¯¼ö¿¡ ÀúÀåÇÕ´Ï´Ù.

+ +
Var := expression
+

¸Å°³º¯¼ö

+
+ +
Var
+

Ç¥Çö½ÄÀÇ °á°ú¸¦ ÀúÀåÇÒ º¯¼öÀÇ À̸§.

+ +
Expression
+

ÀÚ¼¼ÇÑ °ÍÀº Ç¥Çö½Ä°ú ¾Æ·¡ÀÇ ¿¹Á¦¸¦ ÂüÁ¶ÇϽʽÿÀ.

+ +
+ +

³íÆò

+

:= ¿¬»êÀÚ´Â ´ÙÀ½°ú °°ÀÌ °£´ÜÇÑ °æ¿ì¿¡ = ¿¬»êÀÚó·³ ¶È°°ÀÌ ºü¸£°Ô ¼öÇàµÇµµ·Ï ÃÖÀûÈ­ µË´Ï´Ù:

+
x := y  ; ¼öÇ༺´ÉÀº x = %y%¿Í °°À½
+x := 5  ; ¼öÇ༺´ÉÀº x = 5¿Í °°À½.
+x := "literal string"  ; ¼öÇ༺Àº x = literal string°ú °°À½.
+

+´Ü¾î true¿Í false´Â ³»Àå »ó¼ö·Î¼­ °¢°¢ 1°ú 0À» ´ã°í ÀÖ½À´Ï´Ù. ´ÙÀ½ ¿¹Á¦¿Í °°ÀÌ ½ºÅ©¸³Æ®¸¦ ´õ Àб⠽±°Ô ¸¸µé ¼ö ÀÖ½À´Ï´Ù:

+ +
CaseSensitive := false
+ContinueSearch := true
+

+ÀÌ ¸í·É¾î¿Í ±×¸®°í OuputVar¸¦ ¹Þ´Â ´Ù¸¥ ¸í·É¾î·Î ÀÇ»ç-¹è¿­À» ¸¸µé ¼ö ÀÖ½À´Ï´Ù. OutputVar¿¡ ¶Ç´Ù¸¥ º¯¼ö¸¦ °¡¸®Å°´Â ÂüÁ¶¸¦ ´ãµµ·Ï ¸¸µé¸é µË´Ï´Ù. ¿¹, Array%i% := Var/100 + 5. ´õ ÀÚ¼¼ÇÑ Á¤º¸´Â ¹è¿­À» ÂüÁ¶ÇϽʽÿÀ.

+ +

°ü·Ã Ç׸ñ

+

+Ç¥Çö½Ä, IF (Ç¥Çö½Ä), Functions, SetEnv, EnvSet, EnvAdd, EnvSub, EnvMult, EnvDiv, If, ¹è¿­

+ +

¿¹Á¦

+
Var := 3
+Var := "literal string"
+Var := Price * (1 - Discount/100)
+
+Finished := not Done or A_Index > 100
+if not Finished
+{
+    FileAppend, %NewText%`n, %TargetFile%
+    return
+}
+else
+    ExitApp
+ + + diff --git a/src/docs/commands/SetFormat.htm b/src/docs/commands/SetFormat.htm new file mode 100644 index 0000000..657ca96 --- /dev/null +++ b/src/docs/commands/SetFormat.htm @@ -0,0 +1,108 @@ + + + + +SetFormat + + + + + + + +

SetFormat

+ +

¼öÇÐ ¿¬»êÀ¸·Î »ý¼ºµÈ ºÎµ¿ ¼Ò¼öÁ¡ ¼ö³ª Á¤¼öÀÇ Çü½ÄÀ» ¼³Á¤ÇÕ´Ï´Ù.

+ +
SetFormat, NumberType, Format
+

¸Å°³º¯¼ö

+
+ +
NumberType
+

¹Ýµå½Ã ´ÙÀ½ Áß ÇϳªÀÔ´Ï´Ù: IntegerFast, FloatFast, Integer, ¶Ç´Â Float (µÎ °³ÀÇ ºü¸¥ ¸ðµå´Â v1.0.48+¸¦ ¿ä±¸ÇÕ´Ï´Ù; ³íÆò ÂüÁ¶).

+ +
Format
+

NumberType Integer ¶Ç´Â IntegerFast¿¡ ´ëÇÏ¿©, ½ÊÀ°Áø¼ö´Â H ¶Ç´Â HEX¸¦ ÁöÁ¤Çϰųª, ¶Ç´Â ½ÊÁø¼öÀ̸é D¸¦ ÁöÁ¤ÇϽʽÿÀ. ½ÊÀ°Áø¼ö´Â ¸ðµÎ Á¢µÎ»ç 0x·Î ½ÃÀÛÇÕ´Ï´Ù (¿¹, 0xFF). [AHK_L 42+]: ½ÊÀ°Áø Á¤¼ö´Â A-F ÀÚ¸®ÀÇ Çü½ÄÀÌ ÀÌ ¸Å°³º¯¼ö°¡ hÀÌ¸é ¼Ò¹®ÀÚÀÌ°í HÀÌ¸é ´ë¹®ÀÚÀÔ´Ï´Ù.

+

NumberType Float ¶Ç´Â FloatFast¿¡ ´ëÇÏ¿©, TotalWidth.DecimalPlaces¸¦ ÁöÁ¤ÇϽʽÿÀ (¿¹, 0.6). + + v1.0.46.11+¿¡¼­, ±âÈ£ "e"¸¦ Ãß°¡ÇØ °úÇРǥ±â¹ýÀ» ¸¸µé¾î ³¾ ¼ö ÀÖ½À´Ï´Ù; ¿¹, 0.6e ¶Ç´Â 0.6E + (´ë¹®ÀÚ¸¦ »ç¿ëÇÏ¸é °¢ ¼ýÀÚ¿¡ ¼Ò¹®ÀÚ°¡ ¾Æ´Ï¶ó ´ë¹®ÀÚ E¸¦ »ý»êÇÕ´Ï´Ù). + + ÁÖÀÇ: AutoHotkey 1.x¿¡¼­, °úÇÐÀû Ç¥±â¹ýÀº ¹Ýµå½Ã ¼Ò¼ö Á¡À» Æ÷ÇÔÇØ¾ß ÇÕ´Ï´Ù; ¿¹, 1.0e1´Â À¯È¿ÇÏÁö¸¸ 1e1´Â À¯È¿ÇÏÁö ¾Ê½À´Ï´Ù.

+

+ TotalWidth´Â ÀüÇüÀûÀ¸·Î 0ÀÔ´Ï´Ù. ±× ¼ýÀÚ¿¡ ºó °ø°£ÀÌ Àְųª 0À¸·Î µ¡´ë¸é ¾ÈµÈ´Ù´Â ¶æÀÔ´Ï´Ù. ´õ ³ôÀº °ªÀ» »ç¿ëÇϸé, ±× ³Êºñ¸¸Å­ ¸¸µé±â À§ÇØ ¼ýÀÚµéÀº ½ºÆäÀ̽º³ª 0À¸·Î µ¡´ë¾îÁý´Ï´Ù (³íÆò ÂüÁ¶).

+

+ DecimalPlaces´Â º¸¿©ÁÙ ¼Ò¼ö Á¡ ÀÚ¸®ÀÇ °¹¼öÀÔ´Ï´Ù. (¹Ý¿Ã¸²ÀÌ ÀϾ´Ï´Ù). ºñ¾î Àְųª 0À̸é, ¼Ò¼öÁ¡ ºÎºÐµµ ¼Ò¼öÁ¡µµ º¸¿©ÁÖÁö ¾Ê½À´Ï´Ù. Áï, ºÎµ¿ ¼Ò¼öÁ¡ ¼öÀÇ °á°ú´Â Á¤¼ö·Î È­¸é¿¡ º¸¿©ÁÝ´Ï´Ù. ½ÃÀÛ ±âº» °ªÀº 6ÀÔ´Ï´Ù.

+

Padding: ¸¸¾à TotalWidth°¡ ÆеùÀ» ¾ß±âÇÒ ¸¸Å­ ³ô´Ù¸é, ½ºÆäÀ̽º°¡ ±× ¿ÞÂÊ¿¡ Ãß°¡µË´Ï´Ù; Áï, °¢ ¼ýÀÚ´Â ¿À¸¥ÂÊÀ¸·Î Á¤·ÄµË´Ï´Ù. ´ë½Å¿¡ ¿ÞÂÊ Á¤·ÄÀ» ÇÏ·Á¸é, TotalWidth ¾Õ¿¡ ¸¶À̳ʽº »çÀÎÀ» Ãß°¡ÇϽʽÿÀ. ½ºÆäÀ̽º ´ë½Å¿¡ 0À¸·Î µ¡´ë·Á¸é, TotalWidth ¾Õ¿¡ 0À» Ãß°¡ÇϽʽÿÀ (¿¹, 06.2).

+ +
+ +

ºü¸¥ ¸ðµå vs. ´À¸° ¸ðµå

+v1.0.48+¿¡¼­, Integer ´ë½Å¿¡ IntegerFast ±×¸®°í Float ´ë½Å¿¡ FloatFast¸¦ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. + +

+´À¸° ¸ðµåÀÎ "Integer" ¶Ç´Â "Float"°¡ ½ºÅ©¸³Æ® ¾îµð¼­µç »ç¿ëµÈ´Ù¸é, SetFormat ÁÙÀÌ ÀüÇô ½ÇÇàµÇÁö ¾Ê´õ¶óµµ, Á¤¼ö³ª ºÎµ¿ ¼Ò¼öÁ¡ ¼öÀÇ Ä³½¬´Â (°¢°¢) ½ºÅ©¸³Æ®°¡ ±âµ¿ÇÏ´Â ¼ø°£ ²¨Áý´Ï´Ù.

+ +

ºÎµ¿ ¼Ò¼öÁ¡ Çü½Ä

+

+v1.0.48+¿¡¼­, ºÎµ¿ ¼Ò¼öÁ¡ º¯¼ö´Â ´ë·« ³»ºÎÀûÀ¸·Î 15 ÀÚ¸®ÀÇ Á¤¹Ðµµ¸¦ °¡Áý´Ï´Ù. ´Ü, SetFormat Float (Áï, ´À¸° ¸ðµå)°¡ ½ºÅ©¸³Æ®¿¡ Á¸ÀçÇÏ´Â °æ¿ì´Â ¿¹¿ÜÀÔ´Ï´Ù. ÀÌ °æ¿ì ÀúÀåµÈ Á¤¹ÐµµÀÇ ºÎµ¿ ¼Ò¼öÁ¡ ¼ö´Â DecimalPlaces¿¡ ÀÇÇÏ¿© °áÁ¤µË´Ï´Ù (pre-1.0.48 ¹öÀü°ú °°½À´Ï´Ù). ´Ù¸¥ ¸»·Î, ºÎµ¿ ¼Ò¼öÁ¡ ¼öÀÇ °á°ú°¡ ÀÏ´Ü º¯¼ö ¾È¿¡ ÀúÀåµÇ¸é, ¿©ºÐÀÇ Á¤¹Ðµµ´Â ¼Ò½ÇµË´Ï´Ù. ±×¸®°í SetFormat, Float, 0.15¿Í °°Àº °ÍÀ¸·Î ´Ù½Ã °è»êÀ» ÇÏÁö ¾Ê°í´Â ´Ù½Ã ¿äûÇÒ ¼ö ¾ø½À´Ï´Ù. ÀÌ·± Á¤¹ÐµµÀÇ ¼Õ½ÇÀ» ÇÇÇÏ·Á¸é, SetFormat FloatÀ» ½ºÅ©¸³Æ®¿¡ »ç¿ëÇÏÁö ¸¶½Ê½Ã¿À. ´Ù½Ã ¸»ÇØ, ´ë½Å SetFormat FloatFast¸¦ »ç¿ëÇϽʽÿÀ.

+

+´À¸° ¸ðµåÀÌµç ºü¸¥ ¸ðµåÀÌµç »ó°ü ¾øÀÌ, ºÎµ¿ ¼Ò¼öÁ¡ ¼ö°¡ °á°úÀÌ°í º¯¼ö´Â ÅؽºÆ® ¹®ÀÚ¿­·Î º¯È¯µÇ°Å³ª º¸¿©Áú ¶§ DecimalPlaces·Î ³»¸²µË´Ï´Ù. (¿¹, MsgBox ¶Ç´Â FileAppend). + +¿Ïº®ÇÑ Á¤¹Ðµµ¸¦ º¸·Á¸é, ´ÙÀ½ SetFormat, FloatFast, 0.15°ú °°ÀÌ »ç¿ëÇϽʽÿÀ.

+

+ºÎµ¿ ¼Ò¼öÁ¡ ¼ö¸¦ Á¤¼ö·Î º¯È¯ÇÏ·Á¸é, Var:=Round(Var), Var:=Floor(Var), ¶Ç´Â Var:=Ceil(Var)¸¦ »ç¿ëÇϽʽÿÀ. Á¤¼ö¸¦ ºÎµ¿ ¼Ò¼öÁ¡ ¼­·Î º¯È¯ÇÏ·Á¸é, 0.0À» ´õÇϽʽÿÀ (¿¹, Var+=0.0) ¶Ç´Â ´ÙÀ½ MyFloat:=Round(MyInteger, 1)ó·³ »ç¿ëÇϽʽÿÀ.

+

+³»Àå º¯¼ö A_FormatFloat¿¡´Â ÇöÀç ºÎµ¿ ¼Ò¼öÁ¡ Çü½ÄÀÌ Æ÷ÇԵǾî ÀÖ½À´Ï´Ù (¿¹, 0.6).

+ +

Á¤¼ö Æ÷¸Ë

+

+Á¤¼ö °á°ú´Â º¸Åë ½ÊÀ°Áø¼ö°¡ ¾Æ´Ï¶ó ½ÊÁø¼ö·Î º¸¿©ÁÝ´Ï´Ù. ½ÊÀ°Áø¼ö·Î ÀüȯÇÏ·Á¸é, SetFormat, IntegerFast, Hex¸¦ »ç¿ëÇϽʽÿÀ. ÀÌ°ÍÀº µµ Á¤¼ö¸¦ ½ÊÁø¼ö¿¡¼­ ½ÊÀ°Áø¼ö·Î (¶Ç´Â ±× ¹Ý´ë·Î) º¯È­Çϴµ¥¿¡µµ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. ÀÌ ÆäÀÌÁö ¸Ç ¾Æ·¡¿¡ ¿¹Á¦¿¡ º¸¿©ÁÝ´Ï´Ù.

+

+½ºÅ©¸³Æ®¿¡ ÁöÁ¤µÈ ±âÈ£ ±×´ë·ÎÀÇ Á¤¼ö´Â ½ÊÀ°Áø¼ö ¶Ç´Â ½ÊÁø¼ö·Î ¾µ ¼ö ÀÖ½À´Ï´Ù. ½ÊÀ°Áø Á¤¼ö´Â ¸ðµÎ Á¢µÎ»ç 0x·Î ½ÃÀÛÇÕ´Ï´Ù (¿¹, 0xA9). ¼ýÄ¡ °ªÀÌ ¿¹»óµÇ´Â °÷ÀÌ¸é ¾îµðµç »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î, Sleep 0xFF´Â Sleep 255¿Í µ¿µîÇÕ´Ï´Ù. SetFormatÀ¸·Î ¼³Á¤µÈ ÇöÀç Á¤¼öÀÇ Çü½Ä¿¡ »ó°üÀÌ ¾ø½À´Ï´Ù.

+

+AutoHotkey´Â 64-ºñÆ® ºÎÈ£ÀÖ´Â Á¤¼ö¸¦ Áö¿øÇÕ´Ï´Ù. ±× ¹üÀ§´Â -9223372036854775808 (-0x8000000000000000)ºÎÅÍ 9223372036854775807 (0x7FFFFFFFFFFFFFFF) ±îÁöÀÔ´Ï´Ù.

+

+³»Àå º¯¼ö A_FormatInteger¿¡ ÇöÀç Á¤¼ö Çü½ÄÀÌ µé¾î ÀÖ½À´Ï´Ù (H ¶Ç´Â D).

+ +

ÃÑÆò

+

+SetFormatÀÌ ½ºÅ©¸³Æ®¿¡ »ç¿ëµÇÁö ¾ÊÀ¸¸é, Á¤¼ö´Â ±âº»°ªÀÌ ½ÊÁø Çü½ÄÀÌ°í, ºÎµ¿ ¼Ò¼öÁ¡ ¼ö´Â ±âº»°ªÀÌ TotalWidth.DecimalPlaces = 0.6ÀÔ´Ï´Ù. + +»õ·Î ±âµ¿µÈ ¾²·¹µå´Â ¸ðµÎ (¿¹¸¦ µé¾î ÇÖÅ°, ¸ÂÃã ¸Þ´º Ç׸ñ, ¶Ç´Â ŸÀÌ¸Ó ¼­ºê·çƾ) ´ÙÀ½ ±âº» °ªÀ» °¡Áö°í »õ·Ó°Ô ½ÃÀÛÇÕ´Ï´Ù; ±×·¯³ª ÀÌ ±âº»°ªÀº ÀÚµ¿ ½ÇÇà ¼½¼Ç (½ºÅ©¸³Æ®ÀÇ »ó´Ü)¿¡¼­ SetFormat¸¦ »ç¿ëÇÏ¿© ¹Ù²Ü ¼ö ÀÖ½À´Ï´Ù.

+

+x=%y%¿Í °°Àº ¿¹Àü-½ºÅ¸ÀÏÀÇ ÇÒ´çÀº ¾Õ µÚ¿¡ ½ºÆäÀ̽º¸¦ »ý·«ÇÕ´Ï´Ù (Áï, Æеù). À̸¦ ÇÇÇÏ·Á¸é, AutoTrim ¶Ç´Â ½ÖÁ¡-µîÈ£ ¿¬»êÀÚ¸¦ »ç¿ëÇϽʽÿÀ (¿¹, x:=y).

+

+"if var is number/integer/float"¸¦ »ç¿ëÇÏ¸é º¯¼ö¿¡ ¼öÄ¡ °ªÀÌ µé¾î ÀÖ´ÂÁö ¾Ë¾Æ³¾ ¼ö ÀÖ½À´Ï´Ù.

+

+ºÎµ¿ ¼Ò¼öÁ¡ ¼ö ¿¬»êÀ» ÇÒ ÇÊ¿ä ¾øÀÌ Á¤¼ö¿¡ 0 ¶Ç´Â ½ºÆäÀ̽º¸¦ µ¡´ë·Á¸é, ´ÙÀ½ ¿¹Á¦¸¦ µû¸£½Ê½Ã¿À:

+ +
Var := "          " . Var     ; µû¿ÈÇ¥ ¾È¿¡ 10°³ÀÇ ½ºÆäÀ̽º°¡ µé¾î ÀÖ½À´Ï´Ù.  0À¸·Î µ¡´ë·Á¸é, ½ºÆäÀ̽º¸¦ 0À¸·Î ±³Ã¼ÇϽʽÿÀ.
+StringRight, Var, Var, 10  ; Var ¾È¿¡ ÀÖ´Â ¼ýÀÚ¿¡ ½ºÆäÀ̽º¸¦ µ¡´ë ÃÑ ³Êºñ°¡ 10 ¹®ÀÚ¿¡ ¸Âµµ·Ï ¸¸µì´Ï´Ù.
+Var := SubStr("          " . Var, -9)  ; À§ÀÇ µÎ ÁÙÀ» ÇÑ ÁÙ·Î ´ë½ÅÇÕ´Ï´Ù.
+ +

°ü·Ã Ç׸ñ

+

Format(), Ç¥Çö½Ä ÇÒ´ç (:=), EnvAdd, EnvSub, EnvMult, EnvDiv, AutoTrim, if var is type

+ +

¿¹Á¦

+
Var = 11.333333
+SetFormat, float, 6.2
+Var -= 1  ; Var¿¡ 10.33À» ¼³Á¤ÇÕ´Ï´Ù. ÃÑ ³Êºñ°¡ 6À̹ǷΠ¾Õ¿¡ ½ºÆäÀ̽º°¡ Çϳª ÀÖ½À´Ï´Ù.
+SetFormat, float, 0.2
+Var += 1  ; Var¿¡ 11.33À» ¼³Á¤ÇÕ´Ï´Ù. ¾Õ¿¡ ½ºÆäÀ̽º°¡ ¾ø½À´Ï´Ù.
+SetFormat, float, 06.0
+Var += 0  ; Var¿¡ 000011À» ¼³Á¤ÇÕ´Ï´Ù.
+
+; ½ÊÁø Á¤¼ö¸¦ ½ÊÀ°Áø Çü½ÄÀ¸·Î º¯È¯ÇÕ´Ï´Ù:
+SetFormat, IntegerFast, hex
+Var += 0  ; Var¿¡ 0xb¸¦ ¼³Á¤ÇÕ´Ï´Ù (ÀÌÀü¿¡ 11ÀÌ µé¾î ÀÖ¾ú½À´Ï´Ù).
+Var .= ""  ; "ºü¸¥" ¸ðµåÀ̱⠶§¹®¿¡ ÇʼöÀÔ´Ï´Ù.
+SetFormat, IntegerFast, d
+ + + diff --git a/src/docs/commands/SetKeyDelay.htm b/src/docs/commands/SetKeyDelay.htm new file mode 100644 index 0000000..39409bb --- /dev/null +++ b/src/docs/commands/SetKeyDelay.htm @@ -0,0 +1,64 @@ + + + + +SetKeyDelay + + + + + + + +

SetKeyDelay

+ +

Send¿Í ControlSend¿¡ ÀÇÇÑ °¢ Å°´­¸²¸¶´Ù ÀϾ Áö¿¬ ½Ã°£À» ¼³Á¤ÇÕ´Ï´Ù.

+ +
SetKeyDelay [, Delay, PressDuration, Play]
+

¸Å°³º¯¼ö

+
+ +
Delay
+

¹Ð¸®ÃÊ ½Ã°£, Ç¥Çö½Ä °¡´É. -1À̸é Áö¿¬ ½Ã°£ÀÌ ÀüÇô ¾ø°í 0ÀÌ¸é °¡´ÉÇϸé Àû°Ô Áö¿¬µË´Ï´Ù (±×·¸Áö¸¸, Play ¸Å°³º¯¼ö°¡ Á¸ÀçÇϸé, 0°ú -1 ¸ðµÎ Áö¿¬ ½Ã°£ÀÌ ¾ø½À´Ï´Ù). ÀÌ ¸Å°³º¯¼ö¸¦ ºñ¿ö µÎ¸é ÇöÀç Delay¸¦ À¯ÁöÇÕ´Ï´Ù.

+

+ SetKeyDelay°¡ ½ºÅ©¸³Æ®¿¡ »ç¿ëµÇÁö ¾ÊÀ¸¸é, ±âº» Delay´Â ÀüÅëÀûÀÎ SendEvent ¸ðµå¿¡ ´ëÇÏ¿© 10ÀÔ´Ï´Ù. SendPlay mode¿¡ ´ëÇؼ­ ±âº» Delay´Â -1ÀÔ´Ï´Ù. µÎ ¸ðµå ¸ðµÎ ±âº» PressDuration (¾Æ·¡ ÂüÁ¶)´Â -1ÀÔ´Ï´Ù.

+ +
PressDuration
+

¾î¶² °ÔÀÓ°ú ±âŸ Ư¼öÇÑ ¾îÇø®ÄÉÀ̼ÇÀº °¢ Å°´­¸² ¾È¿¡¼­ Áö¿¬ ½Ã°£À» ¿ä±¸ÇÕ´Ï´Ù; Áï, Å°°¡ ´­¸° ÈÄ ´Ù½Ã ¶¼±â ±îÁö ±× »çÀÌ¿¡ Áö¿¬ ½Ã°£À» ¿ä±¸ÇÒ ¼ö ÀÖ½À´Ï´Ù.

+

-1À̸é Áö¿¬ ½Ã°£ÀÌ ÀüÇô ¾ø½À´Ï´Ù (±âº» °ª). ±×¸®°í 0ÀÌ¸é °¡´ÉÇϸé Àû°Ô Áö¿¬µË´Ï´Ù (±×·¸Áö¸¸, Play ¸Å°³º¯¼ö°¡ Á¸ÀçÇϸé, 0°ú -1 ¸ðµÎ Áö¿¬ ½Ã°£ÀÌ ¾ø½À´Ï´Ù). ÀÌ ¸Å°³º¯¼ö¸¦ »ý·«Çϸé ÇöÀç PressDurationÀÌ ¹Ù²îÁö ¾Ê½À´Ï´Ù.

+

ÁÖÀÇ: PressDuration´Â Àü¼Û ÁßÀÎ Å°¸¦ Áö¿øÇϱâ À§ÇÏ¿© ¼ö½Ä Å° »óŸ¦ º¯°æÇÑ ´ÙÀ½¿¡µµ Áö¿¬ ½Ã°£À» »ý»êÇÕ´Ï´Ù (CTRL, ALT, SHIFT, ±×¸®°í WIN).

+

+ ÀÌ ¸Å°³º¯¼ö´Â Ç¥Çö½ÄÀÏ ¼ö ÀÖ½À´Ï´Ù.

+ +
Play
+ [v1.0.43+]
+

´Ü¾î Play´Â À§ÀÇ ¼³Á¤À» ÀüÅëÀûÀÎ SendEvent ¸ðµå°¡ ¾Æ´Ï¶ó SendPlay ¸ðµå¿¡ Àû¿ëÇÕ´Ï´Ù. ½ºÅ©¸³Æ®°¡ ÀÌ ¸Å°³º¯¼ö¸¦ »ç¿ëÇÏÁö ¾ÊÀ¸¸é, Áö¿¬ ½Ã°£Àº SendPlay¿¡ ´ëÇÏ¿© ¾ðÁ¦³ª -1/-1ÀÔ´Ï´Ù.

+ +
+ +

³íÆò

+

ÁÖÀÇ: SendInputÀº SetKeyDelay¸¦ ÁؼöÇÏÁö ¾Ê½À´Ï´Ù; ±× ¸ðµå¿¡¼­´Â Å°´­¸² »çÀÌ¿¡ Áö¿¬ ½Ã°£ÀÌ ÀüÇô ¾ø½À´Ï´Ù. ÀÌ´Â SendMode InputÀÌ ÄÑÁ® ÀÖÀ» ¶§ Sendµµ ¸¶Âù°¡Áö·Î Àû¿ëµË´Ï´Ù.

+

+ªÀº Áö¿¬(ÀáÀÚ±â)´Â Send ¶Ç´Â ControlSend°¡ Àü¼ÛÇÏ´Â Å°´­¸²¸¶´Ù ÀÚµ¿À¸·Î ½ÃÇàµË´Ï´Ù. ÀÌ·¸°Ô ÇÏ¸é ½ºÅ©¸³Æ®ÀÇ ½Å·Ú¼ºÀÌ °³¼±µË´Ï´Ù. ¿Ö³ÄÇϸé âÀº °¡²û ºü¸£°Ô ¹Ð·Á ¿À´Â Å°´­¸²ÀÇ ¹ü¶÷ ¼Óµµ¸¦ µû¶ó ÀâÀ» ¼ö ¾ø±â ¶§¹®ÀÔ´Ï´Ù.

+

+ OSÀÇ ½Ã°£-À¯Áö ½Ã½ºÅÛÀÇ Á¤¹Ð¼º ¶§¹®¿¡, Áö¿¬ ½Ã°£Àº °¡Àå ±î±î¿î 10 ¶Ç´Â 15ÀÇ ¹è¼ö·Î ¿Ã¸²µË´Ï´Ù. ¿¹¸¦ µé¾î, 1°ú 10 (Æ÷ÇÔ) »çÀÌÀÇ Áö¿¬ ½Ã°£Àº ´ëºÎºÐÀÇWindows XP ½Ã½ºÅÛ¿¡¼­ 10 ¶Ç´Â 15¿Í µ¿µîÇÕ´Ï´Ù (¾Æ¸¶µµ 2kµµ ¸¶Âù°¡ÁöÀÏ °ÍÀÓ).

+

+Send/SendEvent ¸ðµå¿¡ ´ëÇÏ¿©, Áö¿¬ ½Ã°£ÀÌ 0ÀÌ¸é ³»ºÎÀûÀ¸·Î Sleep(0)À» ½ÇÇàÇÕ´Ï´Ù. ±×·¯¸é ½ºÅ©¸³Æ®ÀÇ ½Ã°£Á¶°¢(timeslice)ÀÇ ³ª¸ÓÁö¸¦ ±×¸¦ ÇÊ¿ä·Î ÇÏ´Â ´Ù¸¥ ÇÁ·Î¼¼½º¿¡ ¾çº¸ÇÕ´Ï´Ù. ³ª¸ÓÁö°¡ ¾ø´Ù¸é Sleep(0)Àº ÀüÇô ÀáÀÚÁö ¾Ê½À´Ï´Ù. ´ëÁ¶ÀûÀ¸·Î, Áö¿¬ ½Ã°£ÀÌ -1À̸é Àý´ë ÀáÀÚÁö ¾Ê½À´Ï´Ù. ´õ ³ôÀº ½Å·Ú¸¦ À§ÇØ, -1º¸´Ù´Â 0À» ±ÇÀåÇÕ´Ï´Ù.

+

+Áö¿¬ ½Ã°£ÀÌ -1·Î ¼³Á¤µÇ¸é, ½ºÅ©¸³Æ®ÀÇ ÇÁ·Î¼¼½º ¿ì¼±¼øÀ§´Â ÀüÅëÀûÀÎ SendEvent ¸ðµå¸¦ »ç¿ëÇÒ ¶§ ¾ó¸¶³ª »¡¸® Å°´­¸²À» Àü¼ÛÇÒ °ÍÀΰ¡¸¦ °áÁ¤ÇÏ´Â Áß¿äÇÑ ¿äÀÎÀÌ µË´Ï´Ù. ½ºÅ©¸³Æ®ÀÇ ¿ì¼± ¼øÀ§¸¦ ³ôÀÌ·Á¸é, Process, Priority,, High¸¦ »ç¿ëÇϽʽÿÀ. + +ÀÌ ¶§¹®¿¡ ÀüÇüÀûÀ¸·Î Å°´­¸²ÀÌ È°¼º âÀÌ Ã³¸®ÇÏ´Â ¼Óµµº¸´Ù ´õ »¡¸® Àü¼ÛµÇÁö¸¸, ½Ã½ºÅÛÀÌ Áöµ¿À¸·Î Å°´­¸²À» ¹öÆÛ Ã³¸®ÇØ ÁÝ´Ï´Ù. +¹öÆÛ Ã³¸®µÈ Å°´­¸²Àº Send ¸í·É¾î°¡ ¿Ï·áµÈ ÈÄ¿¡µµ °è¼ÓÇؼ­ ¸ñÇ¥ â¿¡ µµ´ÞÇÕ´Ï´Ù (½ÉÁö¾î âÀÌ ´õ ÀÌ»ó È°¼º âÀÌ ¾Æ´Ï´õ¶óµµ »ó°üÀÌ ¾ø½À´Ï´Ù). ÀÌ°ÍÀº º¸Åë ÇØ°¡ µÇÁö ¾Ê½À´Ï´Ù. ¿Ö³ÄÇÏ¸é °°Àº â¿¡ ¿¬À̾î Àü¼ÛµÇ´Â Å°´­¸²Àº ÀÌ¹Ì ¹öÆÛ¿¡ ÀÚ¸® ÀâÀº Å°´­¸² µÚ¿¡ Â÷°îÂ÷°î ½×À̱⠶§¹®ÀÔ´Ï´Ù.

+

+³»Àå º¯¼ö A_KeyDelay¿¡ Send/SendEvent ¸ðµå¿¡ ´ëÇÑ ÇöÀç Delay ¼³Á¤ÀÌ ´ã°Ü ÀÖ½À´Ï´Ù. PressDuration³ª SendPlayÀÇ Delay¸¦ À§ÇÑ ³»Àå º¯¼ö´Â ¾ø½À´Ï´Ù.

+

+»õ·Î ±âµ¿µÈ ¾²·¹µå´Â ¸ðµÎ (¿¹¸¦ µé¾î ÇÖÅ°, ¸ÂÃã ¸Þ´º Ç׸ñ, ¶Ç´Â ŸÀÌ¸Ó ¼­ºê·çƾ) ÀÌ ¸í·É¾î¿¡ ´ëÇÑ ±âº» ¼³Á¤À» °¡Áö°í »õ·Ó°Ô ½ÃÀÛÇÕ´Ï´Ù. ÀÌ ±âº»°ªÀº Àúµ¿-½ÇÇà ¼½¼Ç (½ºÅ©¸³Æ®ÀÇ »ó´Ü)¿¡¼­ ÀÌ ¸í·É¾î¸¦ »ç¿ëÇÏ¸é ¹Ù²Ü ¼ö ÀÖ½À´Ï´Ù.

+ +

°ü·Ã Ç׸ñ

+

Send, ControlSend, SendMode, SetMouseDelay, SetControlDelay, SetWinDelay, SetBatchLines, Click

+ +

¿¹Á¦

+
SetKeyDelay, 0
+ + + diff --git a/src/docs/commands/SetMouseDelay.htm b/src/docs/commands/SetMouseDelay.htm new file mode 100644 index 0000000..917d498 --- /dev/null +++ b/src/docs/commands/SetMouseDelay.htm @@ -0,0 +1,49 @@ + + + + +SetMouseDelay + + + + + + + +

SetMouseDelay

+ +

°¢ ¸¶¿ì½º À̵¿À̳ª Ŭ¸¯¸¶´Ù ÀϾ Áö¿¬ ½Ã°£À» ¼³Á¤ÇÕ´Ï´Ù.

+ +
SetMouseDelay, Delay [, Play]
+

¸Å°³º¯¼ö

+
+ +
Delay
+

¹Ð¸®ÃÊ ´ÜÀ§ ½Ã°£. Ç¥Çö½Ä °¡´É. -1À» »ç¿ëÇϸé Áö¿¬½Ã°£ÀÌ ÀüÇô ¾ø½À´Ï´Ù. 0ÀÌ¸é °¡´ÉÇϸé Àû°Ô Áö¿¬ÇÕ´Ï´Ù (±×·¸Áö¸¸, Play ¸Å°³º¯¼ö°¡ Á¸ÀçÇϸé,. 0°ú -1 ¸ðµÎ Áö¿¬ ½Ã°£ÀÌ ¾ø½À´Ï´Ù). ¼³Á¤ÇÏÁö ¾ÊÀ¸¸é, ±âº» Áö¿¬ ½Ã°£Àº ÀüÅëÀûÀÎ SendEvent ¸ðµå¿¡ ´ëÇÏ¿© 10ÀÌ°í SendPlay ¸ðµå¿¡ ´ëÇÏ¿© -1ÀÔ´Ï´Ù.

+ +
Play
+ [v1.0.43+]
+

´Ü¾î Play´Â Áö¿¬ ½Ã°£À» ÀüÅëÀûÀÎ Send/SendEvent ¸ðµå°¡ ¾Æ´Ï¶ó SendPlay ¸ðµå¿¡ Àû¿ëÇÕ´Ï´Ù. ½ºÅ©¸³Æ®°¡ ÀÌ ¸Å°³º¯¼ö¸¦ »ç¿ëÇÏÁö ¾ÊÀ¸¸é, Áö¿¬ ½Ã°£Àº ¾ðÁ¦³ª SendPlay¿¡ ´ëÇÏ¿© -1ÀÔ´Ï´Ù.

+ +
+ +

³íÆò

+

+Click ±×¸®°í MouseMove/Click/Drag (SendInput ¸ðµå Á¦¿Ü)¿¡ ÀÇÇÏ¿© ¹ß»ýÇÏ´Â ¸Å ¸¶¿ì½º À̵¿À̳ª Ŭ¸¯¸¶´Ù ªÀº Áö¿¬ ½Ã°£ (ÀáÀÚ±â)ÀÌ ÀÚµ¿À¸·Î »ðÀԵ˴ϴÙ. ÀÌ°ÍÀº ½ºÅ©¸³Æ®ÀÇ ½Å·Ú¼ºÀ» ³ôÀ̱â À§ÇÑ °ÍÀÔ´Ï´Ù. âÀº Á¾Á¾ ºü¸¥ ¼ÓµµÀÇ ¸¶¿ì½º À̺¥Æ® ¹ü¶÷À» µû¶ó ÀâÀ» ¼ö ¾ø±â ¶§¹®ÀÔ´Ï´Ù.

+

+OSÀÇ ½Ã°£-À¯Áö ½Ã½ºÅÛÀÇ Á¤¹Ð¼º ¶§¹®¿¡, Áö¿¬Àº °¡Àå °¡±î¿î 10 ¶Ç´Â 15ÀÇ ¹è¼ö·Î ¿Ã¸²µË´Ï´Ù. ¿¹¸¦ µé¾î, 1ºÎÅÍ 10 (Æ÷ÇÔ) ±îÁöÀÇ Áö¿¬ ½Ã°£Àº ´ëºÎºÐÀÇ Windows XP ½Ã½ºÅÛ¿¡¼­ 10 ¶Ç´Â 15¿Í µ¿µîÇÕ´Ï´Ù (¾Æ¸¶µµ 2kµµ ±×·² °ÍÀÓ).

+

+Áö¿¬ ½Ã°£ÀÌ 0ÀÌ¸é ³»ºÎÀûÀ¸·Î Sleep(0)À» ½ÇÇàÇÕ´Ï´Ù. ÀÌ´Â ±×¸¦ ÇÊ¿ä·Î ÇÏ´Â ´Ù¸¥ ÇÁ·Î¼¼½º¿¡ ½ºÅ©¸³Æ®ÀÇ ½Ã°£Á¶°¢(timeslice)ÀÇ ³ª¸ÓÁö¸¦ ³ª´©¾î ÁÝ´Ï´Ù. ³²´Â Á¶°¢ÀÌ ¾ø´Ù¸é, Sleep(0)Àº ÀüÇô ÀáÀÚÁö ¾Ê½À´Ï´Ù. ´ëÁ¶ÀûÀ¸·Î, Áö¿¬ ½Ã°£ÀÌ -1À̸é Àý´ë ÀáÀÚÁö ¾Ê½À´Ï´Ù.

+

+³»Àå º¯¼ö A_MouseDelay¿¡ Send/SendEvent ¸ðµå¿¡ ´ëÇÑ ÇöÀç ¼³Á¤ÀÌ ´ã°Ü ÀÖ½À´Ï´Ù (SendPlay ¸ðµå¿¡ ´ëÇؼ­´Â ³»Àå º¯¼ö°¡ ¾ø½À´Ï´Ù).

+

+»õ·Î ±âµ¿µÈ ¾²·¹µå´Â (¿¹¸¦ µé¾î ÇÖÅ°, ¸ÂÃã ¸Þ´º Ç׸ñ, ¶Ç´Â ŸÀÌ¸Ó ¼­ºê·çƾ) ÀÌ ¸í·É¾î¿¡ ´ëÇÑ ±âº» ¼³Á¤°ªÀ» °¡Áö°í »õ·Ó°Ô ½ÃÀÛÇÕ´Ï´Ù. ÀÌ ±âº» °ªÀº ÀÚµ¿-½ÇÇà ¼½¼Ç(½ºÅ©¸³Æ®ÀÇ »ó´Ü)¿¡¼­ ÀÌ ¸í·É¾î¸¦ »ç¿ëÇÏ¸é ¹Ù²Ü ¼ö ÀÖ½À´Ï´Ù.

+ +

°ü·Ã Ç׸ñ

+

+SetDefaultMouseSpeed, Click, MouseMove, MouseClick, MouseClickDrag, SendMode, SetKeyDelay, SetControlDelay, SetWinDelay, SetBatchLines

+

¿¹Á¦

+
SetMouseDelay, 0
+ + + diff --git a/src/docs/commands/SetNumScrollCapsLockState.htm b/src/docs/commands/SetNumScrollCapsLockState.htm new file mode 100644 index 0000000..ac90eaf --- /dev/null +++ b/src/docs/commands/SetNumScrollCapsLockState.htm @@ -0,0 +1,44 @@ + + + + +SetCapsLockState/SetNumLockState/SetScrollLockState + + + + + + + +

SetCapsLockState/SetNumLockState/SetScrollLockState

+ +

Capslock/NumLock/ScrollLock Å°ÀÇ »óŸ¦ ¼³Á¤ÇÕ´Ï´Ù. Å°ÀÇ »óŸ¦ °­Á¦·Î À¯ÁöÇÒ ¼ö ÀÖ½À´Ï´Ù.

+ +
SetCapsLockState [, State]
+SetNumLockState [, State]
+SetScrollLockState [, State]
+

¸Å°³º¯¼ö

+
+ +
State
+

ÀÌ ¸Å°³º¯¼ö°¡ »ý·«µÇ¸é, Å°ÀÇ AlwaysOn/Off ¼Ó¼ºÀÌ Á¦°ÅµË´Ï´Ù. ±×·¸Áö ¾ÊÀ¸¸é ´ÙÀ½ ´Ü¾î Áß Çϳª¸¦ ¼³Á¤ÇϽʽÿÀ:

+

On: Å°¸¦ ÄÑ°í AlwaysOn/Off ¼Ó¼ºÀ» Á¦°ÅÇÕ´Ï´Ù.

+

Off: Å°¸¦ ²ô°í AlwaysOn/Off ¼Ó¼ºÀ» Á¦°ÅÇÕ´Ï´Ù.

+

AlwaysOn: °­Á¦·Î ÄÒ »óŸ¦ À¯ÁöÇÕ´Ï´Ù.

+

AlwaysOff: °­Á¦·Î ²ö »óŸ¦ À¯ÁöÇÕ´Ï´Ù.

+ +
+ +

³íÆò

+

+Send ¸í·É¾î¸¦ »ç¿ëÇÏ¿© Å°¸¦ ¹Ý´ë »óÅ·ΠÅä±ÛÇÒ ¼ö ÀÖ½À´Ï´Ù; ¿¹¸¦ µé¾î: Send {Capslock}.

+

+Å°¸¦ AlwaysOn ¶Ç´Â AlwaysOff »óÅ·ΠÀ¯ÁöÇÏ·Á¸é Å°º¸µå °¥°í¸®°¡ ÇÊ¿äÇÕ´Ï´Ù. Å°º¸µå °¥°í¸®´Â ±×·± °æ¿ì ÀÚµ¿À¸·Î ¼³Ä¡µË´Ï´Ù.

+

°ü·Ã Ç׸ñ

+

SetStoreCapslockMode, GetKeyState

+

¿¹Á¦

+
SetNumlockState, on
+SetScrollLockState, AlwaysOff
+ + + diff --git a/src/docs/commands/SetRegView.htm b/src/docs/commands/SetRegView.htm new file mode 100644 index 0000000..1d6337e --- /dev/null +++ b/src/docs/commands/SetRegView.htm @@ -0,0 +1,72 @@ + + + + +SetRegView + + + + + + + +

SetRegView [v1.1.08+]

+

RegRead, RegWrite, RegDelete ±×¸®°í ·¹Áö½ºÆ®¸® ȸµ¹ÀÌ¿¡ »ç¿ëµÇ´Â ·¹Áö½ºÆ®¸® ºä¸¦ ¼³Á¤ÇÕ´Ï´Ù.

+
SetRegView, RegView
+ +

¸Å°³º¯¼ö

+
+ +
RegView
+
+

·¹Áö½ºÆ®¸®¸¦ 32-ºñÆ® ¾îÇø®ÄÉÀ̼Çó·³ º¸·Á¸é 32¸¦ ÁöÁ¤ÇÏ°í, 64-ºñÆ® ¾îÇø®ÄÉÀ̼Çó·³ º¸·Á¸é 64¸¦ ÁöÁ¤ÇϽʽÿÀ.

+

Á¤»ó ÇàÀ§·Î º¹±¸ÇÏ·Á¸é ´Ü¾î Default¸¦ ÁöÁ¤ÇϽʽÿÀ.

+
+ +
+ +

ÃÑÆò

+

+ÀÌ ¸í·É¾î´Â Windows 64-ºñÆ®¿¡¸¸ À¯¿ëÇÕ´Ï´Ù. Windows 32-ºñÆ®¿¡¼­´Â È¿°ú°¡ ¾ø½À´Ï´Ù.

+

+64-ºñÆ® ½Ã½ºÅÛ¿¡¼­, 32-ºñÆ® ¾îÇø®ÄÉÀ̼ÇÀº WOW64¶ó°í ºÎ¸£´Â Windows ¼­ºê½Ã½ºÅÛ À§¿¡¼­ ½ÇÇàµË´Ï´Ù. ±âº»À¸·Î, ½Ã½ºÅÛÀº Ãæµ¹À» ÇÇÇϱâ À§ÇØ ¾î¶² ·¹Áö½ºÆ®¸® Å°´Â ¹æÇâÀüȯÇÕ´Ï´Ù. ¿¹¸¦ µé¾î, 32-ºñÆ® ½ºÅ©¸³Æ®¿¡¼­HKLM\SOFTWARE\AutoHotkey´Â HKLM\SOFTWARE\Wow6432Node\AutoHotkeyÀ¸·Î ¹æÇâÀüȯµË´Ï´Ù. SetRegView¸¦ »ç¿ëÇϸé 32-ºñÆ® ½ºÅ©Å©¸³Æ®ÀÇ ·¹Áö½ºÆ®¸® ¸í·É¾î°¡ 64-ºñÆ® ·¹Áö½ºÆ®¸® ºä·Î ¹æÇâÀüȯµÈ Å°¿¡ ±×¸®°í ±× ¹Ý´ë·Î Á¢±ÙÇÒ ¼ö ÀÖ½À´Ï´Ù.

+ +

³»Àå º¯¼ö A_RegView¿¡ ÇöÀç ¼³Á¤ÀÌ ´ã±é´Ï´Ù. »õ·Î ±âµ¿µÈ ¾²·¹µå´Â (ÇÖÅ°, ¸ÂÃã ¸Þ´º Ç׸ñ, ¶Ç´Â ŸÀÌ¸Ó ¼­ºê·çƾ) ÀÌ ¸í·É¾î¿¡ ´ëÇÑ ±âº» ¼³Á¤À» °¡Áö°í »õ·Ó°Ô ½ÃÀÛÇÕ´Ï´Ù. ±âº»°ªÀº ÀÌ ¸í·É¾î¸¦ ÀÚµ¿-½ÇÇà ¼½¼Ç (½ºÅ©¸³Æ® »ó´Ü)¿¡¼­ »ç¿ëÇÏ¸é ¹Ù²Ü ¼ö ÀÖ½À´Ï´Ù.

+ +

°ü·Ã Ç׸ñ

+

+RegRead, RegWrite, RegDelete, Loop (·¹Áö½ºÆ®¸®)

+ +

¿¹Á¦

+

¿¹Á¦ 1Àº ƯÁ¤ÇÑ ·¹Áö½ºÆ®¸® ºä¸¦ ¼³Á¤ÇÏ´Â ¹ý°ú ·¹Áö½ºÆ®¸® ¹æÇâÀüȯÀ¸·Î ½ºÅ©¸³Æ®¿¡ ¿µÇâÀ» ÁÖ´Â ¹ýÀ» º¸¿©ÁÝ´Ï´Ù.

+
; ·¹Áö½ºÆ®¸® Å°¿¡ 32-ºñÆ® ¾îÇø®ÄÉÀ̼Çó·³ Á¢±ÙÇÕ´Ï´Ù.
+SetRegView 32
+RegWrite REG_SZ, HKLM, SOFTWARE\Test.ahk, Value, 123
+
+; ·¹Áö½ºÆ®¸® Å°¿¡ 64-ºñÆ® ¾îÇø®ÄÉÀ̼Çó·³ Á¢±ÙÇÕ´Ï´Ù.
+SetRegView 64
+RegRead value, HKLM, SOFTWARE\Wow6432Node\Test.ahk, Value
+RegDelete HKLM, SOFTWARE\Wow6432Node\Test.ahk
+
+MsgBox Read value '%value%' via Wow6432Node.
+
+; ·¹Áö½ºÆ®¸® ºä¸¦ ±âº»°ªÀ¸·Î º¹±¸ÇÕ´Ï´Ù. 
+; ±âº»°ªÀº ½ºÅ©¸³Æ®°¡ 32-ºñÆ®Àΰ¡ 64-ºñÆ®Àΰ¡¿¡ µû¶ó ´Ù¸¨´Ï´Ù.
+SetRegView Default
+;...
+
+

¿¹Á¦ 2Àº ½ºÅ©¸³Æ®°¡ ½ÇÇàÁßÀÎ ¿î¿µ üÁ¦¿Í EXE¿Í ÀÇ À¯ÇüÀ» ŽÁöÇÏ´Â ¹ýÀ» º¸¿©ÁÝ´Ï´Ù.

+
if (A_PtrSize = 8)
+    script_is := "64-bit"
+else ; if (A_PtrSize = 4)
+    script_is := "32-bit"
+
+if (A_Is64bitOS)
+    OS_is := "64-ºñÆ®ÀÔÀÌ´Ù"
+else
+    OS_is := "32-ºñÆ®ÀÔ´Ï´Ù. ¿ÀÁ÷ ´ÜÀÏ ·¹Áö½ºÆ®¸® ºä¸¸ ÀÖ½À´Ï´Ù"
+
+MsgBox ÀÌ ½ºÅ©¸³Æ®´Â %script_is%ÀÌ°í, OS´Â %OS_is%ÀÔ´Ï´Ù.
+ + + diff --git a/src/docs/commands/SetStoreCapslockMode.htm b/src/docs/commands/SetStoreCapslockMode.htm new file mode 100644 index 0000000..cf0ac5b --- /dev/null +++ b/src/docs/commands/SetStoreCapslockMode.htm @@ -0,0 +1,43 @@ + + + + +SetStoreCapslockMode + + + + + + + +

SetStoreCapslockMode

+ +

Send ¸í·É¾î¸¦ ¼öÇàÇÑ ÈÄ CapsLockÀÇ »óŸ¦ º¹±¸ÇÒÁö ¸»Áö °áÁ¤ÇÕ´Ï´Ù.

+ +
SetStoreCapslockMode, On|Off
+

¸Å°³º¯¼ö

+
+ +
On|Off
+

On: ¸ðµç ½ºÅ©¸³Æ®¿¡ ÃÖÃÊ·Î ¼³Á¤µË´Ï´Ù: CapsLock Å°´Â Send°¡ ÀÚ½ÅÀÇ ¿¬»êÀ» À§ÇØ Àá½Ã ±×°ÍÀ» º¯°æÇÒ ÇÊ¿ä°¡ ÀÖ¾ú´Ù¸é ±×ÀÇ ÀÌÀü °ªÀ¸·Î º¹±¸µË´Ï´Ù.

+

Off: CapsLock Å°ÀÇ »óŸ¦ Àý´ë ¹Ù²ÙÁö ¾Ê½À´Ï´Ù. °á°úÀûÀ¸·Î, SendÀÇ ¿¬»ê µ¿¾È ¾î¼´Ù°¡ Capslock Å°°¡ ÄÑÁ³´Ù¸é(ON) ¹®ÀÚÀÇ ´ë¼Ò¹®ÀÚ°¡ ¹Ý´ë·Î ³ªÅ¸³¯ °ÍÀÔ´Ï´Ù.

+ +
+ +

³íÆò

+

+ÀÌ°ÍÀº Capslock Å°°¡ Send¿Í ControlSend¿¡ ´ëÇÏ¿© ¾ðÁ¦³ª ²¨Áö´Â °ÍÀº ¾Æ´Ï¶ó´Â ¶æÀÔ´Ï´Ù. ¼º°øÀûÀ¸·Î ²¨Á³´Ù°í ÇÒÁö¶óµµ, Å°µéÀÌ Àü¼ÛµÈ ÈÄ¿¡ ´Ù½Ã ¿ø·¡´ë·Î ÄÑÁöÁö ¾ÊÀ» ¼öµµ ÀÖ½À´Ï´Ù.

+

+ÀÌ ¸í·É¾î´Â ÀÚÁÖ »ç¿ëµÇÁö ¾Ê½À´Ï´Ù. ¿Ö³ÄÇÏ¸é ±âº»°ªÀÌ ´ëºÎºÐÀÇ °æ¿ì Á¦ÀÏ ÁÁ±â ¶§¹®ÀÔ´Ï´Ù.

+

+»õ·Î ±âµ¿µÇ´Â ¾²·¹µå´Â ( ÇÖÅ°, ¸ÂÃã ¸Þ´º Ç׸ñ, ¶Ç´Â ŸÀÌ¸Ó ¼­ºê·çƾ) ÀÌ ¸í·É¾î¿¡ ´ëÇÑ ±âº» ¼³Á¤À» °¡Áö°í »õ·Ó°Ô ½ÃÀÛÇÕ´Ï´Ù. ÀÌ ±âº»°ªÀº ÀÚµ¿-½ÇÇà ¼½¼Ç (½ºÅ©¸³Æ®ÀÇ »ó´Ü)¿¡¼­ ÀÌ ¸í·É¾î¸¦ »ç¿ëÇÏ¸é ¹Ù²Ü ¼ö ÀÖ½À´Ï´Ù.

+ +

°ü·Ã Ç׸ñ

+

+SetCaps/Num/ScrollLockState, Send, ControlSend

+ +

¿¹Á¦

+
SetStoreCapslockMode, off
+ + + diff --git a/src/docs/commands/SetTimer.htm b/src/docs/commands/SetTimer.htm new file mode 100644 index 0000000..66142bb --- /dev/null +++ b/src/docs/commands/SetTimer.htm @@ -0,0 +1,164 @@ + + + + +SetTimer + + + + + + + + +

SetTimer

+ +

¼­ºê·çƾÀÌ ÁöÁ¤µÈ ÀÏÁ¤ °£°ÝÀ¸·Î ÀÚµ¿À¸·Î ¹Ýº¹ÀûÀ¸·Î ±âµ¿µÇµµ·Ï ¸¸µì´Ï´Ù.

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

¸Å°³º¯¼ö

+
+ +
Label
+
+

Á¡ÇÁÇØ °¥ ¶óº§ ¶Ç´Â ÇÖÅ° ¶óº§ÀÇ À̸§. ReturnÀ̳ª ExitÀ» ¸¸³¯ ¶§±îÁö Label ¾Æ·¡ÀÇ ¸í·É¾îµéÀÌ ½ÇÇàµË´Ï´Ù. °ÅÀÇ ¸ðµç ´Ù¸¥ ¸í·É¾îÀÇ ¸Å°³º¯¼öó·³, LabelÀº º¯¼ö ÂüÁ¶°¡ µÉ ¼ö ÀÖ½À´Ï´Ù. %MyLabel%¿Í °°ÀÌ, º¯¼ö¿¡ ÀúÀåµÈ À̸§ÀÌ ¸ñÇ¥·Î »ç¿ëµË´Ï´Ù.

+

+ [v1.1.01+]: LabelÀÌ »ý·«µÇ¸é, A_ThisLabelÀÌ »ç¿ëµË´Ï´Ù. ¿¹¸¦ µé¾î, SetTimer,, Off¸¦ ŸÀÌ¸Ó ¼­ºê·çƾ ¾È¿¡ »ç¿ëÇϸé ŸÀ̸Ӹ¦ ²ø ¼ö ÀÖ½À´Ï´Ù.

+

[v1.1.20+]: ¶óº§ À̸§ÀÌ À¯È¿ÇÏÁö ¾ÊÀ¸¸é, ÀÌ ¸Å°³º¯¼ö´Â ÇÔ¼öÀÇ À̸§, ¶Ç´Â ÇÔ¼ö °´Ã¼¸¦ ´ã°í ÀÖ´Â ÇÑ °³Â¥¸® º¯¼ö°¡ µÉ ¼ö ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î, SetTimer %funcobj%, 1000 ¶Ç´Â SetTimer % funcobj, 1000. °´Ã¼¸¦ µ¹·ÁÁÖ´Â ´Ù¸¥ Ç¥Çö½ÄÀº ÇöÀç Áö¿øÇÏÁö ¾Ê½À´Ï´Ù.

+
+ +
Period|On|Off|Delete
+

On: ÀÌÀü ±â°£(period) µ¿¾È ºñÈ°¼ºÈ­µÇ¾î ÀÖ´ø ŸÀ̸Ӹ¦ ÀçÈ°¼ºÈ­ÇÕ´Ï´Ù. ŸÀ̸Ӱ¡ Á¸ÀçÇÏÁö ¾ÊÀ¸¸é, »õ·Î ¸¸µì´Ï´Ù (±âº» °£°ÝÀº 250ÀÔ´Ï´Ù). ŸÀ̸Ӱ¡ Á¸ÀçÇÏÁö¸¸ ÀÌÀü¿¡ ÇÑ-¹ø¸¸- ½ÇÇà ¸ðµå·Î ¼³Á¤µÇ¾î ÀÖ¾ú´Ù¸é, ´Ù½Ã ÇÑ ¹ø¸¸ ½ÇÇàµË´Ï´Ù.

+

Off: ±âÁ¸ÀÇ Å¸À̸Ӹ¦ ²ü´Ï´Ù.

+

Delete [v1.1.20+]: ±âÁ¸ÀÇ Å¸À̸Ӹ¦ ²ô°í »èÁ¦ÇÕ´Ï´Ù. ŸÀ̸Ӱ¡ ÇÔ¼ö °´Ã¼¿¡ ¿¬°üµÇ¾î ÀÖ´Ù¸é, ±× °´Ã¼´Â ÇØÁ¦µË´Ï´Ù. ŸÀ̸Ӹ¦ ²ô´õ¶óµµ °´Ã¼´Â ÇØÁ¦µÇÁö ¾Ê½À´Ï´Ù.

+

+ Period: ÀÌ ¸Å°³º¯¼ö¸¦ ´ë·«ÀûÀÎ ¹Ð¸® ÃÊÀÇ °³¼ö·Î »ç¿ëÇÏ¿© ŸÀ̸Ӹ¦ »ý¼ºÇϰųª °»½ÅÇÕ´Ï´Ù. ÀÌ ½Ã°£Àº ¸¶Áö¸·À¸·Î Label ¼­ºê·çƾÀÌ ½ÃÀÛÇÑ ÀÌÈÄ·Î °æ°úÇØ¾ß ÇÏ´Â ½Ã°£ÀÔ´Ï´Ù. ÀÌ ½Ã°£ ¸¸Å­ Áö³ª¸é, LabelÀº ´Ù½Ã ½ÇÇàµË´Ï´Ù + (´Ü, Áö³­ ½Ã°£ ÀÌÈÄ·Î °è¼Ó ½ÇÇà ÁßÀ̶ó¸é ¿¹¿ÜÀÔ´Ï´Ù). ŸÀ̸Ӵ ÀÚµ¿À¸·Î È°¼ºÈ­µË´Ï´Ù. À̸¦ ¸·À¸·Á¸é, ÀÌ ¸Å°³º¯¼ö¿¡ OFF¸¦ ÁöÁ¤ÇÏ°í, Áï½Ã µÎ ¹ø°·Î ¸í·É¾î¸¦ È£ÃâÇϽʽÿÀ.

+

+ Period´Â Á¤¼ö¿©¾ß ÇÕ´Ï´Ù. ´Ü º¯¼ö³ª Ç¥Çö½ÄÀÌ »ç¿ëµÇ¸é ¾ÈµË´Ï´Ù. ÀÌ °æ¿ì´Â ¼Ò¼öÁ¡ ÀÌÇÏ´Â ÀüºÎ ¹«½ÃµË´Ï´Ù.

+

+ ÀÌ ¸Å°³º¯¼ö°¡ ºñ¾î ÀÖ°í ±×¸®°í:
+ 1) ŸÀ̸Ӱ¡ Á¸ÀçÇÏÁö ¾Ê´Â´Ù¸é: ±â°£À» 250À¸·Î ÇÏ¿© »ý¼ºµË´Ï´Ù.
+ 2) ŸÀ̸Ӱ¡ ÀÌ¹Ì Á¸ÀçÇÑ´Ù¸é: ±× ŸÀ̸Ӱ¡ È°¼ºÈ­µÇ°í Priority¸¦ ÁöÁ¤ÇÏÁö ¾Ê´Â ÇÑ, ÀÌÀüÀÇ ±â°£(period)Àº ¸®¼ÂµË´Ï´Ù.

+

+ Run only once [v1.0.46.16+]: À½ÀÇ Á¤¼ö·Î Period¸¦ ÁöÁ¤Çϸé ŸÀ̸Ӱ¡ ¿ÀÁ÷ ÇÑ ¹ø¸¸ ½ÇÇàµÇ¾î¾ß ÇÑ´Ù´Â »ç½ÇÀ» ³ªÅ¸³¾ ¼ö ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î, -100À» ÁöÁ¤Çϸé ŸÀ̸Ӵ Áö±Ý ºÎÅÍ 100 ms µ¿¾È ½ÇÇàµÇ°í ŸÀ̸Ӹ¦ ²ü´Ï´Ù. ¸¶Ä¡ SetTimer, Label, Off¸¦ »ç¿ëÇÑ È¿°ú°¡ ÀÖ½À´Ï´Ù.
+

+
+ +
Priority
+
+

ÀÌ ¼±ÅÃÀû ¸Å°³º¯¼ö´Â -2147483648¿¡¼­ 2147483647 »çÀÌÀÇ Á¤¼öÀÔ´Ï´Ù (¶Ç´Â Ç¥Çö½Ä). ÀÌ Å¸À̸ÓÀÇ ¾²·¹µå ¿ì¼± ¼øÀ§¸¦ ÁöÁ¤ÇÕ´Ï´Ù. »ý·«Çϸé, 0ÀÌ »ç¿ëµË´Ï´Ù. ÀÚ¼¼ÇÑ °ÍÀº ¾²·¹µå¸¦ ÂüÁ¶ÇϽʽÿÀ.

+

+ ´Ù¸¥ °ÍÀº ÀüÇô °Çµå¸®Áö ¾ÊÀº ä·Î ±âÁ¸ ŸÀ̸ÓÀÇ ¿ì¼± ¼øÀ§¸¸ ¹Ù²Ù·Á¸é, ÀÌ ¸Å°³º¯¼ö ¾ÕÀÇ ¸Å°³º¯¼ö¸¦ ºó ä·Î µÎ½Ê½Ã¿À.

+ +
+ +

³íÆò

+

+ŸÀ̸Ӵ ºñµ¿±âÀûÀ¸·Î ½ÇÇàµÇ±â ¶§¹®¿¡ À¯¿ëÇÕ´Ï´Ù. ÁöÁ¤µÈ °£°ÝÀ¸·Î ÀÏÁ¤ÇÏ°Ô ½ÇÇàµÈ´Ù´Â ¶æÀÔ´Ï´Ù. ½ÉÁö¾î ½ºÅ©¸³Æ®°¡ âÀ» ±â´Ù¸®°Å³ª, ´ëÈ­»óÀÚ¸¦ º¸¿©Áְųª ¶Ç´Â ´Ù¸¥ ÀÏÀ» ÇÏ´À¶ó ¹Ù»Û ¶§¿¡µµ »ó°üÀÌ ¾ø½À´Ï´Ù. + +¸¹ÀÌ »ç¿ëµÇ´Â ¿¹·Î´Â »ç¿ëÀÚ°¡ ½¯ ¶§ ¾î¶² ÀÏÀ» Çϱâ (A_TimeIdle¿¡ ¹Ý¿µµÊ) ¶Ç´Â »ç¿ëÀÚ°¡ ³ªÅ¸³ª´Â ¼ø°£ ¿øÇÏÁö ¾Ê´Â âÀ» ´Ý±â°¡ ÀÖ½À´Ï´Ù.

+

+ŸÀÌ¸Ó ¶§¹®¿¡ ½ºÅ©¸³Æ®°¡ µ¿½Ã¿¡ ¿©·¯ ÀÏÀ» ¼öÇàÇѴٴ ȯ»óÀ» ºÒ·¯ ÀÏÀ¸Å°Áö¸¸, »ç½ÇÀº ±×·¸Áö ¾Ê½À´Ï´Ù. ´ë½Å¿¡, ½Ã°£Á¦ÇÑ ¼­ºê·çƾÀ» ´Ù¸¥ ¾²·¹µå¿Í ¶È°°ÀÌ Ãë±ÞÇÕ´Ï´Ù: ÇÖÅ° ¼­ºê·çƾ°ú ¸¶Âù°¡Áö·Î, ´Ù¸¥ ¾²·¹µå¿¡°Ô ÀÎÅÍ·´Æ® ´çÇÏ°í ¶Ç ÀÎÅÍ·´Æ® ÇÒ ¼ö ÀÖ½À´Ï´Ù. ÀÚ¼¼ÇÑ °ÍÀº ¾²·¹µå¸¦ ÂüÁ¶ÇϽʽÿÀ.

+

+ŸÀ̸Ӱ¡ ¸¸µé¾îÁú ¶§¸¶´Ù, ÀçÈ°¼ºµÇ°í, »õ ±â°£(period)À¸·Î °»½ÅµË´Ï´Ù. ±×ÀÇ ¼­ºê·çƾÀº Áï½Ã ½ÇÇàµÇÁö ¾Ê½À´Ï´Ù; ¸ÕÀú ±â°£(period)ÀÌ ´ÙÇØ¾ß ÇÕ´Ï´Ù. ŸÀ̸Ӹ¦ ½ÃÀÛÇÏÀÚ ¸¶ÀÚ ¹Ù·Î ½ÇÇàÇÏ°í ½ÍÀ¸¸é, Gosub¸¦ »ç¿ëÇØ Å¸À̸ÓÀÇ ¼­ºê·çƾÀ» ½ÇÇàÇϽʽÿÀ (±×·¸Áö¸¸, ÀÌ°ÍÀº ŸÀÌ¸Ó ÀÚü°¡ ±×·± °Í ó·³ »õ ¾²·¹µå¸¦ ½ÃÀÛÇÏÁö ¾Ê½À´Ï´Ù; ±×·¡¼­ SendMode¿Í °°Àº ¼³Á¤Àº ±âº»°ªÀ¸·Î ½ÃÀÛÇÏÁö ¾Ê½À´Ï´Ù).

+

+SetTimer°¡ ±âÁ¸ÀÇ Å¸À̸ӿ¡ »ç¿ëµÇ°í ¸Å°³º¯¼ö #2°¡ ¼ýÀÚÀ̰ųª ´Ü¾î ON À̸é (¶Ç´Â »ý·«µÇ¸é), Áö³­ ¹ø ½ÇÇàµÈ ŸÀ̸ÓÀÇ "³»ºÎ ½Ã°£"ÀÌ ÇöÀç ½Ã°£À¸·Î Àç¼³Á¤µË´Ï´Ù; ´Ù¸¥ ¸»·Î Çϸé, Àüü ±â°£ÀÌ °æ°úÇØ¾ß ¼­ºê·çƾÀÌ ´Ù½Ã ½ÇÇàµË´Ï´Ù.

+

+ŸÀ̸ÓÀÇ Á¤¹Ðµµ: OSÀÇ ½Ã°£-À¯Áö ½Ã½ºÅÛÀÇ Á¤¹Ðµµ ¶§¹®¿¡, Period´Â ÀüÇüÀûÀ¸·Î (¼³Ä¡µÈ Çϵå¿þ¾î¿Í µå¶óÀ̹öÀÇ À¯Çü¿¡ µû¶ó) °¡Àå °¡±î¿î 10 ¶Ç´Â 15.6 ¹Ð¸®ÃÊÀÇ ¹è¼ö·Î ¹Ý¿Ã¸²µË´Ï´Ù. ¿¹¸¦ µé¾î, 1ºÎÅÍ 10 (Æ÷ÇÔ) »çÀÌÀÇ Period´Â º¸Åë Windows 2000/XP¿¡¼­ 10 ¶Ç´Â 15.6°ú µ¿µîÇÕ´Ï´Ù. ´õ ªÀº Áö¿¬Àº Loop+SleepÀ» ÅëÇÏ¿© ´Þ¼ºÇÒ ¼ö ÀÖ½À´Ï´Ù. ¿¹Á¦´Â DllCall+timeBeginPeriod+Sleep¸¦ º¸½Ê½Ã¿À.

+

+ŸÀ̸Ӵ ´ÙÀ½ »óȲ ¾Æ·¡¿¡¼­´Â ÁöÁ¤µÈ ¸¸Å­ ÀÚÁÖ ½ÇÇàµÉ ¼ö´Â ¾ø½À´Ï´Ù:

+
    +
  1. + ´Ù¸¥ ¾îÇø®ÄÉÀ̼ǵéÀÌ CPU¿¡ ¾ÆÁÖ Å« ºÎ´ãÀ» ÁÝ´Ï´Ù.
  2. +
  3. + ŸÀÌ¸Ó ¼­ºê·çƾÀº ±× ÀÚü·Î ½ÇÇà¿¡ Àڽſ¡°Ô ÁÖ¾îÁø ±â°£º¸´Ù ´õ ¸¹ÀÌ °É¸³´Ï´Ù. ¶Ç´Â °æÀï°ü°è¿¡ Àִ ŸÀ̸Ӱ¡ ³Ê¹« ¸¹½À´Ï´Ù (SetBatchLines¸¦ º¯°æÇÏ¸é µµ¿òÀÌ µÉ °ÍÀÔ´Ï´Ù).
  4. +
  5. + ŸÀ̸Ӱ¡ ´Ù¸¥ ¾²·¹µå¿¡ ÀÇÇØ ÀÎÅÍ·´Æ® µÇ¾ú½À´Ï´Ù. Áï, ¶Ç´Ù¸¥ ÀÏÁ¤ÀÇ ¼­ºê·çƾ, ÇÖÅ° ¼­ºê·çƾ, ¶Ç´Â ¸ÂÃã ¸Þ´º Ç׸ñÀÌ Å¸À̸Ӹ¦ ÀÎÅÍ·´Æ® Çß½À´Ï´Ù (ÀÎÅÍ·´Æ®´Â CriticalÀ» ÅëÇÏ¿© ÇÇÇÒ ¼ö ÀÖ½À´Ï´Ù). ÀÌ·± ÀÏÀÌ ÀϾ¸é ±×¸®°í ÀÎÅÍ·´Æ®ÇÑ ¾²·¹µå°¡ Á¾·á¿¡ ½Ã°£ÀÌ ¿À·¡ °É¸°´Ù¸é, ÀÎÅÍ·´Æ®µÈ ŸÀ̸Ӵ ±× µ¿¾È ²¨Áö´Â È¿°ú°¡ ÀÖ½À´Ï´Ù. ±×·¸Áö¸¸, ´Ù¸¥ ŸÀ̸ӵéÀº °è¼ÓÇؼ­ ½ÇÇàµË´Ï´Ù. ù ¹ø° ŸÀ̸Ӹ¦ ÀÎÅÍ·´Æ®ÇÑ ¾²·¹µå¸¦ ¶Ç ÀÎÅÍ·´Æ® ÇÕ´Ï´Ù.
  6. +
  7. CriticalÀ̳ª Thread Interrupt/PriorityÀÇ °á°ú·Î ½ºÅ©¸³Æ®¸¦ ÀÎÅÍ·´Æ® ÇÒ ¼ö ¾ø½À´Ï´Ù. ±× ½Ã°£ µ¿¾È, ŸÀ̸Ӵ ½ÇÇàµÇÁö ¾Ê½À´Ï´Ù. ³ªÁß¿¡, ½ºÅ©¸³Æ®°¡ ´Ù½Ã ÀÎÅÍ·´Æ®°¡ °¡´ÉÇØÁö¸é, ±â°£À» ³Ñ±ä ŸÀ̸Ӵ °¡´ÉÇϸé ÇÑ ¹ø »¡¸® ½ÇÇàµÈ ´ÙÀ½, ±×ÀÇ ¿ø·¡ ÀÏÁ¤À» Àç°³ÇÕ´Ï´Ù.
  8. +
+

+ŸÀ̸Ӵ ½ºÅ©¸³Æ®°¡ º¸·ùÁß(suspended)ÀÏ ¶§¿¡µµ ÀÛµ¿ÇÕ´Ï´Ù. ±×·¯³ª ÇöÀç ¾²·¹µå¿¡ "Thread NoTimers"°¡ ÀÛ¿ëÇÏ°í Àְųª ¾î¶² ¾²·¹µåÀÌµç ¾²·¹µå°¡ Á¤Áö(paused)µÇ¾î ÀÖÀ¸¸é ÀÛµ¿ÇÏÁö ¾Ê½À´Ï´Ù. °Ô´Ù°¡, »ç¿ëÀÚ°¡ (¿¹¸¦ µé¾î Æ®·¹ÀÌ ¾ÆÀÌÄÜ ¸Þ´º³ª ¸Þ´º ¹Ù¿Í °°Àº) ½ºÅ©¸³Æ® ¸Å´º¸¦ ÅëÇÏ¿© Ç×ÇØÇÏ°í ÀÖÀ» ¶§¿¡µµ ÀÛµ¿ÇÏÁö ¾Ê½À´Ï´Ù.

+

+ŸÀ̸Ӵ Àӽ÷Π½ºÅ©¸³Æ®ÀÇ ÇöÀç È°µ¿À» ÀÎÅÍ·´Æ®ÇØ ÀÛµ¿Çϱ⠶§¹®¿¡, ±×ÀÇ ¼­ºê·çƾÀº (»¡¸® ³¡³¾ ¼ö ÀÖµµ·Ï) ª°Ô À¯ÁöÇØ¾ß ÇÕ´Ï´Ù. ¿À·§ µ¿¾È ÀÎÅÍ·´Æ® ÇÏ´Â °ÍÀº ¹Ù¶÷Á÷ÇÏÁö ¸øÇÕ´Ï´Ù.

+

+½ºÅ©¸³Æ®°¡ ½ÇÇàµÇ´Â Áß¿¡µµ È¿°ú¸¦ À¯ÁöÇϴ ŸÀ̸Ӵ º¸Åë ÀÚµ¿-½ÇÇà ¼½¼Ç¿¡ ¸¸µé¾î¾ß ÇÕ´Ï´Ù. ´ëÁ¶ÀûÀ¸·Î, Àӽà ŸÀ̸Ӵ Á¾Á¾ ±×ÀÇ ¼­ºê·çƾ¿¡ ÀÇÇÏ¿© ²¨Áö±âµµ ÇÕ´Ï´Ù (ÀÌ ÆäÀÌÁö ÇÏ´ÜÀÇ ¿¹Á¦¸¦ º¸½Ê½Ã¿À).

+

+½Ã°£Á¦ÇÑ ¼­ºê·çƾÀÌ ½ÇÇà ÁßÀÏ ¶§¸¶´Ù, SendMode¿Í °°Àº ¼³Á¤¿¡ ´ëÇÑ ±âº» °ªÀ¸·Î »õ·Ó°Ô ½ÃÀÛÇÕ´Ï´Ù. ÀÌ·± ±âº»°ªµéÀº ÀÚµ¿-½ÇÇà ¼½¼Ç¿¡¼­ ¹Ù²Ü ¼ö ÀÖ½À´Ï´Ù.

+

+ÇÖÅ°ÀÇ ¹ÝÀÀ ½Ã°£ÀÌ Áß¿äÇÏ´Ù¸é (°ÔÀÓ¿¡¼­¿Í °°ÀÌ) ±×¸®°í ½ºÅ©¸³Æ®°¡ º¸À¯ÇÑ Å¸À̸ÓÀÇ ¼­ºê·çƾÀÌ ½ÇÇà¿¡ ´ë·« 5 ms ÀÌ»óÀÌ °É·Á¾ß ÇÑ´Ù¸é, ´ÙÀ½ ¸í·É¾î¸¦ »ç¿ëÇØ 15 ms Áö¿¬ ½Ã°£À¸·Î ¹Ù²ÙÁö ¾Êµµ·Ï ¸·½À´Ï´Ù. ±×·¸°Ô ÇÏÁö ¾ÊÀ¸¸é ŸÀÌ¸Ó ¾²·¹µå¸¦ ÀÎÅÍ·´Æ®ÇÒ ¼ö ¾ø´Â ¼ø°£¿¡ ÇÖÅ°°¡ ´­¸®¸é ±×·± Áö¿¬ÀÌ ÀϾ´Ï´Ù:

+ +
Thread, interrupt, 0  ; ¸ðµç ¾²·¹µå¸¦ ¾ðÁ¦³ª ÀÎÅÍ·´Æ®°¡ °¡´ÉÇϵµ·Ï ¸¸µì´Ï´Ù.
+ +

±×ÀÇ ¼­ºê·çƾÀÌ ÇöÀç ½ÇÇà ÁßÀε¥ ŸÀ̸Ӱ¡ ²¨Áö´õ¶óµµ, ±× ¼­ºê·çƾÀº ¿Ï·áÇÒ ¶§±îÁö °è¼Ó ÁøÇàµË´Ï´Ù.

+

+KeyHistory Ư¡Àº ¾ó¸¶³ª ¸¹Àº ŸÀ̸Ӱ¡ Á¸ÀçÇÏ´ÂÁö ±×¸®°í ¾ó¸¶³ª ¸¹ÀÌ ÇöÀç ÄÑÁ® ÀÖ´ÂÁö º¸¿©ÁÝ´Ï´Ù.

+

+ŸÀ̸ÓÀÇ ±â°£Àº 4294967295 ¹Ð¸®Ãʺ¸´Ù Ŭ ¼ö ¾ø½À´Ï´Ù (49.7 ÀÏ).

+

½ºÅ©¸³Æ®¸¦ °è¼Ó ½ÇÇàÇÏ·Á¸é -- ¿ÀÁ÷ ŸÀ̸Ӹ¸ ´ã°í ÀÖ´Â ½ºÅ©¸³Æ® -- #Persistent¸¦ »ç¿ëÇϽʽÿÀ.

+ +

°ü·Ã Ç׸ñ

+

Gosub, Return, Threads, Thread (command), Critical, IsLabel(), Menu, #Persistent

+ +

¿¹Á¦

+
; ¿¹Á¦ #1: ¿øÇÏÁö ¾Ê´Â âÀÌ ³ªÅ¸³¯ ¶§¸¶´Ù ´Ý½À´Ï´Ù:
+#Persistent
+SetTimer, CloseMailWarnings, 250
+return
+
+CloseMailWarnings:
+WinClose, Microsoft Outlook, Åë½ÅÇÏ´Â µ¿¾È ½Ã°£Á¦ÇÑÀÌ ÀϾ
+WinClose, Microsoft Outlook, ¼­¹ö¿¡ Á¢¼ÓÀ» È®¸³ÇÒ ¼ö ¾ø¾úÀ½
+return
+

 

+
; ¿¹Á¦ #2: ¾î¶² âÀÌ ³ªÅ¸³ª±â¸¦ ±â´Ù·È´Ù°¡ »ç¿ëÀÚ¿¡°Ô ¾Ë·ÁÁÝ´Ï´Ù:
+#Persistent
+SetTimer, Alert1, 500
+return
+
+Alert1:
+IfWinNotExist, Video Conversion, ÇÁ·Î¼¼½º ¿Ï·á
+    return
+; ±×·¸Áö ¾ÊÀ¸¸é:
+SetTimer, Alert1, Off  ; Áï, ŸÀ̸Ӵ ¿©±â¿¡¼­ ÀÚ½ÅÀ» ²ü´Ï´Ù.
+SplashTextOn, , , ºñµð¿À º¯È¯ÀÌ ³¡³µ½À´Ï´Ù.
+Sleep, 3000
+SplashTextOff
+return
+

 

+
; ¿¹Á¦ #3: ÇÖÅ°°¡ ÇÑ ¹ø, µÎ ¹ø, ±×¸®°í ¼¼ ¹ø ´­·È´ÂÁö ŽÁöÇÕ´Ï´Ù.
+; ¾ó¸¶³ª ¸¹ÀÌ ´­·¶´Â°¡¿¡ µû¶ó
+; ÇÖÅ°°¡ ´Ù¸¥ Á¶Ä¡¸¦ ¼öÇàÇÒ ¼ö ÀÖ½À´Ï´Ù:
+#c::
+if winc_presses > 0 ; SetTimer°¡ ÀÌ¹Ì ½ÃÀ۵Ǿú½À´Ï´Ù. ±×·¡¼­ ´ë½Å¿¡ Å°´­¸²À» ±â·ÏÇÕ´Ï´Ù.
+{
+    winc_presses += 1
+    return
+}
+; ±×·¸Áö ¾ÊÀ¸¸é, ÀÌ ¹ø¿¡ óÀ½À¸·Î Å°¸¦ ´­·¶½À´Ï´Ù.
+;  Ä«¿îÆ®¸¦ 1·Î ¼³Á¤ÇÏ°í ŸÀ̸Ӹ¦ ½ÃÀÛÇÕ´Ï´Ù:
+winc_presses = 1
+SetTimer, KeyWinC, 400 ; 400 ¹Ð¸®ÃÊ Ã¢ ¾È¿¡¼­ Å°´­¸²À» ±â´Ù¸³´Ï´Ù.
+return
+
+KeyWinC:
+SetTimer, KeyWinC, off
+if winc_presses = 1 ; Å°°¡ ÇÑ ¹ø ´­·È½À´Ï´Ù.
+{
+    Run, m:\  ; Æú´õ¸¦ ¿±´Ï´Ù.
+}
+else if winc_presses = 2 ; Å°°¡ µÎ ¹ø ´­·È½À´Ï´Ù.
+{
+    Run, m:\multimedia  ; ´Ù¸¥ Æú´õ¸¦ ¿±´Ï´Ù.
+}
+else if winc_presses > 2
+{
+    MsgBox, ¼¼ ¹ø ÀÌ»ó Ŭ¸¯ÀÌ Å½ÁöµÇ¾ú½À´Ï´Ù.
+}
+; À§¿¡¼­ ¾î´À Á¶Ä¡°¡ ÃË¹ßµÇµç »ó°ü¾øÀÌ, Ä«¿îÆ®¸¦ ¸®¼ÂÇØ
+; ´ÙÀ½ Å°´­¸²À» ÁغñÇÕ´Ï´Ù:
+winc_presses = 0
+return
+ + + diff --git a/src/docs/commands/SetTitleMatchMode.htm b/src/docs/commands/SetTitleMatchMode.htm new file mode 100644 index 0000000..7296f8f --- /dev/null +++ b/src/docs/commands/SetTitleMatchMode.htm @@ -0,0 +1,78 @@ + + + + +SetTitleMatchMode + + + + + + + +

SetTitleMatchMode

+ +

WinWait °°Àº ¸í·É¾î¿¡¼­ WinTitle ¸Å°³º¯¼öÀÇ ºÎÇÕ ÇàÀ§¸¦ ¼³Á¤ÇÕ´Ï´Ù.

+ +
SetTitleMatchMode, MatchMode
+SetTitleMatchMode, Fast|Slow
+ +

¸Å°³º¯¼ö

+
+ +
MatchMode
+

´Ù¸¥ ¼ýÀÚ³ª ´Ü¾î RegEx Áß Çϳª:

+

1: â Á¦¸ñÀº ¹Ýµå½Ã ÁöÁ¤µÈ WinTitle·Î ½ÃÀÛÇØ¾ß ºÎÇÕÇÒ ¼ö ÀÖ½À´Ï´Ù.
+ 2: â Á¦¸ñ¿¡ ¾îµðµç WinTitleÀÌ Æ÷ÇԵǾî ÀÖÀ¸¸é ºÎÇÕÇÕ´Ï´Ù.
+ 3: â Á¦¸ñÀÌ ¹Ýµå½Ã Á¤È®ÇÏ°Ô WinTitle¿¡ ÀÏÄ¡ÇØ¾ß ºÎÇÕÇÕ´Ï´Ù.

+

+ RegEx (v1.0.45+): WinTitle, WinText, ExcludeTitle, ±×¸®°í ExcludeText¸¦ Á¤±Ô Ç¥Çö½ÄÀ¸·Î º¯°æÇÕ´Ï´Ù. + + Ç¥Çö½ÄÀ» ¸í·É¾î¿Í ÇÔ²² »ç¿ëÇÒ ¶§ µû¿ÈÇ¥ ¾È¿¡ µÑ·¯ ½ÎÁö ¸¶½Ê½Ã¿À. ¿¹¸¦ µé¾î: WinActivate Untitled.*Notepad. RegEx´Â ¶ÇÇÑ ahk_class¿¡ Àû¿ëµË´Ï´Ù; ¿¹¸¦ µé¾î, ahk_class IEFrame´Â Ŭ·¡½º À̸§ ¾îµðµç IEFrameÀÌ µé¾î Àִ âÀ» °Ë»öÇÕ´Ï´Ù (±âº»ÀûÀ¸·Î Á¤±Ô Ç¥Çö½ÄÀº ¸ñÇ¥ ¹®ÀÚ¿­ ¾îµðµç »ó°ü ¾øÀÌ ºÎÇÕÇϱ⠶§¹®ÀÔ´Ï´Ù). + + ÁÖÀÇ: WinText¿¡ ´ëÇÏ¿©, °¢ ÅؽºÆ® ¿ä¼Ò´Â (Áï, °¢ ÄÜÆ®·ÑÀÇ ÅؽºÆ®) RegEx¿¡ µû·Îµû·Î ºÎÇÕÇÕ´Ï´Ù. ±×·¯¹Ç·Î, ¿©·¯ ÅؽºÆ® ¿ä¼Ò¿¡ °ÉÃÄ Çϳª°¡ ºÎÇÕÇÏ´Â °ÍÀº ºÒ°¡´É ÇÕ´Ï´Ù.

+

+ À§ÀÇ ¸ðµå´Â ¶Ç WinTitle°ú ¶È°°Àº ¹æ½ÄÀ¸·Î ExcludeTitle¿¡ ¿µÇâÀ» ¹ÌĨ´Ï´Ù. + ¿¹¸¦ µé¾î, ¸ðµå 3Àº ±× âÀ» ¹èÁ¦ÇÏ·Á¸é â Á¦¸ñÀÌ Á¤È®ÇÏ°Ô ExcludeTitle¿¡ ºÎÇÕÇϱ⸦ ¿ä±¸ÇÕ´Ï´Ù.

+
+ +
Fast|Slow
+

Fast: ÀÌ°ÍÀÌ ±âº» ÇàÀ§ÀÔ´Ï´Ù. ¼öÇ༺´ÉÀº Slow º¸´Ù Çö°ÝÇÏ°Ô ÁÁ½À´Ï´Ù. ±×·¯³ª ÀϺΠÀ¯ÇüÀÇ Ã¢¿¡ ´ëÇÏ¿© ¾î¶² WinText ¿ä¼ÒµéÀº ´Ù¾çÇÑ Ã¢ ¸í·É¾î¿¡ "º¸ÀÌÁö ¾ÊÀ» ¼ö ÀÖ½À´Ï´Ù".

+

Slow: ÈξÀ ´õ ´À¸± ¼ö ÀÖ½À´Ï´Ù. ±×·¯³ª â ¸í·É¾î°¡ âµéÀ» Äf¾î °¡¸é¼­ ºÎÇÕÀ» ã¾Æ ¸ðµç âÀ¸·ÎºÎÅÍ ¸ðµç °¡´ÉÇÑ WinText¸¦ ¿­¶÷ÇÕ´Ï´Ù. Window Spy´Â (ÀÖ´Ù¸é) â ÅؽºÆ®ÀÇ ¾î´À ºÎºÐÀÌ ´À¸° ¸ðµå¸¦ ¿ä±¸ÇÏ´ÂÁö º¸¿©ÁÝ´Ï´Ù.

+ +
+ +

³íÆò

+

+ÀÌ ¸í·É¾î´Â ¸ðµç â ¸í·É¾îÀÇ ÇàÀ§¿¡ ¿µÇâÀ» ÁÝ´Ï´Ù. ¿¹, IfWinExist ±×¸®°í WinActivate.

+

+ÁöÁ¤ÇÏÁö ¾ÊÀ¸¸é, TitleMatchMode´Â ±âº»°ªÀÌ 1ÀÌ°í fastÀÔ´Ï´Ù.

+

+â ±×·ìÀÌ »ç¿ëµÇ¸é, ÇöÀç Á¦¸ñ ºÎÇÕ ¸ðµå´Â ±×·ì¿¡ ÀÖ´Â °¢ ±ÔÄ¢¿¡ Àû¿ëµË´Ï´Ù.

+

+ÀϹÝÀûÀ¸·Î, slow ¸ðµå´Â ±×ÀÇ Á¦¸ñ°ú fast-¸ðµå ÅؽºÆ® ¸¸À¸·Î´Â ¸ñÇ¥ âÀ» À¯ÀÏÇÏ°Ô ½Äº°ÇÒ ¼ö ¾øÀ» °æ¿ì¿¡¸¸ »ç¿ëÇØ¾ß ÇÕ´Ï´Ù. ¿Ö³ÄÇÏ¸é ´À¸° ¸ðµå´Â ¹Ù»Ú°Å³ª "ÀÀ´äÇÏÁö ¾Ê´Â" ¾îÇø®ÄÉÀÌ¼Ç Ã¢ÀÌ ÀÖ´Ù¸é ±Ø½ÉÇÏ°Ô ´À¸± ¼ö Àֱ⠶§¹®ÀÔ´Ï´Ù.

+

+¿ÀÅäÇÖÅ°¿¡ µû¶ó¿À´Â Window Spy´Â slow ÅؽºÆ®¸¦ º°µµÀÇ ¼½¼Ç¿¡ º¸°íÇÕ´Ï´Ù. ±×·¡¼­ slow ¸ðµå°¡ ÇÊ¿äÇÑÁö ½±°Ô ¾Ë¾Æ³¾ ¼ö ÀÖ½À´Ï´Ù.

+

+µÎ ¼Ó¼ºÀ» ¸ðµÎ ¹Ù²Ù°í ½Í´Ù¸é, ´ÙÀ½ ¿¹Á¦¿Í °°ÀÌ ¸í·É¾î¸¦ µÎ ¹ø ½ÇÇàÇϽʽÿÀ:

+
SetTitleMatchMode, 2
+SetTitleMatchMode, slow
+

+³»Àå º¯¼ö A_TitleMatchMode ±×¸®°í A_TitleMatchModeSpeed¿¡´Â ÇöÀç ¼³Á¤ÀÌ ´ã°Ü ÀÖ½À´Ï´Ù.

+

+ÇöÀç TitleMatchMode¿Í »ó°ü ¾øÀÌ, WinTitle, WinText, ExcludeTitle ±×¸®°í ExcludeText´Â ´ë¼Ò¹®ÀÚ¸¦ ±¸ºÐÇÕ´Ï´Ù. À¯ÀÏÇÑ ¿¹¿Ü´Â RegEx ¸ðµåÀÇ ´ë¼Ò¹®ÀÚ ºñ±¸ºÐ ¿É¼ÇÀÔ´Ï´Ù; ¿¹¸¦ µé¾î: i)untitled - notepad.

+

+»õ·Î ±âµ¿µÈ ¾²·¹µå´Â ¸ðµÎ (¿¹¸¦ µé¾î ÇÖÅ°, ¸ÂÃã ¸Þ´º Ç׸ñ, ¶Ç´Â ŸÀÌ¸Ó ¼­ºê·çƾ) ÀÌ ¸í·É¾î¿¡ ´ëÇÑ ±âº» ¼³Á¤À» °¡Áö°í »õ·Ó°Ô ½ÃÀÛÇÕ´Ï´Ù. ÀÌ ±âº»°ªÀº ÀÚµ¿-½ÇÇà ¼½¼Ç¿¡¼­ (½ºÅ©¸³Æ®ÀÇ »ó´Ü) ÀÌ ¸í·É¾î¸¦ »ç¿ëÇÏ¿© ¹Ù²Ü ¼ö ÀÖ½À´Ï´Ù.

+ +

°ü·Ã Ç׸ñ

+

SetWinDelay, IfWinExist, WinActivate, RegExMatch()

+ +

¿¹Á¦

+
SetTitleMatchMode 2
+; OR:
+SetTitleMatchMode RegEx
+
+SetTitleMatchMode Slow  ; Slow/Fast´Â ´Ù¸¥ ¸ðµç ¸ðµå¿Í µ¶¸³ÀûÀ¸·Î ¼³Á¤ÇÒ ¼ö ÀÖ½À´Ï´Ù.
+ + + diff --git a/src/docs/commands/SetWinDelay.htm b/src/docs/commands/SetWinDelay.htm new file mode 100644 index 0000000..c0720e1 --- /dev/null +++ b/src/docs/commands/SetWinDelay.htm @@ -0,0 +1,49 @@ + + + + +SetWinDelay + + + + + + + +

SetWinDelay

+ +

WinActivate¿Í °°Àº °¢ â ¸í·É¾î¸¦ ½ÇÇàÇÑ ÈÄ¿¡ ÀϾ Áö¿¬½Ã°£À» ¼³Á¤ÇÕ´Ï´Ù.

+ +
SetWinDelay, Delay
+

¸Å°³º¯¼ö

+
+ +
Delay
+

¹Ð¸®ÃÊ ½Ã°£, Ç¥Çö½Ä °¡´É. -1Àº Áö¿¬½Ã°£ÀÌ ¾øÀ¸¸ç 0ÀÌ¸é °¡´ÉÇϸé ÃÖ¼Ò·Î Áö¿¬ÇÕ´Ï´Ù. ¼³Á¤ÇÏÁö ¾ÊÀ¸¸é, ±âº» °ªÀº 100ÀÔ´Ï´Ù.

+ +
+ +

³íÆò

+

+°¢ â ¸í·É¾î°¡ ½ÇÇàµÈ ÈÄ ÂªÀº Áö¿¬½Ã°£ (ÀáÀÚ±â)°¡ ÀÚµ¿À¸·Î ½ÇÇàµË´Ï´Ù. ´Ü, IfWinActive¿Í IfWinExist´Â Á¦¿ÜÇÕ´Ï´Ù. ÀÌ·¸°Ô ÇÏ´Â ÀÌÀ¯´Â ½ºÅ©¸³Æ®ÀÇ ½Å·Ú¼ºÀ» °³¼±Çϱâ À§Çؼ­ÀÔ´Ï´Ù. âÀº Á¾Á¾ »ý¼ºµÇ°Å³ª, È°¼ºÈ­µÇ°Å³ª ¶Ç´Â ÃÖ¼ÒÈ­ µÇ°Å³ª µîµî º¯°æÀÌ ÀÖ°í ³­ ÈÄ¿¡ ÀÏÁ¤ÇÑ "ÈÞ½Ä"½Ã°£ÀÌ ÇÊ¿äÇÕ´Ï´Ù. ±×·¡¾ß âÀº ÀÚ½ÅÀ» °»½ÅÇÒ ±âȸ¸¦ °¡Áú ¼ö ÀÖ°í ½ºÅ©¸³Æ®°¡ ±× â¿¡ º¸³»·Á°í ½ÃµµÇÏ´Â ´ÙÀ½ ¸í·É¾î¿¡ ÀÀ´äÇÒ ¼ö Àֱ⠶§¹®ÀÔ´Ï´Ù.

+

+Áö¿¬ ½Ã°£ÀÌ -1ÀÌ¶óµµ (Áö¿¬ ½Ã°£ ÀüÇô ¾øÀ½) Çã¿ëÇÏÁö¸¸, Àû¾îµµ 0Àº »ç¿ëÇϱ⸦ ±ÇÀåÇÕ´Ï´Ù. ±×·¡¾ß CPU°¡ ºÎÇÏ°¡ ¸¹´õ¶óµµ ½ºÅ©¸³Æ®°¡ Á¦´ë·Î ½ÇÇàµÈ´Ù´Â º¸ÀåÀÌ ³ô¾ÆÁý´Ï´Ù.

+

+Áö¿¬ ½Ã°£ÀÌ 0ÀÌ¸é ³»ºÎÀûÀ¸·Î Sleep(0)À» ½ÇÇàÇϴµ¥, ÀÌ ÇÔ¼ö´Â ±×¸¦ ÇÊ¿ä·Î ÇÏ´Â ÇÁ·Î¼¼½º¿¡ ½ºÅ©¸³Æ®ÀÇ ½Ã°£Á¶°¢(timeslice)ÀÇ ³ª¸ÓÁö¸¦ °Ç³Ü´Ï´Ù. ¾Æ¹«°Íµµ ¾øÀ¸¸é, Sleep(0)Àº ÀüÇô ÀáÀÚÁö ¾Ê½À´Ï´Ù.

+

+CPU°¡ ´À¸®°Å³ª ºÎÇÏ°¡ ¸¹´Ù¸é, ¶Ç´Â ⠾ִϸÞÀ̼ÇÀÌ ÄÑÁ® ÀÖ´Ù¸é, ´õ ³ôÀº Áö¿¬ ½Ã°£ÀÌ ÇÊ¿äÇÕ´Ï´Ù.

+ +

+³»Àå º¯¼ö A_WinDelay¿¡ ÇöÀç ¼³Á¤ÀÌ ´ã°Ü ÀÖ½À´Ï´Ù.

+

+»õ·Î ±âµ¿µÈ ¾²·¹µå´Â (¿¹¸¦ µé¾î ÇÖÅ°, ¸ÂÃã ¸Þ´º Ç׸ñ, ¶Ç´Â ŸÀÌ¸Ó ¼­ºê·çƾ) ÀÌ ¸í·É¾î¿¡ ´ëÇÑ ±âº» ¼³Á¤À» °¡Áö°í »õ·Ó°Ô ½ÃÀÛÇÕ´Ï´Ù. ÀÌ ±âº» °ªÀº ÀÚµ¿ ½ÇÇà ¼½¼Ç (½ºÅ©¸³Æ®ÀÇ »ó´Ü)¿¡¼­ ÀÌ ¸í·É¾î¸¦ »ç¿ëÇÏ¿© º¯°æÇÒ ¼ö ÀÖ½À´Ï´Ù.

+ +

°ü·Ã Ç׸ñ

+

+SetControlDelay, SetKeyDelay, SetMouseDelay, SetBatchLines, SendMode

+ +

¿¹Á¦

+
SetWinDelay, 10
+ + + diff --git a/src/docs/commands/SetWorkingDir.htm b/src/docs/commands/SetWorkingDir.htm new file mode 100644 index 0000000..89a4dd0 --- /dev/null +++ b/src/docs/commands/SetWorkingDir.htm @@ -0,0 +1,52 @@ + + + + +SetWorkingDir + + + + + + + +

SetWorkingDir

+ +

½ºÅ©¸³Æ®ÀÇ ÇöÀç ÀÛ¾÷ µð·ºÅ丮¸¦ º¯°æÇÕ´Ï´Ù.

+ +
SetWorkingDir, DirName
+

¸Å°³º¯¼ö

+
+ +
DirName
+

»õ·Î¿î ÀÛ¾÷ µð·ºÅ丮ÀÇ À̸§. Àý´ë °æ·Î¸¦ ÁöÁ¤ÇÏÁö ¾ÊÀ¸¸é ÇöÀç %A_WorkingDir%ÀÌ ÇÏÀ§ µð·ºÅ丮¶ó°í °£Áֵ˴ϴÙ.

+ +
+ +

ErrorLevel

+

+[v1.1.04+] ÀÌ ¸í·É¾î¸¦ ½ÇÆнà ¿¹¿Ü¸¦ ´øÁú ¼ö ÀÖ½À´Ï´Ù. ´õ ÀÚ¼¼ÇÑ Á¤º¸´Â ½ÇÇà½Ã°£ ¿¡·¯¸¦ ÂüÁ¶ÇϽʽÿÀ.

+

+ErrorLevel´Â ¹®Á¦°¡ ÀÖÀ¸¸ç 1ÀÌ ¼³Á¤µÇ°í ±×·¸Áö ¾ÊÀ¸¸é 0ÀÌ ¼³Á¤µË´Ï´Ù.

+ +

³íÆò

+

+½ºÅ©¸³Æ®ÀÇ ÀÛ¾÷ µð·ºÅ丮´Â Àý´ë °æ·Î¸¦ ÁöÁ¤ÇÏÁö ¾Ê¾ÒÀ» ¶§ ÆÄÀÏ°ú Æú´õ¿¡ Á¢±ÙÇÏ´Â µ¥ »ç¿ëµÇ´Â ±âº» µð·ºÅ丮ÀÔ´Ï´Ù. ´ÙÀ½ ¿¹Á¦¿¡¼­ ÆÄÀÏ My Filename.txtÀº %A_WorkingDir% ¾È¿¡ ÀÖ´Ù°í °£Áֵ˴ϴÙ: FileAppend, A Line of Text, My Filename.txt.

+

+½ºÅ©¸³Æ®ÀÇ ÃÖÃÊ ÀÛ¾÷ µð·ºÅ丮´Â ¾î¶»°Ô ±âµ¿µÇ¾ú´Â°¡¿¡ µû¶ó °áÁ¤µË´Ï´Ù. ¿¹¸¦ µé¾î, ´ÜÃàÅ°¸¦ ÅëÇÏ¿© ½ÇÇàµÇ¾ú´Ù¸é -- ¿¹¸¦ µé¾î ½ÃÀÛ ¸Þ´º·Î -- ±×ÀÇ ÀÛ¾÷ µð·ºÅ丮´Â ´ÜÃà ÆÄÀÏÀÇ Æ¯¼º ¾È¿¡ ÀÖ´Â "½ÃÀÛÇϱâ" ¼Ó¼º¿¡ µû¶ó °áÁ¤µË´Ï´Ù.

+

+½ºÅ©¸³Æ®°¡ ¹«Á¶°Ç ÀÚ½ÅÀÇ Æú´õ¸¦ ÀÛ¾÷ µð·ºÅ丮·Î »ç¿ëÇϵµ·Ï °­Á¦ÇÏ·Á¸é, ù ÁÙÀ» ´ÙÀ½°ú °°ÀÌ ÀÛ¼ºÇϽʽÿÀ:

+ +
SetWorkingDir %A_ScriptDir%
+

+ÀÏ´Ü º¯°æµÇ¸é, »õ ÀÛ¾÷ µð·ºÅ丮´Â ½ºÅ©¸³Æ® Àüü¸¦ ÅëÇÏ¿© Àü¿ªÀûÀ¸·Î ±×¸®°í Áï½Ã È¿°ú¸¦ ¹ßÈÖÇÕ´Ï´Ù. ŸÀ̸Ӹ¦ ºñ·ÔÇÏ¿© ÀÎÅÍ·´Æ®µÈ, ¸ØÃá, ±×¸®°í »õ·Î ±âµ¿µÈ ¸ðµç ¾²·¹µå°¡ ¿µÇâÀ» ¹Þ½À´Ï´Ù..

+ +

°ü·Ã Ç׸ñ

+

%A_WorkingDir%, %A_ScriptDir%, FileSelectFolder

+ +

¿¹Á¦

+
SetWorkingDir %A_ScriptDir%
+SetWorkingDir, D:\My Folder\Temp
+ + + diff --git a/src/docs/commands/Shutdown.htm b/src/docs/commands/Shutdown.htm new file mode 100644 index 0000000..9744a04 --- /dev/null +++ b/src/docs/commands/Shutdown.htm @@ -0,0 +1,81 @@ + + + + +Shutdown + + + + + + + +

Shutdown

+ +

½Ã½ºÅÛÀ» ²ô°í, Àç½ÃÀÛÇϸç, ·Î±×¿ÀÇÁ ÇÕ´Ï´Ù.

+ +
Shutdown, Code
+

¸Å°³º¯¼ö

+
+ +
Code
+

¾Æ·¡¿¡ ³ª¿­µÈ ¼Ë´Ù¿î ÄÚµåÀÇ Á¶ÇÕ.

+ +
+ +

³íÆò

+

¼Ë´Ù¿î ÄÚµå´Â ´ÙÀ½ °ªÀ¸·Î Á¶Çյ˴ϴÙ:

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
·Î±×¿ÀÇÁ0
¼Ë´Ù¿î1
¸®ºÎÆ®2
°­Á¦ ⠴ݱâ4
Àü¿ø ³»¸®±â8
º¸·ù/ÀáÀç¿ì±âÀÌ ÆäÀÌÁö ÇÏ´Ü DllCall ¿¹Á¦¸¦ ÂüÁ¶ÇϽʽÿÀ.
¸ð´ÏÅÍ ²ô±âPostMessage ¿¹Á¦¸¦ ÂüÁ¶ÇϽʽÿÀ.
+

+ÇÊ¿äÇÑ °ªÀ» ÇÔ²² ´õÇϽʽÿÀ. ¿¹¸¦ µé¾î, ¼Ë´Ù¿î°ú Àü¿ø ³»¸®±â´Â Äڵ尡 9ÀÔ´Ï´Ù (¼Ë´Ù¿î + Àü¿ø ³»¸®±â = 1 + 8 = 9). ´Ù¸¥ ¹æ¹ýÀ¸·Î, 1+8°ú °°ÀÌ Ç¥Çö½ÄÀ» ÁöÁ¤ÇÒ ¼öµµ ÀÖ½À´Ï´Ù.

+

+°­Á¦ Á¾·á("Force") °ª (4)´Â ¸ðµç ¿­¸° ¾îÇø®ÄÉÀ̼ÇÀ» °­Á¦·Î ´Ý½À´Ï´Ù. ºñ»ó½Ã¿¡¸¸ »ç¿ëÇØ¾ß ÇÕ´Ï´Ù. ¿Ö³ÄÇÏ¸é ¿­¸° ¾îÇø®ÄÉÀ̼ÇÀÌ µ¥ÀÌÅ͸¦ ÀÒ¾î ¹ö¸± ¼ö Àֱ⠶§¹®ÀÔ´Ï´Ù.

+

+Àü¿ø ³»¸®±â("Power down") °ªÀº ½Ã½ºÅÛÀ» ¼Ë´Ù¿î ÇÏ°í Àü¿øÀ» ²ü´Ï´Ù.

+

+°ü·ÃÇÏ¿© ¸»¾¸ µå¸®ÀÚ¸é, ½ºÅ©¸³Æ®´Â ½Ã½ºÅÛÀÌ ¼Ë´Ù¿î ÁßÀÎÁö ¾Æ´Ï¸é »ç¿ëÀÛ ·Î±× ¿ÀÇÁ ÁßÀÎÁö OnExit¸¦ ÅëÇÏ¿© ¾Ë ¼ö ÀÖ½À´Ï´Ù.

+ +

°ü·Ã Ç׸ñ

+

Run, ExitApp, OnExit

+ +

¿¹Á¦

+
; °­Á¦·Î ¸ðµç âÀ» ´Ý°í ¸®ºÎÆ® ÇÕ´Ï´Ù (reboot + force = 2 + 4 = 6):
+Shutdown, 6
+
+; ½Ã½ºÅÛÀ» º¸·ùÇϰųª Àç¿ì±â À§ÇØ Windows API ÇÔ¼ö "SetSuspendState"¸¦ È£ÃâÇÕ´Ï´Ù.
+; ¸Å°³º¯¼ö #1: 0 ´ë½Å 1À» °Ç³×¸é º¸·ù°¡ ¾Æ´Ï¶ó Àç¿ó´Ï´Ù.
+; ¸Å°³º¯¼ö #2: 0 ´ë½Å 1À» °Ç³×¸é °¢ ¾îÇø®ÄÉÀ̼ǿ¡ Çã°¡¸¦ ±¸ÇÏÁö ¾Ê°í Áï½Ã º¸·ùÇÕ´Ï´Ù.
+; ¸Å°³º¯¼ö #3: 0 ´ë½Å 1À» °Ç³×¸é ±ú¾î ÀÖ´Â ¸ðµç À̺¥Æ®¸¦ ºñÈ°¼ºÈ­ ÇÕ´Ï´Ù.
+DllCall("PowrProf\SetSuspendState", "int", 0, "int", 0, "int", 0)
+ + + diff --git a/src/docs/commands/Sleep.htm b/src/docs/commands/Sleep.htm new file mode 100644 index 0000000..6fb69df --- /dev/null +++ b/src/docs/commands/Sleep.htm @@ -0,0 +1,70 @@ + + + + +Sleep + + + + + + + +

Sleep

+ +

°è¼ÓÇϱâ Àü¿¡ ÁöÁ¤µÈ ½Ã°£ µ¿¾È ±â´Ù¸³´Ï´Ù.

+ +
Sleep, DelayInMilliseconds
+

¸Å°³º¯¼ö

+
+ +
Delay
+

¸ØÃ⠽ð£ (¹Ð¸®ÃÊ ´ÜÀ§), 0ºÎÅÍ 2147483647±îÁö (24 ÀÏ), Ç¥Çö½Ä °¡´É.

+ +
+ +

³íÆò

+

+OSÀÇ ½Ã°£-À¯Áö ½Ã½ºÅÛÀÇ Á¤¹Ðµµ ¶§¹®¿¡, Áö¿¬ ½Ã°£Àº º¸Åë (Çϵå¿þ¾î¿Í ¼³Ä¡µÈ µå¶óÀ̹öÀÇ Á¾·ù¿¡ µû¶ó) °¡Àå °¡±î¿î 10 ¶Ç´Â 15.6 ¹Ð¸®ÃÊÀÇ ¹è¼ö·Î ¿Ã¸²µË´Ï´Ù. ¿¹¸¦ µé¾î, Áö¿¬½Ã°£ÀÌ 1ºÎÅÍ 10(Æ÷ÇÔ) »çÀÌÀÌ¸é ´ëºÎºÐÀÇ Windows 2000/XP ½Ã½ºÅÛ¿¡¼­ 10 ¶Ç´Â 15.6°ú µ¿µîÇÕ´Ï´Ù. ´õ ªÀº Áö¿¬ ½Ã°£ÀÌ ÇÊ¿äÇϸé, ´ÙÀ½ ¿¹Á¦¸¦ ÂüÁ¶ÇϽʽÿÀ.

+

+½ÇÁ¦ Áö¿¬ ½Ã°£Àº CPU¿¡ ºÎÇÏ°¡ ¸¹À» °æ¿ì ¿ä±¸ÇÑ °Íº¸´Ù ´õ ±æ¾îÁú °¡´É¼ºÀÌ ÀÖ½À´Ï´Ù. ÀÌ°ÍÀº OS°¡ ½ºÅ©¸³Æ®¿¡ ¶Ç´Ù¸¥ ½Ã°£Á¶°¢(timeslice)À» ÁÖ±â Àü¿¡ °¢°¢ÀÇ ÇÊ¿äÇÑ ÇÁ·Î¼¼½º¿¡ CPU ½Ã°£À» ³ª´©¾î Áֱ⠶§¹®ÀÔ´Ï´Ù (º¸Åë 20 ¹Ð¸®ÃÊ).

+

+Áö¿¬ ½Ã°£ÀÌ 0ÀÏ °æ¿ì (´Ù¸¥ ½ºÅ©¸³Æ®º¸´Ù ¿ì¼± ¼øÀ§°¡ ¾öû³ª°Ô ³·Áö¸¸ ¾Ê´Ù¸é) ±×¸¦ ÇÊ¿ä·Î ÇÏ´Â ´Ù¸¥ ÇÁ·Î¼¼½º¿¡ ½ºÅ©¸³Æ®ÀÇ ÇöÀç ½Ã°£Á¶°¢(timeslice)ÀÇ ³ª¸ÓÁö¸¦ ³ª´©¾î ÁÝ´Ï´Ù. +±×·¡¼­, Áö¿¬ ½Ã°£ÀÌ 0ÀÌ¸é ½ÇÁ¦ Áö¿¬ ½Ã°£Àº ÇÊ¿ä·Î ÇÏ´Â ÇÁ·Î¼¼½ºÀÇ °³¼ö¿¡ µû¶ó 0ºÎÅÍ 20ms (ÀÌ»ó)ÀÌ »ý»êµË´Ï´Ù (ÇÊ¿ä·Î ÇÏ´Â ÇÁ·Î¼¼½º°¡ ¾ø´Ù¸é, ÀüÇô Áö¿¬ ½Ã°£ÀÌ ¾ø½À´Ï´Ù). ±×·¸Áö¸¸, Delay°¡ 0ÀÌ¸é ´õ ±ä Delay°¡ °É·ÈÀ» Áö¿¬ ½Ã°£º¸´Ù ¾ðÁ¦³ª ¶° ª°Ô ³¡³³´Ï´Ù.

+

+ÀáÀÚ´Â µ¿¾È, ÇÖÅ°, ¸ÂÃã ¸Þ´º Ç׸ñ, ¶Ç´Â ŸÀ̸Ӹ¦ ÅëÇÏ¿© »õ ¾²·¹µå¸¦ ±âµ¿ÇÒ ¼ö ÀÖ½À´Ï´Ù.

+

+Sleep -1: Áö¿¬ ½Ã°£ÀÌ -1À̸é ÀáÀÚÁö ¾ÊÁö¸¸ ´ë½Å¿¡ ½ºÅ©¸³Æ®°¡ Áï½Ã ±×ÀÇ ¸Þ½ÃÁö Å¥¸¦ Á¡°ËÇϵµ·Ï ¸¸µì´Ï´Ù. ÀÌ°ÍÀ» »ç¿ëÇÏ¸é º¸·ùµÈ ÀÎÅÍ·´Æ®µéÀ» ¹«ÀÛÀ§·Î ¾Æ¹«µ¥¼­³ª ÀϾµµ·Ï µÎÁö ¾Ê°í °­Á¦·Î ƯÁ¤ÇÑ À§Ä¡¿¡¼­ ÀϾ°Ô ¸¸µé ¼ö ÀÖ½À´Ï´Ù. ÀÚ¼¼ÇÑ °ÍÀº CriticalÀ» ÂüÁ¶ÇϽʽÿÀ.

+ +

°ü·Ã Ç׸ñ

+

+SetKeyDelay, SetMouseDelay, SetControlDelay, SetWinDelay, SetBatchLines

+ +

¿¹Á¦

+
Sleep, 1000  ; 1 ÃÊ
+

 

+ +
; ´ÙÀ½Àº Á¤»óÀÎ 10 ¶Ç´Â 15.6 ¹Ð¸®Ãʺ¸´Ù
+; ´õ ª°Ô Àç¿ì´Â ¹ýÀ» º¸¿©ÁÖ´Â ¿¹Á¦ÀÔ´Ï´Ù.
+; ÁÖÀÇ: ½ºÅ©¸³Æ®°¡ ÀÌ·± ½ÄÀ¸·Î ½ÇÇà ÁßÀÎ µ¿¾È,
+; Àüü ¿î¿µÃ¼Á¦¿Í ¾îÇÃÀÌ ¸ðµÎ ¾Æ·¡ÀÇ timeBeginPeriod¿¡ ¿µÇâÀ» ¹Þ½À´Ï´Ù.
+
+SetBatchLines -1  ; ÀÌ ¹æ¹ýÀÌ ÃÖ´ë·Î È¿°ú°¡ ÀÖµµ·Ï È®ÀÎÇÕ´Ï´Ù.
+
+SleepDuration = 1  ; ÀÌ°ÍÀº Á¾Á¾ ¾Æ·¡ÀÇ °ª¿¡ µû¶ó ¹Ì¼¼ÇÏ°Ô Á¶ÀýÇÒ ¼ö ÀÖ½À´Ï´Ù (¿¹,  2´Â 3°ú ´Ù¸¨´Ï´Ù).
+TimePeriod = 3 ; 7 ¶Ç´Â 3À» ½ÃµµÇÕ´Ï´Ù. ¾Æ·¡ ÁÖ¼®À» ÂüÁ¶ÇϽʽÿÀ.
+; ÀáÀڱ⠽ð£ÀÌ º¸Åë 15.6 ¹Ð¸®ÃÊ·Î ¿Ã¸²µÇ´Â PC¶ó¸é, TimePeriod=7À» ½ÃµµÇϸé
+; ¾à°£ ´õ ªÀº ¼ö¸é ½Ã°£À» Çã¿ëÇÏ°í, TimePeriod=3 ÀÌÇϸ¦ ½ÃµµÇÏ¸é °¡´ÉÇÑ ÂªÀº ¼ö¸é ½Ã°£À» Çã¿ëÇÕ´Ï´Ù.
+
+DllCall("Winmm\timeBeginPeriod", uint, TimePeriod)  ; ÀÌ ½ºÅ©¸³Æ®ÀÇ DllCall("Sleep"...)Àº ¹°·ÐÀÌ°í ¸ðµç ¾îÇø®ÄÉÀ̼ǿ¡ ¿µÇâÀ» ÁÝ´Ï´Ù. ±×·¯³ª SetTimer¿¡´Â ¿µÇâÀ» ¹ÌÄ¡Áö ¾Ê½À´Ï´Ù..
+Iterations = 50
+StartTime := A_TickCount
+
+Loop %Iterations%
+    DllCall("Sleep", UInt, SleepDuration)  ; Sleep ¸í·É¾î ´ë½Å¿¡ DllCallÀ» »ç¿ëÇØ¾ß ÇÕ´Ï´Ù.
+
+DllCall("Winmm\timeEndPeriod", UInt, TimePeriod)  ; ½Ã½ºÅÛÀ» Á¤»óÀ¸·Î º¹±¸ÇÏ·Á¸é È£ÃâÇØ¾ß ÇÕ´Ï´Ù.
+MsgBox % "Sleep duration = " . (A_TickCount - StartTime) / Iterations
+ + + diff --git a/src/docs/commands/Sort.htm b/src/docs/commands/Sort.htm new file mode 100644 index 0000000..d7e8437 --- /dev/null +++ b/src/docs/commands/Sort.htm @@ -0,0 +1,137 @@ + + + + +Sort + + + + + + + +

Sort

+ +

º¯¼öÀÇ ³»¿ëÀ» ¾ËÆĺª, ¼ýÀÚ, ¶Ç´Â ¹«ÀÛÀ§ ¼ø¼­·Î Á¤·ÄÇÕ´Ï´Ù (¼±ÅÃÀûÀ¸·Î Áߺ¹À» Á¦°ÅÇÕ´Ï´Ù).

+ +
Sort, VarName [, Options]
+

¸Å°³º¯¼ö

+
+ +
VarName
+

±×ÀÇ ³»¿ëÀÌ Á¤·ÄµÉ º¯¼öÀÇ À̸§. ÀÌ º¯¼ö´Â Ç¥Çö½ÄÀÌ ºÒ°¡´ÉÇÕ´Ï´Ù.

+ +
Options
+

¾Æ·¡ ¸®½ºÆ® ÂüÁ¶.

+ +
+ +

Options

+

+´ÙÀ½ ±âÈ£·Î ±¸¼ºµÇ´Â ¹®ÀÚ¿­ (¼ø¼­¿¡ »ó°ü¾øÀÌ, ¼±ÅÃÀûÀ¸·Î »çÀÌ¿¡ ½ºÆäÀ̽º):

+

+C: ´ë¼Ò¹®ÀÚ ±¸ºÐ Á¤·Ä (N ¿É¼Çµµ Á¸ÀçÇÏ¸é ¹«½ÃµË´Ï´Ù). C¿Í CLÀÌ ¸ðµÎ »ý·«µÇ¸é, ´ë¹®ÀÚ A-Z´Â Á¤·ÄÀÇ ¸ñÀûÀ¸·Î ¼Ò¹®ÀÚ¿Í µ¿ÀÏÇÏ´Ù°í °£ÁÖÇÕ´Ï´Ù.

+

+CL [v1.0.43.03+]: ÇöÀç »ç¿ëÀÚÀÇ ·ÎÄÉÀÏ¿¡ ±â¹ÝÇÏ¿© ´ë¼Ò¹®ÀÚ¸¦ ±¸ºÐÇÏ¿© Á¤·ÄÇÕ´Ï´Ù. ¿¹¸¦ µé¾î, ´ëºÎºÐÀÇ ¿µ¾î¿Í ¼­±¸ À¯·´¾î ·ÎÄÉÀÏÀº A-Z ±âÈ£ ±×¸®°í Ä ¿Í Ü¿Í °°Àº ANSI ±âÈ£¸¦ ¼Ò¹®ÀÚ¿Í µ¿ÀÏÇÏ´Ù°í °£ÁÖÇÕ´Ï´Ù. ÀÌ ¹æ¹ýÀº ¶ÇÇÑ "word sort"¸¦ »ç¿ëÇϱ⵵ ÇÕ´Ï´Ù. ÀÌ·¸°Ô Çϸé "coop" ±×¸®°í "co-op"¿Í °°Àº ´Ü¾îµéÀÌ ÇÔ²² ÀÖµµ·Ï ÇÏÀÌÇÂ(hyphens)°ú ¾îÆ÷½ºÆ®·ÎÇÇ(apostrophes)¸¦ Ãë±ÞÇÕ´Ï´Ù. ÇöÀç Á¤·Ä ÁßÀÎ Ç׸ñÀÇ ³»¿ë¿¡ µû¶ó, ¼öÇ༺´ÉÀº ±âº»ÀûÀÎ ´ë¼Ò¹®ÀÚ ºñ±¸ºÐ ¹æ¹ý¿¡ ºñÇØ 1¹è¿¡¼­ 8 ¹è±îÁö ³ª»Ü ¼ö ÀÖ½À´Ï´Ù.

+

+Dx: ±¸ºÐ ¹®ÀÚ·Î x¸¦ ÁöÁ¤ÇÕ´Ï´Ù. ±¸ºÐ ¹®ÀÚ´Â VarName¿¡¼­ °¢ Ç׸ñÀÌ ½ÃÀÛµÇ°í ³¡³ª´Â °÷À» °áÁ¤ÇÕ´Ï´Ù. ÀÌ ¿É¼ÇÀÌ Á¸ÀçÇÏÁö ¾ÊÀ¸¸é, x´Â ±âº»°ªÀÌ ¶óÀÎÇǵå (`n)ÀÔ´Ï´Ù. ÁÙÀÌ LF (`n) ¶Ç´Â CR+LF (`r`n)·Î ³¡³­´Ù¸é ¿Ã¹Ù¸£°Ô VarNameÀ» Á¤·ÄÇÕ´Ï´Ù.

+

+F MyFunction [v1.0.47+]: MyFunction¿¡ ÀÖ´Â ±âÁØ¿¡ ¸Â°Ô ¸ÂÃã Á¤·ÄÇÕ´Ï´Ù (¹°·Ð Á¤·Ä ½Ã°£Àº ´õ ±æ¾îÁý´Ï´Ù). +±âÈ£ "F" ´ÙÀ½¿¡ ¼±ÅÃÀûÀ¸·Î ½ºÆäÀ̽º/ÅÇ°ú ±×¸®°í ¸®½ºÆ®ÀÇ µÎ Ç׸ñÀ» ºñ±³ÇÏ´Â µ¥ »ç¿ëµÉ ÇÔ¼öÀÇ À̸§À» ÁöÁ¤ÇϽʽÿÀ. ÇÔ¼ö´Â µÎ °³ ¶Ç´Â ¼¼ °³ÀÇ ¸Å°³º¯¼ö¸¦ ¹Þ¾Æ¾ß ÇÕ´Ï´Ù. ÇÔ¼ö°¡ ù ¹ø° ¸Å°³º¯¼ö¸¦ µÎ ¹ø° º¸´Ù Å©´Ù°í »ý°¢Çϸé, ¾çÀÇ Á¤¼ö¸¦ µ¹·ÁÁÙ °ÍÀÔ´Ï´Ù. µÎ ¸Å°³º¯¼ö°¡ °°´Ù°í »ý°¢Çϸé 0 ¶Ç´Â ""À» µ¹·ÁÁְųª ¾Æ´Ï¸é ¾Æ¹«°Íµµ µ¹·ÁÁÖÁö ¾Ê½À´Ï´Ù; ±×·¸Áö ¾ÊÀ¸¸é, À½ÀÇ Á¤¼ö¸¦ µ¹·ÁÁÝ´Ï´Ù. ¼Ò¼ö Á¡ÀÌ ¹ÝȯµÈ °ª¿¡ Á¸ÀçÇϸé, ±× ºÎºÐÀº ¹«½ÃµË´Ï´Ù (Áï, 0.8Àº 0°ú °°½À´Ï´Ù). Á¸ÀçÇϸé, ¼¼ ¹ø° ¸Å°³º¯¼ö´Â ¿øº»/Á¤·ÄµÇÁö ¾ÊÀº ¸®½ºÆ®¿¡ º¸¿©Áö´Â (¿¹Á¦ ÂüÁ¶) ù ¹ø° Ç׸ñÀ¸·ÎºÎÅÍ µÎ ¹ø° Ç׸ñÀÇ »ó´ë°Å¸®¸¦ ¹Þ½À´Ï´Ù (¹®ÀÚ ´ÜÀ§). ¸¶Áö¸·À¸·Î, ÀÌ ÇÔ¼ö´Â ±×¸¦ È£ÃâÇÑ Sort ¸í·É¾î¿Í °°Àº Àü¿ª ¼³Á¤À» »ç¿ëÇÕ´Ï´Ù (¿¹, StringCaseSense).

+

+ÁÖÀÇ: F ¿É¼Ç¿¡¼­ ¸ðµç ¿É¼ÇÀº D, Z, ±×¸®°í U¸¦ Á¦¿ÜÇÏ°í ¹«½ÃµË´Ï´Ù (¹°·Ð N, C, ±×¸®°í CLÀº ¿©ÀüÈ÷ Áߺ¹À» ŽÁöÇÏ´Â ¹æ½Ä¿¡ ¿µÇâÀ» ¹ÌĨ´Ï´Ù). ¶ÇÇÑ, . ÁöÁ¤µÈ ÇÔ¼ö°¡ : +

    +
  1. Á¸ÀçÇÏÁö ¾Ê°Å³ª; +
  2. ¸Å°³º¯¼ö¸¦ µÎ °³ ¹Ì¸¸À¸·Î ¹ÞÀ» ¶§; +
  3. ¶Ç´Â ù ¹ø° ¶Ç´Â µÎ ¹ø° ¸Å°³º¯¼ö°¡ ByRefÀÏ ¶§ +
+ Á¤·ÄÀº ÀϾÁö ¾Ê½À´Ï´Ù.

+

+N: ¼ýÀÚ¼ø Á¤·Ä: °¢ Ç׸ñÀº ¹®ÀÚ¿­ÀÌ ¾Æ´Ï¶ó ¼ýÀÚ·Î °£Áֵ˴ϴ٠(¿¹¸¦ µé¾î, ÀÌ ¿É¼ÇÀÌ Á¸ÀçÇÏÁö ¾ÊÀ¸¸é, ¾ËÆĺª ¼ø¼­À̱⠶§¹®¿¡ ¹®ÀÚ¿­ 233Àº ¹®ÀÚ¿­ 40º¸´Ù ÀÛ´Ù°í °£Áֵ˴ϴÙ.). ½ÊÁø ¹®ÀÚ¿­°ú ½ÊÀ°Áø ¹®ÀÚ¿­ ¸ðµÎ (¿¹,. 0xF1) ¼ýÀÚ·Î °£Áֵ˴ϴÙ. ¼ýÀÚ·Î ½ÃÀÛÇÏÁö ¾Ê´Â ¹®ÀÚ¿­Àº Á¤·ÄÀÇ ¸ñÀûÀ¸·Î 0À̶ó°í °£ÁÖÇÕ´Ï´Ù. ¼ýÀÚ´Â 64-ºñÆ® ºÎµ¿ ¼Ò¼öÁ¡ ¼ö·Î °£ÁÖÇÕ´Ï´Ù. (ÀÖ´Ù¸é) °¢ ¼ýÀÚÀÇ ¼Ò¼ö ºÎºÐµµ °í·ÁµË´Ï´Ù.

+

+Pn: ¹®ÀÚ À§Ä¡ n¿¡ ±â¹ÝÇÏ¿© Ç׸ñµéÀ» Á¤·ÄÇÕ´Ï´Ù (n¿¡ ½ÊÀ°Áø ¼ö¸¦ »ç¿ëÇÏÁö ¸¶½Ê½Ã¿À). ÀÌ ¿É¼ÇÀÌ Á¸ÀçÇÏÁö ¾ÊÀ¸¸é, n Àº ±âº»°ªÀÌ 1ÀÔ´Ï´Ù. ÀÌ°ÍÀº ù ¹®ÀÚÀÇ À§Ä¡ÀÔ´Ï´Ù. Á¤·ÄÀº °¢ ¹®ÀÚ¿­À» ´Ù¸¥ ¹®ÀÚ¿­¿¡ ±×ÀÇ n¹ø° ¹®ÀÚºÎÅÍ ºñ±³ÇÕ´Ï´Ù. nÀÌ ¹®ÀÚ¿­ÀÇ ±æÀ̺¸´Ù ´õ Å©¸é, ±× ¹®ÀÚ¿­Àº Á¤·ÄÀÇ ¸ñÀûÀ¸·Î ºñ¾î ÀÖ´Ù°í °£ÁÖÇÕ´Ï´Ù. N (¼ýÀÚ Á¤·Ä) ¿É¼Ç°ú ÇÔ²² »ç¿ëµÉ ¶§, ÀÌ ¹®ÀÚ¿­ÀÇ À§Ä¡°¡ »ç¿ëµË´Ï´Ù. ¹Ýµå½Ã ±× ¼ýÀÚÀÇ ÀÚ¸® À§Ä¡¿Í °°¾Æ¾ß ÇÒ ÇÊ¿ä´Â ¾ø½À´Ï´Ù.

+

+R: ¿ª¼øÀ¸·Î Á¤·ÄÇÕ´Ï´Ù (´Ù¸¥ ¿É¼Ç¿¡ µû¶ó ¾ËÆĺª ¶Ç´Â ¼ýÀÚ ¼ø¼­·Î).

+

+Random: ¹«ÀÛÀ§ ¼ø¼­·Î Á¤·ÄÇÕ´Ï´Ù. ÀÌ ¿É¼Ç ¶§¹®¿¡ D, Z, ±×¸®°í U¸¦ Á¦¿ÜÇÏ°í ´Ù¸¥ ¸ðµç ¿É¼ÇÀº ¹«½ÃµË´Ï´Ù (¹°·Ð N, C, ±×¸®°í CLÀº ¿©ÀüÈ÷ Áߺ¹À» ŽÁöÇÏ´Â ¹æ½Ä¿¡ ¿µÇâÀ» ¹ÌĨ´Ï´Ù). ¿¹¸¦ µé¾î:

+
Sort, MyVar, Random
+Sort, MyVar, Random Z D|
+

+U ¸ðµç Ç׸ñÀÌ À¯ÀÏÇϵµ·Ï ¸®½ºÆ®·ÎºÎÅÍ Áߺ¹ Ç׸ñÀ» Á¦°ÅÇÕ´Ï´Ù. ErrorLevelÀº Á¦°ÅµÈ Ç׸ñÀÇ °³¼ö°¡ ¼³Á¤µË´Ï´Ù (¾øÀ¸¸é 0). C ¿É¼ÇÀÌ ÄÑÁ® ÀÖÀ¸¸é, Ç׸ñÀÇ ´ë¼Ò¹®ÀÚ°¡ ¹Ýµå½Ã ÀÏÄ¡ÇØ¾ß µ¿ÀÏÇÏ´Ù°í °£ÁÖÇÕ´Ï´Ù. N ¿É¼ÇÀÌ ÄÑÁ® ÀÖÀ¸¸é, 2 °°Àº Ç׸ñÀº 2.0°ú Áߺ¹À̶ó°í °£ÁÖÇÕ´Ï´Ù. Pn ¶Ç´Â \ (¿ª»ç¼±) ¿É¼ÇÀÌ ÄÑÁ® ÀÖÀ¸¸é, Á¤·Ä¿¡ »ç¿ëµÈ ºÎ¹®ÀÚ¿­ÀÌ ¾Æ´Ï¶ó Àüü Ç׸ñÀÌ Áߺ¹À̾î¾ß ÇÕ´Ï´Ù. Random ¶Ç´Â F/Function ¿É¼ÇÀÌ ÄÑÁ® ÀÖÀ¸¸é, Á¤·ÄÀÇ °á°ú·Î ¼­·Î ÀÎÁ¢ÇÏ°Ô ³ªÅ¸³¯ ¶§¸¸ Áߺ¹ÀÌ Á¦°ÅµË´Ï´Ù. ¿¹¸¦ µé¾î, "A|B|A"¸¦ ¹«ÀÛÀ§ ¼ø¼­·Î Á¤·ÄÇÒ ¶§, ±× °á°ú´Â A°¡ ÇÑ °³ ¶Ç´Â µÎ °³°¡ ´ã±æ ¼ö ÀÖ½À´Ï´Ù.

+

+Z: ÀÌ ¿É¼ÇÀ» ÀÌÇØÇÏ·Á¸é, º¯¼ö¿¡ RED`nGREEN`nBLUE`n°¡ ´ã°Ü ÀÖ´Ù°í »ý°¢ÇØ º¸½Ê½Ã¿À. Z ¿É¼ÇÀÌ Á¸ÀçÇÏÁö ¾ÊÀ¸¸é, ¸¶Áö¸· ¶óÀÎÇǵå (`n)´Â ¸¶Áö¸· Ç׸ñÀÇ ÀϺκÐÀ¸·Î °£Áֵ˴ϴÙ. ±×¸®ÇÏ¿© 3 °³ÀÇ Ç׸ñ¸¸ ÀÖ½À´Ï´Ù. ±×·¯³ª Z ¿É¼ÇÀ» ÁöÁ¤Çϸé, ¸¶Áö¸·ÀÇ `n (Á¸ÀçÇϸé)Àº ¸®½ºÆ® ¸¶Áö¸·ÀÇ ºó Ç׸ñÀ» ±¸ºÐÇÑ´Ù°í °£Áֵ˴ϴÙ. ±×¸®ÇÏ¿© 4 °³ÀÇ Ç׸ñÀÌ ÀÖ½À´Ï´Ù (¸¶Áö¸· Ç׸ñÀº ºñ¾î ÀÖ½À´Ï´Ù).

+

+\: °¢°¢ÀÇ ¸¶Áö¸· ¿ª»ç¼± ´ÙÀ½¿¡ ¿À´Â ºÎ¹®ÀÚ¿­¿¡ ±â¹ÝÇÏ¿© Ç׸ñµéÀ» Á¤·ÄÇÕ´Ï´Ù. Ç׸ñ¿¡ ¿ª»ç¼±ÀÌ ¾øÀ¸¸é, Àüü Ç׸ñÀÌ ºÎ¹®ÀÚ¿­·Î »ç¿ëµË´Ï´Ù. ÀÌ ¿É¼ÇÀº ÆÄÀÏ À̸§¸¸ Á¤·ÄÇÒ ¶§ À¯¿ëÇÕ´Ï´Ù (Áï, °æ·Î Á¦¿Ü). ¾Æ·¡ÀÇ ¿¹Á¦¿Í °°Àº °æ¿ì, AAA.txt ÁÙÀº BBB.txt ÁÙº¸´Ù À§¿¡ Á¤·ÄµË´Ï´Ù. ¿Ö³ÄÇϸé Á¤·ÄÀÇ ¸ñÀûÀ¸·Î µð·ºÅ丮´Â ¹«½ÃÇϱ⠶§¹®ÀÔ´Ï´Ù:

+
C:\BBB\AAA.txt
+C:\AAA\BBB.txt
+

+ÁÖÀÇ: Options N ±×¸®°í P´Â ¿ª»ç¼± ¿É¼ÇÀÌ Á¸ÀçÇÏ¸é ¹«½ÃµË´Ï´Ù.

+ +

³íÆò

+

+ÀÌ ¸í·É¾î´Â ÀüÇüÀûÀ¸·Î ÁÙ ¸®½ºÆ®¸¦ ´ã°í ÀÖ´Â º¯¼ö¸¦ Á¤·ÄÇÏ´Â µ¥ »ç¿ëµË´Ï´Ù. ÁÙ ¸®½ºÆ®´Â °¢ ÁÙÀÌ ¶óÀÎÇÇµå ¹®ÀÚ (`n)·Î ³¡³³´Ï´Ù. ÁÙ ¸®½ºÆ®¸¦ º¯¼ö ¾È¿¡ ³Ö´Â ¹æ¹ýÀº Àüü ÆÄÀÏÀ» FileRead¸¦ ÅëÇÏ¿© ÀûÀçÇÏ´Â °ÍÀÔ´Ï´Ù.

+

+VarNameÀº ClipboardÀÌ°í ±× Å¬¸³º¸µå ¾È¿¡´Â ÆÄÀϵéÀÌ ´ã°Ü ÀÖ½À´Ï´Ù (¿¹¸¦ µé¾î ¿­¸° Ž»ö âÀ¸·ÎºÎÅÍ º¹»çµÈ ÆÄÀϵé). ±×·± ÆÄÀϵéÀº Á¤·ÄµÈ ¸®½ºÆ®·Î ±³Ã¼µË´Ï´Ù. +´Ù¸¥ ¸»·Î, ¿¬»êÀÌ ³¡³ª¸é Ŭ¸³º¸µå¿¡´Â ´õ ÀÌ»ó ÆÄÀÏ ÀÚü°¡ ³²¾Æ ÀÖÁö ÀÖ½À´Ï´Ù.

+

+ErrorLevel´Â U ¿É¼ÇÀÌ ÄÑÁ® ÀÖÀ» ¶§¸¸ ÀÌ ¸í·É¾î·Î ¹Ù²ò´Ï´Ù.

+

+º¯¼öÀÇ ÃÖ´ë °¡¿ë ´É·ÂÀº #MaxMem¸¦ ÅëÇÏ¿© Áõ°¡½Ãų ¼ö ÀÖ½À´Ï´Ù.

+

+¹æ´ëÇÑ º¯¼ö¸¦ Á¤·ÄÇß°í ³ªÁß¿¡ ±×ÀÇ ³»¿ëÀÌ ´õ ÀÌ»ó ÇÊ¿äÇÏÁö ¾ÊÀ¸¸é, ºñ¿ö¼­ ±×ÀÇ ¸Þ¸ð¸®¸¦ ÇØÁ¦ÇÒ ¼ö ÀÖ½À´Ï´Ù. ¿¹, MyVar =.

+ +

°ü·Ã Ç׸ñ

+

+FileRead, ÆÄÀÏ-Àбâ ȸµ¹ÀÌ, ÆÄ½Ì È¸µ¹ÀÌ, StringSplit, RegisterCallback(), Ŭ¸³º¸µå, #MaxMem

+ +

¿¹Á¦

+
MyVar = 5,3,7,9,1,13,999,-4
+Sort MyVar, N D,  ; ¼ýÄ¡·Î Á¤·ÄÇÕ´Ï´Ù. ½°Ç¥¸¦ ±¸ºÐÀÚ·Î »ç¿ëÇÕ´Ï´Ù.
+MsgBox %MyVar%   ; °á°ú´Â -4,1,3,5,7,9,13,999ÀÔ´Ï´Ù
+
+; ´ÙÀ½ ¿¹Á¦´Â ÆÄÀÏÀÇ ³»¿ëÀ» Á¤·ÄÇÕ´Ï´Ù:
+FileRead, Contents, C:\Address List.txt
+if not ErrorLevel  ; ¼º°øÀûÀ¸·Î ÀûÀçµÊ.
+{
+    Sort, Contents
+    FileDelete, C:\Address List (alphabetical).txt
+    FileAppend, %Contents%, C:\Address List (alphabetical).txt
+    Contents =  ; ¸Þ¸ð¸®¸¦ Ç®¾îÁÝ´Ï´Ù.
+}
+
+; ´ÙÀ½ ¿¹Á¦¿¡¼­ Win+C´Â ÇÖÅ°°¡ µË´Ï´Ù.
+; ¿­¸° Ž»ö âÀ¸·ÎºÎÅÍ ÆÄÀϵéÀ» º¹»çÇØ Á¤·ÄµÈ ÆÄÀÏÀ̸§µéÀ» Ŭ¸³º¸µå¿¡ ¹èÄ¡ÇÕ´Ï´Ù:
+#c::
+Clipboard = ; ŽÁö°¡ ÀÛµ¿ÇÏ·Á¸é ¹Ýµå½Ã ºñ¾î ÀÖ¾î¾ß ÇÕ´Ï´Ù.
+Send ^c
+ClipWait 2
+if ErrorLevel
+    return
+Sort Clipboard
+MsgBox Ready to be pasted:`n%Clipboard%
+return
+
+; ´ÙÀ½ ¿¹Á¦´Â ¿ªÈ£Ãâ ÇÔ¼ö¸¦ ÅëÇÏ¿© ¸ÂÃã Á¤·ÄÀ» º¸¿©ÁÝ´Ï´Ù.
+MyVar = def`nabc`nmno`nFGH`nco-op`ncoop`ncop`ncon`n
+Sort, MyVar, F StringSort
+StringSort(a1, a2)
+{
+    return a1 > a2 ? 1 : a1 < a2 ? -1 : 0  ; StringCaseSense¿¡ ±â¹ÝÇÏ¿© ¾ËÆĺª ¼øÀ¸·Î Á¤·ÄÇÕ´Ï´Ù.
+}
+
+MyVar = 5,3,7,9,1,13,999,-4
+Sort, MyVar, F IntegerSort D,
+IntegerSort(a1, a2)
+{
+    return a1 - a2  ; ¼ýÀÚ¸¦ ¿À¸§ Â÷¼øÀ¸·Î Á¤·ÄÇÕ´Ï´Ù. ÀÌ ¹æ¹ýÀº Â÷ÀÌ°¡ ºÎÈ£ÀÖ´Â 64-ºñÆ® Á¤¼ö¸¦ ³ÑÁö ¾ÊÀ» ¶§¿¡¸¸ ÀÛµ¿ÇÕ´Ï´Ù.
+}
+
+MyVar = 1,2,3,4
+Sort, MyVar, F ReverseDirection D,  ; ¾È¿¡ 4,3,2,1ÀÌ µé¾î ÀÖ´Â ¸®½ºÆ®¸¦ µÚÁý½À´Ï´Ù.
+ReverseDirection(a1, a2, offset)
+{
+    return offset  ; ¿ø·¡ ¸®½ºÆ®¿¡¼­ a2 °¡ a1 µÚ¿¡ ¿À¸é »ó´ë°Å¸®(Offset)´Â ¾ç¼öÀÔ´Ï´Ù. ±×·¸Áö ¾ÊÀ¸¸é À½¼öÀÔ´Ï´Ù.
+}
+ + + diff --git a/src/docs/commands/SoundBeep.htm b/src/docs/commands/SoundBeep.htm new file mode 100644 index 0000000..fbe912a --- /dev/null +++ b/src/docs/commands/SoundBeep.htm @@ -0,0 +1,43 @@ + + + + +SoundBeep + + + + + + + +

SoundBeep

+ +

PC ½ºÇÇÄ¿·Î ÅæÀ» ¹æÃâÇÕ´Ï´Ù.

+ +
SoundBeep [, Frequency, Duration]
+

¸Å°³º¯¼ö

+
+ +
Frequency
+

¼Ò¸®ÀÇ Áøµ¿¼ö. Ç¥Çö½ÄÀÏ ¼ö ÀÖ½À´Ï´Ù. 37ºÎÅÍ 32767 »çÀÌÀÇ ¼ýÀÚ°¡ µÇ¾î¾ß ÇÕ´Ï´Ù. »ý·«Çϸé, ±âº»°ªÀº 523ÀÔ´Ï´Ù.

+ +
Duration
+

¼Ò¸®ÀÇ Áö¼Ó ½Ã°£. ¹Ð¸®ÃÊ ´ÜÀ§ (Ç¥Çö½Ä °¡´É). »ý·«Çϸé, ±âº»°ªÀº 150ÀÔ´Ï´Ù.

+ +
+ +

³íÆò

+

+½ºÅ©¸³Æ®´Â ¼Ò¸®°¡ ³¡³ª±â¸¦ ±â´Ù¸° ´ÙÀ½ ½ÇÇàÀ» °è¼ÓÇÕ´Ï´Ù. °Ô´Ù°¡, ¼Ò¸®°¡ ³ª¿À´Â µ¿¾ÈÀº ½Ã½ºÅÛÀÇ ¹ÝÀÀ¼ºÀÌ ÁÙ¾îµé ¼öµµ ÀÖ½À´Ï´Ù.

+

+ÄÄÇ»ÅÍ¿¡ »ç¿îµå Ä«µå°¡ ¾ø´Ù¸é, Ç¥ÁØ »ß-ÀÌ ¼Ò¸®°¡ PC ½ºÇÇÄ¿¸¦ ÅëÇÏ¿© ¿¬Áֵ˴ϴÙ.

+

+PC ½ºÇÇÄ¿ ´ë½Å¿¡ Ç¥ÁØ ½Ã½ºÅÛ »ç¿îµå Ä«µå·Î »ß-ÀÌ ¼Ò¸®¸¦ ³»·Á¸é, SoundPlayÀÇ º°Ç¥ ¸ðµå¸¦ ÂüÁ¶ÇϽʽÿÀ.

+

°ü·Ã Ç׸ñ

+

SoundPlay

+

¿¹Á¦

+
SoundBeep  ; ±âº» Áøµ¿¼ö¿Í Áö¼Ó ½Ã°£À¸·Î ¿¬ÁÖÇÕ´Ï´Ù.
+SoundBeep, 750, 500  ; 0.5ÃÊ°£ ³ôÀº Áøµ¿¼ö·Î ¿¬ÁÖÇÕ´Ï´Ù.
+ + + \ No newline at end of file diff --git a/src/docs/commands/SoundGet.htm b/src/docs/commands/SoundGet.htm new file mode 100644 index 0000000..932548f --- /dev/null +++ b/src/docs/commands/SoundGet.htm @@ -0,0 +1,94 @@ + + + + +SoundGet + + + + + + + +

SoundGet

+ +

»ç¿îµå âġ·ÎºÎÅÍ ´Ù¾çÇÑ ¼³Á¤À» ¿­¶÷ÇÕ´Ï´Ù (À½¼Ò°Å, º¼·ý µîµî.)

+ +
SoundGet, OutputVar [, ComponentType, ControlType, DeviceNumber]
+

¸Å°³º¯¼ö

+
+ +
OutputVar
+

¿­¶÷µÈ ¼³Á¤À» ÀúÀåÇÒ º¯¼öÀÇ À̸§, 0ºÎÅÍ 100 (Æ÷ÇÔ) »çÀÌÀÇ ºÎµ¿ ¼Ò¼öÁ¡ ¼öÀ̰ųª ¶Ç´Â ´Ü¾î ONÀ̳ª OFFÀÔ´Ï´Ù. (used only for ControlTypes ONOFF, MUTE, MONO, LOUDNESS, STEREOENH, ±×¸®°í BASSBOOST). + + ÀÌ º¯¼ö´Â ¼³Á¤À» ¿­¶÷ÇÏ´Â µ¥ ¹®Á¦°¡ ÀÖ¾úÀ¸¸é ºñ¿öÁý´Ï´Ù. ºÎµ¿ ¼Ò¼öÁ¡ ¼öÀÇ Çü½ÄÀº, ¿¹¸¦ µé¾î ¼Ò¼öÁ¡ÀÇ À§Ä¡´Â, SetFormat¿¡ ÀÇÇÏ¿© °áÁ¤µË´Ï´Ù.

+ +
ComponentType
+

ºñ¾î ÀÖ°Å³Ä »ý·«Çϸé, ±âº» °ªÀº ´Ü¾î MASTERÀÔ´Ï´Ù. ±×·¸Áö ¾ÊÀ¸¸é, ´ÙÀ½ ´Ü¾î Áß Çϳª°¡ µÉ ¼ö ÀÖ½À´Ï´Ù: MASTER (SPEAKERS¿Í µ¿ÀǾî), DIGITAL, LINE, MICROPHONE, SYNTH, CD, TELEPHONE, PCSPEAKER, WAVE, AUX, ANALOG, HEADPHONES, ¶Ç´Â N/A. »ç¿îµå ÀåÄ¡¿¡ ÁöÁ¤µÈ ComponentTypeÀÌ ¾øÀ¸¸é, ErrorLevelÀº ±× ¹®Á¦¸¦ ³ªÅ¸³¾ °ÍÀÔ´Ï´Ù.

+

+ ¾î¶² ¹Í¼­¿¡¼­ ¶óº§ÀÌ AuxiliaryÀÎ ÄÞÆ÷³ÍÆ®´Â AUX°¡ ¾Æ´Ï¶óANALOG·Î Á¢±ÙÇÒ ¼ö ÀÖ½À´Ï´Ù.

+

+ »ç¿îµå ÀåÄ¡¿¡ ComponentTypeÀÇ ½Çü°¡ ¿©·µÀ̸é (¿¹¸¦ µé¾î µÎ Á¾·ùÀÇ LINEÀÌ ÀÖÀ¸¸é), º¸Åë ù ¹ø°¿¡ ¿¬ÁÖ ¼³Á¤ÀÌ ´ã±â°í µÑ °¿¡ ³ìÀ½ ¼³Á¤ÀÌ ´ã±é´Ï´Ù. ù ¹ø° ¸»°í ´Ù¸¥ ½Çü¿¡ Á¢±ÙÇÏ·Á¸é, ½ÖÁ¡°ú ¼ýÀÚ¸¦ ÀÌ ¸Å°³º¯¼ö¿¡ Ãß°¡ÇϽʽÿÀ. ¿¹¸¦ µé¾î: Analog:2´Â ¾Æ³¯·Î±× ÄÄÆ÷³ÍÆ®ÀÇ µÎ¹ø° ½Çü¶ó´Â ¶æÀÔ´Ï´Ù.

+ +
ControlType
+

ºñ¾î Àְųª »ý·«Çϸé, ±âº» °ªÀº VOLUMEÀÔ´Ï´Ù. ±×·¸Áö ¾ÊÀ¸¸é, ´ÙÀ½ ´Ü¾î Áß Çϳª°¡ µÉ ¼ö ÀÖ½À´Ï´Ù: VOLUME (¶Ç´Â VOL), ONOFF, MUTE, MONO, LOUDNESS, STEREOENH, BASSBOOST, PAN, QSOUNDPAN, BASS, TREBLE, EQUALIZER, ¶Ç´Â À¯È¿ÇÑ ÄÜÆ®·Ñ À¯ÇüÀÇ ¹øÈ£ (»ç¿îµåÄ«µå ºÐ¼® ½ºÅ©¸³Æ® ÂüÁ¶). ÁöÁ¤µÈ ComponentType¿¡ ÁöÁ¤µÈ ControlTypeÀÌ ¾øÀ¸¸é, ErrorLevelÀº ±× ¹®Á¦¸¦ ¾Ë·ÁÁÙ °ÍÀÔ´Ï´Ù.

+

ÁÖÀÇ: »ç¿îµå ÀåÄ¡´Â º¸Åë VOLUME (¶Ç´Â VOL) ±×¸®°í MUTE¸¸ Áö¿øÇÕ´Ï´Ù. ¹°·Ð ´Ù¸¥ °Íµéµµ À©µµ¿ìÁî ¹öÀü°ú »ç¿îµå ÀåÄ¡¿¡ µû¶ó »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù.

+ +
DeviceNumber
+

1ºÎÅÍ Áö¿øµÇ´Â ÀåÄ¡ÀÇ ÃÑ °³¼ö±îÁöÀÇ ¼ýÀÚ. ÀÌ ¸Å°³º¯¼ö¸¦ »ý·«Çϸé, ±âº» °ªÀº 1ÀÔ´Ï´Ù (ù ¹ø° »ç¿îµå ÀåÄ¡), ¾Æ´Ï¸é Windows Vista À̻󿡼­ ¿¬ÁÖ¸¦ À§ÇÑ ½Ã½ºÅÛÀÇ ±âº» ÀåÄ¡ÀÔ´Ï´Ù. ÀÌ ¸Å°³º¯¼ö´Â Ç¥Çö½ÄÀÏ ¼ö ÀÖ½À´Ï´Ù. »ç¿îµåÄ«µå ºÐ¼® ½ºÅ©¸³Æ®°¡ ¾î´À ¹øÈ£¸¦ »ç¿ëÇؾßÇÒÁö °áÁ¤ÇÏ´Â µ¥ µµ¿òÀ» ÁÙ °ÍÀÔ´Ï´Ù.

+ +
+

ErrorLevel

+

[v1.1.04+] ÀÌ ¸í·É¾î´Â ½ÇÆнà ¿¹¿Ü¸¦ ´øÁú ¼ö ÀÖ½À´Ï´Ù. ´õ ÀÚ¼¼ÇÑ Á¤º¸´Â ½ÇÇà½Ã°£ ¿¡·¯¸¦ ÂüÁ¶ÇϽʽÿÀ.

+

ErrorLevel´Â ¸í·É¾î°¡ ¼º°øÇϸé 0ÀÌ ¼³Á¤µË´Ï´Ù. ±×·¸Áö ¾ÊÀ¸¸é ´ÙÀ½ ¹®±¸ Áß Çϳª°¡ ¼³Á¤µË´Ï´Ù:

+ + + + + + + + + + + + + + + + + + + +
Invalid Control Type or Component Type (À¯È¿ÇÏÁö ¾ÊÀº ÄÜÆ®·Ñ À¯ÇüÀ̳ª ÄÄÆ÷³ÍÆ® À¯Çü)
Can't Open Specified Mixer (ÁöÁ¤µÈ ¹Í¼­¸¦ ¿­ ¼ö ¾øÀ½)
Mixer Doesn't Support This Component Type (¹Í¼­°¡ ÀÌ ÄÞÆ÷³ÍÆ® À¯ÇüÀ» Áö¿øÇÏÁö ¾ÊÀ½)
Mixer Doesn't Have That Many of That Component Type (¹Í¼­°¡ ÁöÁ¤ÇÑ ¸¸Å­ ¸¹Àº ÄÞÆ÷³ÍÆ® À¯ÇüÀÌ ¾øÀ½)
Component Doesn't Support This Control Type (ÄÄÆ÷³ÍÆ®°¡ ÀÌ ÄÜÆ®·Ñ À¯ÇüÀ» Áö¿øÇÏÁö ¾ÊÀ½)
Can't Get Current Setting (ÇöÀç ¼³Á¤À» ¾òÀ» ¼ö ¾øÀ½)
+

³íÆò

+

Windows Vista ÀÌÈÄ´Â v1.1.10ºÎÅÍ Áö¿øÇÕ´Ï´Ù.

+

+½Ã½ºÅÛ¿¡ ¼³Ä¡µÈ »ç¿îµå ÀåÄ¡ (¹Í¼­)ÀÇ ´É·ÂÀ» ¾Ë¾Æ³»·Á¸é -- ¿¹¸¦ µé¾î, ÄÄÆ÷ÅÏÆ® À¯Çü°ú ÄÜÆ®·Ñ À¯Çü -- ´ÙÀ½ »ç¿îµåÄ«µå ºÐ¼® ½ºÅ©¸³Æ®¸¦ ½ÇÇàÇϽʽÿÀ.

+

+¿Àµð¿À¸¦ ´õ ¼¶¼¼ÇÏ°Ô Á¦¾îÇÏ·Á¸é, VA ¶óÀ̺귯¸®ÀÇ »ç¿ëÀ» °í·ÁÇØ º¸½Ê½Ã¿À.

+

+¼³Á¤À» ¹Ù²Ù·Á¸é SoundSetÀ» »ç¿ëÇϽʽÿÀ.

+ +

°ü·Ã Ç׸ñ

+

SoundSet, SoundGetWaveVolume, SoundSetWaveVolume, SoundPlay

+ +

¿¹Á¦

+
SoundGet, master_volume
+MsgBox, ¸¶½ºÅÍ º¼·ýÀº %master_volume% ÆÛ¼¾Æ®ÀÔ´Ï´Ù.
+
+SoundGet, master_mute, , mute
+MsgBox, ¸¶½ºÅÍ À½¼Ò°Å´Â ÇöÀç %master_mute%ÀÔ´Ï´Ù.
+
+SoundGet, bass_level, Master, bass
+if ErrorLevel
+    MsgBox, ¿¡·¯ ¼³¸í: %ErrorLevel%
+else
+    MsgBox, MASTER¿¡ ´ëÇÑ BASS ·¹º§Àº %bass_level% ÆÛ¼¾Æ®ÀÔ´Ï´Ù.
+
+SoundGet, microphone_mute, Microphone, mute
+if microphone_mute = Off
+    MsgBox, ¸¶ÀÌÅ©·ÎÆùÀÌ À½¼Ò°ÅµÇÁö ¾Ê¾Ò½À´Ï´Ù.
+ + + diff --git a/src/docs/commands/SoundGetWaveVolume.htm b/src/docs/commands/SoundGetWaveVolume.htm new file mode 100644 index 0000000..be648c4 --- /dev/null +++ b/src/docs/commands/SoundGetWaveVolume.htm @@ -0,0 +1,47 @@ + + + + +SoundGetWaveVolume + + + + + + + +

SoundGetWaveVolume

+ +

»ç¿îµå ÀåÄ¡¿¡ ´ëÇÏ¿© ¿þÀ̺ê Ãâ·Â º¼·ýÀ» ¿­¶÷ÇÕ´Ï´Ù.

+ +
SoundGetWaveVolume, OutputVar [, DeviceNumber]
+

¸Å°³º¯¼ö

+
+ +
OutputVar
+

¿­¶÷µÈ º¼·ý ·¹º§À» ÀúÀåÇÒ º¯¼öÀÇ À̸§. ÀÌ °ªÀº 0ºÎÅÍ 100±îÁöÀÇ ºÎµ¿ ¼Ò¼öÁ¡ ¼öÀÏ ¼ö ÀÖ½À´Ï´Ù. ÀÌ º¯¼ö´Â º¼·ýÀ» ¿­¶÷ÇÏ´Â µ¥ ¹®Á¦°¡ ÀÖ¾úÀ¸¸é ºñ¿öÁý´Ï´Ù. ºÎµ¿ ¼Ò¼öÁ¡ ¼öÀÇ Çü½ÄÀº, ¿¹¸¦ µé¾î ±×ÀÇ ¼Ò¼öÁ¡ ÀÚ¸®´Â, SetFormat¿¡ ÀÇÇÏ¿© °áÁ¤µË´Ï´Ù.

+ +
DeviceNumber
+

ÀÌ ¸Å°³º¯¼ö°¡ »ý·«µÇ¸é, ±âº»°ªÀº 1ÀÔ´Ï´Ù (ù ¹ø° »ç¿îµå ÀåÄ¡), ÀÌ°ÍÀÌ º¸Åë ³ìÀ½°ú ¿¬ÁÖ¿¡ »ç¿ëµÇ´Â ½Ã½ºÅÛÀÇ ±âº» ÀåÄ¡ÀÔ´Ï´Ù. 1º¸´Ù Å« ¼ýÀÚ¸¦ ÁöÁ¤ÇÏ¸é ´Ù¸¥ »ç¿îµå ÀåÄ¡¸¦ ó¸®ÇÒ ¼ö ÀÖ½À´Ï´Ù.

+ +
+

ErrorLevel

+

[v1.1.04+] ÀÌ ¸í·É¾î´Â ½ÇÆнà ¿¹¿Ü¸¦ ´øÁú ¼ö ÀÖ½À´Ï´Ù. ´õ ÀÚ¼¼ÇÑ Á¤º¸´Â ½ÇÇà½Ã°£ ¿¡·¯¸¦ ÂüÁ¶ÇϽʽÿÀ.

+

ErrorLevelÀº ¹®Á¦°¡ ÀÖ¾úÀ¸¸é 1 , ±×·¸Áö ¾ÊÀ¸¸é 0ÀÌ ¼³Á¤µË´Ï´Ù.

+ +

³íÆò

+

+ÇöÀç ¿þÀ̺ê Ãâ·Â º¼·ý ·¹º§Àº SoundSetWaveVolume¸¦ ÅëÇÏ¿© ¼³Á¤ÇÒ ¼ö ÀÖ½À´Ï´Ù. Master Volume, Synth, Microphone, Mute, Treble, ±×¸®°í Bass °°Àº ¼³Á¤µéÀº SoundSet°ú SoundGetÀ» »ç¿ëÇÏ¿© ¼³Á¤ÇÏ°í¿­¶÷ÇÒ ¼ö ÀÖ½À´Ï´Ù.

+

+Windows Vista ÀÌÈÄ (v1.1.10+): ÀÌ ¸í·É¾î´Â SoundGet¿¡¼­ +ComponentType¿¡ Wave¸¦ ¼³Á¤ÇÏ°í ControlType¿¡ VolumeÀ» ¼³Á¤ÇÑ °Í°ú µ¿µîÇÕ´Ï´Ù. + +

°ü·Ã Ç׸ñ

+

SoundSetWaveVolume, SoundSet, SoundGet, SoundPlay

+ +

¿¹Á¦

+
SoundGetWaveVolume, OutputVar
+MsgBox, ÇöÀç ¿þÀ̺ê Ãâ·Â º¼·ý ·¹º§Àº %OutputVar%`%ÀÔ´Ï´Ù.
+ + + diff --git a/src/docs/commands/SoundPlay.htm b/src/docs/commands/SoundPlay.htm new file mode 100644 index 0000000..91df2e8 --- /dev/null +++ b/src/docs/commands/SoundPlay.htm @@ -0,0 +1,60 @@ + + + + +SoundPlay + + + + + + + +

SoundPlay

+ +

»ç¿îµå, ºñµð¿À, ¶Ç´Â ±âŸ Áö¿øµÇ´Â ÆÄÀÏ À¯ÇüÀ» ¿¬ÁÖÇÕ´Ï´Ù.

+ +
SoundPlay, Filename [, wait]
+

¸Å°³º¯¼ö

+
+ +
Filename
+

+ ¿¬ÁÖµÉ ÆÄÀÏÀÇ À̸§, Àý´ë °æ·Î¸¦ ÁöÁ¤ÇÏÁö ¾ÊÀ¸¸é %A_WorkingDir%¿¡ ÀÖ´Ù°í °£ÁÖÇÕ´Ï´Ù.

+

+ Ç¥ÁØ ½Ã½ºÅÛ »ç¿îµå¸¦ »ý»êÇÏ·Á¸é, ¾Æ·¡¿¡ º¸¿© ÁÖµíÀÌ º°Ç¥ ´ÙÀ½¿¡ ¼ýÀÚ¸¦ ÁöÁ¤ÇϽʽÿÀ. ÁÖÀÇ: wait ¸Å°³º¯¼ö´Â ÀÌ ¸ðµå¿¡¼­ ¾Æ¹« È¿°úµµ ¾ø½À´Ï´Ù.
+*-1: ´Ü¼øÇÑ ºñÇÁÀ½. »ç¿îµå Ä«µå°¡ ¾øÀ¸¸é , »ç¿îµå´Â ½ºÇÇÄ¿¸¦ »ç¿ëÇÏ¿© »ý¼ºµË´Ï´Ù.
+*16: ¼Õ (ÁßÁö/¿¡·¯)
+*32: Áú¹®
+*48: °¨Åº
+*64: º°Ç¥ (Á¤º¸)

+ +
wait
+

»ý·«Çϸé, ÆÄÀÏÀÌ ¿¬Áֵǰí ÀÖ´Â µ¿¾È ½ºÅ©¸³Æ®ÀÇ ÇöÀç ¾²·¹µå°¡ ´ÙÀ½ ¸í·É¾î·Î À̵¿ÇÕ´Ï´Ù. À̸¦ ÇÇÇÏ·Á¸é, 1 ¶Ç´Â ´Ü¾î WAIT¸¦ ÁöÁ¤ÇϽʽÿÀ. ±×·¯¸é ÆÄÀÏÀÌ ¿¬ÁÖ¸¦ ³¡³¾ ¶§±îÁö ÇöÀç ¾²·¹µå°¡ ±â´Ù·È´Ù°¡ ½ÇÇàÀ» °è¼ÓÇÕ´Ï´Ù. ±â´Ù¸®°í ÀÖ´Â µ¿¾È¿¡µµ, ÇÖÅ°, ¸ÂÃã ¸Þ´º Ç׸ñ, ¶Ç´Â ŸÀ̸Ӹ¦ ÅëÇÏ¿© »õ·Î¿î ¾²·¹µå¸¦ ±âµ¿ÇÒ ¼ö ÀÖ½À´Ï´Ù.

+

¾Ë·ÁÁø ÇÑ°è: WAIT ¸Å°³º¯¼ö¸¦ »ý·«Çϸé, OS´Â ¿¬ÁÖ ÁßÀÎ ÆÄÀÏÀÌ ½ºÅ©¸³Æ®°¡ ´ÝÈú ¶§±îÁö ¶Ç´Â ¶Ç´Ù¸¥ ÆÄÀÏÀÌ ¿¬ÁÖµÉ ¶§±îÁö (½ÉÁö¾î Á¸ÀçÇÏÁö ¾ÊÀº ÆÄÀÏÀÏÁö¶óµµ) "»ç¿ëµÉ °Å¶ó°í" °£ÁÖÇÕ´Ï´Ù.

+ +
+ +

ErrorLevel

+

[v1.1.04+] ÀÌ ¸í·É¾î´Â ½ÇÆнà ¿¹¿Ü¸¦ ´øÁú ¼ö ÀÖ½À´Ï´Ù. ´õ ÀÚ¼¼ÇÑ Á¤º¸´Â ½ÇÇà½Ã°£ ¿¡·¯¸¦ ÂüÁ¶ÇϽʽÿÀ.

+

ErrorLevelÀº ¹®Á¦°¡ ÀÖ¾úÀ¸¸é 1ÀÌ ¼³Á¤µÇ°í ±×·¸Áö ¾ÊÀ¸¸é 0ÀÌ ¼³Á¤µË´Ï´Ù.

+ +

³íÆò

+

+¸ðµç Windows ¿î¿µÃ¼Á¦´Â .wav ÆÄÀÏÀ» ¿¬ÁÖÇÒ ¼ö ÀÖÀ» °ÍÀÔ´Ï´Ù. ±×·¸Áö¸¸, ´Ù¸¥ ÆÄÀϵéÀº (.mp3, .avi, etc.) ¿Ã¹Ù¸¥ ÄÚµ¦À̳ª Ư¡À» OS¿¡ ¼³Ä¡ÇÏÁö ¾ÊÀ¸¸é ¿¬ÁÖÇÏÁö ¸øÇÒ ¼öµµ ÀÖ½À´Ï´Ù.

+

+ÆÄÀÏÀÌ ¿¬ÁÖ ÁßÀÌ°í ÇöÀç ½ºÅ©¸³Æ®°¡ µÎ ¹ø° ÆÄÀÏÀ» ¿¬ÁÖÇÑ´Ù¸é, ù ¹ø° ÆÄÀÏÀº ¸ØÃß°í µÎ ¹ø° ÆÄÀÏÀÌ ¿¬Áֵ˴ϴÙ. ¾î¶² ½Ã½ºÅÛ¿¡¼­, ¾î¶² ÆÄÀÏ À¯ÇüÀº ¿ÏÀüÈ÷ º°°³ÀÇ ½ºÅ©¸³Æ®°¡ »õ ÆÄÀÏÀ» ¿¬ÁÖÇÒ Áö¶óµµ ¿¬ÁÖ¸¦ Áß´ÜÇÕ´Ï´Ù.

+

+ÇöÀç ¿¬ÁÖ ÁßÀÎ ÆÄÀÏÀ» ÁßÁöÇÏ·Á¸é, SoundPlay¸¦ ´ÙÀ½ ¿¹Á¦¿Í °°ÀÌ Á¸ÀçÇÏÁö ¾ÊÀº ÆÄÀÏÀ̸§¿¡ ½ÇÇàÇϽʽÿÀ: SoundPlay, Nonexistent.avi.

+

+½ºÅ©¸³Æ®°¡ Á¾·áÇϸé, ½ºÅ©¸³Æ®°¡ ±âµ¿Çؼ­ ÇöÀç ¿¬ÁÖ ÁßÀÎ ÆÄÀϵµ ÁßÁöµË´Ï´Ù.

+ +

°ü·Ã Ç׸ñ

+

SoundBeep, SoundGet, SoundSet, SoundGetWaveVolume, SoundSetWaveVolume, MsgBox, ¾²·¹µå

+ +

¿¹Á¦

+
SoundPlay, %A_WinDir%\Media\ding.wav
+SoundPlay *-1  ; °£´ÜÇÑ ºñÇÁÀ½. »ç¿îµå Ä«µå°¡ ¾øÀ¸¸é, ½ºÇÇÄ¿¸¦ »ç¿ëÇÏ¿© ¼Ò¸®¸¦ ¹ß»ý½Ãŵ´Ï´Ù.
+ + + diff --git a/src/docs/commands/SoundSet.htm b/src/docs/commands/SoundSet.htm new file mode 100644 index 0000000..7e24048 --- /dev/null +++ b/src/docs/commands/SoundSet.htm @@ -0,0 +1,172 @@ + + + + +SoundSet + + + + + + + +

SoundSet

+ +

»ç¿îµå ÀåÄ¡ÀÇ ´Ù¾çÇÑ ¼³Á¤À» º¯°æÇÕ´Ï´Ù (À½¼Ò°Å, º¼·ý µîµî.)

+ +
SoundSet, NewSetting [, ComponentType, ControlType, DeviceNumber]
+

¸Å°³º¯¼ö

+
+ +
NewSetting
+

¹éºÐ·ü ¼ýÀÚ. ¹üÀ§´Â -100ºÎÅÍ 100 ±îÁö (ºÎµ¿ ¼Ò¼öÁ¡ ¼ö ¶Ç´Â Ç¥Çö½Ä °¡´É). ¼ýÀÚ°¡ Ç÷¯½º ¶Ç´Â ¸¶À̳ʽº »çÀÎÀ¸·Î ½ÃÀÛÇϸé, ÇöÀç ¼³Á¤ÀÌ ÁöÁ¤ÇÑ ¾ç¸¸Å­ À§³ª ¾Æ·¡·Î Á¶ÀýµË´Ï´Ù. ±×·¸Áö ¾ÊÀ¸¸é, ÀÌ ¼³Á¤Àº ¸í½ÃÀûÀ¸·Î NewSetting¿¡ ÁöÁ¤ÇÑ °ªÀÌ ¼³Á¤µË´Ï´Ù.

+

¿ÀÁ÷ µÎ °³ÀÇ ¼³Á¤¸¸ °¡´ÉÇÑ ControlTypes¿¡ ´ëÇÏ¿© -- Áï ONOFF, MUTE, MONO, LOUDNESS, STEREOENH, ±×¸®°í BASSBOOST -- ¾ç¼ö´Â ¼³Á¤À» ÄÑ°í 0ÀÌ¸é ¼³Á¤À» ²ü´Ï´Ù. ±×·¸Áö¸¸, ¼ýÀÚ°¡ Ç÷¯½º ¶Ç´Â ¸¶À̳ʽº »çÀÎÀ¸·Î ½ÃÀÛÇϸé, ¼³Á¤Àº Åä±ÛµË´Ï´Ù (ÇöÀç »óŸ¦ ¹Ý´ë·Î ¼³Á¤ÇÕ´Ï´Ù).

+ +
ComponentType
+

»ý·«Çϰųª ºñ¾î ÀÖÀ¸¸é, ±âº»°ªÀº ´Ü¾î MASTERÀÔ´Ï´Ù. ±×·¸Áö ¾ÊÀ¸¸é, ´ÙÀ½ ´Ü¾î Áß Çϳª°¡ µÉ ¼ö ÀÖ½À´Ï´Ù: MASTER (SPEAKERS¿Í µ¿ÀǾî), DIGITAL, LINE, MICROPHONE, SYNTH, CD, TELEPHONE, PCSPEAKER, WAVE, AUX, ANALOG, HEADPHONES, ¶Ç´Â N/A. »ç¿îµå ÀåÄ¡¿¡ ÁöÁ¤µÈ ComponentTypeÀÌ ¾øÀ¸¸é, ErrorLevelÀº ±× ¿¡·¯¸¦ ¾Ë·ÁÁÝ´Ï´Ù.

+

¶óº§ÀÌ AuxiliaryÀÎ ÄÄÆ÷³ÍÆ®´Â ¾î¶² ¹Í¼­¿¡¼­ AUX°¡ ¾Æ´Ï¶ó ANALOG·Î Á¢±ÙÇÒ ¼ö ÀÖ½À´Ï´Ù.

+

ÀåÄ¡¿¡ ComponentTypeÀÇ ½Çü°¡ Çϳª ÀÌ»ó ÀÖÀ¸¸é (¿¹¸¦ µé¾î µÎ Á¾·ùÀÇ LINE), º¸Åë ù ¹ø° ÄÞÆ÷³ÍÆ®¿¡ ¿¬ÁÖ ¼³Á¤ÀÌ ´ã±â°í µÎ ¹ø° ÄÞÆ÷³ÍÆ®¿¡ ³ìÀ½ ¼³Á¤ÀÌ ´ã±é´Ï´Ù. ù ÄÞÆ÷³ÍÆ® ¸»°í ´Ù¸¥ ÄÞÆ÷³ÍÆ®¿¡ Á¢±ÙÇÏ·Á¸é ½ÖÁ¡°ú ¼ýÀÚ¸¦ ÀÌ ¸Å°³º¯¼ö µÚ¿¡ Ãß°¡ÇϽʽÿÀ. ¿¹¸¦ µé¾î: Analog:2´Â ¾Æ³¯·Î±× ÄÄÆ÷³ÍÆ®ÀÇ µÎ ¹ø° ½ÇüÀÔ´Ï´Ù.

+ +
ControlType
+

»ý·«Çϰųª ºñ¾î ÀÖÀ¸¸é, ±âº» °ªÀº VOLUMEÀÔ´Ï´Ù. ±×·¸Áö ¾ÊÀ¸¸é, ´ÙÀ½ ´Ü¾î Áß Çϳª°¡ µÉ ¼ö ÀÖ½À´Ï´Ù: VOLUME (¶Ç´Â VOL), ONOFF, MUTE, MONO, LOUDNESS, STEREOENH, BASSBOOST, PAN, QSOUNDPAN, BASS, TREBLE, EQUALIZER, ¶Ç´Â À¯È¿ÇÑ ÄÜÆ®·Ñ À¯ÇüÀÌ ¹øÈ£ (»ç¿îµåÄ«µå ºÐ¼® ½ºÅ©¸³Æ® ÂüÁ¶). ÁöÁ¤µÈ ComponentType¿¡ ÁöÁ¤µÈ ControlTypeÀÌ ¾øÀ¸¸é, ErrorLevelÀº ±× ¹®Á¦¸¦ ¾Ë·Á ÁÝ´Ï´Ù.

+

ÁÖÀÇ: »ç¿îµå ÀåÄ¡´Â º¸Åë VOLUME (¶Ç´Â VOL) ±×¸®°í MUTE¸¸ Áö¿øÇÕ´Ï´Ù. ¹°·Ð ´Ù¸¥ °Íµéµµ »ç¿îµå ÀåÄ¡¿Í À©µµ¿ìÁî ¹öÀü¿¡ µû¶ó »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù.

+ +
DeviceNumber
+

1ºÎÅÍ Áö¿øµÇ´Â ÀåÄ¡ÀÇ ÃÑ °¹¼ö ±îÁöÀÇ ¼ýÀÚ. ÀÌ ¸Å°³º¯¼ö¸¦ »ý·«Çϸé, ±âº» °ªÀº 1 (ù ¹ø° »ç¿îµå ÀåÄ¡)À̰ųª, ¾Æ´Ï¸é Windows Vista ÀÌÈÄ¿¡¼­ ¿¬ÁÖ¿¡ ´ëÇÑ ½Ã½ºÅÛÀÇ ±âº» ÀåÄ¡ÀÔ´Ï´Ù. ÀÌ ¸Å°³º¯¼ö´Â Ç¥Çö½ÄÀÏ ¼ö ÀÖ½À´Ï´Ù. »ç¿îµåÄ«µå ºÐ¼® ½ºÅ©¸³Æ®´Â ¾î´À ¹øÈ£¸¦ »ç¿ëÇÒ Áö °áÁ¤ÇÏ´Â µ¥ µµ¿òÀÌ µÉ °ÍÀÔ´Ï´Ù..

+ +
+

ErrorLevel

+

[v1.1.04+] ÀÌ ¸í·É¾î´Â ½ÇÆнà ¿¹¿Ü¸¦ ´øÁú ¼ö ÀÖ½À´Ï´Ù. ´õ ÀÚ¼¼ÇÑ Á¤º¸´Â ½ÇÇà½Ã°£ ¿¡·¯¸¦ ÂüÁ¶ÇϽʽÿÀ.

+

ErrorLevelÀº ¸í·É¾î°¡ ¼º°øÇßÀ¸¸é 0ÀÌ ¼³Á¤µË´Ï´Ù. ±×·¸Áö ¾ÊÀ¸¸é, ´ÙÀ½ ¹®±¸ Áß Çϳª°¡ ¼³Á¤µË´Ï´Ù:

+ + + + + + + + + + + + + + + + + + + + + + +
Invalid Control Type or Component Type (¹«È¿ÇÑ ÄÜÆ®·Ñ À¯ÇüÀ̳ª ÄÄÆ÷³ÍÆ® À¯Çü)
Can't Open Specified Mixer (ÁöÁ¤µÈ ¹Í¼­¸¦ ¿­ ¼ö ¾øÀ½)
Mixer Doesn't Support This Component Type (¹Í¼­°¡ ÀÌ ÄÄÆ÷³ÍÆ® À¯ÇüÀ» Áö¿øÇÏÁö ¾ÊÀ½)
Mixer Doesn't Have That Many of That Component Type (ÁöÁ¤ÇÑ ¸¸Å­ ¸¹Àº ÄÄÆ÷³ÍÆ® À¯ÇüÀÌ ¹Í¼­¿¡ ¾øÀ½)
Component Doesn't Support This Control Type (ÄÄÆ÷³ÍÆ®°¡ ÀÌ ÄÜÆ®·Ñ À¯ÇüÀ» Áö¿øÇÏÁö ¾ÊÀ½)
Can't Get Current Setting (ÇöÀç ¼³Á¤À» °¡Á®¿Ã ¼ö ¾øÀ½)
Can't Change Setting (¼³Á¤À» º¯°æÇÒ ¼ö ¾øÀ½)
+

³íÆò

+

+Windows Vista ÀÌÈÄ´Â v1.1.10ºÎÅÍ Áö¿øÇÕ´Ï´Ù.

+

+¿Àµð¿À¸¦ ´õ ¼¶¼¼ÇÏ°Ô Á¦¾îÇÏ·Á¸é, VA ¶óÀ̺귯¸®ÀÇ »ç¿ëÀ» °í·ÁÇØ º¸½Ê½Ã¿À.

+

+º¼·ýÀ» Á¶ÀýÇÏ´Â ¶Ç´Ù¸¥ ¹æ¹ýÀº ½ºÅ©¸³Æ®¿¡°Ô º¼·ý-Á¦¾î Å°´­¸²À» Àü¼ÛÇÏ°Ô ÇØ Àüü ½Ã½ºÅÛ¿¡ ´ëÇÏ¿© ¸¶½ºÅÍ º¼·ëÀ» º¯°æÇÏ´Â °ÍÀÔ´Ï´Ù. ¿¹¸¦ µé¾î ´ÙÀ½ ¿¹Á¦¿Í °°ÀÌ ÇÒ ¼ö ÀÖ½À´Ï´Ù:

+ +
Send {Volume_Up}  ; ¸¶½ºÅÍ º¼·ýÀ» 1 ´«±Ý ¿Ã¸³´Ï´Ù (º¸Åë 5%).
+Send {Volume_Down 3}  ; ¸¶½ºÅÍ º¼·ýÀ» 3 ´«±Ý ³»¸³´Ï´Ù.
+Send {Volume_Mute}  ; ¸¶½ºÅÍ º¼·ýÀ» À½¼Ò°Å Çϰųª ÇØÁ¦ÇÕ´Ï´Ù.
+

+½Ã½ºÅÛ¿¡ ¼³Ä¡µÈ »ç¿îµå ÀåÄ¡ (¹Í¼­)ÀÇ ´É·ÂÀ» ¾Ë¾Æ ³»·Á¸é -- ¿¹¸¦ µé¾î ÄÄÆ÷³ÍÆ® À¯Çü°ú ÄÜÆ®·Ñ À¯Çü -- »ç¿îµåÄ«µå ºÐ¼® ½ºÅ©¸³Æ®¸¦ ½ÇÇàÇϽʽÿÀ.

+

+Windows 2000/XP/2003: SoundSetÀÌ ÇÑ ÄÄÆ÷³ÍÆ®ÀÇ º¼·ýÀ» º¯°æÇÒ ¶§, ´Ù¸¥ ¸ðµç ÄÄÆ÷³ÍÆ®ÀÇ Ã¤³Îµµ (¿¹, ¿ÞÂÊ ¿À¸¥ÂÊ) °°Àº ·¹º§·Î ¼³Á¤µË´Ï´Ù. ´Ù¸¥ ¸»·Î, ÀÌÀü¿¡ "ÆòÇü"À» ¹þ¾î³­ °ªÀÌ ¼³Á¤µÇ¾ú´Ù¸é ¸ðµÎ »ç¶óÁý´Ï´Ù. WAVE ÄÄÆ÷³ÍÆ®¿¡ ´ëÇÏ¿© À̸¦ ÇÇÇÏ·Á¸é ´ë½Å¿¡ SoundSetWaveVolumeÀ» »ç¿ëÇÏ¸é µË´Ï´Ù. ÀÌ´Â º¼·ý ·¹º§À» º¯°æÇÒ ¶§ ±âÁ¸ÀÇ ÆòÇüÀ» À¯ÁöÇÏ·Á°í ½ÃµµÇÕ´Ï´Ù.

+

+Windows Vista ÀÌÈÄ (v1.1.10+): SoundSet´Â º¼·ý ·¹º§À» º¯°æÇÒ ¶§ ±âÁ¸ÀÇ ÆòÇüÀ» À¯ÁöÇÏ·Á°í ³ë·ÂÇÕ´Ï´Ù.

+

+¼³Á¤ÀÇ ÇöÀç °ªÀ» ¿­¶÷ÇÏ·Á¸é SoundGetÀ» »ç¿ëÇϽʽÿÀ.

+ +

°ü·Ã Ç׸ñ

+

+SoundGet, SoundGetWaveVolume, SoundSetWaveVolume, SoundPlay

+ +

¿¹Á¦

+ +
; ±âº» ¿¹Á¦:
+SoundSet, 50  ; ¸¶½ºÅÍ º¼·ý¿¡ 50%¸¦ ¼³Á¤ÇÕ´Ï´Ù
+SoundSet +10  ; ¸¶½ºÅÍ º¼·ýÀ» 10% ¿Ã¸³´Ï´Ù
+SoundSet -10  ; ¸¶½ºÅÍ º¼·ýÀ»  10% ³»¸³´Ï´Ù
+SoundSet, 1, Microphone, mute  ; ¸¶ÀÌÅ©·ÎÆùÀ» À½¼Ò°ÅÇÕ´Ï´Ù
+SoundSet, +1, , mute  ; ¸¶½ºÅÍ À½¼Ò°Å¸¦ Åä±ÛÇÕ´Ï´Ù (¹Ý´ë »óÅ·Π¼³Á¤ÇÕ´Ï´Ù)
+SoundSet, +20, Master, bass  ; bass ·¹º§À» 20% ¿Ã¸³´Ï´Ù.
+if ErrorLevel
+    MsgBox, MASTER¿¡¼­ BASS ¼³Á¤À» Áö¿øÇÏÁö ¾Ê½À´Ï´Ù.
+ +

»ç¿îµåÄ«µå ºÐ¼®

+

+´ÙÀ½ ½ºÅ©¸³Æ®¸¦ »ç¿ëÇÏ¸é »ç¿îµåÄ«µåÀÇ ´É·ÂÀ» ¾Ë¾Æº¼ ¼ö ÀÖ½À´Ï´Ù (ÄÄÆ÷³ÍÆ® À¯Çü°ú ÄÜÆ®·Ñ À¯Çü). ±× °á°ú¸¦ °£´ÜÇÑ ListView¿¡ º¸¿©ÁÝ´Ï´Ù. ´Ù¸¥ ¹æ¹ýÀ¸·Î, Windows Vista ÀÌÈÄ¿¡ (¿¹¸¦ µé¾î ÀåÄ¡ÀÇ È­¸é À̸§°ú °°Àº) ´õ ÀÚ¼¼ÇÑ Á¤º¸¸¦ Á¦°øÇÏ´Â ½ºÅ©¸³Æ®¸¦ ´ÙÀ½ Æ÷·³ÀÇ ÁÖÁ¦¿¡¼­ ³»·Á ¹ÞÀ» ¼ö ÀÖ½À´Ï´Ù: http://www.autohotkey.com/board/topic/90877-/

+
SetBatchLines -1
+SplashTextOn,,, Gathering Soundcard Info...
+
+; ¾Æ·¡¿¡¼­ ¼ø¼öÇÑ ¼ýÀÚ´Â ´ëºÎºÐ ¾Æ¸¶µµ ¾î´À ¹Í¼­¿¡µµ Á¸ÀçÇÏÁö ¾Ê°ÚÁö¸¸, ¿Ïº®À» ±âÇϱâ À§ÇØ ÁúÀÇÇÕ´Ï´Ù.
+; ¼ýÀÚµéÀº ´ÙÀ½ Ç׸ñ¿¡ (¼ø¼­´ë·Î) »óÀÀÇÕ´Ï´Ù: CUSTOM, BOOLEANMETER, SIGNEDMETER, PEAKMETER,
+; UNSIGNEDMETER, BOOLEAN, BUTTON, DECIBELS, SIGNED, UNSIGNED, PERCENT, SLIDER, FADER, SINGLESELECT, MUX,
+; MULTIPLESELECT, MIXER, MICROTIME, MILLITIME
+ControlTypes = VOLUME,ONOFF,MUTE,MONO,LOUDNESS,STEREOENH,BASSBOOST,PAN,QSOUNDPAN,BASS,TREBLE,EQUALIZER,0x00000000, 0x10010000,0x10020000,0x10020001,0x10030000,0x20010000,0x21010000,0x30040000,0x30020000,0x30030000,0x30050000,0x40020000,0x50030000,0x70010000,0x70010001,0x71010000,0x71010001,0x60030000,0x61030000
+
+ComponentTypes = MASTER,HEADPHONES,DIGITAL,LINE,MICROPHONE,SYNTH,CD,TELEPHONE,PCSPEAKER,WAVE,AUX,ANALOG,N/A
+
+; ListView¸¦ »ý¼ºÇÏ°í ¸ÞÀΠȸµ¹À̸¦ À§ÇØ Áغñ¸¦ ÇÕ´Ï´Ù:
+Gui, Add, Listview, w400 h400 vMyListView, Component Type|Control Type|Setting|Mixer
+LV_ModifyCol(4, "Integer")
+SetFormat, Float, 0.2  ; Limit number of decimal places in percentages to two.
+
+Loop  ; ½Ã½ºÅÛ¿¡ Á¸ÀçÇÏ´Â °¢ ¹Í¼­ ¹øÈ£¿¡ ´ëÇÏ¿©, ±×ÀÇ ´É·ÂÀ» ÁúÀÇÇÕ´Ï´Ù.
+{
+    CurrMixer := A_Index
+    SoundGet, Setting,,, %CurrMixer%
+    if ErrorLevel = Can't Open Specified Mixer  ; ÀÌ ¿¡·¯¸¸ ¾Æ´Ï¸é ¹Í¼­°¡ Á¸ÀçÇÑ´Ù´Â ¶æÀÔ´Ï´Ù.
+        break
+
+    ; ÀÌ ¹Í¼­¿¡ Á¸ÀçÇÏ´Â °¢ ÄÄÆ÷³ÍÆ® À¯Çü¿¡ ´ëÇÏ¿©, ±×ÀÇ ½Çü¿Í ÄÜÆ®·Ñ À¯ÇüÀ» ÁúÀÇÇÕ´Ï´Ù:
+    Loop, parse, ComponentTypes, `,
+    {
+        CurrComponent := A_LoopField
+        ; ¸ÕÀú ÀÌ ÄÄÆ÷³ÍÆ® À¯ÇüÀÌ ¹Í¼­¿¡ Á¸ÀçÇÏ´ÂÁö Á¡°ËÇÕ´Ï´Ù:
+        SoundGet, Setting, %CurrComponent%,, %CurrMixer%
+        if ErrorLevel = Mixer Doesn't Support This Component Type
+            continue  ; ´ÙÀ½ ÄÞÆ÷³ÍÆ® À¯ÇüÀ¸·Î ³ª¾Æ°¡±â À§ÇØ »õ ¹Ýº¹À» ½ÃÀÛÇÕ´Ï´Ù.
+        Loop  ; ÀÌ ÄÄÆ÷³ÍÆ® À¯ÇüÀÇ °¢ ½Çü¿¡ ´ëÇÏ¿©, ±×ÀÇ ÄÜÆ®·Ñ À¯ÇüÀ» ÁúÀÇÇÕ´Ï´Ù.
+        {
+            CurrInstance := A_Index
+            ; ¸ÕÀú ÀÌ ÄÄÆ÷³ÍÆ®ÀÇ ½Çü°¡ ¹Í¼­¿¡ Á¸ÀçÇÏ´ÂÁö Á¡°ËÇÕ´Ï´Ù:
+            SoundGet, Setting, %CurrComponent%:%CurrInstance%,, %CurrMixer%
+            ; ´ÙÀ½ÀÇ ¿¡·¯ µÎ °³¸¦ ¸ðµÎ Á¡°ËÇϸé ÀÌ ½ºÅ©¸³Æ®¸¦ ¿¹Àü ¹öÀü¿¡¼­µµ ½ÇÇà½Ãų ¼ö ÀÖ½À´Ï´Ù:
+            if ErrorLevel in Mixer Doesn't Have That Many of That Component Type,Invalid Control Type or Component Type
+                break  ; ÀÌ ÄÞÆ÷³ÍÆ® À¯ÇüÀÇ ½Çü°¡ ¾ø½À´Ï´Ù.
+            ; ÀÌ ÄÄÆ÷³ÍÆ®ÀÇ ½Çü¿¡ Á¸ÀçÇÏ´Â °¢ ÄÜÆ®·Ñ À¯ÇüÀÇ ÇöÀç ¼³Á¤À» ¾ò½À´Ï´Ù:
+            Loop, parse, ControlTypes, `,
+            {
+                CurrControl := A_LoopField
+                SoundGet, Setting, %CurrComponent%:%CurrInstance%, %CurrControl%, %CurrMixer%
+                ; ´ÙÀ½ µÎ ¿¡·¯¸¦ ¸ðµÎ Á¡°ËÇϸé ÀÌ ½ºÅ©¸³Æ®¸¦ ¿¹Àü ¹öÀü¿¡¼­µµ ½ÇÇàÇÒ ¼ö ÀÖ½À´Ï´Ù:
+                if ErrorLevel in Component Doesn't Support This Control Type,Invalid Control Type or Component Type
+                    continue
+                if ErrorLevel  ; »ý°¢Áö ¸øÇÑ ¿¡·¯ÀÔ´Ï´Ù. ±×·¡¼­ ±× °á°ú¿¡ º¸¿©ÁÝ´Ï´Ù.
+                    Setting := ErrorLevel
+                ComponentString := CurrComponent
+                if CurrInstance > 1
+                    ComponentString = %ComponentString%:%CurrInstance%
+                LV_Add("", ComponentString, CurrControl, Setting, CurrMixer)
+            }  ; °¢ ÄÜÆ®·Ñ À¯Çü¿¡ ´ëÇÏ¿©.
+        }  ; °¢ ÄÄÆ÷³ÍÆ® ½Çü¿¡ ´ëÇÏ¿©.
+    }  ; °¢ ÄÄÆ÷³ÍÆ® À¯Çü¿¡ ´ëÇÏ¿©.
+}  ; °¢ ¹Í¼­¿¡ ´ëÇÏ¿©.
+
+Loop % LV_GetCount("Col")  ; ±×ÀÇ ³»¿ë¿¡ ¸Â°Ô °¢ Ä÷³ÀÇ Å©±â¸¦ ÀÚµ¿À¸·Î Á¶ÀýÇÕ´Ï´Ù.
+    LV_ModifyCol(A_Index, "AutoHdr")
+
+SplashTextOff
+Gui, Show
+return
+
+GuiClose:
+ExitApp
+ + + diff --git a/src/docs/commands/SoundSetWaveVolume.htm b/src/docs/commands/SoundSetWaveVolume.htm new file mode 100644 index 0000000..9a25baa --- /dev/null +++ b/src/docs/commands/SoundSetWaveVolume.htm @@ -0,0 +1,50 @@ + + + + +SoundSetWaveVolume + + + + + + + +

SoundSetWaveVolume

+ +

»ç¿îµå ÀåÄ¡¿¡ ´ëÇÏ¿© ¿þÀ̺ê Ãâ·Â º¼·ýÀ» º¯°æÇÕ´Ï´Ù.

+ +
SoundSetWaveVolume, Percent [, DeviceNumber]
+

¸Å°³º¯¼ö

+
+ +
Percent
+

ÆÛ¼¾Æ® ¼ýÀÚ´Â ¹üÀ§°¡ -100ºÎÅÍ 100±îÁöÀÔ´Ï´Ù (ºÎµ¿ ¼Ò¼öÁ¡À̳ª Ç¥Çö½ÄÀ» Çã¿ëÇÕ´Ï´Ù). ¼ýÀÚ°¡ Ç÷¯½º ¶Ç´Â ¸¶À̳ʽº »çÀÎÀ¸·Î ½ÃÀÛÇϸé, ÇöÀç º¼·ý ·¹º§ÀÌ Áö½ÃÇÑ ¾ç ¸¸Å­ À§ ¶Ç´Â ¾Æ·¡·Î Á¶ÀýµË´Ï´Ù. ±×·¸Áö ¾ÊÀ¸¸é, º¼·ýÀº Percent·Î Áö½ÃÇÑ ·¹º§¿¡ ¸í½ÃÀûÀ¸·Î ÁöÁ¤µË´Ï´Ù.

+ +
DeviceNumber
+

ÀÌ ¸Å°³º¯¼ö¸¦ »ý·«Çϸé, ±âº» °ªÀº 1ÀÔ´Ï´Ù (ù ¹ø° »ç¿îµå ÀåÄ¡), ÀÌ ÀåÄ¡´Â º¸Åë ³ìÀ½°ú ¿¬ÁÖ¿¡ »ç¿ëµÇ´Â ½Ã½ºÅÛÀÇ ±âº» ÀåÄ¡ÀÔ´Ï´Ù. 1º¸´Ù Å« °ªÀ» ÁöÁ¤ÇÏ¸é ´Ù¸¥ »ç¿îµå ÀåÄ¡¸¦ ó¸®ÇÒ ¼ö ÀÖ½À´Ï´Ù.

+
+ +

ErrorLevel

+

+[v1.1.04+] ÀÌ ¸í·É¾î´Â ½ÇÆнà ¿¹¿Ü¸¦ ´øÁú ¼ö ÀÖ½À´Ï´Ù. ´õ ÀÚ¼¼ÇÑ Á¤º¸´Â ½ÇÇà½Ã°£ ¿¡·¯¸¦ ÂüÁ¶ÇϽʽÿÀ.

+

ErrorLevelÀº ¹®Á¦°¡ ÀÖ¾úÀ¸¸é 1ÀÌ ¼³Á¤µÇ°í ±×·¸Áö ¾ÊÀ¸¸é 0ÀÌ ¼³Á¤µË´Ï´Ù.

+ +

³íÆò

+

+ÇöÀç ¿þÀ̺ê Ãâ·Â º¼·ý ·¹º§Àº SoundGetWaveVolume¸¦ ÅëÇÏ¿© ¿­¶÷ÇÒ ¼ö ÀÖ½À´Ï´Ù. Master Volume, Synth, Microphone, Mute, Treble, ±×¸®°í Bass¿Í °°Àº ¼³Á¤Àº SoundSet°ú SoundGet¸¦ ÅëÇÏ¿© °¢°¢ ¼³Á¤ÇÏ°í ¿­¶÷ÇÒ ¼ö ÀÖ½À´Ï´Ù.

+

+Windows Vista ÀÌÈÄ (v1.1.10+): ÀÌ ¸í·É¾î´Â SoundSet¿¡¼­ ComponentTypeÀº Wave·Î ¼³Á¤ÇÏ°í ControlType´Â VolumeÀ¸·Î ¼³Á¤ÇÑ °Í°ú µ¿µîÇÕ´Ï´Ù. µÎ ¸í·É¾î ¸ðµÎ ä³Î »çÀÌÀÇ ±âÁ¸ÀÇ ÆòÇüÀ» À¯ÁöÇÏ·Á°í ³ë·ÂÇÕ´Ï´Ù.

+

+Windows 2000/XP/2003: SoundSet°ú ´Ù¸£°Ô, ÀÌ ¸í·É¾î´Â º¼·ý ·¹º§À» º¯°æÇÒ ¶§ ä³Î »çÀÌÀÇ ±âÁ¸ÀÇ ÆòÇüÀ» À¯ÁöÇÏ·Á°í ³ë·ÂÇÕ´Ï´Ù (¿¹, ¿ÞÂÊ°ú ¿À¸¥ÂÊ).

+ +

°ü·Ã Ç׸ñ

+

SoundGetWaveVolume, SoundSet, SoundGet, SoundPlay

+ +

¿¹Á¦

+
SoundSetWaveVolume, 50  ; º¼·ýÀ» ±×ÀÇ Àý¹ÝÀ¸·Î ¼³Á¤ÇÕ´Ï´Ù.
+SoundSetWaveVolume, -10  ; ÇöÀç ·¹º§À» 10¸¸Å­ ³·Ãä´Ï´Ù (¿¹, 80À̸é 70ÀÌ µË´Ï´Ù).
+SoundSetWaveVolume, +20  ; ÇöÀç ·¹º§À» 20¸¸Å­ ³ôÀÔ´Ï´Ù.
+ + + diff --git a/src/docs/commands/SplashTextOn.htm b/src/docs/commands/SplashTextOn.htm new file mode 100644 index 0000000..5311ff8 --- /dev/null +++ b/src/docs/commands/SplashTextOn.htm @@ -0,0 +1,67 @@ + + + + +SplashTextOn/SplashTextOff + + + + + + + +

SplashTextOn / SplashTextOff

+ +

¸ÂÃã °¡´ÉÇÑ ÅؽºÆ® Æ˾÷ âÀ» »ý¼ºÇÕ´Ï´Ù.

+ +
SplashTextOff
+SplashTextOn [, Width, Height, Title, Text]
+ +

¸Å°³º¯¼ö

+
+ +
Width
+

âÀÇ Çȼ¿ ´ÜÀ§ ³Êºñ. ±âº»°ªÀº 200. ÀÌ ¸Å°³º¯¼ö´Â Ç¥Çö½ÄÀÏ ¼ö ÀÖ½À´Ï´Ù.

+ +
Height
+

âÀÇ Çȼ¿ ´ÜÀ§ ³ôÀÌ (Á¦¸ñ ¹Ù Á¦¿Ü). ±âº»°ªÀº 0 (Áï, Á¦¸ñ ¹Ù¸¸ º¸¿©ÁÝ´Ï´Ù). ÀÌ ¸Å°³º¯¼ö´Â Ç¥Çö½ÄÀÏ ¼ö ÀÖ½À´Ï´Ù.

+ +
Title
+

âÀÇ Á¦¸ñ, ±âº» °ªÀº ºñ¾î ÀÖ½À´Ï´Ù.

+ +
Text
+

âÀÇ ÅؽºÆ®, ±âº»°ªÀº ºñ¾î ÀÖ½À´Ï´Ù. Text°¡ ±æ¸é, °è¼Ó ¼½¼ÇÀ» ¼ö´ÜÀ¸·Î ´õ ªÀº ÁÙ·Î °¡¸¦ ¼ö ÀÖ½À´Ï´Ù. ÀÌ·¸°Ô ÇÏ¸é °¡µ¶¼º°ú À¯Áö°ü¸®¼ºÀÌ Çâ»óµË´Ï´Ù.

+ +
+

³íÆò

+

+·¹ÀÌÀÌ¿ô°ú ±Û²Ã À̸§/»ö/Å©±â¿¡ ´ëÇÏ¿© ´õ ¼¶¼¼ÇÏ°Ô ÅëÁ¦ÇÏ·Á¸é, Progress ¸í·É¾î¿¡ zh0 ¿É¼ÇÀ» ÇÔ²² »ç¿ëÇϽʽÿÀ. ±×·¯¸é Á¦¸ñ ¹Ù¸¦ »ý·«ÇÏ°í ÅؽºÆ®¸¸ º¸¿©ÁÝ´Ï´Ù. +¿¹¸¦ µé¾î: Progress, zh0 fs18, º¸¿© ÁÙ 18-Æ÷ÀÎÆ® ÅؽºÆ® ¾à°£.

+

+SplashTextOff ¸í·É¾î¸¦ »ç¿ëÇÏ¸é ±âÁ¸ÀÇ ½ºÇ÷¡½Ã âÀ» Á¦°ÅÇÒ ¼ö ÀÖ½À´Ï´Ù.

+

+½ºÇ÷¡½Ã âÀº "¾ðÁ¦³ª À§¿¡"ÀÖ½À´Ï´Ù. Áï, ´Ù¸¥ ¸ðµç Á¤»ó ⺸´Ù À§¿¡ ÀÖ´Ù´Â ¶æÀÔ´Ï´Ù. À̸¦ ¹Ù²Ù·Á¸é WinSet, AlwaysOnTop, Off, <½ºÇ÷¡½Ã âÀÇ Á¦¸ñÀ» »ðÀÔÇϽʽÿÀ>¸¦ »ç¿ëÇϽʽÿÀ. WinSetÀº ¶Ç ½ºÇ÷¡½Ã âÀ» Åõ¸íÇÏ°Ô ¸¸µé ¼öµµ ÀÖ½À´Ï´Ù.

+

+WinMove¸¦ »ç¿ëÇϸé ÀÌ ¸í·É¾î·Î È­¸é¿¡ º¸¿©ÁØ ÈÄ¿¡ SplashText âÀÇ À§Ä¡¿Í Å©±â¸¦ Á¶ÀýÇÒ ¼ö ÀÖ½À´Ï´Ù.

+

+Progress, SplashImage, MsgBox, InputBox, FileSelectFile, ±×¸®°í FileSelectFolder¿Í ´Ù¸£°Ô, ½ºÅ©¸³Æ®´ç ¿ÀÁ÷ ÇϳªÀÇ SplashText ⸸ °¡´ÉÇÕ´Ï´Ù.

+

+½ºÇ÷¡½Ã âÀÌ ÀÌ¹Ì È­¸é¿¡ º¸ÀÌ´Â µ¿¾È¿¡ SplashTextOnÀÌ »ç¿ëµÇ¸é, ±× âÀº »õ ¸Å°³º¯¼ö °ªÀ» °¡Áö°í ´Ù½Ã »ý¼ºµË´Ï´Ù. ±×·¸Áö¸¸, Á¦¸ñ ¹Ù³ª ÅؽºÆ®¸¦ º¯°æÇÒ ¶§¸¶´Ù ½ºÇ÷¡½Ã âÀ» ´Ù½Ã »ý¼ºÇϱ⠺¸´Ù, ´ÙÀ½°ú °°ÀÌ ÇÏ¸é ´õ ¼öÇ༺´ÉÀÌ ÁÁ½À´Ï´Ù. ƯÈ÷ âÀÌ ÀÚÁÖ ¹Ù²ð ÇÊ¿ä°¡ ÀÖ´Ù¸é ´ÙÀ½°ú °°ÀÌ ÇϽʽÿÀ:

+ +
WinSetTitle, <½ºÇ÷¡½Ã âÀÇ Á¦¸ñÀ» »ðÀÔÇϽʽÿÀ>, , NewTitle
+ControlSetText, Static1, NewText, <½ºÇ÷¡½Ã âÀÇ Á¦¸ñÀ» ÀÔ·ÂÇϽʽÿÀ>
+ +

°ü·Ã Ç׸ñ

+

+Progress, SplashImage, ToolTip, MsgBox, InputBox, FileSelectFile, FileSelectFolder, WinMove, WinSet

+ +

¿¹Á¦

+
SplashTextOn, , , Á¦¸ñ ¹Ù¸¦ º¸¿©ÁÝ´Ï´Ù.
+Sleep, 2000
+SplashTextOn, 400, 300, Clipboard, Ŭ¸³º¸µå¿¡ ´ÙÀ½ÀÌ ´ã°Ü ÀÖ½À´Ï´Ù:`n%clipboard%
+WinMove, Clipboard, , 0, 0  ; ½ºÇ÷¡½Ã âÀ» Á»ó ¸ð¼­¸®·Î À̵¿½Ãŵ´Ï´Ù.
+Msgbox, ½ºÇ÷¡½Ã ÅؽºÆ®¸¦ Ãë¼ÒÇÏ·Á¸é OK¸¦ ´©¸¨´Ï´Ù.
+SplashTextOff
+ + + diff --git a/src/docs/commands/SplitPath.htm b/src/docs/commands/SplitPath.htm new file mode 100644 index 0000000..556e814 --- /dev/null +++ b/src/docs/commands/SplitPath.htm @@ -0,0 +1,80 @@ + + + + +SplitPath + + + + + + + +

SplitPath

+ +

ÆÄÀÏÀ̸§À̳ª URLÀ» ±×ÀÇ À̸§, µð·ºÅ丮, È®ÀåÀÚ ±×¸®°í µå¶óÀ̺ê·Î ºÐÇØÇÕ´Ï´Ù.

+ +
SplitPath, InputVar [, OutFileName, OutDir, OutExtension, OutNameNoExt, OutDrive]
+

¸Å°³º¯¼ö

+
+ +
InputVar
+
+

ºÐ¼®ÇÒ ÆÄÀÏÀ̸§À» ´ã°í ÀÖ´Â º¯¼öÀÇ À̸§.

+

[v1.1.21+]: ÀÌ ¸Å°³º¯¼ö´Â % Ç¥Çö½ÄÀÏ ¼ö ÀÖÁö¸¸, ÆÛ¼¾Æ®-½ºÆäÀ̽º¸¦ ¹Ýµå½Ã ¾Õ¿¡ »ç¿ëÇØ¾ß ÇÕ´Ï´Ù.

+
+ +
OutFileName
+

°æ·Î ¾øÀÌ ÆÄÀÏ À̸§À» ÀúÀåÇÒ º¯¼öÀÇ À̸§. ÆÄÀÏÀÇ È®ÀåÀÚ´Â Æ÷ÇԵ˴ϴÙ.

+ +
OutDir
+

ÆÄÀÏÀÇ µð·ºÅ丮¸¦ ÀúÀåÇÒ º¯¼öÀÇ À̸§, µå¶óÀÌºê ±âÈ£¿Í (Á¸ÀçÇϸé) °øÀ¯ À̸§À» Æ÷ÇÔÇÕ´Ï´Ù. ÆÄÀÏÀÌ µå¶óÀ̺êÀÇ ·çÆ® µð·ºÅ丮¿¡ ÀÖ´Ù¸é ¸¶Áö¸·ÀÇ ¿ª»ç¼±Àº Æ÷ÇÔµÇÁö ¾Ê½À´Ï´Ù.

+ +
OutExtension
+

ÆÄÀÏÀÇ È®ÀåÀÚ¸¦ ÀúÀåÇÒ º¯¼öÀÇ À̸§ (¿¹, TXT, DOC, ¶Ç´Â EXE). Á¡Àº Æ÷ÇÔµÇÁö ¾Ê½À´Ï´Ù.

+ +
OutNameNoExt
+

°æ·Î, Á¡, ±×¸®°í È®ÀåÀÚ ¾øÀÌ ÆÄÀÏ À̸§À» ÀúÀåÇÒ º¯¼öÀÇ À̸§.

+ +
OutDrive
+

ÆÄÀÏÀÇ µå¶óÀÌºê ±âÈ£ ¶Ç´Â ¼­¹ö À̸§À» ÀúÀåÇÒ º¯¼öÀÇ À̸§. ÆÄÀÏÀÌ ·ÎÄà ¶Ç´Â ¸Ê µå¶óÀ̺꿡 ÀÖ´Ù¸é, º¯¼ö´Â µå¶óÀÌºê ±âÈ£¿Í ´Ù¸§ ½ÖÁ¡ (¿ª»ç¼± ¾øÀ½)ÀÌ ¼³Á¤µË´Ï´Ù. ÆÄÀÏÀÌ ³×Æ®¿öÅ© °æ·Î¿¡ ÀÖ´Ù¸é (UNC), º¯¼ö´Â °øÀ¯ À̸§ÀÌ ¼³Á¤µË´Ï´Ù. ¿¹, \\Workstation01

+ +
+ +

³íÆò

+

+»óÀÀÇÏ´Â Á¤º¸°¡ ÇÊ¿äÇÏÁö ¾Ê´Ù¸é Ãâ·Â º¯¼ö¸¦ »ý·«ÇÒ ¼ö ÀÖ½À´Ï´Ù.

+

+InputVar¿¡ ÆÄÀÏÀ̸§ÀÌ µé¾î Àִµ¥ µå¶óÀÌºê ±âÈ£°¡ ¾ø´Ù¸ç (Áï, °æ·Î°¡ ¾ø°Å³ª ´Ü¼øÈ÷ »ó´ë °æ·Î¸¸ ÀÖ´Ù¸é), OutDrive´Â ºñ¿öÁöÁö¸¸ ´Ù¸¥ ¸ðµç Ãâ·Â º¯¼ö´Â ¿Ã¹Ù¸£°Ô ¼³Á¤µË´Ï´Ù. ºñ½ÁÇÏ°Ô, °æ·Î°¡ Á¸ÀçÇÏÁö ¾ÊÀ¸¸é, OutDirÀº ºñ¿öÁý´Ï´Ù; ±×¸®°í °æ·Î´Â ÀÖÀ¸³ª ÆÄÀÏÀ̸§ÀÌ ¾øÀ¸¸é, OutFileName°ú OutNameNoExt°¡ ºñ¿öÁý´Ï´Ù.

+

+½Ã½ºÅÛ¿¡¼­ ½ÇÁ¦ ÆÄÀÏ°ú µð·ºÅ丮´Â ÀÌ ¸í·É¾î·Î Á¡°ËµÇÁö ¾Ê½À´Ï´Ù. ±×³É InputVar¿¡ ÁÖ¾îÁø ¹®ÀÚ¿­À» ºÐ¼®ÇÒ »ÓÀÔ´Ï´Ù.

+

+ÆÄÀÏÀ̸§¿¡ À¯È¿ÇÏÁö ¾ÊÀº ¿ÍÀϵåÄ«µå (* ±×¸®°í ?) ±×¸®°í ±âŸ ¹®ÀÚ´Â À¯È¿ÇÑ ¹®ÀÚ·Î Ãë±ÞÇÕ´Ï´Ù. ´Ü, ¿¹¿Ü´Â ½ÖÁ¡, ¿ª»ç¼±, ±×¸®°í Á¡ÀÔ´Ï´Ù. À̰͵éÀº °¢ÀÚ ÀÓ¹«¿¡ µû¶ó ÆÄÀÏÀÇ µå¶óÀÌºê ±âÈ£¿Í µð·ºÅ丮 ±×¸®°í È®ÀåÀÚ¸¦ ±¸ºÐÇÏ´Â µ¥ »ç¿ëµË´Ï´Ù.

+

+URL Áö¿ø: InputVar¿¡ ½ÖÁ¡°ú µÎ°³ÀÇ Á¤»ç¼±ÀÌ Æ÷ÇԵǾî ÀÖ´Ù¸é, ¿¹¸¦ µé¾î http://domain.com or ftp://domain.com¿Í °°Àº °æ¿ì, OutDir´Â ÇÁ·ÎÅäÄÝ Á¢µÎ¾î + µµ¸ÞÀÎ À̸§ + µð·ºÅ丮 (¿¹, http://domain.com/images)°¡ ¼³Á¤µË´Ï´Ù. ±×¸®°í OutDrive´Â ÇÁ·ÎÅäÄÝ Á¢µÎ¾î + µµ¸ÞÀÎ À̸§ (¿¹, http://domain.com)ÀÌ ¼³Á¤µË´Ï´Ù. ´Ù¸¥ ¸ðµç º¯¼ö´Â À§¿¡ Á¤ÀÇµÈ ´ë·Î ¼³Á¤µË´Ï´Ù.

+ +

°ü·Ã Ç׸ñ

+

+A_LoopFileExt, StringSplit, StringGetPos, StringMid, StringTrimLeft, StringLeft, FileSelectFile, FileSelectFolder

+ +

¿¹Á¦

+
FullFileName = C:\My Documents\Address List.txt
+   
+; À§·ÎºÎÅÍ ÆÄÀÏÀ̸§¸¸ °¡Á® ¿É´Ï´Ù:
+SplitPath, FullFileName, name
+
+; µð·ºÅ丮¸¸ °¡Á® ¿É´Ï´Ù:
+SplitPath, FullFileName,, dir
+
+; ¸ðµç Á¤º¸¸¦ °¡Á® ¿É´Ï´Ù:
+SplitPath, FullFileName, name, dir, ext, name_no_ext, drive
+   
+; À§·ÎºÎÅÍ º¯¼öµéÀº ´ÙÀ½°ú °°ÀÌ ¼³Á¤µË´Ï´Ù:
+; name = Address List.txt
+; dir = C:\My Documents
+; ext = txt
+; name_no_ext = Address List
+; drive = C:
+ + + diff --git a/src/docs/commands/StatusBarGetText.htm b/src/docs/commands/StatusBarGetText.htm new file mode 100644 index 0000000..0175246 --- /dev/null +++ b/src/docs/commands/StatusBarGetText.htm @@ -0,0 +1,62 @@ + + + + +StatusbarGetText + + + + + + + +

StatusBarGetText

+ +

Ç¥ÁØ »óÅ ¹Ù ÄÜÆ®·ÑÀ¸·ÎºÎÅÍ ÅؽºÆ®¸¦ ¿­¶÷ÇÕ´Ï´Ù.

+ +
StatusBarGetText, OutputVar [, Part#, WinTitle, WinText, ExcludeTitle, ExcludeText]
+

¸Å°³º¯¼ö

+
+ +
OutputVar
+

¿­¶÷µÈ ÅؽºÆ®¸¦ ÀúÀåÇÒ º¯¼öÀÇ À̸§.

+ +
Part#
+

¹Ù¿¡¼­ ¿­¶÷ÇÒ ºÎºÐÀÇ ¹øÈ£, Ç¥Çö½Ä °¡´É. ±âº»°ªÀº 1ÀÌ¸ç º¸Åë °ü½ÉÀÇ ÅؽºÆ®¸¦ ´ã°í ÀÖ´Â ºÎºÐÀÔ´Ï´Ù.

+ +
WinTitle
+

âÀ» ½Äº°Çϴ â Á¦¸ñ ¶Ç´Â ±âŸ ±âÁØ. WinTitle ÂüÁ¶.

+ +
WinText
+

Á¸ÀçÇϸé, ÀÌ ¸Å°³º¯¼ö´Â ¸ñÇ¥ â ÅؽºÆ®ÀÇ ºÎ¹®ÀÚ¿­ÀÔ´Ï´Ù (Window Spy¿¡ ³ëÃâ). ¼ûÀº ÅؽºÆ®´Â DetectHiddenText°¡ ÄÑÁ® ÀÖ¾î¾ß(ON) ŽÁöµË´Ï´Ù.

+ +
ExcludeTitle
+

Á¦¸ñ¿¡ ÀÌ °ªÀÌ Àִ âÀº Á¦¿ÜÇÕ´Ï´Ù.

+ +
ExcludeText
+

ÅؽºÆ®¿¡ ÀÌ °ªÀÌ Àִ âÀº Á¦¿ÜÇÕ´Ï´Ù.

+ +
+ +

ErrorLevel

+

[v1.1.04+] ÀÌ ¸í·É¾î´Â ½ÇÆнà ¿¹¿Ü¸¦ ´øÁú ¼ö ÀÖ½À´Ï´Ù. ´õ ÀÚ¼¼ÇÑ Á¤º¸´Â ½ÇÇà½Ã°£ ¿¡·¯¸¦ ÂüÁ¶ÇϽʽÿÀ.

+

ErrorLevelÀº ¹®Á¦°¡ ÀÖÀ¸¸é 1 ¾øÀ¸¸é 0ÀÌ ¼³Á¤µË´Ï´Ù. ¹®Á¦°¡ ÀÖ¾úÀ¸¸é OutputVarµµ ºñ¿öÁý´Ï´Ù.

+ +

³íÆò

+

+ÀÌ ¸í·É¾î´Â â¿¡¼­ ù ¹ø° Ç¥ÁØ »óÅ ¹Ù¸¦ ÀÐÀ¸·Á°í ½ÃµµÇÕ´Ï´Ù (Microsoft °øÅë ÄÜÆ®·Ñ: msctls_statusbar32). ¾î¶² ÇÁ·Î±×·¥Àº ÀڽŸ¸ÀÇ »óÅ ¹Ù¸¦ »ç¿ëÇϱ⵵ ÇÏ°í Ưº°ÇÑ ¹öÀüÀÇ MS °øÅë ÄÜÆ®·ÑÀ» »ç¿ëÇÕ´Ï´Ù. ÀÌ °æ¿ì ÅؽºÆ®¸¦ ¿­¶÷ÇÒ ¼ö ¾ø½À´Ï´Ù.

+

+ÀÌ ¸í·É¾î¸¦ ȸµ¹ÀÌ ¾È¿¡ »ç¿ëÇϱ⠺¸´Ù, º¸Åë StatusBarWait¸¦ »ç¿ëÇÏ´Â °ÍÀÌ ´õ È¿À²ÀûÀÔ´Ï´Ù. ÀÌ ¸í·É¾î´Â ¹Ýº¹ÀûÀ¸·Î StatusBarGetText¸¦ È£ÃâÇÏ´Â ºÎ´ãÀ» ÇÇÇϵµ·Ï ÃÖÀûÈ­ µÇ¾î ÀÖ½À´Ï´Ù.

+

+â Á¦¸ñ°ú ÅؽºÆ®´Â ´ë¼Ò¹®ÀÚ¿¡ ¹Î°¨ÇÕ´Ï´Ù. ¼ûÀº âÀº DetectHiddenWindowsÀÌ ÄÑÁ® ÀÖ¾î¾ß ŽÁöµË´Ï´Ù.

+ +

°ü·Ã Ç׸ñ/h3> +

+StatusBarWait, WinGetTitle, WinGetText, ControlGetText

+ +

¿¹Á¦

+
StatusBarGetText, RetrievedText, 1, Search Results
+IfInString, RetrievedText, found, MsgBox, °Ë»ö °á°ú°¡ ¹ß°ßµÇ¾ú½À´Ï´Ù.
+ + + diff --git a/src/docs/commands/StatusBarWait.htm b/src/docs/commands/StatusBarWait.htm new file mode 100644 index 0000000..18dcdaa --- /dev/null +++ b/src/docs/commands/StatusBarWait.htm @@ -0,0 +1,93 @@ + + + + +StatusBarWait + + + + + + + +

StatusBarWait

+ +

âÀÇ »óÅ ¹Ù¿¡ ÁöÁ¤µÈ ¹®ÀÚ¿­ÀÌ ´ã±æ ¶§±îÁö ±â´Ù¸³´Ï´Ù.

+ +
StatusBarWait [, BarText, Seconds, Part#, WinTitle, WinText, Interval, ExcludeTitle, ExcludeText]
+

¸Å°³º¯¼ö

+
+ +
BarText
+

¸í·É¾î°¡ ±â´Ù¸®´Â ÅؽºÆ® ¶Ç´Â ºÎºÐÀû ÅؽºÆ®. ±âº»°ªÀº ºñ¾î ÀÖ½À´Ï´Ù. Áï, »óÅ ¹Ù°¡ ºñ±â¸¦ ±â´Ù¸°´Ù´Â ¶æÀÔ´Ï´Ù. ÅؽºÆ®´Â ´ë¼Ò¹®ÀÚ¸¦ ±¸º°ÇÏ°í ºÎÇÕ ÇàÀ§´Â SetTitleMatchModeÀÇÇØ °áÁ¤µË´Ï´Ù. ¾Æ·¡ÀÇ WinTitle°ú ºñ½ÁÇÕ´Ï´Ù.

+

+ ´ë½Å¿¡ »óÅ ¹ÙÀÇ ÅؽºÆ®°¡ º¯Çϱ⸦ ±â´Ù¸°´Ù¸é, StatusBarGetText¸¦ ȸµ¹ÀÌ ¾È¿¡ »ç¿ëÇϰųª, ÀÌ ÆäÀÌÁö ÇÏ´Ü¿¡ ÀÖ´Â RegEx ¿¹Á¦¸¦ µû¸£½Ê½Ã¿À.

+ +
Seconds
+

½Ã°£ Á¦ÇÑÀ» ¼±¾ðÇϱâ Àü¿¡ ±â´Ù¸± ÃÊÀÇ °³¼ö (¼Ò¼ö Á¡À» Æ÷ÇÔÇÒ ¼ö ÀÖ°í Ç¥Çö½ÄÀÏ ¼ö ÀÖ½À´Ï´Ù). ½Ã°£ Á¦ÇÑ¿¡ °É¸± °æ¿ì ErrorLevelÀº 1ÀÌ ¼³Á¤µË´Ï´Ù. ±âº» °ªÀº ºñ¾î ÀÖ½À´Ï´Ù. Áï, ¹«ÇÑÁ¤ ±â´Ù¸°´Ù´Â ¶æÀÔ´Ï´Ù. 0À» ÁöÁ¤Çϸé 0.5¸¦ ÁöÁ¤ÇÑ °Í°ú °°½À´Ï´Ù.

+ +
Part#
+

»óÅ ¹Ù¿¡¼­ ¿­¶÷ÇÒ ºÎºÐÀÇ ¹øÈ£. Ç¥Çö½Ä °¡´É. ±âº»°ªÀº 1ÀÌ¸ç º¸Åë °ü½ÉÀÇ ÅؽºÆ®°¡ Æ÷ÇÔµÈ ºÎºÐÀÔ´Ï´Ù.

+ +
WinTitle
+

¸ñÇ¥ âÀ» ½Äº°Çϴ â Á¦¸ñ ¶Ç´Â ±âŸ ±âÁØ. WinTitle ÂüÁ¶.

+ +
WinText
+

Á¸ÀçÇϸé, ÀÌ ¸Å°³º¯¼ö´Â ¹Ýµå½Ã ¸ñÇ¥ â ÅؽºÆ®ÀÇ ºÎ¹®ÀÚ¿­ÀÔ´Ï´Ù (Window Spy¿¡ ³ëÃâµÊ). ¼ûÀº ÅؽºÆ®´Â DetectHiddenTextÀÌ °ÜÁ®(ON) ÀÖ¾î¾ß ŽÁöµË´Ï´Ù.

+ +
Interval
+

ÀÌ ¸í·É¾î°¡ ½ÇÇà ÁßÀÎ µ¿¾È¿¡ ¾ó¸¶³ª ÀÚÁÖ »óÅ ¹Ù¸¦ Á¡°ËÇÒ °ÍÀΰ¡ (¹Ð¸®ÃÊ ´ÜÀ§), ÀÌ °ªÀº Ç¥Çö½ÄÀÏ ¼ö ÀÖ½À´Ï´Ù. ±âº» °ªÀº 50ÀÔ´Ï´Ù.

+ +
ExcludeTitle
+

Á¦¸ñ¿¡ ÀÌ °ªÀÌ Àִ âÀº ¹«½ÃÇÕ´Ï´Ù.

+ +
ExcludeText
+

ÅؽºÆ®¿¡ ÀÌ °ªÀÌ Àִ âÀº ¹«½ÃÇÕ´Ï´Ù.

+ +
+ +

ErrorLevel

+

[v1.1.04+] ÀÌ ¸í·É¾î´Â »óŹٿ¡ Á¢±ÙÇÏÁö ¸ø ÇßÀ¸¸é ¿¹¿Ü¸¦ ´øÁú ¼ö ÀÖ½À´Ï´Ù. ´õ ÀÚ¼¼ÇÑ Á¤º¸´Â ½ÇÇà½Ã°£ ¿¡·¯¸¦ ÂüÁ¶ÇϽʽÿÀ.

+

+ErrorLevelÀº »óÅ ¹Ù¿¡¼­ ºÎÇÕÀ» ¹ß°ßÇϱâ Àü¿¡ ½Ã°£ Á¦ÇÑ¿¡ °É¸®¸é 1ÀÌ ¼³Á¤µË´Ï´Ù. »óÅ ¹Ù¿¡ Á¢±ÙÇÏÁö ¸ø ÇßÀ¸¸é 2°¡ ¼³Á¤µË´Ï´Ù. ºÎÇÕÀ» ¹ß°ßÇϸé 0ÀÌ ¼³Á¤µË´Ï´Ù.

+ +

³íÆò

+

+StatusBarWaitÀº âÀÇ Ã¹ ¹ø° Ç¥ÁØ »óÅ ¹Ù¸¦ ÀÐÀ¸·Á°í ½ÃµµÇÕ´Ï´Ù (class msctls_statusbar32). ¾î¶² ÇÁ·Î±×·¥Àº ÀڽŠ¸¸ÀÇ »óŹٰ¡ ÀÖ°í Ưº°ÇÑ ¹öÀüÀÇ MS °øÅë ÄÜÆ®·ÑÀ» °¡Áý´Ï´Ù. ±×·± °æ¿ì »óŹٸ¦ ¿­¶÷ÇÒ ¼ö ¾ø½À´Ï´Ù.

+

+ȸµ¹ÀÌ ¾È¿¡ StatusBarGetText¸¦ »ç¿ëÇÏ´Â °Íº¸´Ù, º¸Åë StatusBarWait¸¦ »ç¿ëÇÏ´Â °ÍÀÌ ´õ È¿À²ÀûÀÔ´Ï´Ù. ¿Ö³ÄÇϸé StatusBarGetText¸¦ ¹Ýº¹ÀûÀ¸·Î È£ÃâÇϸé ÀϾ ºÎ´ãÀ» ÇÇÇϵµ·Ï ÃÖÀûÈ­µÇ¾î Àֱ⠶§¹®ÀÔ´Ï´Ù.

+

+StatusBarWait´Â ±×ÀÇ ¸ñÇ¥ âÀ» °áÁ¤ÇÑ ´ÙÀ½ ºÎÇÕÇϱ⸦ ±â´Ù¸³´Ï´Ù. ±× ¸ñÇ¥ âÀÌ ´ÝÈ÷¸é, StatusBarWait´Â ÁöÁ¤µÈ WinTitle°ú WinText·Î ¶Ç´Ù¸¥ âÀÌ ºÎÇÕÇÏ´õ¶óµµ ±â´Ù¸®±â¸¦ ¸ØÃä´Ï´Ù.

+

+ÀÌ ¸í·É¾î°¡ ´ë±â »óÅ¿¡ ÀÖ´Â µ¿¾È, »õ·Î¿î ¾²·¹µå¸¦ ±âµ¿ÇÒ ¼ö ÀÖ½À´Ï´Ù ÇÖÅ°, ¸ÂÃã ¸Þ´º Ç׸ñ, ¶Ç´Â ŸÀ̸Ó.

+

+â Á¦¸ñ°ú ÅؽºÆ®´Â ´ë¼Ò¹®ÀÚ¸¦ ±¸ºÐÇÕ´Ï´Ù. ¼ûÀº âÀº DetectHiddenWindows°¡ ÄÑÁ® ÀÖ¾î¾ß ŽÁöµË´Ï´Ù.

+ +

°ü·Ã Ç׸ñ

+

StatusBarGetText, WinGetTitle, WinGetText, ControlGetText

+ +

¿¹Á¦

+ +
; ´ÙÀ½ ¿¹Á¦´Â »õ·Î¿î °Ë»ö ÆÐÅÏÀ» ±âÁ¸ÀÇ Explorer/Search â¿¡ »ðÀÔÇÕ´Ï´Ù.
+IfWinExist, Search Results ; ¸¶Áö¸· ¹ß°ß âÀ» ¼³Á¤ÇÏ¿© ¾Æ·¡¸¦ °£´ÜÇÏ°Ô ¸¸µì´Ï´Ù.
+{
+    WinActivate
+    Send, {tab 2}!o*.txt{enter}  ; °Ë»ö â¿¡, °Ë»öÇÒ ÆÐÅÏÀ» ÀÔ·ÂÇÕ´Ï´Ù.
+    Sleep, 400  ; »óÅ ¹Ù¿¡ "Searching"À¸·Î ¹Ù²Ü ½Ã°£À» ÁÝ´Ï´Ù.
+    StatusBarWait, found, 30
+    if ErrorLevel
+        MsgBox, ¸í·É¾î°¡ ½Ã°£ Á¦ÇÑ¿¡ °É·È°Å³ª ¹®Á¦°¡ ÀÖ¾ú½À´Ï´Ù.
+    else
+        MsgBox, °Ë»öÀÌ ¼º°øÀûÀ¸·Î ¿Ï·á µÇ¾ú½À´Ï´Ù.
+}
+

 

+
; ´ÙÀ½ ¿¹Á¦´Â È°¼º âÀÇ »óŹٰ¡ ¹Ù²î±â¸¦ ±â´Ù¸³´Ï´Ù. ÀÌ ¿¹Á¦´Â v1.0.46.06+À» ¿ä±¸ÇÕ´Ï´Ù.
+SetTitleMatchMode RegEx
+IfWinExist A  ; ¸¶Áö¸· ¹ß°ß â¿¡ È°¼º âÀ» ¼³Á¤ÇÕ´Ï´Ù (¾Æ·¡¿¡ »ç¿ë).
+{
+   StatusBarGetText, OrigText
+   StatusBarWait, ^(?!^\Q%OrigText%\E$)  ; ÀÌ Á¤±Ô Ç¥Çö½ÄÀº ÅؽºÆ®¿¡ ¹«¾ùÀÌµç º¯È­°¡ Àֱ⸦ ±â´Ù¸³´Ï´Ù.
+}
+ + + diff --git a/src/docs/commands/StrPutGet.htm b/src/docs/commands/StrPutGet.htm new file mode 100644 index 0000000..89ab05a --- /dev/null +++ b/src/docs/commands/StrPutGet.htm @@ -0,0 +1,73 @@ + + + + +StrPut / StrGet + + + + + + + +

StrPut() / StrGet() [AHK_L 46+]

+ +

¹®ÀÚ¿­À» ¸Þ¸ð¸® ÁÖ¼Ò¿¡ ¶Ç´Â ¸Þ¸ð¸® ÁּҷκÎÅÍ º¹»çÇÕ´Ï´Ù. ¼±ÅÃÀûÀ¸·Î ÁÖ¾îÁø ÄÚµå ÆäÀÌÁö »çÀÌ¿¡ º¯È¯ÇÕ´Ï´Ù.

+ +
StrPut(String [, Encoding = None ] )
+StrPut(String, Address [, Length] [, Encoding = None ] )
+StrGet(Address [, Length] [, Encoding = None ] )
+

¸Å°³º¯¼ö

+
+ +
String
+

¹®ÀÚ¿­, ¼ýÀÚµµ ¹ÞÀ» ¼ö ÀÖ½À´Ï´Ù.

+ +
Address
+

¹®ÀÚ¿­À» Àаí/¾µ ÁÖ¼Ò.

+ +
Length
+

Àаí/¾µ ¹®ÀÚÀÇ ÃÖ´ë °³¼ö, ÇÊ¿äÇÏ¸é ³Î-Á¾·á ¹®ÀÚ Æ÷ÇÔ. ¹Ýȯ °ªÀ» ÂüÁ¶ÇϽʿÀ.

+ +
Encoding
+

StrGet¿¡ ´ëÇÑ ¼Ò½º ÀÎÄÚµù ¶Ç´Â StrPut¿¡ ´ëÇÑ Å¸°Ù ÀÎÄÚµù; ¿¹¸¦ µé¾î, "UTF-8", "UTF-16" or "CP936". Address¿Í Length¸¦ ÁöÁ¤ÇÏÁö ¾ÊÀ¸¸é, ¼ýÄ¡ ½Äº°ÀÚ ¾Õ¿¡ "CP"¸¦ ºÙ¿©¾ß ÇÏ´Ï´Ù. ºó ¹®ÀÚ¿­À̳ª "CP0"À» ÁöÁ¤ÇÏ¸é ½Ã½ºÅÛ ±âº» ANSI ÄÚµå ÆäÀÌÁö¸¦ »ç¿ëÇÕ´Ï´Ù.

+ +
+ +

¹Ýȯ °ª

+

+°¢ ÇÔ¼ö¿¡ ´ëÇÏ¿©, ¹«È¿ÇÑ ¸Å°³º¯¼ö´Â ºó ¹®ÀÚ¿­À» µ¹·ÁÁÝ´Ï´Ù.

+

+StrPutÀº ¾º¿©Áø ¹®ÀÚÀÇ °³¼ö¸¦ µ¹·ÁÁÝ´Ï´Ù. Address°¡ ÁÖ¾îÁöÁö ¾ÊÀ¸¸é ¹®ÀÚ´ÜÀ§·Î ÇÊ¿äÇÑ ¹öÆÛ Å©±â¸¦ µ¹·ÁÁÖ°í ¿¡·¯°¡ ÀϾ¸é 0À» µ¹·ÁÁÝ´Ï´Ù. Length°¡ ¼Ò½º ¹®ÀÚ¿­ÀÌ ±æÀ̺¸´Ù ÀÛÀ¸¸é, ÇÔ¼ö´Â ½ÇÆÐÇÏ°í 0À» µ¹·ÁÁÝ´Ï´Ù. Length°¡ Á¤È®ÇÏ°Ô ¼Ò½º ¹®ÀÚ¿­ÀÇ ±æÀÌÀ̸é, ¹®ÀÚ¿­Àº ³Î-¹®ÀÚ·Î Á¾·áÇÏÁö ¾Ê½À´Ï´Ù; ±×·¸Áö ¾ÊÀ¸¸é ¹ÝȯµÈ °³¼ö´Â ³Î ¹®ÀÚ¸¦ Æ÷ÇÔÇÕ´Ï´Ù.

+

+StrGetÀº ÇÊ¿äÇÑ º¯È¯À» ¼öÇàÇÑ ÈÄ ¿äûµÈ ¹®ÀÚ¿­À» ±æÀ̸¦ µ¹·ÁÁÝ´Ï´Ù.

+ +

³íÆò

+

StrPutÀÇ String ¸Å°³º¯¼ö¿Í StrGetÀÇ ¹Ýȯ°ªÀº ¾ðÁ¦³ª ÇöÀç ½ÇÇà ÆÄÀÏÀÇ °íÀ¯ ÀÎÄÚµùÀ» µû¸¨´Ï´Ù. ¹Ý¸é¿¡ EncodingÀº ÁÖ¾îÁø Address¿¡ ÀÐ°í ¾µ ¹®ÀÚ¿­ÀÇ ÀÎÄÚµùÀ» ÁöÁ¤ÇÕ´Ï´Ù. EncodingÀ» ÁöÁ¤ÇÏÁö ¾ÊÀ¸¸é, ±× ¹®ÀÚ¿­Àº ±×³É ¾Æ¹« º¯È¯µµ ÀϾÁö ¾Ê°í ±×´ë·Î º¹»çµÇ°Å³ª ÃøÁ¤µË´Ï´Ù.

+

+ÄÚµå ÆäÀÌÁö »çÀÌÀÇ º¯È¯ÀÌ ÇÊ¿äÇϸé, ÇÊ¿äÇÑ ¹öÆÛ Å©±â´Â ¼Ò½º StringÀÇ Å©±â¿¡ µû¶ó ´Þ¶óÁú ¼ö ÀÖ½À´Ï´Ù.

+

½ºÅ©¸³Æ®°¡ AutoHotkey Basic°úÀÇ È£È¯À» ÇÊ¿ä·Î ÇÏ¸é ¿©ÀüÈ÷ StrPut°ú StrGetÀ» »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. ´Ü ÀûÀýÇÑ ½ºÅ©¸³Æ® ÆÄÀϵéÀÌ ÇÔ¼ö ¶óÀ̺귯¸®¿¡ ¼³Ä¡µÇ¾î ÀÖ¾î¾ß ÇÕ´Ï´Ù. ÀÌ·± ½ºÅ©¸³Æ®µéÀº ¿ÀÅäÇÖÅ° °øµ¿Ã¼ Æ÷·³¿¡¼­ ¹ß°ßÇÒ ¼ö ÀÖ½À´Ï´Ù.

+ +

°ü·Ã Ç׸ñ

+

½ºÅ©¸³Æ® ȣȯ¼º, FileEncoding, VarSetCapacity()

+ +

¿¹Á¦

+

Length³ª EncodingÀ» Address ´ÙÀ½¿¡ Á÷Á¢ÀûÀ¸·Î ÁöÁ¤ÇÒ ¼ö ÀÖ½À´Ï´Ù. ±×·¯³ª ±×·± °æ¿ì EncodingÀº Àý´ë·Î ¼ýÄ¡ÇüÀÌ µÇ¸é ¾ÈµË´Ï´Ù:

+
strA := StrGet(addressA, "cp0")     ; OK
+strA := StrGet(addressA, length, 0) ; OK
+strA := StrGet(addressA, 0)         ; Error
+ +

+StrPutÀº ƯÁ¤ÇÑ ÀÎÄÚµùÀ¸·Î ¹®ÀÚ¿­¿¡ ´ëÇÏ¿© ÇÊ¿äÇÑ ¹öÆÛ Å©±â¸¦ °è»êÇϱâ À§ÇÏ¿© ÇÑ ¹ø È£ÃâÀÌ °¡´ÉÇÕ´Ï´Ù. ´ÙÀ½, ±× ¹®ÀÚ¿­À» ÀÎÄÚµåÇؼ­ ¹öÆÛ ¾ÈÀ¸·Î ½á ³ÖÀ» ¼ö ÀÖ½À´Ï´Ù. ÀÚÁÖ º¯¼ö¸¦ StrPut°ú ÇÔ²² »ç¿ëÇÑ´Ù¸é, ´ÙÀ½°ú °°Àº ÇÔ¼ö¸¦ ¿©·¯ºÐÀÇ ¶óÀ̺귯¸®¿¡ ³Ö¾î º¸½Ê½Ã¿À:

+
StrPutVar(string, ByRef var, encoding)
+{
+    ; °¡¿ë´É·ÂÀ» È®ÀÎÇÕ´Ï´Ù.
+    VarSetCapacity( var, StrPut(string, encoding)
+        ; StrPutÀº ¹®ÀÚ °³¼ö¸¦ µ¹·ÁÁÖÁö¸¸, VarSetCapacity´Â ¹ÙÀÌÆ®¸¦ ÇÊ¿ä·Î ÇÕ´Ï´Ù.
+        * ((encoding="utf-16"||encoding="cp1200") ? 2 : 1) )
+    ; ±× ¹®ÀÚ¿­À» º¹»çÇϰųª º¯È¯ÇÕ´Ï´Ù.
+    return StrPut(string, &var, encoding)
+}
+ + + diff --git a/src/docs/commands/StringCaseSense.htm b/src/docs/commands/StringCaseSense.htm new file mode 100644 index 0000000..6bb41a4 --- /dev/null +++ b/src/docs/commands/StringCaseSense.htm @@ -0,0 +1,50 @@ + + + + +StringCaseSense + + + + + + + +

StringCaseSense

+ +

¹®ÀÚ¿­ ºñ±³°¡ ´ë¼Ò¹®ÀÚ¸¦ ±¸ºÐÇÒÁö ¸»Áö °áÁ¤ÇÕ´Ï´Ù (±âº» °ªÀº "´ë¼Ò¹®ÀÚ¸¦ ±¸ºÐÇÏÁö ¾Ê½À´Ï´Ù").

+ +
StringCaseSense, On|Off|Locale
+

¸Å°³º¯¼ö

+
+ +
On|Off|Locale
+

On: ¹®ÀÚ¿­ ºñ±³´Â ´ë¼Ò¹®ÀÚ¸¦ ±¸ºÐÇÕ´Ï´Ù. ÀÌ ¼³Á¤Àº ¶ÇÇÑ Ç¥Çö½Ä µîÈ£ »çÀÎ ¿¬»êÀÚ (=) ±×¸®°í InStr()ÀÇ ´ë¼Ò¹®ÀÚ ºñ ±¸ºÐ ¸ðµå¸¦ ¾Æ·¡¿¡ ±â¼úµÈ ·ÎÄÉÀÏ ¹æ¹ýÀ» »ç¿ëÇϵµ·Ï ¸¸µì´Ï´Ù.

+

Off (±âº»°ªÀ¸·Î ½ÃÀÛ): ±âÈ£ A-Z´Â ¼Ò¹®ÀÚ·Î °£ÁÖÇÕ´Ï´Ù. ÀÌ°ÍÀº ÇÏÀ§ ȣȯ°ú ¼öÇ༺´ÉÀÇ ¹®Á¦ ¶§¹®¿¡ ¸ðµç ½ºÅ©¸³Æ®¸¦ ½ÃÀÛÇÒ ¶§ ±âº»°ªÀÔ´Ï´Ù (LocaleÀº ºñ±³µÇ´Â ¹®ÀÚ¿­ÀÇ ¼ºÁú¿¡ µû¶ó Off ¶§º¸´Ù 1¿¡¼­ 8¹è±îÁö ´À¸³´Ï´Ù).

+

Locale [v1.0.43.03+]: ¹®ÀÚ¿­ ºñ±³´Â ÇöÀç »ç¿ëÀÚÀÇ ·ÎÄÉÀÏ¿¡ µû¶ó ´ë¼Ò¹®ÀÚ¸¦ ±¸ºÐ ÇÕ´Ï´Ù. ¿¹¸¦ µé¾î, ´ëºÎºÐÀÇ ¿µ¾î¿Í ¼­±¸ À¯·´ ·ÎÄÉÀÏÀº ±âÈ£ A-Z¸¦ ¼Ò¹®ÀÚ·Î Ãë±ÞÇÒ »Ó¸¸ ¾Æ´Ï¶ó Ä and Ü¿Í °°Àº ANSI ±âÈ£µµ ¼Ò¹®ÀÚ·Î Ãë±ÞÇÕ´Ï´Ù.

+ +
+ +

³íÆò

+

ÀÌ ¼³Á¤Àº ´ÙÀ½¿¡ Àû¿ëµË´Ï´Ù:

+ +

+³»Àå º¯¼ö A_StringCaseSense´Â ÇöÀç ¼³Á¤ÀÌ ´ã±é´Ï´Ù (´Ü¾î On, Off, ¶Ç´Â Locale).

+

+»õ·Î ±âµ¿µÇ´Â ¾²·¹µå´Â ¸ðµÎ (¿¹¸¦ µé¾î ÇÖÅ°, ¸ÂÃã ¸Þ´º Ç׸ñ, ¶Ç´Â ŸÀÌ¸Ó ¼­ºê·çƾ) ÀÌ ¸í·É¾î¿¡ ´ëÇÑ ±âº» ¼³Á¤À» °¡Áö°í »õ·Ó°Ô ½ÃÀÛÇÕ´Ï´Ù. ÀÌ ±âº»°ªÀº ÀÚµ¿-½ÇÇà ¼½¼Ç (½ºÅ©¸³Æ®ÀÇ »ó´Ü)¿¡¼­ ÀÌ ¸í·É¾î¸¦ »ç¿ëÇÏ¸é º¯°æÇÒ ¼ö ÀÖ½À´Ï´Ù.

+ +

°ü·Ã Ç׸ñ

+

+IfEqual, IfInString, if var between, StringReplace, StringGetPos

+ +

¿¹Á¦

+
StringCaseSense Locale
+ + + diff --git a/src/docs/commands/StringGetPos.htm b/src/docs/commands/StringGetPos.htm new file mode 100644 index 0000000..3fe9854 --- /dev/null +++ b/src/docs/commands/StringGetPos.htm @@ -0,0 +1,95 @@ + + + + +StringGetPos + + + + + + + +

StringGetPos

+ +

¹®ÀÚ¿­ ¾È¿¡¼­ ÁöÁ¤µÈ ºÎ¹®ÀÚ¿­ÀÇ À§Ä¡¸¦ ¿­¶÷ÇÕ´Ï´Ù.

+ +
StringGetPos, OutputVar, InputVar, SearchText [, L#|R#, Offset]
+Position := InStr(Haystack, Needle [, CaseSensitive?, StartingPos]) ; ÀÚ¼¼ÇÑ °ÍÀº InStr() ÇÔ¼ö ÂüÁ¶.
+

¸Å°³º¯¼ö

+
+ +
OutputVar
+

¿­¶÷µÈ À§Ä¡¸¦ ÀúÀåÇÒ º¯¼öÀÇ À̸§. InputVarÀÇ Ã¹ ¹®ÀÚ¿¡ »ó´ëÀûÀÔ´Ï´Ù. À§Ä¡°¡ 0À̸é StringGetPos¿¡ ´ëÇÏ¿© ù ¹®ÀÚÀÌ°í À§Ä¡°¡ 1À̸é InStr()¿¡ ´ëÇÏ¿© ù ¹®ÀÚÀÔ´Ï´Ù.

+ +
InputVar
+

+ ³»¿ëÀÌ °Ë»öµÉ ÀÔ·Â º¯¼öÀÇ À̸§. À̸§À» ÆÛ¼¾Æ® »çÀÎÀ¸·Î µÑ·¯ ½ÎÁö ¸¶½Ê½Ã¿À. ´Ü, º¯¼öÀÇ ³»¿ëÀÌ À̸§À̱⸦ ¹Ù¶ó´Â °æ¿ì¶ó¸é ¿¹¿ÜÀÔ´Ï´Ù.

+ +
SearchText
+

°Ë»öÇÒ ¹®ÀÚ¿­, ºÎÇÕÀº ´ë¼Ò¹®ÀÚ¸¦ ±¸ºÐÇÏÁö ¾Ê½À´Ï´Ù. ´Ü, StringCaseSense°¡ ÄÑÁ® ÀÖ´Â °æ¿ì´Â ¿¹¿ÜÀÔ´Ï´Ù.

+ +
L#|R#
+

ÀÌ ¸Å°³º¯¼ö´Â InputVar ¾È¿¡¼­ SearchText°¡ ¿©·¯ ¹ø ÃâÇöÇÏ¸é ¸î ¹ø° ºÎÇÕÀ» ¹ß°ßÇÒÁö¿¡ ¿µÇâÀ» ¹ÌĨ´Ï´Ù . ÀÌ ¸Å°³º¯¼ö¸¦ »ý·«Çϸé, ù ¹ø° ºÎÇÕÀ» À§ÇØ InputVar¸¦ ¿ÞÂʺÎÅÍ °Ë»öÇÕ´Ï´Ù. ÀÌ ¸Å°³º¯¼ö°¡ 1À̰ųª ±âÈ£ RÀ̸é, °Ë»öÀÌ InputVarÀÇ ¿À¸¥ÂʺÎÅÍ ½ÃÀÛÇØ ¿ÞÂÊÀ¸·Î ù ¹ø° ºÎÇÕÀ» ¹ß°ßÇÒ ¶§±îÁö °è¼ÓµË´Ï´Ù.

+

+ ù ¹ø° ºÎÇÕ¸»°í ´Ù¸¥ ºÎÇÕÀ» ¹ß°ßÇÏ·Á¸é, ±âÈ£ L ¶Ç´Â R ´ÙÀ½¿¡ ÃâÇö Ƚ¼ö¸¦ ÁöÁ¤ÇϽʽÿÀ. ¿¹¸¦ µé¾î, ¿À¸¥ÂÊ¿¡¼­ ³× ¹ø° ÃâÇöÀ» ¹ß°ßÇÏ°í ½ÍÀ¸¸é. r4¸¦ ÁöÁ¤ÇϽʽÿÀ. ÁÖÀÇ: ¼ýÀÚ¸¦ 0ÀÌÇÏ·Î ÁöÁ¤Çϸé, ºÎÇÕÀÌ ¹ß°ßµÇÁö ¾Ê½À´Ï´Ù.

+ +
Offset
+

¿ÞÂÊ ³¡ ¶Ç´Â ¿À¸¥ÂÊ ³¡À¸·ÎºÎÅÍ (À§ÀÇ ¸Å°³º¯¼ö¿¡ µû¶ó) °Ç³Ê ¶Û ¹®ÀÚÀÇ °³¼ö. + »ý·«Çϸé, ±âº»°ªÀº 0ÀÔ´Ï´Ù. ¿¹¸¦ µé¾î, ´ÙÀ½Àº ¿ÞÂÊ 10¹ø° ¹®ÀÚºÎÅÍ °Ë»öÀ» ½ÃÀÛÇÕ´Ï´Ù: StringGetPos, OutputVar, InputVar, abc, , 9. + ÀÌ ¸Å°³º¯¼ö´Â Ç¥Çö½ÄÀÏ ¼ö ÀÖ½À´Ï´Ù..

+ +
+ +

ErrorLevel

+

+ErrorLevelÀº ÁöÁ¤µÈ SearchTextÀÇ ÃâÇöÀ» InputVar ¾È¿¡¼­ ¹ß°ßÇÒ ¼ö ¾ø¾úÀ¸¸é 1ÀÌ ¼³Á¤µÇ°í ±×·¸Áö ¾ÊÀ¸¸é 0ÀÌ ¼³Á¤µË´Ï´Ù.

+ +

³íÆò

+

+StringMid ±×¸®°í InStr()¿Í ´Ù¸£°Ô, StringGetPos¿¡ ´ëÇÏ¿© 0Àº ù ¹ø° ¹®ÀÚÀÇ À§Ä¡·Î Á¤Àǵ˴ϴÙ.

+

+¿­¶÷µÈ À§Ä¡´Â ¾ðÁ¦³ª InputVarÀÇ Ã¹ ¹®ÀÚ¿¡ »ó´ëÀûÀÔ´Ï´Ù. L#|R# ±×¸®°í/¶Ç´Â OffsetÀÌ ÁöÁ¤µÇ¾î ÀÖµç ¸»µç »ó°üÀÌ ¾ø½À´Ï´Ù. ¿¹¸¦ µé¾î, ¹®ÀÚ¿­ "abc"°¡ 123abc789¿¡¼­ ¹ß°ßµÇ¸é, º¸°íµÈ ±×ÀÇ À§Ä¡´Â ¾ðÁ¦³ª 3ÀÔ´Ï´Ù. ¾î¶² ¹æ¹ýÀ¸·Î ¹ß°ßÇß´ÂÁö´Â »ó°üÀÌ ¾ø½À´Ï´Ù.

+

+SearchTextÀÇ ÁöÁ¤µÈ ÃâÇöÀÌ InputVar¾È¿¡ Á¸ÀçÇÏÁö ¾ÊÀ¸¸é, OutputVar´Â -1ÀÌ ¼³Á¤µÇ°í ErrorLevel´Â 1ÀÌ ¼³Á¤µË´Ï´Ù.

+

+SplitPath¸¦ »ç¿ëÇÏ¸é º¸´Ù ½±°Ô ÆÄÀÏ °æ·Î¸¦ ±×ÀÇ µð·ºÅ丮¿Í ÆÄÀÏÀ̸§ ±×¸®°í È®ÀåÀÚ·Î °¡¸¦ ¼ö ÀÖ½À´Ï´Ù.

+

+³»Àå º¯¼ö %A_Space%¿Í %A_Tab%¿¡ °¢°¢ ½ºÆäÀ̽º ¹®ÀÚ Çϳª¿Í ÅÇ ¹®ÀÚ Çϳª°¡ µé¾î ÀÖ½À´Ï´Ù. SearchTextÀÇ ¾ÕÀ̳ª µÚ¿¡¼­ ½ºÆäÀ̽º¿Í ÅÇÀ» µû·Î °Ë»öÇÒ °æ¿ì¿¡ À¯¿ëÇÕ´Ï´Ù.

+ +

°ü·Ã Ç׸ñ

+

InStr(), RegExMatch(), IfInString, if var in/contains MatchList, StringCaseSense, StringReplace, SplitPath, StringLeft, StringRight, StringMid, StringTrimLeft, StringTrimRight, StringLen, StringLower, StringUpper, if var is type

+ +

¿¹Á¦

+ +
Haystack = abcdefghijklmnopqrs
+Needle = def
+StringGetPos, pos, Haystack, %Needle%
+if pos >= 0
+    MsgBox, ¹®ÀÚ¿­ÀÌ À§Ä¡ %pos%¿¡¼­ ¹ß°ßµÇ¾ú½À´Ï´Ù.
+

 

+
; ¿¹Á¦ #2:
+; ÆÄÀÏÀÌ Àüü °æ·Î¸¦ °¢ ±¸¼º¿ä¼Ò·Î ºÐÇØ ÇÕ´Ï´Ù.
+; StringSplit ¶Ç´Â ÆÄ½Ì È¸µ¹À̸¦ »ç¿ëÇϸé 
+;  ÈξÀ ´õ ½±°Ô °¡¸¦ ¼ö ÀÖ½À´Ï´Ù. ±×·¡¼­ ¾Æ·¡´Â ±×Àú º¸¿©Áֱ⠿ëÀÔ´Ï´Ù.
+FileSelectFile, file, , , ±í¼÷È÷ ³»Æ÷µÈ Æú´õ ¾È¿¡¼­ ÆÄÀÏÀ̸§ Çϳª¸¦ °í¸£½Ê½Ã¿À:
+if file <>
+{
+    StringLen, pos_prev, file
+    pos_prev += 1 ; ¸¶Áö¸· ¹®ÀÚ µÚ¿¡ À§Ä¡¿¡ ¸Â°Ô Á¶ÀýÇÕ´Ï´Ù.
+    Loop
+    {
+        ; ¿À¸¥ÂÊÀ¸·ÎºÎÅÍ N¹ø° ÃâÇöÀ» °Ë»öÇÕ´Ï´Ù:
+        StringGetPos, pos, file, \, R%A_Index%
+        if ErrorLevel
+            break
+        length := pos_prev - pos - 1
+        pos_prev := pos
+        pos += 2  ; StringMid¿¡ »ç¿ëÇϱâ À§ÇØ Á¶Á¤ÇÕ´Ï´Ù.
+        StringMid, path_component, file, %pos%, %length%
+        MsgBox Path component #%a_index% (from the right) is:`n%path_component%
+    }
+}
+ + + diff --git a/src/docs/commands/StringLeft.htm b/src/docs/commands/StringLeft.htm new file mode 100644 index 0000000..ead32a3 --- /dev/null +++ b/src/docs/commands/StringLeft.htm @@ -0,0 +1,48 @@ + + + + +StringLeft / StringRight + + + + + + + +

StringLeft / StringRight

+ +

¹®ÀÚ¿­ÀÇ ¿ÞÂÊÀ̳ª ¿À¸¥ÂÊÀ¸·ÎºÎÅÍ ¹®ÀÚµéÀ» ¿­¶÷ÇÕ´Ï´Ù.

+ +
StringLeft, OutputVar, InputVar, Count
+StringRight, OutputVar, InputVar, Count
+NewStr := SubStr(String, StartPos [, Length]) ; ÀÚ¼¼ÇÑ °ÍÀº SubStr() ÇÔ¼ö¸¦ ÂüÁ¶ÇϽʽÿÀ.
+ +

Parameters

+
+ +
OutputVar
+

InputVarÀ¸·ÎºÎÅÍ ÃßÃâÇÑ ºÎ¹®ÀÚ¿­À» ÀúÀåÇÒ º¯¼öÀÇ À̸§.

+ +
InputVar
+

³»¿ëÀ» ÃßÃâÇÒ º¯¼öÀÇ À̸§. À̸§À» ÆÛ¼¾Æ® »çÀÎÀ¸·Î µÑ·¯ ½ÎÁö ¸¶½Ê½Ã¿À. ´Ü, º¯¼öÀÇ ³»¿ëÀÌ À̸§À̱⸦ ¹Ù¶ó´Â °æ¿ì¶ó¸é ¿¹¿ÜÀÔ´Ï´Ù.

+ +
Count
+

ÃßÃâÇÒ ¹®ÀÚÀÇ °³¼ö, Ç¥Çö½Ä °¡´É. Count°¡ 0º¸´Ù À۰ųª °°À¸¸é, OutputVar´Â ºñ¿öÁý´Ï´Ù. Count°¡ InputVarÀÇ ±æÀ̸¦ ÃÊ°úÇϸé, OutputVar´Â InputVar Àüü¿Í °°°Ô ¼³Á¤µË´Ï´Ù.

+ +
+ +

³íÆò

+

+ÀÌ ¸í·É¾î¿Í ´Ù¸¥ ¸ðµç ¸í·É¾î¿¡ ´ëÇÏ¿©, OutputVar´Â InputVar¿Í °°Àº º¯¼ö°¡ µÇ¾îµµ Çã¿ëÇÕ´Ï´Ù.

+ +

°ü·Ã Ç׸ñ

+

SubStr(), StringMid, StringTrimLeft, StringTrimRight, IfInString, StringGetPos, StringLen, StringLower, StringUpper, StringReplace

+ +

¿¹Á¦

+
String = This is a test. 
+StringLeft, OutputVar, String, 4  ; ¹®ÀÚ¿­ "This"¸¦ OutputVar¿¡ ÀúÀåÇÕ´Ï´Ù.
+StringRight, OutputVar, String, 5  ; ¹®ÀÚ¿­ "test."¸¦ OutputVar¿¡ ÀúÀåÇÕ´Ï´Ù.
+ + + diff --git a/src/docs/commands/StringLen.htm b/src/docs/commands/StringLen.htm new file mode 100644 index 0000000..39398a0 --- /dev/null +++ b/src/docs/commands/StringLen.htm @@ -0,0 +1,45 @@ + + + + +StrLen / StringLen + + + + + + + +

StrLen / StringLen

+ +

¹®ÀÚ¿­¿¡ ÀÖ´Â ¹®ÀÚÀÇ °³¼ö¸¦ ¿­¶÷ÇÕ´Ï´Ù.

+ +
OutputVar := StrLen(InputVar)
+StringLen, OutputVar, InputVar
+
+

¸Å°³º¯¼ö

+
+ +
OutputVar
+

±æÀ̸¦ ÀúÀåÇÒ º¯¼öÀÇ À̸§.

+ +
InputVar
+

ÃøÁ¤ÇÒ ³»¿ëÀÌ µé¾î ÀÖ´Â º¯¼öÀÇ À̸§. ÆÛ¼¾Æ® »çÀο¡ À̸§À» µÑ·¯½ÎÁö ¸¶½Ê½Ã¿À. ±×·¯¸é º¯¼öÀÇ ³»¿ëÀÌ À̸§À¸·Î »ç¿ëµË´Ï´Ù.

+ +
+ +

³íÆò

+

+InputVar°¡ ÀÌÀü¿¡ ClipboardAll¿¡ ÇÒ´çµÈ º¯¼öÀ̸é, StringLenÀº ±×ÀÇ Àüü Å©±â¸¦ º¸°íÇÕ´Ï´Ù.

+ +

°ü·Ã Ç׸ñ

+

IfInString, StringGetPos, StringMid, StringTrimLeft, StringTrimRight, StringLeft, StringRight, StringLower, StringUpper, StringReplace

+ +

¿¹Á¦

+
InputVar := "Àçºü¸¥ °¥»ö ¿©¿ì, °ÔÀ¸¸¥ °³¸¦ µ¤ÃƳ×"
+MsgBox % "InputVarÀÇ ±æÀÌ´Â " . StrLen(InputVar) ; °á°ú: 21
+StringLen, length, InputVar
+MsgBox, InputVarÀÇ ±æÀÌ´Â %length%ÀÔ´Ï´Ù.
+ + + diff --git a/src/docs/commands/StringLower.htm b/src/docs/commands/StringLower.htm new file mode 100644 index 0000000..0d472aa --- /dev/null +++ b/src/docs/commands/StringLower.htm @@ -0,0 +1,50 @@ + + + + +StringLower / StringUpper + + + + + + + +

StringLower / StringUpper

+ +

¹®ÀÚ¿­À» ¼Ò¹®ÀÚ ¶Ç´Â ´ë¹®ÀÚ·Î º¯È¯ÇÕ´Ï´Ù.

+ +
StringLower, OutputVar, InputVar [, T]
+StringUpper, OutputVar, InputVar [, T]
+ +

¸Å°³º¯¼ö

+
+ +
OutputVar
+

»õ·Î º¯È¯µÈ ¹®ÀÚ¿­À» ÀúÀåÇÒ º¯¼öÀÇ À̸§.

+ +
InputVar
+

³»¿ëÀ» ÀÐ¾î µéÀÏ º¯¼öÀÇ À̸§. À̸§À» ÆÛ¼¾Æ® »çÀÎÀ¸·Î µÑ·¯ ½ÎÁö ¸¶½Ê½Ã¿À. ´Ü, º¯¼öÀÇ ³»¿ëÀ» À̸§À¸·Î »ç¿ëÇÏ°í ½Í´Ù¸é ¿¹¿ÜÀÔ´Ï´Ù.

+ +
T
+

ÀÌ ¸Å°³º¯¼ö°¡ ±âÈ£ TÀ̸é, ¹®ÀÚ¿­Àº Á¦¸ñ °ÝÀ¸·Î º¯È¯µË´Ï´Ù. ¿¹¸¦ µé¾î, "GONE with the WIND"´Â "Gone With The Wind"ÀÌ µË´Ï´Ù;

+ +
+ +

³íÆò

+

+¹®ÀÚ ¶Ç´Â ¹®ÀÚ¿­ÀÌ ÀüüÀûÀ¸·Î ´ë¹®ÀÚÀÎÁö ¾Æ´Ï¸é ¼Ò¹®ÀÚÀÎÁö ŽÁöÇÏ·Á¸é, "if var is [not] upper/lower"¸¦ »ç¿ëÇϽʽÿÀ.

+

+ÀÌ ¸í·É¾î¿Í ´Ù¸¥ ¸ðµç ¸í·É¾î¿¡ ´ëÇÏ¿©, OutputVar´Â InputVar¿Í °°Àº º¯¼öÀ̾ Çã¿ëµË´Ï´Ù.

+

[v1.1.20+]: ¾Æ·¡¿¡ º¸¿©ÁÖ´Â ¹Ù¿Í °°ÀÌ Format()µµ ´ë¼Ò¹®ÀÚ º¯È¯¿¡ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù:

+ +
MsgBox % Format("{:U}, {:L} and {:T}", "upper", "LOWER", "title")
+ +

°ü·Ã Ç׸ñ

+

Format(), IfInString, StringGetPos, StringMid, StringTrimLeft, StringTrimRight, StringLeft, StringRight, StringLen, StringReplace

+

¿¹Á¦

+
StringUpper, String1, String1  ; Áï, Ãâ·ÂÀº ÀԷ°ú °°À» ¼ö ÀÖ½À´Ï´Ù.
+StringLower, String2, String2
+ + + diff --git a/src/docs/commands/StringMid.htm b/src/docs/commands/StringMid.htm new file mode 100644 index 0000000..bd5c40e --- /dev/null +++ b/src/docs/commands/StringMid.htm @@ -0,0 +1,60 @@ + + + + +StringMid + + + + + + + +

StringMid

+ +

¹®ÀÚ¿­¿¡¼­ ÁöÁ¤µÈ À§Ä¡·ÎºÎÅÍ Çϳª ÀÌ»óÀÇ ¹®ÀÚ¸¦ ¿­¶÷ÇÕ´Ï´Ù.

+ +
StringMid, OutputVar, InputVar, StartChar [, Count , L]
+NewStr := SubStr(String, StartPos [, Length]) ; ÀÚ¼¼ÇÑ °ÍÀº SubStr() ÇÔ¼ö ÂüÁ¶.
+

¸Å°³º¯¼ö

+
+ +
OutputVar
+

InputVar·ÎºÎÅÍ ÃßÃâÇÑ ºÎ¹®ÀÚ¿­À» ÀúÀåÇÒ º¯¼öÀÇ À̸§.

+ +
InputVar
+

³»¿ë¿¡¼­ ºÎºÐÀÚ¿­À» ÃßÃâÇÒ º¯¼öÀÇ À̸§. À̸§À» ÆÛ¼¾Æ® »çÀÎÀ¸·Î µÑ·¯ ½ÎÁö ¸¶½Ê½Ã¿À. ´Ü, º¯¼öÀÇ ³»¿ëÀÌ À̸§À̱⸦ ¹Ù¶ó´Â °æ¿ì´Â ¿¹¿ÜÀÔ´Ï´Ù.

+ +
StartChar
+

ÃßÃâÇÒ Ã¹ ¹®ÀÚÀÇ À§Ä¡, Ç¥Çö½Ä °¡´É. StringGetPos¿Í ´Ù¸£°Ô, 1À̸é ù ¹®ÀÚÀÔ´Ï´Ù. StartChar°¡ 1º¸´Ù ÀÛÀ¸¸é, 1À̶ó°í °£ÁÖÇÕ´Ï´Ù. StartChar°¡ ¹®ÀÚ¿­ÀÇ ³¡À» ³Ñ¾î¼­¸é, OutputVar´Â ºñ¿öÁý´Ï´Ù.

+ +
Count
+

v1.0.43.10+¿¡¼­, ÀÌ ¸Å°³º¯¼ö´Â »ý·«Çϰųª ºñ¿ö µÑ ¼ö ÀÖ½À´Ï´Ù. ÀÌ°ÍÀº ¹®ÀÚ¿­·ÎºÎÅÍ ¸ðµç ¹®ÀÚ¸¦ ¿­¶÷Çϱ⿡ ÃæºÐÈ÷ Å« Á¤¼ö¸¦ ÁöÁ¤ÇÑ °Í°ú °°Àº È¿°ú°¡ ÀÖ½À´Ï´Ù.

+

±×·¸Áö ¾ÊÀ¸¸é, ÃßÃâÇÒ ¹®ÀÚÀÇ °³¼ö¸¦ ÁöÁ¤ÇϽʽÿÀ. Ç¥Çö½ÄÀÌ °¡´ÉÇÕ´Ï´Ù. Count°¡ 0º¸´Ù À۰ųª °°À¸¸é, OutputVar´Â ºñ¿öÁý´Ï´Ù. Count°¡ StartChar·ÎºÎÅÍ ÃøÁ¤ÇØ InputVarÀÇ ±æÀ̸¦ ÃÊ°úÇϸé, OutputVar´Â StartCharºÎÅÍ ½ÃÀÛÇØ InputVarÀÇ Àüü·Î ¼³Á¤µË´Ï´Ù.

+ +
L
+

±âÈ£ LÀ» »ç¿ëÇϸé StartCharÀÇ ¿À¸¥ÂÊÀÌ ¾Æ´Ï¶ó ¿ÞÂÊ¿¡ ÀÖ´Â ¹®ÀÚµéÀ» ÃßÃâÇÒ ¼ö ÀÖ½À´Ï´Ù. ´ÙÀ½ ¿¹Á¦¿¡¼­, OutputVar´Â Red·Î ¼³Á¤µË´Ï´Ù:

+
InputVar = The Red Fox
+StringMid, OutputVar, InputVar, 7, 3, L
+

+ L ¿É¼ÇÀÌ Á¸ÀçÇÏ°í StartChar°¡ 1º¸´Ù ÀÛÀ¸¸é, OutputVarÀº ºñ¿öÁý´Ï´Ù. StartChar°¡ InputVarÀÇ ±æÀ̸¦ ³Ñ¾î ¼­¸é, ¿ÀÁ÷ Count ¹üÀ§ ¾ÈÀÇ ¹®Àڵ鸸 ÃßÃâµË´Ï´Ù. ¿¹¸¦ µé¾î, ¾Æ·¡ÀÇ ¿¹Á¦¿¡¼­ OutputVar´Â Fox°¡ ¼³Á¤µË´Ï´Ù:

+
InputVar = The Red Fox
+StringMid, OutputVar, InputVar, 14, 6, L
+
+ +
+ +

³íÆò

+

+ÀÌ ¸í·É¾î¿Í ±âŸ ¸ðµç ¸í·É¾î¿¡ ´ëÇÏ¿©, OutputVar´Â InputVar¿Í º¯¼ö°¡ °°¾Æµµ Çã¿ëÇÕ´Ï´Ù.

+ +

°ü·Ã Ç׸ñ

+

SubStr(), StringLeft, StringRight, StringTrimLeft, StringTrimRight, IfInString, StringGetPos, StringLen, StringLower, StringUpper, StringReplace

+ +

¿¹Á¦

+ +
Source = Hello this is a test. 
+StringMid, the_word_this, Source, 7, 4
+ + + diff --git a/src/docs/commands/StringReplace.htm b/src/docs/commands/StringReplace.htm new file mode 100644 index 0000000..457b3e4 --- /dev/null +++ b/src/docs/commands/StringReplace.htm @@ -0,0 +1,86 @@ + + + + +StringReplace + + + + + + + +

StringReplace

+ +

ÁöÁ¤µÈ ºÎ¹®ÀÚ¿­À» »õ ¹®ÀÚ¿­·Î ±³Ã¼ÇÕ´Ï´Ù.

+ +
OutputVar := StrReplace(Haystack, SearchText [, ReplaceText, OutputVarCount, Limit := -1])  ; v1.1.21+
+StringReplace, OutputVar, InputVar, SearchText [, ReplaceText, ReplaceAll?]
+

¸Å°³º¯¼ö

+
+ +
OutputVar
+

±³Ã¼ÀÇ °á°ú¸¦ ÀúÀåÇÒ º¯¼öÀÇ À̸§.

+ +
InputVar ¶Ç´Â Haystack
+
+

±×ÀÇ ³»¿ëÀ» ÀÐÀ» º¯¼öÀÇ À̸§. À̸§À» ÆÛ¼¾Æ® »çÀÎÀ¸·Î µÑ·¯ ½ÎÁö ¸¶½Ê½Ã¿À. ´Ü, º¯¼öÀÇ ³»¿ëÀÌ À̸§À̱⸦ ¿øÇÏ´Â °æ¿ì´Â ¿¹¿ÜÀÔ´Ï´Ù.

+

+ StrReplace()´Â ÇÔ¼öÀ̹ǷÎ, HaystackÀº Ç¥Çö½ÄÀÌ °¡´ÉÇÕ´Ï´Ù.

+
+ +
SearchText
+

°Ë»ö¿¡ »ç¿ëµÉ ¹®ÀÚ¿­. ºÎÇÕÀº ´ë¼Ò¹®ÀÚ¸¦ ±¸ºÐÇÏÁö ¾Ê½À´Ï´Ù. ´Ü, StringCaseSense°¡ ÄÑÁ® ÀÖ´Â °æ¿ì´Â ¿¹¿ÜÀÔ´Ï´Ù.

+ +
ReplaceText
+

SearchText´Â ÀÌ ÅؽºÆ®·Î ±³Ã¼µË´Ï´Ù. »ý·«µÇ°Å³ª ºñ¾î ÀÖÀ¸¸é, SearchText´Â ºó ¹®ÀÚ¿­·Î ±³Ã¼µË´Ï´Ù. ´Ù¸¥ ¸»·Î, OutputVar·ÎºÎÅÍ Á¦¿ÜµË´Ï´Ù.

+ +
OutputVarCount (StrReplace)
+

±³Ã¼°¡ ÀϾ Ƚ¼ö¸¦ ÀúÀåÇÒ º¯¼öÀÇ À̸§. ÀοëºÎÈ£ ó¸® ¾ÈÇÔ (¾øÀ¸¸é 0).

+ +
Limit (StrReplace)
+

+ LimitÀ» »ý·«Çϸé, ±âº»°ªÀº -1ÀÔ´Ï´Ù. ±âº»À¸·Î Haystack ¹ß°ßµÈ ¸ðµç ÆÐÅÏÀ» ±³Ã¼ÇÕ´Ï´Ù. ±×·¸Áö ¾ÊÀ¸¸é, ±³Ã¼¸¦ Çã¿ëÇÒ ÃÖ´ë Ƚ¼ö¸¦ ÁöÁ¤ÇϽʽÿÀ. Haystack¿¡¼­ ¸¶Áö¸· ¸Å°³º¯¼öÀÇ ¿À¸¥ÂÊ ºÎºÐÀº ±³Ã¼µÇÁö ¾Ê°í ±×´ë·ÎÀÔ´Ï´Ù.

+ +
ReplaceAll? (StringReplace)
+

»ý·«Çϸé, ¿ÀÁ÷ SearchTextÀÇ Ã¹ ¹ø° ºÎÇÕ¸¸ ±³Ã¼µË´Ï´Ù. ±×·¯³ª ÀÌ ¸Å°³º¯¼ö°¡ 1À̳ª A ¶Ç´Â AllÀ̸é, ¸ðµç ºÎÇÕÀÌ ±³Ã¼µË´Ï´Ù.

+

+ ´Ü¾î UseErrorLevelÀ» ÁöÁ¤Çϸé ErrorLevel¿¡ ±³Ã¼µÈ Ƚ¼ö¸¦ ÀúÀåÇÒ ¼ö ÀÖ½À´Ï´Ù (¾øÀ¸¸é 0). UseErrorLevelÀº ¹¬½ÃÀûÀ¸·Î "All".

+
+ +
+ +

ErrorLevel

+

+StrReplace: ErrorLevelÀº ¼³Á¤µÇÁö ¾Ê½À´Ï´Ù.

+

StringReplace: ¸¶Áö¸· ¸Å°³º¯¼ö°¡ UseErrorLevelÀ̸é, ErrorLevel¿¡´Â ±³Ã¼µÈ Ƚ¼ö°¡ ¼³Á¤µË´Ï´Ù (¾øÀ¸¸é 0). ±×·¸Áö ¾ÊÀ¸¸é, ErrorLevelÀº SearchText¸¦ InputVar ¾È¿¡¼­ ¹ß°ßÇÏÁö ¸øÇÑ °æ¿ì 1ÀÌ ¼³Á¤µÇ°í ¹ß°ßÇÑ °æ¿ì´Â 0ÀÌ ¼³Á¤µË´Ï´Ù.

+ +

³íÆò

+

+ÀÌ ¸í·É¾î ±×¸®°í ±âŸ ¸ðµç ¸í·É¾î¿¡ ´ëÇÏ¿©, OutputVar´Â InputVar¿Í º¯¼ö°¡ °°¾Æµµ Çã¿ëµË´Ï´Ù.

+

+³»Àå º¯¼ö %A_Space%¿Í %A_Tab%¿¡ °¢°¢ ½ºÆäÀ̽º Çϳª¿Í ÅÇ ¹®ÀÚ Çϳª°¡ µé¾î ÀÖ½À´Ï´Ù. SearchTextÀÇ ¾ÕÀ̳ª µÚ¿¡¼­ ½ºÆäÀ̽º¿Í ÅǸ¸ Ȧ·Î °Ë»öÇÒ ¶§ À¯¿ëÇÕ´Ï´Ù.

+

+v1.0.45¿¡¼­, AllSlow ¿É¼ÇÀº ¼öÇ༺´É Çâ»ó°ú È¿À²ÀûÀÎ ¸Þ¸ð¸® ÀÌ¿ëÀ» À§ÇØ Æó±â µÇ¾ú½À´Ï´Ù. ¿©ÀüÈ÷ ÁöÁ¤ÇÒ ¼ö´Â ÀÖÁö¸¸, ¾Æ¹« È¿°ú°¡ ¾øÀ» °ÍÀÔ´Ï´Ù.

+ +

°ü·Ã Ç׸ñ

+

+RegExReplace(), IfInString, StringCaseSense, StringLeft, StringRight, StringMid, StringTrimLeft, StringTrimRight, StringLen, StringLower, StringUpper, StringGetPos, if var is type

+ +

¿¹Á¦

+
; Ŭ¸³º¸µåÀÇ ³»¿ë¿¡¼­ ¸ðµç CR+LF¸¦ Á¦°ÅÇÕ´Ï´Ù:
+StringReplace, clipboard, clipboard, `r`n, , All
+
+; ¸ðµç ½ºÆäÀ̽º¸¦ Ç÷¯½º·Î ±³Ã¼ÇÕ´Ï´Ù:
+StringReplace, NewStr, OldStr, %A_SPACE%, +, All
+
+; º¯¼ö ¾ÈÀÇ ÅؽºÆ®·ÎºÎÅÍ ¸ðµç ºó ÁÙÀ» Á¦°ÅÇÕ´Ï´Ù:
+Loop
+{
+    StringReplace, MyString, MyString, `r`n`r`n, `r`n, UseErrorLevel
+    if ErrorLevel = 0  ; ´õ ÀÌ»ó ±³Ã¼°¡ ÇÊ¿äÇÏÁö ¾Ê½À´Ï´Ù.
+        break
+}
+ + + \ No newline at end of file diff --git a/src/docs/commands/StringSplit.htm b/src/docs/commands/StringSplit.htm new file mode 100644 index 0000000..15bcff1 --- /dev/null +++ b/src/docs/commands/StringSplit.htm @@ -0,0 +1,117 @@ + + + + +StringSplit / StrSplit() + + + + + + + +

StringSplit / StrSplit()

+ +

¹®ÀÚ¿­À» ÁöÁ¤µÈ ±¸ºÐÀÚ·Î °¥¶ó ºÎ¹®ÀÚ¿­ÀÇ ¹è¿­·Î ¸¸µì´Ï´Ù.

+ +
StringSplit, OutputArray, InputVar [, Delimiters, OmitChars]
+Array := StrSplit(String [, Delimiters, OmitChars])  ; [v1.1.13+]
+

Parameters

+

StringSplit

+
+ +
OutputArray
+

InputVar·ÎºÎÅÍ ÃßÃâµÈ °¢ ºÎ¹®ÀÚ¿­À» ÀúÀåÇÒ ÀÇ»ç-¹è¿­ÀÇ À̸§. ¿¹¸¦ µé¾î, MyArray°¡ ÁöÁ¤µÇ¸é, ÀÌ ¸í·É¾î´Â »ý»êµÈ ºÎ¹®ÀÚ¿­ÀÇ °³¼ö¸¦ (¾øÀ¸¸é 0) MyArray0¿¡ ¹èÄ¡ÇÕ´Ï´Ù. ù ¹ø° ºÎºÐÀÚ¿­Àº MyArray1¿¡, µÎ ¹ø° ºÎ¹®ÀÚ¿­Àº MyArray2¿¡, µîµî ¹èÄ¡ÇÕ´Ï´Ù.

+

+ ÇÔ¼ö ¾È¿¡¼­, Áö¿ªÀÌ ¾Æ´Ï¶ó Àü¿ªÀûÀÎ ÀÇ»ç-¹è¿­À» »ý¼ºÇÏ·Á¸é, ÇÔ¼ö ¾È¿¡¼­ MyArray0¸¦ Àü¿ª º¯¼ö·Î ¼±¾ðÇϽʽÿÀ (Àü¿ª-°£ÁÖ ÇÔ¼ö¿¡ ´ëÇÏ¿© ±× ¹Ý´ëµµ ¸¶Âù°¡ÁöÀÔ´Ï´Ù). ±×·¸Áö¸¸, ÈçÇÑ È¥¶õÀÇ ±Ù¿ø ¶§¹®¿¡, °¢ ¿ø¼Ò¸¶´Ù µû·Îµû·Î ¼±¾ðÇØ¾ß ÇÒ °æ¿ìµµ Á¾Á¾ ÀÖ½À´Ï´Ù. ´õ ÀÚ¼¼ÇÑ Á¤º¸´Â ÇÔ¼ö¸¦ ÂüÁ¶ÇϽʽÿÀ.

+ +
InputVar
+

³»¿ëÀ» ºÐ¼®ÇÒ º¯¼öÀÇ À̸§. À̸§À» ÆÛ¼¾Æ® »çÀÎÀ¸·Î µÑ·¯ ½ÎÁö ¸¶½Ê½Ã¿À. ´Ü, º¯¼öÀÇ ³»¿ëÀÌ À̸§À¸·Î »ç¿ëµÇ±â¸¦ ¿øÇÏ´Â °æ¿ì¶ó¸é ¿¹¿ÜÀÔ´Ï´Ù. ÁÖÀÇ: InputVar´Â OutputArray ¾È¿¡ ÀÖ´Â º¯¼ö Áß Çϳª°¡ µÇ¾î¾ß ÇÕ´Ï´Ù.

+ +
Delimiters
+

+ ÀÌ ¸Å°³º¯¼ö°¡ ºñ¾î Àְųª »ý·«µÇ¸é, InputVarÀÇ °¢ ¹®ÀÚ´Â º°µµÀÇ ºÎ¹®ÀÚ¿­·Î °£Áֵ˴ϴÙ.

+

±×·¸Áö ¾ÊÀ¸¸é, Delimiters´Â Çϳª ÀÌ»óÀÇ ¹®ÀÚ¸¦ ´ã½À´Ï´Ù (´ë¼Ò¹®ÀÚ ±¸ºÐ). °¢ ±¸ºÐÀÚ´Â InputVar¿¡¼­ ºÎ¹®ÀÚ¿­ »çÀÌÀÇ °æ°è°¡ ³ªÅ¸³ª´Â °÷À» °áÁ¤ÇÏ´Â µ¥ »ç¿ëµË´Ï´Ù. ±¸ºÐ ¹®ÀÚµéÀº ºÎ¹®ÀÚ¿­ÀÇ ÀϺκÐÀ¸·Î °£ÁÖµÇÁö ¾Ê±â ¶§¹®¿¡, OutputArray¿¡ Àý´ë·Î º¹»çµÇÁö ¾Ê½À´Ï´Ù. ¶ÇÇÑ, InputVar ¾È¿¡¼­ ±¸ºÐÀÚ »çÀÌ¿¡ ¾Æ¹« °Íµµ ¾øÀ¸¸é, ±×¿¡ »óÀÀÇÏ´Â ¿ø¼Ò´Â ºó ¿ø¼ÒÀÔ´Ï´Ù.

+

+ ¿¹¸¦ µé¾î: `, (ÇÇ½ÅµÈ ½°Ç¥)´Â ½°Ç¥°¡ ³ªÅ¸³¯ ¶§¸¶´Ù ¹®ÀÚ¿­À» ºÐ¸®ÇÕ´Ï´Ù. ºñ½ÁÇÏ°Ô, %A_Tab%%A_Space%´Â InputVar ¾È¿¡¼­ ½ºÆäÀ̽º³ª ÅÇÀ» ¸¸³¯ ¶§¸¶´Ù »õ·Î¿î ¹è¿­ ¿ø¼Ò¸¦ »ý¼ºÇÕ´Ï´Ù.

+

+ ¹®ÀÚ¿­À» ¹®ÀÚ°¡ ¾Æ´Ï¶ó ±¸ºÐÀÚ·Î »ç¿ëÇÏ·Á¸é, ¸ÕÀú StringReplace¸¦ »ç¿ëÇØ ±× ¹®ÀÚ¿­ÀÌ ³ªÅ¸³ª¸é ¸ðµÎ, ÅؽºÆ®¿¡¼­ Àý´ë·Î ±âÈ£ ±×´ë·Î »ç¿ëµÇÁö ¾Ê´Â ÇϳªÀÇ ¹®ÀÚ·Î ±³Ã¼ÇϽʽÿÀ. ´ÙÀ½ ¿¹Á¦¸¦ ¿¬±¸ÇØ º¸½Ê½Ã¿À. ´ÙÀ½ ¿¹Á¦´Â ¹®ÀÚ¿­ <br>À» ±¸ºÐÀÚ·Î »ç¿ëÇÕ´Ï´Ù:

+ +
StringReplace, NewHTML, HTMLString, <br>, ``, All  ; <br>ÀÌ ³ªÅ¸³¯ ¶§¸¶´Ù ¾×¼¾Æ® ¹®ÀÚ·Î ¹Ù²ß´Ï´Ù.
+StringSplit, MyArray, NewHTML, ``  ; ¾×¼¾Æ® ¹®ÀÚ¿¡ ±â¹ÝÇØ ¹®ÀÚ¿­À» °¡¸¨´Ï´Ù.
+ +
+ +

StrSplit() [v1.1.13+]

+
+ +
Array
(¹Ýȯ °ª)
+

¹®ÀÚ¿­ (°´Ã¼)ÀÇ ¹è¿­.

+ +
String
+

ºÐ¸®ÇÒ ¹®ÀÚ¿­.

+ +
Delimiters
+

ÀÌ ¸Å°³º¯¼ö°¡ ºñ¾î Àְųª »ý·«µÇ¸é, ÀÔ·Â ¹®ÀÚ¿­ÀÇ °¢ ¹®ÀÚ´Â º°µµÀÇ ºÎ¹®ÀÚ¿­·Î °£Áֵ˴ϴÙ.

+

±×·¸Áö ¾ÊÀ¸¸é, Delimiters´Â ´ÜÀÏ ¹®ÀÚ¿­À̰ųª ¹®ÀÚ¿­ ¹è¿­ÀÏ ¼ö ÀÖ½À´Ï´Ù. °¢ ±¸ºÐÀÚ´Â ºÎ¹®ÀÚ¿­ »çÀÌÀÇ °æ°è°¡ ³ªÅ¸³ª´Â °÷À» °áÁ¤Çϴµ¥ »ç¿ëµË´Ï´Ù. ±¸ºÐÀÚ´Â ºÎ¹®ÀÚ¿­ÀÇ ÀϺκÐÀ¸·Î °£ÁÖµÇÁö ¾ÊÀ¸¹Ç·Î, Àý´ë·Î ¹ÝȯµÈ ¹è¿­¿¡ Æ÷ÇÔµÇÁö ¾Ê½À´Ï´Ù. ¶ÇÇÑ, ÀÔ·Â ¹®ÀÚ¿­¿¡¼­ ±¸ºÐÀÚ ÇÑ ½Ö »çÀÌ¿¡ ¾Æ¹«°Íµµ ¾ø´Ù¸é, ±×¿¡ »óÀÀÇÏ´Â ¹è¿­ ¿ø¼Ò´Â ºó ¿ø¼ÒÀÔ´Ï´Ù.

+

+ ¿¹¸¦ µé¾î: ","´Â ¹®ÀÚ¿­À» ½°Ç¥°¡ ³ªÅ¸³¯ ¶§¸¶´Ù ºÐ¸®ÇÕ´Ï´Ù. ºñ½ÁÇÏ°Ô, [A_Tab, A_Space]´Â ÀÔ·Â ¹®ÀÚ¿­¿¡¼­ ½ºÆäÀ̽º³ª ÅÇÀ» ¸¸³¯ ¶§¸¶´Ù »õ ¹è¿­ ¿ø¼Ò¸¦ »ý¼ºÇÕ´Ï´Ù.

+ +
+

Both

+
+ +
OmitChars
+

°¢ ¹è¿­ ¿ø¼ÒÀÇ ¾Õ°ú µÚ·ÎºÎÅÍ ¹èÁ¦ÇÒ ¹®ÀÚ¿­ÀÇ ¸®½ºÆ® (´ë¼Ò¹®ÀÚ ±¸ºÐ, ¼±ÅÃÀû). ¿¹¸¦ µé¾î, OmitChars°¡ %A_Space%%A_Tab% (StringSplit) ¶Ç´Â " `t" (StrSplit)À̸é, ½ºÆäÀ̽º¿Í ÅÇÀº ¸ðµç ¿ø¼ÒÀÇ ¾Õ°ú µÚ·ÎºÎÅÍ Á¦°ÅµË´Ï´Ù (°¡¿îµ¥´Â ¾Æ´Ô).

+

+ Delimiters°¡ ºñ¾î ÀÖÀ¸¸é, OmitChars´Â ¹è¿­·ÎºÎÅÍ ¾î´À ¹®ÀÚ¸¦ ¹èÁ¦ÇØ¾ß ÇÏ´ÂÁö¸¦ ³ªÅ¸³À´Ï´Ù.

+

+ ´ëºÎºÐÀÇ ´Ù¸¥ ¸í·É¾îÀÇ ¸¶Áö¸· ¸Å°³º¯¼ö¿Í ´Ù¸£°Ô, StringSplit¿¡ ´ëÇÏ¿© OmitChars¿¡¼­ ½°Ç¥´Â ¹Ýµå½Ã ÇǽŽÃÄÑ¾ß ÇÕ´Ï´Ù (`,).

+ +
+ +

³íÆò

+

+ÀÇ»ç ¹è¿­ÀÌ ÀÌ¹Ì Á¸ÀçÇϸé, StringSplit ¸í·É¾î´Â ¾ÕÂʺÎÅÍ N°³ÀÇ ¿ø¼ÒÀÇ °ª¸¸ º¯°æÇÕ´Ï´Ù. ¿©±â¿¡¼­ NÀº InputVar¿¡¼­ ÃâÇöÇÏ´Â ºÎ¹®ÀÚ¿­ÀÇ °³¼öÀÔ´Ï´Ù. N ¹ø° ÀÌÈÄÀÇ ¿ø¼Ò´Â º¯°æµÇÁö ¾Ê½À´Ï´Ù. ±×·¯¹Ç·Î, ¾ó¸¶³ª ¸¹Àº Ç׸ñÀÌ ½ÇÁ¦·Î ÀÌ ¸í·É¾î·Î »ý»êµÇ¾ú´Â°¡¸¦ ¾Ë¾Æ³»·Á¸é, 0 ¿ø¼Ò¸¦ »ç¿ëÇÏ´Â °ÍÀÌ °¡Àå ¾ÈÀüÇÕ´Ï´Ù (MyArray0).

+

+½ºÆäÀ̽º¿Í ÅÇ °°Àº °ø¹é ¹®ÀÚµéÀº À¯ÁöµË´Ï´Ù. ´Ü, ±× ¹®ÀÚ ÀÚü°¡ ±¸ºÐÀÚÀ̰ųª OmitChars¿¡ Æ÷ÇԵǴ °æ¿ì´Â ¿¹¿ÜÀÔ´Ï´Ù. ÅÇ°ú ½ºÆäÀ̽º´Â Trim ÇÔ¼ö¸¦ È£ÃâÇØ º¯¼öÀÇ ¾çÂÊ ³¡À¸·ÎºÎÅÍ ´ÙµëÀ» ¼ö ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î: MyArray1 := Trim(MyArray1).

+

+Ç¥ÁØ CSV (½°Ç¥·Î °¡¸¥ °ª(comma separated value)) Çü½ÄÀÇ ¹®ÀÚ¿­À» °¡¸£·Á¸é, ÆÄ½Ì È¸µ¹À̸¦ »ç¿ëÇϽʽÿÀ. CSV 󸮰¡ ³»ÀåµÇ¾î ÀÖ½À´Ï´Ù.

+

+¹®ÀÚ¿­À» °¡¸£±â Àü¿¡ Çʵ带 ´Ù¸¥ ¼ø¼­·Î Á¤·ÄÇÏ·Á¸é, Sort ¸í·É¾î¸¦ »ç¿ëÇϽʽÿÀ.

+

+ºÎ¹®ÀÚ¿­À» ¸Þ¸ð¸®¿¡ ¿µ¿øÈ÷ ÀúÀåÇÒ ÇÊ¿ä°¡ ¾ø´Ù¸é, ÆÄ½Ì È¸µ¹ÀÌÀÇ »ç¿ëÀ» °í·ÁÇØ º¸½Ê½Ã¿À -- ƯÈ÷ InputVar°¡ ¸Å¿ì ¹æ´ëÇÏ´Ù¸é ²À °í·ÁÇØ º¸½Ã±â¸¦ ¹Ù¶ø´Ï´Ù. ±×·± °æ¿ì´Â ¹æ´ëÇÑ ¾çÀÇ ¸Þ¸ð¸®°¡ ÀúÀåµÉ °ÍÀÔ´Ï´Ù. ¿¹¸¦ µé¾î:

+ +
Colors = red,green,blue
+Loop, parse, Colors, `,
+    MsgBox Color number %A_Index% is %A_LoopField%.
+ +

°ü·Ã Ç׸ñ

+

ÆÄ½Ì È¸µ¹ÀÌ, ¹è¿­, Sort, SplitPath, IfInString, StringGetPos, StringMid, StringTrimLeft, StringTrimRight, StringLen, StringLower, StringUpper, StringReplace

+ +

¿¹Á¦

+
TestString = This is a test.
+StringSplit, word_array, TestString, %A_Space%, .  ; Á¡Àº Á¦¿ÜÇÕ´Ï´Ù.
+MsgBox, The 4th word is %word_array4%.
+
+Colors = red,green,blue
+StringSplit, ColorArray, Colors, `,
+Loop, %ColorArray0%
+{
+    this_color := ColorArray%a_index%
+    MsgBox, Color number %a_index% is %this_color%.
+}
+
TestString := "This is a test."
+word_array := StrSplit(TestString, A_Space, ".")  ; Á¡Àº Á¦¿ÜÇÕ´Ï´Ù.
+MsgBox % "The 4th word is " word_array[4]
+
+Colors := "red,green,blue"
+ColorArray := StrSplit(Colors, ",")
+Loop % ColorArray.MaxIndex()
+{
+    this_color := ColorArray[a_index]
+    MsgBox, Color number %a_index% is %this_color%.
+}
+ + + diff --git a/src/docs/commands/StringTrimLeft.htm b/src/docs/commands/StringTrimLeft.htm new file mode 100644 index 0000000..9087fdf --- /dev/null +++ b/src/docs/commands/StringTrimLeft.htm @@ -0,0 +1,47 @@ + + + + +StringTrimLeft / StringTrimRight + + + + + + + +

StringTrimLeft / StringTrimRight

+ +

¹®ÀÚ¿­ÀÇ ¿ÞÂÊ ¿À¸¥ÂÊÀ¸·ÎºÎÅÍ ¹®ÀÚµéÀ» Á¦°ÅÇÕ´Ï´Ù.

+ +
StringTrimLeft, OutputVar, InputVar, Count
+StringTrimRight, OutputVar, InputVar, Count
+NewStr := SubStr(String, StartPos [, Length]) ; ÀÚ¼¼ÇÑ °ÍÀº SubStr() ÇÔ¼ö ÂüÁ¶.
+

¸Å°³º¯¼ö

+
+ +
OutputVar
+
ÁÙ¾îµç InputVar¸¦

ÀúÀåÇÒ º¯¼öÀÇ À̸§ .

+ +
InputVar
+

³»¿ëÀ» ÀÐ¾î µéÀÏ º¯¼öÀÇ À̸§. À̸§À» ÆÛ¼¾Æ® »çÀÎÀ¸·Î µÑ·¯ ½ÎÁö ¸¶½Ê½Ã¿À. ´Ü, º¯¼öÀÇ ³»¿ëÀÌ À̸§À¸·Î »ç¿ëµÇ±â¸¦ ¹Ù¶õ´Ù¸é ¿¹¿ÜÀÔ´Ï´Ù.

+ +
Count
+

Á¦°ÅÇÒ ¹®ÀÚÀÇ °³¼ö. Ç¥Çö½Ä °¡´É. Count°¡ 0º¸´Ù ÀÛÀ¸¸é, OutputVar´Â InputVar Àüü¿Í °°°Ô ¼³Á¤µË´Ï´Ù. Count°¡ InputVarÀÇ ±æÀ̸¦ ÃÊ°úÇϸé, OutputVar´Â ºñ¿öÁý´Ï´Ù.

+ +
+ +

³íÆò

+

ÀÌ ¸í·É¾î¿Í ±âŸ ¸ðµç ¸í·É¾î¿¡ ´ëÇÏ¿©, OutputVar´Â InputVar¿Í °°Àº º¯¼ö°¡ µÇ¾îµµ Çã¿ëÇÕ´Ï´Ù.

+ +

°ü·Ã Ç׸ñ

+

SubStr(), StringMid, StringLeft, StringRight, IfInString, StringGetPos, StringLen, StringLower, StringUpper, StringReplace

+ +

¿¹Á¦

+ +
String = This is a test.
+StringTrimLeft, OutputVar, String, 5  ;  ¹®ÀÚ¿­ "is a test."¸¦ OutputVar¿¡ ÀúÀåÇÕ´Ï´Ù.
+StringTrimRight, OutputVar, String, 6  ; ¹®ÀÚ¿­ "This is a"¸¦ OutputVar¿¡ ÀúÀåÇÕ´Ï´Ù.
+ + + diff --git a/src/docs/commands/Suspend.htm b/src/docs/commands/Suspend.htm new file mode 100644 index 0000000..25f848d --- /dev/null +++ b/src/docs/commands/Suspend.htm @@ -0,0 +1,57 @@ + + + + +Suspend + + + + + + + +

Suspend

+ +

¼±ÅÃµÈ ÇÖÅ°¿Í ÇÖ½ºÆ®¸µÀ» ÄѰųª ²ü´Ï´Ù.

+ +
Suspend [, Mode]
+

¸Å°³º¯¼ö

+
+ +
Mode
+

On: ¸ðµç ÇÖÅ°¿Í ÇÖ½ºÆ®¸µÀ» º¸·ùÇÕ´Ï´Ù. ´Ü, ³íÆò ¼½¼Ç¿¡ ¼³¸íÇÑ °ÍµéÀº ¿¹¿ÜÀÔ´Ï´Ù.

+

Off: À§¿¡¼­ ²¨Áø ÇÖÅ°¿Í ÇÖ½ºÆ®¸µÀ» ´Ù½Ã ÄÕ´Ï´Ù.

+

Toggle (±âº»°ª): ÀÌÀü »óÅÂ¿Í ¹Ý´ë »óÅ·Πº¯°æÇÕ´Ï´Ù (On ¶Ç´Â Off).

+

Permit: ÇöÀç ¼­ºê·çƾÀ» º¸·ù¿¡¼­ ¸éÁ¦½ÃÅ°´Â Àϸ¸ ÇÕ´Ï´Ù. ´Ù¸¥ ÀÏÀº ÇÏÁö ¾Ê½À´Ï´Ù.

+ +
+ +

³íÆò

+

+¸Ç ù ÁÙÀÌ º¸·ùµÈ(Suspend) ÇÖÅ°/ÇÖ½ºÆ®¸µ ¼­ºê·çƾÀº (Suspend OnÀ» Á¦¿ÜÇÏ°í) º¸·ù·ÎºÎÅÍ ¸éÁ¦µË´Ï´Ù. ´Ù¸¥ ¸»·Î Çϸé, ÇÖÅ°´Â º¸·ù°¡ ÄÑÁ® ÀÖ´Â (ON) µ¿¾È¿¡µµ ¿©ÀüÈ÷ ÄÑÁ® ÀÖÀ» °ÍÀÔ´Ï´Ù. ±×·¯¹Ç·Î ±×·± ÇÖÅ°¸¦ ÅëÇÏ¿© º¸·ù¸¦ ²ø ¼ö ÀÖ½À´Ï´Ù.

+

+¼±ÅÃµÈ ÇÖÅ° ¶Ç´Â ÇÖ½ºÆ®¸µÀ» Á¸ÀçÇϴ âÀÇ À¯Çü¿¡ ±â¹ÝÇÏ¿© ÀÚµ¿À¸·Î ²ô·Á¸é, #IfWinActive/Exist¸¦ »ç¿ëÇϽʽÿÀ.

+

+½ºÅ©¸³Æ®ÀÇ ÇÖÅ°¸¦ º¸·ùÇÏ´õ¶óµµ ÀÌ¹Ì ½ÇÇà ÁßÀÎ ½ºÅ©¸³Æ®ÀÇ ¾²·¹µå´Â (ÀÖ´Ù¸é) ¸ØÃßÁö ¾Ê½À´Ï´Ù; ¸ØÃß·Á¸é Pause¸¦ »ç¿ëÇϽʽÿÀ.

+

+½ºÅ©¸³Æ®ÀÇ ÇÖÅ°°¡ º¸·ùµÉ ¶§, ±×ÀÇ Æ®·¹ÀÌ ¾ÆÀÌÄÜÀº ±âÈ£ S·Î ¹Ù²ò´Ï´Ù. À̸¦ ÇÇÇÏ·Á¸é ¾ÆÀÌÄÜÀ» µ¿°áÇÏ¸é µË´Ï´Ù. Menu ¸í·É¾îÀÇ ¸¶Áö¸· ¸Å°³º¯¼ö¿¡ 1À» ÁöÁ¤ÇÏ¸é µ¿°á½Ãų ¼ö ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î:

+
Menu, Tray, Icon, C:\My Icon.ico, , 1
+

+³»Àå º¯¼ö A_IsSuspended´Â ½ºÅ©¸³Æ®°¡ º¸·ùµÇ¸é 1 ±×·¸Áö ¾ÊÀ¸¸é 0ÀÌ ¼³Á¤µË´Ï´Ù.

+ +

°ü·Ã Ç׸ñ

+

+#IfWinActive/Exist, Pause, Menu, ExitApp

+ +

¿¹Á¦

+ +
^!s::Suspend  ; Åä±Û-º¸·ù ÇÔ¼ö¸¦ ÇÖÅ°¿¡ ÇÒ´çÇÕ´Ï´Ù.
+ +
; Suspend ¸í·É¾î¸¦ ¶Ç´Ù¸¥ ½ºÅ©¸³Æ®¿¡ º¸³À´Ï´Ù.
+DetectHiddenWindows, On
+WM_COMMAND := 0x111
+ID_FILE_SUSPEND := 65404
+PostMessage, WM_COMMAND, ID_FILE_SUSPEND,,, C:\YourScript.ahk ahk_class AutoHotkey
+ + + diff --git a/src/docs/commands/SysGet.htm b/src/docs/commands/SysGet.htm new file mode 100644 index 0000000..545115e --- /dev/null +++ b/src/docs/commands/SysGet.htm @@ -0,0 +1,316 @@ + + + + +SysGet + + + + + + + +

SysGet

+ +

È­¸é ÇØ»óµµ, ´ÙÁß-¸ð´ÏÅÍ Á¤º¸, ½Ã½ºÅÛ °´Ã¼ÀÇ Å©±â, ±×¸®°í ±âŸ ½Ã½ºÅÛ Æ¯¼ºµéÀ» ¿­¶÷ÇÕ´Ï´Ù.

+ +
SysGet, OutputVar, Sub-command [, Param3]
+

¸Å°³º¯¼ö

+
+ +
OutputVar
+

°á°ú¸¦ ÀúÀåÇÒ º¯¼öÀÇ À̸§.

+ +
Sub-command
+
¾Æ·¡ ¸®½ºÆ® ÂüÁ¶. +
+ +
Param3
+

ÀÌ ¸Å°³º¯¼ö´Â ¾Æ·¡¿¡ ±â¼úÇÑ °æ¿ì¸¦ Á¦¿ÜÇÏ°í »ý·«µË´Ï´Ù.

+ +
+ +

Sub-commands

+

MonitorCount: ¸ð´ÏÅÍÀÇ ÃÑ °³¼ö¸¦ ¿­¶÷ÇÕ´Ï´Ù. ¾Æ·¡ Å×ÀÌºí¿¡ ±â¼úÇÑ SM_CMONITORS¿Í ´Ù¸£°Ô, MonitorCount¿¡´Â ¸ðµç ¸ð´ÏÅÍ°¡ Æ÷ÇԵ˴ϴÙ. ½ÉÁö¾î ¹ÙÅÁÈ­¸éÀÇ ÀϺκÐÀ¸·Î »ç¿ëµÇÁö ¾Ê´Â ¸ð´ÏÅ͵µ Æ÷ÇԵ˴ϴÙ.

+

MonitorPrimary: ±âº» ¸ð´ÏÅÍÀÇ ¹øÈ£¸¦ ¿­¶÷ÇÕ´Ï´Ù. ´ÜÀÏ-¸ð´ÏÅÍ ½Ã½ºÅÛÀ̶ó¸é 1ÀÔ´Ï´Ù.

+

Monitor [, N]: N¹ø ¸ð´ÏÅÍÀÇ µÑ·¹ ÁÂÇ¥¸¦ ¿­¶÷ÇÕ´Ï´Ù ( NÀ» »ý·«Çϸé, ±âº» ¸ð´ÏÅÍ°¡ »ç¿ëµË´Ï´Ù). Á¤º¸´Â ³× °³ÀÇ º¯¼ö¿¡ ÀúÀåµË´Ï´Ù. ÀÌ º¯¼ö´Â ¸ðµÎ OutputVar·Î ½ÃÀÛÇÕ´Ï´Ù. NÀÌ ³Ê¹« Å©°Å³ª Á¤º¸¸¦ ¿­¶÷ÇÏ´Â µ¥ ¹®Á¦°¡ ÀÖÀ¸¸é, ÀÌ ³× º¯¼ö´Â ¸ðµÎ ºñ¿öÁý´Ï´Ù. ¿¹¸¦ µé¾î:

+ +
SysGet, Mon2, Monitor, 2
+MsgBox, Left: %Mon2Left% -- Top: %Mon2Top% -- Right: %Mon2Right% -- Bottom %Mon2Bottom%.
+

+ÇÔ¼ö ¾È¿¡¼­, Áö¿ª º¯¼ö°¡ ¾Æ´Ñ Àü¿ª º¯¼öÀÇ ÁýÇÕÀ» ¸¸µé·Á¸é, ÀÌ ¸í·É¾î¸¦ »ç¿ëÇϱâ Àü¿¡ ¸ÕÀú Mon2¸¦ Àü¿ª º¯¼ö·Î ¼±¾ð ÇϽʽÿÀ (Àü¿ª-°£ÁÖ ÇÔ¼ö¿¡ ´ëÇÏ¿© ±× ¹Ý´ëµµ ¸¶Âù°¡ÁöÀÔ´Ï´Ù). ±×·¸Áö¸¸, ÈçÇÑ È¥¶õÀÇ ±Ù¿ø ¶§¹®¿¡ Á¾Á¾ ÁýÇÕ¿¡¼­ °¢ º¯¼ö¸¦ µû·Î ¼±¾ðÇÒ ÇÊ¿ä°¡ ÀÖ´Â °æ¿ìµµ ÀÖ½À´Ï´Ù.

+

MonitorWorkArea [, N]: À§¿Í °°Áö¸¸ ±¸¿ªÀÌ Ãà¼ÒµË´Ï´Ù. ŽºÅ©¹Ù¿Í ±âŸ µî·ÏµÈ ¹ÙÅÁÈ­¸é Åø¹Ù¸¦ Á¦¿ÜÇÕ´Ï´Ù.

+

MonitorName [, N]: N¹ø ¸ð´ÏÅÍ¿¡ ´ëÇÑ ¿î¿µ üÁ¦ÀÇ À̸§ (NÀ» »ý·«Çϸé, ±âº» ¸ð´ÏÅÍ°¡ »ç¿ëµË´Ï´Ù).

+

(Numeric): Sub-command¿¡ ¾Æ·¡ Å×ÀÌºí¿¡ ÀÖ´Â ¼ýÀÚ Áß Çϳª¸¦ ÁöÁ¤ÇÏ¸é »óÀÀÇÏ´Â °ªÀ» ¿­¶÷ÇÒ ¼ö ÀÖ½À´Ï´Ù. ´ÙÀ½ ¿¹Á¦´Â ¸¶¿ì½º ¹öÆ°ÀÇ °³¼ö¸¦ À̸§ÀÌ "MouseButtonCount"ÀÎ º¯¼ö¿¡ ÀúÀåÇÕ´Ï´Ù: SysGet, MouseButtonCount, 43.

+

ÀÚÁÖ »ç¿ëµÊ

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
¹øÈ£¼³¸í
80SM_CMONITORS: ¹ÙÅÁÈ­¸éÀÇ µð½ºÇ÷¹ÀÌ ¸ð´ÏÅÍÀÇ ¹øÈ£ ("ºñ-µð½ºÇ÷¹ÀÌ ÀÇ»ç-¸ð´ÏÅÍ´Â Á¦¿Ü").
43SM_CMOUSEBUTTONS: ¸¶¿ì½ºÀÇ ¹öÆ°ÀÇ °³¼ö (¸¶¿ì½º°¡ ¼³Ä¡µÇ¾î ÀÖÁö ¾ÊÀ¸¸é 0).
16, 17SM_CXFULLSCREEN, SM_CYFULLSCREEN: ±âº» µð½ºÇ÷¹ÀÌ ¸ð´ÏÅÍÀÇ Àüü-È­¸é â¿¡ ´ëÇÏ¿© Ŭ¶óÀ̾ðÆ® ±¸¿ªÀÇ Çȼ¿´ÜÀ§ ³Êºñ¿Í ³ôÀÌ.
61, 62SM_CXMAXIMIZED, SM_CYMAXIMIZED: ±âº» µð½ºÇ÷¹ÀÌ ¸ð´ÏÅÍÀÇ ÃÖ´ëÈ­µÈ ÃÖ»óÀ§ âÀÇ Çȼ¿ ´ÜÀ§ ±âº» Å©±â.
59, 60SM_CXMAXTRACK, SM_CYMAXTRACK: ĸ¼Ç°ú Å©±â Á¶Àý Å׵θ®°¡ Àִ âÀÇ Çȼ¿ ´ÜÀ§·Î ±âº» ÃÖ´ë Å©±â. ÀÌ Å©±â´Â Àüü ¹ÙÅÁÈ­¸éÀ» °¡¸®Åµ´Ï´Ù. »ç¿ëÀڴ â ÇÁ·¹ÀÓÀ» ²ø¾î ÀÌ Å©±âº¸´Ù ´õ Å©°Ô ¸¸µé ¼ö ¾ø½À´Ï´Ù.
28, 29SM_CXMIN, SM_CYMIN: Çȼ¿´ÜÀ§ âÀÇ ÃÖ´ë ³Êºñ¿Í ³ôÀÌ.
57, 58SM_CXMINIMIZED, SM_CYMINIMIZED: Çȼ¿ ´ÜÀ§ ÃÖ¼ÒÈ­µÈ âÀÇ Å©±â.
34, 35SM_CXMINTRACK, SM_CYMINTRACK: ÇÑ Ã¢ÀÇ ÃÖ¼Ò ÃßÀû ³Êºñ¿Í ³ôÀÌ, Çȼ¿ ´ÜÀ§. »ç¿ëÀڴ â ÇÁ·¹ÀÓÀ» ²ø¾î ÀÌ Å©±âº¸´Ù ´õ ÀÛ°Ô ¸¸µé ¼ö ¾ø½À´Ï´Ù. âÀº WM_GETMINMAXINFO ¸Þ½ÃÁö¸¦ ó¸®Çϸé ÀÌ °ªµéÀ» ¿À¹ö¶óÀ̵å ÇÒ ¼ö ÀÖ½À´Ï´Ù.
0, 1SM_CXSCREEN, SM_CYSCREEN: ±âº» µð½ºÇ÷¹ÀÌ ¸ð´ÏÅÍÀÇ È­¸é ³ôÀÌ¿Í ³Êºñ, Çȼ¿ ´ÜÀ§. ³»Àå º¯¼ö A_ScreenWidth ±×¸®°í A_ScreenHeight¿Í µ¿ÀÏÇÕ´Ï´Ù.
78, 79SM_CXVIRTUALSCREEN, SM_CYVIRTUALSCREEN: °¡»ó È­¸éÀÇ ³Êºñ¿Í ³ôÀÌ, Çȼ¿ ´ÜÀ§ÀÔ´Ï´Ù. °¡»ó È­¸éÀº ¸ðµç µð½ºÇ÷¹ÀÌ ¸ð´ÏÅÍÀÇ »ç°¢ Å׵θ®ÀÔ´Ï´Ù. SM_XVIRTUALSCREEN, SM_YVIRTUALSCREEN´Â °¡»ó È­¸éÀÇ Á»ó ¸ð¼­¸® ÁÂÇ¥ÀÔ´Ï´Ù.
19SM_MOUSEPRESENT: ¸¶¿ì½º°¡ ¼³Ä¡µÇ¾î ÀÖÀ¸¸é 0 ¾Æ´Ñ °ª; ±×·¸Áö ¾ÊÀ¸¸é 0.
75SM_MOUSEWHEELPRESENT: ÈÙ ¸¶¿ì½º°¡ ¼³Ä¡µÇ¾î ÀÖÀ¸¸é 0 ¾Æ´Ñ °ª; ±×·¸Áö ¾ÊÀ¸¸é 0.
63SM_NETWORK: ³×Æ®¿öÅ©°¡ Á¸ÀçÇϸé LSB(Least significant bit)°¡ ¼³Á¤µË´Ï´Ù; ±×·¸Áö ¾ÊÀ¸¸é Áö¿öÁý´Ï´Ù. ´Ù¸¥ ºñÆ®µéÀº ¹Ì·¡ÀÇ »ç¿ëÀ» À§ÇØ ¿¹¾ßµÇ¾î ÀÖ½À´Ï´Ù.
8193 + SM_REMOTECONTROL: ÀÌ ½Ã½ºÅÛ ¼ýÄ¡´Â Å͹̳Π¼­ºñ½º ȯ°æ¿¡¼­ »ç¿ëµË´Ï´Ù. ÇöÀç ¼¼¼ÇÀÌ ¿ø°Ý Á¦¾îµÇ°í ÀÖÀ¸¸é ±×ÀÇ °ªÀº 0ÀÌ ¾Æ´Õ´Ï´Ù; ±×·¸Áö ¾ÊÀ¸¸é 0.
4096 + SM_REMOTESESSION: ÀÌ ½Ã½ºÅÛ ¼ýÄ¡´Â Å͹̳Π¼­ºñ½º ȯ°æ¿¡¼­ »ç¿ëµË´Ï´Ù. È£Ãâ ÇÁ·Î¼¼½º°¡ Å͹̳Π¼­ºñ½º Ŭ¶óÀ̾ðÆ® ¼¼¼Ç¿¡ ¿¬°üµÇ¾î ÀÖÀ¸¸é, ¹Ýȯ °ªÀº 0ÀÌ ¾Æ´Õ´Ï´Ù. È£Ãâ ÇÁ·Î¼¼½º°¡ Å͹̳Π¼­¹ö ÄÜ¼Ö ¼¼¼Ç¿¡ ¿¬°üµÇ¾î ÀÖÀ¸¸é, ¹Ýȯ °ªÀº 0ÀÔ´Ï´Ù. ÄÜ¼Ö ¼¼¼ÇÀÌ ¹Ýµå½Ã ¹°¸®Àû ÄܼÖÀ̾î¾ß ÇÒ ÇÊ¿ä´Â ¾ø½À´Ï´Ù.
70 + SM_SHOWSOUNDS: »ç¿ëÀÚ°¡ ¾îÇø®ÄÉÀ̼ÇÀ» ½Ã°¢ÀûÀ¸·Î Á¤º¸¸¦ º¸¿©ÁÖµµ·Ï ¿ä±¸Çϸé 0ÀÌ ¾Æ´Ñ °ªÀÔ´Ï´Ù. º¸ÅëÀº Á¤º¸¸¦ û°¢ ÇüÅ·θ¸ Á¦½ÃÇÕ´Ï´Ù; ±×·¸Áö ¾ÊÀ¸¸é 0. +
8192 + SM_SHUTTINGDOWN: ÇöÀç ¼¼¼ÇÀÌ ´ÝÈ÷°í ÀÖ´Â ÁßÀ̸é 0ÀÌ ¾Æ´Ñ °ªÀÔ´Ï´Ù; ±×·¸Áö ¾ÊÀ¸¸é 0. Windows 2000: ¹ÝȯµÈ °ªÀº Ç×»ó 0ÀÔ´Ï´Ù.
23SM_SWAPBUTTON: ÁÂ¿ì ¸¶¿ì½º ¹öÆ°ÀÇ Àǹ̰¡ ¼­·Î ¹Ù²î¾úÀ¸¸é 0ÀÌ ¾Æ´Õ´Ï´Ù; ±×·¸Áö ¾ÊÀ¸¸é 0.
76, 77 + SM_XVIRTUALSCREEN, SM_YVIRTUALSCREEN: °¡»ó È­¸éÀÇ Á»ó ¸ð¼­¸® ÁÂÇ¥. °¡»ó È­¸éÀº ¸ðµç µð½ºÇ÷¹ÀÌ ¸ð´ÏÅÍÀÇ »ç°¢ Å׵θ®ÀÔ´Ï´Ù. ´ëÁ¶ÀûÀ¸·Î, SM_CXVIRTUALSCREEN, SM_CYVIRTUALSCREEN´Â °¡»ó È­¸éÀÇ ³Êºñ¿Í ³ôÀÌÀÔ´Ï´Ù.
+
+

ÀÚÁÖ »ç¿ëµÇÁö ¾ÊÀ½

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
¹øÈ£¼³¸í
56SM_ARRANGE: ½Ã½ºÅÛÀÌ ÃÖ¼ÒÈ­µÈ âµéÀ» ¾î¶»°Ô Á¤·ÄÇÒÁö ÁöÁ¤ÇÏ´Â Ç÷¡±×. ´õ ÀÚ¼¼ÇÑ Á¤º¸´Â MSDN ÂüÁ¶.
67SM_CLEANBOOT: ½Ã½ºÅÛÀÌ ¾î¶»°Ô ½ÃÀÛÇÒÁö¸¦ ÁöÁ¤ÇÕ´Ï´Ù:
+ 0 Á¤»ó ºÎÆ®
+ 1 ¾ÈÀü ºÎÆ®
+ 2 ³×Æ®¿öÅ©°¡ ÀÖ´Â ¾ÈÀü ºÎÆ®
5, 6SM_CXBORDER, SM_CYBORDER: â µ¥Åõ¸®ÀÇ ³Êºñ¿Í ³ôÀÌ, Çȼ¿ ´ÜÀ§. ÀÌ°ÍÀº 3-D ¸ð½ÀÀ» °®Ãá â¿¡ ´ëÇÏ¿© SM_CXEDGE °ª°ú µ¿ÀÏÇÕ´Ï´Ù.
13, 14SM_CXCURSOR, SM_CYCURSOR: Ä¿¼­ÀÇ ³Êºñ¿Í ³ôÀÌ, Çȼ¿ ´ÜÀ§. ½Ã½ºÅÛÀº ´Ù¸¥ Å©±âÀÇ Ä¿¼­¸¦ ¸¸µé ¼ö ¾ø½À´Ï´Ù.
36, 37SM_CXDOUBLECLK, SM_CYDOUBLECLK: ´õºíŬ¸¯ ¿¬¼Ó¿¡¼­ ù ¹ø° Ŭ¸¯ÀÇ À§Ä¡¸¦ µÑ·¯½Ñ »ç°¢ ±¸¿ªÀÇ ³Êºñ¿Í ³ôÀÌ. Çȼ¿ ´ÜÀ§. µÎ ¹ø° Ŭ¸¯Àº ¹Ýµå½Ã ÀÌ »ç°¢ ±¸¿ª ¾È¿¡¼­ ÀϾ¾ß ½Ã½ºÅÛÀÌ ±× µÎ Ŭ¸¯À» ´õºí Ŭ¸¯À¸·Î °£ÁÖÇÕ´Ï´Ù. (µÎ Ŭ¸¯Àº ¶Ç ÁöÁ¤µÈ ½Ã°£ ¾È¿¡ ÀϾ¾ß ÇÕ´Ï´Ù.)
68, 69SM_CXDRAG, SM_CYDRAG: + µå·¡±× ÁöÁ¡ °¡¿îµ¥¿¡ ³õÀÌ´Â »ç°¢ÇüÀÇ ³Êºñ¿Í ³ôÀÌ. µå·¡±× ¿¬»êÀÌ ½ÃÀ۵DZâ Àü¿¡ ¸¶¿ì½º Æ÷ÀÎÅÍÀÇ Á¦ÇÑµÈ À̵¿À» Çã¿ëÇÕ´Ï´Ù. ±× ´öºÐ¿¡ »ç¿ëÀÚ´Â ÀǵµÄ¡ ¾Ê°Ô µå·¡±× ¿¬»êÀ» ÇÒ ÇÊ¿ä ¾øÀÌ ¸¶¿ì½º¸¦ ½±°Ô Ŭ¸¯ÇÏ°í ³õÀ» ¼ö ÀÖ½À´Ï´Ù.
45, 46SM_CXEDGE, SM_CYEDGE: 3-D Å׵θ®ÀÇ Å©±â, Çȼ¿ ´ÜÀ§. SM_CXBORDER ±×¸®°í SM_CYBORDERÀÇ 3-D ¦ÀÔ´Ï´Ù.
7, 8SM_CXFIXEDFRAME, SM_CYFIXEDFRAME (´ÙÀ½°ú µ¿µî:SM_CXDLGFRAME, SM_CYDLGFRAME): ĸ¼ÇÀº ÀÖÁö¸¸ Å©±â Á¶ÀýÀº ºÒ°¡´ÉÇÑ Ã¢ÀÇ ¿Ü°ûÀÇ ÇÁ·¹ÀÓ µÎ²², Çȼ¿ ´ÜÀ§. SM_CXFIXEDFRAMEÀº ¼öÆò Å׵θ®ÀÇ ³ôÀÌÀÌ°í SM_CYFIXEDFRAMEÀº ¼öÁ÷ Å׵θ®ÀÇ ³ÊºñÀÔ´Ï´Ù.
83, 84SM_CXFOCUSBORDER, SM_CYFOCUSBORDER: ÃÊÁ¡ÀÌ ÀÖ´Â ÇÑ ÄÜÆ®·ÑÀÇ »ç°¢ ±¸¿ªÀÇ ÁÂ¿ì °¡ÀåÀÚ¸® ³Êºñ ±×¸®°í »óÇÏ °¡ÀåÀÚ¸® ³ôÀÌ (Çȼ¿ ´ÜÀ§). Windows 2000: ¹ÝȯµÈ °ªÀº ¾ðÁ¦³ª 0ÀÔ´Ï´Ù.
21, 3SM_CXHSCROLL, SM_CYHSCROLL: ¼öÆò ½ºÅ©·Ñ ¹ÙÀÇ È­»ìÇ¥ ºñÆ®¸ÊÀÇ ³Êºñ, Çȼ¿ ´ÜÀ§; ¼öÆò ½ºÅ©·Ñ ¹ÙÀÇ ³ôÀÌ, Çȼ¿ ´ÜÀ§.
10SM_CXHTHUMB: ¼öÆò ½ºÅ©·Ñ¹ÙÀÇ ¾öÁö ¹Ú½ºÀÇ ³Êºñ, Çȼ¿ ´ÜÀ§.
11, 12SM_CXICON, SM_CYICON: ¾ÆÀÌÄÜÀÇ ±âº» ³Êºñ¿Í ³ôÀÌ, Çȼ¿ ´ÜÀ§.
38, 39SM_CXICONSPACING, SM_CYICONSPACING: Å« ¾ÆÀÌÄÜ ºäÀÇ Ç׸ñ¿¡ ´ëÇÏ¿© °ÝÀÚ ¼¿ÀÇ Å©±â, Çȼ¿ ´ÜÀ§. °¢ Ç׸ñÀº Á¤·ÄµÉ ¶§ ÀÌ Å©±âÀÇ »ç°¢Çü¿¡ ¸Â°Ô Å©±â°¡ ¹Ù²ò´Ï´Ù. ÀÌ °ªµéÀº ¾ðÁ¦³ª SM_CXICON ±×¸®°í SM_CYICONº¸´Ù Å©°Å³ª °°½À´Ï´Ù.
71, 72SM_CXMENUCHECK, SM_CYMENUCHECK: ±âº» ¸Þ´º üũ-Ç¥½Ä ºñÆ®¸ÊÀÇ Å©±â, Çȼ¿ ´ÜÀ§.
54, 55SM_CXMENUSIZE, SM_CYMENUSIZE: ¸Þ´º ¹Ù ¹öÆ°ÀÇ Å©±â, ¿¹¸¦ µé¾î ´ÙÁß ¹®¼­ ÀÎÅÍÆäÀ̽º¿¡ »ç¿ëµÇ´Â ÀÚ¼Õ Ã¢ ´Ý±â ¹öÆ°, Çȼ¿ ´ÜÀ§.
47, 48SM_CXMINSPACING SM_CYMINSPACING: ÃÖ¼ÒÈ­µÈ â¿¡ ´ëÇÑ °ÝÀÚ ¼¿ÀÇ Å©±â, °¢°¢ÀÇ ÃÖ¼ÒÈ­µÈ âÀº Á¤·ÄµÉ ¶§ ÀÌ Å©±âÀÇ »ç°¢Çü ¾È¿¡ ¸Â°Ô Å©±â°¡ Á¶ÀýµË´Ï´Ù. ÀÌ °ªµéÀº ¾ðÁ¦³ª SM_CXMINIMIZED ±×¸®°í SM_CYMINIMIZEDº¸´Ù Å©°Å³ª °°½À´Ï´Ù
30, 31SM_CXSIZE, SM_CYSIZE: âÀÇ Ä¸¼ÇÀ̳ª ŸÀÌƲ ¹Ù¿¡ ÀÖ´Â ¹öÆ°ÀÇ ³Êºñ¿Í ³ôÀÌ, Çȼ¿ ´ÜÀ§.
32, 33SM_CXSIZEFRAME, SM_CYSIZEFRAME: Å©±â Á¶ÀýÀÌ °¡´ÉÇÑ Ã¢ ¿Ü°ûÀÇ Å©±â Á¶Àý Å׵θ®ÀÇ µÎ²², Çȼ¿ ´ÜÀ§. SM_CXSIZEFRAME´Â ¼öÆò Å׵θ®ÀÇ ³ÊºñÀÌ°í, SM_CYSIZEFRAME´Â ¼öÁ÷ Å׵θ®ÀÇ ³ôÀÌÀÔ´Ï´Ù. SM_CXFRAME ±×¸®°í SM_CYFRAME¿Í µ¿ÀǾî.
49, 50SM_CXSMICON, SM_CYSMICON: ÀÛÀº ¾ÆÀÌÄÜ¿¡ ÃßõÇÏ´Â Å©±â, Çȼ¿ ´ÜÀ§. ÀÛÀº ¾ÆÀÌÄÜÀº ÀüÇüÀûÀ¸·Î â ĸ¼Ç°ú ÀÛÀº ¾ÆÀÌÄÜ ºä¿¡ ³ªÅ¸³³´Ï´Ù.
52, 53SM_CXSMSIZE SM_CYSMSIZE: ÀÛÀº ĸ¼Ç ¹öÆ°ÀÇ Å©±â, Çȼ¿ ´ÜÀ§.
2, 20SM_CXVSCROLL, SM_CYVSCROLL: ¼öÁ÷ ½ºÅ©·Ñ¹ÙÀÇ ³Êºñ, Çȼ¿ ´ÜÀ§; ±×¸®°í ¼öÁ÷ ½ºÅ©·Ñ ¹ÙÀÇ È­»ìÇ¥ ºñÆ®¸ÊÀÇ ³ôÀÌ, Çȼ¿ ´ÜÀ§.
4SM_CYCAPTION: ĸ¼Ç ±¸¿ªÀÇ ³ôÀÌ, Çȼ¿ ´ÜÀ§.
18SM_CYKANJIWINDOW: 2 ¹ÙÀÌÆ® ¹®ÀÚ ¼¼Æ® ¹öÀüÀÇ ½Ã½ºÅÛ¿¡ ´ëÇÏ¿©, È­¸é ÇÏ´ÜÀÇ ÇÑÀÚ Ã¢ÀÇ ³ôÀÌÀÔ´Ï´Ù. Çȼ¿ ´ÜÀ§.
15SM_CYMENU: ÇÑ ÁÙ ¸Þ´º¹ÙÀÇ ³ôÀÌ, Çȼ¿ ´ÜÀ§.
51SM_CYSMCAPTION: ÀÛÀº ĸ¼ÇÀÇ ³ôÀÌ, Çȼ¿ ´ÜÀ§.
9SM_CYVTHUMB: ¼öÁ÷ ½ºÅ©·Ñ ¹ÙÀÇ ¾öÁö ¹Ú½ºÀÇ ³ôÀÌ, Çȼ¿ ´ÜÀ§.
42SM_DBCSENABLED: User32.dll°¡ DBCS¸¦ Áö¿øÇϸé 0 ¾Æ´Ñ °ª; ±×·¸Áö ¾ÊÀ¸¸é 0.
22SM_DEBUG: µð¹ö±× ¹öÀüÀÇ User.exe°¡ ¼³Ä¡µÇ¾î ÀÖÀ¸¸é 0 ¾Æ´Ñ °ª; ±×·¸Áö ¾ÊÀ¸¸é 0.
82SM_IMMENABLED: ´Ù±¹¾î ÀÔ·ÂÀÌ °¡´ÉÇϸé 0ÀÌ ¾Æ´Ñ °ª; ±×·¸Áö ¾ÊÀ¸¸é 0. +

SM_IMMENABLED´Â ½Ã½ºÅÛÀÌ À¯´ÏÄÚµå ¾îÇø®ÄÉÀ̼ǿ¡¼­ À¯´ÏÄÚµå ±â¹ÝÀÇ IME¸¦ »ç¿ëÇÒ Áغñ°¡ µÇ¾î ÀÖ´ÂÁö ¾Ë·Á ÁÝ´Ï´Ù. ¾ð¾î-Á¾¼ÓÀû IME°¡ ÀÛµ¿ÇÏ´ÂÁö È®ÀÎÇÏ·Á¸é, SM_DBCSENABLED¿Í ½Ã½ºÅÛ ANSI ÄÚµå ÆäÀÌÁö¸¦ Á¡°ËÇϽʽÿÀ. ±×·¸Áö ¾ÊÀ¸¸é ANSI-to-Unicode º¯È¯ÀÌ ¿Ã¹Ù¸£°Ô ¼öÇàµÇÁö ¾ÊÀ» ¼ö ÀÖ½À´Ï´Ù. ¾Æ´Ï¸é ±Û²ÃÀ̳ª ·¹Áö½ºÆ®¸® ¼³Á¤°ú °°Àº ±¸¼º¿ä¼Ò°¡ Á¸ÀçÇÏÁö ¾ÊÀ» ¼ö ÀÖ½À´Ï´Ù.

87SM_MEDIACENTER: ÇöÀç ¿î¿µ üÁ¦°¡ Windows XP, Media Center EditionÀ̸é 0 ¾Æ´Ñ °ª, ±×·¸Áö ¾ÊÀ¸¸é 0.
40SM_MENUDROPALIGNMENT: µå·Ó-´Ù¿î ¸Þ´º°¡ »óÀÀÇÏ´Â ¸Þ´º ¹Ù Ç׸ñ°ú ÇÔ²² ¿À¸¥ÂÊ Á¤·Ä µÇ¾î ÀÖÀ¸¸é 0 ¾Æ´Ñ °ª, ¸Þ´º°¡ ¿ÞÂÊ Á¤·ÄµÇ¾î ÀÖÀ¸¸é 0.
74SM_MIDEASTENABLED: ½Ã½ºÅÛ¿¡ Hebrew ±×¸®°í Arabic ¾ð¾î°¡ »ç¿ë °¡´ÉÇϸé 0 ¾Æ´Ñ °ª, ±×·¸Áö ¾ÊÀ¸¸é 0.
41SM_PENWINDOWS: Ææ ÄÄÇ»Æà ȮÀåÀÌ ¼³Ä¡µÇ¾î ÀÖÀ¸¸é 0 ¾Æ´Ñ °ª; ±×·¸Áö ¾ÊÀ¸¸é 0.
44SM_SECURE: º¸¾ÈÀÌ ¼³Á¤µÇ¾î ÀÖÀ¸¸é 0 ¾Æ´Ñ °ª; ±×·¸Áö ¾ÊÀ¸¸é 0.
81SM_SAMEDISPLAYFORMAT: ¸ðµç µð½ºÇ÷¹ÀÌ ¸ð´ÏÅÍ°¡ °°Àº Ä÷¯ Æ÷¸ËÀ̸é 0 ¾Æ´Ñ °ª, ±×·¸Áö ¾ÊÀ¸¸é 0. µÎ °³ÀÇ µð½ºÇ÷¹ÀÌ°¡ ºñÆ® ±íÀÌ´Â °°Áö¸¸ Ä÷¯ Æ÷¸ËÀº ´Ù¸¦ ¼ö ÀÖ´Ù´Â °Í¿¡ ÁÖ¸ñÇϽʽÿÀ. ¿¹¸¦ µé¾î, Àû, ³ì, û Çȼ¿Àº ´Ù¸¥ °³¼öÀÇ ºñÆ®·Î ÀÎÄÚµåµÉ ¼ö ÀÖ½À´Ï´Ù. ¶Ç´Â ±×·± ºñÆ®µéÀº ÇÑ Çȼ¿ÀÇ Ä÷¯ °ªÀ¸·Î ´Ù¸¥ Àå¼Ò¿¡ À§Ä¡ÇÒ ¼ö ÀÖ½À´Ï´Ù.
86SM_TABLETPC: ÇöÀç ¿î¿µ üÁ¦°¡ Windows XP Tablet PC ¿¡µð¼ÇÀ̸é 0 ¾Æ´Ñ °ª, ±×·¸Áö ¾ÊÀ¸¸é 0ÀÔ´Ï´Ù.
+

³íÆò

+

+³»Àå º¯¼ö A_ScreenWidth¿Í A_ScreenHeight¿¡ Çȼ¿ ´ÜÀ§·Î ±âº» ¸ð´ÏÅÍÀÇ Å©±â°¡ µé¾î ÀÖ½À´Ï´Ù.

+

°ü·Ã Ç׸ñ

+

+DllCall, WinGet

+

¿¹Á¦

+
; ¿¹Á¦ #1:
+SysGet, MouseButtonCount, 43
+SysGet, VirtualScreenWidth, 78
+SysGet, VirtualScreenHeight, 79
+
+; Example #2: ÀÌ ½ºÅ©¸³Æ®´Â °¢ ¸ð´ÏÅÍÀÇ Á¤º¸¸¦ º¸¿©ÁÝ´Ï´Ù:
+SysGet, MonitorCount, MonitorCount
+SysGet, MonitorPrimary, MonitorPrimary
+MsgBox, Monitor Count:`t%MonitorCount%`nPrimary Monitor:`t%MonitorPrimary%
+Loop, %MonitorCount%
+{
+    SysGet, MonitorName, MonitorName, %A_Index%
+    SysGet, Monitor, Monitor, %A_Index%
+    SysGet, MonitorWorkArea, MonitorWorkArea, %A_Index%
+    MsgBox, Monitor:`t#%A_Index%`nName:`t%MonitorName%`nLeft:`t%MonitorLeft% (%MonitorWorkAreaLeft% work)`nTop:`t%MonitorTop% (%MonitorWorkAreaTop% work)`nRight:`t%MonitorRight% (%MonitorWorkAreaRight% work)`nBottom:`t%MonitorBottom% (%MonitorWorkAreaBottom% work)
+}
+ + + diff --git a/src/docs/commands/Thread.htm b/src/docs/commands/Thread.htm new file mode 100644 index 0000000..ad5c5f4 --- /dev/null +++ b/src/docs/commands/Thread.htm @@ -0,0 +1,68 @@ + + + + +Thread + + + + + + + +

Thread

+ +

+¾²·¹µåÀÇ ¿ì¼± ¼øÀ§¿Í ÀÎÅÍ·´Æ® Çã¿ë ¿©ºÎ¸¦ ¼³Á¤ÇÕ´Ï´Ù. ¶Ç Àӽ÷Π¸ðµç ŸÀ̸Ӹ¦ ²ø ¼ö ÀÖ½À´Ï´Ù.

+ +
Thread, NoTimers [, false]
+Thread, Priority, n
+Thread, Interrupt [, Duration, LineCount]
+
+

Thread, NoTimers [, false]: + +ÇöÀç ¾²·¹µå°¡ Á¾·áÇϰųª, Thread, NoTimers, false¸¦ ½ÇÇàÇϰųª, ¶Ç´Â ŸÀ̸Ӹ¦ Çã¿ëÇÏ´Â ¶Ç´Ù¸¥ ¾²·¹µå¿¡ ÀÇÇÏ¿© ÀÎÅÍ·´Æ®µÉ ¶§±îÁö ´Ù¸¥ ŸÀ̸ÓÀÇ ÀÎÅÍ·´Æ®¸¦ ¸·½À´Ï´Ù (ŸÀ̸Ӹ¦ Çã¿ëÇÏ´Â ¾²·¹µå¶ó¸é ÀÎÅÍ·´Æ®ÇÑ ¾²·¹µå¸¦ Á¾·áÇÒ ¶§±îÁö ÀÎÅÍ·´Æ® ÇÒ ¼ö ÀÖ½À´Ï´Ù).

+

+ÀÚµ¿-½ÇÇà ¼½¼Ç (½ºÅ©¸³Æ®ÀÇ »ó´Ü)¿¡¼­ Thread NoTimers°¡ »ç¿ëµÇÁö ¾Ê¾Ò´Ù¸é, ¸ðµç ¾²·¹µå´Â ŸÀ̸Ӱ¡ ÀÎÅÍ·´Æ® ÇÒ ¼ö ÀÖ´Â »óÅ·Π½ÃÀÛÇÕ´Ï´Ù (¹°·Ð Thread Interrupt [¾Æ·¡]ÀÇ ¼³Á¤Àº ¿©ÀüÈ÷ Àû¿ëµË´Ï´Ù). ´ëÁ¶ÀûÀ¸·Î, ÀÚµ¿-½ÇÇà ¼½¼ÇÀÌ NoTimers À§¿¡¼­ ½ÇÇàµÇÁö¸¸ ŸÀ̸Ӵ ²ôÁö ¾Ê¾Ò´Ù¸é, »õ·Î ±âµ¿µÈ ¾²·¹µå¸¶´Ù (¿¹¸¦ µé¾î ÇÖÅ°, ¸ÂÃã ¸Þ´º Ç׸ñ, ¶Ç´Â ŸÀ̸Ó) ´Ù¸¥ ŸÀ̸ÓÀÇ ÀÎÅÍ·´Æ®¿¡ ¸é¿ª »óÅ·Π½ÃÀÛÇÕ´Ï´Ù.

+

+±âº» ¼³Á¤¿¡ »ó°ü ¾øÀÌ, ½ºÅ©¸³Æ®¿¡ ¾²·¹µå°¡ ¾ø´Ù¸é ŸÀ̸Ӵ ¾ðÁ¦³ª ÀÛµ¿ÇÕ´Ï´Ù (´Ü, Pause°¡ ÄÑÁø °æ¿ì´Â ¿¹¿ÜÀÔ´Ï´Ù).

+

+Thread, NoTimers´Â Thread, NoTimers, true¿Í µ¿µîÇÕ´Ï´Ù. °Ô´Ù°¡, true/false ¸Æ°³º¯¼ö´Â Ç¥Çö½ÄÀ̹ǷÎ, true´Â 1·Î, ±×¸®°í false´Â 0À¸·Î °áÁ¤µË´Ï´Ù.

+
+

Thread, Priority, n: n¿¡ -2147483648ºÎÅÍ 2147483647 »çÀÌÀÇ Á¤¼ö¸¦ (¶Ç´Â Ç¥Çö½Ä °¡´É) ÁöÁ¤Çϸé ÇöÀç ¾²·¹µåÀÇ »õ ¿ì¼± ¼øÀ§¸¦ ³ªÅ¸³¾ ¼ö ÀÖ½À´Ï´Ù. ´Ù¸¥ ¾²·¹µå¿¡´Â ¿µÇâÀ» ÁÖÁö ¾Ê½À´Ï´Ù. ÀÚ¼¼ÇÑ Á¤º¸´Â ¾²·¹µå¸¦ ÂüÁ¶ÇϽʽÿÀ.

+

+À̺¥Æ®¸¦ ¹öÆÛ Ã³¸®ÇÒ ¼ö Àֱ⠶§¹®¿¡, ¸í·É¾î CriticalÀº ÀϹÝÀûÀ¸·Î Thread Priorityº¸´Ù ¿ì¼± ¼øÀ§°¡ ³ô½À´Ï´Ù.

+

+°ü·ÃÇÏ¿©, OSÀÇ ¿ì¼± ¼øÀ§ ·¹º§Àº Àüü ½ºÅ©¸³Æ®¿¡ ´ëÇÏ¿© ´ÙÀ½ ¿¹Á¦¿Í °°ÀÌ ¹Ù²Ü ¼ö ÀÖ½À´Ï´Ù: Process, Priority,, High.

+
+

Thread, Interrupt [, Duration, LineCount]: ÀÌ ¸í·É¾î´Â ¾Æ²¸¼­ »ç¿ëÇØ¾ß ÇÕ´Ï´Ù. ¿Ö³ÄÇÏ¸é ´ëºÎºÐÀÇ ½ºÅ©¸³Æ®´Â ±âº»°ª¿¡ °¡±õ°Ô ¼³Á¤ÇÒ ¼ö·Ï ´õ ÀÏ°ü¼ºÀÌ ÀÖ°Ô ¼öÇàµÇ±â ¶§¹®ÀÔ´Ï´Ù.

+

+±âº»°ªÀ¸·Î, »õ·Î ±âµ¿µÈ ¾²·¹µå´Â 15¹Ð¸® ÃÊ µ¿¾È(Duration) ¶Ç´Â 1000 ½ºÅ©¸³Æ® ÁÙ(LineCount) µ¿¾È ÀÎÅÍ·´Æ® ÇÒ ¼ö ¾ø½À´Ï´Ù. ¾²·¹µå ¿ì¼± ¼øÀ§¿¡ »ó°üÀÌ ¾ø½À´Ï´Ù. ÀÌ ´öºÐ¿¡ ¾²·¹µå´Â ³¡³¾ ±âȸ°¡ ÀÖ½À´Ï´Ù. ±×·¸Áö ¾ÊÀ¸¸é ±âµ¿µÇ±â¸¦ ±â´Ù¸®°í ÀÖ´Â ¶Ç´Ù¸¥ ¾²·¹µå¿¡ ÀÇÇÏ¿© Áï½Ã ÀÎÅÍ·´Æ® µÇ¾î ¹ö¸± °ÍÀÔ´Ï´Ù (¿¹¸¦ µé¾î ¹öÆÛ Ã³¸®µÈ ÇÖÅ° ¶Ç´Â ½ÇÇàÀÌ ¿¹¾àµÇ¾î ÀÖ´Â ÀÏ·ÃÀÇ Å¸ÀÌ¸Ó ¼­ºê·çƾ).

+

+µÑ ÁßÀÇ Çϳª°¡ 0À̸é, »õ·Î ±âµ¿µÈ ¾²·¹µå¸¶´Ù Áï½Ã ÀÎÅÍ·´Æ®°¡ °¡´ÉÇÕ´Ï´Ù. µÑ Áß Çϳª°¡ -1À̸é, ±× ¶§¹®¿¡ ±× ¾²·¹µå¸¦ ÀÎÅÍ·´Æ®ÇÒ ¼ö ¾ø½À´Ï´Ù. µÑ ´Ù ÃÖ´ë°ªÀº 2147483647ÀÔ´Ï´Ù.

+

+ +ÀÎÅÍ·´Æ® ¼³Á¤Àº Àü¿ªÀûÀÔ´Ï´Ù. ±× ´ÙÀ½¿¡ ÀϾ´Â ¸ðµç ¾²·¹µå´Â ±× ¼³Á¤À» ÁؼöÇÕ´Ï´Ù. ¼³Á¤ÀÌ ÀÚµ¿-½ÇÇà ¼½¼ÇÀÌ ¾Æ´Ñ ´Ù¸¥ °÷¿¡¼­ ¹Ù²î´õ¶óµµ ¸¶Âù°¡Áö ÀÔ´Ï´Ù. ±×·¸Áö¸¸, ÀÎÅÍ·´Æ® µÈ ¾²·¹µå´Â ¿µÇâÀ» ¹ÞÁö ¾Ê½À´Ï´Ù. ¿Ö³ÄÇϸé ÀÎÅÍ·´Æ® ºÒ°¡´É ±âÇÑÀÌ ÀÌ¹Ì °æ°úÇ߱⠶§¹®ÀÔ´Ï´Ù. ºñ½ÁÇÏ°Ô, ÇöÀç ¾²·¹µå´Â ¿µÇâÀ» ¹ÞÁö ¾Ê½À´Ï´Ù. + +´Ü, LineCount°¡ ¹Ù²î´Â ¼ø°£ ÀÎÅÍ·´Æ® ÇÒ ¼ö ¾ø´Ù¸é ¿¹¿ÜÀÔ´Ï´Ù. ÀÌ °æ¿ì »õ LineCount°¡ °Å±â¿¡ ¼³Á¤µË´Ï´Ù.

+

+ÇöÀç ¾²·¹µå°¡ ÀÎÅÍ·´Æ® ºÒ°¡´ÉÇÑ µ¿¾È¿¡ ÇÖÅ°°¡ ´­¸®°Å³ª ¸ÂÃã ¸Þ´º Ç׸ñÀÌ ¼±ÅõǸé, ±× À̺¥Æ®´Â ¹öÆÛ Ã³¸®µË´Ï´Ù. ´Ù¸¥ ¸»·Î, ÇöÀç ¾²·¹µå°¡ Á¾·áÇϰųª ÀÎÅÍ·´Æ®°¡ °¡´ÉÇØÁö¸é ±âµ¿µË´Ï´Ù. ÀÌ¿¡ ´ëÇÑ ¿¹¿Ü´Â ÇöÀç ¾²·¹µå°¡ ³¡³ª±â Àü¿¡ ÀÎÅÍ·´Æ®°¡ °¡´ÉÇØÁú ¶§ ÀÔ´Ï´Ù. ÀÌ ¶§´Â ¹öÆÛ Ã³¸®µÈ À̺¥Æ® º¸´Ù ¿ì¼± ¼øÀ§°¡ ´õ ³ô½À´Ï´Ù; ÀÌ °æ¿ì ¹öÆÛ¿¡ ÀÖ´Â À̺¥Æ®´Â Æä±âµË´Ï´Ù.

+

+ÀÌ ¼³Á¤¿¡ »ó°ü ¾øÀÌ, ¾²·¹µå´Â MsgBox, InputBox, FileSelectFile, ¶Ç´Â FileSelectFolder ´ëÈ­»óÀÚ¸¦ º¸¿©ÁÖ´Â ¼ø°£ ÀÎÅÍ·´Æ®°¡ °¡´ÉÇØÁý´Ï´Ù.

+

+µÑ Áß ¾î´À ÂÊÀÌ¶óµµ ºñ¿ö µÎ¸é ¹Ù²î´Â °ÍÀ» ¸·À» ¼ö ÀÖ½À´Ï´Ù.

+ +

³íÆò

+

+À̺¥Æ®¸¦ ¹öÆÛ Ã³¸®ÇÏ´Â ±×ÀÇ ³î¶ó¿î À¯¿¬¼º°ú ´É·Â ´öºÐ¿¡, ¸í·É¾î CriticalÀº º¸Åë Thread Interrupt¿Í Thread Priority º¸´Ù ´õ À¯¿ëÇÕ´Ï´Ù.

+ +

°ü·Ã Ç׸ñ

+

Critical, Threads, Hotkey, Menu, SetTimer, Process

+

¿¹Á¦

+ +
Thread, priority, 1 ; ÇöÀç ¾²·¹µåÀÇ ¿ì¼± ¼øÀ§¸¦ º¸Å뺸´Ù ¾à°£ ´õ ³ô°Ô ¸¸µì´Ï´Ù.
+Thread, interrupt, 0  ; »õ·Î ±âµ¿µÈ ¾²·¹µå¸¶´Ù Áï½Ã ÀÎÅÍ·´Æ® °¡´ÉÇϵµ·Ï ¸¸µì´Ï´Ù:
+Thread, interrupt, 50, 2000  ; ¿ì¼± ¼øÀ§¿¡ »ó°ü ¾øÀÌ °¢ ¾²·¹µå¸¦ 50ms ¶Ç´Â 2000 ÁÙ ÀÌÈÄ¿¡ ÀÎÅÍ·´Æ® °¡´ÉÇϵµ·Ï ¸¸µì´Ï´Ù.
+ + + diff --git a/src/docs/commands/Throw.htm b/src/docs/commands/Throw.htm new file mode 100644 index 0000000..877fad5 --- /dev/null +++ b/src/docs/commands/Throw.htm @@ -0,0 +1,70 @@ + + + + +Throw + + + + + + + +

Throw [v1.1.04+]

+ +

¿¡·¯ÀÇ ÃâÇöÀ» ¾Ë·ÁÁÝ´Ï´Ù. ÀÌ ½ÅÈ£´Â try-catch ¼­¼ú¹®À¸·Î ÀâÀ» ¼ö ÀÖ½À´Ï´Ù.

+ +
Throw [, Expression]
+

¸Å°³º¯¼ö

+
+ +
Expression
+

catchÀÇ OutputVar¿¡ ÀúÀåÇÒ °ª.

+

ÀÌ ¸Å°³º¯¼ö´Â Ç¥Çö½ÄÀ̱⠶§¹®¿¡, ´ÙÀ½Àº ¸ðµÎ À¯È¿ÇÑ ¿¹Á¦ÀÔ´Ï´Ù:

+ +
throw 3
+throw "literal string"
+throw MyVar
+throw i + 1
+throw { what: "Custom error", file: A_LineFile, line: A_LineNumber } ; °´Ã¼¸¦ ´øÁý´Ï´Ù.
+

+ÀÌ ¸Å°³º¯¼ö´Â ¾ðÁ¦³ª Ç¥Çö½ÄÀÔ´Ï´Ù. ±×·¡¼­ º¯¼ö ÂüÁ¶´Â ÆÛ¼¾Æ® »çÀÎÀ¸·Î µÑ·¯½Î¸é ¾ÈµË´Ï´Ù. ´Ü, double-deref¸¦ ¼öÇàÇÒ ¶§´Â ¿¹¿ÜÀÔ´Ï´Ù.

+

+[v1.1.05+]: »ý·«µÇ¸é, ±âº» ¸Þ½ÃÁö¿Í ÇÔ²² ¿¹¿Ü °´Ã¼°¡ ´øÁ®Áý´Ï´Ù.

+ +
+ +

Exception(Message [, What, Extra])

+

+´ÙÀ½ Ư¼ºÀ» °¡Áø °´Ã¼¸¦ ¸¸µì´Ï´Ù. ¶ÇÇÑ ½ÇÇà½Ã°£ ¿¡·¯°¡ ¸¸µç ¿¹¿Ü¿¡ ÈçÇÕ´Ï´Ù:

+ +

+WhatÀÌ »ý·«µÇ¸é, ÇöÀç ÇÔ¼ö³ª ¼­ºê·çƾÀÇ À̸§ÀÌ ±âº»°ªÀÌ µË´Ï´Ù. ±×·¸Áö ¾ÊÀ¸¸é ¹®ÀÚ¿­À̰ųª ¶Ç´Â È£Ãâ ½ºÅÃÀÇ À§ÂÊÀ¸·ÎºÎÅÍ ¾Æ·¡·Î À½ÀÇ ¿ÀÇÁ¼ÂÀÏ ¼ö ÀÖ½À´Ï´Ù. + +¿¹¸¦ µé¾î, °ªÀÌ -1À̸é Exception.What¿¡ ÇöÀç ÇÔ¼ö³ª ¼­ºê·çƾÀ» ¼³Á¤ÇÏ°í Exception.Line¿¡ ±×¸¦ È£ÃâÇÑ ÁÙÀ» ¼³Á¤ÇÕ´Ï´Ù. ±×·¸Áö¸¸, ½ºÅ©¸³Æ®°¡ ÄÄÆÄÀÏ µÇ¾ú°Å³ª ¿ÀÇÁ¼ÂÀÌ À¯È¿ÇÏÁö ¾ÊÀ¸¸é, WhatÀº ±×³É ¹®ÀÚ¿­·Î º¯È¯µË´Ï´Ù.

+

+Message¿Í Extra´Â ¹®ÀÚ¿­·Î º¯È¯µË´Ï´Ù. À̰͵éÀº ¿¹¿Ü°¡ ´øÁ®Á³´Âµ¥ ÀâÁö ¸øÇÏ¸é ¿¡·¯ ´ëÈ­»óÀÚ¿¡ º¸¿©Áý´Ï´Ù.

+ +
try
+    BadlyCodedFunc()
+catch e
+    MsgBox % "Error in " e.What ", which was called at line " e.Line 
+
+BadlyCodedFunc() {
+    throw Exception("Fail", -1)
+}
+ +

°ü·Ã Ç׸ñ

+

Try, Catch, Finally

+ +

¿¹Á¦

+

Try¸¦ ÂüÁ¶ÇϽʽÿÀ.

+ + + diff --git a/src/docs/commands/ToolTip.htm b/src/docs/commands/ToolTip.htm new file mode 100644 index 0000000..2bdb084 --- /dev/null +++ b/src/docs/commands/ToolTip.htm @@ -0,0 +1,66 @@ + + + + +ToolTip + + + + + + + +

ToolTip

+ +

È­¸é ¾Æ¹«µ¥³ª Ç×»ó-À§¿¡ âÀ» ¸¸µì´Ï´Ù.

+ +
ToolTip [, Text, X, Y, WhichToolTip]
+

¸Å°³º¯¼ö

+
+ +
Text
+

ºñ¾î Àְųª »ý·«µÇ¸é, ±âÁ¸ÀÇ ÅøÆÁÀÌ ¼û½À´Ï´Ù. ±×·¸Áö ¾ÊÀ¸¸é, ÀÌ ¸Å°³º¯¼ö´Â ÅøÆÁ¿¡ º¸¿©ÁÙ ÅؽºÆ®ÀÔ´Ï´Ù. ¿©·¯-ÁÙ ÅøÆÁÀ» »ý¼ºÇÏ·Á¸é, ¶óÀÎÇÇµå ¹®ÀÚ(`n)¸¦ °¢ ÁÙ »çÀÌ¿¡ »ç¿ëÇϽʽÿÀ. ¿¹, Line1`nLine2.

+

+ Text°¡ ±æ¸é, °Ô¼Ó ¼½¼ÇÀ» ¼ö´ÜÀ¸·Î ¿©·¯ °³ÀÇ ÂªÀº ÁÙ·Î ºÐ¸®ÇÒ ¼ö ÀÖ½À´Ï´Ù. ÀÌ·¸°Ô ÇÏ¸é °¡µ¶¼º°ú À¯Áö°ü¸®¼ºÀÌ Çâ»óµË´Ï´Ù.

+ +
X, Y
+

ÅøÆÁÀÇ X¿Í YÀÇ À§Ä¡. È°¼º â¿¡ »ó´ëÀûÀÔ´Ï´Ù (È­¸é ÁÂÇ¥¸¦ º¯°æÇÏ·Á¸é CoordMode, ToolTipÀ» »ç¿ëÇϽʽÿÀ). ÁÂÇ¥°¡ »ý·«µÇ¸é, ÅøÆÁÀº ¸¶¿ì½º ±Ùó¿¡ ³ªÅ¸³³´Ï´Ù. X¿Í Y´Â Ç¥Çö½ÄÀÌ °¡´ÉÇÕ´Ï´Ù.

+ +
WhichToolTip
+

¿©·¯ ÅøÆÁÀ» µ¿½Ã¿¡ º¸¿©ÁÙ ÇÊ¿ä°¡ ¾ø´Ù¸é ÀÌ ¸Å°³º¯¼ö¸¦ »ý·«ÇϽʽÿÀ. ±×·¸Áö ¾ÊÀ¸¸é, ÀÌ°ÍÀº 1ºÎÅÍ 20 »çÀÌÀÇ ¼ýÀÚ·Î ¾î´À ÅøÆÁ â¿¡ ÀÛ¿ëÇØ¾ß ÇÏ´ÂÁö ³ªÅ¸³À´Ï´Ù. ÀÌ°ÍÀÌ ÁöÁ¤µÇÁö ¾ÊÀ¸¸é, ±× ¹øÈ£´Â 1ÀÔ´Ï´Ù (ù ¹ø°). ÀÌ ¸Å°³º¯¼ö´Â Ç¥Çö½ÄÀÌ °¡´ÉÇÕ´Ï´Ù.

+ +
+

³íÆò

+

+X & Y ÁÂÇ¥°¡ ÅøÆÁÀ» È­¸é ¹Û¿¡ ³ªÅ¸³ªµµ·Ï ¸¸µç´Ù¸é, ¿ÏÀüÈ÷ º¸ÀÌ°Ô ÁÂÇ¥°¡ Àç¼³Á¤µË´Ï´Ù.

+

+ÅøÆÁÀº ´ÙÀ½ Áß Çϳª°¡ ÀϾ ¶§±îÁö º¸¿©Áý´Ï´Ù:

+ +

+GUI âÀ» Gui +OwnDialogs¸¦ ¼ö´ÜÀ¸·Î ÅøÆÁÀÇ ¼ÒÀ¯ÁÖ·Î ¸¸µé ¼ö ÀÖ½À´Ï´Ù. ±×·± ÅøÆÁÀº ¼ÒÀ¯ÁÖ°¡ Æı«µÉ ¶§ ÀÚµ¿À¸·Î Æı«µË´Ï´Ù.

+ +

°ü·Ã Ç׸ñ

+

+CoordMode, TrayTip, GUI, Progress, SplashTextOn, MsgBox, InputBox, FileSelectFile, FileSelectFolder

+ +

¿¹Á¦

+
ToolTip, ¿©·¯ ÁÙ`nÅøÆÁ µ¥¸ð, 100, 150
+
+; ÅøÆÁÀ» ÀÏÁ¤ ½Ã°£ ÈÄ¿¡ »ç¶óÁö°Ô ¸¸µì´Ï´Ù
+; SleepÀ» »ç¿ëÇÒ ÇÊ¿ä°¡ ¾ø½À´Ï´Ù (ÀÌ°ÍÀº ÇöÀç ¾²·¹µå¸¦ ¸ØÃä´Ï´Ù):
+#Persistent
+ToolTip, ½Ã°£ Á¦ÇÑÀÌ ÀÖ´Â ÅøÆÁ`nÀÌ ÅøÆÁÀº 5 ÃÊ ÈÄ¿¡ »ç¶óÁý´Ï´Ù.
+SetTimer, RemoveToolTip, 5000
+return
+
+RemoveToolTip:
+SetTimer, RemoveToolTip, Off
+ToolTip
+return
+ + + diff --git a/src/docs/commands/Transform.htm b/src/docs/commands/Transform.htm new file mode 100644 index 0000000..e814e07 --- /dev/null +++ b/src/docs/commands/Transform.htm @@ -0,0 +1,149 @@ + + + + +Transform + + + + + + + +

Transform

+ +

´Ù¾çÇÑ ¼öÇÐ ±â´É°ú ºñÆ®º° ¿¬»ê ±×¸®°í ASCII/Unicode º¯È¯ °°Àº ÀÛ¾÷À» ¼öÇàÇÕ´Ï´Ù.

+ +
Transform, OutputVar, Cmd, Value1 [, Value2]
+

¸Å°³º¯¼ö

+
+ +
OutputVar
+

CmdÀÇ °á°ú¸¦ ÀúÀåÇÒ º¯¼öÀÇ À̸§. SetFormatÀº Á¤¼ö°¡ ½ÊÀ°Áø¼ö·Î ÀúÀåµÉÁö ¾Æ´Ï¸é ½ÊÁø¼ö·Î ÀúÀåµÉÁö °áÁ¤ÇÕ´Ï´Ù.

+ +
Cmd, Value1/2
+

¾Æ·¡ ¸®½ºÆ® ÂüÁ¶.

+ +
+ +

Cmd, Value1, Value2

+

+Cmd, Value1 ±×¸®°í Value2 ¸Å°³º¯¼ö´Â ¼­·Î ÀÇÁ¸ÀûÀÔ´Ï´Ù. ±×¸®°í ±× »ç¿ë¹ýÀº ¾Æ·¡¿¡ ±â¼úÇÕ´Ï´Ù.

+

+Unicode [, String]: (ÀÌ ¸í·É¾î´Â À¯´ÏÄÚµå ¹öÀüÀÇ ¿ÀÅäÇÖÅ°¿¡´Â ¾ø½À´Ï´Ù.) Ŭ¸³º¸µåÀÇ À¯´ÏÄÚµå ÅؽºÆ®¸¦ ¿­¶÷Çϰųª ÀúÀåÇÕ´Ï´Ù. ÁÖÀÇ: Àüü Ŭ¸³º¸µå´Â ClipboardAllÀ» »ç¿ëÇÏ¿© ¿­¶÷ÇÏ°í ÀúÀåÇÒ ¼ö ÀÖ½À´Ï´Ù. ÀÌ·¸°Ô Çϸé Ŭ¸³º¸µåÀÇ ¿øº» ³»¿ëÀÇ ¼Õ½Ç ¾øÀÌ "Transform Unicode"°¡ ÀÛµ¿ÇÒ ¼ö ÀÖ½À´Ï´Ù.

+

+´ÙÀ½ ¿¹Á¦¿¡ º¸¿©ÁÖ´Â ¹Ù¿Í °°ÀÌ µÎ °¡Áö ¿¬»ê ¸ðµå°¡ ÀÖ½À´Ï´Ù:

+ +
Transform, OutputVar, Unicode  ; Ŭ¸³º¸µåÀÇ À¯´ÏÄÚµå ÅؽºÆ®¸¦ UTF-8 ¹®ÀÚ¿­·Î ¿­¶÷ÇÕ´Ï´Ù.
+Transform, Clipboard, Unicode, %MyUTF_String%  ; À¯´ÏÄÚµå ÅؽºÆ®¸¦ Ŭ¸³º¸µå¿¡ ¹èÄ¡ÇÕ´Ï´Ù.
+

+À§ÀÇ µÎ ¹ø° ¿¹Á¦¿¡¼­ %MyUTF_String% ´ë½Å¿¡, ±âÈ£ ±×´ë·ÎÀÇ UTF-8 ¹®ÀÚ¿­À» ¼±ÅÃÀûÀ¸·Î »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù.

+

+´ÙÀ½°ú °°Àº ÇÖÅ°¸¦ »ç¿ëÇϸé ÁÖ¾îÁø À¯´ÏÄÚµå ¹®ÀÚ¿­¿¡ »óÀÀÇÏ´Â UTF-8 ¹®ÀÚ¿­À» ¾Ë¾Æ³¾ ¼ö ÀÖ½À´Ï´Ù:

+ +
^!u::  ; Control+Alt+U ÇÖÅ°.
+MsgBox À¯´ÏÄÚµå ÅؽºÆ®¸¦ Ŭ¸³º¸µå¿¡ º¹»çÇÑ ´ÙÀ½, ÀÌ Ã¢À¸·Î µ¹¾Æ¿É´Ï´Ù. °è¼ÓÇÏ·Á¸é OK¸¦ ´©¸£½Ê½Ã¿À.
+Transform, ClipUTF, Unicode
+Clipboard = Transform, Clipboard, Unicode, %ClipUTF%`r`n
+MsgBox Ŭ¸³º¸µå¿¡ ÀÌÁ¦ ´ÙÀ½ ÁÙÀÌ ´ã°Ü ÀÖ½À´Ï´Ù. ½ºÅ©¸³Æ®¿¡ ºÙ¿© ³ÖÀ» ¼ö ÀÖ½À´Ï´Ù. ½ÇÇàÇϸé, ÀÌ ÁÙÀº ¿©·¯ºÐÀÌ º¹»çÇÑ ¿ø·¡ÀÇ À¯´ÏÄÚµå ¹®ÀÚ¿­À» Ŭ¸³º¸µå¿¡ ¹èÄ¡ÇÕ´Ï´Ù:`n`n%Clipboard%
+return
+

+ÁÖÀÇ: Send {U+nnnn} ¸í·É¾î´Â À¯´ÏÄÚµå ¹®ÀÚ¸¦ »ý»êÇÏ´Â ¶Ç´Ù¸¥ ¹æ¹ýÀÔ´Ï´Ù.

+

+Asc, String: StringÀÇ Ã¹ ¹®ÀÚ¿¡ ´ëÇÏ¿© ASCII Äڵ带 ¿­¶÷ÇÕ´Ï´Ù (1ºÎÅÍ 255 »çÀÌÀÇ ¼ýÀÚ). StringÀÌ ºñ¾î ÀÖÀ¸¸é, OutputVarµµ ºñ¿öÁý´Ï´Ù. ¿¹¸¦ µé¾î: Transform, OutputVar, Asc, %VarContainingString%. »óÀÀÇÏ´Â ÇÔ¼ö: Asc(String).

+

+Chr, Value1: Value1·Î ÁöÁ¤ÇÑ ASCII Äڵ忡 »óÀÀÇÏ´Â ¹®ÀÚ Çϳª¸¦ ¿­¶÷ÇÕ´Ï´Ù. Value1ÀÌ 1°ú 255 »çÀÌ¿¡ ÀÖÁö ¾ÊÀ¸¸é, OutputVar´Â ºñ¿öÁ®¼­ ¹®Á¦°¡ ÀÖÀ½À» ³ªÅ¸³À´Ï´Ù. ¿¹¸¦ µé¾î: Transform, OutputVar, Chr, 130. »óÀÀÇÏ´Â ÇÔ¼ö: Chr(Number).

+

+Deref, String: º¯¼ö ÂüÁ¶ ±×¸®°í ´Ù¸¥ º¯¼ö ¾È¿¡ µé¾î ÀÖ´Â ÇǽŠ¿¬¼Ó¿­À» È®´ëÇÕ´Ï´Ù. Çü½ÄÀÌ ³ª»Û º¯¼ö ÂüÁ¶´Â È®´ë °á°ú¿¡¼­ »ý·«µË´Ï´Ù. OutputVar°¡ ÀÚ½ÅÀ¸·Î È®´ëµÇ´Â °æ¿ì¿¡µµ ¸¶Âù°¡ÁöÀÔ´Ï´Ù; ´Ù¸¥ ¸»·Î, StringÀÇ º¯¼ö ¾È¿¡¼­ OutputVar¸¦ ÂüÁ¶Çϸé È®´ë °á°ú·ÎºÎÅÍ Á¦¿ÜµË´Ï´Ù (±×·¸Áö¸¸ String ÀÚü´Â %OutputVar%°¡ µÉ ¼ö ÀÖ½À´Ï´Ù). +´ÙÀ½ ¿¹Á¦¿¡¼­, var1¿¡ ¹®ÀÚ¿­ "test"°¡ ´ã°Ü ÀÖ°í var2¿¡ ±âÈ£ ±×´ë·ÎÀÇ ¹®ÀÚ¿­ "%var1%"ÀÌ ´ã°Ü ÀÖ´Ù¸é, OutputVar´Â ¹®ÀÚ¿­ "test"°¡ ¼³Á¤µÉ °ÍÀÔ´Ï´Ù: Transform, OutputVar, deref, %var2%. + +ÇÔ¼ö ¾È¿¡¼­, String ¾ÈÀÇ °¢ º¯¼ö´Â ¾ðÁ¦³ª Áö¿ª º¯¼ö·Î °áÁ¤³³´Ï´Ù. ´Ü, ±×·± º¯¼ö°¡ ¾øÀ» °æ¿ì´Â Àü¿ª º¯¼ö·Î °áÁ¤µË´Ï´Ù (¶Ç´Â ¾Æ¹«°Íµµ ¾ø´Ù¸é ºñ¿öÁý´Ï´Ù).

+

+HTML, String [, Flags]:

+

+ANSI ½ÇÇàÆÄÀÏ¿¡ ´ëÇÏ¿©: ¹®ÀÚ¿­(String)À» ±×ÀÇ HTML µ¿µî¹°·Î º¯È¯ÇÕ´Ï´Ù. ASCII °ªÀÌ 127ÀÌ ³Ñ´Â ¹®ÀÚ¸¦ »óÀÀÇÏ´Â HTML À̸§À¸·Î º¯È¯ÇÕ´Ï´Ù (¿¹, £´Â &pound;°¡ µË´Ï´Ù). °Ô´Ù°¡, ´ÙÀ½ ³× °³ÀÇ "&<> ¹®ÀÚ´Â &quot;&amp;&lt;&gt;·Î º¯È¯µË´Ï´Ù. ¸¶Áö¸·À¸·Î, °¢ ¶óÀÎÇǵå(`n)´Â <br>`nÀ¸·Î º¯È¯µË´Ï´Ù (Áï, <br> ´ÙÀ½¿¡ ¶óÀÎÇǵå). Flags ¸Å°³º¯¼ö´Â ¹«½ÃµË´Ï´Ù.

+

+À¯´ÏÄÚµå ½ÇÇàÆÄÀÏ¿¡ ´ëÇÏ¿©: À§ÀÇ ±â´É ¸»°íµµ, Flags´Â 0ÀÌ µÇ°Å³ª ¾Æ´Ï¸é ´ÙÀ½ °ªµéÀÌ Á¶ÇÕ(ÇÕ)ÀÌ µÉ ¼ö ÀÖ½À´Ï´Ù. »ý·«Çϸé, ±âº»°ªÀº 1ÀÔ´Ï´Ù.

+ +

+¿ÀÁ÷ ºñ-ASCII ¹®ÀÚ¸¸ ¿µÇâÀ» ¹Þ½À´Ï´Ù. Flags = 3À̸é, ¹øÈ£ºÙÀΠǥÇö½ÄÀº À̸§ºÙÀΠǥÇö½ÄÀÌ »ç¿ë ºÒ°¡´ÉÇÒ °æ¿ì¿¡¸¸ »ç¿ëµË´Ï´Ù. ´ÙÀ½ ¹®ÀÚµéÀº ¾ðÁ¦³ª º¯È¯µË´Ï´Ù: <>"& ±×¸®°í `n (¶óÀÎÇǵå).

+

+FromCodePage / ToCodePage: ºñÃßõ. ´ë½Å StrPut() / StrGet()À» »ç¿ëÇϽʽÿÀ.

+

+Mod, Dividend, Divisor: ³ª´µ´Â¼ö(Dividend)¸¦ ³ª´©´Â¼ö(Divisor)·Î ³ª´« ³ª¸ÓÁö¸¦ ¿­¶÷ÇÕ´Ï´Ù. Divisor°¡ 0À̸é, OutputVar´Â ºñ¿öÁý´Ï´Ù. Dividend¿Í Divisor°¡ ¸ðµÎ ¼Ò¼öÁ¡À» ´ãÀ» ¼ö ÀÖ½À´Ï´Ù. À½¼öÀ̸é, Divisor´Â °è»êÀ» À§ÇØ ¾ç¼ö·Î Ãë±ÞµË´Ï´Ù. ´ÙÀ½ ¿¹Á¦¿¡¼­, °á°ú´Â 2ÀÔ´Ï´Ù: Transform, OutputVar, mod, 5, 3. »óÀÀÇÏ´Â ÇÔ¼ö: Mod(Dividend, Divisor).

+

+Pow, Base, Exponent: ¹Ø¼ö(Base)¸¦ Áö¼ö(Exponent) Á¦°öÇÏ¿© ¿­¶÷ÇÕ´Ï´Ù. + +Base¿Í Exponent ¸ðµÎ ¼Ò¼öÁ¡À» Æ÷ÇÔÇÒ ¼ö ÀÖ½À´Ï´Ù. Exponent°¡ À½¼öÀ̸é, OutputVar´Â ºÎµ¿ ¼Ò¼öÁ¡ ¼ö·Î Æ÷¸ËµË´Ï´Ù. Base¿Í Exponent µÑ ´Ù Á¤¼ö¶óµµ ¸¶Âù°¡ÁöÀÔ´Ï´Ù. 1.5¿Í °°ÀÌ ¼Ò¼öÇü Áö¼ö(Exponent)¿Í °áÇÕµÈ À½ÀÇ Base´Â Áö¿øÇÏÁö ¾Ê½À´Ï´Ù; ±×·¯¸é OutputVar°¡ ºñ¿öÁý´Ï´Ù. ¶Ç ´ÙÀ½µµ ÂüÁ¶ÇϽʽÿÀ: ** operator.

+

+Exp, N: e¸¦ (´ë·« 2.71828182845905) N Á¦°öÇØ ¿­¶÷ÇÕ´Ï´Ù. NÀº À½¼öÀÏ ¼ö ÀÖÀ¸¸ç ¼Ò¼ö Á¡À» Æ÷ÇÔÇÒ ¼ö ÀÖ½À´Ï´Ù. »óÀÀÇÏ´Â ÇÔ¼ö: Exp(N).

+

+Sqrt, Value1: Value1ÀÇ Á¦°ö±ÙÀ» ±¸ÇÕ´Ï´Ù. Value1°¡ À½¼öÀ̸é, OutputVar´Â ºñ¿öÁý´Ï´Ù. »óÀÀÇÏ´Â ÇÔ¼ö: Sqrt(Number).

+

+Log, Value1: Value1ÀÇ (¹Ø¼ö°¡ 10ÀÎ) »ó¿ë ·Î±×¸¦ ±¸ÇÕ´Ï´Ù. Value1°¡ À½¼öÀ̸é, OutputVar´Â ºñ¿öÁý´Ï´Ù. »óÀÀÇÏ´Â ÇÔ¼ö: Log(Number).

+

+Ln, Vaue1: Value1ÀÇ (¹Ø¼ö°¡ eÀÎ) ÀÚ¿¬ ·Î±×¸¦ ¿­¶÷ÇÕ´Ï´Ù. Value1ÀÌ À½¼öÀ̸é, OutputVar´Â ºñ¿öÁý´Ï´Ù. »óÀÀÇÏ´Â ÇÔ¼ö: Ln(Number).

+

+Round, Value1 [, N]: NÀ» »ý·«Çϸé, OutputVar´Â Value1ÀÌ °¡Àå °¡±î¿î Á¤¼ö·Î ¹Ý¿Ã¸²µÇ¾î ¼³Á¤µË´Ï´Ù. NÀÌ ¾ç¼öÀ̸é, Value1Àº N ¼Ò¼öÁ¡ ÀÚ¸®¿¡¼­ ¹Ý¿Ã¸²µË´Ï´Ù. NÀÌ À½¼öÀ̸é, Value1´Â N ÀÚ¸®¸¸Å­ ¼Ò¼öÁ¡ ¿ÞÂÊ¿¡¼­ ¹Ý¿Ã¸²µË´Ï´Ù. ¿¹¸¦ µé¾î, -1À̸é ù ° ÀÚ¸®¿¡¼­ ¹Ý¿Ã¸²µÇ°í, -2À̸é 10ÀÌ ÀÚ¸®¿¡¼­, ±×¸®°í -3ÀÌ¸é ¹éÀÇ ÀÚ¸®¿¡¼­ ¹Ý¿Ã¸²µË´Ï´Ù. ÁÖÀÇ: Round´Â ¼Ò¼ö ÀÚ¸®¿¡¼­ ¹Ý¿Ã¸²ÇÒ ¶§ µÚ¿¡ µû¸£´Â 0À» Á¦°ÅÇÏÁö ¾Ê½À´Ï´Ù. ¿¹¸¦ µé¾î, 12.333À» ¼Ò¼ö ù ° ÀÚ¸®¿¡¼­ ¹Ý¿Ã¸²Çϸé 12.300000ÀÌ µË´Ï´Ù. ÀÌ ÇàÀ§´Â ¿¬»êÀ» Çϱâ Àü¿¡SetFormat, Float, 0.1°ú °°ÀÌ ¼³Á¤ÇÏ¸é ¹Ù²Ü ¼ö ÀÖ½À´Ï´Ù (½ÇÁ¦·Î, SetFormatÀ» »ç¿ëÇϸé ù ° ÀÚ¸®¿¡¼­ Round¸¦ »ç¿ëÇÒ ÇÊ¿äÁ¶Â÷ ¾ø½À´Ï´Ù). »óÀÀÇÏ´Â ÇÔ¼ö: Round(Number [, N]).

+

+Ceil, Value1: Value1À» °¡Àå °¡±î¿î Á¤¼ö·Î ¿Ã¸²ÇÏ¿© ¿­¶÷ÇÕ´Ï´Ù. »óÀÀÇÏ´Â ÇÔ¼ö: Ceil(Number).

+

+Floor, Value1: Value1À» °¡Àå °¡±î¿î Á¤¼ö·Î ³»¸²ÇÏ¿© ¿­¶÷ÇÕ´Ï´Ù. »óÀÀÇÏ´Â ÇÔ¼ö: Floor(Number).

+

+Abs, Value1: Value1ÀÇ Àý´ë °ªÀ» ¿­¶÷ÇÕ´Ï´Ù. Value1¿¡¼­ ¸¶À̳ʽº°¡ ¾Õ¿¡ ÀÖ´Ù¸é Á¦°ÅÇØ ¹ö¸®°í µ¹·ÁÁÝ´Ï´Ù. »óÀÀÇÏ´Â ÇÔ¼ö: Abs(Number).

+

+Sin, Value1: Value1ÀÇ »çÀÎ °ªÀ» ¿­¶÷ÇÕ´Ï´Ù. Value1Àº È£µµ·Î Ç¥ÇöµÇ¾î¾ß ÇÕ´Ï´Ù. »óÀÀÇÏ´Â ÇÔ¼ö: Sin(Number).

+

+Cos, Value1: Value1ÀÇ ÄÚ»çÀÎ °ªÀ» ¿­¶÷ÇÕ´Ï´Ù. Value1Àº È£µµ·Î Ç¥ÇöµÇ¾î¾ß ÇÕ´Ï´Ù. »óÀÀÇÏ´Â ÇÔ¼ö: Cos(Number).

+

+Tan, Value1: em>Value1ÀÇ ÅºÁ¨Æ® °ªÀ» ¿­¶÷ÇÕ´Ï´Ù. Value1Àº È£µµ·Î Ç¥ÇöµÇ¾î¾ß ÇÕ´Ï´Ù. »óÀÀÇÏ´Â ÇÔ¼ö: Tan(Number).

+

+ASin, Value1: È£µµ ´ÜÀ§·Î ¾ÆÅ©»çÀÎ °ªÀ» ¿­¶÷ÇÕ´Ï´Ù (Value1Àº »çÀÎ °ª). +Value1°¡ -1º¸´Ù À۰ųª 1º¸´Ù Å©¸é, OutputVar´Â ºñ¿öÁý´Ï´Ù. »óÀÀÇÏ´Â ÇÔ¼ö: ASin(Number).

+

+ACos, Value1: È£µµ ´ÜÀ§·Î ¾ÆÅ©ÄÚ»çÀÎÀ» ¿­¶÷ÇÕ´Ï´Ù (Value1Àº ÄÚ»çÀÎ °ª). +Value1ÀÌ -1º¸´Ù À۰ųª 1º¸´Ù Å©¸é, OutputVar´Â ºñ¿öÁý´Ï´Ù. »óÀÀÇÏ´Â ÇÔ¼ö: ACos(Number).

+

+ATan, Value1: È£µµ ´ÜÀ§·Î ¾ÆũźÁ¨Æ®¸¦ ¿­¶÷ÇÕ´Ï´Ù (Value1Àº źÁ¨Æ® °ª). »óÀÀÇÏ´Â ÇÔ¼ö: ATan(Number).

+
+

+ÁÖÀÇ: ´ÙÀ½ÀÇ ºñÆ®º° ¿¬»êÀº Ç¥Çö½Ä¿¡ »ç¿ëÇϱâ À§ÇØ ´õ °£°áÇÑ ºñÆ®º° ¿¬»êÀÚ¸¦ °¡Áö°í ÀÖ½À´Ï´Ù.

+

+BitNot, Value1: Value1À» ºñÆ®º°·Î µÚÁý¾î¼­ OutputVar¿¡ ÀúÀåÇÕ´Ï´Ù (Value1ÀÌ ºÎµ¿ ¼Ò¼öÁ¡ ¼öÀ̸é, °è»ê Àü¿¡ Á¤¼ö·Î À߶ó³À´Ï´Ù). + +Value1ÀÌ 0ºÎÅÍ 4294967295 (0xffffffff) »çÀÌÀ̸é, ºÎÈ£ ¾ø´Â 32-ºñÆ® °ªÀ¸·Î Ãë±ÞµË´Ï´Ù. ±×·¸Áö ¾ÊÀ¸¸é ºÎÈ£ ÀÖ´Â 64-ºñÆ® °ªÀ¸·Î Ãë±ÞµË´Ï´Ù. ´ÙÀ½ ¿¹Á¦¿¡¼­, ±× °á°ú´Â 0xfffff0f0 (4294963440)ÀÔ´Ï´Ù: Transform, OutputVar, BitNot, 0xf0f.

+

+BitAnd, Value1, Value2: Value1°ú Value2¸¦ ºñÆ®º°-ANDÇÑ °á°ú¸¦ ¿­¶÷ÇÕ´Ï´Ù (ºÎµ¿ ¼Ò¼öÁ¡ °ªÀº °è»ê Àü¿¡ Á¤¼ö·Î Àß·Á ³ª°©´Ï´Ù). ´ÙÀ½ ¿¹Á¦¿¡¼­, ±× °á°ú´Â 0xff00 (65280)ÀÔ´Ï´Ù: Transform, OutputVar, BitAnd, 0xff0f, 0xfff0.

+

+BitOr, Value1, Value2: Value1°ú Value2¸¦ ºñÆ®º°-ORÇÑ °á°ú¸¦ ¿­¶÷ÇÕ´Ï´Ù (ºÎµ¿ ¼Ò¼öÁ¡ °ªÀº Á¤¼ö·Î Àß¶ó ³½ ´ÙÀ½ °è»êÇÕ´Ï´Ù). ´ÙÀ½ ¿¹Á¦¿¡¼­ ±× °á°ú´Â 0xf0f0 (61680)ÀÔ´Ï´Ù: Transform, OutputVar, BitOr, 0xf000, 0x00f0.

+

+BitXOr, Value1, Value2:Value1°í Value2¸¦ ºñÆ®º°-EXCLUSIVE-ORÇÑ °á°ú¸¦ ¿­¶÷ÇÕ´Ï´Ù (ºÎµ¿ ¼Ò¼öÁ¡ °ªÀº Á¤¼ö·Î Àß¶ó³½ ´ÙÀ½ °è»êÇÕ´Ï´Ù). ´ÙÀ½ ¿¹Á¦¿¡¼­ ±× °á°ú´Â 0xff00 (65280)ÀÔ´Ï´Ù: Transform, OutputVar, BitXOr, 0xf00f, 0x0f0f.

+

+BitShiftLeft, Value1, Value2: Value1À» ¿ÞÂÊÀ¸·Î Value2 ºñÆ® À§Ä¡ ¸¸Å­ À̵¿ÇÑ °á°ú¸¦ ¿­¶÷ÇÕ´Ï´Ù. ÀÌ °ªÀº Value1À» "Value2 Á¦°ö¸¸Å­ °öÇÑ" °Í°ú µ¿µîÇÕ´Ï´Ù. +(ºÎµ¿ ¼Ò¼öÁ¡ °ªÀº Á¤¼ö·Î Àß¶ó³½ ´ÙÀ½ °è»êÇÕ´Ï´Ù). ´ÙÀ½ ¿¹Á¦¿¡¼­ ±× °á°ú´Â 8ÀÔ´Ï´Ù: Transform, OutputVar, BitShiftLeft, 1, 3.

+

+BitShiftRight, Value1, Value2: Value1À» ¿À¸¥ÂÊÀ¸·Î Value2 ºñÆ® À§Ä¡¸¸Å­ À̵¿ÇÑ °á°ú¸¦ ¿­¶÷ÇÕ´Ï´Ù. ÀÌ °ªÀº Value1À» " Value2 Á¦°ö¸¸Å­ ³ª´«" °Í°ú µ¿µîÇÕ´Ï´Ù. ³ª¸ÓÁö´Â Àß¶ó³» ¹ö¸³´Ï´Ù. +(ºÎµ¿ ¼Ò¼öÁ¡ °ªÀº Á¤¼ö·Î Àß¶ó³½ ´ÙÀ½ °è»êÇÕ´Ï´Ù). ´ÙÀ½ ¿¹Á¦¿¡¼­ ±× °á°ú´Â 2ÀÔ´Ï´Ù: Transform, OutputVar, BitShiftRight, 17, 3.

+ +

³íÆò

+

+¼ýÄ¡ ¸Å°³º¯¼ö¸¦ ¹Þ´Â ºÎ-¸í·É¾î´Â ±×·± ¸Å°³º¯¼ö¿¡ ´ëÇÏ¿© Ç¥Çö½Äµµ ¹ÞÀ» ¼ö ÀÖ½À´Ï´Ù.

+

+Value1 ¶Ç´Â Value2°¡ ºÎµ¿ ¼Ò¼öÁ¡ ¼öÀ̸é, ´ÙÀ½ ¸í·É¾î(Cmd)µéÀº Á¤¼ö°¡ ¾Æ´Ï¶ó ºÎµ¿ ¼Ò¼öÁ¡ ¼ö¸¦ ¿­¶÷ÇÕ´Ï´Ù: Mod, Pow, Round, ±×¸®°í Abs. ¿­¶÷µÈ ¼Ò¼ö ºÎºÐÀÇ ÀÚ¸®¼ö´Â SetFormatÀ¸·Î °áÁ¤µË´Ï´Ù.

+

+È£µµ °ªÀ» °¢µµ·Î º¯È¯ÇÏ·Á¸é, 180/pi (´ë·« 57.29578)¸¦ °öÇϽʽÿÀ. °¢µµ¸¦ È£µµ·Î º¯È¯ÇÏ·Á¸é pi/180 (´ë·« 0.01745329252)¸¦ °öÇϽʽÿÀ.

+

+piÀÇ °ªÀº (´ë·« 3.141592653589793) 1 ¾ÆũźÁ¨Æ®ÀÇ 4 ¹èÀÔ´Ï´Ù.

+ +

°ü·Ã Ç׸ñ

+

+SetFormat, Ç¥Çö½Ä, EnvMult, EnvDiv, StringLower, if var is type

+ +

¿¹Á¦

+
Transform, OutputVar, Asc, A  ; ±âÈ£ AÀÇ ASCII Äڵ带 ¾ò½À´Ï´Ù.
+ + + diff --git a/src/docs/commands/TrayTip.htm b/src/docs/commands/TrayTip.htm new file mode 100644 index 0000000..4fd64fb --- /dev/null +++ b/src/docs/commands/TrayTip.htm @@ -0,0 +1,91 @@ + + + + +TrayTip + + + + + + + +

TrayTip

+ +

Æ®·¹ÀÌ ¾ÆÀÌÄÜ ±Ùó¿¡ dz¼± ¸Þ½ÃÁö âÀ» »ý¼ºÇÕ´Ï´Ù.

+ +
TrayTip [, Title, Text, Seconds, Options]
+

¸Å°³º¯¼ö

+
+ +
Title
+

¸Å°³º¯¼ö¸¦ ¸ðµÎ »ý·«Çϸé, ÇöÀç º¸¿©Áö´Â TrayTip âÀÌ Á¦°ÅµË´Ï´Ù.

+

±×·¸Áö ¾ÊÀ¸¸é, ÀÌ ¸Å°³º¯¼ö´Â âÀÇ Á¦¸ñÀ¸·Î¼­, 73 ¹®ÀÚ±îÁö Çã¿ëµË´Ï´Ù (ÀÌ ±æÀ̸¦ ³Ñ¾î°£ ¹®ÀÚ´Â º¸ÀÌÁö ¾Ê½À´Ï´Ù).

+

+ TitleÀÌ ºñ¾î ÀÖÀ¸¸é, Á¦¸ñ ÁÙÀº ¿ÏÀüÈ÷ dz¼± âÀ¸·ÎºÎÅÍ Á¦°ÅµÇ°í, ±× ¶§¹®¿¡ ¼öÁ÷À¸·Î ´õ ª°Ô µË´Ï´Ù.

+ +
Text
+

ÀÌ ¸Å°³º¯¼ö¸¦ »ý·«Çϰųª ºñ¾î ÀÖÀ¸¸é, ÇöÀç º¸¿©Áö´Â TrayTip âÀÌ Á¦°ÅµË´Ï´Ù.

+

±×·¸Áö ¾ÊÀ¸¸é, º¸¿©ÁÙ ¸Þ½ÃÁö¸¦ ÁöÁ¤ÇϽʽÿÀ. Title ¾Æ·¡¿¡ ³ªÅ¸³³´Ï´Ù. TextÀÇ ¾ÕÂÊ 265 °³ÀÇ ¹®ÀÚ¸¸ º¸ÀÔ´Ï´Ù. ij¸®Áö ¸®ÅÏ (`r) ¶Ç´Â ¶óÀÎÇǵå (`n)¸¦ »ç¿ëÇÏ¸é ¿©·¯ ÁÙÀÇ ÅؽºÆ®¸¦ ¸¸µé ¼ö ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î: Line1`nLine2.

+

+ Text°¡ ±æ¸é, °è¼Ó ¼½¼ÇÀ» ¼ö´ÜÀ¸·Î ´õ ªÀº ÁÙ·Î °¡¸¦ ¼ö ÀÖ½À´Ï´Ù. ±×·¯¸é °¡µ¶¼º°ú À¯Áö°ü¼ºÀÌ ´õ¿í Çâ»óµÉ °ÍÀÔ´Ï´Ù.

+
+ +
Seconds
+

âÀ» º¸¿©ÁÙ ´ë·«ÀûÀÎ ÃÊÀÇ °³¼ö. ±× ÀÌÈÄ´Â ÀÚµ¿À¸·Î OS°¡ Á¦°ÅÇÕ´Ï´Ù. 10º¸´Ù À۰ųª 30º¸´Ù Å©¸é ´ë½Å¿¡ º¸Åë ÃÖ¼Ò ½Ã°£ (10) ¶Ç´Â ÃÖ´ë ½Ã°£ (30)À» º¸¿©ÁÖ´Â ½Ã°£À¸·Î »ç¿ëµË´Ï´Ù. ºñ¾î Àְųª »ý·«Çϸé, ÃÖ¼Ò ½Ã°£ÀÌ º¸Åë »ç¿ëµË´Ï´Ù. ÀÌ ¸Å°³º¯¼ö´Â Ç¥Çö½ÄÀÏ ¼ö ÀÖ½À´Ï´Ù.

+

+ ½ÇÁ¦ ½Ã°£Á¦ÇÑÀº ÁöÁ¤ÇÑ ½Ã°£°ú ´Ù¸¦ ¼ö ÀÖ½À´Ï´Ù. ¸¶ÀÌÅ©·Î¼ÒÇÁÆ®»çÀÇ ¼³¸í¿¡ ÀÇÇϸé, "»ç¿ëÀÚ°¡ ÄÄÇ»Å͸¦ »ç¿ëÇÏ°í ÀÖ´Â µí º¸À̸é, ½Ã½ºÅÛÀº ½Ã°£Á¦ÇÑÀ» ÇâÇÏ¿© ÀÌ ½Ã°£À» ¼¼Áö ¾Ê½À´Ï´Ù." (±â¼úÀûÀÎ »ó¼¼´Â ¿©±â¸¦ ÂüÁ¶ÇϽʽÿÀ). ±×·¯¹Ç·Î, ¾ó¸¶³ª ¿À·§µ¿¾È TrayTipÀ» º¸¿©ÁÙ Áö Á¤¹ÐÇÏ°Ô Á¦¾îÇÏ·Á¸é, Sleep ¸í·É¾î ´ÙÀ½¿¡ ¸Å°³º¯¼ö ¾øÀÌ TrayTipÀ» »ç¿ëÇϰųª, ¾Æ´Ï¸é ¾Æ·¡ÀÇ ¿¹Á¦ ¼½¼Ç¿¡¼­ ½Ã¿¬ÇϵíÀÌ SetTimer¸¦ »ç¿ëÇϽʽÿÀ.

+
+ +
Options
+

Options ¸Å°³º¯¼ö´Â ´ÙÀ½ °ªµéÀÇ Á¶ÇÕ(ÇÕ)ÀÏ ¼ö ÀÖ½À´Ï´Ù:

+ + + + + + + +
±â´É½ÊÁø °ª½ÊÀ°Áø °ª
Á¤º¸(Info) ¾ÆÀÌÄÜ10x1
°æ°í(Warning) ¾ÆÀÌÄÜ20x2
¿¡·¯(Error) ¾ÆÀÌÄÜ30x3
Windows XP ÀÌÈÄ: °íÁö »ç¿îµå¸¦ ¿¬ÁÖÇÏÁö ¾Ê½À´Ï´Ù.160x10
Windows Vista ÀÌÈÄ: Å« ¹öÀüÀÇ ¾ÆÀÌÄÜÀ» »ç¿ëÇÕ´Ï´Ù.320x20
+

»ý·«ÇÏ¸é ±âº»°ªÀº 0ÀÌ°í, ÀÌ°ÍÀº ¾ÆÀÌÄÜÀÌ ¾ø´Ù´Â ¶æÀÔ´Ï´Ù. ¾ÆÀÌÄÜÀº TitleÀÌ »ý·«µÇ¸é º¸ÀÌÁö ¾Ê½À´Ï´Ù.

+

ÀÌ ¸Å°³º¯¼ö´Â Ç¥Çö½ÄÀÏ ¼ö ÀÖ½À´Ï´Ù.

+
+ +
+

³íÆò

+

+TrayTip dz¼± âÀº ½ºÅ©¸³Æ®¿¡ (#NoTrayIcon ¶Ç´Â Menu, tray, NoIconÀ» »ç¿ëÇØ) Æ®·¹ÀÌ ¾ÆÀÌÄÜÀÌ ¾øÀ¸¸é º¸ÀÌÁö ¾Ê½À´Ï´Ù. ºñ½ÁÇÏ°Ô, ´ÙÀ½ REG_DWORD °ªÀÌ Á¸ÀçÇÏ°í 0À¸·Î ¼³Á¤µÇ¾î ÀÖÀ¸¸é, TrayTipÀº ÀÛµ¿ÇÏÁö ¾Ê½À´Ï´Ù:

+ +
HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced >> EnableBalloonTips
+

+°ü·ÃÇÏ¿© ¸»¾¸ µå¸®ÀÚ¸é, »ç¿ëÀÚ°¡ ¸¶¿ì½º¸¦ ½ºÅ©¸³Æ®ÀÇ Æ®·¹ÀÌ ¾ÆÀÌÄÜ À§¿¡ ¿Ã¸± ¶§¸¶´Ù ÅøÆÁÀÌ º¸¿©Áý´Ï´Ù. ÀÌ ÅøÆÁÀÇ ³»¿ëÀº ´ÙÀ½°ú °°ÀÌ ¹Ù²Ü ¼ö ÀÖ½À´Ï´Ù: Menu, Tray, Tip, My New Text.

+ +

°ü·Ã Ç׸ñ

+

ToolTip, SetTimer, Menu, SplashTextOn, MsgBox, InputBox, FileSelectFile, FileSelectFolder

+ +

¿¹Á¦

+
TrayTip, My Title, Multiline`nText, 20, 17
+
+; (ÇöÀç ¾²·¹µå¸¦ ¸ØÃß´Â) SleepÀ» »ç¿ëÇÒ ÇÊ¿ä ¾øÀÌ
+; º¸¿©ÁÖ´Â ½Ã°£À» ´õ Á¤¹ÐÇÏ°Ô Á¦¾îÇÏ·Á¸é:
+#Persistent
+TrayTip, Timed TrayTip, ÀÌ°ÍÀº 5 ÃÊ°£ È­¸é¿¡ º¸¿©Áý´Ï´Ù.
+SetTimer, RemoveTrayTip, 5000
+return
+
+RemoveTrayTip:
+SetTimer, RemoveTrayTip, Off
+TrayTip
+return
+
+; TrayTipÀ» ¿µ¿øÈ÷ º¸¿©ÁÖ·Á¸é, ŸÀ̸Ӹ¦ »ç¿ëÇÏ¿© ÁÖ±âÀûÀ¸·Î °»½ÅÇϽʽÿÀ:
+SetTimer, RefreshTrayTip, 1000
+Gosub, RefreshTrayTip  ; ÇÑ ¹ø¸¸ È£ÃâÇϸé Áï½Ã ½ÃÀÛÇÕ´Ï´Ù.
+return
+
+RefreshTrayTip:
+TrayTip, Refreshed TrayTip, ÀÌ°ÍÀº °ÅÀÇ ¿µ±¸ÀûÀÎ TrayTipÀÔ´Ï´Ù., , 16
+return
+ + + diff --git a/src/docs/commands/TreeView.htm b/src/docs/commands/TreeView.htm new file mode 100644 index 0000000..0438679 --- /dev/null +++ b/src/docs/commands/TreeView.htm @@ -0,0 +1,367 @@ + + + + +TreeView (GUI) + + + + + + + + +

TreeView [v1.0.44+]

+ +

¸ñÂ÷

+ +

°£´ÜÇÑ ¿¹Á¦¿Í ¼Ò°³

+

+Tree-View´Â °èÅëÀû Ç׸ñµéÀ» ºÎ¸ð ¾Æ·¡ÀÇ ÀÚ¼ÕµéÀº ÇÑ ´Ü°è µé¿© ³Ö¾î º¸¿©ÁÝ´Ï´Ù. °¡Àå ÈçÇÑ ¿¹´Â ÀͽºÇ÷η¯ÀÇ µå¶óÀ̺ê¿Í Æú´õ Æ®¸®ÀÔ´Ï´Ù.

+

+TreeView¸¦ »ý¼ºÇÏ´Â ±¸¹®Àº ´ÙÀ½°ú °°½À´Ï´Ù:

+ +
Gui, Add, TreeView, Options
+

+´ÙÀ½ ½ºÅ©¸³Æ®´Â °£´ÜÇÑ °èÅëÀû Ç׸ñµéÀ» »ý¼ºÇÏ°í º¸¿©ÁÝ´Ï´Ù:

+ +
Gui, Add, TreeView
+P1 := TV_Add("First parent")
+P1C1 := TV_Add("Parent 1's first child", P1)  ; P1À» ÀÌ Ç׸ñÀÇ ºÎ¸ð·Î ÁöÁ¤ÇÕ´Ï´Ù.
+P2 := TV_Add("Second parent")
+P2C1 := TV_Add("Parent 2's first child", P2)
+P2C2 := TV_Add("Parent 2's second child", P2)
+P2C2C1 := TV_Add("Child 2's first child", P2C2)
+
+Gui, Show  ; â°ú ±×ÀÇ TreeView¸¦ º¸¿©ÁÝ´Ï´Ù.
+return
+
+GuiClose:  ; »ç¿ëÀÚ°¡ TreeViewÀÇ GUI âÀ» ´ÝÀ¸¸é ½ºÅ©¸³Æ®¸¦ Á¾·áÇÕ´Ï´Ù.
+ExitApp
+ +

"Gui, Add, TreeView, Options"¿¡ ´ëÇÑ ¿É¼Ç°ú ½ºÅ¸ÀÏ

+

+AltSubmit: ½ºÅ©¸³Æ®¿¡ Á¤»óº¸´Ù ´õ ¸¹Àº À¯ÇüÀÇ TreeView À̺¥Æ®¿¡ ´ëÇÏ¿© °íÁöÇÕ´Ï´Ù. ´Ù¸¥ ¸»·Î, g-¶óº§ÀÌ ´õ ÀÚÁÖ ±âµ¿ÇÕ´Ï´Ù. ÀÚ¼¼ÇÑ °ÍÀº TreeView NotificationsÀ» ÂüÁ¶ÇϽʽÿÀ.

+

+Background: ´Ü¾î Background¿Í ´ÙÀ½¿¡ ¹Ù·Î Ä÷¯ À̸§À» ÁöÁ¤Çϰųª (Ä÷¯ Â÷Æ® ÂüÁ¶) RGB °ªÀ» ÁöÁ¤ÇϽʽÿÀ (0x Á¢µÎ»ç´Â ¼±ÅÃÀûÀÔ´Ï´Ù). ¿¹Á¦: BackgroundSilver, BackgroundFFDD99. ÀÌ ¿É¼ÇÀÌ Á¸ÀçÇÏÁö ¾ÊÀ¸¸é, TreeView´Â óÀ½¿¡ ±âº»°ªÀÌ. Gui ColorÀÇ ¸¶Áö¸· ¸Å°³º¯¼ö·Î ¼³Á¤µÈ ¹è°æ»öÀÔ´Ï´Ù (¶Ç´Â ¾øÀ¸¸é, ½Ã½ºÅÛÀÇ ±âº» ¹è°æ »öÀÔ´Ï´Ù). BackgroundDefault¸¦ ÁöÁ¤ÇÏ¸é ½Ã½ºÅÛÀÇ ±âº» ¹è°æ»öÀÌ Àû¿ëµË´Ï´Ù (º¸Åë Èò»ö). ¿¹¸¦ µé¾î, GuiControl, +BackgroundDefault, MyTreeView¸¦ ÅëÇÏ¿© TreeView¸¦ ±âº»°ªÀ¸·Î º¹±¸ÇÒ ¼ö ÀÖ½À´Ï´Ù.

+

+Buttons: -Buttons (¸¶À̳ʽº ¹öÆ°)À» ÁöÁ¤Çϸé Ç÷¯½º³ª ¸¶À̳ʽº »çÀÎÀÌ ÀÚ¼ÕÀÌ ÀÖ´Â °¢ Ç׸ñÀÇ ¿ÞÂÊ¿¡ ³ªÅ¸³ª´Â °ÍÀ» ¸·À» ¼ö ÀÖ½À´Ï´Ù.

+

+C: ÅؽºÆ® Ä÷¯. ±âÈ£ C ´ÙÀ½¿¡ Áï½Ã Ä÷¯ À̸§ (Ä÷¯ Â÷Æ® ÂüÁ¶) ¶Ç´Â RGB °ªÀ» ÁöÁ¤ÇϽʽÿÀ (0x Á¢µÎ»ç´Â ¼±ÅÃÀûÀÔ´Ï´Ù). ¿¹¸¦ µé¾î: cRed, cFF2211, c0xFF2211, cDefault.

+

+Checked: °¢ Ç׸ñÀÇ ¿ÞÂÊ¿¡ üũ¹Ú½º¸¦ Á¦°øÇÕ´Ï´Ù. Ç׸ñÀ» Ãß°¡ÇÒ ¶§, ´Ü¾î Check¸¦ ±×ÀÇ ¿É¼Ç¿¡ ÁöÁ¤ÇÏ¸é ¹Ú½º¸¦ üũÇÑ »óÅ·Π½ÃÀÛÇÒ ¼ö ÀÖ½À´Ï´Ù. »ç¿ëÀڴ üũ¹Ú½ºÅ©¸¦ Ŭ¸¯Çϰųª ½ºÆäÀ̽º¸¦ ¹Ù¸¦ ´­·¯ Ç׸ñÀ» üũÇϰųª ÇØÁ¦ÇÒ ¼ö ÀÖ½À´Ï´Ù. ¾î´À Ç׸ñÀÌ ÇöÀç TreeView¿¡ üũµÇ¾î ÀÖ´ÂÁö ¾Ë¾Æ º¸·Á¸é, TV_GetNext() ¶Ç´Â TV_Get()À» È£ÃâÇϽʽÿÀ.

+

+HScroll: -HScroll (¸¶À̳ʽº HScroll)À» ÁöÁ¤ÇÏ¸é ¼öÆò ½ºÅ©·ÑÀ» ºÒ´ÉÀ¸·Î ¸¸µé ¼ö ÀÖ½À´Ï´Ù (°Ô´Ù°¡, ÄÜÆ®·ÑÀº ¼öÆò ¹Ù¸¦ º¸¿©ÁÖÁö ¾Ê½À´Ï´Ù).

+

+ImageList: ÀÌ ¹æ¹ýÀ¸·Î ¾ÆÀÌÄÜÀ» TreeView¿¡ Ãß°¡ÇÕ´Ï´Ù. ´Ü¾î ImageList ´ÙÀ½¿¡ ¹Ù·Î ÀÌÀü¿¡ IL_Create()¸¦ È£ÃâÇØ µ¹·Á ¹ÞÀº ImageListID¸¦ ÁöÁ¤ÇϽʽÿÀ. ÀÌ ¿É¼ÇÀº TreeView¸¦ »ý¼ºÇÒ ¶§¿¡¸¸ È¿°ú°¡ ÀÖ½À´Ï´Ù (±×·¸Áö¸¸, TV_SetImageList()´Â ÀÌ Á¦ÇÑÀÌ ¾ø½À´Ï´Ù). ´ÙÀ½Àº ÀÛµ¿ÇÏ´Â ¿¹Á¦ÀÔ´Ï´Ù:

+ +
ImageListID := IL_Create(10)  ; ÃÖÃÊ °¡¿ë´É·ÂÀÌ 10°³ÀÇ ¾ÆÀÌÄÜÀÎ ImageList¸¦ »ý¼ºÇÕ´Ï´Ù.
+Loop 10  ; ImageList¿¡ Ç¥ÁØ ½Ã½ºÅÛ ¾ÆÀÌÄÜÀ» ÀûÀçÇÕ´Ï´Ù.
+    IL_Add(ImageListID, "shell32.dll", A_Index)
+Gui, Add, TreeView, ImageList%ImageListID%
+TV_Add("Name of Item", 0, "Icon4")  ; Ç׸ñÀ» TreeView¿¡ Ãß°¡ÇÏ°í °Å±â¿¡ Æú´õ ¾ÆÀÌÄÜÀ» ºÎ¿©ÇÕ´Ï´Ù.
+Gui Show
+

+Lines: -Lines (¸¶À̳ʽº Lines)¸¦ ÁöÁ¤ÇÏ¸é ºÎ¸ð Ç׸ñÀ» ÀÚ¼Õ Ç׸ñ°ú ¿¬°áÇÏ´Â ÁÙµéÀ» º¸¿©ÁÖÁö ¾Ê½À´Ï´Ù. ±×·¸Áö¸¸, ÀÌ ÁÙÀ» Á¦°ÅÇϸé ÃÖ»óÀ§ ·¹º§ÀÇ Ç׸ñ¿¡ Ç÷¯½º/¸¶À̳ʽº ¹öÆ°µµ º¸ÀÌÁö ¾Ê°Ô µË´Ï´Ù.

+

+ReadOnly: -ReadOnly (¸¶À̳ʽº ReadOnly)¸¦ ÁöÁ¤ÇÏ¸é °¢ Ç׸ñÀÇ ÅؽºÆ®/À̸§ÀÇ ÆíÁýÀ» Çã¿ëÇÕ´Ï´Ù. Ç׸ñÀ» ÆíÁýÇÏ·Á¸é, ¼±ÅÃÇÑ ´ÙÀ½ F2 Å°¸¦ ´©¸£½Ê½Ã¿À. ´Ù¸¥ ¹æ¹ýÀ¸·Î, Ç׸ñÀ» ÇÑ ¹ø Ŭ¸¯ÇÏ¿© ¼±ÅÃÇÒ ¼ö ÀÖ½À´Ï´Ù. ¾à ¹ÝÃÊ ±â´Ù¸° ´ÙÀ½, °°Àº Ç׸ñÀ» ´Ù½Ã Ŭ¸¯ÇØ ÆíÁýÇÒ ¼ö ÀÖ½À´Ï´Ù. ÆíÁýÀÌ ³¡³­ ÈÄ, Ç׸ñÀº ´ÙÀ½ ¿¹Á¦¸¦ ÅëÇÏ¿© ±×ÀÇ ÇüÁ¦µé »çÀÌ¿¡ ¾ËÆĺª ¼ø¼­·Î Àç¹èÄ¡µË´Ï´Ù:

+ +
Gui, Add, TreeView, -ReadOnly gMyTree
+; ...
+MyTree:
+if (A_GuiEvent == "e")  ; »ç¿ëÀÚ°¡ Ç׸ñ ÆíÁýÀ» ¸¶ÃƽÀ´Ï´Ù (´ë¼Ò¹®ÀÚ¸¦ ±¸ºÐÇØ ºñ±³ÇÕ´Ï´Ù).
+    TV_Modify(TV_GetParent(A_EventInfo), "Sort")  ; ÀÌ°ÍÀº ÆíÁý Ç׸ñ¿¡ ºÎ¸ð°¡ ¾ø´õ¶óµµ ÀÛµ¿ÇÕ´Ï´Ù.
+return
+

+R: ÁÙ ³ôÀÌ (»ý¼º½Ã). ±âÈ£ R ´ÙÀ½¿¡ Áï½Ã ÄÜÆ®·Ñ ¾È¿¡ ¿©À¯¸¦ µÑ ÁÙÀÇ °³¼ö¸¦ ÁöÁ¤ÇÕ´Ï´Ù. ¿¹¸¦ µé¾î, R10À̸é ÄÜÆ®·ÑÀ» 10°³ÀÇ Ç׸ñ ³ôÀÌ·Î ¸¸µì´Ï´Ù.

+

+WantF2: -WantF2 (¸¶À̳ʽº WantF2)¸¦ ÁöÁ¤Çϸé F2 Å°´­¸²À¸·Î ÇöÀç ¼±ÅÃµÈ Ç׸ñÀ» ÆíÁýÇÏÁö ¸øÇϵµ·Ï ¸·½À´Ï´Ù. ÀÌ ¼³Á¤Àº -ReadOnlyµµ ÄÑÁ® ÀÖÁö ¾Ê´Â ÇÑ ¹«½ÃµË´Ï´Ù. ÀÌ ¼³Á¤¿¡ »ó°ü¾øÀÌ, g-¶óº§Àº ¿©ÀüÈ÷ F2 °íÁö¸¦ ¹Þ½À´Ï´Ù.

+

+(À̸§¾ø´Â ¼ýÀÚ ½ºÅ¸ÀÏ): À§¿¡ ¾ð±ÞµÈ ½ºÅ¸ÀÏ ¸»°í´Â ´Ù¸¥ ½ºÅ¸ÀÏÀº °ÅÀÇ »ç¿ëµÇÁö ¾ÊÀ¸¹Ç·Î, À̸§ÀÌ ¾ø½À´Ï´Ù. ¸®½ºÆ®´Â TreeView ½ºÅ¸ÀÏ Å×À̺íÀ» ÂüÁ¶ÇϽʽÿÀ.

+ +

TreeViews¿ë ³»Àå ÇÔ¼ö

+

+¸ðµç TreeView ÇÔ¼ö´Â ÇöÀç ¾²·¹µåÀÇ ±âº» GUI â¿¡ ÀÛµ¿ÇÕ´Ï´Ù (±âº» ±¸ÀÌ Ã¢Àº Gui, 2:Default¸¦ ÅëÇÏ¿© ¹Ù²Ü ¼ö ÀÖ½À´Ï´Ù). ±âº» âÀÌ Á¸ÀçÇÏÁö ¾Ê°Å³ª TreeView ÄÜÆ®·ÑÀÌ ¾ø´Ù¸é, ¸ðµç ÇÔ¼ö´Â 0À» µ¹·ÁÁÖ¾î ¹®Á¦¸¦ ³ªÅ¸³À´Ï´Ù.

+

+â¿¡ ¿©·¯ TreeView ÄÜÆ®·ÑÀÌ ÀÖ´Ù¸é, ±âº»°ªÀ¸·Î ÇÔ¼öµéÀº °¡Àå ÃÖ±Ù¿¡ Ãß°¡µÈ ÄÜÆ®·Ñ¿¡ ÀÛµ¿ÇÕ´Ï´Ù. À̸¦ ¹Ù²Ù·Á¸é, Gui, TreeView, TreeViewName¸¦ ÁöÁ¤ÇϽʽÿÀ. ¿©±â¿¡¼­ TreeViewName´Â TreeViewÀÇ ¿¬°ü º¯¼öÀ̸§À̰ųª, Window Spy·Î ³ëÃâµÇ´Â ClassNNÀ̰ųª, ¶Ç´Â (v1.1.04+¿¡¼­) ±×ÀÇ HWNDÀÔ´Ï´Ù. ÀÏ´Ü ¹Ù²î¸é, ±âÁ¸ÀÇ ¸ðµç ±×¸®°í ¹Ì·¡ÀÇ ¾²·¹µå´Â Áö½ÃÇÑ TreeView¸¦ »ç¿ëÇÕ´Ï´Ù.

+ +

TV_SetImageList(ImageListID [, 0|2]) [v1.1.02+]

+

+TreeViewÀÇ ImageList¸¦ ¼³Á¤Çϰųª »èÁ¦ÇÕ´Ï´Ù. ImageListID´Â ÀÌÀü¿¡ IL_Create()¸¦ È£ÃâÇØ µ¹·Á ¹ÞÀº ¹øÈ£ÀÔ´Ï´Ù. µÎ ¹ø° ¸Å°³º¯¼ö´Â º¸Åë »ý·«µË´Ï´Ù. ÀÌ °æ¿ì ±âº»°ªÀº 0ÀÔ´Ï´Ù. ±×·¸Áö ¾ÊÀ¸¸é, 2¸¦ »óÅ ¾ÆÀÌÄÜ¿¡ ÁöÁ¤ÇϽʽÿÀ (¾ÆÁ÷ Á÷Á¢ÀûÀ¸·Î Áö¿øÇÏÁö´Â ¾ÊÁö¸¸, SendMessage¸¦ ÅëÇÏ¿© »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù). ¼º°øÇϸé, TV_SetImageList()´Â ÀÌÀü¿¡ TreeView¿¡ ¿¬°üµÇ¾î ÀÖ´Â ImageListID¸¦ µ¹·ÁÁÝ´Ï´Ù (¿¬°üµÈ°Ô ¾øÀ¸¸é 0À» µ¹·ÁÁÝ´Ï´Ù). ±×·¸°Ô ¶¼¾î³½ ImageList´Â º¸Åë IL_Destroy(ImageListID)¸¦ ÅëÇÏ¿© Æı«ÇÕ´Ï´Ù.

+ +

Ç׸ñÀ» Ãß°¡ÇÏ°í, º¯°æÇÏ°í, »èÁ¦Çϱâ

+ +

TV_Add(Name, [ParentItemID, Options])

+

+TreeView¿¡ »õ Ç׸ñÀ» Ãß°¡ÇÏ°í ±×ÀÇ À¯ÀÏÇÑ Item ID ¹øÈ£¸¦ µ¹·ÁÁÝ´Ï´Ù (¶Ç´Â ½ÇÆнà 0À» µ¹·ÁÁÝ´Ï´Ù). NameÀº Ç׸ñÀ» º¸¿©ÁÖ´Â ÅؽºÆ®À̸ç, ÅؽºÆ®À̰ųª ¼ýÀÚÀÏ ¼ö ÀÖ½À´Ï´Ù (¼ýÄ¡ Ç¥Çö½ÄÀÇ °á°úµµ Æ÷ÇÔ). ParentItemID´Â »õ Ç׸ñÀÇ ºÎ¸ð ID ¹øÈ£ÀÔ´Ï´Ù (»ý·«Çϰųª 0À» ÁöÁ¤ÇÏ¸é ±× Ç׸ñÀ» ÃÖ»óÀ§ ·¹º§¿¡ Ãß°¡ÇÕ´Ï´Ù). ¹æ´ëÇÑ °³¼öÀÇ Ç׸ñÀ» Ãß°¡ÇÒ ¶§, ¼öÇ༺´ÉÀ» °³¼±ÇÒ ¼ö ÀÖ½À´Ï´Ù. Ç׸ñÀ» Ãß°¡Çϱâ Àü¿¡ GuiControl, -Redraw, MyTreeView¸¦ »ç¿ëÇÏ°í ³¡³­ ÈÄ¿¡ GuiControl, +Redraw, MyTreeView¸¦ »ç¿ëÇÏ¸é µË´Ï´Ù.

+ +

TV_Add() ±×¸®°í TV_Modify()¿ë ¿É¼Ç

+

+Options ¸Å°³º¯¼ö´Â ¾Æ·¡ ¸®½ºÆ®ÀÇ ´Ü¾î·Î ±¸¼ºµÈ ¹®ÀÚ¿­ÀÔ´Ï´Ù (´ë¼Ò¹®ÀÚ ±¸ºÐ ¾ÈÇÔ). º°µµÀÇ °¢ ´Ü¾î¸¶´Ù ´ÙÀ½ ´Ü¾î¿Í ½ºÆäÀ̽º³ª ÅÇÀ¸·Î °¡¸£½Ê½Ã¿À. ¿É¼ÇÀ» Á¦°ÅÇÏ·Á¸é, ¾Õ¿¡ ¸¶À̳ʽº »çÀÎÀ» ºÙÀ̽ʽÿÀ. ¿É¼ÇÀ» Ãß°¡ÇÏ·Á¸é, Ç÷¯½º »çÀÎÀº Çã¿ëÇÏÁö¸¸ Çʼö´Â ¾Æ´Õ´Ï´Ù.

+

+Bold: Ç׸ñÀÇ À̸§À» º¼µåü·Î º¸¿©ÁÝ´Ï´Ù. ³ªÁß¿¡ ÇØÁ¦ÇÏ·Á¸é, TV_Modify(ItemID, "-Bold")¸¦ »ç¿ëÇϽʽÿÀ.

+

+Check: (TreeView¿¡ üũ¹Ú½º°¡ ÀÖ´Ù¸é) üũ Ç¥½ÄÀ» Ç׸ñÀÇ ¿ÞÂÊ¿¡ º¸¿©ÁÝ´Ï´Ù. ³ªÁß¿¡ ÇØÁ¦ÇÏ·Á¸é, TV_Modify(ItemID, "-Check")À» »ç¿ëÇϽʽÿÀ. ´Ü¾î Check´Â ¼±ÅÃÀûÀ¸·Î ´ÙÀ½¿¡ Áï½Ã 0 ¶Ç´Â 1ÀÌ µû¶ó¿Í ½ÃÀÛ »óŸ¦ ³ªÅ¸³¾ ¼ö ÀÖ½À´Ï´Ù. ´Ù¸¥ ¸»·Î, "Check"¿Í "Check" . VarContainingOne ¸ðµÎ °°½À´Ï´Ù (¿©±â¿¡¼­ Á¡Àº °áÇÕ ¿¬»êÀÚÀÔ´Ï´Ù).

+

+Expand: Ç׸ñÀ» È®´ëÇØ (ÀÖ´Ù¸é) ±×ÀÇ ÀÚ¼ÕÀ» ³ëÃâ½Ãŵ´Ï´Ù. ³ªÁß¿¡ Ç׸ñÀ» Ãà¼ÒÇÏ·Á¸é, TV_Modify(ItemID, "-Expand")¸¦ »ç¿ëÇϽʽÿÀ. ÀÚ¼ÕÀÌ ¾ø´Ù¸é, TV_Modify()´Â ±× Ç׸ñÀÇ ID ´ë½Å¿¡ 0À» µ¹·ÁÁÝ´Ï´Ù. ´ëÁ¶ÀûÀ¸·Î, TV_Add()´Â Ç׸ñ¿¡ ÀÚ¼ÕÀÌ ³ªÁß¿¡ °Å±â¿¡ Ãß°¡µÉ °æ¿ì È®´ë Ç¥½ÄÀ» ÇÕ´Ï´Ù. (¾Æ·¡ÀÇ) "Select"¿Í ´Ù¸£°Ô, Ç׸ñÀÌ È®´ëµÇ´õ¶óµµ ±×ÀÇ ºÎ¸ð°¡ ÀÚµ¿À¸·Î È®´ëµÇÁö´Â ¾Ê½À´Ï´Ù. ¸¶Áö¸·À¸·Î, ´Ü¾î Expand ´ÙÀ½¿¡ ¼±ÅÃÀûÀ¸·Î 0 ¶Ç´Â 1ÀÌ µû¶ó¿Í ½ÃÀÛ »óŸ¦ ³ªÅ¸³¾ ¼ö ÀÖ½À´Ï´Ù. ´Ù¸¥ ¸»·Î, "Expand"¿Í "Expand" . VarContainingOne´Â °°½À´Ï´Ù.

+

+First | Sort | N: ÀÌ ¿É¼ÇµéÀº TV_Add()¿¡¸¸ Àû¿ëµË´Ï´Ù. »õ Ç׸ñÀÇ À§Ä¡¸¦ ±×ÀÇ ÇüÁ¦¿¡ »ó´ëÀûÀ¸·Î ÁöÁ¤ÇÕ´Ï´Ù (ÇüÁ¦(sibling)¶õ °°Àº ·¹º§¿¡ ÀÖ´Â ´Ù¸¥ Ç׸ñµéÀÔ´Ï´Ù). ÀÌ ¿É¼Çµé ¸ðµÎ Á¸ÀçÇÏÁö ¾ÊÀ¸¸é, ¸¶Áö¸·/¸·³» ÇüÁ¦·Î »õ Ç׸ñÀÌ Ãß°¡µË´Ï´Ù. ±×·¸Áö ¾ÊÀ¸¸é, First¸¦ Ãß°¡ÇØ ±× Ç׸ñÀ» ù°/Àå³² ÇüÁ¦·Î Ãß°¡ÇÒ ¼ö ÀÖ½À´Ï´Ù. ¶Ç´ÂSort¸¦ ÁöÁ¤ÇÏ¸é ±× Ç׸ñÀ» ±×ÀÇ ÇüÁ¦µé »çÀÌ¿¡ ¾ËÆĺª ¼ø¼­·Î »ðÀÔÇÒ ¼ö ÀÖ½À´Ï´Ù. Æò¹üÇÑ Á¤¼ö°¡ (N) ÁöÁ¤µÇ¸é, ±× ´ÙÀ½¿¡ »õ Ç׸ñÀ» Ãß°¡ÇÒ ÇüÁ¦ÀÇ ID ¹øÈ£·Î °£Áֵ˴ϴ٠(Á¤¼ö NÀÌ À¯ÀÏÇÑ ¿É¼ÇÀ̶ó¸é, µû¿ÈÇ¥·Î µÑ·¯½Ò ÇÊ¿ä°¡ ¾ø½À´Ï´Ù).

+

+Icon: ´Ü¾î Icon ´ÙÀ½¿¡ ÀÌ Ç׸ñÀÇ ¾ÆÀÌÄÜ ¹øÈ£¸¦ ÁöÁ¤ÇϽʽÿÀ. ÀÌ ¾ÆÀÌÄÜÀº Ç׸ñÀÇ À̸§ ¿ÞÂÊ¿¡ º¸¿©Áý´Ï´Ù. ÀÌ ¿É¼ÇÀÌ ¾øÀ¸¸é, ImageList¿¡¼­ ù ¹ø° ¾ÆÀÌÄÜÀÌ »ç¿ëµË´Ï´Ù. ºó ¾ÆÀÌÄÜÀ» º¸¿©ÁÖ·Á¸é, ImageList ¾È¿¡ ÀÖ´Â ¾ÆÀÌÄܺ¸´Ù Å« ¼ýÀÚ¸¦ ÁöÁ¤ÇÏ¸é µË´Ï´Ù. ÄÜÆ®·Ñ¿¡ ImageList°¡ ¾øÀ¸¸é, ¾ÆÀÌÄܵµ º¸ÀÌÁö ¾Ê°í ¾ÆÀÌÄÜÀ» À§ÇÑ ½ºÆäÀ̽ºµµ º¸Á¸µÇÁö ¾Ê½À´Ï´Ù.

+

+Select: Ç׸ñÀ» ¼±ÅÃÇÕ´Ï´Ù. ÇÑ ¹ø¿¡ ¿ÀÁ÷ ÇϳªÀÇ Ç׸ñ¸¸ ¼±ÅÃÇÒ ¼ö Àֱ⠶§¹®¿¡, ÀÌÀü¿¡ ¼±ÅÃµÈ Ç׸ñÀº ÀÚµ¿À¸·Î ÇØÁ¦µË´Ï´Ù. °Ô´Ù°¡, ÀÌ ¿É¼ÇÀº ÇÊ¿äÇÏ¸é ±×ÀÇ ºÎ¸ð¸¦ È®´ëÇؼ­ »õ·Î ¼±ÅÃµÈ Ç׸ñÀ» ³ëÃâ½Ãŵ´Ï´Ù. ÇöÀç ¼±ÅÃÀ» ¾Ë¾Æ ³»·Á¸é, TV_GetSelection()¸¦ È£ÃâÇϽʽÿÀ.

+

+Sort: TV_Modify()¿¡ ´ëÇÏ¿©, ÀÌ ¿É¼ÇÀº ¾ËÆĺª ¼ø¼­·Î ÁöÁ¤µÈ Ç׸ñÀÇ ÀÚ¼ÕµéÀ» Á¤·ÄÇÕ´Ï´Ù. ´ë½Å¿¡ ¸ðµç ÃÖ»óÀ§ ·¹º§ÀÇ Ç׸ñµéÀ» Á¤·ÄÇÏ·Á¸é, TV_Modify(0, "Sort")¸¦ »ç¿ëÇϽʽÿÀ. ÀÚ¼ÕÀÌ ¾ø´Ù¸é, º¯°æµÈ Ç׸ñÀÇ ID ´ë½Å¿¡ 0À» µ¹·ÁÁÝ´Ï´Ù.

+

+Vis: TreeView¸¦ ½ºÅ©·ÑÇϰųª ÇÊ¿äÇÏ¸é ±×ÀÇ ºÎ¸ð¸¦ È®´ëÇؼ­ Ç׸ñÀÌ ¿ÏÀüÈ÷ º¸À̵µ·Ï È®ÀÎÇÕ´Ï´Ù.

+

+VisFirst: À§¿Í °°Áö¸¸ TreeViewµµ ½ºÅ©·ÑµÇ¾î °¡´ÉÇÏ¸é ±× Ç׸ñÀÌ Ç×»ó À§¿¡ º¸À̵µ·Ï ÇÕ´Ï´Ù. ÀÌ ¿É¼ÇÀº ÀüÇüÀûÀ¸·Î TV_Add() º¸´Ù TV_Modify()¿Í »ç¿ëÇÒ ¶§ ´õ È¿À²ÀûÀÔ´Ï´Ù.

+ +

TV_Modify(ItemID [, Options, NewName])

+

+Ç׸ñÀÇ À̸§°ú ¼Ó¼ºÀ» º¯°æÇÕ´Ï´Ù. ¼º°øÇϸé Ç׸ñ ÀÚ½ÅÀÇ ID¸¦ µ¹·ÁÁÝ´Ï´Ù. ½ÇÆнà (¶Ç´Â ºÎºÐÀû ½ÇÆнÃ) 0À» µ¹·ÁÁÝ´Ï´Ù. ù ¸Å°³º¯¼ö¸¸ ÀÖÀ¸¸é, ÁöÁ¤µÈ Ç׸ñÀÌ ¼±Åõ˴ϴÙ. NewNameÀ» »ý·«Çϸé, ÇöÀç À̸§À» ¹Ù²ÙÁö ¾Ê°í ±×´ë·Î µÓ´Ï´Ù. Options¿¡ °üÇؼ­´Â À§ÀÇ ¸®½ºÆ®¸¦ ÂüÁ¶ÇϽʽÿÀ.

+ +

TV_Delete([ItemID])

+

+ItemIDÀ» »ý·«Çϸé, TreeView ¾ÈÀÇ ¸ðµç Ç׸ñÀÌ »èÁ¦µË´Ï´Ù. ±×·¸Áö ¾ÊÀ¸¸é, ¿ÀÁ÷ ÁöÁ¤µÈ ItemID¸¸ »èÁ¦µË´Ï´Ù. ¼º°øÇϸé 1À» µ¹·ÁÁÖ°í ½ÇÆнà 0À» µ¹·ÁÁÝ´Ï´Ù.

+ +

TreeView·ÎºÎÅÍ µ¥ÀÌÅÍ ¾ò±â

+

+TV_GetSelection()

+

¼±ÅÃµÈ Ç׸ñÀÇ ID ¹øÈ£¸¦ µ¹·ÁÁÝ´Ï´Ù.

+ +

TV_GetCount()

+

+ÄÜÆ®·Ñ¿¡ ÀÖ´Â Ç׸ñÀÇ ÃÑ °³¼ö¸¦ µ¹·ÁÁÝ´Ï´Ù. ÀÌ ÇÔ¼ö´Â ¾ðÁ¦³ª ¼ø°£ÀûÀÔ´Ï´Ù. ¿Ö³ÄÇϸé ÄÜÆ®·ÑÀÇ °³¼ö¸¦ ÃßÀû°ü¸®Çϱ⠶§¹®ÀÔ´Ï´Ù.

+ +

TV_GetParent(ItemID)

+

+ÁöÁ¤µÈ Ç׸ñÀÇ ºÎ¸ð¸¦ Ç׸ñ ID·Î µ¹·ÁÁÝ´Ï´Ù. ÃÖ»óÀ§ ·¹º§ÀÇ Ç׸ñµéÀº ºÎ¸ð°¡ ¾øÀ¸¹Ç·Î 0À» µ¹·ÁÁÝ´Ï´Ù.

+ +

TV_GetChild(ParentItemID)

+

+ÁöÁ¤µÈ Ç׸ñÀÇ Ã¹Â°/ÃÖ»óÀ§ ÀÚ¼ÕÀÇ ID ¹øÈ£¸¦ µ¹·ÁÁÝ´Ï´Ù (¾øÀ¸¸é 0À» µ¹·ÁÁÝ´Ï´Ù).

+ +

TV_GetPrev(ItemID)

+

+ÁöÁ¤µÈ Ç׸ñ À§ÀÇ ÇüÁ¦ÀÇ ID ¹øÈ£¸¦ µ¹·ÁÁÝ´Ï´Ù (¾øÀ¸¸é 0À» µ¹·ÁÁÝ´Ï´Ù).

+ +

TV_GetNext([ItemID, "Checked | Full"])

+

+´ÙÀ½ ¸ðµå°¡ ÀÖ½À´Ï´Ù:

+
    +
  1. ¸ðµç ¸Å°³º¯¼ö¸¦ »ý·«Çϸé, TreeView¿¡¼­ ù°/ÃÖ»óÀ§ Ç׸ñÀÇ ID ¹øÈ£¸¦ µ¹·ÁÁÝ´Ï´Ù (¾øÀ¸¸é 0À» µ¹·ÁÁÝ´Ï´Ù).
  2. +
  3. ¿ÀÁ÷ ù ¹ø° ¸Å°³º¯¼ö (ItemID)¸¸ ÀÖÀ¸¸é, ÁöÁ¤µÈ Ç׸ñ ¾Æ·¡ ÇüÁ¦ÀÇ ID ¹øÈ£¸¦ µ¹·ÁÁÝ´Ï´Ù (¾øÀ¸¸é 0À» µ¹·ÁÁÝ´Ï´Ù). ù ¹ø° ¸Å°³º¯¼ö°¡ 0À̸é, TreeView¿¡¼­ ù°/ÃÖ»óÀ§ Ç׸ñÀÇ ID ¹øÈ£¸¦ µ¹·ÁÁÝ´Ï´Ù (¾øÀ¸¸é 0À» µ¹·ÁÁÝ´Ï´Ù).
  4. +
  5. µÎ ¹ø° ¸Å°³º¯¼ö°¡ "Full" ¶Ç´Â "F"À̸é, ÁöÁ¤µÈ Ç׸ñ°úÀÇ °ü°è¿¡ »ó°ü¾øÀÌ ´ÙÀ½ Ç׸ñÀ» ¿­¶÷ÇÕ´Ï´Ù. ÀÌ·¸°Ô ÇÏ¸é ½ºÅ©¸³Æ®´Â ½±°Ô Àüü Æ®¸®¸¦ Ç׸ñº°·Î ¼øȸÇÒ ¼ö ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î: + +
    ItemID = 0  ; ȸµ¹ÀÌÀÇ Ã¹ ¹ø° ¹Ýº¹ÀÌ Æ®¸®ÀÇ ÃÖ»ó´Ü¿¡¼­ °Ë»öÀ» ½ÃÀÛÇϵµ·Ï ¸¸µì´Ï´Ù.
    +Loop
    +{
    +    ItemID := TV_GetNext(ItemID, "Full")  ; üũǥ½ÄµÈ Ç׸ñÀ» ¸ðµÎ ãÀ¸·Á¸é "Full"À» "Checked"·Î ±³Ã¼ÇϽʽÿÀ..
    +    if not ItemID  ; Æ®¸®¿¡ ´õ ÀÌ»ó Ç׸ñÀÌ ¾ø½À´Ï´Ù.
    +        break
    +    TV_GetText(ItemText, ItemID)
    +    MsgBox The next Item is %ItemID%, whose text is "%ItemText%".
    +}
    +
  6. +
  7. µÎ ¹ø° ¸Å°³º¯¼ö°¡ "Check", "Checked", ¶Ç´Â "C"À̸é, À§¿Í °°Àº ÇàÀ§¸¦ ÇÕ´Ï´Ù. ´Ü, üũǥ½ÄÀÌ ¾ø´Â Ç׸ñÀº °Ç³Ê ¶Ý´Ï´Ù. ÀÌ·¸°Ô Çϸé TreeView¿¡ üũǥ½ÄµÈ ¸ðµç Ç׸ñÀ» Çϳª¾¿ ¿­¶÷ÇÒ ¼ö ÀÖ½À´Ï´Ù.
  8. +
+ +

TV_GetText(OutputVar, ItemID)

+

+ÁöÁ¤µÈ ItemIDÀÇ ÅؽºÆ®/À̸§À» ¿­¶÷ÇÏ°í ±×°ÍÀ» OutputVar¿¡ ÀúÀåÇÕ´Ï´Ù. ÅؽºÆ®°¡ 8191 ±æÀ̸¦ ³ÑÀ¸¸é, ¿ÀÁ÷ ¾ÕÂÊ 8191 ¹®ÀÚ¸¸ ¿­¶÷µË´Ï´Ù. ¼º°øÇϸé, ÇÔ¼ö´Â ±× Ç׸ñÀÇ ID¸¦ µ¹·ÁÁÝ´Ï´Ù. ½ÇÆÐÇϸé, 0À» µ¹·ÁÁÝ´Ï´Ù (±×¸®°í OutputVarµµ ºñ¿öÁý´Ï´Ù).

+ +

TV_Get(ItemID, "Expand | Check | Bold")

+

+ÁöÁ¤µÈ Ç׸ñ¿¡ ÁöÁ¤µÈ ¼Ó¼ºÀÌ ¾øÀ¸¸é, ±× ÀÚ½ÅÀÇ ItemID°¡ ¹ÝȯµË´Ï´Ù. ±×·¸Áö ¾ÊÀ¸¸é 0ÀÌ ¹ÝȯµË´Ï´Ù. µÎ ¹ø° ¸Å°³º¯¼ö¿¡ ´ëÇÏ¿©, "E", "Expand", ¶Ç´Â "Expanded"À» ÁöÁ¤Çϸé Ç׸ñÀÌ ÇöÀç È®´ëµÇ¾î ÀÖ´ÂÁö ¾Ë¾Æ³¾ ¼ö ÀÖ½À´Ï´Ù (Áï, ±×ÀÇ ÀÚ¼ÕÀÌ º¸¿©Áö°í ÀÖ´ÂÁö¸¦ ¾Ë¾Æ³¾ ¼ö ÀÖ½À´Ï´Ù); "C", "Check", ¶Ç´Â "Checked"¸¦ ÁöÁ¤Çϸé Ç׸ñ¿¡ üũǥ½ÄÀÌ ÀÖ´ÂÁö ¾Ë¾Æ³¾ ¼ö ÀÖ½À´Ï´Ù; ¶Ç´Â "B"³ª "Bold"¸¦ ÁöÁ¤Çϸé ÇöÀç Ç׸ñÀÇ ±Û²ÃÀÌ º¼µåüÀÎÁö ¾Ë¾Æ³¾ ¼ö ÀÖ½À´Ï´Ù.

+

+ÆÁ: IF-¼­¼ú¹®Àº 0 ¾Æ´Ñ °ªÀ» Âü("true")À¸·Î °£ÁÖÇϹǷÎ, ´ÙÀ½ÀÇ µÎ ÁÙÀº ±â´ÉÀûÀ¸·Î µ¿ÀÏÇÕ´Ï´Ù:

+
    +
  1. if TV_Get(ItemID, "Checked") = ItemID
  2. +
  3. if TV_Get(ItemID, "Checked")
  4. +
+

G-¶óº§ °íÁö (Primary)

+

+gMySubroutine°ú °°Àº g-¶óº§Àº ÄÜÆ®·ÑÀÇ ¿É¼Ç¿¡ ³ª¿­ÇÒ ¼ö ÀÖ½À´Ï´Ù. ÀÌ·¸°Ô ÇÏ¸é »ç¿ëÀÚ°¡ ÄÜÆ®·Ñ¿¡ Á¶Ä¡¸¦ ¼öÇàÇÒ ¶§¸¶´Ù MySubroutine ¶óº§ÀÌ ÀÚµ¿À¸·Î ±âµ¿µË´Ï´Ù. ÀÌ ¼­ºê·çƾÀº ³»Àå ÇÔ¼ö A_Gui ±×¸®°í A_GuiControl À» Âü°íÇØ ¾î´À â°ú ¾î´À TreeView°¡ À̺¥Æ®¸¦ ¹ß»ý½ÃÄ×´ÂÁö ¾Ë¾Æ³À´Ï´Ù. ´õ Áß¿äÇÑ °ÍÀº A_GuiEvent¸¦ Âü°íÇÒ ¼ö ÀÖ½À´Ï´Ù. ¾È¿¡ ´ÙÀ½ ¹®ÀÚ¿­ ¶Ç´Â ±âÈ£ Áß Çϳª°¡ µé¾î ÀÖ½À´Ï´Ù (¹Ì·¡ ¹öÀü°úÀÇ È£È¯À» À§ÇØ, ½ºÅ©¸³Æ®´Â À̰͵鸸 À¯ÀÏÇÑ °ªÀ̶ó°í °£ÁÖÇÏ¸é ¾ÈµË´Ï´Ù):

+

+DoubleClick: »ç¿ëÀÚ°¡ Ç׸ñÀ» ´õºíŬ¸¯Çß½À´Ï´Ù. º¯¼ö A_EventInfo¿¡ ±× Ç׸ñÀÇ ID°¡ ´ã±é´Ï´Ù.

+

+D: »ç¿ëÀÚ°¡ Ç׸ñÀ» ²ø·Á°í ½ÃµµÇß½À´Ï´Ù (ÇöÀç À̸¦ ³»ºÎÀûÀ¸·Î Áö¿øÇÏÁö ¾Ê½À´Ï´Ù). º¯¼ö A_EventInfo¿¡ ±× Ç׸ñÀÇ ID°¡ ´ã±é´Ï´Ù.

+

+d (¼Ò¹®ÀÚ D): À§¿Í °°Áö¸¸ ¿ÞŬ¸¯ ²ø±â°¡ ¾Æ´Ï¶ó ¿ìŬ¸¯ ²ø±âÀÔ´Ï´Ù.

+

+e (¼Ò¹®ÀÚ E): »ç¿ëÀÚ°¡ Ç׸ñ ÆíÁýÀ» ³¡¸¶ÃƽÀ´Ï´Ù (»ç¿ëÀÚ´Â TreeView ¿É¼Ç¿¡ -ReadOnlyÀÏ °æ¿ì¿¡¸¸ Ç׸ñÀ» ÆíÁýÇÒ ¼ö ÀÖ½À´Ï´Ù). º¯¼ö A_EventInfo¿¡ ±× Ç׸ñÀÇ ID°¡ ´ã±é´Ï´Ù.

+

+S: »ç¿ëÀÚ ¶Ç´Â ½ºÅ©¸³Æ® ÀÚü¿¡¼­ »õ Ç׸ñÀ» ¼±ÅÃÇß½À´Ï´Ù. º¯¼ö A_EventInfo¿¡ »õ·Î ¼±ÅÃµÈ ±× Ç׸ñÀÇ ID°¡ ´ã±é´Ï´Ù.

+ +

G-¶óº§ °íÁö (Secondary)

+

+TreeViewÀÇ ¿É¼Ç¿¡ ´Ü¾î AltSubmitÀÌ ÀÖ´Ù¸é, ±×ÀÇg-¶óº§Àº ´õ ÀÚÁÖ ±âµ¿µÇ°í A_GuiEvent¿¡´Â ´ÙÀ½ÀÇ °ªÀÌ Ãß°¡·Î ´ã±æ ¼ö ÀÖ½À´Ï´Ù:

+

+Normal: »ç¿ëÀÚ°¡ Ç׸ñÀ» ¿ÞŬ¸¯ Çß½À´Ï´Ù. º¯¼ö A_EventInfo¿¡ ±× Ç׸ñÀÇ ID°¡ ´ã±é´Ï´Ù.

+

+RightClick: »ç¿ëÀÚ°¡ Ç׸ñÀ» ¿ìŬ¸¯Çß½À´Ï´Ù. º¯¼ö A_EventInfo¿¡ ±× Ç׸ñÀÇ ID°¡ ´ã±é´Ï´Ù. ´ëºÎºÐÀÇ °æ¿ì, ÀÌ¿¡ ¹ÝÀÀÇÏ¿© ¸Þ´º¸¦ º¸¿©ÁÖÁö ¾Ê´Â °ÍÀÌ Á¦ÀÏ ÁÁ½À´Ï´Ù. ´ë½Å¿¡, GuiContextMenu ¶óº§À» »ç¿ëÇϽʽÿÀ. ¿Ö³ÄÇϸé Apps Å°µµ ÀÎÁöÇϱ⠶§¹®ÀÔ´Ï´Ù. ¿¹¸¦ µé¾î:

+ +
GuiContextMenu:  ; ¿ìŬ¸¯¿¡ ÀÀ´äÇÏ¿© ±âµ¿µÇ°Å³ª Apps ´©¸§¿¡ ÀÀ´äÇÏ¿© ±âµ¿µËˆ•.
+if A_GuiControl <> MyTreeView  ; ÀÌ Á¡°ËÀº ¼±ÅÃÀûÀÔ´Ï´Ù. TreeView ¾È¿¡ Ŭ¸¯ÇÒ ¶§¸¸ ¸Þ´º¸¦ º¸¿©ÁÝ´Ï´Ù.
+    return
+; Á¦°øµÈ A_GuiX ±×¸®°í A_GuiY ÁÂÇ¥¿¡ ¸Þ´º¸¦ º¸¿©ÁÝ´Ï´Ù.
+; »ç¿ëÀÚ°¡ Apps Å°¸¦ ´©¸£´õ¶óµµ ¿Ã¹Ù¸¦ ÁÂÇ¥¸¦ Á¦°øÇϱ⠶§¹«¿¡ ÀÌ°ÍÀ» »ç¿ëÇØ¾ß ÇÕ´Ï´Ù:
+Menu, MyContextMenu, Show, %A_GuiX%, %A_GuiY%
+return
+

+E: »ç¿ëÀÚ°¡ Ç׸ñ ÆíÁýÀ» ½ÃÀÛÇß½À´Ï´Ù (»ç¿ëÀÚ´Â TreeView ¿É¼Ç¿¡ -ReadOnlyÀÌ ÀÖÀ» °æ¿ì¿¡¸¸ Ç׸ñÀ» ÆíÁýÇÒ ¼ö ÀÖ½À´Ï´Ù). º¯¼ö A_EventInfo¿¡ ±× Ç׸ñÀÇ ID°¡ ´ã±é´Ï´Ù.

+

+F: TreeView°¡ Å°º¸µå ÃÊÁ¡À» ¹Þ¾Ò½À´Ï´Ù.

+

+f (¼Ò¹®ÀÚ F): TreeView °¡ Å°º¸µå ÃÊÁ¡À» ÀÒ¾î¹ö·È½À´Ï´Ù.

+

+K: TreeView°¡ ÃÊÁ¡ÀÌ ÀÖ´Â µ¿¾È »ç¿ëÀÚ°¡ Å°¸¦ ´­·¶½À´Ï´Ù. A_EventInfo¿¡ Å°ÀÇ °¡»ó Å° Äڵ尡 ´ã±é´Ï´Ù. ¹üÀ§´Â 1ºÎÅÍ 255±îÁöÀÔ´Ï´Ù. Å°°¡ ¾ËÆĺªÀ̸é, ´ëºÎºÐÀÇ Å°º¸µå ·¹À̾ƿô¿¡¼­ Chr(A_EventInfo)¸¦ ÅëÇÏ¿© »óÀÀÇÏ´Â ¹®ÀÚ·Î º¯È¯ÇÒ ¼ö ÀÖ½À´Ï´Ù. F2 Å°´­¸²Àº WantF2¿¡ »ó°ü¾øÀÌ ¹Þ½À´Ï´Ù. ±×·¸Áö¸¸, Enter Å°´­¸²Àº ¹ÞÁö ¾Ê½À´Ï´Ù; ÀÌ Å°¸¦ ¹ÞÀ¸·Á¸é, ¾Æ·¡¿¡ ±â¼úÇÏ´Â ¹Ù¿Í °°ÀÌ ±âº» ¹öÆ°À» »ç¿ëÇϽʽÿÀ.

+

++ (Ç÷¯½º »çÀÎ): Ç׸ñÀÌ È®´ëµÇ¾î ±×ÀÇ ÀÚ¼ÕÀ» º¸¿©ÁÝ´Ï´Ù. º¯¼ö A_EventInfo¿¡ ±× Ç׸ñÀÇ ID°¡ ´ã±é´Ï´Ù.

+

- (¸¶À̳ʽº »çÀÎ): Ç׸ñÀÌ Ãà¼ÒµÇ¾î ±×ÀÇ ÀÚ¼ÕÀ» °¨Ãä´Ï´Ù. º¯¼ö A_EventInfo¿¡ ±× Ç׸ñÀÇ ID°¡ ´ã±é´Ï´Ù.

+ +

³íÆò

+

+Gui Submit ¸í·É¾î´Â TreeView ÄÜÆ®·Ñ¿¡ ¾Æ¹« È¿°ú°¡ ¾ø½À´Ï´Ù. ±×·¯¹Ç·Î, ½ºÅ©¸³Æ®´Â (ÀÖ´Ù¸é) TreeViewÀÇ ¿¬°ü º¯¼ö¸¦ »ç¿ëÇØ ±âŸ µ¥ÀÌÅ͸¦ ÀúÀåÇÒ ¼ö ÀÖ½À´Ï´Ù. µ¤¾î¾µ±îºÁ °ÆÁ¤ÇÒ ÇÊ¿ä°¡ ¾ø½À´Ï´Ù.

+

+TreeView¿¡ ÃÊÁ¡ÀÌ ÀÖ´Â µ¿¾È »ç¿ëÀÚ°¡ Enter¸¦ ´­·¶´ÂÁö ŽÁöÇÏ·Á¸é, ±âº» ¹öÆ°À» »ç¿ëÇϽʽÿÀ (¿øÇÏ¸é °¨Ãâ ¼ö ÀÖ½À´Ï´Ù). ¿¹¸¦ µé¾î:

+
Gui, Add, Button, Hidden Default, OK
+...
+ButtonOK:
+GuiControlGet, FocusedControl, FocusV
+if FocusedControl <> MyTreeView
+    return
+MsgBox % "Enter was pressed. The selected item ID is " . TV_GetSelection()
+return
+

+Å°º¸µå·Î ÇÑ Ç׸ñ¿¡¼­ ´Ù¸¥ Ç׸ñÀ¸·Î Ç×ÇØÇÏ´Â °Í ¸»°íµµ, »ç¿ëÀÚ´Â ÇÑ Ç׸ñÀÇ À̸§ÀÇ Ã¹ ¹®ÀÚ¸¦ ŸÀÚÇÏ¿© Á¡Áø °Ë»öÀ» ¼öÇàÇÒ ¼öµµ ÀÖ½À´Ï´Ù. ÀÌ·¸°Ô ÇÏ¸é ¼±ÅÃÀÌ ºÎÇÕÇÏ´Â °¡Àå °¡±î¿î Ç׸ñÀ¸·Î Á¡ÇÁÇÕ´Ï´Ù.

+

+±æÀÌ¿¡ »ó°ü¾øÀÌ ÅؽºÆ®¸¦ TreeViewÀÇ °¢ Ç׸ñ¿¡ ÀúÀåÇÒ ¼ö ÀÖÁö¸¸, ¿ÀÁ÷ ¾ÕÂÊ 260 ±ÛÀÚ¸¸ º¸¿©ÁÝ´Ï´Ù.

+

+ÀÌ·ÐÀûÀ¸·Î TreeView¿¡¼­ Ç׸ñÀÇ °³¼ö´Â ÃÖ´ë 65536ÀÌÁö¸¸, Ç׸ñÀ» Ãß°¡ÇÒ ¼ö·Ï ¾ó¸¶ °¡Áö ¾Ê¾Æ ¼öÇ༺´ÉÀÌ ´«¿¡ ¶ç°Ô ÁÙ¾îµì´Ï´Ù. TV_Add()¿¡ ±â¼úµÈ ´Ù½Ã ±×¸®±â ÆÁÀ» »ç¿ëÇϸé À̸¦ ¾à°£ ÁÙÀÏ ¼ö ÀÖ½À´Ï´Ù.

+

+ListViews¿Í ´Ù¸£°Ô, TreeViewÀÇ ImageList´Â TreeView°¡ Æı«µÉ ¶§ ÀÚµ¿À¸·Î Æı«µÇÁö ¾Ê½À´Ï´Ù. ±×·¯¹Ç·Î, ½ºÅ©¸³Æ®´Â TreeViewÀÇ Ã¢À» Æı«ÇÏ°í ³ª¸é ¹Ýµå½Ã IL_Destroy(ImageListID)¸¦ È£ÃâÇØ¾ß ÇÕ´Ï´Ù. + +ImageList¸¦ ´Ù¸¥ °÷¿¡ »ç¿ëÇÒ »ý°¢ÀÌ ¾ø´Ù¸é ¸»ÀÔ´Ï´Ù. ±×·¸Áö¸¸, ½ºÅ©¸³Æ®°¡ °ð ³¡³¯ °æ¿ì¶ó¸é ºÒÇÊ¿äÇÕ´Ï´Ù. ¿Ö³ÄÇÏ¸é ±× ¶§ ¸ðµç ImageListsµµ ÀÚµ¿À¸·Î Æı«µÇ±â ¶§¹®ÀÔ´Ï´Ù.

+

+½ºÅ©¸³Æ®´Â â ´ç Çϳª ÀÌ»óÀÇ TreeView¸¦ »ý¼ºÇÒ ¼ö ÀÖ½À´Ï´Ù. ±âº» ¸»°í ´Ù¸¥ TreeView¸¦ ó¸®ÇÏ·Á¸é, ³»Àå ÇÔ¼ö¸¦ ÂüÁ¶ÇϽʽÿÀ.

+

+TreeViewÀÇ ±Û²ÃÀ» ¹Ù²Ù°Å³ª Å©±â¸¦ ¹Ù²Ù°Å³ª ¼û±â·Á¸é GuiControlÀ» »ç¿ëÇϽʽÿÀ.

+

+Æ®¸®ºä È®Àå(Tree View eXtension (TVX))À¸·Î TreeViews¸¦ À̵¿ÇÏ°í »ðÀÔÇÏ°í Á¦°ÅÇÒ ¼ö ÀÖ½À´Ï´Ù. ´ÙÀ½ µ¥¸ð¸¦ ÂüÁ¶ÇϽʽÿÀ: www.autohotkey.com/forum/topic19021.html

+ +

°ü·Ã Ç׸ñ

+

+ListView, Other Control Types, Gui, GuiContextMenu, GuiControl, GuiControlGet, TreeView ½ºÅ¸ÀÏ Å×À̺í

+ +

¿¹Á¦

+
; ´ÙÀ½ ½ºÅ©¸³Æ®´Â ÀÌ ÆäÀÌÁö À§¿¡ ÀÖ´Â ¿¹Á¦º¸´Ù ´õ Á¤±³ÇÕ´Ï´Ù.
+; ¸ðµç-»ç¿ëÀÚ ½ÃÀÛ ¸Þ´ºÀÇ ¸ðµç Æú´õ¸¦ ´ãÀº TreeView¸¦ »ý¼ºÇÏ°í ºÎ¿©ÁÝ´Ï´Ù.
+; »ç¿ëÀÚ°¡ Æú´õ¸¦ ¼±ÅÃÇϸé, ±×ÀÇ ³»¿ëÀÌ ListView ¿À¸¥ÂÊ¿¡ ³ªÅ¸³³´Ï´Ù (À©µµ¿ìÁîÀÇ Å½»ö±âó·³).
+; °Ô´Ù°¡, StatusBar ÄÜÆ®·Ñ¿¡ ÇöÀç ¼±ÅÃµÈ Æú´õ¿¡ °üÇÑ Á¤º¸¸¦ º¸¿©ÁÝ´Ï´Ù.
+
+; ´ÙÀ½ Æú´õ´Â TreeView¿¡ ´ëÇÏ¿© ·çÆ® Æú´õ°¡ µË´Ï´Ù.
+; C:\¿Í °°ÀÌ Àüü µå¶óÀ̺긦 ÁöÁ¤ÇÏ¸é ¾à°£ ÀûÀç ½Ã°£ÀÌ °É¸³´Ï´Ù:
+TreeRoot = %A_StartMenuCommon%
+TreeViewWidth := 280
+ListViewWidth := A_ScreenWidth - TreeViewWidth - 30
+
+; »ç¿ëÀÚ°¡ âÀ» ²ø¾î Å©±â¸¦ ¹Ù²Ü ¼ö ÀÖµµ·Ï Çã¿ëÇÕ´Ï´Ù:
+Gui +Resize
+
+; ImageList¸¦ ¸¸µé°í °Å±â¿¡ Ç¥ÁØ ½Ã½ºÅÛ ¾ÆÀÌÄÜÀ» ¹èÁ¤ÇÕ´Ï´Ù:
+ImageListID := IL_Create(5)
+Loop 5 
+    IL_Add(ImageListID, "shell32.dll", A_Index)
+; TreeView¿Í ListView¸¦ ³ª¶õÈ÷ ¸¸µé¾î ¸¶Ä¡ À©µµ¿ìÁîÀÇ Å½»ö±âó·³ ÇàÀ§ÇÕ´Ï´Ù:
+Gui, Add, TreeView, vMyTreeView r20 w%TreeViewWidth% gMyTreeView ImageList%ImageListID%
+Gui, Add, ListView, vMyListView r20 w%ListViewWidth% x+10, Name|Modified
+
+; ListViewÀÇ Ä÷³ ³Êºñ¸¦ ¼³Á¤ÇÕ´Ï´Ù (ÀÌ°ÍÀº ¼±ÅÃÀûÀÔ´Ï´Ù):
+Col2Width = 70  ; ¿ÀÁ÷ YYYYMMDD ºÎºÐ¸¸ º¸À̵µ·Ï ³Êºñ¸¦ ÁÙÀÔ´Ï´Ù.
+LV_ModifyCol(1, ListViewWidth - Col2Width - 30)  ; ¼öÁ÷ ½ºÅ©·Ñ¹Ù¸¦ À§ÇØ °ø°£À» Çã¿ëÇÕ´Ï´Ù.
+LV_ModifyCol(2, Col2Width)
+
+; ÆÄÀÏÀÇ °³¼ö¿Í ±×ÀÇ ÃÑ Å©±â¿¡ °üÇÑ Á¤º¸¸¦ º¸¿©ÁÙ »óÅ ¹Ù¸¦ »ý¼ºÇÕ´Ï´Ù:
+Gui, Add, StatusBar
+SB_SetParts(60, 85)  ; ¹Ù¸¦ ¼¼ ºÎºÐÀ¸·Î »ý¼ºÇÕ´Ï´Ù (¼¼ ¹ø° ºÎºÐ¿¡ ³ª¸ÓÁö ³Êºñ¸¦ ¸ðµÎ ä¿ó´Ï´Ù).
+
+; Æú´õ¿Í ±×ÀÇ ºÎÆú´õ´úÀ» Æ®¸®¿¡ Ãß°¡ÇÕ´Ï´Ù. ÀûÀç ½Ã°£ÀÌ °É¸± °æ¿ì´Â ÇöÀç »óŸ¦ º¸¿©ÁÝ´Ï´Ù:
+SplashTextOn, 200, 25, TreeView and StatusBar Example, Loading the tree...
+AddSubFoldersToTree(TreeRoot)
+SplashTextOff
+
+; âÀ» º¸¿©ÁÖ°í µ¹¾Æ°©´Ï´Ù. OS´Â ½ºÅ©¸³Æ®¿¡°Ô »ç¿ëÀÚ°¡ ÀûÀýÇÑ ÇàÀ§¸¦ ¼öÇàÇÒ ¶§¸¶´Ù °íÁöÇÕ´Ï´Ù:
+Gui, Show,, %TreeRoot%  ; Á¦¸ñ ¹Ù¿¡ ¼Ò½º µð·ºÅ丮¸¦ º¸¿©ÁÝ´Ï´Ù (TreeRoot).
+return
+
+AddSubFoldersToTree(Folder, ParentItemID = 0)
+{
+    ; ÀÌ ÇÔ¼ö´Â ÁöÁ¤µÈ Æú´õÀÇ ¸ðµç ºÎÆú´õ¸¦ TreeView¿¡ Ãß°¡ÇÕ´Ï´Ù..
+    ; ¶ÇÇÑ ±íÀÌ¿¡ »ó°ü¾øÀÌ ÀÚ±â ÀÚ½ÅÀ» Àç±ÍÇØ ³»Æ÷µÈ Æú´õµéÀ» ¼öÁýÇÕ´Ï´Ù.
+    Loop %Folder%\*.*, 2  ; ¸ðµç Æú´õÀÇ ºÎÆú´õµéÀ» ¿­¶÷ÇÕ´Ï´Ù.
+        AddSubFoldersToTree(A_LoopFileFullPath, TV_Add(A_LoopFileName, ParentItemID, "Icon4"))
+}
+
+MyTreeView:  ; ÀÌ ¼­ºê·çƾÀº »ç¿ëÀÚ ÇàÀ§¸¦ ó¸®ÇÕ´Ï´Ù (¿¹¸¦ µé¾î Ŭ¸¯).
+if A_GuiEvent <> S  ; Áï, "»õ·Î¿î Æ®¸® Ç׸ñ ¼±ÅÃ"ÀÌ ¾Æ´Ñ À̺¥Æ®.
+    return  ; ¾Æ¹«°Íµµ ÇÏÁö ¾ÊÀ½.
+; ±×·¸Áö ¾ÊÀ¸¸é, ListView ³»¿ëÀ» ¼±ÅÃµÈ Æú´õ·Î ä¿ó´Ï´Ù.
+; ¸Õó ¼±ÅÃµÈ Æú´õÀÇ ¿ÏÀüÇÑ °æ·Î¸¦ ¾Ë¾Æ³À´Ï´Ù:
+TV_GetText(SelectedItemText, A_EventInfo)
+ParentID := A_EventInfo
+Loop  ; ¼±ÅÃµÈ Æú´õ¿¡ ´ëÇÑ Àüü °æ·Î¸¦ ±¸¼ºÇÕ´Ï´Ù.
+{
+    ParentID := TV_GetParent(ParentID)
+    if not ParentID  ; ´õ ÀÌ»ó Á¶»ó ¾øÀ½.
+        break
+    TV_GetText(ParentText, ParentID)
+    SelectedItemText = %ParentText%\%SelectedItemText%
+}
+SelectedFullPath = %TreeRoot%\%SelectedItemText%
+
+; ÆÄÀϵéÀ» ListView ¾È¿¡ »ðÀÔÇÕ´Ï´Ù:
+LV_Delete()  ; ¸ðµç ÇàµéÀ» Áö¿ó´Ï´Ù.
+GuiControl, -Redraw, MyListView  ; ÀûÀçÇÏ´Â µ¿¾È ´Ù½Ã ±×¸®±â¸¦ ¸·¾Æ¼­ ¼öÇ༺´ÉÀ» Çâ»ó½Ãŵ´Ï´Ù.
+FileCount = 0  ; ¾Æ·¡ ȸµ¹À̸¦ ½ÃÀÛÇϱâ Àü¿¡ ÃʱâÈ­ÇÕ´Ï´Ù.
+TotalSize = 0
+Loop %SelectedFullPath%\*.*  ; °£´ÜÇÏ°Ô Ã³¸®Çϱâ À§ÇØ, Æú´õ¸¦ »ý·«ÇÏ°í ListView¿¡ ÀÖ´Â ÆÄÀϵ鸸 º¸ÀÔ´Ï´Ù.
+{
+    LV_Add("", A_LoopFileName, A_LoopFileTimeModified)
+    FileCount += 1
+    TotalSize += A_LoopFileSize
+}
+GuiControl, +Redraw, MyListView
+
+; »óÅ ¹ÙÀÇ ¼¼ ºÎºÐÀ» ¾÷µ¥ÀÌÆ®ÇØ ÇöÀç ¼±ÅÃµÈ Æú´õ¿¡ °üÇÑ Á¤º¸¸¦ º¸¿©ÁÝ´Ï´Ù:
+SB_SetText(FileCount . " files", 1)
+SB_SetText(Round(TotalSize / 1024, 1) . " KB", 2)
+SB_SetText(SelectedFullPath, 3)
+return
+
+GuiSize:  ; »ç¿ëÀÚÀÇ Ã¢ Å©±â º¯°æ¿¡ ÀÀ´äÇÏ¿© ListView¿Í TreeView Å©±â¸¦ Á¶ÀýÇÕ´Ï´Ù.
+if A_EventInfo = 1  ; âÀÌ ÃÖ¼ÒÈ­µÇ¾ú½À´Ï´Ù. ¾Æ¹« Á¶Ä¡µµ ÇÊ¿äÇÏÁö ¾Ê½À´Ï´Ù.
+    return
+; ±×·¸Áö ¾ÊÀ¸¸é, âÀº Å©±â°¡ º¯°æµÇ°Å³ª ÃÖ´ëÈ­µÇ¾ú½À´Ï´Ù. ºÎÇÕÇÏ´Â ÄÜÆ®·ÑµéÀÇ Å©±â¸¦ Á¶ÀýÇÕ´Ï´Ù.
+GuiControl, Move, MyTreeView, % "H" . (A_GuiHeight - 30)  ; StatusBar¿Í ¿©¹é¿¡ -30À» ÁöÁ¤ÇÕ´Ï´Ù.
+GuiControl, Move, MyListView, % "H" . (A_GuiHeight - 30) . " W" . (A_GuiWidth - TreeViewWidth - 30)
+return
+
+GuiClose:  ; »ç¿ëÀÚ°¡ TreeViewÀÇ GUI âÀ» ´ÝÀ¸¸é ½ºÅ©¸³Æ®¸¦ Á¾·áÇÕ´Ï´Ù.
+ExitApp
+ + + diff --git a/src/docs/commands/Trim.htm b/src/docs/commands/Trim.htm new file mode 100644 index 0000000..6f98628 --- /dev/null +++ b/src/docs/commands/Trim.htm @@ -0,0 +1,40 @@ + + + + +Trim + + + + + + + +

Trim [AHK_L 31+]

+ +

¹®ÀÚ¿­ÀÇ ¾ÕµÚ·ÎºÎÅÍ ¹®ÀÚµéÀ» °È¾î³À´Ï´Ù.

+ +
Result :=  Trim(String, OmitChars = " `t")
+Result := LTrim(String, OmitChars = " `t")
+Result := RTrim(String, OmitChars = " `t")
+

¸Å°³º¯¼ö

+
+ +
String
+

¹®ÀÚ¿­ °ªÀ̳ª º¯¼ö. ¼ýÀÚ´Â Áö¿øÇÏÁö ¾Ê½À´Ï´Ù.

+ +
OmitChars
+

StringÀÇ ¾ÕµÚ·ÎºÎÅÍ ¹èÁ¦ÇÒ ¼±ÅÃÀûÀÎ ¹®ÀÚ ¸®½ºÆ® (´ë¼Ò¹®ÀÚ ±¸ºÐ). »ý·«µÇ¸é, ½ºÆäÀ̽º¿Í ÅÇÀÌ Á¦°ÅµË´Ï´Ù.

+ +
+ +

¿¹Á¦

+
text := "  text  "
+MsgBox % "No trim:`t '" text "'"
+    . "`nTrim:`t '" Trim(text) "'"
+    . "`nLTrim:`t '" LTrim(text) "'"
+    . "`nRTrim:`t '" RTrim(text) "'"
+MsgBox % LTrim("00000123","0")
+ + + diff --git a/src/docs/commands/Try.htm b/src/docs/commands/Try.htm new file mode 100644 index 0000000..2f39e2a --- /dev/null +++ b/src/docs/commands/Try.htm @@ -0,0 +1,130 @@ + + + + +Try + + + + + + + +

Try [v1.1.04+]

+ +

+Çϳª ÀÌ»óÀÇ ¼­¼ú¹®µéÀ» (¸í·É¾î³ª Ç¥Çö½ÄÀ») throw ¸í·É¾î°¡ ´øÁö´Â ½ÇÇà½Ã°£ ¿¡·¯¿Í ¿¹¿Ü·ÎºÎÅÍ º¸È£ÇÕ´Ï´Ù.

+ +
Try Statement
+
Try
+{
+    Statements
+}
+ +

³íÆò

+

+try ¸í·É¾î´Â º¸Åë ´ÙÀ½¿¡ ºí·ÏÀÌ µû¶ó¿É´Ï´Ù - È°°ýÈ£·Î µÑ·¯ ½ÎÀÎ Çϳª ÀÌ»óÀÇ ¼­¼ú¹® (¸í·É¾î³ª Ç¥Çö½Ä). ÇϳªÀÇ ¼­¼ú¹®¸¸ ½ÇÇàÇÑ´Ù¸é, try¿Í °°Àº ÁÙ ¶Ç´Â ´ÙÀ½ ÁÙ¿¡ ¹èÄ¡ÇÒ ¼ö ÀÖ°í, È°°ýÈ£¸¦ »ý·«ÇÒ ¼ö ÀÖ½À´Ï´Ù. try°¡ ¿¡·¯¸¦ ÀâÀ» ¶§ Á¤È®ÇÏ°Ô ÇÑ ¹ø¸¸ ½ÇÇàµÇ´Â Äڵ带 ÁöÁ¤ÇÏ·Á¸é, catch ¸í·É¾î¸¦ »ç¿ëÇϽʽÿÀ.

+

+½ÇÇà½Ã°£ ¿¡·¯°¡ ÀϾ¸é throw ¸í·É¾î ¶Ç´Â ÇÁ·Î±×·¥ÀÌ ¿¹¿Ü¸¦ ´øÁú ¼ö ÀÖ½À´Ï´Ù. try ºí·Ï ¾È¿¡¼­ ¶Ç´Â ºí·Ï¿¡¼­ È£ÃâÇÑ ÇÔ¼ö ¾È¿¡¼­ ¿¹¿Ü°¡ ´øÁ®Áú ¶§, ´ÙÀ½°ú °°Àº ÀÏÀÌ ÀϾ´Ï´Ù:

+ +

+try ºí·ÏÀÌ ½ÇÇà ÁßÀÌÁö ¾ÊÀº µ¿¾È¿¡ ¿¹¿Ü°¡ ´øÁ®Áö¸é, ¿¡·¯ ¸Þ½ÃÁö¸¦ º¸¿©ÁÖ°í ÇöÀç ¾²·¹µå¸¦ Á¾·áÇÕ´Ï´Ù.

+

+One True Brace (OTB) ½ºÅ¸ÀÏÀ» ¼±ÅÃÀûÀ¸·Î try ¸í·É¾î¿¡ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î:

+
try {
+    ...
+} catch e {
+    ...
+}
+ +

°ü·Ã Ç׸ñ

+

Catch, Throw, Finally, ºí·Ï

+ +

¿¹Á¦

+
; ¿¹Á¦ #1: try/catch/throwÀÇ ±âº» °³³ä.
+
+try  ; Äڵ带 ½ÇÇàÇØ º¾´Ï´Ù.
+{
+    HelloWorld()
+    MakeToast()
+}
+catch e  ;  À§ÀÇ ºí·Ï¿¡¼­ ÀÏÀ¸Å² ù ¹ø° ¿¡·¯/¿¡¿Ü¸¦ ó¸®ÇÕ´Ï´Ù.
+{
+    MsgBox, ¿¹¿Ü°¡ ´øÁ®Á³½À´Ï´Ù!`n±¸Ã¼ÀûÀ¸·Î ´ÙÀ½°ú °°½À´Ï´Ù: %e%
+    Exit
+}
+
+HelloWorld()  ; ¾ðÁ¦³ª ¼º°øÇÕ´Ï´Ù.
+{
+    MsgBox, Hello, world!
+}
+
+MakeToast()  ; ¾ðÁ¦³ª ½ÇÆÐÇÕ´Ï´Ù.
+{
+    ; try ºí·ÏÀÇ ¿¡·¯ 󸮿¡ °ð¹Ù·Î Á¡ÇÁÇÕ´Ï´Ù:
+    throw A_ThisFunc " is not implemented, sorry"
+}
+
+ +
; ¿¹Á¦ #2: ErrorLevel ´ë½Å¿¡ try/catch »ç¿ëÇϱâ.
+
+try
+{
+    ; ´ÙÀ½ ¿¹Á¦´Â ¾î¶² À¯ÇüÀÇ ÆÄÀÏÀ» ¹é¾÷ÇÕ´Ï´Ù:
+    FileCopy, %A_MyDocuments%\*.txt, D:\Backup\Text documents
+    FileCopy, %A_MyDocuments%\*.doc, D:\Backup\Text documents
+    FileCopy, %A_MyDocuments%\*.jpg, D:\Backup\Photos
+}
+catch
+{
+    MsgBox, 16,, ÆÄÀÏÀ» ¹é¾÷ÇÏ´Â µ¿¾È ¹®Á¦°¡ ÀÖ¾ú½À´Ï´Ù!
+    ExitApp
+}
+
+ +
; ¿¹Á¦ #3: COM ¿¡·¯ ´Ù·ç±â.
+
+try
+{
+    obj := ComObjCreate("ScriptControl")
+    obj.ExecuteStatement("MsgBox ""This is embedded VBScript""")
+    obj.InvalidMethod() ; ÀÌ ÁÙÀº ½ÇÇà ½Ã°£ ¿¡·¯¸¦ ÀÏÀ¸Åµ´Ï´Ù.
+}
+catch e
+{
+    ; e¸¦ ´ã°í ÀÖ´Â °´Ã¼¿¡ °üÇÑ ´õ ÀÚ¼¼ÇÑ Á¤º¸´Â Exception()¸¦ ÂüÁ¶ÇϽʽÿÀ.
+    MsgBox, 16,, % "Exception thrown!`n`nwhat: " e.what "`nfile: " e.file
+        . "`nline: " e.line "`nmessage: " e.message "`nextra: " e.extra
+}
+
+ +
; ¿¹Á¦ #4: try-catch ¼­¼ú¹®µéÀ» ³»Æ÷Çϱâ.
+
+try Example1() ; ÇÑ ÁÙ ¼­¼ú¹®Àº Try ¸í·É¾î¿Í °°Àº ÁÙ¿¡ ÀÖÀ» ¼ö ÀÖ½À´Ï´Ù.
+catch e
+    MsgBox, Example1() threw %e%.
+
+Example1()
+{
+    try Example2()
+    catch e
+    {
+        if e = 1
+            throw e ; ¿¹¿Ü¸¦ ´Ù½Ã ´øÁ®¼­ È£ÃâÀÚ°¡ ¹ÞÀ» ¼ö ÀÖµµ·Ï ÇÕ´Ï´Ù.
+        else
+            MsgBox, Example2() threw %e%.
+    }
+}
+
+Example2()
+{
+    Random, o, 1, 2
+    throw o
+}
+ + + diff --git a/src/docs/commands/URLDownloadToFile.htm b/src/docs/commands/URLDownloadToFile.htm new file mode 100644 index 0000000..5bda1bc --- /dev/null +++ b/src/docs/commands/URLDownloadToFile.htm @@ -0,0 +1,105 @@ + + + + +UrlDownloadToFile + + + + + + + + +

UrlDownloadToFile

+ +

ÆÄÀÏÀ» ÀÎÅͳݿ¡¼­ ³»·Á¹Þ½À´Ï´Ù.

+ +
UrlDownloadToFile, URL, Filename
+

¸Å°³º¯¼ö

+
+ +
URL
+

³»·Á ¹ÞÀ» ÆÄÀÏÀÇ URL. ¿¹¸¦ µé¾î, http://someorg.org´Â ±× ȸ»çÀÇ È¯¿µ ÆäÀÌÁö¸¦ ¿­¶÷ÇÕ´Ï´Ù.

+ +
Filename
+

ÆÄÀÏ¿¡ ³»·Á¹Þ±â: Áö¿ªÀûÀ¸·Î »ý¼ºµÉ ÆÄÀÏÀÇ À̸§À» ÁöÁ¤ÇÕ´Ï´Ù. Àý´ë °æ·Î°¡ ÁöÁ¤µÇÁö ¾ÊÀ¸¸é %A_WorkingDir%¿¡ ÀÖ´Ù°í °£Áֵ˴ϴÙ. ±âÁ¸ÀÇ ÆÄÀÏÀº ÀÌ »õ ÆÄÀÏ·Î µ¤¾î¾²±â µË´Ï´Ù.

+

º¯¼ö¿¡ ³»·Á¹Þ±â: ¾Æ·¡ÀÇ ¿¹Á¦¸¦ ÂüÁ¶ÇϽʽÿÀ.

+ +
+ +

ErrorLevel

+

+[v1.1.04+] ÀÌ ¸í·É¾î´Â ½ÇÆнà ¿¹¿Ü¸¦ ´øÁú ¼ö ÀÖ½À´Ï´Ù. ´õ ÀÚ¼¼ÇÑ Á¤º¸´Â ½ÇÇà½Ã°£ ¿¡·¯¸¦ ÂüÁ¶ÇϽʽÿÀ.

+

+ErrorLevelÀº ¹®Á¦°¡ ÀÖÀ¸¸é 1·Î ¼³Á¤µÇ°í ¼º°øÇϸé 0ÀÌ ¼³Á¤µË´Ï´Ù.

+ +

³íÆò

+

+¿ø°Ý ÆÄÀÏÀÌ Á¸ÀçÇÏÁö ¾Ê´õ¶óµµ ³»·Á¹Þ±â´Â ¸¶Ä¡ ¼º°øÇÑ °Íó·³ º¸ÀÏ ¼ö ÀÖ½À´Ï´Ù. ¸¹Àº À¥ ¼­¹ö°¡ ½ÇÆÐÇÑ ÆÄÀÏ ´ë½Å¿¡ ¿¡·¯ ÆäÀÌÁö¸¦ º¸³»±â ¶§¹®ÀÔ´Ï´Ù. ÀÌ ¿¡·¯ ÆäÀÌÁö°¡ Filename ´ë½Å¿¡ ÀúÀåµÉ °ÍÀÔ´Ï´Ù.

+

+Internet Explorer 3 ÀÌ»óÀº ¼³Ä¡ÇØ¾ß ÀÌ ±â´ÉÀÌ ÀÛµ¿ÇÕ´Ï´Ù. ¹æÈ­º®À̳ª ¿©·¯ ³×Æ®¿öÅ© ¾î´ðÅÍ ¶§¹®¿¡ ÀÌ ±â´ÉÀÌ ÀÛµ¿ÇÏÁö ¾ÊÀ» ¼ö ÀÖ½À´Ï´Ù. ¶Ç, ¾î¶² À¥ »çÀÌÆ®´Â ÀÌ·± ½ÄÀÇ ³»·Á¹Þ±â¸¦ ±ÝÁöÇϱ⵵ ÇÕ´Ï´Ù.

+ +

Caching:

+ +

+Proxies: ¸¶ÀÌÅ©·Î¼ÒÇÁÆ® ÀÎÅÍ³Ý ÀͽºÇ÷η¯ÀÇ ¼³Á¤¿¡ ÇÁ·Ï½Ã¸¦ »ç¿ëÇϵµ·Ï ±¸¼ºµÇ¾î ÀÖ´Ù¸é UrlDownloadToFileÀº ÇÁ·Ï½Ã ¼­¹ö¸¦ »ç¿ëÇÏ¿© ÀÎÅͳݿ¡ Á¢±ÙÇÕ´Ï´Ù.

+

+FTP ±×¸®°í Gopher: v1.0.48.04+´Â FTP¿Í Gopher URLÀ» Áö¿øÇÕ´Ï´Ù. ¿¹¸¦ µé¾î:

+ +
UrlDownloadToFile, ftp://example.com/home/My File.zip, C:\My Folder\My File.zip  ; À͸íÀ¸·Î ·Î±×ÀÎ ÇÕ´Ï´Ù.
+UrlDownloadToFile, ftp://user:pass@example.com:21/home/My File.zip, C:\My Folder\My File.zip  ; ƯÁ¤ »ç¿ëÀÚ·Î ·Î±×ÀÎ ÇÕ´Ï´Ù.
+UrlDownloadToFile, ftp://user:pass@example.com/My Directory, C:\Dir Listing.html  ; µð·ºÅ丮 ¸®½ºÆ®¸¦ HTML Çü½ÄÀ¸·Î ¾ò½À´Ï´Ù.
+ +

°ü·Ã Ç׸ñ

+

FileRead, FileCopy

+

¿¹Á¦

+ +
UrlDownloadToFile, http://ahkscript.org/download/1.1/version.txt, C:\AutoHotkey Latest Version.txt
+UrlDownloadToFile, http://someorg.org/archive.zip, C:\SomeOrg's Archive.zip
+ +
; ¿¹Á¦: ÅؽºÆ®¸¦ º¯¼ö¿¡ ³»·Á¹Þ½À´Ï´Ù:
+whr := ComObjCreate("WinHttp.WinHttpRequest.5.1")
+whr.Open("GET", "http://ahkscript.org/download/1.1/version.txt", true)
+whr.Send()
+; À§ÀÇ 'true'¸¦ »ç¿ëÇÏ°í ¾Æ·¡ÀÇ È£ÃâÀ» »ç¿ëÇÏ¿© ½ºÅ©¸³Æ®¿¡ ¹ÝÀÀÇϵµ·Ï ¸¸µì´Ï´Ù.
+whr.WaitForResponse()
+version := whr.ResponseText
+MsgBox % version
+
+
; ¿¹Á¦: ºñµ¿±â HTTP ¿äûÀ» ¸¸µì´Ï´Ù.
+
+req := ComObjCreate("Msxml2.XMLHTTP")
+; async¸¦ ÄÑ°í ¿äûÀ» ¿±´Ï´Ù.
+req.open("GET", "http://ahkscript.org/download/1.1/version.txt", true)
+; ¿ªÈ£Ãâ ÇÔ¼ö¸¦ ¼³Á¤ÇÕ´Ï´Ù (v1.1.17+).
+req.onreadystatechange := Func("Ready")
+; ¿äûÀ» Àü¼ÛÇÕ´Ï´Ù. ¿Ï·áµÇ¸é Ready()°¡ È£ÃâµË´Ï´Ù.
+req.send()
+/*
+; ±â´Ù¸± »ý°¢À̶ó¸é onreadystatechange´Â ÇÊ¿ä°¡ ¾ø½À´Ï´Ù.
+; async=true·Î ¼³Á¤ÇÏ°í ±â´Ù¸®¸é ³»·Á¹Þ±â°¡ µÇ´Â µ¿¾È¿¡µµ
+; ½ºÅ©¸³Æ®°¡ ¿©ÀüÈ÷ ¹ÝÀÀÇÒ ¼ö ÀÖ½À´Ï´Ù.
+; ¹Ý¸é¿¡ async=false·Î ¼³Á¤ÇÏ¸é ½ºÅ©¸³Æ®´Â ¹ÝÀÀÇÏÁö ¾Ê½À´Ï´Ù.
+while req.readyState != 4
+    sleep 100
+*/
+#Persistent
+
+Ready() {
+    global req
+    if (req.readyState != 4)  ; Not done yet.
+        return
+    if (req.status == 200 || req.status == 304) ; OK.
+        MsgBox % "Latest AutoHotkey version: " req.responseText
+    else
+        MsgBox 16,, % "Status " req.status
+    ExitApp
+}
+ + + diff --git a/src/docs/commands/Until.htm b/src/docs/commands/Until.htm new file mode 100644 index 0000000..d50a215 --- /dev/null +++ b/src/docs/commands/Until.htm @@ -0,0 +1,56 @@ + + + + +Until + + + + + + + +

Until [AHK_L 59+]

+ +

Loop ¶Ç´Â For-ȸµ¹ÀÌ¿¡ °è¼ÓÇÒÁö ¸»Áö Á¶°ÇÀ» Àû¿ëÇÕ´Ï´Ù.

+ +
Loop {
+    ...
+} Until Expression
+

¸Å°³º¯¼ö

+
+ +
Expression
+

À¯È¿ÇÑ Ç¥Çö½Ä.

+ +
+ +

³íÆò

+

+Ç¥Çö½ÄÀº °¢ ¹Ýº¹ ÈÄ¿¡ ÇÑ ¹ø Æò°¡µË´Ï´Ù. ±×¸®°í continue°¡ »ç¿ëµÇ¾ú¾îµµ Æò°¡µË´Ï´Ù. Ç¥Çö½ÄÀÌ °ÅÁþÀ¸·Î Æò°¡µÇ¸é (ºó ¹®ÀÚ¿­ ¶Ç´Â ¼ýÀÚ 0À̸é), ȸµ¹ÀÌ´Â °è¼ÓµË´Ï´Ù; ±×·¸Áö ¾ÊÀ¸¸é, ȸµ¹À̸¦ ºüÁ® ³ª¿Í ´ÙÀ½ ÁÙ¿¡¼­ ½ÇÇàÀ» °è¼ÓÇÕ´Ï´Ù Until.

+

+Loop Until Àº ´ÙÀ½À» ´ÜÃàÇØ Ç¥ÇöÇÑ °ÍÀÔ´Ï´Ù:

+
Loop {
+    ...
+    if (Expression)
+        break
+}
+

+±×·¸Áö¸¸, Loop UntilÀÌ º¸Åë ´õ ÀÌÇØÇϱ⠽±½À´Ï´Ù. À§¿Í ´Ù¸£°Ô, ÇÑ ÁÙ-ÇàÀ§¿Íµµ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î:

+
Loop
+    x *= 2
+Until x > y
+

+UntilÀº ¾î¶² Loop ¶Ç´Â For°úµµ »ç¿ëÀÌ °¡´ÉÇÕ´Ï´Ù. ¿¹¸¦ µé¾î:

+ +
Loop, Read, %A_ScriptFullPath%
+    lines .= A_LoopReadLine . "`n"
+Until A_Index=5  ; ¾ÕÂÊ ´Ù¼¸ ÁÙÀ» ÀнÀ´Ï´Ù.
+MsgBox % lines
+
+

+A_Index°¡ Ç¥Çö½Ä ¾È¿¡ »ç¿ëµÇ¸é, ¹æ±Ý ³¡³½ ¹Ýº¹ÀÇ À妽º°¡ ´ã±é´Ï´Ù.

+ +

°ü·Ã Ç׸ñ

+

+Loop, While-ȸµ¹ÀÌ, For-ȸµ¹ÀÌ, Break, Continue, Blocks, ÆÄÀÏ°ú Æú´õ ȸµ¹ÀÌ, ·¹Áö½ºÆ®¸® ȸµ¹ÀÌ, ÆÄÀÏ-Àбâ ȸµ¹ÀÌ, ÆÄ½Ì È¸µ¹ÀÌ, If (expression)

diff --git a/src/docs/commands/VarSetCapacity.htm b/src/docs/commands/VarSetCapacity.htm new file mode 100644 index 0000000..3a687cd --- /dev/null +++ b/src/docs/commands/VarSetCapacity.htm @@ -0,0 +1,114 @@ + + + + +VarSetCapacity() + + + + + + + +

VarSetCapacity()

+ +

+º¯¼öÀÇ °¡¿ë ´É·ÂÀ» Å°¿ì°Å³ª ±×ÀÇ ¸Þ¸ð¸®¸¦ ÇØÁ¦ÇÕ´Ï´Ù. º¸Åë, ÀÌ ¸í·É¾î´Â DllCall°ú °°ÀÌ ºñ Á¤»óÀûÀÎ »óȲ¿¡¼­¸¸ ÇÊ¿äÇÕ´Ï´Ù.

+ +
GrantedCapacity := VarSetCapacity(UnquotedVarName [, RequestedCapacity, FillByte])
+

¸Å°³º¯¼ö

+
+ +
GrantedCapacity
+

Var°¡ ÇöÀç º¸À¯ÇÒ ¼ö ÀÖ´Â ¹ÙÀÌÆ® °³¼ö, RequestedCapacityº¸´Ù ´õ Å®´Ï´Ù. + + VarNameÀÌ À¯È¿ÇÑ º¯¼ö À̸§ÀÌ ¾Æ´Ï¸é (¹®ÀÚ ±×´ë·ÎÀÇ ¹®ÀÚ¿­ ¶Ç´Â ¼ýÀÚÀ̸é), 0ÀÌ ¹ÝȯµË´Ï´Ù. (¾ÆÁÖ Èñ±ÍÇÏÁö¸¸) ½Ã½ºÅÛ¿¡ ÃæºÐÇÑ ¸Þ¸ð¸®°¡ ¾ø¾î¼­ º¯°æÀÌ ºÒ°¡´ÉÇϸé, ¿¡·¯ ´ëÈ­»óÀÚ°¡ ³ªÅ¸³ª°í ÇöÀç °¡¿ë ´É·ÂÀÌ ¹ÝȯµË´Ï´Ù - ÀÌ ÇàÀ§´Â ¹Ì·¡ ¹öÀü¿¡¼­´Â ¹Ù²ð ¼ö ÀÖ½À´Ï´Ù.

+ +
UnquotedVarName
+

º¯¼öÀÇ À̸§ (°ãµû¿ÈÇ¥·Î µÑ·¯ ½ÎÁö ¾ÊÀ½). ¿¹¸¦ µé¾î: VarSetCapacity(MyVar, 1000). Array%i%À̳ª ÇÔ¼öÀÇ ByRef ¸Å°³º¯¼ö¿Í °°ÀÌ µ¿Àû º¯¼öµµ µÉ ¼ö ÀÖ½À´Ï´Ù.

+ +
RequestedCapacity
+

»ý·«Çϸé, º¯¼öÀÇ ÇöÀç °¡¿ë´É·ÂÀÌ ¹ÝȯµË´Ï´Ù. ±×¸®°í ±×ÀÇ ³»¿ëÀº º¯°æµÇÁö ¾Ê½À´Ï´Ù. ±×·¸Áö ¾ÊÀ¸¸é, ÇöÀç º¯¼ö¿¡ ÀÖ´Â ¸ðµç °ÍÀÌ »ç¶óÁý´Ï´Ù (º¯¼ö°¡ ºñ¿öÁý´Ï´Ù).

+

+ RequestedCapacity¿¡ º¯¼ö°¡ Á¶Á¤ ÈÄ¿¡ º¸À¯ÇؾßÇÒ ¹ÙÀÌÆ® °³¼ö¸¦ ÁöÁ¤ÇϽʽÿÀ. À¯´ÏÄÚµå ¹®ÀÚ¿­¿¡ ´ëÇÏ¿©, ÀÌ°ÍÀº ±× ±æÀÌÀÇ µÎ ¹è°¡ µÇ¾î¾ß ÇÕ´Ï´Ù. RequestedCapacity´Â ³»ºÎÀÇ Á¾·á ¹®ÀÚ¸¦ Æ÷ÇÔÇÏÁö ¾Ê½À´Ï´Ù. ¿¹¸¦ µé¾î 1·Î ¼³Á¤ÇÏ¸é ±× º¯¼ö´Â 1 ¹ÙÀÌÆ®¿¡´Ù ±×ÀÇ Á¾·á ¹®ÀÚ¸¦ ´õ º¸À¯ÇÒ ¼ö ÀÖ½À´Ï´Ù. ÁÖÀÇ: ³ªÁß¿¡ ½ºÅ©¸³Æ®°¡ ÀÌ º¯¼ö¿¡ ´õ Å« °ªÀ» ÇÒ´çÇϸé ÀÚµ¿À¸·Î È®ÀåµË´Ï´Ù.

+

+ ÀÌ ÇÔ¼ö´Â Á¾Á¾ ±×³É º¯¼ö°¡ ÃÖ¼ÒÇÑÀÇ °¡¿ë´É·ÂÀ» °®Ãß¾ú´ÂÁö È®ÀÎÇϱâ À§ÇÏ¿© È£ÃâµÇ±â ¶§¹®¿¡, ¼öÇ༺´ÉÀÇ ÀÌÀ¯·Î, RequestedCapacity°¡ 0ÀÏ ¶§¸¸ ±× º¯¼ö¸¦ Ãà¼ÒÇÕ´Ï´Ù. + + ´Ù¸¥ ¸»·Î, º¯¼öÀÇ °¡¿ë ´É·ÂÀÌ ÀÌ¹Ì RequestedCapacityº¸´Ù Å©¸é, Ãà¼ÒµÇÁö ¾Ê½À´Ï´Ù (±×·¯³ª ±× º¯¼ö´Â ÀÏ°ü¼ºÀ» À§ÇØ ¿©ÀüÈ÷ ºñ¿öÁý´Ï´Ù).

+

+ ±×·¯¹Ç·Î, ¸í½ÃÀûÀ¸·Î º¯¼ö¸¦ Ãà¼ÒÇÏ·Á¸é, ¸ÕÀú ±×ÀÇ ¸Þ¸ð¸®¸¦ VarSetCapacity(Var, 0)À¸·Î ÇØÁ¦ÇÑ ´ÙÀ½ VarSetCapacity(Var, NewCapacity)À» »ç¿ëÇϽʽÿÀ -- ¶Ç´Â ±×³É ÇÊ¿äÇϸé 0À¸·ÎºÎÅÍ ÀÚµ¿ È®ÀåµÇµµ·Ï ±×´ë·Î µÎ½Ê½Ã¿À

+

+ ¼öÇ༺´ÉÀÇ ÀÌÀ¯·Î, ÀÌÀüÀÇ °¡¿ë´É·ÂÀÌ 64 ¹®ÀÚº¸´Ù ÀÛÀº (À¯´ÏÄÚµå ºôµå¿¡¼­´Â 128 ¹ÙÀÌÆ®º¸´Ù ÀÛÀº) º¯¼ö´Â ÇØÁ¦Çصµ ¾Æ¹« È¿°ú°¡ ¾øÀ» ¼ö ÀÖ½À´Ï´Ù. ¿Ö³ÄÇÏ¸é ±×ÀÇ ¸Þ¸ð¸®°¡ ¿µ±¸ À¯ÇüÀ̱⠶§¹®ÀÔ´Ï´Ù. ÀÌ °æ¿ì, 0ÀÌ ¾Æ´Ï¶ó ÇöÀç °¡¿ë´É·ÂÀÌ ¹ÝȯµË´Ï´Ù.

+

+ ¼öÇ༺´ÉÀÇ ÀÌÀ¯·Î, °¡¿ë ´É·ÂÀÌ 4096 ¹ÙÀÌÆ®º¸´Ù ÀÛÀº º¯¼öÀÇ ¸Þ¸ð¸®´Â ºó ¹®ÀÚ¿­À» ÀúÀåÇصµ ÇØÁ¦µÇÁö ¾Ê½À´Ï´Ù (¿¹, Var := ""). ±×·¸Áö¸¸, VarSetCapacity(Var, 0)´Â º¯¼ö¸¦ ÇØÁ¦ÇÕ´Ï´Ù.

+

+ v1.0.44.03+¿¡¼­, -1À» RequestedCapacity¿¡ ÁöÁ¤ÇÏ¸é º¯¼öÀÇ ³»ºÎ¿¡ ÀúÀåµÈ ¹®ÀÚ¿­ ±æÀ̸¦ ÇöÀç ³»¿ëÀÇ ±æÀÌ·Î °»½ÅÇÒ ¼ö ÀÖ½À´Ï´Ù. º¯¼ö°¡ °£Á¢ÀûÀ¸·Î º¯°æµÇ´Â °æ¿ì¿¡ À¯¿ëÇÕ´Ï´Ù. ¿¹¸¦ µé¾î DllCall()¸¦ ÅëÇÏ¿© ±×ÀÇ ÁÖ¼Ò¸¦ °Ç³×´Â °æ¿ì À¯¿ëÇÕ´Ï´Ù. ÀÌ ¸ðµå¿¡¼­, VarSetCapacity()´Â °¡¿ë´É·ÂÀÌ ¾Æ´Ï¶ó ±× ±æÀ̸¦ ¹ÙÀÌÆ® ´ÜÀ§·Î µ¹·ÁÁÝ´Ï´Ù.

+ +
FillByte
+
+

ÀÌ ¸Å°³º¯¼ö´Â º¸Åë »ý·«µË´Ï´Ù. »ý·«µÇ¸é ¸ñÇ¥ º¯¼öÀÇ ¸Þ¸ð¸®°¡ ÃʱâÈ­µÇÁö ¾Ê½À´Ï´Ù (´ë½Å¿¡, ±× º¯¼ö´Â ´Ü¼øÈ÷ À§¿¡ ±â¼úÇÑ ¹Ù¿Í °°ÀÌ ºñ¿öÁý´Ï´Ù). ±×·¸Áö ¾ÊÀ¸¸é, 0¿¡¼­ 255 »çÀÌÀÇ ¼ýÀÚ¸¦ ÁöÁ¤ÇϽʽÿÀ. ¸ñÇ¥ º¯¼öÀÇ ¸Þ¸ð¸® ±¸¿ªÀÌ (±×ÀÇ ÇöÀç °¡¿ë ´É·Â, RequestedCapacityº¸´Ù ´õ Ŭ¼ö ÀÖ½À´Ï´Ù ¸Å ¹ÙÀÌÆ®¸¶´Ù ±× ¼ýÀڷΠä¿öÁý´Ï´Ù). 0ÀÌ Áö±Ý±îÁö °¡Àå ÈçÈ÷ »ç¿ëµÇ´Â °ªÀÔ´Ï´Ù. ÀÌ °ªÀº DllCall ±¸Á¶¿Í °°ÀÌ º¯¼ö¿¡ ³¯ ÀÌÁø µ¥ÀÌÅ͸¦ ´ã¾Æ¾ß ÇÒ °æ¿ì¿¡ À¯¿ëÇÕ´Ï´Ù.

+ +
+ +

³íÆò

+

+DllCall¿¡ ±â¼úµÈ »ç¿ë¹ý ¿Ü¿¡µµ, ÀÌ ÇÔ¼ö´Â Á¡ÁøÀûÀÎ °áÇÕÀ¸·Î ¹®ÀÚ¿­À» ±¸¼ºÇÒ ¶§ ¼öÇ༺´ÉÀ» Çâ»ó½ÃÅ°´Â µ¥¿¡µµ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. ¿Ö³ÄÇÏ¸é ±× ¹®ÀÚ¿­ÀÇ ÃÖÁ¾ ±æÀÌ°¡ ¾ó¸¶ÀÎÁö ¾Ë°í ÀÖ´Ù¸é ¿©·¯ ÀÚµ¿ Å©±â º¯°æ ºÎ´ãÀ» ÇÇÇÒ ¼ö Àֱ⠶§¹®ÀÔ´Ï´Ù. ±×·± °æ¿ì RequestedCapacity´Â Á¤È®ÇÒ ÇÊ¿ä°¡ ¾ø½À´Ï´Ù °¡¿ë ´É·ÂÀÌ ÀÛÀ¸¸é, ¼öÇ༺´ÉÀÌ ´õ¿í °³¼±µË´Ï´Ù. ±×¸®°í °¡¿ë ´É·ÂÀÌ ¼ÒÁøµÉ ¶§ ÀÚµ¿À¸·Î º¯¼ö°¡ È®ÀåÀ» ½ÃÀÛÇÒ °ÍÀÔ´Ï´Ù. °¡¿ë ´É·ÂÀÌ Å©¸é, ¸Þ¸ð¸®°¡ ³¶ºñµË´Ï´Ù. ±×·¯³ª Àá½ÃÀÏ »ÓÀÔ´Ï´Ù. ¿Ö³ÄÇÏ¸é ¿¬»ê ÈÄ¿¡ VarSetCapacity(Var, 0) ¶Ç´Â Var := ""¸¦ ¼ö´ÜÀ¸·Î ¸ðµç ¸Þ¸ð¸®¸¦ ÇØÁ¦ÇÒ ¼ö Àֱ⠶§¹®ÀÔ´Ï´Ù

+

+#MaxMem´Â º¯¼ö°¡ ½º½º·Î ÇàÇÏ´Â ÀÚµ¿ È®À常 Á¦ÇÑÇÕ´Ï´Ù. VarSetCapacity¿¡ ¿µÇâÀ» ÁÖÁö ¾Ê½À´Ï´Ù.

+ +

°ü·Ã Ç׸ñ

+

+DllCall, #MaxMem, NumPut, NumGet

+ +

¿¹Á¦

+
; MyVar°¡ ÀÛ¾÷¿¡ ÃæºÐÇÑ ¿©À¯ °ø°£À» È®º¸ÇÏ°í ÀÖ´ÂÁö È®ÀÎÇÏ¿© ÃÖÀûÈ­ÇÕ´Ï´Ù.
+VarSetCapacity(MyVar, 10240000)  ; ~10 MB
+Loop
+{
+    ...
+    MyVar = %MyVar%%StringToConcatenate%
+    ...
+}
+ +
; ¹®ÀÚ¿­¿¡ ´ëÇÏ¿© ÇÊ¿äÇÑ ¹öÆÛ °ø°£À» °è»êÇÕ´Ï´Ù.
+bytes_per_char := A_IsUnicode ? 2 : 1
+max_chars := 500
+max_bytes := max_chars * bytes_per_char
+
+Loop 2
+{
+    ; DllCall¿¡ »ç¿ëÇÒ °ø°£À» ÇÒ´çÇÕ´Ï´Ù.
+    VarSetCapacity(buf, max_bytes)
+
+    if A_Index = 1
+        ; DllCallÀ» ÅëÇÏ¿© º¯¼ö¸¦ °£Á¢ÀûÀ¸·Î º¯°æÇÕ´Ï´Ù.
+        DllCall("wsprintf", "ptr", &buf, "str", "0x%08x", "uint", 4919)
+    else
+        ; ±æÀ̸¦ ÀÚµ¿À¸·Î °»½ÅÇÏ·Á¸é "str"¸¦ »ç¿ëÇÕ´Ï´Ù:
+        DllCall("wsprintf", "str", buf, "str", "0x%08x", "uint", 4919)
+
+    ; ¿Ö ±æÀ̸¦ °»½ÅÇÑ ÇÊ¿ä°¡ ÀÖ´ÂÁö º¸¿©ÁÖ±â À§ÇØ ¹®ÀÚ¿­À» °áÇÕÇÕ´Ï´Ù:
+    wrong_str := buf . "<end>"
+    wrong_len := StrLen(buf)
+
+    ; º¯¼öÀÇ ±æÀ̸¦ °»½ÅÇÕ´Ï´Ù.
+    VarSetCapacity(buf, -1)
+
+    right_str := buf . "<end>"
+    right_len := StrLen(buf)
+
+    MsgBox,
+    (
+    ¾÷µ¥ÀÌÆ® Àü
+      ¹®ÀÚ¿­: %wrong_str%
+      ±æÀÌ: %wrong_len%
+
+    ¾÷µ¥ÀÌÆ® ÈÄ
+      ¹®ÀÚ¿­: %right_str%
+      ±æÀÌ: %right_len%
+    )
+}
+
+ + + diff --git a/src/docs/commands/While.htm b/src/docs/commands/While.htm new file mode 100644 index 0000000..283c8d0 --- /dev/null +++ b/src/docs/commands/While.htm @@ -0,0 +1,60 @@ + + + + +While-loop + + + + + + + +

While-ȸµ¹ÀÌ [v1.0.48+]

+ +

ÁöÁ¤µÈ Ç¥Çö½ÄÀÌ °ÅÁþÀ¸·Î Æò°¡µÉ ¶§±îÁö ÀÏ·ÃÀÇ ¸í·É¾îµéÀ» ¹Ýº¹ÀûÀ¸·Î ½ÇÇàÇÕ´Ï´Ù.

+ +
While Expression
+

¸Å°³º¯¼ö

+
+ +
Expression
+

À¯È¿ÇÑ Ç¥Çö½Ä. ¿¹¸¦ µé¾î: while x < y.

+ +
+ +

³íÆò

+

+Ç¥Çö½ÄÀº ¹Ýº¹À» Çϱâ Àü¿¡ °¢°¢ ÇÑ ¹ø¾¿ Æò°¡µË´Ï´Ù. Ç¥Çö½ÄÀÌ ÂüÀ¸·Î Æò°¡µÇ¸é (±× °á°ú°¡ ºó¹®ÀÚ¿­À̳ª 0¸¸ ¾Æ´Ï¸é), ȸµ¹ÀÌÀÇ ¸öü°¡ ½ÇÇàµË´Ï´Ù; ±×·¸Áö ¾ÊÀ¸¸é, ½ÇÇàÀº ȸµ¹ÀÌ ¸öü ´ÙÀ½ ÁÙ·Î Á¡ÇÁÇÕ´Ï´Ù.

+

+while-ȸµ¹ÀÌ´Â º¸Åë ´ÙÀ½¿¡ ºí·ÏÀÌ µû¶ó¿É´Ï´Ù. ºí·ÏÀº ȸµ¹ÀÌÀÇ ¸öü¸¦ Çü¼ºÇÏ´Â ¼­¼ú¹®ÀÇ Áý´ÜÀÔ´Ï´Ù. ±×·¸Áö¸¸, ¼­¼ú¹®ÀÌ Çϳª¸¸ Àִ ȸµ¹ÀÌ´Â ºí·ÏÀ» ¿ä±¸ÇÏÁö ¾Ê½À´Ï´Ù (ÀÌ·± ¸ñÀûÀ¸·Î "if"¿Í ±×ÀÇ "else"´Â ÇϳªÀÇ ¼­¼ú¹®À¸·Î °£Áֵ˴ϴÙ).

+

+ ¼±ÅÃÀûÀ¸·Î One True Brace (OTB) ½ºÅ¸ÀÏÀ»»ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. ÀÌ ½ºÅ¸ÀÏÀº ÁÙ ¾Æ·¡°¡ ¾Æ´Ï¶ó °°Àº ÁÙ¿¡ ¿©´Â °ýÈ£¸¦ Çã¿ëÇÕ´Ï´Ù. ¿¹¸¦ µé¾î: while x < y {.

+

+³»Àå º¯¼ö A_Index´Â ÇöÀç ȸµ¹ÀÌ È½¼ö°¡ µé¾î ÀÖ½À´Ï´Ù. 1À» ´ã°í ÀÖÀ¸¸é óÀ½À¸·Î ȸµ¹ÀÌÀÇ Ç¥Çö½Ä°ú ¸öü°¡ ½ÇÇàµÈ °ÍÀÔ´Ï´Ù. µÎ ¹ø°¶ó¸é 2°¡ µé¾î ÀÖ½À´Ï´Ù; µîµî. ¾ÈÂÊ È¸µ¹ÀÌ°¡ ¹Ù±ùÂÊ È¸µ¹ÀÌ¿¡ µÑ·¯ ½Î¿© ÀÖ´Ù¸é, ¾ÈÂÊ È¸µ¹ÀÌ°¡ ¿ì¼±±ÇÀ» °¡Áý´Ï´Ù. A_Index´Â ¸ðµç À¯ÇüÀÇ È¸µ¹ÀÌ ¾È¿¡¼­ ÀÛµ¿ÇÏÁö¸¸, 0À̸é ȸµ¹ÀÌ ¹Ù±ù¿¡ ÀÖ´Â °ÍÀÔ´Ï´Ù.

+

+¸ðµç ȸµ¹ÀÌ¿Í ¸¶Âù°¡Áö·Î, Break´Â ȸµ¹À̸¦ ÀÏÂï ºüÁ® ³ª¿À´Â µ¥ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. ¶ÇÇÑ, Continue´Â ÇöÀç ½ÇÇàÀÇ ³ª¸ÓÁö¸¦ °Ç³Ê ¶Ù´Â µ¥ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. ±× ¶§¸¶´Ù A_Index´Â 1 ¸¸Å­¾¿ Áõ°¡ÇÏ°í while-ȸµ¹ÀÌÀÇ Ç¥Çö½ÄÀÌ ÀçÆò°¡µË´Ï´Ù. ¿©ÀüÈ÷ ÂüÀ̸é, »õ·Î ¹Ýº¹À» ½ÃÀÛÇÕ´Ï´Ù; ±×·¸Áö ¾ÊÀ¸¸é ȸµ¹À̸¦ ³¡³À´Ï´Ù.

+

+Àü¹®È­µÈ ȸµ¹ÀÌ: ȸµ¹ÀÌ´Â ÆÄÀÏ, Æú´õ, ¶Ç´Â ·¹Áö½ºÆ®¸® Ç׸ñÀ» ÀÚµ¿À¸·Î (ÇÑ ¹ø¿¡ Çϳª¾¿) ¿­¶÷ÇÏ´Â µ¥ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. ÀÚ¼¼ÇÑ °ÍÀº ÆÄÀÏ-ȸµ¹ÀÌ¿Í ·¹Áö½ºÆ®¸®-ȸµ¹À̸¦ ÂüÁ¶ÇϽʽÿÀ. °Ô´Ù°¡, ÆÄÀÏ-Àбâ ȸµ¹ÀÌ´Â ÆÄÀÏ ÀüüÀÇ ³»¿ëÀ», ÇÑ ¹ø¿¡ ÇÑ ÁÙ¾¿ ó¸®ÇÒ ¼ö ÀÖ½À´Ï´Ù. ¸¶Áö¸·À¸·Î, ÆÄ½Ì È¸µ¹ÀÌ´Â ±¸ºÐµÈ ¹®ÀÚ¿­ ¾ÈÀÇ °¢ Çʵ带 ó¸®ÇÒ ¼ö ÀÖ½À´Ï´Ù.

+ +

°ü·Ã Ç׸ñ

+

Until, Break, Continue, Blocks, Loop, For-ȸµ¹ÀÌ, ÆÄÀÏ-Æú´õ ȸµ¹ÀÌ, ·¹Áö½ºÆ®¸® ȸµ¹ÀÌ, ÆÄÀÏ-Àбâ ȸµ¹ÀÌ, ÆÄ½Ì È¸µ¹ÀÌ, If (expression)

+ +

¿¹Á¦

+
; »ç¿ëÀÚ°¡ ¿Þ¹öÆ°À» ²ô´Â µ¿¾È, ToolTipÀÌ ²ø±â-±¸¿ª ¾È¿¡ ±× Å©±â¸¦ º¸¿©ÁÝ´Ï´Ù.
+
+CoordMode, Mouse, Screen
+
+~LButton::
+    MouseGetPos, begin_x, begin_y
+    while GetKeyState("LButton")
+    {
+        MouseGetPos, x, y
+        ToolTip, % begin_x ", " begin_y "`n" Abs(begin_x-x) " x " Abs(begin_y-y)
+        Sleep, 10
+    }
+    ToolTip
+return
+ + + diff --git a/src/docs/commands/WinActivate.htm b/src/docs/commands/WinActivate.htm new file mode 100644 index 0000000..fcfa9ab --- /dev/null +++ b/src/docs/commands/WinActivate.htm @@ -0,0 +1,65 @@ + + + + +WinActivate + + + + + + + +

WinActivate

+ +

ÁöÁ¤µÈ âÀ» È°¼ºÈ­ÇÕ´Ï´Ù (°¡Àå ¾ÕÀ¸·Î ³ª¿À°Ô ÇÕ´Ï´Ù).

+ +
WinActivate [, WinTitle, WinText, ExcludeTitle, ExcludeText]
+

¸Å°³º¯¼ö

+
+ +
WinTitle
+

â Á¦¸ñ ¶Ç´Â ¸ñÇ¥ âÀ» ½Äº°ÇÏ´Â ±âŸ ±âÁØ. WinTitle ÂüÁ¶.

+ +
WinText
+

Á¸ÀçÇϸé, ÀÌ ¸Å°³º¯¼ö´Â ¸ñÇ¥ â ÅؽºÆ®ÀÇ ºÎ¹®ÀÚ¿­ÀÔ´Ï´Ù (Window Spy¿¡ ³ëÃâ). ¼ûÀº ÅؽºÆ®´Â DetectHiddenTextÀÌ ÄÑÁ® ÀÖ¾î¾ß ŽÁöµË´Ï´Ù.

+ +
ExcludeTitle
+

Á¦¸ñ¿¡ ÀÌ °ªÀÌ Àִ âÀº ¹«½ÃµË´Ï´Ù.

+ +
ExcludeText
+

ÅؽºÆ®¿¡ ÀÌ °ªÀÌ Àִ âÀº Á¦¿ÜµË´Ï´Ù.

+ +
+ +

³íÆò

+

+âÀÌ ÃÖ¼ÒÈ­µÇ¾î ÀÖ´Ù¸é, ±× âÀ» È°¼ºÈ­Çϱâ Àü¿¡ ¸ÕÀú ÀÚµ¿À¸·Î º¹±¸ÇÕ´Ï´Ù. v1.1.20 ÀÌÈÄ¿¡¼­, âÀÌ ÀÌ¹Ì È°¼ºÈ­µÇ¾î À־ º¹±¸ÇÕ´Ï´Ù.

+

+¸ñÇ¥ âÀ» º¹±¸ÇÏ·Á´Â ½Ãµµ¸¦ 60ms µ¿¾È ¿©¼¸ ¹ø ÇÕ´Ï´Ù. ±×¸®ÇÏ¿©, º¸Åë WinActivate ´ÙÀ½¿¡ WinWaitActiveÀ̳ª IfWinNotActive°¡ µû¶ó¿Ã ÇÊ¿ä°¡ ¾ø½À´Ï´Ù.

+

+ºÎÇÕÇϴ âÀÌ ÀÌ¹Ì È°¼ºÈ­µÇ¾î ÀÖÀ¸¸é, ±× âÀÌ È°¼ºÈ­ »óŸ¦ À¯ÁöÇÕ´Ï´Ù. ±× ¾Æ·¡ÀÇ ´Ù¸¥ ºÎÇÕÇϴ âµéÀ» È°¼ºÈ­ÇÏÁö ¾Ê½À´Ï´Ù. ÀϹÝÀûÀ¸·Î, ¿©·¯ âÀÌ ºÎÇÕÇϸé, ÃÖ»óÀ§ (°¡Àå ÃÖ±Ù¿¡ »ç¿ëµÈ) âÀÌ È°¼ºÈ­µË´Ï´Ù. ÃÖÇÏÀ§ (°¡Àå ¿À·§µ¿¾È »ç¿ëµÇÁö ¾ÊÀº) âÀº WinActivateBottomÀ» ÅëÇÏ¿© È°¼ºÈ­ÇÒ ¼ö ÀÖ½À´Ï´Ù.

+

[v1.1.20+]: È°¼º âÀÌ ¼û¾î ÀÖ°í DetectHiddenWindows°¡ ²¨Á® ÀÖÀ¸¸é, ÀüÇô ºÎÇÕ ´ë»óÀ¸·Î °í·ÁµÇÁö ¾Ê½À´Ï´Ù. ´ë½Å¿¡, º¸À̴ âÀÌ ºÎÇÕÇÏ¸é ±× Ã¢ÀÌ È°¼ºÈ­µË´Ï´Ù.

+

+´Ù¸¥ âÀ» È°¼ºÈ­ÇÑ ÈÄ °ð¹Ù·Î âÀÌ È°¼ºÈ­µÉ ¶§, ¾î¶² ½Ã½ºÅÛ¿¡¼­´Â ŽºÅ© ¹Ù ¹öÆ°ÀÌ ±ô¹ÚÀ̱⠽ÃÀÛÇÒ °ÍÀÔ´Ï´Ù (OS¿Í ±×ÀÇ È¯°æ ¼³Á¤¿¡ µû¶ó ´Ù¸§). À̸¦ ÇÇÇÏ·Á¸é #WinActivateForce¸¦ »ç¿ëÇϽʽÿÀ.

+

+â Á¦¸ñ°ú ÅؽºÆ®´Â ´ë¼Ò¹®ÀÚ¸¦ ±¸ºÐÇÕ´Ï´Ù. ¼ûÀº âÀº DetectHiddenWindows°¡ ÄÑÁ® ÀÖ¾î¾ß ŽÁöµË´Ï´Ù.

+

+¾Ë·ÁÁø ¹®Á¦: ½ºÅ©¸³Æ®°¡ ¿ø°Ý µ¥½ºÅ©Å¾À» ÅëÇÏ¿© Á¢±ÙÁßÀÎ ÄÄÇ»ÅÍ ¶Ç´Â ¼­¹ö À§¿¡¼­ ½ÇÇàÁßÀ̶ó¸é , ±× ¿ø°Ý µ¥½ºÅ©Å¾ Ŭ¶óÀ̾ðÆ®°¡ ÃÖ¼ÒÈ­µÉ °æ¿ì WinActivate°¡ ¸¶ºñµÉ ¼ö ÀÖ½À´Ï´Ù. ÇÑ °¡Áö ¿ìȸåÀº â È°¼ºÈ­¸¦ ¿ä±¸ÇÏÁö ¾Ê´Â ¸í·É¾î¸¦ »ç¿ëÇÏ´Â °ÍÀÔ´Ï´Ù. ¿¹¸¦ µé¾î ControlSend ±×¸®°í ControlClick¸¦ »ç¿ëÇϽʽÿÀ. ¶Ç´Ù¸¥ ¿ìȸåÀº ´Ù¸¥ ·¹Áö½ºÆ®¸® ¼³Á¤À» ·ÎÄÃ/Ŭ¶óÀ̾ðÆ® ÄÄÇ»ÅÍ¿¡ Àû¿ëÇÏ´Â °ÍÀÔ´Ï´Ù:

+ +
; HKCUÀ» HKLMÀ¸·Î ¹Ù²Ù¾î ½Ã½ºÅÛÀÇ ¸ðµç »ç¿ëÀÚ¿¡°Ô ¿µÇâÀ» ÁÝ´Ï´Ù.
+RegWrite REG_DWORD, HKCU, Software\Microsoft\Terminal Server Client
+    , RemoteDesktop_SuppressWhenMinimized, 2
+ +

°ü·Ã Ç׸ñ

+

WinActivateBottom, #WinActivateForce, SetTitleMatchMode, DetectHiddenWindows, ¸¶Áö¸· ¹ß°ß â, IfWinExist, IfWinActive, WinWaitActive, WinWait, WinWaitClose, WinClose, GroupActivate, WinSet

+ +

¿¹Á¦

+ +
IfWinExist, Untitled - Notepad
+    WinActivate ; À§¿¡¼­ ¹ß°ßÇÑ Ã¢À» »ç¿ëÇÕ´Ï´Ù
+else
+    WinActivate, Calculator
+ + + diff --git a/src/docs/commands/WinActivateBottom.htm b/src/docs/commands/WinActivateBottom.htm new file mode 100644 index 0000000..c40144a --- /dev/null +++ b/src/docs/commands/WinActivateBottom.htm @@ -0,0 +1,63 @@ + + + + +WinActivateBottom + + + + + + + +

WinActivateBottom

+ +

+WinActivate¿Í µ¿ÀÏÇÏÁö¸¸ ÃÖ»ó´ÜÀÌ ¾Æ´Ï¶ó ÃÖÇÏ´Ü (°¡Àå ¿À·§µ¿¾È ºñÈ°¼º »óÅ¿¡) ºÎÇÕÇϴ âÀ» È°¼ºÈ­ÇÕ´Ï´Ù.

+ +
WinActivateBottom [, WinTitle, WinText, ExcludeTitle, ExcludeText]
+

¸Å°³º¯¼ö

+
+ +
WinTitle
+

¸ñÇ¥ âÀ» ½Äº°Çϴ â Á¦¸ñ ¶Ç´Â ±âŸ ±âÁØ. WinTitle ÂüÁ¶.

+ +
WinText
+

Á¸ÀçÇϸé, ÀÌ ¸Å°³º¯¼ö´Â ¸ñÇ¥ â ÅؽºÆ®ÀÇ ºÎ¹®ÀÚ¿­ÀÔ´Ï´Ù (Window Spy¿¡ ³ëÃâ). ¼ûÀº ÅؽºÆ®´Â DetectHiddenText°¡ ÄÑÁ® ÀÖ¾î¾ß ŽÁöµË´Ï´Ù.

+ +
ExcludeTitle
+

Á¦¸ñ¿¡ ÀÌ °ªÀÌ Àִ âÀº Á¦¿ÜÇÕ´Ï´Ù.

+ +
ExcludeText
+

ÅؽºÆ®¿¡ ÀÌ °ªÀÌ Àִ âÀº Á¦¿ÜÇÕ´Ï´Ù.

+ +
+ +

³íÆò

+

+ºÎÇÕÇϴ âÀÌ Çϳª ¹Û¿¡ ¾ø´Ù¸é, WinActivateBottomÀº WinActivate¿Í µ¿ÀÏÇÏ°Ô ÇàÀ§ÇÕ´Ï´Ù.

+

+Window groupsÀº ÀÌ ¸í·É¾îº¸´Ù ´õ °í±ÞÀÔ´Ï´Ù. ±×·¡¼­ ´õ À¯¿¬ÇÑ Æ¯Â¡ÀÌ ÇÊ¿äÇÏ¸é »ç¿ëÀ» °í·ÁÇØ º¸½Ê½Ã¿À.

+

+âÀÌ ÃÖ¼ÒÈ­µÇ¾î ÀÖÀ¸¸é, ÀÚµ¿À¸·Î º¹±¸ÇÑ ´ÙÀ½ È°¼ºÈ­ÇÕ´Ï´Ù.

+

+¸ñÇ¥ âÀ» È°¼ºÈ­Çϱâ À§ÇØ 60ms µ¿¾È ¿©¼¸ ¹ø ½Ãµµ¸¦ ÇÕ´Ï´Ù. ±×¸®ÇÏ¿©, º¸Åë ÀÌ ¸í·É¾î ´ÙÀ½¿¡ WinWaitActive ¸í·É¾î°¡ µû¶ó¿Ã ÇÊ¿ä°¡ ¾ø½À´Ï´Ù.

+

+WinActivate¿Í ´Ù¸£°Ô, ¸¶Áö¸· ¹ß°ß âÀº ÃÖÇ쫆 ̢ÀÏ °æ¿ì°¡ ¾ø±â ¶§¹®¿¡ »ç¿ëÇÒ ¼ö ¾ø½À´Ï´Ù. ±×·¯¹Ç·Î, Àû¾îµµ ¸Å°³º¯¼ö Áß Çϳª´Â ¹Ýµå½Ã ºñ¾î ÀÖÁö ¾Ê¾Æ¾ß ÇÕ´Ï´Ù.

+

+¶Ç´Ù¸¥ âÀÌ È°¼ºÈ­µÈ ÈÄ¿¡ °ð¹Ù·Î À̾ âÀÌ È°¼ºÈ­µÇ¸é, ´ëºÎºÐÀÇ ½Ã½ºÅÛ¿¡¼­ ŽºÅ© ¹Ù ¹öÆ°ÀÌ ±ô¹ÚÀ̱⠽ÃÀÛÇÒ °ÍÀÔ´Ï´Ù (OS¿Í ±× ȯ°æ ¼³Á¤¿¡ µû¶ó ´Ù¸§) À̸¦ ÇÇÇÏ·Á¸é, #WinActivateForce¸¦ »ç¿ëÇϽʽÿÀ.

+

+â Á¦¸ñ°ú ÅؽºÆ®´Â ´ë¼Ò¹®ÀÚ¸¦ ±¸º°ÇÕ´Ï´Ù. ¼ûÀº âÀº DetectHiddenWindowsÀÌ ÄÑÁ® ÀÖ¾î¾ß ŽÁöµË´Ï´Ù.

+ +

°ü·Ã Ç׸ñ

+

WinActivate, #WinActivateForce, SetTitleMatchMode, DetectHiddenWindows, IfWinExist, IfWinActive, WinWaitActive, WinWait, WinWaitClose, GroupActivate

+ +

¿¹Á¦

+
; ÀÌ ÇÖÅ°·Î ¸ðµç ¿­¸° ºê¶ó¿ìÀú âÀ» ¿¹ÀüºÎÅÍ »õ·Î¿î ¼ø¼­·Î ¹æ¹®ÇÒ ¼ö ÀÖ½À´Ï´Ù:
+#i::
+SetTitleMatchMode, 2
+WinActivateBottom, - Microsoft Internet Explorer
+return
+ + + diff --git a/src/docs/commands/WinActive.htm b/src/docs/commands/WinActive.htm new file mode 100644 index 0000000..ce7ad05 --- /dev/null +++ b/src/docs/commands/WinActive.htm @@ -0,0 +1,66 @@ + + + + +IfWinActive / IfWinNotActive / WinActive + + + + + + + +

IfWinActive / IfWinNotActive / WinActive

+ +

ÁöÁ¤µÈ âÀÌ Á¸ÀçÇÏ´ÂÁö ±×¸®°í ÇöÀç È°¼ºÈ­ »óÅÂÀÎÁö Á¡°ËÇÕ´Ï´Ù (ÃÖÀü¹æ). ±×·¸´Ù¸é, WinActive()´Â ±×ÀÇ Unique ID (HWND)¸¦ µ¹·ÁÁÝ´Ï´Ù.

+ +
IfWinActive [, WinTitle, WinText,  ExcludeTitle, ExcludeText]
+IfWinNotActive [, WinTitle, WinText, ExcludeTitle, ExcludeText]
+UniqueID := WinActive("WinTitle", "WinText", "ExcludeTitle", "ExcludeText")
+

¸Å°³º¯¼ö

+
+ +
WinTitle
+

â Á¦¸ñ ¶Ç´Â ¸ñÇ¥ âÀ» ½Äº°ÇÏ´Â ´Ù¸¥ ±âÁØ WinTitle ÂüÁ¶.

+ +
WinText
+

Á¸ÀçÇϸé, ¸ñÇ¥ â ÅؽºÆ®ÀÇ ºÎ¹®ÀÚ¿­ÀÔ´Ï´Ù (Window Spy¿¡ ³ëÃâµÊ). ¼ûÀº ÅؽºÆ®´Â DetectHiddenText°¡ ÄÑÁ® ÀÖ¾î¾ß(ON) ŽÁöµË´Ï´Ù.

+ +
ExcludeTitle
+

Á¦¸ñ¿¡ ÀÌ °ªÀÌ Àִ âÀº ¹«½ÃµË´Ï´Ù. ÁÖÀÇ: ÇÏÀ§ ȣȯÀÇ ¹®Á¦ ¶§¹®¿¡, IfWinActive¿Í IfWinNotActive´Â ¸í·É¾îÀÇ À̸§¿¡ Á¤È®ÇÏ°Ô ºÎÇÕÇÏ¸é ¸Å°³º¯¼ö¸¦ ÀÌ ¸í·É¾î·Î ÀÌÇØÇÕ´Ï´Ù. À̸¦ ¿ìȸÇÏ·Á¸é, ´ë½Å¿¡ WinActive() ÇÔ¼ö¸¦ »ç¿ëÇϽʽÿÀ.

+ +
ExcludeText
+

ÅؽºÆ®¿¡ ÀÌ °ªÀÌ Àִ âÀº Á¦¿ÜµË´Ï´Ù.

+ +
+ +

³íÆò

+

+¸ðµç ¸Å°³º¯¼ö°¡ »ý·«µÇ¸é, ¸¶Áö¸· ¹ß°ß âÀÌ »ç¿ëµË´Ï´Ù.

+

+ÀÌ ¸í·É¾î Áß Çϳª¶óµµ È°¼ºÃ¢ÀÌ ºÎÇÕÇÑ´Ù´Â °ÍÀ» ¾Ë°Ô µÇ¸é, ¸¶Áö¸· ¹ß°ß âÀÌ ±× È°¼º âÀ¸·Î °»½ÅµË´Ï´Ù. Áï, IfWinActive°¡ Âü("true")À¸·Î Æò°¡µÇ°Å³ª IfWinNotActive°¡ °ÅÁþ("false")À¸·Î Æò°¡µÇ¸é, ¸¶Áö¸· ¹ß°ß âÀÌ °»½ÅµË´Ï´Ù.

+

+ÇÔ¼ö WinActive()´Â ÁöÁ¤ÇÑ ±âÁØ¿¡ ºÎÇÕÇÏ´Â È°¼º âÀÇUnique ID (HWND)¸¦ µ¹·ÁÁÝ´Ï´Ù. ¾øÀ¸¸é 0À» µ¹·ÁÁÝ´Ï´Ù. 0ÀÌ-¾Æ´Ñ ¸ðµç ¼ýÀÚ´Â Âü("true")À¸·Î °£ÁֵǹǷÎ, ´ÙÀ½ ¼­¼ú¹® if WinActive("WinTitle")´Â WinTitleÀÌ È°¼ºÈ­µÇ¾î ÀÖÀ¸¸é ÂüÀÔ´Ï´Ù.

+

+È°¼º âÀÇ À¯ÀÏÇÑ ID¸¦ ¿­¶÷ÇÏ´Â ½¬¿î ¹æ¹ýÀº ActiveHwnd := WinExist("A")ÀÔ´Ï´Ù.

+

+SetWinDelay´Â IfWinExist/IfWinActive¿¡ Àû¿ëµÇÁö ¾Ê½À´Ï´Ù.

+

+â Á¦¸ñ°ú ÅؽºÆ®´Â ´ë¼Ò¹®ÀÚ¸¦ ±¸º°ÇÕ´Ï´Ù. ¼ûÀº âÀº DetectHiddenWindowsÀÌ ÄÑÁ® ÀÖ¾î¾ß ŽÁöµË´Ï´Ù.

+ +

°ü·Ã Ç׸ñ

+

IfWinExist, SetTitleMatchMode, DetectHiddenWindows, Last Found Window, WinActivate, WinWaitActive, WinWait, WinWaitClose, #IfWinActive/Exist

+

¿¹Á¦

+ +
IfWinActive, Untitled - Notepad
+{
+    WinMaximize  ; À§¿¡¼­ IfWinActive°¡ ¹ß°ßÇÑ ³ëÆ®Æеå âÀ» ÃÖ´ëÈ­ÇÕ´Ï´Ù.
+    Send, Some text.{Enter}
+    return
+}
+
+if WinActive("ahk_class Notepad") or WinActive("ahk_class" . ClassName)  ; "ahk_class"´Â µÚ¿¡ ½ºÆäÀ̽º°¡ ÇÊ¿äÇÏÁö ¾Ê½À´Ï´Ù.
+    WinClose  ; ¸¶Áö¸· ¹ß°ß âÀ» »ç¿ëÇÕ´Ï´Ù.
+ + + diff --git a/src/docs/commands/WinClose.htm b/src/docs/commands/WinClose.htm new file mode 100644 index 0000000..05730e3 --- /dev/null +++ b/src/docs/commands/WinClose.htm @@ -0,0 +1,63 @@ + + + + +WinClose + + + + + + + +

WinClose

+ +

ÁöÁ¤µÈ âÀ» ´Ý½À´Ï´Ù.

+ +
WinClose [, WinTitle, WinText, SecondsToWait, ExcludeTitle, ExcludeText]
+

¸Å°³º¯¼ö

+
+ +
WinTitle
+

¸ñÇ¥ âÀ» ½Äº°Çϴ â Á¦¸ñ ¶Ç´Â ´Ù¸¥ ±âÁØ. WinTitle ÂüÁ¶.

+ +
WinText
+

Á¸ÀçÇÏ¸é ¸ñÇ¥ â ÅؽºÆ®ÀÇ ºÎ¹®ÀÚ¿­ÀÔ´Ï´Ù (Window Spy¿¡ ³ëÃâµÊ). ¼ûÀº ÅؽºÆ®´Â DetectHiddenText°¡ ÄÑÁ® ÀÖÀ¸¸é(ON) ŽÁöµË´Ï´Ù.

+ +
SecondsToWait
+

»ý·«µÇ°Å³ª ºñ¾î ÀÖÀ¸¸é, ÀüÇô ±â´Ù¸®Áö ¾Ê½À´Ï´Ù. 0À̸é 500ms µ¿¾È ±â´Ù¸³´Ï´Ù. + ±×·¸Áö ¾ÊÀ¸¸é, ÁöÁ¤ °³¼öÀÇ ÃÊ µ¿¾È âÀÌ ´ÝÈ÷±â¸¦ ±â´Ù¸³´Ï´Ù (¼Ò¼öÁ¡À» Çã¿ëÇÏ°í Ç¥Çö½Äµµ °¡´ÉÇÕ´Ï´Ù). âÀÌ ±× µ¿¾È ´ÝÈ÷Áö ¾Ê´õ¶óµµ, ½ºÅ©¸³Æ®´Â ½ÇÇàÀ» °è¼ÓÇÕ´Ï´Ù. ErrorLevelÀº ÀÌ ¸í·É¾î·Î ¼³Á¤µÇÁö ¾Ê½À´Ï´Ù. ±×·¡¼­ âÀÌ ´ÝÇû´ÂÁö È®½ÇÇÏ°Ô ¾Ë ÇÊ¿ä°¡ ÀÖ´Ù¸é IfWinExist³ª WinWaitClose¸¦ »ç¿ëÇϽʽÿÀ. ÀÌ ¸í·É¾î°¡ ±â´Ù¸®´Â µ¿¾È, ÇÖÅ°, ¸ÂÃã ¸Þ´º Ç׸ñ, ¶Ç´Â ŸÀ̸Ӹ¦ ÅëÇÏ¿© »õ ¾²·¹µå¸¦ ±âµ¿ÇÒ ¼ö ÀÖ½À´Ï´Ù.

+ +
ExcludeTitle
+

Á¦¸ñ¿¡ ÀÌ °ªÀÌ Àִ âÀº ¹«½ÃÇÕ´Ï´Ù.

+ +
ExcludeText
+

ÅؽºÆ®¿¡ ÀÌ °ªÀÌ Àִ âÀº ¹«½ÃÇÕ´Ï´Ù.

+ +
+ +

³íÆò

+

+ÀÌ ¸í·É¾î´Â â¿¡ ´Ý±â ¸Þ½ÃÁö¸¦ Àü¼ÛÇÕ´Ï´Ù. ±× °á°ú´Â â¿¡ µû¶ó ´Ù¸¨´Ï´Ù (µ¥ÀÌÅ͸¦ ÀúÀåÇϵµ·Ï ¿ä±¸ÇÒ ¼ö ÀÖ½À´Ï´Ù. µîµî.)

+

+ºÎÇÕÇϴ âÀÌ È°¼ºÈ­µÇ¾î ÀÖ´Ù¸é, ±× ¾Æ·¡¿¡ ºÎÇÕÇÏ´Â ¾î¶² ⺸´Ù ¿ì¼± ±× âÀÌ ´ÝÈü´Ï´Ù. ÀϹÝÀûÀ¸·Î, ¿©·¯ âÀÌ ºÎÇÕÇϸé, ÃÖ»óÀ§ (°¡Àå ÃÖ±Ù¿¡ »ç¿ëµÈ) âÀÌ ´ÝÈü´Ï´Ù.

+

+ÀÌ ¸í·É¾î´Â ºÎÇÕÇÏ´Â ÃÖ»óÀ§ â¿¡¸¸ ÀÛµ¿ÇÕ´Ï´Ù. ´Ü, WinTitleÀÌ ahk_group GroupNameÀÏ °æ¿ì´Â Á¦¿ÜÇÕ´Ï´Ù. ÀÌ °æ¿ì ±×·ì ¾ÈÀÇ ¸ðµç âÀÌ ¿µÇâÀ» ¹Þ½À´Ï´Ù.

+

+WinClose´Â WM_CLOSE ¸Þ½ÃÁö¸¦ ¸ñÇ¥ â¿¡ º¸³À´Ï´Ù. ¾à°£ °­Á¦ÀûÀÎ ¹æ¹ýÀ¸·Î ´Ý½À´Ï´Ù. ´Ù¸¥ ¹æ¹ýÀ¸·Î ´ÝÀ¸·Á¸é ´ÙÀ½ ¸Þ½ÃÁö¸¦ º¸³À´Ï´Ù. ÇàÀ§°¡ ´Ù¸¦ ¼ö ÀÖ½À´Ï´Ù. ¿Ö³ÄÇϸé. Alt-F4¸¦ ´©¸£°Å³ª Á¦¸ñ ¹Ù¿¡¼­ âÀÇ ´Ý±â ¹öÆ°À» Ŭ¸¯ÇÑ °Í°ú È¿°ú°¡ ºñ½ÁÇϱ⠶§¹®ÀÔ´Ï´Ù:

+ +
PostMessage, 0x112, 0xF060,,, WinTitle, WinText  ; 0x112 = WM_SYSCOMMAND, 0xF060 = SC_CLOSE
+

+WinClose¸¦ ÅëÇÏ¿© âÀÌ ´ÝÈ÷Áö ¾ÊÀ¸¸é, WinKill¸¦ »ç¿ëÇÏ¿© °­Á¦·Î ´ÝÀ» ¼ö ÀÖ½À´Ï´Ù.

+

+â Á¦¸ñ°ú ÅؽºÆ®´Â ´ë¼Ò¹®ÀÚ¿¡ ¹Î°¨ÇÕ´Ï´Ù. ¼ûÀº âÀº DetectHiddenWindows°¡ ÄÑÁ® ÀÖ¾î¾ß ŽÁöµË´Ï´Ù.

+

°ü·Ã Ç׸ñ

+

WinKill, WinWaitClose, Process, WinActivate, SetTitleMatchMode, DetectHiddenWindows, Last Found Window, IfWinExist, IfWinActive, WinWaitActive, WinWait, GroupActivate

+

¿¹Á¦

+
IfWinExist, Untitled - Notepad
+    WinClose ; À§¿¡¼­ ¹ß°ßÇÑ Ã¢À» »ç¿ëÇÕ´Ï´Ù
+else
+    WinClose, Calculator
+ + + diff --git a/src/docs/commands/WinExist.htm b/src/docs/commands/WinExist.htm new file mode 100644 index 0000000..e428a3d --- /dev/null +++ b/src/docs/commands/WinExist.htm @@ -0,0 +1,89 @@ + + + + +IfWinExist / IfWinNotExist / WinExist + + + + + + + +

IfWinExist / IfWinNotExist / WinExist

+ +

+ºÎÇÕÇϴ âÀÌ Á¸ÀçÇÏ´ÂÁö Á¡°ËÇÕ´Ï´Ù. WinExist()´Â ù ¹ø°·Î ºÎÇÕÇϴ âÀÇ Unique ID (HWND)¸¦ µ¹·ÁÁÝ´Ï´Ù.

+ +
IfWinExist [, WinTitle, WinText,  ExcludeTitle, ExcludeText]
+IfWinNotExist [, WinTitle, WinText, ExcludeTitle, ExcludeText]
+UniqueID := WinExist("WinTitle", "WinText", "ExcludeTitle", "ExcludeText")
+ +

¸Å°³º¯¼ö

+
+ +
UniqueID
+

ÁÖ¾îÁø ±âÁØ¿¡ ºÎÇÕÇϴ ù ¹ø° âÀÇ Unique ID (HWND) (½ÊÀ°Áø Á¤¼ö)

+ +
WinTitle
+

¸ñÇ¥ âÀ» ½Äº°Çϴ â Á¦¸ñ ¶Ç´Â ´Ù¸¥ ±âÁØ. WinTitle ÂüÁ¶.

+ +
WinText
+

Á¸ÀçÇϸé, ÀÌ ¸Å°³º¯¼ö´Â ¸ñÇ¥ â ÅؽºÆ®ÀÇ ºÎ¹®ÀÚ¿­ÀÔ´Ï´Ù (Window Spy À¯Æ¿¸®Æ¼¿¡ ³ëÃâµÊ). ¼ûÀº ÅؽºÆ®´Â DetectHiddenText°¡ ÄÑÁ® ÀÖÀ¸¸é(ON) ŽÁöµË´Ï´Ù.

+ +
ExcludeTitle
+

Á¦¸ñ¿¡ ÀÌ °ªÀÌ Àִ âÀº Á¦¿ÜÇÕ´Ï´Ù. ÁÖÀÇ: ÇÏÀ§ ȣȯÀÇ ¹®Á¦ ¶§¹®¿¡, IfWinExist¿ÍIfWinNotExist´Â ¸í·É¾îÀÇ À̸§¿¡ Á¤È®ÇÏ°Ô ºÎÇÕÇϸé ÀÌ ¸Å°³º¯¼ö¸¦ ¸í·É¾î·Î ÀÌÇØÇÕ´Ï´Ù. À̸¦ ¿ìȸÇÏ·Á¸é, ´ë½Å¿¡ WinExist() ÇÔ¼ö¸¦ »ç¿ëÇϽʽÿÀ.

+ +
ExcludeText
+

ÅؽºÆ®¿¡ ÀÌ °ªÀÌ ¾ø´Â âÀº ¹«½ÃÇÕ´Ï´Ù.

+ +
+ +

³íÆò

+

+¸ðµç ¸Å°³º¯¼ö°¡ »ý·«µÇ¸é, ¸¶Áö¸· ¹ß°ß âÀ» Á¡°ËÇÏ¿© ¿©ÀüÈ÷ Á¸ÀçÇÏ´ÂÁö (IfWinNotExistÀ̶ó¸é Á¸ÀçÇÏÁö ¾Ê´ÂÁö) ¾Ë¾Æ º¾´Ï´Ù.

+

+ÀÌ ¸í·É¾î Áß Çϳª¶óµµ ºÎÇÕÇϴ âÀÌ ÀÖ´Ù´Â °ÍÀ» ¾Ë°Ô µÇ¸é, ¸¶Áö¸· ¹ß°ß âÀÌ ±× âÀ¸·Î °»½ÅµË´Ï´Ù. Áï, IfWinExist°¡ ÂüÀ¸·Î Æò°¡µÇ°Å³ª IfWinNotExist°¡ °ÅÁþÀ¸·Î Æò°¡µÇ¸é, ¸¶Áö¸· ¹ß°ß âÀÌ °»½ÅµË´Ï´Ù.

+

+ÇÔ¼ö WinExist()´Â ù ¹ø°·Î ºÎÇÕÇϴ âÀÇ Unique ID (HWND)¸¦ (¾øÀ¸¸é 0) µ¹·ÁÁÝ´Ï´Ù. 0-¾Æ´Ñ ¸ðµç ¼ýÀÚ´Â Âü("true")À¸·Î °£ÁֵǹǷÎ, ´ÙÀ½ ¼­¼ú¹® if WinExist("WinTitle")´ÂWinTitleÀÌ Á¸ÀçÇϸé ÂüÀÔ´Ï´Ù.

+

+ÄÜÆ®·ÑÀÇ HWND¸¦ ¹ß°ßÇÏ·Á¸é (Post/SendMessage ¶Ç´Â DllCall¿¡ »ç¿ëÇϱâ À§ÇØ), ControlGet Hwnd ¶Ç´Â MouseGetPos¸¦ »ç¿ëÇϽʽÿÀ.

+

+SetWinDelay´Â IfWinExist/IfWinActive¿¡ Àû¿ëµÇÁö ¾Ê½À´Ï´Ù.

+

+â Á¦¸ñ°ú ÅؽºÆ®´Â ´ë¼Ò¹®ÀÚ¿¡ ¹Î°¨ÇÕ´Ï´Ù. ¼ûÀº âÀº DetectHiddenWindows°¡ ÄÑÁ® ÀÖÀ¸¸é ŽÁöµË´Ï´Ù.

+ +

°ü·Ã Ç׸ñ

+

IfWinActive, SetTitleMatchMode, DetectHiddenWindows, ¸¶Áö¸· ¹ß°ß â, Process, WinActivate, WinWaitActive, WinWait, WinWaitClose, #IfWinActive/Exist

+

¿¹Á¦

+
; ¿¹Á¦ 1
+IfWinExist, Untitled - Notepad
+{
+    WinActivate  ; À§¿¡¼­ ¹ß°ßÇÑ Ã¢À» ÀÚµ¿À¸·Î »ç¿ëÇÕ´Ï´Ù.
+    WinMaximize  ; À§¿Í °°½À´Ï´Ù
+    Send, Some text.{Enter}
+    return
+}
+
+; ¿¹Á¦ 2
+IfWinNotExist, Calculator
+    return
+else
+{
+    WinActivate  ; À§ÀÇ "IfWinNotExist"´Â ¶Ç "¸¶Áö¸· ¹ß°ß â"À» °»½ÅÇØ ÁÝ´Ï´Ù.
+    WinMove, 40, 40  ; »õ·Î¿î À§Ä¡·Î À̵¿ÇÕ´Ï´Ù.
+    return
+}
+
+; ¿¹Á¦ 3
+if WinExist("ahk_class Notepad") or WinExist("ahk_class" . ClassName)
+    WinActivate  ; ¸¶Áö¸·À¸·Î ¹ß°ßµÈ âÀ» »ç¿ëÇÕ´Ï´Ù.
+
+MsgBox % "The active window's ID is " . WinExist("A")
+
+; ¿¹Á¦ 4: ´ÙÀ½°ú µ¿µîÇÕ´Ï´Ù: IfWinNotExist, Calculator
+If !WinExist("Calculator")
+    return
+ + + diff --git a/src/docs/commands/WinGet.htm b/src/docs/commands/WinGet.htm new file mode 100644 index 0000000..79e1f9e --- /dev/null +++ b/src/docs/commands/WinGet.htm @@ -0,0 +1,167 @@ + + + + +WinGet + + + + + + + +

WinGet

+ +

ÁöÁ¤µÈ âÀÇ À¯ÀÏÇÑ ID, ÇÁ·Î¼¼½º ID, ÇÁ·Î¼¼½º À̸§, ¶Ç´Â ±×ÀÇ ÄÜÆ®·Ñ ¸ñ·ÏÀ» ¿­¶÷ÇÕ´Ï´Ù. ¶ÇÇÑ ÁöÁ¤µÈ ±âÁØ¿¡ ºÎÇÕÇÏ´Â ¸ðµç âÀÇ ¸ñ·ÏÀ» ¿­¶÷ÇÕ´Ï´Ù.

+ +
WinGet, OutputVar [, Cmd, WinTitle, WinText, ExcludeTitle, ExcludeText]
+

Parameters

+
+ +
OutputVar
+

CmdÀÇ °á°ú¸¦ ÀúÀåÇÒ º¯¼öÀÇ À̸§.

+ +
Cmd
+
¾Æ·¡ ¸®½ºÆ® ÂüÁ¶. +
+ +
WinTitle
+

¸ñÇ¥ âÀ» ½Äº°Çϴ â Á¦¸ñ ¶Ç´Â ±âŸ ±âÁØ. WinTitle ÂüÁ¶.

+ +
WinText
+

Á¸ÀçÇϸé, ÀÌ ¸Å°³º¯¼ö´Â ¸ñÇ¥ â ÅؽºÆ®ÀÇ ºÎ¹®ÀÚ¿­ÀÔ´Ï´Ù (Window Spy À¯Æ¿¸®Æ¼¿¡ ³ëÃâ). ¼ûÀº ÅؽºÆ®´Â DetectHiddenText°¡ ÄÑÁ® ÀÖÀ¸¸é(ON) ŽÁöµË´Ï´Ù.

+ +
ExcludeTitle
+

Á¦¸ñ¿¡ ÀÌ °ªÀÌ Àִ âÀº Á¦¿ÜÇÕ´Ï´Ù.

+ +
ExcludeText
+

ÅؽºÆ®¿¡ ÀÌ °ªÀÌ Àִ âÀº Á¦¿ÜÇÕ´Ï´Ù.

+ +
+ +

Cmd´Â ¼öÇàÇÒ ¿¬»êÀÔ´Ï´Ù. ºñ¾î ÀÖÀ¸¸é ID°¡ ±âº»°ªÀÔ´Ï´Ù. ´ÙÀ½ ´Ü¾î Áß Çϳª°¡ µÉ ¼ö ÀÖ½À´Ï´Ù:

+

+ID: âÀÇ À¯ÀÏ ID ¹øÈ£ (HWND/ÇÚµé)À» ¿­¶÷ÇÕ´Ï´Ù. ºÎÇÕÇϴ âÀÌ ¾øÀ¸¸é, OutputVar´Â ºñ¿öÁý´Ï´Ù. ÇÔ¼ö WinExist()¿Í WinActive()µµ âÀÇ ID¸¦ ¿­¶÷ÇÏ´Â µ¥ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù; ¿¹¸¦ µé¾î, WinExist("A")´Â È°¼º âÀÇ ID¸¦ ¾ò´Â °¡Àå ºü¸¥ ¹æ¹ýÀÔ´Ï´Ù. ÄÜÆ®·ÑÀÇ HWND¸¦ ¹ß°ßÇÏ·Á¸é (Post/SendMessage ¶Ç´Â DllCall¿¡ »ç¿ëÇÒ ¸ñÀûÀ¸·Î), ControlGet Hwnd ¶Ç´Â MouseGetPos¸¦ »ç¿ëÇϽʽÿÀ.

+

+IDLast: À§¿Í µ¿ÀÏÇÏÁö¸¸ ºÎÇÕÇϴ âÀÌ ¿©·µÀÌ¸é °¡Àå ¸¶Áö¸·/ÃÖÇÏÀ§ âÀÇ ID¸¦ ¿­¶÷ÇÕ´Ï´Ù. ¿ÀÁ÷ Çϳª¸¸ ÀÏÄ¡Çϸé, ID¿Í µ¿ÀÏÇÏ°Ô ¼öÇàÇÕ´Ï´Ù. ÀÌ °³³äÀº WinActivateBottomÀÌ »ç¿ëÇÏ´Â °³³ä°ú ºñ½ÁÇÕ´Ï´Ù.

+

+PID: âÀÇ ÇÁ·Î¼¼½º ID (PID)¸¦ ¿­¶÷ÇÕ´Ï´Ù.

+

+ProcessName: âÀ» ¼ÒÀ¯ÇÑ ÇÁ·Î¼¼½ºÀÇ À̸§À» ¿­¶÷ÇÕ´Ï´Ù (¿¹, notepad.exe). ºÎÇÕÇϴ âÀÌ ¾øÀ¸¸é, OutputVar´Â ºñ¿öÁý´Ï´Ù.

+

+ProcessPath [v1.1.01+]: ProcessName°ú ºñ½ÁÇÏÁö¸¸, ´ÜÁö À̸§ÀÌ ¾Æ´Ï¶ó ÇÁ·Î¼¼½ºÀÇ Àüü °æ·Î¿Í À̸§À» ¿­¶÷ÇÕ´Ï´Ù.

+

+Count: ±âÁ¸ â¿¡¼­ WinTitle, WinText, ExcludeTitle, ±×¸®°í ExcludeText (¾øÀ¸¸é 0)¿¡ ºÎÇÕÇϴ âÀÇ °³¼ö¸¦ ¿­¶÷ÇÕ´Ï´Ù. ½Ã½ºÅÛÀÇ ¸ðµç âÀ» ¿­¶÷ÇÏ·Á¸é, ³× °³ÀÇ ¸Å°³º¯¼ö¸¦ ¸ðµÎ »ý·«ÇϽʽÿÀ. ¼ûÀº âÀº DetectHiddenWindowsÀÌ ÄÑÁ® ÀÖÀ» °æ¿ì¿¡¸¸ Æ÷ÇԵ˴ϴÙ.

+

+List: ±âÁ¸ â¿¡¼­ ÁöÁ¤µÈ WinTitle, WinText, ExcludeTitle, ±×¸®°í ExcludeText¿¡ ºÎÇÕÇÏ´Â ±âÁ¸ÀÇ ¸ðµç âÀÇ À¯ÀÏ ID ¹øÈ£µéÀ» ¿­¶÷ÇÕ´Ï´Ù. (Àüü ½Ã½ºÅÛÀÇ ¸ðµç âÀ» ¿­¶÷ÇÏ·Á¸é, ³× °³ÀÇ Á¦¸ñ/ÅؽºÆ® ¸Å°³º¯¼ö¸¦ ¸ðµÎ »ý·«ÇϽʽÿÀ). °¢ ID ¹øÈ£´Â OutputVarÀÇ À̸§À¸·Î ½ÃÀÛÇÏ´Â º¯¼ö¿¡ ÀúÀåµË´Ï´Ù (ÀÇ»ç-¹è¿­À» Çü¼ºÇÕ´Ï´Ù). ¹Ý¸é¿¡ OutputVar ÀÚü¿¡´Â ¿­¶÷µÈ Ç׸ñÀÇ °³¼ö°¡ ¼³Á¤µË´Ï´Ù (¾øÀ¸¸é 0ÀÔ´Ï´Ù). ¿¹¸¦ µé¾î, OutputVar°¡ MyArrayÀÌ°í ºÎÇÕÇÑ Ã¢ÀÌ µÎ °³ ¹ß°ßµÇ¾ú´Ù¸é, MyArray1Àº ù ¹ø° âÀÇ ID°¡ ¼³Á¤µÇ°í, MyArray2´Â µÎ ¹ø° âÀÇ ID¿¡ ¼³Á¤µË´Ï´Ù. âÀº (¹ÙÅÁÈ­¸é¿¡ ¾î¶»°Ô ½×¿© Àִ°¡¿¡ ¸ÂÃß¾î) À§¿¡¼­ ¾Æ·¡·Î ¿­¶÷µË´Ï´Ù. ¼ûÀº âÀº DetectHiddenWindowsÀÌ ÄÑÁ® ÀÖÀ» ¶§¸¸ ŽÁöµË´Ï´Ù. ÇÔ¼ö ¾È¿¡¼­, Áö¿ªÀûÀÌ ¾Æ´Ï¶ó Àü¿ªÀû ÀÇ»ç-¹è¿­À» »ý¼ºÇÏ·Á¸é, ÀÌ ¸í·É¾î¸¦ »ç¿ëÇϱâ Àü¿¡ ¸ÕÀú MyArray¸¦ Àü¿ª º¯¼ö·Î ¼±¾ðÇϽʽÿÀ (Àü¿ª-°£ÁÖ ÇÔ¼ö¿¡ ´ëÇÏ¿© ±× ¹Ý´ëµµ ¸¶Âù°¡ÁöÀÔ´Ï´Ù). + +±×·¸Áö¸¸, ÈçÇÑ È¥¶õÀÇ ±Ù¿ø ¶§¹®¿¡, Á¾Á¾ °¢ º¯¼ö¸¦ ÇÔ¼ö ¾È¿¡ ¼³Á¤ÇÏ´Â °ÍÀÌ ÇʼöÀûÀÎ °æ¿ìµµ ÀÖ½À´Ï´Ù.

+

+MinMax: â¿¡ ´ëÇÏ¿© ÃÖ¼Ò/ÃÖ´ë »óŸ¦ ¿­¶÷ÇÕ´Ï´Ù. ºÎÇÕÇϴ âÀÌ ¾øÀ¸¸é OuputVar´Â ºñ¿öÁý´Ï´Ù; ±×·¸Áö ¾ÊÀ¸¸é ´ÙÀ½ ¼ýÀÚ Áß Çϳª°¡ ¼³Á¤µË´Ï´Ù:
+ -1: âÀÌ ÃÖ¼Ò »óÅÂÀÔ´Ï´Ù (WinRestore·Î º¹¿øÇÒ ¼ö ÀÖ½À´Ï´Ù).
+ 1: âÀÌ ÃÖ´ë »óÅÂÀÔ´Ï´Ù (WinRestore·Î º¹¿øÇÒ ¼ö ÀÖ½À´Ï´Ù).
+ 0: âÀÌ ÃÖ´ë »óŵµ ¾Æ´Ï°í ÃÖ¼Ò »óŵµ ¾Æ´Õ´Ï´Ù.

+

+ControlList: +â¿¡ ÀÖ´Â ¸ðµç ÄÜÆ®·ÑÀÇ À̸§À» ¿­¶÷ÇÕ´Ï´Ù. ºÎÇÕÇϴ âÀÌ Á¸ÀçÇÏÁö ¾Ê°Å³ª â¿¡ ÄÜÆ®·ÑÀÌ ¾øÀ¸¸é, OutputVar´Â ºñ¿öÁý´Ï´Ù. ±×·¸Áö ¾ÊÀ¸¸é, Window Spy¿¡ º¸¿©ÁöµíÀÌ, °¢ ÄÜÆ®·Ñ À̸§Àº ±×ÀÇ Å¬·¡½º À̸§°ú ¹Ù·Î ´ÙÀ½¿¡ ¿¬¼Ó ¹øÈ£ (ClassNN)·Î ±¸¼ºµË´Ï´Ù.

+

+¸¶Áö¸· Ç׸ñÀ» Á¦¿ÜÇÏ°í °¢ Ç׸ñÀº ¶óÀÎÇǵå·Î ³¡³³´Ï´Ù (`n). ÄÜÆ®·Ñ À̸§À» Çϳª¾¿ Á¶»çÇÏ·Á¸é, ¾Æ·¡ ¿¹Á¦ ¼½¼Ç¿¡ º¸¿©ÁÖ´Â ¹Ù¿Í °°ÀÌ È¸µ¹ÀÌ ÆĽÌÀ» »ç¿ëÇϽʽÿÀ.

+

+ÄÜÆ®·ÑÀº Z-¼ø¼­¿¡ µû¶ó Á¤·ÄµË´Ï´Ù. º¸Åë âÀÌ Áö¿øÇÑ´Ù¸é TAB Å°·Î ÃÊÁ¡À» À̵¿ÇÏ´Â ¼ø¼­¿Í µ¿ÀÏÇÕ´Ï´Ù.

+

+ÇöÀç ¸¶¿ì½º ¾Æ·¡¿¡ ÀÖ´Â ÄÜÆ®·ÑÀº MouseGetPos·Î ¿­¶÷ÇÒ ¼ö ÀÖ½À´Ï´Ù.

+

+ControlListHwnd [v1.0.43.06+]: À§¿Í °°Áö¸¸ °¢ ÄÜÆ®·ÑÀÇ ClassNNÀÌ ¾Æ´Ï¶ó â ÇÚµé (HWND)À» ¿­¶÷ÇÕ´Ï´Ù.

+

+Transparent: âÀÇ Åõ¸íµµ¸¦ ¿­¶÷ÇÕ´Ï´Ù (Åõ¸íµµ¸¦ ¼³Á¤ÇÏ´Â ¹æ¹ýÀº WinSetÀ» ÂüÁ¶ÇϽʽÿÀ). ´ÙÀ½°ú °°Àº °æ¿ì OutputVarÀÌ ºñ¿öÁý´Ï´Ù: +

    +
  1. OS°¡ Windows XPº¸´Ù ±¸ÇüÀÔ´Ï´Ù; +
  2. ºÎÇÕÇϴ âÀÌ ¾ø½À´Ï´Ù; +
  3. â¿¡ Åõ¸íµµ ·¹º§ÀÌ ¾ø½À´Ï´Ù; +
  4. (OS ÇàÀ§·Î ¾ß±âµÈ) ±âŸ Á¶°Ç. ¿¹¸¦ µé¾î âÀ» Åõ¸íÇÏ°Ô ¸¸µç ÀÌÈÄ·Î ÃÖ¼ÒÈ­, º¹±¸, ¶Ç´Â Å©±â°¡ ¹Ù²î¾ú½À´Ï´Ù. +
+±×·¸Áö ¾ÊÀ¸¸é, 0ºÎÅÍ 255 »çÀÌÀÇ ¼ýÀÚ°¡ ÀúÀåµË´Ï´Ù. 0Àº º¸ÀÌÁö ¾Ê´Â âÀ» ³ªÅ¸³»°í 255´Â ¿ÏÀü ºÒÅõ¸í âÀ» ³ªÅ¸³À´Ï´Ù. ¿¹¸¦ µé¾î:

+ +
MouseGetPos,,, MouseWin
+WinGet, Transparent, Transparent, ahk_id %MouseWin%  ; ¸¶¿ì½º ¾Æ·¡ÀÇ Ã¢ÀÌ Åõ¸íµµ.
+

+TransColor: +â¿¡¼­ Åõ¸íÀ¸·Î Ç¥½ÄÀÌ ºÙÀº »öÀ» ¿­¶÷ÇÕ´Ï´Ù (TransColor¸¦ ¼³Á¤ÇÏ´Â ¹ýÀº WinSet¸¦ ÂüÁ¶ÇÕ´Ï´Ù.). OutputVar´Â ´ÙÀ½°ú °°Àº °æ¿ì ºñ¿öÁý´Ï´Ù: +

    +
  1. OS°¡ Windows XPº¸´Ù ¿À·¡µÇ¾ú½À´Ï´Ù; +
  2. ºÎÇÕÇϴ âÀÌ ¾ø½À´Ï´Ù; +
  3. â¿¡ Åõ¸í »öÀÌ ¾ø½À´Ï´Ù; ¶Ç´Â +
  4. (OS ÇàÀ§·Î ¾ß±âµÈ) ±âŸ Á¶°Ç. ¿¹¸¦ µé¾î âÀ» Åõ¸íÇÏ°Ô ¸¸µç ÀÌÈÄ·Î ÃÖ¼ÒÈ­, º¹±¸, ¶Ç´Â Å©±â°¡ ¹Ù²î¾ú½À´Ï´Ù. +
+±×·¸Áö ¾ÊÀ¸¸é, ¿©¼¸ÀÚ¸® ½ÊÀ°Áø RGB »öÀÌ ÀúÀåµË´Ï´Ù. ¿¹, 0x00CC99. ¿¹¸¦ µé¾î:

+ +
MouseGetPos,,, MouseWin
+WinGet, TransColor, TransColor, ahk_id %MouseWin%  ; ¸¶¿ì½º Ä¿¼­ ¾Æ·¡¿¡ Àִ âÀÇ TransColor.
+

+Style ¶Ç´Â ExStyle: âÀÇ ½ºÅ¸ÀÏ ¶Ç´Â È®Àå ½ºÅ¸ÀÏÀ» ³ªÅ¸³»´Â 8-ÀÚ¸® ½ÊÀ°Áø ¼ö¸¦ ¿­¶÷ÇÕ´Ï´Ù. ºÎÇÕÇϴ âÀÌ ¾øÀ¸¸é, OutputVar´Â ºñ¿öÁý´Ï´Ù. ´ÙÀ½ ¿¹Á¦´Â â¿¡ WS_DISABLED ½ºÅ¸ÀÏÀÌ ÀÖ´ÂÁö ¾Ë¾Æº¾´Ï´Ù:

+ +
WinGet, Style, Style, My Window Title
+if (Style & 0x8000000)  ; 0x8000000 is WS_DISABLED.
+  ... âÀÌ ºñÈ°¼º »óÅÂÀÔ´Ï´Ù. ±×·¡¼­ ÀûÀýÇÑ Á¶Ä¡¸¦ ¼öÇàÇÕ´Ï´Ù.
+

+´ÙÀ½ ¿¹Á¦´Â â¿¡ WS_EX_TOPMOST ½ºÅ¸ÀÏÀÌ ÀÖ´ÂÁö ¾Ë¾Æº¾´Ï´Ù (Ç×»ó-À§¿¡):

+
WinGet, ExStyle, ExStyle, My Window Title
+if (ExStyle & 0x8)  ; 0x8 is WS_EX_TOPMOST.
+  ... âÀÌ Ç×»ó ÃÖ»óÀ§ »óÅÂÀÔ´Ï´Ù. ±×·¡¼­ ÀûÀýÇÑ Á¶Ä¡¸¦ ¼öÇàÇÕ´Ï´Ù.
+

+½ºÅ¸ÀÏ ¸ñ·ÏÀº ½ºÅ¸ÀÏ Å×À̺íÀ» ÂüÁ¶ÇϽʽÿÀ.

+ +

³íÆò

+

+âÀÇ ID ¹øÈ£´Â ¿ÀÁ÷ âÀÌ »ì¾Æ ÀÖÀ» µ¿¾È¿¡¸¸ À¯È¿ÇÕ´Ï´Ù. ´Ù¸¥ ¸»·Î, ¾îÇø®ÄÉÀ̼ÇÀÌ Àç½ÃÀÛÇϸé, ±×ÀÇ ¸ðµç âÀº »õ ID ¹øÈ£¸¦ ¾ò½À´Ï´Ù.

+

+ÀÌ ¸í·É¾î·Î ¿­¶÷µÈ ID ¹øÈ£´Â ¼ýÀÚÀÌ°í (¾Õ¿¡ Á¢µÎ¾î "ahk_id"¸¦ Æ÷ÇÔÇÏÁö ¾ÊÀ½) ±×¸®°í SetFormatÀÇ ¼³Á¤¿¡ »ó°ü¾øÀÌ 16Áø Çü½ÄÀ¸·Î ÀúÀåµË´Ï´Ù.

+

+¸¶¿ì½º Ä¿¼­ ¾Æ·¡¿¡ Àִ âÀÇ ID´Â MouseGetPos·Î ¿­¶÷ÇÒ ¼ö ÀÖ½À´Ï´Ù.

+

+ID ¹øÈ£´Â ÇöÀç 32-ºñÆ® ºÎÈ£¾ø´Â Á¤¼öÀÌÁö¸¸, ¾ÕÀ¸·Î 64-ºñÆ®°¡ µÉ °¡´É¼ºÀÌ ÀÖ½À´Ï´Ù. ±×·¯¹Ç·Î, ÀÌ·± °ªµé¿¡ ´ëÇØ µ¡¼ÀÀ» ÇÏ´Â °Í°ú °°Àº ¼ýÄ¡ ¿¬»êÀ» ¼öÇàÇÏ´Â °ÍÀº ¾ÈÀüÇÏÁö ¾Ê½À´Ï´Ù. ¿Ö³ÄÇÏ¸é ±×·± ¿¬»êÀº ÀÔ·Â ¹®ÀÚ¿­À» ºÎÈ£¾ø´Â Á¤¼ö°¡ ¾Æ´Ï¶ó ºÎÈ£ÀÖ´Â Á¤¼ö·Î Çؼ®ÇÒ ÇÊ¿ä°¡ Àֱ⠶§¹®ÀÔ´Ï´Ù.

+

+â Á¦¸ñ°ú ÅؽºÆ®´Â ´ë¼Ò¹®ÀÚ¿¡ ¹Î°¨ÇÕ´Ï´Ù. ¼ûÀº âÀº DetectHiddenWindows°¡ ÄÑÁ® ÀÖÀ¸¸é ŽÁöµË´Ï´Ù.

+ +

°ü·Ã Ç׸ñ

+

+WinGetClass, Process, WinGetTitle, MouseGetPos, ControlGet, ControlFocus, GroupAdd

+ +

¿¹Á¦

+
; ¿¹Á¦ #1: È°¼º âÀ» ÃÖ´ëÈ­ÇÏ°í ±×ÀÇ À¯ÀÏ ID¸¦ º¸°íÇÕ´Ï´Ù:
+WinGet, active_id, ID, A
+WinMaximize, ahk_id %active_id%
+MsgBox, È°¼º âÀÇ ID´Â "%active_id%"ÀÔ´Ï´Ù.
+
+; ¿¹Á¦ #2: Àüü ½Ã½ºÅÛ¿¡¼­ ¸ðµç âÀ» ¹æ¹®ÇÏ°í °¢ â¿¡ ´ëÇÏ¿© ´ÙÀ½ Á¤º¸¸¦ º¸¿©ÁÝ´Ï´Ù:
+WinGet, id, list,,, Program Manager
+Loop, %id%
+{
+    this_id := id%A_Index%
+    WinActivate, ahk_id %this_id%
+    WinGetClass, this_class, ahk_id %this_id%
+    WinGetTitle, this_title, ahk_id %this_id%
+    MsgBox, 4, , Visiting All Windows`n%a_index% of %id%`nahk_id %this_id%`nahk_class %this_class%`n%this_title%`n`nContinue?
+    IfMsgBox, NO, break
+}
+
+; ¿¹Á¦ #3: ControlListÀ¸·ÎºÎÅÍ ÄÜÆ®·Ñ À̸§À» Çϳª¾¿ ÃßÃâÇÕ´Ï´Ù:
+WinGet, ActiveControlList, ControlList, A
+Loop, Parse, ActiveControlList, `n
+{
+    MsgBox, 4,, Control #%a_index% is "%A_LoopField%". Continue?
+    IfMsgBox, No
+        break
+}
+
+; ¿¹Á¦ #4: ½Ç½Ã°£À¸·Î È°¼º âÀÇ ÄÜÆ®·Ñ ¸®½ºÆ®¸¦ º¸¿©ÁÝ´Ï´Ù:
+#Persistent
+SetTimer, WatchActiveWindow, 200
+return
+WatchActiveWindow:
+WinGet, ControlList, ControlList, A
+ToolTip, %ControlList%
+return
+ + + diff --git a/src/docs/commands/WinGetActiveStats.htm b/src/docs/commands/WinGetActiveStats.htm new file mode 100644 index 0000000..6d95d43 --- /dev/null +++ b/src/docs/commands/WinGetActiveStats.htm @@ -0,0 +1,51 @@ + + + + +WinGetActiveStats + + + + + + + +

WinGetActiveStats

+ +

WinGetActiveTitleÀÇ ±â´É°ú WinGetPosÀÇ ±â´ÉÀ» ÇϳªÀÇ ¸í·É¾î·Î Á¶ÇÕÇÕ´Ï´Ù.

+ +
WinGetActiveStats, Title, Width, Height, X, Y
+

¸Å°³º¯¼ö

+
+ +
Title
+

È°¼º âÀÇ Á¦¸ñÀ» ÀúÀåÇÒ º¯¼öÀÇ À̸§.

+ +
Width/Height
+

È°¼º âÀÇ ³Êºñ¿Í ³ôÀ̸¦ ÀúÀåÇÒ º¯¼öÀÇ À̸§.

+ +
X, Y
+

È°¼º âÀÇ Á»ó ¸ð¼­¸® X ÁÂÇ¥¿Í Y ÁÂÇ¥¸¦ ÀúÀåÇÒ º¯¼öÀÇ À̸§.

+ +
+ +

³íÆò

+

+ºÎÇÕÇϴ âÀÌ ¾øÀ¸¸é, Ãâ·Â º¯¼ö´Â ºñ¿öÁý´Ï´Ù.

+

+ÀÌ ¸í·É¾î´Â ´ÙÀ½ ÄÚµå¿Í µ¿µîÇÕ´Ï´Ù:

+ +
WinGetTitle, Title, A
+WinGetPos, X, Y, Width, Height, A
+

+È°¼º âÀÌ ¼û¾î ÀÖ°í DetectHiddenWindows°¡ ²¨Á® ÀÖÀ¸¸é (±âº»°ª), WinShow¸¦ Á¦¿ÜÇÏ°í ¸ðµç ¸í·É¾î´Â ±× È°¼ºÃ¢À» "º¸Áö ¸øÇÕ´Ï´Ù". ÀÌ·± Àú·± ÀÌÀ¯·Î È°¼º âÀÌ ¾ø´Ù¸é, ÀÌ ¸í·É¾î´Â ±×ÀÇ ¸ðµç Ãâ·Â º¯¼öµéÀ» ºñ¿ö¹ö¸³´Ï´Ù.

+ +

°ü·Ã Ç׸ñ

+

WinGetPos, WinGetActiveTitle, WinGetTitle, WinGetClass, WinGetText, ControlGetText

+ +

¿¹Á¦

+
WinGetActiveStats, Title, Width, Height, X, Y
+MsgBox, "%Title%" È°¼º âÀº ³Êºñ°¡ %Width%ÀÌ°í`, ³Êºñ°¡ %Height%`, ±×¸®°í %X%`,%Y%¿¡ À§Ä¡ÇÕ´Ï´Ù.
+ + + diff --git a/src/docs/commands/WinGetActiveTitle.htm b/src/docs/commands/WinGetActiveTitle.htm new file mode 100644 index 0000000..ac5b92c --- /dev/null +++ b/src/docs/commands/WinGetActiveTitle.htm @@ -0,0 +1,35 @@ + + + + +WinGetActiveTitle + + + + + + + +

WinGetActiveTitle

+ +

È°¼ºÃ¢ÀÇ Á¦¸ñÀ» ¿­¶÷ÇÕ´Ï´Ù.

+ +
WinGetActiveTitle, OutputVar
+

¸Å°³º¯¼ö

+
+ +
OutputVar
+

È°¼º âÀÇ Á¦¸ñÀ» ÀúÀåÇÒ º¯¼öÀÇ À̸§.

+ +
+ +

³íÆò

+

ÀÌ ¸í·É¾î´Â ´ÙÀ½°ú µ¿µîÇÕ´Ï´Ù: WinGetTitle, OutputVar, A.

+

°ü·Ã Ç׸ñ

+

WinGetPos, WinGetActiveStats, WinGetTitle, WinGetClass, WinGetText, ControlGetText

+

¿¹Á¦

+
WinGetActiveTitle, Title
+MsgBox, È°¼º âÀÇ Á¦¸ñÀº "%Title%"ÀÔ´Ï´Ù.
+ + + diff --git a/src/docs/commands/WinGetClass.htm b/src/docs/commands/WinGetClass.htm new file mode 100644 index 0000000..b023fa9 --- /dev/null +++ b/src/docs/commands/WinGetClass.htm @@ -0,0 +1,50 @@ + + + + +WinGetClass + + + + + + + +

WinGetClass

+ +

ÁöÁ¤µÈ âÀÇ Å¬·¡½º À̸§À» ¿­¶÷ÇÕ´Ï´Ù.

+ +
WinGetClass, OutputVar [, WinTitle, WinText, ExcludeTitle, ExcludeText]
+

¸Å°³º¯¼ö

+
+ +
OutputVar
+

¿­¶÷µÈ Ŭ·¡½º À̸§À» ÀúÀåÇÒ º¯¼öÀÇ À̸§.

+ +
WinTitle
+

¸ñÇ¥ âÀ» ½Äº°ÇÒ Ã¢ Á¦¸ñ ¶Ç´Â ´Ù¸¥ ±âÁØ. WinTitle ÂüÁ¶.

+ +
WinText
+

Á¸ÀçÇϸé, ÀÌ ¸Å°³º¯¼ö´Â ¸ñÇ¥ âÀÇ ÅؽºÆ®ÀÇ ºÎ¹®ÀÚ¿­ÀÔ´Ï´Ù (µ¿ºÀµÈ Window Spy À¯Æ¿¸®Æ¼¿¡ ³ëÃâµÊ). + DetectHiddenTextÀÌ ÄÑÁ® ÀÖÀ¸¸é(ON) ¼ûÀº ÅؽºÆ®°¡ ŽÁöµË´Ï´Ù.

+ +
ExcludeTitle
+

Á¦¸ñ¿¡ ÀÌ °ªÀÌ Æ÷ÇԵǾî Àִ âÀº Á¦¿ÜµË´Ï´Ù.

+ +
ExcludeText
+

ÅؽºÆ®¿¡ ÀÌ °ªÀÌ Æ÷ÇԵǾî Àִ âÀº Á¦¿ÜµË´Ï´Ù.

+ +
+ +

³íÆò

+

Ŭ·¡½º À̸§¸¸ ¿­¶÷µË´Ï´Ù (Á¢µÎ¾î "ahk_class"´Â OutputVar¿¡ Æ÷ÇÔµÇÁö ¾Ê½À´Ï´Ù).

+

â Á¦¸ñ°ú ÅؽºÆ®´Â ´ë¼Ò¹®ÀÚ¸¦ ±¸ºÐÇÕ´Ï´Ù. ¼ûÀº âÀº DetectHiddenWindows¸¦ ÄѸé ŽÁöµË´Ï´Ù.

+ +

°ü·Ã Ç׸ñ

+

WinGet, WinGetTitle

+

¿¹Á¦

+
WinGetClass, class, A
+MsgBox, È°¼º âÀÇ Å¬·¡½º´Â "%class%"ÀÔ´Ï´Ù.
+ + + diff --git a/src/docs/commands/WinGetPos.htm b/src/docs/commands/WinGetPos.htm new file mode 100644 index 0000000..a96bfad --- /dev/null +++ b/src/docs/commands/WinGetPos.htm @@ -0,0 +1,69 @@ + + + + +WinGetPos + + + + + + + +

WinGetPos

+ +

ÁöÁ¤µÈ âÀÇ Å©±â¿Í À§Ä¡¸¦ ¿­¶÷ÇÕ´Ï´Ù.

+ +
WinGetPos [, X, Y, Width, Height, WinTitle, WinText, ExcludeTitle, ExcludeText]
+

¸Å°³º¯¼ö

+
+ +
X, Y
+

¸ñÇ¥ âÀÇ Á»ó ¸ð¼­¸® X ÁÂÇ¥¿Í Y ÁÂÇ¥¸¦ ÀúÀåÇÒ À̸§. »ý·«Çϸé, »óÀÀÇÏ´Â °ªÀÌ ÀúÀåµÇÁö ¾Ê½À´Ï´Ù.

+ +
Width/Height
+

¸ñÇ¥ âÀÇ ³ôÀÌ¿Í ³Êºñ¸¦ ÀúÀåÇÒ º¯¼öÀÇ À̸§. »ý·«ÇÏ¸é »óÀÀÇÏ´Â °ªÀÌ ÀúÀåµÇÁö ¾Ê½À´Ï´Ù.

+ +
WinTitle
+

¸ñÇ¥ âÀ» ½Äº°Çϴ â Á¦¸ñ ¶Ç´Â ´Ù¸¥ ±âÁØ. WinTitle ÂüÁ¶.

+ +
WinText
+

Á¸ÀçÇϸé, ¸ñÇ¥ â ÅؽºÆ®ÀÇ ºÎ¹®ÀÚ¿­ÀÔ´Ï´Ù (µ¿ºÀµÈ Window Spy À¯Æ¿¸®Æ¼¿¡ ³ëÃâµÊ). ¼ûÀº ÅؽºÆ®´Â DetectHiddenText°¡ ÄÑÁ® ÀÖÀ¸¸é(ON) ŽÁöµË´Ï´Ù.

+ +
ExcludeTitle
+

Á¦¸ñ¿¡ ÀÌ °ªÀÌ Àִ âÀº Á¦¿ÜÇÕ´Ï´Ù.

+ +
ExcludeText
+

ÅؽºÆ®¿¡ ÀÌ °ªÀÌ Àִ âÀº Á¦¿ÜÇÕ´Ï´Ù.

+ +
+ +

³íÆò

+

+ºÎÇÕÇϴ âÀÌ ¾øÀ¸¸é, Ãâ·Â º¯¼ö´Â ºñ¿öÁý´Ï´Ù.

+

+WinTitle "ÇÁ·Î±×·¥ °ü¸®ÀÚr"°¡ »ç¿ëµÇ¸é, ÀÌ ¸í·É¾î´Â ¹ÙÅÁÈ­¸éÀÇ Å©±â¸¦ ¿­¶÷ÇÕ´Ï´Ù. ÀÌ´Â º¸Åë ÇöÀç È­¸é ÇØ»óµµ¿Í °°½À´Ï´Ù.

+

+ÃÖ¼ÒÈ­µÈ âÀº ¿©ÀüÈ÷ Å©±â¿Í À§Ä¡°¡ ÀÖ½À´Ï´Ù. ÀÌ °æ¿ì ¹ÝȯµÈ °ªÀº OS¿Í ȯ°æ ±¸¼º¿¡ µû¶ó ´Þ¶óÁú ¼ö ÀÖ½À´Ï´Ù.

+

+¸¶¿ì½º°¡ ÇöÀç ¼±È¸ ÁßÀΠâÀÇ À̸§°ú ÄÜÆ®·ÑÀ» ¹ß°ßÇÏ·Á¸é, MouseGetPos¸¦ »ç¿ëÇϽʽÿÀ.

+

+â Á¦¸ñ°ú ÅؽºÆ®´Â ´ë¼Ò¹®ÀÚ¸¦ ±¸ºÐÇÕ´Ï´Ù. ¼ûÀº âÀº DetectHiddenWindows°¡ ÄÑÁ® ÀÖÀ¸¸é ŽÁöµË´Ï´Ù.

+ +

°ü·Ã Ç׸ñ

+

WinMove, ControlGetPos, WinGetActiveStats, WinGetActiveTitle, WinGetTitle, WinGetText, ControlGetText

+

¿¹Á¦

+
WinGetPos, X, Y, Width, Height, Calculator
+MsgBox, Calculator is at %X%`,%Y%
+
+WinGetPos, X, Y, , , A  ; "A"´Â È°¼º âÀÇ À§Ä¡¸¦ ¾ò½À´Ï´Ù.
+MsgBox, È°¼º âÀÇ À§Ä¡: %X%`,%Y%
+
+IfWinExist, Untitled - Notepad
+{
+    WinGetPos, Xpos, Ypos  ; À§¿¡¼­ ¹ß°ßÇÑ Ã¢À» »ç¿ëÇÕ´Ï´Ù.
+    MsgBox, Notepad is at %Xpos%`,%Ypos%
+}
+ + + diff --git a/src/docs/commands/WinGetText.htm b/src/docs/commands/WinGetText.htm new file mode 100644 index 0000000..ff5d187 --- /dev/null +++ b/src/docs/commands/WinGetText.htm @@ -0,0 +1,66 @@ + + + + +WinGetText + + + + + + + +

WinGetText

+ +

ÁöÁ¤µÈ âÀ¸·ÎºÎÅÍ ÅؽºÆ®¸¦ ¿­¶÷ÇÕ´Ï´Ù.

+ +
WinGetText, OutputVar [, WinTitle, WinText, ExcludeTitle, ExcludeText]
+

¸Å°³º¯¼ö

+
+ +
OutputVar
+

¿­¶÷µÈ ÅؽºÆ®¸¦ ÀúÀåÇÒ º¯¼öÀÇ À̸§.

+ +
WinTitle
+

¸ñÇ¥ âÀ» ½Äº°Çϴ â Á¦¸ñ ¶Ç´Â ´Ù¸¥ ±âÁØ. WinTitle ÂüÁ¶.

+ +
WinText
+

Á¸ÀçÇϸé, ¸ñÇ¥ â ÅؽºÆ®ÀÇ ºÎ¹®ÀÚ¿­ÀÔ´Ï´Ù (µ¿ºÀµÈ Window Spy À¯Æ¿¸®Æ¼¿¡ ³ëÃâµÊ). ¼ûÀº ÅؽºÆ®´Â DetectHiddenText°¡ ÄÑÁ®(ON) ÀÖÀ¸¸é ŽÁöµË´Ï´Ù.

+ +
ExcludeTitle
+

Á¦¸ñ¿¡ ÀÌ °ªÀÌ Àִ âÀº Á¦¿ÜÇÕ´Ï´Ù.

+ +
ExcludeText
+

ÅؽºÆ®¿¡ ÀÌ °ªÀÌ Àִ âÀº Á¦¿ÜÇÕ´Ï´Ù.

+ +
+ +

ErrorLevel

+

+[v1.1.04+] ÀÌ ¸í·É¾î´Â ½ÇÆÐÇÏ¸é ¿¹¿Ü¸¦ ´øÁú ¼ö ÀÖ½À´Ï´Ù. ´õ ÀÚ¼¼ÇÑ Á¤º¸´Â ½ÇÇà½Ã°£ ¿¡·¯¸¦ ÂüÁ¶ÇϽʽÿÀ.

+

ErrorLevelÀº ¹®Á¦°¡ ÀÖ¾úÀ¸¸é 1,. ±×·¸Áö ¾ÊÀ¸¸é 0ÀÌ ¼³Á¤µË´Ï´Ù.

+ +

³íÆò

+

+¿­¶÷µÈ ÅؽºÆ®´Â ÀϹÝÀûÀ¸·Î Window Spy°¡ ±× â¿¡ ´ëÇÏ¿© º¸¿©ÁÖ´Â °Í°ú µ¿ÀÏÇÕ´Ï´Ù. ±×·¸Áö¸¸, DetectHiddenText°¡ ²¨Á® ÀÖ´Ù¸é, ¼ûÀº ÅؽºÆ®´Â OutputVar¿¡ Æ÷ÇÔµÇÁö ¾Ê½À´Ï´Ù.

+

+°¢ ÅؽºÆ® ¿ø¼Ò´Â ij¸®Áö ¸®ÅÏ°ú ¶óÀÎÇǵå (CR+LF)·Î ³¡³³´Ï´Ù. ½ºÅ©¸³Æ®¿¡¼­´Â `r`n·Î Ç¥±âµË´Ï´Ù. °¢ ÁÙÀ̳ª ºÎ¹®ÀÚ¿­À» ÃßÃâÇÏ·Á¸é, StringGetPos ±×¸®°í StringMid¿Í °°Àº ¸í·É¾î¸¦ »ç¿ëÇϽʽÿÀ. ȸµ¹ÀÌ ÆĽÌÀ» »ç¿ëÇÏ¸é °¢ ÁÙÀ̳ª ´Ü¾î¸¦ Çϳª¾¿ Á¶»çÇÒ ¼ö ÀÖ½À´Ï´Ù.

+

+¿­¶÷µÈ ÅؽºÆ®°¡ (ºÒ¿ÏÀüÇÏ°Ô) Àß·Á ³ªÅ¸³ª¸é, ¸ÕÀú VarSetCapacity(OutputVar, 55)¸¦ »ç¿ëÇÑ ´ÙÀ½ WinGetText¸¦ ½ÃµµÇϽʽÿÀ [Àß·Á ³ª°£ ÅؽºÆ®º¸´Ù ÈξÀ ´õ Å« Å©±â·Î 55¸¦ ±³Ã¼ÇϽʽÿÀ]. ¾î¶² ¾îÇø®ÄÉÀ̼ÇÀº WM_GETTEXTLENGTH ¸Þ½ÃÁö¿¡ ÀûÀýÇÏ°Ô ÀÀ´äÇÏÁö ¾Ê±â ¶§¹®¿¡, ¿ÀÅäÇÖÅ°°¡ Ãâ·Â º¯¼ö¸¦ ³Ê¹« ÀÛ°Ô ¸¸µé¾î ¸ðµç ÅؽºÆ®°¡ µé¾î°¡Áö ¸øÇϱ⠶§¹®¿¡ ÇʼöÀûÀ¸·Î ÀÌ·¸°Ô ó¸®ÇØ¾ß ÇÕ´Ï´Ù.

+

+¿­¶÷µÈ ÅؽºÆ®ÀÇ ¾çÀº º¯¼öÀÇ ÃÖ´ë °¡¿ë ´É·Â¿¡ Á¦ÇÑÀ» ¹Þ½À´Ï´Ù (#MaxMem Áö½Ã¾î¸¦ ÅëÇÏ¿© ¹Ù²Ü ¼ö ÀÖ½À´Ï´Ù). °á°úÀûÀ¸·Î, ÀÌ ¸í·É¾î´Â ¸ñÇ¥ â¿¡ (¿¹, Å« ¹®¼­¸¦ ¿­°í ÀÖ´Â ÆíÁý±â¿¡) ¹æ´ëÇÑ ¾çÀÇ ÅؽºÆ®°¡ ÀÖ´Ù¸é ¹æ´ëÇÑ ¾çÀÇ RAMÀ» »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. À̸¦ ÇÇÇÏ·Á¸é, â ÅؽºÆ®ÀÇ Æ÷ÀÎÅ͸¸ ¿­¶÷ÇÏ´Â °Íµµ °¡´ÉÇÕ´Ï´Ù. ´ë½Å¿¡ ControlGetText¸¦ »ç¿ëÇϽʽÿÀ. ¾î´À °æ¿ìµç, º¯¼öÀÇ ¸Þ¸ð¸®´Â ³ªÁß¿¡ ¾Æ¹«°Íµµ ÇÒ´çÇÏÁö ¾ÊÀ¸¸é ÇØÁ¦ÇÒ ¼ö ÀÖ½À´Ï´Ù. Áï, OutputVar =ÀÌ¸é ¸Þ¸ð¸®°¡ ÇØÁ¦µË´Ï´Ù.

+

+âÀÇ ¸ðµç ÄÜÆ®·Ñ ¸ñ·ÏÀ» ¿­¶÷ÇÏ·Á¸é, ´ÙÀ½ ¿¹Á¦¸¦ µû¸£½Ê½Ã¿À: WinGet, OutputVar, ControlList, WinTitle

+

+â Á¦¸ñ°ú ÅؽºÆ®´Â ´ë¼Ò¹®ÀÚ¸¦ ±¸ºÐÇÕ´Ï´Ù. ¼ûÀº âÀº DetectHiddenWindows°¡ ÄÑÁ® ÀÖÀ¸¸é ŽÁöµË´Ï´Ù.

+ +

°ü·Ã Ç׸ñ

+

ControlGetText, WinGetActiveStats, WinGetActiveTitle, WinGetTitle, WinGetPos, #MaxMem

+

¿¹Á¦

+
Run, Calc.exe
+WinWait, Calculator
+WinGetText, text  ; À§¿¡¼­ ¹ß°ßÇÑ Ã¢À» »ç¿ëÇÕ´Ï´Ù.
+MsgBox, The text is:`n%text%
+ + + diff --git a/src/docs/commands/WinGetTitle.htm b/src/docs/commands/WinGetTitle.htm new file mode 100644 index 0000000..0c79098 --- /dev/null +++ b/src/docs/commands/WinGetTitle.htm @@ -0,0 +1,52 @@ + + + + +WinGetTitle + + + + + + + +

WinGetTitle

+ +

ÁöÁ¤µÈ âÀÇ Á¦¸ñÀ» ¿­¶÷ÇÕ´Ï´Ù.

+ +
WinGetTitle, OutputVar [, WinTitle, WinText, ExcludeTitle, ExcludeText]
+

¸Å°³º¯¼ö

+
+ +
OutputVar
+

¿­¶÷ÇÑ Á¦¸ñÀ» ÀúÀåÇÒ º¯¼öÀÇ À̸§.

+ +
WinTitle
+

¸ñÇ¥ âÀ» ½Äº°Çϴ â Á¦¸ñ ¶Ç´Â ´Ù¸¥ ±âÁØ. WinTitle ÂüÁ¶.

+ +
WinText
+

+ Á¸ÀçÇϸé, ÀÌ ¸Å°³º¯¼ö´Â ¸ñÇ¥ â ÅؽºÆ®ÀÇ ºÎ¹®ÀÚ¿­ÀÔ´Ï´Ù (µ¿ºÀµÈ Window Spy À¯Æ¿¸®Æ¼¿¡ ³ëÃâµÊ). ¼ûÀº ÅؽºÆ®´Â DetectHiddenText°¡ ÄÑÁ® ÀÖÀ¸¸é ŽÁöµË´Ï´Ù.

+ +
ExcludeTitle
+

Á¦¸ñ¿¡ ÀÌ °ªÀÌ Àִ âÀº Á¦¿ÜÇÕ´Ï´Ù.

+ +
ExcludeText
+

ÅؽºÆ®¿¡ ÀÌ °ªÀÌ Àִ âÀº Á¦¿ÜÇÕ´Ï´Ù.

+ +
+ +

³íÆò

+

+¸¶¿ì½º°¡ ÇöÀç ¿Ã¶ó ź âÀÇ À̸§À» ¾Ë·Á¸é, MouseGetPos¸¦ »ç¿ëÇÕ´Ï´Ù.

+

+â Á¦¸ñ°ú ÅؽºÆ®´Â ´ë¼Ò¹®ÀÚ¸¦ ±¸º°ÇÕ´Ï´Ù. ¼ûÀº âÀº DetectHiddenWindows°¡ ÄÑÁ® ÀÖÀ¸¸é ŽÁöµË´Ï´Ù.

+ +

°ü·Ã Ç׸ñ

+

WinGetActiveStats, WinGetActiveTitle, WinGetClass, WinGet, WinGetText, ControlGetText, WinGetPos

+

¿¹Á¦

+
WinGetTitle, Title, A
+MsgBox, È°¼º âÀº "%Title%"ÀÔ´Ï´Ù.
+ + + diff --git a/src/docs/commands/WinHide.htm b/src/docs/commands/WinHide.htm new file mode 100644 index 0000000..e24bdad --- /dev/null +++ b/src/docs/commands/WinHide.htm @@ -0,0 +1,58 @@ + + + + +WinHide + + + + + + + +

WinHide

+ +

ÁöÁ¤µÈ âÀ» °¨Ãä´Ï´Ù.

+ +
WinHide [, WinTitle, WinText, ExcludeTitle, ExcludeText]
+

¸Å°³º¯¼ö

+
+ +
WinTitle
+

¸ñÇ¥ âÀ» ½Äº°Çϴ â Á¦¸ñ ¶Ç´Â ´Ù¸¥ ±âÁØ. WinTitle ÂüÁ¶.

+ +
WinText
+

Á¸ÀçÇϸé, ¸ñÇ¥ â ÅؽºÆ®ÀÇ ºÎ¹®ÀÚ¿­ÀÔ´Ï´Ù (µ¿ºÀµÈ Window Spy À¯Æ¿¸®Æ¼¿¡ ³ëÃâµÊ). ¼ûÀº ÅؽºÆ®´Â DetectHiddenText°¡ ÄÑÁ® ÀÖÀ¸¸é(ON) ŽÁöµË´Ï´Ù.

+ +
ExcludeTitle
+

Á¦¸ñ¿¡ ÀÌ °ªÀÌ Àִ âÀº Á¦¿ÜÇÕ´Ï´Ù.

+ +
ExcludeText
+

ÅؽºÆ®¿¡ ÀÌ °ªÀÌ Àִ âÀº Á¦¿ÜÇÕ´Ï´Ù.

+ +
+ +

³íÆò

+

+¼ûÀº âÀ» º¸¿©ÁÖ·Á¸é WinShow¸¦ »ç¿ëÇÕ´Ï´Ù (DetectHiddenWindowsÀº On ¶Ç´Â OffÀÏ ¼ö ÀÖ½À´Ï´Ù).

+

+ÀÌ ¸í·É¾î´Â ÃÖ»óÀ§¿¡ ºÎÇÕÇϴ â¿¡¸¸ ÀÛµ¿ÇÕ´Ï´Ù. ´Ü, WinTitleÀÌ ahk_group GroupNameÀÎ °æ¿ì´Â Á¦¿ÜÇÕ´Ï´Ù. ÀÌ °æ¿ì, ±×·ì ¾ÈÀÇ ¸ðµç âÀÌ ¿µÇâÀ» ¹Þ½À´Ï´Ù.

+

+ŽºÅ©¹Ù Ž»ö±â´Â ´ÙÀ½°ú °°ÀÌ º¸¿©Áְųª/°¨Ãâ ¼ö ÀÖ½À´Ï´Ù:

+ +
WinHide ahk_class Shell_TrayWnd
+WinShow ahk_class Shell_TrayWnd
+ +

°ü·Ã Ç׸ñ

+

WinShow, SetTitleMatchMode, DetectHiddenWindows, ¸¶Áö¸· ¹ß°ß â, WinSet

+ +

¿¹Á¦

+
Run, notepad.exe
+WinWait, Untitled - Notepad
+Sleep, 500
+WinHide ; À§¿¡¼­ ¹ß°ßÇÑ Ã¢À» »ç¿ëÇÕ´Ï´Ù
+Sleep, 1000
+WinShow
+ + + diff --git a/src/docs/commands/WinKill.htm b/src/docs/commands/WinKill.htm new file mode 100644 index 0000000..f436079 --- /dev/null +++ b/src/docs/commands/WinKill.htm @@ -0,0 +1,60 @@ + + + + +WinKill + + + + + + + +

WinKill

+ +

ÁöÁ¤µÈ âÀ» °­Á¦·Î ´Ý½À´Ï´Ù.

+ +
WinKill [, WinTitle, WinText, SecondsToWait, ExcludeTitle, ExcludeText]
+

¸Å°³º¯¼ö

+
+ +
WinTitle
+

¸ñÇ¥ âÀ» ½Äº°Çϴ â Á¦¸ñ ¶Ç´Â ´Ù¸¥ ±âÁØ. WinTitle ÂüÁ¶.

+ +
WinText
+

Á¸ÀçÇϸé, ¸ñÇ¥ â ÅؽºÆ®ÀÇ ºÎ¹®ÀÚ¿­ÀÔ´Ï´Ù (µ¿ºÀµÈ Window Spy À¯Æ¿¸®Æ¼¿¡ ³ëÃâµÊ). ¼ûÀº ÅؽºÆ®´Â DetectHiddenText°¡ ÄÑÁ® ÀÖÀ¸¸é(ON) ŽÁöµË´Ï´Ù.

+ +
SecondsToWait
+
+

»ý·«µÇ°Å³ª ºñ¾î ÀÖÀ¸¸é, ÀüÇô ±â´Ù¸®Áö ¾Ê½À´Ï´Ù. 0À̸é 500ms¸¦ ±â´Ù¸®¸³´Ï´Ù. ±×·¸Áö ¾ÊÀ¸¸é, âÀÌ ´ÝÈ÷±â¸¦ ÁöÁ¤µÈ °³¼öÀÇ ÃÊ µ¿¾È ±â´Ù¸³´Ï´Ù (¼Ò¼öÁ¡À» Çã¿ëÇÏ°í Ç¥Çö½Äµµ °¡´ÉÇÕ´Ï´Ù). âÀÌ ±× ±â°£ ¾È¿¡ ´ÝÈ÷Áö ¾Ê´õ¶óµµ, ½ºÅ©¸³Æ®´Â ½ÇÇàÀ» °è¼ÓÇÕ´Ï´Ù. ErrorLevelÀº ÀÌ ¸í·É¾î·Î ¼³Á¤µÇÁö ¾Ê½À´Ï´Ù. ±×·¡¼­ âÀÌ È®½ÇÇÏ°Ô ´ÝÇû´ÂÁö È®ÀÎÇÒ ÇÊ¿ä°¡ ÀÖ´Ù¸é IfWinExist ¶Ç´Â WinWaitClose¸¦ »ç¿ëÇϽʽÿÀ.

+ +
ExcludeTitle
+

Á¦¸ñ¿¡ ÀÌ °ªÀÌ Àִ âÀº Á¦¿ÜÇÕ´Ï´Ù.

+ +
ExcludeText
+

ÅؽºÆ®¿¡ ÀÌ °ªÀÌ Àִ âÀº Á¦¿ÜÇÕ´Ï´Ù.

+ +
+ +

³íÆò

+

+ÀÌ ¸í·É¾î´Â ¸ÕÀú âÀ» Á¤»óÀûÀ¸·Î ´ÝÀ¸·Á°í °£·«ÇÏ°Ô ½ÃµµÇÕ´Ï´Ù. ½ÇÆÐÇϸé, ±×ÀÇ ÇÁ·Î¼¼½º¸¦ Á¾·áÇÏ¿© ±× âÀ» °­Á¦·Î ´ÝÀ¸·Á°í ½ÃµµÇÕ´Ï´Ù.

+

+ºÎÇÕÇÑ Ã¢ÀÌ È°¼ºÈ­µÇ¾î ÀÖ´Ù¸é, ±× âÀº ±× ¾Æ·¡¿¡ ºÎÇÕÇÑ ´Ù¸¥ ⺸´Ù ¿ì¼±ÀûÀ¸·Î ´ÝÈü´Ï´Ù. ÀϹÝÀûÀ¸·Î, ¿©·¯ âÀÌ ºÎÇÕÇϸé, (°¡Àå ÃÖ±Ù¿¡ »ç¿ëµÈ) ÃÖ»óÀ§ âÀÌ ´ÝÈü´Ï´Ù.

+

+ÀÌ ¸í·É¾î´Â ÃÖ»óÀ§¿¡ ºÎÇÕÇÑ Ã¢¿¡¸¸ ÀÛµ¿ÇÕ´Ï´Ù. ´Ü, WinTitleÀÌ ahk_group GroupNameÀÎ °æ¿ì´Â Á¦¿ÜÇÕ´Ï´Ù. ÀÌ °æ¿ì, ±×·ì ¾ÈÀÇ ¸ðµç âÀÌ ¿µÇâÀ» ¹Þ½À´Ï´Ù.

+

+â Á¦¸ñ°ú ÅؽºÆ®´Â ´ë¼Ò¹®ÀÚ¸¦ ±¸º°ÇÕ´Ï´Ù. ¼ûÀº ÅؽºÆ®´Â DetectHiddenWindows¸¦ ÄѸé ŽÁöµË´Ï´Ù.

+ +

°ü·Ã Ç׸ñ

+

+WinClose, WinWaitClose, Process, WinActivate, SetTitleMatchMode, DetectHiddenWindows, Last Found Window, IfWinExist, IfWinActive, WinWaitActive, WinWait, GroupActivate

+ +

¿¹Á¦

+
IfWinExist, Untitled - Notepad
+    WinKill ; À§¿¡¼­ ¹ß°ßÇÑ Ã¢À» »ç¿ëÇÕ´Ï´Ù
+else
+    WinKill, Calculator
+ + + diff --git a/src/docs/commands/WinMaximize.htm b/src/docs/commands/WinMaximize.htm new file mode 100644 index 0000000..291a4d4 --- /dev/null +++ b/src/docs/commands/WinMaximize.htm @@ -0,0 +1,57 @@ + + + + +WinMaximize + + + + + + + +

WinMaximize

+ +

ÁöÁ¤µÈ âÀ» ÃÖ´ë Å©±â·Î È®´ëÇÕ´Ï´Ù.

+ +
WinMaximize [, WinTitle, WinText, ExcludeTitle, ExcludeText]
+

¸Å°³º¯¼ö

+
+ +
WinTitle
+

¸ñÇ¥ âÀ» ½Äº°Çϴ â Á¦¸ñ ¶Ç´Â ´Ù¸¥ ±âÁØ. WinTitle ÂüÁ¶.

+ +
WinText
+

Á¸ÀçÇϸé, ÀÌ ¸Å°³º¯¼ö´Â ¸ñÇ¥ â ÅؽºÆ®ÀÇ ºÎ¹®ÀÚ¿­ÀÔ´Ï´Ù (µ¿ºÀµÈ Window Spy À¯Æ¿¸®Æ¼¿¡ ³ëÃâµÊ). ¼ûÀº ÅؽºÆ®´Â DetectHiddenText°¡ ÄÑÁ® ÀÖÀ¸¸é(ON) ŽÁöµË´Ï´Ù.

+ +
ExcludeTitle
+

Á¦¸ñ¿¡ ÀÌ °ªÀÌ Àִ âÀº Á¦¿ÜÇÕ´Ï´Ù.

+ +
ExcludeText
+

ÅؽºÆ®¿¡ ÀÌ °ªÀÌ Àִ âÀº Á¦¿ÜÇÕ´Ï´Ù.

+ +
+ +

³íÆò

+

âÀ» º¹±¸ÇÏ·Á¸é WinRestore¸¦ »ç¿ëÇÏ°í ÃÖ¼ÒÈ­ÇÏ·Á¸é WinMinimize¸¦ »ç¿ëÇÕ´Ï´Ù.

+

+ƯÁ¤ À¯ÇüÀÇ Ã¢ÀÌ WinMaximize¿¡ Á¦´ë·Î ÀÀ´äÇÏÁö ¾ÊÀ¸¸é, ´ë½Å¿¡ ´ÙÀ½ ¹æ¹ýÀ» »ç¿ëÇØ º¸½Ê½Ã¿À:

+ +
PostMessage, 0x112, 0xF030,,, WinTitle, WinText  ; 0x112 = WM_SYSCOMMAND, 0xF030 = SC_MAXIMIZE
+

+ÀÌ ¸í·É¾î´Â ÃÖ»óÀ§¿¡ ºÎÇÕÇϴ â¿¡¸¸ ÀÛµ¿ÇÕ´Ï´Ù. ´Ü, WinTitleÀÌ ahk_group GroupNameÀÎ °æ¿ì´Â Á¦¿ÜÇÕ´Ï´Ù. ÀÌ °æ¿ì, ±×·ì ¾ÈÀÇ ¸ðµç âÀÌ ¿µÇâÀ» ¹Þ½À´Ï´Ù.

+

+â Á¦¸ñ°ú ÅؽºÆ®´Â ´ë¼Ò¹®ÀÚ¸¦ ±¸ºÐÇÕ´Ï´Ù. ¼ûÀº ÅؽºÆ®´Â DetectHiddenWindows°¡ ÄÑÁ® ÀÖÀ¸¸é ŽÁöµË´Ï´Ù.

+ +

°ü·Ã Ç׸ñ

+

WinRestore, WinMinimize

+ +

Example

+
Run, notepad.exe
+WinWait, Untitled - Notepad
+WinMaximize ; À§¿¡¼­ ¹ß°ßÇÑ Ã¢À» »ç¿ëÇÕ´Ï´Ù
+
+^Up::WinMaximize, A  ; È°¼º âÀ» ÃÖ´ëÈ­ ÇÒ ÇÖÅ°¸¦ ÇÒ´çÇÕ´Ï´Ù.
+ + + diff --git a/src/docs/commands/WinMenuSelectItem.htm b/src/docs/commands/WinMenuSelectItem.htm new file mode 100644 index 0000000..845757e --- /dev/null +++ b/src/docs/commands/WinMenuSelectItem.htm @@ -0,0 +1,83 @@ + + + + +WinMenuSelectItem + + + + + + + +

WinMenuSelectItem

+ +

ÁöÁ¤µÈ âÀÇ ¸Þ´º ¹Ù¿¡ ¸Þ´º Ç׸ñÀ» ¿äûÇÕ´Ï´Ù.

+ +
WinMenuSelectItem, WinTitle, WinText, Menu [, SubMenu1, SubMenu2, SubMenu3, SubMenu4, SubMenu5, SubMenu6, ExcludeTitle, ExcludeText]
+

¸Å°³º¯¼ö

+
+ +
WinTitle
+

¸ñÇ¥ âÀ» ½Äº°Çϴ â Á¦¸ñ ¶Ç´Â ´Ù¸¥ ±âÁØ. WinTitle ÂüÁ¶.

+ +
WinText
+

Á¸ÀçÇϸé, ÀÌ ¸Å°³º¯¼ö´Â ¸ñÇ¥ â ÅؽºÆ®ÀÇ ºÎ¹®ÀÚ¿­ÀÔ´Ï´Ù (µ¿ºÀµÈ Window Spy À¯Æ¿¸®Æ¼¿¡ ³ëÃâµÊ). ¼ûÀº ÅؽºÆ®´Â DetectHiddenText°¡ ÄÑÁ® ÀÖÀ¸¸é(ON) ŽÁöµË´Ï´Ù.

+ +
Menu
+

ÃÖ»óÀ§ ·¹º§ ¸Þ´ºÀÇ À̸§. ¿¹, File, Edit, View. ¸Þ´º Ç׸ñÀÇ À§Ä¡·Î µÉ ¼ö ÀÖ½À´Ï´Ù. 1&À̸é ù ¸Þ´º¸¦ ³ªÅ¸³»°í 2&ÀÌ¸é µÎ ¹ø° ¸Þ´º¸¦ ³ªÅ¸³À´Ï´Ù µîµî.

+ +
SubMenu1
+

¼±ÅÃÇÒ ¸Þ´º Ç׸ñÀÇ À̸§ ¶Ç´Â ±×ÀÇ À§Ä¡ (À§ ÂüÁ¶).

+ +
SubMenu2
+

SubMenu1 ÀÚü¿¡ ¸Þ´º°¡ Æ÷ÇԵǾî ÀÖÀ¸¸é, ÀÌ°ÍÀÌ ±× ¸Þ´º Ç׸ñÀÇ À̸§ ¶Ç´Â ±×ÀÇ À§Ä¡ÀÔ´Ï´Ù.

+ +
SubMenu3
+

À§¿Í µ¿ÀÏ.

+ +
SubMenu4
+

À§¿Í µ¿ÀÏ.

+ +
SubMenu5
+

À§¿Í µ¿ÀÏ.

+ +
SubMenu6
+

À§¿Í µ¿ÀÏ.

+ +
ExcludeTitle
+

Á¦¸ñ¿¡ ÀÌ °ªÀÌ Àִ âÀº Á¦¿ÜµË´Ï´Ù.

+ +
ExcludeText
+

ÅؽºÆ®¿¡ ÀÌ °ªÀÌ Àִ âÀº Á¦¿ÜµË´Ï´Ù.

+ +
+ +

ErrorLevel

+ +

[v1.1.04+] ÀÌ ¸í·É¾î´Â ½ÇÆнà ¿¹¿Ü¸¦ ´øÁú ¼ö ÀÖ½À´Ï´Ù. ´õ ÀÚ¼¼ÇÑ Á¤º¸´Â ½ÇÇà½Ã°£ ¿¡·¯¸¦ ÂüÁ¶ÇϽʽÿÀ.

+

ErrorLevelÀº ¹®Á¦°¡ ÀÖÀ¸¸é 1, ¹®Á¦°¡ ¾øÀ¸¸é 0ÀÌ ¼³Á¤µË´Ï´Ù.

+ +

³íÆò

+

+ÀÌ ¸í·É¾î°¡ ÀÛµ¿ÇÏ·Á¸é, ¸ñÇ¥ âÀÌ È°¼ºÈ­µÇ¾î ÀÖÁö ¾Ê¾Æ¾ß ÇÕ´Ï´Ù. ±×·¸Áö¸¸ âÀº ÃÖ¼ÒÈ­ »óÅ°¡ ¾Æ´Ï¾î¾ß ÇÕ´Ï´Ù.

+

+ÀÌ ¸í·É¾î´Â ºñ Ç¥ÁØ ¸Þ´º ¹Ù¸¦ »ç¿ëÇÏ´Â ¾îÇðú ÀÛµ¿ÇÏÁö ¾Ê½À´Ï´Ù. ¿¹·Î´Â Microsoft Outlook°ú Outlook Express°¡ Àִµ¥, À̵éÀº ¸Þ´º¹Ù¿¡ À§ÀåÇÑ Åø¹Ù¸¦ »ç¿ëÇÕ´Ï´Ù. ÀÌ·± °æ¿ì, ControlSend³ª PostMessageÀÇ »ç¿ëÀ» °í·ÁÇϽʽÿÀ. ºÐ¸íÈ÷ ºñ-Ç¥ÁØ ¸Þ´º¹Ù¸¦ °¡Áø ¾îÇðú »óÈ£ÀÛ¿ëÇÒ ¼ö ÀÖÀ» °ÍÀÔ´Ï´Ù.

+

+¸Þ´º À̸§ ¸Å°³º¯¼ö´Â ´ë¼Ò¹®ÀÚ¸¦ ±¸ºÐÇÏÁö ¾Ê½À´Ï´Ù (Áï, File->Save´Â file->save¿Í µ¿ÀÏÇÕ´Ï´Ù). ±×¸®°í ¾ÚÆÛ¼¾µå (&)¸¦ »ç¿ëÇØ ¸Þ´º Ç׸ñ ù ¹®ÀÚ¿¡ ¹ØÁÙÀ» ±×¾î Ç¥½ÃÇÏ´Â ÀÏÀº ÇÊ¿äÇÏÁö ¾Ê½À´Ï´Ù (Áï, &FileÀº File°ú µ¿ÀÏÇÕ´Ï´Ù).

+

+¸Þ´º À̸§ ¸Å°³º¯¼ö´Â ¶ÇÇÑ À§Ä¡¸¦ ÁöÁ¤ÇÒ ¼öµµ ÀÖ½À´Ï´Ù. ÀÌ ¹æ¹ýÀº (¾Æ¸¶µµ ½ÇÁ¦ ÅؽºÆ®º¸´Ù ±×¸²ÀÌ Æ÷ÇԵǾî Àֱ⠶§¹®¿¡) ÅؽºÆ®°¡ ¾ø´Â ¸Þ´º¸¦ Áö¿øÇϱâ À§ÇØ Á¸ÀçÇÕ´Ï´Ù. À§Ä¡ 1&Àº ù ¸Þ´º Ç׸ñÀÌ°í (¿¹, ù File ¸Þ´º), À§Ä¡ 2&´Â µÎ ¹ø° ¸Þ´º Ç׸ñÀÔ´Ï´Ù (¿¹, Edit ¸Þ´º) µîµî. ¸Þ´º °¡¸§ ÁÙÀº ¸Þ´º Ç׸ñÀ¸ À§Ä¡¸¦ °áÁ¤Çϱâ À§ÇÑ ¸ñÀûÀ¸·Î ¸Þ´º Ç׸ñ °³¼ö¿¡ Æ÷ÇԵ˴ϴÙ.

+

+â Á¦¸ñ°ú ÅؽºÆ®´Â ´ë¼Ò¹®ÀÚ¸¦ ±¸ºÐÇÕ´Ï´Ù. ¼ûÀº ÅؽºÆ®´Â DetectHiddenWindows°¡ ÄÑÁ® ÀÖÀ¸¸é ŽÁöµË´Ï´Ù.

+ +

°ü·Ã Ç׸ñ

+

ControlSend, PostMessage

+

¿¹Á¦

+
; ³ëÆ®Æе忡¼­ File->OpenÀÌ ¼±Åõ˴ϴÙ:
+WinMenuSelectItem, Untitled - Notepad, , File, Open
+
+; À§¿Í µ¿µîÇÏÁö¸¸ À̸§ÀÌ ¾Æ´Ï¶ó À§Ä¡·Î ¼±Åõ˴ϴÙ:
+WinMenuSelectItem, Untitled - Notepad, , 1&, 2&
+ + + diff --git a/src/docs/commands/WinMinimize.htm b/src/docs/commands/WinMinimize.htm new file mode 100644 index 0000000..aa8c67d --- /dev/null +++ b/src/docs/commands/WinMinimize.htm @@ -0,0 +1,55 @@ + + + + +WinMinimize + + + + + + + +

WinMinimize

+ +

ÁöÁ¤µÈ âÀ» ŽºÅ© ¹Ù¿¡ ¹öÆ°À¸·Î Ãà¼ÒÇÕ´Ï´Ù.

+ +
WinMinimize [, WinTitle, WinText, ExcludeTitle, ExcludeText]
+

¸Å°³º¯¼ö

+
+ +
WinTitle
+

¸ñÇ¥ âÀ» ½Äº°Çϴ â Á¦¸ñ ¶Ç´Â ´Ù¸¥ ±âÁØ. WinTitle ÂüÁ¶.

+ +
WinText
+

Á¸ÀçÇϸé, ÀÌ ¸Å°³º¯¼ö´Â ¸ñÇ¥ â ÅؽºÆ®ÀÇ ºÎ¹®ÀÚ¿­ÀÔ´Ï´Ù (µ¿ºÀµÈ Window Spy À¯Æ¿¸®Æ¼¿¡ ³ëÃâµÊ). ¼ûÀº ÅؽºÆ®´Â DetectHiddenTextÀÌ ÄÑÁ® ÀÖÀ¸¸é(ON) ŽÁöµË´Ï´Ù.

+ +
ExcludeTitle
+

Á¦¸ñ¿¡ ÀÌ °ªÀÌ Àִ âÀº Á¦¿ÜÇÕ´Ï´Ù.

+ +
ExcludeText
+

ÅؽºÆ®¿¡ ÀÌ °ªÀÌ Àִ âÀº Á¦¿ÜÇÕ´Ï´Ù.

+ +
+ +

³íÆò

+

âÀ» º¹±¸ÇÏ·Á¸é WinRestore³ª WinMaximize¸¦ »ç¿ëÇϽʽÿÀ.

+

+ƯÁ¤ À¯ÇüÀÇ Ã¢ÀÌ WinMinimize¿¡ ¿Ã¹Ù¸£°Ô ÀÀ´äÇÏÁö ¾ÊÀ¸¸é, ´ë½Å ´ÙÀ½ ¹æ¹ýÀ» ½ÃµµÇϽʽÿÀ:

+
PostMessage, 0x112, 0xF020,,, WinTitle, WinText ; 0x112 = WM_SYSCOMMAND, 0xF020 = SC_MINIMIZE
+

+ÀÌ ¸í·É¾î´Â ÃÖ»óÀ§¿¡ ºÎÇÕÇϴ â¿¡¸¸ ÀÛµ¿ÇÕ´Ï´Ù. ´Ü, WinTitleÀÌ ahk_group GroupNameÀÎ °æ¿ì´Â Á¦¿ÜÇÕ´Ï´Ù. ÀÌ °æ¿ì´Â ±×·ì ¾ÈÀÇ ¸ðµç âÀÌ ¿µÇâÀ» ¹Þ½À´Ï´Ù.

+

+â Á¦¸ñ°ú ÅؽºÆ®´Â ´ë¼Ò¹®ÀÚ¸¦ ±¸ºÐÇÕ´Ï´Ù. ¼ûÀº ÅؽºÆ° DetectHiddenWindows°¡ ÄÑÁ® ÀÖÀ¸¸é ŽÁöµË´Ï´Ù.

+ +

°ü·Ã Ç׸ñ

+

WinRestore, WinMaximize, WinMinimizeAll

+

¿¹Á¦

+
Run, notepad.exe
+WinWait, Untitled - Notepad
+WinMinimize ; À§¿¡¼­ ¹ß°ßÇÑ Ã¢À» »ç¿ëÇÕ´Ï´Ù
+
+^Down::WinMinimize, A  ; È°¼º âÀ» ÃÖ¼ÒÈ­ ÇÒ ÇÖÅ°¸¦ ÇÒ´çÇÕ´Ï´Ù.
+ + + diff --git a/src/docs/commands/WinMinimizeAll.htm b/src/docs/commands/WinMinimizeAll.htm new file mode 100644 index 0000000..e46341c --- /dev/null +++ b/src/docs/commands/WinMinimizeAll.htm @@ -0,0 +1,30 @@ + + + + +WinMinimizeAll / WinMinimizeAllUndo + + + + + + + +

WinMinimizeAll / WinMinimizeAllUndo

+ +

¸ðµç âÀ» ÃÖ¼ÒÈ­Çϰųª ȯ¿øÇÕ´Ï´Ù.

+ +
WinMinimizeAll
+WinMinimizeAllUndo
+

+´ëºÎºÐÀÇ ½Ã½ºÅÛ¿¡¼­, ÀÌ°ÍÀº ÀͽºÇ÷η¯ÀÇ Win-M ÇÖÅ° ±×¸®°í Win-D ÇÖÅ°¿Í µ¿µîÇÕ´Ï´Ù.

+ +

°ü·Ã Ç׸ñ

+

WinMinimize, GroupAdd

+ +

¿¹Á¦

+
WinMinimizeAll
+WinMinimizeAllUndo
+ + + diff --git a/src/docs/commands/WinMove.htm b/src/docs/commands/WinMove.htm new file mode 100644 index 0000000..41258dd --- /dev/null +++ b/src/docs/commands/WinMove.htm @@ -0,0 +1,78 @@ + + + + +WinMove + + + + + + + +

WinMove

+ +

ÁöÁ¤µÈ âÀÇ À§Ä¡¿Í Å©±â¸¦ º¯°æÇÕ´Ï´Ù.

+ +
WinMove, X, Y
+WinMove, WinTitle, WinText, X, Y [, Width, Height, ExcludeTitle, ExcludeText]
+

¸Å°³º¯¼ö

+
+ +
X, Y
+

¸ñǥâÀÇ »õ À§Ä¡ÀÇ Á»ó ¸ð¼­¸® X¿Í Y ÁÂÇ¥ (Çȼ¿ ´ÜÀ§). ÀÌ °ªÀº Ç¥Çö½ÄÀÏ ¼ö ÀÖ½À´Ï´Ù. È­¸éÀÇ Á»ó Çȼ¿ ÁÂÇ¥´Â 0, 0ÀÔ´Ï´Ù.

+

+ ÀÌ ¸Å°³º¯¼ö¸¸ ÁÖ¾îÁ³´Ù¸é, ¸¶Áö¸· ¹ß°ß âÀÌ ¸ñÇ¥ âÀ¸·Î »ç¿ëµË´Ï´Ù.

+

±×·¸Áö ¾ÊÀ¸¸é, X¿Í Y¸¦ »ý·«ÇÒ ¼ö ÀÖ½À´Ï´Ù. ÀÌ °æ¿ì ÇöÀç À§Ä¡°¡ »ç¿ëµË´Ï´Ù.

+ +
WinTitle
+

¸ñÇ¥ âÀ» ½Äº°Çϴ â Á¦¸ñ ¶Ç´Â ´Ù¸¥ ±âÁØ. WinTitle ÂüÁ¶.

+ +
WinText
+

Á¸ÀçÇϸé, ¸ñÇ¥ â ÅؽºÆ®ÀÇ ºÎ¹®ÀÚ¿­ÀÔ´Ï´Ù (µ¿ºÀµÈ Window Spy À¯Æ¿¸®Æ¼¿¡ ³ëÃâµÊ). ¼ûÀº ÅؽºÆ®´Â DetectHiddenText°¡ ÄÑÁ®(ON) ÀÖÀ¸¸é ŽÁöµË´Ï´Ù.

+ +
Width, Height
+

âÀÇ »õ ³Êºñ¿Í ³ôÀÌ (Çȼ¿ ´ÜÀ§), ÀÌ °ªÀº Ç¥Çö½ÄÀÏ ¼öÀÖ½À´Ï´Ù. Çϳª¶óµµ »ý·«µÇ°Å³ª ºñ¾î Àְųª ´Ü¾î DEFAULTÀ̸é, ÇØ´ç Â÷¿øÀÇ Å©±â´Â ¹Ù²îÁö ¾Ê½À´Ï´Ù.

+ +
ExcludeTitle
+

Á¦¸ñ¿¡ ÀÌ °ªÀÌ µé¾î Àִ âÀº Á¦¿ÜµË´Ï´Ù.

+ +
ExcludeText
+

ÅؽºÆ®¿¡ ÀÌ °ªÀÌ µé¾î Àִ âÀº Á¦¿ÜµË´Ï´Ù.

+ +
+ +

³íÆò

+

+Width¿Í Height°¡ ³Ê¹« ÀÛ´Ù¸é (¶Ç´Â À½¼ö¶ó¸é), Á¦¸ñ ¹Ù°¡ ÀÖ´Â ´ëºÎºÐÀÇ Ã¢Àº ÀϹÝÀûÀ¸·Î 112 x 27 Çȼ¿º¸´Ù ´õ ÀÛ¾ÆÁöÁö ¾Ê½À´Ï´Ù (±×·¸Áö¸¸, ¾î¶² À¯ÇüÀÇ Ã¢Àº µû·Î ÃÖ¼Ò Å©±â¸¦ °¡Áú ¼ö ÀÖ½À´Ï´Ù). Width¿Í Height°¡ ³Ê¹« Å©¸é, ´ëºÎºÐÀÇ Ã¢Àº ¹ÙÅÁÈ­¸é Å©±âÀÇ ´ë·« 12 Çȼ¿À» ³Ñ¾î°¡Áö ¾Ê½À´Ï´Ù.

+

+x¿Í yÁÂÇ¥¿¡ À½¼ö °ªÀº Çã¿ëµË´Ï´Ù. ´ÙÁß-¸ð´ÏÅÍ ½Ã½ºÅÛÀ» Áö¿øÇÏ°í âÀ» ¿ÏÀüÈ÷ È­¸éÀ¸·ÎºÎÅÍ ¸Ö¸® À̵¿½Ãų ¼ö ÀÖ½À´Ï´Ù.

+

+WinMove´Â ÃÖ¼ÒÈ­µÈ âÀ» À̵¿ÇÒ ¼ö ¾øÁö¸¸, ¼ûÀº âÀº À̵¿½Ãų ¼ö ÀÖ½À´Ï´Ù. ¹°·Ð DetectHiddenWindows°¡ ÄÑÁ® ÀÖ¾î¾ß ÇÕ´Ï´Ù.

+

+WinMoveÀÇ ¼Óµµ´Â SetWinDelay¿¡ ¿µÇâÀ» ¹Þ½À´Ï´Ù.

+

+â Á¦¸ñ°ú ÅؽºÆ®´Â ´ë¼Ò¹®ÀÚ¸¦ ±¸ºÐÇÕ´Ï´Ù. ¼ûÀº âÀº DetectHiddenWindowsÀÌ ÄÑÁ® ÀÖÀ¸¸é ŽÁöµË´Ï´Ù.

+ +

°ü·Ã Ç׸ñ

+

ControlMove, WinGetPos, WinHide, WinMinimize, WinMaximize, WinSet

+ +

¿¹Á¦

+
Run, calc.exe
+WinWait, Calculator
+WinMove, 0, 0 ; WinWait°¡ ¹ß°ßÇÑ Ã¢À» È­¸éÀÇ Á»ó ¸ð¼­¸®·Î À̵¿½Ãŵ´Ï´Ù.
+
+SplashTextOn, 400, 300, Clipboard, Ŭ¸³º¸µåÀÇ ³»¿ë:`n%clipboard%
+WinMove, Clipboard, , 0, 0 ; ½ºÇ÷¹½Ã âÀ» Á»ó ¸ð¼­¸®·Î À̵¿½Ãŵ´Ï´Ù.
+Msgbox, SplashText¸¦ ³¡³»·Á¸é OK¸¦ ´©¸£½Ê½Ã¿À
+SplashTextOff
+
+; ´ÙÀ½ ÇÔ¼ö´Â ÁöÁ¤µÈ âÀ» È­¸é °¡¿îµ¥¿¡ ¹èÄ¡ÇÕ´Ï´Ù:
+CenterWindow(WinTitle)
+{
+    WinGetPos,,, Width, Height, %WinTitle%
+    WinMove, %WinTitle%,, (A_ScreenWidth/2)-(Width/2), (A_ScreenHeight/2)-(Height/2)
+}
+ + + diff --git a/src/docs/commands/WinRestore.htm b/src/docs/commands/WinRestore.htm new file mode 100644 index 0000000..b530db2 --- /dev/null +++ b/src/docs/commands/WinRestore.htm @@ -0,0 +1,52 @@ + + + + +WinRestore + + + + + + + +

WinRestore

+ +

ÁöÁ¤µÈ âÀÌ ÃÖ¼Ò ¶Ç´Â ÃÖ´ë »óÅ¿¡ ÀÖÀ¸¸é ¿ø·¡´ë·Î º¹±¸ÇÕ´Ï´Ù.

+ +
WinRestore [, WinTitle, WinText, ExcludeTitle, ExcludeText]
+

¸Å°³º¯¼ö

+
+ +
WinTitle
+

¸ñÇ¥ âÀ» ½Äº°ÇÏ´Â Á¦¸ñ ⠶Ǵ ´Ù¸¥ ±âÁØ. WinTitle ÂüÁ¶.

+ +
WinText
+

+ Á¸ÀçÇϸé, ÀÌ ¸Å°³º¯¼ö´Â ¸ñÇ¥ â ÅؽºÆ®ÀÇ ºÎ¹®ÀÚ¿­ÀÔ´Ï´Ù (µ¿ºÀµÈ Window Spy À¯Æ¿¸®Æ¼¿¡ ³ëÃâµÊ). ¼ûÀº ÅؽºÆ®´Â DetectHiddenTextÀÌ ÄÑÁ® ÀÖÀ¸¸é(ON) ŽÁöµË´Ï´Ù.

+ +
ExcludeTitle
+

Á¦¸ñ¿¡ ÀÌ °ªÀÌ Æ÷ÇԵǾî Àִ âÀº Á¦¿ÜµË´Ï´Ù.

+ +
ExcludeText
+

ÅؽºÆ®¿¡ ÀÌ °ªÀÌ Æ÷ÇԵǾî Àִ âÀº Á¦¿ÜµË´Ï´Ù.

+ +
+ +

³íÆò

+

ƯÁ¤ À¯ÇüÀÇ Ã¢ÀÌ ¿Ã¹Ù¸£°Ô WinRestore¿¡ ÀÀ´äÇÏÁö ¾ÊÀ¸¸é, ´ë½Å ´ÙÀ½À» ½ÃµµÇØ º¸½Ê½Ã¿À:

+ +
PostMessage, 0x112, 0xF120,,, WinTitle, WinText  ; 0x112 = WM_SYSCOMMAND, 0xF120 = SC_RESTORE
+

+ÀÌ ¸í·É¾î´Â ÃÖ»óÀ§ âÀÌ ºÎÇÕÇÒ °æ¿ì¿¡¸¸ ÀÛµ¿ÇÕ´Ï´Ù. WinTitleÀÌ ahk_group GroupNameÀÎ °æ¿ì´Â Á¦¿ÜÇÕ´Ï´Ù. ÀÌ °æ¿ì ±×·ì ¾ÈÀÇ ¸ðµç âÀÌ ¿µÇâÀ» ¹Þ½À´Ï´Ù.

+

+â Á¦¸ñ°ú ÅؽºÆ®´Â ´ë¼Ò¹®ÀÚ¸¦ ±¸ºÐÇÕ´Ï´Ù. ¼ûÀº ÅؽºÆ®´Â DetectHiddenWindowsÀÌ ÄÑÁ® ÀÖÀ¸¸é ŽÁöµË´Ï´Ù.

+ +

°ü·Ã Ç׸ñ

+

WinMinimize, WinMaximize

+ +

¿¹Á¦

+
WinRestore, Untitled - Notepad
+ + + diff --git a/src/docs/commands/WinSet.htm b/src/docs/commands/WinSet.htm new file mode 100644 index 0000000..870e50a --- /dev/null +++ b/src/docs/commands/WinSet.htm @@ -0,0 +1,184 @@ + + + + +WinSet + + + + + + + +

WinSet

+ +

ÁöÁ¤µÈ âÀ» ´Ù¾çÇÏ°Ô º¯°æÇÕ´Ï´Ù. ¿¹¸¦ µé¾î "Ç×»ó À§¿¡" ±×¸®°í Åõ¸íµµ.

+ +
WinSet, Attribute, Value [, WinTitle, WinText,  ExcludeTitle, ExcludeText]
+

¸Å°³º¯¼ö

+
+ +
Attribute, Value
+

¾Æ·¡ ¸®½ºÆ®¸¦ ÂüÁ¶ÇÕ´Ï´Ù.

+ +
WinTitle
+

¸ñÇ¥ âÀ» ½Äº°Çϴ â Á¦¸ñ ¶Ç´Â ´Ù¸¥ ±âÁØ. WinTitle ÂüÁ¶.

+ +
WinText
+

+ Á¸ÀçÇϸé, ÀÌ ¸Å°³º¯¼ö´Â ¸ñÇ¥ â ÅؽºÆ®ÀÇ ºÎ¹®ÀÚ¿­ÀÔ´Ï´Ù (µ¿ºÀµÈ Window Spy À¯Æ¿¸®Æ¼¿¡ ³ëÃâµÊ). ¼ûÀº ÅؽºÆ®´Â DetectHiddenText°¡ ÄÑÁ® ÀÖÀ¸¸é(ON) ŽÁöµË´Ï´Ù.

+ +
ExcludeTitle
+

Á¦¸ñ¿¡ ÀÌ °ªÀÌ µé¾î ÀÖÀ¸¸é Á¦¿ÜµË´Ï´Ù.

+ +
ExcludeText
+

ÅؽºÆ®¿¡ ÀÌ °ªÀÌ µé¾î ÀÖÀ¸¸é Á¦¿ÜµË´Ï´Ù.

+ +
+ +

Attribute, Value

+

AlwaysOnTop, [On|Off|Toggle]: + +âÀ» ´Ù¸¥ ¸ðµç ⺸´Ù À§¿¡ ÀÖµµ·Ï ¸¸µì´Ï´Ù. ONÀ¸·Î ÄÑ°í OFF·Î ²ü´Ï´Ù. ¶Ç´Â TOGGLEÀ» »ç¿ëÇÏ¸é ¹Ý´ë »óÅ·ΠÇöÀç »óŸ¦ ¼³Á¤ÇÒ ¼ö ÀÖ½À´Ï´Ù. »ý·«Çϸé, ±âº»°ªÀº TOGGLEÀÔ´Ï´Ù. ´Ü¾î Topmost¸¦ AlwaysOnTop ´ë½Å »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù.

+

+Bottom: âÀ» ½ºÅà ÇÏ´ÜÀ¸·Î º¸³À´Ï´Ù; Áï, ¸ðµç âÀÇ ¾Æ·¡·Î º¸³À´Ï´Ù. Alt-Escape¸¦ ´©¸¥ °Í°ú È¿°ú°¡ ºñ½ÁÇÕ´Ï´Ù. ¿¹¸¦ µé¾î: WinSet, Bottom,, WinTitle.

+

+Top: âÀ» ¸í½ÃÀûÀ¸·Î È°¼ºÈ­ÇÏÁö ¾Ê°í ½ºÅà »ó´ÜÀ¸·Î ¿Ã¸³´Ï´Ù. ±×·¸Áö¸¸, ½Ã½ºÅÛÀÇ ±âº» ¼³Á¤ ¶§¹®¿¡ ¾Æ¸¶µµ ´ëºÎºÐÀÇ °æ¿ì È°¼ºÈ­µÉ °ÍÀÔ´Ï´Ù. °Ô´Ù°¡, ÀÌ ¸í·É¾î´Â ¿î¿µ üÁ¦ÀÇ º¸È£ ¶§¹®¿¡ ¾Æ¹« È¿°ú°¡ ¾øÀ» ¼ö ÀÖ½À´Ï´Ù. ¿î¿µÃ¼Á¦´Â ÃÊÁ¡À» ÈÉÄ¡·Á°í ½ÃµµÇÏ´Â ¾îÇø®ÄÉÀ̼ÇÀ¸·ÎºÎÅÍ »ç¿ëÀÚ¸¦ º¸È£ÇÕ´Ï´Ù ( ¾î¶² À¯ÇüÀÌ Ã¢ÀÌ ÇöÀç È°¼ºÈ­µÇ¾î Àִ°¡ ±×¸®°í »ç¿ëÀÚ°¡ ¾î¶² ÀÏÀ» Çϴ°¡¿Í °°Àº ¿©·¯ ¿äÀο¡ µû¶ó ´Þ¶óÁú ¼ö ÀÖ½À´Ï´Ù). ÇÑ °¡Áö °¡´ÉÇÑ ¿ìȸåÀº âÀ» Àá½Ã AlwaysOnTopÀ¸·Î ¸¸µç ´ÙÀ½, AlwaysOnTopÀ» ²ô´Â °ÍÀÔ´Ï´Ù.

+

+Disable ¶Ç´Â Enable: âÀ» ÄѰųª ²ü´Ï´Ù. âÀÌ ²¨Áö¸é »ç¿ëÀÚ´Â ±×ÀÇ ÄÜÆ®·Ñ°ú »óÈ£ÀÛ¿ëÀ» ÇÒ ¼ö ¾ø°í âµµ À̵¿ÇÒ ¼ö ¾ø½À´Ï´Ù. °Ô´Ù°¡, ²¨Áø âÀº ¾ËÆ®-ÅÇ ¸®½ºÆ®¿¡¼­µµ ºüÁý´Ï´Ù.

+

Redraw: âÀÇ °Ñ¸ð½À/³»¿ëÀ» °»½ÅÇÏ·Á°í ½ÃµµÇÕ´Ï´Ù. OS¿¡°Ô âÀÌ »ç°¢ ±¸¿ªÀ» ´Ù½Ã ±×¸± ÇÊ¿ä°¡ ÀÖ´Ù°í ¾Ë·ÁÁÝ´Ï´Ù. ÀÌ ¹æ¹ýÀÌ Æ¯Á¤ÇÑ Ã¢¿¡ ÀÛµ¿ÇÏÁö ¾ÊÀ¸¸é, WinMove¸¦ ½ÃµµÇØ º¸½Ê½Ã¿À. ±× ¸¶Àúµµ ÀÛµ¿ÇÏÁö ¾ÊÀ¸¸é, ´ÙÀ½À» ½ÃµµÇØ º¸½Ê½Ã¿À:

+
WinHide, WinTitle
+WinShow, WinTitle
+

+Style, N ¶Ç´Â ExStyle, N: âÀÇ ½ºÅ¸ÀÏ ¶Ç´Â È®Àå ½ºÅ¸ÀÏÀ» º¯°æÇÕ´Ï´Ù. NÀÇ Ã¹ ¹®ÀÚ°¡ Ç÷¯½º ¶Ç´Â ¸¶À̳ʽº »çÀÎÀ̸é, N¿¡¼­ ½ºÅ¸ÀÏÀÌ Á¦°ÅµÇ°Å³ª Ãß°¡µË´Ï´Ù. ù ¹®ÀÚ°¡ ij·µ (^)À̸é, N¿¡¼­ ½ºÅ¸ÀÏÀº °¢°¢ ¹Ý´ë »óÅ·ΠÅä±ÛµË´Ï´Ù. ù ¹®ÀÚ°¡ ¼ýÀÚÀ̸é, âÀÇ ½ºÅ¸ÀÏÀº ¿ÏÀüÈ÷ µ¤¾î¾º¿©Áý´Ï´Ù; Áï, NÀÌ µË´Ï´Ù.

+

+ErrorLevelÀº ½ÇÆнà 1 ±×¸®°í ¼º°ø½Ã 0ÀÌ ¼³Á¤µË´Ï´Ù. ¸ñÇ¥ âÀÌ ¹ß°ßµÇÁö ¾ÊÀ¸¸é ¶Ç´Â ½ºÅ¸ÀÏ Àû¿ëÀ» Çã¿ëÇÏÁö ¾ÊÀ¸¸é ½ÇÆа¡ ÀϾ´Ï´Ù.

+

+¾î¶² ½ºÅ¸ÀÏÀ» º¸À̴ â¿¡ Àû¿ëÇÏ°í ³ª¸é, ±× âÀ» ´Ù½Ã ±×¸± ÇÊ¿ä°¡ ÀÖ½À´Ï´Ù. WinSet Redraw¸¦ »ç¿ëÇÕ´Ï´Ù (¾Æ·¡ ÂüÁ¶). ¸¶Áö¸·À¸·Î, ½ºÅ¸ÀÏ Å×ÀÌºí¿¡ ÈçÈ÷ »ç¿ëµÇ´Â ½ºÅ¸ÀÏ ¹øÈ£°¡ ³ª¿­µÇ¾î ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î:

+ +
WinSet, Style, -0xC00000, A  ; È°¼º âÀÇ Á¦¸ñ ¹Ù¸¦ Á¦°ÅÇÕ´Ï´Ù (WS_CAPTION).
+WinSet, ExStyle, ^0x80, WinTitle  ; WS_EX_TOOLWINDOW ¼Ó¼ºÀ» Åä±ÛÇÕ´Ï´Ù. ¾ËÆ®-ÅÇ ¸®½ºÆ®·ÎºÎÅÍ Ã¢ÀÌ Á¦°ÅµÇ°Å³ª/Ãß°¡µË´Ï´Ù.
+ +

WinSet, Region [, Options, WinTitle, ...]

+

+âÀÇ ¸ð½ÀÀ» ÁöÁ¤ÇÑ »ç°¢Çü, Ÿ¿ø ¶Ç´Â ´Ù°¢ÇüÀ¸·Î º¯°æÇÕ´Ï´Ù. Options ¸Å°³º¯¼ö°¡ ºñ¾î ÀÖÀ¸¸é, ±× âÀº ¿ø·¡ÀÇ/±âº» µð½ºÇ÷¹ÀÌ ±¸¿ªÀ¸·Î º¹±¸µË´Ï´Ù. ±×·¸Áö ¾ÊÀ¸¸é, ´ÙÀ½ ¿É¼Ç Áß Çϳª ÀÌ»óÀ» Á¶ÇÕÇØ ÁöÁ¤ÇÒ ¼ö ÀÖ½À´Ï´Ù. °¢ ¿É¼ÇÀº ´ÙÀ½ ¿É¼Ç°ú ½ºÆäÀ̽º(µé)·Î ±¸ºÐÇÕ´Ï´Ù:

+

+Wn: »ç°¢ÇüÀ̳ª Ÿ¿øÀÇ ³Êºñ. ¿¹¸¦ µé¾î: w200.
+Hn: »ç°¢ÇüÀ̳ª Ÿ¿øÀÇ ³ôÀÌ. ¿¹¸¦ µé¾î: h300.
+X-Y: °¢°¢ X/Y ÁÂÇ¥½ÖÀÔ´Ï´Ù. ¿¹¸¦ µé¾î, 200-0´Â 200À» X ÁÂÇ¥¿¡ ±×¸®°í 0À» Y ÁÂÇ¥¿¡ »ç¿ëÇÕ´Ï´Ù.
+E: »ç°¢ÇüÀÌ ¾Æ´Ï¶ó Ÿ¿øÀ¸·Î ¸¸µì´Ï´Ù. ÀÌ ¿É¼ÇÀº ¿Í H ¿É¼ÇÀÌ Á¸ÀçÇÒ °æ¿ì¿¡¸¸ À¯È¿ÇÕ´Ï´Ù.
+R[w-h]: µÕ±Ù ¸ð¼­¸®¸¦ °¡Áø »ç°¢ÇüÀ» ¸¸µì´Ï´Ù. ¿¹¸¦ µé¾îR30-30Àº °¢ ¸ð¼­¸®¿¡ 30x30 Ÿ¿øÀ» »ç¿ëÇÕ´Ï´Ù. w-h¸¦ »ý·«Çϸé, 30-30ÀÌ »ç¿ëµË´Ï´Ù. RÀº W¿Í H ¿É¼ÇÀÌ Á¸ÀçÇÒ °æ¿ì¿¡¸¸ À¯È¿ÇÕ´Ï´Ù.

+

+»ç°¢Çü ¶Ç´Â Ÿ¿ø: W¿Í H ¿É¼ÇÀÌ Á¸ÀçÇϸé, »õ·Î¿î µð½ºÇ÷¹ÀÌ ±¸¿ªÀÌ »ç°¢ÇüÀÌ µË´Ï´Ù. ÀÌ »ç°¢ÇüÀÇ Á»ó ¸ð¼­¸®´Â X-Y ÁÂÇ¥ÀÇ (À¯ÀÏÇÑ) ù ¹ø° ½ÖÀ¸·Î °áÁ¤µË´Ï´Ù. ±×·¸Áö¸¸, E ¿É¼Çµµ Á¸ÀçÇϸé, ±× µð½ºÇ÷¹ÀÌ ±¸¿ªÀº »ç°¢ÇüÀÌ ¾Æ´Ï¶ó Ÿ¿øÀÌ µË´Ï´Ù. ¿¹¸¦ µé¾î: WinSet, Region, 50-0 W200 H250 E, WinTitle.

+

+´Ù°¢Çü: W¿Í H ¿É¼ÇÀÌ ¾øÀ¸¸é, »õ µð½ºÇ÷¹ÀÌ ±¸¿ªÀº ´Ù°¢ÇüÀÌ µË´Ï´Ù. ¿©·¯ ½ÖÀÇ X-Y ÁÂÇ¥¿¡ ÀÇÇØ °áÁ¤µË´Ï´Ù (°¢ ÁÂÇ¥ ½ÖÀº â ¾ÈÀÇ Á»ó ¸ð¼­¸®·ÎºÎÅÍ »ó´ëÀûÀÎ Á¡ÀÔ´Ï´Ù.). ¿¹¸¦ µé¾î, ¼¼ ½ÖÀÇ ÁÂÇ¥°¡ ÁöÁ¤µÇ¸é, ±× »õ µð½ºÇ÷¹ÀÌ ±¸¿ªÀº ´ëºÎºÐÀÇ °æ¿ì ¼¼¸ð°¡ µË´Ï´Ù. ÁÂÇ¥ ½ÖÀÇ ¼ø¼­´Â ¼­·Î¿Í °ü·ÃÇÏ¿© Á¾Á¾ Áß¿äÇÑ °æ¿ì°¡ ÀÖ½À´Ï´Ù. °Ô´Ù°¡, ´Ü¾î Wind°¡ Options ¾È¿¡ Á¸ÀçÇÒ ¼ö ÀÖ½À´Ï´Ù. ÀÌ °æ¿ì ´Ù°¢ÇüÀÇ ¹üÀ§¸¦ °áÁ¤Çϱâ À§ÇØ alternating ¹æ¹ý ´ë½Å¿¡ winding ¹æ¹ýÀ» »ç¿ëÇÕ´Ï´Ù.

+

+ErrorLevelÀº ½ÇÆнà 1, ¼º°ø½Ã 0ÀÌ ¼³Á¤µË´Ï´Ù. ½ÇÆа¡ ÀϾ´Â °æ¿ì´Â: +

    +
  1. ¸ñÇ¥ âÀÌ Á¸ÀçÇÏÁö ¾Ê´Â´Ù; +
  2. Çϳª ÀÌ»óÀÇ Options ¿É¼ÇÀÌ ¹«È¿ÇÏ´Ù; +
  3. 2000 ½ÖÀÌ ³Ñ°Ô ÁÂÇ¥¸¦ ÁöÁ¤Çß´Ù; +
  4. ÁöÁ¤µÈ ¹üÀ§°¡ ¹«È¿Çϰųª ¸ñÇ¥ â¿¡ Àû¿ëÇÒ ¼ö ¾ø´Ù. +
+

+

+ÀÌ ÆäÀÌÁöÀÇ ¾Æ·¡¿¡¼­ ÀÌ ¸í·É¾î¸¦ »ç¿ëÇÏ´Â ¹æ¹ý¿¡ °üÇÑ ¿¹Á¦¸¦ ÂüÁ¶ÇϽʽÿÀ.

+ +

WinSet, Transparent, N, WinTitle

+

+âÀ» ¹Ý-Åõ¸íÇÏ°Ô ¸¸µì´Ï´Ù. N¿¡ 0ºÎÅÍ 255 »çÀÌÀÇ ¼ýÀÚ¸¦ ÁöÁ¤Çϸé Åõ¸íµµ¸¦ Á¶ÀýÇÒ ¼ö ÀÖ½À´Ï´Ù: 0À̸é âÀÌ º¸ÀÌÁö ¾Ê°í 255ÀÌ¸é ¿ÏÀü ºÒÅõ¸íÇÏ°Ô µË´Ï´Ù. Åõ¸íµµ´Â ¿ÏÀüÈ÷ ²ø ¼ö ÀÖ½À´Ï´Ù. â¿¡ ´Ü¾î OFF¸¦ ÁöÁ¤ÇÏ¸é µË´Ï´Ù. ÀÌ°ÍÀº 255¸¦ ÁöÁ¤ÇÏ´Â °Í°ú´Â ´Ù¸¨´Ï´Ù. ¿Ö³ÄÇÏ¸é ¼öÇ༺´ÉÀ» Çâ»ó½ÃÅ°°í ½Ã½ºÅÛ ÀÚ¿øÀ» Àý¾àÇϱ⠶§¹®ÀÔ´Ï´Ù.

+

Transparent ±×¸®°í TransColor¿¡ ´ëÇÏ¿© ¾Ë·ÁÁø ÇÑ°è:

+ +

ÆÁ: ŽºÅ© ¹Ù¸¦ Åõ¸íÇÏ°Ô ¸¸µé·Á¸é WinSet, Transparent, 150, ahk_class Shell_TrayWndÀ» »ç¿ëÇϽʽÿÀ. ºñ½ÁÇÏ°Ô, ½ÃÀÛ ¸Þ´º¸¦ Åõ¸íÇÏ°Ô ¸¸µé·Á¸é, ´ÙÀ½ ¿¹Á¦¸¦ µû¸£½Ê½Ã¿À:

+ +
DetectHiddenWindows, on
+WinSet, Transparent, 150, ahk_class BaseBar  ; ½ÃÀÛ ¸Þ´ºÀÇ ºÎ¸Þ´ºµµ Åõ¸íÇÏ°Ô ¸¸µé·Á¸é, ¾Æ·¡ÀÇ ½ºÅ©¸³Æ®µµ Æ÷ÇÔÇϽʽÿÀ.
+

+Àüü ½Ã½ºÅÛ¿¡¼­ ¼±ÅÃµÈ ¸ðµç ¸Þ´º¸¦ Åõ¸íÇÏ°Ô ÇÏ·Á¸é, ´ÙÀ½°ú °°Àº ½ºÅ©¸³Æ®¸¦ Ç×»ó ½ÇÇàµÇµµ·Ï À¯ÁöÇÕ´Ï´Ù. ÀÌ·± ½ºÅ©¸³Æ®´Â ÀÚ½ÅÀÇ ¸Þ´º´Â Åõ¸íÇÏ°Ô ¸¸µéÁö ¸øÇÏÁö¸¸ ´Ù¸¥ ½ºÅ©¸³Æ®ÀÇ ¸Þ´º´Â Åõ¸íÇÏ°Ô ¸¸µé ¼ö ÀÖ½À´Ï´Ù:

+ +
#Persistent
+SetTimer, WatchForMenu, 5
+return  ; ÀÚµ¿ ½ÇÇà ¼½¼ÇÀÇ ³¡ÀÔ´Ï´Ù.
+
+WatchForMenu:
+DetectHiddenWindows, on  ; ¸Þ´ºÀÇ Å½Áö¸¦ °ð Çã¿ëÇÕ´Ï´Ù.
+IfWinExist, ahk_class #32768
+    WinSet, Transparent, 150  ; À­ ÁÙ¿¡¼­ ¹ß°ßµÈ âÀ» »ç¿ëÇÕ´Ï´Ù.
+return
+

WinSet, TransColor, Color [N], WinTitle

+

¼±ÅÃµÈ »ö±òÀÇ ¸ðµç Çȼ¿À» ¸ñÇ¥ â¿¡¼­ º¸ÀÌÁö ¾Ê°Ô ¸¸µì´Ï´Ù. ±×·¯¸é âÀÇ ³»¿ë µÚ¸¦ Åë°úÇØ º¼¼ö ÀÖ½À´Ï´Ù. »ç¿ëÀÚ°¡ º¸ÀÌÁö ¾Ê´Â Çȼ¿À» Ŭ¸¯Çϸé, ±× Ŭ¸¯Àº â µÚ·Î "¶Õ°í Àü´ÞµË´Ï´Ù". Color¿¡´Â Ä÷¯ À̸§ ¶Ç´Â RGB °ªÀ» ÁöÁ¤ÇÕ´Ï´Ù (»ö»ó Â÷Æ®¸¦ Âü°íÇϽðųª ¾Æ´Ï¸é RGB ¸ðµå·Î PixelGetColor¸¦ »ç¿ëÇϽʽÿÀ). â¿¡¼­ º¸ÀÌ´Â ºÎºÐÀ» ºÎºÐÀûÀ¸·Î Åõ¸íÇÏ°Ô ¸¸µé·Á¸é, ½ºÆäÀ̽º (½°Ç¥ ¾ÈµÊ) ´ÙÀ½¿¡ Åõ¸íµµ (0-255)¸¦ ÁöÁ¤ÇÏ¸é µË´Ï´Ù. ¿¹¸¦ µé¾î: WinSet, TransColor, EEAA99 150, WinTitle.

+

+TransColor´Â Á¾Á¾ È­¸é-À§-±×¸² ±×¸®°í ±âŸ ½Ã°¢ È¿°ú¸¦ ¾ò±â À§ÇØ »ç¿ëµË´Ï´Ù. È­¸é-À§-±×¸² ¿¹Á¦´Â Gui ÆäÀÌÁöÀÇ ÇÏ´Ü¿¡ º¸¿©ÁÝ´Ï´Ù.

+

+´Ü¾î OFF¸¦ ÁöÁ¤Çϸé â¿¡ ¿ÏÀüÈ÷ Åõ¸í È¿°ú¸¦ ²ø ¼ö ÀÖ½À´Ï´Ù. ´ÙÀ½ µÎ ÄÚµå´Â ¸ðµÎ ±â´É»ó µ¿µîÇÕ´Ï´Ù:

+ +
WinSet, Transparent, Off, WinTitle
+WinSet, TransColor, Off, WinTitle
+ +

¾Ë·ÁÁø ÇÑ°è: À§ÀÇ ¸®½ºÆ®¸¦ ÂüÁ¶ÇϽʽÿÀ.

+ +

³íÆò

+

ErrorLevelÀº À§¿¡ Á¦½ÃµÈ °æ¿ì¸¦ Á¦¿ÜÇÏ°í ÀÌ ¸í·É¾î·Î ¹Ù²îÁö ¾Ê½À´Ï´Ù.

+

+Åõ¸í È¿°ú´Â Windows 2000/XP ÀÌ»óÀ̸é Áö¿øÇÏÁö¸¸, âÀÇ ÇöÀç Åõ¸íµµ ¼³Á¤À» ¿­¶÷ÇÏ´Â °ÍÀº (WinGetÀ» ÅëÇÏ¿©) Windows XP À̻󿡼­¸¸ °¡´ÉÇÕ´Ï´Ù.

+

+½ºÅ©¸³Æ®ÀÇ SplashText âÀº ´ÙÀ½À» ÅëÇÏ¿© ºñ-AlwaysOnTopÀ¸·Î ¸¸µé ¼ö ÀÖ½À´Ï´Ù:

+ +
WinSet, AlwaysOnTop, Off, My Splash Window Title
+

+â Á¦¸ñ°ú ÅؽºÆ®´Â ´ë¼Ò¹®ÀÚ¸¦ ±¸ºÐÇÕ´Ï´Ù. ¼ûÀº âÀº DetectHiddenWindowsÀÌ ÄÑÁ® ÀÖÀ¸¸é ŽÁöµË´Ï´Ù.

+ +

°ü·Ã Ç׸ñ

+

WinGet, WinHide, WinSetTitle, WinMove, WinActivate, Control

+ +

¿¹Á¦

+
WinSet, Transparent, 200, Untitled - Notepad ; âÀ» ¾à°£ Åõ¸íÇÏ°Ô ¸¸µì´Ï´Ù.
+WinSet, TransColor, White, Untitled - Notepad ; ¸ðµç ÇϾá Çȼ¿À» º¸ÁöÀÌ ¾Ê°Ô ¸¸µì´Ï´Ù.
+WinSet, AlwaysOnTop, toggle, Calculator ; °è»ê±âÀÇ always-on-top »óŸ¦ Åä±ÛÇÕ´Ï´Ù.
+
+; ´õ ±ä ¿¹Á¦:
+; ´ÙÀ½Àº "Transparent"¿Í "TransColor"ÀÇ È¿°ú¸¦ º¸¿©ÁÖ´Â ÇÖÅ°µéÀÔ´Ï´Ù. 
+;  ÁÖÀÇ: ÇÖ Å°Áß Çϳª¸¦ ´­·¶´Âµ¥ ¸¶¿ì½º Ä¿¼­°¡ 
+; TransColorÀÇ °á°ú·Î º¸ÀÌÁö ¾Ê´Â Çȼ¿ À§¸¦ ¼±È¸ÇÏ°í ÀÖ´Ù¸é
+; ±× Çȼ¿ ¾Æ·¡¿¡ º¸À̴ âÀÌ ´ë½Å ÀÛµ¿ÇÒ °ÍÀÔ´Ï´Ù!  ¶ÇÇÑ, 
+; Win+G´Â Windows XP¿¡¸¸ È¿°ú°¡ ÀÖ½À´Ï´Ù.
+; ¿Ö³ÄÇϸé Åõ¸íµµ ¼³Á¤ÀÇ ¿­¶÷Àº Windows 2000¿¡¼­ Áö¿øµÇÁö ¾Ê±â ¶§¹®ÀÔ´Ï´Ù:
+
+#t::  ; Win+T¸¦ ´­·¯ ¸¶¿ì½º Ä¿¼­ ¾Æ·¡ÀÇ Ä÷¯¸¦ º¸ÀÌÁö ¾Ê°Ô ¸¸µì´Ï´Ù.
+MouseGetPos, MouseX, MouseY, MouseWin
+PixelGetColor, MouseRGB, %MouseX%, %MouseY%, RGB
+; ±âÁ¸ÀÇ Åõ¸í È¿°ú¸¦ ¸ÕÀú ²¨¾ßÇÒ ÇÊ¿ä°¡ ÀÖ¾î º¸ÀÔ´Ï´Ù:
+WinSet, TransColor, Off, ahk_id %MouseWin%
+WinSet, TransColor, %MouseRGB% 220, ahk_id %MouseWin%
+return
+
+#o::  ; Win+O¸¦ ´­·¯ ¸¶¿ì½º ¾Æ·¡ÀÇ Ã¢¿¡ Åõ¸í È¿°ú¸¦ ²ü´Ï´Ù.
+MouseGetPos,,, MouseWin
+WinSet, TransColor, Off, ahk_id %MouseWin%
+return
+
+#g::  ; Win+G¸¦ ´­·¯ ¸¶¿ì½º ¾Æ·¡¿¡ Àִ âÀÇ ÇöÀç ¼³Á¤À» º¸¿©ÁÝ´Ï´Ù.
+MouseGetPos,,, MouseWin
+WinGet, Transparent, Transparent, ahk_id %MouseWin%
+WinGet, TransColor, TransColor, ahk_id %MouseWin%
+ToolTip Translucency:`t%Transparent%`nTransColor:`t%TransColor%
+return
+
+; "WinSet Region" ¿¹Á¦:
+WinSet, Region, 50-0 W200 H250, WinTitle  ; â¿¡¼­ ÀÌ »ç°¢Çü ¹Û¿¡ ÀÖ´Â ¸ðµç ºÎºÐÀ» º¸ÀÌÁö ¾Ê°Ô ¸¸µì´Ï´Ù.
+WinSet, Region, 50-0 W200 H250 R40-40, WinTitle  ; À§¿Í °°Áö¸¸ ¸ð¼­¸®¸¦ 40x40À¸·Î µÕ±Û°Ô ¸¸µì´Ï´Ù.
+WinSet, Region, 50-0 W200 H250 E, WinTitle  ; »ç°¢Çü ´ë½Å Ÿ¿øÇü.
+WinSet, Region, 50-0 250-0 150-250, WinTitle  ; Á¤Á¡ÀÌ ¾Æ·¡¸¦ °¡¸®Å°´Â »ï°¢Çü.
+WinSet, Region,, WinTitle ; âÀ» ¿ø·¡/±âº» µð½ºÇ÷¹ÀÌ ±¸¿ªÀ¸·Î º¹±¸ÇÕ´Ï´Ù.
+
+; ´ÙÀ½Àº Á» º¹ÀâÇÑ ±¸¿ªÀÔ´Ï´Ù. ⠾ȿ¡ ¶Õ·Á º¸ÀÌ´Â »ç°¢ÇüÀ» ¸¸µì´Ï´Ù.
+; ¾Æ·¡¿¡ µÎ °³ÀÇ »ç°¢ÇüÀ» ÁöÁ¤ÇÕ´Ï´Ù: ¹Ù±ù°ú ¾ÈÂÊ.  °¢ »ç°¢ÇüÀº 5°³ÀÇ X/Y ÁÂÇ¥ ½ÖÀ¸·Î ±¸¼ºµË´Ï´Ù.
+; ¿Ö³ÄÇϸé ù ½ÖÀº ³¡¿¡ ¹Ýº¹µÇ¾î °¢ »ç°¢ÇüÀ» "´Ý±â" ¶§¹®ÀÔ´Ï´Ù.
+WinSet, Region, 0-0 300-0 300-300 0-300 0-0   100-100 200-100 200-200 100-200 100-100, WinTitle
+ + + diff --git a/src/docs/commands/WinSetTitle.htm b/src/docs/commands/WinSetTitle.htm new file mode 100644 index 0000000..93e8a37 --- /dev/null +++ b/src/docs/commands/WinSetTitle.htm @@ -0,0 +1,59 @@ + + + + +WinSetTitle + + + + + + + +

WinSetTitle

+ +

ÁöÁ¤µÈ âÀÇ Á¦¸ñÀ» º¯°æÇÕ´Ï´Ù.

+ +
WinSetTitle, NewTitle
+WinSetTitle, WinTitle, WinText, NewTitle [, ExcludeTitle, ExcludeText]
+

¸Å°³º¯¼ö

+
+ +
NewTitle
+

â¿¡ ´ëÇÑ »õ Á¦¸ñ. ÀÌ ¸Å°³º¯¼ö¸¸ ÁÖ¾îÁö¸é, ¸¶Áö¸· ¹ß°ß âÀÌ »ç¿ëµË´Ï´Ù.

+ +
WinTitle
+

¸ñÇ¥ âÀ» ½Äº°Çϴ â Á¦¸ñ ¶Ç´Â ±âŸ ±âÁØ. WinTitle ÂüÁ¶.

+ +
WinText
+

+ Á¸ÀçÇϸé, ÀÌ ¸Å°³º¯¼ö´Â ¸ñÇ¥ â ÅؽºÆ®ÀÇ ºÎ¹®ÀÚ¿­ÀÔ´Ï´Ù (µ¿ºÀµÈ Window Spy À¯Æ¿¸®Æ¼¿¡ ³ëÃâµÊ). ¼ûÀº ÅؽºÆ®´Â DetectHiddenText°¡ ÄÑÁ® ÀÖÀ¸¸é(ON) ŽÁöµË´Ï´Ù.

+ +
ExcludeTitle
+

Á¦¸ñ¿¡ ÀÌ °ªÀÌ Æ÷ÇԵǾî Àִ âÀº Á¦¿ÜÇÕ´Ï´Ù.

+ +
ExcludeText
+

ÅؽºÆ®¿¡ ÀÌ °ªÀÌ Æ÷ÇԵǾî Àִ âÀº Á¦¿ÜÇÕ´Ï´Ù.

+ +
+ +

³íÆò

+

+â Á¦¸ñÀ» º¯°æÇÏ´õ¶óµµ Àá½ÃÀÏ »ÓÀÔ´Ï´Ù. âÀ» ¼ÒÀ¯ÇÑ ¾îÇø®ÄÉÀ̼ÇÀÌ ÀÚÁÖ Ã¢ Á¦¸ñÀ» ¹Ù²Ü ¼ö ÀÖ½À´Ï´Ù.

+

+â Á¦¸ñ°ú ÅؽºÆ®´Â ´ë¼Ò¹®ÀÚ¸¦ ±¸º°ÇÕ´Ï´Ù. ¼ûÀº âÀº DetectHiddenWindows¸¦ ÄѸé ŽÁöÇÒ ¼ö ÀÖ½À´Ï´Ù.

+ +

°ü·Ã Ç׸ñ

+

WinMove, WinGetActiveStats, WinGetActiveTitle, WinGetText, ControlGetText, WinGetPos, WinSet

+ +

¿¹Á¦

+ +
WinSetTitle, Untitled - Notepad, , »õ Á¦¸ñÀÔ´Ï´Ù
+
+; ´ë¾È:
+Run, notepad.exe
+WinWaitActive, Untitled - Notepad
+WinSetTitle, This is a new title  ; À§¿¡¼­ WinWaitActive°¡ ¹ß°ßÇÑ Ã¢À» »ç¿ëÇÕ´Ï´Ù.
+ + + diff --git a/src/docs/commands/WinShow.htm b/src/docs/commands/WinShow.htm new file mode 100644 index 0000000..7a977fe --- /dev/null +++ b/src/docs/commands/WinShow.htm @@ -0,0 +1,51 @@ + + + + +WinShow + + + + + + + +

WinShow

+ +

ÁöÁ¤µÈ âÀ» ´Ù½Ã º¸¿©ÁÝ´Ï´Ù.

+ +
WinShow [, WinTitle, WinText, ExcludeTitle, ExcludeText]
+

¸Å°³º¯¼ö

+
+ +
WinTitle
+

¸ñÇ¥ âÀ» ½Äº°Çϴ â Á¦¸ñ ¶Ç´Â ´Ù¸¥ ±âÁØ. WinTitle ÂüÁ¶.

+ +
WinText
+

+ Á¸ÀçÇϸé, ÀÌ ¸Å°³º¯¼ö´Â ¸ñÇ¥ â ÅؽºÆ®ÀÇ ºÎ¹®ÀÚ¿­ÀÔ´Ï´Ù (µ¿ºÀµÈ Window Spy À¯Æ¿¸®Æ¼¿¡ ³ëÃâµÊ). ¼ûÀº ÅؽºÆ®´Â DetectHiddenText°¡ È°¼ºÈ­(ON)µÇ¾î ÀÖÀ¸¸é ŽÁöµË´Ï´Ù.

+ +
ExcludeTitle
+

Á¦¸ñ¿¡ ÀÌ °ªÀÌ µé¾î Àִ âÀº Á¦¿ÜÇÕ´Ï´Ù.

+ +
ExcludeText
+

ÅؽºÆ®¿¡ ÀÌ °ªÀÌ µé¾î Àִ âÀº Á¦¿ÜÇÕ´Ï´Ù.

+ +
+ +

³íÆò

+

±âº»ÀûÀ¸·Î, WinShow´Â ¾ðÁ¦³ª ¼ûÀº âÀ» ŽÁöÇÒ ¼ö ÀÖ´Â À¯ÀÏÇÑ ¸í·É¾îÀÔ´Ï´Ù. ´Ù¸¥ ¸í·É¾îµéÀº DetectHiddenWindows°¡ ÄÑÁ® ÀÖÀ» °æ¿ì¿¡¸¸ ¼ûÀº âÀ» ŽÁöÇÒ ¼ö ÀÖ½À´Ï´Ù.

+

+ÀÌ ¸í·É¾î´Â ÃÖ»óÀ§ âÀÌ ºÎÇÕÇÏ´Â °æ¿ì¿¡¸¸ ÀÛµ¿ÇÕ´Ï´Ù. ´Ü, WinTitleÀÌ ahk_group GroupNameÀÏ °æ¿ì´Â Á¦¿ÜÇÕ´Ï´Ù. ÀÌ °æ¿ì ±×·ì ¾ÈÀÇ ¸ðµç âÀÌ ¿µÇâÀ» ¹Þ½À´Ï´Ù.

+

°ü·Ã Ç׸ñ

+

WinHide, SetTitleMatchMode, DetectHiddenWindows, ¸¶Áö¸· ¹ß°ß â

+

¿¹Á¦

+
Run, notepad.exe
+WinWait, Untitled - Notepad
+Sleep, 500
+WinHide  ; ¸Å°³º¯¼ö°¡ »ý·«µÇ¾ú±â ¶§¹®¿¡, À§¿¡¼­ ¹ß°ßÇÑ Ã¢À» »ç¿ëÇÕ´Ï´Ù.
+Sleep, 1000
+WinShow
+ + + diff --git a/src/docs/commands/WinWait.htm b/src/docs/commands/WinWait.htm new file mode 100644 index 0000000..212202c --- /dev/null +++ b/src/docs/commands/WinWait.htm @@ -0,0 +1,68 @@ + + + + +WinWait + + + + + + + +

WinWait

+ +

ÁöÁ¤µÈ âÀÌ Á¸ÀçÇÒ ¶§±îÁö ±â´Ù¸³´Ï´Ù.

+ +
WinWait [, WinTitle, WinText, Seconds, ExcludeTitle, ExcludeText]
+

¸Å°³º¯¼ö

+
+ +
WinTitle
+

¸ñÇ¥ âÀ» ½Äº°Çϴ â Á¦¸ñ ¶Ç´Â ±âŸ ±âÁØ. WinTitle ÂüÁ¶.

+

WinTitle´Â WinText, ExcludeTitle, ¶Ç´Â ExcludeTextÀÌ Á¸ÇØÇÒ ¶§¸¸ ºñ¾î ÀÖÀ» ¼ö ÀÖ½À´Ï´Ù.

+ +
WinText
+

+ Á¸ÀçÇϸé, ÀÌ ¸Å°³º¯¼ö´Â ¸ñÇ¥ â ÅؽºÆ®ÀÇ ºÎ¹®ÀÚ¿­ÀÔ´Ï´Ù (µ¿ºÀµ· Window Spy À¯Æ¿¸®Æ¼¿¡ ³ëÃâµÊ). ¼ûÀº ÅؽºÆ®´Â DetectHiddenTextÀÌ ÄÑÁ®(ON) ÀÖÀ¸¸é ŽÁöµË´Ï´Ù.

+ +
Seconds
+

½Ã°£ Á¦ÇѱîÁö ±â´Ù¸± ÃÊÀÇ °³¼ö ±×¸®°í ErrorLevelÀ» 1·Î ¼³Á¤. ºó ä·Î µÎ¸é ¹«ÇÑÁ¤ ±â´Ù¸³´Ï´Ù. 0À» ¼³Á¤Çϸé 0.5¸¦ ¼³Á¤ÇÑ °Í°ú °°½À´Ï´Ù. ÀÌ ¸Å°³º¯¼ö´Â Ç¥Çö½ÄÀÏ ¼ö ÀÖ½À´Ï´Ù.

+ +
ExcludeTitle
+

Á¦¸ñ¿¡ ÀÌ °ªÀÌ µé¾î Àִ âÀº Á¦¿ÜÇÕ´Ï´Ù.

+ +
ExcludeText
+

ÅؽºÆ®¿¡ ÀÌ °ªÀÌ µé¾î Àִ âÀº Á¦¿ÜÇÕ´Ï´Ù.

+ +
+ +

ErrorLevel

+

ErrorLevelÀº ÀÌ ¸í·É¾î°¡ ½Ã°£ Á¦ÇÑ¿¡ °É¸®¸é 1, ±×·¸Áö ¾ÊÀ¸¸é 0ÀÌ ¼³Á¤µË´Ï´Ù.

+ +

³íÆò

+

+ºÎÇÕÇÑ Ã¢ÀÌ Á¸ÀçÇϸé, ¸í·É¾î´Â Ã˹ßÀ» À§ÇØ Seconds Ãʸ¦ ±â´Ù¸®Áö ¾Ê½À´Ï´Ù. ´ë½Å¿¡, Áï½Ã ErrorLevel¿¡ 0À» ¼³Á¤ÇÏ°í, ¸¶Áö¸· ¹ß°ß âÀ» °»½ÅÇϸç, ±×¸®°í ½ºÅ©¸³Æ®´Â ½ÇÇàÀ» °è¼ÓÇÕ´Ï´Ù.

+

+¸í·É¾î°¡ ´ë±â »óÅ¿¡ ÀÖ´Â µ¿¾È, ÇÖÅ°, ¸ÂÃã ¸Þ´º Ç׸ñ, ¶Ç´Â ŸÀ̸Ӹ¦ ÅëÇÏ¿© »õ ¾²·¹µå¸¦ ±âµ¿ÇÒ ¼ö ÀÖ½À´Ï´Ù.

+

+ÀÌ ¸í·É¾îÀÇ ¸Å°³º¯¼ö¿¡ »ç¿ëµÈ º¯¼öÀÇ ³»¿ëÀ» ¶Ç´Ù¸¥ ¾²·¹µå°¡ º¯°æÇÏ´õ¶óµµ, ÀÌ ¸í·É¾î´Â ±× º¯°æÀ» º¸Áö ¸øÇÕ´Ï´Ù -- °è¼ÓÇؼ­ óÀ½ ´ë±â¸¦ ½ÃÀÛÇÒ ¶§ º¯¼ö¿¡ Á¸ÀçÇÏ´ø ¿ø·¡ Á¦¸ñ°ú ÅؽºÆ®¸¦ »ç¿ëÇÒ °ÍÀÔ´Ï´Ù.

+

+â Á¦¸ñ°ú ÅؽºÆ®´Â ´ë¼Ò¹®ÀÚ¸¦ ±¸ºÐÇÕ´Ï´Ù. ¼ûÀº ÅؽºÆ®´Â DetectHiddenWindows¸¦ ÄѸé ŽÁöµË´Ï´Ù.

+ +

°ü·Ã Ç׸ñ

+

WinWaitActive, WinWaitClose, IfWinExist, IfWinActive, Process, SetTitleMatchMode, DetectHiddenWindows

+ +

¿¹Á¦

+
Run, notepad.exe
+WinWait, Untitled - Notepad, , 3
+if ErrorLevel
+{
+    MsgBox, WinWait timed out.
+    return
+}
+else
+    WinMinimize  ; WinWait°¡ ¹ß°ßÇÑ Ã¢À» ÃÖ¼ÒÈ­ÇÕ´Ï´Ù.
+ + + diff --git a/src/docs/commands/WinWaitActive.htm b/src/docs/commands/WinWaitActive.htm new file mode 100644 index 0000000..e9871a3 --- /dev/null +++ b/src/docs/commands/WinWaitActive.htm @@ -0,0 +1,70 @@ + + + + +WinWaitActive / WinWaitNotActive + + + + + + + +

WinWaitActive / WinWaitNotActive

+ +

ÁöÁ¤µÈ âÀÌ È°¼ºÈ­µÇ°Å³ª ºñÈ°¼ºÈ­µÉ ¶§±îÁö ±â´Ù¸³´Ï´Ù.

+ +
WinWaitActive [, WinTitle, WinText, Seconds, ExcludeTitle, ExcludeText]
+WinWaitNotActive [, WinTitle, WinText, Seconds, ExcludeTitle, ExcludeText]
+

¸Å°³º¯¼ö

+
+ +
WinTitle
+

¸ñÇ¥ âÀ» ½Äº°Çϴ â Á¦¸ñÀ̳ª ±âŸ ±âÁØ. WinTitle ÂüÁ¶.

+ +
WinText
+

Á¸ÀçÇϸé, ÀÌ ¸Å°³º¯¼ö´Â ¸ñÇ¥ â ÅؽºÆ®ÀÇ ºÎ¹®ÀÚ¿­ÀÔ´Ï´Ù (µ¿ºÀµÈ Window Spy À¯Æ¿¸®Æ¼¿¡ ³ëÃâµÊ). ¼ûÀº ÅؽºÆ®´Â DetectHiddenTextÀÌ ÄÑÁ®(ON) ÀÖÀ¸¸é ŽÁöµË´Ï´Ù.

+ +
Seconds
+

½Ã°£Á¦ÇÑ ±îÁö ±â´Ù¸± ÃÊÀÇ °³¼ö ±×¸®°í ErrorLevelÀ» 1·Î ¼³Á¤. ºó ä·Î µÎ¸é ¹«ÇÑÁ¤ ´ë±âÇÕ´Ï´Ù. 0À» ÁöÁ¤Çϸé 0.5¸¦ ÁöÁ¤ÇÑ °Í°ú µ¿ÀÏÇÕ´Ï´Ù. ÀÌ ¸Å°³º¯¼ö´Â Ç¥Çö½ÄÀÌ °¡´ÉÇÕ´Ï´Ù.

+ +
ExcludeTitle
+

Á¦¸ñ¿¡ ÀÌ °ªÀÌ µé¾î Àִ âÀº Á¦¿ÜÇÕ´Ï´Ù.

+ +
ExcludeText
+

ÅؽºÆ®¿¡ ÀÌ °ªÀÌ µé¾î Àִ âÀº Á¦¿ÜÇÕ´Ï´Ù.

+ +
+ +

ErrorLevel

+

ErrorLevelÀº ¸í·É¾î°¡ ½Ã°£Á¦ÇÑ¿¡ °É¸®¸é 1·Î ¼³Á¤µÇ°í ±×·¸Áö ¾ÊÀ¸¸é 0À¸·Î ¼³Á¤µË´Ï´Ù.

+ +

³íÆò

+

+ºÎÇÕÇϴ âÀÌ ¸í·É¾îÀÇ ±â´ë¸¦ ¸¸Á·Çϸé, ±× ¸í·É¾î´Â ÀÌÁ¦ Ã˹ßÀ» À§ÇØ Seconds Ãʸ¦ ±â´Ù¸®Áö ¾Ê½À´Ï´Ù. ´ë½Å¿¡, Áï½Ã ErrorLevel¿¡ 0À» ¼³Á¤ÇÏ°í ½ºÅ©¸³Æ®´Â ½ÇÇàÀ» °è¼ÓÇÕ´Ï´Ù.

+

+¸í·É¾î°¡ ½ÃÀÛÇÒ ¶§ ±â´ë¸¦ ¸¸Á·Çϴ âÀÌ È°¼ºÈ­µÇ¸é WinWaitActive¿Í WinWaitNotActive ¸ðµÎ ¸¶Áö¸·À¸·Î ¹ß°ßµÈ âÀ» °»½ÅÇÕ´Ï´Ù.

+

+¸í·É¾î°¡ ´ë±â »óÅ¿¡ ÀÖ´Â µ¿¾È, ÇÖÅ°, ¸ÂÃã ¸Þ´º Ç׸ñ, ¶Ç´Â ŸÀ̸Ӹ¦ ÅëÇÏ¿© »õ ¾²·¹µå¸¦ ±âµ¿ÇÒ ¼ö ÀÖ½À´Ï´Ù.

+

+ÀÌ ¸í·É¾îÀÇ ¸Å°³º¯¼ö·Î »ç¿ëµÈ º¯¼öÀÇ ³»¿ëÀ» ¶Ç´Ù¸¥ ¾²·¹µå°¡ º¯°æÇÏ´õ¶óµµ, ÀÌ ¸í·É¾î´Â ±× º¯°æÀ» º¸Áö ¸øÇÕ´Ï´Ù -- ¸í·É¾î°¡ óÀ½ ´ë±â¸¦ ½ÃÀÛÇÒ ¶§ÀÇ º¯¼ö¿¡ Á¸ÀçÇÏ´Â ¿ø·¡ ÅؽºÆ®¿Í Á¦¸ñÀ» °è¼Ó »ç¿ëÇÕ´Ï´Ù.

+

+â Á¦¸ñ°ú ÅؽºÆ®´Â ´ë¼Ò¹®ÀÚ¸¦ ±¸º°ÇÕ´Ï´Ù. ¼ûÀº âÀº DetectHiddenWindows¸¦ ÄѸé ŽÁöµË´Ï´Ù.

+ +

°ü·Ã Ç׸ñ

+

+WinWait, WinWaitClose, IfWinExist, IfWinActive, SetTitleMatchMode, DetectHiddenWindows

+ +

¿¹Á¦

+
Run, notepad.exe
+WinWaitActive, Untitled - Notepad, , 2
+if ErrorLevel
+{
+    MsgBox, WinWait timed out.
+    return
+}
+else
+    WinMinimize  ; WinWaitActive°¡ ¹ß°ßÇÑ Ã¢À» ÃÖ¼ÒÈ­ÇÕ´Ï´Ù.
+ + + diff --git a/src/docs/commands/WinWaitClose.htm b/src/docs/commands/WinWaitClose.htm new file mode 100644 index 0000000..2b98e5d --- /dev/null +++ b/src/docs/commands/WinWaitClose.htm @@ -0,0 +1,61 @@ + + + + +WinWaitClose + + + + + + + +

WinWaitClose

+ +

ÁöÁ¤µÈ âÀÌ Á¸ÀçÇÏÁö ¾ÊÀ» ¶§±îÁö ±â´Ù¸³´Ï´Ù.

+ +
WinWaitClose [, WinTitle, WinText, Seconds, ExcludeTitle, ExcludeText]
+

¸Å°³º¯¼ö

+
+ +
WinTitle
+

¸ñÇ¥ âÀ» ½Äº°ÇÒ ¼ö Àִ â Á¦¸ñ ¶Ç´Â ±âŸ ±âÁØ. WinTitle ÂüÁ¶.

+ +
WinText
+

Á¸ÀçÇϸé, ÀÌ ¸Å°³º¯¼ö´Â ¸ñÇ¥ âÀÇ ÅؽºÆ®ÀÇ ºÎ¹®ÀÚ¿­ÀÔ´Ï´Ù (µ¿ºÀµÈ Window Spy À¯Æ¿¸®Æ¼¿¡ ³ëÃâµÊ). ¼ûÀº ÅؽºÆ®´Â DetectHiddenText°¡ ÄÑÁ® ÀÖÀ¸¸é(ON) ŽÁöµË´Ï´Ù.

+ +
Seconds
+

½Ã°£ Á¦ÇѱîÁö ±â´Ù¸± ÃÊÀÇ °³¼ö ±×¸®°í ErrorLevelÀ» 1·Î ¼³Á¤ÇÕ´Ï´Ù. ºó ä·Î µÎ¸é ¹«ÇÑÁ¤ ±â´Ù¸³´Ï´Ù. 0À¸·Î ¼³Á¤Çϸé 0.5¸¦ ÁöÁ¤ÇÑ °Í°ú °°½À´Ï´Ù. ÀÌ ¸Å°³º¯¼ö´Â Ç¥Çö½ÄÀÌ °¡´ÉÇÕ´Ï´Ù.

+ +
ExcludeTitle
+

Á¦¸ñ¿¡ ÀÌ °ªÀ» °¡Áø âÀº Á¦¿ÜµË´Ï´Ù.

+ +
ExcludeText
+

ÅؽºÆ®¿¡ ÀÌ °ªÀ» °¡Áø âÀº Á¦¿ÜµË´Ï´Ù.

+ +
+ +

ErrorLevel

+

+¸í·É¾î°¡ ½Ã°£ Á¦ÇÑ¿¡ °É¸®¸é ErrorLevelÀº 1¿¡ ¼³Á¤µË´Ï´Ù. ±×·¸Áö ¾ÊÀ¸¸é 0ÀÌ ¼³Á¤µË´Ï´Ù.

+ +

³íÆò

+

+ÁöÁ¤µÈ âÀÇ ½Çü°¡ Á¸ÀçÇÏÁö ¾ÊÀ» ¶§¸¶´Ù, ÀÌ ¸í·É¾î´Â Seconds µ¿¾È ½Ã°£ Á¦ÇÑÀ» ±â´Ù¸®Áö ¾Ê½À´Ï´Ù. ´ë½Å¿¡, Áï½Ã ErrorLevel¿¡ 0À» ¼³Á¤ÇÏ°í ½ºÅ©¸³Æ®´Â ½ÇÇàÀ» °è¼ÓÇÕ´Ï´Ù.

+

+ÀÌ ¸í·É¾î°¡ ´ë±â »óÅ¿¡ ÀÖ´Ù¸é, hotkey, custom menu item, ¶Ç´Â timer¸¦ ÅëÇÏ¿© »õ ¾²·¹µå¸¦ ±âµ¿ÇÒ ¼ö ÀÖ½À´Ï´Ù.

+

+¶Ç´Ù¸¥ ¾²·¹µå°¡ ÀÌ ¸í·É¾îÀÇ ¸Å°³º¯¼ö¿¡ »ç¿ëµÈ º¯¼öÀÇ ³»¿ëÀ» º¯°æÇÏ´õ¶óµµ, ÀÌ ¸í·É¾î´Â º¯°æµÈ °ÍÀ» ¾ËÁö ¸øÇÕ´Ï´Ù -- °è¼ÓÇؼ­ ¿ø·¡ ÀÌ ¸í·É¾î°¡ óÀ½ ±â´Ù¸®±â ½ÃÀÛÇÒ ¶§ÀÇ º¯¼ö¿¡ Á¸ÀçÇÏ´Â Á¦¸ñ°ú ÅؽºÆ®¸¦ »ç¿ëÇÒ °ÍÀÔ´Ï´Ù.

+

+â Á¦¸ñ°ú ÅؽºÆ®´Â ´ë¼Ò¹®ÀÚ¸¦ ±¸ºÐÇÕ´Ï´Ù. ¼ûÀº ÅؽºÆ®´Â DetectHiddenWindows°¡ ÄÑÁ® ÀÖÀ¸¸é ŽÁöµË´Ï´Ù.

+ +

°ü·Ã Ç׸ñ

+

WinClose, WinWait, WinWaitActive, IfWinExist, IfWinActive, Process, SetTitleMatchMode, DetectHiddenWindows

+

¿¹Á¦

+
Run, notepad.exe
+WinWait, Untitled - Notepad
+WinWaitClose  ; WinWait°¡ ¹ß°ßÇÑ Ã¢ÀÌ ´ÝÈ÷±â¸¦ ±â´Ù¸³´Ï´Ù.
+MsgBox, ³ëÆ®Æе尡 ÀÌÁ¦ ´ÝÇû½À´Ï´Ù.
+ + + diff --git a/src/docs/commands/_AllowSameLineComments.htm b/src/docs/commands/_AllowSameLineComments.htm new file mode 100644 index 0000000..2cc4259 --- /dev/null +++ b/src/docs/commands/_AllowSameLineComments.htm @@ -0,0 +1,26 @@ + + + + +#AllowSameLineComments + + + + + + + +

#AllowSameLineComments

+ +

v1.1.09¿¡¼­ Á¦°ÅµÊ: ´õ ÀÌ»ó Áö¿øÇÏÁö ¾ÊÀ½.

+ +

AutoIt v2 (.aut) Àü¿ë: ÁÖ¼®ÀÌ ¸í·É¾î¿Í °°Àº ÁÙ¿¡ ³ªÅ¸³¯µµ·Ï Çã¿ëÇÕ´Ï´Ù.

+ +
#AllowSameLineComments
+

ÀÌ Áö½Ã¾î¸¦ AutoIt v2 (.aut) ½ºÅ©¸³Æ®ÀÇ »ó´Ü¿¡ ÁöÁ¤ÇÏ¸é °°Àº-ÁÙ ÁÖ¼®À» »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. º¸Åë ȣȯ¼ºÀÇ ÀÌÀ¯·Î ²¨Á® ÀÖ½À´Ï´Ù. ½ºÆ®¸³Æ® »ó´Ü¿¡ »ç¿ëÇÏÁö ¾ÊÀ¸¸é, °°Àº-ÁÙ ÁÖ¼®ÀÌ Áö¿øµÇÁö ¾Ê½À´Ï´Ù. ÀÌ Áö½Ã¾î°¡ ³ªÅ¸³ª´Â ½ÃÁ¡ºÎÅ͸¸ È¿°ú°¡ ÀÖ½À´Ï´Ù.

+

¿¹Á¦

+
#AllowSameLineComments
+Sleep, 1  ; ÀÌ ÁÖ¼®Àº °°Àº-ÁÙ ÁÖ¼®ÀÔ´Ï´Ù.
+ + + diff --git a/src/docs/commands/_ClipboardTimeout.htm b/src/docs/commands/_ClipboardTimeout.htm new file mode 100644 index 0000000..ae264b1 --- /dev/null +++ b/src/docs/commands/_ClipboardTimeout.htm @@ -0,0 +1,41 @@ + + + + +#ClipboardTimeout + + + + + + + +

#ClipboardTimeout

+ +

ù ½Ãµµ°¡ ½ÇÆÐÇÏ¸é ½ºÅ©¸³Æ®°¡ Ŭ¸³º¸µå¿¡ ¾ó¸¶³ª ¿À·§µ¿¾È Á¢±ÙÀ» ½ÃµµÇØ¾ß ÇÏ´ÂÁö º¯°æÇÕ´Ï´Ù.

+ +
#ClipboardTimeout Milliseconds
+

¸Å°³º¯¼ö

+
+ +
Milliseconds
+

¹Ð¸®ÃÊ ´ÜÀ§ °£°Ý. -1À» ÁöÁ¤ÇÏ¸é ¹«Á¦ÇÑ ½ÃµµÇÕ´Ï´Ù. 0À» ÁöÁ¤Çϸé ÇÑ ¹ø¸¸ ½ÃµµÇÕ´Ï´Ù. ÀÌ Áö½Ã¾î°¡ ¾ø´Â ½ºÅ©¸³Æ®´Â 1000 ms ½Ã°£Á¦ÇÑÀ» »ç¿ëÇÕ´Ï´Ù.

+ +
+

³íÆò

+

+¾î¶² ¾îÇø®ÄÉÀ̼ÇÀº Ŭ¸³º¸µå¸¦ ¿À·£ ½Ã°£ µ¿¾È ¿­¾î µÓ´Ï´Ù. ¾Æ¸¶µµ »ó´çÈ÷ ¸¹Àº ¾çÀÇ µ¥ÀÌÅ͸¦ ÀÐ°í ¾²±â À§Çؼ­ ÀÏ°Ì´Ï´Ù. ±×·± °æ¿ì, ÀÌ ¼³Á¤À» Áõ°¡½ÃÅ°¸é ½ºÅ©¸³Æ®°¡ Æ÷±âÇÏ°í ¿¡·¯ ¸Þ½ÃÁö¸¦ º¸¿©ÁÖ±â Àü¿¡ ¿À·§ µ¿¾È ±â´Ù¸± ¼ö ÀÖ½À´Ï´Ù.

+

+ÀÌ ¼³Á¤Àº ¸ðµç Ŭ¸³º¸µå ¿¬»ê¿¡ Àû¿ëµË´Ï´Ù. ±× Áß¿¡ °¡Àå ´Ü¼øÇÑ ¿¹´Â ´ÙÀ½°ú °°½À´Ï´Ù: Var = %Clipboard% ±×¸®°í Clipboard = New Text.

+

+Ŭ¸³º¸µå°¡ ´Ù½Ã »ç¿ë °¡´ÉÇÒ ¶§±îÁö ½ºÅ©¸³Æ®°¡ ±â´Ù¸± ¶§¸¶´Ù, »õ ¾²·¹µå´Â ±âµ¿ÇÒ ¼ö ¾øÀ¸¸ç ŸÀ̸ӵµ ½ÇÇàµÇÁö ¾Ê½À´Ï´Ù. ±×·¸Áö¸¸, »ç¿ëÀÚ°¡ ÇÖÅ°¸¦ ´©¸£°Å³ª, ¸ÂÃã ¸Þ´º Ç׸ñÀ» ¼±ÅÃÇϰųª, ¾Æ´Ï¸é ¹öÆ°À» ´©¸¥ °Í°ú °°Àº GUI ÇàÀ§¸¦ ¼öÇàÇϸé, ±× À̺¥Æ®´Â ³ªÁß¿¡, ´Ù½Ã ¸»ÇØ, Ŭ¸³º¸µå°¡ ¿ÏÀüÈ÷ »ç¿ë °¡´ÉÇØÁø ÈÄ¿¡ ±×ÀÇ ¼­ºê·çƾÀÌ ½ÇÇàµÉ ¶§±îÁö ¹öÆÛ Ã³¸®µË´Ï´Ù.

+

+ÀÌ Áö½Ã¾î°¡ ÀÖÀ¸¸é ù ½Ãµµ°¡ ½ÇÆÐÇÏ´õ¶óµµ Ŭ¸³º¸µå µ¥ÀÌÅ͸¦ ´Ù½Ã ÀÐÀ¸·Á°í ½ÃµµÇÏÁö ¾Ê½À´Ï´Ù. v1.1.16 ÀÌÀü¿¡¼­´Â ½ºÅ©¸³Æ®°¡ ½Ã°£Á¦ÇÑÀÌ Ç®¸± ¶§±îÁö ±â´Ù·Á¾ß Çß½À´Ï´Ù. ±×·¯³ª ±×·¸°Ô ÇÔÀ¸·Î½á ´õ ÀÌ»ó µ¥ÀÌÅ͸¦ ¹ÞÁö ¸øÇÏ°Ô µÇ¾ú½À´Ï´Ù.

+ +

°ü·Ã Ç׸ñ

+

Clipboard, Thread

+

¿¹Á¦

+
#ClipboardTimeout 2000
+ + + diff --git a/src/docs/commands/_CommentFlag.htm b/src/docs/commands/_CommentFlag.htm new file mode 100644 index 0000000..9b22b71 --- /dev/null +++ b/src/docs/commands/_CommentFlag.htm @@ -0,0 +1,38 @@ + + + + +#CommentFlag + + + + + + + +

#CommentFlag

+ +

½ºÅ©¸³Æ®ÀÇ ÁÖ¼® ½Éº¼À» ½Ö¹ÝÁ¡À¸·ÎºÎÅÍ ´Ù¸¥ ¹®ÀÚ¿­·Î º¯°æÇÕ´Ï´Ù.

+ +
#CommentFlag NewString
+

¸Å°³º¯¼ö

+
+ +
NewString
+

»õ·Î¿î ÁÖ¼® Ç÷¡±×·Î »ç¿ëµÉ Çϳª ÀÌ»óÀÇ ¹®ÀÚ. 15 ¹®ÀÚ±îÁö ÁöÁ¤ÇÒ ¼ö ÀÖ½À´Ï´Ù.

+ +
+

³íÆò

+

±âº» ÁÖ¼® Ç÷¡±×´Â ½Ö¹ÝÁ¡ÀÔ´Ï´Ù (;).

+

ÁÖ¼® Ç÷¡±×´Â ´ÙÀ½¿¡ µû¶ó¿À´Â ÅؽºÆ®°¡ ½ºÅ©¸³Æ®¿¡¼­ ÀÛµ¿ÇÏÁö ¸»¾Æ¾ß ÇÑ´Ù°í ¾Ë·Á ÁÖ´Â µ¥ »ç¿ëµË´Ï´Ù (ÁÖ¼®Àº ½ºÅ©¸³Æ®°¡ ±âµ¿ÇÒ ¶§ ¸Þ¸ð¸® ¾ÈÀ¸·Î ÀûÀçµÇÁö ¾Ê½À´Ï´Ù. ±×·¡¼­ ¼öÇ༺´É¿¡ ¿µÇâÀ» ÁÖÁö ¾Ê½À´Ï´Ù).

+

+ÁÖ¼® Ç÷¡±×°¡ ¸í·É¾î¿Í °°Àº ÁÙ¿¡ ³ªÅ¸³ª¸é ¿ÞÂÊ¿¡ Àû¾îµµ Çϳª ÀÌ»óÀÇ ½ºÆäÀ̽º³ª ÅÇÀÌ ÀÖ¾î¾ß ÁÖ¼®À¸·Î °£Áֵ˴ϴÙ. ¿¹¸¦ µé¾î:

+
MsgBox, Test1 ; ÀÌ°ÍÀº ÁÖ¼®ÀÔ´Ï´Ù.
+MsgBox, Test2; ÀÌ°ÍÀº ÁÖ¼®ÀÌ ¾Æ´Ï°í MsgBox°¡ º¸¿©ÁÝ´Ï´Ù.
+

°ü·Ã Ç׸ñ

+

#EscapeChar

+

¿¹Á¦

+
#CommentFlag //  ; C++ ÁÖ¼® ½ºÅ¸ÀÏ·Î º¯°æÇÏ´Ï´Ù.
+ + + diff --git a/src/docs/commands/_ErrorStdOut.htm b/src/docs/commands/_ErrorStdOut.htm new file mode 100644 index 0000000..7624b7a --- /dev/null +++ b/src/docs/commands/_ErrorStdOut.htm @@ -0,0 +1,67 @@ + + + + +#ErrorStdOut + + + + + + + +

#ErrorStdOut

+ +

½ºÅ©¸³Æ®ÀÇ ½ÇÇàÀ» ¸·´Â ±¸¹® ¿¡·¯¸¦ ´ëÈ­»óÀÚ¿¡ º¸¿©ÁÖÁö ¾Ê°í Ç¥ÁØ¿¡·¯(stderr)·Î º¸³À´Ï´Ù.

+ +
#ErrorStdOut
+

[AHK_L 42+]: ¿¡·¯´Â Ç¥ÁØÃâ·Â(stdout)ÀÌ ¾Æ´Ï¶ó Ç¥ÁØ¿¡·¯(stderr)¿¡ ¾º¿©Áý´Ï´Ù. ¸í·É ÇÁ·ÒÇÁÆ®¿Í ¸ÚÁø ÆíÁý±â´Â º¸Åë µÑ ´Ù º¸¿©ÁÝ´Ï´Ù. ÀÌ º¯°æÀº v1.1.19.01 ÀÌÀü±îÁö ¹®¼­È­µÇ¾î ÀÖÁö ¾Ê¾Ò½À´Ï´Ù.

+

+ÀÌ ´öºÐ¿¡ Textpad, SciTE, Crimson, ±×¸®°í EditPlus¿Í °°Àº ¸ÚÁø ÆíÁý±âµéÀº ±¸¹® ¿¡·¯°¡ ÀϾ ¶§ ¹®Á¦ÀÇ ÁÙ·Î ¹Ù·Î Á¡ÇÁÇØ °¥ ¼ö ÀÖ½À´Ï´Ù. #ErrorStdOut Áö½Ã¾î´Â ½ºÅ©¸³Æ®¸¶´Ù Ãß°¡Çصµ ÁÁÀ» °ÍÀÔ´Ï´Ù. +º¸Åë ¿ÀÅäÇÖÅ° ½ºÅ©¸³Æ®¸¦ ±âµ¿ÇÒ ¶§ ÆíÁý±â¸¦ ¸í·É ÁÙ ½ºÀ§Ä¡ /ErrorStdOut¸¦ »ç¿ëÇϵµ·Ï ¼³Á¤ÇÏ´Â °ÍÀÌ ´õ ÁÁ½À´Ï´Ù (¼³Á¤¿¡ °üÇÑ Áö½Ã »çÇ×Àº ¾Æ·¡¸¦ ÂüÁ¶ÇϽʽÿÀ).

+

+¿ÀÅäÇÖÅ°´Â ÄÜ¼Ö ÇÁ·Î±×·¥ÀÌ ¾Æ´Ï±â ¶§¹®¿¡, ¿¡·¯´Â ¸í·É ÇÁ·ÒÇÁÆ®¿¡ Á÷Á¢ ³ªÅ¸³ªÁö ¾Ê½À´Ï´Ù. ´ë½Å¿¡, ±×·± Ãâ·ÂÀº ÆÄÀÌÇÁ³ª ¹æÇâÀüȯÀ» ÅëÇÏ¿© ÀâÀ» ¼ö ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î:

+ +
"C:\Program Files\AutoHotkey\AutoHotkey.exe" /ErrorStdOut "My Script.ahk" 2>&1 |more
+"C:\Program Files\AutoHotkey\AutoHotkey.exe" /ErrorStdOut "My Script.ahk" 2>"Syntax-Error Log.txt"
+

+Ãâ·ÂÀ» Á÷Á¢ Ŭ¸³º¸µå·Î ÆÄÀÌÇÁ ó¸®ÇØ ³ÖÀ» ¼öµµ ÀÖ½À´Ï´Ù. cb.zip (4 KB)À» ³»·Á ¹Þ°í, ´ÙÀ½ ¿¹Á¦¸¦ µû¸£½Ê½Ã¿À:

+ +
"C:\Program Files\AutoHotkey\AutoHotkey.exe" /ErrorStdOut "My Script.ahk" 2>&1 |cb.exe
+

+ÁÖÀÇ: 2>&1´Â stderr¸¦ stdout·Î ¹æÇâÀüȯµÇµµ·Ï ¸¸µì´Ï´Ù. ¹Ý¸é¿¡ 2>Filename´Â stderr¸¸ ÆÄÀÏ·Î ¹æÇâÀüȯÇÕ´Ï´Ù.

+ +

ƯÁ¤ ÆíÁý±â¸¦ À§ÇÑ Áö½Ã »çÇ×

+

EditPlus:
+¸Þ´º ¹Ù¿¡¼­, µµ±¸ > »ç¿ëÀÚ µµ±¸ ±¸¼ºÀ» ¼±ÅÃÇÕ´Ï´Ù.
+´ÙÀ½ ¹öÆ°À» ´©¸¨´Ï´Ù: µµ±¸ > ÇÁ·Î±×·¥
+¸Þ´º ÅؽºÆ®: ¿©·¯ºÐÀÇ ¸¶À½´ë·Î ¼³Á¤ÇÕ´Ï´Ù
+¸í·É¾î: C:\Program Files\AutoHotkey\AutoHotkey.exe
+ÀÎÀÚ: /ErrorStdOut "$(FilePath)"
+ÃÖÃÊ µð·ºÅ丮: $(FileDir)
+Ãâ·Â ĸÃÄ: ³×

+

+TextPad:
+ ¸Þ´º ¹Ù¿¡¼­, Configure > Preferences¸¦ ¼±ÅÃÇÕ´Ï´Ù.
+ Tools ¿£Æ®¸®¸¦ È®´ëÇÕ´Ï´Ù.
+Add ¹öÆ°À» ´©¸£°í "Program"À» ¼±ÅÃÇÕ´Ï´Ù.
+ º¹»çÇØ ºÙ¿© ³Ö½À´Ï´Ù (¿©·¯ºÐÀÇ °æ·Î¿¡ ¸Â°Ô Á¶ÀýÇϽʽÿÀ): C:\Windows\System32\cmd.exe -- ´ÙÀ½ OK¸¦ ´©¸¨´Ï´Ù.
+ ¸®½ºÆ® ¹Ú½º¿¡ »õ·Î Ãß°¡µÈ ¹öÆ°À» ¼¼¹ø Ŭ¸¯ÇÕ´Ï´Ù (cmd.exe). ±×¸®°í À̸§À» ¿©·¯ºÐ ¸¶À½´ë·Î ¹Ù²ß´Ï´Ù (¿¹,. Launch Script).
+ Apply¸¦ ´©¸¨´Ï´Ù.
+ ¿ÞÂÊ Æ®¸®¿¡¼­ »õ Ç׸ñÀ» ¼±ÅÃÇÏ°í ´ÙÀ½ Á¤º¸¸¦ ÀÔ·ÂÇÕ´Ï´Ù:
+ Command (ÀÌ¹Ì Ã¤¿öÁ® ÀÖÀ» °ÍÀÔ´Ï´Ù): cmd.exe (¶Ç´Â Àüü °æ·Î¸¦ ÁöÁ¤)
+ Parameters (ÇÊ¿äÇÏ¸é ¿©·¯ºÐÀÇ °æ·Î¿¡ ¸Â°Ô Á¶Àý): /c ""C:\Program Files\AutoHotkey\AutoHotkey.exe" /ErrorStdOut "$File""
+ Initial folder: $FileDir
+ ´ÙÀ½ ¹Ú½º¸¦ üũÇÕ´Ï´Ù: + 1) Run minimized; 2) Capture output.
+ OK¸¦ ´©¸¨´Ï´Ù. »õ·Î Ãß°¡µÈ Ç׸ñÀÌ ÀÌÁ¦ Tools ¸Þ´º¿¡ ³ªÅ¸³¯ °ÍÀÔ´Ï´Ù.

+ +

°ü·Ã »çÇ×

+

+FileAppend (ÀÌ ¿ª½Ã ÅؽºÆ®¸¦ Ç¥ÁØÃâ·ÂÀ¸·Î º¸³¾ ¼ö ÀÖ½À´Ï´Ù)

+ +

¿¹Á¦

+
#ErrorStdOut
+ + + diff --git a/src/docs/commands/_EscapeChar.htm b/src/docs/commands/_EscapeChar.htm new file mode 100644 index 0000000..cec3878 --- /dev/null +++ b/src/docs/commands/_EscapeChar.htm @@ -0,0 +1,108 @@ + + + + +#EscapeChar (and explanation of escape sequences) + + + + + + + +

#EscapeChar (ÇǽŠ¿¬¼Ó¿­ ¼³¸í)

+ +

½ºÅ©¸³Æ®ÀÇ ÇǽŠ¹®ÀÚ¸¦ º¯°æÇÕ´Ï´Ù (¿¹, accent vs. backslash).

+ +
#EscapeChar NewChar
+

¸Å°³º¯¼ö

+
+ +
NewChar
+

¹®ÀÚ Çϳª¸¦ ÁöÁ¤ÇÕ´Ï´Ù.

+ +
+

³íÆò

+

+ÇǽŠ¹®ÀÚ´Â ¹Ù·Î ´ÙÀ½¿¡ ¿À´Â ¹®ÀÚ°¡ Á¤»ó°ú ´Ù¸£°Ô ¹ø¿ªµÇ¾î¾ß ÇÑ´Ù´Â °ÍÀ» ³ªÅ¸³»´Â µ¥ »ç¿ëµË´Ï´Ù.

+

+±âº» ÇǽŠ¹®ÀÚ´Â ¾×¼¾Æ®/¹éƽÀÔ´Ï´Ù (`).

+ +

ÇǽŠ¿¬¼Ó¿­ (¾×¼¾Æ®°¡ ÇǽŠ¹®ÀÚÀÏ ¶§)

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
´ÙÀ½ÀºÀÌ·¸°Ô ¹ø¿ªµË´Ï´Ù
`,, (±ÛÀÚ ±×´ë·ÎÀÇ ½°Ç¥). ÁÖÀÇ: ½°Ç¥°¡ ¸í·É¾îÀÇ ¸¶Áö¸· ¸Å°³º¯¼ö¿¡ ³ªÅ¸³ª¸é ÇǽŽÃų ÇÊ¿ä°¡ ¾ø½À´Ï´Ù. ¿Ö³ÄÇϸé ÇÁ·Î±×·¥ÀÌ ±×°ÍÀ» ¹®ÀÚ ±×´ë·Î Ãë±ÞÇØ¾ß ÇÑ´Ù´Â °ÍÀ» ¾Ë°í Àֱ⠶§¹®ÀÔ´Ï´Ù. MsgBoxÀÇ ¸ðµç ¸Å°³º¯¼ö¿¡µµ ¸¶Âù°¡Áö ±ÔÄ¢ÀÌ Àû¿ëµË´Ï´Ù. ¿Ö³ÄÇÏ¸é ¶È¶ÈÇÑ ½°Ç¥ ó¸® ¹æ¹ýÀ» ¾Ë°í Àֱ⠶§¹®ÀÔ´Ï´Ù.
`%% (±ÛÀÚ ±×´ë·ÎÀÇ ÆÛ¼¾Æ®)
``` (±ÛÀÚ ±×´ë·ÎÀÇ ¾×¼¾Æ®; Áï, µÎ °³ÀÇ ¿¬¼Ó ÇǽŠ¿¬¼Ó¿­Àº ÇϳªÀÇ ±ÛÀÚ ±×´ë·ÎÀÇ ¹®ÀÚ°¡ °á°ú°¡ µË´Ï´Ù.)
`; ; (±ÛÀÚ ±×´ë·ÎÀÇ ½Ö¹ÝÁ¡). ÁÖÀÇ: ½Ö¹ÝÁ¡ÀÇ ¿ÞÂÊ¿¡ ½ºÆäÀ̽º³ª ÅÇÀÌ ÀÖÀ» °æ¿ì¿¡¸¸ ÇÊ¿äÇÕ´Ï´Ù. ±×·¸Áö ¾Ê´Ù¸é, ÇǽŽÃÅ°Áö ¾Ê¾Æµµ ¿Ã¹Ù¸£°Ô ÀÎÁöÇÕ´Ï´Ù.
`:::: (±ÛÀÚ ±×´ë·ÎÀÇ ½ÖÁ¡ ½Ö). v1.0.40+¿¡¼­´Â ´õ ÀÌ»ó ÇǽŽÃų ÇÊ¿ä°¡ ¾ø½À´Ï´Ù.
`n»õÁÙ (¶óÀÎÇǵå/LF)
`rij¸®Áö ¸®ÅÏ (CR)
`b¹é½ºÆäÀ̽º
`tÅÇ (ÀüÇüÀûÀÎ ¼öÆò ÅÇ)
`v¼öÁ÷ ÅÇ -- Ascii °ª 11¿¡ »óÀÀ. ¾î¶² ¾îÇø®ÄÉÀ̼ǿ¡¼­´Â Control+K¸¦ ŸÀÚÇØ ¸íÈ®ÇÏ°Ô ¹àÈú ¼ö ÀÖ½À´Ï´Ù.
`aº§¼Ò¸® (bell) -- Ascii °ª 7¿¡ »óÀÀ. ¾î¶² ¾îÇø®ÄÉÀ̼ǿ¡¼­´Â Control+G¸¦ ŸÀÚÇØ ¸íÈ®ÇÏ°Ô ¹àÈú ¼ö ÀÖ½À´Ï´Ù.
`fÆûÇǵå -- Ascii °ª 12¿¡ »óÀÀ. ¾î¶² ¾îÇø®ÄÉÀ̼ǿ¡¼­´Â Control+L¸¦ ŸÀÚÇØ ¸íÈ®ÇÏ°Ô ¹àÈú ¼ö ÀÖ½À´Ï´Ù.
Send + Send ¸í·É¾î³ª ÇÖ½ºÆ®¸µÀÌ ±âº» ¸ðµå (ºñ-³¯ ¸ðµå)¿¡¼­ »ç¿ëµÉ ¶§, {}^!+#¿Í °°Àº ¹®ÀÚµéÀº Ưº°ÇÑ Àǹ̰¡ ÀÖ½À´Ï´Ù. ±×·¯¹Ç·Î, ÀÌ·± °æ¿ì ¹®ÀÚ ±×´ë·Î »ç¿ëÇÏ·Á¸é, È°°ýÈ£·Î µÑ·¯ ½Î½Ê½Ã¿À. ¿¹¸¦ µé¾î: Send {^}{!}{{}.
""Ç¥Çö½Ä ¾È¿¡¼­, ±âÈ£ ±×´ë·ÎÀÇ ¹®ÀÚ¿­ ¾È¿¡ µÑ·¯ ½ÎÀÎ µÎ °³ÀÇ ¿¬¼Ó µû¿ÈÇ¥´Â ¹®ÀÚ ±×´ë·ÎÀÇ ÇϳªÀÇ µû¿ÈÇ¥·Î °áÁ¤µË´Ï´Ù. + ¿¹¸¦ µé¾î: Var := "The color ""red"" was found.".
+

°ü·Ã Ç׸ñ

+

+ +Àß »ç¿ëµÇÁö ¾Ê´Â ´ÙÀ½ Áö½Ã¾îµµ Á¸ÀçÇÕ´Ï´Ù; »ç¿ë¹ýÀº ´ÙÀ½ ¿¹Á¦¿¡ º¸¿©ÁÝ´Ï´Ù:

+ +
#DerefChar #  ; º¸ÅëÀÇ ±âº»°ª ÆÛ¼¾Æ®¸¦ ¼¥À¸·Î ¹Ù²ß´Ï´Ù.
+#Delimiter /  ; º¸ÅëÀÇ ±âº»°ª ½°Ç¥¸¦ Á¤»ç¼±À¸·Î ¹Ù²ß´Ï´Ù
+ +

¿¹Á¦

+
#EscapeChar \  ; ±âº» °ª ¾×¼¾Æ® (`) ´ë½Å¿¡ ¿ª»ç¼±À¸·Î º¯°æÇÕ´Ï´Ù.
+ + + diff --git a/src/docs/commands/_HotkeyInterval.htm b/src/docs/commands/_HotkeyInterval.htm new file mode 100644 index 0000000..067f316 --- /dev/null +++ b/src/docs/commands/_HotkeyInterval.htm @@ -0,0 +1,35 @@ + + + + +#HotkeyInterval + + + + + + + +

#HotkeyInterval

+ +

#MaxHotkeysPerInterval°ú ÇÔ²², ÇÖÅ°ÀÇ È°¼ºÈ­ ºñÀ²À» ÁöÁ¤ÇÕ´Ï´Ù. ÀÌ °ªÀ» ³Ñ¾î¼­¸é °æ°í ´ëÈ­»óÀÚ°¡ Ÿ³ª³³´Ï´Ù.

+ +
#HotkeyInterval Milliseconds
+

¸Å°³º¯¼ö

+
+ +
Milliseconds
+

¹Ð¸®ÃÊ ´ÜÀ§·Î °£°ÝÀÇ ±æÀÌ.

+ +
+

³íÆò

+

½ºÅ©¸³Æ®¿¡ ÀÌ Áö½Ã¾î¸¦ ÁöÁ¤ÇÏÁö ¾ÊÀ¸¸é ¸¶Ä¡ 2000À» ÁöÁ¤ÇÑ °Íó·³ ÇàÀ§ÇÕ´Ï´Ù.

+

ÀÚ¼¼ÇÑ ³»¿ë°ú ³íÆòÀº #MaxHotkeysPerInterval¸¦ ÂüÁ¶ÇϽʽÿÀ.

+

°ü·Ã Ç׸ñ

+

#MaxHotkeysPerInterval

+

¿¹Á¦

+
#HotkeyInterval 2000  ; ÀÌ°ÍÀÌ ±âº»°ªÀÔ´Ï´Ù (¹Ð¸®ÃÊ).
+#MaxHotkeysPerInterval 200
+ + + diff --git a/src/docs/commands/_HotkeyModifierTimeout.htm b/src/docs/commands/_HotkeyModifierTimeout.htm new file mode 100644 index 0000000..3ff751b --- /dev/null +++ b/src/docs/commands/_HotkeyModifierTimeout.htm @@ -0,0 +1,55 @@ + + + + +#HotkeyModifierTimeout + + + + + + + +

#HotkeyModifierTimeout

+ +

ÇÖÅ° ¼ö½ÄÀÚÀÇ ÇàÀ§¿¡ ¿µÇâÀ» ¹ÌĨ´Ï´Ù: CTRL, ALT, WIN, ±×¸®°í SHIFT.

+ +
#HotkeyModifierTimeout Milliseconds
+

¸Å°³º¯¼ö

+
+ +
Milliseconds
+

¹Ð¸®ÃÊ ´ÜÀ§ °£°Ý. °ªÀÌ -1ÀÌ¸é ½Ã°£ Á¦ÇÑÀÌ ¾ø½À´Ï´Ù (¼ö½Ä Å°´Â Send ÈÄ¿¡ ¾ðÁ¦³ª Á¦ÀÚ¸®·Î µ¹¾Æ¿É´Ï´Ù), ¶Ç´Â 0ÀÌ¸é ¾ðÁ¦³ª ½Ã°£ Á¦ÇÑÀÌ ÀÖ½À´Ï´Ù (¼ö½Ä Å°´Â Àý´ë·Î Á¦ÀÚ¸®·Î µ¹¾Æ¿ÀÁö ¾Ê½À´Ï´Ù).

+ +
+

³íÆò

+

ÀÌ Áö½Ã¾î´Â ´ÙÀ½°ú °°Àº °æ¿ì »ç¿ëÇÒ ÇÊ¿ä°¡ ¾ø½À´Ï´Ù:

+ +

+ÀÌ Áö½Ã¾îÀÇ È¿°ú¸¦ ½Ã¿¬Çϱâ À§ÇØ, ´ÙÀ½ ¿¹Á¦¸¦ »ý°¢ÇØ º¸½Ê½Ã¿À: ^!a::Send, abc.

+

+Send ¸í·É¾î°¡ ½ÇÇàµÇ¸é, ù ¹ø°·Î CTRL°ú ALT Å°¸¦ ¶Á´Ï´Ù. ±×·¡¼­ ¹®ÀÚµéÀÌ Á¦´ë·Î Àü¼ÛµË´Ï´Ù. ¸ðµç Å°¸¦ º¸³»°í ³ª¸é, ¸í·É¾î´Â ¾î¶»°Ô ÇØ¾ß CTRL°ú ALT¸¦ ¾ÈÀüÇÏ°Ô Á¦ÀÚ¸®·Î µ¹·Á³õÀ» ¼ö ÀÖÀ»Áö ¾ËÁö ¸øÇÕ´Ï´Ù (»ç¿ëÀÚ°¡ ¿©ÀüÈ÷ ¼ö½Ä Å°¸¦ ´©¸£°í ÀÖ´ÂÁö ¾î¶²Áö ¾Ë ¼ö°¡ ¾ø±â ¶§¹®ÀÔ´Ï´Ù). + +±×·¯³ª ÁöÁ¤µÈ ¹Ð¸®ÃÊ ½Ã°£ µ¿¾È¿¡´Â »ç¿ëÀÚ°¡ ¾ÆÁ÷ Å°¸¦ ¶¿ ±âȸ¸¦ °®Áö ¸øÇß´Ù°í °£ÁÖÇÏ°í ¼ö½Ä Å°µéÀ» ¹°¸®Àû »óÅ¿¡ ¸Â°Ô ´Ù½Ã µ¹·Á ³õ½À´Ï´Ù. ÁöÁ¤µÈ ½Ã°£ÀÌ Áö³ª¸é, ¼ö½Ä Å°´Â ´Ù½Ã Á¦ÀÚ¸®·Î µ¹¾Æ¿ÀÁö ¾Ê½À´Ï´Ù. ¼ö½ÄÅ°°¡ Å°¸¦ º¯°æÇϵµ·Ï ¸¸µé·Á¸é »ç¿ëÀÚ´Â ¼ö½Ä Å°¸¦ ¶¼°í ´Ù½Ã ´­·¯¾ß ÇÕ´Ï´Ù.

+

+½Ã°£Á¦ÇÑÀº »ç¿ëÀÚ°¡ ÀüÇüÀûÀ¸·Î ÇÖÅ°ÀÇ ¼ö½ÄÀÚ¸¦ ¶¼±â Àü¿¡ ´©¸£°í ÀÖ´Â ½Ã°£º¸´Ù ÀÛÀº °ªÀ¸·Î ¼³Á¤ÇØ¾ß ÇÕ´Ï´Ù. ±×·¸Áö ¾ÊÀ¸¸é, ¼ö½ÄÅ°´Â »ç¿ëÀÚ°¡ ¹°¸®ÀûÀ¸·Î ´©¸£°í ÀÖÁö ¾Ê¾Æµµ ´©¸¥ À§Ä¡·Î º¹±¸µÇ¾î ¹ö¸± ¼ö ÀÖ½À´Ï´Ù (´­¸° »óÅ°¡ µÊ).

+

+ÀÌ Áö½Ã¾îÀÇ »ç¿ëÀ» ÁÙÀ̰ųª Çʿ並 ¾ø¾Ù ¼ö ÀÖ½À´Ï´Ù. ´ÙÀ½ Áß Çϳª¸¦ »ç¿ëÇϸé:

+ +

+ÀÌ Áö½Ã¾î¸¦ ÁöÁ¤ÇÏÁö ¾ÊÀ¸¸é, 50À¸·Î ¼³Á¤µÈ °Íó·³ ÇàÀ§ÇÕ´Ï´Ù.

+ +

°ü·Ã Ç׸ñ

+

GetKeyState

+

¿¹Á¦

+
#HotkeyModifierTimeout 100
+ + + diff --git a/src/docs/commands/_Hotstring.htm b/src/docs/commands/_Hotstring.htm new file mode 100644 index 0000000..b9743f3 --- /dev/null +++ b/src/docs/commands/_Hotstring.htm @@ -0,0 +1,53 @@ + + + + +#Hotstring + + + + + + + +

#Hotstring

+ +

ÇÖ½ºÆ®¸µ ¿É¼ÇÀ̳ª Á¾·á ¹®ÀÚ¸¦ º¯°æÇÕ´Ï´Ù.

+ +
#Hotstring NoMouse
+#Hotstring EndChars NewChars
+#Hotstring NewOptions
+

¸Å°³º¯¼ö

+
+ +
NoMouse
+

¸¶¿ì½º Ŭ¸¯ ¶§¹®¿¡ ¿©±â¿¡ ±â¼úÇÏ´Â ¹Ù¿Í °°ÀÌ ÇÖ½ºÆ®¸µ ÀνÄÀÚ°¡ Àç¼³Á¤µÇÁö ¾Êµµ·Ï ¸·½À´Ï´Ù. + ºÎÀÛ¿ëÀ¸·Î¼­, ÀÌ°ÍÀº ¶Ç ¸¶¿ì½º °¥°í¸®¸¦ ÇÖ½º¸µÀÌ ¿ä±¸ÇÏÁö ¸øÇϵµ·Ï ¸·½À´Ï´Ù (±×·¸Áö¸¸ ½ºÅ©¸³Æ®°¡ ´Ù¸¥ ¸ñÀûÀ¸·Î ¿ä±¸ÇÏ¸é ¿©ÀüÈ÷ ¼³Ä¡µÉ °ÍÀÔ´Ï´Ù. ¿¹¸¦ µé¾î, ¸¶¿ì½º ÇÖÅ°). #Hotstring NoMouseÀÌ ½ºÅ©¸³Æ®¿¡ Á¸ÀçÇÏ¸é ¸ðµç ÇÖ½ºÆ®¸µ¿¡ ¿µÇâÀ» ÁÝ´Ï´Ù. ´Ü¼øÈ÷ ¹°¸®ÀûÀ¸·Î ±× ¾Æ·¡¿¡¸¸ ¿µÇâÀ» ¹ÌÄ¡´Â °ÍÀÌ ¾Æ´Õ´Ï´Ù.

+ +
EndChars NewChars
+

´Ü¾î EndChars ´ÙÀ½¿¡ ½ºÆäÀ̽º¸¦ Çϳª µÎ°í ´ÙÀ½¿¡ »õ Á¾·á ¹®ÀÚ¸¦ ÁöÁ¤ÇϽʽÿÀ. ¿¹¸¦ µé¾î:

+
#Hotstring EndChars -()[]{}':;"/\,.?!`n `t
+

+ »õ Á¾·á ¹®ÀÚ´Â Àüü ½ºÅ©¸³Æ®¿¡ Àü¿ªÀûÀ¸·Î È¿°ú°¡ ÀÖÀ¸¹Ç·Î -- EndChars Áö½Ã¾î°¡ ¾îµð¿¡ ³ªÅ¸³ª´Â°¡¿¡ »ó°ü ¾øÀÌ -- EndChars¸¦ ÇÑ ¹ø ÀÌ»ó ÁöÁ¤ÇÒ ÇÊ¿ä°¡ ¾ø½À´Ï´Ù.

+

+ Á¾·á ¹®ÀÚÀÇ ÃÖ´ë °³¼ö´Â 100°³ÀÔ´Ï´Ù. ÀÌ ±æÀ̸¦ ³Ñ¾î¼­´Â ¹®ÀÚ´Â ¹«½ÃÇÕ´Ï´Ù.

+

+ ÅÇÀ» Á¾·á ¹®ÀÚ·Î ¸¸µé·Á¸é, ¸ñ·Ï¿¡ `t¸¦ Æ÷ÇÔÇϽʽÿÀ. ½ºÆäÀ̽º¸¦ Á¾·á ¹®ÀÚ·Î ¸¸µé·Á¸é, ¸ñ·Ï¿¡ µÎ °³ÀÇ ´Ù¸¥ ¹®ÀÚ »çÀÌ¿¡ Æ÷ÇÔÇÏ¸é µË´Ï´Ù (¶Ç´Â ¸®½ºÆ®¿¡ ¿ÀÁ÷ ¹®ÀÚ°¡ Çϳª ¹Û¿¡ ¾ø´Ù¸é ¶Ç´Â Çϳªµµ ¾ø´Ù¸é, óÀ½¿¡ Æ÷ÇÔ½Ãŵ´Ï´Ù).

+ +
NewOptions
+

ÇÖ½ºÆ®¸µ ¿É¼Ç¿¡ ±â¼úÇÏ´Â ¹Ù¿Í °°ÀÌ »õ ¿É¼ÇÀ» ÁöÁ¤ÇÕ´Ï´Ù. ¿¹¸¦ µé¾î: #Hotstring r s k0 c0.

+

À§ÀÇ EndChars¿Í ´Ù¸£°Ô, #Hotstring Áö½Ã¾î´Â ÀÌ·± ½ÄÀ¸·Î »ç¿ëµÉ ¶§ À§Ä¡¿¡ ¹Î°¨ÇÕ´Ï´Ù. ´Ù¸¥ ¸»·Î Çϸé, ÇÖ½ºÆ®¸µÀÇ Àüü ¼½¼ÇÀº ´ÙÀ½ ¿¹Á¦¿Í °°ÀÌ ±âº» ¿É¼ÇÀÌ ´Ù¸¦ ¼ö ÀÖ½À´Ï´Ù:

+
::btw::by the way
+
+#Hotstring r c  ; ÀÌ ¾Æ·¡ÀÇ ÇÖ½ºÆ®¸µÀº ¸ðµÎ "³¯ Àü¼Û ¸ðµå"¸¦ »ç¿ëÇÏ°í ±âº»À¸·Î ´ë¼Ò¹®ÀÚ¸¦ ±¸ºÐÇÕ´Ï´Ù.
+::al::airline
+::CEO::Chief Executive Officer
+
+#Hotstring c0  ; ÀÌ ÁöÁ¡ ¾Æ·¡ÀÇ ¸ðµç ÇÖ½ºÆ®¸µÀ» ´ë¼Ò¹®ÀÚ¿¡ ¹«°¨°¢ÇÏ°Ô ¸¸µì´Ï´Ù.
+ +
+

°ü·Ã Ç׸ñ

+

Hotstrings

+ + + diff --git a/src/docs/commands/_If.htm b/src/docs/commands/_If.htm new file mode 100644 index 0000000..b645dfc --- /dev/null +++ b/src/docs/commands/_If.htm @@ -0,0 +1,98 @@ + + + + +#If + + + + + + + + +

#If [AHK_L]

+ +

¹®¸Æ-°¨Áö ÇÖÅ°¿Í ÇÖ½ºÆ®¸µÀ» ¸¸µì´Ï´Ù. ¹®¸Æ °¨Áö ÇÖÅ°´Â Ç¥Çö½ÄÀÇ °á°ú¿¡ µû¶ó ´Ù¸£°Ô Á¶Ä¡¸¦ ¼öÇàÇÕ´Ï´Ù (¶Ç´Â ¾Æ¹«°Íµµ ÇÏÁö ¾Ê½À´Ï´Ù).

+ +
#If [, Expression ]
+

¸Å°³º¯¼ö

+
+ +
Expression
+

À¯È¿ÇÑ Ç¥Çö½Ä.

+ +
+ +

±âº» ¿¬»ê

+

+À¯È¿ÇÑ ¿¬»ê½ÄÀ̸é ÇÖÅ°°¡ È°¼ºÈ­ µÉ ¹®¸ÆÀ» Á¤ÀÇÇÏ´Â µ¥ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î:

+ +
#If WinActive("ahk_class Notepad") or WinActive(MyWindowTitle)
+#Space::MsgBox You pressed Win+Spacebar in Notepad or %MyWindowTitle%.
+

+#IfWin Áö½Ã¾îó·³, #Ifµµ À§Ä¡¿¡ ¹Î°¨ÇÕ´Ï´Ù: ½ºÅ©¸³Æ®¿¡¼­ ¹°¸®ÀûÀ¸·Î ¾Æ·¡¿¡ ÀÖ´Â ¸ðµç ÇÖÅ°¿Í ÇÖ½ºÆ®¸µ¿¡ ¿µÇâÀ» ÁÝ´Ï´Ù. #If ±×¸®°í #IfWin´Â ¶Ç »óÈ£ ¹èŸÀûÀÔ´Ï´Ù; Áï, °¡Àå ÃÖ±ÙÀÇ #If ¶Ç´Â #IfWin¸¸ È¿°ú°¡ ÀÖ½À´Ï´Ù.

+

+¹®¸Æ °¨Áö¸¦ ²ô·Á¸é, ¸ðµç ¸Å°³º¯¼ö¸¦ »ý·«ÇÏ°í #If ¶Ç´Â #IfWin Áö½Ã¾î¸¦ ÁöÁ¤ÇÏ¸é µË´Ï´Ù. ¿¹¸¦ µé¾î:

+
#If
+ +

ÃÑÆò

+

+ÇÖÅ°¸¦ ±¸¼ºÇÏ´Â Å° Á¶ÇÕÀÌ ´­¸®¸é, #If Ç¥Çö½ÄÀ» Æò°¡ÇÏ¿© ±× ÇÖÅ°¸¦ È°¼ºÈ­ ÇÒÁö ¸»Áö¸¦ °áÁ¤ÇÕ´Ï´Ù. Ç¥Çö½ÄÀÇ Æò°¡°¡ ¿Ï·áµÉ ¶§±îÁö ¶Ç´Â ½Ã°£Á¦ÇÑÀÌ Ç®¸± ¶§±îÁö ½Ã½ºÅÛÀº Å°º¸µå³ª ¸¶¿ì½º ÀԷ¿¡ ÀÀ´äÇÏÁö ¾ÊÀ» °¡´É¼ºÀÌ ÀÖ½À´Ï´Ù. Ç¥Çö½ÄÀÌ Æò°¡µÇ°í ÀÖ´Â µ¿¾È¿¡ (¿¹¸¦ µé¾î Ç¥Çö½ÄÀÌ È£ÃâÇÑ ÇÔ¼ö·ÎºÎÅÍ) Å°´­¸²À̳ª ¸¶¿ì½º Ŭ¸¯À» Àü¼ÛÇÏ¸é º¹ÀâÇÑ ÀÏÀÌ ¾ß±âµÇ¹Ç·Î ÇÇÇÏ´Â ÆíÀÌ ÁÁ½À´Ï´Ù.

+

+Ç¥Çö½ÄÀº ÇÁ·Î±×·¥ÀÌ ÇÖÅ°°¡ È°¼ºÈ­µÇ¾î ÀÖ´ÂÁö ¾Ë ÇÊ¿ä°¡ ÀÖÀ» ¶§¸¶´Ù Æò°¡µÉ ¼öµµ ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î, a & b::¿Í °°Àº ¸ÂÃã Á¶ÇÕ¿¡ ´ëÇÏ¿© #If Ç¥Çö½ÄÀº Á¢µÎ Å°°¡ (ÀÌ ¿¹Á¦¿¡¼­´Â a) ´­¸± ¶§ Æò°¡µÇ¾î, ¸ÂÃã ¼ö½Ä Å°·Î ÇàÀ§ÇØ¾ß ÇÒÁö ¸»Áö °áÁ¤ÇÕ´Ï´Ù.

+

+À§¿¡ ±â¼úÇÑ ÀÌÀ¯ ¶§¹®¿¡, Ç¥Çö½ÄÀº ¹Ýµå½Ã »¡¸® ¿Ï·áµÇµµ·Ï ±×¸®°í ºÎÀÛ¿ëÀÌ ¾øµµ·Ï ÀÛ¼ºÇØ¾ß ÇÕ´Ï´Ù.

+

+[AHK_L 53+]: A_ThisHotkey¿Í A_TimeSinceThisHotkey´Â ÇöÀç #If Ç¥Çö½ÄÀÌ Æò°¡µÇ°í ÀÖ´Â ÇÖÅ°¿¡ ±â¹ÝÇϵµ·Ï ¼³Á¤µË´Ï´Ù.

+

[v1.0.95.00+]: A_PriorHotkey¿Í A_TimeSincePriorHotkey´Â Àӽ÷Π"This" º¯¼ö¿¡ »óÀÀÇÏ´Â ÀÌÀüÀÇ °ªÀ» ´ã°í ÀÖ½À´Ï´Ù.

+ +

°ü·Ã Ç׸ñ

+

+#IfWin Áö½Ã¾îÀÇ ÇàÀ§ Ư¼ºÀº ´ëºÎºÐ #If¿¡µµ Àû¿ëµË´Ï´Ù.

+

#IfTimeoutÀ» »ç¿ëÇÏ¸é ±âº» ½Ã°£Á¦ÇÑ °ªÀ» ¹Ù²Ü ¼ö ÀÖ½À´Ï´Ù.

+ +

¿¹Á¦

+
+; ¿¹Á¦ 1: ŽºÅ© ¹Ù À§¿¡¼­ ¸¶¿ì½º ÈÙÀ» ½ºÅ©·ÑÇؼ­ º¼·ýÀ» Á¶ÀýÇÕ´Ï´Ù.
+#If MouseIsOver("ahk_class Shell_TrayWnd")
+WheelUp::Send {Volume_Up}
+WheelDown::Send {Volume_Down}
+
+MouseIsOver(WinTitle) {
+    MouseGetPos,,, Win
+    return WinExist(WinTitle . " ahk_id " . Win)
+}
+
+; ¿¹Á¦ 2: ¸ðµç ÆíÁý ÄÜÆ®·ÑÀ» À§ÇÑ °£´ÜÇÑ ´Ü¾î-»èÁ¦ ´ÜÃàÅ°.
+#If ActiveControlIsOfClass("Edit")
+^BS::Send ^+{Left}{Del}
+^Del::Send ^+{Right}{Del}
+
+ActiveControlIsOfClass(Class) {
+    ControlGetFocus, FocusedControl, A
+    ControlGet, FocusedControlHwnd, Hwnd,, %FocusedControl%, A
+    WinGetClass, FocusedControlClass, ahk_id %FocusedControlHwnd%
+    return (FocusedControlClass=Class)
+}
+
+; ¿¹Á¦ 3: ¹®¸Æ-°¨Áö ÇÖÅ°.
+#If
+Esc::ExitApp
+
+; ¿¹Á¦ 4: µ¿ÀûÀÎ ÇÖÅ°. ¿¹Á¦ 1À» ÇÊ¿ä·Î ÇÔ.
+NumpadAdd::
+Hotkey, If, MouseIsOver("ahk_class Shell_TrayWnd")
+if (doubleup := !doubleup)
+    Hotkey, WheelUp, DoubleUp
+else
+    Hotkey, WheelUp, WheelUp
+return
+
+DoubleUp:
+Send {Volume_Up 2}
+return
+
+ + + diff --git a/src/docs/commands/_IfTimeout.htm b/src/docs/commands/_IfTimeout.htm new file mode 100644 index 0000000..e142d83 --- /dev/null +++ b/src/docs/commands/_IfTimeout.htm @@ -0,0 +1,48 @@ + + + + +#IfTimeout + + + + + + + + +

#IfTimeout [AHK_L 8+]

+ +

#If Ç¥Çö½Ä Çϳª¸¦ Æò°¡ÇÏ´Â µ¥ ¼Ò¸ðµÉ ÃÖ´ë ½Ã°£À» ¼³Á¤ÇÕ´Ï´Ù.

+ +
#IfTimeout Timeout
+

¸Å°³º¯¼ö

+
+ +
Timeout
+

timeout °ªÀº ¹Ð¸®ÃÊ ´ÜÀ§·Î Àü¿ªÀûÀ¸·Î Àû¿ëµË´Ï´Ù.

+ +
+ +

³íÆò

+

+½Ã°£Á¦ÇÑÀº ¿À·§ µ¿¾È ½ÇÇàµÇ´Â Ç¥Çö½Ä ¶§¹®¿¡ Å°º¸µå ÀԷ ó¸®°¡ ÁöüµÇÁö ¾Êµµ·Ï ±¸ÇöµÇ¾î ÀÖ½À´Ï´Ù. ½Ã°£Á¦ÇÑ °ªÀ» ÃÊ°úÇϸé, Ç¥Çö½ÄÀº °è¼Ó Æò°¡¸¦ ÇÏÁö¸¸, Å°º¸µå °¥°í¸®´Â ¸¶Ä¡ ±× Ç¥Çö½ÄÀÌ ÀÌ¹Ì °ÅÁþÀ» µ¹·ÁÁØ °Íó·³ °è¼ÓµË´Ï´Ù.

+

+ÀÌ Áö½Ã¾î¸¦ ½ºÅ©¸³Æ®¿¡ ÁöÁ¤ÇÏÁö ¾ÊÀ¸¸é, ¸¶Ä¡ 1000ÀÌ ¼³Á¤µÇ¾î ÀÖ´Â °Íó·³ ÇàÀ§ÇÕ´Ï´Ù.

+

+½Ã½ºÅÛÀº ÀڽŸ¸ÀÇ ½Ã°£Á¦ÇÑÀÌ ÀÖ´Ù´Â »ç½ÇÀ» ¸í½ÉÇϽʽÿÀ. ´ÙÀ½ ·¹Áö½ºÆ®¸® Å°¿¡ DWORD °ª LowLevelHooksTimeout·Î Á¤ÀǵǾî ÀÖ½À´Ï´Ù:

+ +

HKEY_CURRENT_USER\Control Panel\Desktop

+

+½Ã½ºÅÛ ½Ã°£Á¦ÇÑ °ªÀ» ÃÊ°úÇϸé, ½Ã½ºÅÛÀº ½ºÅ©¸³Æ®ÀÇ Å°º¸µå °¥°í¸® È£ÃâÀ» ÁßÁöÇÕ´Ï´Ù. ±×·¡¼­ ±× °¥°í¸®°¡ Àçµî·ÏµÇ°Å³ª ½ºÅ©¸³Æ®°¡ ÀçÀûÀçµÉ ¶§±îÁö °¥°í¸® ÇÖÅ°µéÀÌ ÀÛµ¿ÇÏÁö ¸øÇÕ´Ï´Ù. ±× °¥°í¸®´Â º¸Åë Àçµî·ÏÇÒ ¼ö ÀÖ½À´Ï´Ù. ¸ðµç ÇÖÅ°¸¦ º¸·ùÇÏ°í Ç®¾îÁÖ¸é µË´Ï´Ù.

+

+ÁÖ¾îÁø ÇÖÅ°¿¡ ¿©·¯ #If º¯ÇüÀÌ µé¾î ÀÖÀ¸¸é, ½Ã°£Á¦ÇÑÀº °¢ º¯Çü¸¶´Ù µ¶¸³ÀûÀ¸·Î Àû¿ëµË´Ï´Ù. ±×·¡¼­, ½Ã½ºÅÛ ½Ã°£Á¦ÇÑÀ» ÃÊ°úÇÒ °¡´É¼ºÀÌ ´õ ³ô¾ÆÁý´Ï´Ù. ÀÌ ÇàÀ§´Â ¾ÕÀ¸·Î ¾÷µ¥ÀÌÆ®µÉ °¡´É¼ºÀÌ ÀÖ½À´Ï´Ù.

+ +

°ü·Ã Ç׸ñ

+

#If

+ +

¿¹Á¦

+
#IfTimeout 10 ; ½Ã°£Á¦ÇÑÀ» 10 ms·Î ¼³Á¤ÇÕ´Ï´Ù.
+ + + diff --git a/src/docs/commands/_IfWinActive.htm b/src/docs/commands/_IfWinActive.htm new file mode 100644 index 0000000..a444075 --- /dev/null +++ b/src/docs/commands/_IfWinActive.htm @@ -0,0 +1,127 @@ + + + + +#IfWinActive / #IfWinExist + + + + + + + +

#IfWinActive / #IfWinExist

+ +

¹®¸Æ-°¨Áö ÇÖÅ°¿Í ÇÖ½ºÆ®¸µÀ» ¸¸µì´Ï´Ù. ±×·± ÇÖÅ°´Â È°¼ºÈ­ µÈ ¶Ç´Â Á¸ÀçÇϴ âÀÇ Á¾·ù¿¡ µû¶ó ´Ù¸¥ Á¶Ä¡¸¦ ¼öÇàÇÕ´Ï´Ù (¶Ç´Â ¾Æ¹«Àϵµ ÇÏÁö ¾Ê½À´Ï´Ù).

+ +
#IfWinActive [, WinTitle, WinText]
+#IfWinExist [, WinTitle, WinText]
+#IfWinNotActive [, WinTitle, WinText]
+#IfWinNotExist [, WinTitle, WinText]
+#If [, Expression]
+ +

¸Å°³º¯¼ö

+
+ +
WinTitle
+

¸ñÇ¥ âÀ» ½Äº°Çϴ â Á¦¸ñ ¶Ç´Â ´Ù¸¥ ±âÁØ. WinTitle ÂüÁ¶.

+

ºÎÇÕÇÏ´Â ÇàÀ§´Â ÀÚµ¿-½ÇÇà ¼½¼Ç¿¡ ¼³Á¤µÈ ´ë·ÎSetTitleMatchMode°¡ °áÁ¤ÇÕ´Ï´Ù.

+

´ëºÎºÐÀÇ ´Ù¸¥ Áö½Ã¾îó·³, º¯¼ö´Â Áö¿øÇÏÁö ¾Ê½À´Ï´Ù. ahk_pid¿Í ahk_id¸¦ Çϵå-ÄÚµåµÈ ÇÁ·Î¼¼½º³ª â ID¿Í ÇÔ²² »ç¿ëÇÒ ¼ö´Â ÀÖÁö¸¸, ´õ ÀϹÝÀûÀÎ °ÍÀº #IfWinÀÌ °£Á¢ÀûÀ¸·Î GroupAdd³ª Hotkey IfWinÀ» ÅëÇÏ¿© »ç¿ëÇÏ´Â °ÍÀÔ´Ï´Ù.

+
+ +
WinText
+

Á¸ÀçÇϸé, ÀÌ ¸Å°³º¯¼ö´Â ¸ñÇ¥ â ÅؽºÆ®ÀÇ ºÎ¹®ÀÚ¿­ÀÔ´Ï´Ù (µ¿ºÀµÈ Window Spy À¯Æ¿¸®Æ¼¿¡ ³ëÃâµÊ). ¼ûÀº ÅؽºÆ®´Â DetectHiddenTextÀÌ ÀÚµ¿-½ÇÇà ¼½¼Ç (½ºÅ©¸³Æ®ÀÌ ÃÖ»ó´Ü)¿¡ ÄÑÁ® ÀÖÀ¸¸é ŽÁöµË´Ï´Ù.

+ +
ExcludeTitle
+ ExcludeText
+

À̰͵éÀº Áö¿øµÇÁö ¾ÊÁö¸¸, WinTitle´ëÇÏ¿© ahk_group MyGroup¸¦ ÁöÁ¤ÇÏ¸é °£Á¢ÀûÀ¸·Î »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù (¿©±â¿¡¼­ MyGroupÀº GroupAdd¸¦ ÅëÇÏ¿© »ý¼ºµÈ ±×·ìÀ̸ç, ÀÌ ±×·ìÀº ExcludeTitle/Text¸¦ Áö¿øÇÕ´Ï´Ù).

+ +
+ +

±âº» ¿¬»ê

+

+#IfWin Áö½Ã¾î·Î ¹®¸Æ °¨Áö ÇÖÅ°¿Í ÇÖ½ºÆ®¸µÀ» ½±°Ô ¸¸µé ¼ö ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î:

+ +
#IfWinActive ahk_class Notepad
+#space::MsgBox ³ëÆ®ÆÐµå ¾È¿¡¼­ Win+Spacebar¸¦ ´­·¶½À´Ï´Ù.
+

+#IfWin Áö½Ã¾î´Â À§Ä¡¿¡ ¹Î°¨ÇÕ´Ï´Ù: ½ºÅ©¸³Æ®¿¡¼­ ¹°¸®ÀûÀ¸·Î ¾Æ·¡¿¡ ÀÖ´Â ¸ðµç ÇÖÅ°¿Í ÇÖ½ºÆ®¸µ¿¡ ¿µÇâÀ» ¹ÌĨ´Ï´Ù. ÀÌ µÑÀº ¶Ç »óÈ£ ¹èŸÀûÀÔ´Ï´Ù; Áï, °¡Àå ÃÖ½ÅÀÇ °Í¸¸ È¿°ú°¡ ÀÖ½À´Ï´Ù.

+

+¹®¸Æ °¨Áö¸¦ ²ô·Á¸é, ¸Å°³º¯¼ö ¾øÀÌ #IfWin Áö½Ã¾î¸¦ ÁöÁ¤ÇϽʽÿÀ. ¿¹¸¦ µé¾î:

+ +
#IfWinActive
+

+#IfWinÀÌ ²¨Á® ÀÖÀ» ¶§ (¶Ç´Â ½ºÅ©¸³Æ®¿¡ ÀüÇô »ç¿ëµÇÁö ¾ÊÀ¸¸ç), ¸ðµç ÇÖÅ°¿Í ÇÖ½ºÆ®¸µÀÌ ¸ðµç â¿¡ ´ëÇÏ¿© È°¼ºÈ­ µË´Ï´Ù (Suspend³ª Hotkey ¸í·É¾î¸¦ ÅëÇÏ¿© ²ø ¼ö ÀÖ½À´Ï´Ù).

+

+¸¶¿ì½º³ª Å°º¸µå ÇÖÅ°°¡ #IfWin¸¦ ÅëÇÏ¿© ²¨Á® ÀÖÀ» ¶§, °íÀ¯ÀÇ ±â´ÉÀ» ¼öÇàÇÕ´Ï´Ù; Áï, ¸¶Ä¡ ±×·± ÇÖÅ°°¡ ÀüÇô ¾ø´Â °Íó·³ È°¼º â¿¡ °Ç³×Áý´Ï´Ù. ÇÑ °¡Áö ¿¹¿Ü°¡ ÀÖ½À´Ï´Ù: Á¶À̽ºÆ½ ÇÖÅ°´Â: #IfWinÀÌ ÀÛµ¿ÇÏ´õ¶óµµ, ´Ù¸¥ ÇÁ·Î±×·¥ÀÌ ¹öÆ° ´©¸§À» º¸´Â °ÍÀ» ¸·Áö ¾Ê½À´Ï´Ù.

+

+#IfWin´Â ¶Ç Á¤»ó Å°ÀÇ ÇàÀ§¸¦ ¸¶Ä¡ ¿£ÅÍÅ°³ª ½ºÆäÀ̽º Űó·³ ¹Ù²Ù´Â µ¥¿¡µµ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. À̴ ƯÁ¤ âÀÌ ±× Å°¸¦ ¹«½ÃÇϰųª ¸¶À½¿¡ ¾Èµå´Â ÇàÀ§¸¦ ¼öÇàÇÒ °æ¿ì À¯¿ëÇÕ´Ï´Ù. ¿¹¸¦ µé¾î:

+
#IfWinActive Reminders ahk_class #32770  ; ¾Æ¿ô·èÀÇ "¾Ë¸®¹Ì" â.
+Enter::Send !o  ; "Enter" Å°´­¸²Àº ¼±ÅÃµÈ ¾Ë¸®¹Ì¸¦ Àç¿ì´Â°Ô ¾Æ´Ï¶ó ¿­¸®µµ·Ï ¸¸µì´Ï´Ù.
+#IfWinActive
+ +

º¯Á¾ (Áߺ¹) ÇÖÅ°

+

+ƯÁ¤ ÇÖÅ°³ª ÇÖ½ºÆ®¸µÀº °¢ Á¤ÀǸ¶´Ù #IfWin ±âÁØÀÌ ´Ù¸£´Ù¸é ½ºÅ©¸³Æ®¿¡ ÇÑ ¹ø ÀÌ»ó Á¤ÀÇÇÒ ¼ö ÀÖ½À´Ï´Ù. ÀÌ°ÍÀ» ÇÖÅ° º¯Á¾À̶ó°í ÇÕ´Ï´Ù. ¿¹¸¦ µé¾î:

+
#IfWinActive ahk_class Notepad
+^!c::MsgBox ³ëÆ®Æе忡¼­ Control+Alt+C¸¦ ´­·¶½À´Ï´Ù.
+#IfWinActive ahk_class WordPadClass
+^!c::MsgBox ¿öµåÆе忡¼­ Control+Alt+C¸¦ ´­·¶½À´Ï´Ù.
+#IfWinActive
+^!c::MsgBox ³ëÆ®Æеå/¿öµåÆе尡 ¾Æ´Ñ â¿¡¼­ Control+Alt+C¸¦ ´­·¶½À´Ï´Ù.
+

+¿©·¯ º¯Á¾ÀÌ ÃË¹ßµÉ ¼ö ÀÖ´Ù¸é, ½ºÅ©¸³Æ®¿¡¼­ Á¦ÀÏ À§ÂÊ¿¡ ÀÖ´Â º¯Á¾¸¸ Ã˹ߵ˴ϴÙ. ¿¹¿Ü°¡ ÀÖ´Ù¸é Àü¿ª º¯Á¾ÀÔ´Ï´Ù (#IfWin ±âÁØÀÌ ÀüÇô ¾ø´Ù¸é): ¾ðÁ¦³ª °¡Àå ¿ì¼± ¼øÀ§°¡ ³·½À´Ï´Ù. ±×·¯¹Ç·Î, °æÀï »ó´ë·Î ´Ù¸¥ º¯Á¾ÀÌ ÀüÇô ¾øÀ» °æ¿ì¿¡¸¸ Ã˹ߵ˴ϴ٠(ÀÌ ¿¹¿Ü´Â ÇÖ½ºÆ®¸µ¿¡ Àû¿ëµÇÁö ¾Ê½À´Ï´Ù).

+

+Áߺ¹ ÇÖÅ°¸¦ ¸¸µé ¶§, ^!+#¿Í °°Àº ¼ö½Ä ½Éº¼ÀÇ ¼ø¼­´Â ¹®Á¦°¡ µÇÁö ¾Ê½À´Ï´Ù. ¿¹¸¦ µé¾î, ^!c´Â !^c¿Í µ¿ÀÏÇÕ´Ï´Ù. ±×·¸Áö¸¸, Å°´Â ÀÏ°ü¼ºÀÌ ÀÖ°Ô Ã¶ÀÚ°¡ µÇ¾î¾ß ÇÕ´Ï´Ù. ¿¹¸¦ µé¾î, ÀÌ·± ¸ñÀûÀ¸·Î Esc´Â Escape¿Í °°Áö ¾Ê½À´Ï´Ù (±×·¸Áö¸¸ ´ë¼Ò¹®ÀÚ´Â ¹®Á¦°¡ µÇÁö ¾Ê½À´Ï´Ù). ¶Ç, ¿ÍÀϵåÄ«µå Á¢µÎ ½Éº¼(*)ÀÌ ÀÖ´Â ÇÖÅ°´Â ¿ÏÀüÈ÷ ºñ-¿ÍÀϵåÄ«µå ÇÖÅ°¿Í ±¸ºÐµË´Ï´Ù; ¿¹¸¦ µé¾î, *F1¿Í F1´Â °¢ÀÚ ÀڽŸ¸ÀÇ º¯Á¾ ÁýÇÕÀÌ ÀÖ½À´Ï´Ù.

+

+°°Àº ÇÖÅ° ¼­ºê·çƾÀ» ¿©·¯ º¯Á¾ÀÌ ½ÇÇàÇϵµ·Ï ¸¸µé·Á¸é, °¡Àå ½¬¿î ¹æ¹ýÀº µ¿ÀÏÇÑ ÇÖÅ°¸¦ ÁÖ¿í ´Ã¾î³õ°í, °¢°¢ #IfWin Áö½Ã¾î¸¦ ´Ù¸£°Ô ¸¸µå´Â °ÍÀÔ´Ï´Ù. ¿¹¸¦ µé¾î:

+
#IfWinActive ahk_class Notepad
+#z::
+#IfWinActive ahk_class WordPadClass
+#z::
+MsgBox ³ëÆ®ÆÐµå ¶Ç´Â ¿öµåÆе忡¼­ Win+Z¸¦ ´­·¶½À´Ï´Ù.
+return
+

+´ë¾ÈÀ¸·Î, #IfWinActive ahk_group MyGroupÀ» ÅëÇÏ¿© â ±×·ìÀ» »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù.

+

+ÇÖÅ° º¯Á¾À» (½ºÅ©¸³Æ®°¡ ½ÇÇàÁßÀÎ µ¿¾È¿¡) µ¿ÀûÀ¸·Î »ý¼ºÇÏ·Á¸é, "Hotkey IfWin"¸¦ ÂüÁ¶ÇϽʽÿÀ.

+ +

ÃÑÆò

+

+#IfWin´Â ¶Ç ÀûÀýÇÒ ¶§ Á¢µÎ Å°¸¦ ÀÚ½ÅÀÇ °íÀ¯ ±â´ÉÀ¸·Î º¹±¸ÇÕ´Ï´Ù (Á¢µÎ Å°´Â "a & b"¿Í °°ÀÌ ÇÖÅ° ¾È¿¡ ÀÖ´Â "a" Å°ÀÔ´Ï´Ù). +ÁÖ¾îÁø Á¢µÎ ½Éº¼¿¡ ´ëÇÏ¿© È°¼ºÈ­µÈ ÇÖÅ°°¡ ÀüÇô ¾øÀ» ¶§¸¶´Ù ÀÌ·± ÀÏÀÌ ÀϾ´Ï´Ù.

+

+Gosub³ª Goto¸¦ »ç¿ëÇÏ¿© ÇÖÅ°³ª ÇÖ½ºÆ®¸µ ¶óº§¿¡ Á¡ÇÁÇÒ ¶§, ½ºÅ©¸³Æ® »ó´Ü¿¡ °¡±î¿î º¯Á¾À¸·Î Á¡ÇÁÇÕ´Ï´Ù.

+

+ÇÖÅ°°¡ ÇöÀç #IfWinÀ» ÅëÇÏ¿© ²¨Á® ÀÖÀ¸¸é, ±×ÀÇ Å°³ª ¸¶¿ì½º ¹öÆ°Àº "#" ¹®ÀÚ¿Í ÇÔ²² KeyHistoryÀÇ "Type" Ä÷³¿¡ ³ªÅ¸³³´Ï´Ù. ÀÌ´Â ½ºÅ©¸³Æ® µð¹ö±ë¿¡ µµ¿òÀÌ µË´Ï´Ù.

+

+%Var%¿Í °°Àº º¯¼ö ÂüÁ¶´Â ÇöÀç Áö¿øÇÏÁö ¾Ê½À´Ï´Ù. ±×·¯¹Ç·Î, ÆÛ¼¾Æ® »çÀÎÀº `%¸¦ ÅëÇÏ¿© ÇǽŽÃÄÑ¾ß ÇÕ´Ï´Ù. ¾ÕÀ¸·Î´Â Áö¿øÇÒ °¡´É¼ºÀÌ ÀÖ½À´Ï´Ù. ºñ½ÁÇÏ°Ô, (`,¸¦ ÅëÇÏ¿©) ±ÛÀÚ ±×´ë·ÎÀÇ ½°Ç¥µµ ÇǽŽÃÄÑ¾ß ÇÕ´Ï´Ù. Ãß°¡ ¸Å°³º¯¼ö°¡ ¹Ì·¡¿¡ Ãß°¡µÉ °¡´É¼ºÀÌ ÀÖ½À´Ï´Ù. ÀÌ ÇѰ踦 ¿ìȸÇÒ ÇÊ¿ä°¡ ÀÖ´Ù¸é, GroupAdd¿Í ahk_group¸¦ »ç¿ëÇϽʽÿÀ.

+

+Hotkey ¸í·É¾î°¡ ÇÖÅ°¿¡ ÇÒ´çÇÑ ¶óº§Àº #IfWin¿¡ Á÷Á¢ÀûÀ¸·Î ¿µÇâÀ» ¹ÞÁö´Â ¾Ê½À´Ï´Ù. ´ë½Å¿¡, #IfWin¸¦ ½ºÅ©¸³Æ® »ó´Ü¿¡ °¡±õ°Ô »ç¿ëÇϸé Hotkey ¸í·É¾î°¡ »ý¼ºÇÑ ¸ðµç ÇÖÅ°¿¡ ¿µÇâÀ» ÁÝ´Ï´Ù (´Ü "Hotkey IfWin"°¡ »ç¿ëµÇ¾î ±×°ÍÀ» ¹Ù²ÙÁö ¾Ê¾Ò¾î¾ß ÇÕ´Ï´Ù).

+

+¾ËÆ®-ÅÇ ÇÖÅ°´Â #IfWin¿¡ ¿µÇâÀ» ¹ÞÁö ¾Ê½À´Ï´Ù: ¿ÀÈ÷·Á ¸ðµç â¿¡ È¿°ú°¡ ÀÖ½À´Ï´Ù.

+

+¸¶Áö¸· ¹ß°ß âÀºÀÌ #IfWinActive/ExistÀÌ ¼³Á¤ÇÕ´Ï´Ù (±×·¸Áö¸¸ #IfWinNotActive/NotExist·Î´Â ¼³Á¤µÇÁö ¾Ê½À´Ï´Ù). ¿¹¸¦ µé¾î:

+ +
#IfWinExist ahk_class Notepad
+#n::WinActivate  ; #IfWinÀÌ ¹ß°ßÇÑ Ã¢À» È°¼ºÈ­ÇÕ´Ï´Ù.
+

+#IfWinÀÇ ¸Å°³º¯¼ö Áß Çϳª¿¡ ¼±µÎ ¶Ç´Â ÈĹÌÀÇ ½ºÆäÀ̽º/ÅÇÀÌ ÇÊ¿äÇϸé, ÇǽŠ¿¬¼Ó¿­ `s¿Í `t¸¦ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù.

+

+¼öÇ༺´ÉÀÇ ÀÌÀ¯·Î, #IfWin´Â ÁöÁ¤µÈ âÀÇ Á¸À糪 È°¼ºÈ­¸¦ Ç×»ó °üÁ¦ÇÏÁö´Â ¾Ê½À´Ï´Ù. ´ë½Å¿¡, ÇÖÅ°³ª ÇÖ½ºÆ®¸µÀ» ŸÀÚÇÒ ¶§¸¸ ºÎÇÕÇϴ âÀÌ ÀÖ´ÂÁö Á¡°ËÇÕ´Ï´Ù. ºÎÇÕÇϴ âÀÌ Á¸ÀçÇÏÁö ¾ÊÀ¸¸é, Å°´­¸²À̳ª ¸¶¿ì½º Ŭ¸¯Àº È°¼º â ¾ÈÀ¸·Î ±×´ë·Î Åë°ú½Ãŵ´Ï´Ù.

+

+â Á¦¸ñ°ú ÅؽºÆ®´Â ´ë¼Ò¹®ÀÚ¸¦ ±¸ºÐÇÕ´Ï´Ù. ¼ûÀº âÀº DetectHiddenWindowsÀÌ (½ºÅ©¸³Æ® »ó´Ü) ÀÚµ¿ ½ÇÇà ¼½¼Ç¿¡¼­ ÄÑÁ³´Ù¸é ŽÁöµË´Ï´Ù .

+ +

°ü·Ã Ç׸ñ

+

#If Ç¥Çö½Ä, Hotkey ¸í·É¾î, Hotkeys, Hotstrings, Suspend, IfWinActive, IfWinExist, SetTitleMatchMode, DetectHiddenWindows

+ +

¿¹Á¦

+
#IfWinActive ahk_class Notepad
+^!a::MsgBox ³ëÆ®Æе尡 È°¼ºÈ­µÇ¾î ÀÖ´Â µ¿¾È Ctrl-Alt-A¸¦ ´­·¶½À´Ï´Ù.  ; ÀÌ ÇÖÅ°´Â ´Ù¸¥ â¿¡ ´­·ÁºÁ¾ß ¾Æ¹« È¿°úµµ ¾ø½À´Ï´Ù (±×´ë·Î "Åë°ú ½Ãŵ´Ï´Ù").
+#c::MsgBox ³ëÆ®Æе尡 È°¼ºÈ­µÇ¾î ÀÖ´Â µ¿¾È Win-C¸¦ ´­·¶½À´Ï´Ù.
+::btw:³ëÆ®Æе忡 ÀÖ´Â µ¿¾È¿¡¸¸ :"btw"¿¡ ´ëÇÏ¿© ÀÌ ÅؽºÆ®·Î ±³Ã¼µË´Ï´Ù.
+#IfWinActive
+#c::MsgBox ³ëÆ®Æе尡 ¾Æ´Ñ â¿¡¼­ Win-C¸¦ ´­·¶½À´Ï´Ù.
+ + + diff --git a/src/docs/commands/_Include.htm b/src/docs/commands/_Include.htm new file mode 100644 index 0000000..399ee2a --- /dev/null +++ b/src/docs/commands/_Include.htm @@ -0,0 +1,63 @@ + + + + +#Include + + + + + + + +

#Include / #IncludeAgain

+ +

½ºÅ©¸³Æ®´Â ¸¶Ä¡ ÁöÁ¤µÈ ÆÄÀÏÀÇ ³»¿ëÀÌ Á¤È®ÇÏ°Ô ÀÌ À§Ä¡¿¡ Á¸ÀçÇÏ´Â °Íó·³ ÇàÀ§ÇÕ´Ï´Ù.

+ +
#Include FileOrDirName
+#Include <LibName>
+#IncludeAgain FileOrDirName
+

¸Å°³º¯¼ö

+
+ +
FileOrDirName
+

¾Æ·¡¿¡ ±â¼úÇÏ´Â ¹Ù¿Í °°ÀÌ ÆÄÀÏÀ̳ª µð·ºÅ丮ÀÇ °æ·Î. °ãµû¿ÈÇ¥³ª ¿ÍÀϵåÄ«µå ¶Ç´Â º¯¼ö ÂüÁ¶°¡ Æ÷ÇÔµÇ¸é ¾ÈµË´Ï´Ù. ´Ü %A_ScriptDir%, %A_AppData%, %A_AppDataCommon% ±×¸®°í (v1.1.11+ Àü¿ë) %A_LineFile%¿Í °°Àº º¯¼ö ÂüÁ¶´Â Á¦¿ÜÇÕ´Ï´Ù. ÇǽŠ¿¬¼Ó¿­Àº ½ÖÁ¡ (`;)À» Á¦¿ÜÇÏ°í »ç¿ëÇÏ¸é ¾ÈµË´Ï´Ù. ÆÛ¼¾Æ® ±âÈ£ °°Àº ¹®ÀÚµéÀ» ¹®ÀÚ ±×´ë·Î Ãë±ÞÇϱ⠶§¹®¿¡ ÇÊ¿äÇÏÁöµµ ¾Ê½À´Ï´Ù.

+

+ File: »ðÀ﵃ ÆÄÀÏÀÇ À̸§.. Àý´ë °æ·Î¸¦ ÁöÁ¤ÇÏÁö ¾ÊÀ¸¸é ±âµ¿/ÀÛ¾÷ µð·ºÅ丮¿¡ ÀÖ´Ù°í °£ÁÖÇÕ´Ï´Ù (ahk2exe´Â Á¦¿ÜÇÕ´Ï´Ù. ÆÄÀÏÀÌ ½ºÅ©¸³Æ®ÀÇ µð·ºÅ丮¿¡ ÀÖ´Ù°í °£ÁÖÇÕ´Ï´Ù). ÁÖÀÇ: SetWorkingDir´Â #Include¿¡ ¿µÇâÀ» ÁÖÁö ¾Ê½À´Ï´Ù. ¿Ö³ÄÇϸé #Include¸¦ ó¸® ÇÑ ÈÄ¿¡ ½ºÅ©¸³Æ®°¡ ½ÇÇàÀ» ½ÃÀÛÇϱ⠶§¹®ÀÔ´Ï´Ù.

+

+ Directory: ÆÄÀÏ ´ë½Å¿¡ µð·ºÅ丮¸¦ ÁöÁ¤ÇÏ¿© ÀÛ¾÷ µð·ºÅ丮¸¦ º¯°æÇÕ´Ï´Ù. ÀÌ¾î ³ªÅ¸³ª´Â ¸ðµç #Include ±×¸®°í FileInstallÀÌ ÀÌ µð·ºÅ丮¸¦ »ç¿ëÇÕ´Ï´Ù. ÁÖÀÇ: ÀÌ·± ½ÄÀ¸·Î ÀÛ¾÷ µð·ºÅ丮¸¦ º¯°æÇÏ´õ¶óµµ ½ºÅ©¸³Æ®°¡ ½ÇÇàÀ» ½ÃÀÛÇÒ ¶§ÀÇ ÃÖÃÊ ÀÛ¾÷ µð·ºÅ丮¿¡´Â ¿µÇâÀ» ¹ÌÄ¡Áö ¾Ê½À´Ï´Ù (A_WorkingDir). À̸¦ ¹Ù²Ù·Á¸é ½ºÅ©¸³Æ®ÀÇ »ó´Ü¿¡¼­ SetWorkingDirÀ» ÁöÁ¤ÇϽʽÿÀ.

+ +
LibName
+

[AHK_L 57+]: ¶óÀ̺귯¸® ÆÄÀÏÀ̳ª ÇÔ¼ö À̸§. ¿¹¸¦ µé¾î, #include <lib> ±×¸®°í #include <lib_func>´Â µÑ ´Ù ÇÔ¼ö ¶óÀ̺귯¸® Æú´õ Áß Çϳª·ÎºÎÅÍ lib.ahkÀ» Æ÷ÇÔÇÕ´Ï´Ù.

+ +
+

³íÆò

+

+½ºÅ©¸³Æ®´Â ¸¶Ä¡ Æ÷ÇÔµÈ ÆÄÀÏÀÇ ³»¿ëÀÌ (¸¶Ä¡ º¹»çÇØ ºÙ¿© ³Ö±â ÇÑ °Íó·³) ¹°¸®ÀûÀ¸·Î Á¤È®ÇÏ°Ô #Include Áö½Ã¾îÀÇ À§Ä¡¿¡ Á¸ÀçÇÏ´Â °Íó·³ ÇàÀ§ÇÕ´Ï´Ù. °á°úÀûÀ¸·Î, µÎ °³ÀÇ ºÐ¸®µÈ ½ºÅ©¸³Æ®¸¦ Çϳª·Î ±â´ÉÇÏ´Â ½ºÅ©¸³Æ®·Î º´ÇÕÇÒ ¼ö ¾ø½À´Ï´Ù (±×·¸°Ô ÇÏ·Á¸é, www.autohotkey.com/forum/topic18545.html¸¦ ÂüÁ¶ÇϽʽÿÀ).

+

#Include´Â FileNameÀ» ¿©·¯ ¹ø Æ÷ÇÔ½ÃÄѵµ ¿ÀÁ÷ ÇÑ ¹ø¸¸ Æ÷ÇԵȴٰí È®ÀÎÇØ ÁÝ´Ï´Ù. ´ëÁ¶ÀûÀ¸·Î, #IncludeAgainÀº °°Àº ÆÄÀÏÀ» ¿©·¯ ¹ø Æ÷ÇÔÇÒ ¼ö ÀÖ½À´Ï´Ù. ÇÏÁö¸¸ ¸ðµç ¸é¿¡¼­ #Include¿Í ¶È °°½À´Ï´Ù.

+

+FileName ¸Å°³º¯¼ö´Â ¼±ÅÃÀûÀ¸·Î ¾Õ¿¡ *i¿Í ÇϳªÀÇ ½ºÆäÀ̽º¸¦ µÑ ¼ö ÀÖ½À´Ï´Ù. ±×·¯¸é ÇÁ·Î±×·¥Àº Æ÷ÇÔµÈ ÆÄÀÏÀ» Àдµ¥ ½ÇÆÐÇÏ´õ¶óµµ ¹«½ÃÇÕ´Ï´Ù. ¿¹¸¦ µé¾î: #Include *i SpecialOptions.ahk. ÀÌ ¿É¼ÇÀº Æ÷ÇÔµÈ ÆÄÀÏÀÇ ³»¿ëÀÌ ¸ÞÀÎ ½ºÅ©¸³Æ®ÀÇ ¿¬»ê¿¡ º°·Î Áß¿äÇÏÁö ¾ÊÀ» °æ¿ì¿¡¸¸ »ç¿ëÇØ¾ß ÇÕ´Ï´Ù.

+

+¸ÞÀΠâ¿¡ ListLinesÀ̳ª View->Lines ¸Þ´º¸¦ ÅëÇÏ¿© º¸¿©Áö´Â ÁÙµéÀº ¾ðÁ¦³ª ÀÚ½ÅÀÇ ÆÄÀÏ ¾È¿¡¼­ ¹°¸®Àû ¼ø¼­¿¡ ¸Â°Ô ¹øÈ£°¡ ¸Å°ÜÁý´Ï´Ù. ´Ù¸¥ ¸»·Î, »õ ÆÄÀÏÀ» Æ÷ÇÔÇÏ¸é ¸ÞÀÎ ½ºÅ©¸³Æ®ÀÇ ÆÄÀÏÀÇ ÁÙ ¹øÈ£°¡ ÇÑ ÁÙ ¸¸Å­¸¸ º¯°æµË´Ï´Ù. Áï, #Include ÁÙ ÀÚü ¸¸Å­ º¯°æµË´Ï´Ù (ÄÄÆÄÀÏµÈ ½ºÅ©¸³Æ®´Â Á¦¿ÜÇÕ´Ï´Ù. Æ÷ÇÔ ÆÄÀÏÀ» ÇϳªÀÇ °Å´ëÇÑ ½ºÅ©¸³Æ®·Î ÄÄÆÄÀÏ ½Ã°£¿¡ º´ÇÕÇϱ⠶§¹®ÀÔ´Ï´Ù).

+

+#Include´Â Á¾Á¾ ¿ÜºÎ ÆÄÀÏ¿¡ Á¤ÀÇµÈ ÇÔ¼ö¸¦ ÀûÀçÇÏ´Â µ¥ »ç¿ëµË´Ï´Ù. ¼­ºê·çƾÀÇ ¶óº§°ú ´Ù¸£°Ô, ÇÔ¼ö´Â ÀÚµ¿-½ÇÇà ¼½¼Ç¿¡ ¿µÇâÀ» ÁÖÁö ¾Ê°í ½ºÅ©¸³Æ® ¸Ç ²À´ë±â¿¡ Æ÷ÇÔÇÒ ¼ö ÀÖ½À´Ï´Ù.

+

+´Ù¸¥ # Áö½Ã¾îó·³, #Include´Â Á¶°ÇÀûÀ¸·Î ½ÇÇàÇÒ ¼ö ¾ø½À´Ï´Ù. ´Ù¸¥ ¸»·Î, ´ÙÀ½ ¿¹Á¦´Â ÀÛµ¿ÇÏÁö ¾Ê½À´Ï´Ù:

+
if x = 1
+    #Include SomeFile.ahk  ; ÀÌ ÁÙÀº xÀÇ °ª¿¡ °ü°è ¾øÀÌ È¿°ú°¡ ÀÖ½À´Ï´Ù.
+    y = 2  ; ±×¸®°í ÀÌ ÁÙÀº À§ÀÇ IF¿¡ ¼ÓÇÕ´Ï´Ù. ¿Ö³ÄÇϸé # Áö½Ã¾î´Â  IF¿¡ ¼ÓÇÒ ¼ö ¾ø±â ¶§¹®ÀÔ´Ï´Ù.
+

+À̸§À¸·Î ¶óÀ̺귯¸® ÇÔ¼ö¸¦ È£ÃâÇϸé ÆÄÀÏÀ» ÀÚµ¿À¸·Î Æ÷ÇÔÇÒ ¼ö ÀÖ½À´Ï´Ù (Áï, #Include¸¦ »ç¿ëÇÒ ÇÊ¿ä°¡ ¾ø½À´Ï´Ù).

+

+[v1.1.11+]: %A_LineFile%\..¸¦ »ç¿ëÇϸé ÇöÀç ÆÄÀÏÀÌ ´ã±ä µð·ºÅ丮¸¦ ÂüÁ¶ÇÒ ¼ö ÀÖ½À´Ï´Ù. ¸ÞÀÎ ½ºÅ©¸³Æ® ÆÄÀÏÀÌ ¾Æ´Ï´õ¶óµµ »ó°üÀÌ ¾ø½À´Ï´Ù. ¿¹¸¦ µé¾î, #Include %A_LineFile%\..\other.ahk.

+ +

°ü·Ã Ç׸ñ

+

¶óÀ̺귯¸® ÇÔ¼ö, Functions, FileInstall

+ +

¿¹Á¦

+
#Include C:\My Documents\Scripts\Utility Subroutines.ahk
+#Include %A_ScriptDir%  ; ´ÙÀ½¿¡ ¿À´Â #Includes°ú FileInstallsÀ» À§ÇØÀÛ¾÷ µð·ºÅ丮¸¦ º¯°æÇÕ´Ï´Ù.
+#Include C:\My Scripts  ; À§¿Í °°Áö¸¸ ¸í½ÃÀûÀ¸·Î À̸§À» ÁöÁ¤ÇÑ µð·ºÅ丮¸¦ À§ÇØ º¯°æÇÕ´Ï´Ù.
+ + + diff --git a/src/docs/commands/_InputLevel.htm b/src/docs/commands/_InputLevel.htm new file mode 100644 index 0000000..d4c77d7 --- /dev/null +++ b/src/docs/commands/_InputLevel.htm @@ -0,0 +1,49 @@ + + + + +#InputLevel + + + + + + + +

#InputLevel [v1.1.06+]

+

ÇÖÅ°¿Í ÇÖ½ºÆ®¸µÀÌ ¹«½ÃÇÏ´Â ÀÎÀ§ÀûÀÎ Å°´­¸²°ú ¸¶¿ì½º À̺¥Æ®¸¦ Á¦¾îÇÕ´Ï´Ù.

+
#InputLevel [, Level]
+ +

¸Å°³º¯¼ö

+
+ +
Level
+

0°ú 100 »çÀÌÀÇ Á¤¼ö°ª. »ý·«Çϸé, ±âº»°ªÀº 0ÀÔ´Ï´Ù.

+ +
+ +

ÃÑÆò

+

+SendLevel°ú #InputLevelÀÇ ÀÛµ¿ ¹æ½Ä¿¡ ´ëÇÑ ¼³¸íÀº SendLevelÀ» ÂüÁ¶ÇϽʽÿÀ.

+

ÀÌ Áö½Ã¾î´Â À§Ä¡¿¡ ¹Î°¨ÇÕ´Ï´Ù: ´ÙÀ½ #InputLevel Áö½Ã¾î°¡ ³ªÅ¸³¯ ¶§±îÁö ¸ðµç ÇÖÅ°¿Í ÇÖÆ®¸µ¿¡ ¿µÇâÀ» ÁÝ´Ï´Ù. #InputLevel Áö½Ã¾î°¡ ¼³Á¤µÇ¾î ÀÖÁö ¾ÊÀ¸¸é, ÇÖÅ°¿Í ÇÖ½ºÆ®¸µÀº ±âº»°ªÀÌ 0ÀÔ´Ï´Ù.

+

+ÇÖÅ° ¶Ç´Â ºñ-ÀÚµ¿-±³Ã¼ ÇÖ½ºÆ®¸µÀÇ ·¹º§Àº ÀÚ½ÅÀÌ »ý»êÇÑ Å°´­¸²À̳ª ¹öÆ° Ŭ¸¯¿¡ ´ëÇÏ¿© ±âº» Àü¼Û ·¹º§·Îµµ »ç¿ëµË´Ï´Ù. + +Å°º¸µå³ª ¸¶¿ì½º ¸®¸ÊÇÎÀº ½ÇÁ¦·Î´Â ÇÑ ½ÖÀÇ ÇÖÅ°À̹ǷÎ, #InputLevelÀ» »ç¿ëÇÏ¸é ¸®¸ÊÇÎÀÌ ´Ù¸¥ ÇÖÅ°¸¦ Ã˹߽Ãų ¼ö ÀÖ½À´Ï´Ù.

+

+v1.1.06 ÀÌÀü ¹öÀüÀº #InputLevel 0ÀÎ °Íó·³ ±×¸®°í SendLevel 0ÀÇ È¿°ú°¡ ÀÖ´Â °Íó·³ ÇàÀ§ÇÕ´Ï´Ù.

+ +

°ü·Ã Ç׸ñ

+

SendLevel, ÇÖÅ°, ÇÖ½ºÆ®¸µ

+ +

¿¹Á¦

+
+#InputLevel 1
+Numpad0::LButton
+#InputLevel 0
+; ÀÌ ÇÖÅ°´Â Numpad0¿Í LButtonÀÌ ¸ðµÎ Ã˹ßÇÒ ¼ö ÀÖ½À´Ï´Ù:
+~LButton::Msgbox Clicked
+
+ + + diff --git a/src/docs/commands/_InstallKeybdHook.htm b/src/docs/commands/_InstallKeybdHook.htm new file mode 100644 index 0000000..3f78048 --- /dev/null +++ b/src/docs/commands/_InstallKeybdHook.htm @@ -0,0 +1,42 @@ + + + + +#InstallKeybdHook + + + + + + + +

#InstallKeybdHook

+ +

Å°º¸µå °¥°í¸®¸¦ ¹«Á¶°Ç °­Á¦·Î ¼³Ä¡ÇÕ´Ï´Ù.

+ +
#InstallKeybdHook
+ +

Remarks

+

+Å°º¸µå °¥°í¸®´Â (¿î¿µÃ¼Á¦¿¡ ³»ÀåµÇ¾î ÀÖ´Â ÇÔ¼öÀÎ) RegisterHotkey°¡ Áö¿øÇÏÁö ¾Ê´Â ÇÖ½ºÆ®¸µ°ú Å°º¸µå ÇÖÅ°¸¦ È°¼ºÈ­Çϱâ À§ÇÑ ¸ñÀûÀ¸·Î Å°´­¸²À» °üÁ¦ÇÕ´Ï´Ù. ¶ÇÇÑ Input ¸í·É¾î¿Í °°ÀÌ ¸î °¡Áö ´Ù¸¥ Ư¡µµ Áö¿øÇÕ´Ï´Ù.

+

+¿ÀÅäÇÖÅ°´Â Å°º¸µå °¥°í¸®¿Í ¸¶¿ì½º °¥°í¸®¸¦ ¹«Á¶°Ç ¼³Ä¡ÇÏÁö´Â ¾Ê½À´Ï´Ù. ¿Ö³ÄÇÏ¸é ±× µÑÀ̼­ Àû¾îµµ 500 KBÀÇ ¸Þ¸ð¸®¸¦ ¼ÒºñÇϱ⠶§¹®ÀÔ´Ï´Ù. ±×·¯¹Ç·Î, Å°º¸µå °¥°í¸®´Â º¸Åë ½ºÅ©¸³Æ®¿¡ ´ÙÀ½°ú °°Àº °ÍÀÌ Æ÷ÇԵǾî ÀÖÀ» °æ¿ì¿¡¸¸ ¼³Ä¡µË´Ï´Ù: +

    +
  1. ÇÖ½ºÆ®¸µ; +
  2. Å°º¸µå °¥°í¸®¸¦ ¿ä±¸ÇÏ´Â (´ëºÎºÐÀº ±×·¸Áö ¾ÊÀ½) Çϳª ÀÌ»óÀÇ ÇÖÅ°; +
  3. SetCaps/Scroll/Numlock AlwaysOn/AlwaysOff; +
  4. Input ¸í·É¾î, ½ÇÁ¦·Î óÀ½ »ç¿ëµÉ ¶§ °¥°í¸®°¡ ¼³Ä¡µË´Ï´Ù.

    +
+

+´ëÁ¶ÀûÀ¸·Î, #InstallKeybdHook Áö½Ã¾î´Â ¹«Á¶°Ç Å°º¸µå °¥°í¸®¸¦ ¼³Ä¡ÇÕ´Ï´Ù. KeyHistory°¡ ¸¶Áö¸· 20 °³ÀÇ Å°´­¸²À» º¸¿©Áְųª (µð¹ö±ë ¸ñÀûÀ¸·Î), ¶Ç´Â #HotkeyModifierTimeout°¡ ÇÊ¿ä¾øµµ·Ï ȸÇÇÇÒ ¶§ À¯¿ëÇÕ´Ï´Ù.

+

+½ºÅ©¸³Æ®°¡ °¥°í¸®¸¦ »ç¿ë ÁßÀÎÁö ¿©ºÎ´Â KeyHistory ¸í·É¾î ¶Ç´Â ¸Þ´º Ç׸ñÀ» ÅëÇÏ¿© ¾Ë ¼ö ÀÖ½À´Ï´Ù. ¾î´À ÇÖÅ°°¡ °¥°í¸®¸¦ »ç¿ëÇÏ´ÂÁö´Â ListHotkeys ¸í·É¾î³ª ¸Þ´º Ç׸ñÀ» ÅëÇÏ¿© ¾Ë ¼ö ÀÖ½À´Ï´Ù.

+

+ÀÌ Áö½Ã¾î´Â ¶ÇÇÑ ½ºÅ©¸³Æ®¸¦ ¿µ¼ÓÀûÀ¸·Î ¸¸µì´Ï´Ù. Áï, Á¾·áÇÏ·Á¸é ExitApp¸¦ »ç¿ëÇØ¾ß ÇÑ´Ù´Â ¶æÀÔ´Ï´Ù.

+

°ü·Ã Ç׸ñ

+

#InstallMouseHook, #UseHook, ÇÖÅ°, Input, #Persistent, Å°È÷½ºÅ丮, ÇÖ½ºÆ®¸µ, GetKeyState, KeyWait

+

¿¹Á¦

+
#InstallKeybdHook
+ + + diff --git a/src/docs/commands/_InstallMouseHook.htm b/src/docs/commands/_InstallMouseHook.htm new file mode 100644 index 0000000..65d06ba --- /dev/null +++ b/src/docs/commands/_InstallMouseHook.htm @@ -0,0 +1,38 @@ + + + + +#InstallMouseHook + + + + + + + +

#InstallMouseHook

+ +

¸¶¿ì½º °¥°í¸®¸¦ ¹«Á¶°Ç °­Á¦·Î ¼³Ä¡ÇÕ´Ï´Ù.

+ +
#InstallMouseHook
+ +

³íÆò

+

+¸¶¿ì½º °¥°í¸®´Â ¸¶¿ì½º ÇÖÅ°¸¦ È°¼ºÈ­ÇÏ°í ÇÖ½ºÆ®¸µÀ» Ã˹߽ÃÅ°±â À§ÇÑ ¸ñÀûÀ¸·Î ¸¶¿ì½º Ŭ¸¯À» °üÁ¦ÇÕ´Ï´Ù.

+

+¿ÀÅäÇÖÅ°´Â Å°º¸µå °¥°í¸®¿Í ¸¶¿ì½º °¥°í¸®¸¦ ¹«Á¶°Ç ¼³Ä¡ÇÏÁö´Â ¾Ê½À´Ï´Ù. ¿Ö³ÄÇÏ¸é ±× µÑÀÌ Àû¾îµµ 500 KBÀÇ ¸Þ¸ð¸®¸¦ ¼ÒºñÇϱ⠶§¹®ÀÔ´Ï´Ù (±×·¯³ª Å°º¸µå °¥°í¸®°¡ ¼³Ä¡µÇ¾î ÀÖ´Ù¸é, ¸¶¿ì½º °¥°í¸®´Â °Ü¿ì 50 KBÀÇ Ãß°¡ ¸Þ¸ð¸®¸¦ ¿ä±¸ÇÒ »ÓÀÔ´Ï´Ù; ±×¸®°í ±× ¹Ý´ëµµ ¸¶Âù°¡ÁöÀÔ´Ï´Ù). ±×·¯¹Ç·Î, ¸¶¿ì½º °¥°í¸®´Â ½ºÅ©¸³Æ®¿¡ Çϳª ÀÌ»óÀÇ ¸¶¿ì½º ÇÖÅ°°¡ µé¾î ÀÖÀ» °æ¿ì¿¡¸¸ ¼³Ä¡µË´Ï´Ù. ÇÖ½ºÆ®¸µ¿¡ ´ëÇؼ­µµ ¼³Ä¡°¡ µÇÁö¸¸, ±×°ÍÀº #Hotstring NoMouse¸¦ ÅëÇÏ¿© ºñÈ°¼ºÈ­ÇÒ ¼ö ÀÖ½À´Ï´Ù.

+

+´ëÁ¶ÀûÀ¸·Î, #InstallMouseHook Áö½Ã¾î´Â ¹«Á¶°Ç ¸¶¿ì½º °¥°í¸®¸¦ ¼³Ä¡ÇÕ´Ï´Ù. KeyHistory°¡ ¸¶¿ì½º Ŭ¸¯À» °üÁ¦ÇØ¾ß ÇÒ °æ¿ì¿¡ À¯¿ëÇÕ´Ï´Ù.

+

+½ºÅ©¸³Æ®°¡ °¥°í¸®¸¦ »ç¿ëÇÏ´ÂÁö KeyHistory³ª ¸Þ´º¸¦ ÅëÇÏ¿© ¾Ë ¼ö ÀÖ½À´Ï´Ù. ¾î´À ÇÖÅ°°¡ °¥°í¸®¸¦ »ç¿ëÇÏ´ÂÁö´Â ListHotkeys ¸í·É¾î³ª ¸Þ´º¸¦ ÅëÇÏ¿© ¾Ë ¼ö ÀÖ½À´Ï´Ù.

+

+ÀÌ Áö½Ã¾î´Â ¶ÇÇÑ ½ºÅ©¸³Æ®¸¦ ¿µ¼ÓÀûÀ¸·Î ¸¸µì´Ï´Ù. Á¾·áÇÏ·Á¸é ExitApp¸¦ »ç¿ëÇØ¾ß ÇÑ´Ù´Â ¶æÀÔ´Ï´Ù.

+ +

°ü·Ã Ç׸ñ

+

+#InstallKeybdHook, #UseHook, ÇÖÅ°, #Persistent, KeyHistory, GetKeyState, KeyWait

+

¿¹Á¦

+
#InstallMouseHook
+ + + diff --git a/src/docs/commands/_KeyHistory.htm b/src/docs/commands/_KeyHistory.htm new file mode 100644 index 0000000..56d43d2 --- /dev/null +++ b/src/docs/commands/_KeyHistory.htm @@ -0,0 +1,38 @@ + + + + +#KeyHistory + + + + + + + +

#KeyHistory

+ +

KeyHistory â¿¡ º¸¿©Áö´Â Å°º¸µå¿Í ¸¶¿ì½º À̺¥Æ®ÀÇ ÃÖ´ë °³¼ö¸¦ ¼³Á¤ÇÕ´Ï´Ù. 0À» ¼³Á¤Çϸé Å° ÀÌ·ÂÀÌ ²¨Áý´Ï´Ù.

+ +
#KeyHistory MaxEvents
+

¸Å°³º¯¼ö

+
+ +
MaxEvents
+
KeyHistory â¿¡ º¸¿©Áö´Â Å°º¸µå¿Í ¸¶¿ì½º À̺¥Æ®ÀÇ ÃÖ´ë °³¼ö (±âº»°ªÀº 40ÀÌ°í, ÃÖ´ë´Â 500). 0À» ÁöÁ¤Çϸé Å° ÀÌ·ÂÀÌ ¿ÏÀüÈ÷ ²¨Áý´Ï´Ù.

+ +
+

³íÆò

+

+ÀÌ ¼³Á¤Àº ½ºÅ©¸³Æ®°¡ ½ÇÇàÀ» ½ÃÀÛÇϱâ Àü¿¡ È¿°ú¸¦ ³»±â ¶§¹®¿¡, (½ºÅ©¸³Æ® ¾î´À °÷¿¡¼­³ª) ÇÑ ¹ø¸¸ ÁöÁ¤ÇÏ¸é µË´Ï´Ù.

+

+°¢ Å°´­¸²°ú ¸¶¿ì½º Ŭ¸¯Àº ´Ù¿î-À̺¥Æ®¿Í ¾÷-À̺¥Æ®·Î ±¸¼ºµÇ±â ¶§¹®¿¡, KeyHistory´Â "¿ÏÀüÇÑ À̺¥Æ®"ÀÇ ¹ÝÂʸ¸ ÁöÁ¤µÈ °¹¼ö¸¸Å­ º¸¿©ÁÝ´Ï´Ù. +¿¹¸¦ µé¾î, ½ºÅ©¸³Æ®¿¡ #KeyHistory 50ÀÌ µé¾î ÀÖ´Ù¸é, Å°´­¸²°ú ¸¶¿ì½º Ŭ¸¯À» 25 °³±îÁö º¸¿©ÁÝ´Ï´Ù

+

°ü·Ã Ç׸ñ

+

KeyHistory, #NoTrayIcon

+

¿¹Á¦

+
#KeyHistory 0    ; Å° ÀÌ·ÂÀ» ²ü´Ï´Ù.
+#KeyHistory 100  ; 100 °³ÀÇ À̺¥Æ®±îÁö ÀúÀåÇÕ´Ï´Ù.
+ + + diff --git a/src/docs/commands/_MaxHotkeysPerInterval.htm b/src/docs/commands/_MaxHotkeysPerInterval.htm new file mode 100644 index 0000000..bfe0e60 --- /dev/null +++ b/src/docs/commands/_MaxHotkeysPerInterval.htm @@ -0,0 +1,38 @@ + + + + +#MaxHotkeysPerInterval + + + + + + + +

#MaxHotkeysPerInterval

+ +

#HotkeyInterval°ú ÇÔ²², ÇÖÅ° È°¼ºÈ­ ºñÀ²À» ÁöÁ¤ÇÕ´Ï´Ù. ÀÌ °ªÀ» ³Ñ¾î¼­¸é °æ°í ´ëÈ­»óÀÚ°¡ ³ªÅ¸³³´Ï´Ù.

+ +
#MaxHotkeysPerInterval Value
+

¸Å°³º¯¼ö

+
+ +
Value
+

°æ°í ´ëÈ­»óÀÚ¸¦ Ã˹ßÇÏÁö ¾Ê°í #HotkeyInterval°¡ ÁöÁ¤ÇÑ ½Ã°£ »çÀÌ¿¡ ´©¸¦ ¼ö ÀÖ´Â ÇÖÅ°ÀÇ ÃÖ´ë °³¼ö.

+ +
+

³íÆò

+

+³Ê¹« °ü´ëÇÏ°Ô ÁöÁ¤ÇÏÁö ¾Êµµ·Ï ÁÖÀÇÇϽʽÿÀ. ¿Ö³ÄÇϸé ÀǵµÄ¡ ¾Ê°Ô ¹«ÇÑ Å°´­¸² ȸµ¹À̸¦ ÃÊ·¡ÇÑ´Ù¸é (Send ¸í·É¾î¸¦ »ç¿ëÇߴµ¥ ¿ì¿¬ÇÏ°Ôµµ ´Ù¸¥ ÇÖÅ°¸¦ Ã˹ßÇÏ°Ô µÇ¸é), ¹ü¶÷ÇÏ´Â Å°º¸µå À̺¥Æ® ¶§¹®¿¡ ÄÄÇ»ÅÍ°¡ ÀÀ´äÀ» ÇÏÁö ¸øÇÏ°Ô µÉ ¼ö ÀÖ½À´Ï´Ù.

+

+Á» °úµµÇÏ°Ô °£·«ÇÑ ¿¹Á¦¸¦ µéÀÚ¸é, ÇÖÅ° ^c::Send ^c´Â ¹«ÇÑ Å°´­¸² ȸµ¹À̸¦ »ý»êÇÕ´Ï´Ù. À̸¦ ÇÇÇÏ·Á¸é, ÇÖÅ° Á¤ÀÇ¿¡ $ prefix Á¢µÎ»ç¸¦ Ãß°¡ÇØ (¿¹, $^c::) ÇÖÅ°°¡ Send ¸í·É¾î·Î Ã˹ߵÇÁö ¸øÇÏ°Ô ÇϽʽÿÀ.

+

+ÀÌ Áö½Ã¾î°¡ ½ºÅ©¸³Æ® ¾È¿¡ ÁöÁ¤µÇ¾î ÀÖÁö ¾ÊÀ¸¸é, 70À¸·Î ¼³Á¤ÇÑ °Íó·³ ÇàÀ§ÇÕ´Ï´Ù.

+

°ü·Ã Ç׸ñ

+

#HotkeyInterval

+

¿¹Á¦

+
#MaxHotkeysPerInterval 200
+ + + diff --git a/src/docs/commands/_MaxMem.htm b/src/docs/commands/_MaxMem.htm new file mode 100644 index 0000000..62aaf25 --- /dev/null +++ b/src/docs/commands/_MaxMem.htm @@ -0,0 +1,40 @@ + + + + +#MaxMem + + + + + + + +

#MaxMem

+ +

°¢ º¯¼öÀÇ ÃÖ´ë °¡¿ë ´É·ÂÀ» ÁöÁ¤µÈ °³¼öÀÇ ¸Þ°¡¹ÙÀÌÆ®·Î ¼³Á¤ÇÕ´Ï´Ù.

+ +
#MaxMem Megabytes
+

¸Å°³º¯¼ö

+
+ +
Megabytes
+

º¯¼ö¿¡ Çã¿ëÇÒ ¸Þ°¡¹ÙÀÌÆ®ÀÇ °³¼ö. 4095º¸´Ù Å« °ªÀº 4095·Î °£ÁÖÇÕ´Ï´Ù. 1º¸´Ù ÀÛÀº °ªÀº 1·Î °£ÁÖÇÕ´Ï´Ù.

+ +
+

³íÆò

+

+ÀÌ Áö½Ã¾î°¡ ½ºÅ©¸³Æ®¿¡ ÁöÁ¤µÇ¾î ÀÖÁö ¾ÊÀ¸¸é, ¸¶Ä¡ 64·Î ¼³Á¤µÈ °Íó·³ ÇàÀ§ÇÕ´Ï´Ù.

+

+°¢ º¯¼öÀÇ °¡¿ë ´É·ÂÀ» Á¦ÇÑÇÏ´Â ¸ñÀûÀº ¹ö±×°¡ ÀÖ´Â ½ºÅ©¸³Æ®°¡ ¸ðµç ½Ã½ºÅÛ ¸Þ¸ð¸®¸¦ °í°¥½ÃÅ°Áö ¸øÇϵµ·Ï Çϱâ À§ÇÔÀÔ´Ï´Ù. Á¦ÇÑÀ» ¿Ã¸®°í ³»·Áµµ ½ºÅ©¸³Æ®ÀÇ ¼öÇ༺´É¿¡´Â ¿µÇâÀ» ¹ÌÄ¡Áö ¾Ê½À´Ï´Ù. ½ºÅ©¸³Æ®°¡ ½ÇÁ¦·Î »ç¿ëÇÏ´Â ¸Þ¸ð¸® Å©±âµµ ¹Ù²îÁö ¾Ê½À´Ï´Ù (´Ü, WinGetText°ú ControlGetTextÀÇ °æ¿ì´Â Á¦¿ÜÇÕ´Ï´Ù. #MaxMemÀ» ´Ã¸®¸é ´õ ¸¹Àº ÅؽºÆ®¸¦ ¹ÞÀ» ¼ö Àֱ⠶§¹®ÀÔ´Ï´Ù).

+

+ÀÌ ¼³Á¤Àº Àü¿ªÀûÀÔ´Ï´Ù. (½ºÅ©¸³Æ® ¾Æ¹«µ¥¼­³ª) ÇÑ ¹ø¸¸ ÁöÁ¤Çϸé Àüü ½ºÅ©¸³Æ®ÀÇ ÇàÀ§¿¡ ¿µÇâÀ» ÁÙ ¼ö ÀÖ´Ù´Â ¶æÀÔ´Ï´Ù.

+

+ÀÌ ¼³Á¤Àº º¯¼ö°¡ ½º½º·Î ÀÚµ¿ È®ÀåµÇ´Â °æ¿ì¸¸ Á¦ÇÑÇÕ´Ï´Ù. VarSetCapacity¿¡´Â ¿µÇâÀ» ÁÖÁö ¾Ê½À´Ï´Ù.

+

°ü·Ã Ç׸ñ

+

VarSetCapacity, º¯¼ö, Sort, WinGetText, ControlGetText, #MaxThreads

+

¿¹Á¦

+
#MaxMem 256  ; º¯¼ö ´ç 256¸¦ Çã¿ëÇÕ´Ï´Ù.
+ + + diff --git a/src/docs/commands/_MaxThreads.htm b/src/docs/commands/_MaxThreads.htm new file mode 100644 index 0000000..b295bf8 --- /dev/null +++ b/src/docs/commands/_MaxThreads.htm @@ -0,0 +1,48 @@ + + + + +#MaxThreads + + + + + + + +

#MaxThreads

+ +

µ¿½Ã ¾²·¹µåÀÇ ÃÖ´ë °³¼ö¸¦ ¼³Á¤ÇÕ´Ï´Ù.

+ +
#MaxThreads Value
+

¸Å°³º¯¼ö

+
+ +
Value
+

µ¿½Ã¿¡ Á¸ÀçÇÒ ¼ö ÀÖ´Â ¾²·¹µåÀÇ ÃÖ´ë °³¼ö. 255 º¸´Ù Å« °ªÀ» ÁöÁ¤Çϸé 255¸¦ ÁöÁ¤ÇÑ °Í°ú µ¿ÀÏÇÕ´Ï´Ù (1.0.48 ÀÌÀü ¹öÀü¿¡´Â, 20ÀÌ Á¦ÇÑ °ªÀ̾ú½À´Ï´Ù).

+ +
+

³íÆò

+

+ÀÌ ¼³Á¤Àº Àü¿ªÀûÀÔ´Ï´Ù. (½ºÅ©¸³Æ® ¾Æ¹«µ¥¼­³ª) ÇÑ ¹ø¸¸ ÁöÁ¤Çϸé Àüü ½ºÅ©¸³Æ®ÀÇ ÇàÀ§¿¡ ¿µÇâÀ» ¹ÌÄ£´Ù´Â ¶æÀÔ´Ï´Ù.

+

+°ªÀÌ 1ÀÎ °Íµµ Çã¿ëÇÏÁö¸¸, ±ÇÀåÇÏÁö ¾Ê½À´Ï´Ù. ½ºÅ©¸³Æ®°¡ MsgBox³ª ±âŸ ´ëÈ­»óÀÚ¸¦ º¸¿©ÁÙ ¶§¸¶´Ù »õ·Î¿î ÇÖÅ°°¡ ±âµ¿ÇÏÁö ¸øÇϵµ·Ï ¸·±â ¶§¹®ÀÔ´Ï´Ù. ¶ÇÇÑ ¶Ç´Ù¸¥ ¾²·¹µå°¡ ÀÚ°í Àְųª ´ë±âÇÏ°í ÀÖÀ» ¶§¸¶´Ù ŸÀ̸ӵµ ½ÇÇàµÇÁö ¸øÇÕ´Ï´Ù

+

+#MaxThreads ¿¡ µµ´ÞÇÏ´õ¶óµµ ´ÙÀ½ À¯ÇüÀÇ ¾²·¹µå¸¦ ÃÖ´ë µÎ °³±îÁö ¸¸µé ¼ö ÀÖ½À´Ï´Ù: +

+ÇÖÅ°, ÇÖ½ºÆ®¸µ, OnClipboardChange, ¶Ç´Â GUI À̺¥Æ®°¡ ±× À¯Çü¿¡ ÇØ´çµË´Ï´Ù. ´Ü, ±×ÀÇ ¼­ºêºÎƾÀÇ Ã¹ ÁÙÀÌ ExitApp, Pause, Edit, Reload, KeyHistory, ListLines, ListVars, ¶Ç´Â ListHotkeysÀÎ °æ¿ì¿¡¸¸ Çã¿ëµË´Ï´Ù. + +

+¶ÇÇÑ, OnExit subroutineÀº ¾ðÁ¦³ª ¾ó¸¶³ª ¸¹Àº ¾²·¹µå°¡ ÀÖ´ÂÁö¿¡ »ó°ü¾øÀÌ ±âµ¿ÇÕ´Ï´Ù.

+

+ÀÌ ¼³Á¤ÀÌ #MaxThreadsPerHotkeyº¸´Ù ÀÛÀ¸¸é, ±× ¼³Á¤À» ¿À¹ö¶óÀ̵å ÇÏ´Â È¿°ú°¡ ÀÖ½À´Ï´Ù.

+

+ÀÌ Áö½Ã¾î°¡ ½ºÅ©¸³Æ®¿¡ ÁöÁ¤µÇ¾î ÀÖÁö ¾ÊÀ¸¸é, 10ÀÌ ¼³Á¤µÈ °Íó·³ ÇàÀ§ÇÕ´Ï´Ù.

+ +

°ü·Ã Ç׸ñ

+

#MaxThreadsPerHotkey, Threads, #MaxHotkeysPerInterval, #HotkeyInterval, ListHotkeys, #MaxMem

+

¿¹Á¦

+
#MaxThreads 2
+ + + diff --git a/src/docs/commands/_MaxThreadsBuffer.htm b/src/docs/commands/_MaxThreadsBuffer.htm new file mode 100644 index 0000000..75fc312 --- /dev/null +++ b/src/docs/commands/_MaxThreadsBuffer.htm @@ -0,0 +1,46 @@ + + + + +#MaxThreadsBuffer + + + + + + + +

#MaxThreadsBuffer

+

+#MaxThreadsPerHotkey Á¦ÇÑ¿¡ µµ´ÞÇÒ ¶§ Å°´­¸²À» ¹«½ÃÇÏÁö ¾Ê°í ¸ðµç ¶Ç´Â ¾î´À Á¤µµ´Â ÇÖÅ°°¡ ¹öÆÛ Ã³¸®µË´Ï´Ù.

+ +
#MaxThreadsBuffer On|Off
+

¸Å°³º¯¼ö

+
+ +
On|Off
+

On: ¿©±âºÎÅÍ ´ÙÀ½ #MaxThreadsBuffer ON Áö½Ã¾î »çÀÌÀÇ ¸ðµç ÇÖÅ° ¼­ºê·çƾÀÌ #MaxThreadsPerHotkey Á¦ÇÑ¿¡ °É¸± ¶§¸¶´Ù ÇÖÅ°ÀÇ ´­¸²À» ¹«½ÃÇÏ´Â ´ë½Å¿¡ ¹öÆÛ Ã³¸®µË´Ï´Ù.

+

Off: ÀÌ°ÍÀÌ ±âº» ÇàÀ§ÀÔ´Ï´Ù. ÇÖÅ°¸¦ ´­·¯µµ ÇÖÅ°°¡ ÀÌ¹Ì ¾²·¹µåÀÇ ÃÖ´ë °³¼ö¸¦ ÀÌ¹Ì ½ÇÇàÇÏ°í ÀÖ´Ù¸é ¹«½ÃµË´Ï´Ù (º¸Åë 1ÀÌÁö¸¸, ÀÌ´Â #MaxThreadsPerHotkey·Î ¹Ù²Ü ¼ö ÀÖ½À´Ï´Ù).

+ +
+ +

³íÆò

+

+ÀÌ Áö½Ã¾î´Â Àß »ç¿ëµÇÁö ¾Ê½À´Ï´Ù. ¿Ö³ÄÇϸé ÀÌ·± À¯ÇüÀÇ ¹öÆÛ Ã³¸®´Â, OFF°¡ ±âº»°ªÀε¥, º¸Åë µæº¸´Ù ½ÇÀÌ ¸¹±â ¶§¹®ÀÔ´Ï´Ù. ¿¹¸¦ µé¾î, ¿ì¹ßÀûÀ¸·Î ÇÖÅ°¸¦ µÎ ¹ø ´­·¯, ÀÌ ¼³Á¤ÀÌ ONÀÌ µÇ°í, ±×ÀÇ Ã¹ ¹ø° ¾²·¹µå°¡ ³¡³ª´Âµ¥ 1 Ãʺ¸´Ù Àû°Ô °É¸®¸é ±× ÇÖÅ°ÀÇ ¼­ºê·çƾÀº ÀÚµ¿À¸·Î µÎ ¹ø ½ÇÇàµË´Ï´Ù. (ÀÌ·± À¯ÇüÀÇ ¹öÆÛ´Â 1ÃÊ ÀÌÈÄ¿¡ Á¾·áµÇµµ·Ï ¼³°èµÇ¾î ÀÖ½À´Ï´Ù). ¿ÀÅäÇÖÅ°´Â ÇÖÅ°¸¦ ¿©·¯°¡Áö ¹æ½ÄÀ¸·Î ¹öÆÛ Ã³¸®ÇÑ´Ù´Â °ÍÀ» ÁÖ¸ñÇϽʽÿÀ (¿¹¸¦ µé¾î Thread Interrupt ±×¸®°í Critical). ÀÌ·± ƯÀÌÇÑ ¹æ½ÄÀº Çطӱ⸸ ÇÒ »ÓÀÔ´Ï´Ù. ±×¸®ÇÏ¿© ±âº»À¸·Î OFF »óÅÂÀÔ´Ï´Ù.

+

+ÀÌ Áö½Ã¾î¸¦ »ç¿ëÇÏ´Â ÁÖ ¸ñÀûÀº Å°º¸µåÀÇ ÀÚµ¿-¹Ýº¹ Ư¡ÀÇ ¹ÝÀÀ ´É·ÂÀ» ²ø¾î ¿Ã¸®´Â µ¥ ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î, ÇÖÅ°¸¦ ´©¸£°í ÀÖÀ» ¶§ #MaxThreadsPerHotkey°¡ 1·Î ¼³Á¤µÇ¾î ÀÖ´Ù¸é (±âº»°ª), µé¾î¿À´Â Å°´­¸²Àº ±× ÇÖÅ° ¼­ºê·çƾÀÌ ÀÌ¹Ì ½ÇÇà ÁßÀÏ °æ¿ì ¹«½ÃµË´Ï´Ù. ±×¸®ÇÏ¿©, ¼­ºê·çƾÀÌ ³¡³¯ ¶§, ´ÙÀ½ ÀÚµ¿-¹Ýº¹ Å°´­¸²ÀÌ µé¾î¿À±â¸¦ ±â´Ù·Á¾ß ÇÕ´Ï´Ù. ÀÌ ´ë±â ½Ã°£Àº ÀÚµ¿-¹Ýº¹ »çÀÌŬÀÇ Å°´­¸² »çÀÌ¿¡ ÀâÇô Àֱ⠶§¹®¿¡ ´ë·« 50ms ³²Áþ °É¸± °ÍÀÔ´Ï´Ù. ÀÌ 50msÀÇ Áö¿¬ ½Ã°£À» ÇÇÇÒ ¼ö ÀÖ½À´Ï´Ù. ÀÚµ¿-¹Ýº¹µÇ´Â µ¿¾È¿¡ ÁÁÀº ¹ÝÀÀ¼ºÀÌ ÇÊ¿äÇÑ ¸ðµç ÇÖÅ°¿¡ ÀÌ Áö½Ã¾î¸¦ È°¼ºÈ­ÇÏ¸é µË´Ï´Ù.

+

+´Ù¸¥ ¸ðµç # Áö½Ã¾îó·³, ÀÌ Áö½Ã¾î´Â ±×³É ¸í·É¾îó·³ ¾Æ¹«µ¥³ª ¹èÄ¡ÇÏ¸é ¾ÈµË´Ï´Ù (Áï, ¼­ºê·çƾ ¾È¿¡ Æ÷ÇÔ½Ãų ÇÊ¿ä°¡ ¾ø½À´Ï´Ù). ´ë½Å¿¡, È¿°ú¸¦ ÁÖ°í ½ÍÀº ù ÇÖÅ° ¶óº§ ¹Ù·Î ´ÙÀ½¿¡ ¹èÄ¡ÇϽʽÿÀ.

+ +

°ü·Ã Ç׸ñ

+

#MaxThreads, #MaxThreadsPerHotkey, Critical, Thread (¸í·É¾î), ¾²·¹µå, ÇÖÅ°, #MaxHotkeysPerInterval, #HotkeyInterval, ListHotkeys

+ +

¿¹Á¦

+
#MaxThreadsBuffer on
+#x::MsgBox, ÀÌ ÇÖÅ°´Â À§¿Í °°Àº Á¾·ùÀÇ ¹öÆÛ Ã³¸®¸¦ »ç¿ëÇÕ´Ï´Ù.
+#y::MsgBox, À̰͵µ ¸¶Âù°¡ÁöÀÔ´Ï´Ù.
+#MaxThreadsBuffer off
+#z::MsgBox, ±×·¯³ª ÀÌ°ÍÀº ¾Æ´Õ´Ï´Ù.
+ + + diff --git a/src/docs/commands/_MaxThreadsPerHotkey.htm b/src/docs/commands/_MaxThreadsPerHotkey.htm new file mode 100644 index 0000000..0cb8c02 --- /dev/null +++ b/src/docs/commands/_MaxThreadsPerHotkey.htm @@ -0,0 +1,43 @@ + + + + +#MaxThreadsPerHotkey + + + + + + + +

#MaxThreadsPerHotkey

+ +

ÇÖÅ° ¶Ç´Â ÇÖÆ®¸µ´ç µ¿½Ã ¾²·¹µåÀÇ ÃÖ´ë °³¼ö¸¦ ¼³Á¤ÇÕ´Ï´Ù. .

+ +
#MaxThreadsPerHotkey Value
+

¸Å°³º¯¼ö

+
+ +
Value
+

ÁÖ¾îÁø ÇÖÅ°/ÇÖ½ºÆ®¸µ ¼­ºê·çƾ¿¡ ´ëÇÏ¿© ±âµ¿ÇÒ ¼ö ÀÖ´Â ¾²·¹µåÀÇ ÃÖ´ë °³¼ö (255·Î Á¦ÇÑ).

+ +
+

³íÆò

+

+ÀÌ ¼³Á¤Àº ÁÖ¾îÁø ÇÖÅ° ¶Ç´Â ÇÖ½ºÆ®¸µ ¼­ºê·çƾÀÇ "½Çü"°¡ µ¿½Ã¿¡ ¾ó¸¶³ª ¸¹ÀÌ Á¸ÀçÇϵµ·Ï Çã¿ëÇÒÁö Á¦¾îÇÏ´Â µ¥ »ç¿ëµË´Ï´Ù. ¿¹¸¦ µé¾î, ¾î¶² ÇÖÅ°°¡ ÃÖ´ë°ª 1ÀÌ°í ¼­ºê·çƾÀÌ ÀÌ¹Ì ½ÇÇà ÁßÀÎ µ¿¾È¿¡ ´Ù½Ã ´­¸°´Ù¸é, ±× Å°´­¸²Àº ¹«½ÃµË´Ï´Ù. ÀÌ·¸°Ô ÇÏ¸é ¿ì¹ßÀûÀ¸·Î µÎ ¹ø ´©¸£´Â ÀÏÀ» ¹æÁöÇÒ ¼ö ÀÖ½À´Ï´Ù. ±×·¸Áö¸¸, ÀÌ Å° ´­¸²À» ¹«½ÃÇÏ´Â ´ë½Å¿¡ ¹öÆÛ Ã³¸®ÇÏ°í ½Í´Ù¸é -- ¾Æ¸¶µµ Å°º¸µåÀÇ ÀÚµ¿-¹Ýº¹ Ư¡ÀÇ ¹ÝÀÀ¼ºÀ» ³ôÀÌ°í ½Í´Ù¸é -- #MaxThreadsBuffer¸¦ »ç¿ëÇϽʽÿÀ.

+

+#MaxThreads¿Í ´Ù¸£°Ô, ÀÌ ¼³Á¤Àº Àü¿ªÀûÀÌ ¾Æ´Õ´Ï´Ù. ´ë½Å, ¿µÇâÀ» ÁÖ°í ½ÍÀº ù ÇÖÅ° ¶óº§ ¾Õ¿¡ ¹èÄ¡ÇϽʽÿÀ. °á°úÀûÀ¸·Î ±× µÚ¿¡ ÀÕ´Ù¸£´Â ÇÖÅ°µéÀº ±× °ªÀ» »ç¿ëÇÏ°Ô µË´Ï´Ù. ÀÌ Áö½Ã¾îÀÇ ¶Ç´Ù¸¥ ½Çü¸¦ ¸¸³ª±â Àü±îÁö´Â ¸»ÀÔ´Ï´Ù.

+

+ÇÖÅ° ¼­ºê·çƾ¿¡¼­ ù ÁÙÀÌ ExitApp, Pause, Edit, Reload, KeyHistory, ListLines, ListVars, ¶Ç´Â ListHotkeysÀ̸é ÀÌ ¼³Á¤¿¡ »ó°ü¾øÀÌ ¾ðÁ¦³ª ±× ÇÖÅ°°¡ ½ÇÇàµË´Ï´Ù.

+

+#MaxThreadsÀÇ ¼³Á¤ÀÌ -- ÀÌ ¼³Á¤º¸´Ù ³·À¸¸é -- ¿ì¼± ¼øÀ§¸¦ °®½À´Ï´Ù.

+

+ÀÌ Áö½Ã¾î°¡ ½ºÅ©¸³Æ®¿¡ ÁöÁ¤µÇ¾î ÀÖÁö ¾ÊÀ¸¸é, ¸¶Ä¡ 1ÀÌ ¼³Á¤µÈ °Íó·³ ÇàÀ§ÇÕ´Ï´Ù.

+ +

°ü·Ã Ç׸ñ

+

#MaxThreads, #MaxThreadsBuffer, Critical, Threads, Hotkey, #MaxHotkeysPerInterval, #HotkeyInterval, ListHotkeys

+

¿¹Á¦

+
#MaxThreadsPerHotkey 3
+ + + diff --git a/src/docs/commands/_MenuMaskKey.htm b/src/docs/commands/_MenuMaskKey.htm new file mode 100644 index 0000000..bf1e63e --- /dev/null +++ b/src/docs/commands/_MenuMaskKey.htm @@ -0,0 +1,49 @@ + + + + +#MenuMaskKey + + + + + + + +

#MenuMaskKey [AHK_L 38+]

+ +

Win ¶Ç´Â Alt Å°¾÷ À̺¥Æ®¸¦ ¸¶½ºÅ©Çϴµ¥ »ç¿ëµÉ Å°¸¦ º¯°æÇÕ´Ï´Ù.

+ +
#MenuMaskKey KeyName
+

¸Å°³º¯¼ö

+
+ +
KeyName
+

A Å° À̸§ ¶Ç´Â 0 ¾Æ´Ñ °¡»ó Å°Äڵ带 ÁöÁ¤ÇÏ´Â vkNN ¿¬¼Ó¿­. ½ºÄµÄÚµå´Â »ç¿ëµÇÁö ¾Ê½À´Ï´Ù.

+ +
+ +

³íÆò

+

+ÀÌ ¼³Á¤Àº Àü¿ªÀûÀÔ´Ï´Ù. (½ºÅ©¸³Æ® ¾Æ¹«µ¥¼­³ª) µü ÇÑ ¹ø¸¸ ÁöÁ¤Çϸé Àüü ½ºÅ©¸³Æ®¿¡ ¿µÇâÀ» ¹ÌÄ£´Ù´Â ¶æÀÔ´Ï´Ù

+

+ÇÖÅ°¸¦ Å°º¸µå °¥°í¸®³ª ¸¶¿ì½º °¥°í¸®¸¦ »ç¿ëÇÏ¿© ±¸ÇöÇß´Ù¸é, ¸¶Áö¸· Å°´­¸²Àº È°¼ºÃ¢°ú ½Ã½ºÅÛ¿¡ º¸ÀÌÁö ¾ÊÀ» ¼öµµ ÀÖ½À´Ï´Ù. Win ¶Ç´Â Alt ¼ö½Ä Å°¸¦ »ç¿ëÇÏ´Â ÇÖÅ°¿¡ ´ëÇÏ¿©, ÀÌ ¼ö½ÄÅ°°¡ ´­¸± ¶§ ½ÃÀÛ ¸Þ´º³ª È°¼ºÃ¢ÀÇ ¸Þ´º ¹Ù°¡ È°¼ºÈ­µÉ ¼ö ÀÖ½À´Ï´Ù. ÀÌ·± ÀÏÀÌ ÀϾ´Â °ÍÀ» ÇÇÇϱâ À§ÇØ ¿ÀÅäÇÖÅ°´Â Å°´­¸²À» Àü¼ÛÇÏ¿© Å°¾÷ À̺¥Æ®¸¦ "ÀºÆó" ÇÕ´Ï´Ù. °³Á¤ÆÇ 38 ÀÌÀü¿¡¼­´Â ¾ðÁ¦³ª Ctrl Å°´­¸²À̾ú°í, ÀÌ ¶§¹®¿¡ ¾î¶² ¾îÇø®ÄÉÀ̼ǿ¡´Â ¹®Á¦°¡ µÈ´Ù°í ¾Ë·ÁÁ® ÀÖ½À´Ï´Ù.

+

+½ºÅ©¸³Æ®¿¡ ÀÌ Áö½Ã¾î°¡ ÁöÁ¤µÇ¾î ÀÖÁö ¾ÊÀ¸¸é, CtrlÀ» ÁöÁ¤ÇÑ °Íó·³ ÇàÀ§ÇÕ´Ï´Ù.

+ +

°ü·Ã Ç׸ñ

+

¹è°æ Á¤º¸´Â ÀÌ ¾²·¹µå¸¦ ÂüÁ¶ÇϽʽÿÀ.

+ +

¿¹Á¦

+
#MenuMaskKey vk07  ; vk07Àº ÇÒ´çµÇÁö ¾Ê½À´Ï´Ù.
+#UseHook
+#Space::
+!Space::
+    KeyWait LWin
+    KeyWait RWin
+    KeyWait Alt
+    KeyHistory
+return
+ + + diff --git a/src/docs/commands/_NoEnv.htm b/src/docs/commands/_NoEnv.htm new file mode 100644 index 0000000..1f608ac --- /dev/null +++ b/src/docs/commands/_NoEnv.htm @@ -0,0 +1,40 @@ + + + + +#NoEnv + + + + + + + +

#NoEnv [v1.0.43.08+]

+ +

ºó ¹®ÀÚ¿­ÀÌ È¯°æ º¯¼öÀÎÁö Á¡°ËÇÏ´Â °ÍÀ» ȸÇÇÇÕ´Ï´Ù (¸ðµç »õ ½ºÅ©¸³Æ®¿¡ ±ÇÀå).

+ +
#NoEnv
+

+½ºÅ©¸³Æ® ¾Æ¹«µ¥³ª #NoEnv ÁÙÀ» ÁöÁ¤ÇÏ¸é ºó ¹®ÀÚ¿­ÀÌ ÀáÀçÀûÀ¸·Î ȯ°æ º¯¼öÀÎÁö ã¾Æ º¸Áö ¸øÇϵµ·Ï ¸·½À´Ï´Ù. ¿¹¸¦ µé¾î:

+
#NoEnv
+MsgBox %WinDir%
+

+À§ ÄÚµå´Â "WinDir" ȯ°æº¯¼ö¸¦ ¿­¶÷ÇÏÁö ¾Ê½À´Ï´Ù (¹°·Ð ½ºÅ©¸³Æ® »ó´Ü ±Ùó¿¡ WinDir := A_WinDir¿Í °°ÀÌ Ã³¸®Çϸé ÇØ°áÇÒ ¼ö ÀÖ½À´Ï´Ù).

+

+¸ðµç »õ ½ºÅ©¸³Æ®¿¡ #NoEnvÀ» ÁöÁ¤ÇÏ´Â °ÍÀ» ±ÇÀåÇÕ´Ï´Ù. ¿Ö³ÄÇϸé:

+
    +
  1. ºó ¹®ÀÚ¿­ÀÌ Ç¥Çö½ÄÀ̳ª ¸í·É¾î¿¡ »ç¿ëµÉ ¶§¸¶´Ù ¼öÇ༺´ÉÀÌ ´«¿¡ ¶ç°Ô °³¼±µË´Ï´Ù. ¶ÇÇÑ µû¿ÈÇ¥ ¾ø´Â ¸Å°³º¯¼ö À¯ÇüÀ» »ç¿ëÇÒ ¶§ DllCallÀÇ ¼öÇ༺´Éµµ Çâ»óµË´Ï´Ù. (¿¹, int vs. "int").
  2. +
  3. ȯ°æ º¯¼ö ¶§¹®¿¡ ½ºÅ©¸³Æ®¿¡ ¹ö±×°¡ »ý±â´Â °ÍÀ» ¹æÁöÇÕ´Ï´Ù. ±× À̸§ÀÌ ¿¹»óÄ¡ ¸øÇÏ°Ô ½ºÅ©¸³Æ®¿¡ »ç¿ëµÇ´Â º¯¼ö¿¡ ÀÏÄ¡ÇÒ ¼ö Àֱ⠶§¹®ÀÔ´Ï´Ù.
  4. +
  5. AutoHotkey v2´Â ÀÌ ÇàÀ§¸¦ ±âº»°ªÀ¸·Î »ç¿ëÇÒ °ÍÀÔ´Ï´Ù.
  6. +
+

+½±°Ô #NoEnv·Î ÀÌÀüÇϱâ À§ÇØ, ³»Àå º¯¼ö Comspec°ú ProgramFilesÀÌ Ãß°¡µÇ¾ú½À´Ï´Ù. »óÀÀÇϴ ȯ°æº¯¼ö¿Í ¶È °°Àº ¹®ÀÚ¿­ÀÌ ¾È¿¡ µé¾î ÀÖ½À´Ï´Ù.

+

+#NoEnv°¡ È¿°ú¸¦ ¹ßÈÖÇϸé, ½ºÅ©¸³Æ®´Â EnvGetÀ» »ç¿ëÇÏ¿© ȯ°æ º¯¼ö¸¦ ¿­¶÷ÇØ¾ß ÇÕ´Ï´Ù. ¾Æ´Ï¸é A_WinDir°ú °°Àº ³»Àå º¯¼ö¸¦ »ç¿ëÇϽʽÿÀ.

+ +

°ü·Ã Ç׸ñ

+

EnvGet, Comspec, ProgramFiles, A_WinDir

+ + + diff --git a/src/docs/commands/_NoTrayIcon.htm b/src/docs/commands/_NoTrayIcon.htm new file mode 100644 index 0000000..eaca0b5 --- /dev/null +++ b/src/docs/commands/_NoTrayIcon.htm @@ -0,0 +1,32 @@ + + + + +#NoTrayIcon + + + + + + + +

#NoTrayIcon

+ +

Æ®·¹ÀÌ ¾ÆÀÌÄÜÀ» ²ü´Ï´Ù.

+ +
#NoTrayIcon
+

+½ºÅ©¸³Æ® ¾Æ¹«µ¥¼­³ª ÀÌ Áö½Ã¾î¸¦ ÁöÁ¤ÇÏ¸é ½ºÅ©¸³Æ®°¡ ±âµ¿µÉ ¶§ Æ®·¹ÀÌ ¾ÆÀÌÄÜÀÌ ³ªÅ¸³ª´Â °ÍÀ» ¸·½À´Ï´Ù. (½ºÅ©¸³Æ®¸¦ EXE·Î ÄÄÆÄÀÏÇصµ ¸¶Âù°¡ÁöÀÔ´Ï´Ù).

+

+ÇÖÅ°¸¦ °¡Áø ½ºÅ©¸³Æ®¿¡ À̸¦ »ç¿ëÇϸé, ÇÖÅ°¸¦ ExitApp ¸í·É¾î¿¡ ¹­´Â °Ô ÁÁ½À´Ï´Ù. ±×·¸Áö ¾ÊÀ¸¸é, ½±°Ô ÇÁ·Î±×·¥À» ºüÁ® ³ª°¥ ¹æ¹ýÀÌ ¾ø½À´Ï´Ù (ÄÄÇ»Å͸¦ Àç½ÃÀÛÇϰųª ÇÁ·Î¼¼½º¸¦ Á׿©¾ß ÇÕ´Ï´Ù). ¿¹¸¦ µé¾î: #x::ExitApp.

+

+Æ®·¹ÀÌ ¾ÆÀÌÄÜÀ» ½ºÅ©¸³Æ®°¡ ½ÇÇàµÇ´Â µ¿¾È ¾ðÁ¦µçÁö °¨Ã߰ųª º¸¿©ÁÙ ¼ö ÀÖ½À´Ï´Ù. ´ÙÀ½ ¸í·É¾î Menu, Tray, Icon ¶Ç´Â Menu, Tray, NoIconÀ» »ç¿ëÇÏ¸é µË´Ï´Ù. Menu, Tray, NoIconÀ» ½ºÅ©¸³Æ®ÀÇ ¸Ç À§¿¡¼­ »ç¿ëÇÏ¸é ´ÜÁ¡ÀÌ ÀÖ½À´Ï´Ù. ½ºÅ©¸³Æ®°¡ óÀ½À¸·Î ±âµ¿µÉ ¶§ Æ®·¹ÀÌ ¾ÆÀÌÄÜÀÌ Àá±ñ º¸ÀÏ ¼ö ÀÖ½À´Ï´Ù. ±×¸¦ ÇÇÇÏ·Á¸é, ´ë½Å¿¡ #NoTrayIconÀ» »ç¿ëÇϽʽÿÀ.

+

+Æ®·¹ÀÌ ¾ÆÀÌÄÜÀÌ ÇöÀç º¸ÀÌÁö ¾ÊÀ¸¸é ³»Àå º¯¼ö A_IconHidden¿¡ 1ÀÌ ´ã±é´Ï´Ù. ±×·¸Áö ¾ÊÀ¸¸é 0ÀÌ ´ã±é´Ï´Ù.

+

°ü·Ã Ç׸ñ

+

Menu, ExitApp

+

¿¹Á¦

+
#NoTrayIcon
+ + + diff --git a/src/docs/commands/_Persistent.htm b/src/docs/commands/_Persistent.htm new file mode 100644 index 0000000..4632e3f --- /dev/null +++ b/src/docs/commands/_Persistent.htm @@ -0,0 +1,29 @@ + + + + +#Persistent + + + + + + + +

#Persistent

+ +

½ºÅ©¸³Æ®¸¦ ¿µ¿øÈ÷ ½ÇÇà ÇÕ´Ï´Ù (Áï, »ç¿ëÀÚ°¡ ´Ý°Å³ª ExitApp¸¦ ¸¸³¯ ¶§±îÁö).

+ +
#Persistent
+

+ÀÌ Áö½Ã¾î°¡ ½ºÅ©¸³Æ®¿¡ Á¸ÀçÇϸé, ÀÚµ¿ ½ÇÇà ¼½¼ÇÀÌ (½ºÅ©¸³Æ®ÀÌ »ó´Ü ºÎºÐ) ³¡³­ ÈÄ¿¡µµ °è¼ÓÇؼ­ ½ÇÇàµË´Ï´Ù. ½ºÅ©¸³Æ®¿¡ ŸÀ̸ӳª ¸ÂÃã ¸Þ´º Ç׸ñÀÌ µé¾î ÀÖÀ» °æ¿ì´Â À¯¿ëÇÕ´Ï´Ù. ±×·¯³ª ÇÖÅ°, ÇÖ½ºÆ®¸µ, ¶Ç´Â OnMessage()³ª Gui¸¦ »ç¿ëÇÒ °æ¿ì´Â ±×·¸Áö ¾Ê½À´Ï´Ù.

+

+ÀÌ Áö½Ã¾î¸¦ ±âÁ¸ÀÇ ½ºÅ©¸³Æ®¿¡ Ãß°¡Çϸé, ExitÀ» ExitApp·Î ¹Ù²Ù´Â ÆíÀÌ ÁÁ½À´Ï´Ù. ¿Ö³ÄÇϸé Exit´Â ¿µ±¸ÀûÀÎ ½ºÅ©¸³Æ®¸¦ Á¾·áÇÏÁö ¸øÇϱ⠶§¹®ÀÔ´Ï´Ù; ¿ÀÁ÷ ÇöÀç ¾²·¹µå¸¸ Á¾·á½Ãŵ´Ï´Ù.

+

v1.0.16+¿¡¼­ ÀÌ Áö½Ã¾î´Â ¶Ç ½ºÅ©¸³Æ®¸¦ ´ÜÀÏ-½Çü·Î ¸¸µé±âµµ ÇÕ´Ï´Ù. À̸¦ ¿À¹ö¶óÀ̵å Çϰųª ´ÜÀÏ-½ÇüÀÇ ÇàÀ§¸¦ ¹Ù²Ù·Á¸é, #SingleInstance¸¦ ÂüÁ¶ÇϽʽÿÀ.

+

°ü·Ã Ç׸ñ

+

#SingleInstance, SetTimer, Menu, Exit, ExitApp

+

¿¹Á¦

+
#Persistent
+ + + diff --git a/src/docs/commands/_SingleInstance.htm b/src/docs/commands/_SingleInstance.htm new file mode 100644 index 0000000..2f8c8e8 --- /dev/null +++ b/src/docs/commands/_SingleInstance.htm @@ -0,0 +1,41 @@ + + + + +#SingleInstance + + + + + + + +

#SingleInstance

+ +

½ºÅ©¸³Æ®¿¡°Ô ÀÌ¹Ì ½ÇÇà ÁßÀÏ ¶§ ´Ù½Ã ½ÇÇàÀ» Çã¿ëÇÒÁö °áÁ¤ÇÕ´Ï´Ù.

+ +
#SingleInstance [force|ignore|off]
+

¸Å°³º¯¼ö

+
+ +
force|ignore|off
+

ÀÌ ¸Å°³º¯¼ö´Â ½ºÅ©¸³Æ®ÀÇ ½Çü°¡ ÀÌ¹Ì ÀÌÀü¿¡ ½ÇÇà ÁßÀÏ ¶§ ½ºÅ©¸³Æ®°¡ ¶Ç ±âµ¿ÇÏ¸é ¹«½¼ ÀÏÀÌ ÀϾ Áö °áÁ¤ÇÕ´Ï´Ù:

+

´Ü¾î FORCE´Â ´ëÈ­ »óÀÚ¸¦ °Ç³Ê ¶Ù°í ÀÚµ¿À¸·Î ¿¹Àü ½Çü¸¦ ±³Ã¼ÇÕ´Ï´Ù. ±× È¿°ú´Â Reload ¸í·É¾î¿Í ºñ½ÁÇÕ´Ï´Ù.

+

´Ü¾î IGNORE´Â ´ëÈ­ »óÀÚ¸¦ °Ç³Ê ¶Ù°í ¿¹Àü ½Çü¸¦ ±×´ë·Î ½ÇÇàµÇµµ·Ï µÓ´Ï´Ù. Áï, ÀÌ¹Ì ½ÇÇà ÁßÀÎ ½ºÅ©¸³Æ®ÀÇ ±âµ¿ ½Ãµµ¸¦ ¹«½ÃÇÕ´Ï´Ù.

+

´Ü¾î OFF´Â ½ºÅ©¸³Æ®ÀÇ ¿©·¯ ½Çü¸¦ º´ÇàÀûÀ¸·Î ½ÇÇàµÇµµ·Ï Çã¿ëÇÕ´Ï´Ù.

+

ÀÌ ¸Å°³º¯¼ö¸¦ »ý·«Çϸé, ´ëÈ­»óÀÚ°¡ ³ªÅ¸³ª ¿¹Àü ½Çü¸¦ À¯ÁöÇÒÁö »õ ½Çü·Î ±³Ã¼ÇÒÁö ¹¯½À´Ï´Ù.

+ +
+

³íÆò

+

+½ºÅ©¸³Æ®¿¡ hotkeys, hotstrings, #Persistent, OnMessage(), ¶Ç´Â Gui°¡ ´ã°Ü ÀÖÀ¸¸é ±âº»°ªÀº ´ÜÀÏ-½ÇüÀÔ´Ï´Ù (´ëÈ­»óÀÚ°¡ ³ªÅ¸³ª & ¹¯½À´Ï´Ù). ´Ù¸¥ ½ºÅ©¸³Æ®´Â ±âº»ÀûÀ¸·Î ´ÙÁß ½Çü¸¦ Çã¿ëÇÕ´Ï´Ù. ÀÌ ÇàÀ§´Â À§¿¡ ±â¼úÇÑ °Íó·³ ºÒ´ÉÈ­Çϰųª º¯°æÇÒ ¼ö ÀÖ½À´Ï´Ù.

+ +

°ü·Ã Ç׸ñ

+

Reload, #Persistent

+

¿¹Á¦

+
#SingleInstance force
+#SingleInstance ignore
+#SingleInstance off
+ + + diff --git a/src/docs/commands/_UseHook.htm b/src/docs/commands/_UseHook.htm new file mode 100644 index 0000000..3ffb7a0 --- /dev/null +++ b/src/docs/commands/_UseHook.htm @@ -0,0 +1,52 @@ + + + + +#UseHook + + + + + + + +

#UseHook

+ +

¸ðµç ¶Ç´Â ¾î¶² Å°º¸µå ÇÖÅ°¸¦ ±¸ÇöÇÏ´Â µ¥ °¥°í¸®ÀÇ »ç¿ëÀ» °­Á¦ÇÕ´Ï´Ù.

+ +
#UseHook [On|Off]
+

¸Å°³º¯¼ö

+
+ +
On|Off
+

#UseHook µÚ¿¡ ¾Æ¹«°Íµµ ¾øÀ¸¸é #UseHook On°ú µ¿µîÇÕ´Ï´Ù.

+

On: Áö±ÝºÎÅÍ (ÀÖ´Ù¸é) ´ÙÀ½ #UseHook OFF »çÀÌ¿¡ ¸ðµç Å°º¸µå ÇÖÅ°¸¦ ±¸ÇöÇÏ´Â µ¥ Å°º¸µå °¥°í¸®°¡ »ç¿ëµË´Ï´Ù.

+

Off: ÇÖÅ°´Â ±âº» ¹æ¹ýÀ» »ç¿ëÇÏ¿© ±¸ÇöµË´Ï´Ù (°¡´ÉÇϸé RegisterHotkey()¸¦; ±×·¸Áö ¾ÊÀ¸¸é, Å°º¸µå °¥°í¸®¸¦ »ç¿ëÇÕ´Ï´Ù).

+ +
+ +

³íÆò

+

º¸Åë, Å°º¸µå ÇÖÅ°¸¦ ±¸ÇöÇÏ´Â µ¥ °¡´ÉÇϸé À©µµ¿ìÁî API ÇÔ¼ö RegisterHotkey()°¡ »ç¿ëµË´Ï´Ù. ±×·¸Áö¸¸, ´ë½Å Å°º¸µå °¥°í¸®¸¦ »ç¿ëÇÏ¸é ¾î¶² »óȲ¿¡¼­´Â ÇÖÅ°ÀÇ ¹ÝÀÀ¼ºÀÌ ´õ ÁÁÀº °æ¿ì°¡ ÀÖ½À´Ï´Ù.

+

+ÀÌ Áö½Ã¾î¸¦ ÄѸé(ON) °¢ ÇÖÅ°ÀÇ Á¤ÀÇ ¾Õ¿¡ $ Á¢µÎ ½Éº¼À» »ç¿ëÇÑ °Í°ú È¿°ú°¡ °°½À´Ï´Ù.

+

+¸ðµç # Áö½Ã¾îó·³ -- ½ºÅ©¸³Æ®°¡ ±âµ¿ÇÒ ¶§ ÇÑ ¹ø¸¸ 󸮵Ǵ -- #UseHookÀº ¸í·É¾îó·³ ½ºÅ©¸³Æ® ¾Æ¹«µ¥³ª ¹èÄ¡ÇÏ¸é ¾ÈµË´Ï´Ù (Áï, ¼­ºê·çƾ ¾È¿¡ Æ÷ÇÔ½Ãų ÇÊ¿ä°¡ ¾ø½À´Ï´Ù). ´ë½Å¿¡, ¿µÇâÀ» ÁÖ°í ½ÍÀº ù ÇÖÅ° ¶óº§ ¹Ù·Î ¾Õ¿¡ ¹èÄ¡ÇϽʽÿÀ.

+

+±âº»°ªÀ¸·Î, Å°º¸µå °¥°í¸®¸¦ »ç¿ëÇÏ´Â ÇÖÅ°´Â Send ¸í·É¾î·Î Ã˹߽Ãų ¼ö ¾ø½À´Ï´Ù. ºñ½ÁÇÏ°Ô, ¸¶¿ì½º ÇÖÅ°´Â Click ¸í·É¾î·Î Ã˹߽Ãų ¼ö ¾ø½À´Ï´Ù. ¿Ö³ÄÇÏ¸é ¸ðµç ¸¶¿ì½º ÇÖÅ°°¡ ¸¶¿ì½º °¥°í¸®¸¦ »ç¿ëÇϱ⠶§¹®ÀÔ´Ï´Ù. ÇÑ °¡Áö ¿ìȸåÀº Gosub¸¦ »ç¿ëÇÏ¿© °ð¹Ù·Î ÇÖÅ°ÀÇ ¼­ºê·çƾ¿¡ Á¡ÇÁÇÏ´Â °ÍÀÔ´Ï´Ù. ¿¹¸¦ µé¾î: Gosub #LButton.

+

+[v1.1.06+]: #InputLevel ±×¸®°í SendLevel´Â ¾î´À ÇÖÅ° ±×¸®°í ÇÖ½ºÆ®¸µÀÌ Send ¸í·É¾î·Î Ã˹ߵÉÁö Á¦¾îÇÒ ¼ö ÀÖ½À´Ï´Ù.

+

+ÀÌ Áö½Ã¾î°¡ ½ºÅ©¸³Æ®¿¡ ÀüÇô ³ªÅ¸³ªÁö ¾ÊÀ¸¸é, OFF¸¦ ÁöÁ¤ÇÑ °Íó·³ ÇàÀ§ÇÕ´Ï´Ù.

+ +

°ü·Ã Ç׸ñ

+

#InstallKeybdHook, #InstallMouseHook, ListHotkeys, #InputLevel

+ +

¿¹Á¦

+
#UseHook  ; ÀÌ ½ÃÁ¡ ÀÌÈÄ·Î ÇÖÅ°¿¡ ´ëÇÏ¿© °¥°í¸®ÀÇ »ç¿ëÀ» °­Á¦ÇÕ´Ï´Ù.
+#x::MsgBox, ÀÌ ÇÖÅ°´Â °¥°í¸®·Î ±¸ÇöµÉ °ÍÀÔ´Ï´Ù.
+#y::MsgBox, À̰͵µ ¸¶Âù°¡ÁöÀÔ´Ï´Ù.
+#UseHook off
+#z::MsgBox, ±×·¯³ª ÀÌ°ÍÀº ¾Æ´Õ´Ï´Ù.
+ + + diff --git a/src/docs/commands/_Warn.htm b/src/docs/commands/_Warn.htm new file mode 100644 index 0000000..2705d81 --- /dev/null +++ b/src/docs/commands/_Warn.htm @@ -0,0 +1,87 @@ + + + + +#Warn + + + + + + + +

#Warn [v1.0.95.00+]

+ +

ƯÁ¤ÇÑ Á¶°Ç¿¡ ´ëÇÑ °æ°í¸¦ ÄÑ°í ²ü´Ï´Ù. öÀÚ¿À·ù°¡ Àְųª ¼±¾ðÀÌ ¾ø´Â °æ¿ì¿Í °°ÀÌ ¿¡·¯¸¦ ³ªÅ¸³¾ ¼öµµ ÀÖ½À´Ï´Ù.

+ +
#Warn [, WarningType, WarningMode]
+ +

¸Å°³º¯¼ö

+
+ +
WarningType
+
+

ÄÑ°í ²ø °æ°íÀÇ Á¾·ù. »ý·«Çϸé, AllÀÌ ±âº»°ªÀÔ´Ï´Ù.

+

UseUnsetLocal ¶Ç´Â UseUnsetGlobal: º¯¼ö°¡ ÀÌÀü¿¡ °ªÀÌ ÇÒ´çµÇ¾î ÀÖÁö ¾Ê°Å³ª VarSetCapacity·Î ÃʱâÈ­µÇÁö ¾ÊÀº ä·Î ÀÐÇôÁö¸é °æ°í¸¦ º¸³À´Ï´Ù. º¯¼ö¸¦ ºñ¿ï ¸ñÀûÀ̶ó¸é, ºó ¹®ÀÚ¿­À» ÇÒ´çÇØ ÀÌ °æ°í¸¦ ´©¸£½Ê½Ã¿À.

+

+ Áö¿ª º¯¼ö¿Í Àü¿ª º¯¼ö¿¡ ´ëÇÏ¿© µû·Î °æ°í À¯ÇüÀÌ ³ª´²Áý´Ï´Ù. Àü¿ª º¯¼ö´Â ¿µ¼ÓÀûÀÌ°í ½ºÅ©¸³Æ®-Àüü¿¡ °ÉÃÄ ¿µÇâÀ» ¹ÌÄ¡´Â ¼ºÁúÀÌ ÀÖÀ¸¹Ç·Î ¹Ì¸® ÃʱâÈ­ÇÏÁö ¾Ê°í »ç¿ëÇÏ´Â °ÍÀÌ º¸´Ù ÀϹÝÀûÀ̱⠶§¹®ÀÔ´Ï´Ù. ÀÌ·± ÀÌÀ¯·Î, ¾î¶² ½ºÅ©¸³Æ® ÀúÀÚ´Â ÀÌ·± Á¾·ùÀÇ °æ°í¸¦ Áö¿ª º¯¼ö¿¡´Â ÄÑ°í Àü¿ª º¯¼ö¿¡´Â ²ô°í ½Í¾îÇÕ´Ï´Ù.

+
#Warn
+;y := ""  ; ÀÌ·¸°Ô ÇÏ¸é °æ°í¸¦ ´©¸¨´Ï´Ù.
+x := y    ; y¿¡´Â ¾ÆÁ÷ °ªÀÌ ÇÒ´çµÇÁö ¾Ê¾Ò½À´Ï´Ù.
+

+ UseEnv: ȯ°æ º¯¼ö°¡ ºó ½ºÅ©¸³Æ® º¯¼ö ´ë½Å¿¡ ÀÚµ¿À¸·Î »ç¿ëµÇ¸é °æ°í¸¦ º¸³À´Ï´Ù. ÀÌ·± ÀÏÀº Á¾Á¾ ȯ°æ º¯¼öÀÇ À̸§ÀÌ ¿¹»óÄ¡ ¸øÇÏ°Ô ½ºÅ©¸³Æ®°¡ »ç¿ëÇÏ´Â º¯¼ö¿¡ ÀÏÄ¡ÇÒ ¶§ ÀϾ´Ï´Ù. ÀÌ °æ°í´Â º¯¼ö¿¡ Á¢±ÙÇÒ ¶§ ÀϾ´Ï´Ù. ±×·¯³ª ½ºÅ©¸³Æ®¿¡ #NoEnv°¡ ÄÑÁ® ÀÖÀ¸¸é Àý´ë·Î ÀϾÁö ¾Ê½À´Ï´Ù (¿©·¯ °¡Áö ÀÌÀ¯·Î ±ÇÀåÇÔ).

+
#Warn
+;#NoEnv             ; ÀÌ°ÍÀ» Ãß°¡ÇØ "temp"°¡ ȯ°æ º¯¼ö°¡ ¾Æ´Ï¶ó°í ¹àÈ÷½Ê½Ã¿À.
+;EnvGet temp, TEMP  ; ÀÌ·¸°Ô Çϸé ȯ°æ º¯¼öÀÇ °ªÀ» ½ºÅ©¸³Æ® º¯¼ö ¾ÈÀ¸·Î º¹»çÇÒ °ÍÀÔ´Ï´Ù.
+temp := ""          ; ÀÌ ÁÙÀ» »èÁ¦Çصµ, temp´Â ¿©ÀüÈ÷ °ªÀ» °¡Áö°í ÀÖ½À´Ï´Ù.
+MsgBox % temp       ; ÀÌ°ÍÀº À̸§ÀÌ "TEMP"ÀΠȯ°æ º¯¼ö¿¡ Á¢±ÙÇÕ´Ï´Ù.
+

+ LocalSameAsGlobal: ½ºÅ©¸³Æ®°¡ ½ÇÇàÀ» ½ÃÀÛÇϱâ Àü¿¡, Àü¿ª º¯¼ö¿Í À̸§ÀÌ °°Àº ¼±¾ðµÇÁö ¾ÊÀº Áö¿ª º¯¼ö¿¡ ´ëÇÏ¿© °æ°í¸¦ º¸¿©ÁÝ´Ï´Ù. ÀÌ°ÍÀº ±ô¹ÚÀØ°í Àü¿ª º¯¼ö¸¦ ÇÔ¼ö ¾È¿¡ ¼±¾ðÇÑ ´ÙÀ½, °Å±â¿¡ Á¢±ÙÀ» ½ÃµµÇÏ¸é ¾ß±âµÇ´Â ¿¡·¯¸¦ ¹æÁöÇϱâ À§ÇÑ ¸ñÀûÀÔ´Ï´Ù. ±× º¯¼ö°¡ ½ÇÁ¦·Î Áö¿ª º¯¼öÀ̱⸦ ÀǵµÇß´Ù¸é, local x ¶Ç´Â static y¿Í °°ÀÌ ¼±¾ðÇÏ¿© °æ°í¸¦ ´©¸¦ ¼ö ÀÖ½À´Ï´Ù.

+ +
#Warn
+g := 1
+ShowG() {       ; ÇÔ¼ö¸¦ È£ÃâÇÏÁö ¾Ê¾Æµµ °æ°í°¡ ³ªÅ¸³³´Ï´Ù.
+    ;global g   ; <-- Àü¿ª º¯¼ö¿¡ Á¢±ÙÇϱâ À§ÇØ ÇÊ¿äÇÕ´Ï´Ù.
+    MsgBox % g  ; ¼±¾ðÇÒ ÇÊ¿ä¾øÀÌ, "g"´Â ºó Áö¿ª º¯¼öÀÔ´Ï´Ù.
+}
+

+ All: ÁÖ¾îÁø WarningMode¸¦ Áö¿øµÇ´Â ¸ðµç °æ°í À¯Çü¿¡ Àû¿ëÇÕ´Ï´Ù.

+
+ +
WarningMode
+
+

¾î¶»°Ô °æ°í¸¦ º¸³¾Áö °¡¸®Å°´Â °ª. »ý·«µÇ¸é, ±âº»°ªÀº MsgBoxÀÔ´Ï´Ù.

+

MsgBox: °æ°í¸¦ ±â¼úÇÏ´Â ¸Þ½ÃÁö ¹Ú½º¸¦ º¸¿©ÁÝ´Ï´Ù. ¸Þ½ÃÁö ¹Ú½º¸¦ ¹¬»ìÇϸé, ½ºÅ©¸³Æ®´Â º¸Åëó·³ ½ÇÇàÀ» °è¼ÓÇÕ´Ï´Ù.

+

StdOut [v1.1.04+]: °æ°í¸¦ ±â¼úÇÏ´Â ¸»À» Ç¥ÁØÃâ·Â(stdout)À¸·Î º¸³À´Ï´Ù (ÇÁ·Î±×·¥ÀÇ Ç¥ÁØ Ãâ·Â ½ºÆ®¸²). ÆÄÀÏ À̸§°ú ÁÙ ¹øÈ£¸¦ ÇÔ²² º¸³À´Ï´Ù. ÀÌ ´öºÐ¿¡ SciTE°°Àº ȯ»óÀûÀÎ ÆíÁý±âµéÀº ½ºÅ©¸³Æ®¸¦ ¹æÇØÇÏÁö ¾Ê°í °æ°í¸¦ ³ªÆ÷ÇÒ ¼ö ÀÖ½À´Ï´Ù - »ç¿ëÀÚ´Â ³ªÁß¿¡ ÆíÁý±âÀÇ Ãâ·Â ÆÇÀ» ÅëÇÏ¿© ¹®Á¦ÀÇ ÁÙ¿¡ Á¡ÇÁÇØ °¥ ¼ö ÀÖ½À´Ï´Ù.

+

OutputDebug: È­¸é¿¡ º¸¿©ÁÖ±â À§ÇØ °æ°í ¹®±¸¸¦ µð¹ö°Å¿¡°Ô º¸³À´Ï´Ù. µð¹ö°Å°¡ ÄÑÁ® ÀÖÁö ¾ÊÀ¸¸é, ¾Æ¹« È¿°ú°¡ ¾ø½À´Ï´Ù. ´õ ÀÚ¼¼ÇÑ Á¤º¸´Â OutputDebug¸¦ ÂüÁ¶ÇϽʽÿÀ.

+

Off: ÁÖ¾îÁø WarningTypeÀÇ °æ°í¸¦ ²ü´Ï´Ù.

+
+ +
+

³íÆò

+

±âº»°ªÀ¸·Î, ¸ðµç °æ°í´Â ²¨Á® ÀÖ½À´Ï´Ù.

+

°æ°í´Â ½ÇÇà½Ã°£¿¡´Â ÄÑ°í ²ø ¼ö ¾ø½À´Ï´Ù; ¼³Á¤Àº ½ºÅ©¸³Æ®°¡ ÀûÀçµÉ ¶§ °áÁ¤µË´Ï´Ù. ±×·¯¹Ç·Î, ½ºÅ©¸³Æ®¿¡¼­ À§Ä¡´Â Àǹ̰¡ ¾ø½À´Ï´Ù (±×¸®°í, ´Ù¸¥ # Áö½Ã¾îó·³, #WarnÀº Á¶°ÇÀûÀ¸·Î ½ÇÇàÇÒ ¼ö ¾ø½À´Ï´Ù).

+

+ ±×·¸Áö¸¸, ¿©·¯ #Warn Áö½Ã¾îÀÇ ¼ø¼­´Â Àǹ̰¡ ÀÖ½À´Ï´Ù: ¸¶Áö¸·À¸·Î ³ªÅ¸³ª ÁÖ¾îÁø °æ°í¸¦ ¼³Á¤ÇÑ Áö½Ã¾î°¡ ±× °æ°í¿¡ ´ëÇÑ ¸ðµå¸¦ °áÁ¤ÇÕ´Ï´Ù. ±×·¡¼­, ¿¹¸¦ µé¾î, UseEnv¸¦ Á¦¿ÜÇÏ°í ¾Æ·¡ÀÇ µÎ ¼­¼ú¹®Àº Á¶ÇÕÇÏ¿© ¸ðµç °æ°í¸¦ ÄÒ È¿°ú°¡ ÀÖ½À´Ï´Ù:

+ +
#Warn All
+#Warn UseEnv, Off
+
+EnvSet EnvVar, 1
+x := EnvVar       ; #NoEnv°¡ »ç¿ëµÇÁö ¾Ê¾ÒÀ¸¹Ç·Î ¹®Á¦°¡ ¾ø½À´Ï´Ù.
+x := NotAnEnvVar  ; °æ°í.
+
+ +

°ü·Ã Ç׸ñ

+

+Áö¿ª º¯¼ö¿Í Àü¿ª º¯¼ö

+ +

¿¹Á¦

+
+#Warn All, Off                    ; ¸ðµç °æ°í¸¦ ²ü´Ï´Ù. ÀÌ°ÍÀÌ ±âº» »óÅÂÀÔ´Ï´Ù.
+#Warn                             ; ¸ðµç Á¾·ùÀÇ °æ°í¸¦ ÄÕ´Ï´Ù; °¢ °æ°í¸¦ ¸Þ½ÃÁö »óÀÚ¿¡ º¸¿©ÁÝ´Ï´Ù.
+#Warn UseUnsetLocal, OutputDebug  ; Áö¿ª º¯¼ö¸¦ ¼³Á¤Çϱâ Àü¿¡ »ç¿ëµÇ¸é °æ°íÇÕ´Ï´Ù; OutputDebug·Î °æ°í¸¦ º¸³À´Ï´Ù.
+
+ + + diff --git a/src/docs/commands/_WinActivateForce.htm b/src/docs/commands/_WinActivateForce.htm new file mode 100644 index 0000000..fda806b --- /dev/null +++ b/src/docs/commands/_WinActivateForce.htm @@ -0,0 +1,29 @@ + + + + +#WinActivateForce + + + + + + + +

#WinActivateForce

+ +

âÀ» È°¼ºÈ­ÇÏ´Â ºÎµå·¯¿î ¹æ¹ýÀ» °Ç³Ê ¶Ù°í °ð¹Ù·Î °­Á¦·Î È°¼ºÈ­ÇÕ´Ï´Ù.

+ +
#WinActivateForce
+

+ÀÌ°ÍÀ» ½ºÅ©¸³Æ® ¾î´À °÷¿¡³ª ÁöÁ¤Çϸé âÀ» È°¼ºÈ­ÇÏ´Â ¸í·É¾î°¡ -- WinActivate, WinActivateBottom, ±×¸®°í GroupActivate °°Àº ¸í·É¾î -- âÀ» È°¼ºÈ­ÇÏ´Â "ºÎµå·¯¿î" ¹æ¹ýÀ» °Ç³Ê¶Ù°í °ð¹Ù·Î ´õ °­·ÂÇÑ ¹æ¹ýÀ» »ç¿ëÇÕ´Ï´Ù.

+

+ÀÌ Áö½Ã¾î´Â º¸Åë âÀ» ¾ó¸¶³ª »¡¸® ¾ó¸¶³ª ½Å·Ú¼ºÀÌ ÀÖ°Ô È°¼ºÈ­ ÇØ¾ß ÇÏ´ÂÁö´Â º¯°æÇÏÁö ¾Ê½À´Ï´Ù. ±×·¯³ª ¿©·¯ ´Ù¸¥ âµéÀÌ Àçºü¸£°Ô ¼­·Î È°¼ºÈ­ µÉ ¶§ ŽºÅ©¹Ù ¹öÆ°ÀÌ ¹ø½ÀÌ´Â °ÍÀ» ¸·À» ¼öµµ ÀÖ½À´Ï´Ù.

+ +

°ü·Ã Ç׸ñ

+

WinActivate, WinActivateBottom, GroupActivate

+

¿¹Á¦

+
#WinActivateForce
+ + + diff --git a/src/docs/commands/index.htm b/src/docs/commands/index.htm new file mode 100644 index 0000000..4593bf4 --- /dev/null +++ b/src/docs/commands/index.htm @@ -0,0 +1,1199 @@ + + + + +Alphabetical Command and Function Index + + + + + + + + +

¸í·É¾î¿Í ÇÔ¼ö À妽º

+

+´õ ÀÚ¼¼ÇÑ Á¤º¸´Â ÇÔ¼ö³ª ¸í·É¾î À̸§¿¡ Ŭ¸¯ÇϽʽÿÀ. ÀÚÁÖ »ç¿ëÇÏ´Â ¿£Æ®¸®µéÀº Å« ±Û²Ã·Î Ç¥½ÃÇß½À´Ï´Ù.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
¿£Æ®¸®¼³¸í
{ ... } (ºí·Ï)ÇÑ ½ÖÀÇ ¹Ý°ýÈ£´Â ºí·ÏÀ» ³ªÅ¸³À´Ï´Ù. ºí·ÏÀº ÀüÇüÀûÀ¸·Î ÇÔ¼ö, Else, Loop, While-loop, ±×¸®°í IF-¸í·É¾î¿Í ÇÔ²² »ç¿ëµË´Ï´Ù.
{ ... } / Object()½ºÅ©¸³Æ®°¡ °¡´ÉÇÑ ¿¬°ü ¹è¿­À» »ý¼ºÇÕ´Ï´Ù.
[ ... ] / Array()½ºÅ©¸³Æ®°¡ °¡´ÉÇÑ ¿¬°ü ¹è¿­À» Á¤¼ö Å°·Î »ý¼ºÇÕ´Ï´Ù.
Abs()¼ýÀÚÀÇ Àý´ë°ªÀ» µ¹·ÁÁÝ´Ï´Ù.
AutoTrimVar1 = %Var2% ¼­¼ú¹®¿¡¼­ Var2ÀÇ Ã³À½°ú ³¡¿¡¼­ ÅÇ°ú ½ºÆäÀ̽º¸¦ °È¾î³¾Áö ¸»Áö °áÁ¤ÇÕ´Ï´Ù.
ASin()¾ÆÅ©»çÀÎÀ» ¶óµð¾È ´ÜÀ§·Î µ¹·ÁÁÝ´Ï´Ù (Number´Â »çÀÎ °ª).
ACos()¾ÆÅ©ÄÚ»çÀÎÀ» ¶óµð¾È ´ÜÀ§·Î µ¹·ÁÁÝ´Ï´Ù (Number´Â ÄÚ»çÀÎ °ª).
ATan()¾ÆũźÁ¨Æ®¸¦ ¶óµð¾È ´ÜÀ§·Î µ¹·ÁÁÝ´Ï´Ù (Number´Â źÁ¨Æ® °ª).
BlockInput»ç¿ëÀÚ°¡ Å°º¸µå¿Í ¸¶¿ì½º¸¦ ÅëÇÏ¿© ÄÄÇ»ÅÍ¿Í ´ëÈ­Çϵµ·Ï ÄѰųª ²ü´Ï´Ù.
Breakȸµ¹À̸¦ ºüÁ® ³ª¿É´Ï´Ù. ¸ðµç Á¾·ùÀÇ È¸µ¹ÀÌ ¾È¿¡¼­ À¯È¿ÇÕ´Ï´Ù.
Catchtry ¼­¼ú¹®À» ½ÇÇàÇÏ´Â µ¿¾È¿¡ ¿¡·¯°¡ ÀϾ¸é ½ÇÇàÇÒ Äڵ带 ÁöÁ¤ÇÕ´Ï´Ù.
Ceil()Number´Â °¡Àå °¡±î¿î Á¤¼ö·Î ¿Ã¸²µË´Ï´Ù (.00 ¹ö¸²).
ClickÁöÁ¤µÈ ÁÂÇ¥¿¡ ¸¶¿ì½º ¹öÆ°À» Ŭ¸¯ÇÕ´Ï´Ù. ¸¶¿ì½º ¹öÆ°À» ´©¸£°Å³ª, ¸¶¿ì½º ÈÙÀ» µ¹¸®°Å³ª, ¶Ç´Â ¸¶¿ì½º¸¦ À̵¿ÇÒ ¼ö ÀÖ½À´Ï´Ù.
ClipWaitŬ¸³º¸µå¿¡ µ¥ÀÌÅÍ°¡ µé¾î¿Ã ¶§±îÁö ±â´Ù¸³´Ï´Ù.
ComObjActive()µî·ÏµÈ COM °´Ã¼¸¦ ¿­¶÷ÇÕ´Ï´Ù.
ComObjArray()COM¿¡ »ç¿ëÇÒ SAFEARRAY¸¦ »ý¼ºÇÕ´Ï´Ù.
ComObjConnect()COM °´Ã¼ÀÇ À̺¥Æ® ¼Ò½º¸¦ ÁÖ¾îÁø Á¢µÎ»ç¸¦ °¡Áø ÇÔ¼öµé¿¡ ¿¬°áÇÕ´Ï´Ù.
ComObjCreate()COM °´Ã¼¸¦ »ý¼ºÇÕ´Ï´Ù.
ComObjEnwrap() / ComObjUnwrap()COM °´Ã¼¸¦ ½Î°Å³ª DZ´Ï´Ù.
ComObjError()COM ¿¡·¯ÀÇ °íÁö¸¦ ÄѰųª ²ü´Ï´Ù.
ComObjFlags()COM Æ÷ÀåÀÚ °´Ã¼ÀÇ ÇàÀ§¸¦ Á¦¾îÇÏ´Â Ç÷¡±×¸¦ ¿­¶÷Çϰųª º¯°æÇÕ´Ï´Ù.
ComObjGet()COM ÄÄÆ÷³ÍÆ®°¡ Á¦°øÇÏ´Â °´Ã¼ÀÇ ÂüÁ¶ ÁÖ¼Ò¸¦ µ¹·ÁÁÝ´Ï´Ù.
ComObjMissing()COM ¸Þ½îµå¿¡ °Ç³Ú "missing parameter" °´Ã¼¸¦ ¸¸µì´Ï´Ù.
ComObjParameter()°ª°ú À¯ÇüÀ» ½Î¼­ ¸Å°³º¯¼ö·Î COM ¸Þ½îµå¿¡ °Ç³Ü´Ï´Ù.
ComObjQuery()COM °´Ã¼¿¡ ÀÎÅÍÆäÀ̽º³ª ¼­ºñ½º¸¦ ÁúÀÇÇÕ´Ï´Ù.
ComObjType()COM °´Ã¼¿¡¼­ À¯Çü Á¤º¸¸¦ ¿­¶÷ÇÕ´Ï´Ù.
ComObjValue()COM Æ÷ÀåÀÚ °´Ã¼¿¡ ÀúÀåµÈ °ªÀ̳ª Æ÷ÀÎÅ͸¦ ¿­¶÷ÇÕ´Ï´Ù.
ContinueÇöÀç ³²¾Æ Àִ ȸµ¹ÀÌ ¹Ýº¹À» °Ç³Ê¶Ù°í ´Ù½Ã »õ·Î ȸµ¹À̸¦ ½ÃÀÛÇÕ´Ï´Ù. ¾î¶² Á¾·ùÀÇ È¸µ¹ÀÌ ¾È¿¡¼­µµ À¯È¿ÇÕ´Ï´Ù.
ControlÄÜÆ®·Ñ¿¡ ´Ù¾çÇÑ º¯°æÀ» ÇÕ´Ï´Ù.
ControlClick¸¶¿ì½º ¹öÆ° À̺¥Æ®³ª ¸¶¿ì½º ÈÙ À̺¥Æ®¸¦ ÄÜÆ®·Ñ¿¡ º¸³À´Ï´Ù.
ControlFocusâÀ§ÀÇ ÄÜÆ®·Ñ¿¡ ÀÔ·Â ÃÊÁ¡À» ¼³Á¤ÇÕ´Ï´Ù.
ControlGetÄÜÆ®·Ñ¿¡ °üÇÏ¿© ´Ù¾çÇÑ À¯Çü Á¤º¸¸¦ ¿­¶÷ÇÕ´Ï´Ù.
ControlGetFocus¸ñÇ¥ â¿¡¼­ ¾î´À ÄÜÆ®·ÑÀÌ ÀÔ·Â ÃÊÁ¡À» °¡Áö°í ÀÖ´ÂÁö ¿­¶÷ÇÕ´Ï´Ù.
ControlGetPosÄÜÆ®·ÑÀÇ À§Ä¡¿Í Å©±â¸¦ ¿­¶÷ÇÕ´Ï´Ù.
ControlGetTextÄÜÆ®·Ñ¿¡¼­ ÅؽºÆ®¸¦ ¿­¶÷ÇÕ´Ï´Ù.
ControlMoveÄÜÆ®·ÑÀ» À̵¿Çϰųª Å©±â¸¦ ¹Ù²ß´Ï´Ù.
ControlSend / ControlSendRaw½Ã¹Ä·¹ÀÌÆ® Å°¸¦ âÀ̳ª ÄÜÆ®·Ñ¿¡ Àü¼ÛÇÕ´Ï´Ù.
ControlSetTextÄÜÆ®·ÑÀÇ ÅؽºÆ®¸¦ ¹Ù²ß´Ï´Ù.
CoordMode´Ù¾çÇÑ ¸í·É¾î¿¡ ´ëÇÏ¿© ÁÂÇ¥ ¸ðµå¸¦ È°¼º âÀ̳ª È­¸é¿¡ »ó´ëÀûÀ¸·Î ¼³Á¤ÇÕ´Ï´Ù.
Cos()¼ýÀÚÀÇ »ï°¢ÇÔ¼ö ÄÚ»çÀÎÀ» µ¹·ÁÁÝ´Ï´Ù .
CriticalÇöÀç ¾²·¹µå°¡ ´Ù¸¥ ½º·¹µå¿¡ ÀÎÅÍ·´Æ®¸¦ ´çÇÏÁö ¾Êµµ·Ï ¹æÁöÇϰųª, ÀÎÅÍ·´Æ® µÇµµ·Ï Çã¿ëÇÕ´Ï´Ù.
DetectHiddenTextâ¿¡¼­ º¸ÀÌÁö ¾Ê´Â ÅؽºÆ®¸¦ "º¸¿©ÁÙÁö ¸»Áö" °áÁ¤ÇÕ´Ï´Ù. âÀ» ã´Â ¸ñÀû¿¡ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. ÀÌ ¸í·É¾î´Â IfWinExist¿Í WinActivate °°Àº ¸í·É¾î¿¡ ¿µÇâÀ» ¹ÌĨ´Ï´Ù.
DetectHiddenWindowsº¸ÀÌÁö ¾ÊÀº âÀ» ½ºÅ©¸³Æ®¿¡ "º¸¿©ÁÙÁö ¸»Áö" °áÁ¤ÇÕ´Ï´Ù.
DllCall()Ç¥ÁØ Windows API ÇÔ¼ö¿Í °°Àº, DLL ¾ÈÀÇ ÇÔ¼ö¸¦ È£ÃâÇÕ´Ï´Ù.
DriveCD µå¶óÀ̺곪 DVD µå¶óÀ̺êÀÇ Æ®·¹À̸¦ ²¨³»°Å³ª ³Ö½À´Ï´Ù. ¶Ç´Â µå¶óÀ̺êÀÇ º¼·ý ¶óº§À» ¼³Á¤ÇÕ´Ï´Ù.
DriveGetÄÄÇ»ÅÍÀÇ µå¶óÀ̺꿡 °üÇÏ¿© ´Ù¾çÇÑ À¯ÇüÀÇ Á¤º¸¸¦ ¿­¶÷ÇÕ´Ï´Ù.
DriveSpaceFreeµå¶óÀ̺êÀÇ ¿©À¯ °ø°£À» ¸Þ°¡ ¹ÙÀÌÆ® ´ÜÀ§·Î ¿­¶÷ÇÕ´Ï´Ù.
EditÇöÀç ½ºÅ©¸³Æ®¸¦ ÆíÁýÇϱâ À§ÇØ ¿¬°ü ÆíÁý±â¿¡ ¿±´Ï´Ù.
ElseIF-¼­¼ú¹®ÀÌ FALSE·Î Æò°¡µÇ¸é ¼öÇàÇÒ ¸í·É¾î(µé)À» ÁöÁ¤ÇÕ´Ï´Ù. ¸í·É¾î°¡ µÎ °³ ÀÌ»ó Á¸ÀçÇϸé, ºí·Ï (°ýÈ£)¿¡ µÑ·¯ ½Î ³ÖÀ¸½Ê½Ã¿À.
EnvAddÁÖ¾îÁø °ªÀ» º¯¼ö¿¡ ´õÇØ ÀÚ±â Àڽſ¡ ÇÒ´çÇÕ´Ï´Ù. (³¯Â¥-½Ã°£ °ª¿¡¼­ ´õÇϰųª »¬ ¼öµµ ÀÖ½À´Ï´Ù). ´ÙÀ½°ú µ¿µîÇÕ´Ï´Ù: Var += Value.
EnvDivº¯¼ö¸¦ ÁÖ¾îÁø °ªÀ¸·Î ³ª´©¾î¼­ ÀÚ±â Àڽſ¡ ÇÒ´çÇÕ´Ï´Ù: Var /= Value.
EnvGetȯ°æ º¯¼ö¸¦ ¿­¶÷ÇÕ´Ï´Ù.
EnvMultº¯¼ö¸¦ ÁÖ¾îÁø °ª¸¸Å­ °öÇؼ­ ÀÚ±â Àڽſ¡ ÇÒ´çÇÕ´Ï´Ù. ´ÙÀ½°ú µ¿µîÇÕ´Ï´Ù: Var *= Value.
EnvSetȯ°æ¿¡ ´ã±ä º¯¼ö¿¡ °ªÀ» ¾¹´Ï´Ù.
EnvSubÁÖ¾îÁø °ªÀ» º¯¼ö¿¡¼­ »©¼­ ÀÚ±â Àڽſ¡ ÇÒ´çÇÕ´Ï´Ù (³¯Â¥-½Ã°£ °ªÀ» ºñ±³ÇÏ´Â µ¥¿¡µµ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù). ´ÙÀ½°ú µ¿µîÇÕ´Ï´Ù: Var -= Value.
EnvUpdateOS´Â ¹°·Ð ½ÇÇà ÁßÀÎ ¸ðµç ¾îÇø®ÄÉÀ̼ǿ¡ ȯ°æ º¯¼ö°¡ ¹Ù²î¾úÀ½À» °íÁöÇÕ´Ï´Ù.
ExitÇöÀç ¾²·¹µå¸¦ ºüÁ® ³ª¿À°Å³ª (½ºÅ©¸³Æ®°¡ ¿µ¼ÓÀûÀÌ ¾Æ´Ï°í ÇÖÅ°µµ ÀüÇô ¾ø´Ù¸é) Àüü ½ºÅ©¸³Æ®¸¦ ³¡³À´Ï´Ù.
ExitApp½ºÅ©¸³Æ®¸¦ ¹«Á¶°Ç Á¾·áÇÕ´Ï´Ù.
Exp()e (´ë·« 2.71828182845905)¸¦ N ¸¸Å­ Á¦°öÇؼ­ µ¹·ÁÁÝ´Ï´Ù.
FileAppendÅؽºÆ®¸¦ ÆÄÀÏ ³¡¿¡ ¾¹´Ï´Ù (ÇÊ¿äÇϸé, ¸ÕÀú ÆÄÀÏÀ» »ý¼ºÇÕ´Ï´Ù).
FileCopyÆÄÀÏÀ» º¹»çÇÕ´Ï´Ù.
FileCopyDirÆú´õ¸¦ º¹»çÇÕ´Ï´Ù. ±×ÀÇ ÇÏÀ§ Æú´õ¿Í ÆÄÀϵµ ÇÔ²² º¹»çµË´Ï´Ù (xcopy¿Í À¯»ç).
FileCreateDirÆú´õ¸¦ »ý¼ºÇÕ´Ï´Ù.
FileCreateShortcut´ÜÃà ÆÄÀÏÀ» »ý¼ºÇÕ´Ï´Ù (.lnk).
FileDeleteÆÄÀÏÀ» »èÁ¦ÇÕ´Ï´Ù.
FileEncodingFileRead, FileReadLine, Loop Read, FileAppend, ±×¸®°í FileOpen¿¡ ´ëÇÏ¿© ±âº» ÆÄÀÏ ÀÎÄÚµùÀ» ¼³Á¤ÇÕ´Ï´Ù.
´ÙÀ½µµ ÂüÁ¶ÇϽʽÿÀ: ÅؽºÆ® ÀÎÄÚµù
FileInstallÁöÁ¤ÇÑ ÆÄÀÏÀ» ½ºÅ©¸³Æ®ÀÇ ÄÄÆÄÀÏ ¹öÀü¿¡ Æ÷ÇÔ½Ãŵ´Ï´Ù.
FileGetAttribÆÄÀÏÀ̳ª Æú´õ°¡ Àбâ Àü¿ëÀÎÁö, ¼ûÀº ÆÄÀÏÀÎÁö µîµîÀÇ ¼Ó¼ºÀ» º¸°íÇÕ´Ï´Ù.
FileGetShortcut´ÜÃà ÆÄÀÏ¿¡ °üÇÑ Á¤º¸¸¦ ¿­¶÷ÇÕ´Ï´Ù(.lnk). ¿¹¸¦ µé¾î ±×ÀÇ ¸ñÇ¥ ÆÄÀÏ.
FileGetSizeÆÄÀÏÀÇ Å©±â¸¦ ¿­¶÷ÇÕ´Ï´Ù.
FileGetTimeÆÄÀÏÀ̳ª Æú´õÀÇ ³¯Â¥½Ã°£ µµÀåÀ» ¿­¶÷ÇÕ´Ï´Ù.
FileGetVersionÆÄÀÏÀÇ ¹öÀüÀ» ¿­¶÷ÇÕ´Ï´Ù.
FileMoveÆÄÀÏÀ» À̵¿Çϰųª À̸§À» ¹Ù²ß´Ï´Ù.
FileMoveDirÆú´õ¸¦ ±×ÀÇ ÇÏÀ§ Æú´õ ÆÄÀÏ°ú ÇÔ²² À̵¿ÇÕ´Ï´Ù. Æú´õ À̸§À» ¹Ù²Ü ¼öµµ ÀÖ½À´Ï´Ù.
FileOpen°´Ã¼-ÁöÇâÀû ÆÄÀÏ I/O¸¦ Á¦°øÇÕ´Ï´Ù.
FileReadÆÄÀÏÀÇ ³»¿ëÀ» º¯¼ö ¾ÈÀ¸·Î ÀÐ¾î µéÀÔ´Ï´Ù.
FileReadLineÁöÁ¤µÈ ÁÙÀ» ÆÄÀϷκÎÅÍ ÀÐ¾î ±× ÅؽºÆ®¸¦ º¯¼ö¿¡ ÀúÀåÇÕ´Ï´Ù.
FileRecycleÆÄÀÏÀ̳ª µð·ºÅ丮¸¦ ÈÞÁöÅëÀ¸·Î º¸³À´Ï´Ù.
FileRecycleEmptyÈÞÁöÅëÀ» ºñ¿ó´Ï´Ù.
FileRemoveDirÆú´õ¸¦ »èÁ¦ÇÕ´Ï´Ù.
FileSelectFile»ç¿ëÀÚ°¡ ÆÄÀÏÀ» ¿­°Å³ª ÀúÀåÇÒ ¼ö ÀÖµµ·Ï Ç¥ÁØ ´ëÈ­»óÀÚ¸¦ º¸¿©ÁÝ´Ï´Ù.
FileSelectFolder

»ç¿ëÀÚ°¡ Æú´õ¸¦ ¼±ÅÃÇÒ ¼ö ÀÖµµ·Ï Ç¥ÁØ ´ëÈ­»óÀÚ¸¦ º¸¿©ÁÝ´Ï´Ù.

FileSetAttribÆÄÀÏÀ̳ª Æú´õÀÇ ¼Ó¼ºÀ» º¯°æÇÕ´Ï´Ù. ¿ÍÀϵåÄ«µå¸¦ Áö¿øÇÕ´Ï´Ù.
FileSetTimeÆÄÀÏÀ̳ª Æú´õÀÇ ³¯Â¥½Ã°£ µµÀåÀ» º¯°æÇÕ´Ï´Ù. ¿ÍÀϵåÄ«µå¸¦ Áö¿øÇÕ´Ï´Ù.
FinallyTry ¼­¼ú¹®ÀÌ ³¡³ª¸é, ÇÑ ºí·ÏÀÇ Äڵ尡 ¾ðÁ¦³ª È®½ÇÇÏ°Ô ½ÇÇàµÇµµ·Ï ÇÕ´Ï´Ù.
Floor()¼ýÀÚ¸¦ °¡Àå °¡±î¿î Á¤¼ö·Î ¹ö¸²ÇÑ ´ÙÀ½ µ¹·ÁÁÝ´Ï´Ù ( .00À» ¹ö¸²).
For°´Ã¼ ¾ÈÀÇ Å°-°ª ÇÑ ½Ö¸¶´Ù ÀÏ·ÃÀÇ ¸í·É¾î¸¦ ¹Ýº¹ÇÕ´Ï´Ù.
Format°¡º¯ °³¼öÀÇ ÀÔ·Â °ªÀ» Æ÷¸Ë ¹®ÀÚ¿­¿¡ ¸Â°Ô Æ÷¸ËÇÕ´Ï´Ù.
FormatTimeYYYYMMDDHH24MISS ŸÀÓ½ºÅÆÇÁ¸¦ ÁöÁ¤µÈ ³¯Â¥/½Ã°£ Çü½ÄÀ¸·Î º¯ÇüÇÕ´Ï´Ù.
Func()ÇÔ¼ö¸¦ °¡¸®Å°´Â ÂüÁ¶ÁÖ¼Ò¸¦ ¿­¶÷ÇÕ´Ï´Ù.
GetKeyName()
GetKeyVK()
GetKeySC()
°¡»ó Å° ÄÚµå ¶Ç´Â Å°ÀÇ ½ºÄµ ÄÚµåÀÇ À̸§ ¶Ç´Â ÅؽºÆ®¸¦ ¿­¶÷ÇÕ´Ï´Ù.
GetKeyStateÅ°º¸µå Å°³ª ¸¶¿ì½º/Á¶À̽ºÆ½ ¹öÆ°ÀÌ ´­·¯ ÀÖ´ÂÁö ¶¾ »óÅÂÀÎÁö Á¡°ËÇÕ´Ï´Ù. ¶Ç Á¶À̽ºÆ½ÀÇ »óŸ¦ ¿­¶÷ÇÕ´Ï´Ù.
GosubÁöÁ¤µÈ ¶óº§·Î Á¡ÇÁÇؼ­ ReturnÀ» ¸¸³¯ ¶§±îÁö ½ÇÇàÀ» °è¼ÓÇÕ´Ï´Ù.
GotoÁöÁ¤µÈ ¶óº§·Î Á¡ÇÁÇØ ½ÇÇàÀ» °è¼ÓÇÕ´Ï´Ù.
GroupActivateGroupAdd·Î Á¤ÀÇµÈ Ã¢ ±×·ì¿¡¼­ ´ÙÀ½ âÀ» È°¼ºÈ­ÇÕ´Ï´Ù.
GroupAddâÀ» â ±×·ì¿¡ Ãß°¡ÇÕ´Ï´Ù. ÇÊ¿äÇϸé â ±×·ìÀ» »ý¼ºÇÕ´Ï´Ù.
GroupClose¹Ù·Î Àü¿¡ GroupActivate³ª GroupDeactivate¿¡ ÀÇÇÏ¿© È°¼ºÈ­µÇ¾ú´ø È°¼º âÀ» ´Ý½À´Ï´Ù . + ±× ´ÙÀ½¿¡ ¿¬¼ÓÀûÀ¸·Î ±× ´ÙÀ½ âÀ» È°¼ºÈ­ÇÕ´Ï´Ù. ±×·ì¿¡ ÀÖ´Â ¸ðµç âÀ» ´ÝÀ» ¼öµµ ÀÖ½À´Ï´Ù.
GroupDeactivateGroupActivate¿Í ºñ½ÁÇÕ´Ï´Ù. ´Ü ±×·ì¿¡ ¾ø´Â ´ÙÀ½ âÀ» È°¼ºÈ­ÇÑ´Ù´Â Á¡ÀÌ ´Ù¸¨´Ï´Ù.
Guiâ°ú ÄÜÆ®·ÑÀ» »ý¼ºÇÏ°í °ü¸®ÇÕ´Ï´Ù. ¸¸µç âÀº µ¥ÀÌÅÍ ÀÔ·Â ÆûÀ̳ª ¸ÂÃã »ç¿ëÀÚ ÀÎÅÍÆäÀ̽º¿¡ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù.
GuiControl±¸ÀÌ Ã¢ÀÇ ÄÜÆ®·Ñ¿¡ ´Ù¾çÇÑ º¯°æÀ» ÇÕ´Ï´Ù.
GuiControlGet±¸ÀÌ ÅÁÀÇ ÄÜÆ®·Ñ¿¡ °üÇÏ¿© ´Ù¾çÇÑ À¯ÇüÀÇ Á¤º¸¸¦ ¿­¶÷ÇÕ´Ï´Ù.
Hotkey½ºÅ©¸³Æ®°¡ ½ÇÇà ÁßÀÎ µ¿¾È, ÇÖÅ°¸¦ »ý¼º, º¯°æ, È°¼ºÈ­, ¶Ç´Â ºÒ´ÉÈ­ÇÕ´Ï´Ù.
ifº¯¼ö¸¦ º¯¼ö¿¡ ºñ±³ÇØ TRUE·Î Æò°¡µÇ¸é ¼öÇàÇÒ ¸í·É¾î(µé)À» ÁöÁ¤ÇÕ´Ï´Ù. µÎ °³ ÀÌ»ó ¸í·É¾î°¡ Á¸ÀçÇϸé, ºí·Ï (¹Ý°ýÈ£) ¾È¿¡ ½Î ³ÖÀ¸½Ê½Ã¿À.
if (expression)Ç¥Çö½ÄÀÌ TRUE·Î Æò°¡µÉ ¶§ ¼öÇàÇÒ ¸í·É¾î(µé)À» ÁöÁ¤ÇÕ´Ï´Ù.
If var [not] betweenº¯¼öÀÇ ³»¿ëÀÌ ¼ýÀÚ ¼ø¼­·Î ¶Ç´Â ¾ËÆĺª ¼ø¼­·Î µÎ °ª »çÀÌ¿¡ (Æ÷ÇÔ) ÀÖ´ÂÁö Á¡°ËÇÕ´Ï´Ù.
If var [not] in/contains MatchListº¯¼öÀÇ ³»¿ëÀÌ ¸®½ºÆ® ¾ÈÀÇ Ç׸ñ¿¡ ºÎÇÕÇÏ´ÂÁö Á¡°ËÇÕ´Ï´Ù.
If var is [not] typeº¯¼öÀÇ ³»¿ëÀÌ ¼ýÀÚÀÎÁö, ´ë¹®ÀÚÀÎÁö µîµîÀ» Á¡°ËÇÕ´Ï´Ù.
IfEqual / IfNotEqualº¯¼ö°¡°¡ °ª°ú °°ÀºÁö ºñ±³ÇÕ´Ï´Ù. ´ÙÀ½°ú µ¿µîÇÕ´Ï´Ù: if Var = Value | if Var <> Value.
IfExist / + FileExist()ÆÄÀÏÀ̳ª Æú´õ°¡ Á¸ÀçÇÏ´ÂÁö Á¡°ËÇÕ´Ï´Ù.
IfGreater / IfGreaterOrEqualº¯¼ö¸¦ °ª¿¡ ºñ±³ÇÕ´Ï´Ù. ´ÙÀ½°ú µ¿µîÇÕ´Ï´Ù: if Var > Value | if Var >= Value.
IfInString / InStr()º¯¼ö¿¡ ÁöÁ¤µÈ ¹®ÀÚ¿­ÀÌ Æ÷ÇԵǾî ÀÖ´ÂÁö Á¡°ËÇÕ´Ï´Ù.
IfLess / IfLessOrEqualº¯¼ö¸¦ °ª¿¡ ºñ±³ÇÕ´Ï´Ù. ´ÙÀ½°ú µ¿µîÇÕ´Ï´Ù: if Var < Value | if Var <= Value.
IfMsgBox°¡Àå ÃÖ±ÙÀÇ MsgBox ¸í·ÉÀ» ¼öÇàÇÏ´Â µ¿¾È »ç¿ëÀÚ°¡ ¾î´À ¹öÆ°À» ´­·¶´ÂÁö Á¡°ËÇÕ´Ï´Ù.
IfWinActive / IfWinNotActive
ÁöÁ¤µÈ âÀÌ Á¸ÀçÇÏ´ÂÁö ±×¸®°í ÇöÀç È°¼º »óÅ (Àü°æ)ÀÎÁö Á¡°ËÇÕ´Ï´Ù.
IfWinExist / IfWinNotExist
ÁöÁ¤µÈ âÀÌ Á¸ÀçÇÏ´ÂÁö Á¡°ËÇÕ´Ï´Ù.
ImageSearchÈ­¸é¿¡¼­ À̹ÌÁö¸¦ °Ë»öÇÕ´Ï´Ù.
IniDeleteÇ¥ÁØ Çü½ÄÀÇ .ini ÆÄÀϷκÎÅÍ °ªÀ» Áö¿ó´Ï´Ù.
IniReadÇ¥ÁØ Çü½ÄÀÇ .ini ÆÄÀϷκÎÅÍ °ªÀ» ÀнÀ´Ï´Ù.
IniWriteÇ¥ÁØ Çü½ÄÀÇ .ini ÆÄÀÏ¿¡ °ªÀ» ¾¹´Ï´Ù.
Input»ç¿ëÀÚ°¡ ¹®ÀÚ¿­À» ŸÀÚÇϱ⸦ ±â´Ù¸³´Ï´Ù.
InputBoxÀÔ·Â ¹Ú½º¸¦ º¸¿©ÁÖ°í »ç¿ëÀÚ°¡ ¹®ÀÚ¿­À» ŸÀÚÇØ ³Ö±â¸¦ ¿ä±¸ÇÕ´Ï´Ù.
InStr()ÁÖ¾îÁø ¹®ÀÚ¿­ÀÌ ³ªÅ¸³ª´ÂÁö ¿ÞÂÊ¿¡¼­ ¿À¸¥ÂÊÀ¸·Î °Ë»öÇÕ´Ï´Ù.
IsByRef()ByRef ¸Å°³º¯¼ö¿¡ °ªÀÌ ÁÖ¾îÁ³´ÂÁö °áÁ¤ÇÕ´Ï´Ù.
IsFunc()ÇÔ¼ö¸¦ µ¿ÀûÀ¸·Î È£ÃâÇÒ ¼ö ÀÖ´ÂÁö ¾Ë·ÁÁÝ´Ï´Ù.
IsLabel()ÁÖ¾îÁø °ªÀÌ ¶óº§¿¡ Á¸ÀçÇÏ´ÂÁö Á¡°ËÇÕ´Ï´Ù.
IsObject()°ªÀÌ °´Ã¼ÀÎÁö °áÁ¤ÇÕ´Ï´Ù.
KeyHistory½ºÅ©¸³Æ® Á¤º¸ ±×¸®°í °¡Àå ÃÖ±ÙÀÇ Å°´­¸²°ú ¸¶¿ì½º Ŭ¸¯ÀÇ ÀÌ·ÂÀ» º¸¿©ÁÝ´Ï´Ù.
KeyWaitÅ°³ª ¸¶¿ì½º/Á¶À̽ºÆ½ ¹öÆ°À» ´©¸¦ ¶§±îÁö ¶Ç´Â ¶¿ ¶§±îÁö ±â´Ù¸³´Ï´Ù.
ListHotkeysÇöÀç ½ºÅ©¸³Æ®°¡ »ç¿ë ÁßÀÎ ÇÖÅ°µéÀ» È­¸é¿¡ º¸¿©ÁÝ´Ï´Ù. ±×µéÀÇ ¼­ºê·çƾÀÌ ÇöÀç ½ÇÇà ÁßÀÎÁö, ±×¸®°í Å°º¸µå °¥°í¸®³ª ¸¶¿ì½º °¥°í¸®¸¦ »ç¿ëÁßÀÎÁö ¾Æ´ÑÁö ¾Ë·ÁÁÝ´Ï´Ù.
ListLines°¡Àå ÃÖ±Ù¿¡ ½ÇÇàµÈ ½ºÅ©¸³Æ® ÁÙÀ» È­¸é¿¡ º¸¿©ÁÝ´Ï´Ù.
ListVars½ºÅ©¸³Æ®ÀÇ º¯¼öµéÀ» º¸¿©ÁÝ´Ï´Ù: À̸§°ú ÇöÀç ³»¿ë.
Log()¼ýÀÚÀÇ »ó¿ë ·Î±×¸¦ µ¹·ÁÁÝ´Ï´Ù (¹Ø¼ö 10).
Ln()¼ýÀÚÀÇ ÀÚ¿¬ ·Î±×¸¦ µ¹·ÁÁÝ´Ï´Ù (¹Ø¼ö e).
Loop (º¸Åë)ÀÏ·ÃÀÇ ¸í·É¾îµéÀ» ¹Ýº¹ÀûÀ¸·Î ¼öÇàÇÕ´Ï´Ù: ÁöÁ¤µÈ Ƚ¼ö¸¸Å­ ¶Ç´Â break¸¦ ¸¸³¯ ¶§±îÁö.
Loop (ÆÄÀÏ & Æú´õ)ÁöÁ¤µÈ ÆÄÀÏÀ̳ª Æú´õ¸¦ ÇÑ ¹ø¿¡ Çϳª¾¿ ¿­¶÷ÇÕ´Ï´Ù.
Loop (¹®ÀÚ¿­ ÆĽÌ)¹®ÀÚ¿­·ÎºÎÅÍ ¼­ºê½ºÆ®¸µ(Çʵå)¸¦ ÇÑ ¹ø¿¡ Çϳª¾¿ ÆĽÌÇÕ´Ï´Ù.
Loop (ÆÄÀÏ ³»¿ë Àбâ)ÅؽºÆ® ÆÄÀÏ¿¡¼­ ÁÙÀ» ÇÑ ¹ø¿¡ ÇÑ ÁÙ¾¿ ¿­¶÷ÇÕ´Ï´Ù (FileReadLineº¸´Ù ¼öÇ༺´ÉÀÌ ´õ ÁÁ½À´Ï´Ù).
Loop (·¹Áö½ºÆ®¸®)ÁöÁ¤µÈ ·¹Áö½ºÆ®¸® ¼­ºêÅ°ÀÇ ³»¿ëÀ» ÇÑ ¹ø¿¡ Çϳª¾¿ ¿­¶÷ÇÕ´Ï´Ù.
Menu¸Þ´º¿Í ¸Þ´º Ç׸ñÀ» »ý¼º, »èÁ¦, º¯°æ ±×¸®°í º¸¿©ÁÝ´Ï´Ù. Æ®·¹ÀÌ ¾ÆÀÌÄÜ°ú ±×ÀÇ ÅøÆÁÀ» º¯°æÇÕ´Ï´Ù. ÄÄÆÄÀÏµÈ ½ºÅ©¸³Æ®ÀÇ ¸ÞÀΠâÀ» ¿­Áö ¸»Áö Á¦¾îÇÕ´Ï´Ù.
Mod()³ª¸ÓÁö(Modulo) ¿¬»êÀÔ´Ï´Ù. ÇÇÁ¬¼ö(Dividend)¸¦ Á¬¼ö(Divisor)·Î ³ª´©°í ³ª¸ÓÁö¸¦ µ¹·ÁÁÝ´Ï´Ù.
MouseClick¸¶¿ì½º ¹öÆ°À» Ŭ¸¯Çϰųª ´©¸¨´Ï´Ù. ¶Ç´Â ¸¶¿ì½º ÈÙÀ» µ¹¸³´Ï´Ù. ÁÖÀÇ: Click ¸í·É¾î°¡ ÀϹÝÀûÀ¸·Î ´õ À¯¿¬ÇÏ°í »ç¿ëÇϱⰡ ´õ ½±½À´Ï´Ù.
MouseClickDragÁöÁ¤µÈ ¸¶¿ì½º ¹öÆ°À» Ŭ¸¯ÇÏ°í ´©¸¨´Ï´Ù. ¸¶¿ì½º¸¦ ¸ñÇ¥ ÁÂÇ¥·Î À̵¿ÇÕ´Ï´Ù. ±×¸®°í ¸¶¿ì½º¸¦ ¶Á´Ï´Ù.
MouseGetPos¸¶¿ì½º Ä¿¼­ÀÇ ÇöÀç À§Ä¡¸¦ ¿­¶÷ÇÕ´Ï´Ù. ±×¸®°í ¼±ÅÃÀûÀ¸·Î ¾î´À â°ú ÄÜÆ®·Ñ À§¿¡ ÀÖ´ÂÁö ¿­¶÷ÇÕ´Ï´Ù.
MouseMove¸¶¿ì½º Ä¿¼­¸¦ À̵¿ÇÕ´Ï´Ù.
MsgBoxÁöÁ¤µÈ ÅؽºÆ®¸¦ ÀÛÀº ⠾ȿ¡ º¸¿©ÁÝ´Ï´Ù. ¾È¿¡ ¹öÆ°ÀÌ µé¾î ÀÖ½À´Ï´Ù (¿¹¸¦ µé¾î Yes ±×¸®°í No).
NumGet()ÁöÁ¤µÈ ÁÖ¼Ò+¿ÀÇÁ¼Â¿¡ ÀúÀåµÈ ÀÌÁø ¼ýÀÚ¸¦ ¿­¶÷ÇÕ´Ï´Ù.
NumPut()ÁöÁ¤µÈ ÁÖ¼Ò+¿ÀÇÁ¼Â¿¡ ÀÌÁø ÇüÅÂÀÇ ¼ýÀÚ¸¦ ÀúÀåÇÕ´Ï´Ù.
OnExit½ºÅ©¸³Æ®°¡ Á¾·áÇÒ ´ë ÀÚµ¿À¸·Î ½ÇÇàÇÒ ¼­ºê·çƾÀ» ÁöÁ¤ÇÕ´Ï´Ù.
OnMessage()½ºÅ©¸³Æ®°¡ ÁöÁ¤µÈ ¸Þ½ÃÁö¸¦ ¹ÞÀ» ¶§ ÀÚµ¿À¸·Î È£ÃâÇÒ ÇÔ¼ö¸¦ ÁöÁ¤ÇÕ´Ï´Ù.
OutputDebug¹®ÀÚ¿­À» (ÀÖ´Ù¸é) µð¹ö°Å¿¡ º¸³» º¸¿©ÁÝ´Ï´Ù.
Pause½ºÅ©¸³Æ®ÀÇ ÇöÀç ¾²·¹µå¸¦ Á¤ÁöÇÕ´Ï´Ù.
PixelGetColorÁöÁ¤µÈ ÁÂÇ¥¿¡¼­ Çȼ¿ÀÇ »öÀ» ¿­¶÷ÇÕ´Ï´Ù.
PixelSearchÈ­¸é ±¸¿ªÀ» °Ë»öÇØ ÁöÁ¤µÈ »öÀ» °¡Áø Çȼ¿À» ã½À´Ï´Ù.
PostMessage¸Þ½ÃÁö¸¦ âÀ̳ª ÄÜÆ®·ÑÀÇ ¸Þ½ÃÁö Å¥¿¡ ³Ö½À´Ï´Ù.
ProcessÇÁ·Î¼¼½º¿¡ ´ÙÀ½ ¿¬»ê Áß Çϳª¸¦ ¼öÇàÇÕ´Ï´Ù: Á¸ÀçÇÏ´ÂÁö Á¡°ËÇÕ´Ï´Ù; ¿ì¼±¼øÀ§¸¦ º¯°æÇÕ´Ï´Ù; ´Ý½À´Ï´Ù; ³¡³ª±â¸¦ ±â´Ù¸³´Ï´Ù.
ProgressÁøô »çÇ× ¹Ù¸¦ ´ã°í Àִ âÀ» »ý¼ºÇϰųª °»½ÅÇÕ´Ï´Ù.
RandomÀÇ»ç-¹«ÀÛÀ§ ¼ö¸¦ »ý¼ºÇÕ´Ï´Ù.
RegExMatch()¹®ÀÚ¿­¿¡ ÆÐÅÏ(Á¤±Ô Ç¥Çö½Ä)À» ´ãÀ»Áö ¸»Áö °áÁ¤ÇÕ´Ï´Ù.
RegExReplace()¹®ÀÚ¿­ ¾È¿¡¼­ ÆÐÅÏ (Á¤±Ô Ç¥Çö½Ä)¿¡ ºÎÇÕÇÏ´Â °ÍµéÀ» ±³Ã¼ÇÕ´Ï´Ù.
RegDelete·¹Áö½ºÆ®¸®¿¡¼­ ¼­ºêÅ°³ª °ªÀ» »èÁ¦ÇÕ´Ï´Ù.
RegRead°ªÀ» ·¹Áö½ºÆ®¸®¿¡¼­ ÀнÀ´Ï´Ù.
RegWrite°ªÀ» ·¹Áö½ºÆ®¸®¿¡ ¾¹´Ï´Ù.
RegisterCallback()È£Ãâ µÉ ¶§ ¸Ó½Å-ÄÚµå ÁÖ¼Ò¸¦ »ý¼ºÇؼ­, ±× È£ÃâÀ» ½ºÅ©¸³Æ®ÀÇ ÇÔ¼ö·Î ¹æÇâÀüȯÇÕ´Ï´Ù.
ReloadÇöÀç ½ÇÇàÁßÀÎ ½ºÅ©¸³Æ®ÀÇ ½Çü¸¦ »õ·Î¿î ½Çü·Î ±³Ã¼ÇÕ´Ï´Ù.
Return¼­ºê·çƾÀ¸·ÎºÎÅÍ ÀÌÀü¿¡ ½ÇÇàÀ» Á¡ÇÁÇß´ø °÷À¸·Î µ¹¾Æ°©´Ï´Ù. ÇÔ¼ö-È£Ãâ, Gosub, ÇÖÅ° È°¼ºÈ­, GroupActivate, ±âŸ µîµîÀÇ ¹æ¹ýÀ¸·Î Á¡ÇÁÇß´ø °÷À¸·Î µ¹¾Æ°©´Ï´Ù.
Round() + NÀÌ »ý·«µÇ°Å³ª 0À̸é, Number´Â °¡Àå °¡±î¿î Á¤¼ö·Î ¹ö¸²µË´Ï´Ù. NÀÌ ¾ç¼öÀ̸é, Number´ÂN°³ÀÇ ½ÊÁø ÀÚ¸®·Î ¹ö¸²µË´Ï´Ù. NÀÌ À½¼öÀ̸é, Number´Â ¼Ò¼öÁ¡ ¿ÞÂÊÀ¸·Î N ÀÚ¸®¼ö ¸¸Å­ ¹ö¸²µË´Ï´Ù.
Run¿ÜºÎ ÇÁ·Î±×·¥À» ½ÇÇàÇÕ´Ï´Ù.
RunAsÀÌ ´ÙÀ½ºÎÅÍ Run°ú RunWait¸¦ »ç¿ëÇϱâ À§ÇØ »ç¿ëÀÚ ½Å¿ëÀå ¼¼Æ®¸¦ ÁöÁ¤ÇÕ´Ï´Ù.
RunWait¿ÜºÎ ÇÁ·Î±×·¥À» ½ÇÇàÇÏ°í ³¡³¯ ¶§±îÁö ±â´Ù¸³´Ï´Ù.
Send / SendRaw / SendInput / SendPlay½Ã·ü·¹ÀÌÆ®µÈ Å°´­¸²°ú ¸¶¿ì½º Ŭ¸¯À» È°¼º â¿¡ Àü¼ÛÇÕ´Ï´Ù.
SendLevelÀÎÀ§ÀûÀÎ Å°´­¸²°ú ¸¶¿ì½º À̺¥Æ®¸¦ ÇÖÅ°¿Í ÇÖ½ºÆ®¸µÀÌ ¹«½ÃÇÒÁö ¸»Áö Á¦¾îÇÕ´Ï´Ù.
SendMessage¸Þ½ÃÁö¸¦ âÀ̳ª ÄÜÆ®·Ñ¿¡ Àü¼ÛÇÏ°í ½ÂÀÎÀ» ±â´Ù¸³´Ï´Ù.
SendMode±âº» (SendEvent) °ªÀÌ ¾Æ´Ï¶ó, Send¸¦ SendInputÀ̳ª SendPlay¿Í µ¿ÀÏÇÏ°Ô ¸¸µì´Ï´Ù. ¶ÇClick ±×¸®°í MouseMove/Click/Drag°¡ ÁöÁ¤µÈ ¸Þ½îµå¸¦ »ç¿ëÇϵµ·Ï ¸¸µì´Ï´Ù.
SetBatchLines¾ó¸¶³ª »¡¸® ½ºÅ©¸³Æ®¸¦ ½ÇÇàÇÒÁö °áÁ¤ÇÕ´Ï´Ù (CPU ÀÌ¿ë¿¡ ¿µÇâÀ» ¹ÌĨ´Ï´Ù).
SetCapslockStateCapslock Å°ÀÇ »óŸ¦ ¼³Á¤ÇÕ´Ï´Ù.°­Á¦·Î ¿Â ¶Ç´Â ¿ÀÇÁ »óŸ¦ À¯ÁöÇÒ ¼ö ÀÖ½À´Ï´Ù.
SetControlDelay°¢ ÄÜÆ®·Ñ-º¯°æ ¸í·É¾î ´ÙÀ½¿¡ Áö¿¬ ½Ã°£À» ¼³Á¤ÇÕ´Ï´Ù.
SetDefaultMouseSpeed¸¶¿ì½º ¼Óµµ¸¦ ¼³Á¤ÇÕ´Ï´Ù. Click ±×¸®°í MouseMove/Click/Drag¿¡ ÁöÁ¤µÇ¾î ÀÖÁö ¾ÊÀ» °æ¿ì À¯¿ëÇÕ´Ï´Ù.
SetEnv (Var = Value)ÁöÁ¤µÈ °ªÀ» º¯¼ö¿¡ ÇÒ´çÇÕ´Ï´Ù.
SetFormat¼öÇÐ ¿¬»êÀ¸·Î »ý»êµ· Á¤¼ö¿Í ºÎµ¿ ¼Ò¼öÁ¡ ¼öÀÇ Çü½ÄÀ» ¼³Á¤ÇÕ´Ï´Ù.
SetKeyDelaySend³ª ControlSend·Î Å°¸¦ ´©¸¥ ÈÄ¿¡ Áö¿¬µÉ ½Ã°£À» ¼³Á¤ÇÕ´Ï´Ù.
SetMouseDelay¸¶¿ì½º À̵¿À̳ª Ŭ¸¯ ÈÄ¿¡ Áö¿¬µÉ ½Ã°£À» ¼³Á¤ÇÕ´Ï´Ù.
SetNumlockStateNumlock Å°ÀÇ »óŸ¦ ¼³Á¤ÇÕ´Ï´Ù. °­Á¦·Î ¿Â ¶Ç´Â ¿ÀÇÁ »óŸ¦ À¯ÁöÇÒ ¼ö ÀÖ½À´Ï´Ù.
SetScrollLockStateScrolllock Å°ÀÇ »óŸ¦ ¼³Á¤ÇÕ´Ï´Ù. °­Á¦·Î ¿Â ¶Ç´Â ¿ÀÇÁ »óŸ¦ À¯ÁöÇÒ ¼ö ÀÖ½À´Ï´Ù.
SetRegView32-ºñÆ® ½ºÅ©¸³Æ®¿¡¼­ ·¹Áö½ºÆ®¸® ¸í·É¾î°¡ 64-ºñÆ® ·¹Áö½ºÆ®¸® ºä¿¡ Á¢±ÙÇÏ´Â °ÍÀ» ±×¸®°í ±× ¹Ý´ë¸¦ Çã¿ëÇÕ´Ï´Ù.
SetStoreCapslockModeSend ÈÄ¿¡ CapsLockÀÇ »óŸ¦ º¹±¸ÇÒÁö ¸»Áö °áÁ¤ÇÕ´Ï´Ù .
SetTimer¼­ºê·çƾÀÌ ÀÚµ¿À¸·Î ±×¸®°í ¹Ýº¹ÀûÀ¸·Î ÁöÁ¤µÈ ½Ã°£ °£°Ý¸¶´Ù ±âµ¿µÇµµ·Ï ¸¸µì´Ï´Ù.
SetTitleMatchModeWinWait¿Í °°Àº ¸í·É¾î¿Í °°ÀÌ, WinTitle ¸Å°³º¯¼öÀÇ ºÎÇÕ ÇàÀ§¸¦ ¼³Á¤ÇÕ´Ï´Ù.
SetWinDelayWinActivate¿Í °°ÀÌ, °¢ â ¸í·É¾î ´ÙÀ½¿¡ Áö¿¬ ½Ã°£À» ¼³Á¤ÇÕ´Ï´Ù.
SetWorkingDir½ºÅ©¸³Æ®ÀÇ ÇöÀç ÀÛ¾÷ µð·ºÅ丮¸¦ º¯°æÇÕ´Ï´Ù.
Shutdown½Ã½ºÅÛÀ» ´Ý°Å³ª, Àç½ÃÀÛÇϰųª ¶Ç´Â ·Î±×¿ÀÇÁ ÇÕ´Ï´Ù.
Sin()NumberÀÇ »ï°¢ »çÀÎ °ªÀ» µ¹·ÁÁÝ´Ï´Ù.
SleepÁöÁ¤µÈ ½Ã°£ µ¿¾È ±â´Ù¸° ´ÙÀ½ °è¼Ó ÁøÇàÇÕ´Ï´Ù.
Sortº¯¼öÀÇ ³»¿ëÀ» ¾ËÆĺª, ¼ýÀÚ, ¶Ç´Â ¹«ÀÛÀ§ ¼ø¼­·Î Á¤·ÄÇÕ´Ï´Ù (¼±ÅÃÀûÀ¸·Î Áߺ¹À» Á¦°ÅÇÕ´Ï´Ù).
SoundBeepPC ½ºÇÇÄ¿·Î ÅæÀ» ¹æÃâÇÕ´Ï´Ù.
SoundGet»ç¿îµå ÀåÄ¡·ÎºÎÅÍ ´Ù¾çÇÑ ¼³Á¤À» ¿­¶÷ÇÕ´Ï´Ù (¸¶½ºÅÍ À½¼Ò°Å, ¸¶½ºÅÍ º¼·ý µîµî.)
SoundGetWaveVolume»ç¿îµå ÀåÄ¡·ÎºÎÅÍ ¿þÀ̺ê Ãâ·Â º¼·ýÀ» ¿­¶÷ÇÕ´Ï´Ù.
SoundPlay»ç¿îµå, ºñµð¿À, ¶Ç´Â ±âŸ Áö¿øµÇ´Â ÆÄÀÏ À¯ÇüÀ» ¿¬ÁÖÇÕ´Ï´Ù.
SoundSet»ç¿îµå ÀåÄ¡ÀÇ ´Ù¾çÇÑ ¼³Á¤À» º¯°æÇÕ´Ï´Ù (¸¶½ºÅÍ À½¼Ò°Å, ¸¶½ºÅÍ º¼·ý µîµî.)
SoundSetWaveVolume»ç¿îµå ÀåÄ¡¸¦ À§ÇØ ¿þÀ̺ê Ãâ·Â º¼·ýÀ» º¯°æÇÕ´Ï´Ù.
SplashImageJPG, GIF, ¶Ç´Â BMP À̹ÌÁö¸¦ ´ã°í Àִ âÀ» ¸¸µé°Å³ª °»½ÅÇÕ´Ï´Ù.
SplashTextOn¸ÂÃã °¡´ÉÇÑ ÅؽºÆ® Æ˾÷ âÀ» »ý¼ºÇÕ´Ï´Ù.
SplashTextOffÀ§ÀÇ Ã¢À» ´Ý½À´Ï´Ù.
SplitPathÆÄÀÏ À̸§À̳ª URLÀ» À̸§, µð·ºÅ丮, È®ÀåÀÚ, ±×¸®°í µå¶óÀ̺ê·Î °¡¸¨´Ï´Ù.
Sqrt()NumberÀÇ Æò¹æ±ÙÀ» µ¹·ÁÁÝ´Ï´Ù.
StatusBarGetTextÇ¥ÁØ »óÅ ¹Ù ÄÜÆ®·ÑÀ¸·ÎºÎÅÍ ÅؽºÆ®¸¦ ¿­¶÷ÇÕ´Ï´Ù.
StatusBarWaitÂ÷ÀÇ »óÅ ¹Ù¿¡ ÁöÁ¤µÈ ¹®ÀÚ¿­ÀÌ µé¾î¿Ã ¶§±îÁö ±â´Ù¸³´Ï´Ù.
StrPut() / StrGet()¹®ÀÚ¿­À» ¸Þ¸ð¸® ÁÖ¼Ò·Î º¹»çÇϰųª º¹»çÇØ ¿É´Ï´Ù. ¼±ÅÃÀûÀ¸·Î ÄÚµå ÆäÀÌÁö¿¡ ¸Â°Ô º¯È¯ÇÕ´Ï´Ù.
StringCaseSense¹®ÀÚ¿­ ºñ±³¿¡ ´ë¼Ò¹®ÀÚ¸¦ ±¸ºÐÇÒÁö °áÁ¤ÇÕ´Ï´Ù. (±âº»°ªÀº "´ë¼Ò¹®ÀÚ¸¦ ±¸º°ÇÏÁö ¾Ê½À´Ï´Ù").
StringGetPos / InStr()¹®ÀÚ¿­ ¾È¿¡¼­ ÁöÁ¤µÈ ºÎºÐ¹®ÀÚ¿­ÀÇ À§Ä¡¸¦ ¿­¶÷ÇÕ´Ï´Ù.
StringLeft¹®ÀÚ¿­ÀÇ ¿ÞÂÊÀ¸·ÎºÎÅÍ ¿©·¯ ¹®ÀÚ¸¦ ¿­¶÷ÇÕ´Ï´Ù.
StringLen / StrLen()¹®ÀÚ¿­¿¡ µéÀº ¹®ÀÚÀÇ °¹¼ö¸¦ ¿­¶÷ÇÕ´Ï´Ù.
StringLower¹®ÀÚ¿­À» ¼Ò¹®ÀÚ·Î º¯È¯ÇÕ´Ï´Ù.
StringMid / SubStr()¹®ÀÚ¿­¿¡¼­ ÁöÁ¤µÈ À§Ä¡·ÎºÎÅÍ Çϳª ÀÌ»óÀÌ ¹®ÀÚ¸¦ ¿­¶÷ÇÕ´Ï´Ù.
StringReplaceÁöÁ¤µÈ ºÎºÐ¹®ÀÚ¿­À» »õ ¹®ÀÚ¿­·Î ±³Ã¼ÇÕ´Ï´Ù.
StringRight¹®ÀÚ¿­ÀÇ ¿À¸¥ÂÊÀ¸·ÎºÎÅÍ ¹®ÀÚµéÀ» ¿­¶÷ÇÕ´Ï´Ù.
StringSplit¹®ÀÚ¿­À» ÁöÁ¤µÈ °¡¸§ÀÚ¸¦ »ç¿ëÇÏ¿© ºÎºÐ ¹®ÀÚ¿­ ¹è¿­·Î °¡¸¨´Ï´Ù.
StringTrimLeft¹®ÀÚ¿­ÀÇ ¿ÞÂÊÀ¸·ÎºÎÅÍ ¹®ÀÚµéÀ» Á¦°ÅÇÕ´Ï´Ù.
StringTrimRight¹®ÀÚ¿­ÀÇ ¿À¸¥ÂÊÀ¸·ÎºÎÅÍ ¹®ÀÚµéÀ» Á¦°ÅÇÕ´Ï´Ù.
StringUpper¹®ÀÚ¿­À» ´ë¹®ÀÚ·Î º¯È¯ÇÕ´Ï´Ù.
Suspend¼±ÅÃµÈ ¶Ç´Â ¸ðµç ÇÖÅ°¿Í ÇÖ½ºÆ®¸µÀ» ÄÑ°í ²ü´Ï´Ù.
SysGetÈ­¸é ÇØ»óµµ, ´ÙÁß-¸ð´ÏÅÍ Á¤º¸, ½Ã½ºÅÛ °´Ã¼ÀÇ Å©±â, ±×¸®°í ±âŸ ½Ã½ºÅÛ Æ¯¼ºÀ» ¿­¶÷ÇÕ´Ï´Ù.
Tan()NumberÀÇ »ï°¢ źÁ¨Æ®¸¦ µ¹·ÁÁÝ´Ï´Ù.
Thread¾²·¹µåÀÇ ¿ì¼±¼øÀ§ ¶Ç´Â ÀÎÅÍ·´Æ® Çã¿ë ¿©ºÎ¸¦ ¼³Á¤ÇÕ´Ï´Ù. Àӽ÷Π¸ðµç ŸÀ̸Ӹ¦ ²ø ¼öµµ ÀÖ½À´Ï´Ù.
Throw¿¡·¯°¡ ÀϾ´Ù´Â ½ÅÈ£¸¦ º¸³À´Ï´Ù. ÀÌ ½ÅÈ£´Â try-catch ¼­¼ú¹®À¸·Î ÀâÀ» ¼ö ÀÖ½À´Ï´Ù.
ToolTip¾ðÁ¦³ª ÃÖ»óÀ§¿¡ Àִ âÀ» È­¸é ¾îµðµçÁö ¸¸µì´Ï´Ù.
TransformÀâ´ÙÇÑ ¼öÇÐ ±â´É, ºñÆ®º° ¿¬»ê, ±×¸®°í ASCII/À¯´ÏÄÚµå º¯È¯ °°Àº ÀÛ¾÷À» ¼öÇàÇÕ´Ï´Ù.
TrayTipdz¼± ¸Þ½ÃÁö¸¦ Æ®·¹ÀÌ ¾ÆÀÌÄÜ ±Ùó¿¡ ¸¸µì´Ï´Ù.
Trim¹®ÀÚ¿­ÀÇ ¾Õ/µÚ¿¡¼­ ¹®ÀÚµéÀ» °È¾î³À´Ï´Ù.
TryÇϳª ÀÌ»óÀÇ ¼­¼ú¹® (¸í·É¾î³ª Ç¥Çö½Ä)À» throw ¸í·É¾î°¡ ´øÁö´Â ½ÇÇà½Ã°£ ¿¡·¯¿Í ¿¹¿Ü·ÎºÎÅÍ º¸È£ÇÕ´Ï´Ù.
UntilLoop ¶Ç´Â For-ȸµ¹ÀÌ¿¡ Á¶°ÇÀ» Àû¿ëÇÕ´Ï´Ù.
UrlDownloadToFileÀÎÅͳÝÀ¸·ÎºÎÅÍ ÆÄÀÏÀ» ³»·Á¹Þ½À´Ï´Ù.
Var = valueÁöÁ¤µÈ °ªÀ» º¯¼ö¿¡ ÇÒ´çÇÕ´Ï´Ù.
Var := expressionÇ¥Çö½ÄÀ» Æò°¡Çؼ­ ±× °á°ú¸¦ º¯¼ö¿¡ ÀúÀåÇÕ´Ï´Ù.
VarSetCapacity()º¯¼öÀÇ °¡¿ë ´É·ÂÀ» È®´ëÇϰųª ±×ÀÇ ¸Þ¸ð¸®¸¦ Ç®¾îÁÝ´Ï´Ù. º¸Åë, ÀÌ°ÍÀº DllCall°ú °°ÀÌ ºñÁ¤»óÀûÀÎ »óȲ¿¡¼­¸¸ ÇÊ¿äÇÕ´Ï´Ù.
While-loopÁöÁ¤µÈ Ç¥Çö½ÄÀÌ °ÅÁþÀ¸·Î Æò°¡µÉ ¶§±îÁö ÀÏ·ÃÀÇ ¸í·É¾î¸¦ ¹Ýº¹ÀûÀ¸·Î ½ÇÇàÇÕ´Ï´Ù.
WinActivateÁöÁ¤µÈ âÀ» È°¼ºÈ­ÇÕ´Ï´Ù (Àü°æ È­¸éÀ¸·Î ¸¸µì´Ï´Ù).
WinActivateBottomWinActivate¿Í µ¿ÀÏÇÕ´Ï´Ù. ´Ü ÃÖ»ó´Ü âÀÌ ¾Æ´Ï¶ó (°¡Àå ÃÖ±Ù±îÁöµµ È°¼ºÈ­µÇÁö ¾ÊÀº) ÃÖÇ쫆 ̢À» È°¼ºÈ­ÇÑ´Ù´Â Á¡ÀÌ ´Ù¸¨´Ï´Ù.
WinActive()È°¼ºÃ¢ÀÌ ÁöÁ¤µÈ ±âÁØ¿¡ ºÎÇÕÇÏ¸é ±× À¯ÀÏÇÑ ID (HWND)¸¦ µ¹·ÁÁÝ´Ï´Ù.
WinCloseÁöÁ¤µÈ âÀ» ´Ý½À´Ï´Ù.
WinExist()Á¦ÀÏ Ã³À½ ºÎÇÕÇÑ Ã¢ÀÇ À¯ÀÏÇÑ ID (HWND)¸¦ µ¹·ÁÁÝ´Ï´Ù.
WinGetActiveStatsWinGetActiveTitle ±â´É°ú WinGetPos±â´ÉÀ» ÇϳªÀÇ ¸í·É¾î·Î °áÇÕÇÕ´Ï´Ù.
WinGetActiveTitleÈ°¼º âÀÇ Á¦¸ñÀ» ¿­¶÷ÇÕ´Ï´Ù.
WinGetClassÁöÁ¤µÈ âÀÇ Å¬·¡½º À̸§À» ¿­¶÷ÇÕ´Ï´Ù.
WinGetÁöÁ¤µÈ âÀÇ À¯ÀÏÇÑ ID, ÇÁ·Î¼¼½º ID, ÇÁ·Î¼¼½º À̸§, ¶Ç´Â ±×ÀÇ ÄÜÆ®·Ñ ¸ñ·ÏÀ» ¿­¶÷ÇÕ´Ï´Ù. ¶Ç ÁöÁ¤µÈ ±âÁØ¿¡ ºÎÇÕÇÏ´Â ¸ðµç âÀÇ ¸ñ·ÏÀ» ¿­¶÷ÇÒ ¼öµµ ÀÖ½À´Ï´Ù.
WinGetPosÁöÁ¤µÈ âÀÇ Å©±â¿Í À§Ä¡¸¦ ¿­¶÷ÇÕ´Ï´Ù.
WinGetTextÁöÁ¤µÈ âÀ¸·ÎºÎÅÍ ÅؽºÆ®¸¦ ¿­¶÷ÇÕ´Ï´Ù.
WinGetTitleÁöÁ¤µÈ âÀÇ Á¦¸ñÀ» ¿­¶÷ÇÕ´Ï´Ù.
WinHideÁöÁ¤µÈ âÀ» °¨Ãä´Ï´Ù.
WinKillÁöÁ¤µÈ âÀ» °­Á¦·Î ´Ý½À´Ï´Ù.
WinMaximizeÁöÁ¤µÈ âÀ» ÃÖ´ë Å©±â·Î È®´ëÇÕ´Ï´Ù.
WinMenuSelectItemÁöÁ¤µÈ âÀÇ ¸Þ´º ¹Ù¿¡¼­ ¸Þ´º Ç׸ñÀ» ¿äûÇÕ´Ï´Ù.
WinMinimizeÁöÁ¤µÈ âÀ» ŽºÅ© ¹ÙÀÇ ¹öÆ°À¸·Î Ãà¼ÒÇÕ´Ï´Ù.
WinMinimizeAll¸ðµç âÀ» ÃÖ¼ÒÈ­ÇÕ´Ï´Ù.
WinMinimizeAllUndoÀÌÀü WinMinimizeAllÀÇ È¿°ú¸¦ ¾ðµÎÇÕ´Ï´Ù.
WinMoveÁöÁ¤µÈ âÀÇ À§Ä¡ / Å©±â¸¦ º¯°æÇÕ´Ï´Ù.
WinRestoreÁöÁ¤µÈ âÀÌ ÃÖ´ëÈ­ ¶Ç´Â ÃÖ¼ÒÈ­ »óÅÂÀÌ¸é ¿ø·¡´ë·Î º¹±¸ÇÕ´Ï´Ù.
WinSetÁöÁ¤µÈ â¿¡ ´Ù¾çÇÑ º¯°æÀ» °¡ÇÒ ¼ö ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î "Ç×»ó À§¿¡" ±×¸®°í Åõ¸íµµ.
WinSetTitleÁöÁ¤µÈ âÀÇ Á¦¸ñÀ» ¹Ù²ß´Ï´Ù.
WinShowÁöÁ¤µÈ âÀ» º¸¿©ÁÝ´Ï´Ù.
WinWaitÁöÁ¤µÈ âÀÌ ³¡³¯ ¶§±îÁö ±â´Ù¸³´Ï´Ù.
WinWaitActiveÁöÁ¤µÈ âÀÌ È°¼ºÈ­µÉ ¶§±îÁö ±â´Ù¸³´Ï´Ù.
WinWaitCloseÁöÁ¤µÈ âÀÌ Á¸ÀçÇÏÁö ¾ÊÀ» ¶§±îÁö ±â´Ù¸³´Ï´Ù.
WinWaitNotActiveÁöÁ¤µÈ âÀÌ È°¼ºÈ­µÇÁö ¾ÊÀ» ¶§±îÁö ±â´Ù¸³´Ï´Ù.
#ClipboardTimeoutù ½Ãµµ°¡ ½ÇÆÐÇÒ ¶§ Ŭ¸³º¸µå¿¡ ¾ó¸¶³ª ¿À·§ µ¿¾È Á¢±ÙÀ» ½ÃµµÇÒÁö º¯°æÇÕ´Ï´Ù.
#CommentFlag½ºÅ©¸³Æ®ÀÇ ÁÖ¼® ½Éº¼À» ½Ö¹ÝÁ¡¿¡¼­ ´Ù¸¥ ¹®ÀÚ¿­·Î ¹Ù²ß´Ï´Ù.
#ErrorStdOut½ºÅ©¸³Æ®ÀÇ ±âµ¿À» ¹æÇØÇÏ´Â ±¸¹® ¿¡·¯¸¦ ´ëÈ­»óÀÚ¿¡ º¸¿©ÁÖ´Â ´ë½Å¿¡ Ç¥ÁØ Ãâ·Â(stdout)À¸·Î º¸³À´Ï´Ù.
#EscapeChar½ºÅ©¸³Æ®ÀÇ ÇǽŠ¹®ÀÚ¸¦ ¹Ù²ß´Ï´Ù (¿¹¸¦ µé¾î: ¿ª»ç¼± vs. ¾×¼¾Æ®).
#HotkeyInterval#MaxHotkeysPerInterval°ú ÇÔ²², ÇÖÅ° È°¼ºÈ­ ºñÀ²À» ÁöÁ¤ÇÕ´Ï´Ù. À̸¦ ³Ñ¾î¼­¸é °æ°í ´ëÈ­»óÀÚ°¡ ³ªÅ¸³³´Ï´Ù.
#HotkeyModifierTimeoutÇÖÅ° ¼ö½ÄÀÚÀÇ ÇàÀ§¿¡ ¿µÇâÀ» ¹ÌĨ´Ï´Ù: CTRL, ALT, WIN, ±×¸®°í SHIFT.
#HotstringÇÖ½ºÆ®¸µ ¿É¼ÇÀ̳ª Á¾·á ¹®ÀÚ¸¦ ¹Ù²ß´Ï´Ù.
#If#IfWinActive¿Í ºñ½ÁÇÏÁö¸¸, ¾î¶² Ç¥Çö½Ä¿¡µµ ÀÛµ¿ÇÕ´Ï´Ù.
#IfTimeout#If Ç¥Çö½Ä ÇÑ ÁÙÀ» Æò°¡ÇÏ´Â µ¥ ¼ÒºñÇÒ ÃÖ´ë ½Ã°£À» ¼³Á¤ÇÕ´Ï´Ù.
#IfWinActive / #IfWinExist¹®¸Æ-°¨Áö ÇÖÅ°¿Í ÇÖ½ºÆ®¸µÀ» »ý¼ºÇÕ´Ï´Ù. ¹®¸Æ °¨Áö ÇÖÅ°´Â È°¼ºÈ­µÇ¾î Àִ âÀÇ Á¾·ù¿¡ µû¶ó ¶Ç´Â Á¸Àç ¿©ºÎ¿¡ µû¶ó ´Ù¸¥ ÇàÀ§¸¦ ¼öÇàÇÕ´Ï´Ù.
#Include½ºÅ©¸³Æ®´Â ¸¶Ä¡ ÁöÁ¤µÈ ÆÄÀÏÀÇ ³»¿ëÀÌ ÁöÁ¤ÇÑ À§Ä¡¿¡ Á¤È®ÇÏ°Ô Á¸ÀçÇÏ´Â µí ÇൿÇÕ´Ï´Ù.
#InputLevelÇÖÅ°¿Í ÇÖ½ºÆ®¸µÀÌ ¾î´À ÀÎÀ§ÀûÀÎ Å°º¸µå¿Í ¸¶¿ì½º À̺¥Æ®¸¦ ¹«½ÃÇÒÁö Á¦¾îÇÕ´Ï´Ù.
#InstallKeybdHookÅ°º¸µå °¥°í¸®¸¦ ¹«Á¶°Ç ¼³Ä¡ÇÕ´Ï´Ù.
#InstallMouseHook¸¶¿ì½º °¥°í¸®¸¦ ¹«Á¶°Ç ¼³Ä¡ÇÕ´Ï´Ù.
#KeyHistoryKeyHistory â¿¡ º¸¿©ÁÖ´Â Å°º¸µå¿Í ¸¶¿ì½º À̺¥Æ®ÀÇ ÃÖ´ë °³¼ö¸¦ ¼³Á¤ÇÕ´Ï´Ù. 0À¸·Î ¼³Á¤Çϸé Å° ÀÌ·ÂÀ» º¸¿©ÁÖÁö ¾Ê½À´Ï´Ù.
#LTrim°è¼Ó ¼½¼Ç¿¡¼­ µé¿©¾²±â¸¦ ´ÙµëÀ»Áö ¿©ºÎ¸¦ ¼³Á¤ÇÕ´Ï´Ù.
#MaxHotkeysPerInterval#HotkeyInterval°ú ÇÔ²², ÇÖÅ°ÀÇ È°¼ºÈ­ ºñÀ²À» ¼³Á¤ÇÕ´Ï´Ù. ÀÌ ºñÀ²À» ³Ñ¾î¼­¸é °æ°í ´ëÈ­»óÀÚ°¡ ³ªÅ¸³³´Ï´Ù.
#MaxMem°¢ º¯¼öÀÇ ÃÖ´ë ¸Þ¸ð¸®¸¦ ÁöÁ¤µÈ °³¼öÀÇ ¸Þ°¡¹ÙÀÌÆ®·Î ¼³Á¤ÇÕ´Ï´Ù.
#MaxThreadsµ¿½Ã ¾²·¹µåÀÇ ÃÖ´ë °¹¼ö¸¦ ¼³Á¤ÇÕ´Ï´Ù.
#MaxThreadsBuffer#MaxThreadsPerHotkey ÇÑ°è¿¡ µµ´ÞÇßÀ» ¶§ Å°´­¸²À» ¹«½ÃÇÏÁö ¾Ê°íÇÖÅ°°¡ ¹öÆÛ Ã³¸®µË´Ï´Ù.
#MaxThreadsPerHotkeyÇÖÅ° ¶Ç´Â ÇÖ½ºÆ®¸µ´ç µ¿½Ã ¾²·¹µåÀÇ ÃÖ´ë °³¼ö¸¦ ¼³Á¤ÇÕ´Ï´Ù.
#MenuMaskKeyWin ¶Ç´Â Alt Å°¾÷ À̺¥¸¦ ¸¶½ºÅ©Çϴµ¥ »ç¿ëÇÒ Å°¸¦ º¯°æÇÕ´Ï´Ù.
#NoEnvȯ°æ º¯¼öÀÎÁö ¾Ë¾Æº¸±â À§ÇØ ºó ¹®ÀÚ¿­À» Á¡°ËÇÏÁö ¾Ê½À´Ï´Ù (»õ·Î¿î ¸ðµç ½ºÅ©¸³Æ®¿¡ ±ÇÀåÇÕ´Ï´Ù).
#NoTrayIconÆ®·¹ÀÌ ¾ÆÀÌÄÜÀ» º¸¿©ÁÖÁö ¾Ê½À´Ï´Ù.
#Persistent½ºÅ©¸³Æ®¸¦ ¿µ±¸È÷ ½ÇÇàµÇµµ·Ï À¯ÁöÇÕ´Ï´Ù (Áï, »ç¿ëÀÚ°¡ ´ÝÀ» ¶§±îÁö ¶Ç´Â ExitApp¸¦ ¸¸³¯ ¶§±îÁö).
#SingleInstance½ºÅ©¸³Æ®°¡ ÀÌ¹Ì ½ÇÇà ÁßÀÏ ¶§ ´Ù½Ã ½ÇÇàÇÏ´Â °ÍÀ» Çã¿ëÇÒÁö ¿©ºÎ¸¦ °áÁ¤ÇÕ´Ï´Ù.
#UseHook°¥°í¸®¸¦ »ç¿ëÇØ Å°º¸µå ÇÖÅ°¸¦ ±¸ÇöÇϵµ·Ï °­Á¦ÇÕ´Ï´Ù.
#Warnº¸Åë °³¹ßÀÚÂÊ ¿¡·¯ÀÓÀ» ³ªÅ¸³»´Â ¼±ÅÃµÈ Á¶°Ç¿¡ ´ëÇÏ¿© °æ°í¸¦ ÄѰųª ²ü´Ï´Ù.
#WinActivateForceºÎµå·´°Ô âÀ» È°¼ºÈ­ÇÏÁö ¾Ê°í Á÷Á¢ °­Á¦·Î È°¼ºÈ­ÇÕ´Ï´Ù.
+ + diff --git a/src/docs/license.htm b/src/docs/license.htm new file mode 100644 index 0000000..cd2d597 --- /dev/null +++ b/src/docs/license.htm @@ -0,0 +1,434 @@ + + + License + + + + + + + +

GNU ÀÏ¹Ý °øÁß ÀÌ¿ëÇã¶ô

+ + + + + + + + + + +[ + ¿µ¾î +| Çѱ¹¾î +] + +

+

+ + +


+

+This is an unofficial translation of the GNU General Public License +into Korean. It was not published by the Free Software Foundation, +and does not legally state the distribution terms for software +that uses the GNU GPL -- only the original English text of the +GNU GPL does that. However, I hope that this translation will help +Korean speakers understand the GNU GPL better. +
+ +

+ÀÌ ¹®¼­´Â ÀÚÀ¯ ¼ÒÇÁÆ®¿þ¾î Àç´Ü(Free Software Foundation)ÀÇ +GNU General Public License 2ÆÇÀ» Çѱ¹¾î·Î ¿Å±ä °ÍÀÔ´Ï´Ù. +ÀÌ ¹®¼­´Â GNU GPLÀÌ °¡Áø È£ÇýÀûÀÎ ÀÚÀ¯¿Í °øÀ¯ÀÇ Á¤½ÅÀ» º¸´Ù ¸¹Àº »ç¶÷¿¡°Ô ¾Ë¸®±â À§ÇØ ¸¸µç °ÍÀÌÁö¸¸, ÀÚÀ¯ ¼ÒÇÁÆ®¿þ¾î Àç´ÜÀÇ °ø½Ä ¹®¼­·Î Ãë±ÞµÇ¾î¼­´Â ¾È µË´Ï´Ù. ¿Ö³ÄÇÏ¸é ¿ø¹®ÀÌ ÀǵµÇÏ´Â ³»¿ëÀÌ ¿Ö°îµÇÁö ¾ÊÀ¸¸é¼­ ¹ýÀûÀ¸·Î À¯È¿Çϱâ À§Çؼ­´Â ¾ç±¹ÀÇ ÇöÇà ¹ý·ü°ú ¾ð¾îÀÇ ÀûÇÕ¼º ¿©ºÎ¿¡ ´ëÇÑ °ËÅä ÀÛ¾÷ÀÌ ÇÊ¿äÇÏÁö¸¸, ÀÌ ÀÛ¾÷¿¡´Â Å« ºñ¿ëÀÌ ¿ä±¸µÇ¸ç ÀÚÀ¯ ¼ÒÇÁÆ®¿þ¾î Àç´ÜÀº ±×·¸°Ô ÇÏÁö ¾Ê±â·Î °áÁ¤Ç߱⠶§¹®ÀÔ´Ï´Ù. ¶ÇÇÑ °ø½Ä ¹ø¿ª¹®À¸·Î ÀÎÁ¤µÈ °æ¿ì¶óµµ ´Ù¸¥ ¾ð¾î·ÎÀÇ ¹ø¿ª¿¡ µû¸¥ À§Çè ºÎ´ãÀº ¿©ÀüÈ÷ ³²°Ô µË´Ï´Ù. µû¶ó¼­ ÀÚÀ¯ ¼ÒÇÁÆ®¿þ¾î Àç´ÜÀº ¿À¿ªÀ̳ª Çؼ®»óÀÇ ³­Á¡À¸·Î ÀÎÇØ ¹ß»ýÇÒÁö ¸ð¸¦ È¥¶õ°ú ºÐÀïÀÇ °¡´É¼ºÀ» ¹Ì¸® ¹æÁöÇÏ°í ¹®¼­°¡ ´ã°í ÀÖ´Â ³»¿ë°ú ÃëÁö¸¦ º¸´Ù ¸¹Àº »ç¶÷¿¡°Ô ¾Ë¸®·Á´Â »ó¹ÝµÈ ¸ñÀûÀ», Çѱ¹¾î ¹ø¿ª¹®À» °ø½ÄÀûÀ¸·Î ½ÂÀÎÇÏÁö ¾Ê´Â ¹æ¹ýÀ¸·Î ¾ç¸³½ÃÅ°°í ÀÖ½À´Ï´Ù. + +

+ÀÚÀ¯ ¼ÒÇÁÆ®¿þ¾î Àç´ÜÀº ¾î¶°ÇÑ ¾ð¾î¿¡ ´ëÇؼ­µµ °ø½Ä ¹ø¿ªÀ» ÀÎÁ¤ÇÏÁö ¾ÊÀ¸¸ç ±×·¸°Ô ÇÒ °èȹ ¶ÇÇÑ ¾ø½À´Ï´Ù. ÀÚÀ¯ ¼ÒÇÁÆ®¿þ¾î Àç´ÜÀº GNU GPLÀ» ½Ç¹«¿¡ Àû¿ëÇÒ °æ¿ì ¿ÀÁ÷ ¿µ¹®ÆÇ¿¡ ÀÇÇؼ­¸¸ ¿Ã¹Ù¸¥ ¹ýÀû È¿·ÂÀÌ +¹ß»ýÇÔÀ» ºÐ¸íÈ÷ ÇÏ°í ÀÖ½À´Ï´Ù. ÀÌ ¹ø¿ª¹®Àº ¹ý·ü °ËÅä¿Í ¹®¼­°£ÀÇ µ¿Àϼº ¿©ºÎ¿¡ °üÇÑ °ËÁõÀ» °ÅÄ¡Áö ¾Ê¾ÒÀ¸¸ç, ÀÌ·Î ÀÎÇØ ¹ß»ýÇÒÁö ¸ð¸¦ ¹ý·ü¹®Á¦¿¡ ´ëÇØ ¾î¶°ÇÑ º¸Áõµµ Á¦°øÇÏÁö ¾Ê½À´Ï´Ù. µû¶ó¼­ GNU GPLÀ» »ó¾÷ ¸ñÀûÀ¸·Î »ç¿ëÇÏ·Á°í ÇÒ °æ¿ì¿¡´Â ¹ý·ü Àü¹®°¡ÀÇ ÀÚ¹®À» Á÷Á¢ ±¸ÇØ¾ß ÇÕ´Ï´Ù. ±×·¯³ª ´ëºÎºÐÀÇ »ç¶÷¿¡°Ô´Â ÀÌ ¹ø¿ª¹®ÀÌ Àü´ÞÇÏ·Á´Â ³»¿ë°ú ÃëÁö¸¦ ÀÌÇØÇÏ´Â °Í¸¸À¸·Î ÃæºÐÇÒ °ÍÀÔ´Ï´Ù. GNU GPLÀ» ¿Ã¹Ù¸£°Ô ÀÌÇØÇß´ÂÁö È®ÀÎÇÒ ¼ö ÀÖ´Â +GPL ÄûÁîµµ ÁÁÀº Âü°í°¡ µÉ ¼ö ÀÖ½À´Ï´Ù. + +

+GPL¿¡ ´ëÇÑ ½ÇÁ¦ »ç·ÊµéÀ» ¸ðÀº Âü°íÇÒ ¸¸ÇÑ ÀÚ·áÀÇ Çϳª·Î +GPL +Çؼ³ÀÌ ÀÖ½À´Ï´Ù. + +

+Çѱ¹¾î ¹ø¿ª: 1998³â 6¿ù 18ÀÏ +¼ÛâÈÆ <chsong@gnu.org> + +


+

¸ñ Â÷

+ + +

+


+ +

+

GNU ÀÏ¹Ý °øÁß ÀÌ¿ëÇã¶ô

+

+2ÆÇ, 1991³â 6¿ù + +

Copyright (C) 1989, 1991 Free Software Foundation, Inc. 
+51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA
+
+´©±¸µçÁö º» ÀÌ¿ëÇã¶ôÀ» ÀÖ´Â ±×´ë·Î º¹Á¦ÇÏ°í ¹èÆ÷ÇÒ ¼ö ÀÖ½À´Ï´Ù. ±×·¯³ª º»¹®¿¡ ´ëÇÑ ¼öÁ¤Àº Çã¿ëµÇÁö ¾Ê½À´Ï´Ù. 
+
+ +


+

Àü¹®

+

+¼ÒÇÁÆ®¿þ¾î¿¡ Àû¿ëµÇ´Â ´ëºÎºÐÀÇ ÀÌ¿ëÇã¶ô(license)Àº ¼ÒÇÁÆ®¿þ¾î¿¡ ´ëÇÑ ¼öÁ¤°ú °øÀ¯ÀÇ ÀÚÀ¯¸¦ Á¦ÇÑÇÏ´Â °ÍÀ» ±× ¸ñÀûÀ¸·Î ÇÕ´Ï´Ù. ±×·¯³ª GNU ÀÏ¹Ý °øÁß ÀÌ¿ëÇã¶ô(ÀÌÇÏ, ¡®GPL¡¯À̶ó°í ĪÇÕ´Ï´Ù)Àº ÀÚÀ¯ ¼ÒÇÁÆ®¿þ¾î¿¡ ´ëÇÑ ¼öÁ¤°ú °øÀ¯ÀÇ ÀÚÀ¯¸¦ ¸ðµç »ç¿ëÀÚ¿¡°Ô º¸ÀåÇϱâ À§ÇØ ¼º¸³µÈ °ÍÀÔ´Ï´Ù. ÀÚÀ¯ ¼ÒÇÁÆ®¿þ¾î Àç´ÜÀÌ Á¦°øÇÏ´Â ´ëºÎºÐÀÇ ¼ÒÇÁÆ®¿þ¾î¿¡´Â GPLÀÌ Àû¿ëµÇ¸ç, ¸î¸î ¼ÒÇÁÆ®¿þ¾î¿¡´Â º°µµÀÇ ÀÌ¿ëÇã¶ôÀÎ GNU ¾à¼Ò ÀÏ¹Ý °øÁß ÀÌ¿ëÇã¶ô(GNU Lesser General Public License, ÀÌÇÏ ¡®LGPL¡¯À̶ó°í ĪÇÕ´Ï´Ù)À» ´ë½Å Àû¿ëÇϱ⵵ ÇÕ´Ï´Ù. ÀÚÀ¯ ¼ÒÇÁÆ®¿þ¾î¶õ À̸¦ »ç¿ëÇÏ·Á´Â ¸ðµç »ç¶÷¿¡°Ô µ¿ÀÏÇÑ ÀÚÀ¯¿Í ±Ç¸®¸¦ ÇÔ²² º¸ÀåÇÏ´Â ¼ÒÇÁÆ®¿þ¾î¸¦ ¸»Çϸç ÇÁ·Î±×·¥ ÀúÀÛÀÚÀÇ Àǻ翡 µû¶ó ¾î¶°ÇÑ Á¾·ùÀÇ ÇÁ·Î±×·¥¿¡µµ GPLÀ» Àû¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. ¿©·¯ºÐÀÌ ¸¸µç ÇÁ·Î±×·¥¿¡µµ GPLÀ» Àû¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. + +

+ÀÚÀ¯ ¼ÒÇÁÆ®¿þ¾î¸¦ ¾ð±ÞÇÒ ¶§ »ç¿ëÇÏ´Â `ÀÚÀ¯'¶ó´Â ´Ü¾î´Â ¹«·á¸¦ ÀǹÌÇÏ´Â ±ÝÀüÀûÀÎ Ãø¸éÀÇ ÀÚÀ¯°¡ ¾Æ´Ñ ±¸¼ÓµÇÁö ¾Ê´Â´Ù´Â °üÁ¡¿¡¼­ÀÇ ÀÚÀ¯¸¦ ¸»Çϸç, GPLÀº ÀÚÀ¯ ¼ÒÇÁÆ®¿þ¾î¸¦ ÀÌ¿ëÇÑ º¹Á¦, °³ÀÛ, ¹èÆ÷, ¼öÀÍ »ç¾÷ µî °¡´ÉÇÑ ¸ðµç ÇüÅÂÀÇ ÀÚÀ¯¸¦ ½ÇÁúÀûÀ¸·Î º¸ÀåÇÕ´Ï´Ù. ¿©±â¿¡´Â ¿ø½Ã ÄÚµå(¼Ò½º ÄÚµå)ÀÇ ÀüºÎ ¶Ç´Â ÀϺθ¦ ¿ø¿ëÇؼ­ ÇÁ·Î±×·¥À» °³¼±Çϰųª »õ·Î¿î ÇÁ·Î±×·¥À» âÀÛÇÒ ¼ö ÀÖ´Â ÀÚÀ¯°¡ Æ÷ÇԵǸç, Àڽſ¡°Ô Çã¶ôµÈ ÀÚÀ¯¿Í ±Ç¸®¸¦ º¸´Ù ¸íÈ®ÇÏ°Ô ÀνÄÇÒ ¼ö ÀÖµµ·Ï Çϱâ À§ÇÑ ±ÔÁ¤µµ Æ÷ÇԵǾî ÀÖ½À´Ï´Ù. + +

+GPLÀº GPL ¾È¿¡ ¼ÒÇÁÆ®¿þ¾î ÇÇÀÌ¿ëÇã¶ôÀÚ(licensee)ÀÇ ±Ç¸®¸¦ Á¦ÇÑÇÏ´Â Á¶Ç×°ú ´Ü¼­¸¦ º°µµ·Î Ãß°¡ÇÏÁö ¸øÇÏ°Ô ÇÔÀ¸·Î½á »ç¿ëÀÚÀÇ ÀÚÀ¯¿Í ±Ç¸®¸¦ ½ÇÁ¦·Î º¸ÀåÇÕ´Ï´Ù. ÀÚÀ¯ ¼ÒÇÁÆ®¿þ¾îÀÇ °³ÀÛ°ú ¹èÆ÷¿¡ °ü°èÇÏ´Â »ç¶÷Àº ÀÌ·¯ÇÑ ¹«Á¶°ÇÀûÀÎ ±ÔÁ¤À» ÁؼöÇؾ߸¸ ÇÕ´Ï´Ù. + +

+¿¹¸¦ µé¾î GPL ÇÁ·Î±×·¥À» ¹èÆ÷ÇÒ °æ¿ì¿¡´Â ÇÁ·Î±×·¥ÀÇ À¯·á ÆǸųª ¹«·á ¹èÆ÷¿Í °ü°è¾øÀÌ ÀÚ½ÅÀÌ ±× ÇÁ·Î±×·¥¿¡ ´ëÇØ °¡Áú ¼ö ÀÖ¾ú´ø ¸ðµç ±Ç¸®¸¦, ÇÁ·Î±×·¥À» ¹Þ°Ô µÉ »ç¶÷¿¡°Ô ±×´ë·Î Çã¶ôÇØ ÁÖ¾î¾ß ÇÕ´Ï´Ù. ÀÌ ¶§´Â ÇÁ·Î±×·¥ÀÇ ¿ø½Ã Äڵ带 ÇÔ²² Á¦°øÇϰųª ¿ø½Ã Äڵ带 ±¸ÇÒ ¼ö ÀÖ´Â ¹æ¹ýÀ» È®½ÇÈ÷ ¾Ë·ÁÁÖ¾î¾ß ÇÏ°í ÀÌ ¸ðµç »çÇ×À» »ç¿ëÀÚ°¡ ºÐ¸íÈ÷ ¾Ë ¼ö ÀÖµµ·Ï ÇØ¾ß ÇÕ´Ï´Ù. + +

+ÀÚÀ¯ ¼ÒÇÁÆ®¿þ¾î Àç´ÜÀº ´ÙÀ½ µÎ ´Ü°è¸¦ ÅëÇØ »ç¿ëÀÚÀÇ ±Ç¸®¸¦ º¸È£ÇÕ´Ï´Ù. (1) ¼ÒÇÁÆ®¿þ¾î¿¡ ÀúÀÛ±ÇÀ» ¼³Á¤ÇÕ´Ï´Ù. (2) ½ÇÁ¤¹ý¿¡ µû¶ó À¯È¿ÇÑ ¹ýÀû È¿·ÂÀ» °®´Â GPLÀ» ÅëÇØ ¼ÒÇÁÆ®¿þ¾î¸¦ º¹Á¦Çϰųª °³ÀÛ ¹× ¹èÆ÷ÇÒ ¼ö ÀÖ´Â ±Ç¸®¸¦ »ç¿ëÀÚ¿¡°Ô ºÎ¿©ÇÕ´Ï´Ù. + +

+ÀÚÀ¯ ¼ÒÇÁÆ®¿þ¾î¸¦ »ç¿ëÇÏ´Â »ç¶÷Àº ¹Ýº¹ÀûÀÎ Àç¹èÆ÷ °úÁ¤¿¡¼­ ¼ÒÇÁÆ®¿þ¾î ÀÚü¿¡ ¼öÁ¤°ú º¯ÇüÀÌ ÀϾ ¼ö ÀÖÀ¸¸ç, ÀÌ´Â ÃÖÃÊÀÇ ÀúÀÛÀÚ°¡ ¸¸µç ¼ÒÇÁÆ®¿þ¾î°¡ °¡Áø ¹®Á¦°¡ ¾Æ´Ò ¼ö ÀÖ´Ù´Â °³¿¬¼ºÀ» ÀνÄÇÏ°í ÀÖ¾î¾ß ÇÕ´Ï´Ù. ¿ì¸®´Â °³ÀÛ°ú Àç¹èÆ÷ °úÁ¤¿¡¼­ ´Ù¸¥ »ç¶÷ ¶§¹®¿¡ ¹ß»ýÇÑ ¹®Á¦·Î ÀÎÇØ ÇÁ·Î±×·¥ ¿øÀúÀÛÀÚÀÇ ¸í¼ºÀÌ ÈѼյǴ °ÍÀ» ¿øÄ¡ ¾Ê½À´Ï´Ù. GPL¿¡ ÀÚÀ¯ ¼ÒÇÁÆ®¿þ¾î¿¡ ´ëÇÑ ¾î¶°ÇÑ ÇüÅÂÀÇ º¸Áõµµ ±ÔÁ¤ÇÏÁö ¾Ê´Â ÀÌÀ¯´Â ÀÌ·¯ÇÑ Á¡ÀÌ °í·ÁµÇ¾ú±â ¶§¹®À̸ç, ÀÌ´Â ÇÁ·Î±×·¥ ¿øÀúÀÛÀÚ¿Í ÀÚÀ¯ ¼ÒÇÁÆ®¿þ¾î Àç´ÜÀÇ ÀÚÀ¯·Î¿î È°µ¿À» º¸ÀåÇÏ´Â Çö½ÇÀûÀÎ ¼ö´ÜÀ̱⵵ ÇÕ´Ï´Ù. + +

+ƯÇã Á¦µµ´Â ÀÚÀ¯ ¼ÒÇÁÆ®¿þ¾îÀÇ ¹ßÀüÀ» À§ÇùÇÏ´Â ¿ä¼ÒÀÏ ¼ö¹Û¿¡ ¾ø½À´Ï´Ù. ÀÚÀ¯ ÇÁ·Î±×·¥À» Àç¹èÆ÷ÇÏ´Â »ç¶÷ÀÌ °³º° ƯÇ㸦 ÃëµæÇϸé, °á°úÀûÀ¸·Î ±× ÇÁ·Î±×·¥ÀÌ »çÀ¯ ¼ÒÇÁÆ®¿þ¾î(proprietary software)°¡ µÉ °¡´É¼ºÀÌ ÀÖ½À´Ï´Ù. ÀÚÀ¯ ¼ÒÇÁÆ®¿þ¾î Àç´ÜÀº ÀÌ·¯ÇÑ ¹®Á¦¿¡ ´ëóÇϱâ À§ÇØ ¾î¶°ÇÑ Æ¯Çãµµ ±× »ç¿ë ±Ç¸®¸¦ ¸ðµç »ç¶÷(ÀÌÇÏ, `°øÁß(Íëñë, general public)'À̶ó°í ĪÇÕ´Ï´Ù)¿¡°Ô ÀÚÀ¯·Ó°Ô Çã¿ëÇÏ´Â °æ¿ì¿¡ ÇÑÇؼ­¸¸ ÀÚÀ¯ ¼ÒÇÁÆ®¿þ¾î¿Í ÇÔ²² »ç¿ëÇÒ ¼ö ÀÖ´Ù´Â °ÍÀ» ¸íÈ®È÷ ¹àÈü´Ï´Ù. + +

+º¹Á¦(copying)¿Í °³ÀÛ(modification) ¹× ¹èÆ÷(distribution)¿¡ °üÇÑ ±¸Ã¼ÀûÀÎ Á¶°Ç°ú ±ÔÁ¤Àº ´ÙÀ½°ú °°½À´Ï´Ù. + +

+

º¹Á¦¿Í °³ÀÛ ¹× ¹èÆ÷¿¡ °üÇÑ Á¶°Ç°ú ±ÔÁ¤

+ +

+Á¦0Á¶. +º» ÀÌ¿ëÇã¶ôÀº ÀúÀÛ±ÇÀÚ°¡ GNU GPL¿¡ µû¶ó ¹èÆ÷ÇÑ´Ù´Â »çÇ×À» ¸í½ÃÇÑ ¸ðµç ÄÄÇ»ÅÍ ÇÁ·Î±×·¥ ÀúÀÛ¹°¿¡ µ¿ÀÏÇÏ°Ô Àû¿ëµË´Ï´Ù. ÄÄÇ»ÅÍ ÇÁ·Î±×·¥ ÀúÀÛ¹°(ÀÌÇÏ, `ÇÁ·Î±×·¥'À̶ó°í ĪÇÕ´Ï´Ù)À̶õ ƯÁ¤ÇÑ °á°ú¸¦ ¾ò±â À§ÇØ ÄÄÇ»ÅÍ µîÀÇ Á¤º¸ ó¸® ´É·ÂÀ» °®Ãá ÀåÄ¡(ÀÌÇÏ, `ÄÄÇ»ÅÍ'¶ó°í ĪÇÕ´Ï´Ù) ¾È¿¡¼­ Á÷Á¢ ¶Ç´Â °£Á¢À¸·Î »ç¿ëµÇ´Â ÀÏ·ÃÀÇ Áö½Ã ¹× ¸í·ÉÀ¸·Î Ç¥ÇöµÈ âÀÛ¹°À» ÀǹÌÇϸç, `2Â÷Àû ÇÁ·Î±×·¥'À̶õ ÇÁ·Î±×·¥ÀÇ ÀÌ¿ëÇã¶ô ¶Ç´Â ÀúÀ۱ǹýÀÇ ±ÔÁ¤¿¡ µû¶ó ÇÁ·Î±×·¥ÀÇ ÀüºÎ ¶Ç´Â »ó´ç ºÎºÐÀ» ¿ø¿ëÇϰųª ´Ù¸¥ ÇÁ·Î±×·¡¹Ö ¾ð¾î·ÎÀÇ ¹ø¿ªÀ» Æ÷ÇÔÇÒ ¼ö ÀÖ´Â °³ÀÛ °úÁ¤À» ÅëÇØ Ã¢ÀÛµÈ »õ·Î¿î ÇÁ·Î±×·¥°ú ÀÌ¿Í °ü·ÃµÈ ÀúÀÛ¹°À» ÀǹÌÇÕ´Ï´Ù(ÀÌÈÄ·Î ´Ù¸¥ ÇÁ·Î±×·¡¹Ö ¾ð¾î·ÎÀÇ ¹ø¿ªÀº º°´Ù¸¥ Á¦ÇÑ ¾øÀÌ +°³ÀÛÀÇ ¹üÀ§¿¡ Æ÷ÇԵǴ °ÍÀ¸·Î °£Áֵ˴ϴÙ). `ÇÇÀÌ¿ëÇã¶ôÀÚ'¶õ GPLÀÇ ±ÔÁ¤¿¡ µû¶ó ÇÁ·Î±×·¥À» ÀÌ¿ëÇã¶ô ¹ÞÀº »ç¶÷À» ÀǹÌÇÏ°í, `¿øÇÁ·Î±×·¥'À̶õ ÇÁ·Î±×·¥À» °³ÀÛÇϰųª 2Â÷Àû ÇÁ·Î±×·¥À» ¸¸µå´Â µ¥ »ç¿ëÇÑ ÃÖÃÊÀÇ ÇÁ·Î±×·¥À» ÀǹÌÇÕ´Ï´Ù. + +

+º» ÀÌ¿ëÇã¶ôÀº ÇÁ·Î±×·¥¿¡ ´ëÇÑ º¹Á¦¿Í °³ÀÛ ±×¸®°í ¹èÆ÷ ÇàÀ§¿¡¸¸ Àû¿ëµË´Ï´Ù. µû¶ó¼­ ÇÁ·Î±×·¥À» ½ÇÇàÇÏ´Â ÇàÀ§¿¡ ´ëÇÑ Á¦ÇÑÀº ¾ø½À´Ï´Ù. ÇÁ·Î±×·¥ÀÇ °á°ú¹°(output)¿¡´Â, ±× °á°ú¹°ÀÌ ÇÁ·Î±×·¥ÀÇ ½ÇÇàÀ» ÅëÇØ »ý¼ºµÈ °ÍÀÎÁö ¾Æ´ÑÁö¿¡ »ó°ü¾øÀÌ, °á°úÀÇ ³»¿ëÀÌ ¿øÇÁ·Î±×·¥¿¡¼­ ÆÄ»ýµÈ 2Â÷Àû ÇÁ·Î±×·¥À» ±¸¼ºÇßÀ» ¶§¿¡ ÇÑÇØ º» ÀÌ¿ëÇã¶ôÀÇ ±ÔÁ¤À» Àû¿ëÇÕ´Ï´Ù. 2Â÷Àû ÇÁ·Î±×·¥ÀÇ ±¸¼º ¿©ºÎ´Â 2Â÷Àû ÇÁ·Î±×·¥ ¾È¿¡¼­ÀÇ ¿øÇÁ·Î±×·¥ÀÇ ¿ªÇÒÀ» Åä´ë·Î ÆÇ´ÜÇÕ´Ï´Ù. + +

+Á¦1Á¶. +ÀûÀýÇÑ ÀúÀÛ±Ç Ç¥½Ã¿Í ÇÁ·Î±×·¥¿¡ ´ëÇÑ º¸ÁõÀÌ Á¦°øµÇÁö ¾Ê´Â´Ù´Â »ç½ÇÀ» °¢ º¹Á¦¹°¿¡ ¸í½ÃÇÏ´Â ÇÑ, ÇÇÀÌ¿ëÇã¶ôÀÚ´Â ÇÁ·Î±×·¥ÀÇ ¿ø½Ã Äڵ带 ÀÚ½ÅÀÌ ¹ÞÀº »óÅ ±×´ë·Î ¾î¶°ÇÑ ¸Åü·Îµç º¹Á¦ÇÏ°í ¹èÆ÷ÇÒ ¼ö ÀÖ½À´Ï´Ù. º¹Á¦¿Í ¹èÆ÷°¡ ÀÌ·ç¾îÁú ¶§´Â º» ÀÌ¿ëÇã¶ô°ú ÇÁ·Î±×·¥¿¡ ´ëÇÑ º¸ÁõÀÌ Á¦°øµÇÁö ¾Ê´Â´Ù´Â »ç½Ç¿¡ °üÇÑ ¸ðµç ³»¿ëÀ» ±×´ë·Î À¯ÁöÇØ¾ß Çϸç, ¿µ¹®ÆÇ GPLÀ» ÇÔ²² Á¦°øÇØ¾ß ÇÕ´Ï´Ù. + +

+¹èÆ÷ÀÚ´Â º¹Á¦¹°À» ¹°¸®ÀûÀ¸·Î ÀεµÇÏ´Â µ¥ ¼Ò¿äµÈ ºñ¿ëÀ» û±¸ÇÒ ¼ö ÀÖÀ¸¸ç, ¼±Åà »çÇ×À¸·Î µ¶ÀÚÀûÀÎ À¯·á º¸ÁõÀ» ¼³Á¤ÇÒ ¼ö ÀÖ½À´Ï´Ù. + +

+Á¦2Á¶. +ÇÇÀÌ¿ëÇã¶ôÀÚ´Â ÀÚ½ÅÀÌ ¹ÞÀº ÇÁ·Î±×·¥ÀÇ ÀüºÎ³ª ÀϺθ¦ °³ÀÛÇÒ ¼ö ÀÖÀ¸¸ç, À̸¦ ÅëÇØ 2Â÷Àû ÇÁ·Î±×·¥À» âÀÛÇÒ ¼ö ÀÖ½À´Ï´Ù. °³ÀÛÇÑ ÇÁ·Î±×·¥À̳ª âÀÛÇÑ 2Â÷Àû ÇÁ·Î±×·¥Àº ´ÙÀ½ »çÇ×À» ¸ðµÎ ¸¸Á·½ÃÅ°´Â Á¶°Ç¿¡ ÇÑÇؼ­, Á¦1Á¶ÀÇ ±ÔÁ¤¿¡ µû¶ó ¶Ç´Ù½Ã º¹Á¦µÇ°í ¹èÆ÷µÉ ¼ö ÀÖ½À´Ï´Ù. + +

+1Ç×. +ÆÄÀÏÀ» °³ÀÛÇÒ ¶§´Â ÆÄÀÏÀ» °³ÀÛÇÑ »ç½Ç°ú ±× ³¯Â¥¸¦ ÆÄÀÏ ¾È¿¡ ¸í½ÃÇØ¾ß ÇÕ´Ï´Ù. + +

+2Ç×. +¹èÆ÷Çϰųª °øÇ¥ÇÏ·Á´Â ÀúÀÛ¹°ÀÇ ÀüºÎ ¶Ç´Â ÀϺΰ¡ ÀÌ¿ëÇã¶ô ¹ÞÀº ÇÁ·Î±×·¥¿¡¼­ ÆÄ»ýµÈ °ÍÀ̶ó¸é, ÀúÀÛ¹° Àüü¿¡ ´ëÇÑ »ç¿ë ±Ç¸®¸¦ º» ÀÌ¿ëÇã¶ôÀÇ ±ÔÁ¤¿¡ µû¶ó °øÁß¿¡°Ô ¹«»óÀ¸·Î Çã¿ëÇØ¾ß ÇÕ´Ï´Ù. + +

+3Ç×. +°³ÀÛÇÑ ÇÁ·Î±×·¥ÀÇ ÀϹÝÀûÀÎ ½ÇÇà ÇüÅ°¡ ´ëÈ­Çü ±¸Á¶·Î ¸í·É¾î¸¦ Àü´Þ¹Þ´Â ¹æ½ÄÀÎ °æ¿ì¿¡´Â ÀûÀýÇÑ ÀúÀÛ±Ç Ç¥½Ã¿Í ÇÁ·Î±×·¥¿¡ ´ëÇÑ º¸ÁõÀÌ Á¦°øµÇÁö ¾Ê´Â´Ù´Â »ç½Ç(º°µµÀÇ º¸ÁõÀ» ¼³Á¤ÇÑ °æ¿ì¶ó¸é ÇØ´ç ³»¿ë)°ú ÀÌ¿ëÇã¶ô ¹ÞÀº ÇÁ·Î±×·¥À» º» ±ÔÁ¤¿¡ µû¶ó Àç¹èÆ÷ÇÒ ¼ö ÀÖ´Ù´Â »ç½Ç ±×¸®°í GPL »çº»À» Âü°íÇÒ ¼ö ÀÖ´Â ¹æ¹ýÀÌ ÇÔ²² Æ÷ÇÔµÈ ¹®±¸°¡ ÇÁ·Î±×·¥ÀÌ ´ëÈ­Çü ±¸Á¶·Î ÆòÀÌÇÏ°Ô ½ÇÇàµÈ Á÷ÈÄ¿¡ È­¸é ¶Ç´Â Áö¸éÀ¸·Î Ãâ·ÂµÇµµ·Ï ÇØ¾ß ÇÕ´Ï´Ù(¿¹¿Ü ±ÔÁ¤: ÇÁ·Î±×·¥ÀÌ ´ëÈ­Çü ±¸Á¶¸¦ °®°í À־ Åë»óÀûÀÎ ½ÇÇà ȯ°æ¿¡¼­ Àü¼úÇÑ »çÇ×À» Ãâ·ÂÇÏÁö ¾Ê´Â ÇüÅ¿´À» °æ¿ì¿¡´Â À̸¦ °³ÀÛÇÑ ÇÁ·Î±×·¥ ¶ÇÇÑ °ü·Ã »çÇ×À» Ãâ·ÂÇÏÁö ¾Ê¾Æµµ ¹«¹æÇÕ´Ï´Ù). +

+ +

+À§ Á¶Ç×µéÀº °³ÀÛµÈ ÇÁ·Î±×·¥ Àüü¿¡ Àû¿ëµË´Ï´Ù. ¸¸¾à °³ÀÛµÈ ÇÁ·Î±×·¥¿¡ Æ÷ÇÔµÈ Æ¯Á¤ ºÎºÐÀÌ ¿øÇÁ·Î±×·¥¿¡¼­ ÆÄ»ýµÈ °ÍÀÌ ¾Æ´Ñ º°µµÀÇ µ¶ÀÚÀû ÀúÀÛ¹°·Î ÀÎÁ¤µÉ ¸¸ÇÑ »ó´çÇÑ ÀÌÀ¯°¡ ÀÖÀ» ¶§´Â, ÇØ´ç ÀúÀÛ¹°ÀÇ °³º°ÀûÀÎ ¹èÆ÷¿¡´Â º» ÀÌ¿ëÇã¶ô ±ÔÁ¤ÀÌ Àû¿ëµÇÁö ¾Ê½À´Ï´Ù. ±×·¯³ª ±× ÀúÀÛ¹°ÀÌ 2Â÷Àû ÇÁ·Î±×·¥ÀÇ ÀϺημ­ ÇÔ²² ¹èÆ÷µÈ´Ù¸é °³º°ÀûÀÎ ÀúÀ۱ǰú ¹èÆ÷ ±âÁØ¿¡ »ó°ü¾øÀÌ ÀúÀÛ¹° ¸ðµÎ¿¡ º» ÀÌ¿ëÇã¶ôÀÌ Àû¿ëµÇ¾î¾ß Çϸç, Àüü ÀúÀÛ¹°¿¡ ´ëÇÑ »ç¿ë ±Ç¸®´Â °øÁß¿¡°Ô ¹«»óÀ¸·Î ÀÌ¿ëÇã¶ô µË´Ï´Ù. + +

+ÀÌ·¯ÇÑ ±ÔÁ¤Àº °³º°ÀûÀÎ ÀúÀÛ¹°¿¡ ´ëÇÑ ÀúÀÛÀÚÀÇ ±Ç¸®¸¦ ħÇØÇϰųª ÀÎÁ¤ÇÏÁö ¾ÊÀ¸·Á´Â °ÍÀÌ ¾Æ´Ï¶ó, ¿øÇÁ·Î±×·¥¿¡¼­ ÆÄ»ýµÈ 2Â÷Àû ÇÁ·Î±×·¥À̳ª ¼öÁý ÀúÀÛ¹°ÀÇ ¹èÆ÷¸¦ ÀÏ°üÀûÀ¸·Î ±ÔÁ¦Çϱâ À§ÇÑ °ÍÀÔ´Ï´Ù. + +

+¿øÇÁ·Î±×·¥À̳ª ¿øÇÁ·Î±×·¥¿¡¼­ ÆÄ»ýµÈ 2Â÷Àû ÇÁ·Î±×·¥À» À̵鿡°Ô¼­ ÆÄ»ýµÇÁö ¾ÊÀº ´Ù¸¥ ÀúÀÛ¹°°ú ÇÔ²² ´Ü¼øÈ÷ ÀúÀåÇϰųª ¹èÆ÷ÇÒ ¸ñÀûÀ¸·Î µ¿ÀÏÇÑ ¸Åü¿¡ ¸ð¾Æ ³õÀº ¼öÁý¹°ÀÇ °æ¿ì, ¿øÇÁ·Î±×·¥¿¡¼­ ÆÄ»ýµÇÁö ¾ÊÀº ´Ù¸¥ ÀúÀÛ¹°¿¡´Â º» ÀÌ¿ëÇã¶ô ±ÔÁ¤ÀÌ Àû¿ëµÇÁö ¾Ê½À´Ï´Ù.. + +

+Á¦3Á¶. +ÇÇÀÌ¿ëÇã¶ôÀÚ´Â ´ÙÀ½ Áß ÇϳªÀÇ Ç׸ñÀ» ¸¸Á·ÇÏ´Â Á¶°ÇÀÏ ¶§¿¡ ÇÑÇؼ­ Á¦1Á¶¿Í Á¦2Á¶ÀÇ ±ÔÁ¤¿¡ µû¶ó ÇÁ·Î±×·¥(¶Ç´Â Á¦2Á¶¿¡¼­ ¾ð±ÞÇÑ 2Â÷Àû ÇÁ·Î±×·¥)À» ¸ñÀû ÄÚµå(object code)³ª ½ÇÇ๰(executable form)ÀÇ ÇüÅ·Πº¹Á¦ÇÏ°í ¹èÆ÷ÇÒ ¼ö ÀÖ½À´Ï´Ù. + +

+1Ç×. +¸ñÀû Äڵ峪 ½ÇÇ๰¿¡ »óÀÀÇÏ´Â, ÄÄÇ»ÅÍ°¡ ÀνÄÇÒ ¼ö ÀÖ´Â ¿ÏÀüÇÑ ¿ø½Ã Äڵ带 ÇÔ²² Á¦°øÇØ¾ß ÇÕ´Ï´Ù. ¿ø½Ã ÄÚµå´Â Á¦1Á¶¿Í Á¦2Á¶ÀÇ ±ÔÁ¤¿¡ µû¶ó ¹èÆ÷µÉ ¼ö ÀÖ¾î¾ß Çϸç, ¼ÒÇÁÆ®¿þ¾îÀÇ Àü´ÞÀ» À§ÇØ ÀϹÝÀûÀ¸·Î »ç¿ëÇÏ´Â ¸Åü·Î Á¦°øµÇ¾î¾ß ÇÕ´Ï´Ù. + +

+2Ç×. +¹èÆ÷¿¡ ÇÊ¿äÇÑ ÃÖ¼ÒÇÑÀÇ ºñ¿ë¸¸À» ¹Þ°í ¸ñÀû Äڵ峪 ½ÇÇ๰¿¡ »óÀÀÇÏ´Â ¿ÏÀüÇÑ ¿ø½Ã Äڵ带 ¹èÆ÷ÇÏ°Ú´Ù´Â, ÃÖ¼ÒÇÑ 3³â°£ À¯È¿ÇÑ ¾àÁ¤¼­¸¦ ÇÔ²² Á¦°øÇØ¾ß ÇÕ´Ï´Ù. ÀÌ ¾àÁ¤¼­´Â ¾àÁ¤¼­¸¦ °¡Áø ¾î¶² »ç¶÷¿¡ ´ëÇؼ­µµ À¯È¿ÇØ¾ß ÇÕ´Ï´Ù. ¿ø½Ã ÄÚµå´Â ÄÄÇ»ÅÍ°¡ ÀνÄÇÒ ¼ö ÀÖ´Â ÇüÅ¿©¾ß ÇÏ°í, Á¦1Á¶¿Í Á¦2Á¶ÀÇ ±ÔÁ¤¿¡ µû¶ó ¹èÆ÷µÉ ¼ö ÀÖ¾î¾ß Çϸç, ¼ÒÇÁÆ®¿þ¾îÀÇ Àü´ÞÀ» À§ÇØ ÀϹÝÀûÀ¸·Î »ç¿ëÇÏ´Â ¸Åü·Î Á¦°øµÇ¾î¾ß ÇÕ´Ï´Ù. + +

+3Ç×. +¸ñÀû Äڵ峪 ½ÇÇ๰¿¡ »óÀÀÇÏ´Â ¿ø½Ã Äڵ带 ¹èÆ÷ÇÏ°Ú´Ù´Â, ÀÚ½ÅÀÌ ¹ÞÀº Á¤º¸¸¦ ÇÔ²² Á¦°øÇØ¾ß ÇÕ´Ï´Ù(3Ç×Àº À§ 2Ç׿¡ µû¶ó ÇÁ·Î±×·¥ÀÇ ¸ñÀû Äڵ峪 ½ÇÇ๰°ú ÇÔ²² ¿ø½Ã Äڵ带 ¹èÆ÷ÇÏ°Ú´Ù´Â ¾àÁ¤À» ¹Þ¾Ò°í, µ¿½Ã¿¡ ºñ»ó¾÷ÀûÀÎ ¹èÆ÷¸¦ ÇÒ °æ¿ì¿¡ ÇÑÇؼ­¸¸ Çã¿ëµË´Ï´Ù). +

+ +

+ÀúÀÛ¹°¿¡ ´ëÇÑ ¿ø½Ã ÄÚµå¶õ ÇØ´ç ÀúÀÛ¹°À» °³ÀÛÇϱ⿡ ÀûÀýÇÑ Çü½ÄÀ» ÀǹÌÇÕ´Ï´Ù. ½ÇÇ๰¿¡ ´ëÇÑ ¿ÏÀüÇÑ ¿ø½Ã ÄÚµå¶õ ½ÇÇ๰¿¡ Æ÷ÇÔµÈ ¸ðµç ¸ðµâÀÇ ¿ø½Ã ÄÚµå¿Í ÀÌ¿Í °ü·ÃµÈ ÀÎÅÍÆäÀ̽º Á¤ÀÇ ÆÄÀÏ ¸ðµÎ, ±×¸®°í ½ÇÇ๰ÀÇ ÄÄÆÄÀÏ°ú ¼³Ä¡¸¦ Á¦¾îÇϴµ¥ »ç¿ëµÈ ½ºÅ©¸³Æ® ÀüºÎ¸¦ ÀǹÌÇÕ´Ï´Ù. ±×·¯³ª Ưº°ÇÑ ¿¹¿ÜÀÇ Çϳª·Î¼­ ½ÇÇ๰ÀÌ ½ÇÇàµÉ ¿î¿µÃ¼Á¦ÀÇ ÁÖ¿ä ºÎºÐ(ÄÄÆÄÀÏ·¯³ª Ä¿³Î µî)°ú ÇÔ²² (¿ø½Ã Äڵ峪 ¹ÙÀ̳ʸ®ÀÇ ÇüÅ·Î) ÀϹÝÀûÀ¸·Î ¹èÆ÷µÇ´Â ±¸¼º ¿ä¼ÒµéÀº ÀÌ·¯ÇÑ ±¸¼º ¿ä¼Ò ÀÚü°¡ ½ÇÇ๰¿¡ ¼ö¹ÝµÇÁö ¾Ê´Â ÇÑ ¿ø½Ã ÄÚµåÀÇ ¹èÆ÷ ´ë»ó¿¡¼­ Á¦¿ÜµÇ¾îµµ ¹«¹æÇÕ´Ï´Ù. + +

+¸ñÀû Äڵ峪 ½ÇÇ๰À» ÁöÁ¤ÇÑ Àå¼Ò¿¡¼­ º¹Á¦ÇÒ ¼ö ÀÖ°Ô ÇÏ´Â ¹æ½ÄÀ¸·Î ¹èÆ÷ÇÒ °æ¿ì, µ¿ÀÏÇÑ Àå¼Ò¿¡¼­ ¿ø½Ã Äڵ带 º¹Á¦ÇÒ ¼ö ÀÖ´Â µ¿µîÇÑ Á¢±Ù ¹æ¹ýÀ» Á¦°øÇÑ´Ù¸é ¿ø½Ã Äڵ带 ¸ñÀû ÄÚµå¿Í ÇÔ²² º¹Á¦µÇµµ·Ï ¼³Á¤ÇÏÁö ¾Ê¾Ò´õ¶óµµ ¿ø½Ã Äڵ带 ¹èÆ÷ÇÏ´Â °ÍÀ¸·Î °£Áֵ˴ϴÙ. + +

+Á¦4Á¶. +º» ÀÌ¿ëÇã¶ô¿¡ ÀÇÇØ ¸í½ÃÀûÀ¸·Î ÀÌ·ç¾îÁöÁö ¾Ê´Â ÇÑ, ÇÁ·Î±×·¥¿¡ ´ëÇÑ º¹Á¦, °³ÀÛ, 2Â÷Àû ÀÌ¿ëÇã¶ô ¼³Á¤°ú ¹èÆ÷´Â ¼º¸³µÇÁö ¾Ê½À´Ï´Ù. ÀÌ¿Í °ü·ÃµÈ ¾î¶°ÇÑ ÇàÀ§µµ ¹«È¿ÀÌ¸ç º» ÀÌ¿ëÇã¶ôÀÌ º¸ÀåÇÑ ±Ç¸®´Â ÀÚµ¿À¸·Î ¼Ò¸êµË´Ï´Ù. ±×·¯³ª º» ÀÌ¿ëÇã¶ôÀÇ ±ÔÁ¤¿¡ µû¶ó ÇÁ·Î±×·¥ÀÇ º¹Á¦¹°À̳ª ±Ç¸®¸¦ ¹Þ¾Ò´ø Á¦3ÀÚ´Â º» ÀÌ¿ëÇã¶ôÀÇ ±ÔÁ¤À» ÁؼöÇÏ´Â ÇÑ, ¹èÆ÷ÀÚÀÇ ±Ç¸® ¼Ò¸ê°ú °ü°è¾øÀÌ »ç¿ë»óÀÇ ±Ç¸®¸¦ °è¼Ó À¯ÁöÇÒ ¼ö ÀÖ½À´Ï´Ù. + +

+Á¦5Á¶. +º» ÀÌ¿ëÇã¶ôÀº ¼­¸íÀ̳ª ³¯ÀÎÀ» ¼ö¹ÝÇÏ´Â Çü½ÄÀ» °®Áö ¾Ê±â ¶§¹®¿¡ ÇÇÀÌ¿ëÇã¶ôÀÚ°¡ º» ÀÌ¿ëÇã¶ôÀÇ ³»¿ëÀ» ¹Ýµå½Ã ¹Þ¾Æµé¿©¾ß ÇÒ ÇÊ¿ä´Â ¾ø½À´Ï´Ù. ±×·¯³ª ÇÁ·Î±×·¥À̳ª ÇÁ·Î±×·¥¿¡ ±â¹ÝÇÑ 2Â÷Àû ÇÁ·Î±×·¥ÀÇ °³ÀÛ ¹× ¹èÆ÷¸¦ Çã¶ôÇÏ´Â °ÍÀº º» ÀÌ¿ëÇã¶ô¿¡ ÀÇÇؼ­¸¸ °¡´ÉÇÕ´Ï´Ù. ¸¸¾à º» ÀÌ¿ëÇã¶ô¿¡ µ¿ÀÇÇÏÁö ¾ÊÀ» °æ¿ì¿¡´Â ÀÌ·¯ÇÑ ÇàÀ§°¡ ¹ýÀûÀ¸·Î ±ÝÁöµË´Ï´Ù. µû¶ó¼­ ÇÁ·Î±×·¥(¶Ç´Â ÇÁ·Î±×·¥¿¡ ±â¹ÝÇÑ 2Â÷Àû ÇÁ·Î±×·¥)À» °³ÀÛÇϰųª ¹èÆ÷ÇÏ´Â ÇàÀ§´Â ±×¿¡ µû¸¥ º» ÀÌ¿ëÇã¶ôÀÇ ³»¿ë¿¡ µ¿ÀÇÇÑ´Ù´Â °ÍÀ» ÀǹÌÇϸç, º¹Á¦¿Í °³ÀÛ ¹× ¹èÆ÷¿¡ °üÇÑ º» ÀÌ¿ëÇã¶ôÀÇ Á¶°Ç°ú ±ÔÁ¤À» ¸ðµÎ ¹Þ¾ÆµéÀÌ°Ú´Ù´Â Àǹ̷Π°£Áֵ˴ϴÙ. + +

+Á¦6Á¶. +ÇÇÀÌ¿ëÇã¶ôÀÚ¿¡ ÀÇÇØ ÇÁ·Î±×·¥(¶Ç´Â ÇÁ·Î±×·¥¿¡ ±â¹ÝÇÑ 2Â÷Àû ÇÁ·Î±×·¥)ÀÌ ¹Ýº¹ÀûÀ¸·Î Àç¹èÆ÷µÉ °æ¿ì, °¢ ´Ü°è¿¡¼­ÀÇ ÇÇÀÌ¿ëÇã¶ôÀÚ´Â º» ÀÌ¿ëÇã¶ôÀÇ ±ÔÁ¤¿¡ µû¸¥ ÇÁ·Î±×·¥ÀÇ º¹Á¦¿Í °³ÀÛ ¹× ¹èÆ÷¿¡ ´ëÇÑ ±Ç¸®¸¦ ÃÖÃÊÀÇ ÀÌ¿ëÇã¶ôÀÚ¿¡°Ô ¹ÞÀº °ÍÀ¸·Î ÀÚµ¿À¸·Î °£Áֵ˴ϴÙ. ÇÁ·Î±×·¥(¶Ç´Â ÇÁ·Î±×·¥¿¡ ±â¹ÝÇÑ 2Â÷Àû ÇÁ·Î±×·¥)À» ¹èÆ÷ÇÒ ¶§´Â ÇÇÀÌ¿ëÇã¶ôÀÚÀÇ ±Ç¸® Çà»ç¸¦ Á¦ÇÑÇÒ ¼ö ÀÖ´Â ¾î¶°ÇÑ »çÇ×µµ Ãß°¡ÇÒ ¼ö ¾ø½À´Ï´Ù. ±×·¯³ª Àç¹èÆ÷°¡ ÀϾ ½ÃÁ¡¿¡¼­ Á¦3ÀÇ ÇÇÀÌ¿ëÇã¶ôÀÚ¿¡°Ô º» ÀÌ¿ëÇã¶ôÀ» ÁؼöÇϵµ·Ï °­Á¦ÇÒ Ã¥ÀÓÀÌ ÇÇÀÌ¿ëÇã¶ôÀÚ¿¡°Ô ºÎ°úµÇÁö´Â ¾Ê½À´Ï´Ù. + +

+Á¦7Á¶. +¹ý¿øÀÇ ÆÇ°áÀ̳ª ƯÇã±Ç ħÇØ ÁÖÀå ¶Ç´Â Æ¯Çã ¹®Á¦¿¡ ±¹ÇѵÇÁö ¾ÊÀº ±× ¹ÛÀÇ ÀÌÀ¯·Î º» ÀÌ¿ëÇã¶ô ±ÔÁ¤°ú ¹èÄ¡µÇ´Â »çÇ×ÀÌ ¹ß»ýÇÏ´õ¶óµµ, ¹èÄ¡µÈ »çÇ×ÀÌ ¼±ÇàÇϰųª º» ÀÌ¿ëÇã¶ôÀÇ Á¶°Ç°ú ±ÔÁ¤ÀÌ ¸éÁ¦µÇ´Â °ÍÀº ¾Æ´Õ´Ï´Ù. µû¶ó¼­ ¹ý¿øÀÇ ¸í·ÉÀ̳ª ÇÕÀÇ µî¿¡ ÀÇÇØ º» ÀÌ¿ëÇã¶ô¿¡ À§¹èµÇ´Â »çÇ×ÀÌ ¹ß»ýÇÏ´õ¶óµµ ¾çÃø ¸ðµÎ¸¦ ¸¸Á·½Ãų ¼ö ¾ø´Ù¸é ÇÁ·Î±×·¥Àº ¹èÆ÷µÉ ¼ö ¾ø½À´Ï´Ù. ¿¹¸¦ µé¾î Á÷Á¢ ¶Ç´Â °£Á¢ÀûÀÎ ¹æ¹ýÀ¸·Î ÇÁ·Î±×·¥ º¹Á¦¹°À» ÀÌ¿ëÇã¶ô ¹ÞÀº ÀÓÀÇÀÇ Á¦3ÀÚ¿¡°Ô ƯÁ¤ÇÑ Æ¯Çã °ü·Ã Çã°¡°¡ ÇØ´ç ÇÁ·Î±×·¥À» ¹«»óÀ¸·Î Àç¹èÆ÷ÇÒ ¼ö ÀÖ°Ô Çã¿ëÇÏÁö ¾Ê´Â´Ù¸é, ±×·¯ÇÑ Çã°¡¿Í º» ÀÌ¿ëÇã¶ôÀ» µ¿½Ã¿¡ ¸¸Á·½ÃÅ°¸é¼­ ÇÁ·Î±×·¥À» ¹èÆ÷ÇÒ ¼ö ÀÖ´Â ¹æ¹ýÀº ¾ø½À´Ï´Ù. + +

+º» Á¶Ç×Àº ƯÁ¤ÇÑ »óȲ¿¡¼­ º» Á¶Ç×ÀÇ ÀϺΰ¡ À¯È¿ÇÏÁö ¾Ê°Å³ª Àû¿ëµÉ ¼ö ¾øÀ» °æ¿ì¿¡µµ º» Á¶Ç×ÀÇ ³ª¸ÓÁö ºÎºÐÀ» À¯È¿ÇÏ°Ô ÇÒ Àǵµ·Î ¸¸µé¾îÁ³½À´Ï´Ù. µû¶ó¼­ ±× ¿ÜÀÇ »óȲ¿¡¼­´Â º» Á¶Ç×À» ÀüüÀûÀ¸·Î Àû¿ëÇÏ¸é µË´Ï´Ù. + +

+º» Á¶Ç×ÀÇ ¸ñÀûÀº ƯÇ㳪 ÀúÀÛ±Ç Ä§ÇØ µîÀÇ ÇàÀ§¸¦ Á¶ÀåÇϰųª ÇØ´ç ±Ç¸®¸¦ ÀÎÁ¤ÇÏÁö ¾ÊÀ¸·Á´Â °ÍÀÌ ¾Æ´Ï¶ó, GPLÀ» ÅëÇØ ±¸ÇöÇÑ ÀÚÀ¯ ¼ÒÇÁÆ®¿þ¾î ¹èÆ÷ ü°è¸¦ ÅëÇÕÀûÀ¸·Î º¸È£Çϱâ À§ÇÑ °ÍÀÔ´Ï´Ù. ¸¹Àº »ç¶÷ÀÌ ¹èÆ÷ ü°è¿¡ ½Å·Ú ÀÖ´Â Áö¿øÀ» °è¼ÓÇØ ÁÜÀ¸·Î½á ¼ÒÇÁÆ®¿þ¾îÀÇ ´Ù¾çÇÑ ºÐ¾ß¿¡ ¸¹Àº °øÇåÀ» ÇØ ÁÖ¾ú½À´Ï´Ù. ¼ÒÇÁÆ®¿þ¾î¸¦ ¾î¶² ¹èÆ÷ ü°è·Î ¹èÆ÷ÇÒ °ÍÀΰ¡¸¦ °áÁ¤ÇÏ´Â °ÍÀº ÀüÀûÀ¸·Î ÀúÀÛÀÚ¿Í ±âÁõÀÚÀÇ ÀÇÁö¿¡ ´Þ¸° °ÍÀÌÁö, ÀÏ¹Ý »ç¿ëÀÚ°¡ °­¿äÇÒ ¼ö ÀÖ´Â °ÍÀÌ ¾Æ´Õ´Ï´Ù. + +

+º» Á¶Ç×Àº º» ÀÌ¿ëÇã¶ôÀÇ ´Ù¸¥ Á¶Ç׿¡¼­ ¹«¾ùÀ» Áß¿äÇÏ°Ô °í·ÁÇØ¾ß ÇÏ´ÂÁö¸¦ ¸íÈ®È÷ ÇØÁÝ´Ï´Ù. + +

+Á¦8Á¶. +ƯÇ㳪 ÀúÀÛ±ÇÀ» ¼³Á¤ÇÑ ÀÎÅÍÆäÀ̽º ¶§¹®¿¡ ƯÁ¤ ±¹°¡¿¡¼­ ÇÁ·Î±×·¥ÀÇ ¹èÆ÷¿Í »ç¿ëÀÌ ÇÔ²² ¶Ç´Â °³º°ÀûÀ¸·Î Á¦ÇÑµÈ °æ¿ì, º» ÀÌ¿ëÇã¶ôÀ» ÇÁ·Î±×·¥¿¡ Àû¿ëÇÑ ÃÖÃÊ ÀúÀÛ±ÇÀÚ´Â ¹®Á¦°¡ ¹ß»ýÇÏÁö ¾Ê´Â ±¹°¡¿¡ ÇÑÇØ ÇÁ·Î±×·¥À» ¹èÆ÷ÇÑ´Ù´Â ¹èÆ÷ »óÀÇ Áö¿ªÀû Á¦ÇÑ Á¶°ÇÀ» ¸í½ÃÀûÀ¸·Î ¼³Á¤ÇÒ ¼ö ÀÖ½À´Ï´Ù. ÀÌ °æ¿ì ±×·¯ÇÑ »çÇ×Àº º» ÀÌ¿ëÇã¶ôÀÇ ÀϺηΠ°£Áֵ˴ϴÙ. + +

+Á¦9Á¶. +ÀÚÀ¯ ¼ÒÇÁÆ®¿þ¾î Àç´ÜÀº ¶§¶§·Î º» ÀÌ¿ëÇã¶ôÀÇ °³Á¤ÆÇÀ̳ª ½ÅÆÇÀ» °øÇ¥ÇÒ ¼ö ÀÖ½À´Ï´Ù. »õ·Ó°Ô °øÇ¥ÇÒ ÆÇÀº ´ç¸éÇÑ ¹®Á¦³ª Çö¾ÈÀ» ó¸®ÇÏ´Â µ¥ ÇÊ¿äÇÑ ¼¼ºÎ ³»¿ë¿¡ Â÷ÀÌ°¡ ÀÖÀ» ¼ö ÀÖÁö¸¸, ±× ±Ùº»Á¤½ÅÀº º¯ÇÏÁö ¾ÊÀ» °ÍÀÔ´Ï´Ù. + +

+°¢°¢ÀÇ ÆÇÀº ÆÇ ¹øÈ£¸¦ »ç¿ëÇØ ±¸º°ÇÕ´Ï´Ù. ƯÁ¤ÇÑ ÆÇ ¹øÈ£¿Í ±× ÀÌÈÄ ÆÇÀ» µû¸¥´Ù´Â »çÇ×À» ¸í½ÃÇÑ ÇÁ·Î±×·¥¿¡´Â ÇØ´ç ÆÇÀ̳ª ±× ÀÌÈÄ¿¡ ¹ßÇàµÈ ¾î¶² ÆÇÀ» ¼±ÅÃÇØ Àû¿ëÇصµ ¹«¹æÇÏ°í, ÆÇ ¹øÈ£¸¦ ¸í½ÃÇÏÁö ¾ÊÀº °æ¿ì¿¡´Â ÀÚÀ¯ ¼ÒÇÁÆ®¿þ¾î Àç´ÜÀÌ °øÇ¥ÇÑ ¾î¶°ÇÑ ÆÇ ¹øÈ£ÀÇ ÆÇÀ» Àû¿ëÇصµ ¹«¹æÇÕ´Ï´Ù. + +

+Á¦10Á¶. +ÇÁ·Î±×·¥ÀÇ ÀϺθ¦ º» ÀÌ¿ëÇã¶ô°ú ¹èÆ÷ ±âÁØÀÌ ´Ù¸¥ ÀÚÀ¯ ÇÁ·Î±×·¥°ú ÇÔ²² °áÇÕÇÏ°íÀÚ ÇÒ °æ¿ì¿¡´Â ÇØ´ç ÇÁ·Î±×·¥ÀÇ ÀúÀÛÀÚ¿¡°Ô ¼­¸é ½ÂÀÎÀ» ¹Þ¾Æ¾ß ÇÕ´Ï´Ù. ÀÚÀ¯ ¼ÒÇÁÆ®¿þ¾î Àç´ÜÀÌ ÀúÀÛ±ÇÀ» °¡Áø ¼ÒÇÁÆ®¿þ¾îÀÇ °æ¿ì¿¡´Â ÀÚÀ¯ ¼ÒÇÁÆ®¿þ¾î Àç´ÜÀÇ ½ÂÀÎÀ» ¾ò¾î¾ß ÇÕ´Ï´Ù. ¿ì¸®´Â ÀÌ·¯ÇÑ ¿äûÀ» ¼ö¶ôÇϱâ À§ÇØ ¶§¶§·Î ¿¹¿Ü ±âÁØÀ» ¸¸µé±âµµ ÇÕ´Ï´Ù. ÀÚÀ¯ ¼ÒÇÁÆ®¿þ¾î Àç´ÜÀº ÀϹÝÀûÀ¸·Î ÀÚÀ¯ ¼ÒÇÁÆ®¿þ¾îÀÇ 2Â÷Àû ÀúÀÛ¹°À» ¸ðµÎ ÀÚÀ¯·Î¿î »óÅ·ΠÀ¯ÁöÇÏ·Á´Â ¸ñÀû°ú ¼ÒÇÁÆ®¿þ¾îÀÇ °øÀ¯¿Í ÀçÈ°¿ëÀ» ÁõÁøÇÏ·Á´Â µÎ °¡Áö ¸ñÀûÀ» ±âÁØÀ¸·Î ½ÂÀÎ ¿©ºÎ¸¦ °áÁ¤ÇÒ °ÍÀÔ´Ï´Ù. + +

+

º¸ÁõÀÇ °á¿© (Á¦11Á¶, Á¦12Á¶)

+

Á¦11Á¶. +º» ÀÌ¿ëÇã¶ôÀ» µû¸£´Â ÇÁ·Î±×·¥Àº ¹«»óÀ¸·Î ¾çµµµÇ±â ¶§¹®¿¡ °ü·Ã ¹ý·üÀÌ Çã¿ëÇÏ´Â Çѵµ ¾È¿¡¼­ ¾î¶°ÇÑ ÇüÅÂÀÇ º¸Áõµµ Á¦°øÇÏÁö ¾Ê½À´Ï´Ù. ÇÁ·Î±×·¥ ÀúÀÛ±ÇÀÚ¿Í ¹èÆ÷ÀÚ°¡ °øµ¿ ¶Ç´Â °³º°ÀûÀ¸·Î º°µµÀÇ º¸ÁõÀ» ¼­¸éÀ¸·Î Á¦°øÇÑ °æ¿ì¸¦ Á¦¿ÜÇϸé, ƯÁ¤ÇÑ ¸ñÀû¿¡ ´ëÇÑ ÇÁ·Î±×·¥ÀÇ ÀûÇÕ¼ºÀ̳ª »ó¾÷¼º ¿©ºÎ¿¡ ´ëÇÑ º¸ÁõÀ» Æ÷ÇÔÇÑ ¾î¶°ÇÑ ÇüÅÂÀÇ º¸Áõµµ ¸í½ÃÀûÀ̳ª ¹¬½ÃÀûÀ¸·Î ¼³Á¤µÇÁö ¾ÊÀº `ÀÖ´Â ±×´ë·ÎÀÇ' »óÅ·ΠÀÌ ÇÁ·Î±×·¥À» ¹èÆ÷ÇÕ´Ï´Ù. ÇÁ·Î±×·¥°ú ÇÁ·Î±×·¥ÀÇ ½ÇÇà¿¡ µû¶ó ¹ß»ýÇÒ ¼ö ÀÖ´Â ¸ðµç À§ÇèÀº ÇÇÀÌ¿ëÇã¶ôÀÚ¿¡°Ô ÀμöµÇ¸ç ÀÌ¿¡ µû¸¥ º¸¼ö ¹× º¹±¸¸¦ À§ÇÑ Á¦¹Ý °æºñ ¶ÇÇÑ ÇÇÀÌ¿ëÇã¶ôÀÚ°¡ ¸ðµÎ ºÎ´ãÇØ¾ß ÇÕ´Ï´Ù. + +

+Á¦12Á¶. +ÀúÀÛ±ÇÀÚ³ª ¹èÆ÷ÀÚ°¡ ÇÁ·Î±×·¥ÀÇ ¼Õ»ó °¡´É¼ºÀ» »çÀü¿¡ ¾Ë°í ÀÖ¾ú´õ¶óµµ ¹ß»ýÇÑ ¼Õ½ÇÀÌ °ü·Ã ¹ý±Ô¿¡ ÀÇÇØ º¸È£µÇ°Å³ª ÀÌ¿¡ ´ëÇÑ º°µµÀÇ ¼­¸é º¸ÁõÀ» ¼³Á¤ÇÑ °æ¿ì°¡ ¾Æ´Ï¶ó¸é, ÀúÀÛ±ÇÀÚ³ª ÇÁ·Î±×·¥À» ¿ø·¡ÀÇ »óÅ ¶Ç´Â °³ÀÛÇÑ »óÅ·ΠÁ¦°øÇÑ ¹èÆ÷ÀÚ´Â ÇÁ·Î±×·¥ÀÇ »ç¿ë ¶Ç´Â ÇÁ·Î±×·¥ÀÌ ÀÛµ¿ÇÏÁö ¾Ê¾Æ ¹ß»ýÇÑ ¼Õ½ÇÀ̳ª ÇÁ·Î±×·¥ ÀÚüÀÇ ¼Õ½Ç¿¡ ´ëÇØ Ã¥ÀÓÁöÁö ¾Ê½À´Ï´Ù. ÀÌ·¯ÇÑ ¸éÃ¥ Á¶°ÇÀº »ç¿ëÀÚ³ª Á¦3ÀÚ°¡ ÇÁ·Î±×·¥À» Á¶ÀÛÇÔÀ¸·Î½á ¹ß»ýÇÑ ¼Õ½ÇÀ̳ª ´Ù¸¥ ¼ÒÇÁÆ®¿þ¾î¿Í ÇÁ·Î±×·¥À» ÇÔ²² µ¿ÀÛ½ÃÄÑ ¹ß»ýÇÑ µ¥ÀÌÅÍÀÇ »ó½Ç ¹× ºÎÁ¤È®ÇÑ »êÃâ °á°ú¿¡¸¸ ±¹ÇѵǴ °ÍÀÌ ¾Æ´Õ´Ï´Ù. ¹ß»ýÇÑ ¼Õ½ÇÀÇ ÀϹݼºÀ̳ª Ư¼ö¼º»Ó ¾Æ´Ï¶ó ¿øÀÎÀÇ ¿ì¹ß¼º ¹× ÇÊ¿¬¼ºµµ ÀüÇô °í·ÁµÇÁö ¾Ê½À´Ï´Ù. + +

+

º¹Á¦¿Í °³ÀÛ ¹× ¹èÆ÷¿¡ °üÇÑ Á¶°Ç°ú ±ÔÁ¤ÀÇ ³¡.

+

+

»õ·Î¿î ÇÁ·Î±×·¥¿¡ GPLÀ» Àû¿ëÇÏ´Â ¹æ¹ý

+

+»õ·Î¿î ÇÁ·Î±×·¥À» °³¹ßÇÏ°í ±× ÇÁ·Î±×·¥ÀÌ ¸¹Àº »ç¶÷¿¡°Ô ÃÖ´ëÇÑ À¯¿ëÇÏ°Ô »ç¿ëµÇ±â¸¦ ¿øÇÑ´Ù¸é, º» ÀÌ¿ëÇã¶ô¿¡ µû¶ó ´©±¸³ª ÀÚÀ¯·Ó°Ô °³ÀÛÇÏ°í Àç¹èÆ÷ÇÒ ¼ö ÀÖ´Â ÀÚÀ¯ ¼ÒÇÁÆ®¿þ¾î·Î ¸¸µå´Â °ÍÀÌ ÃÖ¼±ÀÇ ¹æ¹ýÀÔ´Ï´Ù. + +

+ÇÁ·Î±×·¥À» ÀÚÀ¯ ¼ÒÇÁÆ®¿þ¾î·Î ¸¸µé±â À§Çؼ­´Â ´ÙÀ½ »çÇ×À» ÇÁ·Î±×·¥¿¡ Ãß°¡ÇÏ¸é µË´Ï´Ù. ÇÁ·Î±×·¥¿¡ ´ëÇÑ º¸ÁõÀ» Á¦°øÇÏÁö ¾Ê´Â´Ù´Â »ç½ÇÀ» °¡Àå È¿°úÀûÀ¸·Î Àü´ÞÇÒ ¼ö ÀÖ´Â ¹æ¹ýÀº ¿ø½Ã ÄÚµå ÆÄÀÏÀÇ ½ÃÀÛ ºÎºÐ¿¡ ÀÌ·¯ÇÑ »çÇ×À» Ãß°¡ÇÏ´Â °ÍÀÔ´Ï´Ù. °¢°¢ÀÇ ÆÄÀÏ¿¡´Â ÃÖ¼ÒÇÑ ÀúÀÛ±ÇÀ» ¸í½ÃÇÑ Çà°ú º» ÀÌ¿ëÇã¶ôÀÇ Àüü ³»¿ëÀ» Âü°íÇÒ ¼ö ÀÖ´Â À§Ä¡ Á¤º¸¸¦ ¸í½ÃÇØ¾ß ÇÕ´Ï´Ù. + +


+

+ + + + + + +
+ + + + + + +
+


+

+ÇÁ·Î±×·¥ÀÇ À̸§°ú ¿ëµµ¸¦ ÇÑ ÁÙ Á¤µµ·Î ¼³¸íÇÕ´Ï´Ù.
+Copyright (C) 20yy³â <ÇÁ·Î±×·¥ ÀúÀÛÀÚ À̸§> + +

+ÀÌ ÇÁ·Î±×·¥Àº ÀÚÀ¯ ¼ÒÇÁÆ®¿þ¾îÀÔ´Ï´Ù. ¼ÒÇÁÆ®¿þ¾î ÇÇÀÌ¿ëÇã¶ôÀÚ´Â ÀÚÀ¯ ¼ÒÇÁÆ®¿þ¾î Àç´ÜÀÌ °øÇ¥ÇÑ GNU GPL 2ÆÇ ¶Ç´Â ±× ÀÌÈÄ ÆÇÀ» ÀÓÀÇ·Î ¼±ÅÃÇØ, ±× ±ÔÁ¤¿¡ µû¶ó ÇÁ·Î±×·¥À» °³ÀÛÇϰųª Àç¹èÆ÷ÇÒ ¼ö ÀÖ½À´Ï´Ù. + +

+ÀÌ ÇÁ·Î±×·¥Àº À¯¿ëÇÏ°Ô »ç¿ëµÇ¸®¶ó´Â Èñ¸ÁÀ¸·Î ¹èÆ÷µÇÁö¸¸, ƯÁ¤ÇÑ ¸ñÀû¿¡ ¸Â´Â ÀûÇÕ¼º ¿©ºÎ³ª ÆǸſëÀ¸·Î »ç¿ëÇÒ ¼ö ÀÖ´Ù´Â ¹¬½ÃÀûÀÎ º¸ÁõÀ» Æ÷ÇÔÇÑ ¾î¶°ÇÑ ÇüÅÂÀÇ º¸Áõµµ Á¦°øÇÏÁö ¾Ê½À´Ï´Ù. º¸´Ù ÀÚ¼¼ÇÑ »çÇ×Àº GNU GPLÀ» Âü°íÇϽñ⠹ٶø´Ï´Ù. + +

+GNU GPLÀº ÀÌ ÇÁ·Î±×·¥°ú ÇÔ²² Á¦°øµË´Ï´Ù. ¸¸¾à ÀÌ ¹®¼­°¡ ´©¶ôµÇ¾î ÀÖ´Ù¸é ÀÚÀ¯ ¼ÒÇÁÆ®¿þ¾î Àç´ÜÀ¸·Î ¹®ÀÇÇϽñ⠹ٶø´Ï´Ù(ÀÚÀ¯ ¼ÒÇÁÆ®¿þ¾î Àç´Ü: Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA). +

+
+
+
+ +


+¶ÇÇÑ »ç¿ëÀÚ°¡ ÇÁ·Î±×·¥À» ¹èÆ÷ÇÑ »ç¶÷¿¡°Ô ÀüÀÚ¸ÞÀÏ°ú ¼­¸éÀ¸·Î ¿¬¶ôÇÒ ¼ö ÀÖ´Â Á¤º¸¸¦ Ãß°¡ÇØ¾ß ÇÕ´Ï´Ù. + +

+ÇÁ·Î±×·¥ÀÌ ¸í·É¾î ÀÔ·Â ¹æ½Ä¿¡ ÀÇÇÑ ´ëÈ­Çü ±¸Á¶¸¦ ÅÃÇÏ°í ÀÖ´Ù¸é, ÇÁ·Î±×·¥À» ´ëÈ­Çü ¹æ½ÄÀ¸·Î ½ÇÇàÇßÀ» ¶§ ´ÙÀ½ ÁÖÀÇ »çÇ×ÀÌ Ãâ·ÂµÇ¾î¾ß ÇÕ´Ï´Ù. + +


+

+ + + + + + +
+ + + + + + +
+


+

+Gnomovision version 69, Copyright (C) +20yy³â <ÇÁ·Î±×·¥ ÀúÀÛÀÚ À̸§> + +

+Gnomovision ÇÁ·Î±×·¥Àº Á¦Ç°¿¡ ´ëÇÑ ¾î¶°ÇÑ ÇüÅÂÀÇ º¸Áõµµ Á¦°øÇÏÁö ¾Ê½À´Ï´Ù. º¸´Ù ÀÚ¼¼ÇÑ »çÇ×Àº `show w' ¸í·ÉÀ» ½ÇÇàÇØ Âü°íÇÒ ¼ö ÀÖ½À´Ï´Ù. ÀÌ ÇÁ·Î±×·¥Àº ÀÚÀ¯ ¼ÒÇÁÆ®¿þ¾îÀÔ´Ï´Ù. ÀÌ ÇÁ·Î±×·¥Àº ¹èÆ÷ ±ÔÁ¤À» ¸¸Á·½ÃÅ°´Â Á¶°Ç ¾Æ·¡ ÀÚÀ¯·Ó°Ô Àç¹èÆ÷µÉ ¼ö ÀÖ½À´Ï´Ù. ¹èÆ÷ ±ÔÁ¤Àº `show c' ¸í·ÉÀ» ÅëÇØ Âü°íÇÒ ¼ö ÀÖ½À´Ï´Ù. +

+
+
+
+ +


+`show w'¿Í `show c'´Â GPLÀÇ ÇØ´ç ºÎºÐÀ» Ãâ·ÂÇϱâ À§ÇÑ °¡»óÀÇ ¸í·É¾îÀÔ´Ï´Ù. µû¶ó¼­ `show w'³ª `show c'°¡ ¾Æ´Ñ ´Ù¸¥ ÇüŸ¦ »ç¿ëÇصµ ¹«¹æÇϸç, ¸¶¿ì½º Ŭ¸¯À̳ª ¸Þ´º ¹æ½Ä°ú °°Àº ÇÁ·Î±×·¥¿¡ ÀûÇÕÇÑ ´Ù¸¥ Çü½ÄÀ» ÃëÇصµ ±¦Âú½À´Ï´Ù. + +

+¸¸¾à ÇÁ·Î±×·¥ ÀúÀÛÀÚ°¡ Çб³³ª ±â¾÷°ú °°Àº ´Üü³ª ±â°ü¿¡ °í¿ëµÇ¾î ÀÖ´Ù¸é ÇÁ·Î±×·¥ÀÇ ÀÚÀ¯·Î¿î ¹èÆ÷¸¦ À§ÇØ °í¿ëÁÖ³ª ÇØ´ç ±â°üÀåÀ¸·ÎºÎÅÍ ÇÁ·Î±×·¥¿¡ ´ëÇÑ ÀúÀÛ±Ç Æ÷±â °¢¼­¸¦ ¹Þ¾Æ¾ß ÇÕ´Ï´Ù. ¿¹¸¦ µé¾î ´ÙÀ½°ú °°Àº Çü½ÄÀÌ µÉ ¼ö ÀÖ½À´Ï´Ù(¾Æ·¡ ¹®±¸¸¦ ½ÇÁ¦·Î »ç¿ëÇÒ °æ¿ì¿¡´Â ¿¹·Î µç À̸§µéÀ» ½ÇÁ¦ À̸§À¸·Î ´ëüÇÏ¸é µË´Ï´Ù). + +


+

+ + + + + + +
+ + + + + + +
+


+

+º»»ç´Â Á¦ÀÓ½º ÇØÄ¿°¡ ¸¸µç (ÄÄÆÄÀÏ·¯¿¡¼­ Æнº¸¦ »ý¼ºÇÏ´Â) `Gnomovision' ÇÁ·Î±×·¥¿¡ °ü·ÃµÈ ¸ðµç ÀúÀÛ±ÇÀ» Æ÷±âÇÕ´Ï´Ù. + +

+1989³â 4¿ù 1ÀÏ
Yoyodye, Inc., +ºÎ»çÀå: Ty Coon
¼­¸í: Ty CoonÀÇ ¼­¸í +

+
+
+
+ +


+GNU GPLÀº ÀÚÀ¯ ¼ÒÇÁÆ®¿þ¾î¸¦ µ¶Á¡ ¼ÒÇÁÆ®¿þ¾î¿Í ÇÔ²² °áÇÕÇÏ´Â °ÍÀ» Çã¿ëÇÏÁö ¾Ê½À´Ï´Ù. ¸¸¾à ÀÛ¼ºµÈ ÇÁ·Î±×·¥ÀÌ ¼­ºê·çƾ ¶óÀ̺귯¸®ÀÏ °æ¿ì¿¡´Â µ¶Á¡ ¼ÒÇÁÆ®¿þ¾î°¡ ÇØ´ç ¶óÀ̺귯¸®¸¦ ¸µÅ©ÇÒ ¼ö ÀÖµµ·Ï Çã¿ëÇÏ´Â °ÍÀÌ º¸´Ù È¿°úÀûÀ¸·Î È°¿ëµÉ ¼ö ÀÖ´Â ¹æ¹ýÀ̶ó°í »ý°¢ÇÒ ¼ö ÀÖ½À´Ï´Ù. ±×·± °æ¿ì¿¡´Â º» ÀÌ¿ëÇã¶ô ´ë½Å +GNU LGPLÀ» »ç¿ëÇÔÀ¸·Î½á ¼Ò±âÀÇ ¸ñÀûÀ» ÃæÁ·½Ãų ¼ö ÀÖ½À´Ï´Ù. + +

+


+

Software License

+

GNU GENERAL PUBLIC LICENSE

+

Version 2, June 1991

+
+Copyright (C) 1989, 1991 Free Software Foundation, Inc.
+51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA
+
+Everyone is permitted to copy and distribute verbatim copies
+of this license document, but changing it is not allowed.
+
+

Preamble

+

The licenses for most software are designed to take away your freedom to share and change it. By contrast, the GNU General Public License is intended to guarantee your freedom to share and change free software--to make sure the software is free for all its users. This General Public License applies to most of the Free Software Foundation's software and to any other program whose authors commit to using it. (Some other Free Software Foundation software is covered by the GNU Lesser General Public License instead.) You can apply it to your programs, too.

+

When we speak of free software, we are referring to freedom, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for this service if you wish), that you receive source code or can get it if you want it, that you can change the software or use pieces of it in new free programs; and that you know you can do these things.

+

To protect your rights, we need to make restrictions that forbid anyone to deny you these rights or to ask you to surrender the rights. These restrictions translate to certain responsibilities for you if you distribute copies of the software, or if you modify it.

+

For example, if you distribute copies of such a program, whether gratis or for a fee, you must give the recipients all the rights that you have. You must make sure that they, too, receive or can get the source code. And you must show them these terms so they know their rights.

+

We protect your rights with two steps: (1) copyright the software, and (2) offer you this license which gives you legal permission to copy, distribute and/or modify the software.

+

Also, for each author's protection and ours, we want to make certain that everyone understands that there is no warranty for this free software. If the software is modified by someone else and passed on, we want its recipients to know that what they have is not the original, so that any problems introduced by others will not reflect on the original authors' reputations.

+

Finally, any free program is threatened constantly by software patents. We wish to avoid the danger that redistributors of a free program will individually obtain patent licenses, in effect making the program proprietary. To prevent this, we have made it clear that any patent must be licensed for everyone's free use or not licensed at all.

+

The precise terms and conditions for copying, distribution and modification follow.

+

TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION

+

0. This License applies to any program or other work which contains a notice placed by the copyright holder saying it may be distributed under the terms of this General Public License. The "Program", below, refers to any such program or work, and a "work based on the Program" means either the Program or any derivative work under copyright law: that is to say, a work containing the Program or a portion of it, either verbatim or with modifications and/or translated into another language. (Hereinafter, translation is included without limitation in the term "modification".) Each licensee is addressed as "you".

+

Activities other than copying, distribution and modification are not covered by this License; they are outside its scope. The act of running the Program is not restricted, and the output from the Program is covered only if its contents constitute a work based on the Program (independent of having been made by running the Program). Whether that is true depends on what the Program does.

+

1. You may copy and distribute verbatim copies of the Program's source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice and disclaimer of warranty; keep intact all the notices that refer to this License and to the absence of any warranty; and give any other recipients of the Program a copy of this License along with the Program.

+

You may charge a fee for the physical act of transferring a copy, and you may at your option offer warranty protection in exchange for a fee.

+

2. You may modify your copy or copies of the Program or any portion of it, thus forming a work based on the Program, and copy and distribute such modifications or work under the terms of Section 1 above, provided that you also meet all of these conditions:

+
+
+
a) You must cause the modified files to carry prominent notices stating that you changed the files and the date of any change.
+
+
b) You must cause any work that you distribute or publish, that in whole or in part contains or is derived from the Program or any part thereof, to be licensed as a whole at no charge to all third parties under the terms of this License.
+
+
c) If the modified program normally reads commands interactively when run, you must cause it, when started running for such interactive use in the most ordinary way, to print or display an announcement including an appropriate copyright notice and a notice that there is no warranty (or else, saying that you provide a warranty) and that users may redistribute the program under these conditions, and telling the user how to view a copy of this License. (Exception: if the Program itself is interactive but does not normally print such an announcement, your work based on the Program is not required to print an announcement.)
+
+

These requirements apply to the modified work as a whole. If identifiable sections of that work are not derived from the Program, and can be reasonably considered independent and separate works in themselves, then this License, and its terms, do not apply to those sections when you distribute them as separate works. But when you distribute the same sections as part of a whole which is a work based on the Program, the distribution of the whole must be on the terms of this License, whose permissions for other licensees extend to the entire whole, and thus to each and every part regardless of who wrote it.

+

Thus, it is not the intent of this section to claim rights or contest your rights to work written entirely by you; rather, the intent is to exercise the right to control the distribution of derivative or collective works based on the Program.

+

In addition, mere aggregation of another work not based on the Program with the Program (or with a work based on the Program) on a volume of a storage or distribution medium does not bring the other work under the scope of this License.

+

3. You may copy and distribute the Program (or a work based on it, under Section 2) in object code or executable form under the terms of Sections 1 and 2 above provided that you also do one of the following:

+ + + + +
+
+
a) Accompany it with the complete corresponding machine-readable source code, which must be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or,
+
+
b) Accompany it with a written offer, valid for at least three years, to give any third party, for a charge no more than your cost of physically performing source distribution, a complete machine-readable copy of the corresponding source code, to be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or,
+
+
c) Accompany it with the information you received as to the offer to distribute corresponding source code. (This alternative is allowed only for noncommercial distribution and only if you received the program in object code or executable form with such an offer, in accord with Subsection b above.)
+
+

The source code for a work means the preferred form of the work for making modifications to it. For an executable work, complete source code means all the source code for all modules it contains, plus any associated interface definition files, plus the scripts used to control compilation and installation of the executable. However, as a special exception, the source code distributed need not include anything that is normally distributed (in either source or binary form) with the major components (compiler, kernel, and so on) of the operating system on which the executable runs, unless that component itself accompanies the executable.

+

If distribution of executable or object code is made by offering access to copy from a designated place, then offering equivalent access to copy the source code from the same place counts as distribution of the source code, even though third parties are not compelled to copy the source along with the object code.

+

4. You may not copy, modify, sublicense, or distribute the Program except as expressly provided under this License. Any attempt otherwise to copy, modify, sublicense or distribute the Program is void, and will automatically terminate your rights under this License. However, parties who have received copies, or rights, from you under this License will not have their licenses terminated so long as such parties remain in full compliance.

+

5. You are not required to accept this License, since you have not signed it. However, nothing else grants you permission to modify or distribute the Program or its derivative works. These actions are prohibited by law if you do not accept this License. Therefore, by modifying or distributing the Program (or any work based on the Program), you indicate your acceptance of this License to do so, and all its terms and conditions for copying, distributing or modifying the Program or works based on it.

+

6. Each time you redistribute the Program (or any work based on the Program), the recipient automatically receives a license from the original licensor to copy, distribute or modify the Program subject to these terms and conditions. You may not impose any further restrictions on the recipients' exercise of the rights granted herein. You are not responsible for enforcing compliance by third parties to this License.

+

7. If, as a consequence of a court judgment or allegation of patent infringement or for any other reason (not limited to patent issues), conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot distribute so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not distribute the Program at all. For example, if a patent license would not permit royalty-free redistribution of the Program by all those who receive copies directly or indirectly through you, then the only way you could satisfy both it and this License would be to refrain entirely from distribution of the Program.

+

If any portion of this section is held invalid or unenforceable under any particular circumstance, the balance of the section is intended to apply and the section as a whole is intended to apply in other circumstances.

+

It is not the purpose of this section to induce you to infringe any patents or other property right claims or to contest validity of any such claims; this section has the sole purpose of protecting the integrity of the free software distribution system, which is implemented by public license practices. Many people have made generous contributions to the wide range of software distributed through that system in reliance on consistent application of that system; it is up to the author/donor to decide if he or she is willing to distribute software through any other system and a licensee cannot impose that choice.

+

This section is intended to make thoroughly clear what is believed to be a consequence of the rest of this License.

+

8. If the distribution and/or use of the Program is restricted in certain countries either by patents or by copyrighted interfaces, the original copyright holder who places the Program under this License may add an explicit geographical distribution limitation excluding those countries, so that distribution is permitted only in or among countries not thus excluded. In such case, this License incorporates the limitation as if written in the body of this License.

+

9. The Free Software Foundation may publish revised and/or new versions of the General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns.

+

Each version is given a distinguishing version number. If the Program specifies a version number of this License which applies to it and "any later version", you have the option of following the terms and conditions either of that version or of any later version published by the Free Software Foundation. If the Program does not specify a version number of this License, you may choose any version ever published by the Free Software Foundation.

+

10. If you wish to incorporate parts of the Program into other free programs whose distribution conditions are different, write to the author to ask for permission. For software which is copyrighted by the Free Software Foundation, write to the Free Software Foundation; we sometimes make exceptions for this. Our decision will be guided by the two goals of preserving the free status of all derivatives of our free software and of promoting the sharing and reuse of software generally.

+

NO WARRANTY

+

11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.

+

12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.

+

END OF TERMS AND CONDITIONS

+ + + + + diff --git a/src/docs/misc/Acknowledgements.htm b/src/docs/misc/Acknowledgements.htm new file mode 100644 index 0000000..5715185 --- /dev/null +++ b/src/docs/misc/Acknowledgements.htm @@ -0,0 +1,44 @@ + + +AutoHotkey Acknowledgements + + + + + + + +

°¨»çÀÇ ¸»

+

+ÀÌ¹Ì ¾ð±ÞÇÑ AutoIt ÀúÀÚµé ¿Ü¿¡µµ ¸¹Àº ºÐµéÀÌ ¼ö°íÇØ Áּ̽À´Ï´Ù:

+

+Robert Yaklin: Àû±ØÀûÀ¸·Î ¹ö±×¸¦ ¼Ô¾Æ³» Áּ̰í, ÈǸ¢ÇÑ ¼³Ä¡±âÀÇ ÃʾÈÀ» ÀÛ¼ºÇØ ÁÖ¼ÌÀ¸¸ç, »Ó¸¸ ¾Æ´Ï¶ó ¸í·É¾î°¡ ¾î¶»°Ô ÀÛµ¿ÇØ¾ß Çϴ°¡¿¡ °üÇÏ¿© Á¶¾ðÀ» ÇØ Áּ̽À´Ï´Ù:)

+

Jason Payam Ahdoot: ºÎµ¿ ¼Ò¼öÁ¡ ¼ö¸¦ ±â¼úÇÏ°í Á¦¾ÈÇØ Áּ̽À´Ï´Ù.

+

Jay D. Novak: Send ¸í·É¾î, Capslock, ±×¸®°í ÇÖÅ° ¼ö½ÄÀÚ¿Í °ü·ÃÇÏ¿© Win9x ¹®Á¦¸¦ ¹ß°ßÇÏ¿© Áּ̽À´Ï´Ù; ±×¸®°í °í¸¿°Ôµµ ±×ÀÇ Ç³¼ºÇÑ Äڵ带 °øÀ¯ÇØ Áּ̰í ÇÖÅ°¿Í ÇÖ½ºÆ®¸µ ±×¸®°í °¥°í¸® »ç¿ë¹ý°ú ŸÀÌÇÎ ¼Óµµ °³¼±¿¡ ´ëÇÑ ÁöÇý¸¦ ³ª´©¾î Áּ̽À´Ï´Ù.

+

Rajat: ¿ø·¡ÀÇ AHK ¾ÆÀÌÄÜÀ» ¸ÚÁø ¾ÆÀÌÄÜÀ¸·Î ±³Ã¼ÇØ Áּ̽À´Ï´Ù; ¸ÚÁø Á¦Ç° ·Î°í¸¦ Á¦°øÇØ Áּ̽À´Ï´Ù; TextPad¸¦ À§ÇÑ ÅؽºÆ® ±¸¹®À» Àç´ÜÇÏ¿© Áּ̽À´Ï´Ù; ·¹Áö½ºÆ®¸® ¸í·É¾î¿Í AutoIt v2 ȣȯ¼º¿¡ °ü·ÃµÈ ¹ö±×¸¦ ¹ß°ßÇÏ¿© Áּ̽À´Ï´Ù; SmartGUI Creator¸¦ ¸¸µé¾î Áּ̽À´Ï´Ù; ±âŸ µîµî ¸¹Àº °øÇåÀ» ÇÏ¿© Áּ̽À´Ï´Ù.

+

Thaddeus Beck (Beardboy): NT4¸¦ Å×½ºÆ®ÇØ GetKeyState¿Í Send ¸í·É¾î¸¦ ±³Á¤ÇØ Áּ̽À´Ï´Ù; Æ÷·³¿¡ ¸¹Àº µµ¿òÀ» Áּ̽À´Ï´Ù; ±×¸®°í ¸¹Àº Á¦¾È°ú ¹ö±× º¸°í¸¦ ÇÏ¿© Áּ̽À´Ï´Ù.

+

Gregory F. Hogg of Hogg's Software: SysGet ¸í·É¾î¿¡ ´ÙÁß ¸ð´ÏÅ͸¦ À§ÇÑ ¼Ò½º Äڵ带 ÀÛ¼ºÇÏ¿© Áּ̽À´Ï´Ù.

+

Aurelian Maga: ImageSearch¿Í ´õ ºü¸¥ PixelSearchÀÇ ¼Ò½º Äڵ带 ÀÛ¼ºÇÏ¿© Áּ̽À´Ï´Ù.

+

Joost Mulders: Ç¥Çö½ÄÀÇ ¹ÙÅÁÀÌ µÇ´Â ¼Ò½º Äڵ带 Á¦°øÇÏ¿© Áּ̽À´Ï´Ù.

+

Laszlo Hars: µ¥ÀÌÅÍ ±¸Á¶¿Í ¾Ë°í¸®Áò¿¡ °üÇÑ Á¶¾ðÀ» ÇÏ¿© Áּ̽À´Ï´Ù. ¹è¿­°ú µ¿Àû º¯¼öÀÇ ¼Óµµ¸¦ ±ØÀûÀ¸·Î ³ôÀ̴µ¥ µµ¿òÀÌ µÇ¾ú½À´Ï´Ù.

+

Marcus Sonntag (Ultra): DllCallÀ» ¿¬±¸, µðÀÚÀÎ, ÄÚµù, ±×¸®°í Å×½ºÆ®ÇØ Áּ̽À´Ï´Ù.

+

Gena Shimanovich: µð¹ö±ë°ú ÄÚµù Áö¿øÀ» ÇÏ¿© Áּ̽À´Ï´Ù; ¾ÕÀ¸·Î ¹Ì·¡ÀÇ Æ¯Â¡ÀÌ ±â¹ÝÇÒ ¼ö ÀÖµµ·Ï °í±ÞÀÇ ÇÁ·ÎÅäŸÀÔ ½ºÅ©¸³Æ®¸¦ Á¦°øÇÏ¿© Áּ̽À´Ï´Ù.

+

Eric Morin (numEric): ¼öÇп¡ °üÇÏ¿© Á¶¾ðÇÏ¿© Áּ̽À´Ï´Ù; OnMessage, ºÎµ¿ ¼Ò¼öÁ¡ ¼ö °è»ê, ±×¸®°í ¸¶¿ì½º À̵¿°ú °°Àº ¿µ¿ª¿¡ ºü¸£°Ô µð¹ö±ëÀ» ÇÏ¿© Áּ̽À´Ï´Ù; ±×¸®°í ÀüüÀûÀÎ Ç°ÁúÀ» Çâ»ó½ÃÄÑ Áּ̽À´Ï´Ù.

+

Philip Hazel: Perl-ȣȯÀÇ Á¤±Ô Ç¥Çö½Ä (PCRE)À» Á¦°øÇϼ̽À´Ï´Ù.

+

Titan/polyethene: autohotkey.net¿¡ °øµ¿Ã¼ È£½ºÆÃÀ» Á¦°øÇÏ¿© Áּ̰í, ¸¹Àº À¯¿ëÇÑ ½ºÅ©¸³Æ®¿Í ¶óÀ̺귯¸®¸¦ ¸¸µé¾î ÁÖ¼ÌÀ¸¸ç, ±×¸®°í ÀÚ¹Ù½ºÅ©¸³Æ®·Î Æ÷·³¿¡ ÄÚµå ÁÖ¼®¿¡ »ö±òÀ» ÀÔÇô Áֽô µî ¸¹Àº °øÇåÀ» ÇÏ¿© Áּ̽À´Ï´Ù.

+

Philippe Lhoste (PhiLho): Àû±ØÀûÀ¸·Î Æ÷·³¿¡ Áß¿ëÀ» ÁöÅ°°í Áö¿øÇÏ¿© Áּ̽À´Ï´Ù. RegEx¿¡ Á¶¾ð°ú Å×½ºÆ®, ±¸¹®°ú µðÀÚÀÎ ¾ÆÀ̵ð¾î ±×¸®°í ±âŸ µîµîÀ» °øÇåÇÏ¿© Áּ̽À´Ï´Ù.

+

John Biederman: ¹®¼­ÀÇ ¸ð½À°ú ÀÎü °øÇÐÀ» Å©°Ô °³¼±ÇÏ¿© Áּ̽À´Ï´Ù.

+

Jonathan Rennison (JGR): RegisterCallback()¸¦ °³¹ßÇÏ¿© Áּ̰í, °í¸¶¿î Á¶¾ðÀ» ÇØÁּ̽À´Ï´Ù.

+

Steve Gray (Lexikos): µ¿ÀûÀÎ ÇÔ¼ö È£Ãâ°ú ±âŸ »õ·Î¿î Ư¡µéÀ» °³¹ßÇØ Áּ̽À´Ï´Ù; ¹ö±×¸¦ ºÐ¼®ÇÏ°í °íÃÄÁּ̽À´Ï´Ù; ±×¸®°í Æ÷·ÒÀ» ¹æ¹®ÇÏ´Â ¼ö ¸¹Àº »ç¶÷µé¿¡°Ô ±ÍÁßÇÑ Áö¿ø°ú Á¶¾ðÀ» Á¦°øÇØ Áּ̽À´Ï´Ù.

+

AutoHotkey_L:

+

jackeiku: Unicode °³¹ß°ú ±âŸ »õ·Î¿î Ư¡ÀÇ °³¹ßÀ» Áö¿øÇØ Áּ̽À´Ï´Ù.

+

fincs: °íÀ¯ÀÇ 64-ºñÆ® Áö¿ø°ú try/catch/throw¸¦ °³¹ß, ±×¸®°í ±¸Çü ÄÄÆÄÀÏ·¯¸¦ ½ÅÇüÀ¸·Î ÀÛ¼ºÇØ Áּ̰í, ¹ö±×¸¦ ºÐ¼®ÇÏ°í ¼öÁ¤ÇØ Áּ̽À´Ï´Ù.

+

Sean: ³»Àå COM ±â´ÉÀ» °³¹ßÇÏ°í COM¿¡ ´ëÇÑ ±ÍÁßÇÑ ÅëÂûÀ» Á¦°øÇÏ¿© Áּ̽À´Ï´Ù.

+

TheGood: ¼³Ä¡ ½ºÅ©¸³Æ®¸¦ Àû¿ëÇÏ°í ¹®¼­¸¦ º´ÇÕÇØ Áּ̽À´Ï´Ù.

+

ac: #WarnÀ» °³¹ßÇØ Áּ̽À´Ï´Ù.

+

Russell Davis: A_PriorKey, ahk_path (WinTitle ¸Å°³º¯¼ö¿¡¼­ ahk_exe°¡ ÀÇÁ¸), #InputLevel ±×¸®°í SendLevel ¸¦ °³¹ßÇØ Áּ̽À´Ï´Ù.

+

Christian Sander: SysLink ÄÜÆ®·Ñ °³¹ßÀ» Áö¿øÇØ Áּ̽À´Ï´Ù.

+

 

+

±× ¹Û¿¡ ¹ö±×¸¦ º¸°íÇØ Áֽðí Á¦¾ÈÀ» ÇØ ÁֽŠ¸ðµç °øÇåÀÚ ¿©·¯ºÐ²² °¨»çÀÇ ¸»¾¸À» ÀüÇÕ´Ï´Ù: °í¸¿½À´Ï´Ù!

+ + diff --git a/src/docs/misc/Arrays.htm b/src/docs/misc/Arrays.htm new file mode 100644 index 0000000..e5d9590 --- /dev/null +++ b/src/docs/misc/Arrays.htm @@ -0,0 +1,101 @@ + + +Arrays + + + + + + + +

¹è¿­

+ +

¿¬°ü ¹è¿­ [AHK_L 31+]

+

Object()¸¦ È£ÃâÇϸé ÀÚ±â ÃæÁ·Àû ¿¬°ü ¹è¿­À» »ý¼ºÇÒ ¼ö ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î:

+
; ¹è¿­À» »ý¼ºÇÕ´Ï´Ù. ÃÖÃÊ´Â ºñ¾î ÀÖ½À´Ï´Ù:
+Array := Object()
+
+; ¹è¿­¿¡ ¾¹´Ï´Ù:
+Loop, Read, C:\Guest List.txt ; ÀÌ È¸µ¹ÀÌ´Â ÆÄÀϷκÎÅÍ °¢ ÁÙÀ» ÇÑ ¹ø¿¡ Çϳª¾¿ ¿­¶÷ÇÕ´Ï´Ù.
+{
+    Array.Insert(A_LoopReadLine) ; ÀÌ ÁÙÀ» ¹è¿­¿¡ Ãß°¡ÇÕ´Ï´Ù.
+}
+
+; ¹è¿­·ÎºÎÅÍ ÀнÀ´Ï´Ù:
+; Loop % Array.MaxIndex()   ; Á» ÀüÅëÀûÀÎ Á¢±Ù¹ý.
+for index, element in Array ; ´ëºÎºÐÀÇ °æ¿ì ±ÇÀåÇÏ´Â Á¢±Ù¹ý.
+{
+    ; "Loop"¸¦ »ç¿ëÇϸé, À妽º´Â 1 ºÎÅÍ ¹è¿­ÀÇ ¿ø¼ÒÀÇ °³¼ö±îÁö.
+    ; ¿¬¼ÓÀûÀÎ ¼ýÀÚ°¡ µÇ¾î¾ß ÇÕ´Ï´Ù (¶Ç´Â ȸµ¹ÀÌ ¾È¿¡¼­ °è»êµÇ¾î¾ß ÇÕ´Ï´Ù).
+    ; MsgBox % "Element number " . A_Index . " is " . Array[A_Index]
+    
+    ; "for"¸¦ »ç¿ëÇϸé, À妽º (¶Ç´Â "Å°")¿Í ±×¿¡ ¿¬°üµÈ °ªÀÌ Á¦°øµË´Ï´Ù
+    ; ±×¸®°í À妽º´Â ¼±Åÿ¡ µû¶ó *¾î¶² °ªÀ̵ç* µÉ ¼ö ÀÖ½À´Ï´Ù.
+    MsgBox % "Element number " . index . " is " . element
+}
+

+ÀÌ Á¤µµ´Â °´Ã¼°¡ Á¦°øÇÏ´Â ±â´ÉÀÇ ÀϺθ¸ º¸¿©ÁÙ »ÓÀÔ´Ï´Ù . Ç׸ñÀ» ¼³Á¤, ¿­¶÷, »ðÀÔ, Á¦°Å ±×¸®°í ¿­°ÅÇÒ ¼ö ÀÖ½À´Ï´Ù. ¹®ÀÚ¿­°ú °´Ã¼´Â ¼ýÀÚ¿Í ´õºÒ¾î Å°·Î »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. °´Ã¼´Â °ªÀ¸·Î ´Ù¸¥ °´Ã¼¿¡ ÀúÀåÇÏ°í ÇÔ¼öÀÇ ¸Å°³º¯¼ö ¶Ç´Â ¹Ýȯ °ªÀ¸·Î °Ç³Ú ¼ö ÀÖ½À´Ï´Ù. °´Ã¼´Â ¶Ç »õ·Î¿î ±â´ÉÀ¸·Î È®ÀåÇÒ ¼ö ÀÖ½À´Ï´Ù.

+

+Insert()¿Í ¿­°ÅÀÚ´Â °¢ÀÚ ÀÚ½ÅÀÇ »ç¿ë¹ýÀÌ ÀÖÁö¸¸, ¾î¶² »ç¿ëÀÚ´Â ÀüÅëÀûÀÎ Á¢±Ù¹ýÀ» ´õ ½±°Ô »ý°¢ÇÕ´Ï´Ù:

+
+  ; °¢ ¹è¿­Àº »ç¿ëÇϱâ Àü¿¡ ÃʱâÈ­ÇØ¾ß ÇÕ´Ï´Ù:
+  Array := Object()
+
+; Array%j% := A_LoopField
+  Array[j] := A_LoopField
+
+; Array%j%_%k% := A_LoopReadLine
+  Array[j, k] := A_LoopReadLine
+
+  ArrayCount := 0                        
+  Loop, Read, C:\Guest List.txt
+  {
+      ArrayCount += 1
+    ; Array%ArrayCount% := A_LoopReadLine
+      Array[ArrayCount] := A_LoopReadLine
+  }
+
+  Loop %ArrayCount%
+  {
+    ; element := Array%A_Index%
+      element := Array[A_Index]
+    ; MsgBox % "Element number " . A_Index . " is " . Array%A_Index%
+      MsgBox % "Element number " . A_Index . " is " . Array[A_Index]
+  }
+
+

ArrayCount´Â ÆíÀǸ¦ À§ÇØ º¯¼ö·Î ³²°Ü µÎ¾úÁö¸¸, ¹è¿­ ÀÚü¿¡ Array.Count := n·Î ÀúÀåÇϰųª ¾Æ´Ï¸é Á¦°ÅÇÏ°í ±× ÀÚ¸®¿¡ Array._MaxIndex()¸¦ »ç¿ëÇصµ µË´Ï´Ù. ½ÃÀÛ À§Ä¡¸¦ 1 ¸»°í ´Ù¸¥ °ÍÀ¸·Î ÇÏ°í ½Í´Ù¸é, Array._MinIndex()¸¦ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù.

+ +

ÀÇ»ç-¹è¿­

+

+ÀÇ»ç ¹è¿­Àº ´ë´ÜÈ÷ °³³äÀûÀÔ´Ï´Ù: °¢ ¹è¿­Àº ½ÇÁ¦·Î ±×Àú ¿¬¼ÓÀûÀ¸·Î ¹øÈ£°¡ ºÙÀº, ±×¸®°í °¢°¢ ¹è¿­ÀÇ ¿ø¼Ò·Î ÀÎÁöµÇ´Â º¯¼ö³ª ÇÔ¼ö Áý´Ü¿¡ ºÒ°úÇÕ´Ï´Ù. ¿ÀÅäÇÖÅ°´Â ÀÌ ¿ø¼ÒµéÀ» ¾î¶² ½ÄÀ¸·Îµç Çϳª·Î ¿¬°áÇÏÁö ¾Ê½À´Ï´Ù.

+

+StringSplit°ú "WinGet List"°°Àº ¹è¿­-»ý¼º ¸í·É¾î ¸»°íµµ, OutputVar¸¦ ¹Þ´Â ¸í·É¾î³ª °ªÀ» º¯¼ö¿¡ ÇÒ´çÇÏ´Â ¸í·É¾î¶ó¸é ¹«¾ùÀÌµç ¹è¿­À» »ý¼ºÇϴµ¥ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. °¡Àå °£´ÜÇÑ ¿¹´Â ¾Æ·¡¿¡ º¸¿©ÁÖ´Â ¹Ù¿Í °°ÀÌ ÇÒ´ç ¿¬»êÀÚ (:=)ÀÔ´Ï´Ù:

+ +
Array%j% := A_LoopField
+

+´ÙÂ÷¿ø ¹è¿­Àº ¼±ÅÃÇÑ °¡¸§ ¹®ÀÚ¸¦ À妽º »çÀÌ¿¡ »ç¿ëÇÏ¸é °¡´ÉÇÕ´Ï´Ù. ¿¹¸¦ µé¾î:

+
Array%j%_%k% := A_LoopReadLine
+
+

+´ÙÀ½ ¿¹Á¦´Â ¹è¿­À» ¸¸µé°í Á¢±ÙÇÏ´Â ¹ýÀ» º¸¿©ÁÝ´Ï´Ù. ÀÌ °æ¿ì ¹è¿­Àº ÅؽºÆ®·ÎºÎÅÍ ¿­¶÷ÇÑ ÀÏ·ÃÀÇ À̸§ÀÔ´Ï´Ù:

+
; ¹è¿­¿¡ ¾²±â:
+ArrayCount = 0
+Loop, Read, C:\Guest List.txt   ; ÀÌ È¸µ¹ÀÌ´Â ÆÄÀϷκÎÅÍ ÇÑ ¹ø¿¡ Çϳª¾¿ °¢ ÁÙÀ» ¿­¶÷ÇÕ´Ï´Ù.
+{
+    ArrayCount += 1  ; ¹è¿­¿¡ ¾ó¸¶³ª ¸¹Àº Ç׸ñÀÌ ÀÖ´Â ÃßÀû °ü¸®ÇÕ´Ï´Ù.
+    Array%ArrayCount% := A_LoopReadLine  ; ÀÌ ÁÙÀ» ´ÙÀ½ ¹è¿­ ¿ø¼Ò¿¡ ÀúÀåÇÕ´Ï´Ù.
+}
+
+; ¹è¿­·ÎºÎÅÍ ÀнÀ´Ï´Ù:
+Loop %ArrayCount%
+{
+    ; ´ÙÀ½ ÁÙÀº := ¿¬»êÀÚ¸¦ »ç¿ëÇÏ¿© ¹è¿­ ¿ø¼Ò¸¦ ¿­¶÷ÇÕ´Ï´Ù:
+    element := Array%A_Index%  ; A_Index´Â ³»Àå º¯¼öÀÔ´Ï´Ù.
+    ; ´Ù¸¥ ¹æ¹ýÀ¸·Î, "% " Á¢µÎ»ç¸¦ »ç¿ëÇÏ¿© MsgBox³ª ±âŸ ´Ù¸¥ ¸í·É¾î¸¦ Ç¥Çö½ÄÀ¸·Î ¸¸µì´Ï´Ù:
+    MsgBox % "Element number " . A_Index . " is " . Array%A_Index%
+}
+

+¹è¿­¿¡ °ü·ÃµÈ °³³äÀº NumPut()°ú NumGet()À» »ç¿ëÇØ ÀÌÁø ÇüÅÂÀÇ ¼ýÀÚ Áý´ÜÀ» ÀúÀåÇÏ°í ¿­¶÷ÇÏ´Â °ÍÀÔ´Ï´Ù. ÀÌ°ÍÀº ¼öÇ༺´É°ú ¸Þ¸ð¸® º¸ÀüÀÌ Áß¿äÇÑ °æ¿ì¿¡ µµ¿òÀÌ µÉ ¼ö ÀÖ½À´Ï´Ù.

+ + + diff --git a/src/docs/misc/AutoIt2Compat.htm b/src/docs/misc/AutoIt2Compat.htm new file mode 100644 index 0000000..912b1c3 --- /dev/null +++ b/src/docs/misc/AutoIt2Compat.htm @@ -0,0 +1,41 @@ + + +AutoIt v2 Compatibility + + + + + + + +

AutoIt v2¿ÍÀÇ È£È¯¼º

+

+AutoHotkey v1.1.09 ÀÌÈÄ´Â AutoIt v2 (.aut) ½ºÅ©¸³Æ®¸¦ Áö¿øÇÏÁö ¾Ê½À´Ï´Ù. ¿¹Àü ¹öÀüÀÇ ¿ÀÅäÇÖÅ°´Â ±âº» ¼³Á¤°ú ¾à°£ÀÇ ¸í·É¾îÀÇ ÇàÀ§¸¦ ¹Ù²Ù¾î¼­ AutoIt v2 ½ºÅ©¸³Æ®¸¦ Áö¿øÇÕ´Ï´Ù. ÀÌ ÆäÀÌÁö´Â ¹®¼­ÀÇ ´Ù¸¥ ÆäÀÌÁö·ÎºÎÅÍ Á¦°ÅµÈ Á¤º¸¸¦ ´ã°í ÀÖ½À´Ï´Ù.

+ +

´ÙÀ½Àº ¿ÀÁ÷ .aut ÆÄÀϸ¸ Áö¿øÇÕ´Ï´Ù. ±×¸®°í ¿ÀÁ÷ v1.1.08.01 ÀÌÀü ¹öÀü¿¡¼­¸¸ Áö¿øÇÕ´Ï´Ù.

+ + + + + + + + + + + + + + +
#AllowSameLineComments±âº»°ªÀ¸·Î, ÁÖ¼®Àº ¸í·É¾î¿Í °°Àº ÁÙ¿¡ Çã¿ëµÇÁö ¾Ê½À´Ï´Ù.
A_ScriptDir¸¶Áö¸· ¿ª»ç¼±À» Æ÷ÇÔÇÕ´Ï´Ù.
DetectHiddenText±âº»°ªÀº ²¨Á® ÀÖ½À´Ï´Ù.
#EscapeChar±âº»°ªÀº ¿ª»ç¼± (\)ÀÔ´Ï´Ù.
FileCopy ÆÄÀÏÀ» º¹»çÇÒ ¼ö ¾øÀ¸¸é ErrorLevelÀ» 1·Î ¼³Á¤ÇÕ´Ï´Ù.
IniDeleteErrorLevel´Â º¯ÇÏÁö ¾Ê½À´Ï´Ù.
IniReadDefault ¸Å°³º¯¼ö¸¦ Áö¿øÇÏÁö ¾Ê½À´Ï´Ù; °ªÀ» Àдµ¥ ¹®Á¦°¡ ÀÖÀ¸¸é ¹®ÀÚ¿­ ERROR°¡ ¾ðÁ¦³ª OutputVar¿¡ ÀúÀåµË´Ï´Ù.
IniWriteErrorLevelÀº º¯ÇÏÁö ¾Ê½À´Ï´Ù.
InputBox»ç¿ëÀÚ°¡ CANCEL ¹öÆ°À» ´©¸£¸é, OutputVar¸¦ ºñ¿ó´Ï´Ù. ErrorLevelÀº ´ëÈ­»óÀÚ°¡ ½Ã°£ Á¦ÇÑ¿¡ °É¸®Áö ¾Ê´Â ÇÑ º¯ÇÏÁö ¾Ê½À´Ï´Ù.
SetBatchLines±âº»°ªÀº 1ÀÔ´Ï´Ù. ±× ¶§¹®¿¡ ½ºÅ©¸³Æ®°¡ ¸Å ÁÙ¸¶´Ù ÀáÀ» Àâ´Ï´Ù.
SetKeyDelayÀüÅëÀûÀÎ SendEvent ¸ðµå¿¡ ´ëÇÑ ±âº» Delay´Â 20ÀÔ´Ï´Ù.
Send¹®ÀÚ #Àº ¹«½ÃµË´Ï´Ù.
SplashTextOnHeight´Â âÀÇ Å¸ÀÌƲ ¹Ù¸¦ Æ÷ÇÔÇÕ´Ï´Ù.
+ +

ÇǽŠ¹®ÀÚ º¯È¯

+

+AutoHotkey v1.1.08.01 ÀÌÀü¿¡¼­ È®ÀåÀÚ .aut.ahk¸¦ °¡Áö°í ½ºÅ©¸³Æ® ÆÄÀÏÀ» ½ÇÇàÇÏ¸é ½ÇÇàÀÌ µÇÁö ¾Ê½À´Ï´Ù; ´ë½Å¿¡ ±× ½ºÅ©¸³Æ®¸¦ AutoIt v2 ±âº» ÇǽŠ¹®ÀڷκÎÅÍ (¿ª»ç¼±) ¿ÀÅäÇÖÅ°ÀÇ ±âº» ÇǽŠ¹®ÀÚ (¹éƽ)À¸·Î º¯È¯ÇÕ´Ï´Ù.

+ +

Æó±âµÈ ¸í·É¾îµé

+

+´ÙÀ½ ¸í·É¾î´Â ÀÚµ¿À¸·Î ¿ÀÅäÇÖÅ° ¸í·É¾î¿¡ »óÀÀÇÏ´Â ¸í·É¾î·Î º¯È¯µË´Ï´Ù (±×¸®°í ÀÌÀü¿¡´Â ÀÌ »ç½ÇÀÌ ¹®¼­¿¡ ¸í±âµÇ¾î ÀÖÁö ¾Ê¾Ò½À´Ï´Ù): LeftClick, LeftClickDrag, RightClick, RightClickDrag, HideAutoItWin, Repeat, EndRepeat. ÀÌ ÀÚµ¿ º¯È¯ ±â´ÉÀº v1.1.09¿¡¼­ Á¦°ÅµÇ¾ú½À´Ï´Ù.

+ + + diff --git a/src/docs/misc/CLSID-List.htm b/src/docs/misc/CLSID-List.htm new file mode 100644 index 0000000..fb18488 --- /dev/null +++ b/src/docs/misc/CLSID-List.htm @@ -0,0 +1,131 @@ + + + CLSID List (Windows Class Identifiers) + + + + + + + +

CLSID List (À©µµ¿ìÁî Ŭ·¡½º ½Äº°ÀÚ)

+

+¿î¿µÃ¼Á¦ ¾ÈÀÇ ¾î¶² Ư¼ö Æú´õ´Â À¯ÀÏÇÑ ¹®ÀÚ¿­·Î ½Äº°µË´Ï´Ù. ÀÌ ¹®ÀÚ¿­Àº FileSelectFile, FileSelectFolder, ±×¸®°í Run¿¡ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î:

+
FileSelectFile, OutputVar,, ::{645ff040-5081-101b-9f08-00aa002f954e}  ; ÈÞÁöÅë ¾È¿¡¼­ ÆÄÀÏ Çϳª¸¦ ¼±ÅÃÇÕ´Ï´Ù.
+FileSelectFolder, OutputVar, ::{20d04fe0-3aea-1069-a2d8-08002b30309d}  ; ³» ÄÄÇ»ÅÍ ¾È¿¡¼­ Æú´õ¸¦ Çϳª ¼±ÅÃÇÕ´Ï´Ù.
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
CLSIDÀǹÌ/À§Ä¡Run Áö¿ø ¿©ºÎ?
::{d20ea4e1-3957-11d2-a40b-0c5020524153}°ü¸® µµ±¸ 
::{85bbd92o-42a0-1o69-a2e4-08002b30309d}¼­·ù°¡¹æ 
::{21ec2o2o-3aea-1o69-a2dd-08002b30309d}Á¦¾îÆÇ 
::{d20ea4e1-3957-11d2-a40b-0c5020524152}±Û²Ã 
::{ff393560-c2a7-11cf-bff4-444553540000}À̷ 
::{00020d75-0000-0000-c000-000000000046}¹ÞÀº ÆíÁöÇÔ 
::{00028b00-0000-0000-c000-000000000046}¸¶ÀÌÅ©·Î¼ÒÇÁÆ® ³×Æ®¿öÅ© 
::{20d04fe0-3aea-1069-a2d8-08002b30309d}³» ÄÄÇ»ÅÍYes
::{450d8fba-ad25-11d0-98a8-0800361b1103}³» ¹®¼­Yes
::{208d2c60-3aea-1069-a2d7-08002b30309d}³» ³×Æ®¿öÅ© À§Ä¡Yes
::{1f4de370-d627-11d1-ba4f-00a0c91eedba}³×Æ®¿öÅ© ÄÄÇ»ÅÍYes
::{7007acc7-3202-11d1-aad2-00805fc1270e}³×Æ®¿öÅ© Á¢¼ÓYes
::{2227a280-3aea-1069-a2de-08002b30309d}ÇÁ¸°ÅÍ¿Í ÆѽºYes
::{7be9d83c-a729-4d97-b5a7-1b7313c39e0a}ÇÁ·Î±×·¥ Æú´õ 
::{645ff040-5081-101b-9f08-00aa002f954e}¾²·¹±âÅëYes
::{e211b736-43fd-11d1-9efb-0000f8757fcd}½ºÄ³³Ê¿Í Ä«¸Þ¶ó 
::{d6277990-4c6a-11cf-8d87-00aa0060f5bf}ÀÏÁ¤Yes
::{48e7caab-b918-4e58-a94d-505519c795dc}½ÃÀÛ ¸Þ´º Æú´õ 
::{7bd29e00-76c1-11cf-9dd0-00a0c9034933}Àӽà ÀÎÅÍ³Ý ÆÄÀÏ 
::{bdeadf00-c265-11d0-bced-00a0c90ab50f}À¥ Æú´õ 
+

+¸¶Áö¸· Ä÷³¿¡ ÀÖ´Â "Yes" ¿£Æ®¸®µéÀº Àý´ëÀûÀÌ ¾Æ´Õ´Ï´Ù: Run ¸í·É¾î´Â ½Ã½ºÅÛ È¯°æ ±¸¼º¿¡ µû¶ó ´Ù¸¥ CLSID¸¦ Áö¿øÇÒ ¼öµµ ÀÖ½À´Ï´Ù. RunÀ» ÅëÇÏ¿© CLSID¸¦ ¿­·Á¸é, ±×³É ù ¸Å°³º¯¼ö·Î CLSID¸¦ ÁöÁ¤ÇÏ¸é µË´Ï´Ù. ¿¹¸¦ µé¾î:

+
Run ::{20d04fe0-3aea-1069-a2d8-08002b30309d}  ; "³» ÄÄÇ»ÅÍ" Æú´õ¸¦ ¿±´Ï´Ù.
+Run ::{645ff040-5081-101b-9f08-00aa002f954e}  ; ÈÞÁöÅëÀ» ¿±´Ï´Ù.
+Run ::{450d8fba-ad25-11d0-98a8-0800361b1103}\My Folder  ; "³» ¹®¼­" ¾È¿¡ Á¸ÀçÇÏ´Â Æú´õ¸¦ ¿±´Ï´Ù.
+Run %A_MyDocuments%\My Folder  ; ´ëºÎºÐÀÇ ½Ã½ºÅÛ¿¡¼­ À§¿Í °°½À´Ï´Ù.
+ + diff --git a/src/docs/misc/Clipboard.htm b/src/docs/misc/Clipboard.htm new file mode 100644 index 0000000..1891cb4 --- /dev/null +++ b/src/docs/misc/Clipboard.htm @@ -0,0 +1,84 @@ + + +Clipboard and ClipboardAll + + + + + + + +

Clipboard ±×¸®°í ClipboardAll

+ +

Clipboard´Â ³»Àå º¯¼ö·Î¼­ âÀÇ Å¬¸³º¸µåÀÇ ÇöÀç ³»¿ëÀ» ¹Ý¿µÇÕ´Ï´Ù. ±× ³»¿ëÀÌ ÅؽºÆ®·Î Ç¥Çö °¡´ÉÇÏ¸é ¸»ÀÔ´Ï´Ù. ´ëÁ¶ÀûÀ¸·Î, ClipboardAllÀº ±×¸²ÀÌµç ±¸Á¶Àû ÅؽºÆ®ÀÌµç ¹«¾ùÀ̵ç Ŭ¸³º¸µå¿¡ ´ãÀ» ¼ö ÀÖ½À´Ï´Ù.

+

Clipboard¿¡¼­ ÅؽºÆ®ÀÇ °¢ ÁÙÀº ÀüÇüÀûÀ¸·Î ij¸®Áö ¸®ÅÏ°ú ¶óÀÎÇǵå(CR+LF)·Î ³¡³³´Ï´Ù. ½ºÅ©¸³Æ®¿¡¼­´Â `r`nÀ¸·Î Ç¥ÇöÇÒ ¼ö ÀÖ½À´Ï´Ù. (Ž»ö±â âÀ¸·ÎºÎÅÍ Control-C¸¦ ÅëÇÏ¿© º¹»çµÈ) ÆÄÀÏÀº ÅؽºÆ®·Î °£Áֵ˴ϴÙ: ½ºÅ©¸³Æ®¿¡¼­ Clipboard¸¦ ÂüÁ¶ÇÒ ¶§¸¶´Ù ÀÚµ¿À¸·Î (¿ÏÀüÇÑ °æ·Î¿Í ÇÔ²²) ±×ÀÇ ÆÄÀÏÀ̸§À¸·Î º¯È¯µË´Ï´Ù. +ÆÄÀÏÀ» Çϳª¾¿ ÃßÃâÇÏ·Á¸é ´ÙÀ½ ¿¹Á¦¸¦ µû¸£½Ê½Ã¿À:

+ +
Loop, parse, clipboard, `n, `r
+{
+    MsgBox, 4, , File number %A_Index% is %A_LoopField%.`n`nContinue?
+    IfMsgBox, No, break
+}
+

+ÆÄÀÏ À̸§À» ¾ËÆĺª ¼ø¼­·Î Á¤·ÄÇÏ·Á¸é, Sort ¸í·É¾î¸¦ »ç¿ëÇÕ´Ï´Ù. Ŭ¸³º¸µå¿¡ Á¸ÀçÇÏ´Â ÆÄÀÏ À̸§À» ÆÄÀÏ¿¡ ¾²·Á¸é, FileAppend, %clipboard%`r`n, C:\My File.txt¸¦ »ç¿ëÇÕ´Ï´Ù. ¾ó¸¶³ª ¿À·§µ¿¾È ½ºÅ©¸³Æ®°¡ Ŭ¸³º¸µå¸¦ ¿­·Á°í ½ÃµµÇÒ Áö º¯°æÇÏ·Á¸é -- ´Ù¸¥ ¾îÇø®ÄÉÀ̼ǿ¡¼­ »ç¿ëÇÏ°í ÀÖ´Â °æ¿ì -- #ClipboardTimeOutÀ» »ç¿ëÇÕ´Ï´Ù.

+±âº» ¿¹Á¦: +
clipboard = my text   ; Ŭ¸³º¸µå¿¡ ¿ÏÀüÈ÷ »õ·Î¿î ³»¿ëÀ» ºÎ¿©ÇÕ´Ï´Ù.
+clipboard =   ; Empty the clipboard.
+clipboard = %clipboard%   ; º¹»çµÈ ÆÄÀÏ, HTML, ¶Ç´Â ±âŸ Çü½ÄÀÇ ÅؽºÆ®¸¦ Æò¹üÇÑ ÅؽºÆ®·Î º¯È¯ÇÕ´Ï´Ù.
+clipboard = %clipboard% Text to append.   ; ÅؽºÆ®¸¦ Ŭ¸³º¸µå¿¡ Ãß°¡ÇÕ´Ï´Ù.
+StringReplace, clipboard, clipboard, ABC, DEF, All   ; ABC°¡ ³ªÅ¸³ª¸é ¸ðµÎ DEF·Î ¹Ù²ß´Ï´Ù (¶Ç Ŭ¸³º¸µå¸¦ Æò¹üÇÑ ÅؽºÆ®·Î º¯È¯ÇÕ´Ï´Ù).
+ +

ClipWait¸¦ »ç¿ëÇÏ¿© ½ºÅ©¸³Æ®ÀÇ ½Å·Ú¼º ³ôÀ̱â:

+
clipboard =  ; ÅؽºÆ®°¡ µµÂøÇÒ ¶§¸¦ ŽÁöÇϵµ·Ï Çϱâ À§ÇØ ClipWait¸¦ ºñ¿î ä·Î ½ÃÀÛÇÕ´Ï´Ù. 
+Send ^c
+ClipWait  ; Ŭ¸³º¸µå¿¡ ÅؽºÆ®°¡ ´ã±â±â¸¦ ±â´Ù¸³´Ï´Ù.
+MsgBox Control-C ´ÙÀ½ ³»¿ëÀÌ Å¬¸³º¸µå¿¡ º¹»çµÇ¾ú½À´Ï´Ù:`n`n%clipboard%
+ +

ClipboardAll (Ŭ¸³º¸µå¿¡ ¹«¾ùÀ̵ç ÀúÀåÇÏ°í º¹±¸Çϱâ)

+

+ClipboardAllÀº Ŭ¸³º¸µå¿¡ ¹«¾ùÀÌµç ´ã½À´Ï´Ù (±×¸²°ú ±¸Á¶È­ ÅؽºÆ®). Ŭ¸³º¸µåÀÇ ³»¿ëÀ» ÀúÀåÇϴµ¥ ÁÖ·Î »ç¿ëµË´Ï´Ù. ½ºÅ©¸³Æ®°¡ Àӽ÷Π±× Ŭ¸³º¸µå¸¦ ¿¬»ê¿¡ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. ¿¬»êÀÌ ¿Ï·áµÇ¸é, ½ºÅ©¸³Æ®´Â ¿ø·¡ÀÇ Å¬¸³º¸µå ³»¿ëÀ» ¾Æ·¡¿¡ º¸¿©ÁÖ´Â ¹Ù¿Í °°ÀÌ º¹±¸ÇÕ´Ï´Ù:

+
ClipSaved := ClipboardAll   ; Àüü Ŭ¸³º¸µå¸¦ ¿©·¯ºÐÀÇ º¯¼ö¿¡ ÀúÀåÇÕ´Ï´Ù.
+; ... ¿©±â¿¡¼­ Àӽ÷ΠŬ¸³º¸µå¸¦ »ç¿ëÇÕ´Ï´Ù. ¿¹¸¦ µé¾î Transform Unicode¸¦ ÅëÇÏ¿© À¯´ÏÄÚµå ÅؽºÆ®¸¦ Çؼ®ÇÒ ¼ö ÀÖ½À´Ï´Ù ...
+Clipboard := ClipSaved   ; ¿ø·¡ Ŭ¸³º¸µå¸¦ º¹±¸ÇÕ´Ï´Ù. ( ClipboardAllÀÌ ¾Æ´Ï¶ó) ClipboardÀÇ »ç¿ë¿¡ ÁÖ¸ñÇϽʽÿÀ.
+ClipSaved =   ; Ŭ¸³º¸µå°¡ ¾ÆÁÖ Å« °æ¿ì ¸Þ¸ð¸®¸¦ ÇØÁ¦ÇÕ´Ï´Ù.
+

+ClipboardAll¸¦ ÆÄÀÏ¿¡ ÀúÀåÇÒ ¼öµµ ÀÖ½À´Ï´Ù (ÀÌ ¸ðµå¿¡¼­, FileAppend´Â ¾ðÁ¦³ª ±âÁ¸ÀÇ ÆÄÀÏÀ» µ¤¾î¾¹´Ï´Ù):

+
FileAppend, %ClipboardAll%, C:\Company Logo.clip ; ÆÄÀÏ È®ÀåÀÚ´Â ¹®Á¦°¡ µÇÁö ¾Ê½À´Ï´Ù.
+

+³ªÁß¿¡ ´Ù½Ã ±× ÆÄÀÏÀ» Ŭ¸³º¸µå·Î (¶Ç´Â º¯¼ö ¾ÈÀ¸·Î) ÀûÀçÇÏ·Á¸é, ´ÙÀ½ ¿¹Á¦¸¦ µû¸£½Ê½Ã¿À:

+
FileRead, Clipboard, *c C:\Company Logo.clip ; *cÀÇ »ç¿ë¿¡ ÁÖ¸ñÇϽʽÿÀ. ¹Ýµå½Ã ÆÄÀÏÀ̸§ ¾Õ¿¡ ¿Í¾ß ÇÕ´Ï´Ù.
+ +

ÁÖÀÇ

+

+ClipboardAll´Â À§¿¡ ±â¼úµÈ ¹æ½Ä ¿Ü¿¡ ´Ù¸¥ ¹æ½ÄÀ¸·Î »ç¿ëµÇ¸é ºñ¾î ÀÖ½À´Ï´Ù. °Ô´Ù°¡, ClipboardAll´Â ½°Ç¥·Î-°¡¸¥ Ç¥Çö½Ä ¾È¿¡¼­ Áö¿øÇÏÁö ¾Ê½À´Ï´Ù. Áï, ClipSaved := ClipboardAll°ú °°ÀÌ ÇÑ ÁÙ¿¡ ÀÚü¸¸ ÇÒ´çÇØ¾ß ÇÕ´Ï´Ù.

+

+ClipboardAllÀÌ ÇÒ´çµÈ º¯¼ö´Â ÀÌÁø Çü½ÄÀÌ¸ç ±×·¡¼­ MsgBox°°Àº °ÍÀ¸·Î º¸¸é ¾²·¹±âó·³ º¸ÀÔ´Ï´Ù. ¶Ç, ÀÌÁø-Ŭ¸³º¸µå º¯¼ö (StringReplace¿Í °°Àº ¼ö´ÜÀ¸·Î) º¸Åë º¯¼ö·Î ȯ¿øÇϸé, °á°úÀûÀ¸·Î ±×ÀÇ Å¬¸³º¸µå µ¥ÀÌÅÍ°¡ ¼Ò½ÇµË´Ï´Ù. v1.0.46+¿¡¼­, ÀÌÁø-Ŭ¸³º¸µå º¯¼ö´Â °ªÀ¸·Î ÇÔ¼ö¿¡ °Ç³×µµ µË´Ï´Ù (ÀÌÀü¿¡´Â ByRef·Î¸¸ ÀÛµ¿Çß½À´Ï´Ù).

+

+ClipboardAllÀÌ Å¬¸³º¸µå¿¡¼­ Çϳª ÀÌ»óÀÇ µ¥ÀÌÅÍ °´Ã¼(±¸Á¶Àû ÅؽºÆ®)¸¦ ¿­¶÷ÇÒ ¼ö ¾øÀ¸¸é, ±×°ÍÀº »ý·«µÇÁö¸¸ ³ª¸ÓÁö °´Ã¼´Â ±×´ë·Î ÀúÀåµË´Ï´Ù.

+

+Ŭ¸³º¸µå µ¥ÀÌÅ͸¦ ´ã°í ÀÖ´Â º¯¼ö´Â ´ÙÀ½ ¿¹Á¦¿Í °°ÀÌ ´Ù¸¥ º¯¼ö¿¡ º¹»çÇÒ ¼ö ÀÖ½À´Ï´Ù: ClipSaved2 := ClipSaved.

+

+ClipWaitÀ» »ç¿ëÇϸé Ŭ¸³º¸µå¿¡ µ¥ÀÌÅÍ°¡ ´ã±â´Â ¶§¸¦ ŽÁöÇÒ ¼ö ÀÖ½À´Ï´Ù (¼±ÅÃÀûÀ¸·Î ÅؽºÆ®-¾Æ´Ñ µ¥ÀÌÅÍ Æ÷ÇÔ).

+

StrLen / StringLen¸¦ »ç¿ëÇϸé ClipboardAllÀÌ ÇÒ´çµÈ º¯¼öÀÇ ÃÑ Å©±â¸¦ ¹ß°ßÇÒ ¼ö ÀÖ½À´Ï´Ù. ±×·¸Áö¸¸, À¯´ÏÄÚµå ¹öÀüÀÇ ÇÖÅ°¿¡¼­ ¹ÙÀÌÆ® ´ÜÀ§·Î ±× Å©±â¸¦ ¾òÀ¸·Á¸é, ±× Å©±â¿¡ 2¸¦ °öÇØ¾ß ¾òÀ» ¼ö ÀÖ½À´Ï´Ù. A_IsUnicode¸¦ »ç¿ëÇϸé ANSI¿Í Unicode ¹öÀüÀ» ´ÙÀ½ ¿¹Á¦¿Í °°ÀÌ ¼±ÅÃÀûÀ¸·Î Áö¿øÇÒ ¼ö ÀÖ½À´Ï´Ù: size := StrLen(ClipSaved) * (A_IsUnicode ? 2 : 1).

+

+ClipboardAllÀÌ ÇÒ´çµÈ º¯¼ö´Â <> ±×¸®°í = ¿¬»êÀÚ¸¦ »ç¿ëÇÏ¿© ´Ù¸¥ º¯¼ö¿Í ºñ±³ÇÒ ¼ö ÀÖ½À´Ï´Ù (±×·¯³ª Á÷Á¢ ClipboardAll°ú ºñ±³ÇÒ ¼ö´Â ¾ø½À´Ï´Ù. ´ÙÀ½ ¿¹Á¦¿¡¼­, °¢ º¯¼öÀÇ Å©±â¸¦ ¸ÕÀú Á¡°ËÇÕ´Ï´Ù. Å©±â°¡ ÃæºÐÇÏÁö ¾Ê¾Æ °áÁ¤ÇÒ ¼ö ¾øÀ¸¸é, ±× ³»¿ëÀ» ºñ±³ÇØ ½ÂºÎ¸¦ °áÁ¤ÁöÀ» ¼ö ÀÖ½À´Ï´Ù:

+ +
if ClipSaved1 <> %ClipSaved2%   ; ÀÌ°ÍÀº  ¿¹Àü ½ºÅ¸ÀÏÀÇ IF ¼­¼ú¹®ÀÔ´Ï´Ù. Ç¥Çö½ÄÀÌ ¾Æ´Õ´Ï´Ù.
+    MsgBox ÀúÀåµÈ µÎ °³ÀÇ Å¬¸³º¸µå°¡ ¼­·Î ´Ù¸¨´Ï´Ù.
+

+ClipboardAllÀ» º¯¼ö¿¡ ÀúÀåÇÏ´Â °ÍÀº #MaxMem¿¡ ¼³Á¤µÈ ¸Þ¸ð¸® ÇÑ°è¿¡ Á¦ÇÑÀ» ¹ÞÁö ¾Ê½À´Ï´Ù.

+

+ÀúÀåµÈ Ŭ¸³º¸µå ÆÄÀÏÀº ³»ºÎÀûÀ¸·Î 4 ¹ÙÀÌÆ® Æ÷¸Ë À¯Çü, ´ÙÀ½¿¡ 4 ¹ÙÀÌÆ® µ¥ÀÌÅÍ ºí·Ï Å©±â, ±× ´ÙÀ½¿¡ ±× Æ÷¸Ë¿¡ ´ëÇÑ µ¥ÀÌÅÍ ºí·ÏÀ¸·Î ±¸¼ºµË´Ï´Ù. Ŭ¸³º¸µå¿¡ Çϳª ÀÌ»óÀÇ Æ÷¸ËÀÌ µé¾î ÀÖ´Ù¸é (°ÅÀÇ ¸ðµç °æ¿ì¿¡ ±×·¸½À´Ï´Ù), ÀÌ ¼¼ °³ÀÇ Ç׸ñÀº ¸ðµç Æ÷¸ËÀÌ Æ÷Ç﵃ ¶§±îÁö ¹Ýº¹µË´Ï´Ù. ÆÄÀÏÀº 4 ¹ÙÀÌÆ® Æ÷¸Ë À¯ÇüÀÌ 0À¸·Î ³¡³³´Ï´Ù.

+

+¾Ë·ÁÁø ÇÑ°è: ¸¶ÀÌÅ©·Î¼ÒÇÁÆ® ¿¢¼¿ÀÇ ¼¿ÀÌ Å¬¸³º¸µå¿¡ ÀÖÀ» ¶§ ClipboardAll¸¦ ¿­¶÷ÇÏ¸é ¿¢¼¿ÀÌ "ÇÁ¸°ÅÍ ¾øÀ½" ´ëÈ­»óÀÚ¸¦ º¸¿©ÁÖ´Â ¹ö±×°¡ ÀÖ½À´Ï´Ù.

+

¿ÀÅäÇÖÅ°·Î ÀÛ¼ºµÈ Ŭ¸³º¸µå À¯Æ¿¸®Æ¼:

+ + +

OnClipboardChange

+

OnClipboardChange¸¦ »ç¿ëÇÏ¸é ½ºÅ©¸³Æ®´Â Ŭ¸³º¸µåÀÇ ³»¿ëÀÌ º¯Çϸé ŽÁöÇÒ ¼ö ÀÖ½À´Ï´Ù.

+ + + diff --git a/src/docs/misc/ErrorLevel.htm b/src/docs/misc/ErrorLevel.htm new file mode 100644 index 0000000..4821a86 --- /dev/null +++ b/src/docs/misc/ErrorLevel.htm @@ -0,0 +1,27 @@ + + +ErrorLevel + + + + + + + +

ErrorLevel

+ +

¸í·É¾îÀÇ ¼º°ø ¿©ºÎ¸¦ ¾Ë¸®±â À§ÇØ ¼³Á¤µÇ´Â ³»Àå º¯¼ö ÀÔ´Ï´Ù (¸ðµç ¸í·É¾î°¡ ErrorLevelÀÇ °ªÀ» º¯°æÇÏ´Â °ÍÀº ¾Æ´Õ´Ï´Ù). °ªÀÌ 0ÀÌ¸é º¸Åë ¼º°øÀ» ³ªÅ¸³»°í, ´Ù¸¥ °ªÀº º¸Åë ½ÇÆи¦ ³ªÅ¸³À´Ï´Ù. ErrorLevelÀÇ °ªÀ» Á÷Á¢ ¼³Á¤Çصµ µË´Ï´Ù.

+

+RunWait°¡ ÀÚ½ÅÀÌ ½ÇÇàÇÑ ÇÁ·Î±×·¥ÀÇ Á¾·á Äڵ尡 µÇµµ·Ï ErrorLevel¸¦ ¼³Á¤ÇÏ´Â °ÍÀº Ưº°È÷ Èï¹Ì·Ó½À´Ï´Ù. ´ëºÎºÐÀÇ ÇÁ·Î±×·¥Àº ¼º°øÀûÀ¸·Î ¿Ï·áÇϸé Á¾·á Äڵ带 0À¸·Î »êÃâÇÕ´Ï´Ù.

+

+°¢ ¾²·¹µå¸¶´Ù ÀÚ½ÅÀÇ ErrorLevelÀ» º¸À¯ÇÕ´Ï´Ù. ÇöÀç ¾²·¹µå°¡ ´Ù¸¥ ¾²·¹µå¿¡ ÀÇÇØ ÀÎÅÍ·´Æ® µÇ´õ¶óµµ, ¿ø·¡ ¾²·¹µå°¡ Àç°³Çϸé, ¿©ÀüÈ÷ ÀÚ½ÅÀÇ ¿ø·¡ ErrorLevelÀ» º¸À¯ÇÕ´Ï´Ù. ÀÎÅÍ·´Æ® ÇÑ ¾²·¹µå°¡ ¼³Á¤ÇÑ ErrorLevelÀÌ ¾Æ´Ï¶ó´Â ¶æÀÔ´Ï´Ù.

+

+ÁÖÀÇ: ¾î¶² ¸í·É¾î´Â ErrorLevel¿¡ 1º¸´Ù Å« °ªÀ» ¼³Á¤ÇϹǷÎ, ErrorLevelÀÌ 1Àΰ¡¸¦ Á¡°ËÇÏÁö ¸»°í, ´ë½Å¿¡ ErrorLevelÀÌ 0ÀÌ ¾Æ´Ñ°¡¸¦ Á¡°ËÇÏ´Â °ÍÀÌ ÁÁ½À´Ï´Ù.

+

¿¹Á¦

+
WinWait, MyWindow, , 1
+if ErrorLevel   ; Áï, ºñ¾î ÀÖÁö ¾Ê°Å³ª 0À̸é.
+    MsgBox, âÀÌ Á¸ÀçÇÏÁö ¾Ê½À´Ï´Ù.
+else
+    MsgBox, âÀÌ Á¸ÀçÇÕ´Ï´Ù.
+ + diff --git a/src/docs/misc/FontsStandard.htm b/src/docs/misc/FontsStandard.htm new file mode 100644 index 0000000..6258afc --- /dev/null +++ b/src/docs/misc/FontsStandard.htm @@ -0,0 +1,822 @@ + + + Standard Windows Fonts + + + + + + + +

Ç¥ÁØ À©µµ¿ìÁî ±Û²Ã

+

Progress, GUI, ±×¸®°í SplashImage ¸í·É¾î¿¡ »ç¿ëÇÕ´Ï´Ù.

+

±ÇÀå ±Û²ÃÀº ³ë¶õ»öÀ¸·Î °­Á¶ÇÏ¿´½À´Ï´Ù.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
±Û²Ã À̸§Win95WinNTWin98Win2000WinMeWinXP
Abadi MT Condensed Light

x


Arialxxxxxx
Arial Alternative Regular



x
Arial Alternative Symbol



x
Arial Black

xxxx
Arial Boldxxxxxx
Arial Bold +Italicxxxxxx
Arial Italicxxxxxx
Book Antiqua

x


Calisto MT

x


Century Gothic

x


Century Gothic Bold

x


Century Gothic Bold Italic

x


Century Gothic Italic

x


Comic Sans MS

xxx
Comic Sans MS Bold

xxxx
Copperplate Gothic Bold

x


Copperplate Gothic Light

x


Courierxxxxxx
Courier Newxxxxxx
Courier New Boldxxxxxx
Courier New Bold Italicxxxxxx
Courier New Italicxxxxxx
Estrangelo Edessa




x
Franklin Gothic Medium




x
Franklin Gothic Medium Italic



x
Gautami




x
Georgia


x
x
Georgia Bold


x
x
Georgia Bold Italic


x
x
Georgia Italic


x
x
Georgia Italic Impact




x
Impact

xxx
Latha




x
Lucida Console
xxxxx
Lucida Handwriting Italic

x


Lucida Sans Italic

x


Lucida Sans Unicode

xx
x
Marlett

x
x
Matisse ITC

x


Modernxxxx

Modern MS Sans Serif




x
MS Sans Serifxxxxxx
MS Serifxxxxx
Mv Boli




x
News Gothic MT

x


News Gothic MT Bold

x


News Gothic MT Italic

x


OCR A Extended

x


Palatino Linotype


x
x
Palatino Linotype Bold


x
x
Palatino Linotype Bold Italic

x
x
Palatino Linotype Italic


x
x
Roman
x
x
x
Script
x
x
x
Small Fonts
x
x
x
Smallfontsx
x
x
Symbolxxxxxx
Tahoma

xxxx
Tahoma Bold

xxxx
Tempus Sans ITC

xx

Times New Romanxxxxxx
Times New Roman Boldxxxxxx
Times New Roman Bold Italicxxxxxx
Times New Roman Italicxxxxxx
Trebuchet



x
Trebuchet Bold



x
Trebuchet Bold Italic



x
Trebuchet Italic



x
Trebuchet MS


x
x
Trebuchet MS Bold


x
x
Trebuchet MS Bold Italic


x
x
Trebuchet MS Italic


x
x
Tunga




x
Verdana (included with MSIE 3+)

xxxx
Verdana Bold

xxxx
Verdana Bold Italic

xxxx
Verdana Italic

xxxx
Webdings

xxxx
Westminster

x
xx
Wingdingsxx
x
x
WST_Czech




x
WST_Engl




x
WST_Fren




x
WST_Germ




x
WST_Ital




x
WST_Span




x
WST_Swed




x
+ +
+ÀÌ ¸ñ·ÏÀº KaysKreations ±×¸®°í AutoIt TeamÀÌ ÆíÁýÇß½À´Ï´Ù. + + diff --git a/src/docs/misc/Labels.htm b/src/docs/misc/Labels.htm new file mode 100644 index 0000000..bf5ba3a --- /dev/null +++ b/src/docs/misc/Labels.htm @@ -0,0 +1,63 @@ + + +Labels + + + + + + + +

¶óº§

+

¶óº§Àº ÄÚµå ÇÑ ÁÙÀ» ½Äº°ÇÕ´Ï´Ù. GotoÀÇ ¸ñÇ¥³ª ¼­ºê·çƾÀ» Çü¼ºÇÏ´Â µ¥ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù.

+
LabelName:
+

+¶óº§À» ¸¸µé·Á¸é, À§¿¡ º¸¿©ÁÖ´Â ¹Ù¿Í °°ÀÌ ¶óº§ À̸§ ´ÙÀ½¿¡ ½ÖÁ¡À» Àû½À´Ï´Ù. °ø¹é¹®ÀÚ¿Í ÁÖ¼® ¿Ü¿¡, ´Ù¸¥ ÄÚµå´Â °°Àº ÁÙ¿¡ ¾µ ¼ö ¾ø½À´Ï´Ù.

+

À̸§: ¶óº§ À̸§Àº ´ë¼Ò¹®ÀÚ¸¦ ±¸ºÐÇÏÁö ¾ÊÀ¸¸ç, ½ºÆäÀ̽º³ª ÅÇ ±×¸®°í ½°Ç¥¿Í ÇǽŠ¹®ÀÚ (`)¸¦ Á¦¿ÜÇÏ°í ¾î¶² ¹®Àڷεµ ±¸¼ºÇÒ ¼ö ÀÖ½À´Ï´Ù. ±×·¸Áö¸¸, ½ºÅ¸ÀÏ °ü·Ê ¶§¹®¿¡, ÀϹÝÀûÀ¸·Î ¿ÀÁ÷ ±âÈ£¿Í ¼ýÀÚ ±×¸®°í ¹ØÁÙ ¹®ÀÚ¸¦ »ç¿ëÇÏ´Â ÆíÀÌ ÁÁ½À´Ï´Ù (¿¹¸¦ µé¾î: MyListView, Menu_File_Open, and outer_loop). ¶óº§ À̸§Àº Àüü ½ºÅ©¸³Æ®¸¦ ÅëÇØ À¯ÀÏÇØ¾ß ÇÕ´Ï´Ù.

+

+¿¹¾àµÈ À̸§Àº ¾øÁö¸¸, ´ÙÀ½ À̸§Àº »ç¿ëÇÏÁö ¾Ê±â¸¦ °­·ÂÇÏ°Ô ±Ç°íÇÕ´Ï´Ù: On, Off, Toggle, AltTab, ShiftAltTab, AltTabAndMenu ±×¸®°í AltTabMenuDismiss. ÀÌ·± °ªµéÀº Hotkey ¸í·É¾î¿¡ Ưº°ÇÑ Àǹ̰¡ ÀÖ½À´Ï´Ù.

+

¸ñÇ¥: ¶óº§ÀÇ ¸ñÇ¥´Â ½ÇÇà ÄÚµåÀÇ ´ÙÀ½ ÁÙÀÔ´Ï´Ù. ½ÇÇà Äڵ忡´Â ¸í·É¾î, ÇÒ´ç, Ç¥Çö½Ä ±×¸®°í ºí·ÏÀÌ ´ã±æ ¼ö ÀÖÁö¸¸, Áö½Ã¾î³ª ¶óº§, ÇÖÅ°¿Í ÇÖ½ºÆ®¸µÀº ¾ÈµË´Ï´Ù. ´ÙÀ½ ¿¹Á¦¿¡¼­, run_notepad¿Í #n´Â ¸ðµÎ Run ¶óÀÎÀ» °¡¸®Åµ´Ï´Ù:

+
run_notepad:
+#n::
+    Run Notepad
+    return
+
+

½ÇÇà: Áö½Ã¾îó·³, ¶óº§Àº Á¤»ó ½ÇÇà È帧¿¡ µµ´ÞÇÏ¸é ¾Æ¹« È¿°úµµ ¾ø½À´Ï´Ù. ´ÙÀ½ ¿¹Á¦¿¡¼­ ¸Þ½ÃÁö ¹Ú½º´Â µÎ¹ø ³ªÅ¸³³´Ï´Ù - ÇÑ ¹øÀº Gosub¿¡ ÀÇÇÑ ¼­ºê·çƾÀÇ ½ÇÇà µ¿¾È¿¡, ±×¸®°í ´Ù½Ã ¼­ºê·çƾÀÌ ¹ÝȯµÈ ÈÄ¿¡ ³ªÅ¸³³´Ï´Ù:

+
gosub Label1
+
+Label1:
+MsgBox %A_ThisLabel%
+return
+ +

¼­ºê·çƾ

+

+¼­ºê·çƾÀº ƯÁ¤ÇÑ ÀÛ¾÷À» À§ÇØ È£ÃâÇÒ ¼ö ÀÖ´Â ÄÚµå ÀϺÎÀÔ´Ï´Ù. ¼­ºê·çƾÀÇ ½ÇÇàÀº ¶óº§ÀÌ ¸ñÇ¥¿¡¼­ ½ÃÀÛÇؼ­ ReturnÀ̳ª ExitÀ» ¸¸³¯ ¶§±îÁö °è¼ÓµË´Ï´Ù. ¼­ºê·çƾÀÇ Á¾·á´Â ½ÇÇà È帧¿¡ ´Þ·Á Àֱ⠶§¹®¿¡, ¾î¶² ¶óº§À̵ç Goto ¸ñÇ¥¿Í ¼­ºê·çƾÀÇ ½ÃÀÛÀ¸·Î ÇàÀ§ÇÒ ¼ö ÀÖ½À´Ï´Ù.

+ +

µ¿ÀûÀÎ ¶óº§

+

+¶óº§À» ¹Þ´Â ¸¹Àº ¸í·É¾îµéÀº ¶Ç %MyLabel%¿Í °°ÀÌ º¯¼ö ÂüÁ¶µµ ¹ÞÀ» ¼ö ÀÖ½À´Ï´Ù. ÀÌ °æ¿ì º¯¼ö¿¡ ÀúÀåµÈ À̸§ÀÌ ¸ñÇ¥·Î »ç¿ëµË´Ï´Ù. ±×·¸Áö¸¸, ¼öÇ༺´ÉÀº ¾à°£ °¨¼ÒÇÕ´Ï´Ù. ¿Ö³ÄÇÏ¸é ½ºÅ©¸³Æ®°¡ óÀ½ ÀûÀçµÉ ¶§ ÇÑ ¹øÀÌ ¾Æ´Ï¶ó ¸ñÇ¥¸¦ ¸Å¹ø "ã¾Æ º¸¾Æ¾ß"Çϱ⠶§¹®ÀÔ´Ï´Ù.

+ +

ÇÖÅ°¿Í ÇÖ½ºÆ®¸µ

+

ÇÖÅ°¿Í ÇÖ½ºÆ®¸µ ¶óº§µµ Goto, Gosub ±×¸®°í ±âŸ ¸í·É¾î¿¡ ´ëÇÏ¿© À¯È¿ÇÕ´Ï´Ù. ±×·¸Áö¸¸, ÇÖÅ°³ª ÇÖ½ºÆ®¸µ¿¡ ¿©·¯ º¯Á¾ÀÌ ÀÖ´Ù¸é, ½ºÅ©¸³Æ®ÀÇ »ó´Ü¿¡ Á¦ÀÏ °¡±î¿î º¯Á¾ÀÌ »ç¿ëµË´Ï´Ù. ÇÖÅ°ÀÇ ¼ö½ÄÀÚ³ª ÇÖ½ºÆ®¸µÀÇ ¿É¼ÇÀº ¸ðµÎ ¶óº§ÀÇ À̸§ÀÇ ÀϺÎÀÔ´Ï´Ù. ±×·¯³ª ¸¶Áö¸· °ã-½ÖÁ¡ (::)Àº »ý·«ÇÕ´Ï´Ù.

+ +

À̸§Àִ ȸµ¹ÀÌ

+

+¶óº§Àº ¶Ç Continue¿Í Break ¸í·É¾î¿¡ ´ëÇÏ¿© ȸµ¹À̸¦ ½Äº°ÇÏ´Â µ¥¿¡µµ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. ½ºÅ©¸³Æ®´Â ½±°Ô ±íÀÌ¿¡ »ó°ü¾øÀÌ ³»Æ÷ ȸµ¹À̸¦ °è¼ÓÇϰųª ºüÁ® ³ª¿Ã ¼ö ÀÖ½À´Ï´Ù.

+ +

ÇÔ¼ö

+

[v1.1.20] ÀÌÈÄ¿¡, ÇÔ¼ö´Â ¸¹Àº °æ¿ì ¶óº§À» ´ë½ÅÇØ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. ¿©±â¿¡´Â:

+ +

+

ÇÔ¼öÀÇ ÇýÅÃÀº Áö¿ª º¯¼ö¸¦ »ç¿ëÇÒ ¼ö ÀÖ´Ù´Â °ÍÀÔ´Ï´Ù. (Gui Á¦¾î À̺¥Æ®¿Í °°ÀÌ) ¾î¶² °æ¿ì À¯¿ëÇÑ Á¤º¸¸¦ ´ã°í ÀÖ´Â ¸Å°³º¯¼ö¸¦ ¹Þ±âµµ ÇÕ´Ï´Ù.

+ +

°ü·Ã Ç׸ñ

+

IsLabel(), A_ThisLabel, Gosub, Goto, OnExit, SetTimer, Hotkey, Gui Events, g-label, OnClipboardChange

+ + + diff --git a/src/docs/misc/Languages.htm b/src/docs/misc/Languages.htm new file mode 100644 index 0000000..9e6bb3b --- /dev/null +++ b/src/docs/misc/Languages.htm @@ -0,0 +1,149 @@ + + + Language Codes + + + + + + + +

¾ð¾î ÄÚµå

+ +

´ÙÀ½ ¸ñ·ÏÀº °¢ ¾ð¾î Äڵ忡 »óÀÀÇÏ´Â ¾ð¾î À̸§À» ´ã°í ÀÖ½À´Ï´Ù. A_Language º¯¼ö¿¡ ÇÒ´çµË´Ï´Ù. ¾ð¾î ÄÚµå ÀÚü´Â ¾Æ·¡¿¡¼­ µîÈ£ »çÀÎÀÇ ¿ÞÂÊ¿¡¼­ µÚ ³× °³ÀÇ ¼ýÀÚÀÔ´Ï´Ù. ¿¹¸¦ µé¾î, A_Language¿¡ 0436ÀÌ ´ã°Ü ÀÖ´Ù¸é, ½Ã½ºÅÛÀÇ ±âº» ¾ð¾î´Â AfrikaansÀÔ´Ï´Ù. ÁÖÀÇ: Äڵ忡 ±âÈ£°¡ Æ÷ÇÔµÇ¸é ´ë¹®ÀÚ³ª ¼Ò¹®ÀÚ »ó°ü¾ø½À´Ï´Ù.

+

+A_Language¸¦ ¾Æ·¡ÀÇ ³× ÀÚ¸® ÄÚµå¿Í Á÷Á¢ÀûÀ¸·Î ºñ±³ÇÒ ¼ö ÀÖ½À´Ï´Ù; ¿¹¸¦ µé¾î: if (A_Language = "0436"). ´ë¾ÈÀ¸·Î, Àüü ¸®½ºÆ®¸¦ ½ºÅ©¸³Æ® ¾È¿¡ º¹»çÇØ ³Ö°í ÇöÀç ¾ð¾îÀÇ À̸§¿¡ Á¢±ÙÇÕ´Ï´Ù. ¸®½ºÆ® ¾Æ·¡ÀÇ ¿¹Á¦¿¡ º¸¿©ÁÖ´Â °Íó·³ Á¢±ÙÇÒ ¼ö ÀÖ½À´Ï´Ù.

+
languageCode_0436 = Afrikaans
+languageCode_041c = Albanian
+languageCode_0401 = Arabic_Saudi_Arabia
+languageCode_0801 = Arabic_Iraq
+languageCode_0c01 = Arabic_Egypt
+languageCode_0401 = Arabic_Saudi_Arabia
+languageCode_0801 = Arabic_Iraq
+languageCode_0c01 = Arabic_Egypt
+languageCode_1001 = Arabic_Libya
+languageCode_1401 = Arabic_Algeria
+languageCode_1801 = Arabic_Morocco
+languageCode_1c01 = Arabic_Tunisia
+languageCode_2001 = Arabic_Oman
+languageCode_2401 = Arabic_Yemen
+languageCode_2801 = Arabic_Syria
+languageCode_2c01 = Arabic_Jordan
+languageCode_3001 = Arabic_Lebanon
+languageCode_3401 = Arabic_Kuwait
+languageCode_3801 = Arabic_UAE
+languageCode_3c01 = Arabic_Bahrain
+languageCode_4001 = Arabic_Qatar
+languageCode_042b = Armenian
+languageCode_042c = Azeri_Latin
+languageCode_082c = Azeri_Cyrillic
+languageCode_042d = Basque
+languageCode_0423 = Belarusian
+languageCode_0402 = Bulgarian
+languageCode_0403 = Catalan
+languageCode_0404 = Chinese_Taiwan
+languageCode_0804 = Chinese_PRC
+languageCode_0c04 = Chinese_Hong_Kong
+languageCode_1004 = Chinese_Singapore
+languageCode_1404 = Chinese_Macau
+languageCode_041a = Croatian
+languageCode_0405 = Czech
+languageCode_0406 = Danish
+languageCode_0413 = Dutch_Standard
+languageCode_0813 = Dutch_Belgian
+languageCode_0409 = English_United_States
+languageCode_0809 = English_United_Kingdom
+languageCode_0c09 = English_Australian
+languageCode_1009 = English_Canadian
+languageCode_1409 = English_New_Zealand
+languageCode_1809 = English_Irish
+languageCode_1c09 = English_South_Africa
+languageCode_2009 = English_Jamaica
+languageCode_2409 = English_Caribbean
+languageCode_2809 = English_Belize
+languageCode_2c09 = English_Trinidad
+languageCode_3009 = English_Zimbabwe
+languageCode_3409 = English_Philippines
+languageCode_0425 = Estonian
+languageCode_0438 = Faeroese
+languageCode_0429 = Farsi
+languageCode_040b = Finnish
+languageCode_040c = French_Standard
+languageCode_080c = French_Belgian
+languageCode_0c0c = French_Canadian
+languageCode_100c = French_Swiss
+languageCode_140c = French_Luxembourg
+languageCode_180c = French_Monaco
+languageCode_0437 = Georgian
+languageCode_0407 = German_Standard
+languageCode_0807 = German_Swiss
+languageCode_0c07 = German_Austrian
+languageCode_1007 = German_Luxembourg
+languageCode_1407 = German_Liechtenstein
+languageCode_0408 = Greek
+languageCode_040d = Hebrew
+languageCode_0439 = Hindi
+languageCode_040e = Hungarian
+languageCode_040f = Icelandic
+languageCode_0421 = Indonesian
+languageCode_0410 = Italian_Standard
+languageCode_0810 = Italian_Swiss
+languageCode_0411 = Japanese
+languageCode_043f = Kazakh
+languageCode_0457 = Konkani
+languageCode_0412 = Korean
+languageCode_0426 = Latvian
+languageCode_0427 = Lithuanian
+languageCode_042f = Macedonian
+languageCode_043e = Malay_Malaysia
+languageCode_083e = Malay_Brunei_Darussalam
+languageCode_044e = Marathi
+languageCode_0414 = Norwegian_Bokmal
+languageCode_0814 = Norwegian_Nynorsk
+languageCode_0415 = Polish
+languageCode_0416 = Portuguese_Brazilian
+languageCode_0816 = Portuguese_Standard
+languageCode_0418 = Romanian
+languageCode_0419 = Russian
+languageCode_044f = Sanskrit
+languageCode_081a = Serbian_Latin
+languageCode_0c1a = Serbian_Cyrillic
+languageCode_041b = Slovak
+languageCode_0424 = Slovenian
+languageCode_040a = Spanish_Traditional_Sort
+languageCode_080a = Spanish_Mexican
+languageCode_0c0a = Spanish_Modern_Sort
+languageCode_100a = Spanish_Guatemala
+languageCode_140a = Spanish_Costa_Rica
+languageCode_180a = Spanish_Panama
+languageCode_1c0a = Spanish_Dominican_Republic
+languageCode_200a = Spanish_Venezuela
+languageCode_240a = Spanish_Colombia
+languageCode_280a = Spanish_Peru
+languageCode_2c0a = Spanish_Argentina
+languageCode_300a = Spanish_Ecuador
+languageCode_340a = Spanish_Chile
+languageCode_380a = Spanish_Uruguay
+languageCode_3c0a = Spanish_Paraguay
+languageCode_400a = Spanish_Bolivia
+languageCode_440a = Spanish_El_Salvador
+languageCode_480a = Spanish_Honduras
+languageCode_4c0a = Spanish_Nicaragua
+languageCode_500a = Spanish_Puerto_Rico
+languageCode_0441 = Swahili
+languageCode_041d = Swedish
+languageCode_081d = Swedish_Finland
+languageCode_0449 = Tamil
+languageCode_0444 = Tatar
+languageCode_041e = Thai
+languageCode_041f = Turkish
+languageCode_0422 = Ukrainian
+languageCode_0420 = Urdu
+languageCode_0443 = Uzbek_Latin
+languageCode_0843 = Uzbek_Cyrillic
+languageCode_042a = Vietnamese
+
+the_language := languageCode_%A_Language%  ; ½Ã½ºÅÛÀÇ ±âº» ¾ð¾î À̸§À» ¾ò½À´Ï´Ù.
+MsgBox %the_language%  ; ±× ¾ð¾î À̸§À» È­¸é¿¡ º¸¿©ÁÝ´Ï´Ù.
+ + diff --git a/src/docs/misc/Macros.htm b/src/docs/misc/Macros.htm new file mode 100644 index 0000000..47b06ea --- /dev/null +++ b/src/docs/misc/Macros.htm @@ -0,0 +1,37 @@ + + +Creating a Keyboard Macro or Mouse Macro + + + + + + + + + +

Å°º¸µå ¸ÅÅ©·Î³ª ¸¶¿ì½º ¸ÅÅ©·Î ¸¸µé±â

+ +

+¸ÅÅ©·Î´Â ¿ä±¸Çϸé "Ç÷¹À̵ǴÂ" ½ºÅ©¸³Æ®µÈ ÀÏ·ÃÀÇ Á¶Ä¡ÀÔ´Ï´Ù; °¡Àå ÈçÇÑ ¸ÅÅ©·Î Á¶Ä¡´Â Çϳª ÀÌ»óÀÇ Ã¢¿¡ Èä³»³½ Å°´­¸² ±×¸®°í ¸¶¿ì½º Ŭ¸¯À» Àü¼ÛÇÏ´Â °ÍÀÔ´Ï´Ù. ±×·± âÀº °¢ Å°´­¸²°ú ¸¶¿ì½º Ŭ¸¯¿¡ ¸¶Ä¡ ¿©·¯ºÐÀÌ ¼Õ¼ö ¼öÇàÇÑ °Íó·³ ¹ÝÀÀÇÕ´Ï´Ù. ±×·¯¹Ç·Î ¹Ýº¹ ÀÛ¾÷À» ºü¸£°Ô ±×¸®°í ½Å·Ú¼º ÀÖ°Ô ÀÚµ¿È­ÇÒ ¼ö ÀÖ½À´Ï´Ù.

+

+¸ÅÅ©·Î´Â ¼ÕÀ¸·Î ÀÛ¼ºÇÒ ¼ö ÀÖÁö¸¸, ±â´Ù¶õ ¸ÅÅ©·Î¸¦ ÀÛ¼ºÇÏ·Á¸é ¸ÅÅ©·Î ·¹ÄÚ´õÀÇ µµ¿òÀ» ¹ÞÀº ÆíÀÌ ½¬¿ï °ÍÀÔ´Ï´Ù. ¿¹¸¦ µé¾î Titan/polyethene°¡ ÀÛ¼ºÇÑ ·¹ÄÚ´õ ½ºÅ©¸³Æ®°¡ ÀÖ½À´Ï´Ù. ¿©·¯ºÐÀÌ Å¸ÀÚÇÏ°í Ŭ¸¯ÇÏ´Â °ÍÀ» ÁöÄÑ º¸¸é¼­ È°¼º âÀ» ÃßÀû °ü¸®ÇÕ´Ï´Ù. ÀÌ Á¶Ä¡¸¦ ÀÛµ¿ÇÏ´Â ¸ÅÅ©·Î·Î º¯È¯ÇÏ¸é ³ªÁß¿¡ ´õ ºü¸¥ ¼Óµµ·Î "´Ù½Ã Ç÷¹ÀÌ ÇÒ" ¼ö ÀÖ½À´Ï´Ù.

+

+¸ÅÅ©·Î¸¦ ´Ù½Ã Ç÷¹ÀÌÇÏ´Â °¡Àå Æí¸®ÇÑ ¹æ¹ýÁß Çϳª´Â ±×°ÍÀ» ÇÖÅ°³ª ÇÖ½ºÆ®¸µ¿¡ ÇÒ´çÇÏ´Â °ÍÀÔ´Ï´Ù. ¿¹¸¦ µé¾î, ´ÙÀ½ ÇÖÅ°´Â ºó À̸ÞÀÏ ¸Þ½ÃÁö¸¦ »ý¼ºÇÏ°í ±×°ÍÀ» ƯÁ¤ À¯ÇüÀÇ ¼ö½ÅÀÎÀ» À§ÇØ ÁغñÇÕ´Ï´Ù. ±×°ÍÀ» º¸³»±â Àü¿¡ °³º°ÀûÀ¸·Î ¹Ù²Ü ¼ö ÀÖ½À´Ï´Ù:

+
^!s::  ; Control+Alt+S ÇÖÅ°.
+IfWinNotExist Inbox - Microsoft Outlook
+    return  ; OutlookÀÌ ¿À¸¥ÂÊ¿¡ ¿­¸®Áö ¾Ê¾Ò½À´Ï´Ù. ±×·¡¼­ ¾Æ¹«°Íµµ ÇÏÁö ¾Ê½À´Ï´Ù.
+WinActivate  ; À§ÀÇ ¸í·É¾î·Î ¹ß°ßÇÑ Ã¢À» È°¼ºÈ­ÇÕ´Ï´Ù.
+Send ^n  ; Control+NÀ» ÅëÇÏ¿© »õ·Î ºó À̸ÞÀÏÀ» »ý¼ºÇÕ´Ï´Ù.
+WinWaitActive Untitled Message
+Send {Tab 2}Product Recall for ACME Rocket Skates  ; Á¦¸ñ ÁÙÀ» ¼³Á¤ÇÕ´Ï´Ù.
+Send {Tab}Dear Sir or Madam,{Enter 2}We have recently discovered a minor defect ...  ; µîµî.
+return  ; ÀÌ ÁÙÀº ÇÖÅ°¸¦ Á¾·áÇÏ´Â µ¥ ±â¿©ÇÕ´Ï´Ù.
+

+À§¿Í °°Àº ÇÖÅ° ¸ÅÅ©·Î´Â ¸ÅÀÏ ÀÚÁÖ ¼öÇàÇØ¾ß ÇÏ´Â ÀÛ¾÷¿¡ ƯÈ÷ À¯¿ëÇÕ´Ï´Ù. ´ëÁ¶ÀûÀ¸·Î, ÀÚÁÖ »ç¿ëÇÏÁö ¾Ê´Â ¸ÅÅ©·Î´Â °¢°¢ º°µµÀÇ ÆÄÀÏ¿¡ º¸°üÇÏ°í ¹ÙÅÁÈ­¸éÀ̳ª ½ÃÀÛ ¸Þ´ºÀÇ ´ÜÃà ¾ÆÀÌÄÜÀ» ÅëÇÏ¿© Á¢±ÙÇÕ´Ï´Ù.

+

+¸ÅÅ©·Î³ª ÇÖÅ°¸¦ Áö±Ý Áï½Ã ¸¸µé°í ½Í´Ù¸é, ºü¸£°Ô ½ÃÀÛÇϱâ ÀÚ½À¼­¸¦ ÀÐ¾î º¸½Ê½Ã¿À.

+

 

+

-- ȨÀ¸·Î --

+ + diff --git a/src/docs/misc/Override.htm b/src/docs/misc/Override.htm new file mode 100644 index 0000000..ad34e66 --- /dev/null +++ b/src/docs/misc/Override.htm @@ -0,0 +1,43 @@ + + +Overriding Hotkeys + + + + + + + +

ÇÖÅ°¸¦ ºÒ´ÉÈ­Çϰųª ¿À¹ö¶óÀ̵åÇϱâ

+ +

+Win+L°ú Win+U¸¦ Á¦¿ÜÇÏ°í ¸ðµç ³»Àå À©µµ¿ìÁî ÇÖÅ°¸¦ ²ø ¼ö ÀÖ½À´Ï´Ù. ·¹Áö½ºÆ®¸¦ ´ÙÀ½°ú °°ÀÌ º¯°æÇÏ¸é µË´Ï´Ù (ÀÌ ¹æ¹ýÀº ¸ðµç ¿î¿µÃ¼Á¦¿¡ ÀÛµ¿ÇÏ°ÚÁö¸¸, ¾Æ¸¶µµ ¸®ºÎÆ®°¡ ÇÊ¿äÇÒ °ÍÀÔ´Ï´Ù):

+
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer
+NoWinKeys REG_DWORD 0x00000001 (1)
+

+±×·¯³ª ´Ü¼øÈ÷ ºÒ´ÉÈ­ÇÏ´Â °Í ¸»°í ´õ ¸¹Àº °ÍÀ» ¿øÇÑ´Ù¸é °è¼Ó ÀÐ¾î º¸½Ê½Ã¿À.

+

+¶Ç´Ù¸¥ ¾îÇø®ÄÉÀ̼ÇÀÌ ¼ÒÀ¯ÇÑ ÇÖÅ°¸¦ ¿À¹ö¶óÀ̵å Çϰųª ºÒ´ÉÀ¸·Î ¸¸µé ¼ö ÀÖ½À´Ï´Ù. ±×³É ½ºÅ©¸³Æ®¿¡¼­ °Å±â¿¡ ´Ù¸¥ Á¶Ä¡¸¦ ÇÒ´çÇϱ⸸ ÇÏ¸é µË´Ï´Ù. ÀÌ Æ¯Â¡À» °¡Àå ¸¹ÀÌ »ç¿ëÇÏ´Â ¿¹´Â À©µµ¿ìÁî ÀÚü¿¡ ³»ÀåµÈ ÇÖÅ°¸¦ ¹Ù²Ù´Â °ÍÀÔ´Ï´Ù. ¿¹¸¦ µé¾î, Win+E (À©µµ¿ìÁî Ž»ö±â¸¦ ±âµ¿ÇÏ´Â ´ÜÃà Å°)¸¦ ´Ù¸¥ ÇàÀ§¸¦ ¼öÇàÇϵµ·Ï ¸¸µé°í ½Í´Ù¸é, ´ÙÀ½À» »ç¿ëÇϽʽÿÀ:

+
#e::
+MsgBox ÀÌ ÇÖÅ°´Â ÀÌÁ¦ ½ºÅ©¸³Æ®°¡ ¼ÒÀ¯ÇÕ´Ï´Ù.
+return
+

+´ÙÀ½ ¿¹Á¦¿¡¼­, RUN âÀ» ¿©´Â Win+R ÇÖÅ°´Â ¿ÏÀüÈ÷ ºÒ´ÉÈ­µË´Ï´Ù:

+
#r::return
+

+ºñ½ÁÇÏ°Ô, µÎ À©µµ¿ìÁî Å°¸¦ ¸ðµÎ ²ô·Á¸é, ´ÙÀ½À» »ç¿ëÇϽʽÿÀ:

+
Lwin::return
+Rwin::return
+

+¾îÇø®ÄÉÀ̼ÇÀÇ ºñ-Àü¿ª ÇÖÅ°¸¦ ¹Ù²Ù°Å³ª ²ô·Á¸é (Áï, ¾îÇø®ÄÉÀ̼ÇÀÌ È°¼º âÀÏ °æ¿ì¿¡¸¸ ÀÛµ¿ÇÏ´Â ´ÜÃà Å°), ´ÙÀ½ ¿¹Á¦¿¡¼­ ³ëÆ®Æе忡¸¸ Control+P (Print)¸¦ ²ô´Â ¹æ¹ýÀ» ¿¬±¸ÇØ º¸½Ê½Ã¿À. ´Ù¸¥ ¸ðµç â¿¡´Â ´ÜÃà Å°°¡ ¿©ÀüÈ÷ È¿°ú°¡ ÀÖµµ·Ï ±×´ë·Î µÓ´Ï´Ù:

+
$^p::
+IfWinActive ahk_class Notepad
+    return  ; Áï, ¾Æ¹«°Íµµ ÇÏÁö ¾Ê½À´Ï´Ù. Control-P°¡ Notepad¿¡¼­ ¾Æ¹«Àϵµ ÇÏÁö ¾Ê°Ô µË´Ï´Ù.
+Send ^p
+return
+

+À§ÀÇ ¿¹Á¦¿¡¼­, $ Á¢µÎ ½Éº¼ÀÌ ÀÖ¾î¾ß ÇÖÅ°°¡ ÀÚ½ÅÀ» È°¼ºÈ­ ½ÃÅ°Áö ¾Ê°í "ÀÚ½ÅÀ» Àü¼Û"ÇÒ ¼ö ÀÖ½À´Ï´Ù (±×·¸Áö ¾ÊÀ¸¸é ¹«ÇÑ È¸µ¹ÀÌ °üÇÏ¿© °æ°í »óÀÚ°¡ Ã˹ߵ˴ϴÙ). ´ÙÀ½µµ ÂüÁ¶ÇϽʽÿÀ: ¹®¸Æ-°¨Áö ÇÖÅ°.

+

+À§ÀÇ ¸ðµç ¿¹Á¦¸¦ ½ÃÇèÇØ º¼ ¼ö ÀÖ½À´Ï´Ù. "Override.ahk"¿Í °°Àº »õ ÅؽºÆ® ÆÄÀÏ ¾ÈÀ¸·Î º¹»çÇØ ³Ö°í, ÆÄÀÏÀ» ±âµ¿ÇØ º¸½Ê½Ã¿À.

+ + diff --git a/src/docs/misc/Performance.htm b/src/docs/misc/Performance.htm new file mode 100644 index 0000000..86c1898 --- /dev/null +++ b/src/docs/misc/Performance.htm @@ -0,0 +1,36 @@ + + +Performance + + + + + + + +

½ºÅ©¸³Æ® ¼öÇ༺´É

+ +

¼öÇ༺´ÉÀ» ±Ø´ëÈ­ÇÏ·Á¸é, SetFormatÀÇ »ç¿ëÀ» ÀÚÁ¦ÇÏ°í (ºü¸¥ ¸ðµå Á¦¿Ü) ´ÙÀ½ ÁÙÀ» °¢ ½ºÅ©¸³Æ®ÀÇ »ó´Ü ±Ùó¿¡ Æ÷ÇÔÇϽʽÿÀ:

+
#NoEnv
+SetBatchLines -1
+ListLines Off
+

+°Ô´Ù°¡, ´ÙÀ½ ¸í·É¾î¸¦ »ç¿ëÇÏ¸é ½ºÅ©¸³Æ®ÀÇ ¼ºÁú¿¡ µû¶ó ¼öÇ༺´É¿¡ ¿µÇâÀ» ¹ÌĨ´Ï´Ù: SendMode, SetKeyDelay, SetMouseDelay, SetWinDelay, SetControlDelay, ±×¸®°í SetDefaultMouseSpeed.

+ +

³»Àå ¼öÇ༺´É Ư¡

+

+½ºÅ©¸³Æ®´Â ÀûÀçµÇ´Â µ¿¾È ±×¸®°í ±¸¹®À» Á¡°ËÇÏ´Â µ¿¾È À¯»ç-ÄÄÆÄÀϵ˴ϴÙ. À¯»ç-ÄÄÆÄÀÏÀº ½ºÅ©¸³Æ®°¡ ¼Ò¸ðÇÏ´Â ¸Þ¸ð¸®¸¦ ÁÙÀÌ´Â ¿Ü¿¡µµ, ±ØÀûÀ¸·Î ¼öÇ༺´ÉÀ» Çâ»ó½Ãŵ´Ï´Ù.

+

´ÙÀ½Àº Å×Å©´ÏÄÃÇÑ ÃÖÀûÈ­ °úÁ¤À» ±â¼úÇÕ´Ï´Ù (À¯»ç-ÄÄÆÄÀϸµ):

+ +

°Ô´Ù°¡, ½ºÅ©¸³Æ®¸¦ ½ÇÇàÇÏ´Â µ¿¾È, ÀÌÁø ¼ýÀÚµéÀº º¯¼ö¿¡ ij½¬°¡ µÇ¾î ¹®ÀÚ¿­·Î/À¸·ÎºÎÅÍ º¯È¯À» ÇÇÇÕ´Ï´Ù. ÀÚ¼¼ÇÑ °ÍÀº SetFormatÀ» ÂüÁ¶ÇϽʽÿÀ.

+ + diff --git a/src/docs/misc/RegEx-QuickRef.htm b/src/docs/misc/RegEx-QuickRef.htm new file mode 100644 index 0000000..faed233 --- /dev/null +++ b/src/docs/misc/RegEx-QuickRef.htm @@ -0,0 +1,209 @@ + + +Regular Expressions (RegEx) - Quick Reference + + + + + + + +

Á¤±ÔÇ¥Çö½Ä (RegEx) - °£Æí ÂüÁ¶¼­

+ +

±âº» Áö½Ä

+

+¾îµð¿¡³ª ºÎÇÕ: ±âº»°ªÀ¸·Î, Á¤±Ô Ç¥Çö½Ä¿¡¼­ ºÎºÐ¹®ÀÚ¿­Àº °Ë»öµÉ ¹®ÀÚ¿­ ¾È ¾îµð¿¡³ª ºÎÇÕÇÕ´Ï´Ù. ¿¹¸¦ µé¾î, Á¤±Ô Ç¥Çö½Ä abc´Â abc123, 123abc, ±×¸®°í 123abcxyz¿¡ ºÎÇÕÇÕ´Ï´Ù. ºÎÇÕÀ» óÀ½À̳ª ³¡¿¡¼­¸¸ ÀϾµµ·Ï ÇÏ·Á¸é ´éÀ» »ç¿ëÇÕ´Ï´Ù.

+

+ÇǽŠ¹®ÀÚ: abc123°ú °°ÀÌ ´ëºÎºÐÀÇ ¹®ÀÚ´Â Á¤±Ô Ç¥Çö½Ä ¾È¿¡ ¹®ÀÚ ±×´ë·Î »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. ±×·¸Áö¸¸, \.*?+[{|()^$ÀÇ ¹®ÀÚµéÀº ¹Ýµå½Ã ¾Õ¿¡ ¿ª»ç¼±À» ¹èÄ¡ÇØ¾ß ¹®ÀÚ ±×´ë·Î º¸ÀÏ ¼ö ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î, \.´Â ¹®ÀÚ ±×´ë·ÎÀÇ ¸¶Ä§Ç¥ÀÌ°í \\´Â ¹®ÀÚ ±×´ë·ÎÀÇ ¿ª»ç¼±ÀÔ´Ï´Ù. ÇǽÅÀ» ÇÇÇÏ·Á¸é \Q...\EÀ» »ç¿ëÇÕ´Ï´Ù. ¿¹¸¦ µé¾î: \QLiteral Text\E.

+

+´ë¼Ò¹®ÀÚ ±¸ºÐ: ±âº»°ªÀ¸·Î Á¤±Ô Ç¥Çö½ÄÀº ´ë¼Ò¹®ÀÚ¸¦ ±¸ºÐÇÕ´Ï´Ù. ÀÌ ÇàÀ§´Â "i" ¿É¼ÇÀ¸·Î ¹Ù²Ü ¼ö ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î, ÆÐÅÏ i)abc´Â ´ë¼Ò¹®ÀÚ¸¦ ±¸ºÐÇÏÁö ¾Ê°í "abc"¸¦ °Ë»öÇÕ´Ï´Ù. ´Ù¸¥ ¼ö½ÄÀÚµéÀº ¾Æ·¡¸¦ ÂüÁ¶ÇϽʽÿÀ.

+ +

¿É¼Ç (´ë¼Ò¹®ÀÚ ±¸ºÐ)

+

Á¤±Ô Ç¥Çö½Ä ¸Ç ¾Õ¿¡ ´ÙÀ½ ¿É¼ÇÀ» ÁöÁ¤ÇÏ°í ´ÙÀ½¿¡ ¹Ý°ýÈ£·Î ´Ý¾Æ ¿É¼ÇÀ» ÁöÁ¤ÇÕ´Ï´Ù. ¿¹¸¦ µé¾î, ÆÐÅÏ "im)abc"´Â ¿©·¯ ÁÙ ¿É¼ÇÀ» °¡Áö°í ´ë¼Ò¹®ÀÚ¸¦ ±¸ºÐÇÏ¿© abc¸¦ °Ë»öÇÕ´Ï´Ù (¾Æ¹« ¿É¼ÇÀÌ ¾øÀ¸¸é ´Ý´Â ¹Ý°ýÈ£´Â »ý·«ÇÕ´Ï´Ù.). ÀÌ ±¸¹®Àº ÀüÅëÀ» ¾î±âÁö¸¸, Ư¼öÇÑ ±¸ºÐÀÚ¸¦ ¿ä±¸ÇÏÁö ¾Ê½À´Ï´Ù (¿¹¸¦ µé¾î ¿ª»ç¼±). ±×·¡¼­ ÆÐÅÏ ¾È¿¡¼­ ±×·± ±¸ºÐÀÚ¸¦ ÇǽŽÃų ÇÊ¿ä°¡ ¾ø½À´Ï´Ù. °Ô´Ù°¡ ¼öÇ༺´ÉÀÌ Çâ»óµË´Ï´Ù. ¿Ö³ÄÇÏ¸é ¿É¼ÇÀ» Çؼ®ÇϱⰡ ´õ ½±±â ¶§¹®ÀÔ´Ï´Ù.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
i´ë¼Ò¹®ÀÚ¸¦ ±¸ºÐÇÏÁö ¾Ê°í ºÎÇÕÇÕ´Ï´Ù. ±âÈ£ AºÎÅÍ Z¸¦ ¼Ò¹®ÀÚ¿Í µ¿ÀÏÇÏ°Ô Ãë±ÞÇÕ´Ï´Ù.
m

¿©·¯ ÁÙ¿¡ ºÎÇÕÇÕ´Ï´Ù. (»õÁÙ ¹®ÀÚ°¡ Æ÷ÇԵǾî ÀÖ´Ù¸é) ¸ñÇ¥ ¹®ÀÚ¿­(Haystack)À» ÇϳªÀÇ ¿¬¼ÓÀûÀÎ ÁÙ·Î º¸Áö ¾Ê°í °¢ ÁÙÀÌ ¸ðÀÎ Áý´ÜÀ¸·Î º¾´Ï´Ù. ƯÈ÷, ´ÙÀ½°ú °°ÀÌ º¯°æµË´Ï´Ù:

+

1) À­²©¼è(^)´Â ¸ðµç ³»ºÎ »õÁÙ ¹®ÀÚ µÚ¿¡ Áï½Ã ºÎÇÕÇÕ´Ï´Ù -- »Ó¸¸ ¾Æ´Ï¶ó HaystackÀÇ ½ÃÀÛ¿¡µµ ¾ðÁ¦³ª ºÎÇÕÇÕ´Ï´Ù (±×·¯³ª HaystackÀÇ ¸Ç ³¡¿¡ ÀÖ´Â »õÁÙ ¹®ÀÚ ´ÙÀ½¿¡´Â ºÎÇÕÇÏÁö ¾Ê½À´Ï´Ù).

+

2) ´Þ·¯ »çÀÎ ($)Àº Haystack ¾ÈÀÇ ¾î¶² »õÁÙ ¹®ÀÚ ¾Õ¿¡µµ ºÎÇÕÇÕ´Ï´Ù. (»Ó¸¸ ¾Æ´Ï¶ó ¸Ç ³¡ÀÇ »õÁÙ ¹®ÀÚ¿¡µµ ¾ðÁ¦³ª ºÎÇÕÇÕ´Ï´Ù).

+

¿¹¸¦ µé¾î, ÆÐÅÏ "m)^abc$"´Â "m" ¿É¼ÇÀÌ Á¸ÀçÇÏÁö ¾ÊÀ¸¸é ¸ñÇ¥¹®ÀÚ¿­(Haystack) "xyz`r`nabc"¿¡ ºÎÇÕÇÏÁö ¾Ê½À´Ï´Ù.

+

"D" ¿É¼ÇÀº "m" ¿É¼ÇÀÌ ÀÖÀ¸¸é ¹«½ÃµË´Ï´Ù.

sDotAll. ¸¶Ä§Ç¥ (.)°¡ »õÁÙ¹®ÀÚ¸¦ Æ÷ÇÔÇÏ¿© ¸ðµç ¹®ÀÚ¿¡ ÀÏÄ¡ÇÕ´Ï´Ù (º¸Åë, »õÁÙ¹®ÀÚ¿¡´Â ÀÏÄ¡ÇÏÁö ¾Ê½À´Ï´Ù). ±×·¸Áö¸¸, »õÁÙ ¹®ÀÚ°¡ ±âº»°ªÀ¸·Î CRLF (`r`n)À̸é, µÎ °³ÀÇ Á¡ÀÌ ÀÖ¾î¾î ºÎÇÕÇÕ´Ï´Ù (Çϳª¸¸À¸·Î´Â ºÎÇÕÇÏÁö ¾Ê½À´Ï´Ù). ÀÌ ¿É¼Ç°ú »ó°ü¾øÀÌ, [^a]°°Àº ºÎÁ¤ ºÎ·ù´Â ¾ðÁ¦³ª »õÁÙ¹®ÀÚ¿¡ ºÎÇÕÇÕ´Ï´Ù.
x¹®ÀÚ ºÎ·ù ¾ÈÀ̳ª ÇǽŽÃŲ °æ¿ì¸¦ Á¦¿ÜÇÏ°í ÆÐÅÏ¿¡¼­ °ø¹é ¹®ÀÚ¸¦ ¹«½ÃÇÕ´Ï´Ù. ¹®ÀÚ `n°ú `tÀÌ ¹«½ÃµÇ´Âµ¥ ¿Ö³ÄÇϸé PCRE¿¡ µµÂøÇÒ ¶§ ÂëÀ̸é, ÀÌ¹Ì ³¯/±âÈ£ °ø¹é ¹®ÀÚÀ̱⠶§¹®ÀÔ´Ï´Ù (´ëÁ¶ÀûÀ¸·Î, \n¿Í \t´Â PCRE ÇǽŠ¿¬¼Ó¿­À̱⠶§¹®¿¡ ¹«½ÃµÇÁö ¾Ê½À´Ï´Ù). x ¿É¼ÇÀº ¶Ç ¹®ÀÚ ºÎ·ù ¹ÛÀÇ ÇǽŵÇÁö ¾ÊÀº #ºÎÅÍ ´ÙÀ½ »õÁÙ¹®ÀÚ(Æ÷ÇÔ) »çÀÌÀÇ ¹®ÀÚµéÀ» ¹«½ÃÇÕ´Ï´Ù. ÀÌ ´öºÐ¿¡ º¹ÀâÇÑ ÆÐÅÏ ¾È¿¡ ÁÖ¼®À» »ðÀÔÇÒ ¼ö ÀÖ½À´Ï´Ù. ±×·¸Áö¸¸, ÀÌ°ÍÀº ¿ÀÁ÷ µ¥ÀÌÅÍ ¹®ÀÚ¿¡¸¸ Àû¿ëµË´Ï´Ù; Á¶°ÇÀû ºÎÆÐÅÏÀ» ½ÃÀÛÇÏ´Â (?(¿Í °°Àº Ư¼ö ¹®ÀÚ ¿¬¼Ó¿­ ¾È¿¡ °ø¹é¹®ÀÚ´Â ³ªÅ¸³ªÁö ¾Ê½À´Ï´Ù.
AÆÐÅÏÀ» °­Á¦·Î °íÁ¤ÇÕ´Ï´Ù; Áï, HaystackÀÇ ½ÃÀÛ¿¡¸¸ ºÎÇÕÇÒ ¼ö ÀÖ½À´Ï´Ù. ´ëºÎºÐÀÇ »óȲ¿¡¼­, ÀÌ°ÍÀº "^"¿Í °°Àº ¼ö´ÜÀ» »ç¿ëÇÏ¿© ¸í½ÃÀûÀ¸·Î ÆÐÅÏÀ» °íÁ¤ÇÑ °Í°ú µ¿µîÇÕ´Ï´Ù.
D´Þ·¯ »çÀÎ($)À» °­Á¦·Î ¸ñÇ¥ ¹®ÀÚ¿­(Haystack)ÀÇ ¸Ç ³¡¿¡ ºÎÇÕ½Ãŵ´Ï´Ù. ¸ñÇ¥ ¹®ÀÚ¿­(Haystack)ÀÇ ¸¶Áö¸·ÀÌ »õÁÙ ¹®ÀÚ¿©µµ ºÎÇÕÇÕ´Ï´Ù. + ÀÌ ¿É¼Ç¿¡ ¾ø´Ù¸é, ´ë½Å¿¡ $´Â (ÀÖ´Ù¸é) ¸¶Áö¸· »õÁÙ ¹®ÀÚ ¹Ù·Î ¾Õ¿¡ ºÎÇÕÇÕ´Ï´Ù. ÁÖÀÇ: ÀÌ ¿É¼ÇÀº "m" ¿É¼ÇÀÌ ÀÖÀ¸¸é ¹«½ÃµË´Ï´Ù.
JÀ̸§ºÙÀÎ ºÎÆÐÅÏÀÇ Áߺ¹À» Çã¿ëÇÕ´Ï´Ù. + + +ÀÌ°ÍÀº °°Àº-À̸§ÀÇ ºÎÆÐÅÏ Áß Çϳª¸¸ ºÎÇÕÇÒ ¼ö ÀÖ´Â ÆÐÅÏ¿¡ À¯¿ëÇÏ°Ô »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. +ÁÖÀÇ: ¹«¾ùÀ̵ç ƯÁ¤ À̸§ÀÌ ÇÑ ¹ø ÀÌ»ó ºÎÇÕÇϸé, ¿ÞÂÊ¿¡ ÀÖ´Â °Í¸¸ ÀúÀåµË´Ï´Ù. ¶Ç, º¯¼ö À̸§Àº ´ë¼Ò¹®ÀÚ¸¦ ±¸ºÐÇÏÁö ¾Ê½À´Ï´Ù.
UºñŽ¿åÀû. + + +¼ö·®ÀÚ *+?{}°¡ ºÎÇÕÀ» Çü¼ºÇϴµ¥ Àý´ëÀûÀ¸·Î ÇÊ¿äÇÑ ¹®Àڵ鸸 ¼ÒºñÇÕ´Ï´Ù. ³ª¸ÓÁö ºÎÇÕÀº ´ÙÀ½ ÆÐÅÏÀ» À§ÇØ ³²°ÜµÓ´Ï´Ù. "U" ¿É¼ÇÀÌ È¿°ú°¡ ¾øÀ¸¸é, °¢ ¼ö·®ÀÚ ´ÙÀ½¿¡ ¹°À½Ç¥¸¦ Ãß°¡ÇÏ¸é ºñŽ¿åÀûÀ¸·Î ¸¸µé ¼ö ÀÖ½À´Ï´Ù. ¹Ý´ë·Î, "U"°¡ È¿°ú°¡ ÀÖÀ¸¸é, ¹°À½Ç¥´Â °¢ ¼ö·®ÀÚ¸¦ Ž¿åÀûÀ¸·Î ¸¸µì´Ï´Ù.
XPCRE_EXTRA. ÆÞ°ú ȣȯµÇÁö ¾Ê´Â PCRE Ư¡À» È°¼ºÈ­ÇÕ´Ï´Ù. ÇöÀç, Áö¿øµÇ´Â À¯ÀÏÇÑ Æ¯Â¡Àº ´ÙÀ½°ú °°½À´Ï´Ù. ÆÐÅÏ¿¡¼­ ¿ª»ç¼± ´ÙÀ½¿¡ ¾Æ¹« Ư¼ö Àǹ̰¡ ¾ø´Â ±âÈ£°¡ µû¶ó¿À¸é ºÎÇÕÀº ½ÇÆÐÇÏ°í ±×¿¡ ¸Â°Ô ErrorLevelÀÌ ¼³Á¤µË´Ï´Ù. + ÀÌ ¿É¼ÇÀº »ç¿ëÇÏÁö ¾Ê´Â ¿ª»ç¼± ¹®ÀÚ¿­À» ¹Ì·¡¿¡ »ç¿ëÇϱâ À§ÇØ ¿¹¾àÇϴµ¥ µµ¿òÀ» ÁÝ´Ï´Ù. ÀÌ ¿É¼ÇÀÌ ¾ø´Ù¸é, ¿ª»ç¼± ´ÙÀ½¿¡ ¾Æ¹« Ư¼ö Àǹ̰¡ ¾ø´Â ±âÈ£°¡ µû¶ó¿À¸é ±âÈ£ ±×´ë·Î Ãë±ÞÇÕ´Ï´Ù (¿¹, \g¿Í g´Â ¸ðµÎ ±âÈ£ ±×´ë·ÎÀÇ g·Î Àνĵ˴ϴÙ). ÀÌ ¿É¼Ç¿¡ »ó°ü¾øÀÌ, ¾Æ¹« Àǹ̰¡ ¾ø´Â ¾ËÆĺª-¾Æ´Ñ ¿¬¼Ó¿­Àº ¾ðÁ¦³ª ±âÈ£ ±×´ë·Î Ãë±ÞµË´Ï´Ù (¿¹, \/ ±×¸®°í / ´Â ¸ðµÎ Á¤»ç¼±À¸·Î ÀÎÁöµË´Ï´Ù).
PÀ§Ä¡ ¸ðµå. ÀÌ ¸ðµå´Â RegExMatch()°¡ ºÎÇÕÇÑ ºÎ¹®ÀÚ¿­ÀÌ ¾Æ´Ï¶ó ±×ÀÇ ºÎÆÐÅÏ°ú ºÎÇÕÀÇ À§Ä¡¿Í ±æÀ̸¦ »êÃâÇϵµ·Ï ¸¸µì´Ï´Ù. ÀÚ¼¼ÇÑ °ÍÀº UnquotedOutputVar¸¦ ÂüÁ¶ÇϽʽÿÀ.
SÆÐÅÏÀ» ¿¬±¸ÇÏ¿© ¼öÇ༺´ÉÀ» Çâ»ó½ÃÅ°·Á°í ½ÃµµÇÕ´Ï´Ù. ÀÌ Æ¯Â¡Àº ƯÁ¤ ÆÐÅÏÀÌ (ƯÈ÷ º¹ÀâÇÑ ÆÐÅÏÀÌ) ¿©·¯ ¹ø ¼öÇàµÉ ¶§ À¯¿ëÇÕ´Ï´Ù. PCRE°¡ ¼öÇ༺´ÉÀ» Çâ»ó½ÃÅ°´Â ¹ýÀ» ¹ß°ßÇϸé, ±× ¹ß°ßÀº ÆÐÅÏ°ú ÇÔ²² ij½¬¿¡ ÀúÀåµË´Ï´Ù. °°Àº ÆÐÅÏÀÌ ¿¬ÀÌ¾î ½ÇÇàµÇ¸é ÀúÀåµÈ ¹ß°ßÀ» »ç¿ëÇÕ´Ï´Ù. + + (ÆÐÅÏÀ» ¿¬ÀÌ¾î »ç¿ëÇϸé S ¿É¼ÇÀ» ÁöÁ¤ÇØ¾ß ÇÕ´Ï´Ù. ¿Ö³ÄÇϸé ij½¬¿¡¼­ ºÎÇÕÀ» ¹ß°ßÇÏ·Á¸é ±× ¿É¼Ç ±âÈ£°¡ Á¤È®ÇÏ°Ô ÀÏÄ¡ÇØ¾ß Çϸç, ¼ø¼­±îÁö ÀÏÄ¡ÇØ¾ß Çϱ⠶§¹®ÀÔ´Ï´Ù).
CÀÚµ¿-callout ¸ðµå¸¦ ÄÕ´Ï´Ù. ´õ ÀÚ¼¼ÇÑ Á¤º¸´Â Á¤±Ô Ç¥Çö½Ä ¿ÜºÎÈ£ÃâÀ» ÂüÁ¶ÇϽʽÿÀ.
`n±âº» »õÁÙ ¹®ÀÚ(`r`n)¸¦ ´Üµ¶ ¶óÀÎÇǵå (`n)·Î ÀüȯÇÕ´Ï´Ù. ÀÌ ÁÙ³¡ ¹®ÀÚ´Â UNIX ½Ã½ºÅÛÀÇ Ç¥ÁØÀÔ´Ï´Ù. ¼±ÅÃµÈ »õÁÙ ¹®ÀÚ´Â ´é (^¿Í $) ±×¸®°í Á¡(dot/period) ÆÐÅÏÀÇ ÇàÀ§¿¡ ¿µÇâÀ» ¹ÌĨ´Ï´Ù.
`r±âº» »õÁÙ ¹®ÀÚ (`r`n)¸¦ ´Üµ¶ ij¸®Áö ¸®ÅÏ (`r)À¸·Î ÀüȯÇÕ´Ï´Ù.
`av1.0.46.06+¿¡¼­, `a´Â »õÁÙÀÌ¸é ¾î¶² Á¾·ùµçÁö ¸ðµÎ ÀÎÁöÇÕ´Ï´Ù. Áï, `r, `n, `r`n, `v/VT/vertical tab/chr(0xB), `f/FF/formfeed/chr(0xC), ±×¸®°í NEL/next-line/chr(0x85). v1.0.47.05+¿¡¼­, »õÁÙÀº CR, LF, ±×¸®°í CRLF·Î Á¦ÇÑÇÒ ¼ö ÀÖ½À´Ï´Ù. ÆÐÅÏÀÇ ½ÃÀÛ¿¡ (¿É¼Ç µÚ¿¡) ´ë¹®ÀÚ·Î (*ANYCRLF)¸¦ ÁöÁ¤ÇÏ¸é µË´Ï´Ù; ¿¹, im)(*ANYCRLF)^abc$.
+

ÁÖÀÇ: °¢ ¿É¼ÇÀ» ´ÙÀ½ ¿É¼Ç°ú °¡¸£´Âµ¥ ½ºÆäÀ̽º¿Í ÅÇÀ» ¼±ÅÃÀûÀ¸·Î »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù.

+ +

ÀÚÁÖ »ç¿ëµÇ´Â ½Éº¼°ú ±¸¹®

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
.±âº»°ªÀ¸·Î, Á¡Àº ¹®ÀÚ Çϳª¿¡ ºÎÇÕÇÕ´Ï´Ù. »õÁÙ¹®ÀÚ (`r`n) ¿¬¼Ó¿­Àº Á¦¿ÜÇÕ´Ï´Ù. ±×·¯³ª DotAll (s), ¶óÀÎÇǵå (`n), ij¸®Áö ¸®ÅÏ (`r), `a ¶Ç´Â (*ANYCRLF) ¿É¼ÇÀ» »ç¿ëÇÏ¿© ÀÌ ÇàÀ§¸¦ º¯°æÇÒ ¼ö ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î, ab.´Â abc and abz ±×¸®°í ab_¿¡ ºÎÇÕÇÕ´Ï´Ù.
*

º°Ç¥´Â 0°³ ÀÌ»óÀÇ ÀÌÀü ¹®ÀÚ, ºÎ·ù, ¶Ç´Â ºÎÆÐÅÏ¿¡ ºÎÇÕÇÕ´Ï´Ù. ¿¹¸¦ µé¾î, a*´Â ab ±×¸®°í aaab¿¡ ºÎÇÕÇÕ´Ï´Ù. ¶Ç "a"°¡ ÀüÇô ¾ø´Â ¹®ÀÚ¿­ÀÇ ¸Ç ¾Õ¿¡µµ ºÎÇÕÇÕ´Ï´Ù.

+

¸¸´É¹®ÀÚ: Á¡-º° ÆÐÅÏ .*Àº °¡Àå ¸¹ÀÌ »ç¿ëµÇ´Â ÆÐÅÏÀÔ´Ï´Ù. ¿Ö³ÄÇÏ¸é ¾î¶² ¹®ÀÚµçÁö 0 ȸ ÀÌ»ó ºÎÇÕÇϱ⠶§¹®ÀÔ´Ï´Ù (»õÁÙ ¹®ÀÚ´Â Á¦¿ÜÇÕ´Ï´Ù: `r ±×¸®°í `n). ¿¹¸¦ µé¾î, abc.*123Àº abcAnything123´Â ¹°·Ð abc123¿¡µµ ºÎÇÕÇÕ´Ï´Ù.

?¹°À½Ç¥´Â ÀÌÀü ¹®ÀÚ, ºÎ·ù, ¶Ç´Â ºÎÆÐÅÏÀÌ 0 ¶Ç´Â 1°³¿¡ ºÎÇÕÇÕ´Ï´Ù. ÀÌ°ÍÀ» "¾ÕÀÇ ¹®ÀÚ´Â ¼±ÅÃÀûÀÌ´Ù"¶ó°í °£ÁÖÇϽʽÿÀ; ¿¹¸¦ µé¾î, colou?r´Â color¿Í colour¿¡ ¸ðµÎ ºÎÇÕÇÕ´Ï´Ù ¿Ö³ÄÇϸé "u"°¡ ¼±ÅÃÀûÀ̱⠶§¹®ÀÔ´Ï´Ù.
+µ¡¼À ºÎÈ£´Â Çϳª ÀÌ»óÀÇ ÀÌÀü ¹®ÀÚ, ºÎ·ù, ¶Ç´Â ºÎÆÐÅÏ¿¡ ºÎÇÕÇÕ´Ï´Ù. ¿¹¸¦ µé¾î a+´Â ab ±×¸®°í aaab¿¡ ºÎÇÕÇÕ´Ï´Ù. ±×·¯³ª a* ±×¸®°í a?¿Í ´Ù¸£°Ô, ÆÐÅÏ a+´Â "a"°¡ ¾ø´Â ¹®ÀÚ¿­ÀÇ ¼±µÎ¿¡ ºÎÇÕÇÏÁö ¾Ê½À´Ï´Ù.
{min,max}

ÀÌÀüÀÇ ¹®ÀÚ, ºÎ·ù, ¶Ç´Â ºÎÆÐÅÏÀÌ ÃÖ¼Ò minȸ ±×¸®°í ÃÖ´ë maxȸ ³ªÅ¸³ª¸é ºÎÇÕÇÕ´Ï´Ù. ¿¹¸¦ µé¾î, a{1,2}´Â ab¿¡ ºÎÇÕÇÏÁö¸¸ aaab¿¡¼­ ¿ÀÁ÷ ¾ÕÀÇ µÎ a¿¡¸¸ ºÎÇÕÇÕ´Ï´Ù.

+

¶Ç, {3}´Â Á¤È®ÇÏ°Ô 3 ȸ ³ªÅ¸³ª¾ß ÇÑ´Ù´Â ¶æÀÌ°í, {3,}´Â 3 ȸ ÀÌ»óÀ» ÀǹÌÇÕ´Ï´Ù. ÁÖÀÇ: ÁöÁ¤µÈ Ƚ¼ö´Â 65536º¸´Ù ÀÛ¾Æ¾ß ÇÕ´Ï´Ù. ±×¸®°í ¾ÕÀÇ ¼ýÀÚ´Â µÚÀÇ ¼ýÀÚº¸´Ù °°°Å³ª ÀÛ¾Æ¾ß ÇÕ´Ï´Ù.

[...]

¹®ÀÚ ºÎ·ù: °¢°ýÈ£´Â ¹®ÀÚÀÇ ¹üÀ§³ª ¸®½ºÆ®¸¦ µÑ·¯½Ô´Ï´Ù (¶Ç´Â µÑ ´Ù). ¿¹¸¦ µé¾î, [abc]´Â " a, b ¶Ç´Â cÁß ¾î´À ¹®ÀÚ¿¡³ª ºÎÇÕÇÑ´Ù"´Â ¶æÀÔ´Ï´Ù. »çÀÌ¿¡ ¿·ÁÙ ¹®ÀÚ¸¦ »ç¿ëÇÏ¸é ¹üÀ§°¡ »ý¼ºµË´Ï´Ù; ¿¹¸¦ µé¾î, [a-z]´Â "¼Ò¹®ÀÚ aºÎÅÍ z±îÁöÀÇ (Æ÷ÇÔ) ¸ðµç ¹®ÀÚ Çϳª¿¡ ºÎÇÕÇÑ´Ù"´Â ¶æÀÔ´Ï´Ù. ¸®½ºÆ®¿Í ¹üÀ§´Â Á¶ÇÕÇÒ ¼ö ÀÖ½À´Ï´Ù; ¿¹¸¦ µé¾î [a-zA-Z0-9_]´Â "¸ðµç ¾ËÆĺª°ú ¼ýÀÚ ¶Ç´Â ¹ØÁÙ ¹®ÀÚ"¸¦ ¶æÇÕ´Ï´Ù.

+

¹®ÀÚ ºÎ·ù ´ÙÀ½¿¡ *, ?, +, ¶Ç´Â {min,max}°¡ µû¶ó¿Ã ¼ö ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î, [0-9]+´Â ¼ýÀÚ°¡ Çϳª ÀÌ»ó ³ªÅ¸³ª¸é ºÎÇÕÇÕ´Ï´Ù; ±×·¡¼­ xyz123¿¡´Â ºÎÇÕÇÏÁö¸¸ abcxyz¿¡´Â ºÎÇÕÇÏÁö ¾Ê½À´Ï´Ù.

+

´ÙÀ½ POSIX À̸§ ÁýÇÕµµ Áö¿øÇÕ´Ï´Ù. ÇüÅ´ [[:xxx:]]¿Í °°À¸¸ç, ¿©±â¿¡¼­ xxx´Â ´ÙÀ½ ´Ü¾î Áß ÇϳªÀÔ´Ï´Ù: alnum, alpha, ascii (0-127), blank (½ºÆäÀ̽º ¶Ç´Â ÅÇ), cntrl (Á¦¾î ¹®ÀÚ), digit (0-9), xdigit (½ÊÀ°Áø¼ö), print, graph (½ºÆäÀ̽º¸¦ Á¦¿ÜÇÏ°í Àμ⠰¡´É ¹®ÀÚ), punct, lower, upper, space (°ø¹é¹®ÀÚ), word (\w¿Í µ¿ÀÏ).

+

¹®ÀÚ ºÎ·ù ¾È¿¡¼­, ¹®ÀÚµéÀº ÇǽŽÃų ÇÊ¿ä°¡ ¾ø½À´Ï´Ù. ºÎ·ù ¾È¿¡¼­ Ưº°ÇÑ Àǹ̸¦ °¡Áú °æ¿ì´Â Á¦¿ÜÇÕ´Ï´Ù; ¿¹¸¦ µé¾î, [\^a], [a\-b], [a\]], ±×¸®°í [\\a].

[^...]ºÎ·ù¿¡ ¾ø´Â ¹®ÀÚ¿¡ ºÎÇÕÇÕ´Ï´Ù. ¿¹¸¦ µé¾î, [^/]*´Â Á¤»ç¼±ÀÌ ¾Æ´Ñ¹®ÀÚ°¡ 0ȸ ÀÌ»ó ³ªÅ¸³ª¸é ºÎÇÕÇÕ´Ï´Ù. ¿¹¸¦ µé¾î http://. ºñ½ÁÇÏ°Ô, [^0-9xyz]´Â ¼ýÀÚ°¡ ¾Æ´Ï°í ¼Ò¹®ÀÚ x, y, ¶Ç´Â z°¡ ¾Æ´Ï¸é ºÎÇÕÇÕ´Ï´Ù.
\d¼ýÀÚ Çϳª¿¡ ºÎÇÕÇÕ´Ï´Ù (¹®ÀÚ ºÎ·ù [0-9]¿Í µ¿µîÇÕ´Ï´Ù). ¿ªÀ¸·Î, ´ë¹®ÀÚ \D´Â "¼ýÀÚ°¡ ¾Æ´Ñ-¹®ÀÚ Çϳª"¿¡ ºÎÇÕÇÕ´Ï´Ù. ÀÌ°Í°ú ¾Æ·¡ÀÇ µÎ °³´Â ºÎ·ù ¾È¿¡ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù; ¿¹¸¦ µé¾î, [\d.-]´Â "¼ýÀÚ, ¸¶Ä§Ç¥, ¶Ç´Â »¬¼À ±âÈ£"¸¦ ¶æÇÕ´Ï´Ù.
\s°ø¹é ¹®ÀÚ¿¡ ºÎÇÕÇÕ´Ï´Ù. ÁÖ·Î ½ºÆäÀ̽º, ÅÇ, ±×¸®°í »õÁÙ¹®ÀÚ (`r ±×¸®°í `n)¿¡ ºÎÇÕÇÕ´Ï´Ù. ¹Ý´ë·Î, ´ë¹®ÀÚ \S´Â "°ø¹é ¹®ÀÚ°¡ ¾Æ´Ñ-¹®ÀÚ"¸¦ ¶æÇÕ´Ï´Ù.
\w"´Ü¾î" ¹®ÀÚ¿¡ ºÎÇÕÇÕ´Ï´Ù. Áï ¾ËÆĺª¼ýÀÚ³ª ¹ØÁÙ¹®ÀÚ¿¡ ºÎÇÕÇÕ´Ï´Ù. ÀÌ°ÍÀº ¹®Àںηù [a-zA-Z0-9_]¿Í µ¿µîÇÕ´Ï´Ù. ¿ªÀ¸·Î, ´ë¹®ÀÚ \W´Â "´Ü¾î ¹®ÀÚ°¡ ¾Æ´Ñ-¹®ÀÚ"¸¦ ¶æÇÕ´Ï´Ù.
^
+ $

À­²©¼è (^)¿Í ´Þ·¯ »çÀÎ($)Àº ´é(anchors)¶ó°í ºÎ¸¨´Ï´Ù. ¿Ö³ÄÇÏ¸é ¹®ÀÚ¸¦ ¼ÒºñÇÏÁö ¾Ê±â ¶§¹®ÀÔ´Ï´Ù; ´ë½Å¿¡, ÆÐÅÏÀ» °Ë»öµÉ ¹®ÀÚ¿­ÀÇ ¼±µÎ ¶Ç´Â ÈĹ̿¡ °íÁ¤ÇÕ´Ï´Ù.

+

^´Â ÆÐÅÏÀÇ ¼±µÎ¿¡ ³ªÅ¸³ª¸é ºÎÇÕÀÌ ÇÑ ÁÙÀÇ ¸Ç ¾Õ¿¡¼­ ÀϾ¾ß ÇÕ´Ï´Ù. ¿¹¸¦ µé¾î, ^abc´Â abc123¿¡´Â ºÎÇÕÇÏÁö¸¸ 123abc¿¡´Â ºÎÇÕÇÏÁö ¾Ê½À´Ï´Ù.

+

$°¡ ÆÐÅÏÀÇ ÈĹ̿¡ ³ªÅ¸³ª¸é ºÎÇÕÀÌ ÇÑ ÁÙÀÇ ¸Ç µÚ¿¡¼­ ÀϾ¾ß ÇÕ´Ï´Ù. ¿¹¸¦ µé¾î, abc$´Â 123abc¿¡´Â ºÎÇÕÇÏÁö¸¸ abc123¿¡´Â ºÎÇÕÇÏÁö ¾Ê½À´Ï´Ù.

+

µÎ °³ÀÇ ´éÀ» Á¶ÇÕÇØ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î, ^abc$´Â abc¿¡¸¸ ºÎÇÕÇÕ´Ï´Ù (Áï, ¾Õ µÚ¿¡ ¾Æ¹« ¹®ÀÚµµ ¾ø¾î¾ß ÇÕ´Ï´Ù).

+

°Ë»öµÉ ÅؽºÆ®¿¡ ¿©·¯ ÁÙÀÌ Æ÷ÇԵǾî ÀÖ´Ù¸é, "m" ¿É¼ÇÀ» ¼ö´ÜÀ¸·Î ´éÀ» ÅؽºÆ® Àüü°¡ ¾Æ´Ï¶ó °¢ ÁÙ¿¡ Àû¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î, m)^abc$´Â 123`r`nabc`r`n789¿¡ ºÎÇÕÇÕ´Ï´Ù. ±×·¯³ª "m" ¿É¼ÇÀÌ ¾ø´Ù¸é, ºÎÇÕÇÏÁö ¾Ê½À´Ï´Ù.

\b\b´Â "´Ü¾î °æ°è"¸¦ ¶æÇϴµ¥, ¹®ÀÚ¸¦ ¼ÒºñÇÏÁö ¾Ê±â ¶§¹®¿¡ ´é°ú ºñ½ÁÇÕ´Ï´Ù. ÇöÀç ¹®ÀÚÀÇ »óÅ°¡ ´Ü¾î ¹®ÀÚ(\w)ÀÇ ¹Ý´ë°¡ µÇ±â¸¦ ¿ä±¸ÇÕ´Ï´Ù. ÀüÇüÀûÀ¸·Î ´Ù¸¥ ´Ü¾î ¾È¿¡ ³ªÅ¸³ª´Â ´Ü¾î¿¡ ¿ì¹ßÀûÀ¸·Î ºÎÇÕÇÏ´Â °ÍÀ» ÇÇÇϱâ À§ÇØ »ç¿ëµË´Ï´Ù. + ¿¹¸¦ µé¾î, \bcat\b´Â catfish¿¡ ºÎÇÕÇÏÁö ¾ÊÁö¸¸, cat¿¡´Â ±× µÑ·¹¿¡ ±¸µÎÁ¡ ±âÈ£°¡ ÀÖµç °ø¹é¹®ÀÚ°¡ ÀÖµç »ó°ü¾øÀÌ ºÎÇÕÇÕ´Ï´Ù. ´ë¹®ÀÚ \B´Â ±× ¹Ý´ëÀÔ´Ï´Ù: ÇöÀç ¹®ÀÚ°¡ ´Ü¾î °æ°è¿¡ ÀÖÁö ¾Ê±â¸¦ ¿ä±¸ÇÕ´Ï´Ù.
|¼öÁ÷ ¸·´ë´Â µÎ °³ ÀÌ»óÀÇ ´ë¾ÈÀ» °¡¸¨´Ï´Ù. ´ë¾È Áß ¾î´À °ÍÀÌ¶óµµ ¸¸Á·ÇÏ¸é ºÎÇÕÇÕ´Ï´Ù. ¿¹¸¦ µé¾î, gray|grey´Â gray¿Í grey¿¡ ¸ðµÎ ºÎÇÕÇÕ´Ï´Ù. ºñ½ÁÇÏ°Ô, ÆÐÅÏ gr(a|e)y´Â ¾Æ·¡¿¡ ±â¼úÇÑ ¹Ý°ýÈ£ÀÇ µµ¿òÀ¸·Î °°Àº ÀÏÀ» ÇÕ´Ï´Ù.
(...)

°ýÈ£·Î µÑ·¯½ÎÀÎ Ç׸ñÀº ´ÙÀ½¿¡ ÁÖ·Î ¸¹ÀÌ »ç¿ëµË´Ï´Ù:

+
    +
  • Æò°¡ÀÇ ¼ø¼­¸¦ °áÁ¤ÇÕ´Ï´Ù. ¿¹¸¦ µé¾î, (Sun|Mon|Tues|Wednes|Thurs|Fri|Satur)day´Â ¿äÀÏ À̸§¿¡ ºÎÇÕÇÕ´Ï´Ù.
  • +
  • *, ?, +, ¶Ç´Â {min,max}¸¦ ¹®ÀÚ Çϳª°¡ ¾Æ´Ï¶ó ÀÏ·ÃÀÇ ¹®ÀÚ¿¡ Àû¿ëÇÕ´Ï´Ù. ¿¹¸¦ µé¾î, (abc)+´Â ¹®ÀÚ¿­ "abc"°¡ Çϳª ÀÌ»ó ³ªÅ¸³ª¸é ºÎÇÕÇÕ´Ï´Ù; ±×·¡¼­ abcabc123´Â ºÎÇÕÇÏÁö¸¸ ab123À̳ª bc123¿¡´Â ºÎÇÕÇÏÁö ¾Ê½À´Ï´Ù.
  • +
  • abc(.*)xyz¿¡¼­ Á¡-º°°ú °°ÀÌ ºÎÆÐÅÏÀ» ³ªÆ÷ÇÕ´Ï´Ù. ¿¹¸¦ µé¾î, RegExMatch()´Â °¢ ÆÐÅÏ¿¡ ºÎÇÕÇÏ´Â ºÎ¹®ÀÚ¿­À» ÀÚ½ÅÀÇ Ãâ·Â ¹è¿­¿¡ ÀúÀåÇÕ´Ï´Ù. ºñ½ÁÇÏ°Ô, RegExReplace()´Â $1¿Í °°Àº ¿ªÂüÁ¶¸¦ ÅëÇÏ¿©, °¢ ºÎÆÐÅÏ¿¡ ºÎÇÕÇÏ´Â ºÎ¹®ÀÚ¿­À» °á°ú¿¡ »ðÀÔÇÒ ¼ö ÀÖ½À´Ï´Ù. ºÎÆÐÅÏÀ» ³ªÆ÷ÇÏ´Â ºÎÀÛ¿ë ¾øÀÌ ¹Ý°ýÈ£¸¦ »ç¿ëÇÏ·Á¸é, ?:¸¦ ¾ÕÂÊ µÎ °³ÀÇ ¹®ÀÚ·Î ÇÏ¿© °ýÈ£ ¾È¿¡ ÁöÁ¤ÇϽʽÿÀ; ¿¹¸¦ µé¾î: (?:.*)
  • +
  • ¹Ù·Î¹Ù·Î ¿É¼ÇÀ» º¯°æÇÕ´Ï´Ù. ¿¹¸¦ µé¾î, (?im)´Â ÆÐÅÏÀÇ ³ª¸ÓÁö¿¡ ´ëÇÏ¿© (¶Ç´Â ºÎÆÐÅÏ ¾È¿¡¼­ ÀϾ¸é ºÎÆÐÅÏ¿¡) ´ë¼Ò¹®ÀÚ ±¸º°°ú ¿©·¯ ÁÙ ¿É¼ÇÀ» ÄÕ´Ï´Ù. ¿ªÀ¸·Î, (?-im)´Â ±× µÑÀ» ´Ù ²ü´Ï´Ù. DPS`r`n`a¸¦ Á¦¿ÜÇÏ°í ¸ðµç ¿É¼ÇÀ» Áö¿øÇÕ´Ï´Ù.
  • +
\t
+ \r
+ etc.

ÀÌ ÇǽŠ¿¬¼Ó¿­Àº Ư¼ö ¹®ÀÚ¸¦ ÀǹÌÇÕ´Ï´Ù. °¡Àå ¸¹ÀÌ »ç¿ëµÇ´Â °ÍÀº \t (ÅÇ), \r (ij¸®Áö ¸®ÅÏ), ±×¸®°í \n (Áٳѱè)ÀÔ´Ï´Ù. ¿ÀÅäÇÖÅ°¿¡¼­ ¾×¼¾Æ® (`)´Â ¼±ÅÃÀûÀ¸·Î ÀÌ·± °æ¿ì ¿ª»ç¼± ´ë½Å »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. \xhh ÇüÅÂÀÇ ÇǽŠ¿¬¼Ó¿­µµ Áö¿øÇÕ´Ï´Ù. ¿©±â¿¡¼­ hh´Â 00ºÎÅÍ FF »çÀÌÀÇ ANSI ¹®ÀÚÀÇ ½ÊÀ°Áø ÄÚµåÀÔ´Ï´Ù.

+

v1.0.46.06+¿¡¼­, \R´Â "Á¾·ù¿¡ »ó°ü¾øÀÌ »õÁÙ Çϳª"¸¦ ¶æÇÕ´Ï´Ù. Áï, `a ¿É¼Ç¿¡ ³ª¿­µÇ¾î ÀÖ´Â ÁÙµéÀ» ¶æÇÕ´Ï´Ù (±×·¸Áö¸¸, ¹®ÀÚ ºÎ·ù ¾È¿¡¼­ \RÀº ±×Àú ±âÈ£ "R"¿¡ ºÒ°úÇÕ´Ï´Ù). v1.0.47.05+¿¡¼­, \R¸¦ CR, LF, ±×¸®°í CRLF·Î Á¦ÇÑÇÒ ¼ö ÀÖ½À´Ï´Ù. (¿É¼Ç ¹Ù·Î µÚ) ÆÐÅÏÀÇ ¾Õ¿¡ ´ë¹®ÀÚ·Î (*BSR_ANYCRLF)¸¦ ÁöÁ¤ÇÏ¸é µË´Ï´Ù; ¿¹, im)(*BSR_ANYCRLF)abc\Rxyz

\p{xx}
\P{xx}
\X

[AHK_L 61+]: À¯´ÏÄÚµå ¹®ÀÚ Æ¯¼º. ANSI ºôµå´Â Áö¿øÇÏÁö ¾Ê½À´Ï´Ù. \p{xx}´Â xx Ư¼ºÀÌ ÀÖ´Â ¹®ÀÚ¿¡ ºÎÇÕÇÕ´Ï´Ù. ¹Ý¸é¿¡ \P{xx}´Â xx Ư¼ºÀÌ ¾ø´Â ¹®ÀÚ¿¡ ºÎÇÕÇÕ´Ï´Ù. ¿¹¸¦ µé¾î, \pL´Â ¾î´À ±âÈ£¿¡³ª ºÎÇÕÇÏ°í \p{Lu}´Â ´ë¹®ÀÚ ±âÈ£ÀÌ¸é ºÎÇÕÇÕ´Ï´Ù. \X´Â È®Àå À¯´ÏÄÚµå ¿¬¼Ó¿­À» Çü¼ºÇϱ⸸ ÇÏ¸é ¹®ÀÚÀÇ °³¼ö¿¡ »ó°ü¾øÀÌ ºÎÇÕÇÕ´Ï´Ù.

+

Áö¿øµÇ´Â Ư¼º À̸§°ú ±âŸ ÀÚ¼¼ÇÑ Á¤º¸¸¦ ´ãÀº ¿ÏÀüÇÑ ¸ñ·ÏÀº www.pcre.org/pcre.txt¿¡¼­ "\p{xx}"¸¦ °Ë»öÇØ º¸½Ê½Ã¿À.

(*UCP)

[AHK_L 61+]: ¼öÇ༺´ÉÀ» À§ÇØ, \d, \D, \s, \S, \w, \W, \b ±×¸®°í \B´Â ±âº»°ªÀ¸·Î ASCII ¹®ÀÚ¸¸ ÀÎÁöÇÕ´Ï´Ù. À¯´ÏÄÚµå ºôµåµµ ¸¶Âù°¡ÁöÀÔ´Ï´Ù. ÆÐÅÏÀÌ (*UCP)·Î ½ÃÀÛÇϸé, À¯´ÏÄÚµå Ư¼ºÀ» »ç¿ëÇÏ¿© ¾î´À ¹®ÀÚ¿¡ ºÎÇÕÇÒÁö °áÁ¤ÇÕ´Ï´Ù. ¿¹¸¦ µé¾î, , \w´Â [\p{L}\p{N}_]¿Í µ¿µîÇØÁö°í \d´Â \p{Nd}¿Í µ¿µîÇØÁý´Ï´Ù.

+
+

Ž¿åÀû: ±âº»°ªÀÔ´Ï´Ù, *, ?, +, ±×¸®°í {min,max}´Â Ž¿åÀûÀÔ´Ï´Ù. ¿Ö³ÄÇÏ¸é ¿©ÀüÈ÷ Àüü ÆÐÅÏÀ» ¸¸Á·½ÃÅ°±â¸¸ ÇÏ¸é ¸¶Áö¸· °¡´ÉÇÑ ¹®ÀÚ±îÁö ¸ðµç ¹®ÀÚ¸¦ ¼ÒºñÇϱ⠶§¹®ÀÔ´Ï´Ù. + +´ë½Å¿¡ °¡´ÉÇÑ Ã¹ ¹®ÀÚ¿¡ ¸ØÃß°Ô ÇÏ°í ½Í´Ù¸é, ´ÙÀ½¿¡ ¹°À½Ç¥¸¦ µ¡ºÙÀ̽ʽÿÀ. ¿¹¸¦ µé¾î, (¹°À½Ç¥ ¾ø´Â) ÆÐÅÏ <.+>´Â ´ÙÀ½°ú °°Àº ¶æÀÔ´Ï´Ù: "<¸¦ ã°í, ´ÙÀ½¿¡ Çϳª ÀÌ»óÀÇ ¹®ÀÚµéÀÌ µû¶ó¿À°í, ´ÙÀ½¿¡ >ÀÌ µû¶ó¿À´Â ¹®ÀÚ¿­À» ã¾Æ¶ó". ÀÌ ÆÐÅÏÀÌ Àüü ¹®ÀÚ¿­ <em>text</em>¿¡ ºÎÇÕÇÏÁö ¸øÇϵµ·Ï ¸·À¸·Á¸é, ¹°À½Ç¥¸¦ µ¡¼À ºÎÈ£ µÚ¿¡ Ãß°¡ÇϽʽÿÀ: <.+?>. ÀÌ·¸°Ô ÇÏ¸é ºÎÇÕÀÌ Ã¹ ¹ø° '>'¿¡¼­ ¸ØÃß°í ±×¸®ÇÏ¿© ù ¹ø° ÅÂ±× <em>¿¡¸¸ ºÎÇÕÇÕ´Ï´Ù.

+

+³»´Ù-º¸±â¿Í µ¹¾Æ-º¸±â Ç¥¸í: ±×·ì (?=...), (?!...), (?<=...), ±×¸®°í (?<!...)´Â Ç¥¸í(assertions)À̶ó°í ºÎ¸¨´Ï´Ù. ¿Ö³ÄÇϸé Á¶°ÇÀº ¸¸Á·Çϵµ·Ï ¿ä±¸ÇÏÁö¸¸ ¹®ÀÚ¸¦ ÀüÇô ¼ÒºñÇÏÁö ¾Ê±â ¶§¹®ÀÔ´Ï´Ù. ¿¹¸¦ µé¾î, abc(?=.*xyz) ´Â ³»´Ù-º¸±â Ç¥¸íÀÔ´Ï´Ù. ¹®ÀÚ¿­ xyz°¡ ¹®ÀÚ¿­ abcÀÇ ¿À¸¥ÂÊ ¾îµò°¡¿¡¼­ ³¡³ª±â¸¦ ¿ä±¸ÇÕ´Ï´Ù (±×·¸Áö ¾Ê´Ù¸é, Àüü ÆÐÅÏÀ» ºÎÇÕÇÑ °ÍÀ¸·Î °£ÁÖÇÏÁö ¾Ê½À´Ï´Ù). (?=...)´Â ±àÁ¤ ³»´Ù-º¸±â·Î ºÎ¸¨´Ï´Ù. ¿Ö³ÄÇϸé ÁöÁ¤µÈ ÆÐÅÏÀÌ Á¸ÀçÇϱ⸦ ¿ä±¸Çϱ⠶§¹®ÀÔ´Ï´Ù. ¹Ý´ë·Î, (?!...)´Â ºÎÁ¤ ³»´Ù-º¸±â ÀÔ´Ï´Ù. ¿Ö³ÄÇϸé ÁöÁ¤ÇÑ ÆÐÅÏÀÌ Á¸ÀçÇÏÁö ¾Ê±â¸¦ ¿ä±¸ÇÕ´Ï´Ù. ºñ½ÁÇÏ°Ô, (?<=...)¿Í (?<!...)´Â (°¢°¢) ±àÁ¤ ±×¸®°í ºÎÁ¤ µ¹¾Æ-º¸±âÀÔ´Ï´Ù. ¿Ö³ÄÇϸé ÇöÀç À§Ä¡¿¡¼­ ¿À¸¥ÂÊÀÌ ¾Æ´Ï¶ó ¿ÞÂÊÀ» µ¹¾Æ º¸±â ¶§¹®ÀÔ´Ï´Ù. µ¹¾Æ-º¸±â´Â ³»´Ù-º¸±âº¸´Ù Á¦ÇÑÀÌ ´õ ¸¹½À´Ï´Ù. ¿Ö³ÄÇϸé *, ?, ±×¸®°í +¿Í °°Àº ´Ù¾çÇÑ Å©±âÀÇ ¼ö·®ÀÚ¸¦ Áö¿øÇÏÁö ¾Ê±â ¶§¹®ÀÔ´Ï´Ù. ÇǽŠ¿¬¼Ó¿­ \K´Â µ¹¾Æ-º¸±â Ç¥¸í°ú ºñ½ÁÇØ º¸ÀÔ´Ï´Ù. ¿Ö³ÄÇϸé ÀÌÀü¿¡-ºÎÇÕµÈ ¹®ÀÚ¸¦ ÃÖÁ¾ ºÎÇÕ °á°ú¿¡¼­ »©¹ö¸®±â ¶§¹®ÀÔ´Ï´Ù. ¿¹¸¦ µé¾î, foo\Kbar´Â "foobar"¿¡ ºÎÇÕÇÏÁö¸¸ "bar"¿¡ ºÎÇÕÇß´Ù°í º¸°íÇÕ´Ï´Ù.

+

°ü·Ã Ç׸ñ: Á¤±Ô Ç¥Çö½ÄÀº RegExMatch(), RegExReplace(), ±×¸®°í SetTitleMatchMode°¡ Áö¿øÇÕ´Ï´Ù.

+

¸¶Áö¸· ´çºÎ: ÀÌ ÆäÀÌÁö°¡ ¾ÆÁÖ »ç¿ëµÇ´Â RegEx Ư¡ÀÇ ´ëºÎºÐÀ» ´Ù·ç°í ÀÖÁö¸¸, ÀÌ ¸»°íµµ Á¶°ÇÀû ºÎºÐ ÆÐÅÏ °°ÀÌ, ŽÇèÇØ º¼ ¸¸ÇÑ ¼ö ¸¹Àº Ư¡ÀÌ ÀÖ½À´Ï´Ù. ¿ÏÀüÇÑ PCRE ¸Å´º¾óÀº www.pcre.org/pcre.txt¿¡ ÀÖ½À´Ï´Ù.

+

 

+ + diff --git a/src/docs/misc/RegExCallout.htm b/src/docs/misc/RegExCallout.htm new file mode 100644 index 0000000..54bc546 --- /dev/null +++ b/src/docs/misc/RegExCallout.htm @@ -0,0 +1,128 @@ + + +Regular Expression Callouts + + + + + + + +

Á¤±Ô Ç¥Çö½Ä Callouts [AHK_L 14+]

+ +

¿ÜºÎÈ£Ãâ(Callouts)Àº Á¤±Ô Ç¥Çö½Ä ÀÏÄ¡ ÀÛ¾÷ Áß°£¿¡ Àӽ÷ΠÁ¦¾î¸¦ ½ºÅ©¸³Æ®¿¡ ³Ñ±â´Â ¼ö´ÜÀ» Á¦°øÇÕ´Ï´Ù. PCRE-Ç¥ÁØ callout Ư¡¿¡ °üÇÑ ´õ ÀÚ¼¼ÇÑ Á¤º¸´Â pcre.txt¸¦ ÂüÁ¶ÇϽʽÿÀ.

+ +

ÄݾƿôÀº ÇöÀç RegExMatch ±×¸®°í RegExReplace¸¸ Áö¿øÇÕ´Ï´Ù.

+ +

±¸¹®

+ +

¿ÀÅäÇÖÅ°¿¡¼­ callout ±¸¹®Àº (?CNumber:Function)ÀÔ´Ï´Ù. Number¿Í Function ¸ðµÎ ¼±ÅÃÀûÀÔ´Ï´Ù. ½ÖÁ¡ ':'Àº Function°¡ ÁöÁ¤µÇ¾úÀ» °æ¿ì¿¡¸¸ Çã¿ëµË´Ï´Ù. Number¸¦ »ý·«ÇÏ¸é ¼±ÅÃÀûÀÔ´Ï´Ù. Function°¡ ÁöÁ¤µÇ¾úÁö¸¸ »ç¿ëÀÚ-Á¤ÀÇ ÇÔ¼öÀÇ À̸§ÀÌ ¾Æ´Ï¸é, ÄÄÆÄÀÏ ¿¡·¯°¡ ÀϾ°í ÆÐÅÏ-ÀÏÄ¡°¡ ½ÃÀÛµÇÁö ¾Ê½À´Ï´Ù.

+ +

+FunctionÀ» »ý·«Çϸé, ÇÔ¼ö À̸§À» ºìµå½Ã pcre_calloutÀ̶ó´Â À̸§ÀÇ º¯¼ö¿¡ ÁöÁ¤ÇØ¾ß ÇÕ´Ï´Ù. ÀÌ À̸§À¸·Î Àü¿ª º¯¼ö¿Í Áö¿ª º¯¼ö°¡ ¸ðµÎ Á¸ÀçÇϸé, Áö¿ª º¯¼ö°¡ ¿ì¼± ¼øÀ§¸¦ °®½À´Ï´Ù. pcre_callout¿¡ »ç¿ëÀÚ-Á¤ÀÇ ÇÔ¼ö À̸§ÀÌ ¾øÀ¸¸é, FunctionÀÌ »ý·«µÈ calloutsÀº ¹«½ÃµË´Ï´Ù.

+ +

Callout ÇÔ¼ö

+ +
Function(Match, CalloutNumber, FoundPos, Haystack, NeedleRegEx)
+{
+    ...
+}
+

Callout ÇÔ¼ö´Â ¸Å°³º¯¼ö¸¦ 5 °³ ±îÁö Á¤ÀÇÇÒ ¼ö ÀÖ½À´Ï´Ù:

+ +

+ÀÌ À̸§µéÀº ±×³É Á¦½Ã ¿ëÀÏ »ÓÀÔ´Ï´Ù. ½ÇÁ¦ À̸§Àº ´Ù¸¦ ¼ö ÀÖ½À´Ï´Ù.

+ +

ÆÐÅÏ-ÀÏÄ¡´Â Äݾƿô ÇÔ¼öÀÇ °á°ú¿¡ µû¶ó °è¼Ó ÁøÇàµÇ°Å³ª ½ÇÆÐÇÕ´Ï´Ù:

+ + +

¿¹¸¦ µé¾î:

+ +
Haystack = The quick brown fox jumps over the lazy dog.
+RegExMatch(Haystack, "i)(The) (\w+)\b(?CCallout)")
+Callout(m) {
+    MsgBox m=%m%`nm1=%m1%`nm2=%m2%
+    return 1
+}
+

+À§ÀÇ ¿¹Á¦¿¡¼­, Func´Â Äݾƿô ¾ÕÀÇ ÆÐÅÏ ÀϺο¡ ºÎÇÕÇÏ´Â ºÎ¹®ÀÚ¿­¸¶´Ù ÇÑ ¹ø¾¿ È£ÃâµË´Ï´Ù. +\b´Â ºÎÇÕ¿¡¼­ ºÒ¿ÏÀüÇÑ ´Ü¾îµéÀ» ¹èÁ¦ÇÏ´Â µ¥ »ç¿ëµË´Ï´Ù. ¿¹¸¦ µé¾î The quic, The qui, The qu, µîµîÀº ´Ü¾î°¡ ¾Æ´Ï¹Ç·Î Á¦¿ÜµË´Ï´Ù.

+ +

EventInfo

+ +

+A_EventInfo¸¦ ÅëÇÏ¿© pcre_callout_block ±¸Á¶Ã¼¿¡ Á¢±ÙÇϸé Ãß°¡ Á¤º¸¸¦ ¾òÀ» ¼ö ÀÖ½À´Ï´Ù .

+ +
version           := NumGet(A_EventInfo,  0, "Int")
+callout_number    := NumGet(A_EventInfo,  4, "Int")
+offset_vector     := NumGet(A_EventInfo,  8)
+subject           := NumGet(A_EventInfo,  8 + A_PtrSize)
+subject_length    := NumGet(A_EventInfo,  8 + A_PtrSize*2, "Int")
+start_match       := NumGet(A_EventInfo, 12 + A_PtrSize*2, "Int")
+current_position  := NumGet(A_EventInfo, 16 + A_PtrSize*2, "Int")
+capture_top       := NumGet(A_EventInfo, 20 + A_PtrSize*2, "Int")
+capture_last      := NumGet(A_EventInfo, 24 + A_PtrSize*2, "Int")
+pad := A_PtrSize=8 ? 4 : 0  ; Compensate for 64-bit data alignment.
+callout_data      := NumGet(A_EventInfo, 28 + pad + A_PtrSize*2)
+pattern_position  := NumGet(A_EventInfo, 28 + pad + A_PtrSize*3, "Int")
+next_item_length  := NumGet(A_EventInfo, 32 + pad + A_PtrSize*3, "Int")
+if version >= 2
+    mark   := StrGet(NumGet(A_EventInfo, 36 + pad + A_PtrSize*3, "Int"), "UTF-8")
+
+

+´õ ÀÚ¼¼ÇÑ Á¤º¸´Â pcre.txt, NumGet ±×¸®°í A_PtrSize¸¦ ÂüÁ¶ÇϽʽÿÀ.

+ +

Auto-Callout

+ +

+ÆÐÅÏÀÇ ¿É¼Ç¿¡ C¸¦ Æ÷ÇÔÇϸé auto-callout ¸ðµå°¡ ÄÑÁý´Ï´Ù. ÀÌ ¸ðµå¿¡¼­ (?C255)¿Í µ¿µîÇÑ ÄݾƿôÀÌ ÆÐÅÏÀÇ °¢ Ç׸ñ ¾Õ¿¡ »ðÀԵ˴ϴÙ. ¿¹¸¦ µé¾î, ´ÙÀ½ ÅÛÇø´À» »ç¿ëÇϸé Á¤±Ô Ç¥Çö½ÄÀ» µð¹ö±×ÇÒ ¼ö ÀÖ½À´Ï´Ù:

+ +
; ±âº» Äݾƿô ÇÔ¼ö¸¦ ¼³Á¤ÇÕ´Ï´Ù.
+pcre_callout = DebugRegEx
+
+; ÀÚµ¿-Äݾƿô ¿É¼Ç C¸¦ °¡Áö°í RegExMatch¸¦ È£ÃâÇÕ´Ï´Ù.
+RegExMatch("xxxabc123xyz", "C)abc.*xyz")
+
+DebugRegEx(Match, CalloutNumber, FoundPos, Haystack, NeedleRegEx)
+{
+    ; ´ÙÀ½ Çʵåµé¿¡ ´ëÇÑ ¼³¸íÀº pcre.txt¸¦ ÂüÁ¶ÇϽʽÿÀ.
+    start_match       := NumGet(A_EventInfo, 12 + A_PtrSize*2, "Int")
+    current_position  := NumGet(A_EventInfo, 16 + A_PtrSize*2, "Int")
+    pad := A_PtrSize=8 ? 4 : 0
+    pattern_position  := NumGet(A_EventInfo, 28 + pad + A_PtrSize*3, "Int")
+    next_item_length  := NumGet(A_EventInfo, 32 + pad + A_PtrSize*3, "Int")
+
+    ; ´ÙÀ½°ú °°ÀÌ Ç¥½Ã: >>ÇöÀç ºÎÇÕ<<.
+    _HAYSTACK:=SubStr(Haystack, 1, start_match)
+        . ">>" SubStr(Haystack, start_match + 1, current_position - start_match)
+        . "<<" SubStr(Haystack, current_position + 1)
+    
+    ; ´ÙÀ½°ú °°ÀÌ Ç¥½Ã: >>Æò°¡µÉ ´ÙÀ½ Ç׸ñ<<.
+    _NEEDLE:=  SubStr(NeedleRegEx, 1, pattern_position)
+        . ">>" SubStr(NeedleRegEx, pattern_position + 1, next_item_length)
+        . "<<" SubStr(NeedleRegEx, pattern_position + 1 + next_item_length)
+    
+    ListVars
+    ; °è¼ÓÇÏ·Á¸é Pause¸¦ ´©¸£½Ê½Ã¿À.
+    Pause
+}
+ +

³íÆò

+ +

+ÄݾƿôÀº ÇöÀçÀÇ ÀÇ»ç-¾²·¹µå¿¡¼­ ½ÇÇàµË´Ï´Ù. ±×·¯³ª Äݾƿô ÇÔ¼ö°¡ ¹ÝȯµÈ ÈÄ¿¡ A_EventInfoÀÇ ÀÌÀü °ªÀÌ º¹±¸µË´Ï´Ù. RegExMatch ¶Ç´Â RegExReplace°¡ µ¹¾Æ¿À±â ¹Ù·Î Àü±îÁö ErrorLevelÀº ¼³Á¤µÇÁö ¾Ê½À´Ï´Ù.

+

+PCRE´Â ¾î¶² °æ¿ì¿¡ ºÎÇÕÀÌ ºÒ°¡´ÉÇÏ´Ù°í ÆÇ´ÜÇϸé ÀÏÂï Ãë¼ÒµÇµµ·Ï ÃÖÀûÈ­µÇ¾î ÀÖ½À´Ï´Ù. ±×·± °æ¿ì¶ó¸é ¸ðµç Äݾƿô¿¡ ´ëÇÏ¿© ÀÌ·± ÃÖÀûÈ­¸¦ ²ø ÇÊ¿ä°¡ ÀÖ½À´Ï´Ù. ÆÐÅÏÀÇ Ã³À½¿¡ (*NO_START_OPT) ¸¦ ÁöÁ¤ÇÏ¸é µË´Ï´Ù. ÀÌ ±â´ÉÀº v1.1.05 ÀÌ»óÀ» ¿ä±¸ÇÕ´Ï´Ù.

+ + + diff --git a/src/docs/misc/Remap.htm b/src/docs/misc/Remap.htm new file mode 100644 index 0000000..c7b3618 --- /dev/null +++ b/src/docs/misc/Remap.htm @@ -0,0 +1,204 @@ + + +Remapping Keys and Buttons + + + + + + + + + +

Å°¿Í ¹öÆ° ¸®¸ÊÇϱâ

+ +

µé¾î°¡´Â ¸»

+

+ÇÑ°è: ¾Æ·¡¿¡ ±â¼úÇÏ´Â ¿ÀÅäÇÖÅ°ÀÇ ¸®¸ÊÇΠƯ¡Àº ÀϹÝÀûÀ¸·Î À©µµ¿ìÁî ·¹Áö½ºÆ®¸®¸¦ ÅëÇÏ¿© ¸®¸ÊÇÎ ÇÏ´Â °Í¿¡ ºñÇØ ¼ø¼öÇÏÁö ¸øÇϸç È¿°úµµ ±×¿¡ ¸ø ¹ÌĨ´Ï´Ù. °¢ Á¢±Ù¹ýÀÇ ÀåÁ¡°ú ´ÜÁ¡¿¡ °üÇÑ °ÍÀº ·¹Áö½ºÆ®¸® ¸®¸ÊÇÎÀ» ÂüÁ¶ÇϽʽÿÀ.

+ +

Å°º¸µå¿Í ¸¶¿ì½º ¸®¸ÊÇϱâ

+

³»Àå ¸®¸ÊÇΠƯ¡ÀÇ ±¸¹®Àº OriginKey::DestinationKeyÀÔ´Ï´Ù. ¿¹¸¦ µé¾î, ´ÙÀ½ ÁÙ¸¸ µé¾îÀÖ´Â ½ºÅ©¸³Æ®´Â "a" Å°¸¦ ¸¶Ä¡ "b" Űó·³ ÇൿÇÏ°Ô ¸¸µì´Ï´Ù:

+
a::b
+

+À§ÀÇ ¿¹Á¦´Â "b" Å° ÀÚü¸¦ º¯°æÇÏÁö ¾Ê½À´Ï´Ù. "b" Å°´Â °è¼ÓÇؼ­ "b" Å°´­¸²À» Àü¼ÛÇÕ´Ï´Ù. ´ÙÀ½ ¿¹Á¦¿Í °°ÀÌ ´Ù¸¥ °Í¿¡ ¸®¸ÊÇÏÁö¸¸ ¾Ê´Â´Ù¸é ¸»ÀÔ´Ï´Ù:

+
a::b
+b::a
+

+À§ÀÇ ¿¹Á¦´Â ¼Ò¹®ÀÚ¸¦ »ç¿ëÇÕ´Ï´Ù. ´ëºÎºÐÀÇ ¸ñÀû¿¡ ¼Ò¹®ÀÚ¸¦ ±ÇÇÕ´Ï´Ù. ¿Ö³ÄÇÏ¸é »óÀÀÇÏ´Â ´ë¹®ÀÚµµ ¸®¸ÊµÇ±â ¶§¹®ÀÔ´Ï´Ù (Áï, CapslockÀÌ "ÄÑÁ®" Àְųª Shift Å°°¡ ´­¸®¸é ´ë¹®ÀÚ°¡ Àü¼ÛµË´Ï´Ù). ´ëÁ¶ÀûÀ¸·Î, ´ë¹®ÀÚ¸¦ ¿À¸¥ÂÊ¿¡ ÁöÁ¤ÇÏ¸é ´ë¹®ÀÚ¸¦ °­Á¦ÇÕ´Ï´Ù. ¿¹¸¦ µé¾î, ´ÙÀ½ ÁÙÀº (CapslockÀÌ ²¨Á® ÀÖ´Â ÇÑ) "a"³ª "A"¸¦ ´©¸¦ ¶§ ´ë¹®ÀÚ B¸¦ »ý»êÇÕ´Ï´Ù:

+
a::B
+

 

+

+¸¶¿ì½º ¸®¸ÊÇÎ: Å°º¸µå ´ë½Å¿¡ ¸¶¿ì½º¸¦ ¸®¸ÊÇÏ·Á¸é °°Àº Á¢±Ù¹ýÀ» »ç¿ëÇÕ´Ï´Ù. ¿¹¸¦ µé¾î:

+ + + + + + + + + + + + + +
MButton::Shift°¡¿îµ¥ ¹öÆ°À» ¸¶Ä¡ Shift Űó·³ ÇൿÇÏ°Ô ¸¸µì´Ï´Ù.
XButton1::LButton³× ¹ø° ¸¶¿ì½º ¹öÆ°À» ¿ÞÂÊ ¹öưó·³ ÇàÀ§ÇÏ°Ô ¸¸µì´Ï´Ù.
RAlt::RButton¿À¸¥ÂÊ Alt Å°¸¦ ¿À¸¥ÂÊ ¸¶¿ì½º ¹öÆ° ó·³ ÇàÀ§ÇÏ°Ô ¸¸µì´Ï´Ù.
+

 

+

´Ù¸¥ À¯¿ëÇÑ ¸®¸ÊÇÎ:

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Capslock::CtrlCapslockÀ» Control Å°°¡ µÇµµ·Ï ¸¸µì´Ï´Ù. CapslockÀ» ±×´ë·Î ÄÑ°í ²ø ¼ö ÀÖµµ·Ï Çϱâ À§ÇØ, ¸ÕÀú +Capslock::Capslock ¸®¸ÊÇÎÀ» Ãß°¡ÇÕ´Ï´Ù. ÀÌ·¸°Ô Çϸé Shift Å°¸¦ ´©¸¥ ä CapslockÀ» ´©¸¦ ¶§ CapslockÀ» Åä±ÛÇÕ´Ï´Ù. µÎ ¸®¸ÊÇÎ ¸ðµÎ Ãß°¡ ¼ö½ÄÅ°°¡ ´­·Á ÀÖ´Â °ÍÀ» Çã¿ëÇϱ⠶§¹®¿¡, ´õ ±¸Ã¼ÀûÀ¸·Î +Capslock::Capslock ¸®¸ÊÇÎÀ» ¸ÕÀú ¹èÄ¡ÇØ¾ß Capslock::CtrlÀÌ ÀÛµ¿ÇÒ ¼ö ÀÖ½À´Ï´Ù.
XButton2::^LButton´Ù¼¸ ¹ø° ¸¶¿ì½º ¹öÆ°À» (XButton2) Control-LeftClickÀÌ µÇµµ·Ï ¸¸µì´Ï´Ù.
RAlt::AppsKey¿À¸¥ÂÊ Alt Å°´ÂApps Å°°¡ µË´Ï´Ù (¹®¸Æ ¸Þ´º¸¦ ¿©´Â Å°ÀÔ´Ï´Ù).
RCtrl::RWin¿À¸¥ÂÊ Control Å°¸¦ ¿À¸¥ÂÊ Windows Å°°¡ µÇµµ·Ï ¸¸µì´Ï´Ù.
Ctrl::AltControl Å°¸¦ Alt Űó·³ ÇàÀ§Çϵµ·Ï ¸¸µì´Ï´Ù. ±×·¸Áö¸¸, alt-tab ¹®Á¦¸¦ ÂüÁ¶ÇϽʽÿÀ.
^x::^cControl-X°¡ Control-C¸¦ »ý»êÇÕ´Ï´Ù. ¶Ç Control-Alt-X´Â Control-Alt-C, µîµîÀ» »ý»êÇÕ´Ï´Ù.
RWin::Return¿À¸¥ÂÊ Windows Å°¸¦ ºÒ´ÉÀ¸·Î ¸¸µì´Ï´Ù. ´Ü¼øÈ÷ returnÀ» ÇÒ´çÇß½À´Ï´Ù.
+

+ÀÌ ¿¹Á¦µéÀ» ½ÃÇèÇØ º¼ ¼ö ÀÖ½À´Ï´Ù. »õ ÅؽºÆ® ÆÄÀÏ·Î "Remap.ahk"¿Í °°ÀÌ º¹»çÇÑ ´ÙÀ½, ±× ÆÄÀÏÀ» ±âµ¿½Ãŵ´Ï´Ù.

+

+¿ÏÀüÇÑ Å°¸ñ·Ï°ú ¸¶¿ì½º ¹öÆ° À̸§ ¸ñ·ÏÀº Å° ¸®½ºÆ®¸¦ ÂüÁ¶ÇϽʽÿÀ.

+ +

³íÆò

+

+Áö½Ã¾î #IfWinActive/Exist¸¦ »ç¿ëÇÏ¸é ¼±ÅÃµÈ ¸®¸ÊÇÎÀ» ÁöÁ¤ÇÑ Ã¢¿¡ ´ëÇؼ­¸¸ ÄÓ ¼ö ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î:

+ +
#IfWinActive ahk_class Notepad
+a::b  ;  'a'Å°°¡ 'b' Å°¸¦ Àü¼ÛÇϵµ·Ï ¸¸µéÁö¸¸, ¿ÀÁ÷ ³ëÆ® ÆÐµå ¾È¿¡¼­¸¸ ÀϾ´Ï´Ù.
+#IfWinActive  ; ÀÕ´Ù¸£´Â ¸®¸ÊÇΰú ÇÖÅ°°¡ ¸ðµç â¿¡ È¿·ÂÀ» ¹ÌĨ´Ï´Ù.
+

+Å°³ª ¸¶¿ì½º¸¦ ¸®¸ÊÇÎ ÇÏ´Â ÀÏÀº ´ÙÀ½°ú °°Àº °üÁ¡¿¡¼­ "¿Ïº®ÇÕ´Ï´Ù":

+ +

¸®¸ÊµÈ Å°¸¦ Á¤»ó Űó·³ Ã˹߽Ãų ¼ö ÀÖÁö¸¸, ±âº»°ªÀ¸·Î ¸¶¿ì½º ÇÖÅ°³ª °¥°í¸® ÇÖÅ°´Â Ã˹߽Ãų ¼ö ¾ø½À´Ï´Ù. +(ListHotkeys¸¦ »ç¿ëÇÏ¸é ¾î´À ÇÖÅ°°¡ "°¥°í¸®")ÀÎÁö ¾Ë ¼ö ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î, ¸®¸ÊÇÎ a::b°¡ ÀÛµ¿ ÁßÀÏ ¶§, Ctrl-Alt-A¸¦ ´©¸£¸é ^!b ÇÖÅ°°¡ Ã˹ߵ˴ϴÙ. ¿ÀÁ÷ ^!b°¡ °¥°í¸® ÇÖÅ°°¡ ¾Æ´Ò °æ¿ì¿¡¸¸ ±×·¸½À´Ï´Ù. ^!b°¡ °¥°í¸® ÇÖÅ°ÀÏ °æ¿ì, ^!a¸¦ ÇÖÅ°·Î Á¤ÀÇÇϸé Ctrl-Alt-A ´Â Ctrl-Alt-B¿Í °°Àº ÇàÀ§¸¦ ¼öÇàÇÕ´Ï´Ù. ¿¹¸¦ µé¾î:

+
a::b
+^!a::
+^!b::
+ToolTip You pressed %A_ThisHotkey%.
+return
+

+´ë¾ÈÀûÀ¸·Î, v1.1.06 ÀÌÈÄ¿¡¼­, #InputLevel¸¦ »ç¿ëÇÏ¸é ±âº» ÇàÀ§¸¦ ¿À¹ö¶óÀ̵åÇÒ ¼ö ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î:

+
#InputLevel 1
+a::b
+
+#InputLevel 0
+^!b::
+ToolTip You pressed %A_ThisHotkey%.
+return
+

+SendMode°¡ ÀÚµ¿ ½ÇÇà ¼½¼Ç¿¡ »ç¿ëÁßÀ̸é (½ºÅ©¸³Æ® »ó´Ü ºÎºÐ), ¸ðµç ¸®¸ÊÇο¡ ¿µÇâÀ» ¹ÌĨ´Ï´Ù. ±×·¸Áö¸¸, ¸®¸ÊÇÎÀº Send {Blind}¸¦ »ç¿ëÇÏ°í SendPlay mode´Â ¿ÏÀüÇÏ°Ô {Blind}¸¦ Áö¿øÇÏÁö´Â ¸øÇϱ⠶§¹®¿¡, ¾î¶² ¸®¸ÊÇÎÀº SendPlay ¸ðµå¿¡¼­ Á¦´ë·Î ÀÛµ¿ÇÏÁö ¾ÊÀ» ¼öµµ ÀÖ½À´Ï´Ù (Ư, Control, Shift, Alt, ±×¸®°í Win). À̸¦ µ¹¾Æ°¡·Á¸é, ¸®¸ÊÇÎÀ» »ç¿ëÇÒ ¶§ SendPlay¸¦ ÀÚµ¿-½ÇÇà ¼½¼Ç¿¡ »ç¿ëÇÏÁö ¸¶½Ê½Ã¿À; ±× ´ÙÀ½ºÎÅÍ ´Ù¸¥ °÷¿¡´Â ¸í·É¾î SendPlay vs. Send¸¦ »ç¿ëÇÏ½Ã¸é µË´Ï´Ù. ´ë¾ÈÀûÀ¸·Î, ¸®¸ÊÇÎÀ» ÇÖÅ°·Î ¹ø¿ªÇÒ ¼ö ÀÖ½À´Ï´Ù. (¾Æ·¡¿¡ ±â¼úÇÏ´Â ¹Ù¿Í °°ÀÌ) ¸í½ÃÀûÀ¸·Î SendEvent vs. Send¸¦ È£ÃâÇÕ´Ï´Ù.

+

+½ºÅ©¸³Æ®°¡ ±âµ¿ÇÒ ¶§, °¢ ¸®¸ÊÇÎÀº ÇÑ ½ÖÀÇ ÇÖÅ°·Î ¹ø¿ªµË´Ï´Ù. ¿¹¸¦ µé¾î, a::b°¡ µé¾îÀÖ´Â ½ºÅ©¸³Æ®´Â ½ÇÁ¦·Î´Â ´ë½Å¿¡ ´ÙÀ½ÀÇ µÎ ÇÖÅ°°¡ µé¾î ÀÖ½À´Ï´Ù:

+
*a::
+SetKeyDelay -1   ; ¸ñÇ¥ Å°°¡ ¸¶¿ì½º ¹öÆ°À̸é, ´ë½Å¿¡ SetMouseDelay°¡ »ç¿ëµË´Ï´Ù.
+Send {Blind}{b DownTemp}  ; DownTemp´Â Down°ú °°½À´Ï´Ù. ´Ü ´Ù¸¥ Send ¸í·É¾î´Â "b" °¡ SendÇÏ´Â µ¿¾È ´­·Á ÀÖÀ» °ÍÀ̶ó°í °¡Á¤ÇÏÁö ¾Ê½À´Ï´Ù.
+return
+
+*a up::
+SetKeyDelay -1  ; ¿Ö ´­¸²-Áö¼Ó½Ã°£ÀÌ ÀÌ SetKeyDelays Áß Çϳª·Î ÁöÁ¤µÇÁö ¾Ê´ÂÁö ±× ÀÌÀ¯´Â ¾Æ·¡¸¦ º¸½Ê½Ã¿À.
+Send {Blind}{b Up}
+return
+

±×·¸Áö¸¸, À§ÀÇ ÇÖÅ°´Â ´ÙÀ½°ú °°Àº »óȲ¿¡¼­ ´Þ¶óÁý´Ï´Ù:

+
    +
  1. ¼Ò½º Å°°¡ LCtrlÀÌ°í ¸ñÇ¥ Å°°¡ Alt Å°ÀÏ ¶§, ÁÙ Send {Blind}{LAlt DownTemp}´Â Send {Blind}{LCtrl Up}{LAlt DownTemp}·Î ±³Ã¼µË´Ï´Ù. ¼Ò½º°¡ RCtrlÀÏ °æ¿ìµµ ¸¶Âù°¡ÁöÀÔ´Ï´Ù. ´Ü, {RCtrl up}ÀÌ »ç¿ëµÇ´Â °æ¿ì´Â ¿¹¿ÜÀÔ´Ï´Ù.
  2. +
  3. Å°º¸µå Å°°¡ ¸¶¿ì½º ¹öÆ°À¸·Î ¸®¸ÊÁßÀÏ ¶§ (¿¹, RCtrl::RButton), À§ÀÇ ÇÖÅ°´Â SetKeyDelay ´ë½Å¿¡ SetMouseDelay¸¦ »ç¿ëÇÕ´Ï´Ù. °Ô´Ù°¡, À§ÀÇ Ã¹ ÇÖÅ°´Â ´ÙÀ½À¸·Î ±³Ã¼µË´Ï´Ù. ÀÌ ¶§¹®¿¡ Å°º¸µåÀÇ ÀÚµ¿-¹Ýº¹ Ư¡Àº ¹Ýº¹ÀûÀÎ ¸¶¿ì½º Ŭ¸¯À» ¸¸µé¾î ³»Áö ¸øÇÕ´Ï´Ù: +
    *RCtrl::
    +SetMouseDelay -1
    +if not GetKeyState("RButton")  ; Áï, ¿À¸¥ÂÊ ¹öÆ°ÀÌ ¾ÆÁ÷ ´­¸®Áö ¾Ê¾Ò½À´Ù.
    +    Send {Blind}{RButton DownTemp}
    +return
    +
  4. +
+

SetKeyDelayÀÇ µÎ ¹ø° ¸Å°³º¯¼ö´Â (´­¸² Áö¼Ó ½Ã°£) À§ÀÇ ÇÖÅ°¿¡¼­ »ý·«µË´Ï´Ù. {b down}°ú {b up}°ú °°ÀÌ ´©¸§¸¸ Àְųª ¶À¸¸ ÀÖ´Â À̺¥Æ®¿¡´Â ´­¸² Áö¼Ó ½Ã°£ÀÌ Àû¿ëµÇÁö ¾Ê±â ¶§¹®ÀÔ´Ï´Ù. ±×·¸Áö¸¸, Shift/Ctrl/Alt/Win Å°ÀÇ »óÅ º¯È­¿¡´Â Àû¿ëµË´Ï´Ù. ¿¹¸¦ µé¾î a::B³ª a::^b¿Í °°Àº ¸®¸ÊÇο¡ ¿µÇâÀ» ¹ÌĨ´Ï´Ù. °á·ÐÀûÀ¸·Î, ½ºÅ©¸³Æ®°¡ ÀÚµ¿-½ÇÇà ¼½¼Ç¸¦ ÅëÇÏ¿© È¿°ú¸¦ ÁØ ¸ðµç ´©¸§ Áö¼Ó ½Ã°£Àº ¸ðµç ¸®¸ÊÇο¡ Àû¿ëµË´Ï´Ù.

+

+ÇÑ ½ÖÀÇ Å°¸¦ Á÷Á¢ÀûÀ¸·Î ÇϳªÀÇ Å°¿¡ ¸®¸ÊÇÒ ¼ö´Â ¾øÁö¸¸ (¿¹, a & c::b°ú °°ÀÌ ÀÛ¼ºÇÏ´Â °ÍÀº ¹«È¿ÀÔ´Ï´Ù), ¸í½ÃÀûÀ¸·Î Àú À§¿¡ ÀÖ´Â ¿¹Á¦·ÎºÎÅÍ À§ ¾Æ·¡ ÇÖÅ°¸¦ Ãß°¡Çϸé ÀÌ È¿°ú¸¦ ¾òÀ» ¼ö ÀÖ½À´Ï´Ù: ±×³É *a::¸¦ with a & c::·Î, ±×¸®°í *a up::¸¦ a & c up::·Î ±³Ã¼Çϱ⸸ ÇÏ¸é µË´Ï´Ù.

+

+¸®¸ÊÇÎÀº À§¿¡ ±â¼úÇÑ ¹Ù¿Í °°ÀÌ ÇÖÅ°·Î ¹ø¿ªµÇ±â ¶§¹®¿¡, Suspend ¸í·É¾î¿¡ ¿µÇâÀ» ¹Þ½À´Ï´Ù. ºñ½ÁÇÏ°Ô, Hotkey ¸í·É¾î´Â ¸®¸ÊÇÎÀ» º¯°æÇϰųª ²ø ¼ö ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î, ´ÙÀ½ µÎ ¸í·É¾î´Â ¸®¸ÊÇÎ a::b¸¦ ²ü´Ï´Ù.

+
Hotkey, *a, off
+Hotkey, *a up, off
+

+Alt-tab ¹®Á¦: +Å°³ª ¸¶¿ì½º ¹öÆ°À» Alt Å°°¡ µÇµµ·Ï ¸®¸ÊÇß´Ù¸é, ±× Å°´Â ¾Æ¸¶µµ Á¦´ë·Î alt-tabÀ» ÀÛµ¿½ÃÅ°Áö ¸øÇÒ °ÍÀÔ´Ï´Ù. °¡´ÉÇÑ ÇØ°áÃ¥Àº ÇÖÅ° *Tab::Send {Blind}{Tab}¸¦ Ãß°¡ÇÏ´Â °ÍÀÔ´Ï´Ù -- ±×·¯³ª ÁøÂ¥ ÇÖÅ°°¡ ¾ËÆ® ÅÇÀ» ¼öÇàÇÒ ¶§ °£¼·À» ÀÏÀ¸Å³ °¡´É¼ºÀÌ ³ô´Ù´Â Á¡À» ¸í½ÉÇϽʽÿÀ. ±×·¯¹Ç·Î, ¿ÀÁ÷ ¸®¸ÊµÈ alt-tab ÇÖÅ°¸¸ ´Üµ¶À¸·Î »ç¿ëÇÒ °æ¿ì¿¡¸¸ »ç¿ëÀ» °í·ÁÇØ¾ß ÇÕ´Ï´Ù.

+

+Å° ¸®½ºÆ® ÆäÀÌÁö¿¡ ³ª¿­µÈ Å°¿Í ¸¶¿ì½º ¹öÆ° ¸»°íµµ, ¼Ò½º Å°·Î´Â °¡»ó Å° (VKnn) ¶Ç´Â ½ºÄµ ÄÚµå (SCnnn)µµ °¡´ÉÇÕ´Ï´Ù. À̴ Ư¼ö Å° ÆäÀÌÁö¿¡ ±â¼úµÇ¾î ÀÖ½À´Ï´Ù. ¸ñÇ¥ Å°µµ ¸¶Âù°¡ÁöÀÔ´Ï´Ù. ´Ü, ¸ñÇ¥ Å°´Â ¼±ÅÃÀûÀ¸·Î °¡»ó Å° ´ÙÀ½¿¡ ½ºÄµ Äڵ带 ÁöÁ¤ÇÒ ¼öµµ ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î, sc01e::vk42sc030´Â ´ëºÎºÐÀÇ Å°º¸µå ¹èÄ¡µµ¿¡¼­ a::b°ú µ¿µîÇÕ´Ï´Ù.

+

+Å°¸¦ ¸®¸ÊÇϱ⠺¸´Ù ²ô·Á¸é, ±×³É ¹ÝȯµÇ´Â ÇÖÅ°·Î ¸¸µé¸é µË´Ï´Ù. ¿¹¸¦ µé¾î, F1::return´Â F1 Å°¸¦ ºÒ´ÉÀ¸·Î ¸¸µì´Ï´Ù.

+

+´ÙÀ½ Å°´Â ³»Àå ¸®¸ÊÇÎ ¸Þ½îµå°¡ Áö¿øÇÏÁö ¾Ê½À´Ï´Ù:

+ +

Å°º¸µå·Î ¸¶¿ì½º Ä¿¼­ À̵¿Çϱâ

+

+Å°º¸µå¸¦ »ç¿ëÇÏ¿© ¸¶¿ì½º Ä¿¼­¸¦ À̵¿ÇÒ ¼ö ÀÖ½À´Ï´Ù. ¿¹Á¦´Â ¿Ïº®ÇÏ°Ô ±â´ÉÀ» °®Ãá Keyboard-To-Mouse ½ºÅ©¸³Æ®¸¦ º¸½Ê½Ã¿À. ½ºÅ©¸³Æ®´Â ºÎµå·¯¿î ¸¶¿ì½º À̵¿°ú, °¡¼Ó, ±âŸ Ư¡À» Á¦°øÇϱ⠶§¹®¿¡, Å°º¸µå·Î ¸¶¿ì½º ÀÛ¾÷À» ¸¹ÀÌ ÇÒ °èȹÀÌ ÀÖ´Ù¸é ±ÇÀåÇÏ´Â Á¢±Ù¹ýÀÔ´Ï´Ù. ´ëÁ¶ÀûÀ¸·Î, ´ÙÀ½ ¿¹Á¦´Â Á» °£´ÜÇÕ´Ï´Ù:

+
*#up::MouseMove, 0, -10, 0, R  ; Win+UpArrow hotkey => Ä¿¼­¸¦ À§·Î À̵¿½Ãŵ´Ï´Ù
+*#Down::MouseMove, 0, 10, 0, R  ; Win+DownArrow => Ä¿¼­¸¦ ¾Æ·¡·Î À̵¿½Ãŵ´Ï´Ù
+*#Left::MouseMove, -10, 0, 0, R  ; Win+LeftArrow => Ä¿¼­¸¦ À§·Î ¿ÞÂÊÀ¸·Î½Ãŵ´Ï´Ù
+*#Right::MouseMove, 10, 0, 0, R  ; Win+RightArrow => Ä¿¼­¸¦ À§·Î ¿À¸¥ÂÊÀ¸·Î½Ãŵ´Ï´Ù
+
+*<#RCtrl::  ; LeftWin + RightControl => Left-click (Control/ShiftÀ» ´©¸¥ ä·Î Control-Click ¶Ç´Â Shift-Click).
+SendEvent {Blind}{LButton down}
+KeyWait RCtrl  ; Å°º¸µå ÀÚµ¿-¹Ýº¹ÀÌ ¸¶¿ì½º Ŭ¸¯À» ¹Ýº¹½ÃÅ°Áö ¸øÇϵµ·Ï ¸·½À´Ï´Ù.
+SendEvent {Blind}{LButton up}
+return
+
+*<#AppsKey::  ; LeftWin + AppsKey => Right-click
+SendEvent {Blind}{RButton down}
+KeyWait AppsKey  ; Å°º¸µå ÀÚµ¿-¹Ýº¹ÀÌ ¸¶¿ì½º Ŭ¸¯À» ¹Ýº¹½ÃÅ°Áö ¸øÇϵµ·Ï ¸·½À´Ï´Ù.
+SendEvent {Blind}{RButton up}
+return
+ +

·¹Áö½ºÆ®¸®ÀÇ "½ºÄµÄÚµå ¸Ê" ¸®¸ÊÇÎÇϱâ

+

ÀåÁ¡:

+ +

´ÜÁ¡:

+ +

·¹Áö½ºÆ®¸®¿¡ º¯°æÀ» Àû¿ëÇÏ´Â ¹ý: ·¹Áö½ºÆ®¸®¸¦ ÅëÇÏ¿© Å°¸¦ ¸®¸ÊÇÏ´Â µ¥ Àû¾îµµ µÎ °¡Áö ¹æ¹ýÀÌ ÀÖ½À´Ï´Ù:

+
    +
  1. KeyTweak (¹«·á¿þ¾î)¿Í °°Àº ÇÁ·Î±×·¥À» »ç¿ëÇÏ¿© ½Ã°¢ÀûÀ¸·Î Å°¸¦ ¸®¸ÊÇÕ´Ï´Ù. ´ë½Å ·¹Áö½ºÆ®¸®¸¦ º¯°æÇØ ÁÝ´Ï´Ù.
  2. +
  3. ¼öµ¿À¸·Î Å°¸¦ ¸®¸ÊÇÕ´Ï´Ù. .reg ÆÄÀÏ (Æò¹üÇÑ ÅؽºÆ®)¸¦ ¸¸µé¾î ·¹Áö½ºÆ®¸® ¾ÈÀ¸·Î ÀûÀçÇÏ¸é µË´Ï´Ù. ÀÌ ¹æ¹ýÀº www.autohotkey.com/forum/post-56216.html#56216¿¡ ¿¹½ÃµÇ¾î ÀÖ½À´Ï´Ù.
  4. +
+

°ü·Ã ÁÖÁ¦

+

Å°¿Í ¸¶¿ì½º ¹öÆ° ¸ñ·Ï
+GetKeyState
+Á¶À̽ºÆ½ ¸®¸ÊÇÎÇϱâ

+ + diff --git a/src/docs/misc/RemapJoystick.htm b/src/docs/misc/RemapJoystick.htm new file mode 100644 index 0000000..f85dbe3 --- /dev/null +++ b/src/docs/misc/RemapJoystick.htm @@ -0,0 +1,182 @@ + + +Remapping a Joystick to Keyboard or Mouse + + + + + + + + + +

Á¶À̽ºÆ½À» Å°º¸µå³ª ¸¶¿ì½º¿¡ ¸®¸ÊÇϱâ

+ + +

¸ñÂ÷

+ +

Áß¿äÇÑ °íÁö »çÇ×

+ +

Á¶À̽ºÆ½ ¹öÆ°ÀÌ Å°´­¸²À̳ª ¸¶¿ì½º Ŭ¸¯À» º¸³»µµ·Ï ¸¸µé±â

+

+¾Æ·¡¿¡ ¼¼ °¡Áö Á¢±Ù¹ýÀÌ ÀÖ½À´Ï´Ù. °¡Àå ½¬¿î ¹æ¹ý¿¡¼­ ½ÃÀÛÇÏ¿© °¡Àå º¹ÀâÇÑ ¹æ¹ýÀ¸·Î ³¡³³´Ï´Ù. º¹ÀâÇÑ ¹æ¹ýÀº ±¤¹üÀ§ÇÑ »óȲ¿¡ ÀÛµ¿ÇÕ´Ï´Ù (¿¹¸¦ µé¾î Å°³ª ¸¶¿ì½º ¹öÆ°À» ´©¸¥ ä·Î Àֱ⸦ ¿ä±¸ÇÏ´Â °ÔÀÓ).

+

¹æ¹ý #1: ÀÌ ¹æ¹ýÀº °£´ÜÇÑ Å°´­¸²°ú ¸¶¿ì½º Ŭ¸¯À» Àü¼ÛÇÕ´Ï´Ù. ¿¹¸¦ µé¾î:

+
Joy1::Send {Left}  ; ¹öÆ° #1ÀÌ ¿ÞÂÊ È­»ìÇ¥ Å° ´­¸²À» Àü¼ÛÇϵµ·Ï ¸¸µì´Ï´Ù.
+Joy2::Click  ; ¹öÆ° #2°¡ ¿ÞÂÊ ¸¶¿ì½º ¹öÆ° Ŭ¸¯À» Àü¼ÛÇϵµ·Ï ¸¸µì´Ï´Ù.
+Joy3::Send a{Esc}{Space}{Enter}  ; ¹öÆ° #3ÀÌ ±âÈ£ "a" ¿Í ´ÙÀ½¿¡ ÇǽŠ¹®ÀÚ, ½ºÆäÀ̽º, ±×¸®°í ¿£Å͸¦ Àü¼ÛÇϵµ·Ï ¸¸µì´Ï´Ù.
+Joy4::Send Sincerely,{Enter}John Smith  ; ¹öÆ° #4°¡ µÎ ÁÙÀÇ ¼­¸íÀ» º¸³»µµ·Ï ¸¸µì´Ï´Ù.
+

+¹öÆ°¿¡°Ô Çϳª ÀÌ»óÀÇ ¸í·É¾î¸¦ ¼öÇàÇϵµ·Ï ¸¸µé·Á¸é, ù ¸í·É¾î¸¦ ¹öÆ° À̸§ ¾Æ·¡¿¡ µÎ°í ¸¶Áö¸· ¸í·É¾î¸¦ returnÀ¸·Î ¸¸µé¸é µË´Ï´Ù. ¿¹¸¦ µé¾î:

+
Joy5::
+Run Notepad
+WinWait Untitled - Notepad
+WinActivate
+Send ÀÌ ÅؽºÆ®´Â ³ëÆ®Æе忡 ³ªÅ¸³³´Ï´Ù.{Enter}
+return
+

+¿ÏÀüÇÑ Å°¿Í ¸¶¿ì½º/Á¶À̽ºÆ½ ¹öÆ°¿¡ ´ëÇÑ Å° ¸ñ·ÏÀ» ÂüÁ¶ÇϽʽÿÀ.

+
+

+¹æ¹ý #2: ÀÌ ¹æ¹ýÀº Á¶À̽ºÆ½ ¹öÆ°À» ´©¸£°í ÀÖ´Â µ¿¾È Å°³ª ¸¶¿ì½º ¹öÆ°ÀÌ ¹Ýµå½Ã ´­·Á ÀÖ¾î¾ß ÇÏ´Â °æ¿ì¿¡ ÇʼöÀÔ´Ï´Ù. ´ÙÀ½ ¿¹Á¦´Â Á¶À̽ºÆ½ÀÇ µÎ ¹ø° ¹öÆ°ÀÌ ¿ÞÂÊ È­»ìÇ¥ Å°°¡ µÇµµ·Ï ¸¸µì´Ï´Ù:

+
Joy2::
+Send {Left down}  ; ¿ÞÂÊ È­»ìÇ¥ Å°¸¦ ´©¸¨´Ï´Ù.
+KeyWait Joy2  ; »ç¿ëÀÚ°¡ Á¶À̽ºÆ½ ¹öÆ°À» ¶¿ ¶§±îÁö ±â´Ù¸³´Ï´Ù.
+Send {Left up}  ; ¿ÞÂÊ È­»ìÇ¥ Å°¸¦ ¶Á´Ï´Ù.
+return
+
+

¹æ¹ý #3: ÀÌ ¹æ¹ýÀº ¹æ¹ý #2¿¡ ±â¼úµÈ À¯ÇüÀÇ Á¶À̽ºÆ½ ÇÖÅ°°¡ Çϳª ÀÌ»ó ÀÖ°í, Á¾Á¾ ±×·± ÇÖÅ°¸¦ µ¿½Ã¿¡ ´©¸£°í ¶¼¾î¾ß ÇÒ °æ¿ì¿¡ ÇʼöÀÔ´Ï´Ù. ´ÙÀ½ ¿¹Á¦´Â Á¶À̽ºÆ½ÀÇ ¼¼¹ø° ¹öÆ°ÀÌ ¿ÞÂÊ ¸¶¿ì½º ¹öÆ°ÀÌ µÇµµ·Ï ¸¸µì´Ï´Ù:

+
Joy3::
+Send {LButton down}   ; ¿ÞÂÊ ¸¶¿ì½º ¹öÆ°À» ´©¸¨´Ï´Ù.
+SetTimer, WaitForButtonUp3, 10
+return
+
+WaitForButtonUp3:
+if GetKeyState("Joy3")  ; ¹öÆ°ÀÌ ¿©ÀüÈ÷ ´­·Á ÀÖ½À´Ï´Ù. ±×·¡¼­ °è¼Ó ±â´Ù¸³´Ï´Ù.
+    return
+; ±×·¸Áö ¾ÊÀ¸¸é, ¹öÆ°À» ¶Ã½À´Ï´Ù.
+Send {LButton up}  ; ¿ÞÂÊ ¸¶¿ì½º ¹öÆ°À» ¶Á´Ï´Ù.
+SetTimer, WaitForButtonUp3, off
+return
+
+
+

ÀÚµ¿-¹Ýº¹ Å°´­¸²: ¾î¶² ÇÁ·Î±×·¥À̳ª °ÔÀÓÀº (¸¶Ä¡ Å°º¸µå¸¦ °è¼Ó ´©¸¥ ä·Î ÀÖ´Â °Íó·³) Å°°¡ ¹Ýº¹ÀûÀ¸·Î Àü¼ÛµÇ±â¸¦ ¿ä±¸ÇÕ´Ï´Ù. ´ÙÀ½ ¿¹Á¦´Â Á¶À̽ºÆ½ÀÇ µÎ ¹ø° ¹öÆ°À» ´©¸£°í ÀÖ´Â µ¿¾È ½ºÆäÀ̽º¹Ù Å°´­¸²À» ¹Ýº¹ÀûÀ¸·Î Àü¼ÛÇÕ´Ï´Ù:

+
Joy2::
+Send {Space down}   ; ½ºÆäÀ̹ٸ¦ ´©¸¨´Ï´Ù.
+SetTimer, WaitForJoy2, 30  ; ¹øÈ£¸¦ 30¿¡¼­ 20À̳ª 10À¸·Î ÁÙ¿© ´õ ºü¸£°Ô Å°¸¦ Àü¼ÛÇÕ´Ï´Ù. ´õ Áõ°¡½ÃÅ°¸é ´õ ´À¸®°Ô Àü¼ÛµË´Ï´Ù.
+return
+
+WaitForJoy2:
+if not GetKeyState("Joy2")  ; ¹öÆ°À» ¶Ã½À´Ï´Ù.
+{
+    Send {Space up}  ; ½ºÆäÀ̽º¹Ù¸¦ ¶Á´Ï´Ù.
+    SetTimer, WaitForJoy2, off  ; ¹öÆ° °üÁ¦¸¦ ¸ØÃä´Ï´Ù.
+    return
+}
+; À§´Â "¹ÝȯµÇÁö ¾Ê¾Ò±â ¶§¹®¿¡", ¹öÆ°Àº ¿©ÀüÈ÷ ´­¸° ä·Î ÀÖ½À´Ï´Ù.
+Send {Space down}  ; ¶Ç´Ù¸¥ ½ºÆäÀ̽º¹Ù Å°´­¸²À» Àü¼ÛÇÕ´Ï´Ù.
+return
+

¹®¸Æ-°¨Áö Á¶À̽ºÆ½ ¹öÆ°: Áö½Ã¾î #IfWinActive/Exist¸¦ »ç¿ëÇÏ¸é ¼±ÅÃµÈ Á¶À̽ºÆ½ ¹öÆ°ÀÌ È°¼ºÈ­ »óÅ ¶Ç´Â Á¸ÀçÇϴ âÀÇ Á¾·ù¿¡ µû¶ó ´Ù¸¥ ÇàÀ§¸¦ ¼öÇàÇϵµ·Ï (¶Ç´Â ÀüÇô ¸øÇϵµ·Ï) ¸¸µé ¼ö ÀÖ½À´Ï´Ù.

+

Á¶À̽ºÆ½À» ¸¶¿ì½ºÃ³·³ »ç¿ëÇϱâ: + +Joystick-To-Mouse ½ºÅ©¸³Æ®´Â Á¶À̽ºÆ½À» ±×ÀÇ ¹öÆ°°ú Ãà ÄÜÆ®·ÑÀ» ¸®¸ÊÇÎÇÏ¿© ¸¶¿ì½º·Î Å»¹Ù²Þ½Ãŵ´Ï´Ù.

+ +

Á¶À̽ºÆ½ Ãà ¶Ç´Â POV HatÀÌ Å°´­¸²À̳ª ¸¶¿ì½º Ŭ¸¯À» Àü¼ÛÇϵµ·Ï ¸¸µé±â

+

+½ºÅ©¸³Æ®°¡ Á¶À̽ºÆ½ ÃàÀ̳ª POV hatÀÇ ¿òÁ÷ÀÓ¿¡ ¹ÝÀÀÇϵµ·Ï ¸¸µé·Á¸é, SetTimer°ú GetKeyState¸¦ »ç¿ëÇϽʽÿÀ. ´ÙÀ½ ¿¹Á¦´Â Á¶À̽ºÆ½ÀÇ X¿Í Y ÃàÀ» ¸¶Ä¡ Å°º¸µå À§ÀÇ È­»ìÇ¥ Å° ±ºÃ³·³ ÇàÀ§ÇÏ°Ô ¸¸µì´Ï´Ù (»óÇÏÁ¿ì):

+
#Persistent  ; ½ºÅ©¸³Æ®¸¦ »ç¿ëÀÚ°¡ ¸í½ÃÀûÀ¸·Î Á¾·áÇÒ ¶§±îÁö ½ÇÇàÇÕ´Ï´Ù.
+SetTimer, WatchAxis, 5
+return
+
+WatchAxis:
+GetKeyState, JoyX, JoyX  ; X ÃàÀÇ À§Ä¡¸¦ ¾ò½À´Ï´Ù.
+GetKeyState, JoyY, JoyY  ; Y ÃàÀÇ À§Ä¡¸¦ ¾ò½À´Ï´Ù.
+KeyToHoldDownPrev = %KeyToHoldDown%  ; Prev´Â ÀÌÁ¦ ÀÌÀü¿¡ ³î¸° Å°¸¦ (ÀÖ´Ù¸é) º¸À¯ÇÕ´Ï´Ù.
+
+if JoyX > 70
+    KeyToHoldDown = Right
+else if JoyX < 30
+    KeyToHoldDown = Left
+else if JoyY > 70
+    KeyToHoldDown = Down
+else if JoyY < 30
+    KeyToHoldDown = Up
+else
+    KeyToHoldDown =
+
+if KeyToHoldDown = %KeyToHoldDownPrev%  ; ¿Ã¹Ù¸¥ Å°°¡ ÀÌ¹Ì ´­·Á ÀÖ½À´Ï´Ù (¶Ç´Â ¾Æ¹« Å°µµ ÇÊ¿äÇÏÁö ¾Ê½À´Ï´Ù).
+    return  ; ¾Æ¹«°Íµµ ÇÏÁö ¾Ê½À´Ï´Ù.
+
+; ±×·¸Áö ¾ÊÀ¸¸é, ÀÌÀüÀÇ Å°¸¦ ¶¼°í »õ·Î¿î Å°¸¦ ´©¸¨´Ï´Ù:
+SetKeyDelay -1  ; Å°´­¸² »çÀÌ¿¡ Áö¿¬À» ÇÇÇÕ´Ï´Ù.
+if KeyToHoldDownPrev   ; ¶¼¾ß ÇÒ ÀÌÀüÀÇ Å°°¡ ÀÖ½À´Ï´Ù.
+    Send, {%KeyToHoldDownPrev% up}  ; ±× Å°¸¦ ¶Á´Ï´Ù.
+if KeyToHoldDown   ; ´©¸¦ Å°°¡ ÀÖ½À´Ï´Ù.
+    Send, {%KeyToHoldDown% down}  ; ±× Å°¸¦ ´©¸¨´Ï´Ù.
+return
+

 

+

+´ÙÀ½ ¿¹Á¦´Â Á¶À̽ºÆ½ÀÇ POV hatÀÌ ¸¶Ä¡ Å°º¸µåÀÇ È­»ìÇ¥ ±ºÃ³·³ ÇàÀ§ÇÏ°Ô ¸¸µì´Ï´Ù; Áï, POV hatÀº È­»ìÇ¥ Å°´­¸²À» Àü¼ÛÇÕ´Ï´Ù (»óÇÏÁ¿ì):

+
#Persistent  ; »ç¿ëÀÚ°¡ ¸í½ÃÀûÀ¸·Î Á¾·áÇÒ ¶§±îÁö ½ºÅ©¸³Æ®¸¦ °è¼Ó ½ÇÇàÇÕ´Ï´Ù.
+SetTimer, WatchPOV, 5
+return
+
+WatchPOV:
+GetKeyState, POV, JoyPOV  ; POV ÄÜÆ®·ÑÀÇ À§Ä¡¸¦ ¾ò½À´Ï´Ù.
+KeyToHoldDownPrev = %KeyToHoldDown%  ; Prev´Â ÀÌÁ¦ ÀÌÀü¿¡ ´­¸° Å°¸¦ (ÀÖ´Ù¸é) º¸À¯ÇÕ´Ï´Ù.
+
+; ¾î¶² Á¶À̽ºÆ½Àº °íÁ¤ Áõ°¡µÇÁö ¾Ê°í ºÎµå·¯¿î/¿¬¼ÓÀûÀÎ POV¸¦ °¡Áý´Ï´Ù.
+; ±×µé ¸ðµÎ¸¦ Áö¿øÇÏ·Á¸é, ¹üÀ§¸¦ »ç¿ëÇϽʽÿÀ:
+if POV < 0   ; º¸°íÇÒ °¢µµ°¡ ¾ø½À´Ï´Ù
+    KeyToHoldDown =
+else if POV > 31500                 ; 315 µµºÎÅÍ 360 µµ±îÁö: ¾ÕÀ¸·Î
+    KeyToHoldDown = Up
+else if POV between 0 and 4500      ; 0 µµºÎÅÍ 45 µµ±îÁö: ¾ÕÀ¸·Î
+    KeyToHoldDown = Up
+else if POV between 4501 and 13500  ; 45 µµºÎÅÍ 135 µµ±îÁö: ¿À¸¥ÂÊÀ¸·Î
+    KeyToHoldDown = Right
+else if POV between 13501 and 22500 ; 135 µµºÎÅÍ 225 µµ±îÁö: ¾Æ·§ÂÊÀ¸·Î
+    KeyToHoldDown = Down
+else                                ; 225 µµºÎÅÍ 315 µµ±îÁö: ¿ÞÂÊÀ¸·Î
+    KeyToHoldDown = Left
+
+if KeyToHoldDown = %KeyToHoldDownPrev%  ; ¿Ã¹Ù¸¥ Å°°¡ ÀÌ¹Ì ´­·Á ÀÖ½À´Ï´Ù (¶Ç´Â ¾Æ¹« Å°µµ ÇÊ¿äÇÏÁö ¾Ê½À´Ï´Ù).
+    return  ; ¾Æ¹«°Íµµ ÇÏÁö ¾Ê½À´Ï´Ù.
+
+; ±×·¸Áö ¾ÊÀ¸¸é, ÀÌÀüÀÇ Å°¸¦ ¶¼°í »õ Å°¸¦ ´©¸¨´Ï´Ù:
+SetKeyDelay -1  ; Å°´­¸² »çÀÌ¿¡ Áö¿¬À» ÇÇÇÕ´Ï´Ù.
+if KeyToHoldDownPrev   ; ¶¼¾ß ÇÒ ÀÌÀüÀÇ Å°°¡ ÀÖ½À´Ï´Ù.
+    Send, {%KeyToHoldDownPrev% up}  ; ±× Å°¸¦ ¶Á´Ï´Ù.
+if KeyToHoldDown   ; ´©¸¦ Å°°¡ ÀÖ½À´Ï´Ù.
+    Send, {%KeyToHoldDown% down}  ; ±× Å°¸¦ ´©¸¨´Ï´Ù.
+return
+

 

+

Å°´­¸² ÀÚµ¿-¹Ýº¹Çϱâ: µÎ ¿¹Á¦ ¸ðµÎ ´Ü¼øÈ÷ Å°¸¦ ´©¸£°í ÀÖ´Â°Ô ¾Æ´Ï¶ó Å°¸¦ ¹Ýº¹ÀûÀ¸·Î Àü¼ÛÇϵµ·Ï º¯°æÇÒ ¼ö ÀÖ½À´Ï´Ù (Áï, Å°º¸µå¿¡¼­ ¹°¸®ÀûÀ¸·Î Å°¸¦ ´©¸£°í ÀÖ´Â °Íó·³ Èä³»³¾ ¼ö ÀÖ½À´Ï´Ù). ÀÌ·¸°Ô ÇÏ·Á¸é, ´ÙÀ½ ÁÙÀ»:

+
return  ; ¾Æ¹«°Íµµ ÇÏÁö ¾Ê½À´Ï´Ù.
+

´ÙÀ½°ú °°ÀÌ ±³Ã¼ÇϽʽÿÀ:

+
{
+    if KeyToHoldDown
+        Send, {%KeyToHoldDown% down}  ; Å°´­¸²À» ÀÚµ¿À¸·Î ¹Ýº¹ÇÕ´Ï´Ù.
+    return
+}
+

³íÆò

+

+ù ¹ø° ¸»°í ´Ù¸¥ Á¶À̽ºÆ½À» »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. ¹öÆ° À̸§À̳ª Ãà À̸§ ¾Õ¿¡ Á¶À̽ºÆ½ ¹öÆ° ¹øÈ£¸¦ ÁÖ¸é µË´Ï´Ù. ¿¹¸¦ µé¾î, 2Joy1Àº µÎ ¹ø° Á¶À̽ºÆ½ÀÇ Ã¹ ¹ø° ¹öÆ°ÀÔ´Ï´Ù.

+

+´Ù¸¥ À¯¿ëÇÑ Á¶À̽ºÆ½ ½ºÅ©¸³Æ®¸¦ ¹ß±¼ÇÏ·Á¸é AutoHotkey Æ÷·³À» ¹æ¹®ÇϽʽÿÀ. Joystick and GetKeyState and Send¿Í °°Àº Å°¿öµå °Ë»öÀ̸é Èï¹Ì·Î¿î ÁÖÁ¦µéÀ» ¾òÀ» ¼ö ÀÖ½À´Ï´Ù.

+ +

°ü·Ã ÁÖÁ¦

+

+Joystick-To-Mouse ½ºÅ©¸³Æ® (Á¶À̽ºÆ½À» ¸¶¿ì½º·Î »ç¿ëÇϱâ)
+Á¶À̽ºÆ½ ¹öÆ°, Ãà, ±×¸®°í ÄÜÆ®·Ñ ¸®½ºÆ®
+GetKeyState
+Å°º¸µå¿Í ¸¶¿ì½º ¸®¸ÊÇÎÇϱâ

+ + diff --git a/src/docs/misc/SendMessage.htm b/src/docs/misc/SendMessage.htm new file mode 100644 index 0000000..ae8ccdf --- /dev/null +++ b/src/docs/misc/SendMessage.htm @@ -0,0 +1,87 @@ + + +PostMessage/SendMessage Tutorial + + + + + + + +

¸Þ½ÃÁö¸¦ âÀ̳ª ±×ÀÇ ÄÜÆ®·Ñ¿¡ º¸³»±â
+by Rajat

+ +

+ÀÌ ÆäÀÌÁö´Â PostMessage¿Í SendMessage ¸í·É¾î¸¦ ¿¬±¸ÇÏ°í ´ÙÀ½°ú °°Àº Áú¹®¿¡ ´äÇÕ´Ï´Ù:

+

"¾î¶»°Ô ÃÖ¼ÒÈ­µÈ â¿¡ ¹öÆ°À» ´©¸£´Â°¡?"
+"WinMenuSelectItemÀÌ ¸Þ´º Ç׸ñ°ú ÀÛµ¿ÇÏÁö ¾ÊÀ» ¶§ ¾î¶»°Ô ¸Þ´º Ç׸ñÀ» ¼±ÅÃÇϴ°¡?!"
+"ÀÌ°ÍÀº °Ñ¸ð½ÀÀ» ¹Ù²Ü ¼ö Àִ âÀÌ´Ù.... ¾î¶»°Ô ÇØ¾ß Ç×»ó ÀÛµ¿ÇÏ´Â ¸í·É¾î¸¦ Àü¼ÛÇϴ°¡?"
+"¼ûÀº âÀº ¾î¶»°Ô Çϴ°¡?!"
+
+
+Çʼö Á¶°Ç: AutoHotkey v1.0.09+ ±×¸®°í Winspector Spy (http://www.softpedia.com/get/Security/Security-Related/Winspector.shtml)

+

+ù ¿¹Á¦·Î¼­, WinMenuSelectItem°¡ ¾Æ¿ô·è ÀͽºÇÁ·¹½ºÀÇ "New Message" âÀÇ ¸Þ´º ¹Ù¿Í ÀÛµ¿ÇÏ´Â µ¥ ½ÇÆÐÇÑ´Ù´Â »ç½ÇÀ» ÁÖ¸ñÇϽʽÿÀ; +´Ù½Ã ¸»ÇØ, ´ÙÀ½ ÄÚµå´Â ÀÛµ¿ÇÏÁö ¾Ê½À´Ï´Ù:

+
WinMenuSelectItem, New Message,, &Insert, &Picture...
+

 

+

+±×·¯³ª PostMessage°¡ ±× ÀÏÀ» ÇØ ÁÙ ¼ö ÀÖ½À´Ï´Ù:

+
PostMessage, 0x111, 40239, 0, , New Message
+

+¸¶¹ýó·³ ÀÛµ¿ÇÕ´Ï´Ù! ±×·¯³ª µµµ¥Ã¼ ÀÌ°ÍÀº ¹«¾ùÀΰ¡? 0x111´Â wm_command ¸Þ½ÃÁöÀÇ ½ÊÀ°Áø ÄÚµåÀÌ°í 40239´Â ÀÌ Æ¯Á¤ÇÑ Ã¢ÀÌ ¸Þ´º Ç׸ñ 'Insert Picture' ¼±ÅÃÀ¸·Î ÀÌÇØÇÏ´Â ÄÚµåÀÔ´Ï´Ù. ÀÌÁ¦ ¾î¶»°Ô 40239¿Í °°Àº °ªÀ» ã´ÂÁö ¾Ë·Á µå¸®°Ú½À´Ï´Ù:

+
    +
  1. Winspector Spy¸¦ ¿­°í "New Message" âÀ» ¿±´Ï´Ù.
  2. +
  3. ½ÊÀÚ°¡ Ç¥½ÄÀ» Winspector Spy âÀ¸·ÎºÎÅÍ "New Message" âÀÇ Å¸ÀÌƲ¹Ù·Î ²ü´Ï´Ù (Winspector Spy¿¡ µ¤È÷Áö ¾Ê´Â ºÎºÐÀ¸·Î ²ô½Ê½Ã¿À).
  4. +
  5. ¿ÞÂÊ¿¡ ÀÖ´Â ¸®½ºÆ®¿¡¼­ ¼±ÅÃµÈ Ã¢À» ¿ìŬ¸¯ÇÏ°í 'Messages'¸¦ ¼±ÅÃÇÕ´Ï´Ù.
  6. +
  7. ºó â¿¡ ¿ìŬ¸¯ÇÏ°í 'Edit message filter'¸¦ ¼±ÅÃÇÕ´Ï´Ù.
  8. +
  9. 'filter all' ¹öÆ°À» Ŭ¸¯ÇÑ ´ÙÀ½ ¿ÞÂÊ ¸®½ºÆ®¿¡¼­ 'wm_command'¸¦ ´õºíŬ¸¯ÇÕ´Ï´Ù. ÀÌ·± ½ÄÀ¸·Î ÇÏ¸é ¿ÀÁ÷ ÀÌ ¸Þ½ÃÁö¸¸ °üÁ¦ÇÒ ¼ö ÀÖ½À´Ï´Ù.
  10. +
  11. ÀÌÁ¦ "New Message" âÀ¸·Î °¡¼­ ¸Þ´º ¹Ù·ÎºÎÅÍ Insert > Picture¸¦ ¼±ÅÃÇÕ´Ï´Ù.
  12. +
  13. ´Ù½Ã Winspector Spy·Î µ¹¾Æ¿Í ½ÅÈ£µî ¹öÆ°À» ´­·¯ °üÁ¦¸¦ Á¤ÁöÇÕ´Ï´Ù.
  14. +
  15. ±× µ¿¾È ÃàÀûµÈ wm_command ¸Þ½ÃÁöµéÀ» È®´ëÇÕ´Ï´Ù (´Ù¸¥ °ÍÀº ÀÖ´õ¶óµµ ¹«½ÃÇÕ´Ï´Ù).
  16. +
  17. (º¸Åë) º¸°í ½ÍÀº °ÍÀº ÄÚµå 0 ¸Þ½ÃÁöÀÔ´Ï´Ù. Á¾Á¾ wm_command ¸Þ½ÃÁö¿¡ 'win activated' or 'win destroyed' ±âŸ µîµîÀÌ ÀÖÀ» ¼ö Àִµ¥.. ÇÊ¿äÇÏÁö ¾Ê½À´Ï´Ù. 'Control ID: 40239'¶ó°í ¸»ÇØÁÖ´Â ¸Þ½ÃÁö¸¦ ¹ß°ßÇß´Ù¸é ...¹Ù·Î ±×°ÍÀÔ´Ï´Ù!
  18. +
  19. ÀÌÁ¦ ±×°ÍÀ» À§ÀÇ ¸í·É¾î¿¡ ¹èÄ¡ÇÏ¸é ¿Ï¼ºÀÔ´Ï´Ù! ±×°ÍÀÌ ¹Ù·Î wParam °ªÀÔ´Ï´Ù.
  20. +
+

+´ÙÀ½ ¿¹Á¦·Î ÆäÀÎÆ® ÇÁ·Î±×·¥À» ÅÃÇÏ°Ú½À´Ï´Ù. ¿Ö³ÄÇÏ¸é ´©±¸³ª°¡ ÀÖÀ» °ÍÀ̱⠶§¹®ÀÔ´Ï´Ù. ÀÌÁ¦ ¾îÇÃÀÌ Çϳª Àִµ¥ ¿ÀÅäÇÖÅ°¸¦ »ç¿ëÇÏ¿© Åø¹Ù·ÎºÎÅÍ ÅøÀ» Çϳª ¼±ÅÃÇØ¾ß ÇÑ´Ù°í °¡Á¤ÇØ º¸°Ú½À´Ï´Ù.

+

+´ÙÀ½Àº ¹«¾ùÀ» ÇÒ °ÍÀΰ¡? ´ëºÎºÐÀº ¾Æ¸¶µµ Åø¹Ù ¹öÆ°¿¡ ¸¶¿ì½º Ŭ¸¯À» ¿¹»óÇÒ °Ì´Ï´Ù. ±×·¯³ª Åø¹Ù´Â À̵¿ÇÏ°í ¼ûÀ» ¼ö ÀÖ½À´Ï´Ù! ÆäÀÎÆ® Åø¹Ùµµ ¸¶Âù°¡ÁöÀÔ´Ï´Ù. ±×·¡¼­ ÇØ´ç »ç¿ëÀÚ°¡ ÀÌ·¸°Ô ±¸¼ºÇØ µÎ¾ú´Ù¸é, ½ºÅ©¸³Æ®´Â ±× ½ÃÁ¡¿¡ ¹Ù·Î ½ÇÆÐÇÕ´Ï´Ù. ±×·¯³ª ´ÙÀ½ ¸í·É¾î´Â ¿©ÀüÈ÷ ÀÛµ¿ÇÕ´Ï´Ù:

+ +
PostMessage, 0x111, 639,,,untitled - Paint
+

+PostMessageÀÇ ¶Ç´Ù¸¥ ÀåÁ¡Àº âÀÌ ¹è°æ¿¡ ÀÖÀ» ¼ö ÀÖ´Ù´Â °ÍÀÔ´Ï´Ù; ´ëÁ¶ÀûÀ¸·Î, ¸¶¿ì½º Ŭ¸¯Àº âÀÌ È°¼ºÈ­µÇ¾î Àֱ⸦ ¿ä±¸ÇÕ´Ï´Ù.

+

+´ÙÀ½¿¡ ¸î °¡Áö ¿¹¸¦ ´õ º¸¿©µå¸®°Ú½À´Ï´Ù. ÁÖÀÇ: ÇÊÀÚ´Â WinXP Pro (SP1)À» »ç¿ëÇÕ´Ï´Ù ... ´Ù¸¥ OS¸¦ »ç¿ëÇÑ´Ù¸é ¸Å°³º¯¼ö°¡ ´Ù¸¦ ¼ö ÀÖ½À´Ï´Ù (À©µµ¿ìÁî¿¡ µû¶ó ¿À´Â Wordpad ±×¸®°í Notepad¿¡¸¸ Àû¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù; ´Ù¸¥ °ÍÀº ¸Å°³º¯¼ö°¡ ´Ù¸£Áö ¾ÊÀ» °ÍÀÔ´Ï´Ù):

+ +
;Wordpad ¿¡ ±ºÃ»»ö ¾²±â¸¦ ¼³Á¤ÇÕ´Ï´Ù
+PostMessage, 0x111, 32788, 0, , Document - WordPad
+
;NotepadÀÇ °üÇÏ¿© »óÀÚ¸¦ ¿±´Ï´Ù
+PostMessage, 0x111, 65, 0, , Untitled - Notepad
+
;Notepad¿¡ ¿öµå·¦À» Åä±ÛÇÕ´Ï´Ù
+PostMessage, 0x111, 32, 0, , Untitled - Notepad
+
;¹Ìµð¾î Ç÷¹À̾ ¿¬ÁÖ/Á¤ÁöÇÕ´Ï´Ù
+PostMessage, 0x111, 32808, 0, , Windows Media Player
+
;½ÇÇà ÁßÀÎ AHK ½ºÅ©¸³Æ®ÀÇ ÇÖÅ°µéÀ» º¸·ùÇÕ´Ï´Ù
+DetectHiddenWindows, on
+SetTitleMatchMode, 2
+PostMessage, 0x111, 65305,,, MyScript.ahk - AutoHotkey ; 65306¸¦ »ç¿ëÇϸé Á¤Áö(Pause) vs. º¸·ù(Suspend)ÇÒ ¼ö ÀÖ½À´Ï´Ù.
+

+À§´Â PostMessage¿ëÀ̾ú½À´Ï´Ù. SendMessageµµ ¶È°°ÀÌ ÀÛµ¿ÇÏÁö¸¸ Ãß°¡·Î ¹Ýȯ °ªÀ» ±â´Ù¸³´Ï´Ù. ÀÌ °ªÀ» »ç¿ëÇϸé Winamp¿¡¼­ ÇöÀç ¿¬ÁÖ ÁßÀÎ Æ®·¢À» ¾òÀ» ¼ö ÀÖ½À´Ï´Ù (¿¹Á¦´Â Winamp ÀÚµ¿È­Çϱ⸦ ÂüÁ¶ÇϽʽÿÀ).

+

´ÙÀ½¿¡ ¸î °¡Áö ´õ ÁÖÀÇ »çÇ×ÀÌ ÀÖ½À´Ï´Ù:

+ +

ÁÖÀÇ: ÀÌ Å×Å©´ÐÀ¸·Îµµ ÀÛµ¿ÇÏÁö ¾Ê´Â ¾îÇÃÀÌ ÀÖ½À´Ï´Ù. VB ¾îÇðú Delphi ¾îÇÿ¡¼­ ±×·± °æ¿ì¸¦ ¸¸³µ½À´Ï´Ù. ÀÌ Å×Å©´ÐÀº C, C++ ¾îÇÿ¡ »ç¿ëÇÏ´Â °ÍÀÌ Á¦ÀÏ ÁÁ½À´Ï´Ù. VB ¾îÇÃÀº °°Àº ¸í·É¾îÀε¥µµ 'LParam'ÀÌ ½ÇÇàÇÒ ¶§¸¶´Ù ²÷ÀÓ¾øÀÌ º¯ÇÕ´Ï´Ù. Delphi ¾îÇÃÀº GUI°¡ ÀüÇô wm_command¸¦ »ç¿ëÇÏÁö ¾Ê±âµµ ÇÕ´Ï´Ù. ¾Æ¸¶µµ ¸¶¿ì½ºÀÇ À§Ä¡¿Í Ŭ¸¯À» »ç¿ëÇÏ´Â µí º¸ÀÔ´Ï´Ù.

+

+¿ÀÅäÇÖÅ° Æ÷·³¿¡ °¡¼Å¼­ ŽÇèÇØ º¸°í ¿©·¯ºÐÀÇ °æÇèÀ» °øÀ¯ÇϽʽÿÀ. Çǵå¹éÀº ¾ðÁ¦³ª ȯ¿µÇÕ´Ï´Ù!

+

+ÀÌ ÀÚ½À¼­´Â Ãʺ¸ÀÚ¸¦ À§ÇÑ °ÍÀÌ ¾Æ´Õ´Ï´Ù (±âºÐ ³ª»Ú°Ô ÇÒ Àǵµ´Â ¾ø½À´Ï´Ù). ¿Ö³ÄÇϸé ÀÌ ¸í·É¾îµéÀº °í±Þ Ư¡À¸·Î °£ÁֵDZ⠶§¹®ÀÔ´Ï´Ù. ±×·¡¼­ À§ÀÇ ±ÛÀ» ÀÐ¾î º» ÈÄ¿¡ Àß ¸ð¸£°Ú´Ù¸é, ±×³É ÀØ¾î ¹ö¸®½Ê½Ã¿À.

+

-Rajat

+ + diff --git a/src/docs/misc/SendMessageList.htm b/src/docs/misc/SendMessageList.htm new file mode 100644 index 0000000..dee1570 --- /dev/null +++ b/src/docs/misc/SendMessageList.htm @@ -0,0 +1,239 @@ + + +List of Windows Messages + + + + + + + +

À©µµ¿ìÁî ¸Þ½ÃÁö ¸ñ·Ï

+ +

+¾Æ·¡´Â PostMessage¿Í SendMessageÀÇ Msg ¸Å°³º¯¼ö¿¡ ´ëÇÑ °ªÀÇ ¸ñ·ÏÀÔ´Ï´Ù. ƯÁ¤ ¸Þ½ÃÁö¸¦ »ç¿ëÇÏ´Â ¹æ¹ý¿¡ °üÇÑ ´õ ¸¹Àº Á¤º¸´Â (¿¹, WM_VSCROLL) http://msdn.microsoft.comÀ» °Ë»öÇØ º¸½Ã°Å³ª °Ë»ö ¿£ÁøÀ» »ç¿ëÇϽʽÿÀ. ¶Ç, ¸Þ½ÃÁö ÀÚ½À¼­¸¦ ÂüÁ¶ÇϽʽÿÀ.

+
WM_NULL = 0x00
+WM_CREATE = 0x01
+WM_DESTROY = 0x02
+WM_MOVE = 0x03
+WM_SIZE = 0x05
+WM_ACTIVATE = 0x06
+WM_SETFOCUS = 0x07
+WM_KILLFOCUS = 0x08
+WM_ENABLE = 0x0A
+WM_SETREDRAW = 0x0B
+WM_SETTEXT = 0x0C
+WM_GETTEXT = 0x0D
+WM_GETTEXTLENGTH = 0x0E
+WM_PAINT = 0x0F
+WM_CLOSE = 0x10
+WM_QUERYENDSESSION = 0x11
+WM_QUIT = 0x12
+WM_QUERYOPEN = 0x13
+WM_ERASEBKGND = 0x14
+WM_SYSCOLORCHANGE = 0x15
+WM_ENDSESSION = 0x16
+WM_SYSTEMERROR = 0x17
+WM_SHOWWINDOW = 0x18
+WM_CTLCOLOR = 0x19
+WM_WININICHANGE = 0x1A
+WM_SETTINGCHANGE = 0x1A
+WM_DEVMODECHANGE = 0x1B
+WM_ACTIVATEAPP = 0x1C
+WM_FONTCHANGE = 0x1D
+WM_TIMECHANGE = 0x1E
+WM_CANCELMODE = 0x1F
+WM_SETCURSOR = 0x20
+WM_MOUSEACTIVATE = 0x21
+WM_CHILDACTIVATE = 0x22
+WM_QUEUESYNC = 0x23
+WM_GETMINMAXINFO = 0x24
+WM_PAINTICON = 0x26
+WM_ICONERASEBKGND = 0x27
+WM_NEXTDLGCTL = 0x28
+WM_SPOOLERSTATUS = 0x2A
+WM_DRAWITEM = 0x2B
+WM_MEASUREITEM = 0x2C
+WM_DELETEITEM = 0x2D
+WM_VKEYTOITEM = 0x2E
+WM_CHARTOITEM = 0x2F
+
+WM_SETFONT = 0x30
+WM_GETFONT = 0x31
+WM_SETHOTKEY = 0x32
+WM_GETHOTKEY = 0x33
+WM_QUERYDRAGICON = 0x37
+WM_COMPAREITEM = 0x39
+WM_COMPACTING = 0x41
+WM_WINDOWPOSCHANGING = 0x46
+WM_WINDOWPOSCHANGED = 0x47
+WM_POWER = 0x48
+WM_COPYDATA = 0x4A
+WM_CANCELJOURNAL = 0x4B
+WM_NOTIFY = 0x4E
+WM_INPUTLANGCHANGEREQUEST = 0x50
+WM_INPUTLANGCHANGE = 0x51
+WM_TCARD = 0x52
+WM_HELP = 0x53
+WM_USERCHANGED = 0x54
+WM_NOTIFYFORMAT = 0x55
+WM_CONTEXTMENU = 0x7B
+WM_STYLECHANGING = 0x7C
+WM_STYLECHANGED = 0x7D
+WM_DISPLAYCHANGE = 0x7E
+WM_GETICON = 0x7F
+WM_SETICON = 0x80
+
+WM_NCCREATE = 0x81
+WM_NCDESTROY = 0x82
+WM_NCCALCSIZE = 0x83
+WM_NCHITTEST = 0x84
+WM_NCPAINT = 0x85
+WM_NCACTIVATE = 0x86
+WM_GETDLGCODE = 0x87
+WM_NCMOUSEMOVE = 0xA0
+WM_NCLBUTTONDOWN = 0xA1
+WM_NCLBUTTONUP = 0xA2
+WM_NCLBUTTONDBLCLK = 0xA3
+WM_NCRBUTTONDOWN = 0xA4
+WM_NCRBUTTONUP = 0xA5
+WM_NCRBUTTONDBLCLK = 0xA6
+WM_NCMBUTTONDOWN = 0xA7
+WM_NCMBUTTONUP = 0xA8
+WM_NCMBUTTONDBLCLK = 0xA9
+
+WM_KEYFIRST = 0x100
+WM_KEYDOWN = 0x100
+WM_KEYUP = 0x101
+WM_CHAR = 0x102
+WM_DEADCHAR = 0x103
+WM_SYSKEYDOWN = 0x104
+WM_SYSKEYUP = 0x105
+WM_SYSCHAR = 0x106
+WM_SYSDEADCHAR = 0x107
+WM_KEYLAST = 0x108
+
+WM_IME_STARTCOMPOSITION = 0x10D
+WM_IME_ENDCOMPOSITION = 0x10E
+WM_IME_COMPOSITION = 0x10F
+WM_IME_KEYLAST = 0x10F
+
+WM_INITDIALOG = 0x110
+WM_COMMAND = 0x111
+WM_SYSCOMMAND = 0x112
+WM_TIMER = 0x113
+WM_HSCROLL = 0x114
+WM_VSCROLL = 0x115
+WM_INITMENU = 0x116
+WM_INITMENUPOPUP = 0x117
+WM_MENUSELECT = 0x11F
+WM_MENUCHAR = 0x120
+WM_ENTERIDLE = 0x121
+
+WM_CTLCOLORMSGBOX = 0x132
+WM_CTLCOLOREDIT = 0x133
+WM_CTLCOLORLISTBOX = 0x134
+WM_CTLCOLORBTN = 0x135
+WM_CTLCOLORDLG = 0x136
+WM_CTLCOLORSCROLLBAR = 0x137
+WM_CTLCOLORSTATIC = 0x138
+
+WM_MOUSEFIRST = 0x200
+WM_MOUSEMOVE = 0x200
+WM_LBUTTONDOWN = 0x201
+WM_LBUTTONUP = 0x202
+WM_LBUTTONDBLCLK = 0x203
+WM_RBUTTONDOWN = 0x204
+WM_RBUTTONUP = 0x205
+WM_RBUTTONDBLCLK = 0x206
+WM_MBUTTONDOWN = 0x207
+WM_MBUTTONUP = 0x208
+WM_MBUTTONDBLCLK = 0x209
+WM_MOUSEWHEEL = 0x20A
+WM_MOUSEHWHEEL = 0x20E
+
+WM_PARENTNOTIFY = 0x210
+WM_ENTERMENULOOP = 0x211
+WM_EXITMENULOOP = 0x212
+WM_NEXTMENU = 0x213
+WM_SIZING = 0x214
+WM_CAPTURECHANGED = 0x215
+WM_MOVING = 0x216
+WM_POWERBROADCAST = 0x218
+WM_DEVICECHANGE = 0x219
+
+WM_MDICREATE = 0x220
+WM_MDIDESTROY = 0x221
+WM_MDIACTIVATE = 0x222
+WM_MDIRESTORE = 0x223
+WM_MDINEXT = 0x224
+WM_MDIMAXIMIZE = 0x225
+WM_MDITILE = 0x226
+WM_MDICASCADE = 0x227
+WM_MDIICONARRANGE = 0x228
+WM_MDIGETACTIVE = 0x229
+WM_MDISETMENU = 0x230
+WM_ENTERSIZEMOVE = 0x231
+WM_EXITSIZEMOVE = 0x232
+WM_DROPFILES = 0x233
+WM_MDIREFRESHMENU = 0x234
+
+WM_IME_SETCONTEXT = 0x281
+WM_IME_NOTIFY = 0x282
+WM_IME_CONTROL = 0x283
+WM_IME_COMPOSITIONFULL = 0x284
+WM_IME_SELECT = 0x285
+WM_IME_CHAR = 0x286
+WM_IME_KEYDOWN = 0x290
+WM_IME_KEYUP = 0x291
+
+WM_MOUSEHOVER = 0x2A1
+WM_NCMOUSELEAVE = 0x2A2
+WM_MOUSELEAVE = 0x2A3
+
+WM_CUT = 0x300
+WM_COPY = 0x301
+WM_PASTE = 0x302
+WM_CLEAR = 0x303
+WM_UNDO = 0x304
+
+WM_RENDERFORMAT = 0x305
+WM_RENDERALLFORMATS = 0x306
+WM_DESTROYCLIPBOARD = 0x307
+WM_DRAWCLIPBOARD = 0x308
+WM_PAINTCLIPBOARD = 0x309
+WM_VSCROLLCLIPBOARD = 0x30A
+WM_SIZECLIPBOARD = 0x30B
+WM_ASKCBFORMATNAME = 0x30C
+WM_CHANGECBCHAIN = 0x30D
+WM_HSCROLLCLIPBOARD = 0x30E
+WM_QUERYNEWPALETTE = 0x30F
+WM_PALETTEISCHANGING = 0x310
+WM_PALETTECHANGED = 0x311
+
+WM_HOTKEY = 0x312
+WM_PRINT = 0x317
+WM_PRINTCLIENT = 0x318
+
+WM_HANDHELDFIRST = 0x358
+WM_HANDHELDLAST = 0x35F
+WM_PENWINFIRST = 0x380
+WM_PENWINLAST = 0x38F
+WM_COALESCE_FIRST = 0x390
+WM_COALESCE_LAST = 0x39F
+WM_DDE_FIRST = 0x3E0
+WM_DDE_INITIATE = 0x3E0
+WM_DDE_TERMINATE = 0x3E1
+WM_DDE_ADVISE = 0x3E2
+WM_DDE_UNADVISE = 0x3E3
+WM_DDE_ACK = 0x3E4
+WM_DDE_DATA = 0x3E5
+WM_DDE_REQUEST = 0x3E6
+WM_DDE_POKE = 0x3E7
+WM_DDE_EXECUTE = 0x3E8
+WM_DDE_LAST = 0x3E8
+
+WM_USER = 0x400
+WM_APP = 0x8000
+ + diff --git a/src/docs/misc/Styles.htm b/src/docs/misc/Styles.htm new file mode 100644 index 0000000..f0fb0cd --- /dev/null +++ b/src/docs/misc/Styles.htm @@ -0,0 +1,1341 @@ + + + GUI Styles + + + + + + + +

Gui ±×¸®°í GuiControl ¸í·É¾î°¡ »ç¿ëÇÏ´Â ½ºÅ¸ÀÏ

+

¸ñÂ÷

+ +

 

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
½ºÅ¸ÀÏ°ª¼³¸í
GUI ⠱⺻°ª WS_POPUP, WS_CAPTION, WS_SYSMENU, WS_MINIMIZEBOX
GUI â¿¡ °­Á¦ WS_CLIPSIBLINGS
WS_BORDER0x800000+/-Border. ¾ãÀº Å׵θ®ÀÇ Ã¢À» ¸¸µì´Ï´Ù.
WS_POPUP0x80000000Æ˾÷ âÀ» ¸¸µì´Ï´Ù. ÀÌ ½ºÅ¸ÀÏÀº WS_CHILD ½ºÅ¸ÀÏ°ú ÇÔ²² »ç¿ëÇÒ ¼ö ¾ø½À´Ï´Ù.
WS_CAPTION0xC00000+/-Caption. ŸÀÌƲ¹Ù¸¦ °¡Áø âÀ» ¸¸µì´Ï´Ù. ÀÌ ½ºÅ¸ÀÏÀº WS_BORDER ±×¸®°í WS_DLGFRAME¸¦ ¼ýÄ¡ÀûÀ¸·Î Á¶ÇÕÇÕ´Ï´Ù.
WS_DISABLED0x8000000+/-Disabled. óÀ½¿¡ ºñÈ°¼º »óÅ·ΠâÀ» ¸¸µì´Ï´Ù.
WS_DLGFRAME0x400000Å׵θ® ½ºÅ¸ÀÏÀ» °¡Áø âÀ» ¸¸µì´Ï´Ù. º¸Åë ´ëÈ­»óÀÚ¿¡ ¸¹ÀÌ »ç¿ëµË´Ï´Ù.
WS_GROUP0x20000+/-Group. ÀÌ ÄÜÆ®·ÑÀÌ ÄÜÆ®·Ñ ±×·ì¿¡¼­ ù ¹ø° ÄÜÆ®·ÑÀ̶ó´Â °ÍÀ» ³ªÅ¸³À´Ï´Ù. ÀÌ ½ºÅ¸ÀÏÀº ÀÚµ¿À¸·Î ¶óµð¿À ¹öÆ°ÀÇ "ÇÑ ¹ø¿¡ ¿ÀÁ÷ Çϳª¸¸" ÇàÀ§¸¦ °ü¸®Çϵµ·Ï Àû¿ëµË´Ï´Ù. + + +¾ÆÁÖ Èñ±ÍÇÑ °æ¿ì·Î µÎ ±×·ìÀÇ ¶óµð¿À ¹öÆ°ÀÌ ¿¬¼ÓÀûÀ¸·Î (»çÀÌ¿¡ ´Ù¸¥ ÄÜÆ®·Ñ À¯ÇüÀÌ ¾øÀÌ) Ãß°¡µÇ¸é, + ÀÌ ½ºÅ¸ÀÏÀº µÎ ¹ø° ¶óµð¿À ±×·ìÀÇ Ã¹ ÄÜÆ®·Ñ¿¡¸¸ Àû¿ëµË´Ï´Ù. µû¶ó¼­ ù ¹ø° ±×·ì°ú ºÐ¸®µÇ¾î ¹ö¸³´Ï´Ù. +
WS_HSCROLL0x100000¼öÆò ½ºÅ©·Ñ¹Ù¸¦ °¡Áø âÀ» ¸¸µì´Ï´Ù.
WS_MAXIMIZE0x1000000óÀ½¿¡ ÃÖ´ëÈ­ »óÅ·ΠâÀ» ¸¸µì´Ï´Ù.
WS_MAXIMIZEBOX0x10000+/-MaximizeBox. ÃÖ´ëÈ­ ¹öÆ°ÀÌ Àִ âÀ» ¸¸µì´Ï´Ù. WS_EX_CONTEXTHELP ½ºÅ¸ÀÏ°ú ÇÔ²² »ç¿ëÇÒ ¼ö ¾ø½À´Ï´Ù. WS_SYSMENU ½ºÅ¸Àϵµ ¿ª½Ã ÁöÁ¤ÇØ¾ß ÇÕ´Ï´Ù.
WS_MINIMIZE0x20000000óÀ½¿¡ ÃÖ¼ÒÈ­ »óÅ·ΠâÀ» ¸¸µì´Ï´Ù.
WS_MINIMIZEBOX0x20000+/-MinimizeBox. ÃÖ¼ÒÈ­ ¹öÆ°À» °¡Áø âÀ» ¸¸µì´Ï´Ù. WS_EX_CONTEXTHELP ½ºÅ¸ÀÏ°ú ÇÔ²² »ç¿ëÇÒ ¼ö ¾ø½À´Ï´Ù. WS_SYSMENU ½ºÅ¸Àϵµ ¿ª½Ã ÁöÁ¤ÇØ¾ß ÇÕ´Ï´Ù.
WS_OVERLAPPED0Áßø âÀ» ¸¸µì´Ï´Ù. Áßø âÀº ŸÀÌƲ¹Ù¿Í Å׵θ®¸¦ °¡Áý´Ï´Ù. WS_TILED ½ºÅ¸ÀÏ°ú µ¿ÀÏÇÕ´Ï´Ù.
WS_OVERLAPPEDWINDOW0xCF0000WS_OVERLAPPED, WS_CAPTION, + WS_SYSMENU, WS_THICKFRAME, WS_MINIMIZEBOX, ±×¸®°í WS_MAXIMIZEBOX ½ºÅ¸ÀÏÀ» »ç¿ëÇØ Áßø âÀ» ¸¸µì´Ï´Ù. + WS_TILEDWINDOW ½ºÅ¸ÀÏ°ú µ¿ÀÏÇÕ´Ï´Ù.
WS_POPUPWINDOW0x80880000WS_BORDER, WS_POPUP, ±×¸®°í WS_SYSMENU ½ºÅ¸ÀÏÀ» »ç¿ëÇØ Æ˾÷ âÀ» ¸¸µì´Ï´Ù. + The WS_CAPTION°ú WS_POPUPWINDOW ½ºÅ¸ÀÏÀ» Á¶ÇÕÇÏ¿© â ¸Þ´º¸¦ º¸¿©ÁÖ¾î¾ß ÇÕ´Ï´Ù.
WS_SIZEBOX0x40000+/-Resize. Å©±âÁ¶Àý Å׵θ®¸¦ °¡Áø âÀ» ¸¸µì´Ï´Ù. WS_THICKFRAME ½ºÅ¸ÀÏ°ú µ¿ÀÏÇÕ´Ï´Ù.
WS_SYSMENU0x80000+/-SysMenu. ŸÀÌƲ ¹Ù¿¡ â ¸Þ´º¸¦ °¡Áø âÀ» ¸¸µì´Ï´Ù. WS_CAPTION ½ºÅ¸Àϵµ ÁöÁ¤ÇØ¾ß ÇÕ´Ï´Ù.
WS_TABSTOP0x10000+/-Tabstop. »ç¿ëÀÚ°¡ TAB Å°¸¦ ´©¸¦ ¶§ Å°º¸µå ÃÊÁ¡À» ¹ÞÀ» ¼ö ÀÖ´Â ÄÜÆ®·ÑÀ» ÁöÁ¤ÇÕ´Ï´Ù. TAB Å°¸¦ ´©¸£¸é WS_TABSTOP ½ºÅ¸ÀÏ°ú ÇÔ²² Å°º¸µå ÃÊÁ¡ÀÌ ´ÙÀ½ ÄÜÆ®·Ñ·Î ¹Ù²ò´Ï´Ù.
WS_THICKFRAME0x40000Å©±âÁ¶Àý Å׵θ®¸¦ °¡Áø âÀ» ¸¸µì´Ï´Ù. WS_SIZEBOX ½ºÅ¸ÀÏ°ú µ¿ÀÏÇÕ´Ï´Ù
WS_VSCROLL0x200000¼öÁ÷ ½ºÅ©·Ñ¹Ù¸¦ °¡Áø âÀ» ¸¸µì´Ï´Ù.
WS_VISIBLE0x10000000óÀ½¿¡ º¸ÀÌ´Â »óÅ·ΠâÀ» ¸¸µì´Ï´Ù.
WS_CHILD0x40000000ÀÚ¼Õ Ã¢À» ¸¸µì´Ï´Ù. ÀÌ ½ºÅ¸ÀÏÀÇ Ã¢Àº ¸Þ´º¹Ù¸¦ °¡Áú ¼ö ¾ø½À´Ï´Ù. ÀÌ ½ºÅ¸ÀÏÀº WS_POPUP ½ºÅ¸ÀÏ°ú ÇÔ²² »ç¿ëÇÒ ¼ö ¾ø½À´Ï´Ù.
+

 

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Text ½ºÅ¸ÀÏ°ª¼³¸í
default None
forced None
SS_BLACKFRAME0x7¹Ú½º¸¦ ÁöÁ¤ÇÕ´Ï´Ù. â ÇÁ·¹ÀÓ°ú °°Àº »öÀ¸·Î ±×¸³´Ï´Ù. ÀÌ »öÀº ±âº» Ä÷¯ ü°è¿¡ ´ëÇÏ¿© °ËÁ¤»öÀÔ´Ï´Ù.
SS_BLACKRECT0x4ÇöÀç â ÇÁ·¹ÀÓ »öÀ¸·Î ä¿öÁø »ç°¢ÇüÀ» ÁöÁ¤ÇÕ´Ï´Ù. ÀÌ »öÀº ±âº» Ä÷¯ ü°è¿¡ ´ëÇÏ¿© °ËÁ¤»öÀÔ´Ï´Ù.
SS_CENTER0x1+/-Center. °£´ÜÇÑ »ç°¢ÇüÀ» ÁöÁ¤ÇÏ°í ¿¡·¯ °ª ÅؽºÆ®¸¦ ±× °¡¿îµ¥¿¡ ¹èÄ¡ÇÕ´Ï´Ù. ÄÜÆ®·ÑÀº ÁÙ ³¡À» Áö³ª ´ÙÀ½ ÁÙÀÇ Ã³À½±îÁö °ÉÄ¡´Â ´Ü¾îµéÀ» ÀÚµ¿À¸·Î ³Ñ±é´Ï´Ù.
SS_ETCHEDFRAME0x12Á¤Àû ÄÜÆ®·ÑÀÇ ÇÁ·¹ÀÓÀ» ±×¸³´Ï´Ù. EDGE_ETCHED Å×Åõ¸® ½ºÅ¸ÀÏÀ» »ç¿ëÇÕ´Ï´Ù.
SS_ETCHEDHORZ0x10Á¤Àû ÄÜÆ®·ÑÀÇ À§ ¾Æ·¡ Å׵θ®¸¦ ±×¸³´Ï´Ù. EDGE_ETCHED Å׵θ® ½ºÅ¸ÀÏÀ» »ç¿ëÇÕ´Ï´Ù.
SS_ETCHEDVERT0x11Á¤Àû ÄÜÆ®·ÑÀÇ Á¿ì Å׵θ®¸¦ ±×¸³´Ï´Ù. EDGE_ETCHED Å׵θ® ½ºÅ¸ÀÏÀ» »ç¿ëÇÕ´Ï´Ù.
SS_GRAYFRAME0x8ÇÁ·¹ÀÓÀ» °¡Áø ¹Ú½º¸¦ ÁöÁ¤ÇÕ´Ï´Ù. È­¸é(¹ÙÅÁÈ­¸é) ¹è°æ»ö°ú °°Àº »öÀ¸·Î ±×·ÁÁý´Ï´Ù. ÀÌ »öÀº ±âº» Ä÷¯ ü°è¿¡¼­ ȸ»öÀÔ´Ï´Ù.
SS_GRAYRECT0x5ÇöÀç È­¸é ¹è°æ »öÀ¸·Î ä¿öÁø »ç°¢ÇüÀ» ÁöÁ¤ÇÕ´Ï´Ù. ÀÌ »öÀº ±âº» Ä÷¯ ü°è¿¡¼­ ȸ»öÀÔ´Ï´Ù.
SS_LEFT0+/-Left. ÀÌ°ÍÀÌ ±âº»°ªÀÔ´Ï´Ù. °£´ÜÇÑ »ç°¢ÇüÀ» ÁöÁ¤ÇÏ°í ¾ÈÀÇ ÅؽºÆ®¸¦ ¿ÞÂÊÀ¸·Î Á¤·ÄÇÕ´Ï´Ù. + ÅؽºÆ®¸¦ º¸¿©ÁÖ±â Àü¿¡ ¸ÕÀú Æ÷¸ËÇÕ´Ï´Ù. ÁÙ ³¡À» Áö³ª È®ÀåµÈ ´Ü¾îµéÀº ÀÚµ¿À¸·Î ´ÙÀ½ ÁÙ¿¡ ¿ÞÂÊ Á¤·ÄµË´Ï´Ù. ÄÜÆ®·ÑÀÇ ³Êºñº¸´Ù ´õ ±ä ´Ü¾îµéÀº Àß·Á ³ª°©´Ï´Ù.
SS_LEFTNOWORDWRAP0xC+/-Wrap. »ç°¢ÇüÀ» ÁöÁ¤ÇÏ°í ¾ÈÀÇ ÅؽºÆ®¸¦ ¿ÞÂÊ Á¤·ÄÇÕ´Ï´Ù. ÅÇÀº È®ÀåµÇÁö¸¸, ´Ü¾îµéÀº ·¦µÇÁö ¾Ê½À´Ï´Ù. ÁÙ³¡À» Áö³ª È®ÀåµÈ ÅؽºÆ®´Â Àß·Á³ª°©´Ï´Ù.
SS_NOPREFIX0x80ÄÜÆ®·ÑÀÇ ÅؽºÆ®¿¡¼­ ¾ÚÆÛ¼¾µå(&) ¹®ÀÚ¸¦ °¡¼Ó Á¢µÎ ¹®ÀÚ·Î ¹ø¿ªÇÏÁö ¸øÇϵµ·Ï ¸·½À´Ï´Ù. ÀÌ°ÍÀº ¾ÚÆÛ¼¾µå (&)°¡ Æ÷ÇԵǾî ÀÖ´Â ÆÄÀÏ À̸§À̳ª ´Ù¸¥ ¹®ÀÚ¿­À» º¸¿©ÁÖ¾î¾ß ÇÒ °æ¿ì¿¡ À¯¿ëÇÕ´Ï´Ù
SS_NOTIFY0x100»ç¿ëÀÚ°¡ ÄÜÆ®·ÑÀ» Ŭ¸¯ÇÒ ¶§ ºÎ¸ð â¿¡ STN_CLICKED °íÁö¸¦ Àü¼ÛÇÕ´Ï´Ù.
SS_RIGHT0x2+/-Right. »ç°¢ÇüÀ» ÁöÁ¤ÇÏ°í ±× ¾ÈÀÇ ÅؽºÆ®¸¦ ¿À¸¥ÂÊ Á¤·ÄÇÕ´Ï´Ù.
SS_SUNKEN0x1000Á¤Àû ÄÜÆ®·Ñ µÑ·¹¿¡ ¹ÝÂë ´­·ÁÁø Å׵θ®¸¦ ±×¸³´Ï´Ù.
SS_WHITEFRAME0x9ÇÁ·¹ÀÓÀ» °¡Áø ¹Ú½º¸¦ ÁöÁ¤ÇÕ´Ï´Ù. â ¹è°æ°ú °°Àº »öÀ¸·Î ±×·ÁÁý´Ï´Ù. ÀÌ »öÀº ±âº» Ä÷¯ ü°è¿¡¼­ ÇϾá»öÀÔ´Ï´Ù.
SS_WHITERECT0x6ÇöÀç âÀÇ ¹è°æ»öÀ¸·Î ä¿öÁø »ç°¢ÇüÀ» ÁöÁ¤ÇÕ´Ï´Ù. ÀÌ »öÀº ±âº» Ä÷¯ ü°è¿¡¼­ ÇϾá»öÀÔ´Ï´Ù.
+

 

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Edit ½ºÅ¸ÀÏ°ª¼³¸í
default 

WS_TABSTOP ±×¸®°í WS_EX_CLIENTEDGE (È®Àå ½ºÅ¸ÀÏ E0x200)

+

Edit ÄÜÆ®·ÑÀÌ ¿©·¯-ÁÙ·Î ÀÚµ¿ ŽÁöµË´Ï´Ù. ½ÃÀÛºÎÅÍ ³»¿ë¿¡ ¿©·¯ ÁÙÀÌ ´ã°Ü Àְųª, ±×ÀÇ ³ôÀÌ°¡ 1 Çຸ´Ù Å©°Å³ª, ¾Æ´Ï¸é ±×ÀÇ Çà °³¼ö°¡ ¸í½ÃÀûÀ¸·Î 1º¸´Ù Å©°Ô ÁöÁ¤µÇ¾î Àֱ⠶§¹®ÀÔ´Ï´Ù. + ´ÙÀ½ ½ºÅ¸ÀÏÀÌ ±âº»À¸·Î Àû¿ëµË´Ï´Ù: WS_VSCROLL, ES_WANTRETURN, ±×¸®°í ES_AUTOVSCROLL

+

EditÀÌ ÇÑ ÁÙ·Î ÀÚµ¿ ŽÁöµÇ¸é, ±âº»°ªÀº ES_AUTOHSCROLLÀÔ´Ï´Ù.

forced None
ES_AUTOHSCROLL0x80+/-Wrap ¿©·¯-ÁÙ ÆíÁý, ±×¸®°í +/-Limit ÇÑ-ÁÙ ÆíÁý. + »ç¿ëÀÚ°¡ ÁÙ ³¡¿¡¼­ ¹®ÀÚ¸¦ Çϳª ŸÀÚÇϸé ÀÚµ¿À¸·Î ¿À¸¥ÂÊÀ¸·Î 10 ¹®ÀÚ ¸¸Å­ °¨½À´Ï´Ù. + »ç¿ëÀÚ°¡ ENTER Å°¸¦ ´©¸¦ ¶§, ¸ðµç ÅؽºÆ®¸¦ ´Ù½Ã 0 À§Ä¡·Î °¨½À´Ï´Ù.
ES_AUTOVSCROLL0x40»ç¿ëÀÚ°¡ ¸¶Áö¸· ÁÙ¿¡¼­ ENTER Å°¸¦ ´©¸£¸é ÅؽºÆ®¸¦ ÇÑ ÆäÀÌÁö °¨¾Æ ¿Ã¸³´Ï´Ù.
ES_CENTER0x1+/-Center. ¿©·¯ ÁÙ ÄÜÆ®·Ñ¿¡¼­ ÅؽºÆ®¸¦ °¡¿îµ¥ Á¤·ÄÇÕ´Ï´Ù.
ES_LOWERCASE0x10+/-Lowercase. ÆíÁý ÄÜÆ®·Ñ ¾ÈÀ¸·Î ¹®ÀÚ°¡ ŸÀÚµÇ¾î µé¾î¿À¸é ¸ðµÎ ¼Ò¹®ÀÚ·Î º¯È¯ÇÕ´Ï´Ù.
ES_NOHIDESEL0x100±âº» ÇàÀ§¸¦ ºÎÀÎÇÕ´Ï´Ù. ±âº» ÇàÀ§´Â ÄÜÆ®·ÑÀÌ ÀÔ·Â ÃÊÁ¡À» ÀÒ¾î ¹ö¸± ¶§ ¼±ÅÃÀ» °¨Ãß°í ÀÔ·Â ÃÊÁ¡À» ¹ÞÀ» ¶§ ¼±ÅÃÀ» ¿ª»óÀ¸·Î º¸¿©ÁÝ´Ï´Ù. ES_NOHIDESELÀ» ÁöÁ¤Çß´Ù¸é, ÄÜÆ®·Ñ¿¡ ÃÊÁ¡ÀÌ ¾ø´õ¶óµµ ¼±ÅÃµÈ ÅؽºÆ®°¡ ¿ª»óÀ¸·Î º¸ÀÔ´Ï´Ù.
ES_NUMBER0x2000+/-Number. »ç¿ëÀÚ°¡ ¼ýÀÚ°¡ ¾Æ´Ñ ´Ù¸¥ °ÍÀº ŸÀÚÇÏÁö ¸øÇϵµ·Ï ¸·½À´Ï´Ù.
ES_OEMCONVERT0x400ÀÌ ½ºÅ¸ÀÏÀº ÆÄÀÏ À̸§ÀÌ Æ÷ÇÔµÈ ÆíÁý ÄÜÆ®·Ñ¿¡ ¾ÆÁÖ À¯¿ëÇÕ´Ï´Ù.
ES_MULTILINE0x4+/-Multi. ¿©·¯ÁÙ ÆíÁý ÄÜÆ®·ÑÀ» ÁöÁ¤ÇÕ´Ï´Ù. ±âº»°ªÀº ÇÑÁÙ ÆíÁý ÄÜÆ®·ÑÀÔ´Ï´Ù.
ES_PASSWORD0x20+/-Password. ŸÀÚµÇ¾î µé¾î¿À´Â °¢ ¹®ÀÚ ´ë½Å¿¡ ÀºÆó ¹®ÀÚ¸¦ º¸¿©ÁÝ´Ï´Ù. ÅؽºÆ®¸¦ °¨Ãä´Ï´Ù.
ES_READONLY0x800+/-ReadOnly. »ç¿ëÀÚ°¡ ÆíÁý ÄÜÆ®·Ñ¿¡ ŸÀÚÇϰųª ÆíÁýÇÏÁö ¸øÇϵµ·Ï ¸·½À´Ï´Ù.
ES_RIGHT0x2+/-Right. ¿©·¯ÁÙ ÆíÁý ÄÜÆ®·Ñ¿¡ ¿ìÃø Á¤·ÄÇÕ´Ï´Ù.
ES_UPPERCASE0x8+/-Uppercase. ÆíÁý ÄÜÆ®·Ñ ¾ÈÀ¸·Î ¹®ÀÚ°¡ ŸÀÚµÇ¾î µé¾î¿À¸é ¸ðµÎ ´ë¹®ÀÚ·Î º¯È¯ÇÕ´Ï´Ù.
ES_WANTRETURN0x1000+/-WantReturn. ´ëÈ­»óÀÚ¿¡¼­ ¿©·¯ÁÙ ÆíÁý ÄÜÆ®·Ñ ¾ÈÀ¸·Î ÅؽºÆ®¸¦ ŸÀÚÇÏ´Â µ¿¾È »ç¿ëÀÚ°¡ ENTER Å°¸¦ ´©¸¦ ¶§ ij¸®Áö ¸®ÅÏÀÌ »ðÀԵǵµ·Ï ÁöÁ¤ÇÕ´Ï´Ù. ÀÌ ½ºÅ¸ÀÏÀ» ÁöÁ¤ÇÏÁö ¾ÊÀº °æ¿ì, ENTER Å°¸¦ ´©¸£¸é ´ëÈ­»óÀÚÀÇ ±âº» Ǫ½Ã ¹öÆ°À» ´©¸¥ °Í°ú È¿°ú°¡ µ¿ÀÏÇÕ´Ï´Ù. ÀÌ ½ºÅ¸ÀÏÀº ÇÑ-ÁÙ ÆíÁý ÄÜÆ®·Ñ¿¡´Â ¾Æ¹« È¿°ú°¡ ¾ø½À´Ï´Ù.
+

 

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
UpDown ½ºÅ¸ÀÏ°ª¼³¸í
default UDS_ARROWKEYS, UDS_ALIGNRIGHT, UDS_SETBUDDYINT, ±×¸®°í UDS_AUTOBUDDY.
forced None
UDS_WRAP0x1À̸§ÀÖ´Â ¿É¼Ç "Wrap". ÄÜÆ®·ÑÀº »ç¿ëÀÚ°¡ ÃÖ´ë ÃÖ¼Ò °ªÀ» ³Ñ¾î¼­·Á°í ÇÏ¸é ±×ÀÇ ¹üÀ§ÀÇ ´Ù¸¥ ÂÊ ³¡À¸·Î µÇµ¹¸³´Ï´Ù. WrapÀÌ ¾ø´Ù¸é, ÃÖ´ë ÃÖ¼Ò °ª¿¡ µµ´ÞÇÏ¸é ¸ØÃä´Ï´Ù.
UDS_SETBUDDYINT0x2 À§Ä¡°¡ ¹Ù²ð ¶§ UpDown ÄÜÆ®·ÑÀº (WM_SETTEXT ¸Þ½ÃÁö¸¦ »ç¿ëÇÏ¿©) Ä£±¸ ÄÜÆ®·ÑÀÇ ÅؽºÆ®¸¦ ¼³Á¤ÇÕ´Ï´Ù. ±×·¸Áö¸¸, Ä£±¸°¡ ListBox¶ó¸é, ±× ListBoxÀÇ ÇöÀç ¼±ÅÃÀÌ ´ë½Å ¹Ù²ò´Ï´Ù.
UDS_ALIGNRIGHT0x4À̸§ÀÖ´Â ¿É¼Ç "Right" (±âº»°ª). UpDownÀ» Ä£±¸ ÄÜÆ®·ÑÀÇ ¿À¸¥ÂÊ¿¡ ¹èÄ¡ÇÕ´Ï´Ù.
UDS_ALIGNLEFT0x8À̸§ÀÖ´Â ¿É¼Ç "Left". UpDownÀ» Ä£±¸ ÄÜÆ®·ÑÀÇ ¿ÞÂÊ¿¡ ¹èÄ¡ÇÕ´Ï´Ù.
UDS_AUTOBUDDY0x10ÀÚµ¿À¸·Î UpDown ÄÜÆ®·ÑÀÇ Ä£±¸ ÄÜÆ®·Ñ·Î z-¼ø¼­·Î ÀÌÀüÀÇ ÄÜÆ®·ÑÀ» ¼±ÅÃÇÕ´Ï´Ù.
UDS_ARROWKEYS0x20»ç¿ëÀÚ´Â Å°º¸µå¿¡¼­ Up ¶Ç´Â Down È­»ìÇ¥ Å°¸¦ ´­·¯ UpDown ÄÜÆ®·ÑÀÌ À§Ä¡¸¦ º¯°æÇÒ ¼ö ÀÖ½À´Ï´Ù.
UDS_HORZ0x40À̸§ÀÖ´Â ¿É¼Ç "Horz". ÄÜÆ®·ÑÀÇ È­»ìÇ¥°¡ À§ ¾Æ·¡°¡ ¾Æ´Ï¶ó Á¿츦 °¡¸®Åµ´Ï´Ù.
UDS_NOTHOUSANDS0x80Ä£±¸ ÄÜÆ®·Ñ¿¡ ¼¼ÀÚ¸®¸¶´Ù »çÀÌ¿¡ õÀÇ ÀÚ¸® °¡¸§ÀÚ¸¦ »ðÀÔÇÏÁö ¾Ê½À´Ï´Ù.
UDS_HOTTRACK0x100ÄÜÆ®·ÑÀº "ÇÖ Æ®·¡Å·" ÇàÀ§¸¦ ÇÕ´Ï´Ù. Áï, ¸¶¿ì½º°¡ Áö³ª°¥ ¶§ ÄÜÆ®·Ñ ¹öÆ°À» °­Á¶ÇÕ´Ï´Ù. ÀÌ ¿É¼ÇÀº Windows XP¿¡¼­ ¹ÙÅÁÈ­¸é Å׸¶°¡ ¿À¹ö¶óÀ̵å ÇÏ¸é ¹«½ÃµË´Ï´Ù.
(hex) 

Ä£±¸ ÄÜÆ®·Ñ ¾È¿¡ º¸¿©Áö´Â ¼ýÀÚ Çü½ÄÀº ½ÊÁø Çü½Ä¿¡¼­ ½ÊÀ°Áø Çü½ÄÀ¸·Î ¹Ù²Ü ¼ö ÀÖ½À´Ï´Ù. ´ÙÀ½ ¿¹Á¦¸¦ µû¸£¸é µË´Ï´Ù:

+ +
Gui +LastFound
+SendMessage, 1133, 16, 0, msctls_updown321 ; 1133Àº UDM_SETBASEÀÔ´Ï´Ù
+ +

±×·¸Áö¸¸, ÀÌ°ÍÀº Ä£±¸ ÄÜÆ®·Ñ¿¡¸¸ ¿µÇâÀ» ÁÝ´Ï´Ù. UpDownÀÇ º¸°íµÈ À§Ä¡¿¡´Â ¿µÇâÀ» ¹ÌÄ¡Áö ¾Ê½À´Ï´Ù.

+

 

+ + + + + + + + + + + + + + + + + + + + + + + + + + +
Picture ½ºÅ¸ÀÏ°ª¼³¸í
default None
forced ¾ÆÀÌÄÜ°ú Ä¿¼­´Â SS_ICON.
+ ´Ù¸¥ À̹ÌÁö À¯ÇüÀº SS_BITMAP.
SS_REALSIZECONTROL0x40[Windows XP ÀÌÈÄ] ºñÆ®¸ÊÀ» ÄÜÆ®·ÑÀÇ Å©±â¿¡ ¸ÂÃä´Ï´Ù.
SS_CENTERIMAGE0x200ºñÆ®¸ÊÀ» °¡¿îµ¥ Á¤·ÄÇÕ´Ï´Ù. ºñÆ®¸ÊÀÌ ³Ê¹« Å©¸é Àß·Á ³ª°©´Ï´Ù. ÅؽºÆ® ÄÜÆ®·Ñ¿¡ ´ëÇÏ¿© ÄÜÆ®·Ñ¿¡ ÇÑÁÙÀÇ ÅؽºÆ®°¡ µé¾î ÀÖÀ¸¸é, ÅؽºÆ®´Â °¡´ÉÇÑ ³ôÀÌ ¾È¿¡¼­ ¼öÁ÷À¸·Î °¡¿îµ¥ Á¤·ÄµË´Ï´Ù. +

Microsoft Windows XP: ÀÌ ½ºÅ¸ÀÏÀº »ç¿ëµÇÁö ¾Ê´Â ºÎºÐÀ» ´õ ÀÌ»ó ºñÆ®¸ÊÀ̳ª ¾ÆÀÌÄÜÀÇ Á»ó Çȼ¿ÀÇ »öÀ¸·Î ä¿ìÁö ¾Ê½À´Ï´Ù. »ç¿ëµÇÁö ¾Ê´Â ºÎºÐÀº ¿©ÀüÈ÷ ¹è°æ»öÀ¸·Î ³²¾Æ ÀÖ½À´Ï´Ù.

+

 

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Button, Checkbox, Radio, ±×¸®°í GroupBox ½ºÅ¸ÀÏ°ª¼³¸í
default 

BS_MULTILINE (GroupBox Á¦¿Ü, ¹öÆ° Á¦¿Ü, üũ¹Ú½º Á¦¿Ü, ±×¸®°í ¸í½ÃÀûÀ¸·Î ³Êºñ¿Í ³ôÀÌ°¡ ¼³Á¤µÇÁö ¾ÊÀº ¶óµð¿À ¹öÆ° Á¦¿Ü, ÅؽºÆ® ¾È¿¡ CR/LF ¹®ÀÚ°¡ À־ Á¦¿Ü)

+

WS_TABSTOP (GroupBox Á¦¿Ü) -- ±×·¸Áö¸¸, °¢ ¶óµð¿À ±×·ì¿¡¼­ ù ¹ø° ¹öÆ°¸¸ ±âº»À¸·Î WS_TABSTOPÀÌ ÀÖ½À´Ï´Ù. °Ô´Ù°¡, ¶óµð¿À ¹öÆ°Àº BS_NOTIFYÀÌ À־ ´õºí Ŭ¸¯À» ŽÁöÇÒ ¼ö ÀÖ½À´Ï´Ù.

forced ¹öÆ°: BS_PUSHBUTTON ¶Ç´Â BS_DEFPUSHBUTTON
+ ¶óµð¿À: BS_AUTORADIOBUTTON
+ üũ¹Ú½º: BS_AUTOCHECKBOX ¶Ç´Â BS_AUTO3STATE
+ ±×·ì¹Ú½º: BS_GROUPBOX
BS_LEFT0x100+/-Left. ÅؽºÆ®¸¦ ¿ÞÂÊ Á¤·ÄÇÕ´Ï´Ù.
BS_PUSHLIKE0x1000üũ¹Ú½º³ª ¶óµð¿À ¹öÆ°ÀÌ Çª½Ã ¹öưó·³ º¸ÀÌ°í ÇൿÇÏ°Ô ¸¸µì´Ï´Ù. ¹öÆ°Àº ´­·Á ÀÖÁö ¾Ê°Å³ª üũµÇ¾î ÀÖÁö ¾ÊÀ¸¸é Æ¢¾î ³ª¿Í º¸ÀÔ´Ï´Ù. ´©¸£°Å³ª üũÇÒ ¶§ ¾¦ µé¾î°©´Ï´Ù.
BS_RIGHT0x200+/-Right. ÅؽºÆ®¸¦ ¿ìÃø Á¤·ÄÇÕ´Ï´Ù.
BS_RIGHTBUTTON0x20+Right (Áï, +Right´Â BS_RIGHT ±×¸®°í BS_RIGHTBUTTON¸¦ µÑ ´Ù Æ÷ÇÔÇÏÁö¸¸, -Right´Â BS_RIGHT¸¸ Á¦°ÅÇÕ´Ï´Ù. BS_RIGHTBUTTON´Â Á¦°ÅÇÏÁö ¾Ê½À´Ï´Ù). üũ¹Ú½º ³×¸ð ¶Ç´Â ¶óµð¿À ¹öÆ° µ¿±×¶ó¹Ì¸¦ ÄÜÆ®·ÑÀÇ ¿ÞÂÊ ´ë½Å¿¡ ¿À¸¥ÂÊ¿¡ ¹èÄ¡ÇÕ´Ï´Ù.
BS_BOTTOM0x800ÅؽºÆ®¸¦ ÄÜÆ®·Ñ ³ôÀÌÀÇ ¾Æ·¡¿¡ ¹èÄ¡ÇÕ´Ï´Ù.
BS_CENTER0x300+/-Center. ÅؽºÆ®¸¦ ÄÜÆ®·Ñ ³ÊºñÀÇ Áß¾Ó¿¡ ¼öÆòÀ¸·Î ¹èÄ¡ÇÕ´Ï´Ù.
BS_DEFPUSHBUTTON0x1+/-Default. µÎ²¨¿î °ËÁ¤»ö Å׵θ®¸¦ °¡Áø Ǫ½¬ ¹öÆ°À» »ý¼ºÇÕ´Ï´Ù. ¹öÆ°ÀÌ ´ëÈ­»óÀÚ ¾È¿¡ ÀÖÀ¸¸é, »ç¿ëÀÚ´Â ±× ¹öÆ°¿¡ ÀÔ·Â ÃÊÁ¡ÀÌ ¾ø´õ¶óµµ ENTER Å°¸¦ ´­·¯ ±× ¹öÆ°À» ¼±ÅÃÇÒ ¼ö ÀÖ½À´Ï´Ù. ÀÌ ½ºÅ¸ÀÏ·Î »ç¿ëÀÚ´Â Áï½Ã ´ëºÎºÐÀÇ °¡´ÉÇÑ ¿É¼ÇÀ» ¼±ÅÃÇÒ ¼ö ÀÖ½À´Ï´Ù.
BS_MULTILINE0x2000+/-Wrap. ÅؽºÆ®¸¦ ¿©·¯ÁÙ·Î ³Ñ±é´Ï´Ù. ÅؽºÆ®°¡ ÄÜÆ®·Ñ ³Êºñº¸´Ù ³Ê¹« ±æ¾î ÇÑ ÁÙ¿¡ ¸ÂÃâ ¼ö ¾øÀ¸¸é ¶ÇÇÑ ¶óÀÎÇǵ带 Çã¿ëÇؼ­ (`n) »õ ÁÙÀÇ ÅؽºÆ®¸¦ ½ÃÀÛÇÒ ¼ö ÀÖ½À´Ï´Ù.
BS_TOP0x400ÅؽºÆ®¸¦ ÄÜÆ®·Ñ ³ôÀÌÀÇ »ó´Ü¿¡ ¹èÄ¡ÇÕ´Ï´Ù.
BS_VCENTER0xC00ÄÜÆ®·ÑÀÇ ³ôÀÌ¿¡ ¼öÁ÷À¸·Î ÅؽºÆ®¸¦ Áß¾Ó¿¡ ¹èÄ¡ÇÕ´Ï´Ù.
BS_FLAT0x8000¹öÆ°ÀÌ Æò¸éÀÓÀ» ÁöÁ¤ÇÕ´Ï´Ù; 3-D È¿°ú¸¦ À§ÇØ ±âº» ½¦À̵ùÀ» »ç¿ëÇÏÁö ¾Ê½À´Ï´Ù.
+ +

 

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
DropDownList ±×¸®°í ComboBox ½ºÅ¸ÀÏ°ª¼³¸í
default WS_TABSTOP (+/-Tabstop)
+ DropDownList: WS_VSCROLL
+ ComboBox: WS_VSCROLL, CBS_AUTOHSCROLL
forced DropDownList: CBS_DROPDOWNLIST
+ ComboBox: Either CBS_DROPDOWN ¶Ç´Â CBS_SIMPLE
CBS_AUTOHSCROLL0x40+/-Limit. »ç¿ëÀÚ°¡ ÁÙ³¡¿¡ ¹®ÀÚ¸¦ ŸÀÚÇϸé ÀÚµ¿À¸·Î ÅؽºÆ®¸¦ ÆíÁý ÄÜÆ®·Ñ ¾È¿¡¼­ ¿À¸¥ÂÊÀ¸·Î °¨½À´Ï´Ù. ÀÌ ½ºÅ¸ÀÏ ¼³Á¤µÇ¾î ÀÖÁö ¾ÊÀ¸¸é, ¿ÀÁ÷ »ç°¢ °æ°è ¾È¿¡ ¸Â´Â ÅؽºÆ®¸¸ º¸ÀÔ´Ï´Ù.
CBS_DISABLENOSCROLL0x800½ºÅ©·Ñ ÇÒ ¸¸Å­ ÃæºÐÈ÷ Ç׸ñÀÌ ¾øÀ» ¶§ ºñÈ°¼ºÈ­ µÈ ¼öÁ÷ ½ºÅ©·Ñ ¹Ù¸¦ ¸®½ºÆ® ¹Ú½º¿¡ º¸¿©ÁÝ´Ï´Ù. ÀÌ ½ºÅ¸ÀÏÀÌ ¾ø´Ù¸é, ÃæºÐÈ÷ Ç׸ñÀÌ ¾øÀ» ¶§ ½ºÅ©·Ñ ¹Ù°¡ º¸ÀÌÁö ¾Ê½À´Ï´Ù.
CBS_LOWERCASE0x4000+/-Lowercase. ÄÞº¸ ¹Ú½ºÀÇ ÆíÁý ÄÜÆ®·Ñ ¾ÈÀ¸·Î ŸÀÚµÇ¾î µé¾î°¡´Â ´ë¹®ÀÚ¸¦ ¼Ò¹®ÀÚ·Î º¯È¯ÇÕ´Ï´Ù.
CBS_NOINTEGRALHEIGHT0x400ÄÞº¸ ¹Ú½º¸¦ ¸¸µé ¶§ ¾îÇÃÀÌ ÁöÁ¤ÇÑ Å©±â´ë·Î Á¤È®ÇÏ°Ô °°Àº Å©±â°¡ µÇµµ·Ï ÁöÁ¤ÇÕ´Ï´Ù. º¸Åë, + Windows CE´Â ÄÞº¸ ¹Ú½º¸¦ ºÎºÐÀûÀ¸·Î Ç׸ñÀ» º¸¿©ÁÖÁö ¾Êµµ·Ï Å©±â¸¦ ÁöÁ¤ÇÕ´Ï´Ù.
CBS_OEMCONVERT0x80 + ÄÞº¸ ¹Ú½ºÀÇ ÆíÁý ÄÜÆ®·Ñ¿¡ ŸÀÚµÇ¾î µé¾î°¡´Â ÅؽºÆ®¸¦ Windows CE ¹®ÀÚ ÁýÇÕÀ¸·ÎºÎÅÍ OEM ¹®ÀÚ ÁýÇÕÀ¸·Î ±×¸®°í ´Ù½Ã Windows CE ¹®ÀÚ ÁýÇÕÀ¸·Î º¯È¯ÇÕ´Ï´Ù. ÀÌ ½ºÅ¸ÀÏÀº ÆÄÀÏ À̸§ÀÌ µé¾î ÀÖ´Â ÄÞº¸ ¹Ú½º¿¡ ¾ÆÁÖ À¯¿ëÇÕ´Ï´Ù. CBS_DROPDOWN ½ºÅ¸ÀÏ·Î »ý¼ºµÈ ÄÞº¸ ¹Ú½º¿¡¸¸ Àû¿ëµË´Ï´Ù.
CBS_SIMPLE0x1+/-Simple (ÄÞº¸¹Ú½º Àü¿ë). ¸®½ºÆ® ¹Ú½º¸¦ ¾ðÁ¦³ª º¸¿©ÁÝ´Ï´Ù. ¸®½ºÆ® ¹Ú½ºÀÇ ÇöÀç ¼±ÅÃÀº ÆíÁý ÄÜÆ®·Ñ ¾È¿¡ º¸¿©Áý´Ï´Ù.
CBS_SORT0x100+/-Sort. µå·Ó ¸®½ºÆ®ÀÇ Ç׸ñµéÀ» ¾ËÆĺª ¼ø¼­·Î ¼³Á¤ÇÕ´Ï´Ù.
CBS_UPPERCASE0x2000+/-Uppercase. ÄÞº¸ ¹Ú½ºÀÇ ÆíÁý ÄÜÆ®·Ñ ¾ÈÀ¸·Î ŸÀÚµÇ¾î µé¾î¿À´Â ¼Ò¹®ÀÚ¸¦ ´ë¹®ÀÚ·Î º¯°æÇÕ´Ï´Ù.
+

 

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ListBox ½ºÅ¸ÀÏ°ª±â¼ú
default WS_TABSTOP, LBS_USETABSTOPS, WS_VSCROLL, ±×¸®°í WS_EX_CLIENTEDGE (È®Àå ½ºÅ¸ÀÏ E0x200).
forced LBS_NOTIFY (´õºí Ŭ¸¯ ŽÁö Áö¿ø)
LBS_DISABLENOSCROLL0x1000 + ¹Ú½º¿¡ Ç׸ñÀÌ ÃæºÐÇÏÁö ¾Ê¾Æ ½ºÅ©·Ñ ÇÒ ¼ö ¾øÀ» ¶§ ºÒ´ÉÈ­ µÈ ¼öÁ÷ ½ºÅ©·Ñ ¹Ù¸¦ º¸¿©ÁÝ´Ï´Ù. ÀÌ ½ºÅ¸ÀÏÀ» ÁöÁ¤ÇÏÁö ¾ÊÀ¸¸é, ½ºÅ©·Ñ¹Ù´Â ¸®½ºÆ® ¹Ú½º¿¡ ÃæºÐÇÑ Ç׸ñÀÌ ¾øÀ» ¶§ º¸ÀÌÁö ¾Ê½À´Ï´Ù.
LBS_NOINTEGRALHEIGHT0x100¸®½ºÆ® ¹Ú½º°¡ ¾îÇø®ÄÉÀ̼ǿ¡ ÀÇÇÏ¿© »ý¼ºµÉ ¶§ ÁöÁ¤µÈ Å©±â¸¦ Á¤È®ÇÏ°Ô °¡Áöµµ·Ï ÁöÁ¤ÇÕ´Ï´Ù.
LBS_EXTENDEDSEL0x800+/-Multi. ÄÜÆ®·Ñ Ŭ¸¯ ±×¸®°í ½¬ÇÁÆ® Ŭ¸¯À¸·Î ´ÙÁß ¼±ÅÃÀ» Çã¿ëÇÕ´Ï´Ù.
LBS_MULTIPLESEL0x8´ÙÁß ¼±ÅÃÀ» °£·«È­ÇÑ ¹öÀü. control-click°ú shift-clickÀÌ ºÒÇÊ¿äÇÕ´Ï´Ù. º¸ÅëÀÇ ¿ÞŬ¸¯¸¸À¸·Î ¼±ÅÃÀ» È®ÀåÇϰųª ¼±ÅÃµÈ Ç׸ñÀ» ÇØÁ¦ÇÒ ¼ö ÀÖ½À´Ï´Ù.
LBS_NOSEL0x4000+/-ReadOnly. »ç¿ëÀÚ´Â ¸®½ºÆ® ¹Ú½º ¹®ÀÚ¿­À» º¼ ¼ö´Â ÀÖÁö¸¸ ¼±ÅÃÇÒ ¼ö´Â ¾ø½À´Ï´Ù.
LBS_SORT0x2+/-Sort. ¸®½ºÆ® ¹Ú½º ¾ÈÀÇ Ç׸ñÀ» ¾ËÆĺª ¼øÀ¸·Î Á¤·ÄÇÕ´Ï´Ù.
LBS_USETABSTOPS0x80¹®ÀÚ¿­À» ±×¸± ¶§ ListBox°¡ ÅÇ ¹®ÀÚ¸¦ ÀÎÁöÇÏ°í È®´ëÇÒ ¼ö ÀÖ½À´Ï´Ù. ±âº» ÅÇ À§Ä¡´Â 32 ´ëÈ­»óÀÚ ¹Ú½º ´ÜÀ§ÀÔ´Ï´Ù. ´ëÈ­»óÀÚ ¹Ú½º ´ÜÀ§(dialog box unit)´Â ÇöÀç ´ëÈ­»óÀÚÀÇ ±âº» ³Êºñ ´ÜÀ§ÀÇ 1/4¿Í µ¿ÀÏÇÕ´Ï´Ù.
+

 

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ListView ½ºÅ¸ÀÏ°ª±â¼ú
default WS_TABSTOP, LVS_REPORT, LVS_SHOWSELALWAYS, LVS_EX_FULLROWSELECT, LVS_EX_HEADERDRAGDROP, WS_EX_CLIENTEDGE (E0x200)
forced None
LVS_ALIGNLEFT0x800¾ÆÀÌÄÜ Ã¢¿¡¼­ Ç׸ñµéÀº ¿ÞÂÊ Á¤·ÄµË´Ï´Ù.
LVS_ALIGNTOP0¾ÆÀÌÄÜ Ã¢¿¡¼­ Ç׸ñµéÀº À§ÂÊ¿¡ Á¤·ÄµË´Ï´Ù. ±âº»°ªÀÔ´Ï´Ù.
LVS_AUTOARRANGE0x100¾ÆÀÌÄÜÀº ÀÚµ¿À¸·Î Á¤·ÄµË´Ï´Ù.
LVS_EDITLABELS0x200+/-ReadOnly. -ReadOnly (¶Ç´Â +0x200)À» ÁöÁ¤ÇÏ¸é »ç¿ëÀÚ´Â °¢ ÇàÀÇ Ã¹ Çʵ带 Á¦ÀÚ¸®¿¡¼­ ÆíÁýÇÒ ¼ö ÀÖ½À´Ï´Ù.
LVS_ICON0+Icon. Å«-¾ÆÀÌÄÜ º¸±â¸¦ ÁöÁ¤ÇÕ´Ï´Ù.
LVS_LIST0x3+List. ¸®½ºÆ® º¸±â¸¦ ÁöÁ¤ÇÕ´Ï´Ù.
LVS_NOCOLUMNHEADER0x4000+/-Hdr. º¸°í¼­ º¸±â¿¡ ¿­ Çì´õ¸¦ º¸¿©ÁÖÁö ¾Ê½À´Ï´Ù.
LVS_NOLABELWRAP0x80¾ÆÀÌÄÜ º¸±â¿¡¼­ Item ÅؽºÆ®¸¦ ÇÑ ÁÙ¿¡ º¸¿©ÁÝ´Ï´Ù. ±âº»°ªÀ¸·Î, Ç׸ñÀº ¾ÆÀÌÄÜ º¸±â¿¡¼­ Áٳѱâ±â µË´Ï´Ù.
LVS_NOSCROLL0x2000½ºÅ©·ÑÀ» ²ü´Ï´Ù. ¸ðµç Ç׸ñÀº Ŭ¶óÀ̾ðÆ® ±¸¿ª ¾È¿¡ ÀÖ¾î¾ß ÇÕ´Ï´Ù. ÀÌ ½ºÅ¸ÀÏÀº LVS_LIST ¶Ç´Â LVS_REPORT ½ºÅ¸ÀÏ°ú ȣȯµÇÁö ¾Ê½À´Ï´Ù.
LVS_NOSORTHEADER0x8000+/-NoSortHdr. ¿­ Çì´õ°¡ ¹öưó·³ ÀÛµ¿ÇÏÁö ¾Ê½À´Ï´Ù. º¸°í¼­ º¸±â¿¡¼­ ¿­ Çì´õ¸¦ Ŭ¸¯Çصµ ¾Æ¹« Á¶Ä¡µµ ÇÏÁö ¾ÊÀ» °æ¿ì¿¡ ÀÌ ½ºÅ¸ÀÏÀ» »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù.
LVS_OWNERDATA0x1000ÀÌ ½ºÅ¸ÀÏÀº °¡»ó ¸®½ºÆ® ºä ÄÜÆ®·ÑÀ» ÁöÁ¤ÇÕ´Ï´Ù. (¿ÀÅäÇÖÅ°°¡ Á÷Á¢ Áö¿øÇÏÁö ¾Ê½À´Ï´Ù).
LVS_OWNERDRAWFIXED0x400»ç¿ëÀÚ Ã¢ÀÌ WM_DRAWITEM ¸Þ½ÃÁö¿¡ ÀÀ´äÇÏ¿© º¸°í¼­ º¸±â·Î Ç׸ñµéÀ» ±×¸³´Ï´Ù. (¿ÀÅäÇÖÅ°°¡ Á÷Á¢ Áö¿øÇÏÁö ¾Ê½À´Ï´Ù).
LVS_REPORT0x1+Report. º¸°í¼­ º¸±â¸¦ ÁöÁ¤ÇÕ´Ï´Ù.
LVS_SHAREIMAGELISTS0x40ÄÜÆ®·ÑÀÌ Æı«µÇ´õ¶óµµ À̹ÌÁö ¸®½ºÆ®°¡ »èÁ¦µÇÁö ¾Ê½À´Ï´Ù. ÀÌ ½ºÅ¸ÀÏÀº ´ÙÁß ¸®½ºÆ® ºä ÄÜÆ®·Ñ¿¡ °°Àº À̹ÌÁö¸¦ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù.
LVS_SHOWSELALWAYS0x8¼±ÅÃÀÌ ¾ðÁ¦³ª º¸ÀÔ´Ï´Ù. ÄÜÆ®·Ñ¿¡ Å°º¸µå ÃÊÁ¡ÀÌ ¾ø´õ¶óµµ ¸¶Âù°¡ÁöÀÔ´Ï´Ù.
LVS_SINGLESEL0x4+/-Multi. ÇÑ ¹ø¿¡ ¿ÀÁ÷ ÇÑ Ç׸ñ¸¸ ¼±ÅÃÇÒ ¼ö ÀÖ½À´Ï´Ù. ±âº»°ªÀ¸·Î ¿©·¯ Ç׸ñÀ» ¼±ÅÃÇÒ ¼ö ÀÖ½À´Ï´Ù.
LVS_SMALLICON0x2+IconSmall. ÀÛÀº ¾ÆÀÌÄÜ º¸±â¸¦ ÁöÁ¤ÇÕ´Ï´Ù.
LVS_SORTASCENDING0x10+/-Sort. ÇàµéÀº ù ÇʵåÀÇ ³»¿ë¿¡ ±â¹ÝÇÏ¿© ¿À¸§Â÷¼øÀ¸·Î Á¤·ÄµË´Ï´Ù.
LVS_SORTDESCENDING0x20+/-SortDesc. À§¿Í °°Áö¸¸ ³»¸²Â÷¼øÀÔ´Ï´Ù.
LVS_EX_BORDERSELECTLV0x8000Ç׸ñÀÌ ¼±ÅÃµÉ ¶§ Ç׸ñÀÌ °­Á¶µÇ´Â °ÍÀÌ ¾Æ´Ï¶ó Ç׸ñÀÇ Å׵θ® »öÀÌ ¹Ù²ò´Ï´Ù (ÃֽŠ¿î¿µ üÁ¦¿¡¼­´Â ÀÛµ¿ÇÏÁö ¾ÊÀ» ¼ö ÀÖ½À´Ï´Ù).
LVS_EX_CHECKBOXESLV0x4

+/-Checked. °¢ Ç׸ñ¸¶´Ù üũ¹Ú½º¸¦ º¸¿©ÁÝ´Ï´Ù. ÀÌ ½ºÅ¸ÀÏÀ» ¼³Á¤Çϸé, ÄÜÆ®·ÑÀº DrawFrameControl¸¦ »ç¿ëÇÏ¿© µÎ °³ÀÇ À̹ÌÁö¸¦ °¡Áø »óÅ À̹ÌÁö ¸®½ºÆ®¸¦ »ý¼ºÇÏ°í ¼³Á¤ÇÕ´Ï´Ù. + »óÅ À̹ÌÁö 1Àº üũ Ç¥½Ã°¡ ¾ø´Â ¹Ú½ºÀÌ°í, »óÅ À̹ÌÁö 2´Â üũ Ç¥½ÃµÈ ¹Ú½ºÀÔ´Ï´Ù. »óÅ À̹ÌÁö¸¦ 0À¸·Î ¼³Á¤Çϸé üũ ¹Ú½º°¡ ¿ÏÀüÈ÷ Á¦°ÅµË´Ï´Ù.

+

+ Windows XP ÀÌÈÄ: üũ¹Ú½º´Â ¸ðµç ¸®½ºÆ® ºä ¸ðµå¿¡¼­ º¸ÀÌ°í ÀÛµ¿ÇÕ´Ï´Ù. ´Ü, Windows XP¿¡¼­ µµÀÔµÈ Å¸ÀϺä´Â Á¦¿ÜÇÕ´Ï´Ù. üũ¹Ú½º¸¦ ŸÀÏ º¸±â ¸ðµå¿¡¼­ Ŭ¸¯Çϸé Ç׸ñ¸¸ ¼±Åõ˴ϴÙ; »óÅ´ ¹Ù²îÁö ¾Ê½À´Ï´Ù.

LVS_EX_FLATSBLV0x100¸®½ºÆ® ºä¿¡¼­ ÆòÆòÇÑ ½ºÅ©·Ñ ¹Ù¸¦ ÄÕ´Ï´Ù.
LVS_EX_FULLROWSELECTLV0x20ÇàÀÌ ¼±ÅÃµÉ ¶§, ±×ÀÇ ¸ðµç Çʵ尡 °­Á¶µË´Ï´Ù. ÀÌ ½ºÅ¸ÀÏÀº LVS_REPORT ½ºÅ¸ÀÏ°í Á¶ÇÕÇؼ­¸¸ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù.
LVS_EX_GRIDLINESLV0x1+/-Grid. °ÝÀÚ ÁÙÀ» Çà°ú ¿­¿¡ º¸¿©ÁÝ´Ï´Ù. ÀÌ ½ºÅ¸ÀÏÀº LVS_REPORT °ú Á¶ÇÕÇؼ­¸¸ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù.
LVS_EX_HEADERDRAGDROPLV0x10¸®½ºÆ® ºä ÄÜÆ®·Ñ¿¡¼­ ²ø¾î ¶³±¸±â·Î ¿­À» Àç¹èÄ¡ÇÒ ¼ö ÀÖ½À´Ï´Ù. ÀÌ ½ºÅ¸ÀÏÀº LVS_REPORT ½ºÅ¸ÀÏÀ» »ç¿ëÇÏ´Â ¸®½ºÆ® ºä ÄÜÆ®·Ñ¿¡¼­¸¸ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù.
LVS_EX_INFOTIPLV0x400¸®½ºÆ® ºä ÄÜÆ®·ÑÀÌ LVS_EX_INFOTIP ½ºÅ¸ÀÏÀ» »ç¿ëÇÒ ¶§, Ç׸ñÀÇ ÅøÆÁÀ» º¸¿©ÁÖ±â Àü¿¡ LVN_GETINFOTIP °íÁö ¸Þ½ÃÁö°¡ ºÎ¸ð â¿¡ Àü¼ÛµË´Ï´Ù.
LVS_EX_LABELTIPLV0x4000 + ¸®½ºÆ® ºä ¸ðµå¿¡¼­ ºÎºÐÀûÀ¸·Î ¼ûÀº ¶óº§¿¡ ÅøÆÁ ÅؽºÆ®°¡ ¾ø´Ù¸é, ±× ¶óº§À» ¾ðÆúµåÇÕ´Ï´Ù. ÀÌ ½ºÅ¸ÀÏÀÌ ¼³Á¤µÇÁö ¾ÊÀ¸¸é, ¸®½ºÆ® ºä ÄÜÆ®·ÑÀº ¿ÀÁ÷ Å« ¾ÆÀÌÄÜ ¸ðµå¿¡ ´ëÇؼ­¸¸ ºÎºÐÀûÀ¸·Î ¼ûÀº ¶óº§À» ¾ðÆúµåÇÕ´Ï´Ù. Windows XP ÀÌ»óÀ» ¿ä±¸ÇÕ´Ï´Ù. ¾Æ´Ï¸é Internet Explorer 5.0 ÀÌ»ó°ú ¹èÆ÷µÇ´Â DLLÀÌ ÇÊ¿äÇÕ´Ï´Ù. ÁÖÀÇ: ¾î¶² À©µµ¿ìÁî ¹öÀü¿¡¼­´Â GUI âÀÌ Ç×»ó À§¿¡ ¿Àµµ·Ï ¼³Á¤µÇ¾î ÀÖÀ» °æ¿ì ÀÌ ½ºÅ¸ÀÏ Á¦´ë·Î ÀÛµ¿ÇÏÁö ¾ÊÀ» ¼ö ÀÖ½À´Ï´Ù.
LVS_EX_MULTIWORKAREASLV0x2000¸®½ºÆ®-ºä ÄÜÆ®·Ñ¿¡ LVS_AUTOARRANGE ½ºÅ¸ÀÏÀÌ ÀÖ´Ù¸é, ±× ÄÜÆ®·ÑÀº Çϳª ÀÌ»óÀÇ ÀÛ¾÷ ±¸¿ªÀÌ Á¤ÀÇµÉ ¶§±îÁö ±×ÀÇ ¾ÆÀÌÄܵéÀ» ÀÚµ¿ Á¤·ÄÇÏÁö ¾Ê½À´Ï´Ù (LVM_SETWORKAREAS ÂüÁ¶). ÀÌ ½ºÅ¸ÀÏÀº ÀÛ¾÷ ±¸¿ªÀÌ Á¤ÀǵDZâ Àü¿¡ ±×¸®°í ÄÜÆ®·Ñ¿¡ Ç׸ñµéÀÌ ¸ðµÎ Ãß°¡µÇ±â Àü¿¡ ¼³Á¤ÇØ¾ß È¿°ú°¡ ÀÖ½À´Ï´Ù.
LVS_EX_ONECLICKACTIVATELV0x40»ç¿ëÀÚ°¡ Ç׸ñÀ» Ŭ¸¯ÇÏ¸é ºÎ¸ð â¿¡ LVN_ITEMACTIVATE °íÁö ¸Þ½ÃÁö¸¦ Àü¼ÛÇÕ´Ï´Ù. ÀÌ ½ºÅ¸ÀÏÀº ¶Ç ¸®½ºÆ® ºä ÄÜÆ®·Ñ¿¡ ÇÖ Æ®·¡Å·À» È°¼ºÈ­ ÇÕ´Ï´Ù. ÇÖ Æ®·¡Å·À̶õ ¸¶¿ì½º³ª Ç׸ñ À§¸¦ Áö³ª°¥ ¶§, °­Á¶¸¦ ÇÏÁö¸¸ ¼±ÅÃÇÏÁö´Â ¾Ê´Â ±â´ÉÀÔ´Ï´Ù.
LVS_EX_REGIONALLV0x200 + ¸®½ºÆ® ºä â ±¸¿ª¿¡ SetWindowRgnÀ» »ç¿ëÇÏ¿© ¿ÀÁ÷ Ç׸ñ ¾ÆÀÌÄÜ°ú ÅؽºÆ®¸¸ Æ÷ÇÔÇϵµ·Ï ÁöÁ¤ÇÕ´Ï´Ù. +Ç׸ñÀÇ ÀϺΰ¡ ¾Æ´Ñ ºÎºÐµéÀº â ±¸¿ª¿¡¼­ ¹èÁ¦µË´Ï´Ù. ÀÌ ½ºÅ¸ÀÏÀº LVS_ICON ½ºÅ¸ÀÏÀ» »ç¿ëÇÏ´Â ¸®½ºÆ® ºä ÄÜÆ®·Ñ¿¡¸¸ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù.
LVS_EX_SIMPLESELECTLV0x100000¾ÆÀÌÄÜ º¸±â¿¡¼­, ÄÜÆ®·ÑÀÇ »óÅ À̹ÌÁö¸¦ Å« ÀÔü ¾ÆÀÌÄÜÀÇ ¿ì»óÀ¸·Î À̵¿½Ãŵ´Ï´Ù. ´Ù¸¥ º¸±â ¸ðµå¿¡¼­´Â ¾Æ¹« º¯È­°¡ ¾ø½À´Ï´Ù. »ç¿ëÀÚ°¡ ½ºÆäÀ̽º ¹Ù¸¦ ´­·¯ »óŸ¦ ¹Ù²Ü ¶§, ÃÊÁ¡ÀÌ ÀÖ´Â Ç׸ñÀÌ ¾Æ´Ï¶ó ¼±ÅÃµÈ ¸ðµç Ç׸ñÀÌ »óŸ¦ ¹Ù²ß´Ï´Ù. Windows XP ÀÌ»óÀ» ¿ä±¸ÇÕ´Ï´Ù. +
LVS_EX_SUBITEMIMAGESLV0x2À̹ÌÁö¸¦ ù Çʵ带 ³Ñ¾î¼­ º¸¿©ÁÝ´Ï´Ù. ÀÌ ½ºÅ¸ÀÏÀº LVS_REPORT ½ºÅ¸ÀÏ°ú Á¶ÇÕÇؼ­¸¸ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù.
LVS_EX_TRACKSELECTLV0x8¸®½ºÆ® ºä ÄÜÆ®·Ñ¿¡ ÇÖ Æ®·¢ ¼±ÅÃÀ» È°¼ºÈ­ ÇÕ´Ï´Ù. ÇÖ Æ®·¢ ¼±ÅÃÀº Ç× Ç׸ñÀÌ ¸¶¿ì½º°¡ Ç׸ñ À§¿¡ ÀÏÁ¤ ½Ã°£ ÀÌ»ó ¸Ó¹«¸£¸é ÀÚµ¿À¸·Î ¼±ÅõǴ °ÍÀÔ´Ï´Ù. LVM_SETHOVERTIME ¸Þ½ÃÁö·Î ¸Ó¹³ ½Ã°£Àº ±âº» ½Ã½ºÅÛ ¼³Á¤À¸·ÎºÎÅÍ ¹Ù²Ü ¼ö ÀÖ½À´Ï´Ù. ÀÌ ½ºÅ¸ÀÏÀº ¸®½ºÆ® ºä ÄÜÆ®·ÑÀÇ ¸ðµç ½ºÅ¸ÀÏ¿¡ Àû¿ëµË´Ï´Ù. ÇÖ Æ®·¢ ¼±ÅÃÀÌ ÄÑÁ® ÀÖ´ÂÁö È®ÀÎÇÏ·Á¸é SystemParametersInfo¸¦ È£ÃâÇØ º¸¸é ¾Ë ¼ö ÀÖ½À´Ï´Ù.
LVS_EX_TWOCLICKACTIVATELV0x80»ç¿ëÀÚ°¡ Ç׸ñÀ» ´õºí Ŭ¸¯ÇÒ ¶§ ¸®½ºÆ®-ºä ÄÜÆ®·ÑÀº LVN_ITEMACTIVATE °íÁö ¸Þ½ÃÁö¸¦ ºÎ¸ð â¿¡ Àü¼ÛÇÕ´Ï´Ù. ÀÌ ½ºÅ¸ÀÏÀº ¶Ç ¸®½ºÆ® ºä ÄÜÆ®·Ñ¿¡ ÇÖ Æ®·¡Å·À» È°¼ºÈ­ ÇÕ´Ï´Ù. ÇÖ Æ®·¡Å·À̶õ ¸¶¿ì½º°¡ Ç׸ñ À§¸¦ Áö³ª¸é, °­Á¶ÇÏ´Â °ÍÀÔ´Ï´Ù. ´Ü, ¼±ÅÃÇÏÁö´Â ¾Ê½À´Ï´Ù.
LVS_EX_UNDERLINECOLDLV0x1000È°¼ºÈ­°¡ °¡´ÉÇÑ ºñ-ÇÖ Ç׸ñµéÀ» ¹ØÁÙ ±×Àº ÅؽºÆ®¿Í ÇÔ²² º¸¿©ÁÝ´Ï´Ù. ÀÌ ½ºÅ¸ÀÏÀº LVS_EX_TWOCLICKACTIVATEµµ ¼³Á¤µÇ¾î ÀÖ¾î¾ß ÇÕ´Ï´Ù.
LVS_EX_UNDERLINEHOTLV0x800È°¼ºÈ­°¡ °¡´ÉÇÑ ÇÖ Ç׸ñµéÀº ¹ØÁÙ ±×Àº ÅؽºÆ®¿Í ÇÔ²² º¸¿©ÁÝ´Ï´Ù. +ÀÌ ½ºÅ¸ÀÏÀº LVS_EX_ONECLICKACTIVATE ¶Ç´Â LVS_EX_TWOCLICKACTIVATEµµ ¼³Á¤µÇ¾î Àֱ⸦ ¿ä±¸ÇÕ´Ï´Ù.
+

 

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
TreeView ½ºÅ¸ÀÏ°ª¼³¸í
default WS_TABSTOP, TVS_SHOWSELALWAYS, TVS_HASLINES, TVS_LINESATROOT, TVS_HASBUTTONS, WS_EX_CLIENTEDGE (E0x200)
forced None
TVS_CHECKBOXES0x100+/-Checked. °¢ Ç׸ñ ¿·¿¡ üũ¹Ú½º¸¦ º¸¿©ÁÝ´Ï´Ù.
TVS_DISABLEDRAGDROP0x10Æ®¸® ºä ÄÜÆ®·ÑÀÌ TVN_BEGINDRAG °íÁö ¸Þ½ÃÁö¸¦ Àü¼ÛÇÏÁö ¸øÇϵµ·Ï ¸·½À´Ï´Ù.
TVS_EDITLABELS0x8+/-ReadOnly. »ç¿ëÀÚ°¡ Æ®¸® ºä Ç׸ñÀÇ À̸§À» ÆíÁýÇϵµ·Ï Çã¿ëÇÕ´Ï´Ù.
TVS_FULLROWSELECT0x1000Æ®¸® ºä¿¡¼­ Àüü ÇàÀ» ¼±ÅÃÇÒ ¼ö ÀÖ½À´Ï´Ù. ¼±ÅÃµÈ Ç׸ñÀÇ Àüü ÇàÀÌ °­Á¶µÇ°í, ÇÑ Ç׸ñÀÇ ¾Æ¹«µ¥³ª Ŭ¸¯Çϸé Àüü ÇàÀÌ ¼±Åõ˴ϴÙ. ÀÌ ½ºÅ¸ÀÏÀº TVS_HASLINES ½ºÅ¸ÀÏ°ú Á¶ÇÕÇÏ¿© ÇÔ²² »ç¿ëÇÒ ¼ö ¾ø½À´Ï´Ù.
TVS_HASBUTTONS0x1+/-Buttons. Ç÷¯½º (+) ±×¸®°í ¸¶À̳ʽº (-) ¹öÆ°À» ºÎ¸ð Ç׸ñ ¿·¿¡ º¸¿©ÁÝ´Ï´Ù. »ç¿ëÀÚ´Â ±× ¹öÆ°À» Ŭ¸¯ÇÏ¿© ºÎ¸ð Ç׸ñÀÇ ÀÚ¼Õ Ç׸ñ ¸®½ºÆ®¸¦ ÆîÄ¡°Å³ª Á¢À» ¼ö ÀÖ½À´Ï´Ù. Ç׸ñ ¹öÆ°À» Æ®¸® ºäÀÇ ·çÆ®¿¡ Æ÷ÇÔ½ÃÅ°·Á¸é, TVS_LINESATROOTµµ ÁöÁ¤ÇØ¾ß ÇÕ´Ï´Ù.
TVS_HASLINES0x2+/-Lines. Ç׸ñÀÇ °èÅëÀ» ÁÙÀ» »ç¿ëÇÏ¿© º¸¿©ÁÝ´Ï´Ù.
TVS_INFOTIP0x800TVN_GETINFOTIP °íÁö¸¦ Àü¼ÛÇØ ÅøÆÁ Á¤º¸¸¦ ¾ò½À´Ï´Ù.
TVS_LINESATROOT0x4+/-Lines. Æ®¸® ºä ÄÜÆ®·ÑÀÇ ·çÆ®¿¡ Ç׸ñµéÀ» ÁÙÀ» »ç¿ëÇØ ¿¬°áÇÕ´Ï´Ù. ÀÌ °ªÀº TVS_HASLINESµµ ¼³Á¤µÇ¾î ÀÖÁö ¾ÊÀ¸¸é ¹«½ÃµË´Ï´Ù.
TVS_NOHSCROLL0x8000+/-HScroll. ¼öÆò ½ºÅ©·ÑÀ» ±ÝÁöÇÕ´Ï´Ù. ¼öÆò ½ºÅ©·Ñ¹Ù¸¦ º¸¿©ÁÖÁö ¾Ê½À´Ï´Ù.
TVS_NONEVENHEIGHT0x4000TVM_SETITEMHEIGHT ¸Þ½ÃÁö·Î Ç׸ñÀÇ ³ôÀ̸¦ Ȧ¼ö ³ôÀÌ·Î ¼³Á¤ÇÕ´Ï´Ù. ±âº»ÀûÀ¸·Î Ç׸ñÀÇ ³ôÀ̴ ¦¼ö °ªÀ̾î¾ß ÇÕ´Ï´Ù.
TVS_NOSCROLL0x2000¼öÆò ¼öÁ÷ ½ºÅ©·ÑÀ» ¸ðµÎ ±ÝÁöÇÕ´Ï´Ù. ½ºÅ©·Ñ¹Ù°¡ ÀüÇô ¾ø½À´Ï´Ù.
TVS_NOTOOLTIPS0x80ÅøÆÁÀ» ±ÝÁöÇÕ´Ï´Ù.
TVS_RTLREADING0x40ÅؽºÆ®¸¦ ¿À¸¥ÂÊ¿¡¼­ ¿ÞÂÊÀ¸·Î º¸¿©ÁÝ´Ï´Ù(right-to-left (RTL)). º¸Åë, âÀº ÅؽºÆ®¸¦ ¿ÞÂÊ¿¡¼­ ¿À¸¥ÂÊÀ¸·Î º¸¿©ÁÝ´Ï´Ù(left-to-right (LTR)).
TVS_SHOWSELALWAYS0x20Æ®¸® ºä ÄÜÆ®·ÑÀÌ ÃÊÁ¡À» ÀҾ ¼±ÅÃµÈ Ç׸ñÀ» ¼±ÅÃµÈ Ã¤·Î ÀÖ°Ô ÇÕ´Ï´Ù.
TVS_SINGLEEXPAND0x400¼±ÅÃÇÒ ¶§ ¼±ÅÃµÈ Ç׸ñÀº È®´ëÇÏ°í ¼±ÅõÇÁö ¾ÊÀº Ç׸ñµéÀ» Ãà¼ÒÇÕ´Ï´Ù. »ç¿ëÀÚ°¡ CTRL Å°¸¦ ´©¸¥ ä·Î Ç׸ñÀ» ¼±ÅÃÇϸé, ¼±ÅõÇÁö ¾ÊÀº Ç׸ñÀÌ Ãà¼ÒµÇÁö ¾Ê½À´Ï´Ù.
TVS_TRACKSELECT0x200¸¶¿ì½º ÇÖ Æ®·¡Å·À» È°¼ºÈ­ÇÕ´Ï´Ù.
+

 

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
DateTime ½ºÅ¸ÀÏ°ª¼³¸í
±âº»°ª DTS_SHORTDATECENTURYFORMAT ±×¸®°í WS_TABSTOP (+/-Tabstop)
°­Á¦ ¾øÀ½
DTS_UPDOWN0x1³¯Â¥-½Ã°£ °ªÀ» º¯°æÇÒ ¾÷-´Ù¿î ÄÜÆ®·ÑÀ» ÄÜÆ®·ÑÀÇ ¿À¸¥ÂÊ¿¡ ¹èÄ¡ÇÕ´Ï´Ù. µå·Ó-´Ù¿î ´Þ·ÂÀ» ±³Ã¼ÇÕ´Ï´Ù.
DTS_SHOWNONE0x2üũ¹Ú½º¸¦ ÄÜÆ®·Ñ ¾È¿¡ º¸¿©ÁÝ´Ï´Ù. »ç¿ëÀڴ üũ¸¦ ÇØÁ¦ÇØ ÄÜÆ®·Ñ¿¡ ³¯Â¥/½Ã°£À» ¼±ÅÃÇÏÁö ¾ÊÀ» ¼ö ÀÖ½À´Ï´Ù. ÄÜÆ®·Ñ¿¡ ³¯Â¥/½Ã°£ÀÌ ¾øÀ¸¸é, Gui Submit ±×¸®°í GuiControlGetÀº ºó °ªÀ» ¿­¶÷ÇÕ´Ï´Ù (ºó ¹®ÀÚ¿­).
DTS_SHORTDATEFORMAT0x0³¯Â¥¸¦ ªÀº Çü½ÄÀ¸·Î º¸¿©ÁÝ´Ï´Ù. ¾î¶² ·ÎÄÉÀÏ¿¡¼­´Â 6/1/05 ¶Ç´Â 6/1/2005¿Í °°ÀÌ º¸ÀÔ´Ï´Ù. ¿¹ÀüÀÇ ¿î¿µ üÁ¦¿¡¼­´Â µÎ ÀÚ¸® Çظ¦ º¸¿©ÁÙ ¼öµµ ÀÖ½À´Ï´Ù. ÀÌ°ÍÀº DTS_SHORTDATECENTURYFORMATÀÌ ±âº»°ªÀÌ°í DTS_SHORTDATEFORMATÀÌ ¾Æ´Ï±â ¶§¹®ÀÔ´Ï´Ù.
DTS_LONGDATEFORMAT0x4Çü½Ä ¿É¼Ç "LongDate". ³¯Â¥¸¦ ±ä Çü½ÄÀ¸·Î º¸¿©ÁÝ´Ï´Ù. ¾î¶² ·ÎÄÉÀÏ¿¡¼­´Â Wednesday, June 01, 2005ó·³ º¸ÀÔ´Ï´Ù.
DTS_SHORTDATECENTURYFORMAT0xCÇü½Ä ¿É¼Ç ºñ¾îÀְųª/»ý·«µÊ. ³¯Â¥¸¦ ªÀº Çü½ÄÀÇ ³× ÀÚ¸® ÇØ·Î º¸¿© ÁÝ´Ï´Ù. ¾î¶² ·ÎÄÉÀÏ¿¡¼­´Â 6/1/2005ó·³ º¸ÀÔ´Ï´Ù. + Comctl32.dllÀÇ ½Ã½ºÅÛ ¹öÀüÀÌ 5.8 ¹Ì¸¸À̸é, ÀÌ ½ºÅ¸ÀÏÀ» Áö¿øÇÏÁö ¾Ê½À´Ï´Ù. ±×¸®°í ÀÚµ¿À¸·Î DTS_SHORTDATEFORMATÀÌ ´ë½ÅÇÕ´Ï´Ù.
DTS_TIMEFORMAT0x9Çü½Ä ¿É¼Ç "Time". ½Ã°£¸¸ º¸¿©ÁÝ´Ï´Ù. ¾î¶² ·ÎÄÉÀÏ¿¡¼­´Â 5:31:42 PMó·³ º¸ÀÔ´Ï´Ù.
DTS_APPCANPARSE0x10¾ÆÁ÷ Áö¿ø ¾ÈµÊ. »ç¿ëÀÚ¿¡°Ô »ç¿ëÀÚ ÀÔ·ÂÀ» Çؼ®Çؼ­ ÇÊ¿äÇÑ Á¶Ä¡¸¦ ÃëÇϵµ·Ï Çã¿ëÇÕ´Ï´Ù. »ç¿ëÀÚ´Â F2 Å°¸¦ ´­·¯ ÄÜÆ®·ÑÀÇ Å¬¶óÀ̾ðÆ® ±¸¿ª ¾È¿¡¼­ ÆíÁýÇÒ ¼ö ÀÖ½À´Ï´Ù. »ç¿ëÀÚ°¡ ÀÏÀ» ¸¶Ä¡¸é ÄÜÆ®·ÑÀº DTN_USERSTRING °íÁö ¸Þ½ÃÁö¸¦ Àü¼ÛÇÕ´Ï´Ù.
DTS_RIGHTALIGN0x20+/-Right. ´Þ·ÂÀº ÄÜÆ®·ÑÀÇ ¿ÞÂÊÀÌ ¾Æ´Ï¶ó ¿À¸¥ÂÊ¿¡ µå·Ó ´Ù¿îµË´Ï´Ù.
(µå·Ó ´Ù¿î ´Þ·Â ¾ÈÀÇ Ä÷¯) µå·Ó-´Ù¿î ´Þ·Â ¾ÈÀÇ ³¯Â¥ÀÇ Ä÷¯´Â Gui Font ¸í·É¾î ¶Ç´Â c (Color) ¿É¼ÇÀ¸·Î ¼³Á¤µÈ »öÀ» ÁؼöÇÕ´Ï´Ù. ´Þ·ÂÀÇ ´Ù¸¥ ºÎºÐÀÇ Ä÷¯¸¦ ¹Ù²Ù·Á¸é, ´ÙÀ½ ¿¹Á¦¸¦ µû¸£½Ê½Ã¿À:
+ +
Gui +LastFound
+SendMessage, 0x1006, 4, 0xFFAA99, SysDateTimePick321 ; 0x1006Àº DTM_SETMCCOLORÀÔ´Ï´Ù. 4´Â MCSC_MONTHBKÀÔ´Ï´Ù (¹è°æ»ö). Ä÷¯´Â BGR vs. RGB Çü½ÄÀ¸·Î ÁöÁ¤ÇØ¾ß ÇÕ´Ï´Ù (Àûû ±³Ã¼¿¡ ÁÖÀÇ).
+

 

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
MonthCal ½ºÅ¸ÀÏ°ª¼³¸í
default WS_TABSTOP ([v1.1.22+]Àü¿ë, Windows ÀÌÈÄ Àü¿ë)
forced None
MCS_DAYSTATE0x1ÄÜÆ®·ÑÀÌ MCN_GETDAYSTATE °íÁö¸¦ Àü¼ÛÇϵµ·Ï ¸¸µì´Ï´Ù. ¾î´À ³¯Â¥¸¦ º¼µåü·Î º¸¿©ÁÖ¾î¾ß ÇÏ´ÂÁö¿¡ °üÇÑ Á¤º¸¸¦ ¿ä±¸ÇÕ´Ï´Ù. [¾ÆÁ÷ Áö¿øÇÏÁö ¾ÊÀ½]
MCS_MULTISELECT0x2À̸§ÀÖ´Â ¿É¼Ç "Multi". + + + »ç¿ëÀÚ´Â ³¯Â¥ Çϳª·Î Á¦ÇѵÇÁö ¾Ê°í ÇÑ ¹üÀ§ÀÇ ³¯Â¥¸¦ ¼±ÅÃÇÒ ¼ö ÀÖ½À´Ï´Ù. ±âº»°ªÀ¸·Î, ÃÖ´ë ¹üÀ§´Â 366 ÀÏÀÔ´Ï´Ù. ¹üÀ§´Â MCM_SETMAXSELCOUNT ¸Þ½ÃÁö¸¦ º¸³» ¹Ù²Ü ¼ö ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î:
+
Gui +LastFound
+SendMessage, 0x1004, 7, 0, SysMonthCal321 ; 7 days. 0x1004 is MCM_SETMAXSELCOUNT.
MCS_WEEKNUMBERS0x4ÁÖ ¹øÈ£(1-52)À» °¢°¢ÀÇ ³¯Â¥ ÁÙ ¿ÞÂÊ¿¡ º¸¿©ÁÝ´Ï´Ù. Week 1Àº Àû¾îµµ ³× °³ÀÇ ³¯ÀÌ ÀÖ´Â ÁÖ¸¦ ù ÁÖ·Î Á¤ÀÇÇÕ´Ï´Ù.
MCS_NOTODAYCIRCLE0x8ÄÜÆ®·Ñ ¾È¿¡¼­ ¿À´Ã ³¯Â¥ÀÇ ¼øȯÀ» ¸·½À´Ï´Ù.
MCS_NOTODAY0x10¿À´Ã ³¯Â¥°¡ ÄÜÆ®·Ñ ÇÏ´Ü¿¡ ³ªÅ¸³ªÁö ¾Êµµ·Ï ¸·½À´Ï´Ù.
(colors) ´Þ·Â ¾È¿¡¼­ ³¯Â¥ ¹øÈ£ÀÇ »öÀº Gui Font ¸í·É¾î³ª c (Color) ¿É¼ÇÀÇ ¼³Á¤À» ÁؼöÇÕ´Ï´Ù. ´Þ·ÂÀÇ ´Ù¸¥ ºÎºÐÀÇ »öÀ» º¯°æÇÏ·Á¸é, ´ÙÀ½ ¿¹Á¦¸¦ µû¸£½Ê½Ã¿À:
+
Gui +LastFound
+SendMessage, 0x100A, 5, 0xFFAA99, SysMonthCal321 ; 0x100A´Â MCM_SETCOLORÀÔ´Ï´Ù. 5´Â MCSC_TITLETEXTÀÔ´Ï´Ù (Á¦¸ñ ÅؽºÆ® »ö). Ä÷¯´Â BGR vs. RGB Çü½ÄÀ¸·Î ÁöÁ¤ÇØ¾ß ÇÕ´Ï´Ù (Àûû ±³Ã¼¿¡ ÁÖÀÇ).
+

 

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Slider ½ºÅ¸ÀÏ°ª¼³¸í
default WS_TABSTOP (+/-Tabstop)
forced None
TBS_VERT0x2+/-Vertical. ÄÜÆ®·ÑÀÌ ¼öÁ÷ ¹æÇâÀÔ´Ï´Ù.
TBS_LEFT0x4+/-Left. ÄÜÆ®·ÑÀº »ó´Ü¿¡ ƽ Ç¥½ÄÀ» º¸¿©ÁÝ´Ï´Ù (¶Ç´Â TBS_VERTÀÌ Á¸ÀçÇÑ´Ù¸é ¿ÞÂÊ¿¡). TBS_TOP¿Í µ¿ÀÏÇÕ´Ï´Ù.
TBS_TOP0x4same as TBS_LEFT.
TBS_BOTH0x8+/-Center. ƽ Ç¥½ÄÀ» ÄÜÆ®·Ñ Á¿쿡 º¸¿©ÁÝ´Ï´Ù. TBS_HORZ°¡ »ç¿ëµÇ¸é »óÇÏ¿¡ TBS_VERT°¡ »ç¿ëµÇ¸é Á¿쿡 º¸¿©ÁÝ´Ï´Ù.
TBS_AUTOTICKS0x1°ªÀÇ ¹üÀ§ ¾È¿¡ °¢ Áõ°¡ À§Ä¡¸¶´Ù ƽ Ç¥½ÄÀÌ ÀÖ½À´Ï´Ù. +/-TickInterval¸¦ »ç¿ëÇÏ¸é ´õ À¯¿¬ÇÕ´Ï´Ù.
TBS_ENABLESELRANGE0x20

¼±Åà ¹üÀ§¸¸ º¸¿©ÁÝ´Ï´Ù. ¼±Åà ¹üÀ§ÀÇ ½ÃÀÛ°ú ³¡¿¡ À§Ä¡ÇÑ Æ½ Ç¥½ÄÀº (¼öÁ÷ ´ë½¬ ´ë½Å¿¡) »ï°¢ÇüÀ¸·Î º¸¿©ÁÝ´Ï´Ù. ±×¸®°í ¼±Åà ¹üÀ§°¡ °­Á¶µË´Ï´Ù (°­Á¶¸¦ ÇÏ·Á¸é Gui -theme¸¦ ÅëÇÏ¿© Å׸¶¸¦ Á¦°ÅÇÒ ÇÊ¿ä°¡ ÀÖÀ» ¼öµµ ÀÖ½À´Ï´Ù).

+

¼±Åà ¹üÀ§¸¦ ¼³Á¤ÇÏ·Á¸é, ´ÙÀ½ ¿¹Á¦¸¦ µû¸£½Ê½Ã¿À. ½ÃÀÛ À§Ä¡¸¦ 55¿¡ ±×¸®°í ³¡ À§Ä¡¸¦ 66¿¡ ¼³Á¤ÇÕ´Ï´Ù:

+
SendMessage, 1035, 1, 55, msctls_trackbar321, WinTitle
+SendMessage, 1036, 1, 66, msctls_trackbar321, WinTitle
TBS_FIXEDLENGTH0x40+/-Thick. ¾öÁö ¼ÕÀâÀÌ Å©±â¸¦ ¹Ù²Ü ¼ö ÀÖ½À´Ï´Ù.
TBS_NOTHUMB0x80À̵¿ °¡´ÉÇÑ ¹Ù¸¦ º¸¿© ÁÖÁö ¾Ê½À´Ï´Ù.
TBS_NOTICKS0x10+/-NoTicks. ƽ Ç¥½ÄÀ» º¸¿© ÁÖÁö ¾Ê½À´Ï´Ù.
TBS_TOOLTIPS0x100+/-Tooltip. ÅøÆÁÀ» Áö¿øÇÕ´Ï´Ù. ÄÜÆ®·ÑÀÌ ÀÌ ½ºÅ¸ÀÏÀ» »ç¿ëÇÏ¿© »ý¼ºµÉ ¶§, ÀÚµ¿À¸·Î ±âº» ÅøÆÁ ÄÜÆ®·ÑÀ» »ý¼ºÇØ ½½¶óÀÌ´õÀÇ ÇöÀç À§Ä¡¸¦ º¸¿©ÁÝ´Ï´Ù. ÅøÆÁÀ» º¸¿©ÁÙ °÷Àº TBM_SETTIPSIDE ¸Þ½ÃÁö¸¦ »ç¿ëÇÏ¿© ¹Ù²Ü ¼ö ÀÖ½À´Ï´Ù.
TBS_REVERSED0x200¾ÈŸ±õ°Ôµµ, ÀÌ ½ºÅ¸ÀÏÀº ÄÜÆ®·ÑÀÇ ½ÇÁ¦ ÇàÀ§¿¡ ¾Æ¹« È¿°ú°¡ ¾ø½À´Ï´Ù. ±×·¡¼­ »ç¿ëÇÏ´Â Àǹ̰¡ ¾øÀ» °ÍÀÔ´Ï´Ù (´ë½Å¿¡, ÄÜÆ®·Ñ ¿É¼Ç¿¡ +Invert¸¦ »ç¿ëÇÏ¸é µÚÁýÀ» ¼ö ÀÖ½À´Ï´Ù). OS ¹öÀü¿¡ µû¶ó, ÀÌ ½ºÅ¸ÀÏÀº ÀÎÅÍ³Ý ÀͽºÇ÷μ­ 5.0 ÀÌ»óÀ» ¿ä±¸ÇÕ´Ï´Ù.
TBS_DOWNISLEFT0x400¾ÈŸ±õ°Ôµµ, ÀÌ ½ºÅ¸ÀÏÀº ÄÜÆ®·ÑÀÇ ½ÇÁ¦ ÇàÀ§¿¡ ¾Æ¹« ¿µÇâÀ» ÁÖÁö ¾Ê½À´Ï´Ù. ±×·¡¼­ ¾Æ¸¶µµ »ç¿ëÇÏ´Â Àǹ̰¡ ¾øÀ» °ÍÀÔ´Ï´Ù. OS ¹öÀü¿¡ µû¶ó, ÀÌ ½ºÅ¸ÀÏÀº Internet Explorer 5.01 ÀÌ»óÀ» ¿ä±¸ÇÕ´Ï´Ù.
+

 

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Progress ½ºÅ¸ÀÏ°ª¼³¸í
default PBS_SMOOTH
forced None
PBS_SMOOTH0x1+/-Smooth. ÇÁ·Î±×·¹½º ¹Ù´Â ÁøÇà »óŸ¦ ±âº» ±¸È¹ ¹Ù ´ë½Å¿¡ ºÎµå·¯¿î ½ºÅ©·Ñ ¹Ù¿¡ º¸¿©ÁÝ´Ï´Ù. ÀÌ ½ºÅ¸ÀÏÀÌ Á¸ÀçÇÒ ¶§, Windows XP ÀÌÈÄ¿¡¼­ ½ºÅ©·ÑÀº ÀÚµ¿À¸·Î °íÀü Å׸¶ ¸ð½À¿¡ ÀÇÁ¸ÇÕ´Ï´Ù.
PBS_VERTICAL0x4+/-Vertical. ¾Æ·¡¿¡¼­ À§·Î ¼öÁ÷À¸·Î ÁøÇà »óŸ¦ º¸¿©ÁÝ´Ï´Ù.
PBS_MARQUEE0x8

[Windows XP ÀÌÈÄ Àü¿ë] ÇÁ·Î±×·¹½º ¹Ù´Â ¸¶¸£Å°Ã³·³ À̵¿ÇÕ´Ï´Ù; Áï, À§Ä¡°¡ º¯ÇÒ ¶§¸¶´Ù ¹Ù°¡ À̵¿ÇÏ´Ù°¡ ³¡¿¡ µµ´ÞÇÏ¸é ´Ù½Ã ¹Ý´ë ÂÊÀ¸·Î À̵¿ÇÕ´Ï´Ù. ÀÌ ½ºÅ¸ÀÏÀÇ ¹Ù´Â À§Ä¡°¡ Á¤ÀǵǾî ÀÖÁö ¾Ê½À´Ï´Ù. ±× À§Ä¡¸¦ º¯°æÇÏ·Á°í ½ÃµµÇÏ¸é ´ë½Å¿¡ ¹Ù°¡ ÇÑ ´«±Ý¾¿ ½½¶óÀ̵åµË´Ï´Ù.

+

ÀÌ ½ºÅ¸ÀÏÀº ÀüÇüÀûÀ¸·Î ¿Ï·á ½Ã°£À» ¾Ë ¼ö ¾ø´Â ÀÛ¾÷ÀÇ ÁøÇà »óȲÀ» ³ªÅ¸³»´Â µ¥ »ç¿ëµË´Ï´Ù.

+

 

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Tab ½ºÅ¸ÀÏ°ª¼³¸í
default WS_TABSTOP ±×¸®°í TCS_MULTILINE
forced WS_CLIPSIBLINGS
+ TCS_OWNERDRAWFIXED: ÄÜÆ®·ÑÀÇ ¹è°æ»ö ±×¸®°í ÅؽºÆ® Ä÷¯°¡ ¿ä±¸ÇÏ´Â ´ë·Î °­Á¦·Î ÄѰųª ²ü´Ï´Ù.
TCS_SCROLLOPPOSITE0x1ºÒÇÊ¿äÇÑ ÅǵéÀº ÅÇÀÌ ¼±ÅÃµÉ ¶§ ÄÜÆ®·ÑÀÇ ¹Ý´ëÂÊÀ¸·Î ½ºÅ©·ÑµË´Ï´Ù.
TCS_BOTTOM0x2+/-Bottom. ÅÇÀÌ ÄÜÆ®·Ñ »ó´ÜÀÌ ¾Æ´Ï¶ó ÇÏ´Ü¿¡ ³ªÅ¸³³´Ï´Ù.
TCS_RIGHT0x2ÅÇÀÌ ¿À¸¥ÂÊ¿¡ ¼öÁ÷À¸·Î ³ªÅ¸³³´Ï´Ù. TCS_VERTICAL ½ºÅ¸ÀÏÀ» »ç¿ëÇÕ´Ï´Ù.
TCS_MULTISELECT0x4¿©·¯ ÅÇÀ» ¼±ÅÃÇÒ ¼ö ÀÖ½À´Ï´Ù. CTRL Å°¸¦ ´©¸£°í Ŭ¸¯ÇÏ¸é µË´Ï´Ù. ÀÌ ½ºÅ¸ÀÏÀº + TCS_BUTTONS ½ºÅ¸ÀÏ°ú ÇÔ²² »ç¿ëÇØ¾ß ÇÕ´Ï´Ù.
TCS_FLATBUTTONS0x8 + ¼±ÅÃµÈ ÅÇÀÌ ¹è°æ µÚ·Î ´­·Á ³ªÅ¸³³´Ï´Ù. ¹Ý¸é¿¡ ´Ù¸¥ ÅǵéÀº ±×´ë·Î °°Àº Æò¸é¿¡ °°Àº »öÀ¸·Î ³ªÅ¸³³´Ï´Ù. ÀÌ ½ºÅ¸ÀÏÀº TCS_BUTTONS ½ºÅ¸ÀÏ°ú ÇÔ²² »ç¿ëÇؾ߸¸ ÅÇ ÄÜÆ®·Ñ¿¡ È¿°ú°¡ ÀÖ½À´Ï´Ù.
TCS_FORCEICONLEFT0x10¾ÆÀÌÄÜÀº °íÁ¤-³ÊºñÀÇ ÅǸ¶´Ù ¿ÞÂÊÀ¸·Î Á¤·ÄµË´Ï´Ù. ÀÌ ½ºÅ¸ÀÏÀºTCS_FIXEDWIDTH ½ºÅ¸ÀÏ¿¡¸¸ Á¶ÇÕÇØ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù.
TCS_FORCELABELLEFT0x20¶óº§Àº °íÁ¤-³ÊºñÀÇ ÅǸ¶´Ù ¿ÞÂÊ¿¡ Á¤·ÄµË´Ï´Ù; Áï, ¶óº§Àº ¾ÆÀÌÄÜ ¹Ù·Î ¿À¸¥ÂÊ¿¡ º¸¿©Áý´Ï´Ù. °¡¿îµ¥°¡ ¾Æ´Õ´Ï´Ù. +

ÀÌ ½ºÅ¸ÀÏÀº TCS_FIXEDWIDTH ½ºÅ¸ÀÏ¿¡¸¸ Á¶ÇÕÇØ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. ±×¸®°í TCS_FIXEDWIDTH ½ºÅ¸ÀÏÀº TCS_FORCEICONLEFT ½ºÅ¸ÀÏÀ» ¾Ï½ÃÇÕ´Ï´Ù.

TCS_HOTTRACK0x40Æ÷ÀÎÅÍ ¾Æ·¡ÀÇ Ç׸ñµéÀº ÀÚµ¿À¸·Î °­Á¶µË´Ï´Ù
TCS_VERTICAL0x80

+/-Left ¶Ç´Â +/-Right. ÅÇÀÌ ÄÜÆ®·ÑÀÇ ¿ÞÂÊ¿¡ ³ªÅ¸³³´Ï´Ù. ÅؽºÆ®´Â ¼öÁ÷À¸·Î º¸¿©Áý´Ï´Ù. ÀÌ ½ºÅ¸ÀÏÀº ¿ÀÁ÷ TCS_MULTILINE ½ºÅ¸ÀÏ°ú »ç¿ëÇÒ ¶§¸¸ È¿°ú°¡ ÀÖ½À´Ï´Ù. ÅÇÀ» ÄÜÆ®·ÑÀÇ ¿À¸¥ÂÊ¿¡ º¸¿©ÁÖ·Á¸é, TCS_RIGHT ½ºÅ¸ÀÏÀ» »ç¿ëÇÕ´Ï´Ù.

+

ÀÌ ½ºÅ¸ÀÏÀº ¸ÂÃã ¹è°æ »öÀ̳ª ÅؽºÆ® »öÀÌ ¿µÇâÀ» ¹ÌÄ¡¸é ¿Ã¹Ù¸£°Ô ÅÇÀ» º¸¿©ÁÖÁö ¸øÇÕ´Ï´Ù. À̸¦ ¿ìȸÇÏ·Á¸é, ÅÇ ÄÜÆ®·Ñ ¿É¼Ç¿¡ -Background ±×¸®°í/¶Ç´Â cDefault¸¦ ÁöÁ¤ÇϽʽÿÀ.

+
TCS_BUTTONS0x100+/-Buttons. ÅÇÀÌ ¹öÆ°À¸·Î ³ªÅ¸³³´Ï´Ù. Å׵θ®°¡ ±×·ÁÁöÁö ¾Ê½À´Ï´Ù.
TCS_SINGLELINE0+/-Wrap. ¿ÀÁ÷ ÇÑ ÁÙÀÇ ÅǸ¸ º¸¿©Áý´Ï´Ù. »ç¿ëÀÚ´Â °¨¾Æ¼­ ÅÇÀ» ´õ º¼ ¼ö ÀÖ½À´Ï´Ù. ÀÌ ½ºÅ¸ÀÏÀÌ ±âº»°ªÀÔ´Ï´Ù.
TCS_MULTILINE0x200+/-Wrap. ¿©·¯ ÁÙ ÅÇÀ» º¸¿©ÁÝ´Ï´Ù. ±×·¡¼­ ¸ðµç ÅÇÀ» ÇÑ ¹ø¿¡ º¼ ¼ö ÀÖ½À´Ï´Ù.
TCS_RIGHTJUSTIFY0±âº»°ªÀÔ´Ï´Ù. °¢ ÅÇÀÇ ³Êºñ´Â ÇÊ¿äÇϸé Áõ°¡µË´Ï´Ù. ±×·¡¼­ °¢ ÁÙÀÇ ÅÇÀº ÅÇ ÄÜÆ®·ÑÀÇ Àüü ³Êºñ¸¦ ä¿ó´Ï´Ù. +

ÀÌ Ã¢ ½ºÅ¸ÀÏÀº TCS_MULTILINE ½ºÅ¸Àϵµ ÁöÁ¤ÇØ¾ß È¿°ú°¡ ÀÖ½À´Ï´Ù.

TCS_FIXEDWIDTH0x400¸ðµç ÅÇÀÌ ³Êºñ°¡ °°½À´Ï´Ù. ÀÌ ½ºÅ¸ÀÏÀº TCS_RIGHTJUSTIFY ½ºÅ¸ÀÏ°ú Á¶ÇÕÇØ »ç¿ëÇÒ ¼ö ¾ø½À´Ï´Ù.
TCS_RAGGEDRIGHT0x800ÅÇ ÁÙÀº ÄÜÆ®·ÑÀÇ Àüü ³Êºñ¸¦ ä¿ì±â À§ÇØ ´Ã¾î³ªÁö ¾Ê½À´Ï´Ù. ÀÌ ½ºÅ¸ÀÏÀÌ ±âº»°ªÀÔ´Ï´Ù.
TCS_FOCUSONBUTTONDOWN0x1000ÅÇ ÄÜÆ®·ÑÀº Ŭ¸¯µÉ ¶§ ÀÔ·Â ÃÊÁ¡À» ¹Þ½À´Ï´Ù.
TCS_OWNERDRAWFIXED0x2000ºÎ¸ð âÀÌ Ã¥ÀÓÁö°í ÅÇÀ» ±×¸³´Ï´Ù.
TCS_TOOLTIPS0x4000ÅÇ ÄÜÆ®·Ñ¿¡ ÅøÆÁ ÄÜÆ®·ÑÀ» ¿¬°üÁþ½À´Ï´Ù.
TCS_FOCUSNEVER0x8000ÅÇ ÄÜÆ®·ÑÀº Ŭ¸¯µÉ ¶§ ÀÔ·Â ÃÊÁ¡À» ¹ÞÁö ¾Ê½À´Ï´Ù.
+

 

+ + + + + + + + + + + + + + + + + + + + + + + + + + +
StatusBar ½ºÅ¸ÀÏ°ª¼³¸í
±âº»°ª SBARS_TOOLTIPS ±×¸®°í SBARS_SIZEGRIP (âÀÇ Å©±â º¯°æÀÌ °¡´ÉÇÒ °æ¿ì¿¡¸¸).
forced None
SBARS_TOOLTIPS0x800

¸¶¿ì½º°¡ »óŹÙÀÇ ÀϺο¡ ¿Ã¶ó¿À¸é ÅøÆÁÀ» º¸¿©ÁÝ´Ï´Ù: +

    +
  1. ³Ê¹« º¸¿©ÁÙ ÅؽºÆ®°¡ ¸¹À» ¶§; +
  2. ¶Ç´Â ¾ÆÀÌÄÜÀº ÀÖÀ¸³ª ÅؽºÆ®°¡ ¾øÀ» ¶§ +
+

+

ÅøÆÁÀÇ ÅؽºÆ®´Â ´ÙÀ½À» ÅëÇÏ¿© ¼³Á¤ÇÕ´Ï´Ù:

+
Gui +LastFound
+SendMessage, 0x410, 0, "Text to display", msctls_statusbar321
+

À§¿¡¼­ º¼µåü 0Àº 0-±â¹ÝÀÇ ±¸¿ª ¹øÈ£ÀÔ´Ï´Ù. ù ¹ø° ¸»°í ´Ù¸¥ ±¸¿ªÀ» »ç¿ëÇÏ·Á¸é, µÎ ¹ø° ±¸¿ªÀº 1, ¼¼ ¹ø° ±¸¿ªÀº 2 µîµîÀ» ÁöÁ¤ÇÕ´Ï´Ù. ÁÖÀÇ: ¾î¶² ¿î¿µÃ¼Á¦¿¡¼­´Â ÅøÆÁÀÌ ÀüÇô ³ªÅ¸³ªÁö ¾ÊÀ» ¼öµµ ÀÖ½À´Ï´Ù.

SBARS_SIZEGRIP0x100»óÅ ¹ÙÀÇ ¿À¸¥ÂÊ ³¡¿¡ Å©±âº¯°æ ¼ÕÀâÀ̸¦ Æ÷ÇÔÇÕ´Ï´Ù. Å©±âº¯°æ ¼ÕÀâÀÌ´Â Å©±âÁ¶Àý Å׵θ®¿Í ºñ½ÁÇÕ´Ï´Ù; »ç°¢ ±¸¿ª¿¡ »ç¿ëÀÚ°¡ Ŭ¸¯ÇÏ¸é ºÎ¸ð âÀ» ²ø ¼ö ÀÖ½À´Ï´Ù.
+

 

+ + + diff --git a/src/docs/misc/Threads.htm b/src/docs/misc/Threads.htm new file mode 100644 index 0000000..7d59e1e --- /dev/null +++ b/src/docs/misc/Threads.htm @@ -0,0 +1,38 @@ + + +Threads + + + + + + + +

¾²·¹µå

+ +

+ÇöÀç ¾²·¹µå´Â ÃÖ±ÙÀÇ À̺¥Æ®°¡ ¿äûÇÑ ½ÇÇà È帧À¸·Î Á¤Àǵ˴ϴÙ; ¿¹·Î´Â ÇÖÅ°, SetTimer ¼­ºê·çƾ, ¸ÂÃã ¸Þ´º Ç׸ñ, ±×¸®°í GUI À̺¥Æ®°¡ Æ÷ÇԵ˴ϴÙ. ÇöÀç ¾²·¹µå´Â ÀÚ½ÅÀÇ ¼­ºê·çƾ ¾È ¶Ç´Â ±× ¼­ºê·çƾÀ» È£ÃâÇÑ ´Ù¸¥ ¼­ºê·çƾ ¾È¿¡¼­ ¸í·É¾î¸¦ ½ÇÇàÇÒ ¼ö ÀÖ½À´Ï´Ù.

+

+¿ÀÅäÇÖÅ°´Â ½ÇÁ¦·Î ´ÙÁß ½º·¹µå¸¦ »ç¿ëÇÏÁö ¾ÊÁö¸¸, ±× ¸î °¡Áö ÇàÀ§´Â Èä³»¸¦ ³À´Ï´Ù: µÎ ¹ø° ¾²·¹µå°¡ ½ÃÀ۵Ǹé -- ¿¹¸¦ µé¾î ÀÌÀüÀÇ ÇÖÅ°°¡ ¿©ÀüÈ÷ ½ÇÇà ÁßÀÎ µ¿¾È ¶Ç´Ù¸¥ ÇÖÅ°¸¦ ´­·¯¼­ -- ÇöÀç ¾²·¹µå°¡ ÀÎÅÍ·´Æ® µÇ¾î (Àӽ÷ΠÁ¤ÁöµÇ¾î) »õ ¾²·¹µå°¡ ÇöÀç ¾²·¹µå°¡ µË´Ï´Ù. µÎ ¹ø° ¾²·¹µå°¡ ½ÇÇà ÁßÀÎ µ¿¾È ¼¼ ¹ø° ¾²·¹µå°¡ ½ÃÀ۵Ǹé, ù ¹ø°¿Í µÎ ¹ø° ¾²·¹µå ¸ðµÎ µ¿¸é »óÅ·Πµé¾î°©´Ï´Ù. µîµî.

+

+ÇöÀç ¾²·¹µå°¡ ³¡³ª¸é, °¡Àå ÃÖ±Ù¿¡ ÀÎÅÍ·´Æ®µÈ ¾²·¹µå°¡ Àç°³µË´Ï´Ù. µîµî. ¸ðµç ¾²·¹µå°¡ °á±¹ ´Ù ³¡³¯ ¶§±îÁö °è¼ÓµË´Ï´Ù. Àç°³µÇ¸é, ErrorLevel°ú SendMode¿¡ ´ëÇÑ ¾²·¹µåÀÇ ¼³Á¤ÀÌ ÀÚµ¿À¸·Î ÀÎÅÍ·´Æ® Àü°ú ¶È °°Àº »óÅ·Πº¹±¸µË´Ï´Ù; ´Ù¸¥ ¸»·Î, ¾²·¹µå´Â ÀÎÅÍ·´Æ® µÇ¾îµµ ºÎÀÛ¿ëÀ» °æÇèÇÏÁö ¾Ê½À´Ï´Ù (´Ü, È°¼º â¿¡ °¡ÇÑ º¯°æÀº ¿¹¿ÜÀÔ´Ï´Ù).

+

+ÁÖÀÇ: KeyHistory ¸í·É¾î/¸Þ´º-Ç׸ñÀº ¾ó¸¶³ª ¸¹Àº ¾²·¹µå°¡ ÀÎÅÍ·´µåµÈ »óÅ¿¡ ÀÖ´ÂÁö¸¦ º¸¿©ÁÝ´Ï´Ù. ListHotkeys ¸í·É¾î/¸Þ´º-Ç׸ñÀº ¾î´À ÇÖÅ°°¡ ¾²·¹µå¸¦ °¡Á³´ÂÁö º¸¿©ÁÝ´Ï´Ù.

+

+½ºÅ©¸³Æ® Çϳª°¡ µ¿½Ã¿¡ MsgBox, InputBox, FileSelectFile, ±×¸®°í FileSelectFolder ´ëÈ­»óÀÚ¸¦ ¿©·¯ °³ °¡Áú ¼ö ÀÖ½À´Ï´Ù. ÀÌÀü ¾²·¹µå°¡ ÀÌ¹Ì ´ëÈ­»óÀÚ¸¦ º¸¿©ÁÖ°í ÀÖ´Â µ¿¾È¿¡ (ÇÖÅ°, ½Ã°£Á¦ÇÑ ¼­ºê·çƾ, ¸ÂÃã ¸Þ´º Ç׸ñ, µîµîÀ» ÅëÇÏ¿©.). »õ ¾²·¹µå¸¦ ¶Ç ±âµ¿ÇÏ¸é µË´Ï´Ù

+

+±âº»°ªÀ¸·Î, ÁÖ¾îÁø ÇÖÅ°³ª ÇÖ½ºÆ®¸µ ¼­ºê·çƾÀº ÀÌ¹Ì ½ÇÇà ÁßÀÌ¸é µÎ ¹ø°·Î ½ÃÀÛÇÒ ¼ö ¾ø½À´Ï´Ù. ÀÌ ÇàÀ§¸¦ ¹Ù²Ù·Á¸é #MaxThreadsPerHotkey¸¦ »ç¿ëÇϽʽÿÀ.

+ +

¾²·¹µå ¿ì¼± ¼øÀ§

+

+¾î¶² ¾²·¹µåÀ̵ç (ÇÖÅ°, ½Ã°£Á¦ÇÑ ¼­ºê·çƾ, ¸ÂÃã ¸Þ´º Ç׸ñ, µîµî.) ÇöÀç ¾²·¹µåº¸´Ù ¿ì¼± ¼øÀ§º¸´Ù ³·À¸¸é ÀÎÅÍ·´Æ® ÇÒ ¼ö ¾ø½À´Ï´Ù. ±× ½Ã°£ µ¿¾È, ŸÀ̸Ӵ ½ÇÇàµÇÁö ¾ÊÀ¸¸ç, »ç¿ëÀÚ°¡ (ÇÖÅ°³ª GUI ¹öÆ°À» ´­·¯¼­) »õ·Î¿î ¾²·¹µå¸¦ ¸¸µé·Á´Â ½Ãµµµµ ¾Æ¹« È¿°ú°¡ ¾ø½À´Ï´Ù. ¹öÆÛ Ã³¸®Á¶Â÷ µÇÁö ¾Ê½À´Ï´Ù. ÀÌ ¶§¹®¿¡, º¸Åë ÃÖ°í ¿ì¼±¼øÀ§ÀÇ ¾²·¹µå¸¦ »¡¸® ³¡³»µµ·Ï ¼³°èÇÏ´Â °ÍÀÌ °¡Àå ÁÁ½À´Ï´Ù. ¾Æ´Ï¸é ÃÖ°í ¿ì¼± ¼øÀ§¸¦ ÁÖÁö ¸»°í CriticalÀ» »ç¿ëÇϽʽÿÀ.

+

+¿ì¼± ¼øÀ§ ±âº»°ªÀº 0ÀÔ´Ï´Ù. ¸ðµç ¾²·¹µå´Â ±âº» ¿ì¼± ¼øÀ§¸¦ »ç¿ëÇÕ´Ï´Ù. ´Ü, ´ÙÀ½ ¹æ½Ä Áß Çϳª ¶§¹®¿¡ ¹Ù²î´Â °æ¿ì´Â ¿¹¿ÜÀÔ´Ï´Ù:
+ 1) ½Ã°£Á¦ÇÑ ¼­ºê·çƾÀº SetTimer¸¦ ÅëÇÏ¿© ƯÁ¤ÇÑ ¿ì¼± ¼øÀ§°¡ ºÎ¿©µË´Ï´Ù.
+ 2) ÇÖÅ°´Â Hotkey ¸í·É¾î¸¦ ÅëÇÏ¿© ƯÁ¤ÇÑ ¿ì¼± ¼øÀ§°¡ ºÎ¿©µË´Ï´Ù.
+ 3) ÇÖ½ºÆ®¸µÀº #Hotstring Áö½Ã¾î¸¦ ÅëÇÏ¿© ¶Ç´Â Á¤ÀÇµÉ ¶§ ƯÁ¤ÇÑ ¿ì¼± ¼øÀ§°¡ ºÎ¿©µË´Ï´Ù.
+ 4) ¸ÂÃã ¸Þ´º Ç׸ñÀº Menu ¸í·É¾î¸¦ ÅëÇÏ¿© ƯÁ¤ ¿ì¼± ¼øÀ§°¡ ºÎ¿©µË´Ï´Ù.
+ 5) ÇöÀç ¾²·¹µå´Â Thread ¸í·É¾î¸¦ ÅëÇÏ¿© ÀÚ½ÅÀÇ ¿ì¼± ¼øÀ§¸¦ ÁöÁ¤ÇÕ´Ï´Ù.

+

OnExit ¼­ºê·çƾÀº (ÀÖ´Ù¸é) ¾ðÁ¦³ª È£ÃâµÇ¸é ÇöÀç ¾²·¹µåÀÇ ¿ì¼± ¼øÀ§¿¡ »ó°ü¾øÀÌ ¹Ù·Î ½ÇÇàµË´Ï´Ù.

+ + diff --git a/src/docs/misc/WinTitle.htm b/src/docs/misc/WinTitle.htm new file mode 100644 index 0000000..e070b93 --- /dev/null +++ b/src/docs/misc/WinTitle.htm @@ -0,0 +1,162 @@ + + +WinTitle & Last Found Window + + + + + + + +

WinTitle ¸Å°³º¯¼ö & °¡Àå ¸¶Áö¸·À¸·Î ¹ß°ßµÈ â

+ +

+¸¹Àº ¸í·É¾î¿Í ¸î¸î ÇÔ¼ö´Â WinTitle ¸Å°³º¯¼ö°¡ ÀÖ½À´Ï´Ù. ÀÌ ¸Å°³º¯¼ö´Â ÀÛ¾÷ÇÒ Ã¢À» ½Äº°ÇÏ´Â µ¥ »ç¿ëµË´Ï´Ù. ÀÌ ¸Å°³º¯¼ö´Â âÀÇ Á¦¸ñ ¶Ç´Â Á¦¸ñ ÀϺÎÀÏ ¼öµµ ÀÖ°í ÀÌ ÆäÀÌÁö¿¡ ±â¼úµÈ ´Ù¸¥ ±âÁØÀÏ ¼öµµ ÀÖ½À´Ï´Ù.

+ +°£Æí ÂüÁ¶ + + + + + + + + + + +
TitleºÎÇÕ ÇàÀ§
AÈ°¼º â
ahk_classâ Ŭ·¡½º
ahk_idÀ¯ÀÏÇÑ ID/HWND
ahk_pidÇÁ·Î¼¼½º ID
ahk_exeÇÁ·Î¼¼½º À̸§/°æ·Î
ahk_groupâ ±×·ì
 ´ÙÁß ±âÁØ
(All empty)¸¶Áö¸·À¸·Î ¹ß°ßµÈ â
+ +

ºÎÇÕ ÇàÀ§

+

SetTitleMatchModeÀº °¢ âÀÇ Á¦¸ñ¿¡ ºÎºÐ ¶Ç´Â Àüü Á¦¸ñÀ» ¾î¶»°Ô ºñ±³ÇÒÁö Á¦¾îÇÕ´Ï´Ù. ¼³Á¤¿¡ µû¶ó, WinTitleÀº Á¤È­ÇÏ°Ô ÀÏÄ¡ÇÏ´Â Á¦¸ñÀÌ µÉ ¼öµµ ÀÖ°í, ¾Æ´Ï¸é Á¦¸ñ¿¡ ¾îµð¿¡³ª ³ªÅ¸³ª´Â ºÎ¹®ÀÚ¿­, ¶Ç´Â RegEx ÆÐÅÏÀÌ µÉ ¼ö ÀÖ½À´Ï´Ù. ÀÌ ¼³Á¤Àº ¶Ç ahk_class¸¦ Á¤È®ÇÑ Å¬·¡½º À̸§À¸·Î ÀÌÇØÇÒÁö ¾Æ´Ï¸é RegEx ÆÐÅÏÀ¸·Î ÀÌÇØÇÒÁö Á¦¾îÇÕ´Ï´Ù.

+

+¼ûÀº âÀº DetectHiddenWindowsÀÌ ÄÑÁ® ÀÖÀ» ¶§¸¸ ŽÁöµË´Ï´Ù. ¾ðÁ¦³ª ¼ûÀ» ÂüÀ» ŽÁöÇÏ´Â WinShow´Â Á¦¿ÜÇÕ´Ï´Ù.

+

+¿©·¯ âÀÌ WinTitle°ú ±âŸ ±âÁØ¿¡ ºÎÇÕÇϸé, °¡Àå À§¿¡ ºÎÇÕÇÑ Ã¢ÀÌ »ç¿ëµË´Ï´Ù. È°¼º âÀÌ ±âÁØ¿¡ ºÎÇÕÇϸé, º¸Åë ´Ù¸¥ ¸ðµç ⺸´Ù À§¿¡ Àֱ⠶§¹®¿¡ ¿ì¼± ¼øÀ§¸¦ °®½À´Ï´Ù. ±×·¸Áö¸¸, Ç×»ó ÃÖ»ó´Ü âÀÌ ºÎÇÕÇϸé (±×¸®°í È°¼º âÀº ÃÖ»ó´Ü âÀÌ ¾Æ´Ï¸é), ´ë½Å¿¡ ±×°ÍÀÌ »ç¿ëµË´Ï´Ù.

+ +

È°¼º â (A)

+

+WinTitleÀÌ ±âÈ£ AÀÌ°í ´Ù¸¥ ¼¼ °³ÀÇ Ã¢ ¸Å°³º¯¼ö°¡ ºñ¾î Àְųª »ý·«µÇ¸é, ±× È°¼º âÀÌ »ç¿ëµË´Ï´Ù (WinText, ExcludeTitle ±×¸®°í ExcludeText).

+
+; È°¼º âÀÇ ID/HWND¸¦ ¿­¶÷ÇÕ´Ï´Ù
+id := WinExist("A")
+MsgBox % id
+
+; Win+&uarrÀ» ´­·¯; È°¼º âÀ» ÃÖ´ëÈ­ÇÕ´Ï´Ù
+#Up::WinMaximize, A
+ +

ahk_class â Ŭ·¡½º

+

+â Ŭ·¡½º´Â ½Ã½ºÅÛÀÌ Ã¢À» »ý¼ºÇϱâ À§ÇÏ¿© ÁÖÇüƲ·Î »ç¿ëÇÏ´Â ¼Ó¼ºÀÇ ÁýÇÕÀÔ´Ï´Ù. ´Ù¸¥ ¸»·Î, âÀÇ Å¬·¡½º À̸§Àº ¾î¶² À¯ÇüÀÇ Ã¢ÀÎÁö ½Äº°ÇÕ´Ï´Ù. â Ŭ·¡½º¸¦ »ç¿ëÇÏ·Á¸é, Window Spy°¡ º¸¿©ÁÖ´Â °Íó·³ ahk_class ExactClassName¸¦ »ç¿ëÇϽʽÿÀ. ExactClassNameÀº WinGetClass·Î ¿­¶÷ÇÒ ¼ö ÀÖ½À´Ï´Ù.

+

+RegEx Á¦¸ñ ºÎÇÕ ¸ðµå°¡ ÄÑÁ® ÀÖÀ¸¸é, ahk_class´Â Á¤±Ô Ç¥Çö½ÄÀ» ¹Þ½À´Ï´Ù.

+
+; ÄÜ¼Ö Ã¢À» È°¼ºÈ­ÇÕ´Ï´Ù (¿¹, cmd.exe)
+WinActivate, ahk_class ConsoleWindowClass
+
+ +

ahk_id Unique ID / HWND

+

+°¢ âÀ̳ª ÄÜÆ®·Ñ¿¡ À¯ÀÏÇÑ ID°¡ ÀÖ½À´Ï´Ù. À̸¦ HWND (Handle to WiNDow)¶ó°íµµ ÇÕ´Ï´Ù. ÀÌ ID¸¦ »ç¿ëÇϸé Á¦¸ñÀÌ º¯Çصµ âÀ̳ª ÄÜÆ®·ÑÀ» ½Äº°ÇÒ ¼ö ÀÖ½À´Ï´Ù. âÀÇ ID´Â ÀüÇüÀûÀ¸·Î WinExist()³ª WinGetÀ» ÅëÇÏ¿© ¿­¶÷ÇÕ´Ï´Ù. ÄÜÆ®·ÑÀÇ ID´Â ÀüÇüÀûÀ¸·Î ControlGet Hwnd, MouseGetPos, ¶Ç´Â DllCallÀ» ÅëÇÏ¿© ¿­¶÷ÇÕ´Ï´Ù. ¶ÇÇÑ, ahk_id´Â ÄÜÆ®·ÑÀÌ º¸ÀÌÁö ¾Ê¾Æµµ ÀÛµ¿ÇÕ´Ï´Ù; Áï, DetectHiddenWindows ¼³Á¤Àº ÄÜÆ®·Ñ¿¡ ¹®Á¦°¡ µÇÁö ¾Ê½À´Ï´Ù.

+
+WinActivate, ahk_id %VarContainingID%
+
+ +

ahk_pid ÇÁ·Î¼¼½º ID

+

+ahk_pid¸¦ »ç¿ëÇϸé ƯÁ¤ ÇÁ·Î¼¼½º¿¡ ¼ÓÇÑ Ã¢À» ½Äº°ÇÒ ¼ö ÀÖ½À´Ï´Ù. ÇÁ·Î¼¼½º ½Äº°ÀÚ (PID)´Â ÀüÇüÀûÀ¸·Î WinGet, Run ¶Ç´Â ProcessÀ¸·Î ¿­¶÷ÇÕ´Ï´Ù.

+
+WinActivate, ahk_pid %VarContainingPID%
+
+ +

ahk_exe ÇÁ·Î¼¼½º À̸§/°æ·Î [v1.1.01+]

+

+ahk_exe¸¦ »ç¿ëÇϸé ÁÖ¾îÁø °æ·Î³ª À̸§ÀÇ ÇÁ·Î¼¼½º¿¡ ¼ÓÇÑ Ã¢À» ½Äº°ÇÒ ¼ö ÀÖ½À´Ï´Ù.

+

+ahk_pid´Â ƯÁ¤ÇÑ ÇÁ·Î¼¼½º Çϳª·Î Á¦ÇѵǴ ¹Ý¸é¿¡, ahk_exe´Â ÁÖ¾îÁø ¹®ÀÚ¿­¿¡ ºÎÇÕÇÏ´Â À̸§ ¶Ç´Â Àüü °æ·Î¸¦ °¡Áø ¸ðµç ÇÁ·Î¼¼½º¸¦ °í·ÁÇÕ´Ï´Ù. RegEx Á¦¸ñ ÀÏÄ¡ ¸ðµå°¡ ÄÑÁ® ÀÖ´Ù¸é, ahk_exe´Â Á¤±Ô Ç¥Çö½ÄÀ» ¹Þ½À´Ï´Ù. ±×·¸Áö ¾ÊÀ¸¸é, ahk_exe´Â ´ë¼Ò¹®ÀÚ¸¦ ±¸ºÐÇÏ´Â À̸§À̳ª Àüü °æ·Î¸¦ ¹Þ½À´Ï´Ù; ¿¹¸¦ µé¾î, ahk_exe notepad.exe´Â ahk_exe C:\Windows\Notepad.exe, ahk_exe C:\Windows\System32\Notepad.exe ±×¸®°í ±âŸ º¯Á¾µéÀ» Æ÷°ýÇÕ´Ï´Ù.

+
+; ±âÁ¸ÀÇ notepad.exe âÀ» È°¼ºÈ­Çϰųª, »õ·Î ¿±´Ï´Ù
+if WinExist("ahk_exe notepad.exe")
+    WinActivate, ahk_exe notepad.exe
+else
+    Run, notepad.exe
+
+ +

ahk_group â ±×·ì

+

+ahk_groupÀ» »ç¿ëÇϸé ÀÌÀü¿¡ Á¤ÀÇµÈ Ã¢ ±×·ì¿¡ Æ÷ÇÔµÈ ±ÔÄ¢¿¡ ºÎÇÕÇÏ´ÂâÀ» ½Äº°ÇÒ ¼ö ÀÖ½À´Ï´Ù.

+

+WinMinimize, WinMaximize, WinRestore, WinHide, WinShow, WinClose, ±×¸®°í WinKill ¸í·É¾î´Â ¸ðµç ±×·ì â¿¡ ÀÛµ¿ÇÕ´Ï´Ù. ´ëÁ¶ÀûÀ¸·Î, WinActivate¿Í IfWinExist °°Àº ´Ù¸¥ â ¸í·É¾î´Â ±×·ìÀÇ ÃÖ»óÀ§ â¿¡¸¸ ÀÛµ¿ÇÕ´Ï´Ù.

+
+; ±×·ìÀ» Á¤ÀÇÇÕ´Ï´Ù: À©µµ¿ìÁî Ž»ö±â â
+GroupAdd, Explorer, ahk_class ExploreWClass ; ºñ½ºÅ¸ ÀÌÈÄ¿¡ »ç¿ë¾ÈµÊ
+GroupAdd, Explorer, ahk_class CabinetWClass
+
+; À§ÀÇ ±âÁØ¿¡ ºÎÇÕÇϴ âÀº ¸ðµÎ È°¼ºÈ­ÇÕ´Ï´Ù
+WinActivate, ahk_group Explorer
+
+ +

´ÙÁß ±âÁØ

+

+(°Ë»öÀ» È®´ëÇÏ´Â) ahk_group°ú ´ëÁ¶ÀûÀ¸·Î, WinTitle ¸Å°³º¯¼ö ¾È¿¡ Çϳª ÀÌ»óÀÇ ±âÁØÀ» ƯÁ¤ÇØ °Ë»öÀÇ ¹üÀ§¸¦ Á¼Èú ¼ö ÀÖ½À´Ï´Ù. ´ÙÀ½ ¿¹Á¦¿¡¼­, ½ºÅ©¸³Æ®´Â Á¦¸ñ¿¡ My File.txtÀÌ Æ÷ÇԵǾî ÀÖ°í ±×¸®°í ±×ÀÇ Å¬·¡½º°¡ NotepadÀΠâÀ» ±â´Ù¸³´Ï´Ù:

+
WinWait My File.txt ahk_class Notepad
+WinActivate  ; ¹ß°ßµÈ âÀ» È°¼ºÈ­ÇÕ´Ï´Ù.
+

+ÀÌ ¸ðµå¸¦ »ç¿ëÇÒ ¶§, Á¦¸ñ ÅؽºÆ®¸¦ (¿øÇÏ´Â ¼ø¼­´ë·Î) Á¦ÀÏ ¸ÕÀú ³ª¿­ÇØ¾ß ÇÏ°í, ´ÙÀ½¿¡ Çϳª ÀÌ»óÀÇ ±âÁØÀÌ µû¶ó ¿Í¾ß ÇÕ´Ï´Ù. ù ¹ø° ±âÁØ ÀÌÈķδ ¼­·Î Á¤È®ÇÏ°Ô ÇϳªÀÇ ½ºÆäÀ̽º³ª ÅÇÀ¸·Î °¥¶ó¾ß ÇÕ´Ï´Ù (´Ù¸¥ ½ºÆäÀ̽º³ª ÅÇÀº ÀÌÀü ±âÁØÀÇ ±âÈ£ ±×´ë·ÎÀÇ ºÎºÐÀ¸·Î Ãë±ÞµË´Ï´Ù).

+

ahk_id¸¦ ´Ù¸¥ ±âÁØ°ú Á¶ÇÕÇØ Ã¢ Á¦¸ñ, Ŭ·¡½º ¶Ç´Â ±âŸ Ư¼ºÀ» Å×½ºÆ®ÇÒ ¼ö ÀÖ½À´Ï´Ù:

+
+MouseGetPos,,, id
+if WinExist("ahk_class Notepad ahk_id " id)
+    MsgBox ¸¶¿ì½º°¡ ³ëÆ®Æеå À§¿¡ ÀÖ½À´Ï´Ù.
+
+ + +

"°¡Àå ¸¶Áö¸·À¸·Î ¹ß°ßµÈ" â

+ +

+ÀÌ°ÍÀº ´ÙÀ½ÀÌ °¡Àå ¸¶Áö¸·À¸·Î ¹ß°ßÇÑ Ã¢ÀÔ´Ï´Ù: IfWin[Not]Exist, WinExist(), IfWin[Not]Active, WinActive(), WinWait[Not]Active, ¶Ç´Â WinWait.

+

+½ºÅ©¸³Æ®¸¦ ½±°Ô ¸¸µé°í °ü¸®ÇÒ ¼ö ÀÖ½À´Ï´Ù. ¿Ö³ÄÇÏ¸é ¸ñÇ¥ âÀÇ WinTitle°ú WinText°¡ ¸Å â ¸í·É¾î¸¶´Ù ¹Ýº¹µÉ ÇÊ¿ä°¡ ¾ø±â ¶§¹®ÀÔ´Ï´Ù. °Ô´Ù°¡, ½ºÅ©¸³Æ®ÀÇ ¼öÇ༺´Éµµ ´õ ÁÁ¾ÆÁý´Ï´Ù. ¿Ö³ÄÇÏ¸é ¸ñÇ¥ âÀ» óÀ½ ¹ß°ßÇÏ¸é ±× ´ÙÀ½ºÎÅÍ´Â ¹Ýº¹Çؼ­ °Ë»öÇÒ ÇÊ¿ä°¡ ¾ø±â ¶§¹®ÀÔ´Ï´Ù.

+

+"°¡Àå ¸¶Áö¸·¿¡ ¹ß°ßµÈ" âÀº WinWait, WinActivateBottom, ±×¸®°í GroupAdd¸¦ Á¦¿ÜÇÏ°í ´Ù¸¥ ¸ðµç â °ü·Ã ¸í·É¾î°¡ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. »ç¿ëÇÏ·Á¸é, ±×³É ³× °³ÀÇ Ã¢ ¸Å°³º¯¼ö¸¦ »ý·«ÇÏ¸é µË´Ï´Ù (WinTitle, WinText, ExcludeTitle, ±×¸®°í ExcludeText).

+

+°¢ ¾²·¹µå¸¶´Ù ÀÚ½ÅÀÇ "¸¶Áö¸·À¸·Î ¹ß°ßµÈ" âÀÇ °ªÀ» À¯ÁöÇÕ´Ï´Ù. Áï, ÇöÀç ¾²·¹µå ¶Ç´Ù¸¥ ¾²·¹µå¿¡ ÀÇÇØ ÀÎÅÍ·´Æ® µÇ´õ¶óµµ, ¿ø·¡ ¾²·¹µå°¡ Àç°³ÇÒ ¶§ ÀÎÅÍ·´Æ®ÇÑ ¾²·¹µåÀÇ °ÍÀÌ ¾Æ´Ï¶ó ¿©ÀüÈ÷ ¿ø·¡ÀÇ "¸¶Áö¸·À¸·Î ¹ß°ßµÈ" âÀÇ °ªÀ» °¡Áø´Ù´Â ¶æÀÔ´Ï´Ù..

+

+¸¶Áö¸·À¸·Î ¹ß°ßµÈ âÀÌ º¸ÀÌÁö ¾Ê´Â Gui âÀ̸é, DetectHiddenWindows°¡ ²¨Á® ÀÖ´õ¶óµµ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. ÀÌ°ÍÀº Á¾Á¾ Gui +LastFound¿Í ÇÔ²² Á¶ÇÕÇؼ­ »ç¿ëµË´Ï´Ù.

+
Run Notepad
+WinWait Untitled - Notepad
+WinActivate  ; °¡Àå ¸¶Áö¸·¿¡ ¹ß°ßµÈ âÀ» »ç¿ëÇÕ´Ï´Ù.
+
+IfWinExist, Untitled - Notepad
+{
+    WinActivate  ; À§¿¡¼­ ¹ß°ßµÈ âÀ» ÀÚµ¿À¸·Î »ç¿ëÇÕ´Ï´Ù.
+    WinMaximize  ; °°½À´Ï´Ù
+    Send, Some text.{Enter}
+    return
+}
+
+IfWinNotExist, Calculator
+    return
+else
+{
+    WinActivate  ; À§ÀÇ "IfWinNotExist"´Â ¶Ç  "°¡Àå ¸¶Áö¸· ¹ß°ß" âÀ» ¼³Á¤ÇÕ´Ï´Ù.
+    WinMove, 40, 40  ; »õ À§Ä¡·Î À̵¿ÇÕ´Ï´Ù.
+    return
+}
+ + + diff --git a/src/docs/misc/Winamp.htm b/src/docs/misc/Winamp.htm new file mode 100644 index 0000000..f14a299 --- /dev/null +++ b/src/docs/misc/Winamp.htm @@ -0,0 +1,85 @@ + + +Automating Winamp + + + + + + + +

Winamp ÀÚµ¿È­Çϱâ

+ +

+ÀÌ ¼½¼ÇÀº ÇÖÅ°¸¦ ÅëÇÏ¿© Winamp¸¦ Á¦¾îÇÏ´Â ¹ýÀ» º¸¿©ÁÝ´Ï´Ù. ÃÖ¼ÒÈ­µÇ¾î ÀÖµç ºñÈ°¼ºÈ­ »óÅÂÀÌµç »ó°ü¾øÀÌ Á¦¾îÇÒ ¼ö ÀÖ½À´Ï´Ù. ÀÌ Á¤º¸´Â Winamp 2.78c·Î °ËÁõµÇ¾úÁö¸¸ ´Ù¸¥ ¹èÆ÷º»¿¡µµ ¿ª½Ã Àß ÀÛµ¿ÇÒ °ÍÀ̶ó ¹Ï½À´Ï´Ù. º¯°æÀ» ÇÏ¿´°Å³ª °³¼±À» ÇÏ¿´À¸¸é Æ÷·Ò¿¡ °Ô½ÃÇØ Áֽðųª ÀúÀÚ¿¡°Ô ¿¬¶ôÀ» ÁֽʽÿÀ.

+

+´ÙÀ½ ¿¹Á¦´Â Ctrl+Alt+P ÇÖÅ°¸¦ WinampÀÇ pause/unpause ¹öÆ°À» ´©¸¥ °Í°ú µ¿µîÇÏ°Ô ¸¸µì´Ï´Ù:

+
^!p::
+IfWinNotExist ahk_class Winamp v1.x
+    return
+; ±×·¸Áö ¾ÊÀ¸¸é, À§¿¡¼­ "°¡Àå ¸¶Áö¸·¿¡ ¹ß°ßµÈ" âÀ» ¾Æ·¡¿¡ »ç¿ëÇϵµ·Ï ¼³Á¤Çß½À´Ï´Ù.
+ControlSend, ahk_parent, c  ; Pause/Unpause
+return
+

+´ÙÀ½Àº Winamp 2.x¿¡¼­ »ç¿ë°¡´ÉÇÑ ¸î °¡Áö Å°º¸µå ´ÜÃàÅ°ÀÔ´Ï´Ù (´Ù¸¥ ¹öÀü¿¡¼­µµ ÀÛµ¿ÇÒ °ÍÀÔ´Ï´Ù). À§ÀÇ ¿¹Á¦´Â ´ÙÀ½ Å°µéÀ» »ç¿ëÇϵµ·Ï °³Á¤ÇÒ ¼ö ÀÖ½À´Ï´Ù:

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
º¸³¾ Å°È¿°ú
cÁ¤Áö/Àç°³
xÇ÷¹ÀÌ/Àç½ÃÀÛ/Àç°³
v¸ØÃã
+v¼Ò¸®¸¦ Á×À̸ç õõÈ÷ ¸ØÃã
^vÇöÀç Æ®·¢ÀÌ ³¡³ª¸é ¸ØÃã
b´ÙÀ½ Æ®·¢À¸·Î
zÀÌÀü Æ®·¢À¸·Î
{left}5 ÃÊ µÇ°¨À½
{right}ºü¸£°Ô 5ÃÊ ¾ÕÀ¸·Î °¨À½
{up}º¼·ý ³ô°Ô
{down}º¼·ý ³·°Ô
+

 

+
+; ´ÙÀ½ ¿¹Á¦´Â Winamp¿¡°Ô ÇöÀç ¾î´À Æ®·¢ÀÌ È°¼ºÈ­µÇ¾î ÀÖ´ÂÁö ¹¯½À´Ï´Ù:
+SendMessage, 1024, 0, 120, ahk_class Winamp v1.x
+if ErrorLevel <> FAIL
+{
+    ErrorLevel += 1  ; WinampÀÇ Ä«¿îÆ®´Â 0ºÎÅÍ ½ÃÀÛÇÕ´Ï´Ù. ±×·¡¼­ 1 ¸¸Å­ Á¶Á¤ÇÕ´Ï´Ù.
+    MsgBox, #%ErrorLevel% ¹ø Æ®·¢ÀÌ ÇöÀç ¿¬ÁÖ ÁßÀÔ´Ï´Ù.
+}
+ + diff --git a/src/docs/objects/Enumerator.htm b/src/docs/objects/Enumerator.htm new file mode 100644 index 0000000..c45cb73 --- /dev/null +++ b/src/docs/objects/Enumerator.htm @@ -0,0 +1,56 @@ + + +Enumerator + + + + + + + +

¿­°Å °´Ã¼ [AHK_L 49+]

+ +

Áý´Ü ¾ÈÀÇ Ç׸ñµéÀ» ¿­°ÅÇÕ´Ï´Ù.

+ +
+

Next

+ +

´ÙÀ½À¸·Î ¿­°ÅµÈ Ç׸ñÀ» ¿­¶÷ÇÕ´Ï´Ù.

+
Enum.Next(OutputVar1 [, OutputVar2, ...])
+ + + + +
OutputVar1, OutputVar2±¸Çö¿¡-Á¾¼ÓÀûÀÎ °ªÀ» ¿­¶÷ÇÕ´Ï´Ù.
...Áö¿øµÇ¸é, Ãß°¡ ¸Å°³º¯¼ö.
Returns¼º°øÇϸé 0-¾Æ´Ñ Á¤¼ö, Ç׸ñÀÌ ³²¾Æ ÀÖÁö ¾ÊÀ¸¸é 0, ¶Ç´Â ¸Å°³º¯¼ö°¡ ¿Ã¹Ù¸£Áö ¾ÊÀ¸¸é ºó ¹®ÀÚ¿­À» µ¹·ÁÁÝ´Ï´Ù.
+ +

°´Ã¼

+

ObjNewEnum()°¡ µ¹·ÁÁÖ´Â ¿­°ÅÀÚ´Â Å°-°ª ½Ö¸¶´Ù ÇÑ ¹ø½Ä È£ÃâµË´Ï´Ù. ¸Å°³º¯¼ö´Â µÎ °³±îÁö Çã¿ëÇÕ´Ï´Ù:

+ + + +
OutputVar1Å°-°ª ½Ö¿¡¼­ Å°(key)¸¦ ¹Þ½À´Ï´Ù.
OutputVar2 OutputVar1¿Í ¿¬°üµÈ °ª(value)¸¦ ¹Þ½À´Ï´Ù.
+

+Å°-°ª ½ÖÀº ±¸Çö¿¡-Á¤ÀÇµÈ ¼ø¼­·Î ¹ÝȯµË´Ï´Ù. Áï, ÀüÇüÀûÀ¸·Î ÇÒ´çµÈ ¼ø¼­¿Í °°Àº ¼ø¼­·Î ¹ÝȯµÇÁö ¾Ê½À´Ï´Ù. ±âÁ¸ÀÇ Å°-°ª ½ÖÀº ¿­°Å Áß¿¡ º¯°æÇÒ ¼ö´Â ÀÖÁö¸¸, Å°¸¦ »ðÀÔÇϰųª »èÁ¦Çϸé Ç׸ñµéÀÌ ¿©·¯ ¹ø ¿­°ÅµÇ°Å³ª ÀüÇô ¿­°ÅµÇÁö ¾Ê°Å³ª µÚÁ×¹ÚÁ×ÀÌ µË´Ï´Ù.

+ +

°ü·Ã Ç׸ñ

+For-ȸµ¹ÀÌ, Object.NewEnum() + +

¿¹Á¦

+
; »ùÇà µ¥ÀÌÅ͸¦ ¸¸µì´Ï´Ù.
+obj := Object("red", 0xFF0000, "blue", 0x0000FF, "green", 0x00FF00)
+
+; ¿­°ÅÇÕ´Ï´Ù!
+enum := obj._NewEnum()
+While enum[k, v]
+    t .= k "=" v "`n"
+MsgBox % t
+
+; AHK_L 59+
+For k, v in obj
+    s .= k "=" v "`n"
+MsgBox % s
+
+
+ + + diff --git a/src/docs/objects/File.htm b/src/docs/objects/File.htm new file mode 100644 index 0000000..1d8253c --- /dev/null +++ b/src/docs/objects/File.htm @@ -0,0 +1,153 @@ + + +File Object + + + + + + + +

ÆÄÀÏ °´Ã¼ [AHK_L 42+]

+ +

ÆÄÀÏ ÀÔ/Ãâ·ÂÀ» À§ÇÑ ÀÎÅÍÆäÀ̽º¸¦ Á¦°øÇÕ´Ï´Ù. FileOpenÀÌ ÀÌ À¯ÇüÀÇ °´Ã¼¸¦ µ¹·ÁÁÝ´Ï´Ù.

+ +

Read

+

¹®ÀÚ¿­À» ÆÄÀϷκÎÅÍ Àаí ÆÄÀÏ Æ÷ÀÎÅ͸¦ ¾ÕÀ¸·Î À̵¿½Ãŵ´Ï´Ù.

+
String := File.Read([Characters])
+ + + +
CharactersÀÐÀ» ¹®ÀÚÀÇ ÃÖ´ë °³¼ö. »ý·«Çϸé, ÆÄÀÏ ³ª¸ÓÁö¸¦ Àо ÇϳªÀÇ ¹®ÀÚ¿­·Î µ¹·ÁÁÝ´Ï´Ù. ÄÜ¼Ö ¹öÆÛ³ª ÆÄÀÌÇÁ °°ÀÌ Æ÷ÀÎÅ͸¦ ¾ÕµÚ·Î À̵¿½Ãų ¼ö ¾ø´Â ÇÚµé·ÎºÎÅÍ ÆÄÀÏ °´Ã¼°¡ »ý¼ºµÇ¾úÀ» °æ¿ì, ÀÌ ¸Å°³º¯¼ö¸¦ »ý·«ÇÏ¸é ¸Þ½îµå°¡ ½ÇÆÐÇϰųª ¶Ç´Â ÇöÀç »ç¿ëÀÌ °¡´ÉÇÑ µ¥ÀÌÅ͸¸ µ¹·ÁÁÙ °¡´É¼ºÀÌ ÀÖ½À´Ï´Ù.
Returns¹®ÀÚ¿­.
+ +

Write

+

¹®ÀÚ¿­À» ÆÄÀÏ¿¡ ¾²°í ÆÄÀÏ Æ÷ÀÎÅ͸¦ ¾ÕÀ¸·Î À̵¿½Ãŵ´Ï´Ù.

+
File.Write(String)
+ + + +
String¹®ÀÚ¿­.
Returns¾º¿©Áø ¹ÙÀÌÆ® °³¼ö (¹®ÀÚ °³¼ö°¡ ¾Æ´Ô).
+ +

ReadLine

+

ÆÄÀϷκÎÅÍ ÅؽºÆ® ÇÑ ÁÙÀ» Àаí ÆÄÀÏ Æ÷ÀÎÅ͸¦ ¾ÕÀ¸·Î À̵¿½Ãŵ´Ï´Ù.

+
Line := File.ReadLine()
+ + +
ReturnsÅؽºÆ® ÇÑ ÁÙ. ¿©±â¿¡´Â ÆÄÀÏ°ú ±× ÆÄÀÏÀ» ¿©´Â µ¥ »ç¿ëµÈ EOL Ç÷¡±×¿¡ µû¶ó `n, `r`n ¶Ç´Â `rÀÌ Æ÷Ç﵃ ¼ö ÀÖ½À´Ï´Ù.
+ +

WriteLine

+

¹®ÀÚ¿­À» ¾¹´Ï´Ù. ÆÄÀÏÀ» ¿©´Â µ¥ »ç¿ëµÈ Ç÷¡±×¿¡ µû¶ó ´ÙÀ½¿¡ `n ¶Ç´Â `r`nÀÌ µû¶ó¿É´Ï´Ù. ÆÄÀÏ Æ÷ÀÎÅ͸¦ ¾ÕÀ¸·Î À̵¿½Ãŵ´Ï´Ù.

+
File.WriteLine([String])
+ + + +
String¼±ÅÃÀûÀÎ ¹®ÀÚ¿­.
Returns¾º¿©Áø ¹ÙÀÌÆ® °³¼ö (¹®ÀÚ °³¼ö°¡ ¾Æ´Ô).
+ +

ReadNum

+

ÁöÁ¤ÇÑ ¹ÙÀÌÆ® °³¼ö¸¸Å­ ÆÄÀϷκÎÅÍ Àаí ÆÄÀÏ Æ÷ÀÎÅ͸¦ ¾ÕÀ¸·Î À̵¿½Ãŵ´Ï´Ù.

+
Num := File.ReadNumType()
+ + + +
NumType´ÙÀ½ Áß Çϳª¸¦ ÇÔ¼ö À̸§¿¡ Á÷Á¢ ÁöÁ¤ÇÕ´Ï´Ù:
UInt, Int, Int64, Short, UShort, Char, UChar, Double, ¶Ç´Â Float.
Returns¼º°øÇÏ¸é ¹ÙÀÌÆ® °³¼ö, ±×·¸Áö ¾ÊÀ¸¸é ºó ¹®ÀÚ¿­À» µ¹·ÁÁÝ´Ï´Ù.
+ +

WriteNum

+

ÁöÁ¤µÈ ¹ÙÀÌÆ® °³¼ö ¸¸Å­ ¾²°í ÆÄÀÏ Æ÷ÀÎÅ͸¦ ¾ÕÀ¸·Î À̵¿½Ãŵ´Ï´Ù.

+
File.WriteNumType(Num)
+ + + + +
NumType´ÙÀ½ Áß Çϳª¸¦ ÇÔ¼ö À̸§¿¡ Á÷Á¢ ÁöÁ¤ÇÕ´Ï´Ù:
UInt, Int, Int64, Short, UShort, Char, UChar, Double, ¶Ç´Â Float.
Num¼ýÀÚ.
Returns¾º¿©Áø ¹ÙÀÌÆ® °³¼ö. ¿¹¸¦ µé¸é WriteUInt´Â ¼º°øÇϸé 4¸¦ µ¹·ÁÁÝ´Ï´Ù.
+ +

RawRead

+

³¯ ÀÌÁø µ¥ÀÌÅ͸¦ ÆÄÀϷκÎÅÍ ¸Þ¸ð¸®·Î ÀÐ¾î µéÀÔ´Ï´Ù. º¯¼ö°¡ ÁöÁ¤µÇ¾î ÀÖÀ¸¸é, ÇÊ¿äÇÑ °æ¿ì ÀÚµ¿À¸·Î È®´ëµË´Ï´Ù.

+
File.RawRead(VarOrAddress, Bytes)
+ + + + +
VarOrAddressµ¥ÀÌÅÍ°¡ º¹»çµÉ º¯¼ö ¶Ç´Â ¸Þ¸ð¸® ÁÖ¼Ò. »ç¿ë¹ýÀº NumGet°ú ºñ½ÁÇÕ´Ï´Ù.
BytesÀÐÀ» ¹ÙÀÌÆ®ÀÇ ÃÖ´ë °³¼ö.
ReturnsÀÐÀº ¹ÙÀÌÆ® °³¼ö.
+ +

RawWrite

+

³¯ ÀÌÁø µ¥ÀÌÅ͸¦ ÆÄÀÏ¿¡ ¾¹´Ï´Ù.

+
File.RawWrite(VarOrAddress, Bytes)
+ + + + +
VarOrAddressµ¥ÀÌÅ͸¦ ´ã°í ÀÖ´Â º¯¼ö ¶Ç´Â ¸Þ¸ð¸®ÀÇ µ¥ÀÌÅÍ ÁÖ¼Ò. »ç¿ë¹ýÀº NumPut°ú ºñ½ÁÇÕ´Ï´Ù.
Bytes¾µ ¹ÙÀÌÆ® °³¼ö.
ReturnsÀÐÀº ¹ÙÀÌÆ® °³¼ö.
+ +

Seek

+

ÆÄÀÏ Æ÷ÀÎÅ͸¦ À̵¿½Ãŵ´Ï´Ù.

+
File.Seek(Distance [, Origin = 0])
+File.Position := Distance
+File.Pos := Distance
+ + + + +
Distance¹ÙÀÌÆ® ´ÜÀ§·Î À̵¿ÇÒ °Å¸®. °ªÀÌ ³·À» ¼ö·Ï ÆÄÀÏÀÇ ¾Õ ÂÊ¿¡ °¡±õ½À´Ï´Ù.
OriginÆÄÀÏ Æ÷ÀÎÅÍÀÇ À̵¿ ½ÃÀÛ ÁöÁ¡. ¹Ýµå½Ã ´ÙÀ½ Çϳª°¡ µÇ¾î¾ß ÇÕ´Ï´Ù:
    +
  • 0 (SEEK_SET): ÆÄÀÏÀÇ Ã³À½. Distance´Â 0ÀÌ»óÀ̾î¾ß ÇÕ´Ï´Ù.
  • +
  • 1 (SEEK_CUR): ÆÄÀÏ Æ÷ÀÎÅÍÀÇ ÇöÀç À§Ä¡.
  • +
  • 2 (SEEK_END): ÆÄÀÏ ³¡. Distance´Â º¸Åë À½ÀÇ Á¤¼öÀÔ´Ï´Ù.
  • +
»ý·«Çϸé, Distance°¡ À½ÀÇ Á¤¼öÀÏ ¶§ Origin´Â SEEK_ENDÀÌ ±âº»°ªÀÌ°í ±×·¸Áö ¾ÊÀ¸¸é SEEK_SETÀÌ ±âº»°ªÀÔ´Ï´Ù.
Returns¼º°øÇϸé 0-¾Æ´Ñ °ªÀ», ±×·¸Áö ¾ÊÀ¸¸é 0À» µ¹·ÁÁÝ´Ï´Ù.
+ +

Tell

+
Pos := File.Tell()
+Pos := File.Position
+Pos := File.Pos
+ + +
ReturnsÆÄÀÏ Æ÷ÀÎÅÍÀÇ ÇöÀç À§Ä¡. 0À̸é ÆÄÀÏÀÇ Ã³À½ÀÔ´Ï´Ù.
+ +

Length

+

ÆÄÀÏÀÇ Å©±â¸¦ ¿­¶÷Çϰųª ¼³Á¤ÇÕ´Ï´Ù.

+
FileSize := File.Length
+File.Length := NewSize
+ + + +
NewSize¹ÙÀÌÆ® ´ÜÀ§·Î, ÆÄÀÏÀÇ »õ Å©±â.
Returns¹ÙÀÌÆ® ´ÜÀ§·Î, ÆÄÀÏÀÇ Å©±â.
+

ÀÌ Æ¯¼ºÀº ½ÇÁ¦ ÆÄÀÏ¿¡¸¸ »ç¿ëÇØ¾ß ÇÕ´Ï´Ù. ÆÄÀÏ °´Ã¼°¡ ÆÄÀÌÇÁ¸¦ °¡¸®Å°´Â ÇÚµé·ÎºÎÅÍ »ý¼ºµÇ¾ú´Ù¸é, ÆÄÀÌÇÁÀÇ ³»ºÎ ¹öÆÛ¿¡¼­ ÇöÀç »ç¿ë°¡´ÉÇÑ ˆÔÀÇ µ¥ÀÌÅ͸¦ µ¹·ÁÁÙ ¼ö ÀÖÁö¸¸, ÀÌ ÇàÀ§´Â º¸ÁõÇÏÁö ¾Ê½À´Ï´Ù.

+ +

AtEOF

+
IsAtEOF := File.AtEOF
+ + +
ReturnsÆÄÀÏ Æ÷ÀÎÅÍ°¡ ÆÄÀÏÀÇ ³¡¿¡ µµ´ÞÇϸé 0 ¾Æ´Ñ °ªÀ», ±×·¸Áö ¾ÊÀ¸¸é 0À» µ¹·ÁÁÝ´Ï´Ù.
+

+ÀÌ Æ¯¼ºÀº ½ÇÁ¦ ÆÄÀÏ¿¡¸¸ »ç¿ëÇØ¾ß ÇÕ´Ï´Ù. ÄÜ¼Ö ¹öÆÛ³ª ÆÄÀÌÇÁ °°Àº Æ÷ÀÎÅÍ-À̵¿ ¾ø´Â ÀåÄ¡¸¦ °¡¸®Å°´Â ÇÚµé·ÎºÎÅÍ ÆÄÀÏ °´Ã¼°¡ »ý¼ºµÇ¾ú´Ù¸é, ¹Ýȯ °ªÀº Àǹ̰¡ ¾ø½À´Ï´Ù. ±×·± ÀåÄ¡´Â ³í¸®ÀûÀ¸·Î "ÆÄÀÏ ³¡"ÀÌ ¾ø±â ¶§¹®ÀÔ´Ï´Ù.

+ +

Close

+

ÆÄÀÏÀ» ´Ý½À´Ï´Ù. ij½¬¿¡ ÀÖ´Â µ¥ÀÌÅ͸¦ µð½ºÅ©·Î ºñ¿ó´Ï´Ù. °øÀ¯ Àá±ÝÀ» ÇØÁ¦ÇÕ´Ï´Ù. °´Ã¼°¡ ÇØÁ¦µÇ¸é ÀÚµ¿À¸·Î ÆÄÀÏÀÌ ´ÝÈ÷Áö¸¸, °¡´ÉÇÏ¸é »¡¸® ´Ý±â¸¦ ±ÇÀåÇÕ´Ï´Ù.

+
File.Close()
+

¸Å°³º¯¼öµµ ¾ø°í ¹Ýȯ °ªµµ ¾ø½À´Ï´Ù.

+ +

Encoding

+

ÀÌ ÆÄÀÏ °´Ã¼°¡ »ç¿ëÇÏ´Â ÅؽºÆ® ÀÎÄÚµùÀ» ¿­¶÷Çϰųª ¼³Á¤ÇÕ´Ï´Ù.

+
Encoding := File.Encoding
+File.Encoding := Encoding
+ + +
Encoding¼ýÀÚ ÄÚµå ÆäÀÌÁö ½Äº°ÀÚ (MSDN ÂüÁ¶) ¶Ç´Â ´ÙÀ½ ¹®ÀÚ¿­ Áß Çϳª:
+
    +
  • UTF-8: Unicode UTF-8, CP65001¿Í µ¿µîÇÔ.
  • +
  • UTF-16: Unicode UTF-16 ÀÛÀº °ª Á¾·áÇü ¹ÙÀÌÆ® ¼ø¼­r, CP1200¿Í µ¿µîÇÔ.
  • +
  • CPnnn: ¼ýÄ¡ ½Äº°ÀÚ nnn¸¦ °¡Áø ÄÚµå ÆäÀÌÁö.
  • +
+

ÀÎÄÚµùÀº -RAW Á¢¹Ì»ç¸¦ ºÙÀÌ¸é °ªÀ» µ¹·ÁÁÖÁö ¾Ê½À´Ï´Ù. ÆÄÀÏÀÌ ¾î¶»°Ô ¿­·ÈµçÁö ¶Ç´Â ¾È¿¡ ¹ÙÀÌÆ® ¼ø¼­ Ç¥½Ä (BOM)ÀÌ µé¾î ÀÖµç ¸»µç »ó°üÇÏÁö ¾Ê½À´Ï´Ù. ÀÎÄÚµù ¼³Á¤¸¸À¸·Î BOMÀÌ ºÙ°Å³ª Á¦°ÅµÇÁö ¾Ê½À´Ï´Ù. BOMÀº º¸Åë óÀ½ ÆÄÀÏÀÌ »ý¼ºµÉ ¶§ ¾º¿©Áý´Ï´Ù.

+

+ v1.1.15.04+¿¡¼­, ÀÎÄÚµùÀ» UTF-8-RAWÀ̳ª UTF-16-RAWÀ¸·Î ¼³Á¤ÇÒ ¼ö ÀÖ½À´Ï´Ù. ±×·¯³ª -RAW Á¢¹Ì»ç´Â ¹«½ÃµË´Ï´Ù. ÀÌÀü ¹öÀü¿¡¼­, UTF-8-RAW¿Í UTF-16-RAWÀº ¹«È¿ÇÑ 8-ºñÆ® ÀÎÄÚµùó·³ ÇàÀ§ÇϹǷÎ, ¸ðµç ºñ-ASCII ¹®ÀÚµéÀÌ Æó±âµË´Ï´Ù. ÀÌ°ÍÀº ¿ÀÁ÷ File.Encoding¿¡¸¸ Àû¿ëµÇÁö, FileOpen()¿¡´Â Àû¿ëµÇÁö ¾Ê½À´Ï´Ù.

+
+ +

__Handle

+
File.__Handle
+ + +
Returns½Ã½ºÅÛ ÆÄÀÏ ÇÚµé, DllCall°ú ÇÔ²² »ç¿ëÇÏ´Â °ÍÀÌ ¸ñÀûÀÔ´Ï´Ù. CreateFileÀ» ÂüÁ¶ÇϽʽÿÀ.
+

+ÆÄÀÏ °´Ã¼´Â ³»ºÎÀûÀ¸·Î Àбâ¿Í ¾²±â¸¦ ¹öÆÛ Ã³¸®ÇÕ´Ï´Ù. µ¥ÀÌÅÍ°¡ °´Ã¼ÀÇ ³»ºÎ ¹öÆÛ¿¡ ¾º¿©Á³´Ù¸é, ÇÚµéÀ» ¹ÝȯÇϱâ Àü¿¡ µð½ºÅ©¿¡ ½á¾ß ÇÕ´Ï´Ù. ¹öÆÛ¿¡ ÆÄÀϷκÎÅÍ ÀÐÀº µ¥ÀÌÅÍ°¡ µé¾î ÀÖ´Ù¸é, ±× µ¥ÀÌÅÍ´Â Æó±âµÇ°í File.Pos°¡ °¡¸®Å°´Â ½ÇÁ¦ ÆÄÀÏ Æ÷ÀÎÅÍ´Â ³í¸® À§Ä¡·Î Àç¼³Á¤µË´Ï´Ù.

+ + + diff --git a/src/docs/objects/Func.htm b/src/docs/objects/Func.htm new file mode 100644 index 0000000..87c88c1 --- /dev/null +++ b/src/docs/objects/Func.htm @@ -0,0 +1,87 @@ + + +Func Object + + + + + + + +

Func Object [v1.1.00+]

+ +

½ºÅ©¸³Æ®°¡ È£ÃâÇÒ ¼ö ÀÖ´Â »ç¿ëÀÚ-Á¤ÀÇ ÇÔ¼ö³ª ³»Àå ÇÔ¼ö¸¦ °¡¸®Åµ´Ï´Ù.

+ +

ÇÔ¼öó·³ È£ÃâÇÒ ¼ö ÀÖ´Â ´Ù¸¥ °´Ã¼¿¡ °üÇÑ Á¤º¸´Â ÇÔ¼ö °´Ã¼¸¦ ÂüÁ¶ÇÕ´Ï´Ù.

+ +

ÇÔ¼ö °´Ã¼¸¦ °¡¸®Å°´Â ÂüÁ¶´Â ÇÔ¼ö ÂüÁ¶·Î ¾Ë·ÁÁ® ÀÖ½À´Ï´Ù. ÇÔ¼ö ÂüÁ¶¸¦ ¿­¶÷ÇÏ·Á¸é, ´ÙÀ½ ¿¹Á¦¿Í °°ÀÌ ÇÔ¼ö °´Ã¼¸¦ »ç¿ëÇϽʽÿÀ:

+
; "StrLen"À̶ó´Â À̸§ÀÇ ÇÔ¼ö¸¦ °¡¸®Å°´Â ÂüÁ¶¸¦ ¿­¶÷ÇÕ´Ï´Ù.
+fn := Func("StrLen")
+
+; ÇÔ¼ö¿¡ °üÇÑ Á¤º¸¸¦ º¸¿©ÁÝ´Ï´Ù.
+MsgBox % fn.Name "() is " (fn.IsBuiltIn ? "built-in." : "user-defined.")
+
+ +

Call

+

ÇÔ¼ö¸¦ È£ÃâÇÕ´Ï´Ù.

+
Func.Call(Parameters)  ; v1.1.19+
+Func.(Parameters)  ; ¿¹Àü Çü½Ä - ºñÃßõ
+

+¸Å°³º¯¼ö¿Í ¹Ýȯ °ªÀº ÇÔ¼ö°¡ Á¤ÀÇÇÕ´Ï´Ù.

+

[v1.1.07+]: %Func%()¸¦ »ç¿ëÇϸé À̸§À̳ª ÂüÁ¶·Î ÇÔ¼ö¸¦ È£ÃâÇÒ ¼ö ÀÖ½À´Ï´Ù. ¶Ç´Â __Call ¸ÞŸ-ÇÔ¼ö¸¦ ±¸ÇöÇÑ °´Ã¼¸¦ È£ÃâÇÒ ¼ö ÀÖ½À´Ï´Ù. °¡´ÉÇϸé Func.() ´ë½Å¿¡ ÀÌ°ÍÀ» »ç¿ëÇØ¾ß ÇÕ´Ï´Ù.

+
+ +

Bind [v1.1.20+]

+

¸Å°³º¯¼ö¸¦ ÇÔ¼ö¿¡ ¹­°í BoundFunc °´Ã¼¸¦ µ¹·ÁÁÝ´Ï´Ù.

+
BoundFunc := Func.Bind(Parameters)
+

Parameters´Â °³¼ö¿¡ »ó°üÀÌ ¾ø½À´Ï´Ù.

+

ÀÚ¼¼ÇÑ Á¤º¸¿Í ¿¹Á¦´Â BoundFunc °´Ã¼¸¦ ÂüÁ¶ÇϽʽÿÀ.

+
+ +

Name

+

ÇÔ¼öÀÇ À̸§À» µ¹·ÁÁÝ´Ï´Ù.

+
Func.Name
+
+ +

IsBuiltIn

+

ÇÔ¼ö°¡ ³»Àå ÇÔ¼öÀ̸é Âü(true)À» µ¹·ÁÁÖ°í ±×·¸Áö ¾ÊÀ¸¸é °ÅÁþ(false)À» µ¹·ÁÁÝ´Ï´Ù.

+
Func.IsBuiltIn
+
+ +

IsVariadic

+

ÇÔ¼ö°¡ °¡º¯ ÇÔ¼öÀ̸é Âü(true)À» µ¹·ÁÁÖ°í ±×·¸Áö ¾ÊÀ¸¸é °ÅÁþ(false)À» µ¹·ÁÁÝ´Ï´Ù.

+
Func.IsVariadic
+
+ +

MinParams

+

Çʼö ¸Å°³º¯¼öÀÇ °³¼ö¸¦ µ¹·ÁÁÝ´Ï´Ù.

+
Func.MinParams
+
+ +

MaxParams

+

»ç¿ëÀÚ Á¤ÀÇ ÇÔ¼ö¿¡ °ø½ÄÀûÀ¸·Î-¼±¾ðµÈ ¸Å°³º¯¼öÀÇ °³¼ö¸¦ µ¹·ÁÁÝ´Ï´Ù. ¶Ç´Â ³»Àå ÇÔ¼öÀÇ ÃÖ´ë ¸Å°³º¯¼ö °³¼ö¸¦ µ¹·ÁÁÝ´Ï´Ù.

+
Func.MaxParams
+

+ÇÔ¼ö°¡ °¡º¯ ÇÔ¼öÀ̸é, ¹Ýȯ °ªÀº "variadic*" ¸Å°³º¯¼ö·Î Èê·¯ ³ÑÄ¡Áö ¾Ê°í ÇÔ¼ö°¡ ¹Þ¾Æ µéÀÏ ¼ö ÀÖ´Â ¸Å°³º¯¼öÀÇ ÃÖ´ë °³¼ö¸¦ ³ªÅ¸³À´Ï´Ù.

+ +

IsByRef()

+

¸Å°³º¯¼ö°¡ ByRefÀÎÁö °áÁ¤ÇÕ´Ï´Ù.

+
Func.IsByRef(ParamIndex)
+ + + +
ParamIndex¼±ÅÃÀûÀÔ´Ï´Ù: ¸Å°³º¯¼öÀÇ 1 ±â¹Ý-À妽º. »ý·«µÇ¸é, ¹Ýȯ °ªÀº ÇÔ¼ö¿¡ ByRef ¸Å°³º¯¼ö°¡ ÀÖ´ÂÁö ¾Ë·ÁÁÝ´Ï´Ù.
ReturnsÇÔ¼ö°¡ ³»Àå ÇÔ¼öÀ̰ųª ParamIndex°¡ À¯È¿ÇÏÁö ¾ÊÀ¸¸é ºó ¹®ÀÚ¿­À» µ¹·ÁÁÝ´Ï´Ù; ±×·¸Áö ¾ÊÀ¸¸é, ¸Å°³º¯¼ö°¡ ByRefÀÎÁö ³ªÅ¸³»´Â ºÒ¸®¾ð °ªÀ» µ¹·ÁÁÝ´Ï´Ù.
+
+ +

IsOptional()

+

¸Å°³º¯¼ö°¡ ¼±ÅÃÀûÀÎÁö °áÁ¤ÇÕ´Ï´Ù.

+
Func.IsOptional(ParamIndex)
+ + + +
ParamIndex¼±ÅÃÀû: ¸Å°³º¯¼öÀÇ 1-±â¹Ý À妽º. »ý·«µÇ¸é, ¹Ýȯ °ªÀº ÇÔ¼ö¿¡ ¼±ÅÃÀû ¸Å°³º¯¼ö°¡ ÀÖ´ÂÁö ¾Ë·ÁÁÝ´Ï´Ù.
ReturnsParamIndex°¡ À¯È¿ÇÏÁö ¾ÊÀ¸¸é ºó ¹®ÀÚ¿­À» µ¹·ÁÁÖ°í; ±×·¸Áö ¾ÊÀ¸¸é, ¸Å°³º¯¼ö°¡ ¼±ÅÃÀûÀÎÁö ¾Ë·ÁÁÖ´Â ºÒ¸®¾ð °ªÀ» µ¹·ÁÁÝ´Ï´Ù.
+

+°¡º¯ ÇÔ¼öÀÎ °æ¿ì ¸Å°³º¯¼ö´Â °ø½ÄÀûÀ¸·Î ¼±¾ðÇÒ ÇÊ¿ä°¡ ¾ø½À´Ï´Ù. ³»Àå ÇÔ¼ö¸¦ Áö¿øÇÕ´Ï´Ù.

+ + + diff --git a/src/docs/objects/Functor.htm b/src/docs/objects/Functor.htm new file mode 100644 index 0000000..8f4134d --- /dev/null +++ b/src/docs/objects/Functor.htm @@ -0,0 +1,83 @@ + + +Function Objects + + + + + + + +

ÇÔ¼ö °´Ã¼

+ +

"ÇÔ¼ö °´Ã¼"´Â º¸Åë ´ÙÀ½À» ¶æÇÕ´Ï´Ù:

+ +

ÇÔ¼ö °´Ã¼´Â ´ÙÀ½°ú ÇÔ²² »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù:

+ + +

»ç¿ëÀÚ-Á¤ÀÇ ÇÔ¼ö

+ +

+»ç¿ëÀÚ-Á¤ÀÇ ÇÔ¼ö °´Ã¼´Â ´ÙÀ½ ÀÏ¹Ý ÆÐÅÏÀ» µû¶ó¾ß ÇÕ´Ï´Ù:

+
class YourClassName {
+    Call(a, b) {  ; ÇÊ¿äÇÑ ¸¸Å­ ¸Å°³º¯¼ö¸¦ ¼±¾ðÇϰųª, array*¸¦ ¼±¾ðÇÕ´Ï´Ù.
+        ;...
+    }
+    __Call(method, args*) {
+        if (method = "")  ; For %fn%() or fn.()
+            return this.Call(args*)
+        if (IsObject(method))  ; ÀÌ ÇÔ¼ö °´Ã¼°¡ ¸Þ½îµå·Î »ç¿ëµÇ¸é.
+            return this.Call(method, args*)
+    }
+    ;...
+}
+
+

Á¤È®ÇÏ°Ô ¾î´À ºÎºÐÀÌ ÇÊ¿äÇÑÁö´Â »ç¿ë¹ý¿¡ µû¶ó ´Ù¸¨´Ï´Ù:

+ +

+ __CallÀ¸·Î Á÷Á¢ °°Àº ÀÏÀ» ÇÒ ¼ö ÀÖ½À´Ï´Ù. ±×·¸Áö¸¸, __CallÀ» Call·Î ¹æÇâÀüȯÇϱ⸦ ±ÇÀåÇÕ´Ï´Ù. ½±°Ô AutoHotkey v2·Î ÀÌÀüÇÒ ¼ö ÀÖ½À´Ï´Ù. ¿ÀÅäÇÖÅ° v2¿¡¼­ %this%()ÀÇ ÇàÀ§¿Í ¸Þ½îµå È£ÃâÀº Á÷Á¢ÀûÀ¸·Î Call ¸Þ½îµå¸¦ È£ÃâÇϵµ·Ï º¯°æµÇ¾ú½À´Ï´Ù.

+ +

BoundFunc Object [v1.1.20+]

+

+ÇÔ¼öó·³ ÇàÀ§ÇÕ´Ï´Ù. ±×·¯³ª ±×Àú ¹Ì¸® Á¤ÀÇµÈ ¸Å°³º¯¼ö¸¦ ´Ù¸¥ ÇÔ¼ö·Î °Ç³×´Â ¿ªÇÒ¸¸ ÇÕ´Ï´Ù.

+

+µÎ °¡Áö ¹æ¹ýÀ¸·Î BoundFunc °´Ã¼¸¦ »ý¼ºÇÒ ¼ö ÀÖ½À´Ï´Ù:

+ +

+BoundFunc °´Ã¼´Â ¾Æ·¡ ¿¹Á¦¿¡ º¸¿©ÁÖ´Â ¹Ù¿Í °°ÀÌ È£ÃâÇÒ ¼ö ÀÖ½À´Ï´Ù. ´Ù¸¥ ¸Þ½îµå´Â Áö¿øÇÏÁö ¾Ê½À´Ï´Ù. BoundFunc°¡ È£ÃâµÉ ¶§, ±×¿¡ ¹­ÀÎ ÇÔ¼ö³ª ¸Þ½îµå¸¦ È£ÃâÇϸ鼭, ¹­ÀÎ ¸Å°³º¯¼ö¿Í ±×¸®°í È£ÃâÀÚ°¡ °Ç³Ù °ÍÀ» ¸ðµÎ °Ç³Ü´Ï´Ù. ¿¹¸¦ µé¾î:

+
fn := Func("RealFn").Bind(1)
+
+%fn%(2)    ; Shows "1, 2"
+fn.Call(3) ; Shows "1, 3"
+
+RealFn(a, b) {
+    MsgBox %a%, %b%
+}
+

+ObjBindMethod()¸¦ »ç¿ëÇÏ¸é ¸Þ½îµå ÀÚü¸¦ °¡¸®Å°´Â ÂüÁ¶ ÁÖ¼Ò¸¦ ¿­¶÷ÇÒ ¼ö ¾øÀ» ¶§ ¸Þ½îµå¿¡ ¹­À» ¼ö ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î:

+ +
file := FileOpen(A_ScriptFullPath, "r")
+getLine := ObjBindMethod(file, "ReadLine")
+MsgBox % %getLine%()  ; ÀÌ ÆÄÀÏÀÇ Ã¹ ÁÙÀ» º¸¿©ÁÝ´Ï´Ù.
+ + + diff --git a/src/docs/objects/Object.htm b/src/docs/objects/Object.htm new file mode 100644 index 0000000..0db7a15 --- /dev/null +++ b/src/docs/objects/Object.htm @@ -0,0 +1,249 @@ + + +Object + + + + + + + +

°´Ã¼

+ +

¿ÀÅäÇÖÅ°ÀÇ ±âº» °´Ã¼ µ¥ÀÌÅÍÀ¯ÇüÀº ¿¬°ü ¹è¿­ÀÔ´Ï´Ù. ±×ÀÇ ÇàÀ§¸¦ Àç´ÜÇÒ ¼ö Àִ Ư¡ÀÌ ÀÖ½À´Ï´Ù. ±âº»°ªÀ¸·Î, {}, [], Object() ±×¸®°í Array()°¡ »ý¼ºÇÑ ¸ðµç °´Ã¼´Â ´ÙÀ½ ¸Þ½îµå¸¦ Áö¿øÇÕ´Ï´Ù:

+ +

ºñÃßõ (»ç¿ëÀ» ±ÇÀåÇÏÁö ¾Ê½À´Ï´Ù):

+ +

+°¢ ¸Þ½îµå ¸¶´Ù µ¿µîÇÑ ÇÔ¼ö°¡ ÀÖ½À´Ï´Ù. ÀÌ ÇÔ¼ö¸¦ »ç¿ëÇÏ¸é ´Ù¸¥ °´Ã¼°¡ ±¸ÇöÇÑ ¸ÂÃã ÇàÀ§¸¦ ¿ìȸÇÒ ¼ö ÀÖ½À´Ï´Ù -- ÀÌ ÇÔ¼öµéÀº ²À ¿ìȸÀÇ ¸ñÀûÀ¸·Î¸¸ »ç¿ëÇϽñ⸦ ±ÇÀåÇÕ´Ï´Ù. È£ÃâÇÏ·Á¸é, ¸Þ½îµå À̸§ ¾Õ¿¡ "Obj"¸¦ ºÙÀÎ ´ÙÀ½ ¸ñÇ¥ °´Ã¼¸¦ ù ¹ø° ¸Å°³º¯¼ö·Î °Ç³×½Ê½Ã¿À. ¿¹¸¦ µé¾î:

+
array := [1, 2, 3]
+MsgBox % ObjMaxIndex(array) " = " array.MaxIndex()
+

+Obj ÇÔ¼ö°¡ À߸øµÈ À¯ÇüÀÇ °´Ã¼ ¶Ç´Â °ªÀ¸·Î È£ÃâµÇ¸é, ºó ¹®ÀÚ¿­À» µ¹·ÁÁÝ´Ï´Ù.

+  + +

InsertAt [v1.1.21+]

+

+Çϳª ÀÌ»óÀÇ °ªÀ» ¼±Çü ¹è¿­ ¾È¿¡ ÁÖ¾îÁø À§Ä¡¿¡ »ðÀÔÇÕ´Ï´Ù..

+
Object.InsertAt(Pos, Value1 [, Value2, ... ValueN])
+
+
Pos
+

Value1À» »ðÀÔÇÒ À§Ä¡. ¿¬ÀÌÀº °ªÀº Pos+1, Pos+2, µîµî¿¡ »ðÀԵ˴ϴÙ.

+
Value1 ...
+

»ðÀÔÇÒ Çϳª ÀÌ»óÀÇ °ªµé. °ª ¹è¿­À» »ðÀÔÇÏ·Á¸é, ¸¶Áö¸· ¸Å°³º¯¼ö·Î theArray*¸¦ °Ç³×½Ê½Ã¿À.

+
+

³íÆò

+

+InsertAtÀº RemoveAt°ú »ó´ëÀûÀÔ´Ï´Ù.

+

+°´Ã¼´Â ¿¬°ü ¹è¿­À̹ǷÎ, Posµµ Value1 °ª°ú ¿¬°üµÇ´Â Á¤¼ö Å°ÀÔ´Ï´Ù. ÀÌÀü¿¡ Pos À§Ä¡¿Í ±× ¿À¸¥ÂÊ¿¡ ÀÖ´Â Ç׸ñµéÀº Á¤È®ÇÏ°Ô ¸Å°³º¯¼öÀÇ °¹¼ö¸¸Å­ ¿À¸¥ÂÊÀ¸·Î À̵¿ÇÕ´Ï´Ù. ±× °á°ú ¸î¸î °ªµéÀÌ ¼Ò½ÇµÉ ¼ö ÀÖ½À´Ï´Ù (Áï, ÀÌ °´Ã¼´Â Èñ¼Ò ¹è¿­ÀÔ´Ï´Ù). ¿¹¸¦ µé¾î:

+
x := []
+x.InsertAt(1, "A", "B") ; =>  ["A", "B"]
+x.InsertAt(2, "C")      ; =>  ["A", "C", "B"]
+
+; ¼º±ä/ÇÒ´çµÇÁö ¾ÊÀº ¿ø¼Ò´Â º¸Á¸µË´Ï´Ù:
+x := ["A", , "C"]
+x.InsertAt(2, "B")      ; =>  ["A", "B",    , "C"]
+
+x := ["C"]
+x.InsertAt(1, , "B")    ; =>  [   , "B", "C"]
+

+InsertAtÀº °´Ã¼ÀÇ Á¤¼ö Å°°¡ ¼±Çü ¹è¿­ ¾ÈÀÇ À§Ä¡¸¦ ³ªÅ¸³»´Â °æ¿ì¿¡¸¸ »ç¿ëÇØ¾ß ÇÕ´Ï´Ù. ±× °´Ã¼¿¡ ID³ª ÇÚµé °°ÀÌ ÀÓÀÇÀÇ Á¤¼ö Å°°¡ ´ã°Ü ÀÖ¸é, InsertAtÀº ¿øÄ¡ ¾ÊÀº ºÎÀÛ¿ëÀ» ¾ß±âÇÒ °¡´É¼ºÀÌ ³ô½À´Ï´Ù. ¿¹¸¦ µé¾î:

+
x := [], handleX := 0x4321, handleY := 0x1234
+x.InsertAt(handleX, "A")
+MsgBox % x[handleX]  ; A - okay
+x.InsertAt(handleY, "B")
+MsgBox % x[handleX]  ; ºñ¾î ÀÖ½À´Ï´Ù
+MsgBox % x[handleX+1]  ; ÀÌ°÷ÀÌ "B"ÀÇ »õ "À§Ä¡"ÀÔ´Ï´Ù.
+

+InsertAtÀº ¹®ÀÚ¿­À̳ª °´Ã¼ Å°¿¡ ¿µÇâÀ» ÁÖÁö ¾Ê½À´Ï´Ù. ±×·¡¼­ È¥ÇÕ Å° À¯ÇüÀÌ ´ã±ä °´Ã¼¿Í ¾ÈÀüÇÏ°Ô »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù.

+
+ +

RemoveAt [v1.1.21+]

+

¼±Çü ¹è¿­¿¡¼­ ÁÖ¾îÁø À§Ä¡·ÎºÎÅÍ Ç׸ñÀ» Á¦°ÅÇÕ´Ï´Ù.

+
Object.RemoveAt(Pos [, Length])
+
+
Pos
+

Á¦°ÅÇÒ °ªÀÇ À§Ä¡.

+ +
Length
+

Á¦°ÅÇÒ °ªÀÇ ¹üÀ§ÀÇ ±æÀÌ. PosºÎÅÍ Pos+Length-1±îÁöÀÇ Ç׸ñÀÌ Á¦°ÅµË´Ï´Ù. »ý·«Çϸé, ÇϳªÀÇ Ç׸ñ¸¸ Á¦°ÅµË´Ï´Ù.

+ +
Return Value
+

¸¸¾à Length°¡ »ý·«µÇ¸é, PosÀ¸·Î Á¦°ÅµÈ °ªÀÌ ¹ÝȯµË´Ï´Ù (¾øÀ¸¸é ºñ¾î ÀÖ½À´Ï´Ù). ±×·¸Áö ¾ÊÀ¸¸é, ¹Ýȯ °ªÀº °ªÀ» °¡Áø Ç׸ñÀÌ Á¦°ÅµÈ °³¼öÀÔ´Ï´Ù. ÀÌ°ÍÀº Èñ¼Ò ¹è¿­ÀÇ Length¿Í ´Ù¸£Áö¸¸, ¾ðÁ¦³ª 0ºÎÅÍLength (Æ÷ÇÔ) »çÀÌÀÔ´Ï´Ù.

+
+

Remarks

+

+RemoveAtÀº InsertAt¿¡ »ó´ëÀûÀÔ´Ï´Ù.

+

+Pos ¿À¸¥ÂÊÀÇ ³ª¸ÓÁö Ç׸ñµéÀº ¿ÞÂÊÀ¸·Î Length ¸¸Å­ (¶Ç´Â »ý·«µÇ¸é 1¸¸Å­) À̵¿ÇÕ´Ï´Ù. Á¦°ÅµÈ ¹üÀ§¿¡¼­ ¾î¶² Ç׸ñµéÀº °ªÀÌ ¾ø´õ¶óµµ »ó°üÀÌ ¾ø½À´Ï´Ù. ¿¹¸¦ µé¾î:

+
x := ["A", "B"]
+MsgBox % x.RemoveAt(1)  ; A
+MsgBox % x[1]           ; B
+
+x := ["A", , "C"]
+MsgBox % x.RemoveAt(1, 2)  ; 1
+MsgBox % x[1]              ; C
+

+RemoveAtÀº ±× °´Ã¼ÀÇ Á¤¼ö Å°°¡ ¼±Çü ¹è¿­¿¡¼­ À§Ä¡¸¦ ³ªÅ¸³¾ °æ¿ì¿¡¸¸ »ç¿ëÇØ¾ß ÇÕ´Ï´Ù. ±× °´Ã¼ ¾È¿¡ ID³ª ÇÚµé °°ÀÌ ÀÓÀÇÀÇ Á¤¼öÅ°°¡ ÀÖ´Ù¸é, RemoveAtÀº ¿øÇÏÁö ¾Ê´Â ºÎÀÛ¿ëÀ» ¾ß±âÇÒ °¡´É¼ºÀÌ ³ô½À´Ï´Ù. ¿¹¸¦ µé¾î:

+
x := {0x4321: "A", 0x1234: "B"}
+MsgBox % x.RemoveAt(0x1234) ; B
+MsgBox % x[0x4321]          ; Empty
+MsgBox % x[0x4321-1]        ; A
+

+RemoveAtÀº ¹®ÀÚ¿­À̳ª °´Ã¼ Å°¿¡ ¿µÇâÀ» ¹ÌÄ¡Áö ¾Ê½À´Ï´Ù. ±×·¡¼­ È¥ÇÕ Å° À¯ÇüÀÌ ´ã±ä °´Ã¼¿Í ¾ÈÀüÇÏ°Ô »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù.

+
+ +

Push [v1.1.21+]

+

¹è¿­ÀÇ ³¡¿¡ °ªÀ» Ãß°¡ÇÕ´Ï´Ù.

+
Object.Push([ Value, Value2, ..., ValueN ])
+
+
Value ...
+

»ðÀÔÇÒ Çϳª ÀÌ»óÀÇ °ª. °ª ¹è¿­À» »ðÀÔÇÏ·Á¸é, ¸¶Áö¸· ¸Å°³º¯¼ö·Î theArray*¸¦ °Ç³×½Ê½Ã¿À.

+
Return Value
+
+

°¡Àå ¸¶Áö¸·À¸·Î »ðÀÔµÈ °ªÀÇ À§Ä¡, ¹è¿­ÀÌ À½¼ö ÁöÇ¥¿¡ ¿ø¼Ò¸¦ °¡Áö°í ÀÖ´Ù¸é À½ÀÇ Á¤¼öÀÏ ¼ö ÀÖ½À´Ï´Ù.

+
+

Remarks

+

+¹è¿­ÀÌ ºñ¾î ÀÖ°Å ¶Ç´Â ¿ÀÁ÷ ¹®ÀÚ¿­À̳ª °´Ã¼ Å°¸¸ ´ã°Ü ÀÖ´Ù¸é ù ¹ø° °ªÀº À§Ä¡ 1¿¡ »ðÀԵ˴ϴÙ.

+

+±×·¸Áö ¾ÊÀ¸¸é, ù ¹ø° °ªÀº Object.MaxIndex() + 1¿¡ »ðÀԵ˴ϴÙ. ±× À§Ä¡°¡ À½¼ö ¶Ç´Â 0ÀÌ¶óµµ »ó°ü¾ø½À´Ï´Ù. ÀÌ À§Ä¡°¡ ¸¶À½¿¡ ¾Èµé°í °´Ã¼¿¡ À½¼ö Å°°¡ µé¾î ÀÖÀ» ¼ö ÀÖ´Ù¸é, ´ë½Å¿¡ Object.InsertAt(Object.Length() + 1, ...)¸¦ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù.

+
+ +

Pop [v1.1.21+]

+

¸¶Áö¸· ¹è¿­ ¿ø¼Ò¸¦ Á¦°ÅÇÏ°í µ¹·ÁÁÝ´Ï´Ù.

+
Value := Object.Pop()
+

+¹è¿­ ¿ø¼Ò°¡ ¾ø´Ù¸é, ¹Ýȯ °ªÀº ºó ¹®ÀÚ¿­ÀÔ´Ï´Ù. ±×·¸Áö ¾ÊÀ¸¸é, ´ÙÀ½°ú µ¿µîÇÕ´Ï´Ù:

+
Value := Object.RemoveAt(Object.Length())
+
+ +

Delete [v1.1.21+]

+

Å°-°ª ½ÖÀ» °´Ã¼·ÎºÎÅÍ Á¦°ÅÇÕ´Ï´Ù.

+
Object.Delete(Key)
+Object.Delete(FirstKey, LastKey)
+
+
Key
+

Any single key.

+
FirstKey, LastKey
+

À¯È¿ÇÑ ¹üÀ§ÀÇ Á¤¼ö³ª ¹®ÀÚÅ°. FirstKey <= LastKey. µÎ Å° ¸ðµÎ À¯ÇüÀÌ °°¾Æ¾ß ÇÕ´Ï´Ù.

+
Return Value
+

Á¤È®ÇÏ°Ô ¸Å°³º¯¼ö°¡ Çϳª¸¸ ÀÖ´Ù¸é, Á¦°ÅµÈ °ªÀÌ ¹ÝȯµË´Ï´Ù (¾ø´Ù¸é ºñ¾î ºó °ªÀ» µ¹·ÁÁÝ´Ï´Ù). ±×·¸Áö ¾ÊÀ¸¸é ¹Ýȯ °ªÀº ¹ß°ßµÇ°Å³ª Á¦°ÅµÈ Å°ÀÇ °³¼öÀÔ´Ï´Ù.

+
+

Remarks

+

+RemoveAt¿Í ´Ù¸£°Ô, Delete´Â Á¦°ÅÇÏÁö ¾ÊÀº Å°-°ª ½Ö¿¡ ¿µÇâÀ» ÁÖÁö ¾Ê½À´Ï´Ù. ¿¹¸¦ µé¾î:

+
x := ["A", "B"]
+MsgBox % x.RemoveAt(1)  ; A
+MsgBox % x[1]           ; B
+
+x := ["A", "B"]
+MsgBox % x.Delete(1)    ; A
+MsgBox % x[1]           ; Empty
+
+ +

MinIndex / MaxIndex [AHK_L 31+]

+
MinIndex := Object.MinIndex()
+MaxIndex := Object.MaxIndex()
+

+Á¤¼ö Å°°¡ Á¸ÀçÇϸé, MinIndex´Â °¡Àå ³·Àº °ªÀ» µ¹·ÁÁÖ°í MaxIndex´Â °¡Àå ³ôÀº °ªÀ» µ¹·ÁÁÝ´Ï´Ù. ±×·¸Áö ¾ÊÀ¸¸é ºó ¹®ÀÚ¿­À» µ¹·ÁÁÝ´Ï´Ù.

+ +

Length [v1.1.21+]

+
Length := Object.Length()
+

+À§Ä¡ 1¿¡¼­ ½ÃÀÛÇÏ¿© ¼±Çü ¹è¿­ÀÇ ±æÀ̸¦ µ¹·ÁÁÝ´Ï´Ù; Áï, °´Ã¼ ¾È¿¡¼­ °¡Àå ³ôÀº ¾çÀÇ Á¤¼ö Å°¸¦ µ¹·ÁÁÖ°í, ±×°Ô ¾ø´Ù¸é 0À» µ¹·ÁÁÝ´Ï´Ù.

+
+MsgBox % ["A", "B", "C"].Length()  ;  3
+MsgBox % ["A",    , "C"].Length()  ;  3
+MsgBox % {-10: 0, 10: 0}.Length()  ; 10
+MsgBox % {-10: 0, -1: 0}.Length()  ;  0
+
+ +

SetCapacity [AHK_L 31+]

+

°´Ã¼ÀÇ ¶Ç´Â °´Ã¼ ÇʵåÀÇ °¡¿ë ´É·ÂÀ» Á¶Á¤ÇÕ´Ï´Ù.

+
Object.SetCapacity(MaxItems)
+Object.SetCapacity(Key, ByteSize)
+ + + + + + +
MaxItems°´Ã¼°¡ ´ãÀ» ¼ö ÀÖ´ÂÅ°-°ª ½ÖÀÇ ÃÖ´ë °³¼ö. ÀÌ °ªÀ» ³Ñ¾î¼­¸é ÀÚµ¿À¸·Î È®´ëµË´Ï´Ù. Å°-°ª ½ÖÀÇ ÇöÀç °³¼öº¸´Ù ÀÛÀ¸¸é, ´ë½Å¿¡ ÇöÀç °³¼ö°¡ »ç¿ëµÇ°í, »ç¿ëµÇÁö ¾Ê´Â °ø°£Àº ¸ðµÎ ÇØÁ¦µË´Ï´Ù.
KeyÀ¯È¿ÇÑ Å°¸é ¸ðµÎ.
ByteSizeÇʵåÀÇ ¹®ÀÚ¿­ ¹öÆÛÀÇ ¹ÙÀÌÆ® ´ÜÀ§·Î »õ Å©±â. ³Î Á¾·á ¹®ÀÚ´Â Á¦¿ÜÇÕ´Ï´Ù. Çʵ尡 Á¸ÀçÇÏÁö ¾ÊÀ¸¸é, »õ·Î »ý¼ºµË´Ï´Ù. ByteSize°¡ 0À̸é, ¹öÆÛ°¡ ÇØÁ¦µÇÁö¸¸ ºó Çʵå´Â Á¦°ÅµÇÁö ¾Ê½À´Ï´Ù. ByteSize°¡ ÇöÀç Å©±âº¸´Ù ÀÛÀ¸¸é, ÃÊ°úµÈ µ¥ÀÌÅÍ´Â Àß·Á ³ª°©´Ï´Ù; ±×·¸Áö ¾ÊÀ¸¸é ±âÁ¸ÀÇ ¸ðµç µ¥ÀÌÅÍ°¡ º¸Á¸µË´Ï´Ù.
Returns¼º°øÇÏ¸é »õ °¡¿ë ´É·Â, ±×·¸Áö ¾ÊÀ¸¸é ºó ¹®ÀÚ¿­À» µ¹·ÁÁÝ´Ï´Ù.
+ +

GetCapacity [AHK_L 31+]

+
MaxItems := Object.GetCapacity()
+ByteSize := Object.GetCapacity(Key)
+

°´Ã¼³ª °´Ã¼ ÇʵåÀÇ ÇöÀç °¡¿ë ´É·ÂÀ» µ¹·ÁÁÝ´Ï´Ù.

+ +

GetAddress [AHK_L 31+]

+
Ptr := Object.GetAddress(Key)
+

ÀÖ´Ù¸é, ÇʵåÀÇ ¹®ÀÚ¿­ ¹öÆÛÀÇ ÇöÀç ÁÖ¼Ò¸¦ µ¹·ÁÁÝ´Ï´Ù.

+ +

NewEnum [AHK_L 49+]

+
Enum := Object._NewEnum()
+

»õ ¿­°ÅÀÚ(enumerator)¸¦ µ¹·ÁÁÖ¾î ÀÌ °´Ã¼ÀÇ Å°-°ª ½ÖÀ» ¿­°ÅÇÕ´Ï´Ù. ÀÌ ¸Þ½îµå´Â º¸Åë Á÷Á¢ È£ÃâµÇÁö ¾Ê°í, for-ȸµ¹ÀÌ ¾È¿¡¼­ »ç¿ëµË´Ï´Ù.

+ +

HasKey [AHK_L 53+]

+
Object.HasKey(Key)
+

Key°¡ Object¾ÈÀÇ °ª (even "")¿¡ ¿¬°üµÇ¾î ÀÖÀ¸¸é ÂüÀ», ±×·¸Áö ¾ÊÀ¸¸é °ÅÁþÀ» µ¹·ÁÁÝ´Ï´Ù.

+ +

Clone [AHK_L 60+]

+
Clone := Object.Clone()
+

°´Ã¼ÀÇ ¾èÀº »çº»À» µ¹·ÁÁÝ´Ï´Ù.

+ +

ObjRawSet

+

Å°-°ª ½ÖÀ» °´Ã¼¿¡ ÀúÀåÇϰųª µ¤¾î¾¹´Ï´Ù.

+
ObjRawSet(Object, Key, Value)
+

+ÀÌ ÇÔ¼ö·Î ½ºÅ©¸³Æ®´Â __Set ¸ÞŸ-ÇÔ¼ö¸¦ ¿ìȸÇÒ ¼ö ÀÖ½À´Ï´Ù. ÇÊ¿äÇÏÁö ¾ÊÀ¸¸é, ´ë½Å¿¡ Á¤»óÀûÀÎ ÇÒ´çÀ» »ç¿ëÇØ¾ß ÇÕ´Ï´Ù. ¿¹¸¦ µé¾î: Object[Key] := Value

+

+¸ÞŸ-ÇÔ¼ö¸¦ ¿ìȸÇÏ´Â °ÍÀÌ ¸ñÀûÀ̹ǷÎ, ¸Þ½îµå°¡ ¾Æ´Ï¶ó ÇÔ¼öÀÔ´Ï´Ù. ³»Àå ¸Þ½îµå¸¦ È£ÃâÇϸé ÀϹÝÀûÀ¸·Î __Call meta-ÇÔ¼ö°¡ È£ÃâµË´Ï´Ù.

+ +

Insert [AHK_L 31+]

+
ºñÃßõ: Insert´Â »õ ½ºÅ©¸³Æ®¿¡ »ç¿ëÀ» ÃßõÇÏÁö ¾Ê½À´Ï´Ù. ´ë½Å¿¡ InsertAt, Push, ObjRawSet ¶Ç´Â ±×³É ´Ü¼øÇÏ°Ô ÇÒ´çÀ» »ç¿ëÇϽʽÿÀ.
+

+Å°-°ª ½ÖÀ» °´Ã¼¿¡ »ðÀÔÇÕ´Ï´Ù. Á¤¼ö Å°°¡ ÁÖ¾îÁö¸é ÀÚµ¿À¸·Î ±âÁ¸ÀÇ Å°¸¦ Á¶Á¤ÇÕ´Ï´Ù.

+
Object.Insert(Pos, Value1 [, Value2, ... ValueN ])
+Object.Insert(Value)
+Object.Insert(StringOrObjectKey, Value)
+

InsertÀÇ ÇàÀ§´Â ¸Å°³º¯¼öÀÇ °³¼ö ±×¸®°í À¯Çü¿¡ µû¶ó ´Þ¶óÁý´Ï´Ù:

+ +

Insert´Â true¸¦ µ¹·ÁÁÝ´Ï´Ù. v1.1.21 ÀÌÈÄ¿¡¼­, ¸Þ¸ð¸® ÇÒ´çÀÌ ½ÇÆÐÇÏ¸é ¿¹¿Ü°¡ ´øÁ®Áý´Ï´Ù. ÀÌÀü ¹öÀü¿¡¼­´Â ±× °æ¿ì ºó ¹®ÀÚ¿­À» µ¹·ÁÁÖ¾ú½À´Ï´Ù.

+
+ +

Remove [AHK_L 31+]

+
ºñÃßõ: Remove´Â »õ ½ºÅ©¸³Æ®¿¡ »ç¿ëÀ» ÃßõÇÏÁö ¾Ê½À´Ï´Ù. ´ë½Å¿¡ RemoveAt, Delete ¶Ç´Â PopÀ» »ç¿ëÇϽʽÿÀ.
+

°´Ã¼·ÎºÎÅÍ Å°-°ª ½ÖÀ» Á¦°ÅÇÕ´Ï´Ù.

+
Object.Remove(FirstKey, LastKey)
+

RemoveÀÇ ÇàÀ§´Â ¸Å°³º¯¼öÀÇ °³¼ö¿Í À¯Çü¿¡ µû¶ó ´Þ¶óÁý´Ï´Ù:

+ +
+ + + diff --git a/src/docs/scripts/ContextSensitiveHelp.ahk b/src/docs/scripts/ContextSensitiveHelp.ahk new file mode 100644 index 0000000..2e774a2 --- /dev/null +++ b/src/docs/scripts/ContextSensitiveHelp.ahk @@ -0,0 +1,73 @@ +; Context Sensitive Help in Any Editor -- by Rajat +; http://www.autohotkey.com +; This script makes Ctrl+2 (or another hotkey of your choice) show the help file +; page for the selected AutoHotkey command or keyword. If nothing is selected, +; the command name will be extracted from the beginning of the current line. + +; The hotkey below uses the clipboard to provide compatibility with the maximum +; number of editors (since ControlGet doesn't work with most advanced editors). +; It restores the original clipboard contents afterward, but as plain text, +; which seems better than nothing. + +$^2:: +; The following values are in effect only for the duration of this hotkey thread. +; Therefore, there is no need to change them back to their original values +; because that is done automatically when the thread ends: +SetWinDelay 10 +SetKeyDelay 0 +AutoTrim, On + +if A_OSType = WIN32_WINDOWS ; Windows 9x + Sleep, 500 ; Give time for the user to release the key. + +C_ClipboardPrev = %clipboard% +clipboard = +; Use the highlighted word if there is one (since sometimes the user might +; intentionally highlight something that isn't a command): +Send, ^c +ClipWait, 0.1 +if ErrorLevel <> 0 +{ + ; Get the entire line because editors treat cursor navigation keys differently: + Send, {home}+{end}^c + ClipWait, 0.2 + if ErrorLevel <> 0 ; Rare, so no error is reported. + { + clipboard = %C_ClipboardPrev% + return + } +} +C_Cmd = %clipboard% ; This will trim leading and trailing tabs & spaces. +clipboard = %C_ClipboardPrev% ; Restore the original clipboard for the user. +Loop, parse, C_Cmd, %A_Space%`, ; The first space or comma is the end of the command. +{ + C_Cmd = %A_LoopField% + break ; i.e. we only need one interation. +} +IfWinNotExist, AutoHotkey Help +{ + ; Determine AutoHotkey's location: + RegRead, ahk_dir, HKEY_LOCAL_MACHINE, SOFTWARE\AutoHotkey, InstallDir + if ErrorLevel ; Not found, so look for it in some other common locations. + { + if A_AhkPath + SplitPath, A_AhkPath,, ahk_dir + else IfExist ..\..\AutoHotkey.chm + ahk_dir = ..\.. + else IfExist %A_ProgramFiles%\AutoHotkey\AutoHotkey.chm + ahk_dir = %A_ProgramFiles%\AutoHotkey + else + { + MsgBox Could not find the AutoHotkey folder. + return + } + } + Run %ahk_dir%\AutoHotkey.chm + WinWait AutoHotkey Help +} +; The above has set the "last found" window which we use below: +WinActivate +WinWaitActive +StringReplace, C_Cmd, C_Cmd, #, {#} +send, !n{home}+{end}%C_Cmd%{enter} +return diff --git a/src/docs/scripts/ContextSensitiveHelp.htm b/src/docs/scripts/ContextSensitiveHelp.htm new file mode 100644 index 0000000..78d5607 --- /dev/null +++ b/src/docs/scripts/ContextSensitiveHelp.htm @@ -0,0 +1,87 @@ + + +Context Sensitive Help in Any Editor -- by Rajat + + + + + + + +

¹®¸Æ °¨Áö µµ¿ò¸» -- by Rajat

+ +

+ÀÌ ½ºÅ©¸³Æ®´Â Ctrl+2 (¼±Åÿ¡ µû¶ó ´Ù¸¥ ÇÖÅ°)¸¦ ´©¸£¸é ¼±ÅÃµÈ ¿ÀÅäÇÖÅ° ¸í·É¾î³ª Å°¿öµå¿¡ ´ëÇÑ µµ¿ò¸»À» º¸¿©ÁÝ´Ï´Ù. ¾Æ¹«°Íµµ ¼±ÅÃÇÏÁö ¾ÊÀ¸¸é ¸í·É¾î À̸§À» ÇöÀç ÁÙÀÇ Ã³À½À¸·ÎºÎÅÍ ÃßÃâÇÕ´Ï´Ù. +

+

ÀÌ ½ºÅ©¸³Æ® ³»·Á¹Þ±â  |  ´Ù¸¥ »ùÇà ½ºÅ©¸³Æ®  |  È¨À¸·Î

+ +
; ¾Æ·¡ÀÇ ÇÖÅ°´Â (ControlGetÀÌ ´ëºÎºÐÀÇ °í±Þ ÆíÁý±â¿Í ÀÛµ¿ÇÏÁö ¾Ê±â ¶§¹®¿¡)
+; °¡´ÉÇÏ¸é ¸¹Àº ¿¡µðÅÍ¿ÍÀÇ È£È¯¼ºÀ» À§ÇØ Å¬¸³º¸µå¸¦ »ç¿ëÇÕ´Ï´Ù.
+; ¿ø·¡ Ŭ¸³º¸µå ³»¿ëÀ» ³ªÁß¿¡ º¹±¸ÇÏÁö¸¸, Æò¹üÇÑ ÅؽºÆ®·Î º¹±¸ÇÕ´Ï´Ù.
+; ±×·¡µµ ¾ø´Â °Íº¸´Ù´Â ³´½À´Ï´Ù.
+
+$^2::
+; ´ÙÀ½ °ªµéÀº ÀÌ ÇÖÅ°ÀÇ ¾²·¹µå°¡ Á¸ÀçÇÏ´Â µ¿¾È¿¡¸¸ È¿°ú°¡ ÀÖ½À´Ï´Ù.
+; ±×·¯¹Ç·Î, ¿ø·¡ °ªÀ¸·Î ´Ù½Ã º¹±¸ÇÒ ÇÊ¿ä°¡ ¾ø½À´Ï´Ù
+; ¿Ö³ÄÇÏ¸é ¾²·¹µå°¡ ³¡³ª¸é ÀÚµ¿À¸·Î º¹±¸µÇ±â ¶§¹®ÀÔ´Ï´Ù:
+SetWinDelay 10
+SetKeyDelay 0
+AutoTrim, On
+
+if A_OSType = WIN32_WINDOWS  ; Windows 9x
+    Sleep, 500  ; »ç¿ëÀÚ¿¡°Ô Å°¸¦ ¶¿ ½Ã°£À» ÁÝ´Ï´Ù.
+
+C_ClipboardPrev = %clipboard%
+clipboard =
+; ÀÖ´Ù¸é °­Á¶µÈ ´Ü¾î¸¦ »ç¿ëÇÕ´Ï´Ù.
+; (¾î¶² °æ¿ì »ç¿ëÀÚ´Â ¸í·É¾î°¡ ¾Æ´Ñ °ÍÀ» ÀǵµÀûÀ¸·Î °­Á¶ÇÒ ¼ö Àֱ⠶§¹®ÀÔ´Ï´Ù):
+Send, ^c
+ClipWait, 0.1
+if ErrorLevel <> 0
+{
+    ; ÆíÁý±â´Â Ä¿¼­ Å°¸¦ ´Ù¸£°Ô Ãë±ÞÇϱ⠶§¹®¿¡ Àüü ÁÙÀ» ¾ò½À´Ï´Ù:
+    Send, {home}+{end}^c
+    ClipWait, 0.2
+    if ErrorLevel <> 0  ; °ÅÀÇ ¾ø´Â °æ¿ìÀ̹ǷΠ¿¡·¯¸¦ º¸°íÇÏÁö ¾Ê½À´Ï´Ù.
+    {
+        clipboard = %C_ClipboardPrev%
+        return
+    }
+}
+C_Cmd = %clipboard%  ; ÀÌ°ÍÀ¸·Î ¾ÕµÚÀÇ ÅÇ°ú & ½ºÆäÀ̽º°¡ Á¦°ÅµË´Ï´Ù.
+clipboard = %C_ClipboardPrev%  ; »ç¿ëÀÚ¸¦ À§ÇØ ¿ø·¡ Ŭ¸³º¸µå¸¦ º¹±¸ÇÕ´Ï´Ù.
+Loop, parse, C_Cmd, %A_Space%`,  ; ù ¹ø° ½ºÆäÀ̽º³ª ½°Ç¥°¡ ¸í·É¾îÀÇ ³¡ÀÔ´Ï´Ù.
+{
+    C_Cmd = %A_LoopField%
+    break ; Áï, ÇÑ ¹ø¸¸ ¹Ýº¹ÇÏ¸é µË´Ï´Ù.
+}
+IfWinNotExist, AutoHotkey Help
+{
+    ; ¿ÀÅäÇÖÅ°ÀÇ À§Ä¡¸¦ ¾Ë¾Æ³À´Ï´Ù:
+    RegRead, ahk_dir, HKEY_LOCAL_MACHINE, SOFTWARE\AutoHotkey, InstallDir
+    if ErrorLevel  ; ¹ß°ßÀÌ ¾ÈµÇ¸é, ´Ù¸¥ À§Ä¡¿¡¼­ ã¾Æº¾´Ï´Ù.
+    {
+        if A_AhkPath
+            SplitPath, A_AhkPath,, ahk_dir
+        else IfExist ..\..\AutoHotkey.chm
+            ahk_dir = ..\..
+        else IfExist %A_ProgramFiles%\AutoHotkey\AutoHotkey.chm
+            ahk_dir = %A_ProgramFiles%\AutoHotkey
+        else
+        {
+            MsgBox ¿ÀÅäÇÖÅ° Æú´õ¸¦ ¹ß°ßÇÏÁö ¸øÇß½À´Ï´Ù.
+            return
+        }
+    }
+    Run %ahk_dir%\AutoHotkey.chm
+    WinWait AutoHotkey Help
+}
+; À§¿¡¼­ "¸¶Áö¸· ¹ß°ß" âÀ» ¼³Á¤Çß°í ±×°ÍÀ» ¾Æ·¡¿¡ »ç¿ëÇÕ´Ï´Ù:
+WinActivate
+WinWaitActive
+StringReplace, C_Cmd, C_Cmd, #, {#}
+send, !n{home}+{end}%C_Cmd%{enter}
+return
+
+ + diff --git a/src/docs/scripts/EasyWindowDrag.ahk b/src/docs/scripts/EasyWindowDrag.ahk new file mode 100644 index 0000000..5282b4d --- /dev/null +++ b/src/docs/scripts/EasyWindowDrag.ahk @@ -0,0 +1,45 @@ +; Easy Window Dragging (requires XP/2k/NT) +; http://www.autohotkey.com +; Normally, a window can only be dragged by clicking on its title bar. +; This script extends that so that any point inside a window can be dragged. +; To activate this mode, hold down CapsLock or the middle mouse button while +; clicking, then drag the window to a new position. + +; Note: You can optionally release Capslock or the middle mouse button after +; pressing down the mouse button rather than holding it down the whole time. +; This script requires v1.0.25+. + +~MButton & LButton:: +CapsLock & LButton:: +CoordMode, Mouse ; Switch to screen/absolute coordinates. +MouseGetPos, EWD_MouseStartX, EWD_MouseStartY, EWD_MouseWin +WinGetPos, EWD_OriginalPosX, EWD_OriginalPosY,,, ahk_id %EWD_MouseWin% +WinGet, EWD_WinState, MinMax, ahk_id %EWD_MouseWin% +if EWD_WinState = 0 ; Only if the window isn't maximized + SetTimer, EWD_WatchMouse, 10 ; Track the mouse as the user drags it. +return + +EWD_WatchMouse: +GetKeyState, EWD_LButtonState, LButton, P +if EWD_LButtonState = U ; Button has been released, so drag is complete. +{ + SetTimer, EWD_WatchMouse, off + return +} +GetKeyState, EWD_EscapeState, Escape, P +if EWD_EscapeState = D ; Escape has been pressed, so drag is cancelled. +{ + SetTimer, EWD_WatchMouse, off + WinMove, ahk_id %EWD_MouseWin%,, %EWD_OriginalPosX%, %EWD_OriginalPosY% + return +} +; Otherwise, reposition the window to match the change in mouse coordinates +; caused by the user having dragged the mouse: +CoordMode, Mouse +MouseGetPos, EWD_MouseX, EWD_MouseY +WinGetPos, EWD_WinX, EWD_WinY,,, ahk_id %EWD_MouseWin% +SetWinDelay, -1 ; Makes the below move faster/smoother. +WinMove, ahk_id %EWD_MouseWin%,, EWD_WinX + EWD_MouseX - EWD_MouseStartX, EWD_WinY + EWD_MouseY - EWD_MouseStartY +EWD_MouseStartX := EWD_MouseX ; Update for the next timer-call to this subroutine. +EWD_MouseStartY := EWD_MouseY +return diff --git a/src/docs/scripts/EasyWindowDrag.htm b/src/docs/scripts/EasyWindowDrag.htm new file mode 100644 index 0000000..6a9829c --- /dev/null +++ b/src/docs/scripts/EasyWindowDrag.htm @@ -0,0 +1,57 @@ + + +Easy Window Dragging (requires XP/2k/NT) + + + + + + + +

âÀ» ½±°Ô ²ô´Â ¹æ¹ý (XP/2k/NT ÀÌ»ó)

+ +

º¸Åë, âÀº Á¦¸ñ ¹Ù¸¦ Ŭ¸¯Çؼ­ ²ø ¼ö ÀÖ½À´Ï´Ù. ÀÌ ½ºÅ©¸³Æ®´Â â ¾ÈÀÇ ¾î´À ÁöÁ¡¿¡¼­µç ²ø ¼ö ÀÖµµ·Ï È®ÀåÇÕ´Ï´Ù. ÀÌ ¸ðµå¸¦ È°¼ºÈ­ÇÏ·Á¸é, CapsLock ¶Ç´Â °¡¿îµ¥ ¹öÆ°À» ´©¸£¸é¼­ Ŭ¸¯Çϸé, âÀ» »õ À§Ä¡±îÁö ²ø ¼ö ÀÖ½À´Ï´Ù. +

+

ÀÌ ½ºÅ©¸³Æ® ³»·Á ¹Þ±â  |  ´Ù¸¥ »ùÇà ½ºÅ©¸³Æ®  |  È¨À¸·Î

+ +
; ÁÖÀÇ: ¼±ÅÃÀûÀ¸·Î °è¼Ó ´©¸£°í ÀÖÀ» ÇÊ¿ä ¾øÀÌ 
+; ¸¶¿ì½º ¹öÆ°À» ´©¸¥ ´ÙÀ½¿¡ Capslock ¶Ç´Â °¡¿îµ¥ ¹öÆ°À» ¶¼µµ µË´Ï´Ù
+; ÀÌ ½ºÅ©¸³Æ®´Â v1.0.25+¸¦ ¿ä±¸ÇÕ´Ï´Ù..
+
+~MButton & LButton::
+CapsLock & LButton::
+CoordMode, Mouse  ; È­¸é/Àý´ë ÁÂÇ¥¸¦ º¯È¯ÇÕ´Ï´Ù.
+MouseGetPos, EWD_MouseStartX, EWD_MouseStartY, EWD_MouseWin
+WinGetPos, EWD_OriginalPosX, EWD_OriginalPosY,,, ahk_id %EWD_MouseWin%
+WinGet, EWD_WinState, MinMax, ahk_id %EWD_MouseWin% 
+if EWD_WinState = 0  ; âÀÌ ÃÖ´ëÈ­ µÇ¾î ÀÖÁö ¾ÊÀº °æ¿ì¿¡¸¸,
+    SetTimer, EWD_WatchMouse, 10 ; »ç¿ëÀÚ°¡ ¸¶¿ì½º¸¦ ²ô´Â °ÍÀ» ÃßÀûÇÕ´Ï´Ù.
+return
+
+EWD_WatchMouse:
+GetKeyState, EWD_LButtonState, LButton, P
+if EWD_LButtonState = U  ; ¹öÆ°ÀÌ ¶¼¾îÁ³½À´Ï´Ù. ±×·¡¼­ ²ø±â°¡ ¿Ï·á µÇ¾ú½À´Ï´Ù.
+{
+    SetTimer, EWD_WatchMouse, off
+    return
+}
+GetKeyState, EWD_EscapeState, Escape, P
+if EWD_EscapeState = D  ; EscapeÀÌ ´­·È½À´Ï´Ù. ±×·¡¼­ ²ø±â°¡ Ãë¼Ò µÇ¾ú½À´Ï´Ù.
+{
+    SetTimer, EWD_WatchMouse, off
+    WinMove, ahk_id %EWD_MouseWin%,, %EWD_OriginalPosX%, %EWD_OriginalPosY%
+    return
+}
+; ±×·¸Áö ¾ÊÀ¸¸é, âÀ» ´Ù½Ã ¹èÄ¡ÇØ
+; »ç¿ëÀÚ°¡ ¸¶¿ì½º¸¦ ²ø¾î º¯°æµÈ ¸¶¿ì½º ÁÂÇ¥¸¦ ¹Ý¿µÇÕ´Ï´Ù:
+CoordMode, Mouse
+MouseGetPos, EWD_MouseX, EWD_MouseY
+WinGetPos, EWD_WinX, EWD_WinY,,, ahk_id %EWD_MouseWin%
+SetWinDelay, -1   ; ¾Æ·¡¸¦ ´õ ºÎµå·´°Ô ´õ ºü¸£°Ô À̵¿½Ãŵ´Ï´Ù.
+WinMove, ahk_id %EWD_MouseWin%,, EWD_WinX + EWD_MouseX - EWD_MouseStartX, EWD_WinY + EWD_MouseY - EWD_MouseStartY
+EWD_MouseStartX := EWD_MouseX  ; ÀÌ ¼­ºê·çƾ¿¡ ´ëÇÑ ´ÙÀ½ ŸÀÌ¸Ó È£ÃâÀ» ¾÷µ¥ÀÌÆ® ÇÕ´Ï´Ù.
+EWD_MouseStartY := EWD_MouseY
+return
+
+ + diff --git a/src/docs/scripts/EasyWindowDrag_(KDE).ahk b/src/docs/scripts/EasyWindowDrag_(KDE).ahk new file mode 100644 index 0000000..aeba9c2 --- /dev/null +++ b/src/docs/scripts/EasyWindowDrag_(KDE).ahk @@ -0,0 +1,149 @@ +; Easy Window Dragging -- KDE style (requires XP/2k/NT) -- by Jonny +; http://www.autohotkey.com +; This script makes it much easier to move or resize a window: 1) Hold down +; the ALT key and LEFT-click anywhere inside a window to drag it to a new +; location; 2) Hold down ALT and RIGHT-click-drag anywhere inside a window +; to easily resize it; 3) Press ALT twice, but before releasing it the second +; time, left-click to minimize the window under the mouse cursor, right-click +; to maximize it, or middle-click to close it. + +; This script was inspired by and built on many like it +; in the forum. Thanks go out to ck, thinkstorm, Chris, +; and aurelian for a job well done. + +; Change history: +; November 07, 2006: Optimized resizing code in !RButton, courtesy of bluedawn. +; February 05, 2006: Fixed double-alt (the ~Alt hotkey) to work with latest versions of AHK. + +; The Double-Alt modifier is activated by pressing +; Alt twice, much like a double-click. Hold the second +; press down until you click. +; +; The shortcuts: +; Alt + Left Button : Drag to move a window. +; Alt + Right Button : Drag to resize a window. +; Double-Alt + Left Button : Minimize a window. +; Double-Alt + Right Button : Maximize/Restore a window. +; Double-Alt + Middle Button : Close a window. +; +; You can optionally release Alt after the first +; click rather than holding it down the whole time. + +If (A_AhkVersion < "1.0.39.00") +{ + MsgBox,20,,This script may not work properly with your version of AutoHotkey. Continue? + IfMsgBox,No + ExitApp +} + + +; This is the setting that runs smoothest on my +; system. Depending on your video card and cpu +; power, you may want to raise or lower this value. +SetWinDelay,2 + +CoordMode,Mouse +return + +!LButton:: +If DoubleAlt +{ + MouseGetPos,,,KDE_id + ; This message is mostly equivalent to WinMinimize, + ; but it avoids a bug with PSPad. + PostMessage,0x112,0xf020,,,ahk_id %KDE_id% + DoubleAlt := false + return +} +; Get the initial mouse position and window id, and +; abort if the window is maximized. +MouseGetPos,KDE_X1,KDE_Y1,KDE_id +WinGet,KDE_Win,MinMax,ahk_id %KDE_id% +If KDE_Win + return +; Get the initial window position. +WinGetPos,KDE_WinX1,KDE_WinY1,,,ahk_id %KDE_id% +Loop +{ + GetKeyState,KDE_Button,LButton,P ; Break if button has been released. + If KDE_Button = U + break + MouseGetPos,KDE_X2,KDE_Y2 ; Get the current mouse position. + KDE_X2 -= KDE_X1 ; Obtain an offset from the initial mouse position. + KDE_Y2 -= KDE_Y1 + KDE_WinX2 := (KDE_WinX1 + KDE_X2) ; Apply this offset to the window position. + KDE_WinY2 := (KDE_WinY1 + KDE_Y2) + WinMove,ahk_id %KDE_id%,,%KDE_WinX2%,%KDE_WinY2% ; Move the window to the new position. +} +return + +!RButton:: +If DoubleAlt +{ + MouseGetPos,,,KDE_id + ; Toggle between maximized and restored state. + WinGet,KDE_Win,MinMax,ahk_id %KDE_id% + If KDE_Win + WinRestore,ahk_id %KDE_id% + Else + WinMaximize,ahk_id %KDE_id% + DoubleAlt := false + return +} +; Get the initial mouse position and window id, and +; abort if the window is maximized. +MouseGetPos,KDE_X1,KDE_Y1,KDE_id +WinGet,KDE_Win,MinMax,ahk_id %KDE_id% +If KDE_Win + return +; Get the initial window position and size. +WinGetPos,KDE_WinX1,KDE_WinY1,KDE_WinW,KDE_WinH,ahk_id %KDE_id% +; Define the window region the mouse is currently in. +; The four regions are Up and Left, Up and Right, Down and Left, Down and Right. +If (KDE_X1 < KDE_WinX1 + KDE_WinW / 2) + KDE_WinLeft := 1 +Else + KDE_WinLeft := -1 +If (KDE_Y1 < KDE_WinY1 + KDE_WinH / 2) + KDE_WinUp := 1 +Else + KDE_WinUp := -1 +Loop +{ + GetKeyState,KDE_Button,RButton,P ; Break if button has been released. + If KDE_Button = U + break + MouseGetPos,KDE_X2,KDE_Y2 ; Get the current mouse position. + ; Get the current window position and size. + WinGetPos,KDE_WinX1,KDE_WinY1,KDE_WinW,KDE_WinH,ahk_id %KDE_id% + KDE_X2 -= KDE_X1 ; Obtain an offset from the initial mouse position. + KDE_Y2 -= KDE_Y1 + ; Then, act according to the defined region. + WinMove,ahk_id %KDE_id%,, KDE_WinX1 + (KDE_WinLeft+1)/2*KDE_X2 ; X of resized window + , KDE_WinY1 + (KDE_WinUp+1)/2*KDE_Y2 ; Y of resized window + , KDE_WinW - KDE_WinLeft *KDE_X2 ; W of resized window + , KDE_WinH - KDE_WinUp *KDE_Y2 ; H of resized window + KDE_X1 := (KDE_X2 + KDE_X1) ; Reset the initial position for the next iteration. + KDE_Y1 := (KDE_Y2 + KDE_Y1) +} +return + +; "Alt + MButton" may be simpler, but I +; like an extra measure of security for +; an operation like this. +!MButton:: +If DoubleAlt +{ + MouseGetPos,,,KDE_id + WinClose,ahk_id %KDE_id% + DoubleAlt := false + return +} +return + +; This detects "double-clicks" of the alt key. +~Alt:: +DoubleAlt := A_PriorHotKey = "~Alt" AND A_TimeSincePriorHotkey < 400 +Sleep 0 +KeyWait Alt ; This prevents the keyboard's auto-repeat feature from interfering. +return diff --git a/src/docs/scripts/EasyWindowDrag_(KDE).htm b/src/docs/scripts/EasyWindowDrag_(KDE).htm new file mode 100644 index 0000000..3754570 --- /dev/null +++ b/src/docs/scripts/EasyWindowDrag_(KDE).htm @@ -0,0 +1,159 @@ + + +Easy Window Dragging -- KDE style (requires XP/2k/NT) -- by Jonny + + + + + + + +

âÀ» ½±°Ô ²ô´Â ¹æ¹ý -- KDE ½ºÅ¸ÀÏ (XP/2k/NT ¿ä±¸) -- by Jonny

+ +

ÀÌ ½ºÅ©¸³Æ®´Â ÈξÀ ´õ ½±°Ô âÀ» À̵¿Çϰųª Å©±â¸¦ º¯°æÇÒ ¼ö ÀÖµµ·Ï ¸¸µé¾î ÁÝ´Ï´Ù: 1) â ¾È ¾Æ¹«µ¥³ª ALT Å°¿Í LEFT-Ŭ¸¯À» ´©¸£°í âÀ» »õ À§Ä¡·Î ²ø ¼ö ÀÖ½À´Ï´Ù; 2) â ¾È ¾Æ¹« °÷À̳ª ALT¿Í RIGHT-Ŭ¸¯À¸·Î ²ø¾î¼­ ½±°Ô Å©±â¸¦ º¯°æÇÒ ¼ö ÀÖ½À´Ï´Ù; 3) ALT¸¦ µÎ ¹ø, ±×·¯³ª µÎ ¹ø°¸¦ ³õ±â Àü¿¡, ¿ÞŬ¸¯ÇÏ¸é ¸¶¿ì½º Ä¿¼­ ¾Æ·¡ÀÇ Ã¢À» ÃÖ¼ÒÈ­ÇÏ°í ¿ìŬ¸¯Çϰųª ¶Ç´Â °¡¿îµ¥ Ŭ¸¯Çϸé âÀ» ´ÝÀ» ¼ö ÀÖ½À´Ï´Ù. +

+

ÀÌ ½ºÅ©¸³Æ® ³»·Á¹Þ±â  |  ´Ù¸¥ »ùÇà ½ºÅ©¸³Æ®  |  È¨À¸·Î

+ +
; ÀÌ ½ºÅ©¸³Æ®´Â Æ÷·³¿¡ ÀÖ´Â ¸¹Àº ºÐµé·ÎºÎÅÍ
+; ¿µ°¨À» ¾ò¾î ÀÛ¼ºµÇ¾ú½À´Ï´Ù. ÈǸ¢ÇÑ ÀÛÇ°À» °ø°³ÇØ ÁֽŠck, thinkstorm, Chris,
+; ±×¸®°í aurelian¿¡°Ô °¨»çÀÇ ¸»¾¸À» ÀüÇÕ´Ï´Ù.
+
+; º¯°æ ÀÌ·Â:
+; November 07, 2006: !RButton¿¡¼­ Å©±â Á¶Àý ÄÚµå ÃÖÀûÈ­, bluedawn Á¦°ø.
+; February 05, 2006: ´õºí-alt (~Alt ÇÖÅ°)°¡ ÃֽŠ¹öÀüÀÇ AHK¿¡¼­ ÀÛµ¿Çϵµ·Ï ¼öÁ¤.
+
+; ´õºíD-Alt ¼ö½ÄÅ°´Â ¾ËÆ® Å°¸¦ µÎ ¹ø ´©¸£¸é È°¼ºÈ­ µË´Ï´Ù.
+; ´õºí Ŭ¸¯°ú ¸¹ÀÌ ´à¾Ò½À´Ï´Ù.
+; µÎ ¹ø° ¾ËÆ® Å°´Â Ŭ¸¯ÇÒ ¶§±îÁö ´©¸£°í °è½Ê½Ã¿À.
+;
+; ´ÜÃàÅ°:
+;  Alt + Left Button  : ²ø¾î âÀ» À̵¿.
+;  Alt + Right Button : ²ø¾î â Å©±â¸¦ º¯°æ.
+;  Double-Alt + Left Button   : â ÃÖ¼ÒÈ­.
+;  Double-Alt + Right Button  : â ÃÖ´ëÈ­/º¹±¸.
+;  Double-Alt + Middle Button : ⠴ݱâ.
+;
+; ¼±ÅÃÀûÀ¸·Î ù ¹ø° Ŭ¸¯ ´ÙÀ½¿¡ ¾ËÆ® Å°¸¦ ³õÀ» ¼ö ÀÖ½À´Ï´Ù.
+; °è¼Ó ´©¸£°í ÀÖÀ» ÇÊ¿ä°¡ ¾ø½À´Ï´Ù.
+
+If (A_AhkVersion < "1.0.39.00")
+{
+    MsgBox,20,,ÀÌ ½ºÅ©¸³Æ®´Â ÇöÀçÀÇ ¿ÀÅäÇÖÅ° ¹öÀü¿¡¼­ Á¦´ë·Î ÀÛµ¿ÇÏÁö ¾ÊÀ» °¡´É¼ºÀÌ ÀÖ½À´Ï´Ù. °è¼ÓÇÒ±î¿ä?
+    IfMsgBox,No
+    ExitApp
+}
+
+
+; ´ÙÀ½Àº ÇÊÀÚÀÇ ½Ã½ºÅÛ¿¡¼­ °¡Àå ºÎµå·´°Ô ÀÛµ¿ÇÏ´Â ¼³Á¤ÀÔ´Ï´Ù
+; ¿©·¯ºÐÀÇ ºñµð¿À Ä«µå¿Í ½ÃÇÇÀ¯ ¼º´É¿¡ µû¶ó
+; ÀÌ °ªÀ» ¿Ã¸®°Å³ª ³»¸®¸é µË´Ï´Ù.
+SetWinDelay,2
+
+CoordMode,Mouse
+return
+
+!LButton::
+If DoubleAlt
+{
+    MouseGetPos,,,KDE_id
+    ; ÀÌ ¸Þ½ÃÁö´Â °ÅÀÇ WinMinimize¿Í µ¿µîÇÏÁö¸¸,
+    ; PSPadÀÇ ¹ö±×¸¦ ÇÇÇÕ´Ï´Ù.
+    PostMessage,0x112,0xf020,,,ahk_id %KDE_id%
+    DoubleAlt := false
+    return
+}
+; ÃÖÃÊÀÇ ¸¶¿ì½º À§Ä¡¿Í â ¾ÆÀ̵𸦠¾ò½À´Ï´Ù. 
+; âÀÌ ÃÖ´ëÈ­µÇ¾î ÀÖ´Ù¸é Ãë¼ÒÇÕ´Ï´Ù.
+MouseGetPos,KDE_X1,KDE_Y1,KDE_id
+WinGet,KDE_Win,MinMax,ahk_id %KDE_id%
+If KDE_Win
+    return
+; ÃÖÃÊÀÇ Ã¢ À§Ä¡¸¦ ¾ò½À´Ï´Ù.
+WinGetPos,KDE_WinX1,KDE_WinY1,,,ahk_id %KDE_id%
+Loop
+{
+    GetKeyState,KDE_Button,LButton,P ; ¹öÆ°À» ³õ¾Ò´Ù¸é ºüÁ® ³ª°©´Ï´Ù.
+    If KDE_Button = U
+        break
+    MouseGetPos,KDE_X2,KDE_Y2 ; ÇöÀç ¸¶¿ì½º À§Ä¡¸¦ ¾ò½À´Ï´Ù.
+    KDE_X2 -= KDE_X1 ; ÃÖÃÊ ¸¶¿ì½º À§Ä¡·ÎºÎÅÍ »ó´ë°Å¸®(offset)¸¦ ¾ò½À´Ï´Ù.
+    KDE_Y2 -= KDE_Y1
+    KDE_WinX2 := (KDE_WinX1 + KDE_X2) ; ÀÌ »ó´ë°Å¸®¸¦ âÀ§ À§Ä¡¿¡ Àû¿ëÇÕ´Ï´Ù.
+    KDE_WinY2 := (KDE_WinY1 + KDE_Y2)
+    WinMove,ahk_id %KDE_id%,,%KDE_WinX2%,%KDE_WinY2% ; âÀ» »õ À§Ä¡·Î À̵¿½Ãŵ´Ï´Ù.
+}
+return
+
+!RButton::
+If DoubleAlt
+{
+    MouseGetPos,,,KDE_id
+    ; ÃÖ´ëÈ­ »óÅÂ¿Í º¹±¸ »óÅ »çÀ̸¦ Åä±ÛÇÕ´Ï´Ù.
+    WinGet,KDE_Win,MinMax,ahk_id %KDE_id%
+    If KDE_Win
+        WinRestore,ahk_id %KDE_id%
+    Else
+        WinMaximize,ahk_id %KDE_id%
+    DoubleAlt := false
+    return
+}
+; ÃÖÃÊ ¸¶¿ì½º À§Ä¡¿Í â ¾ÆÀ̵𸦠¾ò½À´Ï´Ù.
+; âÀÌ ÃÖ´ëÈ­ µÇ¾î ÀÖ´Ù¸é Ãë¼ÒÇÕ´Ï´Ù.
+MouseGetPos,KDE_X1,KDE_Y1,KDE_id
+WinGet,KDE_Win,MinMax,ahk_id %KDE_id%
+If KDE_Win
+    return
+; ÃÖÃÊ Ã¢ÀÇ À§Ä¡¿Í Å©±â¸¦ ¾ò½À´Ï´Ù.
+WinGetPos,KDE_WinX1,KDE_WinY1,KDE_WinW,KDE_WinH,ahk_id %KDE_id%
+; ÇöÀç ¸¶¿ì½º°¡ Àִ â ±¸¿ªÀ» Á¤ÀÇÇÕ´Ï´Ù.
+; ³× ±¸¿ªÀº  Á»ó, ¿ì»ó, ÁÂÇÏ, ¿ìÇÏÀÔ´Ï´Ù.
+If (KDE_X1 < KDE_WinX1 + KDE_WinW / 2)
+   KDE_WinLeft := 1
+Else
+   KDE_WinLeft := -1
+If (KDE_Y1 < KDE_WinY1 + KDE_WinH / 2)
+   KDE_WinUp := 1
+Else
+   KDE_WinUp := -1
+Loop
+{
+    GetKeyState,KDE_Button,RButton,P ; ¹öÆ°ÀÌ ´­·Á ÀÖÀ¸¸é ºüÁ® ³ª°©´Ï´Ù.
+    If KDE_Button = U
+        break
+    MouseGetPos,KDE_X2,KDE_Y2 ; ÇöÀç ¸¶¿ì½º À§Ä¡¸¦ ¾ò½À´Ï´Ù.
+    ; ÇöÀç âÀÇ À§Ä¡¿Í Å©±â¸¦ ¾ò½À´Ï´Ù.
+    WinGetPos,KDE_WinX1,KDE_WinY1,KDE_WinW,KDE_WinH,ahk_id %KDE_id%
+    KDE_X2 -= KDE_X1 ; ÃÖÃÊ ¸¶¿ì½º À§Ä¡·ÎºÎÅÍ »ó´ë°Å¸®(offset)¸¦ ¾ò½À´Ï´Ù.
+    KDE_Y2 -= KDE_Y1
+    ; ÀÌÁ¦, Á¤ÀÇµÈ ±¸¿ª¿¡ ¸Â°Ô ÇàÀ§ÇÕ´Ï´Ù.
+    WinMove,ahk_id %KDE_id%,, KDE_WinX1 + (KDE_WinLeft+1)/2*KDE_X2  ; Å©±â º¯°æµÈ âÀÇ X
+                            , KDE_WinY1 +   (KDE_WinUp+1)/2*KDE_Y2  ; Å©±â º¯°æµÈ âÀÇ Y
+                            , KDE_WinW  -     KDE_WinLeft  *KDE_X2  ; Å©±â º¯°æµÈ âÀÇ W
+                            , KDE_WinH  -       KDE_WinUp  *KDE_Y2  ; Å©±â º¯°æµÈ âÀÇ H
+    KDE_X1 := (KDE_X2 + KDE_X1) ; ´ÙÀ½ ¹Ýº¹À» À§ÇØ ÃÖÃÊ À§Ä¡·Î ¸®¼ÂÇÕ´Ï´Ù.
+    KDE_Y1 := (KDE_Y2 + KDE_Y1)
+}
+return
+
+; "Alt + MButton"ÀÌ ´õ °£´ÜÇÒ ¼ö ÀÖÁö¸¸,
+; ÇÊÀÚ´Â ´ÙÀ½°ú °°ÀÌ ¿¬»ê¿¡
+; º¸¾ÈÀ» Ãß°¡ÇÏ´Â °ÍÀ» ÁÁ¾ÆÇÕ´Ï´Ù.
+!MButton::
+If DoubleAlt
+{
+    MouseGetPos,,,KDE_id
+    WinClose,ahk_id %KDE_id%
+    DoubleAlt := false
+    return
+}
+return
+
+; ´ÙÀ½Àº ¾ËÆ® Å°ÀÇ "´õºí-Ŭ¸¯"À» ŽÁöÇÕ´Ï´Ù.
+~Alt::
+DoubleAlt := A_PriorHotKey = "~Alt" AND A_TimeSincePriorHotkey < 400
+Sleep 0
+KeyWait Alt  ; ÀÌ·¸°Ô Çϸé Å°º¸µåÀÇ ÀÚµ¿ ¹Ýº¹ Ư¡ ¶§¹®¿¡ ¹æÇØ ¹ÞÁö ¾Ê½À´Ï´Ù.
+return
+
+ + diff --git a/src/docs/scripts/FavoriteFolders.ahk b/src/docs/scripts/FavoriteFolders.ahk new file mode 100644 index 0000000..dbcc6a6 --- /dev/null +++ b/src/docs/scripts/FavoriteFolders.ahk @@ -0,0 +1,186 @@ +; Easy Access to Favorite Folders -- by Savage +; http://www.autohotkey.com +; When you click the middle mouse button while certain types of +; windows are active, this script displays a menu of your favorite +; folders. Upon selecting a favorite, the script will instantly +; switch to that folder within the active window. The following +; window types are supported: 1) Standard file-open or file-save +; dialogs; 2) Explorer windows; 3) Console (command prompt) windows. +; The menu can also be optionally shown for unsupported window +; types, in which case the chosen favorite will be opened as a new +; Explorer window. + +; Note: In Windows Explorer, if "View > Toolbars > Address Bar" is +; not enabled, the menu will not be shown if the hotkey chosen below +; has a tilde. If it does have a tilde, the menu will be shown +; but the favorite will be opened in a new Explorer window rather +; than switching the active Explorer window to that folder. + +; CONFIG: CHOOSE YOUR HOTKEY +; If your mouse has more than 3 buttons, you could try using +; XButton1 (the 4th) or XButton2 (the 5th) instead of MButton. +; You could also use a modified mouse button (such as ^MButton) or +; a keyboard hotkey. In the case of MButton, the tilde (~) prefix +; is used so that MButton's normal functionality is not lost when +; you click in other window types, such as a browser. The presence +; of a tilde tells the script to avoid showing the menu for +; unsupported window types. In other words, if there is no tilde, +; the hotkey will always display the menu; and upon selecting a +; favorite while an unsupported window type is active, a new +; Explorer window will be opened to display the contents of that +; folder. +f_Hotkey = ~MButton + +; CONFIG: CHOOSE YOUR FAVORITES +; Update the special commented section below to list your favorite +; folders. Specify the name of the menu item first, followed by a +; semicolon, followed by the name of the actual path of the favorite. +; Use a blank line to create a separator line. + +/* +ITEMS IN FAVORITES MENU <-- Do not change this string. +Desktop ; %A_Desktop% +Favorites ; %A_Desktop%\..\Favorites +My Documents ; %A_MyDocuments% + +Program Files; %A_ProgramFiles% +*/ + + +; END OF CONFIGURATION SECTION +; Do not make changes below this point unless you want to change +; the basic functionality of the script. + +#SingleInstance ; Needed since the hotkey is dynamically created. + +Hotkey, %f_Hotkey%, f_DisplayMenu +StringLeft, f_HotkeyFirstChar, f_Hotkey, 1 +if f_HotkeyFirstChar = ~ ; Show menu only for certain window types. + f_AlwaysShowMenu = n +else + f_AlwaysShowMenu = y + +; Used to reliably determine whether script is compiled: +SplitPath, A_ScriptName,,, f_FileExt +if f_FileExt = Exe ; Read the menu items from an external file. + f_FavoritesFile = %A_ScriptDir%\Favorites.ini +else ; Read the menu items directly from this script file. + f_FavoritesFile = %A_ScriptFullPath% + +;----Read the configuration file. +f_AtStartingPos = n +f_MenuItemCount = 0 +Loop, Read, %f_FavoritesFile% +{ + if f_FileExt <> Exe + { + ; Since the menu items are being read directly from this + ; script, skip over all lines until the starting line is + ; arrived at. + if f_AtStartingPos = n + { + IfInString, A_LoopReadLine, ITEMS IN FAVORITES MENU + f_AtStartingPos = y + continue ; Start a new loop iteration. + } + ; Otherwise, the closing comment symbol marks the end of the list. + if A_LoopReadLine = */ + break ; terminate the loop + } + ; Menu separator lines must also be counted to be compatible + ; with A_ThisMenuItemPos: + f_MenuItemCount++ + if A_LoopReadLine = ; Blank indicates a separator line. + Menu, Favorites, Add + else + { + StringSplit, f_line, A_LoopReadLine, `; + f_line1 = %f_line1% ; Trim leading and trailing spaces. + f_line2 = %f_line2% ; Trim leading and trailing spaces. + ; Resolve any references to variables within either field, and + ; create a new array element containing the path of this favorite: + Transform, f_path%f_MenuItemCount%, deref, %f_line2% + Transform, f_line1, deref, %f_line1% + Menu, Favorites, Add, %f_line1%, f_OpenFavorite + } +} +return ;----End of auto-execute section. + + +;----Open the selected favorite +f_OpenFavorite: +; Fetch the array element that corresponds to the selected menu item: +StringTrimLeft, f_path, f_path%A_ThisMenuItemPos%, 0 +if f_path = + return +if f_class = #32770 ; It's a dialog. +{ + if f_Edit1Pos <> ; And it has an Edit1 control. + { + ; Activate the window so that if the user is middle-clicking + ; outside the dialog, subsequent clicks will also work: + WinActivate ahk_id %f_window_id% + ; Retrieve any filename that might already be in the field so + ; that it can be restored after the switch to the new folder: + ControlGetText, f_text, Edit1, ahk_id %f_window_id% + ControlSetText, Edit1, %f_path%, ahk_id %f_window_id% + ControlSend, Edit1, {Enter}, ahk_id %f_window_id% + Sleep, 100 ; It needs extra time on some dialogs or in some cases. + ControlSetText, Edit1, %f_text%, ahk_id %f_window_id% + return + } + ; else fall through to the bottom of the subroutine to take standard action. +} +else if f_class in ExploreWClass,CabinetWClass ; In Explorer, switch folders. +{ + if f_Edit1Pos <> ; And it has an Edit1 control. + { + ControlSetText, Edit1, %f_path%, ahk_id %f_window_id% + ; Tekl reported the following: "If I want to change to Folder L:\folder + ; then the addressbar shows http://www.L:\folder.com. To solve this, + ; I added a {right} before {Enter}": + ControlSend, Edit1, {Right}{Enter}, ahk_id %f_window_id% + return + } + ; else fall through to the bottom of the subroutine to take standard action. +} +else if f_class = ConsoleWindowClass ; In a console window, CD to that directory +{ + WinActivate, ahk_id %f_window_id% ; Because sometimes the mclick deactivates it. + SetKeyDelay, 0 ; This will be in effect only for the duration of this thread. + IfInString, f_path, : ; It contains a drive letter + { + StringLeft, f_path_drive, f_path, 1 + Send %f_path_drive%:{enter} + } + Send, cd %f_path%{Enter} + return +} +; Since the above didn't return, one of the following is true: +; 1) It's an unsupported window type but f_AlwaysShowMenu is y (yes). +; 2) It's a supported type but it lacks an Edit1 control to facilitate the custom +; action, so instead do the default action below. +Run, Explorer %f_path% ; Might work on more systems without double quotes. +return + + +;----Display the menu +f_DisplayMenu: +; These first few variables are set here and used by f_OpenFavorite: +WinGet, f_window_id, ID, A +WinGetClass, f_class, ahk_id %f_window_id% +if f_class in #32770,ExploreWClass,CabinetWClass ; Dialog or Explorer. + ControlGetPos, f_Edit1Pos,,,, Edit1, ahk_id %f_window_id% +if f_AlwaysShowMenu = n ; The menu should be shown only selectively. +{ + if f_class in #32770,ExploreWClass,CabinetWClass ; Dialog or Explorer. + { + if f_Edit1Pos = ; The control doesn't exist, so don't display the menu + return + } + else if f_class <> ConsoleWindowClass + return ; Since it's some other window type, don't display menu. +} +; Otherwise, the menu should be presented for this type of window: +Menu, Favorites, show +return diff --git a/src/docs/scripts/FavoriteFolders.htm b/src/docs/scripts/FavoriteFolders.htm new file mode 100644 index 0000000..d37c790 --- /dev/null +++ b/src/docs/scripts/FavoriteFolders.htm @@ -0,0 +1,194 @@ + + +Easy Access to Favorite Folders -- by Savage + + + + + + + +

ÀÚÁÖ °¡´Â Æú´õ¿¡ ½±°Ô Á¢±ÙÇÏ´Â ¹ý -- by Savage

+ +

¾î¶° À¯ÇüÀÌ Ã¢ÀÌ È°¼ºÈ­µÇ¾î ÀÖ´Â µ¿¾È¿¡ ¸¶¿ì½º °¡¿îµ¥ ¹öÆ°À» Ŭ¸¯Çϸé, ÀÌ ½ºÅ©¸³Æ®´Â ÀÚÁÖ °¡´Â Æú´õÀÇ ¸Þ´º¸¦ º¸¿©ÁÝ´Ï´Ù. ÀÚÁÖ °¡´Â Æú´õ¸¦ ¼±ÅÃÇÏ´Â ¼ø°£ ±× È°¼º â ¾ÈÀÇ Æú´õ·Î ¼ø°£ À̵¿ÇÕ´Ï´Ù. ´ÙÀ½ À¯ÇüÀÇ Ã¢À» Áö¿øÇÕ´Ï´Ù: 1) Ç¥ÁØ ÆÄÀÏ ¿­±â ¶Ç´Â ÀúÀå ´ëÈ­»óÀÚ; 2) Ž»ö â; 3) ÄÜ¼Ö (¸í·É¾î ÇÁ·ÒÇÁÆ®) â. +¸Þ´º´Â ¶Ç ¼±ÅÃÀûÀ¸·Î Áö¿øµÇ´Â ¾Ê´Â À¯ÇüÀÇ Ã¢¿¡ ´ëÇؼ­µµ º¸¿©ÁÙ ¼ö ÀÖ½À´Ï´Ù. ÀÌ °æ¿ì ¼±ÅÃµÈ Æú´õ´Â »õ Ž»ö â¿¡ ¿­¸³´Ï´Ù. +

+

ÀÌ ½ºÅ©¸³Æ® ³»·Á¹Þ±â  |  ´Ù¸¥ »ùÇà ½ºÅ©¸³Æ®  |  Home

+ +
; ÁÖÀÇ: Ž»ö â¿¡¼­, "View > Toolbars > Address Bar"°¡ È°¼ºÈ­µÇ¾î ÀÖÁö ¾ÊÀ» ¶§
+; ¾Æ·¡ÀÇ ÇÖÅ°¿¡ Æ¿µå°¡ ÀÖ´Â °æ¿ì ±× ¸Þ´º´Â º¸¿©ÁöÁö ¾Ê½À´Ï´Ù. 
+; Æ¿µå°¡ À־ ¸Þ´º´Â º¸ÀÏ ¼öµµ ÀÖÁö¸¸
+; ÀÚÁÖ °¡´Â Æú´õ´Â »õ Ž»ö â¿¡ ¿­¸³´Ï´Ù.
+; È°¼ºÈ­µÇ¾î Àִ âÀÌ ±× Æú´õ·Î ÀüȯµÇÁö ¾Ê½À´Ï´Ù.
+
+; CONFIG: ÇÖÅ°¸¦ °í¸£½Ê½Ã¿À.
+; ¸¶¿ì½º¿¡ 3 ¹öÆ° ÀÌ»óÀÌ ÀÖÀ¸¸é, MButton ´ë½Å¿¡
+; XButton1 (the 4th) ¶Ç´Â XButton2 (the 5th)À» ½ÃµµÇØ º¼ ¼ö ÀÖ½À´Ï´Ù.
+; ¶ÇÇÑ º¯Çü ¸¶¿ì½º ¹öÆ° (¿¹, ^MButton) ¶Ç´Â Å°º¸µå ÇÖÅ°¸¦ »ç¿ëÇÒ ¼öµµ ÀÖ½À´Ï´Ù
+; MButtonÀÇ °æ¿ì, Æ¿µå (~) Á¢µÎ ½Éº¼À» »ç¿ëÇϸé
+; ¿¹¸¦ µé¾î À¥ ºê¶ó¿ìÀú °°Àº ´Ù¸¥ À¯ÇüÀÇ Ã¢À» Ŭ¸¯ÇÒ ¶§,
+; MButton¹öÆ°ÀÇ Á¤»ó ±â´ÉÀÌ ¼Ò½ÇµÇÁö ¾Ê½À´Ï´Ù
+; Æ¿µå°¡ ÀÖÀ¸¸é ½ºÅ©¸³Æ®´Â Áö¿øµÇÁö ¾Ê´Â â À¯Çü¿¡´Â
+; ¸Þ´º¸¦ º¸¿©ÁÖÁö ¾Ê½À´Ï´Ù. ´Ù¸¥ ¸»·Î, Æ¿µå°¡ ¾ø´Ù¸é,
+; ÇÖÅ°´Â ¾ðÁ¦³ª ¸Þ´º¸¦ º¸¿©ÁÝ´Ï´Ù; Áö¿øµÇÁö ¾Ê´Â â À¯ÇüÀÌ
+; È°¼ºÈ­µÇ¾î ÀÖ´Â µ¿¾È ÀÚÁÖ °¡´Â Æú´õ¸¦ ¼±ÅÃÇϸé
+; »õ Ž»ö âÀÌ ¿­¸®°í ±× Æú´õÀÇ ³»¿ëÀ»
+; º¸¿©ÁÝ´Ï´Ù.
+f_Hotkey = ~MButton
+
+; CONFIG: Áñ°Ü ã±â¸¦ °í¸£½Ê½Ã¿À
+; ¾Æ·¡¿¡ Ưº°È÷ ÁÖ¼® ó¸®ÇÑ ºÎºÐÀ» ¾÷µ¥ÀÌÆ® Çϸé
+; ÀÚÁÖ °¡´Â Æú´õ¸¦ ³ª¿­ÇÒ ¼ö ÀÖ½À´Ï´Ù. ¸Þ´º Ç׸ñÀÇ À̸§À» ¸ÕÀú ÁöÁ¤ÇÏ°í
+; ´ÙÀ½¿¡ ½Ö¹ÝÁ¡, ±× ´ÙÀ½¿¡ ½ÇÁ¦ °æ·Î¸¦ ÁöÁ¤ÇϽʽÿÀ.
+; ºó ÁÙÀ» »ç¿ëÇÏ¸é °¡¸§ ÁÙÀ» ¸¸µé ¼ö ÀÖ½À´Ï´Ù.
+
+/*
+ITEMS IN FAVORITES MENU <-- ÀÌ ¹®ÀÚ¿­Àº ¹Ù²ÙÁö ¸¶½Ê½Ã¿À.
+Desktop      ; %A_Desktop%
+Favorites    ; %A_Desktop%\..\Favorites
+My Documents ; %A_MyDocuments%
+
+Program Files; %A_ProgramFiles%
+*/
+
+
+; END OF CONFIGURATION SECTION
+; ÀÌ ½ÃÁ¡ ºÎÅÍ´Â º¯°æÇÏÁö ¸¶½Ê½Ã¿À.
+; ´Ü, ½ºÅ©¸³Æ®ÀÇ ±âº» ±â´ÉÀ» ¹Ù²Ù°í ½Í´Ù¸é ¿¹¿ÜÀÔ´Ï´Ù.
+
+#SingleInstance  ; ÇÖÅ°°¡ µ¿ÀûÀ¸·Î »ý¼ºµÇ¹Ç·Î ÇʼöÀÔ´Ï´Ù.
+
+Hotkey, %f_Hotkey%, f_DisplayMenu
+StringLeft, f_HotkeyFirstChar, f_Hotkey, 1
+if f_HotkeyFirstChar = ~  ; ƯÁ¤ À¯ÇüÀÇ Ã¢¿¡ ´ëÇؼ­¸¸ ¸Þ´º¸¦ º¸¿©ÁÝ´Ï´Ù.
+    f_AlwaysShowMenu = n
+else
+    f_AlwaysShowMenu = y
+
+; ½ºÅ©¸³Æ®°¡ ÄÄÆÄÀÏ µÇ¾î ÀÖ´ÂÁö ¾Ë¾Æ³»´Â µ¥ »ç¿ëµË´Ï´Ù:
+SplitPath, A_ScriptName,,, f_FileExt
+if f_FileExt = Exe  ; ¿ÜºÎ ÆÄÀϷκÎÅÍ ¸Þ´º Ç׸ñµéÀ» ÀнÀ´Ï´Ù.
+    f_FavoritesFile = %A_ScriptDir%\Favorites.ini
+else  ; ÀÌ ½ºÅ©¸³Æ® ÆÄÀϷκÎÅÍ Á÷Á¢ ¸Þ´º Ç׸ñµéÀ» ÀнÀ´Ï´Ù.
+    f_FavoritesFile = %A_ScriptFullPath%
+
+;----ȯ°æ ±¸¼º ÆÄÀÏÀ» ÀнÀ´Ï´Ù.
+f_AtStartingPos = n
+f_MenuItemCount = 0
+Loop, Read, %f_FavoritesFile%
+{
+    if f_FileExt <> Exe
+    {
+        ; ¸Þ´º Ç׸ñµéÀº ÀÌ ½ºÅ©¸³Æ®·ÎºÎÅÍ Á÷Á¢ Àаí Àֱ⠶§¹®¿¡,
+        ; ½ÃÀÛ ÁÙ¿¡ µµÂøÇÒ ¶§±îÁö
+        ; ¸ðµç ÁÙÀ» °Ç³Ê ¶Ý´Ï´Ù.
+        if f_AtStartingPos = n
+        {
+            IfInString, A_LoopReadLine, ITEMS IN FAVORITES MENU
+                f_AtStartingPos = y
+            continue  ; »õ ȸµ¹ÀÌ ¹Ýº¹À» ½ÃÀÛÇÕ´Ï´Ù.
+        }
+        ; ±×·¸Áö ¾ÊÀ¸¸é, ÁÖ¼® ´Ý±â ½Éº¼ÀÌ ¸®½ºÆ®ÀÇ ³¡À» Ç¥½ÄÇÕ´Ï´Ù.
+        if A_LoopReadLine = */
+            break  ; ȸµ¹À̸¦ ³¡³À´Ï´Ù
+    }
+    ; A_ThisMenuItemPos¿ÍÀÇ È£È¯À» À§ÇØ
+    ; ¸Þ´º °¡¸§ Áٵ鵵 ¼¼¾î¾ß ÇÕ´Ï´Ù: 
+    f_MenuItemCount++
+    if A_LoopReadLine =  ; ºó ÁÙÀº °¡¸§ ÁÙÀ» ¶æÇÕ´Ï´Ù.
+        Menu, Favorites, Add
+    else
+    {
+        StringSplit, f_line, A_LoopReadLine, `;
+        f_line1 = %f_line1%  ; ¼±µÎ ÈĹÌÀÇ ½ºÆäÀ̽º¸¦ Á¦°ÅÇÕ´Ï´Ù.
+        f_line2 = %f_line2%  ; ¼±µÎ ÈĹÌÀÇ ½ºÆäÀ̽º¸¦ Á¦°ÅÇÕ´Ï´Ù.
+        ; ÇÊµå ¾È¿¡ º¯¼ö ÂüÁ¶¸¦ ¸ðµÎ °áÁ¤ÇÕ´Ï´Ù. ±×¸®°í
+        ; ÀÚÁÖ °¡´Â Æú´õÀÇ °æ·Î¸¦ ´ãÀº »õ ¹è¿­ ¿ø¼Ò¸¦ »ý¼ºÇÕ´Ï´Ù:
+        Transform, f_path%f_MenuItemCount%, deref, %f_line2%
+        Transform, f_line1, deref, %f_line1%
+        Menu, Favorites, Add, %f_line1%, f_OpenFavorite
+    }
+}
+return  ;----ÀÚµ¿ ½ÇÇà ¼½¼ÇÀÇ ³¡.
+
+
+;----¼±ÅÃµÈ Æú´õ¸¦ ¿±´Ï´Ù
+f_OpenFavorite:
+; ¼±ÅÃµÈ ¸Þ´º Ç׸ñ¿¡ »óÀÀÇÏ´Â ¹è¿­ ¿ø¼Ò¸¦ °¡Á® ¿É´Ï´Ù:
+StringTrimLeft, f_path, f_path%A_ThisMenuItemPos%, 0
+if f_path =
+    return
+if f_class = #32770    ; ´ëÈ­»óÀÚÀÔ´Ï´Ù.
+{
+    if f_Edit1Pos <>   ; ±×¸®°í Edit1 ÄÜÆ®·ÑÀÌ ÀÖ½À´Ï´Ù.
+    {
+        ; âÀ» È°¼ºÈ­ ÇÕ´Ï´Ù. ±×·¯¸é »ç¿ëÀÚ°¡ ´ëÈ­»óÀÚ ¹Û¿¡¼­
+        ; °¡¿îµ¥ ¹öÆ°À» Ŭ¸¯Çϸé, ÀÕ´Ù¸£´Â Ŭ¸¯µéµµ ÀÛµ¿ÇÕ´Ï´Ù:
+        WinActivate ahk_id %f_window_id%
+        ; ÀÌ¹Ì Çʵ忡 Á¸ÀçÇÏ´õ¶óµµ ÆÄÀÏÀ̸§À» ¸ðµÎ ¿­¶÷ÇÕ´Ï´Ù.
+        ; ±×·¡¾ß »õ Æú´õ·Î ÀüȯÇÑ ÈÄ¿¡ ´Ù½Ã º¹±¸ÇÒ ¼ö ÀÖ½À´Ï´Ù:
+        ControlGetText, f_text, Edit1, ahk_id %f_window_id%
+        ControlSetText, Edit1, %f_path%, ahk_id %f_window_id%
+        ControlSend, Edit1, {Enter}, ahk_id %f_window_id%
+        Sleep, 100  ; ¾î¶² °æ¿ì ¾î¶² ´ëÈ­»óÀÚ¿¡´Â Ãß°¡·Î ½Ã°£ÀÌ ÇÊ¿äÇÕ´Ï´Ù.
+        ControlSetText, Edit1, %f_text%, ahk_id %f_window_id%
+        return
+    }
+    ; ±×·¸Áö ¾ÊÀ¸¸é ¼­ºê·çƾÀÇ ¾Æ·¡·Î °¡ Ç¥ÁØ Á¶Ä¡¸¦ ÃëÇÕ´Ï´Ù.
+}
+else if f_class in ExploreWClass,CabinetWClass  ; Ž»ö âÀ̹ǷÎ, Æú´õ¸¦ ÀüȯÇÕ´Ï´Ù.
+{
+    if f_Edit1Pos <>   ; ±×¸®°í Edit1 ÄÜÆ®·ÑÀÌ ÀÖ½À´Ï´Ù.
+    {
+        ControlSetText, Edit1, %f_path%, ahk_id %f_window_id%
+        ; TeklÀÇ º¸°í¿¡ ÀÇÇϸé: "¸¸¾à Æú´õ L:\folder·Î ¹Ù²Ù°í ½Í´Ù¸é
+        ; ÁÖ¼Ò¹Ù´Â http://www.L:\folder.com¸¦ º¸¿©ÁØ´Ù. À̸¦ ÇØ°áÇϱâ À§ÇØ,
+        ; ³ª´Â {Enter} ¾Õ¿¡ {right}¸¦ Ãß°¡Çß´Ù":
+        ControlSend, Edit1, {Right}{Enter}, ahk_id %f_window_id%
+        return
+    }
+    ; ±×·¸Áö ¾ÊÀ¸¸é ¼­ºê·çƾÀÇ ¾Æ·¡·Î °¡¼­ Ç¥ÁØ ÇàÀ§¸¦ ÃëÇÕ´Ï´Ù.
+}
+else if f_class = ConsoleWindowClass ; ÄÜ¼Ö Ã¢À̹ǷÎ, ±× µð·ºÅ丮·Î CD ÇÕ´Ï´Ù
+{
+    WinActivate, ahk_id %f_window_id% ; Á¾Á¶ mclick ¶§¹®¿¡ ºñÈ°¼ºÈ­ µÇ´Â °æ¿ì°¡ ÀÖÀ¸¹Ç·Î,
+    SetKeyDelay, 0  ; ÀÌ°ÍÀº ÀÌ ¾²·¹µå°¡ Á¸ÀçÇÏ´Â µ¿¾È¿¡¸¸ È¿°ú°¡ ÀÖ½À´Ï´Ù.
+    IfInString, f_path, :  ; µå¶óÀÌºê ±âÈ£°¡ Æ÷ÇԵǾî ÀÖ½À´Ï´Ù
+    {
+        StringLeft, f_path_drive, f_path, 1
+        Send %f_path_drive%:{enter}
+    }
+    Send, cd %f_path%{Enter}
+    return
+}
+; À§¿¡¼­ ¹ÝȯµÇÁö ¾Ê¾Ò´Ù¸é, ´ÙÀ½ Áß Çϳª°¡ ÂüÀÔ´Ï´Ù:
+; 1) Áö¿øÇÏÁö ¾Ê´Â â À¯ÇüÀÌÁö¸¸ f_AlwaysShowMenu°¡ y (yes)ÀÔ´Ï´Ù.
+; 2) Áö¿øÇÏ´Â À¯ÇüÀÌÁö¸¸ Edit1 ÄÜÆ®·ÑÀÌ ¾ø¾î¼­ ¸ÂÃã Á¶Ä¡¿¡ ÀÌ¿ëÇÏÁö ¸øÇÕ´Ï´Ù.
+;     ±×·¡¼­ ´ë½Å ¾Æ·¡ÀÇ ±âº» ÇàÀ§¸¦ ÇÕ´Ï´Ù.
+Run, Explorer %f_path%  ; °ãµû¿ÈÇ¥°¡ ¾øÀ¸¸é ´õ ¸¹Àº ½Ã½ºÅÛ¿¡ ÀÛµ¿ÇÒ °¡´É¼ºÀÌ ³ô½À´Ï´Ù.
+return
+
+
+;----¸Þ´º¸¦ º¸¿©ÁÝ´Ï´Ù
+f_DisplayMenu:
+; ´ÙÀ½ ù ¸î º¯¼öµéÀº ¿©±â¿¡¼­ ¼³Á¤ÇÏ°í f_OpenFavorite°¡ »ç¿ëÇÕ´Ï´Ù:
+WinGet, f_window_id, ID, A
+WinGetClass, f_class, ahk_id %f_window_id%
+if f_class in #32770,ExploreWClass,CabinetWClass  ; ´ëÈ­»óÀÚ ¶Ç´Â Ž»ö±â.
+    ControlGetPos, f_Edit1Pos,,,, Edit1, ahk_id %f_window_id%
+if f_AlwaysShowMenu = n  ; ¸Þ´º´Â ¼±ÅÃÀûÀ¸·Î¸¸ º¸¿©ÁÖ¾î¾ß ÇÕ´Ï´Ù.
+{
+    if f_class in #32770,ExploreWClass,CabinetWClass  ; ´ëÈ­»óÀÚ ¶Ç´Â Ž»ö±â.
+    {
+        if f_Edit1Pos =  ; ÄÜÆ®·ÑÀÌ Á¸ÀçÇÏÁö ¾Ê½À´Ï´Ù. ±×·¡¼­ ¸Þ´º¸¦ º¸¿©ÁÖÁö ¾Ê½À´Ï´Ù
+            return
+    }
+    else if f_class <> ConsoleWindowClass
+        return ; ´Ù¸¥ À¯ÇüÀÇ Ã¢À̱⠶§¹®¿¡, ¸Þ´º¸¦ º¸¿©ÁÖÁö ¾Ê½À´Ï´Ù.
+}
+; ±×·¸Áö ¾ÊÀ¸¸é, ¸Þ´º¸¦ ÀÌ À¯ÇüÀÇ Ã¢¿¡ º¸¿© ÁÖ¾î¾ß ÇÕ´Ï´Ù:
+Menu, Favorites, show
+return
+
+ + diff --git a/src/docs/scripts/IntelliSense.ahk b/src/docs/scripts/IntelliSense.ahk new file mode 100644 index 0000000..d9aab70 --- /dev/null +++ b/src/docs/scripts/IntelliSense.ahk @@ -0,0 +1,188 @@ +; IntelliSense -- by Rajat (requires XP/2k/NT) +; http://www.autohotkey.com +; This script watches while you edit an AutoHotkey script. When it sees you +; type a command followed by a comma or space, it displays that command's +; parameter list to guide you. In addition, you can press Ctrl+F1 (or +; another hotkey of your choice) to display that command's page in the help +; file. To dismiss the parameter list, press Escape or Enter. + +; Requires v1.0.41+ + +; CONFIGURATION SECTION: Customize the script with the following variables. + +; The hotkey below is pressed to display the current command's page in the +; help file: +I_HelpHotkey = ^F1 + +; The string below must exist somewhere in the active window's title for +; IntelliSense to be in effect while you're typing. Make it blank to have +; IntelliSense operate in all windows. Make it Pad to have it operate in +; editors such as Metapad, Notepad, and Textpad. Make it .ahk to have it +; operate only when a .ahk file is open in Notepad, Metapad, etc. +I_Editor = pad + +; If you wish to have a different icon for this script to distinguish it from +; other scripts in the tray, provide the filename below (leave blank to have +; no icon). For example: E:\stuff\Pics\icons\GeoIcons\Information.ico +I_Icon = + +; END OF CONFIGURATION SECTION (do not make changes below this point unless +; you want to change the basic functionality of the script). + +SetKeyDelay, 0 +#SingleInstance + +if I_HelpHotkey <> + Hotkey, %I_HelpHotkey%, I_HelpHotkey + +; Change tray icon (if one was specified in the configuration section above): +if I_Icon <> + IfExist, %I_Icon% + Menu, Tray, Icon, %I_Icon% + +; Determine AutoHotkey's location: +RegRead, ahk_dir, HKEY_LOCAL_MACHINE, SOFTWARE\AutoHotkey, InstallDir +if ErrorLevel ; Not found, so look for it in some other common locations. +{ + if A_AhkPath + SplitPath, A_AhkPath,, ahk_dir + else IfExist ..\..\AutoHotkey.chm + ahk_dir = ..\.. + else IfExist %A_ProgramFiles%\AutoHotkey\AutoHotkey.chm + ahk_dir = %A_ProgramFiles%\AutoHotkey + else + { + MsgBox Could not find the AutoHotkey folder. + ExitApp + } +} + +ahk_help_file = %ahk_dir%\AutoHotkey.chm + +; Read command syntaxes: +Loop, Read, %ahk_dir%\Extras\Editors\Syntax\Commands.txt +{ + I_FullCmd = %A_LoopReadLine% + + ; Directives have a first space instead of a first comma. + ; So use whichever comes first as the end of the command name: + StringGetPos, I_cPos, I_FullCmd, `, + StringGetPos, I_sPos, I_FullCmd, %A_Space% + if (I_cPos = -1 or (I_cPos > I_sPos and I_sPos <> -1)) + I_EndPos := I_sPos + else + I_EndPos := I_cPos + + if I_EndPos <> -1 + StringLeft, I_CurrCmd, I_FullCmd, %I_EndPos% + else ; This is a directive/command with no parameters. + I_CurrCmd = %A_LoopReadLine% + + StringReplace, I_CurrCmd, I_CurrCmd, [,, All + StringReplace, I_CurrCmd, I_CurrCmd, %A_Space%,, All + StringReplace, I_FullCmd, I_FullCmd, ``n, `n, All + StringReplace, I_FullCmd, I_FullCmd, ``t, `t, All + + ; Make arrays of command names and full cmd syntaxes: + I_Cmd%A_Index% = %I_CurrCmd% + I_FullCmd%A_Index% = %I_FullCmd% +} + +; Use the Input command to watch for commands that the user types: +Loop +{ + ; Editor window check: + WinGetTitle, ActiveTitle, A + IfNotInString, ActiveTitle, %I_Editor% + { + ToolTip + Sleep, 500 + Continue + } + + ; Get all keys till endkey: + Input, I_Word, V, {enter}{escape}{space}`, + I_EndKey = %ErrorLevel% + + ; Tooltip is hidden in these cases: + if I_EndKey in EndKey:Enter,EndKey:Escape + { + ToolTip + Continue + } + + ; Editor window check again! + WinGetActiveTitle, ActiveTitle + IfNotInString, ActiveTitle, %I_Editor% + { + ToolTip + Continue + } + + ; Compensate for any indentation that is present: + StringReplace, I_Word, I_Word, %A_Space%,, All + StringReplace, I_Word, I_Word, %A_Tab%,, All + if I_Word = + Continue + + ; Check for commented line: + StringLeft, I_Check, I_Word, 1 + if (I_Check = ";" or I_Word = "If") ; "If" seems a little too annoying to show tooltip for. + Continue + + ; Match word with command: + I_Index = + Loop + { + ; It helps performance to resolve dynamic variables only once. + ; In addition, the value put into I_ThisCmd is also used by the + ; I_HelpHotkey subroutine: + I_ThisCmd := I_Cmd%A_Index% + if I_ThisCmd = + break + if (I_Word = I_ThisCmd) + { + I_Index := A_Index + I_HelpOn = %I_ThisCmd% + break + } + } + + ; If no match then resume watching user input: + if I_Index = + Continue + + ; Show matched command to guide the user: + I_ThisFullCmd := I_FullCmd%I_Index% + ToolTip, %I_ThisFullCmd%, A_CaretX, A_CaretY + 20 +} + + + +I_HelpHotkey: +WinGetTitle, ActiveTitle, A +IfNotInString, ActiveTitle, %I_Editor%, Return + +ToolTip ; Turn off syntax helper since there is no need for it now. + +SetTitleMatchMode, 1 ; In case it's 3. This setting is in effect only for this thread. +IfWinNotExist, AutoHotkey Help +{ + IfNotExist, %ahk_help_file% + { + MsgBox, Could not find the help file: %ahk_help_file%. + return + } + Run, %ahk_help_file% + WinWait, AutoHotkey Help +} + +if I_ThisCmd = ; Instead, use what was most recently typed. + I_ThisCmd := I_Word + +; The above has set the "last found" window which we use below: +WinActivate +WinWaitActive +StringReplace, I_ThisCmd, I_ThisCmd, #, {#} ; Replace leading #, if any. +Send, !n{home}+{end}%I_HelpOn%{enter} +return diff --git a/src/docs/scripts/IntelliSense.htm b/src/docs/scripts/IntelliSense.htm new file mode 100644 index 0000000..28f1a9a --- /dev/null +++ b/src/docs/scripts/IntelliSense.htm @@ -0,0 +1,198 @@ + + +IntelliSense -- by Rajat (requires XP/2k/NT) + + + + + + + +

IntelliSense -- by Rajat (XP/2k/NT ÀÌ»ó)

+ +

ÀÌ ½ºÅ©¸³Æ®´Â AutoHotkey ½ºÅ©¸³Æ®¸¦ ÆíÁýÇÏ´Â µ¿¾È °¨½ÃÇÏ´Ù°¡ ¸í·É¾î ´ÙÀ½¿¡ ½°Ç¥³ª ½ºÆäÀ̽º¸¦ ŸÀÚÇÏ´Â ¼ø°£, ±× ¸í·É¾îÀÇ ¸Å°³º¯¼ö ¸®½ºÆ®¸¦ º¸¿©ÁÝ´Ï´Ù °Ô´Ù°¡ Ctrl+F1 (¶Ç´Â ¿©·¯ºÐÀÇ ¼±Åÿ¡ µû¶ó ´Ù¸¥ ÇÖÅ°)¸¦ ´©¸£¸é ±× ¸í·É¾îÀÇ µµ¿ò¸»À» º¸¿©ÁÝ´Ï´Ù. ¸Å°³º¯¼ö ¸®½ºÆ®¸¦ Ãë¼ÒÇÏ·Á¸é Escape ¶Ç´Â Enter¸¦ ´©¸£½Ê½Ã¿À. +

+

ÀÌ ½ºÅ©¸³Æ®¸¦ ³»·Á¹Þ±â  |  ´Ù¸¥ »ùÇà ½ºÅ©¸³Æ®  |  È¨À¸·Î

+ +
; Requires v1.0.41+
+
+; CONFIGURATION SECTION: ½ºÅ©¸³Æ®¸¦ ´Ù¿ò º¯¼ö·Î Àç´ÜÇÕ´Ï´Ù.
+
+; ¾Æ·¡ÀÇ ÇÖÅ°¸¦ ´©¸£¸é ÇöÀç ¸í·É¾îÀÇ µµ¿ò¸»À» º¸¿©ÁÝ´Ï´Ù:
+I_HelpHotkey = ^F1
+
+; ¾Æ·¡ÀÇ ¹®ÀÚ¿­ÀÌ È°¼ºÃ¢ÀÇ Á¦¸ñ¿¡ Á¸ÀçÇؾß
+; ŸÀÚÇÏ´Â µ¿¾È IntelliSense°¡ ÀÛµ¿ÇÕ´Ï´Ù.  ºñ¿ö µÎ¸é
+; IntelliSense´Â ¸ðµç â¿¡ ÀÛµ¿ÇÕ´Ï´Ù. Pad·Î ¸¸µé¸é 
+; Metapad, Notepad, ±×¸®°í Textpad °°Àº ÆíÁý±â¿¡¼­ ÀÛµ¿ÇÕ´Ï´Ù.  .ahk·Î ¸¸µé¸é
+; ¿ÀÁ÷ .ahk ÆÄÀÏÀÌ Notepad, Metapad, µîµî¿¡ ¿­·Á ÀÖÀ» °æ¿ì¿¡¸¸ ÀÛµ¿ÇÕ´Ï´Ù.
+I_Editor = pad
+
+; Æ®·¹ÀÌ¿¡ ´Ù¸¥ ½ºÅ©¸³Æ®¿Í Â÷º°À» À§ÇØ ÀÌ ½ºÅ©¸³Æ®¿¡ ´ëÇÏ¿© ´Ù¸¥ ¾ÆÀÌÄÜÀ» »ç¿ëÇÏ°í ½ÍÀ¸¸é
+; ¾Æ·¡¿¡ ÆÄÀÏ À̸§À» Á¦°øÇϽʽÿÀ. (ºñ¿ö µÎ¸é ¾ÆÀÌÄÜÀÌ ¾ø½À´Ï´Ù).
+; ¿¹¸¦ µé¾î: E:\stuff\Pics\icons\GeoIcons\Information.ico
+I_Icon = 
+
+; END OF CONFIGURATION SECTION (ÀÌ ½ÃÁ¡ ÀÌÈÄ·Î º¯°æÇÏÁö ¸¶½Ê½Ã¿À.
+; ´Ü, ½ºÅ©¸³Æ®ÀÇ ±âº» ±â´ÉÀ» ¹Ù²Ù°í ½ÍÀº °æ¿ì´Â ¿¹¿ÜÀÔ´Ï´Ù).
+
+SetKeyDelay, 0
+#SingleInstance
+
+if I_HelpHotkey <>
+    Hotkey, %I_HelpHotkey%, I_HelpHotkey
+
+; Æ®·¹ÀÌ ¾ÆÀÌÄÜÀ» ¹Ù²ß´Ï´Ù (À§ÀÇ È¯°æ ±¸¼º ¼½¼Ç¿¡ ÁöÁ¤µÇ¾î ÀÖ´Ù¸é):
+if I_Icon <>
+    IfExist, %I_Icon%
+        Menu, Tray, Icon, %I_Icon%
+
+; ¿ÀÅäÇÖÅ°ÀÇ À§Ä¡¸¦ ¾Ë¾Æ ³À´Ï´Ù:
+RegRead, ahk_dir, HKEY_LOCAL_MACHINE, SOFTWARE\AutoHotkey, InstallDir
+if ErrorLevel  ; ¹ß°ßÀÌ ¾ÈµÇ¾úÀ¸¹Ç·Î, ´Ù¸¥ À§Ä¡¿¡¼­ ã¾Æ º¾´Ï´Ù.
+{
+    if A_AhkPath
+        SplitPath, A_AhkPath,, ahk_dir
+    else IfExist ..\..\AutoHotkey.chm
+        ahk_dir = ..\..
+    else IfExist %A_ProgramFiles%\AutoHotkey\AutoHotkey.chm
+        ahk_dir = %A_ProgramFiles%\AutoHotkey
+    else
+    {
+        MsgBox Could not find the AutoHotkey folder.
+        ExitApp
+    }
+}
+
+ahk_help_file = %ahk_dir%\AutoHotkey.chm
+
+; ¸í·É¾î ±¸¹®À» ÀнÀ´Ï´Ù:
+Loop, Read, %ahk_dir%\Extras\Editors\Syntax\Commands.txt
+{
+    I_FullCmd = %A_LoopReadLine%
+
+    ; Áö½Ã¾îµéÀº ½°Ç¥°¡ ¾Æ´Ï¶ó ½ºÆäÀ̽º¸¦ ù ¹ø°·Î °¡Áý´Ï´Ù.
+    ; ±×·¡¼­ ¸ÕÀú ¿À´Â °ÍÀ» ¸í·É¾î À̸§ÀÇ ³¡À¸·Î °£ÁÖÇÕ´Ï´Ù:
+    StringGetPos, I_cPos, I_FullCmd, `,
+    StringGetPos, I_sPos, I_FullCmd, %A_Space%
+    if (I_cPos = -1 or (I_cPos > I_sPos and I_sPos <> -1))
+        I_EndPos := I_sPos
+    else
+        I_EndPos := I_cPos
+
+    if I_EndPos <> -1
+        StringLeft, I_CurrCmd, I_FullCmd, %I_EndPos%
+    else  ; ÀÌ Áö½Ã¾î/¸í·É¾î´Â ¸Å°³º¯¼ö°¡ ¾ø½À´Ï´Ù.
+        I_CurrCmd = %A_LoopReadLine%
+    
+    StringReplace, I_CurrCmd, I_CurrCmd, [,, All
+    StringReplace, I_CurrCmd, I_CurrCmd, %A_Space%,, All
+    StringReplace, I_FullCmd, I_FullCmd, ``n, `n, All
+    StringReplace, I_FullCmd, I_FullCmd, ``t, `t, All
+    
+    ; ¸í·É¾î À̸§ ¹è¿­°ú ¿ÏÀüÇÑ cmd ±¸¹®À» ±¸¼ºÇÕ´Ï´Ù:
+    I_Cmd%A_Index% = %I_CurrCmd%
+    I_FullCmd%A_Index% = %I_FullCmd%
+}
+
+; Input ¸í·É¾î¸¦ »ç¿ëÇØ »ç¿ëÀÚ°¡ ŸÀÚÇÏ´Â ¸í·É¾î¸¦ °¨½ÃÇÕ´Ï´Ù:
+Loop
+{
+    ; ÆíÁý±â â Á¡°Ë:
+    WinGetTitle, ActiveTitle, A
+    IfNotInString, ActiveTitle, %I_Editor%
+    {
+        ToolTip
+        Sleep, 500
+        Continue
+    }
+    
+    ; ¿£µåÅ°¸¦ ¸¸³¯¶§±îÁö ¸ðµç Å°¸¦ ¾ò½À´Ï´Ù:
+    Input, I_Word, V, {enter}{escape}{space}`,
+    I_EndKey = %ErrorLevel%
+    
+    ; ÀÌ °æ¿ì ÅøÆÁÀº º¸ÀÌÁö ¾Ê½À´Ï´Ù:
+    if I_EndKey in EndKey:Enter,EndKey:Escape
+    {
+        ToolTip
+        Continue
+    }
+
+    ; ´Ù½Ã ÆíÁý±â âÀ» Á¡°ËÇÕ´Ï´Ù!
+    WinGetActiveTitle, ActiveTitle
+    IfNotInString, ActiveTitle, %I_Editor%
+    {
+        ToolTip
+        Continue
+    }
+
+    ; Á¸ÀçÇÏ´Â µé¿©¾²±â ¸¸Å­ º¸»óÇÕ´Ï´Ù:
+    StringReplace, I_Word, I_Word, %A_Space%,, All
+    StringReplace, I_Word, I_Word, %A_Tab%,, All
+    if I_Word =
+        Continue
+    
+    ; ÁÖ¼® ÁÙÀ» Á¡°ËÇÕ´Ï´Ù:
+    StringLeft, I_Check, I_Word, 1
+    if (I_Check = ";" or I_Word = "If")  ; "If"´Â ÅøÆÁÀ» º¸¿©Áֱ⿡´Â ³Ê¹« °ÅÃßÀ彺·´½À´Ï´Ù.
+        Continue
+
+    ; ´Ü¾î¸¦ ¸í·É¾î¿¡ ºÎÇÕ½Ãŵ´Ï´Ù:
+    I_Index =
+    Loop
+    {
+        ; µ¿Àû º¯¼ö¸¦ ÇÑ ¹ø¸¸ °áÁ¤ÇÏ¸é ¼öÇ༺´ÉÀÌ °³¼±µË´Ï´Ù.
+        ; °Ô´Ù°¡,  I_ThisCmd¿¡ ¹è°æµÈ °ªÀº ¶Ç
+        ; I_HelpHotkey ¼­ºê·çƾÀÌ »ç¿ëÇÕ´Ï´Ù:
+        I_ThisCmd := I_Cmd%A_Index%
+        if I_ThisCmd =
+            break
+        if (I_Word = I_ThisCmd)
+        {
+            I_Index := A_Index
+            I_HelpOn = %I_ThisCmd%
+            break
+        }
+    }
+    
+    ; ºÎÇÕÀÌ ¾øÀ¸¸é »ç¿ëÀÚ ÀÔ·Â °¨½Ã¸¦ Àç°³ÇÕ´Ï´Ù:
+    if I_Index =
+        Continue
+    
+    ; ºÎÇÕµÈ ¸í·É¾î¸¦ º¸¿©ÁÖ¾î »ç¿ëÀÚ¸¦ ¾È³»ÇÕ´Ï´Ù:
+    I_ThisFullCmd := I_FullCmd%I_Index%
+    ToolTip, %I_ThisFullCmd%, A_CaretX, A_CaretY + 20
+}
+
+
+
+I_HelpHotkey:
+WinGetTitle, ActiveTitle, A
+IfNotInString, ActiveTitle, %I_Editor%, Return
+
+ToolTip  ; Áö±Ý ´çÀåÀº ÇÊ¿ä°¡ ¾ø±â ¶§¹®¿¡ ±¸¹® µµ¿ò ÅøÆÁÀ» ²ü´Ï´Ù.
+
+SetTitleMatchMode, 1  ; 3ÀÇ °æ¿ì, ÀÌ ¼³Á¤Àº ÀÌ ¾²·¹µå¿¡¸¸ È¿°ú°¡ ÀÖ½À´Ï´Ù.
+IfWinNotExist, AutoHotkey Help
+{
+    IfNotExist, %ahk_help_file%
+    {
+        MsgBox, Could not find the help file: %ahk_help_file%.
+        return
+    }
+    Run, %ahk_help_file%
+    WinWait, AutoHotkey Help
+}
+
+if I_ThisCmd =  ; ´ë½Å¿¡, ÃÖ±Ù¿¡ ŸÀÚµÈ °ÍÀ» »ç¿ëÇÕ´Ï´Ù.
+    I_ThisCmd := I_Word
+
+; À§¿¡¼­ "¸¶Áö¸· ¹ß°ß" âÀÌ ¼³Á¤µÇ¾ú°í ±×°ÍÀ» ¾Æ·¡¿¡ »ç¿ëÇÕ´Ï´Ù:
+WinActivate
+WinWaitActive
+StringReplace, I_ThisCmd, I_ThisCmd, #, {#}  ; ÀÖ´Ù¸é, ¾ÕÀÇ #¸¦ ±³Ã¼ÇÕ´Ï´Ù.
+Send, !n{home}+{end}%I_HelpOn%{enter}
+return
+
+ + diff --git a/src/docs/scripts/JoystickMouse.ahk b/src/docs/scripts/JoystickMouse.ahk new file mode 100644 index 0000000..5295afc --- /dev/null +++ b/src/docs/scripts/JoystickMouse.ahk @@ -0,0 +1,155 @@ +; Using a Joystick as a Mouse +; http://www.autohotkey.com +; This script converts a joystick into a three-button mouse. It allows each +; button to drag just like a mouse button and it uses virtually no CPU time. +; Also, it will move the cursor faster depending on how far you push the joystick +; from center. You can personalize various settings at the top of the script. + +; Increase the following value to make the mouse cursor move faster: +JoyMultiplier = 0.30 + +; Decrease the following value to require less joystick displacement-from-center +; to start moving the mouse. However, you may need to calibrate your joystick +; -- ensuring it's properly centered -- to avoid cursor drift. A perfectly tight +; and centered joystick could use a value of 1: +JoyThreshold = 3 + +; Change the following to true to invert the Y-axis, which causes the mouse to +; move vertically in the direction opposite the stick: +InvertYAxis := false + +; Change these values to use joystick button numbers other than 1, 2, and 3 for +; the left, right, and middle mouse buttons. Available numbers are 1 through 32. +; Use the Joystick Test Script to find out your joystick's numbers more easily. +ButtonLeft = 1 +ButtonRight = 2 +ButtonMiddle = 3 + +; If your joystick has a POV control, you can use it as a mouse wheel. The +; following value is the number of milliseconds between turns of the wheel. +; Decrease it to have the wheel turn faster: +WheelDelay = 250 + +; If your system has more than one joystick, increase this value to use a joystick +; other than the first: +JoystickNumber = 1 + +; END OF CONFIG SECTION -- Don't change anything below this point unless you want +; to alter the basic nature of the script. + +#SingleInstance + +JoystickPrefix = %JoystickNumber%Joy +Hotkey, %JoystickPrefix%%ButtonLeft%, ButtonLeft +Hotkey, %JoystickPrefix%%ButtonRight%, ButtonRight +Hotkey, %JoystickPrefix%%ButtonMiddle%, ButtonMiddle + +; Calculate the axis displacements that are needed to start moving the cursor: +JoyThresholdUpper := 50 + JoyThreshold +JoyThresholdLower := 50 - JoyThreshold +if InvertYAxis + YAxisMultiplier = -1 +else + YAxisMultiplier = 1 + +SetTimer, WatchJoystick, 10 ; Monitor the movement of the joystick. + +GetKeyState, JoyInfo, %JoystickNumber%JoyInfo +IfInString, JoyInfo, P ; Joystick has POV control, so use it as a mouse wheel. + SetTimer, MouseWheel, %WheelDelay% + +return ; End of auto-execute section. + + +; The subroutines below do not use KeyWait because that would sometimes trap the +; WatchJoystick quasi-thread beneath the wait-for-button-up thread, which would +; effectively prevent mouse-dragging with the joystick. + +ButtonLeft: +SetMouseDelay, -1 ; Makes movement smoother. +MouseClick, left,,, 1, 0, D ; Hold down the left mouse button. +SetTimer, WaitForLeftButtonUp, 10 +return + +ButtonRight: +SetMouseDelay, -1 ; Makes movement smoother. +MouseClick, right,,, 1, 0, D ; Hold down the right mouse button. +SetTimer, WaitForRightButtonUp, 10 +return + +ButtonMiddle: +SetMouseDelay, -1 ; Makes movement smoother. +MouseClick, middle,,, 1, 0, D ; Hold down the right mouse button. +SetTimer, WaitForMiddleButtonUp, 10 +return + +WaitForLeftButtonUp: +if GetKeyState(JoystickPrefix . ButtonLeft) + return ; The button is still, down, so keep waiting. +; Otherwise, the button has been released. +SetTimer, WaitForLeftButtonUp, off +SetMouseDelay, -1 ; Makes movement smoother. +MouseClick, left,,, 1, 0, U ; Release the mouse button. +return + +WaitForRightButtonUp: +if GetKeyState(JoystickPrefix . ButtonRight) + return ; The button is still, down, so keep waiting. +; Otherwise, the button has been released. +SetTimer, WaitForRightButtonUp, off +MouseClick, right,,, 1, 0, U ; Release the mouse button. +return + +WaitForMiddleButtonUp: +if GetKeyState(JoystickPrefix . ButtonMiddle) + return ; The button is still, down, so keep waiting. +; Otherwise, the button has been released. +SetTimer, WaitForMiddleButtonUp, off +MouseClick, middle,,, 1, 0, U ; Release the mouse button. +return + +WatchJoystick: +MouseNeedsToBeMoved := false ; Set default. +SetFormat, float, 03 +GetKeyState, joyx, %JoystickNumber%JoyX +GetKeyState, joyy, %JoystickNumber%JoyY +if joyx > %JoyThresholdUpper% +{ + MouseNeedsToBeMoved := true + DeltaX := joyx - JoyThresholdUpper +} +else if joyx < %JoyThresholdLower% +{ + MouseNeedsToBeMoved := true + DeltaX := joyx - JoyThresholdLower +} +else + DeltaX = 0 +if joyy > %JoyThresholdUpper% +{ + MouseNeedsToBeMoved := true + DeltaY := joyy - JoyThresholdUpper +} +else if joyy < %JoyThresholdLower% +{ + MouseNeedsToBeMoved := true + DeltaY := joyy - JoyThresholdLower +} +else + DeltaY = 0 +if MouseNeedsToBeMoved +{ + SetMouseDelay, -1 ; Makes movement smoother. + MouseMove, DeltaX * JoyMultiplier, DeltaY * JoyMultiplier * YAxisMultiplier, 0, R +} +return + +MouseWheel: +GetKeyState, JoyPOV, %JoystickNumber%JoyPOV +if JoyPOV = -1 ; No angle. + return +if (JoyPOV > 31500 or JoyPOV < 4500) ; Forward + Send {WheelUp} +else if JoyPOV between 13500 and 22500 ; Back + Send {WheelDown} +return diff --git a/src/docs/scripts/JoystickMouse.htm b/src/docs/scripts/JoystickMouse.htm new file mode 100644 index 0000000..7d51e9d --- /dev/null +++ b/src/docs/scripts/JoystickMouse.htm @@ -0,0 +1,167 @@ + + +Using a Joystick as a Mouse + + + + + + + +

Á¶À̽ºÆ½À» ¸¶¿ì½ºÃ³·³ »ç¿ëÇϱâ

+ +

ÀÌ ½ºÅ©¸³Æ®´Â Á¶À̽ºÆ½À» ¼¼ ¹öÆ° ¸¶¿ì½º·Î º¯½Å½Ãŵ´Ï´Ù. °¢ ¹öÆ°À» ¸¶Ä¡ ¸¶¿ì½º ¹öÆ° ó·³ ²ø ¼ö ÀÖ°í »ç½Ç»ó CPU ½Ã°£À» ¼ÒºñÇÏÁö ¾Ê½À´Ï´Ù. ¶ÇÇÑ, Á¶À̽ºÆ½À» Áß¾ÓÀ¸·ÎºÎÅÍ ¸Ö¸® ¹Ð¼ö·Ï Ä¿¼­¸¦ ´õ »¡¸® À̵¿½Ãŵ´Ï´Ù. ´Ù¾çÇÑ ¼³Á¤Àº ½ºÅ©¸³Æ® »ó´Ü¿¡¼­ ±âÈ£¿¡ ¸Â°Ô Àç´ÜÇÒ ¼ö ÀÖ½À´Ï´Ù. +

+

ÀÌ ½ºÅ©¸³Æ® ³»·Á¹Þ±â  |  ´Ù¸¥ »ùÇà ½ºÅ©¸³Æ®  |  È¨À¸·Î

+ +
; ¸¶¿ì½º Ä¿¼­¸¦ ´õ »¡¸® À̵¿½ÃÅ°·Á¸é ´ÙÀ½ °ªÀ» Áõ°¡½ÃÅ°¸é µË´Ï´Ù:
+JoyMultiplier = 0.30
+
+; ´ÙÀ½ °ªÀ» ÁÙÀ̸é Á¶À̽ºÆ½ Áß¾ÓÀ¸·ÎºÎÅÍ Á» ´ú ¹Ð¾îµµ 
+; ¸¶¿ì½º¸¦ À̵¿½ÃÅ°±â ½ÃÀÛÇÒ ¼ö ÀÖ½À´Ï´Ù. ±×·¸Áö¸¸, Á¶À̽ºÆ½ ´«±Ý Á¶Á¤ÀÌ ÇÊ¿äÇÒ ¼ö ÀÖ½À´Ï´Ù.
+; -- ÀûÀýÈ÷ Áß¾Ó¿¡ Á¤·ÄµÇ¾ú´ÂÁö È®ÀÎÇØ¾ß ÇØ¾ß -- Ä¿¼­°¡ Ç¥·ùÇÏ´Â °ÍÀ» ÇÇÇÒ ¼ö ÀÖ½º´Ï´Ù. 
+; ¿Ïº®ÇÏ°Ô ºóÆ´ ¾øÀÌ Áß¾Ó Á¤·ÄµÈ Á¶À̽ºÆ½Àº °ª 1À» »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù:
+JoyThreshold = 3
+
+; ´ÙÀ½À» true·Î ¹Ù²Ù¸é Y-ÃàÀ» µÚÁýÀ» ¼ö ÀÖ½À´Ï´Ù.
+; ±×·¯¸é ¸¶¿ì½º´Â Á¶À̽ºÆ½ÀÇ ¼öÁ÷ ¹Ý´ë ¹æÇâÀ¸·Î À̵¿ÇÕ´Ï´Ù:
+InvertYAxis := false
+
+; ´ÙÀ½ °ªµéÀ» ¹Ù²Ù¸é Á¶À̽ºÆ½ ¹öÆ° ¹øÈ£¸¦ ¿ÞÂÊ, ¿À¸¥ÂÊ, ±×¸®°í °¡¿îµ¥ ¸¶¿ì½º ¹öÆ°¿¡ ´ëÇÏ¿©
+; 1, 2, ±×¸®°í 3 ¸»°í ´Ù¸¥ °ªÀ» »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. °¡´ÉÇÑ °ªÀº 1ºÎÅÍ 32±îÁöÀÔ´Ï´Ù.
+; Á¶À̽ºÆ½ Å×½ºÆ® ½ºÅ©¸³Æ®¸¦ »ç¿ëÇϸé Á¶À̽ºÆ½ ¹øÈ£¸¦ ´õ ½±°Ô ¾Ë¾Æ³¾ ¼ö ÀÖ½À´Ï´Ù.
+ButtonLeft = 1
+ButtonRight = 2
+ButtonMiddle = 3
+
+; Á¶À̽ºÆ½¿¡ POV ÄÜÆ®·ÑÀÌ ÀÖ´Ù¸é, ±×°ÍÀ» ¸¶¿ì½º ÈÙ·Î »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù.
+; ´ÙÀ½ °ªÀº ÈÙÀÇ È¸Àü »çÀÌÀÇ ¹Ð¸®ÃÊÀÇ °³¼öÀÔ´Ï´Ù.
+; °³¼ö¸¦ ÁÙÀ̸é ÈÙÀÌ ´õ »¡¸® ȸÀüÇÕ´Ï´Ù:
+WheelDelay = 250
+
+; Á¶À̽ºÆ½ÀÌ ¿©·¯ °³À̸é, ÀÌ °ªÀ» Áõ°¡½ÃÄÑ
+; ´Ù¸¥ Á¶À̽ºÆ½À» »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù:
+JoystickNumber = 1
+
+; END OF CONFIG SECTION -- ÀÌ ½ÃÁ¡ ¾Æ·¡·Î ¾Æ¹« °Íµµ º¯°æÇÏÁö ¸¶½Ê½Ã¿À.
+; ´Ü, ½ºÅ©¸³Æ®ÀÇ ±âº» ±â´ÉÀ» º¯°æÇÏ°í ½ÍÀº °æ¿ì´Â ¿¹¿ÜÀÔ´Ï´Ù.
+
+#SingleInstance
+
+JoystickPrefix = %JoystickNumber%Joy
+Hotkey, %JoystickPrefix%%ButtonLeft%, ButtonLeft
+Hotkey, %JoystickPrefix%%ButtonRight%, ButtonRight
+Hotkey, %JoystickPrefix%%ButtonMiddle%, ButtonMiddle
+
+; ¸¶¿ì½º À̵¿À» ½ÃÀÛ½ÃÅ°´Âµ¥ ÇÊ¿äÇÑ ÃàÀÇ ÀÌ°ÝÀ» °è»êÇÕ´Ï´Ù:
+JoyThresholdUpper := 50 + JoyThreshold
+JoyThresholdLower := 50 - JoyThreshold
+if InvertYAxis
+    YAxisMultiplier = -1
+else
+    YAxisMultiplier = 1
+
+SetTimer, WatchJoystick, 10  ; Á¶À̽ºÆ½ÀÇ À̵¿À» °üÁ¦ÇÕ´Ï´Ù.
+
+GetKeyState, JoyInfo, %JoystickNumber%JoyInfo
+IfInString, JoyInfo, P  ; Á¶À̽ºÆ½¿¡ POV ÄÜÆ®·ÑÀÌ ÀÖ½À´Ï´Ù. ±×·¡¼­ ±×°ÍÀ» ¸¶¿ì½º ÈÙ·Î »ç¿ëÇÕ´Ï´Ù.
+    SetTimer, MouseWheel, %WheelDelay%
+
+return  ; ÀÚµ¿ ½ÇÇà ¼½¼ÇÀÇ ³¡.
+
+
+; ¾Æ·¡ÀÇ ¼­ºê·çƾÀº KeyWait¸¦ »ç¿ëÇÏÁö ¾Ê½À´Ï´Ù.
+; ¿Ö³ÄÇϸé Á¾Á¾ ¹öÆ°-¾÷-´ë±â ¾²·¹µå ¾Æ·¡ÀÇ WatchJoystick ÀÇ»ç-¾²·¹µå¸¦ °¡·Î ä°í,
+; ±×·¯¸é Á¶À̽ºÆ½À¸·Î ¸¶¿ì½º ²ø±â¸¦ ¹æÇØÇÏ´Â È¿°ú°¡ Àֱ⠶§¹®ÀÔ´Ï´Ù.
+
+ButtonLeft:
+SetMouseDelay, -1  ;  ´õ ºÎµå·´°Ô À̵¿Çϵµ·Ï ¸¸µì´Ï´Ù.
+MouseClick, left,,, 1, 0, D  ; ¿ÞÂÊ ¸¶¿ì½º ¹öÆ°À» ´©¸£°í ÀÖ½À´Ï´Ù.
+SetTimer, WaitForLeftButtonUp, 10
+return
+
+ButtonRight:
+SetMouseDelay, -1  ; ´õ ºÎµå·´°Ô À̵¿Çϵµ·Ï ¸¸µì´Ï´Ù.
+MouseClick, right,,, 1, 0, D  ; ¿À¸¥ÂÊ ¸¶¿ì½º ¹öÆ°À» ´©¸£°í ÀÖ½À´Ï´Ù.
+SetTimer, WaitForRightButtonUp, 10
+return
+
+ButtonMiddle:
+SetMouseDelay, -1  ; ´õ ºÎµå·´°Ô À̵¿Çϵµ·Ï ¸¸µì´Ï´Ù.
+MouseClick, middle,,, 1, 0, D  ; ¿À¸¥ÂÊ ¸¶¿ì½º ¹öÆ°À» ´©¸£°í ÀÖ½À´Ï´Ù.
+SetTimer, WaitForMiddleButtonUp, 10
+return
+
+WaitForLeftButtonUp:
+if GetKeyState(JoystickPrefix . ButtonLeft)
+    return  ; ¹öÆ°ÀÌ ¿©ÀüÈ÷ ´­·Á ÀÖ½À´Ï´Ù. ±×·¡¼­ °è¼Ó ´ë±âÇÕ´Ï´Ù.
+; ±×·¸Áö ¾ÊÀ¸¸é, ¹öÆ°ÀÌ ¶¼¾îÁ³½À´Ï´Ù.
+SetTimer, WaitForLeftButtonUp, off
+SetMouseDelay, -1  ; ´õ ºÎµå·´°Ô À̵¿Çϵµ·Ï ¸¸µì´Ï´Ù.
+MouseClick, left,,, 1, 0, U  ; ¸¶¿ì½º ¹öÆ°À» ¶Á´Ï´Ù.
+return
+
+WaitForRightButtonUp:
+if GetKeyState(JoystickPrefix . ButtonRight)
+    return  ; ¹öÆ°ÀÌ ¿©ÀüÈ÷ ´­·Á ÀÖ½À´Ï´Ù. ±×·¡¼­ °è¼Ó ±â´Ù¸³´Ï´Ù.
+; ±×·¸Áö ¾ÊÀ¸¸é, ¹öÆ°ÀÌ ¶¼¾îÁ³½À´Ï´Ù.
+SetTimer, WaitForRightButtonUp, off
+MouseClick, right,,, 1, 0, U  ; ¸¶¿ì½º ¹öÆ°À» ¶Á´Ï´Ù.
+return
+
+WaitForMiddleButtonUp:
+if GetKeyState(JoystickPrefix . ButtonMiddle)
+    return  ; ¹öÆ°ÀÌ ¿©ÀüÈ÷ ´­·Á ÀÖ½À´Ï´Ù. ±×·¡¼­ °è¼Ó ±â´Ù¸³´Ï´Ù.
+; ±×·¸Áö ¾ÊÀ¸¸é, ¹öÆ°ÀÌ ¶¼¾îÁ³½À´Ï´Ù.
+SetTimer, WaitForMiddleButtonUp, off
+MouseClick, middle,,, 1, 0, U  ; ¸¶¿ì½º ¹öÆ°À» ¶Á´Ï´Ù.
+return
+
+WatchJoystick:
+MouseNeedsToBeMoved := false  ; ±âº»°ªÀ» ¼³Á¤ÇÕ´Ï´Ù.
+SetFormat, float, 03
+GetKeyState, joyx, %JoystickNumber%JoyX
+GetKeyState, joyy, %JoystickNumber%JoyY
+if joyx > %JoyThresholdUpper%
+{
+    MouseNeedsToBeMoved := true
+    DeltaX := joyx - JoyThresholdUpper
+}
+else if joyx < %JoyThresholdLower%
+{
+    MouseNeedsToBeMoved := true
+    DeltaX := joyx - JoyThresholdLower
+}
+else
+    DeltaX = 0
+if joyy > %JoyThresholdUpper%
+{
+    MouseNeedsToBeMoved := true
+    DeltaY := joyy - JoyThresholdUpper
+}
+else if joyy < %JoyThresholdLower%
+{
+    MouseNeedsToBeMoved := true
+    DeltaY := joyy - JoyThresholdLower
+}
+else
+    DeltaY = 0
+if MouseNeedsToBeMoved
+{
+    SetMouseDelay, -1  ; ´õ ºÎµå·´°Ô À̵¿½Ãŵ´Ï´Ù.
+    MouseMove, DeltaX * JoyMultiplier, DeltaY * JoyMultiplier * YAxisMultiplier, 0, R
+}
+return
+
+MouseWheel:
+GetKeyState, JoyPOV, %JoystickNumber%JoyPOV
+if JoyPOV = -1  ; °¢µµ ¾øÀ½.
+    return
+if (JoyPOV > 31500 or JoyPOV < 4500)  ; ¾ÕÀ¸·Î À̵¿
+    Send {WheelUp}
+else if JoyPOV between 13500 and 22500  ; µÚ·Î À̵¿
+    Send {WheelDown}
+return
+
+ + diff --git a/src/docs/scripts/JoystickTest.ahk b/src/docs/scripts/JoystickTest.ahk new file mode 100644 index 0000000..4943c45 --- /dev/null +++ b/src/docs/scripts/JoystickTest.ahk @@ -0,0 +1,88 @@ +; Joystick Test Script +; http://www.autohotkey.com +; This script helps determine the button numbers and other attributes +; of your joystick. It might also reveal if your joystick is in need +; of calibration; that is, whether the range of motion of each of its +; axes is from 0 to 100 percent as it should be. If calibration is +; needed, use the operating system's control panel or the software +; that came with your joystick. + +; July 6, 2005: Added auto-detection of joystick number. +; May 8, 2005 : Fixed: JoyAxes is no longer queried as a means of +; detecting whether the joystick is connected. Some joysticks are +; gamepads and don't have even a single axis. + +; If you want to unconditionally use a specific joystick number, change +; the following value from 0 to the number of the joystick (1-16). +; A value of 0 causes the joystick number to be auto-detected: +JoystickNumber = 0 + +; END OF CONFIG SECTION. Do not make changes below this point unless +; you wish to alter the basic functionality of the script. + +; Auto-detect the joystick number if called for: +if JoystickNumber <= 0 +{ + Loop 16 ; Query each joystick number to find out which ones exist. + { + GetKeyState, JoyName, %A_Index%JoyName + if JoyName <> + { + JoystickNumber = %A_Index% + break + } + } + if JoystickNumber <= 0 + { + MsgBox The system does not appear to have any joysticks. + ExitApp + } +} + +#SingleInstance +SetFormat, float, 03 ; Omit decimal point from axis position percentages. +GetKeyState, joy_buttons, %JoystickNumber%JoyButtons +GetKeyState, joy_name, %JoystickNumber%JoyName +GetKeyState, joy_info, %JoystickNumber%JoyInfo +Loop +{ + buttons_down = + Loop, %joy_buttons% + { + GetKeyState, joy%a_index%, %JoystickNumber%joy%a_index% + if joy%a_index% = D + buttons_down = %buttons_down%%a_space%%a_index% + } + GetKeyState, joyx, %JoystickNumber%JoyX + axis_info = X%joyx% + GetKeyState, joyy, %JoystickNumber%JoyY + axis_info = %axis_info%%a_space%%a_space%Y%joyy% + IfInString, joy_info, Z + { + GetKeyState, joyz, %JoystickNumber%JoyZ + axis_info = %axis_info%%a_space%%a_space%Z%joyz% + } + IfInString, joy_info, R + { + GetKeyState, joyr, %JoystickNumber%JoyR + axis_info = %axis_info%%a_space%%a_space%R%joyr% + } + IfInString, joy_info, U + { + GetKeyState, joyu, %JoystickNumber%JoyU + axis_info = %axis_info%%a_space%%a_space%U%joyu% + } + IfInString, joy_info, V + { + GetKeyState, joyv, %JoystickNumber%JoyV + axis_info = %axis_info%%a_space%%a_space%V%joyv% + } + IfInString, joy_info, P + { + GetKeyState, joyp, %JoystickNumber%JoyPOV + axis_info = %axis_info%%a_space%%a_space%POV%joyp% + } + ToolTip, %joy_name% (#%JoystickNumber%):`n%axis_info%`nButtons Down: %buttons_down%`n`n(right-click the tray icon to exit) + Sleep, 100 +} +return diff --git a/src/docs/scripts/JoystickTest.htm b/src/docs/scripts/JoystickTest.htm new file mode 100644 index 0000000..4607eaf --- /dev/null +++ b/src/docs/scripts/JoystickTest.htm @@ -0,0 +1,98 @@ + + +Joystick Test Script + + + + + + + +

Á¶À̽ºÆ½ Å×½ºÆ® ½ºÅ©¸³Æ®

+ +

ÀÌ ½ºÅ©¸³Æ®·Î Á¶À̽ºÆ½ÀÇ ¹öÆ° ¹øÈ£¿Í ±âŸ ¼Ó¼ºÀ» ¾Ë¾Æ³¾ ¼ö ÀÖ½À´Ï´Ù. ¶Ç Á¶À̽ºÆ½ÀÌ ´«±Ý Á¶Á¤ÀÌ ÇÊ¿äÇÑÁö ³ëÃâ½ÃÄÑ ÁÝ´Ï´Ù; Áï, °¢ ÃàÀÇ À̵¿ ¹üÀ§´Â ±×·¡¾ß ÇÏ´Â °Íó·³ 0ºÎÅÍ 100 ÆÛ¼¾Æ® »çÀÌÀÔ´Ï´Ù. ´«±Ý Á¶Á¤ÀÌ ÇÊ¿äÇϸé, ¿î¿µ üÁ¦ÀÇ Á¦¾îÆÇÀ̳ª Á¶À̽ºÆ½¿¡ µû¶ó¿À´Â ¼ÒÇÁÆ®¿þ¾î¸¦ ÀÌ¿ëÇϽʽÿÀ. +

+

ÀÌ ½ºÅ©¸³Æ® ³»·Á ¹Þ±â  |  ´Ù¸¥ »ùÇà ½ºÅ©¸³Æ®  |  È¨À¸·Î

+ +
; July 6, 2005: Á¶À̽ºÆ½ ¹øÈ£¸¦ ÀÚµ¿ ŽÁö.
+; May 8, 2005 : ¼öÁ¤: Á¶À̽ºÆ½ÀÌ Á¢¼ÓµÇ¾î ÀÖ´ÂÁö ŽÁöÇÏ´Â ¼ö´ÜÀ¸·Î
+; JoyAxes¸¦ ´õ ÀÌ»ó ÁúÀÇÇÏÁö ¾ÊÀ½. ¾î¶² Á¶À̽ºÆ½Àº °ÔÀÓÆеåÀÌ°í
+; ÃàÀÌ Çϳªµµ ¾ø±â ¶§¹®ÀÔ´Ï´Ù.
+
+; ¹«Á¶°Ç ƯÁ¤ Á¶À̽ºÆ½ ¹øÈ£¸¦ »ç¿ëÇÏ°í ½Í´Ù¸é,
+; ´ÙÀ½ °ªÀ» 0¿¡¼­ Á¶À̽ºÆ½ ¹øÈ£·Î ¹Ù²ß´Ï´Ù (1-16).
+; °ªÀÌ 0À̸é Á¶À̽ºÆ½ ¹øÈ£¸¦ ÀÚµ¿ ŽÁöÇÕ´Ï´Ù:
+JoystickNumber = 0
+
+; END OF CONFIG SECTION. ÀÌ ½ÃÁ¡ ÀÌÈÄ·Î º¯°æÇÏÁö ¸¶½Ê½Ã¿À
+; ´Ü, ½ºÅ©¸³Æ®ÀÇ ±âº» ±â´ÉÀ» ¹Ù²Ù°í ½Í´Ù¸é ¿¹¿ÜÀÔ´Ï´Ù.
+
+; ¿äûÇϸé Á¶À̽ºÆ½ ¹øÈ£¸¦ ÀÚµ¿ ŽÁöÇÕ´Ï´Ù:
+if JoystickNumber <= 0
+{
+    Loop 16  ; °¢ Á¶À̽ºÆ½ ¹øÈ£¸¦ ÁúÀÇÇØ ¾î´À ¹øÈ£°¡ Á¸ÀçÇÏ´ÂÁö ¾Ë¾Æ³À´Ï´Ù.
+    {
+        GetKeyState, JoyName, %A_Index%JoyName
+        if JoyName <>
+        {
+            JoystickNumber = %A_Index%
+            break
+        }
+    }
+    if JoystickNumber <= 0
+    {
+        MsgBox ½Ã½ºÅÛ¿¡ Á¶À̽ºÆ½ÀÌ ÀåÂøµÇ¾î ÀÖÁö ¾ÊÀº °Í °°½À´Ï´Ù.
+        ExitApp
+    }
+}
+
+#SingleInstance
+SetFormat, float, 03  ; Ãà À§Ä¡ ÆÛ¼¾Æ®¿¡¼­ ¼Ò¼öÁ¡À» »ý·«ÇÕ´Ï´Ù.
+GetKeyState, joy_buttons, %JoystickNumber%JoyButtons
+GetKeyState, joy_name, %JoystickNumber%JoyName
+GetKeyState, joy_info, %JoystickNumber%JoyInfo
+Loop
+{
+    buttons_down =
+    Loop, %joy_buttons%
+    {
+        GetKeyState, joy%a_index%, %JoystickNumber%joy%a_index%
+        if joy%a_index% = D
+            buttons_down = %buttons_down%%a_space%%a_index%
+    }
+    GetKeyState, joyx, %JoystickNumber%JoyX
+    axis_info = X%joyx%
+    GetKeyState, joyy, %JoystickNumber%JoyY
+    axis_info = %axis_info%%a_space%%a_space%Y%joyy%
+    IfInString, joy_info, Z
+    {
+        GetKeyState, joyz, %JoystickNumber%JoyZ
+        axis_info = %axis_info%%a_space%%a_space%Z%joyz%
+    }
+    IfInString, joy_info, R
+    {
+        GetKeyState, joyr, %JoystickNumber%JoyR
+        axis_info = %axis_info%%a_space%%a_space%R%joyr%
+    }
+    IfInString, joy_info, U
+    {
+        GetKeyState, joyu, %JoystickNumber%JoyU
+        axis_info = %axis_info%%a_space%%a_space%U%joyu%
+    }
+    IfInString, joy_info, V
+    {
+        GetKeyState, joyv, %JoystickNumber%JoyV
+        axis_info = %axis_info%%a_space%%a_space%V%joyv%
+    }
+    IfInString, joy_info, P
+    {
+        GetKeyState, joyp, %JoystickNumber%JoyPOV
+        axis_info = %axis_info%%a_space%%a_space%POV%joyp%
+    }
+    ToolTip, %joy_name% (#%JoystickNumber%):`n%axis_info%`nButtons Down: %buttons_down%`n`n(Á¾·áÇÏ·Á¸é Æ®·¹ÀÌ ¾ÆÀÌÄÜÀ» ¿ìŬ¸¯ ÇϽʽÿÀ)
+    Sleep, 100
+}
+return
+
+ + diff --git a/src/docs/scripts/KeyboardOnScreen.ahk b/src/docs/scripts/KeyboardOnScreen.ahk new file mode 100644 index 0000000..e7d880f --- /dev/null +++ b/src/docs/scripts/KeyboardOnScreen.ahk @@ -0,0 +1,230 @@ +; On-Screen Keyboard (requires XP/2k/NT) -- by Jon +; http://www.autohotkey.com +; This script creates a mock keyboard at the bottom of your screen that shows +; the keys you are pressing in real time. I made it to help me to learn to +; touch-type (to get used to not looking at the keyboard). The size of the +; on-screen keyboard can be customized at the top of the script. Also, you +; can double-click the tray icon to show or hide the keyboard. + +;---- Configuration Section: Customize the size of the on-screen keyboard and +; other options here. + +; Changing this font size will make the entire on-screen keyboard get +; larger or smaller: +k_FontSize = 10 +k_FontName = Verdana ; This can be blank to use the system's default font. +k_FontStyle = Bold ; Example of an alternative: Italic Underline + +; Names for the tray menu items: +k_MenuItemHide = Hide on-screen &keyboard +k_MenuItemShow = Show on-screen &keyboard + +; To have the keyboard appear on a monitor other than the primary, specify +; a number such as 2 for the following variable. Leave it blank to use +; the primary: +k_Monitor = + +;---- End of configuration section. Don't change anything below this point +; unless you want to alter the basic nature of the script. + + +;---- Alter the tray icon menu: +Menu, Tray, Add, %k_MenuItemHide%, k_ShowHide +Menu, Tray, Add, &Exit, k_MenuExit +Menu, Tray, Default, %k_MenuItemHide% +Menu, Tray, NoStandard + +;---- Calculate object dimensions based on chosen font size: +k_KeyWidth = %k_FontSize% +k_KeyWidth *= 3 +k_KeyHeight = %k_FontSize% +k_KeyHeight *= 3 +k_KeyMargin = %k_FontSize% +k_KeyMargin /= 6 +k_SpacebarWidth = %k_FontSize% +k_SpacebarWidth *= 25 +k_KeyWidthHalf = %k_KeyWidth% +k_KeyWidthHalf /= 2 + +k_KeySize = w%k_KeyWidth% h%k_KeyHeight% +k_Position = x+%k_KeyMargin% %k_KeySize% + +;---- Create a GUI window for the on-screen keyboard: +Gui, Font, s%k_FontSize% %k_FontStyle%, %k_FontName% +Gui, -Caption +E0x200 +ToolWindow +TransColor = F1ECED +Gui, Color, %TransColor% ; This color will be made transparent later below. + +;---- Add a button for each key. Position the first button with absolute +; coordinates so that all other buttons can be positioned relative to it: +Gui, Add, Button, section %k_KeySize% xm+%k_KeyWidth%, 1 +Gui, Add, Button, %k_Position%, 2 +Gui, Add, Button, %k_Position%, 3 +Gui, Add, Button, %k_Position%, 4 +Gui, Add, Button, %k_Position%, 5 +Gui, Add, Button, %k_Position%, 6 +Gui, Add, Button, %k_Position%, 7 +Gui, Add, Button, %k_Position%, 8 +Gui, Add, Button, %k_Position%, 9 +Gui, Add, Button, %k_Position%, 0 +Gui, Add, Button, %k_Position%, - +Gui, Add, Button, %k_Position%, = +Gui, Add, Button, %k_Position%, Bk + +Gui, Add, Button, xm y+%k_KeyMargin% h%k_KeyHeight%, Tab ; Auto-width. +Gui, Add, Button, %k_Position%, Q +Gui, Add, Button, %k_Position%, W +Gui, Add, Button, %k_Position%, E +Gui, Add, Button, %k_Position%, R +Gui, Add, Button, %k_Position%, T +Gui, Add, Button, %k_Position%, Y +Gui, Add, Button, %k_Position%, U +Gui, Add, Button, %k_Position%, I +Gui, Add, Button, %k_Position%, O +Gui, Add, Button, %k_Position%, P +Gui, Add, Button, %k_Position%, [ +Gui, Add, Button, %k_Position%, ] +Gui, Add, Button, %k_Position%, \ + +Gui, Add, Button, xs+%k_KeyWidthHalf% y+%k_KeyMargin% %k_KeySize%, A +Gui, Add, Button, %k_Position%, S +Gui, Add, Button, %k_Position%, D +Gui, Add, Button, %k_Position%, F +Gui, Add, Button, %k_Position%, G +Gui, Add, Button, %k_Position%, H +Gui, Add, Button, %k_Position%, J +Gui, Add, Button, %k_Position%, K +Gui, Add, Button, %k_Position%, L +Gui, Add, Button, %k_Position%, `; +Gui, Add, Button, %k_Position%, ' +Gui, Add, Button, x+%k_KeyMargin% h%k_KeyHeight%, Enter ; Auto-width. + +; The first button below adds %A_Space% at the end to widen it a little, +; making the layout of keys next to it more accurately reflect a real keyboard: +Gui, Add, Button, xm y+%k_KeyMargin% h%k_KeyHeight%, Shift%A_Space%%A_Space% +Gui, Add, Button, %k_Position%, Z +Gui, Add, Button, %k_Position%, X +Gui, Add, Button, %k_Position%, C +Gui, Add, Button, %k_Position%, V +Gui, Add, Button, %k_Position%, B +Gui, Add, Button, %k_Position%, N +Gui, Add, Button, %k_Position%, M +Gui, Add, Button, %k_Position%, `, +Gui, Add, Button, %k_Position%, . +Gui, Add, Button, %k_Position%, / + +Gui, Add, Button, xm y+%k_KeyMargin% h%k_KeyHeight%, Ctrl ; Auto-width. +Gui, Add, Button, h%k_KeyHeight% x+%k_KeyMargin%, Win ; Auto-width. +Gui, Add, Button, h%k_KeyHeight% x+%k_KeyMargin%, Alt ; Auto-width. +Gui, Add, Button, h%k_KeyHeight% x+%k_KeyMargin% w%k_SpacebarWidth%, Space + + +;---- Show the window: +Gui, Show +k_IsVisible = y + +WinGet, k_ID, ID, A ; Get its window ID. +WinGetPos,,, k_WindowWidth, k_WindowHeight, A + +;---- Position the keyboard at the bottom of the screen (taking into account +; the position of the taskbar): +SysGet, k_WorkArea, MonitorWorkArea, %k_Monitor% + +; Calculate window's X-position: +k_WindowX = %k_WorkAreaRight% +k_WindowX -= %k_WorkAreaLeft% ; Now k_WindowX contains the width of this monitor. +k_WindowX -= %k_WindowWidth% +k_WindowX /= 2 ; Calculate position to center it horizontally. +; The following is done in case the window will be on a non-primary monitor +; or if the taskbar is anchored on the left side of the screen: +k_WindowX += %k_WorkAreaLeft% + +; Calculate window's Y-position: +k_WindowY = %k_WorkAreaBottom% +k_WindowY -= %k_WindowHeight% + +WinMove, A,, %k_WindowX%, %k_WindowY% +WinSet, AlwaysOnTop, On, ahk_id %k_ID% +WinSet, TransColor, %TransColor% 220, ahk_id %k_ID% + + +;---- Set all keys as hotkeys. See www.asciitable.com +k_n = 1 +k_ASCII = 45 + +Loop +{ + Transform, k_char, Chr, %k_ASCII% + StringUpper, k_char, k_char + if k_char not in <,>,^,~,,`, + Hotkey, ~*%k_char%, k_KeyPress + ; In the above, the asterisk prefix allows the key to be detected regardless + ; of whether the user is holding down modifier keys such as Control and Shift. + if k_ASCII = 93 + break + k_ASCII++ +} + +return ; End of auto-execute section. + + +;---- When a key is pressed by the user, click the corresponding button on-screen: + +~*Backspace:: +ControlClick, Bk, ahk_id %k_ID%, , LEFT, 1, D +KeyWait, Backspace +ControlClick, Bk, ahk_id %k_ID%, , LEFT, 1, U +return + + +; LShift and RShift are used rather than "Shift" because when used as a hotkey, +; "Shift" would default to firing upon release of the key (in older AHK versions): +~*LShift:: +~*RShift:: +~*LCtrl:: ; Must use Ctrl not Control to match button names. +~*RCtrl:: +~*LAlt:: +~*RAlt:: +~*LWin:: +~*RWin:: +StringTrimLeft, k_ThisHotkey, A_ThisHotkey, 3 +ControlClick, %k_ThisHotkey%, ahk_id %k_ID%, , LEFT, 1, D +KeyWait, %k_ThisHotkey% +ControlClick, %k_ThisHotkey%, ahk_id %k_ID%, , LEFT, 1, U +return + + +~*,:: +~*':: +~*Space:: +~*Enter:: +~*Tab:: +k_KeyPress: +StringReplace, k_ThisHotkey, A_ThisHotkey, ~ +StringReplace, k_ThisHotkey, k_ThisHotkey, * +SetTitleMatchMode, 3 ; Prevents the T and B keys from being confused with Tab and Backspace. +ControlClick, %k_ThisHotkey%, ahk_id %k_ID%, , LEFT, 1, D +KeyWait, %k_ThisHotkey% +ControlClick, %k_ThisHotkey%, ahk_id %k_ID%, , LEFT, 1, U +Return + + +k_ShowHide: +if k_IsVisible = y +{ + Gui, Cancel + Menu, Tray, Rename, %k_MenuItemHide%, %k_MenuItemShow% + k_IsVisible = n +} +else +{ + Gui, Show + Menu, Tray, Rename, %k_MenuItemShow%, %k_MenuItemHide% + k_IsVisible = y +} +return + + +GuiClose: +k_MenuExit: +ExitApp diff --git a/src/docs/scripts/KeyboardOnScreen.htm b/src/docs/scripts/KeyboardOnScreen.htm new file mode 100644 index 0000000..528cccc --- /dev/null +++ b/src/docs/scripts/KeyboardOnScreen.htm @@ -0,0 +1,242 @@ + + +On-Screen Keyboard (requires XP/2k/NT) -- by Jon + + + + + + + +

È­¸é À§ Å°º¸µå (XP/2k/NT ¿ä±¸) -- by Jon

+ +

+ÀÌ ½ºÅ©¸³Æ®´Â °¡Â¥ Å°º¸µå¸¦ È­¸é ¾Æ·¡¿¡ »ý¼ºÇÏ°í ´©¸£´Â Å°µéÀ» ½Ç½Ã°£À¸·Î º¸¿©ÁÝ´Ï´Ù. (Å°º¸µå¸¦ º¸Áö ¾Ê°í) ¼Õ°¨°¢À» ÀÍÈ÷±â À§ÇØ ¸¸µé¾ú½À´Ï´Ù. È­¸é À§ Å°º¸µåÀÇ Å©±â´Â ½ºÅ©¸³Æ® »ó´Ü¿¡¼­ Àç´ÜÇÒ ¼ö ÀÖ½À´Ï´Ù. ¶ÇÇÑ, Æ®·¹ÀÌ ¾ÆÀÌÄÜÀ» ´õºí Ŭ¸¯Çϸé Å°º¸µå¸¦ º¸¿©Áְųª °¨Ãâ ¼ö ÀÖ½À´Ï´Ù. +

+

ÀÌ ½ºÅ©¸³Æ® ³»·Á ¹Þ±â  |  ´Ù¸¥ »ùÇà ½ºÅ©¸³Æ®  |  È¨À¸·Î

+ +
;---- ȯ°æ ±¸¼º ºÎºÐ: È­¸é À§ Å°º¸µå Å©±â¿Í
+; ±âŸ ¿É¼ÇÀ» ¿©±â¿¡¼­ Àç´ÜÇÕ´Ï´Ù.
+
+; ´ÙÀ½ ±Û²Ã Å©±â¸¦ ¹Ù²Ù¸é Àü¿¡ È­¸é À§ Å°º¸µå°¡
+; ´õ Ä¿Áö°Å³ª ´õ ÀÛ¾ÆÀÔ´Ï´Ù:
+k_FontSize = 10
+k_FontName = Verdana  ; ÀÌ ÁÙÀ» ºñ¿ì¸é ½Ã½ºÅÛÀÇ ±âº» ±Û²ÃÀ» »ç¿ëÇÕ´Ï´Ù.
+k_FontStyle = Bold    ; ´Ù¸¥ ¿¹Á¦: Italic Underline
+
+; Æ®·¹ÀÌ ¸Þ´º Ç׸ñ À̸§:
+k_MenuItemHide = Hide on-screen &keyboard
+k_MenuItemShow = Show on-screen &keyboard
+
+; ±âº» ¸ðµðÅÍ ¸»°í ´Ù¸¥ ¸ð´ÏÅÍ¿¡ Å°º¸µå¸¦ º¸¿©ÁÖ·Á¸é,
+; ´ÙÀ½ º¯¼ö¿¡ 2¿Í °°ÀÌ ¼ýÀÚ¸¦ ÁöÁ¤ÇϽʽÿÀ. ºñ¿öµÎ¸é,
+; ±âº» ¸ð´ÏÅ͸¦ »ç¿ëÇÕ´Ï´Ù:
+k_Monitor = 
+
+;---- ȯ°æ ±¸¼º ºÎºÐ ³¡.  ÀÌ ½ÃÁ¡ ºÎÅÍ´Â º¯°æÇÏÁö ¸¶½Ê½Ã¿À.
+; ´Ü, ½ºÅ©¸³Æ®ÀÌ ±âº» ¼º°ÝÀ» ¹Ù²Ù°í ½ÍÀº °æ¿ì´Â ¿¹¿ÜÀÔ´Ï´Ù.
+
+
+;---- Æ®·¹ÀÌ ¾ÆÀÌÄÜ ¸Þ´º¸¦ º¯°æÇÕ´Ï´Ù:
+Menu, Tray, Add, %k_MenuItemHide%, k_ShowHide
+Menu, Tray, Add, &Exit, k_MenuExit
+Menu, Tray, Default, %k_MenuItemHide%
+Menu, Tray, NoStandard
+
+;---- ¼±ÅÃµÈ ±Û²Ã Å©±â¿¡ ±â¹ÝÇÏ¿© °´Ã¼ Å©±â¸¦ °è»êÇÕ´Ï´Ù.:
+k_KeyWidth = %k_FontSize%
+k_KeyWidth *= 3
+k_KeyHeight = %k_FontSize%
+k_KeyHeight *= 3
+k_KeyMargin = %k_FontSize%
+k_KeyMargin /= 6
+k_SpacebarWidth = %k_FontSize%
+k_SpacebarWidth *= 25
+k_KeyWidthHalf = %k_KeyWidth%
+k_KeyWidthHalf /= 2
+
+k_KeySize = w%k_KeyWidth% h%k_KeyHeight%
+k_Position = x+%k_KeyMargin% %k_KeySize%
+
+;---- È­¸é À§ Å°º¸µå¸¦ À§ÇÏ¿© GUI âÀ» »ý¼ºÇÕ´Ï´Ù:
+Gui, Font, s%k_FontSize% %k_FontStyle%, %k_FontName%
+Gui, -Caption +E0x200 +ToolWindow
+TransColor = F1ECED
+Gui, Color, %TransColor%  ; ÀÌ »öÀº ³ªÁß¿¡ ¾Æ·¡¿¡¼­ Åõ¸í»öÀÌ µË´Ï´Ù.
+
+;---- °¢ Å°¿¡ ¹öÆ°À» Ãß°¡ÇÕ´Ï´Ù. ù ¹öÆ°À» Àý´ë ÁÂÇ¥¿¡ ¹èÄ¡ÇÕ´Ï´Ù.
+; ±×·¯¸é ´Ù¸¥ ¸ðµç ¹öÆ°ÀÌ ±×¿¡ »ó´ëÀûÀ¸·Î ¹èÄ¡µË´Ï´Ù:
+Gui, Add, Button, section %k_KeySize% xm+%k_KeyWidth%, 1
+Gui, Add, Button, %k_Position%, 2
+Gui, Add, Button, %k_Position%, 3
+Gui, Add, Button, %k_Position%, 4
+Gui, Add, Button, %k_Position%, 5
+Gui, Add, Button, %k_Position%, 6
+Gui, Add, Button, %k_Position%, 7
+Gui, Add, Button, %k_Position%, 8
+Gui, Add, Button, %k_Position%, 9
+Gui, Add, Button, %k_Position%, 0
+Gui, Add, Button, %k_Position%, -
+Gui, Add, Button, %k_Position%, =
+Gui, Add, Button, %k_Position%, Bk
+
+Gui, Add, Button, xm y+%k_KeyMargin% h%k_KeyHeight%, Tab  ; ÀÚµ¿-³Êºñ.
+Gui, Add, Button, %k_Position%, Q
+Gui, Add, Button, %k_Position%, W
+Gui, Add, Button, %k_Position%, E
+Gui, Add, Button, %k_Position%, R
+Gui, Add, Button, %k_Position%, T
+Gui, Add, Button, %k_Position%, Y
+Gui, Add, Button, %k_Position%, U
+Gui, Add, Button, %k_Position%, I
+Gui, Add, Button, %k_Position%, O
+Gui, Add, Button, %k_Position%, P
+Gui, Add, Button, %k_Position%, [
+Gui, Add, Button, %k_Position%, ]
+Gui, Add, Button, %k_Position%, \
+
+Gui, Add, Button, xs+%k_KeyWidthHalf% y+%k_KeyMargin% %k_KeySize%, A
+Gui, Add, Button, %k_Position%, S
+Gui, Add, Button, %k_Position%, D
+Gui, Add, Button, %k_Position%, F
+Gui, Add, Button, %k_Position%, G
+Gui, Add, Button, %k_Position%, H
+Gui, Add, Button, %k_Position%, J
+Gui, Add, Button, %k_Position%, K
+Gui, Add, Button, %k_Position%, L
+Gui, Add, Button, %k_Position%, `;
+Gui, Add, Button, %k_Position%, '
+Gui, Add, Button, x+%k_KeyMargin% h%k_KeyHeight%, Enter  ; ÀÚµ¿-³Êºñ.
+
+; ¾Æ·¡ÀÇ Ã¹ ¹ø° ¹öÆ°Àº ³¡¿¡ %A_Space%¸¦ Ãß°¡ÇØ ¾à°£ ´õ ³ÐÈü´Ï´Ù.
+; ±×·¡¼­ ±× ´ÙÀ½ Å°¿ÍÀÇ ·¹À̾ƿôÀÌ ´õ Á¤È®ÇÏ°Ô Å°º¸µå¸¦ ¹Ý¿µÇÕ´Ï´Ù.:
+Gui, Add, Button, xm y+%k_KeyMargin% h%k_KeyHeight%, Shift%A_Space%%A_Space%
+Gui, Add, Button, %k_Position%, Z
+Gui, Add, Button, %k_Position%, X
+Gui, Add, Button, %k_Position%, C
+Gui, Add, Button, %k_Position%, V
+Gui, Add, Button, %k_Position%, B
+Gui, Add, Button, %k_Position%, N
+Gui, Add, Button, %k_Position%, M
+Gui, Add, Button, %k_Position%, `,
+Gui, Add, Button, %k_Position%, .
+Gui, Add, Button, %k_Position%, /
+
+Gui, Add, Button, xm y+%k_KeyMargin% h%k_KeyHeight%, Ctrl  ; Auto-width.
+Gui, Add, Button, h%k_KeyHeight% x+%k_KeyMargin%, Win      ; Auto-width.
+Gui, Add, Button, h%k_KeyHeight% x+%k_KeyMargin%, Alt      ; Auto-width.
+Gui, Add, Button, h%k_KeyHeight% x+%k_KeyMargin% w%k_SpacebarWidth%, Space
+
+
+;---- âÀ» º¸¿©ÁÝ´Ï´Ù:
+Gui, Show
+k_IsVisible = y
+
+WinGet, k_ID, ID, A   ; Get its window ID.
+WinGetPos,,, k_WindowWidth, k_WindowHeight, A
+
+;---- (ŽºÅ©¹ÙÀÇ À§Ä¡¸¦ °í·ÁÇÏ¿©)
+; Å°º¸µå¸¦ È­¸é ¾Æ·¡¿¡ ¹èÄ¡ÇÕ´Ï´Ù:
+SysGet, k_WorkArea, MonitorWorkArea, %k_Monitor%
+
+; âÀÇ X-À§Ä¡¸¦ °è»êÇÕ´Ï´Ù:
+k_WindowX = %k_WorkAreaRight%
+k_WindowX -= %k_WorkAreaLeft%  ; ÀÌÁ¦ k_WindowX¿¡ ÀÌ ¸ð´ÏÅÍÀÇ ³Êºñ°¡ ´ã±é´Ï´Ù.
+k_WindowX -= %k_WindowWidth%
+k_WindowX /= 2  ; ¼öÆòÀ¸·Î °¡¿îµ¥ À§Ä¡¸¦ °è»êÇÕ´Ï´Ù.
+; ´ÙÀ½Àº âÀÌ ±âº» ¸ð´ÏÅÍ¿¡ ÀÖÁö ¾Ê°Å³ª
+; ŽºÅ©¹Ù°¡ È­¸é ¿ÞÂÊ º¯¿¡ Á¤¹ÚµÇ¾î ÀÖ´Â °æ¿ì¸¦ ó¸®ÇÕ´Ï´Ù:
+k_WindowX += %k_WorkAreaLeft%
+
+; âÀÇ Y-À§Ä¡¸¦ °è»êÇÕ´Ï´Ù:
+k_WindowY = %k_WorkAreaBottom%
+k_WindowY -= %k_WindowHeight%
+
+WinMove, A,, %k_WindowX%, %k_WindowY%
+WinSet, AlwaysOnTop, On, ahk_id %k_ID%
+WinSet, TransColor, %TransColor% 220, ahk_id %k_ID%
+
+
+;---- ¸ðµç Å°¸¦ ÇÖÅ°·Î ¼³Á¤ÇÕ´Ï´Ù. ÂüÁ¶ www.asciitable.com
+k_n = 1
+k_ASCII = 45
+
+Loop
+{
+    Transform, k_char, Chr, %k_ASCII%
+    StringUpper, k_char, k_char
+    if k_char not in <,>,^,~,,`,
+        Hotkey, ~*%k_char%, k_KeyPress
+        ; À§¿¡¼­, º°Ç¥ Á¢µÎ ½Éº¼ ´öºÐ¿¡ »ç¿ëÀÚ°¡ Control°ú Shift °°Àº ¼ö½Ä Å°¸¦ ´©¸£°í ÀÖµç ¾øµç
+        ; Å°¸¦ ŽÁöÇÒ ¼ö ÀÖ½À´Ï´Ù.
+    if k_ASCII = 93
+        break
+    k_ASCII++
+}
+
+return ; ÀÚµ¿ ½ÇÇà ¼½¼ÇÀÇ ³¡.
+
+
+;---- »ç¿ëÀÚ°¡ Å°¸¦ ´©¸£¸é, È­¸é À§¿¡¼­ »óÀÀÇÏ´Â ¹öÆ°À» Ŭ¸¯ÇÕ´Ï´Ù:
+
+~*Backspace::
+ControlClick, Bk, ahk_id %k_ID%, , LEFT, 1, D
+KeyWait, Backspace
+ControlClick, Bk, ahk_id %k_ID%, , LEFT, 1, U
+return
+
+
+;  "Shift" ´ë½Å¿¡ LShift¿Í RShift¸¦ »ç¿ëÇÕ´Ï´Ù. ¿Ö³ÄÇϸé ÇÖÅ°·Î »ç¿ëµÉ ¶§,
+; "Shift"´Â ±âº»ÀûÀ¸·Î Å°¸¦ ¶¿ ¶§ Ã˹ߵDZ⠶§¹®ÀÔ´Ï´Ù (¿¹Àü AHK ¹öÀü¿¡¼­):
+~*LShift::
+~*RShift::
+~*LCtrl::  ; Control ´ë½Å¿¡ CtrlÀ» »ç¿ëÇØ¾ß ¹öÆ° À̸§¿¡ ºÎÇÕÇÒ ¼ö ÀÖ½À´Ï´Ù.
+~*RCtrl::
+~*LAlt::
+~*RAlt::
+~*LWin::
+~*RWin::
+StringTrimLeft, k_ThisHotkey, A_ThisHotkey, 3
+ControlClick, %k_ThisHotkey%, ahk_id %k_ID%, , LEFT, 1, D
+KeyWait, %k_ThisHotkey%
+ControlClick, %k_ThisHotkey%, ahk_id %k_ID%, , LEFT, 1, U
+return
+
+
+~*,::
+~*'::
+~*Space::
+~*Enter::
+~*Tab::
+k_KeyPress:
+StringReplace, k_ThisHotkey, A_ThisHotkey, ~
+StringReplace, k_ThisHotkey, k_ThisHotkey, *
+SetTitleMatchMode, 3  ; T Å°¿Í B Å°¸¦ Tab°ú Backspace·Î È¥µ¿ÇÏÁö ¾Êµµ·Ï ¹æÁöÇÕ´Ï´Ù.
+ControlClick, %k_ThisHotkey%, ahk_id %k_ID%, , LEFT, 1, D
+KeyWait, %k_ThisHotkey%
+ControlClick, %k_ThisHotkey%, ahk_id %k_ID%, , LEFT, 1, U
+Return
+
+
+k_ShowHide:
+if k_IsVisible = y
+{
+    Gui, Cancel
+    Menu, Tray, Rename, %k_MenuItemHide%, %k_MenuItemShow%
+    k_IsVisible = n
+}
+else
+{
+    Gui, Show
+    Menu, Tray, Rename, %k_MenuItemShow%, %k_MenuItemHide%
+    k_IsVisible = y
+}
+return
+
+
+GuiClose:
+k_MenuExit:
+ExitApp
+
+ + diff --git a/src/docs/scripts/MinimizeToTrayMenu.ahk b/src/docs/scripts/MinimizeToTrayMenu.ahk new file mode 100644 index 0000000..c493218 --- /dev/null +++ b/src/docs/scripts/MinimizeToTrayMenu.ahk @@ -0,0 +1,249 @@ +; Minimize Window to Tray Menu +; http://www.autohotkey.com +; This script assigns a hotkey of your choice to hide any window so that +; it becomes an entry at the bottom of the script's tray menu. Hidden +; windows can then be unhidden individually or all at once by selecting +; the corresponding item on the menu. If the script exits for any reason, +; all the windows that it hid will be unhidden automatically. + +; CHANGES: +; July 22, 2005 (changes provided by egilmour): +; - Added new hotkey to unhide the last hidden window (Win+U) +; +; November 3, 2004 (changes provided by trogdor): +; - Program manager is prevented from being hidden. +; - If there is no active window, the minimize-to-tray hotkey will have +; no effect rather than waiting indefinitely. +; +; October 23, 2004: +; - The taskbar is prevented from being hidden. +; - Some possible problems with long window titles have been fixed. +; - Windows without a title can be hidden without causing problems. +; - If the script is running under AHK v1.0.22 or greater, the +; maximum length of each menu item is increased from 100 to 260. + +; CONFIGURATION SECTION: Change the below values as desired. + +; This is the maximum number of windows to allow to be hidden (having a +; limit helps performance): +mwt_MaxWindows = 50 + +; This is the hotkey used to hide the active window: +mwt_Hotkey = #h ; Win+H + +; This is the hotkey used to unhide the last hidden window: +mwt_UnHotkey = #u ; Win+U + +; If you prefer to have the tray menu empty of all the standard items, +; such as Help and Pause, use N. Otherwise, use Y: +mwt_StandardMenu = N + +; These next few performance settings help to keep the action within the +; #HotkeyModifierTimeout period, and thus avoid the need to release and +; press down the hotkey's modifier if you want to hide more than one +; window in a row. These settings are not needed you choose to have the +; script use the keyboard hook via #InstallKeybdHook or other means: +#HotkeyModifierTimeout 100 +SetWinDelay 10 +SetKeyDelay 0 + +#SingleInstance ; Allow only one instance of this script to be running. + +; END OF CONFIGURATION SECTION (do not make changes below this point +; unless you want to change the basic functionality of the script). + +Hotkey, %mwt_Hotkey%, mwt_Minimize +Hotkey, %mwt_UnHotkey%, mwt_UnMinimize + +; If the user terminates the script by any means, unhide all the +; windows first: +OnExit, mwt_RestoreAllThenExit + +if mwt_StandardMenu = Y + Menu, Tray, Add +else +{ + Menu, Tray, NoStandard + Menu, Tray, Add, E&xit and Unhide All, mwt_RestoreAllThenExit +} +Menu, Tray, Add, &Unhide All Hidden Windows, mwt_RestoreAll +Menu, Tray, Add ; Another separator line to make the above more special. + +if a_AhkVersion = ; Since it's blank, version is older than 1.0.22. + mwt_MaxLength = 100 +else + mwt_MaxLength = 260 ; Reduce this to restrict the width of the menu. + +return ; End of auto-execute section. + + +mwt_Minimize: +if mwt_WindowCount >= %mwt_MaxWindows% +{ + MsgBox No more than %mwt_MaxWindows% may be hidden simultaneously. + return +} + +; Set the "last found window" to simplify and help performance. +; Since in certain cases it is possible for there to be no active window, +; a timeout has been added: +WinWait, A,, 2 +if ErrorLevel <> 0 ; It timed out, so do nothing. + return + +; Otherwise, the "last found window" has been set and can now be used: +WinGet, mwt_ActiveID, ID +WinGetTitle, mwt_ActiveTitle +WinGetClass, mwt_ActiveClass +if mwt_ActiveClass in Shell_TrayWnd,Progman +{ + MsgBox The desktop and taskbar cannot be hidden. + return +} +; Because hiding the window won't deactivate it, activate the window +; beneath this one (if any). I tried other ways, but they wound up +; activating the task bar. This way sends the active window (which is +; about to be hidden) to the back of the stack, which seems best: +Send, !{esc} +; Hide it only now that WinGetTitle/WinGetClass above have been run (since +; by default, those commands cannot detect hidden windows): +WinHide + +; If the title is blank, use the class instead. This serves two purposes: +; 1) A more meaningful name is used as the menu name. +; 2) Allows the menu item to be created (otherwise, blank items wouldn't +; be handled correctly by the various routines below). +if mwt_ActiveTitle = + mwt_ActiveTitle = ahk_class %mwt_ActiveClass% +; Ensure the title is short enough to fit. mwt_ActiveTitle also serves to +; uniquely identify this particular menu item. +StringLeft, mwt_ActiveTitle, mwt_ActiveTitle, %mwt_MaxLength% + +; In addition to the tray menu requiring that each menu item name be +; unique, it must also be unique so that we can reliably look it up in +; the array when the window is later unhidden. So make it unique if it +; isn't already: +Loop, %mwt_MaxWindows% +{ + if mwt_WindowTitle%a_index% = %mwt_ActiveTitle% + { + ; Match found, so it's not unique. + ; First remove the 0x from the hex number to conserve menu space: + StringTrimLeft, mwt_ActiveIDShort, mwt_ActiveID, 2 + StringLen, mwt_ActiveIDShortLength, mwt_ActiveIDShort + StringLen, mwt_ActiveTitleLength, mwt_ActiveTitle + mwt_ActiveTitleLength += %mwt_ActiveIDShortLength% + mwt_ActiveTitleLength += 1 ; +1 the 1 space between title & ID. + if mwt_ActiveTitleLength > %mwt_MaxLength% + { + ; Since menu item names are limted in length, trim the title + ; down to allow just enough room for the Window's Short ID at + ; the end of its name: + TrimCount = %mwt_ActiveTitleLength% + TrimCount -= %mwt_MaxLength% + StringTrimRight, mwt_ActiveTitle, mwt_ActiveTitle, %TrimCount% + } + ; Build unique title: + mwt_ActiveTitle = %mwt_ActiveTitle% %mwt_ActiveIDShort% + break + } +} + +; First, ensure that this ID doesn't already exist in the list, which can +; happen if a particular window was externally unhidden (or its app unhid +; it) and now it's about to be re-hidden: +mwt_AlreadyExists = n +Loop, %mwt_MaxWindows% +{ + if mwt_WindowID%a_index% = %mwt_ActiveID% + { + mwt_AlreadyExists = y + break + } +} + +; Add the item to the array and to the menu: +if mwt_AlreadyExists = n +{ + Menu, Tray, add, %mwt_ActiveTitle%, RestoreFromTrayMenu + mwt_WindowCount += 1 + Loop, %mwt_MaxWindows% ; Search for a free slot. + { + ; It should always find a free slot if things are designed right. + if mwt_WindowID%a_index% = ; An empty slot was found. + { + mwt_WindowID%a_index% = %mwt_ActiveID% + mwt_WindowTitle%a_index% = %mwt_ActiveTitle% + break + } + } +} +return + + +RestoreFromTrayMenu: +Menu, Tray, delete, %A_ThisMenuItem% +; Find window based on its unique title stored as the menu item name: +Loop, %mwt_MaxWindows% +{ + if mwt_WindowTitle%a_index% = %A_ThisMenuItem% ; Match found. + { + StringTrimRight, IDToRestore, mwt_WindowID%a_index%, 0 + WinShow, ahk_id %IDToRestore% + WinActivate ahk_id %IDToRestore% ; Sometimes needed. + mwt_WindowID%a_index% = ; Make it blank to free up a slot. + mwt_WindowTitle%a_index% = + mwt_WindowCount -= 1 + break + } +} +return + + +;; This will pop the last minimized window off the stack and unhide it. +mwt_UnMinimize: +;; Make sure there's something to unhide. +if mwt_WindowCount > 0 +{ + ;; Get the id of the last window minimized and unhide it + StringTrimRight, IDToRestore, mwt_WindowID%mwt_WindowCount%, 0 + WinShow, ahk_id %IDToRestore% + WinActivate ahk_id %IDToRestore% + + ;; Get the menu name of the last window minimized and remove it + StringTrimRight, MenuToRemove, mwt_WindowTitle%mwt_WindowCount%, 0 + Menu, Tray, delete, %MenuToRemove% + + ;; clean up our 'arrays' and decrement the window count + mwt_WindowID%mwt_WindowCount% = + mwt_WindowTitle%mwt_WindowCount% = + mwt_WindowCount -= 1 +} +return + + +mwt_RestoreAllThenExit: +Gosub, mwt_RestoreAll +ExitApp ; Do a true exit. + + +mwt_RestoreAll: +Loop, %mwt_MaxWindows% +{ + if mwt_WindowID%a_index% <> + { + StringTrimRight, IDToRestore, mwt_WindowID%a_index%, 0 + WinShow, ahk_id %IDToRestore% + WinActivate ahk_id %IDToRestore% ; Sometimes needed. + ; Do it this way vs. DeleteAll so that the sep. line and first + ; item are retained: + StringTrimRight, MenuToRemove, mwt_WindowTitle%a_index%, 0 + Menu, Tray, delete, %MenuToRemove% + mwt_WindowID%a_index% = ; Make it blank to free up a slot. + mwt_WindowTitle%a_index% = + mwt_WindowCount -= 1 + } + if mwt_WindowCount = 0 + break +} +return diff --git a/src/docs/scripts/MinimizeToTrayMenu.htm b/src/docs/scripts/MinimizeToTrayMenu.htm new file mode 100644 index 0000000..b13fbdb --- /dev/null +++ b/src/docs/scripts/MinimizeToTrayMenu.htm @@ -0,0 +1,261 @@ + + +Minimize Window to Tray Menu + + + + + + + +

âÀ» Æ®·¹ÀÌ ¸Þ´º·Î ÃÖ¼ÒÈ­Çϱâ

+ +

ÀÌ ½ºÅ©¸³Æ®´Â ¿©·¯ºÐÀÌ ¼±ÅÃÇÑ ÇÖÅ°¸¦ âÀ» °¨Ãß´Â µ¥ ÇÒ´çÇÕ´Ï´Ù. âÀº ½ºÅ©¸³Æ®ÀÇ Æ®·¹ÀÌ ¸Þ´º ¾Æ·¡¿¡ ¿£Æ®¸®°¡ µË´Ï´Ù. ¼ûÀº âµéÀº °³º°ÀûÀ¸·Î ¶Ç´Â ÇÑ ²¨¹ø¿¡ ¸Þ´º¿¡¼­ »óÀÀÇÏ´Â Ç׸ñÀ» ¼±ÅÃÇØ º¸¿©ÁÙ ¼ö ÀÖ½À´Ï´Ù. ½ºÅ©¸³Æ®°¡ ¾î¶² ÀÌÀ¯·Î Á¾·áÇϸé, ¼û°ÜÁø ¸ðµç âÀº ÀÚµ¿À¸·Î ¼û±è ÇØÁ¦µË´Ï´Ù. +

+

ÀÌ ½ºÅ©¸³Æ® ³»·Á¹Þ±â  |  ´Ù¸¥ »ùÇà ½ºÅ©¸³Æ®  |  È¨À¸·Î

+ +
; º¯°æ ÀÌ·Â:
+; July 22, 2005 (egilmour°¡ Á¦°øÇÑ º¯°æ):
+; - ¸¶Áö¸· ¼ûÀº âÀ» º¸¿©ÁÙ »õ ÇÖÅ° Ãß°¡ (Win+U)
+;
+; November 3, 2004 (trogdor°¡ Á¦°øÇÑ º¯°æ):
+; - ÇÁ·Î±×·¥ °ü¸®ÀÚ°¡ ¼ûÁö ¸øÇϵµ·Ï ¹æÁö.
+; - È°¼º âÀÌ ¾ø´Ù¸é, minimize-to-tray ÇÖÅ°°¡ ¹«ÇÑÁ¤ ±â´Ù¸®´Â ´ë½Å¿¡
+;   ¾Æ¹« È¿°ú°¡ ¾øµµ·Ï º¯°æ.
+;
+; October 23, 2004:
+; - ŽºÅ©¹Ù°¡ ¼ûÁö ¸øÇϵµ·Ï ¹æÁö.
+; - â Á¦¸ñÀÌ ±ä°æ¿ì ¹ß»ý °¡´ÉÇÑ ¹®Á¦µéÀÌ ÇØ°áµÊ.
+; - Á¦¸ñ ¾ø´Â âµµ ¾Æ¹« ¹®Á¦ ¾øÀÌ ¼û±æ ¼ö ÀÖÀ½.
+; - ½ºÅ©¸³Æ®°¡  AHK v1.0.22 À̻󿡼­ ½ÇÇà ÁßÀ̸é,
+;   °¢ ¸Þ´º Ç׸ñÀÇ ÃÖ´ë ±æÀÌÀ» 100¿¡¼­ 260À¸·Î ´Ã¸².
+
+; CONFIGURATION SECTION: ¾Æ·¡ÀÇ °ªÀ» ÀÔ¸À¿¡ ¸Â°Ô ¹Ù²Ù½Ê½Ã¿À.
+
+; ´ÙÀ½Àº ¼û±â±â¸¦ Çã¿ëÇÒ Ã¢ÀÇ ÃÖ´ë °³¼öÀÔ´Ï´Ù.
+; (Á¦ÇÑÀ» µÎ¸é ¼öÇ༺´ÉÀÌ Çâ»óµË´Ï´Ù):
+mwt_MaxWindows = 50
+
+; È°¼º âÀ» °¨Ãߴµ¥ »ç¿ëµÇ´Â ÇÖÅ°ÀÔ´Ï´Ù:
+mwt_Hotkey = #h  ; Win+H
+
+; ¸¶Áö¸· ¼û±è âÀ» º¸¿©ÁÖ´Â µ¥ »ç¿ëµÇ´Â ÇÖÅ°ÀÔ´Ï´Ù:
+mwt_UnHotkey = #u  ; Win+U
+
+; Æ®·¹ÀÌ ¸Þ´º¿¡¼­ ¸ðµç Ç¥ÁØ Ç׸ñÀ» ºñ¿ì·Á¸é,
+; ¿¹¸¦ µé¾î Help ±×¸®°í Pause¸¦ ºñ¿ì·Á¸é, NÀ» »ç¿ëÇϽʽÿÀ. ±×·¸Áö ¾ÊÀ¸¸é, Y¸¦ »ç¿ëÇϽʽÿÀ:
+mwt_StandardMenu = N
+
+; ´ÙÀ½ÀÇ ¸î °¡Áö ¼öÇ༺´ÉÀ» À§ÇÑ ¼³Á¤Àº 
+; #HotkeyModifierTimeout ½Ã°£ ¾È¿¡ Á¶Ä¡¸¦ ¸¶Ä¡´Â µ¥ µµ¿òÀÌ µË´Ï´Ù. 
+; ±×¸®ÇÏ¿© ÁÖ¿í ´Ã¾î¼± ¿©·¯ âÀ» ÀÏ·Ä·Î °¨Ãß±â À§ÇØ
+;  ÇÖÅ°ÀÇ ¼ö½ÄÀÚ¸¦ ¶¼°í ´©¸¦ ÇÊ¿ä°¡ ¾ø½À´Ï´Ù. 
+; ´ÙÀ½°ú °°ÀÌ ¼³Á¤Çϸé #InstallKeybdHook ¶Ç´Â ±âŸ ¼ö´ÜÀ» ÅëÇÏ¿©
+; ½ºÅ©¸³Æ®¿¡ Å°º¸µå °¥°í¸®¸¦ »ç¿ëÇÒ ÇÊ¿ä°¡ ¾ø½À´Ï´Ù:
+#HotkeyModifierTimeout 100
+SetWinDelay 10
+SetKeyDelay 0
+
+#SingleInstance  ; ÀÌ ½ºÅ©¸³Æ®ÀÇ ½Çü°¡ Çϳª¸¸ ½ÇÇàµÇµµ·Ï Çã¿ëÇÕ´Ï´Ù.
+
+; END OF CONFIGURATION SECTION (ÀÌ ½ÃÁ¡ºÎÅÍ º¯°æÇÏÁö ¸¶½Ê½Ã¿À
+; ´Ü, ½ºÅ©¸³Æ®ÀÇ ±âº» ±â´ÉÀ» º¯°æÇÏ°í ½ÍÀº °æ¿ì´Â ¿¹¿ÜÀÔ´Ï´Ù).
+
+Hotkey, %mwt_Hotkey%, mwt_Minimize
+Hotkey, %mwt_UnHotkey%, mwt_UnMinimize
+
+; »ç¿ëÀÚ°¡ ¾î¶² ¼ö´ÜÀ¸·Î ½ºÅ©¸³Æ®¸¦ Á¾·áÇϸé, 
+; ¸ðµç âÀ» ¸ÕÀú ´Ý½À´Ï´Ù:
+OnExit, mwt_RestoreAllThenExit
+
+if mwt_StandardMenu = Y
+    Menu, Tray, Add
+else
+{
+    Menu, Tray, NoStandard
+    Menu, Tray, Add, E&xit and Unhide All, mwt_RestoreAllThenExit
+}
+Menu, Tray, Add, &Unhide All Hidden Windows, mwt_RestoreAll
+Menu, Tray, Add  ; À§ Ç׸ñÀ» ´õ Ưº°ÇÏ°Ô ¸¸µé¾î ÁÙ ¶Ç´Ù¸¥ °¡¸§ ÁÙ.
+
+if a_AhkVersion =   ; ºñ¾î ÀÖÀ¸¹Ç·Î, ¹öÀüÀÌ 1.0.22 ¹Ì¸¸ÀÔ´Ï´Ù.
+    mwt_MaxLength = 100
+else
+    mwt_MaxLength = 260  ; À̸¦ ÁÙÀÌ¸é ¸Þ´ºÀÇ ³Êºñ¸¦ Á¦ÇÑÇÒ ¼ö ÀÖ½À´Ï´Ù.
+
+return  ; ÀÚµ¿ ½ÇÇà ¼½¼ÇÀÇ ³¡.
+
+
+mwt_Minimize:
+if mwt_WindowCount >= %mwt_MaxWindows%
+{
+    MsgBox No more than %mwt_MaxWindows% may be hidden simultaneously.
+    return
+}
+
+; "¸¶Áö¸·À¸·Î ¹ß°ßµÈ â"À» ¼³Á¤ÇØ ¼öÇ༺´ÉÀ» °³¼±ÇÏ°í ÀÏÀ» °£´ÜÇÏ°Ô ¸¸µì´Ï´Ù.
+; ¾î¶² °æ¿ì È°¼º âÀÌ ¾øÀ» ¼ö ÀÖÀ¸¹Ç·Î,
+; ½Ã°£Á¦ÇÑÀ» Ãß°¡Çß½À´Ï´Ù:
+WinWait, A,, 2
+if ErrorLevel <> 0  ; ½ÃÇÑ Á¾·á, ±×·¡¼­ ¾Æ¹«°Íµµ ÇÏÁö ¾Ê½À´Ï´Ù.
+    return
+
+; ±×·¸Áö ¾ÊÀ¸¸é, "¸¶Áö¸· ¹ß°ß â"À» ¼³Á¤ÇÏ°í ÀÌÁ¦ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù:
+WinGet, mwt_ActiveID, ID
+WinGetTitle, mwt_ActiveTitle
+WinGetClass, mwt_ActiveClass
+if mwt_ActiveClass in Shell_TrayWnd,Progman
+{
+    MsgBox The desktop and taskbar cannot be hidden.
+    return
+}
+; âÀ» °¨Ã߾ ºñÈ°¼ºÈ­µÇ´Â °ÍÀº ¾Æ´Ï±â ¶§¹®¿¡,
+; ÀÌ Ã¢ ¾Æ·¡ÀÇ Ã¢À» È°¼ºÈ­ ÇÕ´Ï´Ù. ´Ù¸¥ ¹æ¹ýÀ» ½ÃµµÇßÁö¸¸, °á°úÀûÀ¸·Î
+; ŽºÅ© ¹Ù°¡ È°¼ºÈ­µÇ¾ú½À´Ï´Ù. ÀÌ·± ½ÄÀ¸·Î (¼û±â ¹Ù·Î Á÷ÀüÀÇ) È°¼º âÀ» 
+; ½ºÅà µÚ·Î ¹Ð¾î ¹ö¸®´Â ÆíÀÌ °¡Àå ÁÁÀº µí º¸ÀÔ´Ï´Ù:
+Send, !{esc}
+; Hide it only now that WinGetTitle/WinGetClass above have been run
+; (±âº»ÀûÀ¸·Î, ±×·± ¸í·É¾îµéÀº ¼ûÀº âÀ» ŽÁöÇÒ ¼ö ¾ø±â ¶§¹®ÀÔ´Ï´Ù):
+WinHide
+
+; Á¦¸ñÀÌ ºñ¾î ÀÖÀ¸¸é, ´ë½Å¿¡ Ŭ·¡½º¸¦ »ç¿ëÇϽʽÿÀ. ÀÌ°ÍÀº µÎ °¡Áö ¸ñÀûÀ¸·Î ±â¿©ÇÕ´Ï´Ù:
+; 1) ´õ ÀÇ¹Ì ÀÖ´Â À̸§ÀÌ ¸Þ´º À̸§À¸·Î »ç¿ëµË´Ï´Ù.
+; 2) ¸Þ´º Ç׸ñÀ» »ý¼ºÇÒ ¼ö ÀÖ½À´Ï´Ù
+;     (±×·¸Áö ¾ÊÀ¸¸é, ºó Ç׸ñÀ» ¾Æ·¡ÀÇ ´Ù¾çÇÑ ·çƾ¿¡¼­ Á¦´ë·Î ´Ù·ê ¼ö ¾ø½À´Ï´Ù).
+if mwt_ActiveTitle =
+    mwt_ActiveTitle = ahk_class %mwt_ActiveClass%
+; Á¦¸ñÀÌ ±æÀÌ°¡ ªÀºÁö È®ÀÎÇÕ´Ï´Ù. 
+; mwt_ActiveTitleµµ ¿ª½Ã ÀÌ Æ¯Á¤ÇÑ ¸Þ´º Ç׸ñÀ» À¯ÀÏÇÏ°Ô ½Äº°ÇÏ´Â µ¥ ±â¿©ÇÕ´Ï´Ù.
+StringLeft, mwt_ActiveTitle, mwt_ActiveTitle, %mwt_MaxLength%
+
+; Æ®·¹ÀÌ ¸Þ´º°¡ °¢ ¸Þ´º À̸§ÀÌ À¯ÀÏÇϱ⸦ ¿ä±¸ÇÏ´Â ¿Ü¿¡µµ
+; ¸Þ´º À̸§ÀÌ À¯ÀÏÇؾ߸¸ ³ªÁß¿¡ âÀÌ ¼ûÀ» ¶§ 
+; ¹è¿­¿¡¼­ ¾ÈÀüÇÏ°Ô Ã£À» ¼ö ÀÖ½À´Ï´Ù.
+; ±×·¡¼­ ¾ÆÁ÷ ±×·¸Áö ¾Ê´Ù¸é À¯ÀÏÇÏ°Ô ¸¸µå½Ê½Ã¿À:
+Loop, %mwt_MaxWindows%
+{
+    if mwt_WindowTitle%a_index% = %mwt_ActiveTitle%
+    {
+        ; ºÎÇÕÀÌ ¹ß°ßµÊ. ±×·¡¼­ À¯ÀÏÇÑ °ÍÀÌ ¾Æ´Õ´Ï´Ù.
+        ; ¸ÕÀú 0x¸¦ ½ÊÀ°Áø ¼ö¿¡¼­ Á¦°ÅÇØ ¸Þ´º °ø°£À» º¸Á¸ÇÕ´Ï´Ù:
+        StringTrimLeft, mwt_ActiveIDShort, mwt_ActiveID, 2
+        StringLen, mwt_ActiveIDShortLength, mwt_ActiveIDShort
+        StringLen, mwt_ActiveTitleLength, mwt_ActiveTitle
+        mwt_ActiveTitleLength += %mwt_ActiveIDShortLength%
+        mwt_ActiveTitleLength += 1 ; +1 the 1 space between title & ID.
+        if mwt_ActiveTitleLength > %mwt_MaxLength%
+        {
+            ; ¸Þ´º À̸§ÀÌ ±æÀÌ¿¡ Á¦ÇÑÀÌ Àֱ⠶§¹®¿¡,
+            ; Á¦¸ñÀ» ´Ùµë¾î ±×ÀÇ À̸§ µÚ¿¡
+            ; âÀÇ Short ID¸¦ À§ÇÑ ÃæºÐÇÑ °ø°£À» È®º¸ÇÕ´Ï´Ù:
+            TrimCount = %mwt_ActiveTitleLength%
+            TrimCount -= %mwt_MaxLength%
+            StringTrimRight, mwt_ActiveTitle, mwt_ActiveTitle, %TrimCount%
+        }
+        ; À¯ÀÏÇÑ Á¦¸ñÀ» ºôµåÇÕ´Ï´Ù:
+        mwt_ActiveTitle = %mwt_ActiveTitle% %mwt_ActiveIDShort%
+        break
+    }
+}
+
+; ¸ÕÀú, ÀÌ ID°¡ ¸®½ºÆ®¿¡ ÀÌ¹Ì Á¸ÀçÇÏÁö ¾Ê´ÂÁö È®ÀÎÇÕ´Ï´Ù.
+; ÀÌ·± ÀÏÀº ƯÁ¤ âÀÌ ¿ÜºÎÀûÀ¸·Î º¸ÀÌ°Ô µÇ¸é (¶Ç´Â ±×ÀÇ ¾îÇø®ÄÉÀ̼ÇÀÌ ¼û±èÀ» ÇØÁ¦Çϸé
+; ÀϾ ¼ö ÀÖ½À´Ï´Ù. ±×¸®°í ÀÌÁ¦ ´Ù½Ã ¼û±â ÀϺ¸ Á÷ÀüÀÔ´Ï´Ù:
+mwt_AlreadyExists = n
+Loop, %mwt_MaxWindows%
+{
+    if mwt_WindowID%a_index% = %mwt_ActiveID%
+    {
+        mwt_AlreadyExists = y
+        break
+    }
+}
+
+; Ç׸ñÀ» Æ®·¹ÀÌ¿Í ¸Þ´º¿¡ Ãß°¡ÇÕ´Ï´Ù:
+if mwt_AlreadyExists = n
+{
+    Menu, Tray, add, %mwt_ActiveTitle%, RestoreFromTrayMenu
+    mwt_WindowCount += 1
+    Loop, %mwt_MaxWindows%  ; Search for a free slot.
+    {
+        ; ¿Ã¹Ù¸£°Ô ¼³°èµÇ¾ú´Ù¸é ¾ðÁ¦³ª ºó °ø°£À» ãÀ» ¼ö ÀÖÀ» °ÍÀÔ´Ï´Ù.
+        if mwt_WindowID%a_index% =  ; ºó ½½·ÔÀÌ ¹ß°ßµÇ¾ú½À´Ï´Ù.
+        {
+            mwt_WindowID%a_index% = %mwt_ActiveID%
+            mwt_WindowTitle%a_index% = %mwt_ActiveTitle%
+            break
+        }
+    }
+}
+return
+
+
+RestoreFromTrayMenu:
+Menu, Tray, delete, %A_ThisMenuItem%
+; ¸Þ´º Ç׸ñ À̸§À¸·Î ÀúÀåµÈ À¯ÀÏÇÑ Á¦¸ñ¿¡ ±â¹ÝÇÏ¿© âÀ» ã½À´Ï´Ù:
+Loop, %mwt_MaxWindows%
+{
+    if mwt_WindowTitle%a_index% = %A_ThisMenuItem%  ; ºÎÇÕ ¹ß°ß.
+    {
+        StringTrimRight, IDToRestore, mwt_WindowID%a_index%, 0
+        WinShow, ahk_id %IDToRestore%
+        WinActivate ahk_id %IDToRestore%  ; Á¾Á¾ ÇÊ¿ä.
+        mwt_WindowID%a_index% =  ; ºñ¿ö¼­ ½½·ÔÀ» Ç®¾îÁÝ´Ï´Ù.
+        mwt_WindowTitle%a_index% =
+        mwt_WindowCount -= 1
+        break
+    }
+}
+return
+
+
+;; ´ÙÀ½Àº ¸¶Áö¸· ÃÖ¼ÒÈ­ âÀ» ½ºÅÿ¡¼­ ²¨³» º¸¿©ÁÝ´Ï´Ù.
+mwt_UnMinimize:
+;; ´õ ÀÌ»ó º¸¿©ÁÙ °ÍÀÌ ¾ø´ÂÁö È®ÀÎÇÕ´Ï´Ù.
+if mwt_WindowCount > 0 
+{
+    ;; ¸¶Áö¸· ÃÖ¼Ò Ã¢ÀÇ id¸¦ ¾ò¾î ±×°ÍÀ» º¸¿©ÁÝ´Ï´Ù
+    StringTrimRight, IDToRestore, mwt_WindowID%mwt_WindowCount%, 0
+    WinShow, ahk_id %IDToRestore%
+    WinActivate ahk_id %IDToRestore%
+    
+    ;; ¸¶Áö¸· ÃÖ¼Ò Ã¢ÀÇ ¸Þ´º À̸§À» ¾ò¾î ±×°ÍÀ» Á¦°ÅÇÕ´Ï´Ù
+    StringTrimRight, MenuToRemove, mwt_WindowTitle%mwt_WindowCount%, 0
+    Menu, Tray, delete, %MenuToRemove%
+    
+    ;; ¿ì¸®ÀÇ '¹è¿­'À» Á¤¸®ÇÏ°í â °³¼ö¸¦ ÁÙÀÔ´Ï´Ù
+    mwt_WindowID%mwt_WindowCount% =
+    mwt_WindowTitle%mwt_WindowCount% = 
+    mwt_WindowCount -= 1
+}
+return
+
+
+mwt_RestoreAllThenExit:
+Gosub, mwt_RestoreAll
+ExitApp  ; ÁøÂ¥·Î Á¾·áÇÕ´Ï´Ù.
+
+
+mwt_RestoreAll:
+Loop, %mwt_MaxWindows%
+{
+    if mwt_WindowID%a_index% <>
+    {
+        StringTrimRight, IDToRestore, mwt_WindowID%a_index%, 0
+        WinShow, ahk_id %IDToRestore%
+        WinActivate ahk_id %IDToRestore%  ; Á¾Á¾ ÇÊ¿äÇÔ.
+        ; ÀÌ·± ½ÄÀ¸·Î Çϰųª vs. ¸ðµÎ Áö¿ó´Ï´Ù(DeleteAll)
+        ; °¡¸§ ÁÙ°ú ù Ç׸ñÀº ±×´ë·Î µÓ´Ï´Ù:
+        StringTrimRight, MenuToRemove, mwt_WindowTitle%a_index%, 0
+        Menu, Tray, delete, %MenuToRemove%
+        mwt_WindowID%a_index% =  ; ºñ¿ö¼­ ½½·ÔÀ» Ç®¾î ÁÝ´Ï´Ù.
+        mwt_WindowTitle%a_index% =
+        mwt_WindowCount -= 1
+    }
+    if mwt_WindowCount = 0
+        break
+}
+return
+
+ + diff --git a/src/docs/scripts/MouseGestures.htm b/src/docs/scripts/MouseGestures.htm new file mode 100644 index 0000000..63fb15b --- /dev/null +++ b/src/docs/scripts/MouseGestures.htm @@ -0,0 +1,19 @@ + + +Mouse Gestures -- by deguix + + + + + + + +

¸¶¿ì½º Á¦½ºÃÄ -- by deguix

+ +

+ÀÌ ½ºÅ©¸³Æ®´Â ¿À¸¥ÂÊ ¹öÆ°ÀÌ ´­·Á ÀÖ´Â µ¿¾È ¸¶¿ì½º¸¦ ¾î¶»°Ô À̵¿ÇÏ´ÂÁö °¨½ÃÇÕ´Ï´Ù. ¸¸¾à "±×¸®±â"¸¦ º¸°í ¾Ë°í ÀÖ´Â ¸ð¾çÀ̳ª ½Éº¼À» ¹ß°ßÇϸé, ÇÁ·Î±×·¥À» ±âµ¿Çϰųª (¸¶Ä¡ ÇÖŰó·³) ¼±Åÿ¡ µû¶ó ´Ù¸¥ Á¶Ä¡¸¦ ¼öÇàÇÕ´Ï´Ù. Á¦½ºÃĸ¦ Á¤ÀÇÇÏ´Â ¹ýÀº µ¿ºÀµÈ README ÆÄÀÏÀ» ÂüÁ¶ÇϽʽÿÀ. +

+

ÀÌ ½ºÅ©¸³Æ® ³»·Á¹Þ±â (17 KB Zip File)  |  ´Ù¸¥ »ùÇà ½ºÅ©¸³Æ®  |  È¨À¸·Î

+ + + diff --git a/src/docs/scripts/MouseGestures.zip b/src/docs/scripts/MouseGestures.zip new file mode 100644 index 0000000..7183244 Binary files /dev/null and b/src/docs/scripts/MouseGestures.zip differ diff --git a/src/docs/scripts/MsgBoxButtonNames.ahk b/src/docs/scripts/MsgBoxButtonNames.ahk new file mode 100644 index 0000000..06263e8 --- /dev/null +++ b/src/docs/scripts/MsgBoxButtonNames.ahk @@ -0,0 +1,24 @@ +; Changing MsgBox's Button Names +; http://www.autohotkey.com +; This is a working example script that uses a timer to change +; the names of the buttons in a MsgBox dialog. Although the button +; names are changed, the IfMsgBox command still requires that the +; buttons be referred to by their original names. + +#SingleInstance +SetTimer, ChangeButtonNames, 50 +MsgBox, 4, Add or Delete, Choose a button: +IfMsgBox, YES + MsgBox, You chose Add. +else + MsgBox, You chose Delete. +return + +ChangeButtonNames: +IfWinNotExist, Add or Delete + return ; Keep waiting. +SetTimer, ChangeButtonNames, off +WinActivate +ControlSetText, Button1, &Add +ControlSetText, Button2, &Delete +return diff --git a/src/docs/scripts/MsgBoxButtonNames.htm b/src/docs/scripts/MsgBoxButtonNames.htm new file mode 100644 index 0000000..b0838eb --- /dev/null +++ b/src/docs/scripts/MsgBoxButtonNames.htm @@ -0,0 +1,36 @@ + + +Changing MsgBox's Button Names + + + + + + + +

MsgBoxÀÇ ¹öÆ° À̸§ ¹Ù²Ù±â

+ +

´ÙÀ½Àº ŸÀ̸Ӹ¦ »ç¿ëÇÏ¿© MsgBox ´ëÈ­»óÀÚÀÇ ¹öÆ° À̸§À» ¹Ù²Ù´Â ¿¹Á¦ÀÔ´Ï´Ù. ¹öÆ° À̸§Àº ¹Ù²î´õ¶óµµ, IfMsgBox ¸í·É¾î´Â ¿©ÀüÈ÷ ¹öÆ°ÀÌ ±×ÀÇ ¿ø·¡ À̸§À¸·Î ÂüÁ¶µÇ±â¸¦ ¿ä±¸ÇÕ´Ï´Ù. +

+

ÀÌ ½ºÅ©¸³Æ® ³»·Á¹Þ±â  |  ´Ù¸¥ »ùÇà ½ºÅ©¸³Æ®  |  È¨À¸·Î

+ +
#SingleInstance
+SetTimer, ChangeButtonNames, 50 
+MsgBox, 4, Add or Delete, Choose a button:
+IfMsgBox, YES 
+    MsgBox, You chose Add. 
+else 
+    MsgBox, You chose Delete. 
+return 
+
+ChangeButtonNames: 
+IfWinNotExist, Add or Delete
+    return  ; °è¼Ó ´ë±â.
+SetTimer, ChangeButtonNames, off 
+WinActivate 
+ControlSetText, Button1, &Add 
+ControlSetText, Button2, &Delete 
+return
+
+ + diff --git a/src/docs/scripts/Numpad000.ahk b/src/docs/scripts/Numpad000.ahk new file mode 100644 index 0000000..7ce016a --- /dev/null +++ b/src/docs/scripts/Numpad000.ahk @@ -0,0 +1,61 @@ +; Numpad 000 Key +; http://www.autohotkey.com +; This example script makes the special 000 key that appears on certain +; keypads into an equals key. You can change the action by replacing the +; “Send, =” line with line(s) of your choice. + +#MaxThreadsPerHotkey 5 ; Allow multiple threads for this hotkey. +$Numpad0:: +#MaxThreadsPerHotkey 1 +; Above: Use the $ to force the hook to be used, which prevents an +; infinite loop since this subroutine itself sends Numpad0, which +; would otherwise result in a recursive call to itself. +SetBatchLines, 100 ; Make it run a little faster in this case. +DelayBetweenKeys = 30 ; Adjust this value if it doesn't work. +if A_PriorHotkey = %A_ThisHotkey% +{ + if A_TimeSincePriorHotkey < %DelayBetweenKeys% + { + if Numpad0Count = + Numpad0Count = 2 ; i.e. This one plus the prior one. + else if Numpad0Count = 0 + Numpad0Count = 2 + else + { + ; Since we're here, Numpad0Count must be 2 as set by + ; prior calls, which means this is the third time the + ; the key has been pressed. Thus, the hotkey sequence + ; should fire: + Numpad0Count = 0 + Send, = ; ******* This is the action for the 000 key + } + ; In all the above cases, we return without further action: + CalledReentrantly = y + return + } +} +; Otherwise, this Numpad0 event is either the first in the series +; or it happened too long after the first one (e.g. perhaps the +; user is holding down the Numpad0 key to auto-repeat it, which +; we want to allow). Therefore, after a short delay -- during +; which another Numpad0 hotkey event may re-entrantly call this +; subroutine -- we'll send the key on through if no reentrant +; calls occurred: +Numpad0Count = 0 +CalledReentrantly = n +; During this sleep, this subroutine may be reentrantly called +; (i.e. a simultaneous "thread" which runs in parallel to the +; call we're in now): +Sleep, %DelayBetweenKeys% +if CalledReentrantly = y ; Another "thread" changed the value. +{ + ; Since it was called reentrantly, this key event was the first in + ; the sequence so should be suppressed (hidden from the system): + CalledReentrantly = n + return +} +; Otherwise it's not part of the sequence so we send it through normally. +; In other words, the *real* Numpad0 key has been pressed, so we want it +; to have its normal effect: +Send, {Numpad0} +return diff --git a/src/docs/scripts/Numpad000.htm b/src/docs/scripts/Numpad000.htm new file mode 100644 index 0000000..063d474 --- /dev/null +++ b/src/docs/scripts/Numpad000.htm @@ -0,0 +1,74 @@ + + +Numpad 000 Key + + + + + + + +

Numpad 000 Key

+ +

ÀÌ ¿¹Á¦ ½ºÅ©¸³Æ®´Â ¾î¶² Å°º¸µå¿¡ ³ªÅ¸³ª´Â Ư¼öÇÑ 000 Å°¸¦ µîÈ£ Å°·Î º¯½Å½Ãŵ´Ï´Ù. ÇàÀ§¸¦ ¹Ù²Ù·Á¸é + Send, = ÁÙÀ» ¿©·¯ºÐÀÇ ±âÈ£´ë·Î º¯°æÇϽʽÿÀ. +

+

ÀÌ ½ºÅ©¸³Æ® ³»·Á ¹Þ±â  |  ´Ù¸¥ »ùÇà ½ºÅ©¸³Æ®  |  È¨À¸·Î

+ +
#MaxThreadsPerHotkey 5  ; ÀÌ ÇÖÅ°¿¡ ´ëÇÏ¿© ¿©·¯ ¾²·¹µå¸¦ Çã¿ëÇÕ´Ï´Ù.
+$Numpad0::
+#MaxThreadsPerHotkey 1
+; À§¿¡¼­: $¸¦ »ç¿ëÇØ °¥°í¸® »ç¿ëÀ» °­Á¦ÇÕ´Ï´Ù. ÀÌ·¸°Ô ÇÏ¸é ¹«ÇÑ È¸µ¹À̸¦ ¹æÁöÇÕ´Ï´Ù.
+; ¼­ºê·çƾ ÀÚü°¡ Numpad0¸¦ Àü¼ÛÇϱ⠶§¹®Àε¥, ÀÌ ¶§¹®¿¡
+; ÀÚ±â ÀÚ½ÅÀ» È£ÃâÇÏ´Â ¹«ÇÑ Àç±Í¿¡ ºüÁú ¼ö ÀÖ½À´Ï´Ù.
+SetBatchLines, 100 ; ÀÌ °æ¿ì ¾à°£ ´õ »¡¸® ½ÇÇàÇϵµ·Ï ¸¸µì´Ï´Ù.
+DelayBetweenKeys = 30 ; ÀÛµ¿ÇÏÁö ¾ÊÀ» °æ¿ì ÀÌ °ªÀ» Á¶ÀýÇÕ´Ï´Ù.
+if A_PriorHotkey = %A_ThisHotkey%
+{
+    if A_TimeSincePriorHotkey < %DelayBetweenKeys%
+    {
+        if Numpad0Count =
+            Numpad0Count = 2 ; Áï, ¾Õ¿¡ °Í¿¡´Ù ÀÌ°ÍÀ» ´õÇÑ °ÍÀÔ´Ï´Ù.
+        else if Numpad0Count = 0
+            Numpad0Count = 2
+        else
+        {
+            ; ¿©±â¿¡ ÀÖÀ¸¹Ç·Î, Numpad0Count°¡ ÀÌÀü È£Ãâ¿¡¼­
+            ; ¹Ýµå½Ã 2·Î ¼³Á¤µÇ¾î ÀÖ¾î¾ß ÇÕ´Ï´Ù.
+            ; Áï, ÀÌ ¹ø¿¡ Å°°¡ ¼¼ ¹ø° ´­¸° °ÍÀ̶ó´Â ¶æÀÔ´Ï´Ù
+            ; ±×·¯¹Ç·Î, ÇÖÅ° ¿¬¼Ó¿­ÀÌ Ã˹ߵǾî¾ß ÇÕ´Ï´Ù:
+            Numpad0Count = 0
+            Send, = ; ******* ÀÌ°ÍÀÌ 000 Å°¿¡ ´ëÇÑ Á¶Ä¡ÀÔ´Ï´Ù
+        }
+        ; À§ÀÇ ¸ðµç °æ¿ì¿¡, ´õ ÀÌ»ó Á¶Ä¡ ¾øÀÌ µ¹¾Æ°©´Ï´Ù:
+        CalledReentrantly = y
+        return
+    }
+}
+; ±×·¸Áö ¾ÊÀ¸¸é, ÀÌ Numpad0 À̺¥Æ®´Â ÀÏ·ÃÀÇ ¿¬¼Ó¿¡¼­ ù ¹ø°À̰ųª
+; ¾Æ´Ï¸é ¾î¼´Ù°¡ ù ¹ø° À̺¥Æ® ´ÙÀ½¿¡ ³Ê¹« ¿À·¡ °É¸° °ÍÀÔ´Ï´Ù.
+; (¿¹, »ç¿ëÀÚ°¡ Numpad0 Å°¸¦ °è¼Ó ´­·¯¼­ ÀÚµ¿ ¹Ýº¹À» ÇÏ´Â °æ¿ì°¡ ±×·²ÅÙµ¥, 
+; ÀÌ°ÍÀ» Çã¿ëÇÏ°í ½ÍÀº °ÍÀÔ´Ï´Ù).  ±×·¯¹Ç·Î, ªÀº Áö¿¬ ½Ã°£ ÈÄ¿¡
+; -- ±× »çÀÌ¿¡ ¶Ç´Ù¸¥ Numpad0 ÇÖÅ° À̺¥Æ®°¡ ÀçÁøÀÔÇÏ¿©
+;  ÀÌ ¼­ºê·çƾÀ» È£ÃâÇÒ ¼öµµ ÀÖÁö¸¸ -- 
+; ÀçÁøÀÔ È£ÃâÀÌ ÀϾÁö¸¸ ¾Ê´Â´Ù¸é ±× Å°¸¦ °è¼Ó º¸³À´Ï´Ù:
+Numpad0Count = 0
+CalledReentrantly = n
+; ÀÌ·¸°Ô ÀÚ´Â µ¿¾È, ÀÌ ¼­ºê·çƾÀº ÀçÁøÀÔ È£ÃâµÉ ¼ö ÀÖ½À´Ï´Ù
+; (Áï, µ¿½Ã "¾²·¹µå"·Î¼­ ÇöÀç È£Ãâ »óÅ¿¡ ÀÖ´Â ¾²·¹µå¿Í
+; º´ÇàÀûÀ¸·Î ½ÇÇàµË´Ï´Ù):
+Sleep, %DelayBetweenKeys%
+if CalledReentrantly = y ; ¶Ç´Ù¸¥ "¾²·¹µå"°¡ °ªÀ» º¯°æÇß½À´Ï´Ù.
+{
+    ; ÀçÁøÀÔ È£ÃâµÇ¾úÀ¸¹Ç·Î, ÀÌ Å° À̺¥Æ®´Â ¿¬¼Ó¿­¿¡¼­
+    ; ù ¹ø° À̺¥Æ®¿´½À´Ï´Ù. ±×·¡¼­ ¾ï´­·¯¾ß ÇÕ´Ï´Ù (½Ã½ºÅÛÀ¸·ÎºÎÅÍ ¼û°Ü¾ß ÇÕ´Ï´Ù):
+    CalledReentrantly = n
+    return
+}
+; ±×·¸Áö ¾ÊÀ¸¸é, ¿¬¼Ó¿­¿¡ Æ÷ÇÔµÇÁö ¾Ê½À´Ï´Ù. ±×·¡¼­ ±× Å°¸¦ º¸Åëó·³ Àü¼ÛÇÕ´Ï´Ù.
+; ´Ù¸¥ ¸»·Î, *ÁøÂ¥* Numpad0 Å°°¡ ´­·È½À´Ï´Ù. ±×·¡¼­ Á¤»óó·³ È¿°ú°¡ Àֱ⸦ ¿øÇÕ´Ï´Ù.:
+Send, {Numpad0}
+return
+
+ + diff --git a/src/docs/scripts/NumpadMouse.ahk b/src/docs/scripts/NumpadMouse.ahk new file mode 100644 index 0000000..4602be9 --- /dev/null +++ b/src/docs/scripts/NumpadMouse.ahk @@ -0,0 +1,750 @@ +; Using Keyboard Numpad as a Mouse -- by deguix +; http://www.autohotkey.com +; This script makes mousing with your keyboard almost as easy +; as using a real mouse (maybe even easier for some tasks). +; It supports up to five mouse buttons and the turning of the +; mouse wheel. It also features customizable movement speed, +; acceleration, and "axis inversion". + +/* +o------------------------------------------------------------o +|Using Keyboard Numpad as a Mouse | +(------------------------------------------------------------) +| By deguix / A Script file for AutoHotkey 1.0.22+ | +| ----------------------------------------| +| | +| This script is an example of use of AutoHotkey. It uses | +| the remapping of numpad keys of a keyboard to transform it | +| into a mouse. Some features are the acceleration which | +| enables you to increase the mouse movement when holding | +| a key for a long time, and the rotation which makes the | +| numpad mouse to "turn". I.e. NumPadDown as NumPadUp | +| and vice-versa. See the list of keys used below: | +| | +|------------------------------------------------------------| +| Keys | Description | +|------------------------------------------------------------| +| ScrollLock (toggle on)| Activates numpad mouse mode. | +|-----------------------|------------------------------------| +| NumPad0 | Left mouse button click. | +| NumPad5 | Middle mouse button click. | +| NumPadDot | Right mouse button click. | +| NumPadDiv/NumPadMult | X1/X2 mouse button click. (Win 2k+)| +| NumPadSub/NumPadAdd | Moves up/down the mouse wheel. | +| | | +|-----------------------|------------------------------------| +| NumLock (toggled off) | Activates mouse movement mode. | +|-----------------------|------------------------------------| +| NumPadEnd/Down/PgDn/ | Mouse movement. | +| /Left/Right/Home/Up/ | | +| /PgUp | | +| | | +|-----------------------|------------------------------------| +| NumLock (toggled on) | Activates mouse speed adj. mode. | +|-----------------------|------------------------------------| +| NumPad7/NumPad1 | Inc./dec. acceleration per | +| | button press. | +| NumPad8/NumPad2 | Inc./dec. initial speed per | +| | button press. | +| NumPad9/NumPad3 | Inc./dec. maximum speed per | +| | button press. | +| ^NumPad7/^NumPad1 | Inc./dec. wheel acceleration per | +| | button press*. | +| ^NumPad8/^NumPad2 | Inc./dec. wheel initial speed per | +| | button press*. | +| ^NumPad9/^NumPad3 | Inc./dec. wheel maximum speed per | +| | button press*. | +| NumPad4/NumPad6 | Inc./dec. rotation angle to | +| | right in degrees. (i.e. 180° = | +| | = inversed controls). | +|------------------------------------------------------------| +| * = These options are affected by the mouse wheel speed | +| adjusted on Control Panel. If you don't have a mouse with | +| wheel, the default is 3 +/- lines per option button press. | +o------------------------------------------------------------o +*/ + +;START OF CONFIG SECTION + +#SingleInstance force +#MaxHotkeysPerInterval 500 + +; Using the keyboard hook to implement the Numpad hotkeys prevents +; them from interfering with the generation of ANSI characters such +; as à. This is because AutoHotkey generates such characters +; by holding down ALT and sending a series of Numpad keystrokes. +; Hook hotkeys are smart enough to ignore such keystrokes. +#UseHook + +MouseSpeed = 1 +MouseAccelerationSpeed = 1 +MouseMaxSpeed = 5 + +;Mouse wheel speed is also set on Control Panel. As that +;will affect the normal mouse behavior, the real speed of +;these three below are times the normal mouse wheel speed. +MouseWheelSpeed = 1 +MouseWheelAccelerationSpeed = 1 +MouseWheelMaxSpeed = 5 + +MouseRotationAngle = 0 + +;END OF CONFIG SECTION + +;This is needed or key presses would faulty send their natural +;actions. Like NumPadDiv would send sometimes "/" to the +;screen. +#InstallKeybdHook + +Temp = 0 +Temp2 = 0 + +MouseRotationAnglePart = %MouseRotationAngle% +;Divide by 45º because MouseMove only supports whole numbers, +;and changing the mouse rotation to a number lesser than 45º +;could make strange movements. +; +;For example: 22.5º when pressing NumPadUp: +; First it would move upwards until the speed +; to the side reaches 1. +MouseRotationAnglePart /= 45 + +MouseCurrentAccelerationSpeed = 0 +MouseCurrentSpeed = %MouseSpeed% + +MouseWheelCurrentAccelerationSpeed = 0 +MouseWheelCurrentSpeed = %MouseSpeed% + +SetKeyDelay, -1 +SetMouseDelay, -1 + +Hotkey, *NumPad0, ButtonLeftClick +Hotkey, *NumpadIns, ButtonLeftClickIns +Hotkey, *NumPad5, ButtonMiddleClick +Hotkey, *NumpadClear, ButtonMiddleClickClear +Hotkey, *NumPadDot, ButtonRightClick +Hotkey, *NumPadDel, ButtonRightClickDel +Hotkey, *NumPadDiv, ButtonX1Click +Hotkey, *NumPadMult, ButtonX2Click + +Hotkey, *NumpadSub, ButtonWheelUp +Hotkey, *NumpadAdd, ButtonWheelDown + +Hotkey, *NumPadUp, ButtonUp +Hotkey, *NumPadDown, ButtonDown +Hotkey, *NumPadLeft, ButtonLeft +Hotkey, *NumPadRight, ButtonRight +Hotkey, *NumPadHome, ButtonUpLeft +Hotkey, *NumPadEnd, ButtonUpRight +Hotkey, *NumPadPgUp, ButtonDownLeft +Hotkey, *NumPadPgDn, ButtonDownRight + +Hotkey, Numpad8, ButtonSpeedUp +Hotkey, Numpad2, ButtonSpeedDown +Hotkey, Numpad7, ButtonAccelerationSpeedUp +Hotkey, Numpad1, ButtonAccelerationSpeedDown +Hotkey, Numpad9, ButtonMaxSpeedUp +Hotkey, Numpad3, ButtonMaxSpeedDown + +Hotkey, Numpad6, ButtonRotationAngleUp +Hotkey, Numpad4, ButtonRotationAngleDown + +Hotkey, !Numpad8, ButtonWheelSpeedUp +Hotkey, !Numpad2, ButtonWheelSpeedDown +Hotkey, !Numpad7, ButtonWheelAccelerationSpeedUp +Hotkey, !Numpad1, ButtonWheelAccelerationSpeedDown +Hotkey, !Numpad9, ButtonWheelMaxSpeedUp +Hotkey, !Numpad3, ButtonWheelMaxSpeedDown + +Gosub, ~ScrollLock ; Initialize based on current ScrollLock state. +return + +;Key activation support + +~ScrollLock:: +; Wait for it to be released because otherwise the hook state gets reset +; while the key is down, which causes the up-event to get suppressed, +; which in turn prevents toggling of the ScrollLock state/light: +KeyWait, ScrollLock +GetKeyState, ScrollLockState, ScrollLock, T +If ScrollLockState = D +{ + Hotkey, *NumPad0, on + Hotkey, *NumpadIns, on + Hotkey, *NumPad5, on + Hotkey, *NumPadDot, on + Hotkey, *NumPadDel, on + Hotkey, *NumPadDiv, on + Hotkey, *NumPadMult, on + + Hotkey, *NumpadSub, on + Hotkey, *NumpadAdd, on + + Hotkey, *NumPadUp, on + Hotkey, *NumPadDown, on + Hotkey, *NumPadLeft, on + Hotkey, *NumPadRight, on + Hotkey, *NumPadHome, on + Hotkey, *NumPadEnd, on + Hotkey, *NumPadPgUp, on + Hotkey, *NumPadPgDn, on + + Hotkey, Numpad8, on + Hotkey, Numpad2, on + Hotkey, Numpad7, on + Hotkey, Numpad1, on + Hotkey, Numpad9, on + Hotkey, Numpad3, on + + Hotkey, Numpad6, on + Hotkey, Numpad4, on + + Hotkey, !Numpad8, on + Hotkey, !Numpad2, on + Hotkey, !Numpad7, on + Hotkey, !Numpad1, on + Hotkey, !Numpad9, on + Hotkey, !Numpad3, on +} +else +{ + Hotkey, *NumPad0, off + Hotkey, *NumpadIns, off + Hotkey, *NumPad5, off + Hotkey, *NumPadDot, off + Hotkey, *NumPadDel, off + Hotkey, *NumPadDiv, off + Hotkey, *NumPadMult, off + + Hotkey, *NumpadSub, off + Hotkey, *NumpadAdd, off + + Hotkey, *NumPadUp, off + Hotkey, *NumPadDown, off + Hotkey, *NumPadLeft, off + Hotkey, *NumPadRight, off + Hotkey, *NumPadHome, off + Hotkey, *NumPadEnd, off + Hotkey, *NumPadPgUp, off + Hotkey, *NumPadPgDn, off + + Hotkey, Numpad8, off + Hotkey, Numpad2, off + Hotkey, Numpad7, off + Hotkey, Numpad1, off + Hotkey, Numpad9, off + Hotkey, Numpad3, off + + Hotkey, Numpad6, off + Hotkey, Numpad4, off + + Hotkey, !Numpad8, off + Hotkey, !Numpad2, off + Hotkey, !Numpad7, off + Hotkey, !Numpad1, off + Hotkey, !Numpad9, off + Hotkey, !Numpad3, off +} +return + +;Mouse click support + +ButtonLeftClick: +GetKeyState, already_down_state, LButton +If already_down_state = D + return +Button2 = NumPad0 +ButtonClick = Left +Goto ButtonClickStart +ButtonLeftClickIns: +GetKeyState, already_down_state, LButton +If already_down_state = D + return +Button2 = NumPadIns +ButtonClick = Left +Goto ButtonClickStart + +ButtonMiddleClick: +GetKeyState, already_down_state, MButton +If already_down_state = D + return +Button2 = NumPad5 +ButtonClick = Middle +Goto ButtonClickStart +ButtonMiddleClickClear: +GetKeyState, already_down_state, MButton +If already_down_state = D + return +Button2 = NumPadClear +ButtonClick = Middle +Goto ButtonClickStart + +ButtonRightClick: +GetKeyState, already_down_state, RButton +If already_down_state = D + return +Button2 = NumPadDot +ButtonClick = Right +Goto ButtonClickStart +ButtonRightClickDel: +GetKeyState, already_down_state, RButton +If already_down_state = D + return +Button2 = NumPadDel +ButtonClick = Right +Goto ButtonClickStart + +ButtonX1Click: +GetKeyState, already_down_state, XButton1 +If already_down_state = D + return +Button2 = NumPadDiv +ButtonClick = X1 +Goto ButtonClickStart + +ButtonX2Click: +GetKeyState, already_down_state, XButton2 +If already_down_state = D + return +Button2 = NumPadMult +ButtonClick = X2 +Goto ButtonClickStart + +ButtonClickStart: +MouseClick, %ButtonClick%,,, 1, 0, D +SetTimer, ButtonClickEnd, 10 +return + +ButtonClickEnd: +GetKeyState, kclickstate, %Button2%, P +if kclickstate = D + return + +SetTimer, ButtonClickEnd, off +MouseClick, %ButtonClick%,,, 1, 0, U +return + +;Mouse movement support + +ButtonSpeedUp: +MouseSpeed++ +ToolTip, Mouse speed: %MouseSpeed% pixels +SetTimer, RemoveToolTip, 1000 +return +ButtonSpeedDown: +If MouseSpeed > 1 + MouseSpeed-- +If MouseSpeed = 1 + ToolTip, Mouse speed: %MouseSpeed% pixel +else + ToolTip, Mouse speed: %MouseSpeed% pixels +SetTimer, RemoveToolTip, 1000 +return +ButtonAccelerationSpeedUp: +MouseAccelerationSpeed++ +ToolTip, Mouse acceleration speed: %MouseAccelerationSpeed% pixels +SetTimer, RemoveToolTip, 1000 +return +ButtonAccelerationSpeedDown: +If MouseAccelerationSpeed > 1 + MouseAccelerationSpeed-- +If MouseAccelerationSpeed = 1 + ToolTip, Mouse acceleration speed: %MouseAccelerationSpeed% pixel +else + ToolTip, Mouse acceleration speed: %MouseAccelerationSpeed% pixels +SetTimer, RemoveToolTip, 1000 +return + +ButtonMaxSpeedUp: +MouseMaxSpeed++ +ToolTip, Mouse maximum speed: %MouseMaxSpeed% pixels +SetTimer, RemoveToolTip, 1000 +return +ButtonMaxSpeedDown: +If MouseMaxSpeed > 1 + MouseMaxSpeed-- +If MouseMaxSpeed = 1 + ToolTip, Mouse maximum speed: %MouseMaxSpeed% pixel +else + ToolTip, Mouse maximum speed: %MouseMaxSpeed% pixels +SetTimer, RemoveToolTip, 1000 +return + +ButtonRotationAngleUp: +MouseRotationAnglePart++ +If MouseRotationAnglePart >= 8 + MouseRotationAnglePart = 0 +MouseRotationAngle = %MouseRotationAnglePart% +MouseRotationAngle *= 45 +ToolTip, Mouse rotation angle: %MouseRotationAngle%° +SetTimer, RemoveToolTip, 1000 +return +ButtonRotationAngleDown: +MouseRotationAnglePart-- +If MouseRotationAnglePart < 0 + MouseRotationAnglePart = 7 +MouseRotationAngle = %MouseRotationAnglePart% +MouseRotationAngle *= 45 +ToolTip, Mouse rotation angle: %MouseRotationAngle%° +SetTimer, RemoveToolTip, 1000 +return + +ButtonUp: +ButtonDown: +ButtonLeft: +ButtonRight: +ButtonUpLeft: +ButtonUpRight: +ButtonDownLeft: +ButtonDownRight: +If Button <> 0 +{ + IfNotInString, A_ThisHotkey, %Button% + { + MouseCurrentAccelerationSpeed = 0 + MouseCurrentSpeed = %MouseSpeed% + } +} +StringReplace, Button, A_ThisHotkey, * + +ButtonAccelerationStart: +If MouseAccelerationSpeed >= 1 +{ + If MouseMaxSpeed > %MouseCurrentSpeed% + { + Temp = 0.001 + Temp *= %MouseAccelerationSpeed% + MouseCurrentAccelerationSpeed += %Temp% + MouseCurrentSpeed += %MouseCurrentAccelerationSpeed% + } +} + +;MouseRotationAngle convertion to speed of button direction +{ + MouseCurrentSpeedToDirection = %MouseRotationAngle% + MouseCurrentSpeedToDirection /= 90.0 + Temp = %MouseCurrentSpeedToDirection% + + if Temp >= 0 + { + if Temp < 1 + { + MouseCurrentSpeedToDirection = 1 + MouseCurrentSpeedToDirection -= %Temp% + Goto EndMouseCurrentSpeedToDirectionCalculation + } + } + if Temp >= 1 + { + if Temp < 2 + { + MouseCurrentSpeedToDirection = 0 + Temp -= 1 + MouseCurrentSpeedToDirection -= %Temp% + Goto EndMouseCurrentSpeedToDirectionCalculation + } + } + if Temp >= 2 + { + if Temp < 3 + { + MouseCurrentSpeedToDirection = -1 + Temp -= 2 + MouseCurrentSpeedToDirection += %Temp% + Goto EndMouseCurrentSpeedToDirectionCalculation + } + } + if Temp >= 3 + { + if Temp < 4 + { + MouseCurrentSpeedToDirection = 0 + Temp -= 3 + MouseCurrentSpeedToDirection += %Temp% + Goto EndMouseCurrentSpeedToDirectionCalculation + } + } +} +EndMouseCurrentSpeedToDirectionCalculation: + +;MouseRotationAngle convertion to speed of 90 degrees to right +{ + MouseCurrentSpeedToSide = %MouseRotationAngle% + MouseCurrentSpeedToSide /= 90.0 + Temp = %MouseCurrentSpeedToSide% + Transform, Temp, mod, %Temp%, 4 + + if Temp >= 0 + { + if Temp < 1 + { + MouseCurrentSpeedToSide = 0 + MouseCurrentSpeedToSide += %Temp% + Goto EndMouseCurrentSpeedToSideCalculation + } + } + if Temp >= 1 + { + if Temp < 2 + { + MouseCurrentSpeedToSide = 1 + Temp -= 1 + MouseCurrentSpeedToSide -= %Temp% + Goto EndMouseCurrentSpeedToSideCalculation + } + } + if Temp >= 2 + { + if Temp < 3 + { + MouseCurrentSpeedToSide = 0 + Temp -= 2 + MouseCurrentSpeedToSide -= %Temp% + Goto EndMouseCurrentSpeedToSideCalculation + } + } + if Temp >= 3 + { + if Temp < 4 + { + MouseCurrentSpeedToSide = -1 + Temp -= 3 + MouseCurrentSpeedToSide += %Temp% + Goto EndMouseCurrentSpeedToSideCalculation + } + } +} +EndMouseCurrentSpeedToSideCalculation: + +MouseCurrentSpeedToDirection *= %MouseCurrentSpeed% +MouseCurrentSpeedToSide *= %MouseCurrentSpeed% + +Temp = %MouseRotationAnglePart% +Transform, Temp, Mod, %Temp%, 2 + +If Button = NumPadUp +{ + if Temp = 1 + { + MouseCurrentSpeedToSide *= 2 + MouseCurrentSpeedToDirection *= 2 + } + + MouseCurrentSpeedToDirection *= -1 + MouseMove, %MouseCurrentSpeedToSide%, %MouseCurrentSpeedToDirection%, 0, R +} +else if Button = NumPadDown +{ + if Temp = 1 + { + MouseCurrentSpeedToSide *= 2 + MouseCurrentSpeedToDirection *= 2 + } + + MouseCurrentSpeedToSide *= -1 + MouseMove, %MouseCurrentSpeedToSide%, %MouseCurrentSpeedToDirection%, 0, R +} +else if Button = NumPadLeft +{ + if Temp = 1 + { + MouseCurrentSpeedToSide *= 2 + MouseCurrentSpeedToDirection *= 2 + } + + MouseCurrentSpeedToSide *= -1 + MouseCurrentSpeedToDirection *= -1 + MouseMove, %MouseCurrentSpeedToDirection%, %MouseCurrentSpeedToSide%, 0, R +} +else if Button = NumPadRight +{ + if Temp = 1 + { + MouseCurrentSpeedToSide *= 2 + MouseCurrentSpeedToDirection *= 2 + } + + MouseMove, %MouseCurrentSpeedToDirection%, %MouseCurrentSpeedToSide%, 0, R +} +else if Button = NumPadHome +{ + Temp = %MouseCurrentSpeedToDirection% + Temp -= %MouseCurrentSpeedToSide% + Temp *= -1 + Temp2 = %MouseCurrentSpeedToDirection% + Temp2 += %MouseCurrentSpeedToSide% + Temp2 *= -1 + MouseMove, %Temp%, %Temp2%, 0, R +} +else if Button = NumPadPgUp +{ + Temp = %MouseCurrentSpeedToDirection% + Temp += %MouseCurrentSpeedToSide% + Temp2 = %MouseCurrentSpeedToDirection% + Temp2 -= %MouseCurrentSpeedToSide% + Temp2 *= -1 + MouseMove, %Temp%, %Temp2%, 0, R +} +else if Button = NumPadEnd +{ + Temp = %MouseCurrentSpeedToDirection% + Temp += %MouseCurrentSpeedToSide% + Temp *= -1 + Temp2 = %MouseCurrentSpeedToDirection% + Temp2 -= %MouseCurrentSpeedToSide% + MouseMove, %Temp%, %Temp2%, 0, R +} +else if Button = NumPadPgDn +{ + Temp = %MouseCurrentSpeedToDirection% + Temp -= %MouseCurrentSpeedToSide% + Temp2 *= -1 + Temp2 = %MouseCurrentSpeedToDirection% + Temp2 += %MouseCurrentSpeedToSide% + MouseMove, %Temp%, %Temp2%, 0, R +} + +SetTimer, ButtonAccelerationEnd, 10 +return + +ButtonAccelerationEnd: +GetKeyState, kstate, %Button%, P +if kstate = D + Goto ButtonAccelerationStart + +SetTimer, ButtonAccelerationEnd, off +MouseCurrentAccelerationSpeed = 0 +MouseCurrentSpeed = %MouseSpeed% +Button = 0 +return + +;Mouse wheel movement support + +ButtonWheelSpeedUp: +MouseWheelSpeed++ +RegRead, MouseWheelSpeedMultiplier, HKCU, Control Panel\Desktop, WheelScrollLines +If MouseWheelSpeedMultiplier <= 0 + MouseWheelSpeedMultiplier = 1 +MouseWheelSpeedReal = %MouseWheelSpeed% +MouseWheelSpeedReal *= %MouseWheelSpeedMultiplier% +ToolTip, Mouse wheel speed: %MouseWheelSpeedReal% lines +SetTimer, RemoveToolTip, 1000 +return +ButtonWheelSpeedDown: +RegRead, MouseWheelSpeedMultiplier, HKCU, Control Panel\Desktop, WheelScrollLines +If MouseWheelSpeedMultiplier <= 0 + MouseWheelSpeedMultiplier = 1 +If MouseWheelSpeedReal > %MouseWheelSpeedMultiplier% +{ + MouseWheelSpeed-- + MouseWheelSpeedReal = %MouseWheelSpeed% + MouseWheelSpeedReal *= %MouseWheelSpeedMultiplier% +} +If MouseWheelSpeedReal = 1 + ToolTip, Mouse wheel speed: %MouseWheelSpeedReal% line +else + ToolTip, Mouse wheel speed: %MouseWheelSpeedReal% lines +SetTimer, RemoveToolTip, 1000 +return + +ButtonWheelAccelerationSpeedUp: +MouseWheelAccelerationSpeed++ +RegRead, MouseWheelSpeedMultiplier, HKCU, Control Panel\Desktop, WheelScrollLines +If MouseWheelSpeedMultiplier <= 0 + MouseWheelSpeedMultiplier = 1 +MouseWheelAccelerationSpeedReal = %MouseWheelAccelerationSpeed% +MouseWheelAccelerationSpeedReal *= %MouseWheelSpeedMultiplier% +ToolTip, Mouse wheel acceleration speed: %MouseWheelAccelerationSpeedReal% lines +SetTimer, RemoveToolTip, 1000 +return +ButtonWheelAccelerationSpeedDown: +RegRead, MouseWheelSpeedMultiplier, HKCU, Control Panel\Desktop, WheelScrollLines +If MouseWheelSpeedMultiplier <= 0 + MouseWheelSpeedMultiplier = 1 +If MouseWheelAccelerationSpeed > 1 +{ + MouseWheelAccelerationSpeed-- + MouseWheelAccelerationSpeedReal = %MouseWheelAccelerationSpeed% + MouseWheelAccelerationSpeedReal *= %MouseWheelSpeedMultiplier% +} +If MouseWheelAccelerationSpeedReal = 1 + ToolTip, Mouse wheel acceleration speed: %MouseWheelAccelerationSpeedReal% line +else + ToolTip, Mouse wheel acceleration speed: %MouseWheelAccelerationSpeedReal% lines +SetTimer, RemoveToolTip, 1000 +return + +ButtonWheelMaxSpeedUp: +MouseWheelMaxSpeed++ +RegRead, MouseWheelSpeedMultiplier, HKCU, Control Panel\Desktop, WheelScrollLines +If MouseWheelSpeedMultiplier <= 0 + MouseWheelSpeedMultiplier = 1 +MouseWheelMaxSpeedReal = %MouseWheelMaxSpeed% +MouseWheelMaxSpeedReal *= %MouseWheelSpeedMultiplier% +ToolTip, Mouse wheel maximum speed: %MouseWheelMaxSpeedReal% lines +SetTimer, RemoveToolTip, 1000 +return +ButtonWheelMaxSpeedDown: +RegRead, MouseWheelSpeedMultiplier, HKCU, Control Panel\Desktop, WheelScrollLines +If MouseWheelSpeedMultiplier <= 0 + MouseWheelSpeedMultiplier = 1 +If MouseWheelMaxSpeed > 1 +{ + MouseWheelMaxSpeed-- + MouseWheelMaxSpeedReal = %MouseWheelMaxSpeed% + MouseWheelMaxSpeedReal *= %MouseWheelSpeedMultiplier% +} +If MouseWheelMaxSpeedReal = 1 + ToolTip, Mouse wheel maximum speed: %MouseWheelMaxSpeedReal% line +else + ToolTip, Mouse wheel maximum speed: %MouseWheelMaxSpeedReal% lines +SetTimer, RemoveToolTip, 1000 +return + +ButtonWheelUp: +ButtonWheelDown: + +If Button <> 0 +{ + If Button <> %A_ThisHotkey% + { + MouseWheelCurrentAccelerationSpeed = 0 + MouseWheelCurrentSpeed = %MouseWheelSpeed% + } +} +StringReplace, Button, A_ThisHotkey, * + +ButtonWheelAccelerationStart: +If MouseWheelAccelerationSpeed >= 1 +{ + If MouseWheelMaxSpeed > %MouseWheelCurrentSpeed% + { + Temp = 0.001 + Temp *= %MouseWheelAccelerationSpeed% + MouseWheelCurrentAccelerationSpeed += %Temp% + MouseWheelCurrentSpeed += %MouseWheelCurrentAccelerationSpeed% + } +} + +If Button = NumPadSub + MouseClick, wheelup,,, %MouseWheelCurrentSpeed%, 0, D +else if Button = NumPadAdd + MouseClick, wheeldown,,, %MouseWheelCurrentSpeed%, 0, D + +SetTimer, ButtonWheelAccelerationEnd, 100 +return + +ButtonWheelAccelerationEnd: +GetKeyState, kstate, %Button%, P +if kstate = D + Goto ButtonWheelAccelerationStart + +MouseWheelCurrentAccelerationSpeed = 0 +MouseWheelCurrentSpeed = %MouseWheelSpeed% +Button = 0 +return + +RemoveToolTip: +SetTimer, RemoveToolTip, Off +ToolTip +return \ No newline at end of file diff --git a/src/docs/scripts/NumpadMouse.htm b/src/docs/scripts/NumpadMouse.htm new file mode 100644 index 0000000..6585a0f --- /dev/null +++ b/src/docs/scripts/NumpadMouse.htm @@ -0,0 +1,763 @@ + + +Using Keyboard Numpad as a Mouse -- by deguix + + + + + + + +

Å°º¸µåÀÇ ³ÑÆе带 ¸¶¿ì½ºÃ³·³ »ç¿ëÇÏ´Â ¹ý -- by deguix

+ +

+ÀÌ ½ºÅ©¸³Æ®´Â Å°º¸µå¸¦ ¸¶¿ì½ºÃ³·³ »ç¿ëÇÒ ¼ö ÀÖµµ·Ï ÇØ ÁÝ´Ï´Ù. °ÅÀÇ ½ÇÁ¦ ¸¶¿ì½º¸¦ »ç¿ëÇÏ´Â °Í°ú ºñ½ÁÇÏ°Ô ½±½À´Ï´Ù (¾î¶² ÀÛ¾÷¿¡´Â ÈξÀ ´õ ½¬¿ï ¼ö ÀÖ½À´Ï´Ù). +ÃÖ´ë ´Ù¼¸ °³ÀÇ ¸¶¿ì½º ¹öÆ°À» Áö¿øÇÏ¸ç ¸¶¿ì½º ÈÙÀ» ȸÀüÇÒ ¼ö ÀÖ½À´Ï´Ù. ¶ÇÇÑ À̵¿ ¼Óµµ, °¡¼Ó ±â´É, ±×¸®°í "Ãà µÚÁý±â"¸¦ Àç´ÜÇÒ ¼ö ÀÖ½À´Ï´Ù. +

+

ÀÌ ½ºÅ©¸³Æ² ³»·Á ¹Þ±â  |  ´Ù¸¥ »ùÇà ½ºÅ©¸³Æ®  |  È¨À¸·Î

+ +
/*
+o------------------------------------------------------------o
+|Å°º¸µåÀÇ ³ÑÆе带 ¸¶¿ì½º·Î »ç¿ëÇ챉                         |
+(------------------------------------------------------------)
+| By deguix           / ¿ÀÅäÇÖÅ° 1.0.22+ ¿ë ½ºÅ©¸³Æ® ÆÄÀÏ    |
+|                    ----------------------------------------|
+|                                                            |
+|    ÀÌ ½ºÅ©¸³Æ®´Â ¿ÀÅäÇÖÅ°ÀÇ »ç¿ë¹ýÀ» º¸¿©ÁÖ´Â ¿¹Á¦ÀÔ´Ï´Ù.  |
+| Å°º¸µåÀÇ ³ÑÆеå Å°¸¦ ¸®¸ÊÇؼ­ ¸¶¿ì½º·Î¼­ º¯½Å½Ãŵ´Ï´Ù.     |
+| °¡¼Ó ±â´ÉÀÌ µé¾î À־ Å°¸¦ ¿À·§ ´©¸£°í ÀÖÀ¸¸é ¸¶¿ì½º     |
+| À̵¿À» °¡¼ÓÇÒ ¼ö ÀÖ½À´Ï´Ù´Ù. ȸÀü ±â´Éµµ °®Ãß°í À־     |
+| ³ÑÆÐµå ¸¶¿ì½º¸¦ "µ¹¸± ¼ö ÀÖ½À´Ï´Ù"                         |
+| Áï, NumPadDown¿Í NumPadUp¸¦ ´©¸£¸é ÈÙó·³ µ¹¸± ¼ö ÀÖ½À´Ï´Ù.|
+| ¾Æ·¡¿¡ »ç¿ëµÈ Å° ¸®½ºÆ®¸¦ ÂüÁ¶ÇϽʽÿÀ:                    |
+|                                                            |
+|------------------------------------------------------------|
+| Å°                    | ¼³¸í                               |
+|------------------------------------------------------------|
+| ScrollLock (toggle on)| ³ÑÆÐµå ¸¶¿ì½º ¸ðµå¸¦ È°¼ºÈ­        |
+|-----------------------|------------------------------------|
+| NumPad0               | ¿Þ¹öÆ° Ŭ¸¯.                       |
+| NumPad5               | °¡¿îµ¥ ¹öÆ° Ŭ¸¯.                  |
+| NumPadDot             | ¿ì¹öÆ° Ŭ¸¯.                       |
+| NumPadDiv/NumPadMult  | X1/X2 ¸¶¿ì½º ¹öÆ° Ŭ¸¯. (Win 2k+)  |
+| NumPadSub/NumPadAdd   | ¸¶¿ì½º ÈÙÀ» À§ ¾Æ·¡·Î À̵¿.        |
+|                       |                                    |
+|-----------------------|------------------------------------|
+| NumLock (toggled off) | ¸¶¿ì½º À̵¿ ¸ðµå¸¦ È°¼ºÈ­.         |
+|-----------------------|------------------------------------|
+| NumPadEnd/Down/PgDn/  | ¸¶¿ì½º À̵¿.                       |
+| /Left/Right/Home/Up/  |                                    |
+| /PgUp                 |                                    |
+|                       |                                    |
+|-----------------------|------------------------------------|
+| NumLock (toggled on)  | ¸¶¿ì½º ¼Óµµ Á¶Àý ¸ðµå È°¼ºÈ­.      |
+|-----------------------|------------------------------------|
+| NumPad7/NumPad1       | ¹öÆ°À» ´©¸¦ ¶§¸¶´Ù                 |
+|                       | °¡¼ÓÀÌ Áõ°¡/°¨¼Ò.                  |
+| NumPad8/NumPad2       | ¹öÆ°À» ´©¸¦ ¶§¸¶´Ù                 |
+|                       | ÃÖÃÊ ¼Óµµ°¡ Áõ°¡/°¨¼Ò.             |
+| NumPad9/NumPad3       | ¹öÆ°À» ´©¸¦ ¶§¸¶´Ù                 |
+|                       | ÃÖ´ë ¼Óµµ°¡ Áõ°¡/°¨¼Ò.             |
+| ^NumPad7/^NumPad1     | ¹öÆ°À» ´©¸¦ ¶§¸¶´Ù *               |
+|                       | ÈÙ °¡¼ÓÀÌ Áõ°¡/°¨¼Ò.               |
+| ^NumPad8/^NumPad2     | ¹öÆ°À» ´©¸¦ ¶§¸¶´Ù *               |
+|                       | ÈÙ Ãʱ⠼ӵµ Áõ°¡/°¨¼Ò.            |
+| ^NumPad9/^NumPad3     | ¹öÆ°À» ´©¸¦ ¶§¸¶´Ù *               |
+|                       | ÈÙ ÃÖ´ë ¼Óµµ Áõ°¡/°¨¼Ò.            |
+| NumPad4/NumPad6       | ¿À¸¥ÂÊÀ¸·Î ȸÀü °¢µµ¸¦ Áõ°¡/°¨¼Ò   |
+|                       | Áï, 180° = ¹Ý´ë·Î µÚÁý¾îÁü        |
+|------------------------------------------------------------|
+| * = ÀÌ ¿É¼ÇÀº Á¦¾îÆÇ¿¡¼­ Á¶ÀýÇÑ ¸¶¿ì½º ÈÙÀÇ ¼ÓµµÀÇ         |
+| ¿µÇâÀ» ¹Þ½À´Ï´Ù. ¸¶¿ì½º¿¡ ÈÙÀÌ ¾ø´Ù¸é                      |
+| ±âº»°ªÀº ¹öÆ° ´­¸²´ç 3 +/- ÁÙÀÔ´Ï´Ù.                       |
+o------------------------------------------------------------o
+*/
+
+;ȯ°æ ±¸¼º ½ÃÀÛ
+
+#SingleInstance force
+#MaxHotkeysPerInterval 500
+
+; Å°º¸µå °¥°í¸®¸¦ »ç¿ëÇÏ¿© ³ÑÆеå ÇÖÅ°¸¦ ±¸ÇöÇϸé
+; à¿Í °°Àº ANSI ¹®ÀÚÀÇ »ý¼ºÀ» °£¼·ÇÏÁö ¾Ê½À´Ï´Ù. 
+; ÀÌ ¶§¹®¿¡ ¿ÀÅä ÇÖÅ°´Â ALT¸¦ ´©¸£°í ÀÏ·ÃÀÇ  
+; ³ÑÆеå Å°´­¸²À» Àü¼ÛÇÔÀ¸·Î½á ±×·± ¹®ÀÚµéÀ» »ý¼ºÇÕ´Ï´Ù.
+; °¥°í¸® ÇÖÅ°´Â ¶È¶ÈÇؼ­ ±×·± Å°´­¸²Àº ¹«½ÃÇÕ´Ï´Ù.
+#UseHook
+
+MouseSpeed = 1
+MouseAccelerationSpeed = 1
+MouseMaxSpeed = 5
+
+; ¸¶¿ì½º ÈÙÀÇ ¼Óµµ´Â Á¦¾îÆÇ¿¡¼­ ¼³Á¤ÇÕ´Ï´Ù.
+; º¸ÅëÀÇ ¸¶¿ì½º ÇàÀ§¿¡ ¿µÇâÀ» ¹ÌÄ¡±â ¶§¹®¿¡, ¾Æ·¡ÀÇ ¼¼ °¡Áö ¼³Á¤ÀÇ
+; ½ÇÁ¦ ¼Óµµ´Â Á¤»ó ¸¶¿ì½º ÈÙ ¼ÓµµÀÇ µÎ ¹è°¡ µË´Ï´Ù.
+MouseWheelSpeed = 1
+MouseWheelAccelerationSpeed = 1
+MouseWheelMaxSpeed = 5
+
+MouseRotationAngle = 0
+
+;ȯ°æ ±¸¼º ³¡
+
+; ´ÙÀ½Àº ²À ÇÊ¿äÇÕ´Ï´Ù. ±×·¸Áö ¾ÊÀ¸¸é Å°´­¸²Àº
+; Á¤»óÀûÀÎ Á¶Ä¡¸¦ Àü¼ÛÇÏÁö ¸øÇϱ⠶§¹®ÀÔ´Ï´Ù.
+; NumPadDiv¿Í °°Àº °æ¿ì °¡²û "/"À» È­¸é¿¡ Àü¼ÛÇÕ´Ï´Ù
+#InstallKeybdHook
+
+Temp = 0
+Temp2 = 0
+
+MouseRotationAnglePart = %MouseRotationAngle%
+; 45º·Î ³ª´¯´Ï´Ù; ¿Ö³ÄÇϸé MouseMove´Â Á¤¼ö¸¸ Áö¿øÇϱ⠶§¹®ÀÔ´Ï´Ù,
+; ±×¸®°í ¸¶¿ì½º ȸÀüÀ» 45ºº¸´Ù ÀÛÀº ¼ýÀÚ·Î º¯°æÇϸé;
+; ÀÌ»óÇÑ ÇàÀ§¸¦ ¾ß±âÇÒ ¼ö ÀÖ½À´Ï´Ù.
+;
+; ¿¹¸¦ µé¾î: 22.5º·Î ÁöÁ¤Çϸé NumPadUp¸¦ ´©¸¦¶§:
+;  ¸ÕÀú º¯À» ÇâÇÏ¿© ¼Óµµ°¡ 1¿¡ µµ´ÞÇÒ ¶§±îÁö
+;  À§·Î À̵¿ÇÕ´Ï´Ù.
+MouseRotationAnglePart /= 45
+
+MouseCurrentAccelerationSpeed = 0
+MouseCurrentSpeed = %MouseSpeed%
+
+MouseWheelCurrentAccelerationSpeed = 0
+MouseWheelCurrentSpeed = %MouseSpeed%
+
+SetKeyDelay, -1
+SetMouseDelay, -1
+
+Hotkey, *NumPad0, ButtonLeftClick
+Hotkey, *NumpadIns, ButtonLeftClickIns
+Hotkey, *NumPad5, ButtonMiddleClick
+Hotkey, *NumpadClear, ButtonMiddleClickClear
+Hotkey, *NumPadDot, ButtonRightClick
+Hotkey, *NumPadDel, ButtonRightClickDel
+Hotkey, *NumPadDiv, ButtonX1Click
+Hotkey, *NumPadMult, ButtonX2Click
+
+Hotkey, *NumpadSub, ButtonWheelUp
+Hotkey, *NumpadAdd, ButtonWheelDown
+
+Hotkey, *NumPadUp, ButtonUp
+Hotkey, *NumPadDown, ButtonDown
+Hotkey, *NumPadLeft, ButtonLeft
+Hotkey, *NumPadRight, ButtonRight
+Hotkey, *NumPadHome, ButtonUpLeft
+Hotkey, *NumPadEnd, ButtonUpRight
+Hotkey, *NumPadPgUp, ButtonDownLeft
+Hotkey, *NumPadPgDn, ButtonDownRight
+
+Hotkey, Numpad8, ButtonSpeedUp
+Hotkey, Numpad2, ButtonSpeedDown
+Hotkey, Numpad7, ButtonAccelerationSpeedUp
+Hotkey, Numpad1, ButtonAccelerationSpeedDown
+Hotkey, Numpad9, ButtonMaxSpeedUp
+Hotkey, Numpad3, ButtonMaxSpeedDown
+
+Hotkey, Numpad6, ButtonRotationAngleUp
+Hotkey, Numpad4, ButtonRotationAngleDown
+
+Hotkey, !Numpad8, ButtonWheelSpeedUp
+Hotkey, !Numpad2, ButtonWheelSpeedDown
+Hotkey, !Numpad7, ButtonWheelAccelerationSpeedUp
+Hotkey, !Numpad1, ButtonWheelAccelerationSpeedDown
+Hotkey, !Numpad9, ButtonWheelMaxSpeedUp
+Hotkey, !Numpad3, ButtonWheelMaxSpeedDown
+
+Gosub, ~ScrollLock  ; ÇöÀç ½ºÅ©·Ñ¶ôÀÇ »óÅ¿¡ ±â¹ÝÇÏ¿© ÃʱâÈ­ÇÕ´Ï´Ù.
+return
+
+; Å° È°¼ºÈ­ Áö¿ø
+
+~ScrollLock::
+; Å°¸¦ ¶¼±â¸¦ ±â´Ù¸³´Ï´Ù. ±×·¸Áö ¾ÊÀ¸¸é °¥°í¸® »óÅ°¡
+; Å°¸¦ ´©¸£°í ÀÖ´Â µ¿¾È ¸®¼ÂµÇ¾î ¹ö·Á¼­, ¾÷-À̺¥Æ®°¡ ¾ï´­·¯Áý´Ï´Ù,
+; À̾ ½ºÅ©·Ñ¶ô »óÅÂ/ºÒºûÀÇ ÅäŬÀ» ¸·¾Æ ¹ö¸³´Ï´Ù:
+KeyWait, ScrollLock
+GetKeyState, ScrollLockState, ScrollLock, T
+If ScrollLockState = D
+{
+    Hotkey, *NumPad0, on
+    Hotkey, *NumpadIns, on
+    Hotkey, *NumPad5, on
+    Hotkey, *NumPadDot, on
+    Hotkey, *NumPadDel, on
+    Hotkey, *NumPadDiv, on
+    Hotkey, *NumPadMult, on
+
+    Hotkey, *NumpadSub, on
+    Hotkey, *NumpadAdd, on
+
+    Hotkey, *NumPadUp, on
+    Hotkey, *NumPadDown, on
+    Hotkey, *NumPadLeft, on
+    Hotkey, *NumPadRight, on
+    Hotkey, *NumPadHome, on
+    Hotkey, *NumPadEnd, on
+    Hotkey, *NumPadPgUp, on
+    Hotkey, *NumPadPgDn, on
+
+    Hotkey, Numpad8, on
+    Hotkey, Numpad2, on
+    Hotkey, Numpad7, on
+    Hotkey, Numpad1, on
+    Hotkey, Numpad9, on
+    Hotkey, Numpad3, on
+
+    Hotkey, Numpad6, on
+    Hotkey, Numpad4, on
+
+    Hotkey, !Numpad8, on
+    Hotkey, !Numpad2, on
+    Hotkey, !Numpad7, on
+    Hotkey, !Numpad1, on
+    Hotkey, !Numpad9, on
+    Hotkey, !Numpad3, on
+}
+else
+{
+    Hotkey, *NumPad0, off
+    Hotkey, *NumpadIns, off
+    Hotkey, *NumPad5, off
+    Hotkey, *NumPadDot, off
+    Hotkey, *NumPadDel, off
+    Hotkey, *NumPadDiv, off
+    Hotkey, *NumPadMult, off
+
+    Hotkey, *NumpadSub, off
+    Hotkey, *NumpadAdd, off
+
+    Hotkey, *NumPadUp, off
+    Hotkey, *NumPadDown, off
+    Hotkey, *NumPadLeft, off
+    Hotkey, *NumPadRight, off
+    Hotkey, *NumPadHome, off
+    Hotkey, *NumPadEnd, off
+    Hotkey, *NumPadPgUp, off
+    Hotkey, *NumPadPgDn, off
+
+    Hotkey, Numpad8, off
+    Hotkey, Numpad2, off
+    Hotkey, Numpad7, off
+    Hotkey, Numpad1, off
+    Hotkey, Numpad9, off
+    Hotkey, Numpad3, off
+
+    Hotkey, Numpad6, off
+    Hotkey, Numpad4, off
+
+    Hotkey, !Numpad8, off
+    Hotkey, !Numpad2, off
+    Hotkey, !Numpad7, off
+    Hotkey, !Numpad1, off
+    Hotkey, !Numpad9, off
+    Hotkey, !Numpad3, off
+}
+return
+
+; ¸¶¿ì½º Ŭ¸¯ Áö¿ø
+
+ButtonLeftClick:
+GetKeyState, already_down_state, LButton
+If already_down_state = D
+    return
+Button2 = NumPad0
+ButtonClick = Left
+Goto ButtonClickStart
+ButtonLeftClickIns:
+GetKeyState, already_down_state, LButton
+If already_down_state = D
+    return
+Button2 = NumPadIns
+ButtonClick = Left
+Goto ButtonClickStart
+
+ButtonMiddleClick:
+GetKeyState, already_down_state, MButton
+If already_down_state = D
+    return
+Button2 = NumPad5
+ButtonClick = Middle
+Goto ButtonClickStart
+ButtonMiddleClickClear:
+GetKeyState, already_down_state, MButton
+If already_down_state = D
+    return
+Button2 = NumPadClear
+ButtonClick = Middle
+Goto ButtonClickStart
+
+ButtonRightClick:
+GetKeyState, already_down_state, RButton
+If already_down_state = D
+    return
+Button2 = NumPadDot
+ButtonClick = Right
+Goto ButtonClickStart
+ButtonRightClickDel:
+GetKeyState, already_down_state, RButton
+If already_down_state = D
+    return
+Button2 = NumPadDel
+ButtonClick = Right
+Goto ButtonClickStart
+
+ButtonX1Click:
+GetKeyState, already_down_state, XButton1
+If already_down_state = D
+    return
+Button2 = NumPadDiv
+ButtonClick = X1
+Goto ButtonClickStart
+
+ButtonX2Click:
+GetKeyState, already_down_state, XButton2
+If already_down_state = D
+    return
+Button2 = NumPadMult
+ButtonClick = X2
+Goto ButtonClickStart
+
+ButtonClickStart:
+MouseClick, %ButtonClick%,,, 1, 0, D
+SetTimer, ButtonClickEnd, 10
+return
+
+ButtonClickEnd:
+GetKeyState, kclickstate, %Button2%, P
+if kclickstate = D
+    return
+
+SetTimer, ButtonClickEnd, off
+MouseClick, %ButtonClick%,,, 1, 0, U
+return
+
+; ¸¶¿ì½º À̵¿ Áö¿ø
+
+ButtonSpeedUp:
+MouseSpeed++
+ToolTip, Mouse speed: %MouseSpeed% pixels
+SetTimer, RemoveToolTip, 1000
+return
+ButtonSpeedDown:
+If MouseSpeed > 1
+    MouseSpeed--
+If MouseSpeed = 1
+    ToolTip, Mouse speed: %MouseSpeed% pixel
+else
+    ToolTip, Mouse speed: %MouseSpeed% pixels
+SetTimer, RemoveToolTip, 1000
+return
+ButtonAccelerationSpeedUp:
+MouseAccelerationSpeed++
+ToolTip, Mouse acceleration speed: %MouseAccelerationSpeed% pixels
+SetTimer, RemoveToolTip, 1000
+return
+ButtonAccelerationSpeedDown:
+If MouseAccelerationSpeed > 1
+    MouseAccelerationSpeed--
+If MouseAccelerationSpeed = 1
+    ToolTip, Mouse acceleration speed: %MouseAccelerationSpeed% pixel
+else
+    ToolTip, Mouse acceleration speed: %MouseAccelerationSpeed% pixels
+SetTimer, RemoveToolTip, 1000
+return
+
+ButtonMaxSpeedUp:
+MouseMaxSpeed++
+ToolTip, Mouse maximum speed: %MouseMaxSpeed% pixels
+SetTimer, RemoveToolTip, 1000
+return
+ButtonMaxSpeedDown:
+If MouseMaxSpeed > 1
+    MouseMaxSpeed--
+If MouseMaxSpeed = 1
+    ToolTip, Mouse maximum speed: %MouseMaxSpeed% pixel
+else
+    ToolTip, Mouse maximum speed: %MouseMaxSpeed% pixels
+SetTimer, RemoveToolTip, 1000
+return
+
+ButtonRotationAngleUp:
+MouseRotationAnglePart++
+If MouseRotationAnglePart >= 8
+    MouseRotationAnglePart = 0
+MouseRotationAngle = %MouseRotationAnglePart%
+MouseRotationAngle *= 45
+ToolTip, Mouse rotation angle: %MouseRotationAngle%°
+SetTimer, RemoveToolTip, 1000
+return
+ButtonRotationAngleDown:
+MouseRotationAnglePart--
+If MouseRotationAnglePart < 0
+    MouseRotationAnglePart = 7
+MouseRotationAngle = %MouseRotationAnglePart%
+MouseRotationAngle *= 45
+ToolTip, Mouse rotation angle: %MouseRotationAngle%°
+SetTimer, RemoveToolTip, 1000
+return
+
+ButtonUp:
+ButtonDown:
+ButtonLeft:
+ButtonRight:
+ButtonUpLeft:
+ButtonUpRight:
+ButtonDownLeft:
+ButtonDownRight:
+If Button <> 0
+{
+    IfNotInString, A_ThisHotkey, %Button%
+    {
+        MouseCurrentAccelerationSpeed = 0
+        MouseCurrentSpeed = %MouseSpeed%
+    }
+}
+StringReplace, Button, A_ThisHotkey, *
+
+ButtonAccelerationStart:
+If MouseAccelerationSpeed >= 1
+{
+    If MouseMaxSpeed > %MouseCurrentSpeed%
+    {
+        Temp = 0.001
+        Temp *= %MouseAccelerationSpeed%
+        MouseCurrentAccelerationSpeed += %Temp%
+        MouseCurrentSpeed += %MouseCurrentAccelerationSpeed%
+    }
+}
+
+;MouseRotationAngleÀ» ¹öÆ° ¹æÇâÀÇ ¼Óµµ·Î º¯È¯
+{
+    MouseCurrentSpeedToDirection = %MouseRotationAngle%
+    MouseCurrentSpeedToDirection /= 90.0
+    Temp = %MouseCurrentSpeedToDirection%
+
+    if Temp >= 0
+    {
+        if Temp < 1
+        {
+            MouseCurrentSpeedToDirection = 1
+            MouseCurrentSpeedToDirection -= %Temp%
+            Goto EndMouseCurrentSpeedToDirectionCalculation
+        }
+    }
+    if Temp >= 1
+    {
+        if Temp < 2
+        {
+            MouseCurrentSpeedToDirection = 0
+            Temp -= 1
+            MouseCurrentSpeedToDirection -= %Temp%
+            Goto EndMouseCurrentSpeedToDirectionCalculation
+        }
+    }
+    if Temp >= 2
+    {
+        if Temp < 3
+        {
+            MouseCurrentSpeedToDirection = -1
+            Temp -= 2
+            MouseCurrentSpeedToDirection += %Temp%
+            Goto EndMouseCurrentSpeedToDirectionCalculation
+        }
+    }
+    if Temp >= 3
+    {
+        if Temp < 4
+        {
+            MouseCurrentSpeedToDirection = 0
+            Temp -= 3
+            MouseCurrentSpeedToDirection += %Temp%
+            Goto EndMouseCurrentSpeedToDirectionCalculation
+        }
+    }
+}
+EndMouseCurrentSpeedToDirectionCalculation:
+
+;MouseRotationAngle¸¦ 90µµÀÇ ¼Óµµ·Î ¿À¸¥ÂÊÀ¸·Î º¯È¯
+{
+    MouseCurrentSpeedToSide = %MouseRotationAngle%
+    MouseCurrentSpeedToSide /= 90.0
+    Temp = %MouseCurrentSpeedToSide%
+    Transform, Temp, mod, %Temp%, 4
+
+    if Temp >= 0
+    {
+        if Temp < 1
+        {
+            MouseCurrentSpeedToSide = 0
+            MouseCurrentSpeedToSide += %Temp%
+            Goto EndMouseCurrentSpeedToSideCalculation
+        }
+    }
+    if Temp >= 1
+    {
+        if Temp < 2
+        {
+            MouseCurrentSpeedToSide = 1
+            Temp -= 1
+            MouseCurrentSpeedToSide -= %Temp%
+            Goto EndMouseCurrentSpeedToSideCalculation
+        }
+    }
+    if Temp >= 2
+    {
+        if Temp < 3
+        {
+            MouseCurrentSpeedToSide = 0
+            Temp -= 2
+            MouseCurrentSpeedToSide -= %Temp%
+            Goto EndMouseCurrentSpeedToSideCalculation
+        }
+    }
+    if Temp >= 3
+    {
+        if Temp < 4
+        {
+            MouseCurrentSpeedToSide = -1
+            Temp -= 3
+            MouseCurrentSpeedToSide += %Temp%
+            Goto EndMouseCurrentSpeedToSideCalculation
+        }
+    }
+}
+EndMouseCurrentSpeedToSideCalculation:
+
+MouseCurrentSpeedToDirection *= %MouseCurrentSpeed%
+MouseCurrentSpeedToSide *= %MouseCurrentSpeed%
+
+Temp = %MouseRotationAnglePart%
+Transform, Temp, Mod, %Temp%, 2
+
+If Button = NumPadUp
+{
+    if Temp = 1
+    {
+        MouseCurrentSpeedToSide *= 2
+        MouseCurrentSpeedToDirection *= 2
+    }
+
+    MouseCurrentSpeedToDirection *= -1
+    MouseMove, %MouseCurrentSpeedToSide%, %MouseCurrentSpeedToDirection%, 0, R
+}
+else if Button = NumPadDown
+{
+    if Temp = 1
+    {
+        MouseCurrentSpeedToSide *= 2
+        MouseCurrentSpeedToDirection *= 2
+    }
+
+    MouseCurrentSpeedToSide *= -1
+    MouseMove, %MouseCurrentSpeedToSide%, %MouseCurrentSpeedToDirection%, 0, R
+}
+else if Button = NumPadLeft
+{
+    if Temp = 1
+    {
+        MouseCurrentSpeedToSide *= 2
+        MouseCurrentSpeedToDirection *= 2
+    }
+
+    MouseCurrentSpeedToSide *= -1
+    MouseCurrentSpeedToDirection *= -1
+
+    MouseMove, %MouseCurrentSpeedToDirection%, %MouseCurrentSpeedToSide%, 0, R
+}
+else if Button = NumPadRight
+{
+    if Temp = 1
+    {
+        MouseCurrentSpeedToSide *= 2
+        MouseCurrentSpeedToDirection *= 2
+    }
+
+    MouseMove, %MouseCurrentSpeedToDirection%, %MouseCurrentSpeedToSide%, 0, R
+}
+else if Button = NumPadHome
+{
+    Temp = %MouseCurrentSpeedToDirection%
+    Temp -= %MouseCurrentSpeedToSide%
+    Temp *= -1
+    Temp2 = %MouseCurrentSpeedToDirection%
+    Temp2 += %MouseCurrentSpeedToSide%
+    Temp2 *= -1
+    MouseMove, %Temp%, %Temp2%, 0, R
+}
+else if Button = NumPadPgUp
+{
+    Temp = %MouseCurrentSpeedToDirection%
+    Temp += %MouseCurrentSpeedToSide%
+    Temp2 = %MouseCurrentSpeedToDirection%
+    Temp2 -= %MouseCurrentSpeedToSide%
+    Temp2 *= -1
+    MouseMove, %Temp%, %Temp2%, 0, R
+}
+else if Button = NumPadEnd
+{
+    Temp = %MouseCurrentSpeedToDirection%
+    Temp += %MouseCurrentSpeedToSide%
+    Temp *= -1
+    Temp2 = %MouseCurrentSpeedToDirection%
+    Temp2 -= %MouseCurrentSpeedToSide%
+    MouseMove, %Temp%, %Temp2%, 0, R
+}
+else if Button = NumPadPgDn
+{
+    Temp = %MouseCurrentSpeedToDirection%
+    Temp -= %MouseCurrentSpeedToSide%
+    Temp2 *= -1
+    Temp2 = %MouseCurrentSpeedToDirection%
+    Temp2 += %MouseCurrentSpeedToSide%
+    MouseMove, %Temp%, %Temp2%, 0, R
+}
+
+SetTimer, ButtonAccelerationEnd, 10
+return
+
+ButtonAccelerationEnd:
+GetKeyState, kstate, %Button%, P
+if kstate = D
+    Goto ButtonAccelerationStart
+
+SetTimer, ButtonAccelerationEnd, off
+MouseCurrentAccelerationSpeed = 0
+MouseCurrentSpeed = %MouseSpeed%
+Button = 0
+return
+
+; ¸¶¿ì½º ÈÙ À̵¿ Áö¿ø
+
+ButtonWheelSpeedUp:
+MouseWheelSpeed++
+RegRead, MouseWheelSpeedMultiplier, HKCU, Control Panel\Desktop, WheelScrollLines
+If MouseWheelSpeedMultiplier <= 0
+    MouseWheelSpeedMultiplier = 1
+MouseWheelSpeedReal = %MouseWheelSpeed%
+MouseWheelSpeedReal *= %MouseWheelSpeedMultiplier%
+ToolTip, Mouse wheel speed: %MouseWheelSpeedReal% lines
+SetTimer, RemoveToolTip, 1000
+return
+ButtonWheelSpeedDown:
+RegRead, MouseWheelSpeedMultiplier, HKCU, Control Panel\Desktop, WheelScrollLines
+If MouseWheelSpeedMultiplier <= 0
+    MouseWheelSpeedMultiplier = 1
+If MouseWheelSpeedReal > %MouseWheelSpeedMultiplier%
+{
+    MouseWheelSpeed--
+    MouseWheelSpeedReal = %MouseWheelSpeed%
+    MouseWheelSpeedReal *= %MouseWheelSpeedMultiplier%
+}
+If MouseWheelSpeedReal = 1
+    ToolTip, Mouse wheel speed: %MouseWheelSpeedReal% line
+else
+    ToolTip, Mouse wheel speed: %MouseWheelSpeedReal% lines
+SetTimer, RemoveToolTip, 1000
+return
+
+ButtonWheelAccelerationSpeedUp:
+MouseWheelAccelerationSpeed++
+RegRead, MouseWheelSpeedMultiplier, HKCU, Control Panel\Desktop, WheelScrollLines
+If MouseWheelSpeedMultiplier <= 0
+    MouseWheelSpeedMultiplier = 1
+MouseWheelAccelerationSpeedReal = %MouseWheelAccelerationSpeed%
+MouseWheelAccelerationSpeedReal *= %MouseWheelSpeedMultiplier%
+ToolTip, Mouse wheel acceleration speed: %MouseWheelAccelerationSpeedReal% lines
+SetTimer, RemoveToolTip, 1000
+return
+ButtonWheelAccelerationSpeedDown:
+RegRead, MouseWheelSpeedMultiplier, HKCU, Control Panel\Desktop, WheelScrollLines
+If MouseWheelSpeedMultiplier <= 0
+    MouseWheelSpeedMultiplier = 1
+If MouseWheelAccelerationSpeed > 1
+{
+    MouseWheelAccelerationSpeed--
+    MouseWheelAccelerationSpeedReal = %MouseWheelAccelerationSpeed%
+    MouseWheelAccelerationSpeedReal *= %MouseWheelSpeedMultiplier%
+}
+If MouseWheelAccelerationSpeedReal = 1
+    ToolTip, Mouse wheel acceleration speed: %MouseWheelAccelerationSpeedReal% line
+else
+    ToolTip, Mouse wheel acceleration speed: %MouseWheelAccelerationSpeedReal% lines
+SetTimer, RemoveToolTip, 1000
+return
+
+ButtonWheelMaxSpeedUp:
+MouseWheelMaxSpeed++
+RegRead, MouseWheelSpeedMultiplier, HKCU, Control Panel\Desktop, WheelScrollLines
+If MouseWheelSpeedMultiplier <= 0
+    MouseWheelSpeedMultiplier = 1
+MouseWheelMaxSpeedReal = %MouseWheelMaxSpeed%
+MouseWheelMaxSpeedReal *= %MouseWheelSpeedMultiplier%
+ToolTip, Mouse wheel maximum speed: %MouseWheelMaxSpeedReal% lines
+SetTimer, RemoveToolTip, 1000
+return
+ButtonWheelMaxSpeedDown:
+RegRead, MouseWheelSpeedMultiplier, HKCU, Control Panel\Desktop, WheelScrollLines
+If MouseWheelSpeedMultiplier <= 0
+    MouseWheelSpeedMultiplier = 1
+If MouseWheelMaxSpeed > 1
+{
+    MouseWheelMaxSpeed--
+    MouseWheelMaxSpeedReal = %MouseWheelMaxSpeed%
+    MouseWheelMaxSpeedReal *= %MouseWheelSpeedMultiplier%
+}
+If MouseWheelMaxSpeedReal = 1
+    ToolTip, Mouse wheel maximum speed: %MouseWheelMaxSpeedReal% line
+else
+    ToolTip, Mouse wheel maximum speed: %MouseWheelMaxSpeedReal% lines
+SetTimer, RemoveToolTip, 1000
+return
+
+ButtonWheelUp:
+ButtonWheelDown:
+
+If Button <> 0
+{
+    If Button <> %A_ThisHotkey%
+    {
+        MouseWheelCurrentAccelerationSpeed = 0
+        MouseWheelCurrentSpeed = %MouseWheelSpeed%
+    }
+}
+StringReplace, Button, A_ThisHotkey, *
+
+ButtonWheelAccelerationStart:
+If MouseWheelAccelerationSpeed >= 1
+{
+    If MouseWheelMaxSpeed > %MouseWheelCurrentSpeed%
+    {
+        Temp = 0.001
+        Temp *= %MouseWheelAccelerationSpeed%
+        MouseWheelCurrentAccelerationSpeed += %Temp%
+        MouseWheelCurrentSpeed += %MouseWheelCurrentAccelerationSpeed%
+    }
+}
+
+If Button = NumPadSub
+    MouseClick, wheelup,,, %MouseWheelCurrentSpeed%, 0, D
+else if Button = NumPadAdd
+    MouseClick, wheeldown,,, %MouseWheelCurrentSpeed%, 0, D
+
+SetTimer, ButtonWheelAccelerationEnd, 100
+return
+
+ButtonWheelAccelerationEnd:
+GetKeyState, kstate, %Button%, P
+if kstate = D
+    Goto ButtonWheelAccelerationStart
+
+MouseWheelCurrentAccelerationSpeed = 0
+MouseWheelCurrentSpeed = %MouseWheelSpeed%
+Button = 0
+return
+
+RemoveToolTip:
+SetTimer, RemoveToolTip, Off
+ToolTip
+return
+
+ + diff --git a/src/docs/scripts/Seek_(SearchTheStartMenu).ahk b/src/docs/scripts/Seek_(SearchTheStartMenu).ahk new file mode 100644 index 0000000..3be6e4b --- /dev/null +++ b/src/docs/scripts/Seek_(SearchTheStartMenu).ahk @@ -0,0 +1,824 @@ +; Seek -- by Phi +; http://www.autohotkey.com +; Navigating the Start Menu can be a hassle, especially +; if you have installed many programs over time. 'Seek' +; lets you specify a case-insensitive key word/phrase +; that it will use to filter only the matching programs +; and directories from the Start Menu, so that you can +; easily open your target program from a handful of +; matched entries. This eliminates the drudgery of +; searching and traversing the Start Menu. + +;***************************************************************** +; +; Program : Seek +; Coder : Phi +; Updated : Mon Jan 31 10:08:37 2005 +; +; What do you seek, my friend? +; +;***************************************************************** +; +; I have a lot of fun coding this, and hope you will +; enjoy using it too. Feel free to drop me an email with +; your comments and feedback at: phi1618 (*a.t*) gmail +; :D0T: com. +; +; Options: +; -cache Use the cached directory-listing if available +; (this is the default mode when no option is specified) +; -scan Force a directory scan to retrieve the latest +; directory listing +; -scex Scan & exit (this is useful for scheduling the +; potentially time-consuming directory-scanning as +; a background job) +; -help Show this help +; +;***************************************************************** +; +; HOW TO 'SEEK': +; +; 1. 'Seek' is an AutoHotkey script. You can either run it +; as Seek.ahk (original script) or Seek.exe (compiled +; executable). +; +; To obtain Seek.exe, you can download Seek.zip (includes +; both the source code and the compiled binary) from +; http://home.ripway.com/2004-10/188589/ +; Otherwise, you can compile Seek.ahk on your own by +; using AutoHotkey's Ahk2Exe.exe compiler, or you can +; ask me for a copy via email. The filesize is small at +; about 200 kbytes. I can be reached at: phi1618 (*a.t*) +; gmail :D0T: com. +; +; To use Seek.ahk, first, you'll need to install +; AutoHotkey v1.0.25 or higher on your PC (download from +; http://www.autohotkey.com). Next, run the command: +; +; X:\myTools\AutoHotkey\AutoHotkey.exe Y:\myAHK\Seek.ahk +; +; Remember to replace X:\myTools and Y:\myAHK with +; the proper directory names on your PC. +; +; 2. You can place the executable Seek.exe anywhere you +; want. There is no installation required, it doesn't +; write anything to your registry, and it doesn't +; access the Internet at all (no phoning home). To +; uninstall, simply delete Seek.exe. +; +; The only 2 files 'Seek' creates are placed in your +; TMP directory: +; +; a. _Seek.key (cache file for last query string) +; b. _Seek.list (cache file for directory listing) +; +; If you're a purist, you can delete them manually +; when you decide to remove 'Seek' from your system. +; +; 3. The most convenient way to run 'Seek' is via a +; shortcut/hotkey. If you are not already using any +; hotkey management program on your PC, I highly +; recommend AutoHotkey. If you don't intend to install +; any hotkey management program at the moment, you can +; make use of Windows shortcut feature and bind a +; shortcut key (e.g. ALT-F1) to launch 'Seek'. This is +; important so that you can run 'Seek' at anytime and +; anywhere. +; +; 4. When you run 'Seek' for the first time, it'll scan +; your Start Menu, and save the directory listing into +; a cache file. +; +; The following directories are included in the scanning: +; - %A_StartMenu% +; - %A_StartMenuCommon% +; +; By default, subsequent runs will read from the +; cache file so as to reduce the loading time. For +; more info on options, run 'Seek.exe -help'. If you +; think your Start Menu doesn't contain too many +; programs, you can choose not to use the cache and +; instruct 'Seek' to always do a directory scan (via +; option -scan). That way, you will always get the +; latest listing. +; +; 5. When you run 'Seek', a window will appear, waiting +; for you to enter a key word/phrase. After you have +; entered a query string, a list of matching records +; will be displayed. Next, you need to highlight an +; entry and press or click on the 'Open' +; button to run the selected program or open the +; selected directory. +; +;***************************************************************** +; +; TECHNICAL NOTES: +; +; - 'Seek' requires Chris Mallett's AutoHotkey v1.0.25 +; or higher version (http://www.autohotkey.com). +; Thanks to Chris for his great work on AutoHotkey. :) +; +; - The following environment variables must be valid: +; a. TMP +; +;***************************************************************** +; +; KNOWN PROBLEMS: +; +; - Nil +; +;***************************************************************** +; +; IMPLEMENTED SUGGESTIONS: +; +; - Highlight 1st matching record by default so that +; user can just hit to run it. +; (Suggested by Yih Yeong) +; +; - Enable double-click on the listing of the search +; results to launch the program. +; (Suggested by Yih Yeong & Jack) +; +; - Auto real-time incremental search. +; (Suggested by Rajat) +; +; - Fuzzy search when user enters multiple query strings, +; separated by space. +; (Suggested by Rajat) +; +;***************************************************************** +; +; SUGGESTED FEATURES (MAY OR MAY NOT BE IMPLEMENTED): +; +; - Log the launch history. List the most frequently +; used programs at the top of the search results. +; (Suggested by Yih Yeong) +; +; - Instead of using list box, can it display a series +; of application icons so that hovering the cursor +; over the icon will display a tooltip containing the +; program information (path, etc). +; (Suggested by Yih Yeong) +; +; - Instead of matching text in the middle, match only +; those program/directory names that begin with the +; query string. +; (Suggested by Stefan) +; +; - Add favorites management. Launch group of programs +; in a single run. +; (Suggested by Atomhrt) +; +; - Integrate Seek into the Windows taskbar/toolbar so that +; it is always available and there is no need to bind a +; hotkey to launch Seek. +; (Suggested by Deniz Akay) +; +; - Search by wildcards/regex. +; (Suggested by Steve) +; +;***************************************************************** +; +; CHANGE HISTORY: +; +; * v1.1.0 +; - Initial release. +; +; * v1.1.1 +; - Removed maximise-window option since some programs don't +; function well with it. +; - Added double-click detection to trigger 'Open' function. +; +; * v2.0.0 +; - Integrated the 'Seek' popup window into the output screen +; so that user can re-enter the query string to search for +; something else without having to exit and run Seek again. +; - Added 'Scan Start-Menu' button. +; - Added real-time incremental search which will auto +; filter for matching records while you type away, +; without waiting for you to press . +; - Added internal switch (TrackKeyPhrase) to track search-string. +; - Added internal switch (ToolTipFilename) to show filename +; using tooltip. +; +; * v2.0.1 +; - Added horizontal scrollbar to ListBox so that very +; long records will not be cut-off in the middle. +; +; * v2.0.2 +; - Allowed user to add their own customised list of directories +; to be included in the scanning. User just needs to create a +; text file 'Seek.dir' in the same directory as Seek.exe or +; Seek.ahk, and specify the full path of the directory to be +; added, one directory per line. Do not enclose the path in +; quotes or double-quotes. +; +; * v2.0.3 +; - Added /on option to DIR-command to sort by name. +; - Fuzzy search when user enters multiple query strings, +; separated by space, for e.g. "med pla". It's a match +; when all the strings ("med" & "pla") are found. This +; will match "Media Player", "Macromedia Flash Player", +; "Play Medieval King", "medpla", "plamed". +; - Corrected tab-movement sequence by adding all buttons +; right from the start, but disable them until they can +; be used. +; - Added status bar to replace tooltip-feedback. +; - Removed obsolete internal switch (ToolTipFilename). +; - Replaced the use of "dir" command with AutoHotkey's +; own "Loop" command for scanning directory contents. +; "dir" cannot handle extended character set and thus +; non-English (e.g German) directory and filename are +; captured wrongly. (Thanks Wolfgang Bujatti and +; Sietse Fliege for testing this modification) +; - Added internal switch (ScanMode) to define whether +; files and/or directories are to be included in scan. +; - Replaced hardcoded directory paths of Start Menu with +; built-in variables A_StartMenu, A_StartMenuCommon. +; With this, Seek now works for different locales with +; different naming convention of the Start Menu. +; (Thanks Wolfgang Bujatti and Sietse Fliege for help +; in testing another method before these new variables +; are available.) +; - Added the pre-selection of the last-run program +; record so that a quick double- will run it. +; +;***************************************************************** + +;************************** +;<--- BEGIN OF PROGRAM ---> +;************************** + +;==== Your Customisation =================================== + +; Specify which program to use when opening a directory. +; If the program cannot be found or is not specified +; (i.e. variable is unassigned or assigned a null value), +; the default Explorer will be used. +dirExplorer = E:\utl\xplorer2_lite\xplorer2.exe + +; User's customised list of additional directories to be +; included in the scanning. The full path must not be +; enclosed by quotes or double-quotes. If this file is +; missing, only the default directories will be scanned. +SeekMyDir = %A_ScriptDir%\Seek.dir + +; Specify the filename and directory location to save +; the cached directory/program listing. There is no +; need to change this unless you want to. +dirListing = %A_Temp%\_Seek.list + +; Specify the filename and directory location to save +; the cached key word/phrase of last search. There is +; no need to change this unless you want to. +keyPhrase = %A_Temp%\_Seek.key + +; Track search string (ON/OFF) +; If ON, the last-used query string will be re-used as +; the default query string the next time you run Seek. +; If OFF, the last-used query string will not be tracked +; and there will not be a default query string value the +; next time you run Seek. +TrackKeyPhrase = ON + +; Specify what should be included in scan. +; 0: Directories are excluded (only files). +; 1: All files and directories are included. +; 2: Only directories are included (no files). +ScanMode = 1 + +;........................................................... + +; INIT +;#NoTrayIcon +StringCaseSense, Off +version = Seek v2.0.3 + +; DISPLAY HELP INSTRUCTIONS +If 1 in --help,-help,/h,-h,/?,-? +{ + MsgBox,, %version%, Navigating the Start Menu can be a hassle, especially if you have installed many programs over time. 'Seek' lets you specify a case-insensitive key word/phrase that it will use to filter only the matching programs and directories from the Start Menu, so that you can easily open your target program from a handful of matched entries. This eliminates the drudgery of searching and traversing the Start Menu.`n`nI have a lot of fun coding this, and hope you will enjoy using it too. Feel free to drop me an email with your comments and feedback at: phi1618 (*a.t*) gmail :D0T: com.`n`nOptions:`n -cache`tUse the cached directory-listing if available (this is the default mode when no option is specified)`n -scan`tForce a directory scan to retrieve the latest directory listing`n -scex`tScan & exit (this is useful for scheduling the potentially time-consuming directory-scanning as a background job)`n -help`tShow this help + Goto QuitNoSave +} + +; CHECK THAT THE MANDATORY ENVIRONMENT VARIABLES EXIST AND ARE VALID +; *TMP* +IfNotExist, %A_Temp% ; PATH DOES NOT EXIST +{ + MsgBox This mandatory environment variable is either not defined or invalid:`n`n TMP = %A_Temp%`n`nPlease fix it before running Seek. + Goto QuitNoSave +} + +; IF NOT SCAN-AND-EXIT +IfNotEqual 1, -scex +{ + ; RETRIEVE THE LAST USED KEY-PHRASE FROM CACHE FILE + ; TO BE USED AS THE DEFAULT QUERY STRING + If TrackKeyPhrase = ON + { + FileReadLine, PrevKeyPhrase, %keyPhrase%, 1 + FileReadLine, PrevOpenTarget, %keyPhrase%, 2 + } + NewKeyPhrase = %PrevKeyPhrase% + NewOpenTarget = %PrevOpenTarget% + + ; ADD THE TEXT BOX FOR USER TO ENTER THE QUERY STRING + Gui, 1:Add, Edit, vFilename W600, %NewKeyPhrase% + + ; ADD MY FAV TAGLINE + Gui, 1:Add, Text, X625 Y10, What do you seek, my friend? + + ; ADD THE STATUS BAR FOR PROVIDING FEEDBACK TO USER + Gui, 1:Add, Text, vStatusBar X10 Y31 R1 W764 + + ; ADD THE SELECTION LISTBOX FOR DISPLAYING SEARCH RESULTS + Gui, 1:Add, ListBox, vOpenTarget gTargetSelection X10 Y53 R28 W764 HScroll Disabled, %List% + + ; ADD THESE BUTTONS, BUT DISABLE THEM FOR NOW + Gui, 1:Add, Button, gButtonOPEN vButtonOPEN Default X10 Y446 Disabled, Open + Gui, 1:Add, Button, gButtonOPENDIR vButtonOPENDIR X59 Y446 Disabled, Open Directory + Gui, 1:Add, Button, gButtonSCANSTARTMENU vButtonSCANSTARTMENU X340 Y446 Disabled, Scan Start-Menu + + ; ADD THE EXIT BUTTON + Gui, 1:Add, Button, gButtonEXIT X743 Y446, Exit + + ; POP-UP THE QUERY WINDOW + Gui, 1:Show, Center, %version% +} + +; ENABLE RE-SCANNING OF LATEST DIRECTORY LISTING +If 1 in -scan,-scex + rescan = Y +; CHECK WHETHER THE DIRECTORY LISTING CACHE FILE ALREADY EXISTS. IF NOT, DO A RE-SCAN. +Else IfNotExist, %dirListing% + rescan = Y + +If rescan = Y ; DO A RE-SCAN +{ + ; SHOW STATUS UNLESS USER SPECIFIES SCAN-AND-EXIT OPTION + IfNotEqual 1, -scex + GuiControl,, StatusBar, Scanning directory listing... + + ; SCAN START-MENU AND STORE DIRECTORY/PROGRAM LISTINGS IN CACHE FILE + Gosub ScanStartMenu + + ; QUIT IF USER SPECIFIES SCAN-AND-EXIT OPTION + IfEqual 1, -scex, Goto, QuitNoSave +} + +GuiControl,, StatusBar, Retrieving last query result... + +; RETRIEVE THE MATCHING LIST FOR THE LAST USED KEY-PHRASE +Gosub SilentFindMatches + +; REMOVE THE STATUS TEXT +GuiControl,, StatusBar, + +; DIRECTORY LISTING IS NOW LOADED. ENABLE THE OTHER BUTTONS. +; THESE BUTTONS ARE DISABLED EARLIER BECAUSE THEY SHOULD NOT +; BE FUNCTIONAL UNTIL THIS PART OF THE SCRIPT. +GuiControl, 1:Enable, ButtonOPEN +GuiControl, 1:Enable, ButtonOPENDIR +GuiControl, 1:Enable, ButtonSCANSTARTMENU + +; TURN ON INCREMENTAL SEARCH +SetTimer, tIncrementalSearch, 500 + +; REFRESH THE GUI +Gosub EnterQuery + +Return + +;*********************************************************** +; * +; END OF MAIN PROGRAM * +; * +;*********************************************************** + + +;=== BEGIN ButtonSCANSTARTMENU EVENT ======================= + +ButtonSCANSTARTMENU: + +Gui, 1:Submit, NoHide +GuiControl,, StatusBar, Scanning directory listing... + +; DISABLE LISTBOX WHILE SCANNING IS IN PROGRESS +GuiControl, 1:Disable, OpenTarget +GuiControl, 1:Disable, ButtonEXIT +GuiControl, 1:Disable, ButtonOPEN +GuiControl, 1:Disable, ButtonOPENDIR +GuiControl, 1:Disable, ButtonSCANSTARTMENU + +; DO THE SCANNING +Gosub ScanStartMenu + +; INFORM USER THAT SCANNING HAS COMPLETED +If Filename = +{ + ; IF QUERY STRING IS EMPTY... + GuiControl, 1:Enable, ButtonEXIT + GuiControl, 1:Enable, ButtonOPEN + GuiControl, 1:Enable, ButtonSCANSTARTMENU + GuiControl,, StatusBar, Scan completed. + Gosub EnterQuery +} +Else +{ + ; IF QUERY STRING EXISTS... + ; FILTER FOR SEARCH STRING WITH THE NEW LISTING + NewKeyPhrase = + Gosub FindMatches +} +Return + +;... END ButtonSCANSTARTMENU EVENT ......................... + + +;=== BEGIN ScanStartMenu SUBROUTINE ======================== +; SCAN THE START-MENU AND STORE THE DIRECTORY/PROGRAM +; LISTINGS IN A CACHE FILE +ScanStartMenu: + +; DEFINE THE DIRECTORY PATHS TO RETRIEVE. +; THE PATH MUST NOT BE ENCLOSED BY QUOTES OR DOUBLE-QUOTES. +; +; FOR ENGLISH VERSION OF WINDOWS +scanPath = %A_StartMenu%|%A_StartMenuCommon% + +; INCLUDE ADDITIONAL USER-DEFINED PATHS FOR SCANNING +IfExist, %SeekMyDir% +{ + Loop, read, %SeekMyDir% + { + IfNotExist, %A_LoopReadLine% + MsgBox, 8192, %version%, Processing your customised directory list...`n`n"%A_LoopReadLine%" does not exist and will be excluded from the scanning.`nPlease update [ %SeekMyDir% ]. + Else + scanPath = %scanPath%|%A_LoopReadLine% + } +} + +; DELETE EXISTING FILE BEFORE CREATING A NEW VERSION +FileDelete, %dirListing% + +; SCAN DIRECTORY LISTING (DELIMITER = |) BY RECURSING +; EACH DIRECTORY TO RETRIEVE THE CONTENTS. HIDDEN FILES +; ARE EXCLUDED. +Loop, parse, scanPath, | +{ + Loop, %A_LoopField%\*, %ScanMode%, 1 + { + FileGetAttrib, fileAttrib, %A_LoopFileFullPath% + IfNotInString, fileAttrib, H ; EXCLUDE HIDDEN FILE + FileAppend, %A_LoopFileFullPath%`n, %dirListing% + } +} + +Return + +;... END ScanStartMenu SUBROUTINE .......................... + + +;=== BEGIN FindMatches SUBROUTINE ========================== +; SEARCH AND DISPLAY ALL MATCHING RECORDS IN THE LISTBOX +FindMatches: + +Gui, 1:Submit, NoHide +CurFilename = %Filename% +GuiControl,, StatusBar, + +; CHECK FOR EMPTY QUERY STRING +If CurFilename = +{ + MsgBox, 8192, %version%, Please enter the key word/phrase to search for. + Goto EnterQuery +} + +; tIncrementalSearch IS BEING INTERRUPTED. LET IT FINISHES. +If NewKeyPhrase <> %CurFilename% +{ + ; INFORM USER THAT PATIENCE IS A VIRTUE + GuiControl,, StatusBar, Seeking... + ResumeFindMatches = TRUE + Return +} + +If List = | +{ + ; NOT EVEN A SINGLE MATCHING RECORD IS FOUND. + ; LET USER MODIFY THE QUERY STRING AND TRY AGAIN. + MsgBox, 8192, %version%, The query string "%CurFilename%" does not match any record. Try again. + GuiControl, 1:Disable, ButtonOPENDIR + GuiControl, 1:Enable, ButtonSCANSTARTMENU + Goto EnterQuery +} +Else +{ + ; SELECT THE FIRST RECORD IF NO OTHER RECORD HAS BEEN SELECTED + Gui, 1:Submit, NoHide + GuiControl, 1:Enable, OpenTarget + GuiControl, 1:Enable, ButtonOPEN + GuiControl, 1:Enable, ButtonOPENDIR + GuiControl, 1:Enable, ButtonSCANSTARTMENU + GuiControl, Focus, OpenTarget + If OpenTarget = + GuiControl, 1:Choose, OpenTarget, |1 +} + +; REFRESH GUI +Gui, 1:Show, Center, %version% + +Return + +;... END FindMatches SUBROUTINE ............................ + + +;=== BEGIN SilentFindMatches SUBROUTINE ==================== + +SilentFindMatches: + +Gui, 1:Submit, NoHide +sfmFilename = %Filename% + +; FILTER MATCHING RECORDS BASED ON USER QUERY STRING +List = | +If sfmFilename <> +{ + Loop, read, %dirListing% + { + Gui, 1:Submit, NoHide + tFilename = %Filename% + If sfmFilename <> %tFilename% + { + ; USER HAS CHANGED THE SEARCH STRING. THERE IS NO POINT + ; TO CONTINUE SEARCHING USING THE OLD STRING, SO ABORT. + Return + } + Else + { + ; APPEND MATCHING RECORDS INTO THE LIST + SplitPath, A_LoopReadLine, name, dir, ext, name_no_ext, drive + MatchFound = Y + Loop, parse, sfmFilename, %A_Space% + { + IfNotInString, name, %A_LoopField% + { + MatchFound = N + Break + } + } + IfEqual, MatchFound, Y + { + ; ADD RECORD TO LIST + List = %List%%A_LoopReadLine%| + + ; PRE-SELECT IF THIS MATCHES THE LAST-RUN PROGRAM + If (A_LoopReadLine = PrevOpenTarget && sfmFilename = PrevKeyPhrase) + List = %List%| + } + } + } +} + +; REFRESH LIST WITH SEARCH RESULTS +GuiControl, 1:, OpenTarget, %List% + +If List = | +{ + ; NO MATCHING RECORD IS FOUND + ; DISABLE LISTBOX + GuiControl, 1:Disable, OpenTarget + GuiControl, 1:Disable, ButtonOPENDIR +} +Else +{ + ; MATCHING RECORDS ARE FOUND + ; ENABLE LISTBOX + GuiControl, 1:Enable, OpenTarget + GuiControl, 1:Enable, ButtonOPENDIR +} + +; REFRESH GUI +Gui, 1:Show, Center, %version% + +Return + +;... END SilentFindMatches SUBROUTINE ...................... + + +;=== BEGIN EnterQuery SUBROUTINE =========================== +; REFRESH GUI AND LET USER ENTERS SEARCH STRING +EnterQuery: +GuiControl, Focus, Filename +GuiControl, 1:Enable, ButtonOPEN +Gui, 1:Show, Center, %version% +Return +;... END EnterQuery SUBROUTINE ............................. + + +;=== BEGIN TargetSelection EVENT =========================== + +TargetSelection: +Gui, 1:Submit, NoHide + +; DOUBLE-CLICK DETECTION TO LAUNCH PROGRAM +If A_GuiControlEvent = DoubleClick +{ + Gosub ButtonOPEN +} +Else +{ + ; STUB - FOR FUTURE USE + If A_GuiControlEvent = Normal + { + ; DO NOTHING FOR NOW + } +} + +Return + +;... END TargetSelection EVENT ............................. + + +;=== BEGIN ButtonOPEN EVENT ================================ + +; USER CLICKED ON 'OPEN' BUTTON OR PRESSED +ButtonOPEN: +Gui, 1:Submit, NoHide + +; FIND OUT WHERE THE KEYBOARD FOCUS WAS. IF IT'S THE +; TEXT FIELD, RUN THE QUERY TO FIND MATCHES. ELSE, IT +; MUST BE FROM THE LISTBOX. +GuiControlGet, focusControl, 1:Focus +If focusControl = Edit1 +{ + GuiControl, Focus, OpenTarget + GuiControl, 1:Disable, OpenTarget + GuiControl, 1:Disable, ButtonOPENDIR + GuiControl, 1:Disable, ButtonSCANSTARTMENU + Goto FindMatches +} + +; NO RECORD FROM THE LISTBOX IS SELECTED +If OpenTarget = +{ + MsgBox, 8192, %version%, Please make a selection before hitting .`nPress to exit. + Goto EnterQuery +} + +; SELECTED RECORD DOES NOT EXIST (FILE OR DIRECTORY NOT FOUND) +IfNotExist, %OpenTarget% +{ + MsgBox, 8192, %version%, %OpenTarget% does not exist. This means that the directory cache is outdated. You may click on the 'Scan Start-Menu' button below to update the directory cache with your latest directory listing now. + Goto EnterQuery +} + +; CHECK WHETHER THE SELECTED RECORD IS A FILE OR DIRECTORY +FileGetAttrib, fileAttrib, %OpenTarget% +IfInString, fileAttrib, D ; IS DIRECTORY +{ + Gosub sOpenDir +} +Else If fileAttrib <> ; IS FILE +{ + Run, %OpenTarget% +} +Else +{ + MsgBox %OpenTarget% is neither a DIRECTORY or a FILE. This shouldn't happen. Seek cannot proceed. Quitting... +} + +Goto Quit + +;... END ButtonOPEN EVENT .................................. + + +;=== BEGIN ButtonOPENDIR EVENT ============================= + +; USER CLICKED ON 'OPEN DIRECTORY' BUTTON +ButtonOPENDIR: +Gui, 1:Submit, NoHide + +; CHECK THAT USER HAS SELECTED A RECORD ALREADY +If OpenTarget = +{ + MsgBox, 8192, %version%, Please make a selection first. + Goto EnterQuery +} + +; RUN SUBROUTINE TO OPEN A DIRECTORY +Gosub sOpenDir + +Goto Quit + +;... END ButtonOPENDIR EVENT ............................... + + +;=== BEGIN sOpenDir SUBROUTINE ============================= + +sOpenDir: + +; IF USER SELECTED A FILE-RECORD INSTEAD OF A DIRECTORY-RECORD, +; EXTRACT THE DIRECTORY PATH. (I'M USING DriveGet INSTEAD OF +; FileGetAttrib TO ALLOW THE SCENARIO WHEREBY OpenTarget IS +; INVALID BUT THE DIRECTORY PATH OF OpenTarget IS VALID. +DriveGet, status, status, %OpenTarget% +If status <> Ready ; NOT A DIRECTORY +{ + SplitPath, OpenTarget, name, dir, ext, name_no_ext, drive + OpenTarget = %dir% +} + +; CHECK WHETHER DIRECTORY EXISTS +IfNotExist, %OpenTarget% +{ + MsgBox, 8192, %version%, %OpenTarget% does not exist. This means that the directory cache is outdated. You may click on the 'Scan Start-Menu' button below to update the directory cache with your latest directory listing now. + Goto EnterQuery +} + +; OPEN THE DIRECTORY +IfExist, %dirExplorer% +{ + Run, "%dirExplorer%" "%OpenTarget%", , Max ; OPEN WITH CUSTOMISED FILE EXPLORER +} +Else +{ + Run, %OpenTarget%, , Max ; OPEN WITH DEFAULT WINDOWS FILE EXPLORER +} +Return + +;... END sOpenDir SUBROUTINE ............................... + + +;=== BEGIN tIncrementalSearch EVENT ======================== +; AUTOMATICALLY CONDUCT REAL-TIME INCREMENTAL SEARCH +; TO FIND MATCHING RECORDS WITHOUT WAITING FOR USER +; TO PRESS +tIncrementalSearch: + +Loop +; REPEAT SEARCHING UNTIL USER HAS STOPPED CHANGING THE QUERY STRING +{ + Gui, 1:Submit, NoHide + CurFilename = %Filename% + If NewKeyPhrase <> %CurFilename% + { + OpenTarget = + Gosub SilentFindMatches + NewKeyPhrase = %CurFilename% + Sleep, 100 ; DON'T HOG THE CPU! + } + Else + { + ; QUERY STRING HAS STOPPED CHANGING + Break + } +} + +; USER HAS HIT TO LOOK FOR MATCHING RECORDS. +; RUN FindMatches NOW. +If ResumeFindMatches = TRUE +{ + ResumeFindMatches = FALSE + Gosub FindMatches +} + +; CONTINUE MONITORING FOR CHANGES +SetTimer, tIncrementalSearch, 500 + +Return + +;... END tIncrementalSearch EVENT .......................... + + +;=== BEGIN Quit SUBROUTINE ================================= + +Quit: +ButtonEXIT: +GuiClose: +GuiEscape: + +Gui, 1:Submit, NoHide + +; SAVE THE KEY WORD/PHRASE FOR NEXT RUN IF IT HAS CHANGED +If TrackKeyPhrase = ON +{ + If (PrevKeyPhrase <> Filename || PrevOpenTarget <> OpenTarget) + { + FileDelete, %keyPhrase% + FileAppend, %Filename%`n, %keyPhrase% + FileAppend, %OpenTarget%`n, %keyPhrase% + } +} + +QuitNoSave: +ExitApp ; JOB DONE. G'DAY! + +;... END Quit SUBROUTINE ................................... + + +;************************ +;<--- END OF PROGRAM ---> +;************************ + +; /* vim: set noexpandtab shiftwidth=4: */ diff --git a/src/docs/scripts/Seek_(SearchTheStartMenu).htm b/src/docs/scripts/Seek_(SearchTheStartMenu).htm new file mode 100644 index 0000000..2ef866c --- /dev/null +++ b/src/docs/scripts/Seek_(SearchTheStartMenu).htm @@ -0,0 +1,832 @@ + + +Seek -- by Phi + + + + + + + +

Seek -- by Phi

+ +

½ÃÀÛ ¸Þ´º¸¦ Ç×ÇØÇÏ´Â °ÍÀº ³­»ðÇÒ ¼ö ÀÖ½À´Ï´Ù. ƯÈ÷ ½Ã°£ÀÌ Áö³ª¸é¼­ ¸¹Àº ÇÁ·Î±×·¥À» ¼³Ä¡Çß´Ù¸é ´õ¿í ³­»ðÇÕ´Ï´Ù. 'Seek'À¸·Î ´ë¼Ò¹®ÀÚ¸¦ ±¸ºÐÇÏÁö ¾Ê°í Å° ´Ü¾î/¹®±¸¸¦ ÁöÁ¤ÇÏ¸é ½ÃÀÛ ¸Þ´º·ÎºÎÅÍ ¿ÀÁ÷ ºÎÇÕÇÏ´Â ÇÁ·Î±×·¥°ú µð·ºÅ丮¸¸ ¿©°úÇÕ´Ï´Ù. ±×·¡¼­ ½±°Ô ¸ñÇ¥ ÇÁ·Î±×·¥À» ¸î °³ ¾ÈµÇ´Â ºÎÇÕ ¿£Æ®¸® Áß Çϳª¿¡¼­ ¿­ ¼ö ÀÖ½À´Ï´Ù. ÀÌ·¸°Ô ÇÏ¸é ½ÃÀÛ ¸Þ´º¸¦ °Ë»öÇÏ°í ¼øȸÇÏ´Â Áö°Ü¿î ÀÛ¾÷À» ÇÏÁö ¾Ê¾Æµµ µË´Ï´Ù. +

+

ÀÌ ½ºÅ©¸³Æ® ³»·Á¹Þ±â  |  ´Ù¸¥ »ùÇà ½ºÅ©¸³Æ®  |  È¨À¸·Î

+ +
;*****************************************************************
+;
+;  Program : Seek
+;  Coder   : Phi
+;  Updated : Mon Jan 31 10:08:37 2005
+;
+;  ¿©·¯ºÐ, ¹«¾ùÀ» ã°í °è½Ê´Ï±î?
+;
+;*****************************************************************
+;
+;  ÇÊÀÚ´Â Àç¹ÌÀÖ°Ô ÀÌ ÄÚµùÀ» Áñ°å½À´Ï´Ù. ¸ðÂÉ·Ï ¿©·¯ºÐµµ
+;  Àç¹ÌÀÖ°Ô »ç¿ëÇϽñ⸦ ¹Ù¶ø´Ï´Ù. ÁÖÀúÇÏÁö ¸¶½Ã°í À̸ÞÀÏÀ»
+;  ÁֽʽÿÀ. ³íÆòÀ̵ç Çǵå¹éÀ̵ç ȯ¿µÇÕ´Ï´Ù: phi1618 (*a.t*) gmail
+;  :D0T: com.
+;
+;  ¿É¼Ç:
+;    -cache °¡´ÉÇϸé ij½¬µÈ µð·ºÅ丮 ¸®½ºÆ®¸¦ »ç¿ëÇÑ´Ù
+;           (¾Æ¹« ¿É¼Çµµ ÁöÁ¤ÇÏÁö ¾ÊÀ¸¸é ÀÌ°ÍÀÌ ±âº»°ªÀÌ´Ù)
+;    -scan  µð·ºÅ丮¸¦ ½ºÄµÇØ 
+              ÃÖ±ÙÀÇ µð·ºÅ丮 ¸ñ·ÏÀ» ¿­¶÷ÇÑ´Ù
+;    -scex  ½ºÄµ & Á¾·á (ÀáÀçÀûÀ¸·Î ½Ã°£À» ¼Ò¸ðÇÏ´Â 
+              µð·ºÅ丮 ½ºÄµ ÀÛ¾÷À» ¹è°æ ÀÛ¾÷À¸·Î ¼³Á¤ÇÒ °æ¿ì
+;              À¯¿ëÇÏ´Ù)
+;    -help  ÀÌ µµ¿ò¸»À» º¸¿©ÁØ´Ù
+;
+;*****************************************************************
+;
+; HOW TO 'SEEK':
+;
+; 1. 'Seek'Àº ¿ÀÅäÇÖÅ° ½ºÅ©¸³Æ®ÀÔ´Ï´Ù. 
+;    Seek.ahk (¿øº» ½ºÅ©¸³Æ®) ¶Ç´Â Seek.exe (ÄÄÆÄÀÏµÈ ½ÇÇà ÆÄÀÏ)
+;    ·Î ½ÇÇàÇÒ ¼ö ÀÖ½À´Ï´Ù.
+;
+;    Seek.exe¸¦ ¾òÀ¸·Á¸é, Seek.zipÀ» ³»·Á¹ÞÀ¸¸é µË´Ï´Ù 
+;    (¾È¿¡ ¼Ò½º ÄÚµå¿Í ÄÄÆÄÀÏµÈ ÀÌÁø ÆÄÀÏÀÌ ¸ðµÎ µé¾î ÀÖ½À´Ï´Ù)
+;    http://home.ripway.com/2004-10/188589/
+;    ±×·¸Áö ¾ÊÀ¸¸é, ½º½º·Î Seek.ahk¸¦ ÄÄÆÄÀÏÇصµ µË´Ï´Ù
+;    ¿ÀÅäÇÖÅ°ÀÇ Ahk2Exe.exe ÄÄÆÄÀÏ·¯¸¦ »ç¿ëÇϰųª, ¾Æ´Ï¸é
+;    ÇÊÀÚ¿¡°Ô À̸ÞÀÏ·Î »çº»À» ¿äûÇصµ µË´Ï´Ù. ÆÄÀÏ Å©±â´Â ´ë·«
+;    200 ų·Î¹ÙÀÌÆ® Á¤µµ·Ï ÀÛ½À´Ï´Ù. ´ÙÀ½ À̸ÞÀÏ·Î ¿¬¶ô ÁֽʽÿÀ: phi1618 (*a.t*)
+;    gmail :D0T: com.
+;
+;    Seek.ahk¸¦ »ç¿ëÇÏ·Á¸é, ¸ÕÀú, ¿©·¯ºÐÀÇ ÄÄÇ»ÅÍ¿¡
+;    AutoHotkey v1.0.25 ÀÌ»óÀ» ¼³Ä¡ÇØ¾ß ÇÕ´Ï´Ù.
+;    (http://www.autohotkey.com¿¡¼­ ³»·Á ¹ÞÀ¸½Ê½Ã¿À). ´ÙÀ½ ¸í·É¾î¸¦ ½ÇÇàÇÕ´Ï´Ù:
+;
+;    X:\myTools\AutoHotkey\AutoHotkey.exe Y:\myAHK\Seek.ahk
+;
+;    ÀØÁö ¸»°í X:\myTools ±×¸®°í Y:\myAHK¸¦ 
+;    ¿©·¯ºÐÀÇ ÄÄÇ»ÅÍ¿¡ ¸Â´Â ÀûÀýÇÑ µð·ºÅ丮 À̸§À¸·Î ±³Ã¼ÇϽʽÿÀ.
+;
+; 2. ½ÇÇà ÆÄÀÏ Seek.exe´Â ¾îµðµç ¸¶À½·¡µµ µÎ¼Åµµ µË´Ï´Ù.
+;    ¼³Ä¡°¡ ÇÊ¿ä ¾ø½À´Ï´Ù. ·¹Áö½ºÆ®¸®¿¡ ÀüÇô ¾²Áöµµ ¾ÊÀ¸¸ç
+;    ÀÎÅͳݿ¡µµ ÀüÇô Á¢±ÙÇÏÁö ¾Ê½À´Ï´Ù
+;    ¼³Ä¡¸¦ Á¦°ÅÇÏ·Á¸é,
+;    ±×³É Seek.exe¸¦ »èÁ¦ÇÏ¸é ³¡ÀÔ´Ï´Ù.
+;
+;    'Seek'ÀÌ »ý¼ºÇÏ´Â µÎ °³ÀÇ 2 ÆÄÀϸ¸ 
+;    TMP µð·ºÅ丮¿¡ ¹èÄ¡µË´Ï´Ù:
+;
+;      a. _Seek.key  (¸¶Áö¸· ÁúÀÇ ¹®ÀÚ¿­À» À§ÇÑ Ä³½¬ ÆÄÀÏ)
+;      b. _Seek.list (µð·ºÅ丮 ¸®½ºÆ®¸¦ À§ÇÑ Ä³½¬ ÆÄÀÏ)
+;
+;    ¿©·¯ºÐÀÌ ¼ø¼ö ÁÖÀÇÀÚ¶ó¸é, ½Ã½ºÅÛ¿¡¼­ 'Seek'À» Á¦°ÅÇϱâ·Î
+;    °áÁ¤ÇÑ ¼ø°£ ¼Õ¼ö Áö¿ö ¹ö¸®¸é µË´Ï´Ù.
+;
+; 3. 'Seek'À» ½ÇÇàÇÏ´Â °¡Àå Æí¸®ÇÑ ¹æ¹ýÀº ´ÜÃàÅ°/ÇÖÅ°¸¦
+;    ÀÌ¿ëÇÏ´Â °ÍÀÔ´Ï´Ù. ¿©·¯ºÐÀÇ ÄÄÇ»ÅÍ¿¡
+;    ¾ÆÁ÷ ÇÖÅ° °ü¸® ÇÁ·Î±×·¥À» »ç¿ëÇÏ°í ÀÖÁö ¾Ê´Ù¸é, ÇÊÀÚ´Â 
+;    AutoHotkey¸¦ °­·Â ÃßõÇÕ´Ï´Ù. Áö±Ý ´çÀåÀº
+;    ÇÖÅ° °ü¸® ÇÁ·Î±×·¥À» ¼³Ä¡ÇÏ°í ½ÍÁö ¾Ê´Ù¸é
+;    À©µµ¿ìÁîÀÇ ´ÜÃàÅ°¸¦ ÀÌ¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù.  'Seek'¸¦ ±âµ¿ÇÒ
+;    ´ÜÃà Å° (¿¹, ALT-F1)¸¦ ¹­À¸¸é µË´Ï´Ù. ÀÌ°ÍÀº Áß¿äÇÕ´Ï´Ù.
+;    ¾ðÁ¦µçÁö ¾îµð¼­µç 'Seek'¸¦
+;    ½ÇÇàÇÒ ¼ö Àֱ⠶§¹®ÀÔ´Ï´Ù..
+;
+; 4. óÀ½ 'Seek'¸¦ ½ÇÇàÇÒ ¶§, ½ÃÀÛ ¸Þ´º¸¦ ½ºÄµÇÕ´Ï´Ù
+;    ±×¸®°í µð·ºÅ丮 ¸®½ºÆ®¸¦ 
+;    ij½¬ ÆÄÀÏ¿¡ ÀúÀåÇÕ´Ï´Ù.
+;
+;    ´ÙÀ½ µð·ºÅ丮°¡ ½ºÄµ ´ë»ó¿¡ Æ÷ÇԵ˴ϴÙ:
+;    - %A_StartMenu%
+;    - %A_StartMenuCommon%
+;
+;    ±âº»°ªÀ¸·Î, ¿¬ÀÌÀº ½ÇÇàÀº ij½¬ ÆÄÀϷκÎÅÍ ÀнÀ´Ï´Ù
+;    ±×·¡¼­ ÀûÀç ½Ã°£À» Àý¾àÇÕ´Ï´Ù. 
+;    ¿É¼Ç¿¡ °üÇÑ ´õ ÀÚ¼¼ÇÑ Á¤º¸´Â 'Seek.exe -help'¸¦ ½ÇÇàÇϽʽÿÀ. 
+;    ½ÃÀÛ ¸Þ´º¿¡ º°·Î ÇÁ·Î±×·¥ÀÌ ¾ø´Ù¸é
+;    ij½¬ »ç¿ëÀ» Æ÷±âÇÏ°í ¾ðÁ¦³ª µð·ºÅ丮 ½ºÄµÀ»
+;    »ç¿ëÇ϶ó°í 'Seek'¿¡°Ô ¾Ë¸± ¼ö ÀÖ½À´Ï´Ù (¿É¼Ç -scan).
+;    ±×·± ½ÄÀ¸·Î ¾ðÁ¦³ª ÃֽŠ¸ñ·ÏÀ» ¾òÀ» ¼ö ÀÖ½À´Ï´Ù.
+;
+; 5. 'Seek'À» ½ÇÇàÇÒ ¶§, âÀÌ ³ªÅ¸³ª¼­
+;    ¿©·¯ºÐÀÌ Å° ´Ü¾î/¹®±¸¸¦ ÀÔ·ÂÇϱ⸦ ±â´Ù¸³´Ï´Ù.
+;    ÁúÀÇ ¹®ÀÚ¿­À» ÀÔ·ÂÇÑ ÈÄ, ºÎÇÕÇÏ´Â ·¹ÄÚµå ¸ñ·ÏÀ»
+;    º¸¿©ÁÝ´Ï´Ù. ´ÙÀ½À¸·Î, ¿£Æ®¸®¸¦ °­Á¶ÇÏ°í
+;    <Enter>¸¦ ´©¸£°Å³ª 'Open' ¹öÆ°À» Ŭ¸¯ÇÒ ÇÊ¿ä°¡ ÀÖ½À´Ï´Ù.
+;    ±×·¡¾ß ¼±ÅÃµÈ ÇÁ·Î±×·¥À» ½ÇÇàÇϰųª
+;     ÅÃµÈ µð·ºÅ丮¸¦ ¿­ ¼ö ÀÖ½À´Ï´Ù.
+;
+;*****************************************************************
+;
+; ±â¼úÀû °íÁö »çÇ×:
+;
+; - 'Seek'´Â Å©¸®½º ¸Ö¸´(Chris Mallett)ÀÇ AutoHotkey v1.0.25
+;   ÀÌ»óÀ» ¿ä±¸ÇÕ´Ï´Ù (http://www.autohotkey.com).
+;   Å©¸®½º¿¡°Ô À§´ëÇÑ ÀÛ¾÷À» ÇØ ÁֽŠ°Í¿¡ ´ëÇÏ¿© °¨»çµå¸³´Ï´Ù:)
+;
+; - ´ÙÀ½ ȯ°æ º¯¼ö´Â Ç×»ó À¯È¿ÇÕ´Ï´Ù:
+;   a. TMP
+;
+;*****************************************************************
+;
+; ¾Ë·ÁÁø ¹®Á¦:
+;
+; - ¾øÀ½
+;
+;*****************************************************************
+;
+; ±¸Çö Á¦¾È:
+;
+; - ±âº»À¸·Î ù ¹ø° ºÎÇÕ ·¹Äڵ带 °­Á¶.
+;   »ç¿ëÀÚ°¡ ±×³É <Enter>¸¸ Ä¡¸é ½ÇÇàµÇµµ·Ï.
+;   (Suggested by Yih Yeong)
+;
+; - °Ë»ö °á°ú ¸ñ·ÏÀ» ´õºí Ŭ¸¯Çϸé
+;   ÇÁ·Î±×·¥À» ½ÇÇàÇϵµ·Ï °³¼±.
+;   (Suggested by Yih Yeong & Jack)
+;
+; - ÀÚµ¿ ½Ç-½Ã°£ Á¡ÁøÀû °Ë»ö.
+;   (Suggested by Rajat)
+;
+; - »ç¿ëÀÚ°¡ ½ºÆäÀ̽º·Î ±¸ºÐÇÏ¿©,
+;    ¿©·¯ ÁúÀÇ ¹®ÀÚ¿­À» ÀÔ·Â¾Ë ¶§ ÆÛÁö(Fuzzy) °Ë»ö.
+;   (Suggested by Rajat)
+;
+;*****************************************************************
+;
+; Ư¡ Á¦¾È (±¸Çö ¹ÌÁ¤):
+;
+; - ±âµ¿ ÀÌ·Â ±â·Ï. ÃÖ±Ù¿¡ »ç¿ëµÈ ÇÁ·Î±×·¥À»
+;   °Ë»ö °á°úÀÇ »ó´Ü¿¡ ¹èÄ¡.
+;   (Suggested by Yih Yeong)
+;
+; - ¸®½ºÆ® ¹Ú½º ´ë½Å, ÀÏ·ÃÀÇ ¾îÇø®ÄÉÀÌ¼Ç ¾ÆÀÌÄÜÀ» 
+;   º¸¿©ÁÜ. ±×·¯¸é ±× ¾ÆÀÌÄÜ À§¿¡ Ä¿¼­¸¦ ¿Ã¸®¸é
+;   ÇÁ·Î±×·¥ Á¤º¸°¡ µé¾î ÀÖ´Â ÅøÆÁÀÌ
+;   ³ªÅ¸³­´Ù (°æ·Î, µîµî).
+;   (Suggested by Yih Yeong)
+;
+; - ÅؽºÆ® Áß°£¿¡ ºÎÇÕÇÏ´Â ´ë½Å¿¡,
+;   ÁúÀÇ ¹®ÀÚ¿­·Î ½ÃÀÛÇÏ´Â
+;   ÇÁ·Î±×·¥/µð·ºÅ丮¿¡¸¸ ºÎÇÕ.
+;   (Suggested by Stefan)
+;
+; - Áñ°Ü ã±â °ü¸® Ãß°¡. ´Ü ¹ø¿¡ 
+;   ÇÁ·Î±×·¥ ±×·ìÀ» ±âµ¿.
+;   (Suggested by Atomhrt)
+;
+; - Seek¸¦ À©µµ¿ìÁî ŽºÅ©¹Ù/Åø¹Ù¿¡ ÅëÇÕ.
+;   ¾ðÁ¦³ª °¡´ÉÇÏ°í Seek¸¦ ±âµ¿Çϱâ À§ÇØ
+;   ÇÖÅ°¸¦ ¹­À» ÇÊ¿ä°¡ ¾ø±â ¶§¹®¿¡.
+;   (Suggested by Deniz Akay)
+;
+; - ¸¸´É¹®ÀÚ/Á¤±Ô Ç¥Çö½ÄÀ¸·Î °Ë»ö.
+;   (Suggested by Steve)
+;
+;*****************************************************************
+;
+; º¯°æ ÀÌ·Â:
+;
+; * v1.1.0
+; - ÃÖÃÊ ¹èÆ÷.
+;
+; * v1.1.1
+; - â-ÃÖ´ëÈ­ ¿É¼Ç Á¦°Å. 
+;   Àß ÀÛµ¿ÇÏÁö ¾ÊÀº ÇÁ·Î±×·¥ÀÌ Àֱ⠶§¹®¿¡.
+; - 'Open' ±â´ÉÀ» Ã˹߽ÃÅ°±â À§ÇØ ´õºí Ŭ¸¯ ŽÁö Ãß°¡.
+;
+; * v2.0.0
+; - 'Seek' Æ˾÷ âÀ» Ãâ·Â È­¸é¿¡ ÅëÇÕ
+;   ´öºÐ¿¡ »ç¿ëÀÚ°¡ ÁúÀÇ ¹®ÀÚ¿­À» ÀçÀÔ·ÂÇÒ ¼ö ÀÖÀ½
+;   ¹º°¡¸¦ °Ë»öÇϱâ À§ÇØ Á¾·áÇß´Ù°¡ ´Ù½Ã SeekÀ» ½ÇÇàÇÒ ÇÊ¿ä°¡ ¾øÀ½.
+; - 'Scan Start-Menu' ¹öÆ° Ãß°¡.
+; - ½Ç½Ã°£ Á¡Áø °Ë»ö Ãß°¡. ŸÀÚÇÏ´Â µ¿¾È
+;   ºÎÇÕÇÏ´Â ·¹Äڵ带 ÀÚµ¿À¸·Î ¿©°úÇÑ´Ù,
+;   <Enter>¸¦ ´©¸£±â¸¦ ±â´Ù¸®Áö ¾Ê´Â´Ù.
+; - °Ë»ö ¹®ÀÚ¿­À» ÃßÀûÇÒ ³»ºÎ ½ºÀ§Ä¡ Ãß°¡ (TrackKeyPhrase).
+; - ÅøÆÁÀ» ÀÌ¿ëÇÏ¿© ÆÄÀÏÀ̸§À» º¸¿©ÁÙ
+;   ³»ºÎ ½ºÀ§Ä¡ Ãß°¡ (ToolTipFilename)
+;
+; * v2.0.1
+; - ¼öÆò ½ºÅ©·Ñ¹Ù¸¦ ¸®½ºÆ®¹Ú½º¿¡ Ãß°¡. ÀÌÁ¦ ¾ÆÁÖ ±ä
+;   ·¹ÄÚµå¶óµµ Áß°£¿¡¼­ ²÷¾îÁöÁö ¾Ê´Â´Ù.
+;
+; * v2.0.2
+; - »ç¿ëÀÚ°¡ ÀÚ½ÅÀÇ ¸ÂÃã µð·ºÅ丮 ¸ñ·ÏÀ» ½ºÄµ ´ë»ó¿¡ Æ÷ÇÔÇÒ ¼ö ÀÖµµ·Ï Çã¿ë.
+;   »ç¿ëÀÚ´Â ±×³É ÅؽºÆ® ÆÄÀÏ 'Seek.dir'À» Seek.exe ¶Ç´Â  Seek.ahk°¡ ÀÖ´Â
+;   µð·ºÅ丮¿¡ ¸¸µé¾î, Ãß°¡µÉ µð·ºÅ丮ÀÇ Àüü °æ·Î¸¦
+;   ÇÑ ÁÙ¿¡ Çϳª¾¿ ÁöÁ¤Çϱ⸸ ÇÏ¸é µÈ´Ù. 
+;   °æ·Î´Â Ȭµû¿ÈÇ¥ ¶Ç´Â °ãµû¿ÈÇ¥·Î µÑ·¯ ½ÎÁö ¸¶½Ê½Ã¿À.
+;
+; * v2.0.3
+; - À̸§À¸·Î Á¤·Ä /on ¿É¼ÇÀ» DIR-¸í·É¾î¿¡ Ãß°¡.
+; - »ç¿ëÀÚ°¡ ¿©·¯ ÁúÀÇ ¹®ÀÚ¿­À» ½ºÆäÀ̽º·Î ºÐÇÒÇØ ÀÔ·ÂÇÒ ¶§,
+;   ÆÛÁö °Ë»ö. ¿¹, "med pla". ¹®ÀÚ¿­ÀÌ ¸ðµÎ
+;   ("med" & "pla") ¹ß°ßµÇ¸é ºÎÇÕÇÑ´Ù.
+;   ÀÌ°ÍÀº "Media Player", "Macromedia Flash Player",
+;   "Play Medieval King", "medpla", "plamed"¿¡ ºÎÇÕÇÑ´Ù.
+; - ÅÇ-À̵¿ ÀýÂ÷¸¦ ±³Á¤. ¸ðµç ¹öÆ°À» ½ÃÀÛÀ¸·ÎºÎÅÍ ¿À¸¥ÂÊÀ¸·Î Ãß°¡ÇÏ°í,
+;   ½ÇÁ¦·Î »ç¿ëÇÒ ¼ö ÀÖÀ» ¶§±îÁö
+;   ºÒ´ÉÀ¸·Î ¸¸µé¾î¼­.
+; - ÅøÆÁ=Çǵå¹éÀ» ±³Ã¼Çϱâ À§ÇØ »óÅ ¹Ù¸¦ Ãß°¡.
+; - Æó±âµÈ ³»ºÎ ½ºÀ§Ä¡¸¦ Á¦°Å (ToolTipFilename).
+; - "dir" ¸í·É¾îÀÇ »ç¿ëÀ» ¿ÀÅäÇÖÅ°ÀÇ
+;   "Loop" ¸í·É¾î·Î ±³Ã¼ÇØ µð·ºÅ丮 ³»¿ëÀ» ½ºÄµ.
+;   "dir"Àº È®Àå ¹®ÀÚ ¼¼Æ®¸¦ ó¸®ÇÒ ¼ö ¾øÀ¸¹Ç·Î
+;   ºñ-¿µ¾î (¿¹, µ¶ÀϾî) µð·ºÅ丮¿Í ÆÄÀÏÀ̸§Àº À߸ø ¾ò°Ô µÊ
+;   (ÀÌ º¯°æÀ» Å×½ºÆ®ÇØ ÁֽŠº¼ÇÁ°­ ºÎ°¡Æ¼(Wolfgang Bujatti)¿Í
+;   ½Ã¿¡½º Çø®Áö(Sietse Fliege)¿¡°Ô °¨»ç)
+; - ³»ºÎ ½ºÀ§Ä¡ Ãß°¡ (ScanMode) ÆÄÀÏÀ̳ª µð·ºÅ丮°¡
+;   ½ºÄµ ´ë»ó¿¡ Æ÷ÇԵǾú´ÂÁö È®ÀÎ.
+; - ÇϵåÄÚµåµÈ ½ÃÀÛ ¸Þ´º °æ·Î¸¦ ³»Àå º¯¼ö
+;    A_StartMenu, A_StartMenuCommonÀ¸·Î ±³Ã¼.
+;   À̷μ­, SeekÀº ÀÌÁ¦ ½ÃÀÛ ¸Þ´º¿¡¼­
+;   ´Ù¸¥ À̸§Áþ±â °ü·Ê¸¦ °¡Áø ´Ù¸¥ ·ÎÄÉÀÏ°úµµ ÀÛµ¿.
+;   (ÀÌ »õ º¯¼ö¸¦ »ç¿ëÇϱâ Àü¿¡ ¶Ç´Ù¸¥ ¹æ¹ýÀ» Å×½ºÆ®ÇØ ÁÖ½Å
+;   º¼ÇÁ°­ ºÎ°¡Æ¼(Wolfgang Bujatti)¿Í
+;   ½Ã¿¡½º Çø®Áö(Sietse Fliege)¿¡°Ô °¨»ç)
+; - ¸¶Áö¸·-½ÇÇà ÇÁ·Î±×·¥ ·¹Äڵ带 ¹Ì¸® ¼±ÅÃ
+;   ½Å¼ÓÇÏ°Ô-<ENTER>¸¦ µÎ ¹ø ´©¸£¸é ±×°ÍÀ» ½ÇÇà.
+;
+;*****************************************************************
+
+;**************************
+;<--- BEGIN OF PROGRAM --->
+;**************************
+
+;==== ¿©±â´Â ¸ÂÃã ¼³Á¤ ±¸¿ª================================
+
+; µð·ºÅ丮¸¦ ¿­ ¶§ »ç¿ëÇÒ ÇÁ·Î±×·¥À» ÁöÁ¤ÇÕ´Ï´Ù.
+; ÇÁ·Î±×·¥À» ¹ß°ßÇÒ ¼ö ¾ø°Å³ª ÁöÁ¤ÇÏÁö ¾ÊÀ¸¸é
+; (Áï, º¯¼ö°¡ ÇÒ´çµÇÁö ¾Ê¾Ò°Å³ª ¹«È¿ÇÑ °ªÀÌ ÇÒ´çµÇ¾î ÀÖÀ¸¸é),
+; ±âº» ÀͽºÇ÷η¯°¡ »ç¿ëµË´Ï´Ù.
+dirExplorer = E:\utl\xplorer2_lite\xplorer2.exe
+
+; ½ºÄµ ´ë»ó¿¡ Æ÷Ç﵃  »ç¿ëÀÚÀÇ Ãß°¡ ¸ÂÃã µð·ºÅ丮 ¸ñ·Ï 
+; Àüü °æ·Î´Â Ȭµû¿ÈÇ¥ ¶Ç´Â °ãµû¿ÈÇ¥·Î µÑ·¯½Î¸é ¾ÈµË´Ï´Ù
+; ÀÌ ÆÄÀÏÀÌ ¾øÀ¸¸é
+; ±âº» µð·ºÅ丮¸¸ ½ºÄµÇÕ´Ï´Ù.
+SeekMyDir = %A_ScriptDir%\Seek.dir
+
+; ij½¬ µð·ºÅ丮/ÇÁ·Î±×·¥ ¸ñ·ÏÀ» ÀúÀåÇÒ
+; ÆÄÀÏÀ̸§°ú µð·ºÅ丮 À§Ä¡¸¦ ÁöÁ¤ÇÕ´Ï´Ù
+; ¿øÇÏÁö ¾ÊÀ¸¸é À̸¦ ¹Ù²Ü ÇÊ¿ä°¡ ¾ø½À´Ï´Ù.
+dirListing = %A_Temp%\_Seek.list
+
+; ¸¶Áö¸· °Ë»öÀÇ Ä³½¬µÈ Å° ´Ü¾î/¹®±¸¸¦ ÀúÀåÇÒ
+; ÆÄÀÏÀ̸§°ú µð·ºÅ丮 À§Ä¡¸¦ ÁöÁ¤ÇÕ´Ï´Ù
+;  ¿øÇÏÁö ¾ÊÀ¸¸é À̸¦ ¹Ù²Ü ÇÊ¿ä°¡ ¾ø½À´Ï´Ù.
+keyPhrase = %A_Temp%\_Seek.key
+
+; °Ë»ö ¹®ÀÚ¿­ ÃßÀû (ON/OFF)
+; ONÀ̸é, ´ÙÀ½¿¡ SeekÀ» ½ÇÇàÇÒ ¶§ 
+; ¸¶Áö¸·-»ç¿ëµÈ ÁúÀÇ ¹®ÀÚ¿­À»±âº»À¸·Î Àç»ç¿ëÇÕ´Ï´Ù.
+; OFFÀ̸é, ¸¶Áö¸· »ç¿ëµÈ ÁúÀÇ ¹®ÀÚ¿­À» ÃßÀûÇÏÁö ¾Ê½À´Ï´Ù
+; ±×¸®°í ´ÙÀ½¹ø Seek¸¦ ½ÇÇàÇÒ ¶§
+; ÁúÀÇ ¹®ÀÚ¿­ÀÌ ¾ø½À´Ï´Ù.
+TrackKeyPhrase = ON
+
+; ½ºÄµ ´ë»ó¿¡ Æ÷Ç﵃ °ÍµéÀ» ÁöÁ¤ÇÕ´Ï´Ù.
+; 0: µð·ºÅ丮 ¹èÁ¦ (ÆÄÀϸ¸ Æ÷ÇÔ).
+; 1: ¸ðµç ÆÄÀÏ°ú µð·ºÅ丮 Æ÷ÇÔ.
+; 2: ¿ÀÁ÷ µð·ºÅ丮¸¸ Æ÷ÇÔ (ÆÄÀÏ Á¦¿Ü).
+ScanMode = 1
+
+;...........................................................
+
+; INIT
+;#NoTrayIcon
+StringCaseSense, Off
+version = Seek v2.0.3
+
+; DISPLAY HELP INSTRUCTIONS
+If 1 in --help,-help,/h,-h,/?,-?
+{
+    MsgBox,, %version%, ½ÃÀÛ ¸Þ´º¸¦ Ç×ÇØÇÏ´Â °ÍÀº ³­»ðÇÒ ¼ö ÀÖ½À´Ï´Ù. ƯÈ÷ ½Ã°£ÀÌ Áö³ª¸é¼­ ¸¹Àº ÇÁ·Î±×·¥À» ¼³Ä¡Çß´Ù¸é ´õ¿í ³­»ðÇÕ´Ï´Ù. 'Seek'À¸·Î ´ë¼Ò¹®ÀÚ¸¦ ±¸ºÐÇÏÁö ¾Ê°í Å° ´Ü¾î/¹®±¸¸¦ ÁöÁ¤ÇÏ¸é ½ÃÀÛ ¸Þ´º·ÎºÎÅÍ ¿ÀÁ÷ ºÎÇÕÇÏ´Â ÇÁ·Î±×·¥°ú µð·ºÅ丮¸¸ ¿©°úÇÕ´Ï´Ù. ±×·¡¼­ ½±°Ô ¸ñÇ¥ ÇÁ·Î±×·¥À» ¸î °³ ¾ÈµÇ´Â ºÎÇÕ ¿£Æ®¸® Áß Çϳª¿¡¼­ ¿­ ¼ö ÀÖ½À´Ï´Ù. ÀÌ·¸°Ô ÇÏ¸é ½ÃÀÛ ¸Þ´º¸¦ °Ë»öÇÏ°í ¼øȸÇÏ´Â Áö°Ü¿î ÀÛ¾÷À» ÇÏÁö ¾Ê¾Æµµ µË´Ï´Ù.`n`n;  ÇÊÀÚ´Â Àç¹ÌÀÖ°Ô ÀÌ ÄÚµùÀ» Áñ°å½À´Ï´Ù. ¸ðÂÉ·Ï ¿©·¯ºÐµµ Àç¹ÌÀÖ°Ô »ç¿ëÇϽñ⸦ ¹Ù¶ø´Ï´Ù. ÁÖÀúÇÏÁö ¸¶½Ã°í À̸ÞÀÏÀ» ÁֽʽÿÀ. ³íÆòÀ̵ç Çǵå¹éÀ̵ç ȯ¿µÇÕ´Ï´Ù: phi1618 (*a.t*) gmail :D0T: com.`n`nOptions:`n  -cache`t°¡´ÉÇϸé ij½¬µÈ µð·ºÅ丮 ¸®½ºÆ®¸¦ »ç¿ëÇÑ´Ù (¾Æ¹« ¿É¼Çµµ ÁöÁ¤ÇÏÁö ¾ÊÀ¸¸é ÀÌ°ÍÀÌ ±âº»°ªÀÌ´Ù)`n  -scan`tµð·ºÅ丮¸¦ ½ºÄµÇØ ÃÖ±ÙÀÇ µð·ºÅ丮 ¸ñ·ÏÀ» ¿­¶÷ÇÑ´Ù`n  -scex`tScan & ½ºÄµ & Á¾·á (ÀáÀçÀûÀ¸·Î ½Ã°£À» ¼Ò¸ðÇÏ´Â µð·ºÅ丮 ½ºÄµ ÀÛ¾÷À» ¹è°æ ÀÛ¾÷À¸·Î ¼³Á¤ÇÒ °æ¿ì À¯¿ëÇÏ´Ù)`n  -help`tÀÌ µµ¿ò¸»À» º¸¿©ÁØ´Ù
+    Goto QuitNoSave
+}
+
+; Çʼö ȯ°æ º¯¼ö°¡ Á¸ÀçÇÏ´ÂÁö ±×¸®°í À¯È¿ÇÑÁö Á¡°ËÇÕ´Ï´Ù
+; *TMP*
+IfNotExist, %A_Temp% ; °æ·Î°¡ Á¸ÀçÇÏÁö ¾Ê½À´Ï´Ù
+{
+    MsgBox ÀÌ Çʼö ȯ°æ º¯¼ö´Â Á¤ÀǵÇÁö ¾Ê¾Ò°Å³ª À¯È¿ÇÏÁö ¾Ê½À´Ï´Ù:`n`n    TMP = %A_Temp%`n`n¸ÕÀú ¼öÁ¤ÇÑ ÈÄ¿¡ SeekÀ» ½ÇÇàÇϽʽÿÀ.
+    Goto QuitNoSave
+}
+
+; SCAN-AND-EXITÀÌ ¾Æ´Ï¸é
+IfNotEqual 1, -scex
+{
+    ; ¸¶Áö¸·À¸·Î »ç¿ëµÈ Å°-¹®±¸¸¦ ij½¬ ÆÄÀϷκÎÅÍ ¿­¶÷ÇØ
+    ; ±âº» ÁúÀÇ ¹®ÀÚ¿­·Î »ç¿ëÇÕ´Ï´Ù
+    If TrackKeyPhrase = ON
+    {
+        FileReadLine, PrevKeyPhrase, %keyPhrase%, 1
+        FileReadLine, PrevOpenTarget, %keyPhrase%, 2
+    }
+    NewKeyPhrase = %PrevKeyPhrase%
+    NewOpenTarget = %PrevOpenTarget%
+
+    ; »ç¿ëÀÚ°¡ ÁúÀÇ ¹®ÀÚ¿­À» ÀÔ·ÂÇÒ ÅؽºÆ® ¹Ú½º¸¦ Ãß°¡ÇÕ´Ï´Ù.
+    Gui, 1:Add, Edit, vFilename W600, %NewKeyPhrase%
+
+    ; ADD MY FAV TAGLINE
+    Gui, 1:Add, Text, X625 Y10, ¹«¾ùÀ» ã°í °è½Ê´Ï±î, ¿©·¯ºÐ?
+
+    ; »ç¿ëÀÚ¿¡°Ô Çǵå¹éÀ» Á¦°øÇϱâ À§ÇØ »óÅ ¹Ù¸¦ Ãß°¡ÇÕ´Ï´Ù
+    Gui, 1:Add, Text, vStatusBar X10 Y31 R1 W764
+
+    ; °Ë»ö °á°ú¸¦ º¸¿©ÁÙ ¼±Åà ¸®½ºÆ®¹Ú½º¸¦ Ãß°¡ÇÕ´Ï´Ù
+    Gui, 1:Add, ListBox, vOpenTarget gTargetSelection X10 Y53 R28 W764 HScroll Disabled, %List%
+
+    ; ´ÙÀ½ ¹öÆ°À» Ãß°¡ÇÏÁö¸¸, Áö±ÝÀº ºÒ´ÉÀ¸·Î ¸¸µé¾î µÓ´Ï´Ù
+    Gui, 1:Add, Button, gButtonOPEN vButtonOPEN Default X10 Y446 Disabled, Open
+    Gui, 1:Add, Button, gButtonOPENDIR vButtonOPENDIR X59 Y446 Disabled, Open Directory
+    Gui, 1:Add, Button, gButtonSCANSTARTMENU vButtonSCANSTARTMENU X340 Y446 Disabled, Scan Start-Menu
+
+    ; Á¾·á ¹öÆ° Ãß°¡
+    Gui, 1:Add, Button, gButtonEXIT X743 Y446, Exit
+
+    ; ÁúÀÇ Ã¢À» Æ˾÷ 
+    Gui, 1:Show, Center, %version%
+}
+
+; ¸¶Áö¸· µð·ºÅ丮 ¸ñ·ÏÀ» ´Ù½Ã ½ºÄµ
+If 1 in -scan,-scex
+    rescan = Y
+; µð·ºÅ丮 ij½¬ ÆÄÀÏÀÌ ÀÌ¹Ì Á¸ÀçÇÏ´ÂÁö Á¡°ËÇÕ´Ï´Ù. ¾ø´Ù¸é, ´Ù½Ã ½ºÄµÇÕ´Ï´Ù.
+Else IfNotExist, %dirListing%
+    rescan = Y
+
+If rescan = Y ; ´Ù½Ã ½ºÄµÇÕ´Ï´Ù
+{
+    ; »ç¿ëÀÚ°¡ SCAN-AND-EXIT ¿É¼ÇÀ» ÁöÁ¤ÇÏÁö ¾Ê´Â ÇÑ, »óŸ¦ º¸¿©ÁÝ´Ï´Ù.
+    IfNotEqual 1, -scex
+        GuiControl,, StatusBar, µð·ºÅ丮 ¸ñ·Ï ½ºÄµ Áß...
+
+    ; ½ÃÀÛ ¸Þ´º¸¦ ½ºÄµÇØ µð·ºÅ丮/ÇÁ·Î±×·¥ ¸ñ·ÏÀ» ij½¬ ÆÄÀÏ¿¡ ÀúÀåÇÕ´Ï´Ù
+    Gosub ScanStartMenu
+
+    ; »ç¿ëÀÚ°¡ SCAN-AND-EXIT ¿É¼ÇÀ» ÁöÁ¤Çß´Ù¸é Á¾·áÇÕ´Ï´Ù
+    IfEqual 1, -scex, Goto, QuitNoSave
+}
+
+GuiControl,, StatusBar, ¸¶Áö¸· ÁúÀÇ °á°ú¸¦ ¿­¶÷ Áß...
+
+; ¸¶Áö¸·À¸·Î »ç¿ëµÈ Å° ¹®±¸¿¡ ´ëÇÏ¿© ºÎÇÕÇÏ´Â ¸ñ·ÏÀ» ¿­¶÷ÇÕ´Ï´Ù
+Gosub SilentFindMatches
+
+; »óÅ ÅؽºÆ®¸¦ Á¦°ÅÇÕ´Ï´Ù
+GuiControl,, StatusBar,
+
+; µð·ºÅ丮 ¸ñ·ÏÀÌ ÀÌÁ¦ ÀûÀçµÇ¾ú½À´Ï´Ù. ´Ù¸¥ ¹öÆ°À» È°¼ºÈ­ÇÕ´Ï´Ù.
+; ÀÌ ¹öÆ°µéÀº ¾Õ¿¡¼­ ºÒ´ÉÈ­ ½ÃÄÑ µÎ¾ú½À´Ï´Ù. ¿Ö³ÄÇϸé ÀÌ ½ºÅ©¸³Æ®¿¡¼­
+; ÀÌ ºÎºÐ¿¡ µµÂøÇϱâ Àü±îÁö ÀÛµ¿ÇÏ¸é ¾ÈµÇ±â ¶§¹®ÀÔ´Ï´Ù.
+GuiControl, 1:Enable, ButtonOPEN
+GuiControl, 1:Enable, ButtonOPENDIR
+GuiControl, 1:Enable, ButtonSCANSTARTMENU
+
+; Á¡Áø °Ë»öÀ» ÄÕ´Ï´Ù
+SetTimer, tIncrementalSearch, 500
+
+; ±¸À̸¦ °»½ÅÇÕ´Ï´Ù
+Gosub EnterQuery
+
+Return
+
+;***********************************************************
+;                                                          *
+;                 END OF MAIN PROGRAM                      *
+;                                                          *
+;***********************************************************
+
+
+;=== BEGIN ButtonSCANSTARTMENU EVENT =======================
+
+ButtonSCANSTARTMENU:
+
+Gui, 1:Submit, NoHide
+GuiControl,, StatusBar, µð·ºÅ丮 ¸ñ·Ï ½ºÄµ Áß...
+
+; ½ºÄµ ÁßÀÎ µ¿¾È ¸®½ºÆ®¹Ú½º¸¦ ºÒ´ÉÀ¸·Î ¸¸µì´Ï´Ù
+GuiControl, 1:Disable, OpenTarget
+GuiControl, 1:Disable, ButtonEXIT
+GuiControl, 1:Disable, ButtonOPEN
+GuiControl, 1:Disable, ButtonOPENDIR
+GuiControl, 1:Disable, ButtonSCANSTARTMENU
+
+; ½ºÄµÇÕ´Ï´Ù
+Gosub ScanStartMenu
+
+; »ç¿ëÀÚ¿¡°Ô ½ºÄµÀÌ ¿Ï·áµÇ¾ú´Ù°í ¾Ë¸³´Ï´Ù
+If Filename =
+{
+    ; ÁúÀÇ ¹®ÀÚ¿­ÀÌ ºñ¾î ÀÖ´Ù¸é...
+    GuiControl, 1:Enable, ButtonEXIT
+    GuiControl, 1:Enable, ButtonOPEN
+    GuiControl, 1:Enable, ButtonSCANSTARTMENU
+    GuiControl,, StatusBar, Scan completed.
+    Gosub EnterQuery
+}
+Else
+{
+    ; ÁúÀÇ ¹®ÀÚ¿­ÀÌ Á¸ÀçÇϸé...
+    ; »õ ¸ñ·ÏÀ» °Ë»ö ¹®ÀÚ¿­¿¡ ´ëÇÏ¿© ¿©°úÇÕ´Ï´Ù.
+    NewKeyPhrase =
+    Gosub FindMatches
+}
+Return
+
+;... END ButtonSCANSTARTMENU EVENT .........................
+
+
+;=== BEGIN ScanStartMenu SUBROUTINE ========================
+; ½ÃÀÛ ¸Þ´º¸¦ ½ºÄµÇÏ°í ij½Ã ÆÄÀÏ¿¡
+; µð·ºÅ丮/ÇÁ·Î±×·¥ ¸ñ·ÏÀ» ÀúÀåÇÕ´Ï´Ù
+ScanStartMenu:
+
+; ¿­¶÷ÇÒ µð·ºÅ丮 °æ·Î¸¦ Á¤ÀÇÇÕ´Ï´Ù.
+; °æ·Î¸¦ Ȭµû¿ÈÇ¥ ¶Ç´Â °ãµû¿ÈÇ¥·Î µÑ·¯½Î¸é ¾ÈµË´Ï´Ù.
+;
+; ¿µ¾î ¹öÀüÀÇ Ã¢¿¡ ´ëÇÏ¿©
+scanPath = %A_StartMenu%|%A_StartMenuCommon%
+
+; »ç¿ëÀÚ°¡ Á¤ÀÇÇÑ Ãß°¡ °æ·Î¸¦ ½ºÄµ ´ë»ó¿¡ Æ÷ÇÔÇÕ´Ï´Ù
+IfExist, %SeekMyDir%
+{
+    Loop, read, %SeekMyDir%
+    {
+        IfNotExist, %A_LoopReadLine%
+            MsgBox, 8192, %version%, ¸ÂÃã µð·ºÅ丮 ¸®½ºÆ®¸¦ ó¸®Áß
+			...`n`n"%A_LoopReadLine%"´Â Á¸ÀçÇÏÁö ¾ÊÀ¸¸ç
+			½ºÄµ ´ë»ó¿¡¼­ Á¦¿ÜµË´Ï´Ù.`n¾÷µ¥ÀÌÆ® ÇϽʽÿÀ [ %SeekMyDir% ].
+        Else
+            scanPath = %scanPath%|%A_LoopReadLine%
+    } 
+}
+
+; »õ ¹öÀüÀ» ¸¸µé±â Àü¿¡ ±âÁ¸ÀÇ ÆÄÀÏÀ» »èÁ¦ÇÕ´Ï´Ù
+FileDelete, %dirListing%
+
+; µð·ºÅ丮 ¸ñ·ÏÀ» ½ºÄµÇÕ´Ï´Ù (±¸ºÐÀÚ = |)
+; °¢ µð·ºÅ丮¸¶´Ù Àç±ÍÇØ µé¾î°¡ ±× ³»¿ëÀ» ¿­¶÷ÇÕ´Ï´Ù.
+; ¼ûÀº ÆÄÀÏÀº Á¦¿ÜµË´Ï´Ù.
+Loop, parse, scanPath, |
+{
+    Loop, %A_LoopField%\*, %ScanMode%, 1
+    {
+        FileGetAttrib, fileAttrib, %A_LoopFileFullPath%
+        IfNotInString, fileAttrib, H ; ¼ûÀº ÆÄÀÏÀ» Á¦¿ÜÇÕ´Ï´Ù
+            FileAppend, %A_LoopFileFullPath%`n, %dirListing%
+    }
+}
+
+Return
+
+;... END ScanStartMenu SUBROUTINE ..........................
+
+
+;=== BEGIN FindMatches SUBROUTINE ==========================
+; ºÎÇÕÇÏ´Â ¸ðµç ·¹ÄÚ¸£¸¦ °Ë»öÇØ ¸®½ºÆ®¹Ú½º¿¡ º¸¿©ÁÝ´Ï´Ù
+FindMatches:
+
+Gui, 1:Submit, NoHide
+CurFilename = %Filename%
+GuiControl,, StatusBar, 
+
+; ºó ÁúÀÇ ¹®ÀÚ¿­ÀÎÁö Á¡°ËÇÕ´Ï´Ù
+If CurFilename =
+{
+    MsgBox, 8192, %version%, °Ë»öÇÒ Å° ´Ü¾î/¹®±¸¸¦ ÀÔ·ÂÇϽʽÿÀ.
+    Goto EnterQuery
+}
+
+; tIncrementalSearch´Â ÀÎÅÍ·´Æ®µÈ »óÅÂÀÔ´Ï´Ù. Á¾·á½ÃÄÑ ¹ö¸³´Ï´Ù.
+If NewKeyPhrase <> %CurFilename%
+{
+    ; »ç¿ëÀÚ¿¡°Ô Âü°í ±â´Ù¸®¶ó°í ¾Ë¸³´Ï´Ù
+    GuiControl,, StatusBar, ã´Â Áß...
+    ResumeFindMatches = TRUE
+    Return
+}
+
+If List = |
+{
+    ; ºÎÇÕÇÏ´Â ·¹Äڵ尡 Çϳªµµ ¹ß°ßµÇÁö ¾Ê¾Ò½À´Ï´Ù
+    ; »ç¿ëÀÚ¿¡°Ô ÁúÀÇ ¹®ÀÚ¿­À» º¯°æÇÏ°í ´Ù½Ã ½ÃµµÇϵµ·Ï ¿ä±¸ÇÕ´Ï´Ù.
+    MsgBox, 8192, %version%, ÁúÀÇ ¹®ÀÚ¿­ "%CurFilename%"´Â ºÎÇÕÇÏ´Â ·¹Äڵ尡 ¾ø½À´Ï´Ù. ´Ù½Ã ½ÃµµÇϽʽÿÀ.
+    GuiControl, 1:Disable, ButtonOPENDIR
+    GuiControl, 1:Enable, ButtonSCANSTARTMENU
+    Goto EnterQuery
+}
+Else
+{
+    ; ´Ù¸¥ ·¹Äڵ尡 ¼±ÅõǾî ÀÖÁö ¾ÊÀ¸¸é ù ¹ø° ·¹Äڵ带 ¼±ÅÃÇÕ´Ï´Ù
+    Gui, 1:Submit, NoHide
+    GuiControl, 1:Enable, OpenTarget
+    GuiControl, 1:Enable, ButtonOPEN
+    GuiControl, 1:Enable, ButtonOPENDIR
+    GuiControl, 1:Enable, ButtonSCANSTARTMENU
+    GuiControl, Focus, OpenTarget
+    If OpenTarget =
+        GuiControl, 1:Choose, OpenTarget, |1
+}
+
+; REFRESH GUI
+Gui, 1:Show, Center, %version%
+
+Return
+
+;... END FindMatches SUBROUTINE ............................
+
+
+;=== BEGIN SilentFindMatches SUBROUTINE ====================
+
+SilentFindMatches:
+
+Gui, 1:Submit, NoHide
+sfmFilename = %Filename%
+
+; »ç¿ëÀÚÀÇ ÁúÀÇ ¹®ÀÚ¿­¿¡ ±â¹ÝÇÏ¿© ºÎÇÕÇÏ´Â ·¹Äڵ带 ¿©°úÇÕ´Ï´Ù
+List = |
+If sfmFilename <>
+{
+    Loop, read, %dirListing%
+    {
+        Gui, 1:Submit, NoHide
+        tFilename = %Filename%
+        If sfmFilename <> %tFilename%
+        {
+            ; »ç¿ëÀÚ°¡ °Ë»ö ¹®ÀÚ¿­À» º¯°æÇß½À´Ï´Ù. 
+            ; ¿¹Àü ¹®ÀÚ¿­À» »ç¿ëÇÏ¿© °Ë»öÀ» °è¼ÓÇÒ ÀÌÀ¯°¡ ¾ø½À´Ï´Ù. ±×·¡¼­ Á¾·áÇÕ´Ï´Ù.
+            Return
+        }
+        Else
+        {
+            ; APPEND MATCHING RECORDS INTO THE LIST
+            SplitPath, A_LoopReadLine, name, dir, ext, name_no_ext, drive
+            MatchFound = Y
+            Loop, parse, sfmFilename, %A_Space%
+            {
+                IfNotInString, name, %A_LoopField%
+                {
+                    MatchFound = N
+                    Break
+                }
+            }
+            IfEqual, MatchFound, Y
+            {
+                ; ·¹Äڵ带 ¸®½ºÆ®¿¡ Ãß°¡ÇÕ´Ï´Ù
+                List = %List%%A_LoopReadLine%|
+
+                ; ´ÙÀ½ÀÌ ¸¶Áö¸·-½ÇÇà ÇÁ·Î±×·¥¿¡ ºÎÇÕÇÏ¸é ¹Ì¸® ¼±ÅÃÇÕ´Ï´Ù
+                If (A_LoopReadLine = PrevOpenTarget && sfmFilename = PrevKeyPhrase)
+                    List = %List%|
+            }
+        }
+    }
+}
+
+; °Ë»ö °á°ú·Î ¸®½ºÆ®¸¦ °»½ÅÇÕ´Ï´Ù
+GuiControl, 1:, OpenTarget, %List%
+
+If List = |
+{
+    ; ºÎÇÕÇÏ´Â ·¹Äڵ带 ¹ß°ßÇÏÁö ¸øÇÞ½À´Ï´Ù
+    ; ¸®½ºÆ®¹Ú½º¸¦ ºÒ´ÉÀ¸·Î ¸¸µì´Ï´Ù
+    GuiControl, 1:Disable, OpenTarget
+    GuiControl, 1:Disable, ButtonOPENDIR
+}
+Else
+{
+    ; ºÎÇÕÇÏ´Â ·¹Äڵ带 ¹ß°ßÇß½À´Ï´Ù
+    ; ¸®½ºÆ®¹Ú½º¸¦ È°¼ºÈ­ ÇÕ´Ï´Ù
+    GuiControl, 1:Enable, OpenTarget
+    GuiControl, 1:Enable, ButtonOPENDIR
+}
+
+; ±¸À̸¦ °»½ÅÇÕ´Ï´Ù
+Gui, 1:Show, Center, %version%
+
+Return
+
+;... END SilentFindMatches SUBROUTINE ......................
+
+
+;=== BEGIN EnterQuery SUBROUTINE ===========================
+; ±¸À̸¦ °»½ÅÇÏ°í »ç¿ëÀÚ°¡ °Ë»ö ¹®ÀÚ¿­À» ÀÔ·ÂÇϵµ·Ï Çã¿ëÇÕ´Ï´Ù
+EnterQuery:
+GuiControl, Focus, Filename
+GuiControl, 1:Enable, ButtonOPEN
+Gui, 1:Show, Center, %version%
+Return
+;... END EnterQuery SUBROUTINE .............................
+
+
+;=== BEGIN TargetSelection EVENT ===========================
+
+TargetSelection:
+Gui, 1:Submit, NoHide
+
+; ÇÁ·Î±×·¥À» ±âµ¿Çϱâ À§ÇÏ¿© ´õºí Ŭ¸¯À» ŽÁöÇÕ´Ï´Ù
+If A_GuiControlEvent = DoubleClick
+{
+    Gosub ButtonOPEN
+}
+Else
+{
+    ; ¹Ì·¡¿¡ »ç¿ëÇÒ - Àӽà ±¸Á¶¹°
+    If A_GuiControlEvent = Normal
+    {
+        ; Áö±Ý ´çÀåÀº ¾Æ¹« °Íµµ ÇÏÁö ¾Ê½À´Ï´Ù
+    }
+}
+
+Return
+
+;... END TargetSelection EVENT .............................
+
+
+;=== BEGIN ButtonOPEN EVENT ================================
+
+; »ç¿ëÀÚ°¡ 'OPEN' ¹öÆ°À» Ŭ¸¯Çϰųª <ENTER>¸¦ ´­·¶½À´Ï´Ù.
+ButtonOPEN:
+Gui, 1:Submit, NoHide
+
+; Å°º¸µå ÃÊÁ¡ÀÌ ÀÖ´Â °÷À» ¾Ë¾Æ³À´Ï´Ù. ÃÊÁ¡ÀÌ ÅؽºÆ® Çʵ忡
+; ÀÖ´Ù¸é, ÁúÀÇ ¹®ÀÚ¿­À» ½ÇÇàÇØ ºÎÇÕÇÏ´Â °ÍÀ» ã½À´Ï´Ù.
+; ºÐ¸íÈ÷ ¸®½ºÆ® ¹Ú½º ¾È¿¡ ÀÖÀ» °ÍÀÔ´Ï´Ù.
+GuiControlGet, focusControl, 1:Focus
+If focusControl = Edit1
+{
+    GuiControl, Focus, OpenTarget
+    GuiControl, 1:Disable, OpenTarget
+    GuiControl, 1:Disable, ButtonOPENDIR
+    GuiControl, 1:Disable, ButtonSCANSTARTMENU
+    Goto FindMatches
+}
+
+; ¸®½ºÆ®¹Ú½º¿¡ ¾Æ¹« ·¹Äڵ嵵 ¼±ÅõǾî ÀÖÁö ¾Ê½À´Ï´Ù
+If OpenTarget =
+{
+    MsgBox, 8192, %version%, ¼±ÅÃÀ» ¸ÕÀú ÇÑ ÈÄ¿¡ <Enter>¸¦ ´©¸£½Ê½Ã¿À.`nÁ¾·áÇÏ·Á¸é <Esc>¸¦ ´©¸£½Ê½Ã¿À.
+    Goto EnterQuery
+}
+
+; ¼±ÅÃµÈ ·¹Äڵ尡 Á¸ÀçÇÏÁö ¾Ê½À´Ï´Ù (ÆÄÀÏÀ̳ª µð·ºÅ丮¸¦ ¹ß°ßÇÏÁö ¸øÇÔ)
+IfNotExist, %OpenTarget%
+{
+    MsgBox, 8192, %version%, %OpenTarget%ÀÌ Á¸ÀçÇÏÁö ¾Ê½À´Ï´Ù. ÀÌ°ÍÀº ±× µð·ºÅ丮 ij½¬°¡ À¯È¿±â°£ÀÌ Áö³µ´Ù´Â ¶æÀÔ´Ï´Ù. ¾Æ·¡ÀÇ 'Scan Start-Menu' ¹öÆ°À» Ŭ¸¯Çϸé ÀÌÁ¦ ¿©·¯ºÐÀÇ ÃֽŠµð·ºÅ丮 ¸ñ·ÏÀ¸·Î µð·ºÅ丮 ij½¬¸¦ ¾÷µ¥ÀÌÆ®ÇÒ ¼ö ÀÖ½À´Ï´Ù.
+    Goto EnterQuery
+}
+
+; ¼±ÅÃµÈ ·¹Äڵ尡 ÆÄÀÏÀÎÁö ¾Æ´Ï¸é µð·ºÅ丮ÀÎÁö Á¡°ËÇÕ´Ï´Ù
+FileGetAttrib, fileAttrib, %OpenTarget%
+IfInString, fileAttrib, D ; IS DIRECTORY
+{
+    Gosub sOpenDir
+}
+Else If fileAttrib <> ; IS FILE
+{
+    Run, %OpenTarget%
+}
+Else
+{
+    MsgBox %OpenTarget%´Â µð·ºÅ丮µµ ¾Æ´Ï°í ÆÄÀϵµ ¾Æ´Õ´Ï´Ù. ÀÌ·± ÀÏÀº ÀϾ ¼ö ¾ø½À´Ï´Ù. ´õ ÀÌ»ó °Ë»öÀ» ÁøÇàÇÏÁö ¸øÇÕ´Ï´Ù. Á¾·á Áß...
+}
+
+Goto Quit
+
+;... END ButtonOPEN EVENT ..................................
+
+
+;=== BEGIN ButtonOPENDIR EVENT =============================
+
+; »ç¿ëÀÚ°¡ 'OPEN DIRECTORY' ¹öÆ°À» Ŭ¸¯Çß½À´Ï´Ù
+ButtonOPENDIR:
+Gui, 1:Submit, NoHide
+
+; »ç¿ëÀÚ°¡ ·¹Äڵ带 ÀÌ¹Ì ¼±ÅÃÇß´ÂÁö Á¡°ËÇÕ´Ï´Ù
+If OpenTarget =
+{
+    MsgBox, 8192, %version%, ¸ÕÀú ¼±ÅÃÇϽʽÿÀ.
+    Goto EnterQuery
+}
+
+; µð·ºÅ丮¸¦ ¿­±â À§ÇØ ¼­ºê·çƾÀ» ½ÇÇàÇÕ´Ï´Ù
+Gosub sOpenDir
+
+Goto Quit
+
+;... END ButtonOPENDIR EVENT ...............................
+
+
+;=== BEGIN sOpenDir SUBROUTINE =============================
+
+sOpenDir:
+
+; »ç¿ëÀÚ°¡ µð·ºÅ丮-·¹ÄÚµå ´ë½Å¿¡ ÆÄÀÏ-·¹Äڵ带 ¼±ÅÃÇß´Ù¸é,
+; ±× µð·ºÅ丮 °æ·Î¸¦ ÃßÃâÇÕ´Ï´Ù. (ÇÊÀÚ´Â FileGetAttrib ´ë½Å¿¡
+; DriveGetÀ» »ç¿ëÇÕ´Ï´Ù. OpenTargetÀº À¯È¿ÇÏÁö ¾ÊÁö¸¸
+; OpenTargetÀÇ µð·ºÅ丮 °æ·Î´Â À¯¿äÇÑ °æ¿ì¿¡ ´ëóÇÒ ¼ö Àֱ⠶§¹®ÀÔ´Ï´Ù.
+DriveGet, status, status, %OpenTarget%
+If status <> Ready ; µð·ºÅ丮°¡ ¾Æ´Ô
+{
+    SplitPath, OpenTarget, name, dir, ext, name_no_ext, drive
+    OpenTarget = %dir%
+}
+
+; µð·ºÅ丮°¡ Á¸ÀçÇÏ´ÂÁö Á¡°ËÇÕ´Ï´Ù
+IfNotExist, %OpenTarget%
+{
+    MsgBox, 8192, %version%, %OpenTarget%ÀÌ Á¸ÀçÇÏÁö ¾Ê½À´Ï´Ù. ÀÌ°ÍÀº µð·ºÅ丮 ij½¬°¡ À¯È¿ ±â°£ÀÌ Áö³µ´Ù´Â ¶æÀÔ´Ï´Ù. 'Scan Start-Menu' ¹öÆ°À» ¾Æ·¡¿¡¼­ Ŭ¸¯Çϸé ÀÌÁ¦ ÃֽŠµð·ºÅ丮 ¸®½ºÆ®·Î µð·ºÅ丮 ij½¬¸¦ ¾÷µ¥ÀÌÆ®ÇÒ ¼ö ÀÖ½À´Ï´Ù.
+    Goto EnterQuery
+}
+
+; µð·ºÅ丮¸¦ ¿±´Ï´Ù
+IfExist, %dirExplorer%
+{
+    Run, "%dirExplorer%" "%OpenTarget%", , Max ; OPEN WITH CUSTOMISED FILE EXPLORER
+}
+Else
+{
+    Run, %OpenTarget%, , Max ; ±âº» â ÆÄÀÏ Å½»ö±â¸¦ ¿±´Ï´Ù
+}
+Return
+
+;... END sOpenDir SUBROUTINE ...............................
+
+
+;=== BEGIN tIncrementalSearch EVENT ========================
+; ÀÚµ¿À¸·Î ½Ç½Ã°£ Á¡Áø °Ë»öÀ» ¼öÇàÇÏ¿©
+; ºÎÇÕÇÏ´Â ·¹Äڵ带 ã½À´Ï´Ù.
+; »ç¿ëÀÚ°¡ <ENTER>¸¦ ´©¸£±â¸¦ ±â´Ù¸®Áö ¾Ê½À´Ï´Ù.
+tIncrementalSearch:
+
+Loop
+; »ç¿ëÀÚ°¡ ÁúÀÇ ¹®ÀÚ¿­ ¹Ù²Ù±â¸¦ ¸ØÃâ ¶§±îÁö °Ë»öÀ» ¹Ýº¹ÇÕ´Ï´Ù.
+{
+    Gui, 1:Submit, NoHide
+    CurFilename = %Filename%
+    If NewKeyPhrase <> %CurFilename%
+    {
+        OpenTarget =
+        Gosub SilentFindMatches
+        NewKeyPhrase = %CurFilename%
+        Sleep, 100 ; CPU µ¶Á¡ ±ÝÁö!
+    }
+    Else
+    {
+        ; ÁúÀÇ ¹®ÀÚ¿­ÀÌ ´õ ÀÌ»ó º¯ÇÏÁö ¾Ê½À´Ï´Ù
+        Break
+    }
+}
+
+; »ç¿ëÀÚ°¡ <ENTER>¸¦ ´­·¯¼­ ºÎÇÕÇÏ´Â ·¹Äڵ带 ã½À´Ï´Ù.
+; RUN FindMatches NOW.
+If ResumeFindMatches = TRUE
+{
+    ResumeFindMatches = FALSE
+    Gosub FindMatches
+}
+
+; °è¼Ó º¯È­¸¦ °üÁ¦ÇÕ´Ï´Ù
+SetTimer, tIncrementalSearch, 500
+
+Return
+
+;... END tIncrementalSearch EVENT ..........................
+
+
+;=== BEGIN Quit SUBROUTINE =================================
+
+Quit:
+ButtonEXIT:
+GuiClose:
+GuiEscape:
+
+Gui, 1:Submit, NoHide
+
+; ¸¸¾à º¯°æµÇ¾ú´Ù¸é ±× Å° ´Ü¾î/¹®±¸¸¦ ´ÙÀ½ ½ÇÇàÀ» ´ëºñÇØ ÀúÀåÇÕ´Ï´Ù.
+If TrackKeyPhrase = ON
+{
+    If (PrevKeyPhrase <> Filename || PrevOpenTarget <> OpenTarget)
+    {
+        FileDelete, %keyPhrase%
+        FileAppend, %Filename%`n, %keyPhrase%
+        FileAppend, %OpenTarget%`n, %keyPhrase%
+    }
+}
+
+QuitNoSave:
+ExitApp ; ÀÌ»ó ³¡. Áñ°Å¿î ÇÏ·ç µÇ½Ã±â¸¦!
+
+;... END Quit SUBROUTINE ...................................
+
+
+;************************
+;<--- END OF PROGRAM --->
+;************************
+
+; /* vim: set noexpandtab shiftwidth=4: */
+
+ + diff --git a/src/docs/scripts/TooltipMouseMenu.ahk b/src/docs/scripts/TooltipMouseMenu.ahk new file mode 100644 index 0000000..d5e81e5 --- /dev/null +++ b/src/docs/scripts/TooltipMouseMenu.ahk @@ -0,0 +1,164 @@ +; ToolTip Mouse Menu (requires XP/2k/NT) -- by Rajat +; http://www.autohotkey.com +; This script displays a popup menu in response to briefly holding down +; the middle mouse button. Select a menu item by left-clicking it. +; Cancel the menu by left-clicking outside of it. A recent improvement +; is that the contents of the menu can change depending on which type of +; window is active (Notepad and Word are used as examples here). + +; You can set any title here for the menu: +MenuTitle = -=-=-=-=-=-=-=- + +; This is how long the mouse button must be held to cause the menu to appear: +UMDelay = 20 + +SetFormat, float, 0.0 +SetBatchLines, 10ms +SetTitleMatchMode, 2 +#SingleInstance + + +;___________________________________________ +;_____Menu Definitions______________________ + +; Create / Edit Menu Items here. +; You can't use spaces in keys/values/section names. + +; Don't worry about the order, the menu will be sorted. + +MenuItems = Notepad/Calculator/Section 3/Section 4/Section 5 + + +;___________________________________________ +;______Dynamic menuitems here_______________ + +; Syntax: +; Dyn# = MenuItem|Window title + +Dyn1 = MS Word|- Microsoft Word +Dyn2 = Notepad II|- Notepad + +;___________________________________________ + +Exit + + +;___________________________________________ +;_____Menu Sections_________________________ + +; Create / Edit Menu Sections here. + +Notepad: +Run, Notepad.exe +Return + +Calculator: +Run, Calc +Return + +Section3: +MsgBox, You selected 3 +Return + +Section4: +MsgBox, You selected 4 +Return + +Section5: +MsgBox, You selected 5 +Return + +MSWord: +msgbox, this is a dynamic entry (word) +Return + +NotepadII: +msgbox, this is a dynamic entry (notepad) +Return + + +;___________________________________________ +;_____Hotkey Section________________________ + +~MButton:: +HowLong = 0 +Loop +{ + HowLong ++ + Sleep, 10 + GetKeyState, MButton, MButton, P + IfEqual, MButton, U, Break +} +IfLess, HowLong, %UMDelay%, Return + + +;prepares dynamic menu +DynMenu = +Loop +{ + IfEqual, Dyn%a_index%,, Break + + StringGetPos, ppos, dyn%a_index%, | + StringLeft, item, dyn%a_index%, %ppos% + ppos += 2 + StringMid, win, dyn%a_index%, %ppos%, 1000 + + IfWinActive, %win%, + DynMenu = %DynMenu%/%item% +} + + +;Joins sorted main menu and dynamic menu +Sort, MenuItems, D/ +TempMenu = %MenuItems%%DynMenu% + + +;clears earlier entries +Loop +{ + IfEqual, MenuItem%a_index%,, Break + MenuItem%a_index% = +} + +;creates new entries +Loop, Parse, TempMenu, / +{ + MenuItem%a_index% = %a_loopfield% +} + +;creates the menu +Menu = %MenuTitle% +Loop +{ + IfEqual, MenuItem%a_index%,, Break + numItems ++ + StringTrimLeft, MenuText, MenuItem%a_index%, 0 + Menu = %Menu%`n%MenuText% +} + +MouseGetPos, mX, mY +HotKey, ~LButton, MenuClick +HotKey, ~LButton, On +ToolTip, %Menu%, %mX%, %mY% +WinActivate, %MenuTitle% +Return + + +MenuClick: +HotKey, ~LButton, Off +IfWinNotActive, %MenuTitle% +{ + ToolTip + Return +} + +MouseGetPos, mX, mY +ToolTip +mY -= 3 ;space after which first line starts +mY /= 13 ;space taken by each line +IfLess, mY, 1, Return +IfGreater, mY, %numItems%, Return +StringTrimLeft, TargetSection, MenuItem%mY%, 0 +StringReplace, TargetSection, TargetSection, %a_space%,, A +Gosub, %TargetSection% +Return diff --git a/src/docs/scripts/TooltipMouseMenu.htm b/src/docs/scripts/TooltipMouseMenu.htm new file mode 100644 index 0000000..06441df --- /dev/null +++ b/src/docs/scripts/TooltipMouseMenu.htm @@ -0,0 +1,176 @@ + + +ToolTip Mouse Menu (requires XP/2k/NT) -- by Rajat + + + + + + + +

ÅøÆÁ ¸¶¿ì½º ¸Þ´º (XP/2k/NT ¿ä±¸) -- by Rajat

+ +

+ÀÌ ½ºÅ©¸³Æ®´Â °¡¿îµ¥ ¹öÆ°À» Àá±ñ ´©¸£´Âµ¥ ÀÀ´äÇÏ¿© Æ˾÷ ¸Þ´º¸¦ º¸¿©ÁÝ´Ï´Ù. ¿ÞŬ¸¯ÇÏ¿© ¸Þ´º Ç׸ñÀ» ¼±ÅÃÇÕ´Ï´Ù. ¹Ù±ù¿¡¼­ ÁÂŬ¸¯ÇÏ¸é ¸Þ´º¸¦ Ãë¼ÒÇÕ´Ï´Ù. ÃÖ±Ù¿¡ ¾î´À À¯ÇüÀÇ Ã¢ÀÌ È°¼ºÈ­µÇ¾î Àִ°¡¿¡ µû¶ó ¸Þ´ºÀÇ ³»¿ëÀÌ º¯Çϵµ·Ï °³¼±µÇ¾ú½À´Ï´Ù. (¿©±â¿¡¼­´Â Notepad¿Í Word¸¦ ¿¹Á¦·Î »ç¿ëÇÕ´Ï´Ù). +

+

ÀÌ ½ºÅ©¸³Æ® ³»·Á ¹Þ±â  |  ´Ù¸¥ »ùÇà ½ºÅ©¸³Æ®  |  È¨À¸·Î

+ +
; ¸Þ´º¿¡ ´ëÇÏ¿© ¿©±â¿¡¼­ Á¦¸ñÀ» ¼³Á¤ÇÒ ¼ö ÀÖ½À´Ï´Ù:
+MenuTitle = -=-=-=-=-=-=-=-
+
+; ´ÙÀ½Àº ¾ó¸¶³ª ¿À·¡ ¹öÆ°À» ´­·¯¾ß ¸Þ´º¸¦ º¸¿©ÁÙÁö °áÁ¤ÇÕ´Ï´Ù:
+UMDelay = 20
+
+SetFormat, float, 0.0
+SetBatchLines, 10ms 
+SetTitleMatchMode, 2
+#SingleInstance
+
+
+;___________________________________________
+;_____¸Þ´º Á¤ÀÇ______________________
+
+; ¿©±â¿¡¼­ ¸Þ´º Ç׸ñÀ» ¸¸µé°í ¼öÁ¤ÇÕ´Ï´Ù.
+; keys/values/section À̸§¿¡ ½ºÆäÀ̽º¸¦ »ç¿ëÇÏ¸é ¾È µË´Ï´Ù.
+
+; ¼ø¼­´Â ½Å°æ¾²Áö ¾Ê¾Æµµ µË´Ï´Ù. ¸Þ´º´Â Á¤·ÄµË´Ï´Ù.
+
+MenuItems = Notepad/Calculator/Section 3/Section 4/Section 5
+
+
+;___________________________________________
+;______µ¿ÀûÀÎ ¸Þ´º Ç׸ñ Á¤ÀÇ_______________
+
+; ±¸¹®:
+;     Dyn# = ¸Þ´º Ç׸ñ|â Á¦¸ñ
+
+Dyn1 = MS Word|- Microsoft Word
+Dyn2 = Notepad II|- Notepad
+
+;___________________________________________
+
+Exit
+
+
+;___________________________________________
+;_____¸Þ´º ¼½¼Ç_________________________
+
+; ¿©±â¿¡ ¸Þ´º ¼½¼ÇÀ» »ý¼ºÇÏ°í ÆíÁýÇÕ´Ï´Ù.
+
+Notepad:
+Run, Notepad.exe
+Return
+
+Calculator:
+Run, Calc
+Return
+
+Section3:
+MsgBox, You selected 3
+Return
+
+Section4:
+MsgBox, You selected 4
+Return
+
+Section5:
+MsgBox, You selected 5
+Return
+
+MSWord:
+msgbox, this is a dynamic entry (word)
+Return
+
+NotepadII:
+msgbox, this is a dynamic entry (notepad)
+Return
+
+
+;___________________________________________
+;_____ÇÖÅ° ¼½¼Ç________________________
+
+~MButton::
+HowLong = 0
+Loop
+{
+    HowLong ++
+    Sleep, 10
+    GetKeyState, MButton, MButton, P
+    IfEqual, MButton, U, Break
+}
+IfLess, HowLong, %UMDelay%, Return
+
+
+; µ¿Àû ¸Þ´º¸¦ ÁغñÇÕ´Ï´Ù
+DynMenu =
+Loop
+{
+    IfEqual, Dyn%a_index%,, Break
+
+    StringGetPos, ppos, dyn%a_index%, |
+    StringLeft, item, dyn%a_index%, %ppos%
+    ppos += 2
+    StringMid, win, dyn%a_index%, %ppos%, 1000
+
+    IfWinActive, %win%,
+        DynMenu = %DynMenu%/%item%
+}
+
+
+; Á¤·ÄµÈ ¸ÞÀÎ ¸Þ´º¿Í µ¿Àû ¸Þ´º¸¦ °áÇÕÇÕ´Ï´Ù
+Sort, MenuItems, D/
+TempMenu = %MenuItems%%DynMenu%
+
+
+; ÀÌÀü ¿£Æ®¸®µéÀ» Áö¿ó´Ï´Ù
+Loop
+{
+    IfEqual, MenuItem%a_index%,, Break
+    MenuItem%a_index% =
+}
+
+; »õ ¿£Æ®¸®µéÀ» »ý¼ºÇÕ´Ï´Ù
+Loop, Parse, TempMenu, /
+{
+    MenuItem%a_index% = %a_loopfield%
+}
+
+; ¸Þ´º¸¦ »ý¼ºÇÕ´Ï´Ù
+Menu = %MenuTitle%
+Loop
+{
+    IfEqual, MenuItem%a_index%,, Break
+    numItems ++
+    StringTrimLeft, MenuText, MenuItem%a_index%, 0
+    Menu = %Menu%`n%MenuText%
+}
+
+MouseGetPos, mX, mY
+HotKey, ~LButton, MenuClick
+HotKey, ~LButton, On
+ToolTip, %Menu%, %mX%, %mY%
+WinActivate, %MenuTitle%
+Return
+
+
+MenuClick:
+HotKey, ~LButton, Off
+IfWinNotActive, %MenuTitle%
+{
+    ToolTip
+    Return
+}
+
+MouseGetPos, mX, mY
+ToolTip
+mY -= 3        ; ù ÁÙÀÌ ½ÃÀÛÇÏ¸é µÚ¿¡ ½ºÆäÀ̽º
+mY /= 13    ; °¢ ÁÙ¸¶´Ù ½ºÆäÀ̽º
+IfLess, mY, 1, Return
+IfGreater, mY, %numItems%, Return
+StringTrimLeft, TargetSection, MenuItem%mY%, 0
+StringReplace, TargetSection, TargetSection, %a_space%,, A
+Gosub, %TargetSection%
+Return
+
+ + diff --git a/src/docs/scripts/VolumeOSD.ahk b/src/docs/scripts/VolumeOSD.ahk new file mode 100644 index 0000000..20935a6 --- /dev/null +++ b/src/docs/scripts/VolumeOSD.ahk @@ -0,0 +1,127 @@ +; Volume On-Screen-Display (OSD) -- by Rajat +; http://www.autohotkey.com +; This script assigns hotkeys of your choice to raise and lower the +; master and/or wave volume. Both volumes are displayed as different +; color bar graphs. + +;_________________________________________________ +;_______User Settings_____________________________ + +; Make customisation only in this area or hotkey area only!! + +; The percentage by which to raise or lower the volume each time: +vol_Step = 4 + +; How long to display the volume level bar graphs: +vol_DisplayTime = 2000 + +; Master Volume Bar color (see the help file to use more +; precise shades): +vol_CBM = Red + +; Wave Volume Bar color +vol_CBW = Blue + +; Background color +vol_CW = Silver + +; Bar's screen position. Use -1 to center the bar in that dimension: +vol_PosX = -1 +vol_PosY = -1 +vol_Width = 150 ; width of bar +vol_Thick = 12 ; thickness of bar + +; If your keyboard has multimedia buttons for Volume, you can +; try changing the below hotkeys to use them by specifying +; Volume_Up, ^Volume_Up, Volume_Down, and ^Volume_Down: +HotKey, #Up, vol_MasterUp ; Win+UpArrow +HotKey, #Down, vol_MasterDown +HotKey, +#Up, vol_WaveUp ; Shift+Win+UpArrow +HotKey, +#Down, vol_WaveDown + + +;___________________________________________ +;_____Auto Execute Section__________________ + +; DON'T CHANGE ANYTHING HERE (unless you know what you're doing). + +vol_BarOptionsMaster = 1:B ZH%vol_Thick% ZX0 ZY0 W%vol_Width% CB%vol_CBM% CW%vol_CW% +vol_BarOptionsWave = 2:B ZH%vol_Thick% ZX0 ZY0 W%vol_Width% CB%vol_CBW% CW%vol_CW% + +; If the X position has been specified, add it to the options. +; Otherwise, omit it to center the bar horizontally: +if vol_PosX >= 0 +{ + vol_BarOptionsMaster = %vol_BarOptionsMaster% X%vol_PosX% + vol_BarOptionsWave = %vol_BarOptionsWave% X%vol_PosX% +} + +; If the Y position has been specified, add it to the options. +; Otherwise, omit it to have it calculated later: +if vol_PosY >= 0 +{ + vol_BarOptionsMaster = %vol_BarOptionsMaster% Y%vol_PosY% + vol_PosY_wave = %vol_PosY% + vol_PosY_wave += %vol_Thick% + vol_BarOptionsWave = %vol_BarOptionsWave% Y%vol_PosY_wave% +} + +#SingleInstance +SetBatchLines, 10ms +Return + + +;___________________________________________ + +vol_WaveUp: +SoundSet, +%vol_Step%, Wave +Gosub, vol_ShowBars +return + +vol_WaveDown: +SoundSet, -%vol_Step%, Wave +Gosub, vol_ShowBars +return + +vol_MasterUp: +SoundSet, +%vol_Step% +Gosub, vol_ShowBars +return + +vol_MasterDown: +SoundSet, -%vol_Step% +Gosub, vol_ShowBars +return + +vol_ShowBars: +; To prevent the "flashing" effect, only create the bar window if it +; doesn't already exist: +IfWinNotExist, vol_Wave + Progress, %vol_BarOptionsWave%, , , vol_Wave +IfWinNotExist, vol_Master +{ + ; Calculate position here in case screen resolution changes while + ; the script is running: + if vol_PosY < 0 + { + ; Create the Wave bar just above the Master bar: + WinGetPos, , vol_Wave_Posy, , , vol_Wave + vol_Wave_Posy -= %vol_Thick% + Progress, %vol_BarOptionsMaster% Y%vol_Wave_Posy%, , , vol_Master + } + else + Progress, %vol_BarOptionsMaster%, , , vol_Master +} +; Get both volumes in case the user or an external program changed them: +SoundGet, vol_Master, Master +SoundGet, vol_Wave, Wave +Progress, 1:%vol_Master% +Progress, 2:%vol_Wave% +SetTimer, vol_BarOff, %vol_DisplayTime% +return + +vol_BarOff: +SetTimer, vol_BarOff, off +Progress, 1:Off +Progress, 2:Off +return diff --git a/src/docs/scripts/VolumeOSD.htm b/src/docs/scripts/VolumeOSD.htm new file mode 100644 index 0000000..502b196 --- /dev/null +++ b/src/docs/scripts/VolumeOSD.htm @@ -0,0 +1,140 @@ + + +Volume On-Screen-Display (OSD) -- by Rajat + + + + + + + +

È­¸é À§ µð½ºÇ÷¹ÀÌ¿¡¼­ º¼·ý Á¶ÀýÇÏ´Â ¹ý (OSD) -- by Rajat

+ +

ÀÌ ½ºÅ©¸³Æ®´Â ¿©·¯ºÐÀÌ ¼±ÅÃÇÑ ÇÖÅ°¸¦ ¸¶½ºÅÍ ¶Ç´Â ¿þÀÌºê º¼·ýÀ» ³ôÀ̰ųª ³»¸®´Â µ¥ ÇÒ´çÇÕ´Ï´Ù. µÎ º¼·ý ¸ðµÎ ´Ù¸¥ »öÀÇ ¹Ù ±×·¡ÇÁ·Î º¸¿©ÁÝ´Ï´Ù. +

+

ÀÌ ½ºÅ©¸³Æ® ³»·Á ¹Þ±â  |  ´Ù¸¥ »ùÇà ½ºÅ©¸³Æ®  |  È¨À¸·Î

+ +
;_________________________________________________ 
+;_______»ç¿ëÀÚ ¼³Á¤_____________________________
+
+; Àç´ÜÀº ÀÌ ±¸¿ª°ú ÇÖÅ° ±¸¿ª¿¡¼­¸¸ Çã¿ëÇÕ´Ï´Ù!!
+
+; ¸Å¹ø º¼·ýÀ» ¿Ã¸®°Å³ª ³»¸± ¹éºÐ·ü:
+vol_Step = 4
+
+; ¾ó¸¶³ª ¿À·¡ º¼·ý ·¹º§ ¹Ù ±×·¡ÇÁ¸¦ º¸¿©ÁÙ °ÍÀΰ¡:
+vol_DisplayTime = 2000
+
+; ¸¶½ºÅÍ º¼·ý ¹Ù Ä÷¯
+; (´õ Á¤¹ÐÇÑ ½¦À̵带 »ç¿ëÇÏ·Á¸é µµ¿ò¸» ÂüÁ¶):
+vol_CBM = Red
+
+; ¿þÀÌºê º¼·ý ¹Ù Ä÷¯
+vol_CBW = Blue
+
+; ¹è°æ »ö
+vol_CW = Silver
+
+; ¹ÙÀÇ È­¸é ÁÂÇ¥.  -1À» »ç¿ëÇϸé ÇØ´ç Â÷¿øÀÇ °¡¿îµ¥¿¡ Á¤·Ä:
+vol_PosX = -1
+vol_PosY = -1
+vol_Width = 150  ; ¹ÙÀÇ ³Êºñ
+vol_Thick = 12   ; ¹ÙÀÇ µÎ²²
+
+; Å°º¸µå¿¡ º¼·ý¿¡ ´ëÇÑ ¸ÖƼ¹Ìµð¾î ¹öÆ°ÀÌ ÀÖ´Ù¸é
+; ¾Æ·¡ÀÇ ÇÖÅ°¿¡ ±× ¹öÆ°µéÀ» »ç¿ëÇϵµ·Ï ¹Ù²Ü ¼ö ÀÖ½À´Ï´Ù. ¾Æ·¡¿Í °°ÀÌ ÁöÁ¤ÇϽʽÿÀ.
+; Volume_Up, ^Volume_Up, Volume_Down, ±×¸®°í ^Volume_Down:
+HotKey, #Up, vol_MasterUp      ; Win+UpArrow
+HotKey, #Down, vol_MasterDown
+HotKey, +#Up, vol_WaveUp       ; Shift+Win+UpArrow
+HotKey, +#Down, vol_WaveDown
+
+
+;___________________________________________ 
+;_____ÀÚµ¿ ½ÇÇà ¼½¼Ç__________________
+
+; ¿©±â´Â ¾Æ¹« °Íµµ ¹Ù²ÙÁö ¸¶½Ê½Ã¿À (´Ü, ¹«¾ùÀ» ÇÏ°í ÀÖ´ÂÁö Àß ¾Æ´Â °æ¿ì´Â ¿¹¿ÜÀÔ´Ï´Ù).
+
+vol_BarOptionsMaster = 1:B ZH%vol_Thick% ZX0 ZY0 W%vol_Width% CB%vol_CBM% CW%vol_CW%
+vol_BarOptionsWave   = 2:B ZH%vol_Thick% ZX0 ZY0 W%vol_Width% CB%vol_CBW% CW%vol_CW%
+
+; X À§Ä¡°¡ ÁöÁ¤µÇ¾î ÀÖ´Ù¸é, ±×°ÍÀ» ¿É¼Ê¿¡ Ãß°¡ÇÕ´Ï´Ù.
+; ±×·¸Áö ¾ÊÀ¸¸é, »ý·«ÇØ ¹Ù¸¦ ¼öÆòÀ¸·Î °¡¿îµ¥¿¡ ¹èÄ¡ÇÒ ¼ö ÀÖ½À´Ï´Ù:
+if vol_PosX >= 0
+{
+    vol_BarOptionsMaster = %vol_BarOptionsMaster% X%vol_PosX%
+    vol_BarOptionsWave   = %vol_BarOptionsWave% X%vol_PosX%
+}
+
+; Y À§Ä¡°¡ ÁöÁ¤µÇ¾î ÀÖ´Ù¸é, ±×°ÍÀ» ¿É¼Ç¿¡ Ãß°¡ÇÕ´Ï´Ù.
+; ±×·¸Áö ¾ÊÀ¸¸é, »ý·«ÇØ ³ªÁß¿¡ °è»êÇÒ ¼ö ÀÖ½À´Ï´Ù:
+if vol_PosY >= 0
+{
+    vol_BarOptionsMaster = %vol_BarOptionsMaster% Y%vol_PosY%
+    vol_PosY_wave = %vol_PosY%
+    vol_PosY_wave += %vol_Thick%
+    vol_BarOptionsWave = %vol_BarOptionsWave% Y%vol_PosY_wave%
+}
+
+#SingleInstance
+SetBatchLines, 10ms
+Return
+
+
+;___________________________________________
+
+vol_WaveUp:
+SoundSet, +%vol_Step%, Wave
+Gosub, vol_ShowBars
+return
+
+vol_WaveDown:
+SoundSet, -%vol_Step%, Wave
+Gosub, vol_ShowBars
+return
+
+vol_MasterUp:
+SoundSet, +%vol_Step%
+Gosub, vol_ShowBars
+return
+
+vol_MasterDown:
+SoundSet, -%vol_Step%
+Gosub, vol_ShowBars
+return
+
+vol_ShowBars:
+; "¹ø½ÀÓ" È¿°ú¸¦ ¹æÁöÇÏ·Á¸é, ¾ÆÁ÷ Á¸ÀçÇÏÁö ¾ÊÀº °æ¿ì,
+; ¹Ù ⸸ »ý¼ºÇϽʽÿÀ:
+IfWinNotExist, vol_Wave
+    Progress, %vol_BarOptionsWave%, , , vol_Wave
+IfWinNotExist, vol_Master
+{
+    ; ½ºÅ©¸³Æ®°¡ ½ÇÇà ÁßÀÎ µ¿¾È¿¡ È­¸é Çػ󵵰¡ ¹Ù²î´Â °æ¿ì,
+    ; ¿©±â¿¡¼­ À§Ä¡¸¦ °è»êÇÕ´Ï´Ù:
+    if vol_PosY < 0
+    {
+        ; ¿þÀÌºê ¹Ù¸¦ ¸¶½ºÅÍ ¹Ù ¹Ù·Î À§¿¡ »ý¼ºÇÕ´Ï´Ù:
+        WinGetPos, , vol_Wave_Posy, , , vol_Wave
+        vol_Wave_Posy -= %vol_Thick%
+        Progress, %vol_BarOptionsMaster% Y%vol_Wave_Posy%, , , vol_Master
+    }
+    else
+        Progress, %vol_BarOptionsMaster%, , , vol_Master
+}
+; »ç¿ëÀÚ ¶Ç´Â ¿ÜºÎ ÇÁ·Î±×·¥ÀÌ º¼·ýÀ» ¹Ù²Ù¾úÀ» °æ¿ì, º¼·ýÀ» µÑ ´Ù ¾ò½À´Ï´Ù:
+SoundGet, vol_Master, Master
+SoundGet, vol_Wave, Wave
+Progress, 1:%vol_Master%
+Progress, 2:%vol_Wave%
+SetTimer, vol_BarOff, %vol_DisplayTime%
+return
+
+vol_BarOff:
+SetTimer, vol_BarOff, off
+Progress, 1:Off
+Progress, 2:Off
+return
+
+ + diff --git a/src/docs/scripts/WinLIRC.ahk b/src/docs/scripts/WinLIRC.ahk new file mode 100644 index 0000000..3747c40 --- /dev/null +++ b/src/docs/scripts/WinLIRC.ahk @@ -0,0 +1,280 @@ +; WinLIRC Client +; http://www.autohotkey.com +; This script receives notifications from WinLIRC whenever you press +; a button on your remote control. It can be used to automate Winamp, +; Windows Media Player, etc. It's easy to configure. For example, if +; WinLIRC recognizes a button named "VolUp" on your remote control, +; create a label named VolUp and beneath it use the command +; "SoundSet +5" to increase the soundcard's volume by 5%. + +; Here are the steps to use this script: +; 1) Configure WinLIRC to recognize your remote control and its buttons. +; WinLIRC is at http://winlirc.sourceforge.net +; 2) Edit the WinLIRC path, address, and port in the CONFIG section below. +; 3) Launch this script. It will start the WinLIRC server if needed. +; 4) Press some buttons on your remote control. A small window will +; appear showing the name of each button as you press it. +; 5) Configure your buttons to send keystrokes and mouse clicks to +; windows such as Winamp, Media Player, etc. See the examples below. + +; This script requires AutoHotkey 1.0.38.04 or later. +; HISTORY OF CHANGES +; March 2, 2007: +; - Improved reliability via "Critical" in ReceiveData(). +; October 5, 2005: +; - Eliminated Winsock warning dialog "10054" upon system shutdown/logoff. +; - Added option "DelayBetweenButtonRepeats" to throttle the repeat speed. + +; ------------------------------------------------- +; CONFIGURATION SECTION: Set your preferences here. +; ------------------------------------------------- +; Some remote controls repeat the signal rapidly while you're holding down +; a button. This makes it difficult to get the remote to send only a single +; signal. The following setting solves this by ignoring repeated signals +; until the specified time has passed. 200 is often a good setting. Set it +; to 0 to disable this feature. +DelayBetweenButtonRepeats = 200 + +; Specify the path to WinLIRC, such as C:\WinLIRC\winlirc.exe +WinLIRC_Path = %A_ProgramFiles%\WinLIRC\winlirc.exe + +; Specify WinLIRC's address and port. The most common are 127.0.0.1 (localhost) and 8765. +WinLIRC_Address = 127.0.0.1 +WinLIRC_Port = 8765 + +; Do not change the following two lines. Skip them and continue below. +Gosub WinLIRC_Init +return + +; -------------------------------------------- +; ASSIGN ACTIONS TO THE BUTTONS ON YOUR REMOTE +; -------------------------------------------- +; Configure your remote control's buttons below. Use WinLIRC's names +; for the buttons, which can be seen in your WinLIRC config file +; (.cf file) -- or you can press any button on your remote and the +; script will briefly display the button's name in a small window. +; +; Below are some examples. Feel free to revise or delete them to suit +; your preferences. + +VolUp: +SoundSet +5 ; Increase master volume by 5%. On Vista, replace this line with: Send {Volume_Up} +return + +VolDown: +SoundSet -5 ; Reduce master volume by 5%. On Vista, replace this line with: Send {Volume_Down} +return + +ChUp: +WinGetClass, ActiveClass, A +if ActiveClass in Winamp v1.x,Winamp PE ; Winamp is active. + Send {right} ; Send a right-arrow keystroke. +else ; Some other type of window is active. + Send {WheelUp} ; Rotate the mouse wheel up by one notch. +return + +ChDown: +WinGetClass, ActiveClass, A +if ActiveClass in Winamp v1.x,Winamp PE ; Winamp is active. + Send {left} ; Send a left-arrow keystroke. +else ; Some other type of window is active. + Send {WheelDown} ; Rotate the mouse wheel down by one notch. +return + +Menu: +IfWinExist, Untitled - Notepad +{ + WinActivate +} +else +{ + Run, Notepad + WinWait, Untitled - Notepad + WinActivate +} +Send Here are some keystrokes sent to Notepad.{Enter} +return + +; The examples above give a feel for how to accomplish common tasks. +; To learn the basics of AutoHotkey, check out the Quick-start Tutorial +; at http://www.autohotkey.com/docs/Tutorial.htm + +; ---------------------------- +; END OF CONFIGURATION SECTION +; ---------------------------- +; Do not make changes below this point unless you want to change the core +; functionality of the script. + +WinLIRC_Init: +OnExit, ExitSub ; For connection cleanup purposes. + +; Launch WinLIRC if it isn't already running: +Process, Exist, winlirc.exe +if not ErrorLevel ; No PID for WinLIRC was found. +{ + IfNotExist, %WinLIRC_Path% + { + MsgBox The file "%WinLIRC_Path%" does not exist. Please edit this script to specify its location. + ExitApp + } + Run %WinLIRC_Path% + Sleep 200 ; Give WinLIRC a little time to initialize (probably never needed, just for peace of mind). +} + +; Connect to WinLIRC (or any type of server for that matter): +socket := ConnectToAddress(WinLIRC_Address, WinLIRC_Port) +if socket = -1 ; Connection failed (it already displayed the reason). + ExitApp + +; Find this script's main window: +Process, Exist ; This sets ErrorLevel to this script's PID (it's done this way to support compiled scripts). +DetectHiddenWindows On +ScriptMainWindowId := WinExist("ahk_class AutoHotkey ahk_pid " . ErrorLevel) +DetectHiddenWindows Off + +; When the OS notifies the script that there is incoming data waiting to be received, +; the following causes a function to be launched to read the data: +NotificationMsg = 0x5555 ; An arbitrary message number, but should be greater than 0x1000. +OnMessage(NotificationMsg, "ReceiveData") + +; Set up the connection to notify this script via message whenever new data has arrived. +; This avoids the need to poll the connection and thus cuts down on resource usage. +FD_READ = 1 ; Received when data is available to be read. +FD_CLOSE = 32 ; Received when connection has been closed. +if DllCall("Ws2_32\WSAAsyncSelect", "UInt", socket, "UInt", ScriptMainWindowId, "UInt", NotificationMsg, "Int", FD_READ|FD_CLOSE) +{ + MsgBox % "WSAAsyncSelect() indicated Winsock error " . DllCall("Ws2_32\WSAGetLastError") + ExitApp +} +return + + + +ConnectToAddress(IPAddress, Port) +; This can connect to most types of TCP servers, not just WinLIRC. +; Returns -1 (INVALID_SOCKET) upon failure or the socket ID upon success. +{ + VarSetCapacity(wsaData, 400) + result := DllCall("Ws2_32\WSAStartup", "UShort", 0x0002, "UInt", &wsaData) ; Request Winsock 2.0 (0x0002) + ; Since WSAStartup() will likely be the first Winsock function called by this script, + ; check ErrorLevel to see if the OS has Winsock 2.0 available: + if ErrorLevel + { + MsgBox WSAStartup() could not be called due to error %ErrorLevel%. Winsock 2.0 or higher is required. + return -1 + } + if result ; Non-zero, which means it failed (most Winsock functions return 0 upon success). + { + MsgBox % "WSAStartup() indicated Winsock error " . DllCall("Ws2_32\WSAGetLastError") + return -1 + } + + AF_INET = 2 + SOCK_STREAM = 1 + IPPROTO_TCP = 6 + socket := DllCall("Ws2_32\socket", "Int", AF_INET, "Int", SOCK_STREAM, "Int", IPPROTO_TCP) + if socket = -1 + { + MsgBox % "socket() indicated Winsock error " . DllCall("Ws2_32\WSAGetLastError") + return -1 + } + + ; Prepare for connection: + SizeOfSocketAddress = 16 + VarSetCapacity(SocketAddress, SizeOfSocketAddress) + InsertInteger(2, SocketAddress, 0, AF_INET) ; sin_family + InsertInteger(DllCall("Ws2_32\htons", "UShort", Port), SocketAddress, 2, 2) ; sin_port + InsertInteger(DllCall("Ws2_32\inet_addr", "Str", IPAddress), SocketAddress, 4, 4) ; sin_addr.s_addr + + ; Attempt connection: + if DllCall("Ws2_32\connect", "UInt", socket, "UInt", &SocketAddress, "Int", SizeOfSocketAddress) + { + MsgBox % "connect() indicated Winsock error " . DllCall("Ws2_32\WSAGetLastError") . ". Is WinLIRC running?" + return -1 + } + return socket ; Indicate success by returning a valid socket ID rather than -1. +} + + + +ReceiveData(wParam, lParam) +; By means of OnMessage(), this function has been set up to be called automatically whenever new data +; arrives on the connection. It reads the data from WinLIRC and takes appropriate action depending +; on the contents. +{ + Critical ; Prevents another of the same message from being discarded due to thread-already-running. + socket := wParam + ReceivedDataSize = 4096 ; Large in case a lot of data gets buffered due to delay in processing previous data. + + VarSetCapacity(ReceivedData, ReceivedDataSize, 0) ; 0 for last param terminates string for use with recv(). + ReceivedDataLength := DllCall("Ws2_32\recv", "UInt", socket, "Str", ReceivedData, "Int", ReceivedDataSize, "Int", 0) + if ReceivedDataLength = 0 ; The connection was gracefully closed, probably due to exiting WinLIRC. + ExitApp ; The OnExit routine will call WSACleanup() for us. + if ReceivedDataLength = -1 + { + WinsockError := DllCall("Ws2_32\WSAGetLastError") + if WinsockError = 10035 ; WSAEWOULDBLOCK, which means "no more data to be read". + return 1 + if WinsockError <> 10054 ; WSAECONNRESET, which happens when WinLIRC closes via system shutdown/logoff. + ; Since it's an unexpected error, report it. Also exit to avoid infinite loop. + MsgBox % "recv() indicated Winsock error " . WinsockError + ExitApp ; The OnExit routine will call WSACleanup() for us. + } + ; Otherwise, process the data received. Testing shows that it's possible to get more than one line + ; at a time (even for explicitly-sent IR signals), which the following method handles properly. + ; Data received from WinLIRC looks like the following example (see the WinLIRC docs for details): + ; 0000000000eab154 00 NameOfButton NameOfRemote + Loop, parse, ReceivedData, `n, `r + { + if A_LoopField in ,BEGIN,SIGHUP,END ; Ignore blank lines and WinLIRC's start-up messages. + continue + ButtonName = ; Init to blank in case there are less than 3 fields found below. + Loop, parse, A_LoopField, %A_Space% ; Extract the button name, which is the third field. + if A_Index = 3 + ButtonName := A_LoopField + global DelayBetweenButtonRepeats ; Declare globals to make them available to this function. + static PrevButtonName, PrevButtonTime, RepeatCount ; These variables remember their values between calls. + if (ButtonName != PrevButtonName || A_TickCount - PrevButtonTime > DelayBetweenButtonRepeats) + { + if IsLabel(ButtonName) ; There is a subroutine associated with this button. + Gosub %ButtonName% ; Launch the subroutine. + else ; Since there is no associated subroutine, briefly display which button was pressed. + { + if (ButtonName == PrevButtonName) + RepeatCount += 1 + else + RepeatCount = 1 + SplashTextOn, 150, 20, Button from WinLIRC, %ButtonName% (%RepeatCount%) + SetTimer, SplashOff, 3000 ; This allows more signals to be processed while displaying the window. + } + PrevButtonName := ButtonName + PrevButtonTime := A_TickCount + } + } + return 1 ; Tell the program that no further processing of this message is needed. +} + + + +SplashOff: +SplashTextOff +SetTimer, SplashOff, Off +return + + + +InsertInteger(pInteger, ByRef pDest, pOffset = 0, pSize = 4) +; The caller must ensure that pDest has sufficient capacity. To preserve any existing contents in pDest, +; only pSize number of bytes starting at pOffset are altered in it. +{ + Loop %pSize% ; Copy each byte in the integer into the structure as raw binary data. + DllCall("RtlFillMemory", "UInt", &pDest + pOffset + A_Index-1, "UInt", 1, "UChar", pInteger >> 8*(A_Index-1) & 0xFF) +} + + + +ExitSub: ; This subroutine is called automatically when the script exits for any reason. +; MSDN: "Any sockets open when WSACleanup is called are reset and automatically +; deallocated as if closesocket was called." +DllCall("Ws2_32\WSACleanup") +ExitApp diff --git a/src/docs/scripts/WinLIRC.htm b/src/docs/scripts/WinLIRC.htm new file mode 100644 index 0000000..f3dd29c --- /dev/null +++ b/src/docs/scripts/WinLIRC.htm @@ -0,0 +1,292 @@ + + +WinLIRC Client + + + + + + + + +

WinLIRC Ŭ¶óÀ̾ðÆ®

+ +

+ÀÌ ½ºÅ©¸³Æ®´Â ¸®¸ðÆ® ÄÜÆ®·Ñ¿¡ ¹öÆ°À» ´©¸¦ ¶§¸¶´Ù WinLIRC ·ÎºÎÅÍ °íÁö¸¦ ¹Þ½À´Ï´Ù. Winamp, Windows Media Player, µîµîÀ» ÀÚµ¿È­ ÇÏ´Â µ¥ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. ½±°Ô ȯ°æÀ» ±¸¼ºÇÒ ¼ö ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î WinLIRC°¡ ¸®¸ðÆ® ÄÜÆ®·Ñ¿¡¼­ À̸§ÀÌ "VolUp"ÀÎ ¹öÆ°À» ÀÎÁöÇϸé, À̸§ÀÌ VolUpÀÎ ¶óº§À» »ý¼ºÇÏ°í ±× ¾Æ·¡¿¡ ¸í·É¾î SoundSet +5¸¦ »ç¿ëÇÏ¿© »ç¿îµåÄ«µåÀÇ º¼·ýÀ» 5%¸¸Å­ ³ôÀÔ´Ï´Ù. +

+

ÀÌ ½ºÅ©¸³Æ® ³»·Á¹Þ±â  |  ´Ù¸¥ »ùÇà ½ºÅ©¸³Æ®  |  È¨À¸·Î

+ +
; ´ÙÀ½Àº ÀÌ ½ºÅ©¸³Æ®¸¦ »ç¿ëÇÏ´Â ¹æ¹ýÀÔ´Ï´Ù:
+; 1) ¸®¸ðÆ® ÄÜÆ®·Ñ°ú ¹öÆ°À» ÀνÄÇϵµ·Ï WinLIRC¸¦ ±¸¼ºÇÕ´Ï´Ù.
+;    WinLIRC´Â ´ÙÀ½¿¡ ÀÖ½À´Ï´Ù: http://winlirc.sourceforge.net
+; 2) ¾Æ·¡ÀÇ CONFIG ¼½¼Ç¿¡¼­ WinLIRC °æ·Î, ÁÖ¼Ò, ±×¸®°í Æ÷Æ® ¹øÈ£¸¦ ÆíÁýÇÕ´Ï´Ù.
+; 3) ÀÌ ½ºÅ©¸³Æ®¸¦ ±âµ¿½Ãŵ´Ï´Ù. ÇÊ¿äÇϸé WinLIRC ¼­¹ö°¡ ÀÚµ¿À¸·Î ±âµ¿µË´Ï´Ù.
+; 4) ¸®¸ðÆ® ÄÜÆ®·Ñ¿¡¼­ ¹öÆ°À» ´­·¯ º¾´Ï´Ù. ¹öÆ°À» ´©¸¦ ¶§¸¶´Ù 
+;    ÀÛÀº âÀÌ ³ªÅ¸³ª ±× ¹öÆ°ÀÇ À̸§À» º¸¿©ÁÝ´Ï´Ù.
+; 5) ¹öÆ°À» ±¸¼ºÇØ Winamp, Media Player, µîµî°ú °°Àº â¿¡
+;     Å°´­¸²°ú ¸¶¿ì½º Ŭ¸¯À» Àü¼ÛÇÕ´Ï´Ù. ¾Æ·¡ ¿¹Á¦¸¦ ÂüÁ¶ÇϽʽÿÀ.
+
+; ÀÌ ½ºÅ©¸³Æ®´Â AutoHotkey 1.0.38.04 ÀÌ»óÀ» ¿ä±¸ÇÕ´Ï´Ù.
+; º¯°æ ÀÌ·Â
+; March 2, 2007:
+; - ReceiveData()¿¡ "Critical"¸¦ ÅëÇÏ¿© ½Å·Ú¼º °³¼±.
+; October 5, 2005:
+; - ½Ã½ºÅÛÀÌ ¼Ë´Ù¿î/·Î±×¿ÀÇÁÇÒ ¶§ Winsock °æ°í ´ëÈ­»óÀÚ "10054"°¡ ³ªÅ¸³ª´Â °ÍÀ» Á¦°Å.
+; - ¹Ýº¹ ¼Óµµ¸¦ °¨¼Ò½ÃÅ°±â À§ÇØ ¿É¼Ç "DelayBetweenButtonRepeats"¸¦ Ãß°¡.
+
+; -------------------------------------------------------------
+; CONFIGURATION SECTION: ¿©±â¿¡ ¿øÇÏ´Â ´ë·Î ¼³Á¤ÇÕ´Ï´Ù.
+; -------------------------------------------------------------
+; ¾î¶² ¸®¸ðÄÜÀº ¹öÆ°À» ´©¸£°í ÀÖ´Â µ¿¾È ½ÅÈ£¸¦ ºü¸£°Ô ¹Ýº¹ÇØ º¸³À´Ï´Ù.
+; ÀÌ ¶§¹®¿¡ ¸®¸ðÆ® ÄÜÆ®·ÑÀÌ ¿ÀÁ÷ ÇϳªÀÇ ½ÅÈ£¸¸ Àü¼ÛÇϵµ·Ï ¸¸µé±â°¡ ¾î·Æ½À´Ï´Ù
+; ´ÙÀ½ ¼³Á¤Àº  ÁöÁ¤µÈ ½Ã°£ÀÌ °æ°úÇÒ ¶§±îÁö ¹Ýº¹µÈ ½ÅÈ£¸¦ ¹«½ÃÇÔÀ¸·Î½á
+; ÀÌ ¹®Á¦¸¦ ÇØ°áÇÕ´Ï´Ù. 200ÀÌ¸é º¸Åë ÁÁÀº ¼³Á¤ÀÔ´Ï´Ù.
+; 0À¸·Î ¼³Á¤Çϸé ÀÌ Æ¯Â¡À» ºÒ´ÉÀ¸·Î ¸¸µì´Ï´Ù.
+DelayBetweenButtonRepeats = 200
+
+; °æ·Î¸¦ WinLIRC¿¡ ÁöÁ¤ÇÕ´Ï´Ù. ¿¹¸¦ µé¾î C:\WinLIRC\winlirc.exe
+WinLIRC_Path = %A_ProgramFiles%\WinLIRC\winlirc.exe
+
+; WinLIRCÀÇ ÁÖ¼Ò¿Í Æ÷Æ®¸¦ ÁöÁ¤ÇÕ´Ï´Ù. º¸Åë 127.0.0.1 (localhost)°ú 8765ÀÔ´Ï´Ù.
+WinLIRC_Address = 127.0.0.1
+WinLIRC_Port = 8765
+
+; ´ÙÀ½ µÎ ÁÙÀº º¯°æÇÏÁö ¸¶½Ê½Ã¿À. °Ç³Ê¶Ù°í ¾Æ·¡¿¡¼­ °è¼ÓÇϽʽÿÀ.
+Gosub WinLIRC_Init
+return
+
+; --------------------------------------------
+; ASSIGN ACTIONS TO THE BUTTONS ON YOUR REMOTE
+; --------------------------------------------
+; ¾Æ·¡¿¡¼­ ¸®¸ðÆ® ÄÜÆ®·Ñ ¹öÆ°À» ±¸¼ºÇϽʽÿÀ. ¹öÆ°¿¡ WinLIRCÀÇ À̸§À» »ç¿ëÇÕ´Ï´Ù.
+; À̸§Àº WinLIRC ȯ°æ±¸¼º ÆÄÀÏ(.cf)¿¡¼­ º¸½Ç ¼ö ÀÖ½À´Ï´Ù.
+;  -- ¾Æ´Ï¸é ¸®¸ðÆ® ÄÜÆ®·Ñ¿¡ ¹öÆ°À» ¸¶¿ì°Í³ª ´©¸£¸é
+; ½ºÅ©¸³Æ®°¡ ÀÛÀº â¿¡ ±× ¹öÆ°ÀÇ À̸§À» Àá½Ã º¸¿©ÁÝ´Ï´Ù.
+; 
+; ¾Æ·¡´Â ¸î °¡Áö ¿¹Á¦ÀÔ´Ï´Ù.
+;  ÀÚÀ¯·Ó°Ô ¿©·¯ºÐÀÇ ±âÈ£¿¡ ¸Â°Ô °³Á¶Çϰųª Áö¿øµµ µË´Ï´Ù.
+
+VolUp:
+SoundSet +5  ; ¸¶½ºÅÍ º¼·ýÀ» 5%¸¸Å­ ´Ã¸³´Ï´Ù. Vista¿¡¼­´Â ÀÌ ÁÙÀ» ´ÙÀ½À¸·Î ±³Ã¼ÇϽʽÿÀ: Send {Volume_Up}
+return
+
+VolDown:
+SoundSet -5  ; ¸¶½ºÅÍ º¼·ýÀ» 5%¸¸Å­ ÁÙÀÔ´Ï´Ù. Vista¿¡¼­´Â ÀÌ ÁÙÀ» ´ÙÀ½À¸·Î ±³Ã¼ÇϽʽÿÀ: Send {Volume_Down}
+return
+
+ChUp:
+WinGetClass, ActiveClass, A
+if ActiveClass in Winamp v1.x,Winamp PE  ; Winamp°¡ È°¼ºÈ­ µÇ¾î ÀÖ½À´Ï´Ù.
+    Send {right}  ; ¿À¸¥ÂÊ-È­»ìÇ¥ Å°´­¸²À» Àü¼ÛÇÕ´Ï´Ù.
+else  ; ´Ù¸¥ À¯ÇüÀÇ Ã¢ÀÌ È°¼ºÈ­ µÇ¾î ÀÖ½À´Ï´Ù.
+    Send {WheelUp}  ; ¸¶¿ì½º ÈÙÀ» ÇÑ ´«±Ý À§·Î µ¹¸³´Ï´Ù.
+return
+
+ChDown:
+WinGetClass, ActiveClass, A
+if ActiveClass in Winamp v1.x,Winamp PE  ; Winamp°¡ È°¼ºÈ­ µÇ¾î ÀÖ½À´Ï´Ù.
+    Send {left}  ; ¿ÞÂÊ-È­»ìÇ¥ Å°´­¸²À» Àü¼ÛÇÕ´Ï´Ù.
+else  ; ´Ù¸¥ À¯ÇüÀÇ Ã¢ÀÌ È°¼ºÈ­ µÇ¾î ÀÖ½À´Ï´Ù.
+    Send {WheelDown}  ; ¸¶¿ì½º ÈÙÀ» ÇÑ ´«±Ý ¾Æ·¡·Î µ¹¸³´Ï´Ù.
+return
+
+Menu:
+IfWinExist, Untitled - Notepad
+{
+    WinActivate
+}
+else
+{
+    Run, Notepad
+    WinWait, Untitled - Notepad
+    WinActivate
+}
+Send Here are some keystrokes sent to Notepad.{Enter}
+return
+
+; À§ÀÇ ¿¹Á¦¿¡¼­ ¾î¶»°Ô ÀϹÝÀûÀÎ °ú¾÷À» ´Þ¼ºÇÏ´ÂÁö °¨À» ÀâÀ» ¼ö ÀÖ½À´Ï´Ù.
+; ¿ÀÅäÇÖÅ°ÀÇ ±âº» Áö½ÄÀ» ½ÀµæÇÏ·Á¸é »¡Áö ½ÃÀÛÇϱâ ÀÚ½À¼­¸¦ ã¾Æ º¸½Ã±â ¹Ù¶ø´Ï´Ù:
+; http://www.autohotkey.com/docs/Tutorial.htm
+
+; ----------------------------
+; END OF CONFIGURATION SECTION
+; ----------------------------
+; ÀÌ ½ÃÁ¡ ÀÌÈÄ·Î º¯°æÇÏÁö ¸¶½Ê½Ã¿À.
+; ´Ü, ½ºÅ©¸³Æ®ÀÇ ÇÙ½É ±â´ÉÀ» ¹Ù²Ù°í ½Í´Ù¸é ¿¹¿ÜÀÔ´Ï´Ù.
+
+WinLIRC_Init:
+OnExit, ExitSub  ; Á¢¼Ó û¼Ò ¸ñÀûÀ» À§ÇØ.
+
+; ¾ÆÁ÷ ½ÇÇàµÇÁö ¾Ê¾Ò´Ù¸é WinLIRC¸¦ ±âµ¿ÇÕ´Ï´Ù:
+Process, Exist, winlirc.exe
+if not ErrorLevel  ; WinLIRC¿¡ ´ëÇÑ PID°¡ ¹ß°ßµÇÁö ¾Ê¾Ò½À´Ï´Ù.
+{
+    IfNotExist, %WinLIRC_Path%
+    {
+        MsgBox ÆÄÀÏ "%WinLIRC_Path%"°¡ Á¸ÀçÇÏÁö ¾Ê½À´Ï´Ù. ÀÌ ½ºÅ©¸³Æ®¸¦ ÆíÁýÇØ ±× À§Ä¡¸¦ ÁöÁ¤ÇϽʽÿÀ.
+        ExitApp
+    }
+    Run %WinLIRC_Path%
+    Sleep 200  ; WinLIRC¿¡ ÃʱâÈ­ ÇÒ ½Ã°£À» ÁÝ´Ï´Ù (¾Æ¸¶µµ °ÅÀÇ ÇÊ¿äÇÏÁö ¾ÊÀ» °Ì´Ï´Ù. ½Å°æ¾²Áö ¸¶½Ê½Ã¿À).
+}
+
+; WinLIRC¿¡ Á¢¼ÓÇÕ´Ï´Ù (¶Ç´Â ±×¸¦ ´ë½ÅÇÏ¸é ¾î¶² Á¾·ùÀÇ ¼­¹öÀ̵ç Á¢¼ÓÇÕ´Ï´Ù):
+socket := ConnectToAddress(WinLIRC_Address, WinLIRC_Port)
+if socket = -1  ; Á¢¼Ó ½ÇÆÐ (ÀÌ¹Ì ÀÌÀ¯´Â º¸¿©ÁÖ¾ú½À´Ï´Ù).
+    ExitApp
+
+; ÀÌ ½ºÅ©¸³Æ®ÀÇ ¸ÞÀΠâÀ» ã½À´Ï´Ù:
+Process, Exist  ; ÀÌ·¸°Ô Çϸé ErrorLevel¿¡ ÀÌ ½ºÅ©¸³Æ®ÀÇ PID°¡ ¼³Á¤µË´Ï´Ù (ÀÌ·±½ÄÀ¸·Î Çϸé ÄÄÆÄÀÏµÈ ½ºÅ©¸³Æ®¸¦ Áö¿øÇÒ ¼ö ÀÖ½À´Ï´Ù).
+DetectHiddenWindows On
+ScriptMainWindowId := WinExist("ahk_class AutoHotkey ahk_pid " . ErrorLevel)
+DetectHiddenWindows Off
+
+; OS°¡ ½ºÅ©¸³Æ®¿¡°Ô µé¾î¿À´Â µ¥ÀÌÅÍ°¡ ¼ö½ÅµÇ±â¸¦ ±â´Ù¸®°í ÀÖ´Ù°í °íÁöÇÒ ¶§,
+; ´ÙÀ½Àº ±× µ¥ÀÌÅ͸¦ Àбâ À§ÇÏ¿© ÇÔ¼ö¸¦ ±âµ¿½Ãŵ´Ï´Ù:
+NotificationMsg = 0x5555  ; ÀÓÀÇÀÇ ¸Þ½ÃÁö ¹øÈ£, ±×·¯³ª 0x1000 º¸´Ù´Â Ä¿¾ß ÇÕ´Ï´Ù.
+OnMessage(NotificationMsg, "ReceiveData")
+
+; Á¢¼ÓÀ» ¼³Á¤ÇØ ÀÌ ½ºÅ©¸³Æ®¿¡°Ô »õ·Î µ¥ÀÌÅÍ°¡ µµÂøÇÒ ¶§¸¶´Ù ¸Þ½ÃÁö¸¦ ÅëÇÏ¿© °íÁöÇÕ´Ï´Ù.
+; ÀÌ·¸°Ô Çϸé Á¢¼ÓÀ» ÆúÇÒ ÇÊ¿ä°¡ ¾øÀ¸¹Ç·Î, ÀÚ¿ø ³¶ºñ°¡ °¨¼ÒÇÕ´Ï´Ù.
+FD_READ = 1     ; µ¥ÀÌÅ͸¦ ÀÐÀ» ¼ö ÀÖÀ» ¶§ ¼ö½ÅµË´Ï´Ù.
+FD_CLOSE = 32   ; Á¢¼ÓÀÌ ´ÝÈú ¶§ ¼ö½ÅµË´Ï´Ù.
+if DllCall("Ws2_32\WSAAsyncSelect", "UInt", socket, "UInt", ScriptMainWindowId, "UInt", NotificationMsg, "Int", FD_READ|FD_CLOSE)
+{
+    MsgBox % "WSAAsyncSelect() indicated Winsock error " . DllCall("Ws2_32\WSAGetLastError")
+    ExitApp
+}
+return
+
+
+
+ConnectToAddress(IPAddress, Port)
+; ´ëºÎºÐÀÇ À¯ÇüÀÇ TCP ¼­¹ö¿¡ Á¢¼ÓÇÒ ¼ö ÀÖ½À´Ï´Ù. WinLIRC ¸¸À¸·Î Á¦ÇѵÇÁö ¾Ê½À´Ï´Ù.
+; ½ÇÆÐÇϸé -1 (INVALID_SOCKET)À» µ¹·ÁÁÖ°í ¼º°øÇÏ¸é ¼ÒÄÏ ID¸¦ µ¹·ÁÁÝ´Ï´Ù.
+{
+    VarSetCapacity(wsaData, 400)
+    result := DllCall("Ws2_32\WSAStartup", "UShort", 0x0002, "UInt", &wsaData) ; Winsock 2.0 (0x0002)À» ¿ä±¸ÇÕ´Ï´Ù
+    ; WSAStartup()ÀÌ À̽ºÅ©¸³Æ®°¡ ù ¹ø°·Î È£ÃâÇÑ Winsock ÇÔ¼öÀÏ °¡´É¼ºÀÌ ³ôÀ¸¹Ç·Î,
+    ; ErrorLevelÀ» Á¡°ËÇØ OS¿¡ Winsock 2.0ÀÌ ÀÖ´ÂÁö ¾Ë¾Æ º¾´Ï´Ù:
+    if ErrorLevel
+    {
+        MsgBox WSAStartup() could not be called due to error %ErrorLevel%. Winsock 2.0 or higher is required.
+        return -1
+    }
+    if result  ; 0ÀÌ ¾Æ´Ï¶ó¸é, ½ÇÆÐÇß´Ù´Â ¶æÀÔ´Ï´Ù (´ëºÎºÐÀÇ Winsock ÇÔ¼ö´Â ¼º°øÇϸé 0À» µ¹·ÁÁÝ´Ï´Ù).
+    {
+        MsgBox % "WSAStartup() indicated Winsock error " . DllCall("Ws2_32\WSAGetLastError")
+        return -1
+    }
+
+    AF_INET = 2
+    SOCK_STREAM = 1
+    IPPROTO_TCP = 6
+    socket := DllCall("Ws2_32\socket", "Int", AF_INET, "Int", SOCK_STREAM, "Int", IPPROTO_TCP)
+    if socket = -1
+    {
+        MsgBox % "socket() indicated Winsock error " . DllCall("Ws2_32\WSAGetLastError")
+        return -1
+    }
+
+    ; Á¢¼ÓÀ» ÁغñÇÕ´Ï´Ù:
+    SizeOfSocketAddress = 16
+    VarSetCapacity(SocketAddress, SizeOfSocketAddress)
+    InsertInteger(2, SocketAddress, 0, AF_INET)   ; sin_family
+    InsertInteger(DllCall("Ws2_32\htons", "UShort", Port), SocketAddress, 2, 2)   ; sin_port
+    InsertInteger(DllCall("Ws2_32\inet_addr", "AStr", IPAddress), SocketAddress, 4, 4)   ; sin_addr.s_addr
+
+    ; Á¢¼ÓÀ» ½ÃµµÇÕ´Ï´Ù:
+    if DllCall("Ws2_32\connect", "UInt", socket, "UInt", &SocketAddress, "Int", SizeOfSocketAddress)
+    {
+        MsgBox % "connect() indicated Winsock error " . DllCall("Ws2_32\WSAGetLastError") . ". Is WinLIRC running?"
+        return -1
+    }
+    return socket  ; -1 ¸»°í À¯È¿ÇÑ ¼ÒÄÏ ID¸¦ µ¹·ÁÁÖ¾î ¼º°øÀ» ¾Ë¸³´Ï´Ù.
+}
+
+
+
+ReceiveData(wParam, lParam)
+; OnMessage()¸¦ ¼ö´ÜÀ¸·Î, ÀÌ ÇÔ¼ö´Â »õ µ¥ÀÌÅÍ°¡ Á¢¼Ó¿¡ µµÂøÇÒ ¶§¸¶´Ù
+; ÀÚµ¿À¸·Î È£ÃâµÇµµ·Ï ¼³Á¤µÇ¾î ÀÖ½À´Ï´Ù. µ¥ÀÌÅ͸¦ WinLIRC·ÎºÎÅÍ Àо
+; ±× ³»¿ë¿¡ µû¶ó ÀûÀýÇÏ°Ô Á¶Ä¡¸¦ ÃëÇÕ´Ï´Ù.
+{
+    Critical  ; ÀÌ¹Ì ¾²·¹µå°¡ ½ÇÇàµÇ¾î Àֱ⠶§¹®¿¡ ¶Ç´Ù¸¥ °°Àº ¸Þ½ÃÁö°¡ Æó±âµÇÁö ¾Êµµ·Ï ¸·½À´Ï´Ù.
+    socket := wParam
+    ReceivedDataSize = 4096  ; ÀÌÀü µ¥ÀÌÅ͸¦ ó¸®Çϴµ¥ Áö¿¬ ½Ã°£ÀÌ À־ ¸¹Àº µ¥ÀÌÅÍ°¡ ¹öÆÛ¿¡ Âû °æ¿ì¸¦ ´ëºñÇØ Å©°Ô Àâ½À´Ï´Ù.
+
+    VarSetCapacity(ReceivedData, ReceivedDataSize, 0)  ; recv()¿¡ »ç¿ëÇϱâ À§ÇØ 0À» ¸¶Áö¸· ¸Å°³º¯¼ö¿¡ ÁöÁ¤ÇØ ¹®ÀÚ¿­À» Á¾·áÇÕ´Ï´Ù.
+    ReceivedDataLength := DllCall("Ws2_32\recv", "UInt", socket, "Str", ReceivedData, "Int", ReceivedDataSize, "Int", 0)
+    if ReceivedDataLength = 0  ; Á¢¼ÓÀÌ ¿ì¾ÆÇÏ°Ô ´ÝÇû½À´Ï´Ù. ¾Æ¸¶µµ WinLIRC¸¦ ³¡³Â±â ¶§¹®ÀÏ °ÍÀÔ´Ï´Ù.
+        ExitApp  ; OnExit ·çƾÀÌ ¿ì¸®¸¦ ´ë½ÅÇÏ¿© WSACleanup()À» È£ÃâÇØ ÁÝ´Ï´Ù.
+    if ReceivedDataLength = -1
+    {
+        WinsockError := DllCall("Ws2_32\WSAGetLastError")
+        if WinsockError = 10035  ; WSAEWOULDBLOCK, "´õ ÀÌ»ó ÀÐÀ» µ¥ÀÌÅÍ°¡ ¾ø´Ù"´Â ¶æÀÔ´Ï´Ù.
+            return 1
+        if WinsockError <> 10054 ; WSAECONNRESET, WinLIRC°¡ ½Ã½ºÅÛ ¼Ë´Ù¿î/·Î±×¿ÀÇÁ¸¦ ÅëÇÏ¿© ´ÝÈú ¶§ ÀϾ´Ï´Ù.
+            ; ¿¹Ãø ÇÏÁö ¸øÇÑ ¿¡·¯À̹ǷΠº¸°íÇÕ´Ï´Ù.  ¶Ç ¹«ÇÑ È¸µ¹À̸¦ ÇÇÇϱâ À§ÇØ Á¾·áÇÕ´Ï´Ù.
+            MsgBox % "recv() indicated Winsock error " . WinsockError
+        ExitApp  ; OnExit ·çƾÀÌ ¿ì¸®¸¦ ´ë½Å¿¡ WSACleanup()¸¦ È£ÃâÇÕ´Ï´Ù.
+    }
+    ; ±×·¸Áö ¾ÊÀ¸¸é, ¼ö½ÅµÈ µ¥ÀÌÅ͸¦ ó¸®ÇÕ´Ï´Ù. Å×½ºÆ®¿¡ ÀÇÇϸé ÇÑ ¹ø¿¡ ÇÑ ÁÙ ÀÌ»óÀ» ¾òÀ» ¼ö ÀÖ½À´Ï´Ù
+    ; (¸í½ÃÀûÀ¸·Î-Àü¼ÛµÈ IR ½ÅÈ£¿¡ ´ëÇؼ­µµ ¸¶Âù°¡ÁöÀÔ´Ï´Ù), ´ÙÀ½ ¸Þ½îµå°¡ ÀûÀýÇÏ°Ô Ã³¸®ÇÕ´Ï´Ù.
+    ; WinLIRC·ÎºÎÅÍ ¾òÀº µ¥ÀÌÅÍ´Â ´ÙÀ½ ¿¹Á¦¿Í ºñ½ÁÇÕ´Ï´Ù (ÀÚ¼¼ÇÑ °ÍÀº WinLIRC ¹®¼­¸¦ ÂüÁ¶ÇϽʽÿÀ):
+    ; 0000000000eab154 00 NameOfButton NameOfRemote
+    Loop, parse, ReceivedData, `n, `r
+    {
+        if A_LoopField in ,BEGIN,SIGHUP,END  ; ºó ÁÙ°ú WinLIRCÀÇ ½ÃÀÛ ¸Þ½ÃÁö¸¦ ¹«½ÃÇÕ´Ï´Ù.
+            continue
+        ButtonName =  ; ¾Æ·¡¿¡¼­ 3 °³ º¸´Ù Àû°Ô Çʵ尡 ¹ß°ßµÉ °æ¿ì¸¦ ´ëºñÇØ ºñ¿ö¼­ ÃʱâÈ­ÇÕ´Ï´Ù.
+        Loop, parse, A_LoopField, %A_Space%  ; ¹öÆ° À̸§À» ÃßÃâÇÕ´Ï´Ù. ¼¼ ¹ø° ÇʵåÀÔ´Ï´Ù.
+            if A_Index = 3
+                ButtonName := A_LoopField
+        global DelayBetweenButtonRepeats  ; Àü¿ª º¯¼ö¸¦ ¼±¾ðÇØ ÀÌ ÇÔ¼ö¿¡ Àû¿ëÇÕ´Ï´Ù.
+        static PrevButtonName, PrevButtonTime, RepeatCount  ; ÀÌ º¯¼öµéÀº È£Ãâ »çÀÌ¿¡ °ªÀ» ±â¾ïÇÕ´Ï´Ù.
+        if (ButtonName != PrevButtonName || A_TickCount - PrevButtonTime > DelayBetweenButtonRepeats)
+        {
+            if IsLabel(ButtonName)  ; ÀÌ ¹öÆ°¿¡ ¿¬°üµÈ ¼­ºê·çƾÀÌ ÀÖ½À´Ï´Ù.
+                Gosub %ButtonName%  ; ±× ¼­ºê·çƾÀ» ±âµ¿½Ãŵ´Ï´Ù.
+            else ; ¿¬°üµÈ ¼­ºê·çƾÀÌ ¾øÀ¸¹Ç·Î, °£·«ÇÏ°Ô ¾î´À ¹öÆ°ÀÌ ´­·È´ÂÁö º¸¿©ÁÝ´Ï´Ù.
+            {
+                if (ButtonName == PrevButtonName)
+                    RepeatCount += 1
+                else
+                    RepeatCount = 1
+                SplashTextOn, 150, 20, Button from WinLIRC, %ButtonName% (%RepeatCount%)
+                SetTimer, SplashOff, 3000  ; ÀÌ·¸°Ô Çϸé âÀÌ º¸ÀÌ´Â µ¿¾È¿¡ ´õ ¸¹Àº ½ÅÈ£¸¦ ó¸®ÇÒ ¼ö ÀÖ½À´Ï´Ù.
+            }
+            PrevButtonName := ButtonName
+            PrevButtonTime := A_TickCount
+        }
+    }
+    return 1  ; ÇÁ·Î±×·¥¿¡°Ô ´õ ÀÌ»ó ÀÌ ¸Þ½ÃÁö¸¦ ó¸®ÇÒ ÇÊ¿ä°¡ ¾ø´Ù°í ¾Ë¸³´Ï´Ù.
+}
+
+
+
+SplashOff:
+SplashTextOff
+SetTimer, SplashOff, Off
+return
+
+
+
+InsertInteger(pInteger, ByRef pDest, pOffset = 0, pSize = 4)
+; È£ÃâÀÚ´Â pDestÀÇ °¡¿ë ´É·ÂÀÌ ÃæºÐÇÑÁö È®ÀÎÇØ¾ß ÇÕ´Ï´Ù. ±âÁ¸ÀÇ ³»¿ëÀ» pDest¿¡ º¸Á¸Çϱâ À§ÇØ,
+; pOffset¿¡¼­ ½ÃÀÛÇؼ­ ¿ÀÁ÷ pSize °³¼öÀÇ ¹ÙÀÌÆ®¸¸ º¯°æµË´Ï´Ù.
+{
+    Loop %pSize%  ; °¢ ¹ÙÀÌÆ®¸¦ ±¸Á¶Ã¼ ¾ÈÀ¸·Î ³¯ ÀÌÁø µ¥ÀÌÅÍ·Î º¹»çÇÕ´Ï´Ù.
+        DllCall("RtlFillMemory", "UInt", &pDest + pOffset + A_Index-1, "UInt", 1, "UChar", pInteger >> 8*(A_Index-1) & 0xFF)
+}
+
+
+
+ExitSub:  ; ÀÌ ¼­ºê·çƾÀº ½ºÅ©¸³Æ®°¡ ¾î¶² ÀÌÀ¯·Î Á¾·áµÉ ¶§ ÀÚµ¿À¸·Î È£ÃâµË´Ï´Ù.
+; MSDN¿¡ ÀÇÇϸé: "WSACleanupÀÌ È£ÃâµÉ ¶§ ¿­¸° ¼ÒÄÏÀº ¸ðµÎ ¸®¼ÂµÇ°í 
+; ¸¶Ä¡ closesocket ÀÌ È£ÃâµÉ °Íó·³ ÀÚµ¿À¸·Î ÇÒ´çÀÌ ÇØÁ¦µË´Ï´Ù."
+DllCall("Ws2_32\WSACleanup")
+ExitApp
+
+ + diff --git a/src/docs/scripts/WindowShading.ahk b/src/docs/scripts/WindowShading.ahk new file mode 100644 index 0000000..693ccbf --- /dev/null +++ b/src/docs/scripts/WindowShading.ahk @@ -0,0 +1,53 @@ +; Window Shading (roll up a window to its title bar) -- by Rajat +; http://www.autohotkey.com +; This script reduces a window to its title bar and then back to its +; original size by pressing a single hotkey. Any number of windows +; can be reduced in this fashion (the script remembers each). If the +; script exits for any reason, all "rolled up" windows will be +; automatically restored to their original heights. + +; Set the height of a rolled up window here. The operating system +; probably won't allow the title bar to be hidden regardless of +; how low this number is: +ws_MinHeight = 25 + +; This line will unroll any rolled up windows if the script exits +; for any reason: +OnExit, ExitSub +return ; End of auto-execute section + +#z:: ; Change this line to pick a different hotkey. +; Below this point, no changes should be made unless you want to +; alter the script's basic functionality. +; Uncomment this next line if this subroutine is to be converted +; into a custom menu item rather than a hotkey. The delay allows +; the active window that was deactivated by the displayed menu to +; become active again: +;Sleep, 200 +WinGet, ws_ID, ID, A +Loop, Parse, ws_IDList, | +{ + IfEqual, A_LoopField, %ws_ID% + { + ; Match found, so this window should be restored (unrolled): + StringTrimRight, ws_Height, ws_Window%ws_ID%, 0 + WinMove, ahk_id %ws_ID%,,,,, %ws_Height% + StringReplace, ws_IDList, ws_IDList, |%ws_ID% + return + } +} +WinGetPos,,,, ws_Height, A +ws_Window%ws_ID% = %ws_Height% +WinMove, ahk_id %ws_ID%,,,,, %ws_MinHeight% +ws_IDList = %ws_IDList%|%ws_ID% +return + +ExitSub: +Loop, Parse, ws_IDList, | +{ + if A_LoopField = ; First field in list is normally blank. + continue ; So skip it. + StringTrimRight, ws_Height, ws_Window%A_LoopField%, 0 + WinMove, ahk_id %A_LoopField%,,,,, %ws_Height% +} +ExitApp ; Must do this for the OnExit subroutine to actually Exit the script. diff --git a/src/docs/scripts/WindowShading.htm b/src/docs/scripts/WindowShading.htm new file mode 100644 index 0000000..80b880a --- /dev/null +++ b/src/docs/scripts/WindowShading.htm @@ -0,0 +1,64 @@ + + +Window Shading (roll up a window to its title bar) -- by Rajat + + + + + + + +

Window Shading (âÀ» Á¦¸ñ ¹Ù±îÁö ¸»¾Æ ¿Ã¸®±â) -- by Rajat

+ +

ÀÌ ½ºÅ©¸³Æ®´Â âÀ» Á¦¸ñ ¹Ù±îÁö ¸»¾Æ ¿Ã¸®°í ÇÖÅ°¸¦ ´©¸£¸é ´Ù½Ã ¿ø·¡ Å©±â·Î µ¹¾Æ¿É´Ï´Ù. âÀÇ °³¼ö¿¡ »ó°ü¾øÀÌ ÀÌ·± ½ÄÀ¸·Î ÁÙÀÏ ¼ö ÀÖ½À´Ï´Ù (½ºÅ©¸³Æ®°¡ °¢°¢ ±â¾ïÇÕ´Ï´Ù). ½ºÅ©¸³Æ®°¡ ¾î¶² ÀÌÀ¯·Î Á¾·áÇϸé "¸»·Á ¿Ã¶ó°£" ¸ðµç âÀÌ ÀÚµ¿À¸·Î ¿ø·¡ ³ôÀÌ·Î º¹±¸µË´Ï´Ù. +

+

ÀÌ ½ºÅ©¸³Æ® ³»·Á¹Þ±â  |  ´Ù¸¥ »ùÇà ½ºÅ©¸³Æ®  |  È¨À¸·Î

+ +
; ¸»¸° âÀÇ ³ôÀ̸¦ ¿©±â¿¡¼­ ¼³Á¤ÇÕ´Ï´Ù.
+; ¾Æ¸¶µµ ÀÌ ¼ýÀÚ°¡ ¾ó¸¶³ª ³·Àº°¡¿¡ »ó°ü ¾øÀÌ ¿î¿µÃ¼Á¦´Â 
+; Á¦¸ñ¹Ù°¡ ¼û´Â °ÍÀ» Çã¿ëÇÏÁö ¾ÊÀ» °ÍÀÔ´Ï´Ù:
+ws_MinHeight = 25
+
+; ÀÌ ÁÙÀº ¾î¶² ÀÌÀ¯·Î ½ºÅ©¸³Æ®°¡ Á¾·áÇϸé
+; ¸»·Á ¿Ã¶ó°£ âÀ» º¹±¸ÇÕ´Ï´Ù:
+OnExit, ExitSub
+return  ; ÀÚµ¿ ½ÇÇà ¼½¼ÇÀÇ ³¡
+
+#z::  ; ÀÌ ÁÙÀ» ¹Ù²ã ´Ù¸¥ ÇÖÅ°¸¦ °ñ¶óµµ µË´Ï´Ù.
+; ÀÌ ½ÃÁ¡ ÀÌÈÄ·Î, ¾î¶² º¯°æµµ Çã¿ëÇÏÁö ¾Ê½À´Ï´Ù
+; ´Ü, ½ºÅ©¸³Æ®ÀÇ ±âº» ±â´ÉÀ» º¯°æÇÏ°í ½ÍÀº °æ¿ì´Â ¿¹¿ÜÀÔ´Ï´Ù.
+; ´ÙÀ½ ÁÙÀ» ÁÖ¼® ÇØÁ¦Çϸé ÀÌ ¼­ºê·çƾÀ» ÇÖÅ°°¡ ¾Æ´Ï¶ó
+; ¸ÂÃã ¸Þ´º Ç׸ñÀ¸·Î º¯È¯ÇÒ ¼ö ÀÖ½À´Ï´Ù.  
+; Áö¿¬ ½Ã°£ ´öºÐ¿¡ ¸Þ´º ¶§¹®¿¡ ²¨Á³´ø
+; È°¼º âÀº ´Ù½Ã ÄÑÁý´Ï´Ù:
+;Sleep, 200
+WinGet, ws_ID, ID, A
+Loop, Parse, ws_IDList, |
+{
+    IfEqual, A_LoopField, %ws_ID%
+    {
+        ; ºÎÇÕÀÌ ¹ß°ßµÇ¾úÀ¸¹Ç·Î, ÀÌ Ã¢Àº º¹±¸µË´Ï´Ù (´Ù½Ã ÆìÁü):
+        StringTrimRight, ws_Height, ws_Window%ws_ID%, 0
+        WinMove, ahk_id %ws_ID%,,,,, %ws_Height%
+        StringReplace, ws_IDList, ws_IDList, |%ws_ID%
+        return
+    }
+}
+WinGetPos,,,, ws_Height, A
+ws_Window%ws_ID% = %ws_Height%
+WinMove, ahk_id %ws_ID%,,,,, %ws_MinHeight%
+ws_IDList = %ws_IDList%|%ws_ID%
+return
+
+ExitSub:
+Loop, Parse, ws_IDList, |
+{
+    if A_LoopField =  ; ¸®½ºÆ®ÀÇ Ã¹ Çʵå´Â º¸Åë ºñ¾î ÀÖ½À´Ï´Ù.
+        continue      ; ±×·¡¼­ °Ç³Ê ¶Ý´Ï´Ù.
+    StringTrimRight, ws_Height, ws_Window%A_LoopField%, 0
+    WinMove, ahk_id %A_LoopField%,,,,, %ws_Height%
+}
+ExitApp  ; OnExit ¼­ºê·çƾ¿¡ ´ëÇÏ¿© ¹Ýµå½Ã ÀÌ·¸°Ô Çؾ߸¸ ½ºÅ©¸³Æ®¸¦ ½ÇÁ¦·Î Á¾·áÇÒ ¼ö ÀÖ½À´Ï´Ù.
+
+ + diff --git a/src/docs/scripts/index.htm b/src/docs/scripts/index.htm new file mode 100644 index 0000000..2d87d16 --- /dev/null +++ b/src/docs/scripts/index.htm @@ -0,0 +1,100 @@ + + +AutoHotkey Script Showcase + + + + + + + +

¿ÀÅäÇÖÅ° ½ºÅ©¸³Æ® ¸ð¹ü ¿¹Á¦

+ +

NiftyWindows -- by Enovatic-Solutions: ÀÌ ½ºÅ©¸³Æ®´Â ²ø±â, Å©±â ¹Ù²Ù±â, ÃÖ´ëÈ­, ÃÖ¼ÒÈ­ ±×¸®°í ´Ý±âµî ±âº»ÀûÀÎ ¸ðµç âÀÇ ÀÛµ¿À» ½±°Ô Á¦¾îÇÒ ¼ö ÀÖ½À´Ï´Ù. °¡Àå °­·ÂÇÑ Æ¯Â¡Àº ¿À¸¥ÂÊ ¸¶¿ì½º ¹öÆ°À¸·Î ²ø¸é È°¼ºÈ­ µË´Ï´Ù. °¢ âÀ» °¡»óÀÇ 3Çà 3¿­ ¾ÆÈ© °³ÀÇ ¼¿ °ÝÀÚ¿¡ ³ª´©¾î º¸¿©ÁÝ´Ï´Ù. °¡¿îµ¥ ¼¿ÀÌ °¡Àå Å®´Ï´Ù: ¿À¸¥ÂÊ ¹öÆ°À¸·Î ±× âÀÇ ¸ð¼­¸®¸¦ Ŭ¸¯ÇØ ²ø¾î À̵¿ÇÒ ¼ö ÀÖ½À´Ï´Ù. ´Ù¸¥ ¿©´ü °³ÀÇ ¼¿Àº °°Àº ¹æ½ÄÀ¸·Î âÀÇ Å©±â¸¦ ¹Ù²Ù´Â µ¥ »ç¿ëµË´Ï´Ù. NiftyWindows´Â ¶ÇÇÑ ÀÚ¼® °ÝÀÚ(snap-to-grid), "â ºñÀ² À¯Áö", âÀ» ŸÀÌƲ¹Ù±îÁö °¨¾Æ¿Ã¸®±â, Åõ¸íµµ Á¦¾î, ±âŸ À¯¿ëÇÑ ´ÜÃàÅ°µéÀ» Á¦°øÇÕ´Ï´Ù. +

+

È­¸é È®´ë±â -- by Holomind: ÀÌ È­¸é È®´ë±â´Â ¿î¿µ üÁ¦¿¡ Æ÷ÇÔµÈ È®´ë±â¿¡ ºñÇØ ¿©·¯ ÀåÁ¡ÀÌ ÀÖ½À´Ï´Ù: °»½Å °£°Ý º¯°æ°ú È®´ë ¼öÁØ (Ãà¼Ò Æ÷ÇÔ); ´õ ³ªÀº Ãâ·ÂÀ» Á¦°øÇÏ´Â ¾ØƼ¿¤¸®¾î½Ì; ±×¸®°í ¿ÀÇ ¼Ò½ºÀÔ´Ï´Ù (°á·ÐÀûÀ¸·Î, ¿©·¯ º¯Çü Áß¿¡¼­ °í¸¦ ¼ö ÀÖÀ¸¸ç, ¿©·¯ºÐ¿¡°Ô ¸Â°Ô ½ºÅ©¸³Æ®¸¦ Àç´ÜÇÒ ¼ö ÀÖ½À´Ï´Ù). +

+

LiveWindows: Watch Dialog-boxes in Thumbnail -- by Holomind: ÀÌ ½ºÅ©¸³Æ®·Î ³»·Á¹Þ±â, ÆÄÀÏ º¹»ç, ±âŸ ´ëÈ­»óÀÚÀÇ ÁøÇà »óȲÀ» °üÁ¦ÇÒ ¼ö ÀÖ½À´Ï´Ù. °¢ ´ëÈ­»óÀÚ¿Í ÇÁ·Î±×·¹½º ¹Ù¿¡ ÀÛÀº ¹Ýº¹ Ç¥½ÄÀ» º¸¿©ÁÝ´Ï´Ù (´ëÈ­»óÀÚ´Â ÀÚµ¿À¸·Î ŽÁöµË´Ï´Ù. ´Ù¸¥ â µÚ¿¡ À־ ŽÁöµË´Ï´Ù). ¹Ì¸® º¸±â âÀº ¾ðÁ¦³ª »óÀ§¿¡ ÀÖÁö¸¸ È­¸é ±¸¿ªÀ» ¾ÆÁÖ Á¶±Ý¸¸ Â÷ÁöÇÕ´Ï´Ù (¸ð¼­¸®¸¦ ²ø¾î Å©±â¸¦ ¹Ù²Ü ¼öµµ ÀÖ½À´Ï´Ù). ¾î¶² âÀÌµç °üÁ¦ÇÒ ¼ö ÀÖ½À´Ï´Ù. ¼±Åà ³×¸ð¸¦ °ü½É ±¸¿ª ±Ùó¿¡ ²ø¾î ³õÀº ´ÙÀ½ (control-shift-drag), Win+W¸¦ ´­·¯ ½Ç½Ã°£À¸·Î °»½ÅÇØ ¹Ì¸®º¸±â â¿¡ ±× ±¸¿ªÀ» º¸¿©ÁÝ´Ï´Ù. +

+

Mouse Gestures -- by deguix: ÀÌ ½ºÅ©¸³Æ®´Â ¸¶¿ì½º ¿ìÃø ¹öÆ°ÀÌ ´­·Á ÀÖ´Â µ¿¾È ¾î¶»°Ô ¸¶¿ì½º¸¦ À̵¿ÇÏ´ÂÁö ÁöÄÑ º¾´Ï´Ù. ¾Ë°í ÀÖ´Â ¸ð¾çÀ̳ª ½Éº¼À» "±×¸®¸é", ÇÁ·Î±×·¥À» ±âµ¿Çϰųª ¿©·¯ºÐÀÌ ÁöÁ¤ÇÑ ¸ÂÃã ÇàÀ§¸¦ ¼öÇàÇÕ´Ï´Ù (¸¶Ä¡ ÇÖŰó·³). Á¦½ºÃ³¸¦ Á¤ÀÇÇÏ´Â ¹ýÀº ¾È¿¡ Æ÷ÇÔµÈ README ÆÄÀÏÀ» ÂüÁ¶ÇϽʽÿÀ. +

+

ÆíÁý±â¿¡ ¹®¸Æ °¨Áö µµ¿ò¸» ¼³Ä¡Çϱâ - by Rajat: +ÀÌ ½ºÅ©¸³Æ®´Â¼±ÅÃµÈ ¿ÀÅäÇÖÅ° ¸í·É¾î³ª Å°¿öµå¿¡ ´ëÇÏ¿© Ctrl+2 (¶Ç¸¥ ¿©·¯ºÐÀÌ ¼±ÅÃÇÑ Å°)¸¦ µµ¿ò¸» ÆÄÀÏÀ» º¸¿©ÁÖµµ·Ï ¸¸µì´Ï´Ù. ¾Æ¹«°Íµµ ¼±ÅõǾî ÀÖÁö ¾ÊÀ¸¸é, ¸í·É¾î À̸§ÀÌ ÇöÀç ÁÙÀÇ Ã³À½¿¡¼­ ÃßÃâµË´Ï´Ù. +

+

½±°Ô â ²ø±â (XP/2k/NT ¿ä±¸): º¸Åë, âÀº ŸÀÌƲ ¹Ù¸¦ Ŭ¸¯Çؾ߸¸ ²ø ¼ö ÀÖ½À´Ï´Ù. ÀÌ ½ºÅ©¸³Æ®´Â â ¾ÈÀÇ ¾Æ¹« °÷À̳ª ²ø ¼ö ÀÖµµ·Ï È®ÀåµÇ¾ú½À´Ï´Ù. ÀÌ ¸ðµå¸¦ È°¼ºÈ­ÇÏ·Á¸é, Ŭ¸¯ÇÏ´Â µ¿¾È CapsLock³ª °¡¿îµ¥ ¸¶¿ì½º ¹öÆ°À» Ŭ¸¯ÇÑ ´ÙÀ½, âÀ» »õ À§Ä¡·Î ²ü´Ï´Ù. +

+

½±°Ô â ²ø±â -- KDE ½ºÅ¸ÀÏ (XP/2k/NT ¿ä±¸) -- by Jonny: ÀÌ ½ºÅ©¸³Æ®´Â ÈξÀ ´õ ½±°Ô âÀ» À̵¿Çϰųª Å©±â¸¦ ¹Ù²Ü ¼ö ÀÖ½À´Ï´Ù: +1) ALT Å°¸¦ ´©¸¥ ä·Î â ¾È ¾Æ¹«°÷À̳ª ¿Þ-Ŭ¸¯ÇØ Ã¢À» »õ À§Ä¡·Î ²ø ¼ö ÀÖ½À´Ï´Ù; +2) ALT Å°¸¦ ´©¸¥ ä·Î â ¾È ¾Æ¹«°÷À̳ª ¿ì-Ŭ¸¯ÇØ ²ø¸é Å©±â¸¦ ½±°Ô ¹Ù²Ü ¼ö ÀÖ½À´Ï´Ù; +3) ALT¸¦ µÎ¹ø ´©¸£µÇ, µÎ ¹ø°´Â ±×³É ´©¸¥ ä·Î, ¿ÞŬ¸¯Çϸé âÀÌ ¸¶¿ì½º Ä¿¼­ ¾Æ·¡·Î ÃÖ¼ÒÈ­µÇ°í ¿ìŬ¸¯Çϸé ÃÖ´ëÈ­µÇ¸ç, °¡¿îµ¥¸¦ Ŭ¸¯ÇÏ¸é ´ÝÈü´Ï´Ù. +

+

ÀÚÁÖ °¡´Â Æú´õ¿¡ ½±°Ô Á¢±ÙÇϱâ -- by Savage: +¾î¶² À¯ÇüÀÇ Ã¢ÀÌ È°¼ºÈ­µÇ¾î ÀÖ´Â µ¿¾È °¡¿îµ¥ ¹öÆ°À» Ŭ¸¯Çϸé, ÀÌ ½ºÅ©¸³Æ®´Â ÀÚÁÖ °¡´Â Æú´õ À̸§ÀÇ ¸Þ´º¸¦ º¸¿©ÁÝ´Ï´Ù. ÀÚÁÖ °¡´Â Æú´õ¸¦ ¼±ÅÃÇÒ ¶§, ½ºÅ©¸³Æ®´Â Áï½Ã È°¼º ⠾ȿ¡¼­ ±× Æú´õ·Î ÀüȯÇÕ´Ï´Ù. ´ÙÀ½ â À¯ÇüÀ» Áö¿øÇÕ´Ï´Ù: 1) Ç¥ÁØ ÆÄÀÏ-¿­±â ¶Ç´Â ÆÄÀÏ-ÀúÀå ´ëÈ­»óÀÚ; 2) Ž»ö±â â; 3) ÄÜ¼Ö (¸í·É¾î ÇÁ·ÒÇÁÆ®) â. +¸Þ´º´Â ¶Ç Áö¿øµÇÁö ¾Ê´Â â À¯Çü¿¡ ´ëÇÏ¿© ¼±ÅÃÀûÀ¸·Î ³ªÅ¸³¯ ¼öµµ ÀÖ½À´Ï´Ù. ±× °æ¿ì ÀÚÁÖ°¡´Â Æú´õ°¡ »õ Ž»ö âÀ¸·Î ¿­¸³´Ï´Ù. +

+

IntelliSense -- by Rajat (requires XP/2k/NT): +ÀÌ ½ºÅ©¸³Æ®´Â AutoHotkey ½ºÅ©¸³Æ®¸¦ ÆíÁýÇÏ´Â µ¿¾È °¨½ÃÇÏ´Ù°¡ ¸í·É¾î ´ÙÀ½¿¡ ½°Ç¥³ª ½ºÆäÀ̽º¸¦ ŸÀÚÇÏ´Â °ÍÀ» º¸¸é, ±× ¸í·É¾îÀÇ ¸Å°³º¯¼ö ¸®½ºÆ®¸¦ º¸¿©ÁÖ¾î ¿©·¯ºÐÀ» ¾È³»ÇÕ´Ï´Ù. °Ô´Ù°¡, Ctrl+F1 (¶Ç´Â ¼±Åÿ¡ µû¶ó ´Ù¸¥ ÇÖÅ°)¸¦ ¼±ÅÃÇÏ¸é ±× ¸í·É¾îÀÇ µµ¿ò¸»À» º¸¿©ÁÝ´Ï´Ù. ¸Å°³º¯¼ö ¸®½ºÆ®¸¦ Ãë¼ÒÇÏ·Á¸é, Escape ¶Ç´Â Enter¸¦ Ä¡¸é µË´Ï´Ù. +

+

Á¶À̽ºÆ½À» ¸¶¿ìó·³ »ç¿ëÇϱâ: ÀÌ ½ºÅ©¸³Æ®´Â Á¶À̽ºÆ½À» ¹öÆ° ¼¼ °³Â¥¸® ¸¶¿ì½º·Î º¯½Å½Ãŵ´Ï´Ù. °¢ ¹öÆ°Àº ¸¶Ä¡ ¸¶¿ì½º ¹öưó·³ ²ø ¼ö ÀÖ½À´Ï´Ù. »ç½Ç»ó °ÅÀÇ CPU ½Ã°£À» »ç¿ëÇÏÁö ¾Ê½À´Ï´Ù. ¶ÇÇÑ, Á¶À̽ºÆ½À» °¡¿îµ¥·ÎºÎÅÍ ¾ó¸¶³ª ¸Ö¸® ¹Ì´Â°¡¿¡ µû¶ó Ä¿¼­¸¦ ´õ ºü¸£°Ô À̵¿½Ãŵ´Ï´Ù. ½ºÅ©¸³Æ®ÀÇ »ó´Ü¿¡¼­ ±âÈ£¿¡ ¸Â°Ô ´Ù¾çÇÏ°Ô ¼³Á¤ÇÒ ¼ö ÀÖ½À´Ï´Ù. +

+

Á¶À̽ºÆ½ Å×½ºÆ® ½ºÅ©¸³Æ®: +ÀÌ ½ºÅ©¸³Æ®´Â Á¶À̽ºÆ½ ¹öÆ°ÀÇ °³¼ö¿Í ±âŸ ¼Ó¼ºÀ» ¾Ë¾Æ³»´Â µ¥ µµ¿òÀ» ÁÝ´Ï´Ù. + +Á¶À̽ºÆ½ÀÌ ´«±Ý Á¶Á¤ÀÌ ÇÊ¿äÇÑÁö ³ëÃâ½ÃÄÑ Áֱ⵵ ÇÕ´Ï´Ù; Áï, °¢ ÃàÀÇ À̵¿ ¹üÀ§´Â 0 ºÎÅÍ 100 ÆÛ¼¾Æ® »çÀÌÀÔ´Ï´Ù. ´«±Ý Á¶Á¤ÀÌ ÇÊ¿äÇϸé, ¿î¿µ üÁ¦ÀÇ Á¦¾îÆÇ ¶Ç´Â Á¶À̽ºÆ½¿¡ µû¶ó¿À´Â ¼ÒÇÁÆ®¿þ¾î¸¦ ÀÌ¿ëÇϽʽÿÀ. +

+

È­¸é-À§ Å°º¸µå (XP/2k/NT ¿ä±¸) -- by Jon: +ÀÌ ½ºÅ©¸³Æ®´Â È­¸é ¾Æ·¡¿¡ °¡»ó Å°º¸µå¸¦ ¸¸µì´Ï´Ù. ´©¸£´Â Å°¸¦ ½Ç½Ã°£À¸·Î È­¸é¿¡ º¸¿©ÁÝ´Ï´Ù. ÇÊÀÚ°¡ ¼Õ °¨°¢À¸·Î ŸÀÚÇÏ´Â ¹ýÀ» ÀÍÈ÷±â À§ÇØ (Å°º¸µå¸¦ º¸Áö ¾Ê´Â ½À°üÀ» µéÀ̱â À§ÇØ) ¸¸µé¾ú½À´Ï´Ù. È­¸é À§ Å°º¸µåÀÇ Å©±â´Â ½ºÅ©¸³Æ® »ó´Ü¿¡¼­ Àç´ÜÇÒ ¼ö ÀÖ½À´Ï´Ù. ¶ÇÇÑ, Æ®·¹ÀÌ ¾ÆÀÌÄÜÀ» ´õºíŬ¸¯ Çϸé Å°º¸µå¸¦ ¼û±â°Å³ª º¸¿©ÁÙ ¼ö ÀÖ½À´Ï´Ù. +

+

âÀ» Æ®·¹ÀÌ ¸Þ´º·Î ÃÖ¼Ò È­Çϱâ: +ÀÌ ½ºÅ©¸³Æ®´Â ¿©·¯ºÐ ¼±ÅÃÇÑ ÇÖÅ°¸¦ âÀ» °¨Ãß´Â µ¥ ÇÒ´çÇÕ´Ï´Ù. +âÀº ½ºÅ©¸³Æ®ÀÇ Æ®·¹ÀÌ ¸Þ´º ¾Æ·¡¿¡ ¿£Æ®¸®°¡ µË´Ï´Ù. ¼ûÀº âÀº ±×·¯¸é °³º°ÀûÀ¸·Î ¶Ç´Â ¸ðµÎ ÇѲ¨¹ø¿¡ ´Ù½Ã º¸¿©ÁÙ ¼ö ÀÖ½À´Ï´Ù. ¸Þ´º¿¡¼­ »óÀÀÇÏ´Â ¸Þ´º¸¦ ¼±ÅÃÇÏ¸é µË´Ï´Ù. ½ºÅ©¸³Æ®°¡ ¾î¶² ÀÌÀ¯·Î Á¾·áÇϸé, ¼û°ÜÁö ¸ðµç âµéÀÌ ÀÚµ¿À¸·Î º¸¿©Áý´Ï´Ù. +

+

MsgBoxÀÇ ¹öÆ° À̸§ ¹Ù²Ù±â: +ÀÌ ¿¹Á¦ ½ºÅ©¸³Æ®´Â ŸÀ̸Ӹ¦ »ç¿ëÇÏ¿© MsgBox ´ëÈ­»óÀÚ¿¡ ÀÖ´Â ¹öÆ°ÀÇ À̸§À» ¹Ù²ß´Ï´Ù. ¹öÆ° À̸§Àº ¹Ù²îÁö¸¸, IfMsgBox ¸í·É¾îÀº ¿©ÀüÈ÷ ±× ¹öÆ°ÀÌ ¿ø·¡ À̸§À¸·Î ÂüÁ¶µÇ±â¸¦ ¿ä±¸ÇÕ´Ï´Ù. +

+

Numpad 000 Key: +ÀÌ ¿¹Á¦ ½ºÅ©¸³Æ®´Â ¾î¶² Å°Æе忡 ³ªÅ¸³ª´Â Ư¼ö 000 Å°¸¦ µîÈ£ Å°·Î ¸¸µì´Ï´Ù. Send, = ÁÙÀ» ¿©·¯ºÐÀÇ ¼±Åÿ¡ µû¶ó ¹Ù²Ù¸é ÇàÀ§¸¦ ¹Ù²Ü ¼ö ÀÖ½À´Ï´Ù. +

+

Å°º¸µåÀÇ ³ÑÆе带 ¸¶¿ì½ºÃ³·³ »ç¿ëÇϱâ -- by deguix: +ÀÌ ½ºÅ©¸³Æ®´Â ÁøÂ¥ ¸¶¿ì½º¸¦ »ç¿ëÇÏ´Â °Í °°ÀÌ Å°º¸µå¸¦ ½±°Ô »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù (¾î¶² ÀÛ¾÷¿¡´Â ÈξÀ ´õ ½±½À´Ï´Ù). ¸¶¿ì½º ¹öÆ°À» ´Ù¼¸ °³±îÁö Áö¿øÇÏ°í ¸¶¿ì½º È٠ȸÀüÀ» Áö¿øÇÕ´Ï´Ù. ¶ÇÇÑ À̵¿ ¼Óµµ¸¦ Á¶ÀýÇÒ ¼ö ÀÖ°í °¡¼Ó ±â´É°ú "Ãà Àüµµ"µµ Áö¿øÇÕ´Ï´Ù. +

+

Seek -- by Phi: +½ÃÀÛ ¸Þ´º¸¦ Ç×ÇØÇÏ´Â °ÍÀº ¾à°£ ³­»ðÇÒ ¼ö ÀÖ½À´Ï´Ù. ƯÈ÷ ½Ã°£ÀÌ Áö³ª¸é¼­ ¸¹Àº ÇÁ·Î±×·¥À» ¼³Ä¡Çß´Ù¸é Á¤¸» ³­»ðÇÕ´Ï´Ù.. 'Seek'À¸·Î ´ë¼Ò¹®ÀÚ¸¦ ±¸ºÐÇÏÁö ¾Ê´Â Å° ´Ü¾î/¹®±¸¸¦ ÁöÁ¤ÇÏ¸é ½ÃÀÛ ¸Þ´º¿¡¼­ ±×¿¡ ºÎÇÕÇÏ´Â ÇÁ·Î±×·¥°ú µð·ºÅ丮¸¸ ¿©°úÇÒ ¼ö ÀÖ½À´Ï´Ù. ±×·¯¸é ºÎÇÕÇÏ´Â ¸î ¾ÈµÇ´Â ¿£Æ®¸® Áß¿¡¼­ ½±°Ô ¸ñÇ¥ ÇÁ·Î±×·¥À» ¿­ ¼ö ÀÖ½À´Ï´Ù. ÀÌ·¸°Ô ÇÏ¸é ½ÃÀÛ ¸Þ´º¸¦ °Ë»öÇÏ°í ¼øȸÇÏ´Â Áö°Ü¿î ÀÏÀ» ÇÏÁö ¾Ê¾Æµµ µË´Ï´Ù. +

+

ÅøÆÁ ¸¶¿ì½º ¸Þ´º (XP/2k/NT ¿ä±¸) -- by Rajat: +ÀÌ ½ºÅ©¸³Æ®´Â °¡¿îµ¥ ¹öÆ°À» Àá±ñ ´©¸£´Âµ¥ ¹ÝÀÀÇÏ¿© Æ˾÷ ¸Þ´º¸¦ º¸¿©ÁÝ´Ï´Ù. ¸Þ´º Ç׸ñÀº ¿Þ-Ŭ¸¯ÇØ ¼±ÅÃÇÕ´Ï´Ù. ¹Ù±ùÀ» ¿ÞŬ¸¯ÇÏ¸é ¸Þ´º°¡ Ãë¼ÒµË´Ï´Ù. ÃÖ±Ù¿¡ ¾î´À À¯ÇüÀÇ Ã¢ÀÌ È°¼ºÈ­ µÇ¾î Àִ°¡¿¡ µû¶ó ¸Þ´ºÀÇ ³»¿ëÀÌ ¹Ù²îµµ·Ï °³¼±µÇ¾ú½À´Ï´Ù (Notepad ±×¸®°í Word°¡ ¿¹Á¦¿¡¼­ »ç¿ëµË´Ï´Ù). +

+

Volume On-Screen-Display (OSD) -- by Rajat: +ÀÌ ½ºÅ©¸³Æ®´Â ¿©·¯ºÐÀÇ ÇÖÅ°¸¦ ¸¶½ºÅÍ ºÒ·ý°ú ¿þÀÌºê º¼·ýÀ» ¿Ã¸®°Å³ª ³»¸®´Â µ¥ ÇÒ´çÇÕ´Ï´Ù. µÎ º¼·ý ¸ðµÎ °¢°¢ ´Ù¸¥ ¹Ù ±×·¡ÇÁ·Î º¸¿©ÁÝ´Ï´Ù. +

+

Window Shading (âÀ» Á¦¸ñ ¹Ù±îÁö ¸»¾Æ ¿Ã¸®±â) -- by Rajat: ÀÌ ½ºÅ©¸³Æ®´Â ÇÖÅ°¸¦ ´©·Á¸é âÀ» ±×ÀÇ Á¦¸ñ ¹Ù±îÁö ÁÙÀÌ°í ´Ù½Ã ±×ÀÇ ¿ø·¡ Å©±â·Î µ¹¾Æ¿É´Ï´Ù. âÀÇ °³¼ö¿¡ »ó°ü¾øÀÌ ÀÌ·± ½ÄÀ¸·Î ÁÙÀÏ ¼ö ÀÖ½À´Ï´Ù (½ºÅ©¸³Æ®°¡ °¢°¢À» µû·Îµû·Î ±â¾ïÇÕ´Ï´Ù). ½ºÅ©¸³Æ®°¡ ¾î¶² ÀÌÀ¯·Î Á¾·áÇϸé, "¸»·Á ¿Ã¶ó°£" ¸ðµç âÀÌ ¿ø·¡ÀÇ ³ôÀÌ·Î º¹±¸µË´Ï´Ù. +

+

+WinLIRC Ŭ¶óÀ̾ðÆ®: +ÀÌ ½ºÅ©¸³Æ®´Â ¸®¸ðÆ® ÄÜÆ®·Ñ¿¡ ¹öÆ°À» ´©¸¦ ¶§¸¶´Ù WinLIRCÀ¸·ÎºÎÅÍ °íÁö¸¦ ¹Þ½À´Ï´Ù. ÀÌ°ÍÀ» ÀÌ¿ëÇØ Winamp, Windows Media Player, µîµîÀ» ÀÚµ¿È­ ÇÒ ¼ö ÀÖ½À´Ï´Ù. ½±°Ô ȯ°æÀ» ±¸¼ºÇÒ ¼ö ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î, WinLIRC°¡ ¸®¸ðÆ® ÄÜÆ®·Ñ¿¡¼­ À̸§ÀÌ "VolUp"ÀÎ ¹öÆ°À» ÀÎÁöÇϸé, À̸§ÀÌ VolUpÀÎ ¶óº§À» »ý¼ºÇÏ°í ±× ¾Æ·¡¿¡ ¸í·É¾î SoundSet +5¸¦ »ç¿ëÇØ »ç¿îµåÄ«µåÀÇ º¼·ýÀ» 5%¸¸Å­ Å°¿ó´Ï´Ù. +

+

1 Hour Software -- by skrommel: ÀÌ°ÍÀº À¯¿ëÇÑ ½ºÅ©¸³Æ® ¸ðÀ½ÀÔ´Ï´Ù. ªÀº ¼³¸í°ú ÂûĬ ±×¸²°ú ÇÔ²² ¼Ò°³ÇÕ´Ï´Ù. +

+

Åä¶öÇÁ(Toralf)ÀÇ ½ºÅ©¸³Æ® ¸ðÀ½: +ÀÌ ¸ðÀ½ÁýÀº ´ÙÀ½°ú °°Àº À¯¿ëÇÑ ½ºÅ©¸³Æ®°¡ µé¾î ÀÖ½À´Ï´Ù:
+1) AHK Window Info: â, ÄÜÆ®·Ñ, µîµî¿¡ °üÇÑ Á¤º¸¸¦ ³ëÃâ½Ãŵ´Ï´Ù.
+2) Electronic Program Guide: ¿©·¯ºÐÀÌ »ç´Â Áö¿ªÀÇ TV ÇÁ·Î±×·¥/Æí¼ºÇ¥¸¦ ¿­¶÷ÇÕ´Ï´Ù. (¿©·¯ ±¹°¡ Áö¿ø).
+3) Auto-Syntax-Tidy: ½ºÅ©¸³Æ®¿¡¼­ ¸í·É¾îÀÇ ´ë¼Ò¹®ÀÚ¿Í µé¿©¾²±â¸¦ º¯°æÇØ ÀÏ°ü¼º ÀÖ´Â ½ºÅ¸ÀÏ·Î Æ÷¸ËÇÕ´Ï´Ù. +

+

¼¼¾ð(Sean)ÀÇ ½ºÅ©¸³Æ® ¸ðÀ½: ´ÙÀ½°ú °°Àº À¯¿ëÇÑ ½ºÅ©¸³Æ®°¡ Æ÷ÇԵǾî ÀÖ½À´Ï´Ù:
+1) Network Download/Upload Meter: ³×Æ®¿öÅ© ³»·Á¹Þ±â/¿Ã¸®±â¸¦ ¾ðÁ¦³ª À§ ÇÁ·Î±×·¹½º ¹Ù¿¡ º¸¿©ÁÝ´Ï´Ù.
+2) StdoutToVar: +¸í·É¾î³ª ¾îÇø®ÄÉÀ̼ÇÀÇ Ãâ·ÂÀ» ½ºÅ©¸³Æ®ÀÇ º¯¼ö·Î ¹æÇâÀüȯÇÕ´Ï´Ù.
+3) Capture a Screen Rectangle: +È­¸é ÀϺθ¦ Àâ¾Æ ±×°ÍÀ» ÆÄÀÏ·Î ÀúÀåÇÏ´Â ÇÔ¼ö (BMP/JPG/PNG/GIF/TIF). ¶ÇÇÑ Åõ¸í â°ú ¸¶¿ì½º Ä¿¼­µµ ÀâÀ» ¼ö ÀÖ½À´Ï´Ù.
+4) Color Zoomer/Picker: +Ä¿¼­ ÁÖÀ§ÀÇ ±¸¿ªÀ» È®´ëÇÕ´Ï´Ù. Çȼ¿ Çϳª¸¦ ¼±ÅÃÇØ ±×ÀÇ »öÀ» ½Äº°ÇÒ ¼ö ÀÖ½À´Ï´Ù.

+ +

SKAN's Tips N Tricks: Á¾Á¾ ÀÚÁÖ ¿ä±¸µÇ´Â Ư¡°ú À¯¿ëÇÑ È¿°ú¸¦ ´Þ¼ºÇϱâ À§ÇÑ »ùÇà ÄÚµå¿Í Å×Å©´ÐÀÌ µé¾î ÀÖ½À´Ï´Ù. +

+

½ºÅ©¸³Æ® & ÇÔ¼ö Æ÷·³ (autohotkey.com): ÀÌ°÷Àº °ÅÀÇ 1000°³³ª µÇ´Â, Áï½Ã ½ÇÇà °¡´ÉÇÑ ½ºÅ©¸³Æ®¿Í ÇÔ¼ö ¸ðÀ½ÁýÀÔ´Ï´Ù. ¿ÀÅäÇÖÅ° »ç¿ëÀÚµéÀÌ ¸¸µé°í °ü¸®ÇÏ´Â ÀÌ º¸°ü¼Ò´Â ³ª³¯ÀÌ Ä¿Áö°í °³¼±µÇ°í ÀÖ½À´Ï´Ù. ¶ÇÇÑ ¿¹ÀüÀÇ Æó±âµÈ ½ºÅ©¸³Æ®µµ ¸¹ÀÌ ÀÖ½À´Ï´Ù (AutoHotkey v1.0). +

+

½ºÅ©¸³Æ® & ÇÔ¼ö Æ÷·³ (ahkscript.org): ½ºÅ©¸³Æ®·Î °¡µæÇÑ ¶Ç´Ù¸¥ Æ÷·³, ´ëºÎºÐ AutoHotkey v1.1 ±×¸®°í v2 ¿ëÀÔ´Ï´Ù.

+

-- ȨÀ¸·Î À̵¿ --

+ + diff --git a/src/docs/static/ahk_logo.png b/src/docs/static/ahk_logo.png new file mode 100644 index 0000000..841c614 Binary files /dev/null and b/src/docs/static/ahk_logo.png differ diff --git a/src/docs/static/ahk_logo_no_text.png b/src/docs/static/ahk_logo_no_text.png new file mode 100644 index 0000000..9f46a07 Binary files /dev/null and b/src/docs/static/ahk_logo_no_text.png differ diff --git a/src/docs/static/ahkfile16.png b/src/docs/static/ahkfile16.png new file mode 100644 index 0000000..c59450c Binary files /dev/null and b/src/docs/static/ahkfile16.png differ diff --git a/src/docs/static/content.js b/src/docs/static/content.js new file mode 100644 index 0000000..d183a16 --- /dev/null +++ b/src/docs/static/content.js @@ -0,0 +1,443 @@ +/*! jQuery v1.11.0 | (c) 2005, 2014 jQuery Foundation, Inc. | jquery.org/license */ +!function(a,b){"object"==typeof module&&"object"==typeof module.exports?module.exports=a.document?b(a,!0):function(a){if(!a.document)throw new Error("jQuery requires a window with a document");return b(a)}:b(a)}("undefined"!=typeof window?window:this,function(a,b){var c=[],d=c.slice,e=c.concat,f=c.push,g=c.indexOf,h={},i=h.toString,j=h.hasOwnProperty,k="".trim,l={},m="1.11.0",n=function(a,b){return new n.fn.init(a,b)},o=/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,p=/^-ms-/,q=/-([\da-z])/gi,r=function(a,b){return b.toUpperCase()};n.fn=n.prototype={jquery:m,constructor:n,selector:"",length:0,toArray:function(){return d.call(this)},get:function(a){return null!=a?0>a?this[a+this.length]:this[a]:d.call(this)},pushStack:function(a){var b=n.merge(this.constructor(),a);return b.prevObject=this,b.context=this.context,b},each:function(a,b){return n.each(this,a,b)},map:function(a){return this.pushStack(n.map(this,function(b,c){return a.call(b,c,b)}))},slice:function(){return this.pushStack(d.apply(this,arguments))},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},eq:function(a){var b=this.length,c=+a+(0>a?b:0);return this.pushStack(c>=0&&b>c?[this[c]]:[])},end:function(){return this.prevObject||this.constructor(null)},push:f,sort:c.sort,splice:c.splice},n.extend=n.fn.extend=function(){var a,b,c,d,e,f,g=arguments[0]||{},h=1,i=arguments.length,j=!1;for("boolean"==typeof g&&(j=g,g=arguments[h]||{},h++),"object"==typeof g||n.isFunction(g)||(g={}),h===i&&(g=this,h--);i>h;h++)if(null!=(e=arguments[h]))for(d in e)a=g[d],c=e[d],g!==c&&(j&&c&&(n.isPlainObject(c)||(b=n.isArray(c)))?(b?(b=!1,f=a&&n.isArray(a)?a:[]):f=a&&n.isPlainObject(a)?a:{},g[d]=n.extend(j,f,c)):void 0!==c&&(g[d]=c));return g},n.extend({expando:"jQuery"+(m+Math.random()).replace(/\D/g,""),isReady:!0,error:function(a){throw new Error(a)},noop:function(){},isFunction:function(a){return"function"===n.type(a)},isArray:Array.isArray||function(a){return"array"===n.type(a)},isWindow:function(a){return null!=a&&a==a.window},isNumeric:function(a){return a-parseFloat(a)>=0},isEmptyObject:function(a){var b;for(b in a)return!1;return!0},isPlainObject:function(a){var b;if(!a||"object"!==n.type(a)||a.nodeType||n.isWindow(a))return!1;try{if(a.constructor&&!j.call(a,"constructor")&&!j.call(a.constructor.prototype,"isPrototypeOf"))return!1}catch(c){return!1}if(l.ownLast)for(b in a)return j.call(a,b);for(b in a);return void 0===b||j.call(a,b)},type:function(a){return null==a?a+"":"object"==typeof a||"function"==typeof a?h[i.call(a)]||"object":typeof a},globalEval:function(b){b&&n.trim(b)&&(a.execScript||function(b){a.eval.call(a,b)})(b)},camelCase:function(a){return a.replace(p,"ms-").replace(q,r)},nodeName:function(a,b){return a.nodeName&&a.nodeName.toLowerCase()===b.toLowerCase()},each:function(a,b,c){var d,e=0,f=a.length,g=s(a);if(c){if(g){for(;f>e;e++)if(d=b.apply(a[e],c),d===!1)break}else for(e in a)if(d=b.apply(a[e],c),d===!1)break}else if(g){for(;f>e;e++)if(d=b.call(a[e],e,a[e]),d===!1)break}else for(e in a)if(d=b.call(a[e],e,a[e]),d===!1)break;return a},trim:k&&!k.call("\ufeff\xa0")?function(a){return null==a?"":k.call(a)}:function(a){return null==a?"":(a+"").replace(o,"")},makeArray:function(a,b){var c=b||[];return null!=a&&(s(Object(a))?n.merge(c,"string"==typeof a?[a]:a):f.call(c,a)),c},inArray:function(a,b,c){var d;if(b){if(g)return g.call(b,a,c);for(d=b.length,c=c?0>c?Math.max(0,d+c):c:0;d>c;c++)if(c in b&&b[c]===a)return c}return-1},merge:function(a,b){var c=+b.length,d=0,e=a.length;while(c>d)a[e++]=b[d++];if(c!==c)while(void 0!==b[d])a[e++]=b[d++];return a.length=e,a},grep:function(a,b,c){for(var d,e=[],f=0,g=a.length,h=!c;g>f;f++)d=!b(a[f],f),d!==h&&e.push(a[f]);return e},map:function(a,b,c){var d,f=0,g=a.length,h=s(a),i=[];if(h)for(;g>f;f++)d=b(a[f],f,c),null!=d&&i.push(d);else for(f in a)d=b(a[f],f,c),null!=d&&i.push(d);return e.apply([],i)},guid:1,proxy:function(a,b){var c,e,f;return"string"==typeof b&&(f=a[b],b=a,a=f),n.isFunction(a)?(c=d.call(arguments,2),e=function(){return a.apply(b||this,c.concat(d.call(arguments)))},e.guid=a.guid=a.guid||n.guid++,e):void 0},now:function(){return+new Date},support:l}),n.each("Boolean Number String Function Array Date RegExp Object Error".split(" "),function(a,b){h["[object "+b+"]"]=b.toLowerCase()});function s(a){var b=a.length,c=n.type(a);return"function"===c||n.isWindow(a)?!1:1===a.nodeType&&b?!0:"array"===c||0===b||"number"==typeof b&&b>0&&b-1 in a}var t=function(a){var b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s="sizzle"+-new Date,t=a.document,u=0,v=0,w=eb(),x=eb(),y=eb(),z=function(a,b){return a===b&&(j=!0),0},A="undefined",B=1<<31,C={}.hasOwnProperty,D=[],E=D.pop,F=D.push,G=D.push,H=D.slice,I=D.indexOf||function(a){for(var b=0,c=this.length;c>b;b++)if(this[b]===a)return b;return-1},J="checked|selected|async|autofocus|autoplay|controls|defer|disabled|hidden|ismap|loop|multiple|open|readonly|required|scoped",K="[\\x20\\t\\r\\n\\f]",L="(?:\\\\.|[\\w-]|[^\\x00-\\xa0])+",M=L.replace("w","w#"),N="\\["+K+"*("+L+")"+K+"*(?:([*^$|!~]?=)"+K+"*(?:(['\"])((?:\\\\.|[^\\\\])*?)\\3|("+M+")|)|)"+K+"*\\]",O=":("+L+")(?:\\(((['\"])((?:\\\\.|[^\\\\])*?)\\3|((?:\\\\.|[^\\\\()[\\]]|"+N.replace(3,8)+")*)|.*)\\)|)",P=new RegExp("^"+K+"+|((?:^|[^\\\\])(?:\\\\.)*)"+K+"+$","g"),Q=new RegExp("^"+K+"*,"+K+"*"),R=new RegExp("^"+K+"*([>+~]|"+K+")"+K+"*"),S=new RegExp("="+K+"*([^\\]'\"]*?)"+K+"*\\]","g"),T=new RegExp(O),U=new RegExp("^"+M+"$"),V={ID:new RegExp("^#("+L+")"),CLASS:new RegExp("^\\.("+L+")"),TAG:new RegExp("^("+L.replace("w","w*")+")"),ATTR:new RegExp("^"+N),PSEUDO:new RegExp("^"+O),CHILD:new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+K+"*(even|odd|(([+-]|)(\\d*)n|)"+K+"*(?:([+-]|)"+K+"*(\\d+)|))"+K+"*\\)|)","i"),bool:new RegExp("^(?:"+J+")$","i"),needsContext:new RegExp("^"+K+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+K+"*((?:-\\d)?\\d*)"+K+"*\\)|)(?=[^-]|$)","i")},W=/^(?:input|select|textarea|button)$/i,X=/^h\d$/i,Y=/^[^{]+\{\s*\[native \w/,Z=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,$=/[+~]/,_=/'|\\/g,ab=new RegExp("\\\\([\\da-f]{1,6}"+K+"?|("+K+")|.)","ig"),bb=function(a,b,c){var d="0x"+b-65536;return d!==d||c?b:0>d?String.fromCharCode(d+65536):String.fromCharCode(d>>10|55296,1023&d|56320)};try{G.apply(D=H.call(t.childNodes),t.childNodes),D[t.childNodes.length].nodeType}catch(cb){G={apply:D.length?function(a,b){F.apply(a,H.call(b))}:function(a,b){var c=a.length,d=0;while(a[c++]=b[d++]);a.length=c-1}}}function db(a,b,d,e){var f,g,h,i,j,m,p,q,u,v;if((b?b.ownerDocument||b:t)!==l&&k(b),b=b||l,d=d||[],!a||"string"!=typeof a)return d;if(1!==(i=b.nodeType)&&9!==i)return[];if(n&&!e){if(f=Z.exec(a))if(h=f[1]){if(9===i){if(g=b.getElementById(h),!g||!g.parentNode)return d;if(g.id===h)return d.push(g),d}else if(b.ownerDocument&&(g=b.ownerDocument.getElementById(h))&&r(b,g)&&g.id===h)return d.push(g),d}else{if(f[2])return G.apply(d,b.getElementsByTagName(a)),d;if((h=f[3])&&c.getElementsByClassName&&b.getElementsByClassName)return G.apply(d,b.getElementsByClassName(h)),d}if(c.qsa&&(!o||!o.test(a))){if(q=p=s,u=b,v=9===i&&a,1===i&&"object"!==b.nodeName.toLowerCase()){m=ob(a),(p=b.getAttribute("id"))?q=p.replace(_,"\\$&"):b.setAttribute("id",q),q="[id='"+q+"'] ",j=m.length;while(j--)m[j]=q+pb(m[j]);u=$.test(a)&&mb(b.parentNode)||b,v=m.join(",")}if(v)try{return G.apply(d,u.querySelectorAll(v)),d}catch(w){}finally{p||b.removeAttribute("id")}}}return xb(a.replace(P,"$1"),b,d,e)}function eb(){var a=[];function b(c,e){return a.push(c+" ")>d.cacheLength&&delete b[a.shift()],b[c+" "]=e}return b}function fb(a){return a[s]=!0,a}function gb(a){var b=l.createElement("div");try{return!!a(b)}catch(c){return!1}finally{b.parentNode&&b.parentNode.removeChild(b),b=null}}function hb(a,b){var c=a.split("|"),e=a.length;while(e--)d.attrHandle[c[e]]=b}function ib(a,b){var c=b&&a,d=c&&1===a.nodeType&&1===b.nodeType&&(~b.sourceIndex||B)-(~a.sourceIndex||B);if(d)return d;if(c)while(c=c.nextSibling)if(c===b)return-1;return a?1:-1}function jb(a){return function(b){var c=b.nodeName.toLowerCase();return"input"===c&&b.type===a}}function kb(a){return function(b){var c=b.nodeName.toLowerCase();return("input"===c||"button"===c)&&b.type===a}}function lb(a){return fb(function(b){return b=+b,fb(function(c,d){var e,f=a([],c.length,b),g=f.length;while(g--)c[e=f[g]]&&(c[e]=!(d[e]=c[e]))})})}function mb(a){return a&&typeof a.getElementsByTagName!==A&&a}c=db.support={},f=db.isXML=function(a){var b=a&&(a.ownerDocument||a).documentElement;return b?"HTML"!==b.nodeName:!1},k=db.setDocument=function(a){var b,e=a?a.ownerDocument||a:t,g=e.defaultView;return e!==l&&9===e.nodeType&&e.documentElement?(l=e,m=e.documentElement,n=!f(e),g&&g!==g.top&&(g.addEventListener?g.addEventListener("unload",function(){k()},!1):g.attachEvent&&g.attachEvent("onunload",function(){k()})),c.attributes=gb(function(a){return a.className="i",!a.getAttribute("className")}),c.getElementsByTagName=gb(function(a){return a.appendChild(e.createComment("")),!a.getElementsByTagName("*").length}),c.getElementsByClassName=Y.test(e.getElementsByClassName)&&gb(function(a){return a.innerHTML="
",a.firstChild.className="i",2===a.getElementsByClassName("i").length}),c.getById=gb(function(a){return m.appendChild(a).id=s,!e.getElementsByName||!e.getElementsByName(s).length}),c.getById?(d.find.ID=function(a,b){if(typeof b.getElementById!==A&&n){var c=b.getElementById(a);return c&&c.parentNode?[c]:[]}},d.filter.ID=function(a){var b=a.replace(ab,bb);return function(a){return a.getAttribute("id")===b}}):(delete d.find.ID,d.filter.ID=function(a){var b=a.replace(ab,bb);return function(a){var c=typeof a.getAttributeNode!==A&&a.getAttributeNode("id");return c&&c.value===b}}),d.find.TAG=c.getElementsByTagName?function(a,b){return typeof b.getElementsByTagName!==A?b.getElementsByTagName(a):void 0}:function(a,b){var c,d=[],e=0,f=b.getElementsByTagName(a);if("*"===a){while(c=f[e++])1===c.nodeType&&d.push(c);return d}return f},d.find.CLASS=c.getElementsByClassName&&function(a,b){return typeof b.getElementsByClassName!==A&&n?b.getElementsByClassName(a):void 0},p=[],o=[],(c.qsa=Y.test(e.querySelectorAll))&&(gb(function(a){a.innerHTML="",a.querySelectorAll("[t^='']").length&&o.push("[*^$]="+K+"*(?:''|\"\")"),a.querySelectorAll("[selected]").length||o.push("\\["+K+"*(?:value|"+J+")"),a.querySelectorAll(":checked").length||o.push(":checked")}),gb(function(a){var b=e.createElement("input");b.setAttribute("type","hidden"),a.appendChild(b).setAttribute("name","D"),a.querySelectorAll("[name=d]").length&&o.push("name"+K+"*[*^$|!~]?="),a.querySelectorAll(":enabled").length||o.push(":enabled",":disabled"),a.querySelectorAll("*,:x"),o.push(",.*:")})),(c.matchesSelector=Y.test(q=m.webkitMatchesSelector||m.mozMatchesSelector||m.oMatchesSelector||m.msMatchesSelector))&&gb(function(a){c.disconnectedMatch=q.call(a,"div"),q.call(a,"[s!='']:x"),p.push("!=",O)}),o=o.length&&new RegExp(o.join("|")),p=p.length&&new RegExp(p.join("|")),b=Y.test(m.compareDocumentPosition),r=b||Y.test(m.contains)?function(a,b){var c=9===a.nodeType?a.documentElement:a,d=b&&b.parentNode;return a===d||!(!d||1!==d.nodeType||!(c.contains?c.contains(d):a.compareDocumentPosition&&16&a.compareDocumentPosition(d)))}:function(a,b){if(b)while(b=b.parentNode)if(b===a)return!0;return!1},z=b?function(a,b){if(a===b)return j=!0,0;var d=!a.compareDocumentPosition-!b.compareDocumentPosition;return d?d:(d=(a.ownerDocument||a)===(b.ownerDocument||b)?a.compareDocumentPosition(b):1,1&d||!c.sortDetached&&b.compareDocumentPosition(a)===d?a===e||a.ownerDocument===t&&r(t,a)?-1:b===e||b.ownerDocument===t&&r(t,b)?1:i?I.call(i,a)-I.call(i,b):0:4&d?-1:1)}:function(a,b){if(a===b)return j=!0,0;var c,d=0,f=a.parentNode,g=b.parentNode,h=[a],k=[b];if(!f||!g)return a===e?-1:b===e?1:f?-1:g?1:i?I.call(i,a)-I.call(i,b):0;if(f===g)return ib(a,b);c=a;while(c=c.parentNode)h.unshift(c);c=b;while(c=c.parentNode)k.unshift(c);while(h[d]===k[d])d++;return d?ib(h[d],k[d]):h[d]===t?-1:k[d]===t?1:0},e):l},db.matches=function(a,b){return db(a,null,null,b)},db.matchesSelector=function(a,b){if((a.ownerDocument||a)!==l&&k(a),b=b.replace(S,"='$1']"),!(!c.matchesSelector||!n||p&&p.test(b)||o&&o.test(b)))try{var d=q.call(a,b);if(d||c.disconnectedMatch||a.document&&11!==a.document.nodeType)return d}catch(e){}return db(b,l,null,[a]).length>0},db.contains=function(a,b){return(a.ownerDocument||a)!==l&&k(a),r(a,b)},db.attr=function(a,b){(a.ownerDocument||a)!==l&&k(a);var e=d.attrHandle[b.toLowerCase()],f=e&&C.call(d.attrHandle,b.toLowerCase())?e(a,b,!n):void 0;return void 0!==f?f:c.attributes||!n?a.getAttribute(b):(f=a.getAttributeNode(b))&&f.specified?f.value:null},db.error=function(a){throw new Error("Syntax error, unrecognized expression: "+a)},db.uniqueSort=function(a){var b,d=[],e=0,f=0;if(j=!c.detectDuplicates,i=!c.sortStable&&a.slice(0),a.sort(z),j){while(b=a[f++])b===a[f]&&(e=d.push(f));while(e--)a.splice(d[e],1)}return i=null,a},e=db.getText=function(a){var b,c="",d=0,f=a.nodeType;if(f){if(1===f||9===f||11===f){if("string"==typeof a.textContent)return a.textContent;for(a=a.firstChild;a;a=a.nextSibling)c+=e(a)}else if(3===f||4===f)return a.nodeValue}else while(b=a[d++])c+=e(b);return c},d=db.selectors={cacheLength:50,createPseudo:fb,match:V,attrHandle:{},find:{},relative:{">":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(a){return a[1]=a[1].replace(ab,bb),a[3]=(a[4]||a[5]||"").replace(ab,bb),"~="===a[2]&&(a[3]=" "+a[3]+" "),a.slice(0,4)},CHILD:function(a){return a[1]=a[1].toLowerCase(),"nth"===a[1].slice(0,3)?(a[3]||db.error(a[0]),a[4]=+(a[4]?a[5]+(a[6]||1):2*("even"===a[3]||"odd"===a[3])),a[5]=+(a[7]+a[8]||"odd"===a[3])):a[3]&&db.error(a[0]),a},PSEUDO:function(a){var b,c=!a[5]&&a[2];return V.CHILD.test(a[0])?null:(a[3]&&void 0!==a[4]?a[2]=a[4]:c&&T.test(c)&&(b=ob(c,!0))&&(b=c.indexOf(")",c.length-b)-c.length)&&(a[0]=a[0].slice(0,b),a[2]=c.slice(0,b)),a.slice(0,3))}},filter:{TAG:function(a){var b=a.replace(ab,bb).toLowerCase();return"*"===a?function(){return!0}:function(a){return a.nodeName&&a.nodeName.toLowerCase()===b}},CLASS:function(a){var b=w[a+" "];return b||(b=new RegExp("(^|"+K+")"+a+"("+K+"|$)"))&&w(a,function(a){return b.test("string"==typeof a.className&&a.className||typeof a.getAttribute!==A&&a.getAttribute("class")||"")})},ATTR:function(a,b,c){return function(d){var e=db.attr(d,a);return null==e?"!="===b:b?(e+="","="===b?e===c:"!="===b?e!==c:"^="===b?c&&0===e.indexOf(c):"*="===b?c&&e.indexOf(c)>-1:"$="===b?c&&e.slice(-c.length)===c:"~="===b?(" "+e+" ").indexOf(c)>-1:"|="===b?e===c||e.slice(0,c.length+1)===c+"-":!1):!0}},CHILD:function(a,b,c,d,e){var f="nth"!==a.slice(0,3),g="last"!==a.slice(-4),h="of-type"===b;return 1===d&&0===e?function(a){return!!a.parentNode}:function(b,c,i){var j,k,l,m,n,o,p=f!==g?"nextSibling":"previousSibling",q=b.parentNode,r=h&&b.nodeName.toLowerCase(),t=!i&&!h;if(q){if(f){while(p){l=b;while(l=l[p])if(h?l.nodeName.toLowerCase()===r:1===l.nodeType)return!1;o=p="only"===a&&!o&&"nextSibling"}return!0}if(o=[g?q.firstChild:q.lastChild],g&&t){k=q[s]||(q[s]={}),j=k[a]||[],n=j[0]===u&&j[1],m=j[0]===u&&j[2],l=n&&q.childNodes[n];while(l=++n&&l&&l[p]||(m=n=0)||o.pop())if(1===l.nodeType&&++m&&l===b){k[a]=[u,n,m];break}}else if(t&&(j=(b[s]||(b[s]={}))[a])&&j[0]===u)m=j[1];else while(l=++n&&l&&l[p]||(m=n=0)||o.pop())if((h?l.nodeName.toLowerCase()===r:1===l.nodeType)&&++m&&(t&&((l[s]||(l[s]={}))[a]=[u,m]),l===b))break;return m-=e,m===d||m%d===0&&m/d>=0}}},PSEUDO:function(a,b){var c,e=d.pseudos[a]||d.setFilters[a.toLowerCase()]||db.error("unsupported pseudo: "+a);return e[s]?e(b):e.length>1?(c=[a,a,"",b],d.setFilters.hasOwnProperty(a.toLowerCase())?fb(function(a,c){var d,f=e(a,b),g=f.length;while(g--)d=I.call(a,f[g]),a[d]=!(c[d]=f[g])}):function(a){return e(a,0,c)}):e}},pseudos:{not:fb(function(a){var b=[],c=[],d=g(a.replace(P,"$1"));return d[s]?fb(function(a,b,c,e){var f,g=d(a,null,e,[]),h=a.length;while(h--)(f=g[h])&&(a[h]=!(b[h]=f))}):function(a,e,f){return b[0]=a,d(b,null,f,c),!c.pop()}}),has:fb(function(a){return function(b){return db(a,b).length>0}}),contains:fb(function(a){return function(b){return(b.textContent||b.innerText||e(b)).indexOf(a)>-1}}),lang:fb(function(a){return U.test(a||"")||db.error("unsupported lang: "+a),a=a.replace(ab,bb).toLowerCase(),function(b){var c;do if(c=n?b.lang:b.getAttribute("xml:lang")||b.getAttribute("lang"))return c=c.toLowerCase(),c===a||0===c.indexOf(a+"-");while((b=b.parentNode)&&1===b.nodeType);return!1}}),target:function(b){var c=a.location&&a.location.hash;return c&&c.slice(1)===b.id},root:function(a){return a===m},focus:function(a){return a===l.activeElement&&(!l.hasFocus||l.hasFocus())&&!!(a.type||a.href||~a.tabIndex)},enabled:function(a){return a.disabled===!1},disabled:function(a){return a.disabled===!0},checked:function(a){var b=a.nodeName.toLowerCase();return"input"===b&&!!a.checked||"option"===b&&!!a.selected},selected:function(a){return a.parentNode&&a.parentNode.selectedIndex,a.selected===!0},empty:function(a){for(a=a.firstChild;a;a=a.nextSibling)if(a.nodeType<6)return!1;return!0},parent:function(a){return!d.pseudos.empty(a)},header:function(a){return X.test(a.nodeName)},input:function(a){return W.test(a.nodeName)},button:function(a){var b=a.nodeName.toLowerCase();return"input"===b&&"button"===a.type||"button"===b},text:function(a){var b;return"input"===a.nodeName.toLowerCase()&&"text"===a.type&&(null==(b=a.getAttribute("type"))||"text"===b.toLowerCase())},first:lb(function(){return[0]}),last:lb(function(a,b){return[b-1]}),eq:lb(function(a,b,c){return[0>c?c+b:c]}),even:lb(function(a,b){for(var c=0;b>c;c+=2)a.push(c);return a}),odd:lb(function(a,b){for(var c=1;b>c;c+=2)a.push(c);return a}),lt:lb(function(a,b,c){for(var d=0>c?c+b:c;--d>=0;)a.push(d);return a}),gt:lb(function(a,b,c){for(var d=0>c?c+b:c;++db;b++)d+=a[b].value;return d}function qb(a,b,c){var d=b.dir,e=c&&"parentNode"===d,f=v++;return b.first?function(b,c,f){while(b=b[d])if(1===b.nodeType||e)return a(b,c,f)}:function(b,c,g){var h,i,j=[u,f];if(g){while(b=b[d])if((1===b.nodeType||e)&&a(b,c,g))return!0}else while(b=b[d])if(1===b.nodeType||e){if(i=b[s]||(b[s]={}),(h=i[d])&&h[0]===u&&h[1]===f)return j[2]=h[2];if(i[d]=j,j[2]=a(b,c,g))return!0}}}function rb(a){return a.length>1?function(b,c,d){var e=a.length;while(e--)if(!a[e](b,c,d))return!1;return!0}:a[0]}function sb(a,b,c,d,e){for(var f,g=[],h=0,i=a.length,j=null!=b;i>h;h++)(f=a[h])&&(!c||c(f,d,e))&&(g.push(f),j&&b.push(h));return g}function tb(a,b,c,d,e,f){return d&&!d[s]&&(d=tb(d)),e&&!e[s]&&(e=tb(e,f)),fb(function(f,g,h,i){var j,k,l,m=[],n=[],o=g.length,p=f||wb(b||"*",h.nodeType?[h]:h,[]),q=!a||!f&&b?p:sb(p,m,a,h,i),r=c?e||(f?a:o||d)?[]:g:q;if(c&&c(q,r,h,i),d){j=sb(r,n),d(j,[],h,i),k=j.length;while(k--)(l=j[k])&&(r[n[k]]=!(q[n[k]]=l))}if(f){if(e||a){if(e){j=[],k=r.length;while(k--)(l=r[k])&&j.push(q[k]=l);e(null,r=[],j,i)}k=r.length;while(k--)(l=r[k])&&(j=e?I.call(f,l):m[k])>-1&&(f[j]=!(g[j]=l))}}else r=sb(r===g?r.splice(o,r.length):r),e?e(null,g,r,i):G.apply(g,r)})}function ub(a){for(var b,c,e,f=a.length,g=d.relative[a[0].type],i=g||d.relative[" "],j=g?1:0,k=qb(function(a){return a===b},i,!0),l=qb(function(a){return I.call(b,a)>-1},i,!0),m=[function(a,c,d){return!g&&(d||c!==h)||((b=c).nodeType?k(a,c,d):l(a,c,d))}];f>j;j++)if(c=d.relative[a[j].type])m=[qb(rb(m),c)];else{if(c=d.filter[a[j].type].apply(null,a[j].matches),c[s]){for(e=++j;f>e;e++)if(d.relative[a[e].type])break;return tb(j>1&&rb(m),j>1&&pb(a.slice(0,j-1).concat({value:" "===a[j-2].type?"*":""})).replace(P,"$1"),c,e>j&&ub(a.slice(j,e)),f>e&&ub(a=a.slice(e)),f>e&&pb(a))}m.push(c)}return rb(m)}function vb(a,b){var c=b.length>0,e=a.length>0,f=function(f,g,i,j,k){var m,n,o,p=0,q="0",r=f&&[],s=[],t=h,v=f||e&&d.find.TAG("*",k),w=u+=null==t?1:Math.random()||.1,x=v.length;for(k&&(h=g!==l&&g);q!==x&&null!=(m=v[q]);q++){if(e&&m){n=0;while(o=a[n++])if(o(m,g,i)){j.push(m);break}k&&(u=w)}c&&((m=!o&&m)&&p--,f&&r.push(m))}if(p+=q,c&&q!==p){n=0;while(o=b[n++])o(r,s,g,i);if(f){if(p>0)while(q--)r[q]||s[q]||(s[q]=E.call(j));s=sb(s)}G.apply(j,s),k&&!f&&s.length>0&&p+b.length>1&&db.uniqueSort(j)}return k&&(u=w,h=t),r};return c?fb(f):f}g=db.compile=function(a,b){var c,d=[],e=[],f=y[a+" "];if(!f){b||(b=ob(a)),c=b.length;while(c--)f=ub(b[c]),f[s]?d.push(f):e.push(f);f=y(a,vb(e,d))}return f};function wb(a,b,c){for(var d=0,e=b.length;e>d;d++)db(a,b[d],c);return c}function xb(a,b,e,f){var h,i,j,k,l,m=ob(a);if(!f&&1===m.length){if(i=m[0]=m[0].slice(0),i.length>2&&"ID"===(j=i[0]).type&&c.getById&&9===b.nodeType&&n&&d.relative[i[1].type]){if(b=(d.find.ID(j.matches[0].replace(ab,bb),b)||[])[0],!b)return e;a=a.slice(i.shift().value.length)}h=V.needsContext.test(a)?0:i.length;while(h--){if(j=i[h],d.relative[k=j.type])break;if((l=d.find[k])&&(f=l(j.matches[0].replace(ab,bb),$.test(i[0].type)&&mb(b.parentNode)||b))){if(i.splice(h,1),a=f.length&&pb(i),!a)return G.apply(e,f),e;break}}}return g(a,m)(f,b,!n,e,$.test(a)&&mb(b.parentNode)||b),e}return c.sortStable=s.split("").sort(z).join("")===s,c.detectDuplicates=!!j,k(),c.sortDetached=gb(function(a){return 1&a.compareDocumentPosition(l.createElement("div"))}),gb(function(a){return a.innerHTML="","#"===a.firstChild.getAttribute("href")})||hb("type|href|height|width",function(a,b,c){return c?void 0:a.getAttribute(b,"type"===b.toLowerCase()?1:2)}),c.attributes&&gb(function(a){return a.innerHTML="",a.firstChild.setAttribute("value",""),""===a.firstChild.getAttribute("value")})||hb("value",function(a,b,c){return c||"input"!==a.nodeName.toLowerCase()?void 0:a.defaultValue}),gb(function(a){return null==a.getAttribute("disabled")})||hb(J,function(a,b,c){var d;return c?void 0:a[b]===!0?b.toLowerCase():(d=a.getAttributeNode(b))&&d.specified?d.value:null}),db}(a);n.find=t,n.expr=t.selectors,n.expr[":"]=n.expr.pseudos,n.unique=t.uniqueSort,n.text=t.getText,n.isXMLDoc=t.isXML,n.contains=t.contains;var u=n.expr.match.needsContext,v=/^<(\w+)\s*\/?>(?:<\/\1>|)$/,w=/^.[^:#\[\.,]*$/;function x(a,b,c){if(n.isFunction(b))return n.grep(a,function(a,d){return!!b.call(a,d,a)!==c});if(b.nodeType)return n.grep(a,function(a){return a===b!==c});if("string"==typeof b){if(w.test(b))return n.filter(b,a,c);b=n.filter(b,a)}return n.grep(a,function(a){return n.inArray(a,b)>=0!==c})}n.filter=function(a,b,c){var d=b[0];return c&&(a=":not("+a+")"),1===b.length&&1===d.nodeType?n.find.matchesSelector(d,a)?[d]:[]:n.find.matches(a,n.grep(b,function(a){return 1===a.nodeType}))},n.fn.extend({find:function(a){var b,c=[],d=this,e=d.length;if("string"!=typeof a)return this.pushStack(n(a).filter(function(){for(b=0;e>b;b++)if(n.contains(d[b],this))return!0}));for(b=0;e>b;b++)n.find(a,d[b],c);return c=this.pushStack(e>1?n.unique(c):c),c.selector=this.selector?this.selector+" "+a:a,c},filter:function(a){return this.pushStack(x(this,a||[],!1))},not:function(a){return this.pushStack(x(this,a||[],!0))},is:function(a){return!!x(this,"string"==typeof a&&u.test(a)?n(a):a||[],!1).length}});var y,z=a.document,A=/^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]*))$/,B=n.fn.init=function(a,b){var c,d;if(!a)return this;if("string"==typeof a){if(c="<"===a.charAt(0)&&">"===a.charAt(a.length-1)&&a.length>=3?[null,a,null]:A.exec(a),!c||!c[1]&&b)return!b||b.jquery?(b||y).find(a):this.constructor(b).find(a);if(c[1]){if(b=b instanceof n?b[0]:b,n.merge(this,n.parseHTML(c[1],b&&b.nodeType?b.ownerDocument||b:z,!0)),v.test(c[1])&&n.isPlainObject(b))for(c in b)n.isFunction(this[c])?this[c](b[c]):this.attr(c,b[c]);return this}if(d=z.getElementById(c[2]),d&&d.parentNode){if(d.id!==c[2])return y.find(a);this.length=1,this[0]=d}return this.context=z,this.selector=a,this}return a.nodeType?(this.context=this[0]=a,this.length=1,this):n.isFunction(a)?"undefined"!=typeof y.ready?y.ready(a):a(n):(void 0!==a.selector&&(this.selector=a.selector,this.context=a.context),n.makeArray(a,this))};B.prototype=n.fn,y=n(z);var C=/^(?:parents|prev(?:Until|All))/,D={children:!0,contents:!0,next:!0,prev:!0};n.extend({dir:function(a,b,c){var d=[],e=a[b];while(e&&9!==e.nodeType&&(void 0===c||1!==e.nodeType||!n(e).is(c)))1===e.nodeType&&d.push(e),e=e[b];return d},sibling:function(a,b){for(var c=[];a;a=a.nextSibling)1===a.nodeType&&a!==b&&c.push(a);return c}}),n.fn.extend({has:function(a){var b,c=n(a,this),d=c.length;return this.filter(function(){for(b=0;d>b;b++)if(n.contains(this,c[b]))return!0})},closest:function(a,b){for(var c,d=0,e=this.length,f=[],g=u.test(a)||"string"!=typeof a?n(a,b||this.context):0;e>d;d++)for(c=this[d];c&&c!==b;c=c.parentNode)if(c.nodeType<11&&(g?g.index(c)>-1:1===c.nodeType&&n.find.matchesSelector(c,a))){f.push(c);break}return this.pushStack(f.length>1?n.unique(f):f)},index:function(a){return a?"string"==typeof a?n.inArray(this[0],n(a)):n.inArray(a.jquery?a[0]:a,this):this[0]&&this[0].parentNode?this.first().prevAll().length:-1},add:function(a,b){return this.pushStack(n.unique(n.merge(this.get(),n(a,b))))},addBack:function(a){return this.add(null==a?this.prevObject:this.prevObject.filter(a))}});function E(a,b){do a=a[b];while(a&&1!==a.nodeType);return a}n.each({parent:function(a){var b=a.parentNode;return b&&11!==b.nodeType?b:null},parents:function(a){return n.dir(a,"parentNode")},parentsUntil:function(a,b,c){return n.dir(a,"parentNode",c)},next:function(a){return E(a,"nextSibling")},prev:function(a){return E(a,"previousSibling")},nextAll:function(a){return n.dir(a,"nextSibling")},prevAll:function(a){return n.dir(a,"previousSibling")},nextUntil:function(a,b,c){return n.dir(a,"nextSibling",c)},prevUntil:function(a,b,c){return n.dir(a,"previousSibling",c)},siblings:function(a){return n.sibling((a.parentNode||{}).firstChild,a)},children:function(a){return n.sibling(a.firstChild)},contents:function(a){return n.nodeName(a,"iframe")?a.contentDocument||a.contentWindow.document:n.merge([],a.childNodes)}},function(a,b){n.fn[a]=function(c,d){var e=n.map(this,b,c);return"Until"!==a.slice(-5)&&(d=c),d&&"string"==typeof d&&(e=n.filter(d,e)),this.length>1&&(D[a]||(e=n.unique(e)),C.test(a)&&(e=e.reverse())),this.pushStack(e)}});var F=/\S+/g,G={};function H(a){var b=G[a]={};return n.each(a.match(F)||[],function(a,c){b[c]=!0}),b}n.Callbacks=function(a){a="string"==typeof a?G[a]||H(a):n.extend({},a);var b,c,d,e,f,g,h=[],i=!a.once&&[],j=function(l){for(c=a.memory&&l,d=!0,f=g||0,g=0,e=h.length,b=!0;h&&e>f;f++)if(h[f].apply(l[0],l[1])===!1&&a.stopOnFalse){c=!1;break}b=!1,h&&(i?i.length&&j(i.shift()):c?h=[]:k.disable())},k={add:function(){if(h){var d=h.length;!function f(b){n.each(b,function(b,c){var d=n.type(c);"function"===d?a.unique&&k.has(c)||h.push(c):c&&c.length&&"string"!==d&&f(c)})}(arguments),b?e=h.length:c&&(g=d,j(c))}return this},remove:function(){return h&&n.each(arguments,function(a,c){var d;while((d=n.inArray(c,h,d))>-1)h.splice(d,1),b&&(e>=d&&e--,f>=d&&f--)}),this},has:function(a){return a?n.inArray(a,h)>-1:!(!h||!h.length)},empty:function(){return h=[],e=0,this},disable:function(){return h=i=c=void 0,this},disabled:function(){return!h},lock:function(){return i=void 0,c||k.disable(),this},locked:function(){return!i},fireWith:function(a,c){return!h||d&&!i||(c=c||[],c=[a,c.slice?c.slice():c],b?i.push(c):j(c)),this},fire:function(){return k.fireWith(this,arguments),this},fired:function(){return!!d}};return k},n.extend({Deferred:function(a){var b=[["resolve","done",n.Callbacks("once memory"),"resolved"],["reject","fail",n.Callbacks("once memory"),"rejected"],["notify","progress",n.Callbacks("memory")]],c="pending",d={state:function(){return c},always:function(){return e.done(arguments).fail(arguments),this},then:function(){var a=arguments;return n.Deferred(function(c){n.each(b,function(b,f){var g=n.isFunction(a[b])&&a[b];e[f[1]](function(){var a=g&&g.apply(this,arguments);a&&n.isFunction(a.promise)?a.promise().done(c.resolve).fail(c.reject).progress(c.notify):c[f[0]+"With"](this===d?c.promise():this,g?[a]:arguments)})}),a=null}).promise()},promise:function(a){return null!=a?n.extend(a,d):d}},e={};return d.pipe=d.then,n.each(b,function(a,f){var g=f[2],h=f[3];d[f[1]]=g.add,h&&g.add(function(){c=h},b[1^a][2].disable,b[2][2].lock),e[f[0]]=function(){return e[f[0]+"With"](this===e?d:this,arguments),this},e[f[0]+"With"]=g.fireWith}),d.promise(e),a&&a.call(e,e),e},when:function(a){var b=0,c=d.call(arguments),e=c.length,f=1!==e||a&&n.isFunction(a.promise)?e:0,g=1===f?a:n.Deferred(),h=function(a,b,c){return function(e){b[a]=this,c[a]=arguments.length>1?d.call(arguments):e,c===i?g.notifyWith(b,c):--f||g.resolveWith(b,c)}},i,j,k;if(e>1)for(i=new Array(e),j=new Array(e),k=new Array(e);e>b;b++)c[b]&&n.isFunction(c[b].promise)?c[b].promise().done(h(b,k,c)).fail(g.reject).progress(h(b,j,i)):--f;return f||g.resolveWith(k,c),g.promise()}});var I;n.fn.ready=function(a){return n.ready.promise().done(a),this},n.extend({isReady:!1,readyWait:1,holdReady:function(a){a?n.readyWait++:n.ready(!0)},ready:function(a){if(a===!0?!--n.readyWait:!n.isReady){if(!z.body)return setTimeout(n.ready);n.isReady=!0,a!==!0&&--n.readyWait>0||(I.resolveWith(z,[n]),n.fn.trigger&&n(z).trigger("ready").off("ready"))}}});function J(){z.addEventListener?(z.removeEventListener("DOMContentLoaded",K,!1),a.removeEventListener("load",K,!1)):(z.detachEvent("onreadystatechange",K),a.detachEvent("onload",K))}function K(){(z.addEventListener||"load"===event.type||"complete"===z.readyState)&&(J(),n.ready())}n.ready.promise=function(b){if(!I)if(I=n.Deferred(),"complete"===z.readyState)setTimeout(n.ready);else if(z.addEventListener)z.addEventListener("DOMContentLoaded",K,!1),a.addEventListener("load",K,!1);else{z.attachEvent("onreadystatechange",K),a.attachEvent("onload",K);var c=!1;try{c=null==a.frameElement&&z.documentElement}catch(d){}c&&c.doScroll&&!function e(){if(!n.isReady){try{c.doScroll("left")}catch(a){return setTimeout(e,50)}J(),n.ready()}}()}return I.promise(b)};var L="undefined",M;for(M in n(l))break;l.ownLast="0"!==M,l.inlineBlockNeedsLayout=!1,n(function(){var a,b,c=z.getElementsByTagName("body")[0];c&&(a=z.createElement("div"),a.style.cssText="border:0;width:0;height:0;position:absolute;top:0;left:-9999px;margin-top:1px",b=z.createElement("div"),c.appendChild(a).appendChild(b),typeof b.style.zoom!==L&&(b.style.cssText="border:0;margin:0;width:1px;padding:1px;display:inline;zoom:1",(l.inlineBlockNeedsLayout=3===b.offsetWidth)&&(c.style.zoom=1)),c.removeChild(a),a=b=null)}),function(){var a=z.createElement("div");if(null==l.deleteExpando){l.deleteExpando=!0;try{delete a.test}catch(b){l.deleteExpando=!1}}a=null}(),n.acceptData=function(a){var b=n.noData[(a.nodeName+" ").toLowerCase()],c=+a.nodeType||1;return 1!==c&&9!==c?!1:!b||b!==!0&&a.getAttribute("classid")===b};var N=/^(?:\{[\w\W]*\}|\[[\w\W]*\])$/,O=/([A-Z])/g;function P(a,b,c){if(void 0===c&&1===a.nodeType){var d="data-"+b.replace(O,"-$1").toLowerCase();if(c=a.getAttribute(d),"string"==typeof c){try{c="true"===c?!0:"false"===c?!1:"null"===c?null:+c+""===c?+c:N.test(c)?n.parseJSON(c):c}catch(e){}n.data(a,b,c)}else c=void 0}return c}function Q(a){var b;for(b in a)if(("data"!==b||!n.isEmptyObject(a[b]))&&"toJSON"!==b)return!1;return!0}function R(a,b,d,e){if(n.acceptData(a)){var f,g,h=n.expando,i=a.nodeType,j=i?n.cache:a,k=i?a[h]:a[h]&&h;if(k&&j[k]&&(e||j[k].data)||void 0!==d||"string"!=typeof b)return k||(k=i?a[h]=c.pop()||n.guid++:h),j[k]||(j[k]=i?{}:{toJSON:n.noop}),("object"==typeof b||"function"==typeof b)&&(e?j[k]=n.extend(j[k],b):j[k].data=n.extend(j[k].data,b)),g=j[k],e||(g.data||(g.data={}),g=g.data),void 0!==d&&(g[n.camelCase(b)]=d),"string"==typeof b?(f=g[b],null==f&&(f=g[n.camelCase(b)])):f=g,f +}}function S(a,b,c){if(n.acceptData(a)){var d,e,f=a.nodeType,g=f?n.cache:a,h=f?a[n.expando]:n.expando;if(g[h]){if(b&&(d=c?g[h]:g[h].data)){n.isArray(b)?b=b.concat(n.map(b,n.camelCase)):b in d?b=[b]:(b=n.camelCase(b),b=b in d?[b]:b.split(" ")),e=b.length;while(e--)delete d[b[e]];if(c?!Q(d):!n.isEmptyObject(d))return}(c||(delete g[h].data,Q(g[h])))&&(f?n.cleanData([a],!0):l.deleteExpando||g!=g.window?delete g[h]:g[h]=null)}}}n.extend({cache:{},noData:{"applet ":!0,"embed ":!0,"object ":"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"},hasData:function(a){return a=a.nodeType?n.cache[a[n.expando]]:a[n.expando],!!a&&!Q(a)},data:function(a,b,c){return R(a,b,c)},removeData:function(a,b){return S(a,b)},_data:function(a,b,c){return R(a,b,c,!0)},_removeData:function(a,b){return S(a,b,!0)}}),n.fn.extend({data:function(a,b){var c,d,e,f=this[0],g=f&&f.attributes;if(void 0===a){if(this.length&&(e=n.data(f),1===f.nodeType&&!n._data(f,"parsedAttrs"))){c=g.length;while(c--)d=g[c].name,0===d.indexOf("data-")&&(d=n.camelCase(d.slice(5)),P(f,d,e[d]));n._data(f,"parsedAttrs",!0)}return e}return"object"==typeof a?this.each(function(){n.data(this,a)}):arguments.length>1?this.each(function(){n.data(this,a,b)}):f?P(f,a,n.data(f,a)):void 0},removeData:function(a){return this.each(function(){n.removeData(this,a)})}}),n.extend({queue:function(a,b,c){var d;return a?(b=(b||"fx")+"queue",d=n._data(a,b),c&&(!d||n.isArray(c)?d=n._data(a,b,n.makeArray(c)):d.push(c)),d||[]):void 0},dequeue:function(a,b){b=b||"fx";var c=n.queue(a,b),d=c.length,e=c.shift(),f=n._queueHooks(a,b),g=function(){n.dequeue(a,b)};"inprogress"===e&&(e=c.shift(),d--),e&&("fx"===b&&c.unshift("inprogress"),delete f.stop,e.call(a,g,f)),!d&&f&&f.empty.fire()},_queueHooks:function(a,b){var c=b+"queueHooks";return n._data(a,c)||n._data(a,c,{empty:n.Callbacks("once memory").add(function(){n._removeData(a,b+"queue"),n._removeData(a,c)})})}}),n.fn.extend({queue:function(a,b){var c=2;return"string"!=typeof a&&(b=a,a="fx",c--),arguments.lengthh;h++)b(a[h],c,g?d:d.call(a[h],h,b(a[h],c)));return e?a:j?b.call(a):i?b(a[0],c):f},X=/^(?:checkbox|radio)$/i;!function(){var a=z.createDocumentFragment(),b=z.createElement("div"),c=z.createElement("input");if(b.setAttribute("className","t"),b.innerHTML="
a",l.leadingWhitespace=3===b.firstChild.nodeType,l.tbody=!b.getElementsByTagName("tbody").length,l.htmlSerialize=!!b.getElementsByTagName("link").length,l.html5Clone="<:nav>"!==z.createElement("nav").cloneNode(!0).outerHTML,c.type="checkbox",c.checked=!0,a.appendChild(c),l.appendChecked=c.checked,b.innerHTML="",l.noCloneChecked=!!b.cloneNode(!0).lastChild.defaultValue,a.appendChild(b),b.innerHTML="",l.checkClone=b.cloneNode(!0).cloneNode(!0).lastChild.checked,l.noCloneEvent=!0,b.attachEvent&&(b.attachEvent("onclick",function(){l.noCloneEvent=!1}),b.cloneNode(!0).click()),null==l.deleteExpando){l.deleteExpando=!0;try{delete b.test}catch(d){l.deleteExpando=!1}}a=b=c=null}(),function(){var b,c,d=z.createElement("div");for(b in{submit:!0,change:!0,focusin:!0})c="on"+b,(l[b+"Bubbles"]=c in a)||(d.setAttribute(c,"t"),l[b+"Bubbles"]=d.attributes[c].expando===!1);d=null}();var Y=/^(?:input|select|textarea)$/i,Z=/^key/,$=/^(?:mouse|contextmenu)|click/,_=/^(?:focusinfocus|focusoutblur)$/,ab=/^([^.]*)(?:\.(.+)|)$/;function bb(){return!0}function cb(){return!1}function db(){try{return z.activeElement}catch(a){}}n.event={global:{},add:function(a,b,c,d,e){var f,g,h,i,j,k,l,m,o,p,q,r=n._data(a);if(r){c.handler&&(i=c,c=i.handler,e=i.selector),c.guid||(c.guid=n.guid++),(g=r.events)||(g=r.events={}),(k=r.handle)||(k=r.handle=function(a){return typeof n===L||a&&n.event.triggered===a.type?void 0:n.event.dispatch.apply(k.elem,arguments)},k.elem=a),b=(b||"").match(F)||[""],h=b.length;while(h--)f=ab.exec(b[h])||[],o=q=f[1],p=(f[2]||"").split(".").sort(),o&&(j=n.event.special[o]||{},o=(e?j.delegateType:j.bindType)||o,j=n.event.special[o]||{},l=n.extend({type:o,origType:q,data:d,handler:c,guid:c.guid,selector:e,needsContext:e&&n.expr.match.needsContext.test(e),namespace:p.join(".")},i),(m=g[o])||(m=g[o]=[],m.delegateCount=0,j.setup&&j.setup.call(a,d,p,k)!==!1||(a.addEventListener?a.addEventListener(o,k,!1):a.attachEvent&&a.attachEvent("on"+o,k))),j.add&&(j.add.call(a,l),l.handler.guid||(l.handler.guid=c.guid)),e?m.splice(m.delegateCount++,0,l):m.push(l),n.event.global[o]=!0);a=null}},remove:function(a,b,c,d,e){var f,g,h,i,j,k,l,m,o,p,q,r=n.hasData(a)&&n._data(a);if(r&&(k=r.events)){b=(b||"").match(F)||[""],j=b.length;while(j--)if(h=ab.exec(b[j])||[],o=q=h[1],p=(h[2]||"").split(".").sort(),o){l=n.event.special[o]||{},o=(d?l.delegateType:l.bindType)||o,m=k[o]||[],h=h[2]&&new RegExp("(^|\\.)"+p.join("\\.(?:.*\\.|)")+"(\\.|$)"),i=f=m.length;while(f--)g=m[f],!e&&q!==g.origType||c&&c.guid!==g.guid||h&&!h.test(g.namespace)||d&&d!==g.selector&&("**"!==d||!g.selector)||(m.splice(f,1),g.selector&&m.delegateCount--,l.remove&&l.remove.call(a,g));i&&!m.length&&(l.teardown&&l.teardown.call(a,p,r.handle)!==!1||n.removeEvent(a,o,r.handle),delete k[o])}else for(o in k)n.event.remove(a,o+b[j],c,d,!0);n.isEmptyObject(k)&&(delete r.handle,n._removeData(a,"events"))}},trigger:function(b,c,d,e){var f,g,h,i,k,l,m,o=[d||z],p=j.call(b,"type")?b.type:b,q=j.call(b,"namespace")?b.namespace.split("."):[];if(h=l=d=d||z,3!==d.nodeType&&8!==d.nodeType&&!_.test(p+n.event.triggered)&&(p.indexOf(".")>=0&&(q=p.split("."),p=q.shift(),q.sort()),g=p.indexOf(":")<0&&"on"+p,b=b[n.expando]?b:new n.Event(p,"object"==typeof b&&b),b.isTrigger=e?2:3,b.namespace=q.join("."),b.namespace_re=b.namespace?new RegExp("(^|\\.)"+q.join("\\.(?:.*\\.|)")+"(\\.|$)"):null,b.result=void 0,b.target||(b.target=d),c=null==c?[b]:n.makeArray(c,[b]),k=n.event.special[p]||{},e||!k.trigger||k.trigger.apply(d,c)!==!1)){if(!e&&!k.noBubble&&!n.isWindow(d)){for(i=k.delegateType||p,_.test(i+p)||(h=h.parentNode);h;h=h.parentNode)o.push(h),l=h;l===(d.ownerDocument||z)&&o.push(l.defaultView||l.parentWindow||a)}m=0;while((h=o[m++])&&!b.isPropagationStopped())b.type=m>1?i:k.bindType||p,f=(n._data(h,"events")||{})[b.type]&&n._data(h,"handle"),f&&f.apply(h,c),f=g&&h[g],f&&f.apply&&n.acceptData(h)&&(b.result=f.apply(h,c),b.result===!1&&b.preventDefault());if(b.type=p,!e&&!b.isDefaultPrevented()&&(!k._default||k._default.apply(o.pop(),c)===!1)&&n.acceptData(d)&&g&&d[p]&&!n.isWindow(d)){l=d[g],l&&(d[g]=null),n.event.triggered=p;try{d[p]()}catch(r){}n.event.triggered=void 0,l&&(d[g]=l)}return b.result}},dispatch:function(a){a=n.event.fix(a);var b,c,e,f,g,h=[],i=d.call(arguments),j=(n._data(this,"events")||{})[a.type]||[],k=n.event.special[a.type]||{};if(i[0]=a,a.delegateTarget=this,!k.preDispatch||k.preDispatch.call(this,a)!==!1){h=n.event.handlers.call(this,a,j),b=0;while((f=h[b++])&&!a.isPropagationStopped()){a.currentTarget=f.elem,g=0;while((e=f.handlers[g++])&&!a.isImmediatePropagationStopped())(!a.namespace_re||a.namespace_re.test(e.namespace))&&(a.handleObj=e,a.data=e.data,c=((n.event.special[e.origType]||{}).handle||e.handler).apply(f.elem,i),void 0!==c&&(a.result=c)===!1&&(a.preventDefault(),a.stopPropagation()))}return k.postDispatch&&k.postDispatch.call(this,a),a.result}},handlers:function(a,b){var c,d,e,f,g=[],h=b.delegateCount,i=a.target;if(h&&i.nodeType&&(!a.button||"click"!==a.type))for(;i!=this;i=i.parentNode||this)if(1===i.nodeType&&(i.disabled!==!0||"click"!==a.type)){for(e=[],f=0;h>f;f++)d=b[f],c=d.selector+" ",void 0===e[c]&&(e[c]=d.needsContext?n(c,this).index(i)>=0:n.find(c,this,null,[i]).length),e[c]&&e.push(d);e.length&&g.push({elem:i,handlers:e})}return h]","i"),ib=/^\s+/,jb=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/gi,kb=/<([\w:]+)/,lb=/\s*$/g,sb={option:[1,""],legend:[1,"
","
"],area:[1,"",""],param:[1,"",""],thead:[1,"","
"],tr:[2,"","
"],col:[2,"","
"],td:[3,"","
"],_default:l.htmlSerialize?[0,"",""]:[1,"X
","
"]},tb=eb(z),ub=tb.appendChild(z.createElement("div"));sb.optgroup=sb.option,sb.tbody=sb.tfoot=sb.colgroup=sb.caption=sb.thead,sb.th=sb.td;function vb(a,b){var c,d,e=0,f=typeof a.getElementsByTagName!==L?a.getElementsByTagName(b||"*"):typeof a.querySelectorAll!==L?a.querySelectorAll(b||"*"):void 0;if(!f)for(f=[],c=a.childNodes||a;null!=(d=c[e]);e++)!b||n.nodeName(d,b)?f.push(d):n.merge(f,vb(d,b));return void 0===b||b&&n.nodeName(a,b)?n.merge([a],f):f}function wb(a){X.test(a.type)&&(a.defaultChecked=a.checked)}function xb(a,b){return n.nodeName(a,"table")&&n.nodeName(11!==b.nodeType?b:b.firstChild,"tr")?a.getElementsByTagName("tbody")[0]||a.appendChild(a.ownerDocument.createElement("tbody")):a}function yb(a){return a.type=(null!==n.find.attr(a,"type"))+"/"+a.type,a}function zb(a){var b=qb.exec(a.type);return b?a.type=b[1]:a.removeAttribute("type"),a}function Ab(a,b){for(var c,d=0;null!=(c=a[d]);d++)n._data(c,"globalEval",!b||n._data(b[d],"globalEval"))}function Bb(a,b){if(1===b.nodeType&&n.hasData(a)){var c,d,e,f=n._data(a),g=n._data(b,f),h=f.events;if(h){delete g.handle,g.events={};for(c in h)for(d=0,e=h[c].length;e>d;d++)n.event.add(b,c,h[c][d])}g.data&&(g.data=n.extend({},g.data))}}function Cb(a,b){var c,d,e;if(1===b.nodeType){if(c=b.nodeName.toLowerCase(),!l.noCloneEvent&&b[n.expando]){e=n._data(b);for(d in e.events)n.removeEvent(b,d,e.handle);b.removeAttribute(n.expando)}"script"===c&&b.text!==a.text?(yb(b).text=a.text,zb(b)):"object"===c?(b.parentNode&&(b.outerHTML=a.outerHTML),l.html5Clone&&a.innerHTML&&!n.trim(b.innerHTML)&&(b.innerHTML=a.innerHTML)):"input"===c&&X.test(a.type)?(b.defaultChecked=b.checked=a.checked,b.value!==a.value&&(b.value=a.value)):"option"===c?b.defaultSelected=b.selected=a.defaultSelected:("input"===c||"textarea"===c)&&(b.defaultValue=a.defaultValue)}}n.extend({clone:function(a,b,c){var d,e,f,g,h,i=n.contains(a.ownerDocument,a);if(l.html5Clone||n.isXMLDoc(a)||!hb.test("<"+a.nodeName+">")?f=a.cloneNode(!0):(ub.innerHTML=a.outerHTML,ub.removeChild(f=ub.firstChild)),!(l.noCloneEvent&&l.noCloneChecked||1!==a.nodeType&&11!==a.nodeType||n.isXMLDoc(a)))for(d=vb(f),h=vb(a),g=0;null!=(e=h[g]);++g)d[g]&&Cb(e,d[g]);if(b)if(c)for(h=h||vb(a),d=d||vb(f),g=0;null!=(e=h[g]);g++)Bb(e,d[g]);else Bb(a,f);return d=vb(f,"script"),d.length>0&&Ab(d,!i&&vb(a,"script")),d=h=e=null,f},buildFragment:function(a,b,c,d){for(var e,f,g,h,i,j,k,m=a.length,o=eb(b),p=[],q=0;m>q;q++)if(f=a[q],f||0===f)if("object"===n.type(f))n.merge(p,f.nodeType?[f]:f);else if(mb.test(f)){h=h||o.appendChild(b.createElement("div")),i=(kb.exec(f)||["",""])[1].toLowerCase(),k=sb[i]||sb._default,h.innerHTML=k[1]+f.replace(jb,"<$1>")+k[2],e=k[0];while(e--)h=h.lastChild;if(!l.leadingWhitespace&&ib.test(f)&&p.push(b.createTextNode(ib.exec(f)[0])),!l.tbody){f="table"!==i||lb.test(f)?""!==k[1]||lb.test(f)?0:h:h.firstChild,e=f&&f.childNodes.length;while(e--)n.nodeName(j=f.childNodes[e],"tbody")&&!j.childNodes.length&&f.removeChild(j)}n.merge(p,h.childNodes),h.textContent="";while(h.firstChild)h.removeChild(h.firstChild);h=o.lastChild}else p.push(b.createTextNode(f));h&&o.removeChild(h),l.appendChecked||n.grep(vb(p,"input"),wb),q=0;while(f=p[q++])if((!d||-1===n.inArray(f,d))&&(g=n.contains(f.ownerDocument,f),h=vb(o.appendChild(f),"script"),g&&Ab(h),c)){e=0;while(f=h[e++])pb.test(f.type||"")&&c.push(f)}return h=null,o},cleanData:function(a,b){for(var d,e,f,g,h=0,i=n.expando,j=n.cache,k=l.deleteExpando,m=n.event.special;null!=(d=a[h]);h++)if((b||n.acceptData(d))&&(f=d[i],g=f&&j[f])){if(g.events)for(e in g.events)m[e]?n.event.remove(d,e):n.removeEvent(d,e,g.handle);j[f]&&(delete j[f],k?delete d[i]:typeof d.removeAttribute!==L?d.removeAttribute(i):d[i]=null,c.push(f))}}}),n.fn.extend({text:function(a){return W(this,function(a){return void 0===a?n.text(this):this.empty().append((this[0]&&this[0].ownerDocument||z).createTextNode(a))},null,a,arguments.length)},append:function(){return this.domManip(arguments,function(a){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var b=xb(this,a);b.appendChild(a)}})},prepend:function(){return this.domManip(arguments,function(a){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var b=xb(this,a);b.insertBefore(a,b.firstChild)}})},before:function(){return this.domManip(arguments,function(a){this.parentNode&&this.parentNode.insertBefore(a,this)})},after:function(){return this.domManip(arguments,function(a){this.parentNode&&this.parentNode.insertBefore(a,this.nextSibling)})},remove:function(a,b){for(var c,d=a?n.filter(a,this):this,e=0;null!=(c=d[e]);e++)b||1!==c.nodeType||n.cleanData(vb(c)),c.parentNode&&(b&&n.contains(c.ownerDocument,c)&&Ab(vb(c,"script")),c.parentNode.removeChild(c));return this},empty:function(){for(var a,b=0;null!=(a=this[b]);b++){1===a.nodeType&&n.cleanData(vb(a,!1));while(a.firstChild)a.removeChild(a.firstChild);a.options&&n.nodeName(a,"select")&&(a.options.length=0)}return this},clone:function(a,b){return a=null==a?!1:a,b=null==b?a:b,this.map(function(){return n.clone(this,a,b)})},html:function(a){return W(this,function(a){var b=this[0]||{},c=0,d=this.length;if(void 0===a)return 1===b.nodeType?b.innerHTML.replace(gb,""):void 0;if(!("string"!=typeof a||nb.test(a)||!l.htmlSerialize&&hb.test(a)||!l.leadingWhitespace&&ib.test(a)||sb[(kb.exec(a)||["",""])[1].toLowerCase()])){a=a.replace(jb,"<$1>");try{for(;d>c;c++)b=this[c]||{},1===b.nodeType&&(n.cleanData(vb(b,!1)),b.innerHTML=a);b=0}catch(e){}}b&&this.empty().append(a)},null,a,arguments.length)},replaceWith:function(){var a=arguments[0];return this.domManip(arguments,function(b){a=this.parentNode,n.cleanData(vb(this)),a&&a.replaceChild(b,this)}),a&&(a.length||a.nodeType)?this:this.remove()},detach:function(a){return this.remove(a,!0)},domManip:function(a,b){a=e.apply([],a);var c,d,f,g,h,i,j=0,k=this.length,m=this,o=k-1,p=a[0],q=n.isFunction(p);if(q||k>1&&"string"==typeof p&&!l.checkClone&&ob.test(p))return this.each(function(c){var d=m.eq(c);q&&(a[0]=p.call(this,c,d.html())),d.domManip(a,b)});if(k&&(i=n.buildFragment(a,this[0].ownerDocument,!1,this),c=i.firstChild,1===i.childNodes.length&&(i=c),c)){for(g=n.map(vb(i,"script"),yb),f=g.length;k>j;j++)d=i,j!==o&&(d=n.clone(d,!0,!0),f&&n.merge(g,vb(d,"script"))),b.call(this[j],d,j);if(f)for(h=g[g.length-1].ownerDocument,n.map(g,zb),j=0;f>j;j++)d=g[j],pb.test(d.type||"")&&!n._data(d,"globalEval")&&n.contains(h,d)&&(d.src?n._evalUrl&&n._evalUrl(d.src):n.globalEval((d.text||d.textContent||d.innerHTML||"").replace(rb,"")));i=c=null}return this}}),n.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(a,b){n.fn[a]=function(a){for(var c,d=0,e=[],g=n(a),h=g.length-1;h>=d;d++)c=d===h?this:this.clone(!0),n(g[d])[b](c),f.apply(e,c.get());return this.pushStack(e)}});var Db,Eb={};function Fb(b,c){var d=n(c.createElement(b)).appendTo(c.body),e=a.getDefaultComputedStyle?a.getDefaultComputedStyle(d[0]).display:n.css(d[0],"display");return d.detach(),e}function Gb(a){var b=z,c=Eb[a];return c||(c=Fb(a,b),"none"!==c&&c||(Db=(Db||n("