diff --git a/msoffice-removal-tool.ps1 b/msoffice-removal-tool.ps1 index f96a5c2..7594d4f 100644 --- a/msoffice-removal-tool.ps1 +++ b/msoffice-removal-tool.ps1 @@ -24,9 +24,10 @@ .OUTPUTS Just output on screen .NOTES - Version: 1.3 - Author: Heko Büroservice GmbH & Co. KG. - Creation Date: 2025-01-28 + Version: 1.0 + Author: aaron.viehl@frankfurt.einsnulleins.de + Creation Date: 2022-02-04 + Purpose/Change: Initial script development .EXAMPLE .\msoffice-removal-tool.ps1 -InstallOffice365 -SupressReboot #> @@ -45,7 +46,7 @@ $SaRA_URL = "https://aka.ms/SaRA_CommandLineVersionFiles" $SaRA_ZIP = "$env:TEMP\SaRA.zip" $SaRA_DIR = "$env:TEMP\SaRA" $SaRA_EXE = "$SaRA_DIR\SaRAcmd.exe" -$Office365Setup_URL = "https://git.heko-technik.de/mkrieger/msoffice-removal-tool/raw/branch/main/office365-installer" +$Office365Setup_URL = "https://github.com/Admonstrator/msoffice-removal-tool/raw/main/office365-installer" #-----------------------------------------------------------[Functions]------------------------------------------------------------ Function Invoke-OfficeUninstall { if (-Not (Test-Path "$SaRA_DIR")) { @@ -108,7 +109,7 @@ Function Stop-OfficeProcess { } Function Invoke-SaRA { - $SaRAProcess = Start-Process -FilePath "$SaRA_EXE" -ArgumentList "-S OfficeScrubScenario -AcceptEula -CloseOffice -OfficeVersion All" -Wait -PassThru -NoNewWindow + $SaRAProcess = Start-Process -FilePath "$SaRA_EXE" -ArgumentList "-S OfficeScrubScenario -AcceptEula" -Wait -PassThru -NoNewWindow switch ($SaRAProcess.ExitCode) { 0 { Write-Host "Uninstall successful!" @@ -137,14 +138,6 @@ Function Invoke-SaRA { } Function Invoke-SetupOffice365($Office365ConfigFile) { - if ($Office365ConfigFile -eq "$Office365Setup_URL/purge.xml") { - Write-Host "Downloading Office365 Installer ..." - Start-BitsTransfer -Source "$Office365Setup_URL/setup.exe" -Destination "$SaRA_DIR\setup.exe" - Start-BitsTransfer -Source "$Office365ConfigFile" -Destination "$SaRA_DIR\purge.xml" - Write-Host "Executing Office365 Setup ..." - $OfficeSetup = Start-Process -FilePath "$SaRA_DIR\setup.exe" -ArgumentList "/configure $SaRA_DIR\purge.xml" -Wait -PassThru -NoNewWindow - } - if ($InstallOffice365) { Write-Host "Downloading Office365 Installer ..." Start-BitsTransfer -Source "$Office365Setup_URL/setup.exe" -Destination "$SaRA_DIR\setup.exe" @@ -174,24 +167,22 @@ Function Invoke-RebootInSeconds($Seconds) { } Function Set-CurrentStage($StageValue) { - if (-not (Test-Path "HKLM:\Software\OEM\Heko-Bueroservice-GmbH\M365\Install")) { - New-Item -Path "HKLM:\Software\OEM\Heko-Bueroservice-GmbH\M365\Install" -Force | Out-Null + if (-not (Test-Path "HKLM:\Software\OEM\101\M365\Install")) { + New-Item -Path "HKLM:\Software\OEM\101\M365\Install" -Force | Out-Null } - New-ItemProperty -Path "HKLM:\Software\OEM\Heko-Bueroservice-GmbH\M365\Install" -Name "CurrentStage" -Value $StageValue -PropertyType String -Force | Out-Null + New-ItemProperty -Path "HKLM:\Software\OEM\101\M365\Install" -Name "CurrentStage" -Value $StageValue -PropertyType String -Force | Out-Null } Function Invoke-Intro { -Write-Host " _ _ _ ______ _ _ _ " -Write-Host "| | | | | | | ___ (_) (_) (_) " -Write-Host "| |_| | ___| | _____ | |_/ /_ _ _ __ ___ ___ ___ _ ____ ___ ___ ___ " -Write-Host "| _ |/ _ \ |/ / _ \ | ___ \ | | | '__/ _ \/ __|/ _ \ '__\ \ / / |/ __/ _ \" -Write-Host "| | | | __/ < (_) | | |_/ / |_| | | | (_) \__ \ __/ | \ V /| | (_| __/" -Write-Host "\_| |_/\___|_|\_\___/ \____/ \__,_|_| \___/|___/\___|_| \_/ |_|\___\___|" -Write-Host "" -Write-Host "Microsoft Office Removal Tool" -Write-Host "by Max Krieger" -Write-Host "heko-bs.de" -Write-Host "" + Write-Host " ___ ___ ___ _____ _____ _____ " + Write-Host "|_ | | |_ | | __| __| |" + Write-Host " _| |_| | |_| |_ | __| __| | | |" + Write-Host "|_____|___|_____| |__| |__| |_|_|_|" + Write-Host "" + Write-Host "Microsoft Office Removal Tool" + Write-Host "by Aaron Viehl (101 Frankfurt)" + Write-Host "einsnulleins.de" + Write-Host "" } #-----------------------------------------------------------[Execution]------------------------------------------------------------ @@ -206,11 +197,10 @@ if (-Not $Force) { } } -Invoke-Intro # Check if there is a stage to resume if (-not ($RunAgain)) { - if (Test-Path "HKLM:\Software\OEM\Heko-Bueroservice-GmbH\M365\Install") { - $CurrentStageValue = (Get-ItemProperty "HKLM:\Software\OEM\Heko-Bueroservice-GmbH\M365\Install").CurrentStage + if (Test-Path "HKLM:\Software\OEM\101\M365\Install") { + $CurrentStageValue = (Get-ItemProperty "HKLM:\Software\OEM\101\M365\Install").CurrentStage Switch ($CurrentStageValue) { 1 { Write-Host "Resuming Stage 1: Uninstalling Office ..." diff --git a/office365-installer/install.xml b/office365-installer/install.xml index c193cc9..4fd2a7b 100644 --- a/office365-installer/install.xml +++ b/office365-installer/install.xml @@ -1,19 +1,30 @@ - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/office365-installer/setup.exe b/office365-installer/setup.exe index 9468de7..fdb53ae 100644 Binary files a/office365-installer/setup.exe and b/office365-installer/setup.exe differ diff --git a/office365-installer/upgrade.xml b/office365-installer/upgrade.xml index c193cc9..eff23d4 100644 --- a/office365-installer/upgrade.xml +++ b/office365-installer/upgrade.xml @@ -1,19 +1,28 @@ - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/readme.md b/readme.md index 8042cc7..b825b5b 100644 --- a/readme.md +++ b/readme.md @@ -1,17 +1,14 @@ # Microsoft Office Removal Tool ```plain + ___ ___ ___ _____ _____ _____ +|_ | | |_ | | __| __| | + _| |_| | |_| |_ | __| __| | | | +|_____|___|_____| |__| |__| |_|_|_| - _ _ _ ______ _ _ _ -| | | | | | | ___ (_) (_) (_) -| |_| | ___| | _____ | |_/ /_ _ _ __ ___ ___ ___ _ ____ ___ ___ ___ -| _ |/ _ \ |/ / _ \ | ___ \ | | | '__/ _ \/ __|/ _ \ '__\ \ / / |/ __/ _ \ -| | | | __/ < (_) | | |_/ / |_| | | | (_) \__ \ __/ | \ V /| | (_| __/ -\_| |_/\___|_|\_\___/ \____/ \__,_|_| \___/|___/\___|_| \_/ |_|\___\___| - Microsoft Office Removal Tool -by Max Krieger -heko-bs.de +by Aaron Viehl (101 Frankfurt) +einsnulleins.de ``` ## Synopsis @@ -41,7 +38,7 @@ By using `-UseSetupRemoval` the Office365 setup method will be used. ## Stage mechanism -To make sure that the program will only do the necessary parts a _stage mechanism_ is builtin. After every stage a registry value will be written to ``HKLM:\Software\OEM\Heko-Bueroservice-GmbH\M365\Install\CurrentStage`` +To make sure that the program will only do the necessary parts a _stage mechanism_ is builtin. After every stage a registry value will be written to ``HKLM:\Software\OEM\101\M365\Install\CurrentStage`` To overwrite all stages and restart the whole script use ``-RunAgain``. @@ -50,5 +47,5 @@ To overwrite all stages and restart the whole script use ``-RunAgain``. You may use this script without explicit download: ```powershell -iwr https://git.heko-technik.de/mkrieger/msoffice-removal-tool/raw/branch/main/msoffice-removal-tool.ps1 -OutFile msoffice-removal-tool.ps1; powershell -ExecutionPolicy Bypass .\msoffice-removal-tool.ps1 +iwr https://raw.githubusercontent.com/Admonstrator/msoffice-removal-tool/main/msoffice-removal-tool.ps1 -OutFile msoffice-removal-tool.ps1; powershell -ExecutionPolicy Bypass .\msoffice-removal-tool.ps1 ```