Send / SendText / SendInput / SendPlay / SendEvent

キーストロークやマウスクリックのシミュレーションをアクティブウィンドウに送信します。

Send Keys
SendText Keys
SendInput Keys
SendPlay Keys
SendEvent Keys

パラメータ

Keys

型:文字列

送信するキーのシーケンス。

デフォルトでは(つまり、SendTextもRawモードTextモードも使用しない場合)、文字^+!#{}は特別な意味を持つ。文字^+!#は、修飾キーCtrlShiftAltWinを表します。次のキーにしか影響しません。対応する修飾キーを単独で送信する場合は、キー名を中括弧で囲んでください。キーを押したり離したりするだけなら、以下のようにキー名の後に "down"や "up"をつけてください。

Symbol Key Press Release
^ {Ctrl} {Ctrl down} {Ctrl up} Send "^{Home}"Ctrl+Homeを押す
+ {Shift} {Shift down} {Shift up} Send "+abC"は、テキスト "AbC" を送信します。
Send "!+a" は、Alt+Shift+Aを押します。
! {Alt} {Alt down} {Alt up} Send "!a" は、Alt+Aを押します。
# {LWin}
{RWin}
{LWin down}
{RWin down}
{LWin up}
{RWin up}
Send "#e" holds down Win and presses E

Note: As capital letters are produced by sending Shift, A produces a different effect in some programs than a. 例えば、!AAlt+Shift+A、および、!aは、Alt+Aを押します。迷ったときは小文字を使います。

文字{}は、キー名やその他のオプションを囲んだり、特殊文字を文字通りに送信するために使用します。例えば、{Tab}は Tab{!}は文字通りのエクスクラメーションマークです。

ASCII文字(a-zまたはA-Z)を中括弧で囲むと、その文字が現在のキーボードレイアウトに存在しない場合でも、対応する仮想キーコードとして送信されます。つまり、Send "a"は"a"が出るが、"{a}"を送ると"a"が出るかどうかは、キーボードの配列によって異なります。詳しくは、下記の備考をご覧ください。

Send variants

Send:デフォルトでは、SendはSendInputと同義ですが、SendModeによってSendEventやSendPlayと同義にすることができます。

SendText:Sendと似ていますが、Keysのすべての文字が解釈され、文字通り送信されます。詳しくは、「テキストモード」をご覧ください。

SendInput および SendPlay:SendInputとSendPlayはSendEventと同じ構文を使用しますが、一般的により高速で信頼性が高いです。また、送信中にキーボードやマウスを操作した場合、バッファリングが行われるため、ユーザーのキー入力と送信中のキー入力が混在することを防ぐことができます。SendModeを使用することで、SendをSendInputやSendPlayと同義にすることができます。各モードの詳細については、後述のSendInputおよびSendPlayを参照してください。

SendEvent: SendEvent sends keystrokes using the Windows keybd_event function (search Microsoft Docs for details). キー入力の送信速度は、SetKeyDelayで決定されます。SendModeを使用することで、SendをSendEventまたはSendPlayと同義にすることができます。

Special modes

以下のモードは、Keysの文字の解釈や、Send、SendInput、SendPlay、SendEvent、ControlSendなどのキー送信関数の動作に影響を与えます。これらのモードは、Keys{x}として指定する必要があり、xはRaw、Text、Blindのいずれかです。例えば、{Raw}です。

Raw mode

Rawモードは{Raw}で有効にすることができ、{Enter}Enter^cCtrl+Cなどに変換するのではなく、特殊文字^+!#{}を含む後続のすべての文字が文字通り解釈されるようになります。例えば、Send "{Raw}{Tab}"は、Tabの代わりに{Tab}を送信します。

Rawモードは、エスケープシーケンスの解釈には影響しません。例えば、Send "{Raw}``100`%"は、文字列`100%を送信します。

テキストモード

テキストモードは{Text}、SendText、ControlSendTextのいずれかで有効にすることができ、Rawモードと似ていますが、文字(`r`n`t`b以外)をキーコードに変換しようとしないことを除いて、残りのすべての文字に対してフォールバックメソッドが使用されます。SendEvent、SendInput、ControlSendについては、文字が正しい修飾子の状態に依存することが少なくなるため、信頼性が向上する。このモードは、ブラインドモードと組み合わせることで、修飾キーを離さないようにすることができます:Send "{Blind}{Text}your text". ただし、アプリケーションによっては、修飾キーが解放されている必要があります。

n`r`r`nは、デフォルトの動作やRawモードが`r`nを2つのEnterに変換するのとは異なり、すべて1つのEnterに変換されます。`tTabに、`bBackspaceに変換されますが、それ以外の文字は変換されずに送信されます。

ブラインドモードと同様に、テキストモードはSetStoreCapsLockModeを無視し(つまり、CapsLockの状態は変化しない)、Winが解除されるのを待つことはありません。これは、テキストモードが通常CapsLockの状態に依存せず、システムのWin+Lホットキーをトリガーすることができないためです。ただし、Keys{Text}または{Blind}{Text}で始まる場合のみ適用されます。

ブラインドモード

ブラインドモードは{Blind}で有効にすることができ、通常、期待通りに動作させるために自動的に行われる多くのことを無効にすることで、スクリプトをよりコントロールできるようにします。ブラインドモードを有効にするには、文字列の最初の項目として{Blind}を指定する必要があります。以下のような効果があります:

"Blind"の後に1つ以上の修飾記号(!#^+)を付けると、必要に応じてそれらの修飾記号が自動的に解除されるようになる場合があります。例えば、*^a::Send "{Blind^}b" は、Ctrl+Shift+Bではなく、Shift+Bを送信しますが、Ctrl+Shift+A が押し付けられた場合。{Blind!#^+}は、必要に応じてすべてのモディファイアを解除することができますが、Blindモードの他の効果を有効にします。

ブラインドモードは、キーを再マッピングする際に内部で使用されます。例えば、a::bの再マッピングでは、次のようになります:1)「a」と入力したときに「b」、2)大文字の「A」と入力したときに「B」、3)「Ctrl+B」と入力したときに「Ctrl+A」。。ソースキーに修飾子が指定されている場合(ソースキーが大文字の場合はShiftを含む)、上記のように除外される。例えば、^a::bは、Ctrl+Bではなく、通常のBを出力します。

{Blind}はSendTextやControlSendTextではサポートされていませんので、代わりに{Blind}{Text}を使用してください。

ブラインドモードは、特に修飾キー(Ctrl、Alt、Shift、Win)を扱う場合、SendPlayで完全にサポートされているわけではありません。

Key names

次の表は、送信可能な特殊キーの一覧です(各キー名は、中括弧で囲む必要があります):

Key name 説明
{F1} - {F24} Function keys. 事例:{F12} は F12.
{!} !
{#} #
{+} +
{^} ^
{{} {
{}} }
{Enter} メインキーボードでEnter
{Escape} or {Esc} ESC
{Space} スペース(送信する文字列の先頭または末尾に現れるスペースにのみ必要で、途中にあるものはリテラルスペースでもよい)
{Tab} Tab
{Backspace} or {BS} バックスペース
{Delete} or {Del} デリート
{Insert} or {Ins} 挿入
{Up} メインキーボードで(上矢印)。
{Down} メインキーボードで(下矢印)を押す
{Left} メインキーボードで(左矢印)を押す
{Right} メインキーボードで(右矢印
{Home} メインキーボードでHome
{End} メインキーボードでEnd
{PgUp} メインキーボードでPgUp
{PgDn} メインキーボードのPgDn
{CapsLock} CapsLockSetCapsLockStateを使用するとより確実です)。{CapsLock}を送信する場合、事前にSetStoreCapsLockMode Falseが必要な場合があります。
{ScrollLock} ScrollLock(参照:SetScrollLockState)
{NumLock} NumLock(参照:SetNumLockState)
{Control} or {Ctrl} Ctrl(技術情報:はニュートラルバーチャルキーを送信しますが、左のスキャンコード)
{LControl} or {LCtrl} Left Ctrl(技術情報:中立キーではなく、左の仮想キーを送信します。)
{RControl} or {RCtrl} Right Ctrl
{Control down} or {Ctrl down} {Ctrl up}が送信されるまで、Ctrlを押したままにします。左または右のキーを押したままにするには、CtrlをLCtrlまたはRCtrlに置き換えてください。
{Alt} Alt(技術情報:はニュートラルバーチャルキーを送信しますが、左のスキャンコード)
{LAlt} Left Alt(技術情報:中立キーではなく、左の仮想キーを送信します。)
{RAlt} Right Alt(キーボードレイアウトによってはAltGr
{Alt down} {Alt up}が送信されるまでAltdownを保持します。左または右のキーを押したままにする場合は、AltをLAltまたはRAltに置き換えてください。
{Shift} Shift(技術情報:はニュートラルバーチャルキーを送信しますが、左のスキャンコード)
{LShift} Left Shift(技術情報:中立キーではなく、左の仮想キーを送信します。)
{RShift} Right Shift
{Shift down} {Shift up}が送信されるまで、Shiftを押したままにします。左または右のキーを押したままにするには、ShiftをLShiftまたはRShiftに置き換えてください。
{LWin} Left Win
{RWin} Right Win
{LWin down} LWin up}が送信されるまで、左のWinを押したままにします。
{RWin down} {RWin up}が送信されるまで、右のWinを下に保持する。
{AppsKey} Menu(右クリックメニューまたはコンテキストメニューを呼び出す)
{Sleep} Sleep
{ASC nnnnn}

Alt+nnnnのキーパッドの組み合わせを送信します。キーボードに存在しない特殊文字を生成するために使用することができます。To generate printable ASCII characters or other characters from code page 437, specify a number between 1 and 255. ANSI文字(ほとんどの言語で標準)を生成するには、128から255までの数字を指定しますが、その前に先頭の0を付けます(例:{Asc 0133})。

256から65535までの数字(先頭のゼロを含まない)を指定することで、ユニコード文字を生成することができます。ただし、すべてのアプリケーションで対応しているわけではありません。代替案については、以下のセクションを参照してください。

{U+nnnn}

Unicode 文字を送信します。nnnnは、0x 接頭辞を除いた文字の 16 進数値です。SendとControlSendは自動的にUnicodeテキストをサポートするので、これは通常必要ありません。

文字の送信にはSendInput()またはWM_CHARが使用され、現在の送信モードは影響しない。この方法で送られた文字は、通常、ショートカットキーやホットキーは作動しません。

{vkXX}
{scYYY}
{vkXXscYYY}

仮想キーXXとスキャンコードYYYを持つキーストロークを送信します。事例:Send "{vkFFsc159}". sc または vk の部分が省略された場合、最も適切な値が代わりに送信されます。

The values for XX and YYY are hexadecimal and can usually be determined from the main window's View->Key history menu item. こちらもご覧ください:Special Keys

警告:この方法でvkとscを組み合わせることは、Sendの場合のみ有効です。

{Numpad0} - {Numpad9} Numpadの数字キー(NumLockがONの時の状態です。)事例:{Numpad5} is 5.
{NumpadDot} .(テンキー期間) (NumLockがONの時に見られる)。
{NumpadEnter} キーパッドの入力
{NumpadMult} * (テンキーの乗算)
{NumpadDiv} / (テンキーの除算)
{NumpadAdd} + (テンキーの加算)
{NumpadSub} - (テンキーの減算)
{NumpadDel} キーパッドのDelNumLockがOFFのときは、このキーと以下のNumpadキーが使用されます。)
{NumpadIns} キーパッドのIns
{NumpadClear} キーパッドのクリアキー(NumLockがOFFの場合、通常は5)。
{NumpadUp} キーパッドで(上矢印)。
{NumpadDown} キーパッドで(下矢印)。
{NumpadLeft} キーパッドで(左矢印)を押す
{NumpadRight} キーパッドで(右矢印
{NumpadHome} キーパッドでHome
{NumpadEnd} キーパッドでEnd
{NumpadPgUp} キーパッドでPgUp
{NumpadPgDn} キーパッドでPgDn
{Browser_Back} ブラウザの「戻る」ボタンを選択する
{Browser_Forward} ブラウザの「進む」ボタンを選択する
{Browser_Refresh} ブラウザの「更新」ボタンを選択する
{Browser_Stop} ブラウザの「停止」ボタンを選択する
{Browser_Search} ブラウザの「検索」ボタンを選択する
{Browser_Favorites} ブラウザの "お気に入り"ボタンを選択
{Browser_Home} ブラウザを起動し、トップページに移動する
{Volume_Mute} マスターボリュームをミュート/アンミュートする。通常、SoundSetMute-1と同等です。
{Volume_Down} マスターボリュームを小さくする。通常、SoundSetVolume-5と同等です。
{Volume_Up} マスターボリュームを大きくする。通常、SoundSetVolume"+5"と同等です。
{Media_Next} メディアプレーヤーで次のトラックを選択する
{Media_Prev} メディアプレーヤーで前のトラックを選択する
{Media_Stop} メディアプレーヤーの停止
{Media_Play_Pause} メディアプレーヤーの再生/一時停止
{Launch_Mail} メールアプリケーションを起動する
{Launch_Media} メディアプレーヤーの起動
{Launch_App1} ユーザーアプリ1起動
{Launch_App2} ユーザーアプリ2起動
{PrintScreen} PrtSc
{CtrlBreak} Ctrl+Pause
{Pause} Pause
{Click [Options]} クリック機能と同じオプションを使って、マウスクリックを送信します。例えば、Send "{Click}"はマウスカーソルの現在位置でマウスの左ボタンを1回クリックし、Send "{Click 100 200}"は座標100、200(CoordModeに基づく)でクリックします。クリックせずにマウスを移動させる場合は、座標の後に0を指定します(例):Send "{Click 100 200 0}". マウスクリックの遅延時間はSetMouseDelayで決定されます(SetKeyDelayではありません)。
{WheelDown}, {WheelUp}, {WheelLeft}, {WheelRight}, {LButton}, {RButton}, {MButton}, {XButton1}, {XButton2}

カーソルの現在位置でマウスボタンイベントを送信します(位置やその他のオプションを制御するには、上記の{Click}を使用します)。マウスクリックの遅延時間は、SetMouseDelayで決定されます。

LButtonとRButtonは、マウスのプライマリボタンとセカンダリボタンに対応します。通常、マウスのプライマリボタン(LButton)は左側にありますが、ユーザーはシステム設定によってボタンを入れ替えることができます。

{Blind} ブラインドモードを有効にします。これは、一般的に期待通りに動作するように、通常自動的に行われる多くのことを無効にすることで、スクリプトをより制御できるようにするものです。{Blind} must occur at the beginning of the string.
{Raw} 以下の文字が文字通りに解釈されるRawモードを有効にします:^+!#{}. Although {Raw} need not occur at the beginning of the string, once specified, it stays in effect for the remainder of the string.
{Text} キーストロークではなく、文字のストリームを送信するテキストモードを有効にします。Rawモードと同様に、Textモードでは、以下の文字が文字通りに解釈されます:^+!#{}. Although {Text} need not occur at the beginning of the string, once specified, it stays in effect for the remainder of the string.

鍵盤の繰り返しや長押し

To repeat a keystroke: Enclose in braces the name of the key followed by the number of times to repeat it. 事例:

Send "{DEL 4}"  ; Presses the Delete key 4 times.
Send "{S 30}"   ; Sends 30 uppercase S characters.
Send "+{TAB 4}"  ; Presses Shift-Tab 4 times.

To hold down or release a key: Enclose in braces the name of the key followed by the word Down or Up. 事例:

Send "{b down}{b up}"
Send "{TAB down}{TAB up}"
Send "{Up down}"  ; Presses down the up-arrow key.
Sleep 1000  ; Keeps it down for one second.
Send "{Up up}"  ; Releases the up-arrow key.

上記の方法でキーを押した場合、物理的に押した場合のようにオートリピートが始まるわけではありません(オートリピートはドライバー/ハードウェアの機能であるためです)。しかし、Loopを使用することでオートリピートを模擬することができます。次の例では、タブキーを20回送信しています:

Loop 20
{
    Send "{Tab down}"  ; Auto-repeat consists of consecutive down-events (with no up-events).
    Sleep 30  ; The number of milliseconds between keystrokes (or use SetKeyDelay).
}
Send "{Tab up}"  ; Release the key.

デフォルトでは、送信によって修飾キー(Control、Shift、Alt、Win)が「押下」された場合、送信は自動的に修飾キーを解除しません。例えば、Send "a" は、ユーザーが物理的にCtrlを持っている場合、Send "{Blind}{Ctrl up}a{Ctrl down}" と同様の動作をすることがあります、 が、"{Ctrl Down}"の後に"a"を送るとCtrl+Aとなる。DownTempDownRを使用すると、この動作をオーバーライドすることができます。DownTempDownRは、修飾キー(Control、Shift、Alt、Win)以外はDownと同じ効果になります。

DownTempは、キーが永久にダウンしているわけではなく、キーストロークが必要とするときはいつでもリリースできることを後続の送信機に伝えます。例えば、Send "{Control DownTemp}"した後にSend "a"すると、 Ctrl+Aではなく、Aが出力されます。Sendを使用すると、モディファイアを永久に解放する可能性があるため、DownTempはモディファイアキーの再マッピングに適していません。

DownR(Rはリマッピングを意味し、主な用途はこれです)は、キーが自動的に離された場合、送信終了時に再び押されるように後続の送信機に指示します。例えば、Send "{Control DownR}"した後にSend "a"すると、Ctrl+AではなくAを生成しますが、キーボードショートカットを使用するためにCtrlを押したままの状態にします。つまり、DownRは物理的にキーを押すのと同じような効果があるのです。

文字が現在のキーボードレイアウト上の仮想キーに対応していない場合、「押す」「離す」ことができません。例えば、Send "{µ up}"は、ほとんどのレイアウトで効果がなく、Send "{µ down}"Send "µ"と同等であることを示しています。

総論

Characters vs. keys: By default, characters are sent by first translating them to keystrokes. この変換が不可能な場合(つまり、現在のキーボードレイアウトにその文字を生成するキーまたはキーの組み合わせがない場合)、その文字は以下のフォールバックメソッドの1つによって送信されます:

注:上記の方法で送信された文字は、通常、キーボードショートカットやホットキーは作動しません。

For characters in the range a-z or A-Z (plain ASCII letters), each character which does not exist in the current keyboard layout may be sent either as a character or as the corresponding virtual keycode (vk41-vk5A):

現在のキーボードレイアウトにその文字が存在する場合、そのレイアウトがその文字に関連付けるキーコードとして常に送信されます(テキストモードが使用されていない場合、その文字は他の手段で送信されます)。つまり、上記のセクションは、ロシア語のような非ラテン語ベースのレイアウトにのみ関係します。

Modifier State: When Send is required to change the state of the Win or Alt modifier keys (such as if the user was holding one of those keys), it may inject additional keystrokes (Ctrl by default) to prevent the Start menu or window menu from appearing. 詳しくは、A_MenuMaskKeyを参照してください。

BlockInput Compared to SendInput/SendPlay: Although the BlockInput function can be used to prevent any keystrokes physically typed by the user from disrupting the flow of simulated keystrokes, it is often better to use SendInput or SendPlay so that keystrokes and mouse clicks become uninterruptible. これは、BlockInputとは異なり、SendInput/Playは送信中にユーザーが入力したものを破棄せず、そのようなキー入力をバッファリングして後から送信するためです。

大量のキーを送信する場合、継続部分を使用することで、可読性と保守性を向上させることができます。

オペレーティング システムでは、Ctrl+Alt+Del の組み合わせのシミュレーションはできないので、Send "^!{Delete}" などの操作を行ったとしても、何の影響もありません。。

アクティブウィンドウが管理者権限で実行され、スクリプトが管理者権限で実行されていない場合、送信しても効果がない場合があります。これは、User Interface Privilege Isolationと呼ばれるセキュリティの仕組みによるものです。

SendInput

SendInputは、その優れた速度と信頼性から、一般的にキーストロークやマウスクリックを送信する方法として好まれています。Under most conditions, SendInput is nearly instantaneous, even when sending long strings. SendInputは非常に高速なので、他のウィンドウが不意に現れてキー入力を傍受される機会が少なく、信頼性も高いです。SendInput中にユーザーが入力したものは、その後まで延期されるため、信頼性はさらに向上します。

他の送信モードと異なり、オペレーティングシステムではSendInputは約5000文字に制限されています(オペレーティングシステムのバージョンや性能設定により異なる場合があります)。この制限を超えた文字や事象は送信されません。

注:SendInputは、オペレーティングシステムがこのモードでの遅延をサポートしないため、SetKeyDelayを無視します。ただし、後述の条件でSendInputがSendEventに戻る場合は、SetKeyDelay -1, 0 を使用します(SendEventのKeyDelayが -1,-1 の場合は -1,-1 を使用します)。SendInputがSendPlayに戻ると、SendPlayのKeyDelayを使用します。

If the script has a low-level keyboard hook installed, SendInput automatically uninstalls it prior to executing and reinstalls it afterward. As a consequence, SendInput generally cannot trigger the script's own hook hotkeys or InputHooks. The hook is temporarily uninstalled because its presence would otherwise disable all of SendInput's advantages, making it inferior to both SendPlay and SendEvent. However, this can only be done for the script's own hook, and is not done if an external hook is detected as described below.

SendInputを実行しているスクリプト以外のスクリプトに低レベルのキーボードフックがインストールされている場合、SendInputは自動的にSendEventSendMode"InputThenPlay"が有効な場合はSendPlay)に戻されます。これは、外部フックの存在によってSendInputの利点がすべて無効になり、SendPlayとSendEventの両方に劣ることになるためである。ただし、SendInputはAutoHotkey v1.0.43+以外のプログラムでは低レベルフックを検出できないため、これらの場合は復帰せず、SendPlay/Eventより信頼性が低くなります。

SendInputが{Click}などの手段でマウスクリックを送信し、CoordMode"Mouse", "Window"またはCoordMode "Mouse", "Client"が有効な場合、すべてのクリックは、送信開始時にアクティブだったウィンドウに対する相対移動となります。そのため、SendInputが意図的に別のウィンドウをアクティブにした場合(alt-tabなどの手段)、同じ関数内でのその後のクリックの座標が、古いウィンドウではなく新しいウィンドウに対するものであった場合、間違った座標になります。

SendPlay

警告SendPlayは、UACが有効な場合、スクリプトが管理者として実行されていても、全く効果がない場合があります。詳しくは、FAQをご覧ください。

SendPlayの最大の特徴は、他のモードよりも幅広いゲームにおいて、キーストロークやマウスクリックを「再生」できることです。例えば、あるゲームでは、SendPlayオプションがあるときだけhotstringsを受け入れることができます。

3つの送信モードのうち、SendPlayはキー操作やマウスクリックそのものをシミュレートしていないため、最も珍しいものです。その代わりに、アクティブなウィンドウに直接流れる一連のイベント(メッセージ)を作成します(ControlSendと似ていますが、より低いレベルです)。その結果、SendPlayはホットキーやホットストリングをトリガーしません。

SendInputと同様に、SendPlayのキー入力は、ユーザーが入力したキー入力が挟まれることはありません。そのため、SendPlay中にユーザーが何かを入力することがあっても、そのキー入力はその後まで延期されます。

SendPlayはSendInputよりかなり遅いですが、通常は従来のSendEventモードより速いです(KeyDelayが-1でも)。

キーボードフックがインストールされている場合、SendPlay時に両Win(LWin、RWin)は自動的にブロックされます。これにより、ユーザーが送信中に誤ってWinを押してしまっても、スタートメニューが表示されないようにしました。一方、LWinとRWin以外のキーは、OSが自動的にSendPlayの後まで延期するため(バッファリングにより)、ブロックする必要はありません。

SendPlayは、標準設定のSetKeyDelaySetMouseDelayを使用しません。その代わり、デフォルトでは全く遅延しないようになっていますが、以下の例のように変更することが可能です:

SetKeyDelay 0, 10, "Play"  ; Note that both 0 and -1 are the same in SendPlay mode.
SetMouseDelay 10, "Play"

SendPlayは、CapsLockNumLockScrollLockのオン/オフを切り替えることができません。同様に、キーストロークがスクリプト自身のウィンドウに送信されない限り、GetKeyStateによって見られるキーの状態を変更することはできません。その場合でも、左右の修飾キー(例:RControl)の変更は、中立の対応するキー(例:Control)を介してのみ検出することができます。また、SendPlayにはSendModeのページで説明されている他の制限があります。

SendInputSendEventとは異なり、ユーザーはCtrl+Alt+DelまたはCtrl+Escを押してSendPlayを中断できます。この場合、残りのキー入力は送信されませんが、SendPlayが正常に完了したかのようにスクリプトの実行は継続されます。

SendPlayはLWinとRWinイベントを送ることができますが、それらはオペレーティングシステム本来の機能を果たすのではなく、アクティブウィンドウに直接送られます。これを回避するためには、SendEventを使用します。例えば、SendEvent "#r"は、スタートメニューの実行ダイアログを表示します。

SendMode, SetKeyDelay, SetStoreCapsLockMode, Escape sequences (e.g. `n), ControlSend, BlockInput, Hotstrings, WinActivate

2行の署名を入力します。

Send "Sincerely,{enter}John Smith"

ファイル」→「保存」メニュー(Alt+Fの後にSを付ける)を選択します。

Send "!fs"

テキストの末尾にジャンプし、Shift+左矢印キーを4回送信します。

Send "{End}+{Left 4}"

最速の方法で、長い一連の生文字を送信します。

SendInput "{Raw}A long series of raw characters sent via the fastest method."

Holds down a key contained in a variable.

MyKey := "Shift"
Send "{" MyKey " down}"  ; Holds down the Shift key.