diff --git a/RemoveHKeyPrinters.ps1 b/RemoveHKeyPrinters.ps1 index dc5d3bc..cf64956 100644 --- a/RemoveHKeyPrinters.ps1 +++ b/RemoveHKeyPrinters.ps1 @@ -6,7 +6,7 @@ if (!(Test-Path $flagFolder)) { } if (Test-Path $flagFile) { - Write-Host "Script has already run. Exiting." + Write-Host "Script has already run. Exiting." --ForegroundColor Red exit } @@ -26,11 +26,13 @@ $HKLMPrinterPaths = @( 'HKEY_LOCAL_MACHINE\SOFTWARE\Xerox\PrinterDriver' ) +Write-Host "Stopping spooler" --ForegroundColor Yellow net stop spooler -foreach ($printerPath in $HKLMPrinterPaths) { +foreach ($HKLMPrinterPaths in $HKLMPrinterPaths) { try { - Remove-Item -Path "Registry::$printerPath" -Recurse -Force -ErrorAction Stop + Remove-Item -Path "Registry::${HKLMPrinterPaths}" -Recurse -Force -ErrorAction Stop + Write-Host "Removed local machine key ${HKLMPrinterPaths}" --ForegroundColor Green } catch { Write-Host "Error: $($_.Exception.Message)" } @@ -44,7 +46,8 @@ foreach ($sidKey in $sids) { foreach ($printerPath in $printerPaths) { try { - Remove-Item -Path "Registry::HKEY_USERS\$sid$printerPath" -Recurse -Force -ErrorAction Stop + Remove-Item -Path "Registry::HKEY_USERS\${sid}${printerPath}" -Recurse -Force -ErrorAction Stop + Write-Host "Removed user profile key HKEY_USERS\${sid}${printerPath}" --ForegroundColor Green } catch { Write-Host "Error: $($_.Exception.Message)" } @@ -56,8 +59,33 @@ foreach ($sidKey in $sids) { } } +try { + Remove-Item -Path "C:\Windows\System32\spool\PRINTERS" -Recurse -Force + Write-Host "Removed PRINTERS from spooler" --ForegroundColor Green +} catch { + Write-Host "Error Removing PRINTERS from spooler" --ForegroundColor Red + Write-Host "Error: $($_.Exception.Message)" +} + +try { + Remove-Item -Path "C:\Windows\System32\spool\V4Dirs" -Recurse -Force + Write-Host "Removed V4Dirs from spooler" --ForegroundColor Green +} catch { + Write-Host "Error Removing V4Dirs from spooler" --ForegroundColor Red + Write-Host "Error: $($_.Exception.Message)" +} + +Write-Host "Starting spooler" --ForegroundColor Yellow net start spooler + +Write-Host "Running gpupdate" --ForegroundColor Yellow gpupdate /force -New-Item -Path $flagFile -ItemType File -Force +try { + New-Item -Path $flagFile -ItemType File -Force + Write-Host "created flag at ${flagFile}" --ForegroundColor Green +} catch { + Write-Host "Could not create flag at ${flagFile}" --ForegroundColor Red + Write-Host "Error: $($_.Exception.Message)" +}