Sometimes when deploying software to massive migrations, alerting the users of these events are very paramount. So to keep them updated you can send out a notification prior to deploying your package.

A simple way of doing this is by creating an HTA file which handles HTML and scripting code and launches using Microsoft (R) HTML Application host (c:\windows\system32\mshta.exe)

You can design your fonts, background colours using css and html or you can add images also. In this example, I am using only text to display my notification. Since I am disabling the min/max/exit buttons on the window (this way the users are forced to view this popup) I will add some vb and javascript to power my HTA file.

You can start by designing your HTA by creating a new text file and renaming the extension from .txt to .hta

Next, copy my code shown below and start tweaking it to suit your needs. After the end of the code is a breakdown explanation of how the it works. Start testing with short timer seconds or else you will need to keep taskmanager open to kill the mshta process to close the window - remember, in this example I have disabled the exit button from the popup window!

[---BEGIN OF CODE---]

<html>
<head>
<hta:application
APPLICATIONNAME = "Program ALERT"
ID = "Program ALERT"
BORDERSTYLE = "Normal"
CAPTION = "No"
CONTEXTMENU = "No"
INNERBORDER = "No"
MAXIMIZEBUTTON = "No"
MINIMIZEBUTTON = "No"
NAVIGABLE = "No"
SCROLL = "No"
SCROLLFLAT = "No"
SELECTION = "No"
SHOWINTASKBAR = "No"
SINGLEINSTANCE = "Yes"
SYSMENU = "No"/> <STYLE>
html, body {
background color: #000

font-size: 90%;
line-height: 2.1em;
margin: 10;
padding: 0;
}
h1 {font-family: Arial;
color: #007cd1;
font-size: 3em;
text-transform: uppercase;
text-align: center;
}
h2 {font-family: Arial;
color: #fff;
font-size: 1.5em;
text-transform: uppercase;
text-align: left;
}
h3
{font-family: Arial;
color: #666;
font-size: 1em;
text-transform: uppercase;
text-align: center;
}
</STYLE> <script type='text/vbscript'> Sub Window_onload()
Me.ResizeTo 600,380
Me.MoveTo Screen.Width /2 - 300,Screen.Height / 2 - 300
Me.SetTimeout "Me.Close()",5000
End Sub
</script>
</head>
<body scroll="no">
<br>
<h1>PROGRAM UPDATE!</h1>
<h2>Your computer is about to install an important system update.<br>
Please save and close all applications.<br>
A system reboot might occur between 5 and 10 minutes.</h2> <h3>IT DEPT - [auto close in <span id="timer"></span>secs]</h3> <script type="text/javascript">
var count=5; // seconds var counter=setInterval(timer, 1000);
function timer()
{
count=count-1;
if (count <= 0)
{
clearInterval(counter);
return;
} document.getElementById("timer").innerHTML=count + " "; //
}
</script>
</body>
</html>

[---END OF CODE---]
Here is the breakdown of the code:

 This is the result output:

Now you can add this to your deployment tools and remember: Always test before you rollout!!! 
Have fun creating your own custom notification popups! 

Smile