How to start a program automatically in Windows 8
When I install a new software on my pc, very often it starts automatically next time, especially if the authors did not pay attention to offer the possibility to disable it. I find this quite irritating, why every software company thinks their software must be started on the machine automatically. So I like to keep an eye on what is starting up every time.
Sometimes it might be wished for to configure later a program to start up automatically, though. I would like to show a couple of methods to do this in Windows 8 for every user, or only for selected ones.
In my examples, I always use process explorer, but you can use anything you want of course.
Hit Windows button + R and type gpedit.msc, then press Enter.
In the local group policy editor navigate to User Configuration / Administrative Templates / System / Logon and double click the Run these programs at user logon setting.
On the Run these program at user logon panel, set it Enabled, then click on the Show… button
On the panel specify the full path followed by the executable. It is also possible to set up multiple ones after each other.
Good to know, that these programs will start automatically after any user on the machine logs on, so it is available for everyone.
There is also an equivalent settings under the Computer Configuration / Administrative Templates / System / Logon. Not much difference, though, but please keep in mind that the programs specified under Computer node will start before the programs specified under the user node.
Tip: Some might want to log in to the desktop and skip the metro UI. Add a new item and simply put explorer.exe there. After logon, a windows explorer window starts and the desktop appears.
Use task scheduler
Start task manager. You can use computer management (Details in this post) or you can add to your custom mmc console. Press Windows button + R to bring up the Run panel. Type mmc, then press Enter.
Go to File menu / Add/Remove Span-in
Select task scheduler on the left side and click add. Select local computer on the dialog panel and click OK.
Now you can manage the scheduled tasks on the machine. Open Task scheduler / Task scheduler library and check the already configured tasks on the middle pane.
To create a new one, simply right click the node and select Create Task.
This brings up the new task dialog box. Give it a descriptive name, and change to the Triggers section, click on New. Select At log on as Begin task option. Optionally you can limit on which user applies this to.
If you want, you can add multiple triggers, for example 2 users on the machine but not for everyone.
Switch to the Actions tab and click on the New button. Verify that the action is Start a program, and browse your executable. Optionally specify arguments, which can be handy scheduling a powershell script with parameters.
Review additional settings on other tabs, but basically you are mostly finished, so click OK. Next time you log in (or the configured user), the program will start automatically.
Registry and Startup
In older versions of the Windows OS, I always kept a view on the Startup programs. You can access them by typing msconfig into the Run dialog box (Win+R) and switch to the Startup tab.
As you can see now, Windows 8 redirects to the task manager, so click on the link, which eventually brings up the correct tab in task manager.
Review the items, check the status and pay attention to the newly introduced Startup impact column. You can easily disable a few if you want, by right clicking on the item and selecting Disable. For example the Adobe Reader and Acrobat Manager item is disabled on the screenshot above.
You can add items to this at 2 places in the registry:
The first one starts for everyone, the second is effective only for the actual user.
To add an item for every user, open the registry editor, by typing regedit into the run window (Win + R) and navigate to HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run
Right click on an empty are on the right panel and select New / String value. Type a descriptive name and double click the entry to edit the value data. Paste your executable’s full path and select OK.
Now if you go back to the task manager, you can verify the new startup item. Because we added this to the HKLM section of the registry, the process explorer will start automatically for every user after logon.
Every user has a folder which can contain shortcuts, and windows starts them automatically, when that user logs in. Navigate to C:\Users\<YourUserName>\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup (you must replace <YourUserName> with your username)
By default it is empty, but you can easily drag and drop a shortcut here to make that program start automatically.
Please note, this is not a machine specific setting, only related to the actual user.
Keep an eye on what is starting up
The best and easiest way to check what is starting up on your machine is to use sysinternals autoruns utility.
After you know how to start something you can also easily do it the other way around, with the info in your hand, you can check these places and settings to disable certain elements.