w_sp8er 0 Posted March 30, 2004 I'm trying to change the following code ( Run("control timedate.cpl") WaitForWindow_ThenActivate("Date and Time Properties", "Date && Time", 0) Send("+{TAB}{RIGHT}") WaitForWindow_ThenActivate("Date and Time Properties", "Time Zone", 0) Send("{TAB}{END}{UP 8}+{TAB}{RIGHT}") WaitForWindow_ThenActivate("Date and Time Properties", "Internet Time", 0) Send("!s{-}{ENTER}") WinWaitClose("Date and Time Properties") ) so that I can hide the window but still operate it. The problem is eventhough I changed it to ( Run("control timedate.cpl", "", QSW_HIDE) WinWait("Date and Time Properties", "Date && Time", 0) Send("+{TAB}{RIGHT}") WinWait("Date and Time Properties", "Time Zone", 0) Send("{TAB}{END}{UP 8}+{TAB}{RIGHT}") WinWait("Date and Time Properties", "Internet Time", 0) Send("!s{-}{ENTER}") WinWaitClose("Date and Time Properties") ) I'm not sure what to change the Send commands to as if I use ControlSend it seems to bring the window back to active. Any help would be much appreciated as this is driving me up the proverbial wall. Share this post Link to post Share on other sites
Batch 0 Posted March 30, 2004 Greets, I wanted to do the same thing, and had the same problem Opt( "WinWaitDelay", 1 ) Opt( "WinDetectHiddenText" , 1 ) RunAsSet( "xxxx", "xxxx", "xxxxx" ) Run( "\\xxxx\apps$\chainstoreguide2004\setup.exe" ) RunAsSet() click( "Setup - National Association of Chain Drug Stores", "Welcome", "TButton2" ) click( "Setup - National Association of Chain Drug Stores", "I &do not accept the agreement", "TRadioButton2" ) click( "Setup - National Association of Chain Drug Stores", "I &do not accept the agreement", "TButton2" ) click( "Setup - National Association of Chain Drug Stores", "C:\Program Files\MVReader\CDS-0001\", "TButton2" ) click( "Setup - National Association of Chain Drug Stores", "SelectProgramGroup", "TButton2" ) click( "Setup - National Association of Chain Drug Stores", "Destination directory:", "TButton2" ) click( "Setup - National Association of Chain Drug Stores", "Finished", "TNewCheckListBox1" ) click( "Setup - National Association of Chain Drug Stores", "Finished", "TButton2" ) Func click( $title, $text, $button) WinWait( $title, $text ) WinSetState( $title, $text, @SW_HIDE ) ControlSend( $title, $text, $button, "{SPACE}" ) EndFunc This is for installing a program. As you can see the function waits for the window to exist and as soon as it does, it sets its state to hidden. The ControlSend functions will work with a hidden window. If you are looking for text, you have to set the Opt( "WinDetectHiddenText" , 1 ) at the top. With a WinWaitDelay of 1 ms, it's as close to perfect as you're going to get. You should be able to execute this on a machine with a user doing something else and they never even know what happens. The only thing I find is an intial flicker of the first window appearing and these disappearing, after that I see nothing at all. Share this post Link to post Share on other sites
w_sp8er 0 Posted March 30, 2004 (edited) Thank you Batch for that code, it helped some. The Date & Time Properties window has a SysTabControl321 tab which I must operate. I will need code to TabRight or TabLeft to be able to be sent to a hidden window. EDIT: Nevermind, I've worked it like this: click( "Date and Time Properties", "Date && Time", "", "") ControlCommand("Date and Time Properties", "Date && Time", "SysTabControl321", "TabRight", "") Func click( $title, $text, $button, $TextToSend) WinWait( $title, $text ) WinSetState( $title, $text, @SW_HIDE ) ControlSend( $title, $text, $button, $TextToSend ) EndFunc Edited March 30, 2004 by w_sp8er Share this post Link to post Share on other sites