Creating informative pop-up boxes for users

Our IT department has been tasked with finding a way to have information "splash screens" appear on selected users' monitor whenever they log in to the network or (preferably) each time they unlock their Windows session (screens lock automatically after 30 minutes idle).  What we're doing now:

Create file named index.html in "holding" folder
Create .bat file which copies index.html file to \\servername\announcements folder
Create scheduled task to run .bat file on specific date
Put line in users log in script that says if \\servername\announcements\index.html exists, open the file in IE.
Create scheduled task to delete file when event is over.

Because we have lots of events, we're constantly creating and updating pages, bat files and scheduled tasks.  Users who don't log out and back in every day never see the screens anyway.

There has GOT to be an easier way to accomplish this task!  Anybody had to do something like this before?  Doesn't have to be an .html file....just has to pop up in front of the user at specified time.
sec1971Asked:
Who is Participating?
 
TommySzalapskiConnect With a Mentor Commented:
I see. In that case I would use a .vbs file instead of a .bat and check the date and username and whatever else. (You probably could do all that from a .bat, but I'm better with VBScript).
0
 
TommySzalapskiCommented:
You could use scheduled tasks on the users machines. What I've done is set a task to run every day (and check the option to run as soon as possible if missed). Then have it run a .bat file on the server. This way you can make it do whatever you want it to do (launch a .html, create a new scheduled task, etc.) It's like a logon script except it runs once per day no matter if they leave their computers on or reboot them multiple times.

If you want to make sure something happens so you want to leave it in the .bat file more than one day (in case someone is on vacation and his computer is off) but it can only run once, have it create a temp file and check if it exists before running. Or to be super fancy, each time you change the .bat, increment a version number. Then save that to a file on each user's machine. That way you can check and see which ran last.

You could even have it run every hour and just do the new things, but then the command prompt window will pop up briefly every hour so it may be better to just have it run at night.
0
 
sec1971Author Commented:
Thanks Tommy but I think that would end up being more work than we have to do already.  We have 100 users, so instead of creating one screen, one bat and one task, we'd being doing it all times 100.  I'm really hoping someone has a third party software option that will help with this!
0
Keep up with what's happening at Experts Exchange!

Sign up to receive Decoded, a new monthly digest with product updates, feature release info, continuing education opportunities, and more.

 
TommySzalapskiCommented:
No. You put the .bat on the server and push the same task to all the machines using the startup script so you only ever need to change one thing.
0
 
TommySzalapskiCommented:
Anyway, it works well for us. I know there are ways to make a message box pop up at login, but not when it unlocks. I think you would need to create a Windows service that would watch for the unlock event.
0
 
sec1971Author Commented:
I think I understand what you're suggesting.  My only question is, doesn't that method require that you change the file on a daily basis and can schedule nothing ahead of time?  And how do you handle a day where some people need to see multiple screens of information, but others don't?

We currently schedule some screens days or weeks in advance, and then add, delete or edit as necessary throughout the week.
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.