On a computer that is running Windows 7 or Windows Server 2008 R2 system, if you keep connect various different USB devices, such as different model of USB flash disks, the startup time of the computer keeps increasing or the machine stops responding in the startup process.
The issue occurs because there are large amount of registry keys for the instances of the USB devices that you installed. In most cases, the problem won’t happen because usually we don’t have so many different USB devices connected to the same computer. Windows keeps the instance information of each device that has been installed on a computer, so the device can be recognized directly next time it is connected.
Note: The “slow bootup” issue or “machine stops responding” issue can be caused by many different reasons. The problem described in this KB article is a very rare issue and mostly you won’t experience it. Before trying the solution in this article, please make sure you are really experiencing this specific scenario. To check if how many device instances have been stored on your computer, open the Registry Editor and check the relative registry keys, such as HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\USB.
Microsoft provides a programming example to remove device information from the registry. For more information, please refer to the following KB article.
How to remove registry information about devices that will never be used again on a computer that is running Windows Server 2003, Windows Server 2008, or Windows Server 2008 R2
Note: The Win32 console application mentioned in this article is just a sample for illustration only. You will need to understand how it works and modify it as needed. For example, for the typical USB devices, you may need to add some other GUIDs like below. Please refer to Windows SDK to get more information about the background information about this issue and modify it according your specific requirements.