I want to get the list of application which runs on windows startup programatically.
i see those application in msconfig->startup.
but when i see it in C:\User\Appdata\Microsoft\windows\start menu\programs\startup
it shows folder is empty.
How to get those list of startup applications programatically C#.
Those in msconfig that you see are in the registry, although they are not all there is. You can try read
and
In both
HKEY_LOCAL_MACHINEandHKEY_CURRENT_USERYou can find information about those at MSDN and support.microsoft.
Try the article Read, write and delete from registry with C# at CodeProject to get you started with the registry.
Now, as I said above, they are not all there is. Listing those will still miss services and drivers, and also some other code that will start async, such as Explorer extensions, Control Panel extensions, codecs for audio and video among others. All that without considering that the client machine may not use explorer as shell.
I recommend you to have a look at autoruns at sysinternals. You can also use its command line tool to get the info you want.