Super Global Application that all Users see


 Either this problem is so super easy I'm going to embarrass myself or it is totally impossible:

  I have a legacy Visual Basic application that is now "broke" due to the use of multiple users.  I have a scheduling application my clients install while logged in as Administrator.  It writes to the "c:\Program Files\" folder.   It runs all the time.  When an event comes up, it has a popup dialog box to remind the user of the upcoming event.

  PROBLEM:  When a user logs in under a different account login name, the application is no longer available to that user.  What's frustrating is that I know the original application is still running because I can't delete the exe file in the "c:\Program Files\" folder.

   I know one workaround is to install the scheduling routine under each user name - but this seems ludicrous.  I don't want to have to reinstall an application every time a new user adds a user name.

 QUESTION:  Is there a method of making a Visual Basic application "super global"?  In other words: when it is running, it can be "seen" by all of the users.

 PICTURESQUE EXAMPLE:

   * Log in as "Administrator".
   * Open a 'Notepad' session.  Let this 'Notepad' session represent the home-built scheduler application written Visual Basic.
   * Select 'Start' / 'Log off' / 'Switch User' /
   * Login as "Guest" (or some other user)
   * The 'Notepad' session should still be up, running, and visible  (if set to run as our hypothetical "super global application").

If what I am asking is impossible - is there a better method or workaround?
EasyAimAsked:
Who is Participating?
I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

BrianGEFF719Commented:
What you are trying to do cannot be done, however, you can make a program start with each user, by adding a link to the program in:

c:\documents and settings\all users\start menu\programs\start up


that will force the program to start with every user.

-Brian
0
syntaxmishapCommented:
EasyAim -

Unfortunately, there is no way to do specifically what you are looking to do, but there is a relatively straightforward workaround. From what I gather, these events you wish to notify the user of are system wide, and are not specific to the user. I am also asuming that you are using NT/2000/XP and not a 9x/ME platform.

The simplest way to do this is to use a two part system.

Your current app will need to be split into two parts. The first part will handle the functionality of knowing when the events are. The second part will handle the displaying of the alerts.

Example:

EventServer.EXE - Loaded in the startup section of the registry for all users. When it launches, check to make sure that an instance isn't already running, and only start if it is new. Each time there is an event, drop a text file in, say, "c:\program files\eventserver\events\".

EventAlerter.EXE - Loaded in the startup section of the registry for all users. Each user can have an instance of this running. In this program, you can have a time set to 1 or 2 seconds. Each time the time fires, look for any new file in "c:\program files\eventserver\events\". If you see a file, open it up and read the event data, and display the event to the end user.

You can also drop "event files" with a simple header, including a specific user, for instance, if you want events only for some users.

If you would like some more specific ideas on setting up the nitty gritty of this, let me know.

syntaxmishap
0
syntaxmishapCommented:
EventAlerter.EXE - Loaded in the startup section of the registry for all users. Each user can have an instance of this running. In this program, you can have a timer* set to 1 or 2 seconds. Each time the timer* fires, look for any new file in "c:\program files\eventserver\events\". If you see a file, open it up and read the event data, and display the event to the end user.
0
Ultimate Tool Kit for Technology Solution Provider

Broken down into practical pointers and step-by-step instructions, the IT Service Excellence Tool Kit delivers expert advice for technology solution providers. Get your free copy now.

EDDYKTCommented:
Make your program runs as service?

as long as your program runs under SYSTEM account, you should be able to pop-up message
0

Experts Exchange Solution brought to you by

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Start your 7-day free trial
EasyAimAuthor Commented:
I have an installation package for this VB app.   Right now, when you look at the details for processes running in the Task Manager it says "Owner" for my application.

How do I have it install as a "Service"?
   
0
EDDYKTCommented:
0
It's more than this solution.Get answers and train to solve all your tech problems - anytime, anywhere.Try it for free Edge Out The Competitionfor your dream job with proven skills and certifications.Get started today Stand Outas the employee with proven skills.Start learning today for free Move Your Career Forwardwith certification training in the latest technologies.Start your trial today
Visual Basic Classic

From novice to tech pro — start learning today.

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.