I have installed several other custom .Net windows services successfully. A new one I had recently written was very similar to the others and while it installed without error -
I had a similar issue with a service, where I was getting the same error.
I went to:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\YourServiceName\ImagePath
My 'ImagePath' was set to a virtual drive called "W:\" that exists on "C:\".
I replaced this path with the actual file location on the C:\ drive and then the service started successfully