Keyboard.SendKeys メソッド
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
キーボードから入力する感覚で、1 つまたは複数のキーストロークをアクティブ ウィンドウに送信します。
オーバーロード
SendKeys(String) |
キーボードから入力する感覚で、1 つまたは複数のキーストロークをアクティブ ウィンドウに送信します。 |
SendKeys(String, Boolean) |
キーボードから入力する感覚で、1 つまたは複数のキーストロークをアクティブ ウィンドウに送信します。 |
SendKeys(String)
キーボードから入力する感覚で、1 つまたは複数のキーストロークをアクティブ ウィンドウに送信します。
public:
void SendKeys(System::String ^ keys);
public void SendKeys (string keys);
member this.SendKeys : string -> unit
Public Sub SendKeys (keys As String)
パラメーター
- keys
- String
送信するキーを定義する String
。
例外
ユーザーが部分的に信頼されており、必要なアクセス許可を持っていません。
例
この例では、 メソッドを My.Computer.Keyboard.SendKeys
使用して、 メソッドによって開始された外部アプリケーション (メモ帳アプリケーション) にキーストロークを Shell 送信します。
Dim ProcID As Integer
' Start the Notepad application, and store the process id.
ProcID = Shell("NOTEPAD.EXE", AppWinStyle.NormalFocus)
' Activate the Notepad application.
AppActivate(ProcID)
' Send the keystrokes to the Notepad application.
My.Computer.Keyboard.SendKeys("I ", True)
My.Computer.Keyboard.SendKeys("♥", True)
My.Computer.Keyboard.SendKeys(" Visual Basic!", True)
' The sentence I ♥ Visual Basic! is printed on Notepad.
要求されたプロセス ID のアプリケーションが見つからない場合には、ArgumentException 例外が発生します。
メソッドの呼び出しには Shell 、完全信頼 (SecurityException クラス) が必要です。
注釈
メソッドにはMy.Computer.Keyboard.SendKeys
、 メソッドと SendWait メソッドと同様のSend機能が用意されています。
引数は wait
、アプリケーションを続行する前に他のアプリケーションを終了する必要がある場合に便利です。
注意
別のアプリケーションをアクティブ化するマネージド メソッドがないため、現在のアプリケーション内でこのクラスを使用するか、キーを送信するウィンドウを手動で選択するか、および SetForegroundWindow
などの FindWindow
Windows API メソッドを使用して他のアプリケーションに強制的に集中できます。 詳細については、「チュートリアル:Windows API の呼び出し」を参照してください。
引数には keys
、任意の 1 つのキー、または Alt キー、Ctrl キー、または Shift キー (またはこれらのキーの任意の組み合わせ) と組み合わせた任意のキーを指定できます。 各キーは、文字 "a" や {ENTER}
ENTER キーの場合などa
、1 つ以上の文字で表されます。
キーを Shift キーと組み合わせるには、キー コード +
の前に (プラス記号) を付けます。 Ctrl キーを使用してキーを結合するには、キー コードの前に (キャレット) を付 ^
けます。 キーを Alt キーと組み合わせるには、キー コードの前に (パーセント記号) を付 %
けます。 繰り返しキーを指定するには、フォーム{
キー番号を使用します}
。 キーと数値の間にスペースを入れる必要があります。 たとえば、 {LEFT 42}
"左方向キーを 42 回押す" を意味し {h 10}
、"h' を 10 回押す" ことを意味します。
次の表に、対応するキー (Enter キーや TAB キーなど) を押したときに表示されない文字を指定するために使用できるコードを示します。
Key | コード |
---|---|
BackSpace | {BACKSPACE} または {BS} |
BREAK | {BREAK} |
CapsLock | {CAPSLOCK} |
CLEAR | {CLEAR} |
DELETE | {DELETE} または {DEL} |
下方向キー | {DOWN} |
End | {END} |
Enter (テンキー) | {ENTER} |
Enter | ~ |
Esc | {ESCAPE} または {ESC} |
HELP | {HELP} |
ホーム | {HOME} |
Ins | {INSERT} |
← | {LEFT} |
NUM LOCK | {NUMLOCK} |
PageDown | {PGDN} |
PageUp | {PGUP} |
RETURN | {RETURN} |
→ | {RIGHT} |
スクロール ロック | {SCROLLLOCK} |
Tab | {TAB} |
↑ | {UP} |
F1 ~ F15 | {F1} ~ {F15} |
プロジェクトの種類別の可用性
プロジェクトの種類 | 使用可能 |
---|---|
Windows アプリケーション | はい |
クラス ライブラリ | はい |
コンソール アプリケーション | はい |
Windows コントロール ライブラリ | はい |
Web コントロール ライブラリ | いいえ |
Windows サービス | はい |
Web サイト | いいえ |
こちらもご覧ください
- Computer
- Send(String)
- SendWait(String)
- オブジェクト (Visual Basic)
- キーボードへのアクセス (Visual Basic)
- チュートリアル: Windows API の呼び出し
適用対象
SendKeys(String, Boolean)
キーボードから入力する感覚で、1 つまたは複数のキーストロークをアクティブ ウィンドウに送信します。
public:
void SendKeys(System::String ^ keys, bool wait);
public void SendKeys (string keys, bool wait);
member this.SendKeys : string * bool -> unit
Public Sub SendKeys (keys As String, wait As Boolean)
パラメーター
- keys
- String
送信するキーを定義する String
。
- wait
- Boolean
省略可能。 キーストロークの処理が完了するまで待って、アプリケーションの処理を続行するかどうかを指定する Boolean
値。 既定では True
です。
例外
ユーザーが部分的に信頼されており、必要なアクセス許可を持っていません。
例
この例では、 メソッドを My.Computer.Keyboard.SendKeys
使用して、 メソッドによって開始された外部アプリケーション (メモ帳アプリケーション) にキーストロークを Shell 送信します。
Dim ProcID As Integer
' Start the Notepad application, and store the process id.
ProcID = Shell("NOTEPAD.EXE", AppWinStyle.NormalFocus)
' Activate the Notepad application.
AppActivate(ProcID)
' Send the keystrokes to the Notepad application.
My.Computer.Keyboard.SendKeys("I ", True)
My.Computer.Keyboard.SendKeys("♥", True)
My.Computer.Keyboard.SendKeys(" Visual Basic!", True)
' The sentence I ♥ Visual Basic! is printed on Notepad.
要求されたプロセス ID のアプリケーションが見つからない場合には、ArgumentException 例外が発生します。
メソッドの呼び出しには Shell 、完全信頼 (SecurityException クラス) が必要です。
注釈
メソッドにはMy.Computer.Keyboard.SendKeys
、 メソッドおよび SendWait メソッドにSend似た機能が用意されています。
引数は wait
、アプリケーションを続行する前に他のアプリケーションを終了する必要がある場合に便利です。
注意
別のアプリケーションをアクティブ化するための管理メソッドがないため、現在のアプリケーション内でこのクラスを使用するか、キーを送信するウィンドウを手動で選択するか、 や SetForegroundWindow
などの FindWindow
Windows API メソッドを使用して他のアプリケーションに強制的にフォーカスすることができます。 詳細については、「チュートリアル:Windows API の呼び出し」を参照してください。
引数には keys
、任意の 1 つのキーまたは任意のキーを Alt キー、Ctrl キー、Shift キー (またはこれらのキーの任意の組み合わせ) と組み合わせて指定できます。 各キーは、文字 "a" の場合や ENTER キーの場合など a
、 {ENTER}
1 つ以上の文字で表されます。
キーを Shift キーと組み合わせるには、キー コード +
の前に (プラス記号) を付けます。 キーを Ctrl キーと組み合わせるには、キー コードの前に (キャレット) を付 ^
けます。 キーを ALT と組み合わせるには、キー コードの前に (パーセント記号) を付 %
けます。 繰り返しキーを指定するには、フォーム{
キー番号を使用します}
。 キーと数値の間にスペースを入れる必要があります。 たとえば、 {LEFT 42}
"左方向キーを 42 回押す" を意味し {h 10}
、"h' キーを 10 回押す" を意味します。
次の表に、対応するキー (Enter キーや TAB キーなど) を押したときに表示されない文字を指定するために使用できるコードを示します。
Key | コード |
---|---|
BackSpace | {BACKSPACE} または {BS} |
BREAK | {BREAK} |
CapsLock | {CAPSLOCK} |
CLEAR | {CLEAR} |
DELETE | {DELETE} または {DEL} |
下方向キー | {DOWN} |
End | {END} |
Enter (テンキー) | {ENTER} |
Enter | ~ |
Esc | {ESCAPE} または {ESC} |
HELP | {HELP} |
ホーム | {HOME} |
Ins | {INSERT} |
← | {LEFT} |
NUM LOCK | {NUMLOCK} |
PageDown | {PGDN} |
PageUp | {PGUP} |
RETURN | {RETURN} |
→ | {RIGHT} |
スクロール ロック | {SCROLLLOCK} |
Tab | {TAB} |
↑ | {UP} |
F1 から F15 | {F1} から {F15} |
プロジェクトの種類別の可用性
プロジェクトの種類 | 使用可能 |
---|---|
Windows アプリケーション | はい |
クラス ライブラリ | はい |
コンソール アプリケーション | はい |
Windows コントロール ライブラリ | はい |
Web コントロール ライブラリ | いいえ |
Windows サービス | はい |
Web サイト | いいえ |
こちらもご覧ください
- Computer
- Send(String)
- SendWait(String)
- オブジェクト (Visual Basic)
- キーボードへのアクセス (Visual Basic)
- チュートリアル: Windows API の呼び出し
適用対象
.NET