Description:
Sometimes in our Custom Actions we need to pause the script execution, for example when we’re manipulating processes. Since we can’t use Wscript.Sleep from a Custom Action we need another way of pausing the execution of a script. Here I present two alternatives to using WScript.Sleep in a Custom Action.
Source:
NA
Script 1:
Msgbox "start"
sleep1 5
MsgBox "stop"
Sub sleep1(strSeconds)
Dim dteWait : dteWait = DateAdd("s", strSeconds, Now())
Do Until (Now() > dteWait)
Loop
End Sub
Script 2:
Msgbox "start"
sleep2 5
MsgBox "stop"
Sub sleep2(strSeconds)
Dim objShell : set objShell = CreateObject("wscript.Shell")
objShell.Run "%COMSPEC% /c ping -n " & strSeconds & " 127.0.0.1>nul",0,1
set objShell = Nothing
End Sub
MSI/MSIX Recommended Reading


Thanks that helped.
i want to run a script whole day. it ll do some works on some particular time only. (e-x) executing a batch file at 6:00pm. if i use “wscript.sleep 10000” then its giving some outof memory errror. how can i avoid that.?
Hi. Â Remember that these scripts were intended for Custom Actions. Â Also it depends how you’ve authored your scripts and your loops. Â Please post your script over at ITNinja (or in some other forum) and I’m sure somebody will point you in the right direction!