Reputation: 7238
I am going to develop an application which will process online data (comming through socket) and it does not need any user interaction.
I am thinking of a simple console application, but what about windows service does it provide extra benefit? (I know windows service does not need user logged in to run the service but I am asking about extra benefit)
Upvotes: 20
Views: 11931
Reputation: 7543
I can't add anything to VonC's list but I would add that if you're using the usual Microsoft tools (VS & .net) it's easy to do both.
I create a class library that contains all my application logic and a MyServer class which has .Start() and .Stop() methods. You can then create both a console app and winservice app that both reference this. E.g. the console App instantiates a new MyServer, calls Start, waits for a key press and calls Stop.
I use the console app during development and the windows service for deployment.
Upvotes: 8
Reputation: 8381
Upvotes: 4
Reputation: 81617
In fact, it really depends on the usage of your application, I think.
For example, if you only need to run your processing at a specific time, the usage of the command line can be enough.
The windows service will be really interesting if your process need to run continuously, and silently (no user interaction).
You can also consider the task scheduling in Windows. Basically, it will run your application (through a .bat file for example) at specified times. It can be helpfull if your application needs to be run every day at 02:00 for example... In "Control Panel", you have an option "Scheduled Tasks". Then, you click on "Add Scheduled Task", and follow the wizard...
Upvotes: 2
Reputation: 1324188
On the top of my head:
net start <scriptname>
)Upvotes: 21