The problem that many users have with startup programs is not creating them (that’s easy, and in many cases it happens more or less automatically), but getting rid of them. Having too many startup programs not only makes your system take a longer time to start, it also has the potential to waste memory. If you don’t require a program at startup, it’s a good idea to get it out of your startup path.
Unfortunately, tracking down programs that start automatically isn’t as easy as you might think. A program can be confi gured to run at startup in many ways, not just by having a shortcut in a Startup folder. To wit:
+ Run key (machine) Programs listed in the registry’s HKLM\Software\Microsoft\ Windows\CurrentVersion\Run key are available at startup to all users.
+ Run key (User) Programs listed in the HKCU\Software\Microsoft\Windows\ CurrentVersion\Run key run when the current user logs on. A similar subkey, HKCU\Software\Microsoft\Windows NT\CurrentVersion\Windows\Run, may also be used.
+ Load value Programs listed in the Load value of the registry key HKCU \Software\Microsoft\Windows NT\CurrentVersion\Windows run when any user logs on.
+ Scheduled tasks The Windows task scheduler can specify tasks that run at startup. In addition, an administrator can set up tasks for your computer to run at startup tasks for your computer to run at startup that are listed only on the administrator’s system, not your own.
+ Win.ini Programs written for 16-bit Windows versions may add commands to the Load= and Run= lines in the [Windows] section of this startup file, which located in %SystemRoot%. The Win.ini file is a legacy of the Windows 3.1 era.
+ RunOnce and RunOnceEx keys This group of registry keys identifies programs that run once and only once at startup. These keys may be assigned to a specific user account or to the machine.
HKLM\Software\Microsoft\Windows\CurrentVersion\RunOnce
HKLM\Software\Microsoft\Windows\CurrentVersion\RunOnceEx
HKCU\Software\Microsoft\Windows\CurrentVersion\RunOnce
HKCU\Software\Microsoft\Windows\CurrentVersion\RunOnceEx
+ RunServices and RunServicesOnce keys As the names suggest, these rarely used keys can control automatic startup of services. They may be assigned to a specific user account or to a computer.
+ Winlogon key The Winlogon key controls actions that occur when you log on to a computer running Windows Vista. Most of these actions are under the control of the operating system, but you can also add custom actions here. The HKLM\Software\Microsoft\Windows NT\CurrentVersion\Winlogon\Userinit and HKLM\Software\Microsoft\Windows NT\CurrentVersion\Winlogon\Shell subkeys can automatically launch programs.
+ Group Policy The Group Policy console includes two policies called Run These Programs At User Logon that specify a list of programs to be run whenever any user logs on.
+ Policies\Explorer\Run keys Using policies to specify startup programs, as described in the previous paragraph, creates corresponding values in either of two registry keys: HKLM\Software\Microsoft\Windows\CurrentVersion\Policies \Explorer\Run or HKCU\Software\Microsoft\Windows\CurrentVersion\Policies \Explorer\Run.
+ BootExecute value By default, the multi-string BootExecute value of the registry key HKLM\System\CurrentControlSet\Control\Session Manager is set to autocheck autochk *. This value causes Windows, at startup, to check the filesystem integrity of your hard disks if your system has been shut down abnormally. It is possible for other programs or processes to add themselves to this registry value. (Note: Microsoft warns against deleting the default BootExecute value. For information about what to do if your system hangs while Autocheck is running, see Microsoft Knowledge Base article 151376, “How to Disable Autochk If It Stops Responding During Reboot.”)
+ Shell service objects Windows loads a number of helper dynamic-link libraries (DLLs) to add capabilities to the Windows shell.
+ Logon scripts Logon scripts, which run automatically at startup, can open other programs. Logon scripts are specified in Group Policy in Computer Configuration\ Windows Settings\Scripts (Startup/Shutdown) and User Configuration\Windows Settings\Scripts (Logon/Logoff).
Veterans of Windows XP might be familiar with System Configuration Utility (Msconfig.exe), a tool that allows you to see most of the programs that run at startup and disable particular ones if you choose to do so. Windows Vista retains System Configuration Utility but also offers a startup program listing in Windows Defender, the anti-spyware utility included with the operating system. Neither list includes startup programs established by policy or scheduled tasks. But the Windows Defender list is a bit easier to read and offers more details about each startup program.
To see the list of startup programs in Windows Defender, open Control Panel. Then, under Programs, click Change Startup Programs. Initially, the list shows only those tasks that run in your own user account. To see startup programs that run in other accounts as well, click Show For All Users.
The default organization of the list that appears on the left side of the Windows Defender Software Explorer is By Publisher. You can group items by Startup Type, if you prefer. To do this, right-click any part of the list and choose Startup Type.
The reason that Windows Defender includes a list of startup programs, of course, is that it’s important to know about any startup programs that manage to arrive without your knowledge or consent. It’s also important to know about those to which you do consent, because they can clog up your system if you’re not actually using them.
To determine whether an item is needed or not, you can select the item and click Disable. Then restart your system. After verifying that your system works properly without the program starting automatically, you can use the Remove button to remove it. Before you lop off a startup item, however, check to see if that item is configured by means of a Startup folder on the Start menu. If it is, you might prefer to move it from the Startup folder to another Start menu location, rather than using Windows Defender. Using Windows Defender to remove a Startup folder item doesn’t delete the program, but it does erase the shortcut—and you might want to use that shortcut in some other part of the Start menu or elsewhere.













July 11th, 2008 at 6:39 pm
Hi,
nice collection of startup-locations!
But there is always something missing: You didn’t mention, that RunOnce is not executed for users without Admin-rights under XP and Vista. RunOnceEx is not executed for users without Admin-rights just under Vista.
I just came across your place, because I am searching for a possibility to delay login for any user on a computer. That was possible with RunOnceEx until Vista. I am looking for a replacement.
Starting ‘rundll32.exe iernonce.dll,RunOnceExProcess’ in the Run-Key executes my program that is placed in RunOnceEx - but not exclusively!
An other thing that would be interesting here ist the order in which specific keys are executed.
Bye
Gerald
December 15th, 2008 at 7:56 pm
Hi,
I have this Vista start up problem, my application is run at startup using HKLM…RUN. However, my app isn’t executed right away but with a delay of about 1.5 min… As i looked through the Task Manager processes, consent.exe is being executed.. My app seems to wait this “consent.exe”, after 1.5 min, consent.exe disappears and my app is executed..
FYI: The problem seems to start when my app is digitally signed and uiaccess is set to true for its manifest..
Any idea with regards to this issue? Thanks