Sign in to follow this  
Followers 0
Greek

cout and cin in Autoit?

9 posts in this topic

Never saw this for AutoIt,

Can someone make me an example for this with the Dos Console?

Enter your Name:

Greek

Your Name is Greek

Thanks Greek

Share this post


Link to post
Share on other sites



ConsoleRead, ConsoleWrite.

Though when compiled and run from a commandprompt, the "ConsoleRead" won't work as expected, though it will work in the Scite ouput pane.

http://www.autoitscript.com/forum/index.php?showtopic=72563

Share this post


Link to post
Share on other sites

#3 ·  Posted (edited)

You can use the FileOpen method shown here :

http://www.autoitscript.com/forum/index.php?showtopic=79275&st=0&p=571658&#entry571658

#Region ;**** Directives created by AutoIt3Wrapper_GUI ****
#AutoIt3Wrapper_UseUpx=n
#AutoIt3Wrapper_Change2CUI=y
#EndRegion ;**** Directives created by AutoIt3Wrapper_GUI ****

$maxchr = 123
$input = ""

ConsoleWrite(@CRLF&"Enter your Name:"&@CRLF)

$file = FileOpen("con", 4)
$line = BinaryToString(FileRead($file, $maxchr))
FileClose($file)

ConsoleWrite("Your name is: " & $line & @CRLF)

Sleep(2000) ; I put a sleep here, so you don't have to run it from the cmd to see the output

P.S.: Of course it's much easier to use InputBox and MsgBox :D

Edited by Inverted

Share this post


Link to post
Share on other sites

That would have been handy a year and a half ago.

Share this post


Link to post
Share on other sites

You can use the FileOpen method shown here :

http://www.autoitscript.com/forum/index.php?showtopic=79275&st=0&p=571658&#entry571658

#Region ;**** Directives created by AutoIt3Wrapper_GUI ****
#AutoIt3Wrapper_UseUpx=n
#AutoIt3Wrapper_Change2CUI=y
#EndRegion ;**** Directives created by AutoIt3Wrapper_GUI ****

$maxchr = 123
$input = ""

ConsoleWrite(@CRLF&"Enter your Name:"&@CRLF)

$file = FileOpen("con", 4)
$line = BinaryToString(FileRead($file, $maxchr))
FileClose($file)

ConsoleWrite("Your name is: " & $line & @CRLF)

Sleep(2000) ; I put a sleep here, so you don't have to run it from the cmd to see the output

P.S.: Of course it's much easier to use InputBox and MsgBox :D

I Compile it and run it, but nothing to see there?

Share this post


Link to post
Share on other sites

You need to compile as a console application (select compile with options)

If you haven't got that option, then you need to downlod the full Scite ! (from the main page)

Share this post


Link to post
Share on other sites

Create CUI instead GUI ist already checked.

Share this post


Link to post
Share on other sites

Create CUI instead GUI ist already checked.

Run it from a command prompt, what happens ?

Share this post


Link to post
Share on other sites

Nice trick, Inverted. Thanks for sharing.

Just did a little function to help with this:

Func _ConsoleRead($StripCRLF=1) ;If called with no parameters, it returns the user input stripped from CRLF, which should be the expected behaviour.
    Local $maxchr = 123
    Local $file = FileOpen("con", 4)
    Switch $StripCRLF
        Case 1
            Return StringReplace(BinaryToString(FileRead($file, $maxchr)),@CRLF,"")
        Case 0
            Return BinaryToString(FileRead($file, $maxchr))
    EndSwitch
    FileClose($file)
EndFunc   ;==>_ConsoleRead

For Greek:

#Region ;**** Directives created by AutoIt3Wrapper_GUI ****
#AutoIt3Wrapper_Change2CUI=y
#EndRegion ;**** Directives created by AutoIt3Wrapper_GUI ****

ConsoleWrite("Enter your Name:" & @CRLF)
$name = _ConsoleRead()
ConsoleWrite("Your name is " & $name)

Func _ConsoleRead($StripCRLF=1) ;If called with no parameters, it returns the user input stripped from CRLF, which should be the expected behaviour.
    Local $maxchr = 123
    Local $file = FileOpen("con", 4)
    Switch $StripCRLF
        Case 1
            Return StringReplace(BinaryToString(FileRead($file, $maxchr)),@CRLF,"")
        Case 0
            Return BinaryToString(FileRead($file, $maxchr))
    EndSwitch
    FileClose($file)
EndFunc   ;==>_ConsoleRead

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!


Register a new account

Sign in

Already have an account? Sign in here.


Sign In Now
Sign in to follow this  
Followers 0