Pester 3.4.0 entfernen

So genial Pester auch ist, ein kleiner Makel ist der Umstand, dass Windows 10 und WIndows Server mit einer Version vorinstalliert werden (ich habe es bereits irgendwo erwähnt – Pester war das erste Open Source-Programm, das fester Bestandteil einer Windows-Installation ist), die inzwischen vollkommen veraltet ist. Seit der Version 4.0 (aktuell ist die Version 5.1.1 – Stand Feb 2021) hat es viele Änderungen gegeben, so dass man mit der Originalversion nicht mehr arbeiten sollte.

Das Löschen des Modulverzeichnisses scheitert aber zunächst an dem Umstand, dass es sich aufgrund fehlender Berechtigungen nicht löschen lässt. Der TrustedInstaller lässt es nicht zu.

Man muss daher zunächst den Ordner als Administrator in Besitz nehmen und die TrustedInstaller-Berechtigungen entfernen. Auch wenn das alles sowohl im Explorer als auch per PowerShell möglich ist, am einfachsten geht es mit Hilfe der guten, alten Kommandozeilentools takeown und icacls.

Die folgende Befehlsfolge zeigt, wie es für ein bestimmtes Verzeichnis unter einem 32- und 64-Bit-Windows funktioniert.


$PesterModulPfad = "C:\Program Files\WindowsPowerShell\Modules\Pester\3.4.0"
if (Test-Path -Path $PesterModulPfad)
{
    takeown /F $PesterModulPfad /A /R
    icacls $PesterModulPfad /reset
    icacls $pesterPath /grant "*S-1-5-32-544:F" /inheritance:d /T
    Remove-Item -Path $PesterModulPfad -Recurse -Force -Confirm:$false # -WhatIf
}
else
{
    Write-Warning "!!! $PesterModulPfad existiert nicht !!!"
}

Auch wenn jede Menge Syntaxhilfe ausgegeben wird (irgendetwas scheint mit den Aufrufparametern noch nicht zu stimmen), wird das Pester 3.4.0-Verzeichnis am Ende entfernt.

Eine ausführlichere Abhandlung der Thematik kann man in den GitHub-Gists von Jakub Jareš nachlesen (ein „Gist“ ist beim Microsoft-GitHub-Portal die Bezeichnung für einen Codeschnipsel bzw. eine einzelne Datei).

Remove built-in version of Pester 3 (or -All) from Windows 10 Program Files and Program Files (x86). (github.com)

PS: Das Pester-Projekt hat schon seit längerem eine eigene Projektwebseite: https://pester.dev/

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.

Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre mehr darüber, wie deine Kommentardaten verarbeitet werden.