hi, I am new at scripting in HTA. I've created this hta to give user an interface and show the progress of an application during its installation from start to finish. We typically deploy application silently, lately our management wants to show the installation in a single interface. My script is to deploy the applicaion with this hta front end to display the progress while monitor a specified process is running "setup.exe" and show each step of the way. The progress bar is working, however, it does not know when to stop. I tried both clearinterval and cleartimeout window.clearInterval(iTimerID2) window.clearTimeout(iTimerID2) It is not working. Any help or suggestion is appreciated.  What I would like the script to do is to stop the progress bar when the maxprogress is reach or when the setup.exe is finished. here is the code:  <html> 	<head>  	<HTA:APPLICATION ID="porgbar" 	APPLICATIONNAME="MyApp Installation" 	BORDER="thin" 	BORDERSTYLE="normal" 	CAPTION="yes" 	MAXIMIZEBUTTON="no" 	MINIMIZEBUTTON="no" 	SHOWINTASKBAR="yes" 	SINGLEINSTANCE="yes" 	SYSMENU="yes" 	VERSION="1.0" 	/> 	<style type="text/css"> <!-- #barreprog { 	position:absolute; 	left: 50%; 	right: 25%; 	width:700px; 	margin-left: -350px; 	height: 1em; 	bottom: 15%; 	padding:2px; 	background-color:white; 	border:1px solid black; 	} #indicator{ 	width:0px; 	height: 1em; 	background-color:C06A45; 	} //--> <title>MyApp Installation</title> 	BODY {font-family: Trebuchet MS, Helvetica, Arial; font-size: 14pt; color: black } </style> </head> 	<body> 	<h2 style="text-align:center;">MyApp installation process has started</h2>  	<hr style="width:75%; color: navy;"/> 	<DIV ALIGN=CENTER>  	<p><font size="5">Please save your work and close all applications before clicking <b>“Install Now.”</b></font></p>  	<p><font size="5"><i>This process should take approximately 40 minutes to complete. Please do not attempt to launch any applications during this time.</i></font></p> 	</DIV>  	<div id="DynamicText" style="text-align: center; color:red; font-weight: bold; font-size:25px"> 	<p> </p> 	</div>  	<div id="InstallButton" style="visibility: hidden;"> 	<p style="text-align: center;"><input type="button" id="InstallNow" value="Install Now"></p> 	</div>  <script language="VBScript"> ' Count Down Code ' Declare global variable outside of the Subs Option Explicit Dim strComputer, strProcess Dim iRefreshRt, maxprogress, actualprogress Dim text1, text2, text3, text4 Dim intMinutes, intSeconds Dim iTimerID Dim iTimerID1 Dim iTimerID2 iRefreshRt = 15000 maxprogress = 500 actualprogress = 0 strComputer = "."  strProcess = "setup.exe" text1 = "Now processing you request..." text2 = "Now remove previous version..." text3 = "Now removing and installing..." text4 = "Installation complete..." intMinutes = 1 intSeconds = 01  Sub Window_onLoad 	window.ResizeTo 900, 450 	window.MoveTo ((Screen.Width / 2) - (900 / 2)),((Screen.Height / 2) - (450 / 2)) 	' Set the minutes and seconds 	iTimerID1 = window.setInterval("Countdown", 1000, "VBScript") 	DynamicText.innerHTML = intMinutes & "min:" & Right("00" & intSeconds, 2) & "s" 	InstallButton.Style.Visibility = "visible" 	document.body.bgColor="E9F1EA" End Sub  Sub Countdown 	DynamicText.innerHTML = intMinutes & "min:" & Right("00" & intSeconds, 2) & "s" 		If intSeconds = 0 Then 			' Install auotmatically after time expires 			If intMinutes = 0 Then 				InstallNow.Click 			Else 				intMinutes = intMinutes - 1 				intSeconds = 59 				DynamicText.innerHTML = intMinutes & "min:" & Right("00" & intSeconds, 2) & "s" 			End If 		Else 			intSeconds = intSeconds - 1 			DynamicText.innerHTML = intMinutes & "min:" & Right("00" & intSeconds, 2) & "s" 		End If  End Sub  ' On Click the install button Sub InstallNow_onClick() 	dim oShell, objFSo 	set oShell = CreateObject("WScript.Shell") 		oShell.RegWrite "HKCU\Software\MyApp\Time", "now" , "REG_SZ" 		oShell.RegWrite "HKCU\Software\MyApp\Date", cstr(date) , "REG_SZ"  	Set oShell = nothing 	set objFSo = CreateObject("Scripting.FileSystemObject") 		If objFSo.fileExists("C:\MsgFlag.txt") then 			objFSo.DeleteFile("C:\MsgFlag.txt") 		End If 	Set objFSo = nothing 	If InstallNow.Value = "Install Now" Then 		Window.clearTimeout(iTimerID1) 		InstallNow.disabled = True 		Document.getElementById("DynamicText").innerHTML = text1 		' DynamicText.innerHTML = "Now processing you request..." 		InstallNow.Value = "In Progress" 		Call ProcessStatus 		iTimerID = window.setInterval("UpdateStatus", iRefreshRt) 'Set timer ONCE 		document.body.bgColor="C9DECB" 	End If End Sub  Sub UpdateStatus 	Dim ProcessStat 		ProcessStat = ProcessStatus End Sub  Function ProcessStatus Dim objWMIService, colProcesses, objProcess, objProgram 	Set objWMIService = GetObject("winmgmts:" _ 	& "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2") 	Set colProcesses = objWMIService.ExecQuery _ 	("Select * from Win32_Process Where Name = '" & strProcess & "'") 	If colProcesses.Count > 0 Then 		ProcessStatus = "Running" 		document.body.bgColor="B4D1B6" 		Do Until colProcesses.Count = 0 		' MsgBox strProcess & " is running." 		Document.getElementById("DynamicText").innerHTML = text3 		' DynamicText.innerHTML = "Now removing and installing..." 		Call StartProg 		Exit Do 		Loop 	Else 		window.clearInterval(iTimerID2) 		InstallNow.Value = "In Progress" 		document.body.bgColor="C9DECB" 		' Document.getElementById("DynamicText").innerHTML = text4 	End IF End Function  Function iTimer (TimeCheck) 	iTimer = 60000 * TimeCheck 'Ensure numeric End Function  sub StartProg() 	iTimerID2 = setInterval("prog", 10000, "vbscript") end sub   sub prog() Dim objWMIService, objFSO, objShell, colFileList dim indic 	Set indic = document.getElementById("indicator") 		actualprogress = actualprogress + 1      		indic.style.width = actualprogress 	if actualprogress > maxprogress then 		window.clearInterval(iTimerID2) 		Document.getElementById("DynamicText").innerHTML = text4 		document.body.bgColor="6CA870" 	End if End sub  </script> <div id="barreprog"> 	<div id="indicator"> </div> </div> </head> <div id="Progress"> </div> </body> </html>