MadaraUchiha Posted November 30, 2013 Author Share Posted November 30, 2013 ok... But how can I grab, for example if I use PincoPanco's Example, the output after all data/information was listed? Link to comment Share on other sites More sharing options...
UEZ Posted November 30, 2013 Share Posted November 30, 2013 I did something similar here: CD not implemented yet. Br, UEZ Please don't send me any personal message and ask for support! I will not reply! Selection of finest graphical examples at Codepen.io The own fart smells best! ✌Her 'sikim hıyar' diyene bir avuç tuz alıp koşma!¯\_(ツ)_/¯ ٩(●̮̮̃•̃)۶ ٩(-̮̮̃-̃)۶ૐ Link to comment Share on other sites More sharing options...
johnmcloud Posted November 30, 2013 Share Posted November 30, 2013 (edited) So many examples so i'll put mine: expandcollapse popup#include <WindowsConstants.au3> #include <GUIConstantsEx.au3> #include <EditConstants.au3> #include <Constants.au3> #include <GuiEdit.au3> #include <Misc.au3> Global $SEND_Line = "", $DOS, $hDLL = DllOpen("user32.dll") $hGUI = GUICreate("C:\WINDOWS\system32\cmd.exe", 600, 300, -1, -1) $hEdit = GUICtrlCreateEdit("johnmcloud TEST Version" & @CRLF & @CRLF, 0, 0, 600, 300, BitOR($WS_VSCROLL, $ES_AUTOVSCROLL, $ES_WANTRETURN)) GUICtrlSetFont(-1, 10, 400, 0, "Lucida Console") GUICtrlSetBkColor(-1, 0x000000) GUICtrlSetColor(-1, 0xFFFFFF) GUISetState(@SW_SHOW) $DOS = Run(@ComSpec, "", @SW_HIDE, $STDERR_CHILD + $STDOUT_CHILD + $STDIN_CHILD) While 1 $nMsg = GUIGetMsg() Switch $nMsg Case $GUI_EVENT_CLOSE Exit EndSwitch $DOS_Stdout = Oem2Ansi(StdoutRead($DOS)) $DOS_Stderr = Oem2Ansi(StderrRead($DOS)) $TMP_Line = GUICtrlRead($hEdit) If $DOS_Stdout Or $DOS_Stderr Then If $DOS_Stdout <> $SEND_Line Then If StringLen($DOS_Stderr) > 0 Then $DOS_Stdout = StringSplit($DOS_Stdout, @CRLF) _GUICtrlEdit_AppendText($hEdit, $DOS_Stderr & @CRLF & $DOS_Stdout[5]) Else _GUICtrlEdit_AppendText($hEdit, $DOS_Stdout) EndIf Else If $DOS_Stderr <> $SEND_Line Then _GUICtrlEdit_AppendText($hEdit, $DOS_Stderr) EndIf EndIf If _IsPressed("0D", $hDLL) Then $SEND_Line = StringMid($TMP_Line, StringInStr($TMP_Line, @CRLF, 0, -2)) $SEND_Line = StringMid($SEND_Line, StringInStr($SEND_Line, ">") + 1) StdinWrite($DOS, $SEND_Line) Sleep(200) EndIf WEnd ProcessClose($DOS) Func Oem2Ansi($Text) Local $aText = DllCall("user32.dll", "Int", "OemToChar", "str", $text, "str", "") Return $aText[2] EndFunc ;==>Oem2Ansi It's not perfect but have want the OP like, the copyright Edited November 30, 2013 by johnmcloud MadaraUchiha 1 Link to comment Share on other sites More sharing options...
Gianni Posted November 30, 2013 Share Posted November 30, 2013 (edited) >in this post there is a test I posted to experiment, with some explanation. Edit: sorry, wrong link I mean >this one Edited November 30, 2013 by PincoPanco Chimp small minds discuss people average minds discuss events great minds discuss ideas.... and use AutoIt.... Link to comment Share on other sites More sharing options...
MadaraUchiha Posted November 30, 2013 Author Share Posted November 30, 2013 So many examples so i'll put mine: expandcollapse popup#include <WindowsConstants.au3> #include <GUIConstantsEx.au3> #include <EditConstants.au3> #include <Constants.au3> #include <GuiEdit.au3> #include <Misc.au3> Global $SEND_Line = "", $DOS, $hDLL = DllOpen("user32.dll") $hGUI = GUICreate("C:\WINDOWS\system32\cmd.exe", 600, 300, -1, -1) $hEdit = GUICtrlCreateEdit("johnmcloud TEST Version" & @CRLF & @CRLF, 0, 0, 600, 300, BitOR($WS_VSCROLL, $ES_AUTOVSCROLL, $ES_WANTRETURN)) GUICtrlSetFont(-1, 10, 400, 0, "Lucida Console") GUICtrlSetBkColor(-1, 0x000000) GUICtrlSetColor(-1, 0xFFFFFF) GUISetState(@SW_SHOW) $DOS = Run(@ComSpec, "", @SW_HIDE, $STDERR_CHILD + $STDOUT_CHILD + $STDIN_CHILD) While 1 $nMsg = GUIGetMsg() Switch $nMsg Case $GUI_EVENT_CLOSE Exit EndSwitch $DOS_Stdout = StdoutRead($DOS) $DOS_Stderr = StderrRead($DOS) $TMP_Line = GUICtrlRead($hEdit) If $DOS_Stdout Or $DOS_Stderr Then If $DOS_Stdout <> $SEND_Line Then If StringLen($DOS_Stderr) > 0 Then $DOS_Stdout = StringSplit($DOS_Stdout, @CRLF) _GUICtrlEdit_AppendText($hEdit, $DOS_Stderr & @CRLF & $DOS_Stdout[5]) Else _GUICtrlEdit_AppendText($hEdit, $DOS_Stdout) EndIf Else If $DOS_Stderr <> $SEND_Line Then _GUICtrlEdit_AppendText($hEdit, $DOS_Stderr) EndIf EndIf If _IsPressed("0D", $hDLL) Then $SEND_Line = StringMid($TMP_Line, StringInStr($TMP_Line, @CRLF, 0, -2)) $SEND_Line = StringMid($SEND_Line, StringInStr($SEND_Line, ">") + 1) StdinWrite($DOS, $SEND_Line) Sleep(200) EndIf WEnd ProcessClose($DOS) It's not perfect but have want the OP like, the copyright Hey, thats exactly how it is supposed to look like One last thing I stuck with, is the readonly part. I know I can set the Edit to readonly but thats not how it should work. I only want specific parts to be read only. So, I can't delete the Output. But I still need to be able to input sth. So everything before outputing is readonly, but I still I need to input new commands. I hope you understand my point? How can I achieve this? Link to comment Share on other sites More sharing options...
johnmcloud Posted November 30, 2013 Share Posted November 30, 2013 (edited) @MadaraUchica maybe something like this example? expandcollapse popup#include <EditConstants.au3> #include <GUIConstantsEx.au3> #include <WindowsConstants.au3> #include <GuiEdit.au3> HotKeySet("{BACKSPACE}", "_Backspace") $hGUI = GUICreate("johnmcloud - write in a readonly editbox!", 297, 242, 241, 169) $hInput = GUICtrlCreateInput("", 8, 216, 121, 21) GUICtrlSetState(-1, $GUI_HIDE) $hEdit = GUICtrlCreateEdit("Try to write: ", 8, 8, 281, 201, $ES_READONLY) GUISetState(@SW_SHOW) $hOldText = GUICtrlRead($hInput) While 1 $nMsg = GUIGetMsg() Switch $nMsg Case $GUI_EVENT_CLOSE Exit EndSwitch $hCurrText = GUICtrlRead($hInput) If $hOldText <> $hCurrText Then _GUICtrlEdit_AppendText($hEdit, StringRight($hCurrText, 1)) $hOldText = $hCurrText EndIf If ControlGetHandle($hGUI, "", ControlGetFocus($hGUI)) <> GUICtrlGetHandle($hInput) Then GUICtrlSetState($hInput, $GUI_FOCUS) EndIf WEnd Func _Backspace() $Temp = GUICtrlRead($hEdit) If StringRight(GUICtrlRead($hEdit), 2) <> ": " Then GUICtrlSetData($hEdit, StringTrimRight($Temp, 1)) EndIf EndFunc ;==>_Backspace Edited November 30, 2013 by johnmcloud Link to comment Share on other sites More sharing options...
Gianni Posted November 30, 2013 Share Posted November 30, 2013 (edited) ... mixing the listings .... expandcollapse popup#include <ButtonConstants.au3> #include <EditConstants.au3> #include <GUIConstantsEx.au3> #include <WindowsConstants.au3> #include <Constants.au3> #include <GuiEdit.au3> #include <Misc.au3> Global $hDLL = DllOpen("user32.dll") $Form1 = GUICreate("Command Prompt", 491, 318, 192, 124, BitOR($GUI_SS_DEFAULT_GUI, $DS_MODALFRAME)) $Console = GUICtrlCreateEdit("", 8, 8, 473, 278, BitOR($ES_AUTOVSCROLL, $ES_WANTRETURN, $WS_VSCROLL, $ES_READONLY)) GUICtrlSetColor(-1, 0x00FF00) ; color of font (green) GUICtrlSetBkColor(-1, 0x000000) ; Color of background (black) GUICtrlSetFont(-1, 9, 0, 0, "Lucida Console") $Input1 = GUICtrlCreateInput("", 8, 285, 473, 21) GUICtrlSetColor(-1, 0x00FF00) GUICtrlSetBkColor(-1, 0x000000) GUICtrlSetFont(-1, 9, 0, 0, "Lucida Console") ControlFocus("", "", -1) GUISetState(@SW_SHOW) Global $CMD = Run(@ComSpec, "", @SW_HIDE, $STDIN_CHILD + $STDERR_MERGED) Func RemoteConsole() ; $CommandToSend) Local $sStdOut = StdoutRead($CMD) If $sStdOut <> '' Then _GUICtrlEdit_AppendText($Console, $sStdOut) EndIf EndFunc ;==>RemoteConsole While 1 $nMsg = GUIGetMsg() Switch $nMsg Case $GUI_EVENT_CLOSE Exit EndSwitch If _IsPressed("0D", $hDLL) Then StdinWrite($CMD, GUICtrlRead($Input1) & @CRLF) _GUICtrlEdit_SetText($Input1, "") _GUICtrlEdit_SetText($Console, "") ; Clear the screen Sleep(200) EndIf RemoteConsole() WEnd Edited November 30, 2013 by PincoPanco Chimp small minds discuss people average minds discuss events great minds discuss ideas.... and use AutoIt.... Link to comment Share on other sites More sharing options...
BrewManNH Posted November 30, 2013 Share Posted November 30, 2013 Just a piece of advice, there's no need to use "$STDOUT_CHILD + $STDERR_CHILD" and also use "$STDERR_MERGED" because merged is the combination of the first 2. In fact, the way you used + between them all, you've actually set the final parameter to 15 instead of 9 which is what you probably wanted. If I posted any code, assume that code was written using the latest release version unless stated otherwise. Also, if it doesn't work on XP I can't help with that because I don't have access to XP, and I'm not going to.Give a programmer the correct code and he can do his work for a day. Teach a programmer to debug and he can do his work for a lifetime - by Chirag GudeHow to ask questions the smart way! I hereby grant any person the right to use any code I post, that I am the original author of, on the autoitscript.com forums, unless I've specifically stated otherwise in the code or the thread post. If you do use my code all I ask, as a courtesy, is to make note of where you got it from. Back up and restore Windows user files _Array.au3 - Modified array functions that include support for 2D arrays. - ColorChooser - An add-on for SciTE that pops up a color dialog so you can select and paste a color code into a script. - Customizable Splashscreen GUI w/Progress Bar - Create a custom "splash screen" GUI with a progress bar and custom label. - _FileGetProperty - Retrieve the properties of a file - SciTE Toolbar - A toolbar demo for use with the SciTE editor - GUIRegisterMsg demo - Demo script to show how to use the Windows messages to interact with controls and your GUI. - Latin Square password generator Link to comment Share on other sites More sharing options...
Gianni Posted November 30, 2013 Share Posted November 30, 2013 Just a piece of advice, there's no need to use "$STDOUT_CHILD + $STDERR_CHILD" and also use "$STDERR_MERGED" because merged is the combination of the first 2. In fact, the way you used + between them all, you've actually set the final parameter to 15 instead of 9 which is what you probably wanted. OK Thanks Chimp small minds discuss people average minds discuss events great minds discuss ideas.... and use AutoIt.... Link to comment Share on other sites More sharing options...
MadaraUchiha Posted November 30, 2013 Author Share Posted November 30, 2013 expandcollapse popup#include <WindowsConstants.au3> #include <GUIConstantsEx.au3> #include <EditConstants.au3> #include <Constants.au3> #include <GuiEdit.au3> #include <Misc.au3> Global $SEND_Line = "", $DOS, $hDLL = DllOpen("user32.dll") $hGUI = GUICreate("Command Prompt", 600, 326, -1, -1) $hEdit = GUICtrlCreateEdit('', 0, 0, 600, 297, BitOR($WS_VSCROLL, $ES_AUTOVSCROLL, $ES_WANTRETURN,$ES_READONLY)) GUICtrlSetFont(-1, 10, 400, 0, "Lucida Console") GUICtrlSetBkColor(-1, 0x000000) GUICtrlSetColor(-1, 0xFFFFFF) $Input1 = GUICtrlCreateInput("", 104, 299, 483, 21) GUICtrlSetColor(-1, 0xFFFFFF) GUICtrlSetBkColor(-1, 0x000000) $Button1 = GUICtrlCreateButton("Send", 8, 297, 91, 25) GUISetState(@SW_SHOW) $DOS = Run(@ComSpec, "", @SW_HIDE, $STDERR_CHILD + $STDOUT_CHILD + $STDIN_CHILD) While 1 $nMsg = GUIGetMsg() Switch $nMsg Case $GUI_EVENT_CLOSE Exit Case $Button1 MsgBox(0,'',GuiCtrlRead($Input1)) StdinWrite($DOS, GuiCtrlRead($Input1)) Sleep(200) $DOS_Stdout = StdoutRead($DOS) $DOS_Stderr = StderrRead($DOS) $TMP_Line = GUICtrlRead($hEdit) If $DOS_Stdout Or $DOS_Stderr Then If $DOS_Stdout <> $SEND_Line Then If StringLen($DOS_Stderr) > 0 Then $DOS_Stdout = StringSplit($DOS_Stdout, @CRLF) _GUICtrlEdit_AppendText($hEdit, $DOS_Stderr & @CRLF & $DOS_Stdout[5]) Else _GUICtrlEdit_AppendText($hEdit, $DOS_Stdout) EndIf Else If $DOS_Stderr <> $SEND_Line Then _GUICtrlEdit_AppendText($hEdit, $DOS_Stderr) EndIf EndIf EndSwitch WEnd ProcessClose($DOS) I am trying to modify the code of johnmcloud because his code is working well. But instead of directly writing into the console, I decided to add a little Input Component to enter my commands. When I hit the "Send" Button, The copyright pops up in the Main TextBox, but my commands don't arrive? Why is that? Link to comment Share on other sites More sharing options...
MadaraUchiha Posted November 30, 2013 Author Share Posted November 30, 2013 After some cleanup the problem is stil lthe same... expandcollapse popup#include <WindowsConstants.au3> #include <GUIConstantsEx.au3> #include <EditConstants.au3> #include <Constants.au3> #include <GuiEdit.au3> #include <Misc.au3> $hGUI = GUICreate("Command Prompt", 600, 326, -1, -1) $hEdit = GUICtrlCreateEdit('', 0, 0, 600, 297, BitOR($WS_VSCROLL, $ES_AUTOVSCROLL, $ES_WANTRETURN,$ES_READONLY)) GUICtrlSetFont(-1, 10, 400, 0, "Lucida Console") GUICtrlSetBkColor(-1, 0x000000) GUICtrlSetColor(-1, 0xFFFFFF) $Input1 = GUICtrlCreateInput("", 104, 299, 483, 21) GUICtrlSetColor(-1, 0xFFFFFF) GUICtrlSetBkColor(-1, 0x000000) $Button1 = GUICtrlCreateButton("Send", 8, 297, 91, 25) GUISetState(@SW_SHOW) $DOS = Run(@ComSpec, "", @SW_HIDE, $STDERR_CHILD + $STDOUT_CHILD + $STDIN_CHILD) While 1 $nMsg = GUIGetMsg() Switch $nMsg Case $GUI_EVENT_CLOSE Exit Case $Button1 MsgBox(0,'inpuT 1',GuiCtrlRead($Input1)) $DOSo = StdinWrite($DOS, GuiCtrlRead($Input1)) Sleep(200) $DOS_Stdout = StdoutRead($DOSo) $DOS_Stderr = StdoutRead($DOSo) MsgBox(0,'stdout',$DOS_Stdout) If $DOS_Stdout Or $DOS_Stderr Then If $DOS_Stdout <> '' Then If StringLen($DOS_Stderr) > 0 Then $DOS_Stdout = StringSplit($DOS_Stdout, @CRLF) _GUICtrlEdit_AppendText($hEdit, $DOS_Stderr & @CRLF & $DOS_Stdout) Else _GUICtrlEdit_AppendText($hEdit, $DOS_Stdout) EndIf Else If $DOS_Stderr <> '' Then _GUICtrlEdit_AppendText($hEdit, $DOS_Stderr) EndIf EndIf EndSwitch WEnd ProcessClose($DOS) The second msgbox show at first run the output (the copyright), but if I send a command like dir C: it shows me an empty msgbox. Does the command not arrive in the console? ;o Link to comment Share on other sites More sharing options...
Beege Posted November 30, 2013 Share Posted November 30, 2013 Your reading from the wrong handle. Also you would need a @crlf in your stdinwrite $DOSo = StdinWrite($DOS, GuiCtrlRead($Input1) & @CRLF) Sleep(200) $DOS_Stdout = StdoutRead($DOS) $DOS_Stderr = StdoutRead($DOS) Assembly Code: fasmg . fasm . BmpSearch . Au3 Syntax Highlighter . Bounce Multithreading Example . IDispatchASMUDFs: Explorer Frame . ITaskBarList . Scrolling Line Graph . Tray Icon Bar Graph . Explorer Listview . Wiimote . WinSnap . Flicker Free Labels . iTunesPrograms: Ftp Explorer . Snipster . Network Meter . Resistance Calculator Link to comment Share on other sites More sharing options...
MHz Posted December 1, 2013 Share Posted December 1, 2013 Try this version. It checks what may be in the buffer while looping when Case Else is actioned. #include <WindowsConstants.au3> #include <GUIConstantsEx.au3> #include <EditConstants.au3> #include <Constants.au3> #include <GuiEdit.au3> #include <Misc.au3> #include <ButtonConstants.au3> $hGUI = GUICreate("Command Prompt", 600, 326) $hEdit = GUICtrlCreateEdit('', 0, 0, 600, 297, BitOR($WS_VSCROLL, $ES_AUTOVSCROLL, $ES_WANTRETURN, $ES_READONLY)) GUICtrlSetFont(-1, 10, 400, 0, "Lucida Console") GUICtrlSetBkColor(-1, 0x000000) GUICtrlSetColor(-1, 0xFFFFFF) $Input1 = GUICtrlCreateInput("", 104, 299, 483, 21) GUICtrlSetColor(-1, 0xFFFFFF) GUICtrlSetBkColor(-1, 0x000000) $Button1 = GUICtrlCreateButton("Send", 8, 297, 91, 25, $BS_DEFPUSHBUTTON) GUISetState(@SW_SHOW) $DOS = Run('"' & @ComSpec & '"', '', @SW_HIDE, $STDERR_MERGED + $STDIN_CHILD) While ProcessExists($DOS) $nMsg = GUIGetMsg() Switch $nMsg Case $GUI_EVENT_CLOSE StdInWrite($DOS, 'Exit' & @CRLF) ProcessWaitClose($DOS) Case $Button1 StdinWrite($DOS, GuiCtrlRead($Input1) & @CRLF) GUICtrlSetData($Input1, '') Case Else If StdoutRead($DOS, True) Then GUICtrlSetData($hEdit, StdoutRead($DOS), True) EndSwitch WEnd Seems to be working ok. MadaraUchiha 1 Link to comment Share on other sites More sharing options...
MadaraUchiha Posted December 1, 2013 Author Share Posted December 1, 2013 Try this version. It checks what may be in the buffer while looping when Case Else is actioned. #include <WindowsConstants.au3> #include <GUIConstantsEx.au3> #include <EditConstants.au3> #include <Constants.au3> #include <GuiEdit.au3> #include <Misc.au3> #include <ButtonConstants.au3> $hGUI = GUICreate("Command Prompt", 600, 326) $hEdit = GUICtrlCreateEdit('', 0, 0, 600, 297, BitOR($WS_VSCROLL, $ES_AUTOVSCROLL, $ES_WANTRETURN, $ES_READONLY)) GUICtrlSetFont(-1, 10, 400, 0, "Lucida Console") GUICtrlSetBkColor(-1, 0x000000) GUICtrlSetColor(-1, 0xFFFFFF) $Input1 = GUICtrlCreateInput("", 104, 299, 483, 21) GUICtrlSetColor(-1, 0xFFFFFF) GUICtrlSetBkColor(-1, 0x000000) $Button1 = GUICtrlCreateButton("Send", 8, 297, 91, 25, $BS_DEFPUSHBUTTON) GUISetState(@SW_SHOW) $DOS = Run('"' & @ComSpec & '"', '', @SW_HIDE, $STDERR_MERGED + $STDIN_CHILD) While ProcessExists($DOS) $nMsg = GUIGetMsg() Switch $nMsg Case $GUI_EVENT_CLOSE StdInWrite($DOS, 'Exit' & @CRLF) ProcessWaitClose($DOS) Case $Button1 StdinWrite($DOS, GuiCtrlRead($Input1) & @CRLF) GUICtrlSetData($Input1, '') Case Else If StdoutRead($DOS, True) Then GUICtrlSetData($hEdit, StdoutRead($DOS), True) EndSwitch WEnd Seems to be working ok. Hey, thats not just okay, thats very good. The last problem is to get the output in a messagebox after all data was listed. So, if I send the command ping www.google.com it makes 4 ping requests and then display the result (packages send, lost, recieved etc) I want all this stuff popup in a messagebox, but after stdout has read all info! U know what I mean? ^^ Link to comment Share on other sites More sharing options...
MadaraUchiha Posted December 1, 2013 Author Share Posted December 1, 2013 If I just use stdout it gives me the last outout line but not all? :s Link to comment Share on other sites More sharing options...
Solution MHz Posted December 1, 2013 Solution Share Posted December 1, 2013 I added a limit to what is put into the edit control as it can only do 30000 characters and then accepts no more. So, only approximately last 15000 is kept. Added CLS to clear the edit control. Added $tail variable to keep output of last command as you mention about ping.... Try this and see if it suits your interest. expandcollapse popup#include <WindowsConstants.au3> #include <GUIConstantsEx.au3> #include <EditConstants.au3> #include <Constants.au3> #include <GuiEdit.au3> #include <Misc.au3> #include <ButtonConstants.au3> $hGUI = GUICreate("Command Prompt", 600, 326) $hEdit = GUICtrlCreateEdit('', 0, 0, 600, 297, BitOR($WS_VSCROLL, $ES_AUTOVSCROLL, $ES_WANTRETURN, $ES_READONLY)) GUICtrlSetFont(-1, 10, 400, 0, "Lucida Console") GUICtrlSetBkColor(-1, 0x000000) GUICtrlSetColor(-1, 0xFFFFFF) $Input1 = GUICtrlCreateInput("", 104, 299, 483, 21) GUICtrlSetColor(-1, 0xFFFFFF) GUICtrlSetBkColor(-1, 0x000000) $Button1 = GUICtrlCreateButton("Send", 8, 297, 91, 25, $BS_DEFPUSHBUTTON) GUISetState(@SW_SHOW) $DOS = Run('"' & @ComSpec & '"', '', @SW_HIDE, $STDERR_MERGED + $STDIN_CHILD) Global $tail While ProcessExists($DOS) $nMsg = GUIGetMsg() Switch $nMsg Case $GUI_EVENT_CLOSE StdInWrite($DOS, 'Exit' & @CRLF) ProcessWaitClose($DOS) Case $Button1 ; clear screen using cls Switch GuiCtrlRead($Input1) Case 'cls' GUICtrlSetData($hEdit, '') GUICtrlSetData($Input1, '') ContinueLoop EndSwitch ; write in command StdinWrite($DOS, GuiCtrlRead($Input1) & @CRLF) ; clear input ctrl GUICtrlSetData($Input1, '') ; clear tail of stdout data $tail = '' Case Else ; get output from command $Stdout = StdoutRead($DOS) If @extended Then ; add to tail $tail &= $Stdout ; read edit ctrl $sEdit = GUICtrlRead($hEdit) ; limit size in edit to prevent reaching full limit If StringLen($sEdit) > 15000 Then GUICtrlSetData($hEdit, StringRight($sEdit, 15000)) EndIf ; append stdout to edit ctrl GUICtrlSetData($hEdit, $Stdout, True) ElseIf StringRight($tail, 1) = '>' Then ; show out of tail when > is found at the end MsgBox(0, 'tail', $tail) $tail = '' EndIf EndSwitch WEnd MadaraUchiha 1 Link to comment Share on other sites More sharing options...
MadaraUchiha Posted December 1, 2013 Author Share Posted December 1, 2013 Yes, thanks MHZ, thats what I wanted. You solved my problem.^^ Link to comment Share on other sites More sharing options...
iahngy Posted February 28, 2014 Share Posted February 28, 2014 what does @extended do ? Link to comment Share on other sites More sharing options...
water Posted February 28, 2014 Share Posted February 28, 2014 Depends on the function. The help file for the function explains what @extended is being used for. My UDFs and Tutorials: Spoiler UDFs: Active Directory (NEW 2024-07-28 - Version 1.6.3.0) - Download - General Help & Support - Example Scripts - Wiki ExcelChart (2017-07-21 - Version 0.4.0.1) - Download - General Help & Support - Example Scripts OutlookEX (2021-11-16 - Version 1.7.0.0) - Download - General Help & Support - Example Scripts - Wiki OutlookEX_GUI (2021-04-13 - Version 1.4.0.0) - Download Outlook Tools (2019-07-22 - Version 0.6.0.0) - Download - General Help & Support - Wiki PowerPoint (2021-08-31 - Version 1.5.0.0) - Download - General Help & Support - Example Scripts - Wiki Task Scheduler (2022-07-28 - Version 1.6.0.1) - Download - General Help & Support - Wiki Standard UDFs: Excel - Example Scripts - Wiki Word - Wiki Tutorials: ADO - Wiki WebDriver - Wiki Link to comment Share on other sites More sharing options...
Gianni Posted February 28, 2014 Share Posted February 28, 2014 (edited) in >this case @extended is related to previous statement StdoutRead($DOS) and contains the number of characters returned from StdoutRead (or 0 if none are returned) see "Return Value" in help file for StdoutRead Edited February 28, 2014 by PincoPanco Chimp small minds discuss people average minds discuss events great minds discuss ideas.... and use AutoIt.... Link to comment Share on other sites More sharing options...
Recommended Posts
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 accountSign in
Already have an account? Sign in here.
Sign In Now