Compare commits
4
Commits
1a8cf657e7
...
215a41fa05
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
215a41fa05 | ||
|
|
36711d8744 | ||
|
|
593ace0778 | ||
|
|
26d3448499 |
@@ -0,0 +1,19 @@
|
|||||||
|
@echo off
|
||||||
|
title Uninstall Unwanted Applications
|
||||||
|
|
||||||
|
echo.
|
||||||
|
echo Uninstalling unwanted apps...
|
||||||
|
|
||||||
|
echo - Dell SupportAssist
|
||||||
|
start "" /w MsiExec.exe /X{4F8A3BC3-641C-4B0D-AF46-EA3354016EA7} /qn /norestart
|
||||||
|
|
||||||
|
echo - Dell SupportAssist Remediation
|
||||||
|
start "" /w MsiExec.exe /X{2674B8DB-D696-4F9D-8606-E13E9D119579} /qn /norestart
|
||||||
|
|
||||||
|
echo - Dell SupportAssist OS Recovery Plugin for Dell Update
|
||||||
|
start "" /w MsiExec.exe /X{08E7C8D5-F2B5-4F09-B0EA-F28913BEFDB0} /qn /norestart
|
||||||
|
|
||||||
|
echo - Dell Digital Delivery Services
|
||||||
|
start "" /w MsiExec.exe /X{E530ABB7-9DCC-421B-B751-484375E8374A} /qn /norestart
|
||||||
|
|
||||||
|
echo Done!
|
||||||
@@ -0,0 +1,13 @@
|
|||||||
|
# URL to the OffscrubC2R.vbs script
|
||||||
|
$UninstallScriptURL = 'https://github.com/OfficeDev/Office-IT-Pro-Deployment-Scripts/raw/master/Office-ProPlus-Deployment/Deploy-OfficeClickToRun/OffScrubc2r.vbs'
|
||||||
|
|
||||||
|
# The path to the local script once downloaded
|
||||||
|
$UninstallScript = Download-File -URL $UninstallScriptURL
|
||||||
|
|
||||||
|
# Args to pass to the OffscrubC2R.vbs script
|
||||||
|
$ScriptArgs = "/ALL /QUIET /NOCANCEL"
|
||||||
|
|
||||||
|
# Run the script
|
||||||
|
LogMsg "Uninstalling all Click2Run versions of Office"
|
||||||
|
Try { Start-Process "cscript.exe" -ArgumentList "//nologo ""${UninstallScript}"" ${ScriptArgs}" -Wait }
|
||||||
|
Catch { LogErr $_.Exception.Message }
|
||||||
+11
-11
@@ -1,4 +1,4 @@
|
|||||||
## List all possible TeamViewer installation paths here.
|
# List all possible TeamViewer installation paths here.
|
||||||
$UninstallerPaths = @(
|
$UninstallerPaths = @(
|
||||||
"${Env:ProgramFiles}\TeamViewer\Version6\uninstall.exe",
|
"${Env:ProgramFiles}\TeamViewer\Version6\uninstall.exe",
|
||||||
"${Env:ProgramFiles(x86)}\TeamViewer\Version6\uninstall.exe",
|
"${Env:ProgramFiles(x86)}\TeamViewer\Version6\uninstall.exe",
|
||||||
@@ -14,7 +14,7 @@ $UninstallerPaths = @(
|
|||||||
"${Env:ProgramFiles(x86)}\Take Control Viewer\uninstall.exe"
|
"${Env:ProgramFiles(x86)}\Take Control Viewer\uninstall.exe"
|
||||||
)
|
)
|
||||||
|
|
||||||
## List all known registry keys
|
# List all known registry keys
|
||||||
$RegKeys = @(
|
$RegKeys = @(
|
||||||
"HKLM\SOFTWARE\TeamViewer",
|
"HKLM\SOFTWARE\TeamViewer",
|
||||||
"HKLM\SOFTWARE\WOW6432Node\TeamViewer",
|
"HKLM\SOFTWARE\WOW6432Node\TeamViewer",
|
||||||
@@ -23,7 +23,7 @@ $RegKeys = @(
|
|||||||
"HKCU\SOFTWARE\Wow6432Node\TeamViewer"
|
"HKCU\SOFTWARE\Wow6432Node\TeamViewer"
|
||||||
)
|
)
|
||||||
|
|
||||||
## Find the most likely path to the TeamViewer uninstaller
|
# Find the most likely path to the TeamViewer uninstaller
|
||||||
If ( Test-Path "${Env:ProgramFiles(x86)}" )
|
If ( Test-Path "${Env:ProgramFiles(x86)}" )
|
||||||
{
|
{
|
||||||
$INSTALLDIR = $(Get-ItemProperty -Path "HKLM:\SOFTWARE\WOW6432Node\TeamViewer").InstallationDirectory
|
$INSTALLDIR = $(Get-ItemProperty -Path "HKLM:\SOFTWARE\WOW6432Node\TeamViewer").InstallationDirectory
|
||||||
@@ -34,33 +34,33 @@ Else
|
|||||||
$INSTALLDIR = $(Get-ItemProperty -Path "HKLM:\SOFTWARE\TeamViewer").InstallationDirectory
|
$INSTALLDIR = $(Get-ItemProperty -Path "HKLM:\SOFTWARE\TeamViewer").InstallationDirectory
|
||||||
}
|
}
|
||||||
|
|
||||||
## Kill all running instances of TeamViewer
|
# Kill all running instances of TeamViewer
|
||||||
Get-Process | Where { $_.Name -like "*TeamViewer*" } | Stop-Process
|
Get-Process | Where { $_.Name -like "*TeamViewer*" } | Stop-Process -Force
|
||||||
|
|
||||||
If ( Test-Path "${INSTALLDIR}\uninstall.exe" )
|
If ( Test-Path "${INSTALLDIR}\uninstall.exe" )
|
||||||
{ Start-Process "${INSTALLDIR}\uninstall.exe" -ArgumentList "/S" -Wait }
|
{ Start-Process "${INSTALLDIR}\uninstall.exe" -ArgumentList "/S" -Wait }
|
||||||
|
|
||||||
## Loop through each path in $UninstallerPaths and test if each one exists.
|
# Loop through each path in $UninstallerPaths and test if each one exists.
|
||||||
## If a path exists, silently run the uninstaller and then delete the directory.
|
# If a path exists, silently run the uninstaller and then delete the directory.
|
||||||
Foreach ($uninstaller in $UninstallerPaths)
|
Foreach ($uninstaller in $UninstallerPaths)
|
||||||
{
|
{
|
||||||
If ( Test-Path "${uninstaller}" )
|
If ( Test-Path "${uninstaller}" )
|
||||||
{
|
{
|
||||||
## Run the uninstaller
|
# Run the uninstaller
|
||||||
Start-Process "${uninstaller}" -ArgumentList "/S" -Wait
|
Start-Process "${uninstaller}" -ArgumentList "/S" -Wait
|
||||||
|
|
||||||
## Remove the directory
|
# Remove the directory
|
||||||
$dirname = $(Get-Item $uninstaller).Directory.FullName
|
$dirname = $(Get-Item $uninstaller).Directory.FullName
|
||||||
Remove-Item "${dirname}" -Recurse -ErrorAction SilentlyContinue
|
Remove-Item "${dirname}" -Recurse -ErrorAction SilentlyContinue
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
## Remove each registry key in $RegKeys
|
# Remove each registry key in $RegKeys
|
||||||
Foreach ($key in $RegKeys)
|
Foreach ($key in $RegKeys)
|
||||||
{
|
{
|
||||||
If ( Test-Path $key ) { Remove-Item $key -Recurse }
|
If ( Test-Path $key ) { Remove-Item $key -Recurse }
|
||||||
}
|
}
|
||||||
|
|
||||||
## Remove the TeamViewer service
|
# Remove the TeamViewer service
|
||||||
Start-Process "sc.exe" -ArgumentList "delete TeamViewer" -Wait
|
Start-Process "sc.exe" -ArgumentList "delete TeamViewer" -Wait
|
||||||
Start-Process "sc.exe" -ArgumentList "delete TeamViewer_Service" -Wait
|
Start-Process "sc.exe" -ArgumentList "delete TeamViewer_Service" -Wait
|
||||||
@@ -0,0 +1,87 @@
|
|||||||
|
# Make sure this script runs as admin
|
||||||
|
If ( IsAdmin -eq $false ) { LogMsg "This script can only be run as admin" ; Exit }
|
||||||
|
|
||||||
|
# This is the list of Windows 10 AppX app names that we'll try to uninstall
|
||||||
|
$AppList = @(
|
||||||
|
# Office Apps
|
||||||
|
'Microsoft.Office.Sway',
|
||||||
|
'Microsoft.MicrosoftOfficeHub',
|
||||||
|
'Microsoft.Office.Desktop',
|
||||||
|
'Microsoft.Getstarted',
|
||||||
|
'Microsoft.Microsoft3DViewer',
|
||||||
|
'Microsoft.SkypeApp',
|
||||||
|
'Microsoft.WindowsFeedbackHub',
|
||||||
|
|
||||||
|
# Windows Apps
|
||||||
|
'Microsoft.Getstarted',
|
||||||
|
'Microsoft.NetworkSpeedTest',
|
||||||
|
'Microsoft.FreshPaint',
|
||||||
|
'Microsoft.Print3D',
|
||||||
|
'Microsoft.SkypeApp',
|
||||||
|
'Microsoft.3DBuilder',
|
||||||
|
'Microsoft.Microsoft3DViewer',
|
||||||
|
'microsoft.windowscommunicationsapps',
|
||||||
|
'Microsoft.Advertising.Xaml',
|
||||||
|
'Microsoft.Advertising.Xaml',
|
||||||
|
'Microsoft.MicrosoftSolitaireCollection',
|
||||||
|
|
||||||
|
# 3rd Party Apps
|
||||||
|
'DB6EA5DB.MediaSuiteEssentialsforDell',
|
||||||
|
'DB6EA5DB.Power2GoforDell',
|
||||||
|
'DB6EA5DB.PowerDirectorforDell',
|
||||||
|
'DB6EA5DB.PowerMediaPlayerforDell',
|
||||||
|
'DellInc.DellDigitalDelivery',
|
||||||
|
'DellInc.DellSupportAssistforPCs',
|
||||||
|
'DellInc.PartnerPromo',
|
||||||
|
'HONHAIPRECISIONINDUSTRYCO.DellWatchdogTimer',
|
||||||
|
'AdobeSystemsIncorporated.AdobePhotoshopExpress',
|
||||||
|
'ActiproSoftwareLLC.562882FEEB491',
|
||||||
|
'D5EA27B7.Duolingo-LearnLanguagesforFree',
|
||||||
|
'Flipboard.Flipboard',
|
||||||
|
'king.com.CandyCrushSodaSaga',
|
||||||
|
'7EE7776C.LinkedInforWindows',
|
||||||
|
'9E2F88E3.Twitter',
|
||||||
|
'SlingTVLLC.SlingTV',
|
||||||
|
'Facebook.Facebook',
|
||||||
|
'A278AB0D.MarchofEmpires',
|
||||||
|
'Microsoft.MinecraftUWP',
|
||||||
|
'DB6EA5DB.CyberLinkMediaSuiteEssentials',
|
||||||
|
'PandoraMediaInc.29680B314EFC2'
|
||||||
|
)
|
||||||
|
|
||||||
|
# Remove/uninstall Appx packages on Windows 8 or higher
|
||||||
|
If ( IsWindowsBuild -ge 9200 )
|
||||||
|
{
|
||||||
|
ForEach ( $App in $AppList ) {
|
||||||
|
# Get the full name for the package and provisioned package
|
||||||
|
$PackageFullName = $($(Get-AppxPackage $App).PackageFullName)
|
||||||
|
$ProPackageFullName = $($(Get-AppxProvisionedPackage -Online | Where-Object {$_.Displayname -eq $App}).PackageName)
|
||||||
|
|
||||||
|
# If the package exists, uninstall it
|
||||||
|
If ($PackageFullName) {
|
||||||
|
LogMsg “Removing package: ${PackageFullName}”
|
||||||
|
Try { Remove-AppxPackage -Package $PackageFullName }
|
||||||
|
Catch { LogErr $_.Exception.Message }
|
||||||
|
}
|
||||||
|
|
||||||
|
# If the provisioned package exists, uninstall it
|
||||||
|
If ($ProPackageFullName) {
|
||||||
|
LogMsg “Removing provisioned package: ${ProPackageFullName}”
|
||||||
|
Try { Remove-AppxProvisionedPackage -PackageName $ProPackageFullName -Online -AllUsers }
|
||||||
|
Catch { LogErr $_.Exception.Message }
|
||||||
|
}
|
||||||
|
}
|
||||||
|
} Else { LogMsg "Cannot remove Appx packages because this endpoint is not running Windows 8 or higher" }
|
||||||
|
|
||||||
|
# Uninstall unwanted applications
|
||||||
|
LogMsg "Uninstalling: Dell SupportAssist"
|
||||||
|
Start-Process "msiexec.exe" -ArgumentList "/X{4F8A3BC3-641C-4B0D-AF46-EA3354016EA7} /qn /norestart" -Wait
|
||||||
|
|
||||||
|
LogMsg "Uninstalling: Dell SupportAssist Remediation"
|
||||||
|
Start-Process "msiexec.exe" -ArgumentList "/X{2674B8DB-D696-4F9D-8606-E13E9D119579} /qn /norestart" -Wait
|
||||||
|
|
||||||
|
LogMsg "Uninstalling: Dell SupportAssist OS Recovery Plugin for Dell Update"
|
||||||
|
Start-Process "msiexec.exe" -ArgumentList "/X{08E7C8D5-F2B5-4F09-B0EA-F28913BEFDB0} /qn /norestart" -Wait
|
||||||
|
|
||||||
|
LogMsg "Uninstalling: Dell Digital Delivery Services"
|
||||||
|
Start-Process "msiexec.exe" -ArgumentList "/X{E530ABB7-9DCC-421B-B751-484375E8374A} /qn /norestart" -Wait
|
||||||
@@ -1,72 +0,0 @@
|
|||||||
## This is the list of Windows 10 AppX app names that we'll try to uninstall
|
|
||||||
$AppList = @(
|
|
||||||
## Office Apps
|
|
||||||
'Microsoft.Office.Sway',
|
|
||||||
#'Microsoft.Office.OneNote',
|
|
||||||
'Microsoft.MicrosoftOfficeHub',
|
|
||||||
'Microsoft.Office.Desktop',
|
|
||||||
|
|
||||||
## Bing Apps
|
|
||||||
'Microsoft.BingFinance',
|
|
||||||
'Microsoft.BingSports',
|
|
||||||
'Microsoft.BingNews',
|
|
||||||
'Microsoft.BingWeather',
|
|
||||||
|
|
||||||
## Windows Apps
|
|
||||||
'Microsoft.Getstarted',
|
|
||||||
'Microsoft.NetworkSpeedTest',
|
|
||||||
'Microsoft.FreshPaint',
|
|
||||||
'Microsoft.Print3D',
|
|
||||||
#'Microsoft.Wallet',
|
|
||||||
'Microsoft.SkypeApp',
|
|
||||||
#'Microsoft.ZuneMusic',
|
|
||||||
#'Microsoft.ZuneVideo',
|
|
||||||
'Microsoft.3DBuilder',
|
|
||||||
'Microsoft.Microsoft3DViewer',
|
|
||||||
'microsoft.windowscommunicationsapps',
|
|
||||||
#'Microsoft.OneConnect',
|
|
||||||
'Microsoft.Advertising.Xaml',
|
|
||||||
'Microsoft.Advertising.Xaml',
|
|
||||||
'Microsoft.XboxApp',
|
|
||||||
'Microsoft.MicrosoftSolitaireCollection',
|
|
||||||
'Microsoft.Windows.Cortana',
|
|
||||||
|
|
||||||
## 3rd Party Apps
|
|
||||||
'AdobeSystemsIncorporated.AdobePhotoshopExpress',
|
|
||||||
'ActiproSoftwareLLC.562882FEEB491',
|
|
||||||
'D5EA27B7.Duolingo-LearnLanguagesforFree',
|
|
||||||
'Flipboard.Flipboard',
|
|
||||||
'king.com.CandyCrushSodaSaga',
|
|
||||||
'7EE7776C.LinkedInforWindows',
|
|
||||||
'9E2F88E3.Twitter',
|
|
||||||
'SlingTVLLC.SlingTV',
|
|
||||||
'Facebook.Facebook',
|
|
||||||
'A278AB0D.MarchofEmpires',
|
|
||||||
'Microsoft.MinecraftUWP',
|
|
||||||
'DB6EA5DB.CyberLinkMediaSuiteEssentials',
|
|
||||||
'PandoraMediaInc.29680B314EFC2')
|
|
||||||
|
|
||||||
## Make sure the computer is running Windows 10
|
|
||||||
If ( ([System.Environment]::OSVersion.Version).Major -ge 10 )
|
|
||||||
{
|
|
||||||
ForEach ( $App in $AppList )
|
|
||||||
{
|
|
||||||
## Get the full name for the package and provisioned package
|
|
||||||
$PackageFullName = $($(Get-AppxPackage $App).PackageFullName)
|
|
||||||
$ProPackageFullName = $($(Get-AppxProvisionedPackage -Online | Where {$_.Displayname -eq $App}).PackageName)
|
|
||||||
|
|
||||||
## If the package exists, uninstall it
|
|
||||||
if ($PackageFullName)
|
|
||||||
{
|
|
||||||
Write-Host “${PackageFullName}”
|
|
||||||
Remove-AppxPackage -Package $PackageFullName
|
|
||||||
}
|
|
||||||
|
|
||||||
## If the provisioned package exists, uninstall it
|
|
||||||
if ($ProPackageFullName)
|
|
||||||
{
|
|
||||||
Write-Host “${ProPackageFullName}”
|
|
||||||
Remove-AppxProvisionedPackage -PackageName $ProPackageFullName -Online -AllUsers
|
|
||||||
}
|
|
||||||
}
|
|
||||||
} Else { Write-Host "This computer is not running Windows 10" }
|
|
||||||
Reference in New Issue
Block a user