| Deutsch | English | Español | Français |
| Italiano | 日本語 | 한국어 | Português |
| Pусский | 简体中文 | 繁體中文 |
How Devices and Driver Packages are Uninstalled
This section provides an overview of what you need to do to uninstall a device and driver package. Perform these actions by running one of the following:
A device installation application that calls the SetupAPI and device installation functions.
These actions include the following:
Note These actions do not need to be performed in sequential order.
Uninstalling the Device
This uninstall action removes the device node (devnode) that represents the physical instance of the device in the system. Devnodes are removed by using one of the following methods:
Device Manager. For more information, see Using Device Manager.
A device installation application that calls the SetupAPISetupDiCallClassInstaller function with a request of DIF_REMOVE. For more information, see Using General Setup Functions.
A device installation application that calls the SetupAPI DiUninstallDevice function (Windows 7 and later versions of Windows). For more information, see Using Device Installation Functions.
When a device is uninstalled by using one of these methods, the Plug and Play (PnP) manager removes a subset of the system states that were created during device installation. For example, it removes the association between the driver binary files and the device. This association is used by the Service Control Manager (SCM) to load the appropriate driver for the device.
This uninstall action does not undo all the actions that were performed during the installation process. For example, the driver package and the driver's binary files remain where they were copied to the local hard disk. Some registry keys that were created by a class installer or co-installer (together with some other registry operations) are not changed.
Note After this uninstall action is finished, the devnode for the device no longer exists, however, the driver package is still present in the driver store. If the PnP manager re-enumerates the device (such as when the device is unplugged and then plugged in again), the PnP manager treats it as a new device instance and installs the driver package from the driver store.
Deleting a Driver Package from the Driver Store
This uninstall action deletes the files that are associated with the driver package from the driver store and removes the associated metadata from the PnP manager's internal database. This action also deletes the INF files, which are associated with the driver package, from the system INF directory.
After the driver package has been removed from the driver store, it is no longer available to be installed on a device. The driver package must be restaged and installed to the driver store from the original source, such as optical media, a network share, or Windows Update.
Before deleting a driver package from the driver store, be sure to uninstall all devices that are using it.
Important You must not manually delete the driver package from the driver store. Doing so can cause an inconsistency between the INF fie, the driver store catalog, and the driver in the driver store. You might also be unable to stage the same driver package to the driver store.
Deleting the Binary Files of the Installed Driver
Device Manager and the PnP manager do not support deleting driver binaries from the target destinations where they were installed.
When you uninstall a driver package, the associated driver binaries might still be used by devices or applications. Removing the binaries can lead to system failures. Before you remove any driver binaries, make sure that the binaries are not still being used by any other component on the system and can be safely removed.