Monday 10 January 2011

C# useful Shell functions

Get current user's StartUp folder path:

Environment.GetFolderPath(Environment.SpecialFolder.Startup) - returns string with startup path

Get list of StartUp processes started from the Register and StartUp folder:

ManagementClass mangnmt = new ManagementClass("Win32_StartupCommand");
ManagementObjectCollection mcol = mangnmt.GetInstances();
foreach (ManagementObject strt in mcol)
{
string[] lv = new String[4];
lv[0] = strt["Caption"].ToString();
lv[1] = strt["Location"].ToString();
lv[2] = strt["Command"].ToString();
lv[3] = strt["Description"].ToString();
listView1.Items.Add(new ListViewItem(lv, 0));
}