Hello,
If you are developing your application to make it work for Windows Vista
under a standard user account, you should STOP writing to HKLM and instead
write to HKCU directly.
This will solve both problems - the program not running correctly as
administrator, and the service failing.
In the next version of Windows, virtualization will probably not be there -
so your application will always fail with the error you are seeing now on
the next version of windows, regardless of whether it is being ran as a
standard user or not, if you do not fix it now.
--
- JB
Microsoft MVP - Windows Shell/User
Windows Vista Support Faq
http://www.jimmah.com/vista/