Files
management-scripts/Uninstall-NCentralComponents.ps1

123 lines
5.5 KiB
PowerShell

## Remove N-Central Patch Management Service Controller
If ( Test-Path "${Env:ProgramFiles(x86)}\MspPlatform\PME\unins000.exe" ) {
Write-Output "Uninstalling N-Central Patch Management Service Controller"
Try { Start-Process "${Env:ProgramFiles(x86)}\MspPlatform\PME\unins000.exe" -ArgumentList "/SILENT" -Wait }
Catch { Write-Error $_.Exception.Message }
}
## Remove N-Central File Cache Service Agent
If ( Test-Path "${Env:ProgramFiles(x86)}\MspPlatform\FileCacheServiceAgent\unins000.exe" ) {
Write-Output "Uninstalling N-Central File Cache Service Agent"
Try { Start-Process "${Env:ProgramFiles(x86)}\MspPlatform\FileCacheServiceAgent\unins000.exe" -ArgumentList "/SILENT" -Wait }
Catch { Write-Error $_.Exception.Message }
}
## Remove N-Central Request Handler Agent
If ( Test-Path "${Env:ProgramFiles(x86)}\MspPlatform\RequestHandlerAgent\unins000.exe" ) {
Write-Output "Uninstalling N-Central Request Handler Agent"
Try { Start-Process "${Env:ProgramFiles(x86)}\MspPlatform\RequestHandlerAgent\unins000.exe" -ArgumentList "/SILENT" -Wait }
Catch { Write-Error $_.Exception.Message }
}
## Remove Windows Software Probe
If ( Test-Path "${ProgramFiles(x86)}\N-able Technologies\Windows Software Probe\" ) {
$ProductCode = (Get-ItemProperty -Path "HKLM:\SOFTWARE\Wow6432Node\N-able Technologies\Windows Software Probe").ProductCode
Write-Output "Uninstalling Windows Software Probe"
Try { Start-Process "msiexec.exe" -ArgumentList "/X {${ProductCode}} /qn" -Wait }
Catch { Write-Error $_.Exception.Message }
}
## Remove Windows Agent
If ( Test-Path "${ProgramFiles(x86)}\N-able Technologies\Windows Agent\" ) {
Write-Output "Uninstalling N-Central Windows Agent"
Try { Start-Process "msiexec.exe" -ArgumentList "/X{F5873D07-85EE-4010-A461-B60989884B1C} /qn" -Wait }
Catch { Write-Error $_.Exception.Message }
}
## Remove NablePatchRepositoryService
$ServiceName = "NablePatchRepositoryService"
$Service = Get-Service -Name $ServiceName -ErrorAction SilentlyContinue
If ( $Service.Length -gt 0 ) {
Control-Service -Stop -Name $ServiceName
Write-Output "Deleting the service: ""${ServiceName}"""
Try { Start-Process "sc" -ArgumentList "delete ${ServiceName}" -Wait }
Catch { Write-Error $_.Exception.Message }
}
## Remove Windows Software Probe Maintenance Service
$ServiceName = "Windows Software Probe Maintenance Service"
$Service = Get-Service -Name $ServiceName -ErrorAction SilentlyContinue
If ( $Service.Length -gt 0 ) {
Control-Service -Stop -Name $ServiceName
Write-Output "Deleting the service: ""${ServiceName}"""
Try { Start-Process "sc" -ArgumentList "delete ${ServiceName}" -Wait }
Catch { Write-Error $_.Exception.Message }
}
## Remove Windows Software Probe Syslog Service
$ServiceName = "Windows Software Probe Syslog Service"
$Service = Get-Service -Name $ServiceName -ErrorAction SilentlyContinue
If ( $Service.Length -gt 0 ) {
Control-Service -Stop -Name $ServiceName
Write-Output "Deleting the service: ""${ServiceName}"""
Try { Start-Process "sc" -ArgumentList "delete ${ServiceName}" -Wait }
Catch { Write-Error $_.Exception.Message }
}
## Remove Windows Software Probe Service
$ServiceName = "Windows Software Probe Service"
$Service = Get-Service -Name $ServiceName -ErrorAction SilentlyContinue
If ( $Service.Length -gt 0 ) {
Control-Service -Stop -Name $ServiceName
Write-Output "Deleting the service: ""${ServiceName}"""
Try { Start-Process "sc" -ArgumentList "delete ${ServiceName}" -Wait }
Catch { Write-Error $_.Exception.Message }
}
## Remove Windows Agent Maintenance Service
$ServiceName = "Windows Agent Maintenance Service"
$Service = Get-Service -Name $ServiceName -ErrorAction SilentlyContinue
If ( $Service.Length -gt 0 ) {
Control-Service -Stop -Name $ServiceName
Write-Output "Deleting the service: ""${ServiceName}"""
Try { Start-Process "sc" -ArgumentList "delete ${ServiceName}" -Wait }
Catch { Write-Error $_.Exception.Message }
}
## Remove Windows Agent Service
$ServiceName = "Windows Agent Service"
$Service = Get-Service -Name $ServiceName -ErrorAction SilentlyContinue
If ( $Service.Length -gt 0 ) {
Control-Service -Stop -Name $ServiceName
Write-Output "Deleting the service: ""${ServiceName}"""
Try { Start-Process "sc" -ArgumentList "delete ${ServiceName}" -Wait }
Catch { Write-Error $_.Exception.Message }
}
## Remove "MspPlatform" directory
If ( Test-Path "${Env:ProgramFiles(x86)}\MspPlatform" ) {
Write-Output "Forcefully removing ""${Env:ProgramFiles(x86)}\MspPlatform"""
Try { Remove-Item "${Env:ProgramFiles(x86)}\MspPlatform" -Recurse -Force }
Catch { Write-Error $_.Exception.Message }
}
## Remove "N-able Technologies" directory
If ( Test-Path "${Env:ProgramFiles(x86)}\N-able Technologies" ) {
Write-Output "Forcefully removing ""${Env:ProgramFiles(x86)}\N-able Technologies"""
Try { Remove-Item "${Env:ProgramFiles(x86)}\N-able Technologies" -Recurse -Force }
Catch { Write-Error $_.Exception.Message }
}
## Remove "N-able Technologies" registry key
If ( Test-Path "HKLM:SOFTWARE\Wow6432Node\N-able Technologies" ) {
Write-Output "Forcefully removing ""HKLM:SOFTWARE\Wow6432Node\N-able Technologies"""
Try { Remove-Item "HKLM:SOFTWARE\Wow6432Node\N-able Technologies" -Recurse -Force }
Catch { Write-Error $_.Exception.Message }
}
If ( Test-Path "HKLM:SOFTWARE\N-able Technologies" ) {
Write-Output "Forcefully removing ""HKLM:SOFTWARE\N-able Technologies"""
Try { Remove-Item "HKLM:SOFTWARE\N-able Technologies" -Recurse -Force }
Catch { Write-Error $_.Exception.Message }
}