Filter Driver Registry Entries Are Migrated During Windows Vista or Windows Server 2008 Upgrade or Service Pack Setup
When Windows Vista or Windows Server 2008 is installed as an in-place upgrade (over an existing installation of Windows Vista or Windows Server 2008), or when a Windows Vista or Windows Server 2008 Service Pack is installed, registry settings to load filter drivers may not remain intact in their original locations. For example, the registry settings to cause a filter driver to be loaded for any current or new device in the Disk class may be moved to the registry locations for each specific device in the Disk class currently present on the system.
Following this migration of filter driver settings, one of the scenarios in which problems may occur is when uninstalling filter drivers after a Service Pack or in-place upgrade installation. If the filter driver setup program does not remove the filter driver entries from their new locations in the registry before deleting the filter driver files, problems may occur when Windows is restarted, reads the migrated registry settings and attempts to load the deleted filter driver files. This will result in Windows being unable to start the device for which the filter driver was previously loaded. If the device is one that is critical to starting Windows (for example, the disk device on which Windows is installed), Windows may fail to start after the filter driver is incompletely uninstalled.
For more information on this issue, including potential causes, workarounds, and resolutions, see: Microsoft KB Article KB976267.