Server Fault is a question and answer site for system and network administrators. It's 100% free, no registration required.

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I have a Windows Server 2008 64 bit machine, and there is one program that is set to run on startup (shortcut placed in the Startup folder). So whenever a user logs in, the application starts up.

However, since this is a server, we have several users logging in via remote desktop, and (I believe) the application is started up for each user, resulting in multiple instances.

Now each time the application runs, it downloads some data from an external buffer via the LAN. These are call records for our telephone system. But because we have multiple instances running at the same time is causing problems and inconsistencies with the data.

Is there a way to force the Windows to run only one instance of the application? Alternatively, could this application be made to run as a Windows Service instead?

share|improve this question
Do the users need to interact with the application? Could you just remove it from the Startup folder and make it a particular person's job to run it, perhaps on a different machine? – Harry Johnston Dec 1 '11 at 20:26

You have a program in the Startup folder and you would prefer to run it as a service? Create a service using NSSM and take it out of the Startup folder.

Note that if someone needed to use this program interactively, she would need to stop the service and run the program normally. Upon finishing the interactive session, she would need to close the program and then start the service.

share|improve this answer

Windows has no native feature to do what you ask.

Options: - run app as a service, if it has no gui - move app out of startup folder - move app to startup folder of a specific user who will only log in with one concurrent session - write a script, as a cmd or ps script, that 'does the right thing' (eg checks if app has run lately, or is running, etc)

share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.