Direkt zum Hauptinhalt

HP Treiber entfernen

Ich hasse HP, vor allem Drucker...

Der Uninstaller deren Software tat nix, alles blieb über. Also Radikal:

@echo off
setlocal EnableExtensions EnableDelayedExpansion

set "DRIVERFILE=%TEMP%\drivers.txt"
set "HPFILE=%TEMP%\hpdrivers.txt"
set "FAILFILE=%TEMP%\hpdrivers_failed.txt"

echo [1/3] Installierte Treiber werden ermittelt...
pnputil /enum-drivers /files > "%DRIVERFILE%"

if errorlevel 1 (
    echo FEHLER: pnputil konnte die Treiber nicht auflisten.
    exit /b 1
)

rem HP-Treiber anhand der Provider-Zeilen ermitteln
rem Funktioniert mit englischer und deutscher Ausgabe

set "PUBLISHED="
set "PROVIDER="
type nul > "%HPFILE%"

for /f "usebackq delims=" %%L in ("%DRIVERFILE%") do (
    set "LINE=%%L"

    echo(!LINE!| findstr /i /b /c:"Published Name" /c:"Veröffentlichter Name" >nul
    if not errorlevel 1 (
        call :SaveDriver
        for /f "tokens=2 delims=:" %%A in ("!LINE!") do (
            set "PUBLISHED=%%A"
        )
        for /f "tokens=* delims= " %%A in ("!PUBLISHED!") do set "PUBLISHED=%%A"
        set "PROVIDER="
    )

    echo(!LINE!| findstr /i /b /c:"Provider Name" /c:"Anbietername" >nul
    if not errorlevel 1 (
        for /f "tokens=2 delims=:" %%A in ("!LINE!") do (
            set "PROVIDER=%%A"
        )
        for /f "tokens=* delims= " %%A in ("!PROVIDER!") do set "PROVIDER=%%A"
    )
)

call :SaveDriver

echo.
echo Gefundene HP-Treiber:
type "%HPFILE%"
echo.

if not exist "%HPFILE%" exit /b 0

echo [2/3] Deinstallation der HP-Treiber...
type nul > "%FAILFILE%"

for /f "usebackq delims=" %%D in ("%HPFILE%") do (
    echo.
    echo Entferne %%D ...
    pnputil /delete-driver %%D /uninstall
    if errorlevel 1 (
        echo %%D>>"%FAILFILE%"
    )
)

echo.
echo [3/3] Erneuter Versuch mit /force...

for /f "usebackq delims=" %%D in ("%FAILFILE%") do (
    echo.
    echo Erzwinge Entfernung von %%D ...
    pnputil /delete-driver %%D /force
)

echo.
echo Cleanup abgeschlossen.
echo Treiberliste: %DRIVERFILE%
echo Gefundene HP-Treiber: %HPFILE%
echo Fehlgeschlagene Erstversuche: %FAILFILE%
exit /b 0


:SaveDriver
if not defined PUBLISHED exit /b
if /i "!PROVIDER!"=="HP" echo !PUBLISHED!>>"%HPFILE%"
if /i "!PROVIDER!"=="Hewlett-Packard" echo !PUBLISHED!>>"%HPFILE%"
exit /b

danach neustarten, dann ist leer und ihr könnt weiter machen