Function Reference

ConsoleRead

Read from the STDIN stream of the AutoIt script process.

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

 

Parameters

peek [optional] If true the function does not remove the read characters from the stream.
binary [optional] If true the function reads the data as binary instead of text (default is text).

 

Return Value

Success: Returns the data read. @extended contains the number of bytes read.
Failure: Sets @error to non-zero if EOF is reached, STDIN is not connected for the process or other error.

 

Remarks

ConsoleRead reads from the console standard input stream of the AutoIt script process, which is normally used by console applications to read input from a parent process.
ConsoleRead does not block, it will return immediately. In order to get all data, it must be called in a loop.
Peeking on the stream does not remove the data from the buffer, however, it does return the available data as normal.
By default, data is returned in text format. By using the binary option, the data will be returned in binary format.

 

Related

ConsoleWrite, ConsoleWriteError, Run

 

Example


; Compile this script to "ConsoleRead.exe".
; Open a command prompt to the directory where ConsoleRead.exe resides.
; Type the following on the command line:
;   echo Hello! | ConsoleRead.exe
;
; When invoked in a console window, the above command echos the text "Hello!"
; but instead of dispalying it, the | tells the console to pipe it to the STDIN stream
; of the ConsoleRead.exe process.
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)