2016-01-13 43 views
4

我想在AutoIt中向控制檯/ Windows命令提示符寫入文本。我做了如下所示的測試腳本:打印到控制檯/命令提示符

Func Test() 
    ConsoleWrite("Hello") 
EndFunc 

Test() 

我將腳本保存爲test.au3。當我運行它時,它不會打印到控制檯。我查了ConsoleWrite();如果腳本編譯爲控制檯應用程序,它應該打印到DOS控制檯。

我使用Aut2Exe編譯腳本。它仍然不打印到控制檯。我如何在AutoIt中寫入控制檯?

+1

你在使用SciTE4AutoIt3嗎? – Matt

+0

馬特是正確的,當你在SciTE中運行你的腳本時,你將在下面有一個控制檯輸出。 – Samoth

回答

4

只需編譯test.au3這樣的:

%PathToAutoItVersion%\Aut2Exe\Aut2exe.exe /in test.au3 /out test.exe /console 

然後你就可以運行test.exe,它會打印出:

hello 
4

您也可以在下面的編譯器開關添加到頂部您的腳本:

#pragma compile(Console, True) 
0

如何在AutoIt中寫入控制檯?

作爲每Documentation - Function Reference - ConsoleWrite()

此功能的目的是要寫入到STDOUT流中。 …編譯爲控制檯應用程序的腳本也具有STDOUT流。

保存腳本.au3文件,然後:

  • 按F5 編輯器(工具> GO)。控制檯輸出將被顯示在編輯器的下部窗格:

    enter image description here

  • ,或者按Ctrl鍵+ F7 (工具>編譯),使Create CUI instead of GUI EXE.,然後單擊Compile Script並運行生成的可執行文件。

  • 或添加#AutoIt3Wrapper_Change2CUI=Yor#pragma compile(Console, True)to top of script,然後按F7(工具>生成),然後運行生成的可執行文件。
  • 或執行:
    ...\AutoIt3\Aut2Exe\Aut2exe.exe /in ...\script.au3 /out ...\script.exe /console
    並運行生成的可執行文件。

我使用Aut2Exe編譯腳本。它仍然不打印到控制檯。

對於已編譯的腳本,控制檯窗口在運行時僅可見。例如:

#AutoIt3Wrapper_Change2CUI=Y 

Global Enum $EXITCODE_OK 
Global Const $g_sMsg = 'Hello, World!' & @CRLF 
Global Const $g_iDelay = 1000 * 10 

Main() 

Func Main() 

    ConsoleWrite($g_sMsg) 
    Sleep($g_iDelay) 

    Exit $EXITCODE_OK 
EndFunc 

相關:Console and graphical user interface