armoros Posted May 29, 2012 Share Posted May 29, 2012 (edited) Hello my friends I have this script in witch from a Button on Gui i want to execute a cmd command when it opens and execute the command in cmd window, with a second button i want to send a second command in same cmd window. But the problem is that i have to click on the opened cmd window to be activated so the second button to be able to send the 2 command. if you check the script please click first the [ipconfig] button and then the [nbtstat] button cause otherwise don't work. ( my prob is how to have the cmd window activated so to take the 2 command) i know that the script is lame... Thank you in advance. #include #include #include #Region ### START Koda GUI section ### Form= $Form1 = GUICreate("Form1", 637, 120, 192, 114) $Button1 = GUICtrlCreateButton("ipconfig", 40, 90, 75, 25) $Button2 = GUICtrlCreateButton("nbtstat", 40, 50, 75, 25) GUISetState(@SW_SHOW) While 1 $nMsg = GUIGetMsg() Switch $nMsg Case $GUI_EVENT_CLOSE Exit Case $Button1 $cmd = GUICtrlRead($Button1) $pid = Run(@ComSpec & " /k " & $cmd, "") Case $Button2 If WinWaitActive("C:\WINDOWS\system32\cmd.exe") then Send("nbtstat") Send ("{ENTER}") EndSwitch WEnd Edited May 29, 2012 by armoros [font="verdana, geneva, sans-serif"] [/font] Link to comment Share on other sites More sharing options...
Country73 Posted May 29, 2012 Share Posted May 29, 2012 You are waiting for the cmd window to be active instead of setting it to the Active state. Take a look at the WinActive, WinActivate Check to see if it is active: If Active then do this.... If not Active, then Activate the window and do this.... If you try to fail and succeed which have you done?AutoIt Forum Search Link to comment Share on other sites More sharing options...
armoros Posted May 29, 2012 Author Share Posted May 29, 2012 Thank you Country73 i will check and i post back. [font="verdana, geneva, sans-serif"] [/font] Link to comment Share on other sites More sharing options...
armoros Posted May 29, 2012 Author Share Posted May 29, 2012 You are waiting for the cmd window to be active instead of setting it to the Active state. Take a look at the WinActive, WinActivate Check to see if it is active: If Active then do this.... If not Active, then Activate the window and do this.... Yeah that made the trick Country73 thank you my friend for the help... here is what i have after your help #include <ButtonConstants.au3> #include <GUIConstantsEx.au3> #include <WindowsConstants.au3> #Region ### START Koda GUI section ### Form= $Form1 = GUICreate("Form1", 637, 120, 192, 114) $Button1 = GUICtrlCreateButton("ipconfig", 40, 90, 75, 25) $Button2 = GUICtrlCreateButton("nbtstat", 40, 50, 75, 25) GUISetState(@SW_SHOW) While 1 $nMsg = GUIGetMsg() Switch $nMsg Case $GUI_EVENT_CLOSE Exit Case $Button1 $cmd = GUICtrlRead($Button1) $pid = Run(@ComSpec & " /k " & $cmd, "") Case $Button2 If WinActive("C:\Windows\System32\cmd.exe") Then Send("nbtstat") Send ("{ENTER}") EndIf If not WinActive("C:\Windows\System32\cmd.exe") Then WinActivate("C:\Windows\System32\cmd.exe") Send("nbtstat") Send ("{ENTER}") EndIf EndSwitch WEnd Thank you man [font="verdana, geneva, sans-serif"] [/font] Link to comment Share on other sites More sharing options...
Zedna Posted May 29, 2012 Share Posted May 29, 2012 (edited) Little optimization global $cmd = "C:\Windows\System32\cmd.exe" ... Case $Button2 If not WinActive($cmd) Then WinActivate($cmd) WinWaitActive($cmd) EndIf Send("nbtstat{ENTER}") Edited May 29, 2012 by Zedna Resources UDF ResourcesEx UDF AutoIt Forum Search Link to comment Share on other sites More sharing options...
armoros Posted May 29, 2012 Author Share Posted May 29, 2012 Little optimizationThanks Zedna that is much better than mine..... [font="verdana, geneva, sans-serif"] [/font] Link to comment Share on other sites More sharing options...
guinness Posted May 29, 2012 Share Posted May 29, 2012 Why hard code cmd.exe? How about using @ComSpec instead. MsgBox(4096, '', @ComSpec) UDF List: _AdapterConnections() • _AlwaysRun() • _AppMon() • _AppMonEx() • _ArrayFilter/_ArrayReduce • _BinaryBin() • _CheckMsgBox() • _CmdLineRaw() • _ContextMenu() • _ConvertLHWebColor()/_ConvertSHWebColor() • _DesktopDimensions() • _DisplayPassword() • _DotNet_Load()/_DotNet_Unload() • _Fibonacci() • _FileCompare() • _FileCompareContents() • _FileNameByHandle() • _FilePrefix/SRE() • _FindInFile() • _GetBackgroundColor()/_SetBackgroundColor() • _GetConrolID() • _GetCtrlClass() • _GetDirectoryFormat() • _GetDriveMediaType() • _GetFilename()/_GetFilenameExt() • _GetHardwareID() • _GetIP() • _GetIP_Country() • _GetOSLanguage() • _GetSavedSource() • _GetStringSize() • _GetSystemPaths() • _GetURLImage() • _GIFImage() • _GoogleWeather() • _GUICtrlCreateGroup() • _GUICtrlListBox_CreateArray() • _GUICtrlListView_CreateArray() • _GUICtrlListView_SaveCSV() • _GUICtrlListView_SaveHTML() • _GUICtrlListView_SaveTxt() • _GUICtrlListView_SaveXML() • _GUICtrlMenu_Recent() • _GUICtrlMenu_SetItemImage() • _GUICtrlTreeView_CreateArray() • _GUIDisable() • _GUIImageList_SetIconFromHandle() • _GUIRegisterMsg() • _GUISetIcon() • _Icon_Clear()/_Icon_Set() • _IdleTime() • _InetGet() • _InetGetGUI() • _InetGetProgress() • _IPDetails() • _IsFileOlder() • _IsGUID() • _IsHex() • _IsPalindrome() • _IsRegKey() • _IsStringRegExp() • _IsSystemDrive() • _IsUPX() • _IsValidType() • _IsWebColor() • _Language() • _Log() • _MicrosoftInternetConnectivity() • _MSDNDataType() • _PathFull/GetRelative/Split() • _PathSplitEx() • _PrintFromArray() • _ProgressSetMarquee() • _ReDim() • _RockPaperScissors()/_RockPaperScissorsLizardSpock() • _ScrollingCredits • _SelfDelete() • _SelfRename() • _SelfUpdate() • _SendTo() • _ShellAll() • _ShellFile() • _ShellFolder() • _SingletonHWID() • _SingletonPID() • _Startup() • _StringCompact() • _StringIsValid() • _StringRegExpMetaCharacters() • _StringReplaceWholeWord() • _StringStripChars() • _Temperature() • _TrialPeriod() • _UKToUSDate()/_USToUKDate() • _WinAPI_Create_CTL_CODE() • _WinAPI_CreateGUID() • _WMIDateStringToDate()/_DateToWMIDateString() • Au3 script parsing • AutoIt Search • AutoIt3 Portable • AutoIt3WrapperToPragma • AutoItWinGetTitle()/AutoItWinSetTitle() • Coding • DirToHTML5 • FileInstallr • FileReadLastChars() • GeoIP database • GUI - Only Close Button • GUI Examples • GUICtrlDeleteImage() • GUICtrlGetBkColor() • GUICtrlGetStyle() • GUIEvents • GUIGetBkColor() • Int_Parse() & Int_TryParse() • IsISBN() • LockFile() • Mapping CtrlIDs • OOP in AutoIt • ParseHeadersToSciTE() • PasswordValid • PasteBin • Posts Per Day • PreExpand • Protect Globals • Queue() • Resource Update • ResourcesEx • SciTE Jump • Settings INI • SHELLHOOK • Shunting-Yard • Signature Creator • Stack() • Stopwatch() • StringAddLF()/StringStripLF() • StringEOLToCRLF() • VSCROLL • WM_COPYDATA • More Examples... Updated: 22/04/2018 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