PDA

View Full Version : Script Refresh screen


martys
08-24-2006, 10:28 AM
The first part of a build I'm creating is only supposed to be run once on the machine (set up the build machine). As the last step of the group, I have a script running...

Project.Steps(vbldStepMain).Item(0).Checked = false

Which deactivates the step. However, this change is not reflected visually by the checkbox actually clearing the check. If I refresh, it displays correctly. It really is only an aesthetic thing, but it made me wonder, is there is a way to refresh the screen using script?

kinook
08-24-2006, 11:36 AM
I would recommend using a different method to implement a run-once step. One way would be to add a build rule something like

%HAS_RUN% is undefined

to the first step, and in the step's vbld_StepDone event, create the global macro HAS_RUN:

Application.Macros(vbldMacroGlobal).Add "HAS_RUN", ""

(see attached sample). This avoids modifying the .bld file and the behavior is more obvious.


As far as refreshing the GUI, use this VBScript code in a Run Script step:

CreateObject("WScript.Shell").SendKeys "{F5}", True