#544 closed Bug (No Bug)
Read from console with FileRead
| Reported by: | paulpmeier | Owned by: | |
|---|---|---|---|
| Milestone: | Component: | Documentation | |
| Version: | 3.2.12.0 | Severity: | None | 
| Keywords: | Cc: | 
Description
The description of this feature I missed in the AutoIt Help:
FileOpen("con", 4) opens console for binary input.
#AutoIt3Wrapper_Change2CUI=y
$input = ""
ConsoleWrite(@CRLF & "Write some text and close with ENTER: ")
$file = FileOpen("con", 4)
While 1
	$chr = FileRead($file, 1)
	If $chr = @CR Then ExitLoop
	$input = $input & BinaryToString($chr)
WEnd
FileClose($file)
ConsoleWrite(@CRLF & "Input was: " & $input & @CRLF)
Compile as CUI and start the exe-file from console prompt.
(Tested with AutoIt 3.2.12.1 and Windows XP SP2)
Paul
Attachments (0)
Change History (5)
comment:1 follow-up: ↓ 2 Changed 17 years ago by Valik
- Resolution set to No Bug
- Status changed from new to closed
comment:2 in reply to: ↑ 1 Changed 17 years ago by anonymous
Hi Valik,
thank you for your reply. 
Please give me an example. How can I read keystrokes from the console prompt with ConsoleRead?
comment:3 follow-up: ↓ 4 Changed 17 years ago by Valik
You could probably use the C-Runtime function _getch() which is exported from msvcrt.dll.  You could also try out some of the Windows API console-specific functions like ReadConsole() or ReadConsoleInput().  These would, of course, need to be used via DllCall().
comment:4 in reply to: ↑ 3 ; follow-up: ↓ 5 Changed 17 years ago by paulpmeier
Thank you, Valik for this information.
I will try the API-functions.
Paul
comment:5 in reply to: ↑ 4 Changed 17 years ago by paulpmeier
Thank you again, Valik.
I have tested the _getch() function. I didn't know, that it's so easy to use the C-functions in AutoIt.
Paul
Guidelines for posting comments:
- You cannot re-open a ticket but you may still leave a comment if you have additional information to add.
- In-depth discussions should take place on the forum.
For more information see the full version of the ticket guidelines here.


This doesn't need documented. There is a native AutoIt function for doing the same thing so I don't feel that it is necessary for us to document alternate ways.