Function Reference

ConsoleRead

AutoItスクリプトプロセスのSTDINストリームを読み取ります。

ConsoleRead ( [peek = false[, binary = false ]])

 

パラメータ

peek [オプション] trueの場合、読み込んだ文字をストリームから削除しません。
binary [オプション] trueの場合、データをテキストではなくバイナリとして読み取ります(デフォルトはテキスト)。

 

返し値

成功 読み取ったデータを返します。@extendedには読み取ったバイト数が格納されます。
失敗 EOFに到達すると@errorを非ゼロ値に設定します。STDINはプロセス、他のエラーとは関連していません

 

注意

ConsoleReadはAutoItスクリプトプロセスのコンソール標準入力ストリームから読み込みます。これは普通、コンソールアプリケーションが親プロセスの入力を読み込むために使われるものです。
ConsoleReadは処理を止めず直ちに返ります。全てのデータを取得するにはループ内で呼ぶ必要があります。
ストリームのPeekではバッファからデータが削除されませんが、通常の利用可能なデータが返されます。
デフォルトではデータはテキストフォーマットで返されます。binaryオプションを使うことでデータをバイナリ形式で返すことができます。

 

関連

ConsoleWrite, ConsoleWriteError, Run

 


; このスクリプトを"ConsoleRead.exe"にコンパイルする.
; コマンドプロンプトでConsoleRead.exeがあるディレクトリを開く
; 次のコマンドラインを打ち込む:
;   echo Hello! | ConsoleRead.exe
;
; コンソールウィンドウで入力すると上のコマンドは"Hello!"というテキストをechoするが
; 表示するはされない。|によってコンソールはそれを
; ConsoleRead.exeプロセスのSTDINストリームにパイプする。
If Not @Compiled Then
    MsgBox(0, "", "This script must be compiled in order to properly demonstrate it's functionality.")
    Exit -1
EndIf

Local $data
While True
    $data &= ConsoleRead()
    If @error Then ExitLoop
    Sleep(25)
WEnd
MsgBox(0, "", "Received: " & @CRLF & @CRLF & $data)