Update App Uninstall Scripts/App - Cisco AnyConnect - Uninstall.ps1

This commit is contained in:
2025-08-06 23:39:34 +00:00
parent c4c261969e
commit 4b9deff63b
@@ -1,61 +1,60 @@
<# <#
Author: Gabe Kerntke Author: Gabe Kerntke
Company: UFS LLC Date: 02-21-2024
Date: 02-21-2024
.Synopsis
.Synopsis Script checks to see if Cisco AnyConnect is installed, if installed it will uninstall
Script checks to see if Cisco AnyConnect is installed, if installed it will uninstall
.Modified
.Modified 2024-02-21 (GabeK) - Original script created
2024-02-21 (GabeK) - Original script created
#>
#>
######################
###################### ### Variables ###
### Variables ### ######################
###################### $Name = "Cisco AnyConnect Secure Mobility Client"
$Name = "Cisco AnyConnect Secure Mobility Client"
######################
###################### ### Functions ###
### Functions ### ######################
######################
#Function checks for 32 or 64 bit processor and then pulls list of applications accordingly
#Function checks for 32 or 64 bit processor and then pulls list of applications accordingly Function Get-Software ($CPU = $ENV:PROCESSOR_ARCHITECTURE) {
Function Get-Software ($CPU = $ENV:PROCESSOR_ARCHITECTURE) { If ($CPU -eq 'AMD64') {
If ($CPU -eq 'AMD64') { $64bit = Get-ItemProperty HKLM:\Software\Microsoft\Windows\CurrentVersion\Uninstall\*
$64bit = Get-ItemProperty HKLM:\Software\Microsoft\Windows\CurrentVersion\Uninstall\* $32bit = Get-ItemProperty HKLM:\Software\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall\*
$32bit = Get-ItemProperty HKLM:\Software\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall\* $32bit + $64bit
$32bit + $64bit }
} Else { Get-ItemProperty HKLM:\Software\Microsoft\Windows\CurrentVersion\Uninstall\* }
Else { Get-ItemProperty HKLM:\Software\Microsoft\Windows\CurrentVersion\Uninstall\* } }
}
#Function to uninstall via WMIobject (control panel)
#Function to uninstall via WMIobject (control panel) Function Uninstall {
Function Uninstall { $Uninstall = Get-WmiObject Win32_Product -filter "name like '$Name%'" | ForEach-Object { $_.Uninstall() }
$Uninstall = Get-WmiObject Win32_Product -filter "name like '$Name%'" | ForEach-Object { $_.Uninstall() } $Value = $Uninstall | Select-Object -ExpandProperty ReturnValue
$Value = $Uninstall | Select-Object -ExpandProperty ReturnValue
If ($Value -eq "0") {
If ($Value -eq "0") { Write-Host "$Name uninstalled successfully"
Write-Host "$Name uninstalled successfully" #$Path = Get-ChildItem "C:\Users" -Recurse -Force | Where-Object {$_ -like "*Cisco AnyConnect*"}
#$Path = Get-ChildItem "C:\Users" -Recurse -Force | Where-Object {$_ -like "*Cisco AnyConnect*"} #Foreach ($Item in $Path) {
#Foreach ($Item in $Path) { #Remove-Item -Force -Recurse -Verbose -ErrorAction SilentlyContinue
#Remove-Item -Force -Recurse -Verbose -ErrorAction SilentlyContinue #}
#} }
} else {
else { Write-Host "Failed to uninstall $Name, exiting script"
Write-Host "Failed to uninstall $Name, exiting script" }
} }
}
######################
###################### ### Script start ###
### Script start ### ######################
######################
#Check to see if program is installed
#Check to see if program is installed $Applist = Get-Software | Where-Object { $_.DisplayName -like "*$Name*" }
$Applist = Get-Software | Where-Object { $_.DisplayName -like "*$Name*" } If ($Applist.DisplayName -like "*$Name*") {
If ($Applist.DisplayName -like "*$Name*") { Uninstall
Uninstall }
} Else {
Else { Write-Host "$Name is not installed, exiting script"
Write-Host "$Name is not installed, exiting script"
} }