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