Can a windows service be ran multiple times (using different settings)?

That is the basis for "svchost.exe", it is just given different service names and parameters.

This will help: http://support.microsoft.com/kb/137890


If by multiple instances of the same service, you mean different instances of the same executable, then sure. You just need to create multiple "service" entries for it in the service table, with different names and different command line options.

Grizly seems to be talking about a different thing, where several services run inside the same process, typically an instance of svchost.exe. This necessitates that they use the same executable, though each service hosted by svchost appears to specify a DLL and (optionally) a ServiceMain entrypoint in the Parameters subkey of the service key. (Of course, the details of svchost.exe usage don't appear to be documented -- probably to keep people from trying to do crazy stuff like loading some version of the .NET framework into one of the system-critical instances, which would eventually lead to some other service trying to load a different version of the framework into the same one, and that would be a complete mess...)