Hi Steve,
The following registry key holds a list of programs which are run on windows startup:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run
If you look at this in regedit, you'll see a list of string values. The value name represents the program title and the value data represents the location of the executable program. You can add a key here and have it run on startup. I've tried this in Windows 95, 98, 98SE and NT without any problems.
If you need to toggle the startup option, you can add and remove the value using the Win32API. If you need details of this, post a reply and i'll post the code for you.
Hope this helps
Andrew