Added -Force switch
This commit is contained in:
parent
ea0323d8ec
commit
83743197e9
@ -13,6 +13,8 @@
|
|||||||
Will supress the reboot after finishing the script.
|
Will supress the reboot after finishing the script.
|
||||||
.PARAMETER UseSetupRemoval
|
.PARAMETER UseSetupRemoval
|
||||||
Will use the setup methode to remove current Office installations instead of SaRA.
|
Will use the setup methode to remove current Office installations instead of SaRA.
|
||||||
|
.PARAMETER Force
|
||||||
|
Skip user-input.
|
||||||
.INPUTS
|
.INPUTS
|
||||||
None
|
None
|
||||||
.OUTPUTS
|
.OUTPUTS
|
||||||
@ -30,7 +32,8 @@
|
|||||||
Param (
|
Param (
|
||||||
[switch]$InstallOffice365 = $False,
|
[switch]$InstallOffice365 = $False,
|
||||||
[switch]$SupressReboot = $False,
|
[switch]$SupressReboot = $False,
|
||||||
[switch]$UseSetupRemoval = $False
|
[switch]$UseSetupRemoval = $False,
|
||||||
|
[Switch]$Force = $False
|
||||||
)
|
)
|
||||||
|
|
||||||
#----------------------------------------------------------[Declarations]----------------------------------------------------------
|
#----------------------------------------------------------[Declarations]----------------------------------------------------------
|
||||||
@ -41,17 +44,20 @@ $SaRA_EXE = "$SaRA_DIR\SaRAcmd.exe"
|
|||||||
$Office365Setup_URL = "https://github.com/Admonstrator/msoffice-removal-tool/raw/main/office365-installer"
|
$Office365Setup_URL = "https://github.com/Admonstrator/msoffice-removal-tool/raw/main/office365-installer"
|
||||||
#-----------------------------------------------------------[Functions]------------------------------------------------------------
|
#-----------------------------------------------------------[Functions]------------------------------------------------------------
|
||||||
Function Invoke-OfficeUninstall {
|
Function Invoke-OfficeUninstall {
|
||||||
|
if (-Not (Test-Path "$SaRA_DIR")) {
|
||||||
|
New-Item "$SaRA_DIR" -ItemType Directory
|
||||||
|
}
|
||||||
if ($UseSetupRemoval) {
|
if ($UseSetupRemoval) {
|
||||||
Write-Host "Invoking default setup methode ..."
|
Write-Host "Invoking default setup methode ..."
|
||||||
Invoke-SetupOffice365 "$Office365Setup_URL\purge.xml"
|
Invoke-SetupOffice365 "$Office365Setup_URL/purge.xml"
|
||||||
else {
|
}
|
||||||
Write-Host "Invoking SaRA methode ..."
|
else {
|
||||||
Remove-SaRA
|
Write-Host "Invoking SaRA methode ..."
|
||||||
Write-Host "Downloading most recent SaRA build ..."
|
Remove-SaRA
|
||||||
Invoke-SaRADownload
|
Write-Host "Downloading most recent SaRA build ..."
|
||||||
Write-Host "Removing Office installations ..."
|
Invoke-SaRADownload
|
||||||
Invoke-SaRA
|
Write-Host "Removing Office installations ..."
|
||||||
}
|
Invoke-SaRA
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
Function Invoke-SaRADownload {
|
Function Invoke-SaRADownload {
|
||||||
@ -125,7 +131,7 @@ Function Invoke-SaRA {
|
|||||||
Function Invoke-SetupOffice365($Office365ConfigFile) {
|
Function Invoke-SetupOffice365($Office365ConfigFile) {
|
||||||
if ($InstallOffice365) {
|
if ($InstallOffice365) {
|
||||||
Write-Host "Downloading Office365 Installer ..."
|
Write-Host "Downloading Office365 Installer ..."
|
||||||
Start-BitsTransfer -Source "$Office365Setup_URL\setup.exe" -Destination "$SaRA_DIR\setup.exe"
|
Start-BitsTransfer -Source "$Office365Setup_URL/setup.exe" -Destination "$SaRA_DIR\setup.exe"
|
||||||
Start-BitsTransfer -Source "$Office365ConfigFile" -Destination "$SaRA_DIR\config.xml"
|
Start-BitsTransfer -Source "$Office365ConfigFile" -Destination "$SaRA_DIR\config.xml"
|
||||||
Write-Host "Executing Office365 Setup ..."
|
Write-Host "Executing Office365 Setup ..."
|
||||||
$OfficeSetup = Start-Process -FilePath "$SaRA_DIR\setup.exe" -ArgumentList "/configure $SaRA_DIR\config.xml" -Wait -PassThru -NoNewWindow
|
$OfficeSetup = Start-Process -FilePath "$SaRA_DIR\setup.exe" -ArgumentList "/configure $SaRA_DIR\config.xml" -Wait -PassThru -NoNewWindow
|
||||||
@ -158,9 +164,18 @@ Write-Host "Microsoft Office Removal Tool"
|
|||||||
Write-Host "by Aaron Viehl (101 Frankfurt)"
|
Write-Host "by Aaron Viehl (101 Frankfurt)"
|
||||||
Write-Host "einsnulleins.de"
|
Write-Host "einsnulleins.de"
|
||||||
Write-Host ""
|
Write-Host ""
|
||||||
|
|
||||||
|
if (-Not $Force) {
|
||||||
|
do {
|
||||||
|
$YesOrNo = Read-Host "Are you sure you want to remove Office from this PC? (y/n)"
|
||||||
|
} while ("y", "n" -notcontains $YesOrNo)
|
||||||
|
|
||||||
|
if ($YesOrNo -eq "n") {
|
||||||
|
exit 1
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
Stop-OfficeProcess
|
Stop-OfficeProcess
|
||||||
Invoke-OfficeUninstall
|
Invoke-OfficeUninstall
|
||||||
Invoke-SetupOffice365 "$Office365Setup_URL\upgrade.xml"
|
Invoke-SetupOffice365 "$Office365Setup_URL/upgrade.xml"
|
||||||
Invoke-Reboot
|
Invoke-Reboot
|
||||||
|
|
||||||
|
|
||||||
Loading…
Reference in New Issue
Block a user