Wie Geräte und Treiberpakete deinstalliert werden
Auf dieser Seite wird beschrieben, wie Software ein Gerät deinstalliert und ein Treiberpaket aus dem Treiberspeicher entfernt.
Deinstallieren des Geräts
Um den Geräteknoten (Devnode) zu entfernen, der ein physisches Gerät darstellt, verwenden Sie eine der folgenden Optionen:
Um nur das angegebene Gerät zu deinstallieren, verwenden Sie eine Geräteinstallationsanwendung, die die SetupAPI-Funktion SetupDiCallClassInstaller mit einer Anforderung von DIF_REMOVE aufruft.
Um das angegebene Gerät und alle darunter liegenden Geräte in der Gerätestruktur zu deinstallieren, verwenden Sie eine Geräteinstallationsanwendung, die die DiUninstallDevice-Funktion aufruft.
Wenn ein Gerät mit einer dieser Methoden deinstalliert wird, entfernt der Plug & Play -Manager (PnP) die Zuordnung zwischen den Treiber-Binärdateien und dem Gerät.
Das Gerät verbleibt in der Kernel-PnP-Struktur, und das Treiberpaket verbleibt im Treiberspeicher. Wenn der PnP-Manager das Gerät erneut aufzählt (z. B. wenn das Gerät nicht angeschlossen und dann erneut angeschlossen ist), behandelt der PnP-Manager es als neue Geräteinstanz und installiert das Treiberpaket aus dem Treiberspeicher.
Informationen dazu, wie ein Endbenutzer ein Gerät deinstallieren kann, finden Sie unter Verwenden von Geräte-Manager zum Deinstallieren von Geräten und Treiberpaketen.
Löschen eines Treiberpakets aus dem Treiberspeicher
Um ein Treiberpaket aus dem Treiberspeicher zu löschen, müssen Sie:
- Stellen Sie sicher, dass keine Geräte mit dem Treiberpaket installiert sind.
- Entfernen Sie das Treiberpaket aus dem Treiberspeicher.
Wenn Sie beide Schritte mit einer Aktion ausführen möchten, können Sie eine der folgenden Aktionen ausführen:
- Verwenden Sie ab Windows 10, Version 1607, über die Eingabeaufforderung
pnputil /delete-driver <example.inf> /uninstall
. Informationen zu PnPUtil-Befehlen finden Sie unter PnPUtil Command Syntax. - Ab Windows 10, Version 1703, kann eine Geräteinstallationsanwendung DiUninstallDriverW aufrufen.
Unter Windows 10, Version 1511 und früher:
- Identifizieren Sie alle geräte, die derzeit mit dem Treiberpaket installiert sind, und aktualisieren Sie sie, damit sie nicht vom Treiberpaket abhängen. Sie können eine der folgenden Aktionen ausführen:
- Installieren Sie ein anderes Treiberpaket auf dem Gerät.
- Verwenden Sie DiInstallDevice mit dem
DIIDFLAG_INSTALLNULLDRIVER
Flag, um den NULL-Treiber auf dem Gerät zu installieren. - Deinstallieren Sie das Gerät.
- Die Geräteinstallationsanwendung ruft dann SetupUninstallOEMInf auf, um das Treiberpaket zu entfernen.
Beim Löschen eines Treiberpakets aus dem Treiberspeicher werden die zugehörigen Metadaten aus der internen Datenbank des PnP-Managers entfernt und verwandte INF-Dateien aus dem SYSTEM-INF-Verzeichnis gelöscht.
Nachdem das Treiberpaket entfernt wurde, ist es nicht mehr verfügbar, auf einem Gerät zu installieren. Um es erneut zu installieren, laden Sie das Treiberpaket erneut aus der ursprünglichen Quelle herunter, z. B. Windows Update.
Das manuelle Löschen des Treiberpakets aus dem Treiberspeicher kann zu unvorhersehbaren Verhaltensweisen führen.