Office Deployment Issues with OffScrub13.vbs

kristopherjturner@live.com Kristopher J. Turner 16/04/2015 22:41 16/04/2015 22:41

We are deploying Office ProPlus using an edited version of the Office sample that comes with the tool kit. Everything works great when a user has Office 2010. The application uninstalls and Office ProPlus 2013 installs. However, if we have users that have Office 2013 professional Plus the Offscrub13.vbs script runs and never completes. I have killed the cscript process a few times on test machines and the process will continue. I have tested that script using the exact same commands outside of the application and it works fine. Is there something I am missing. I have even disabled the component uninstall piece that was hanging up our 2010 scrub vbs process.

|mmashwani@gmail.com|Muhammad Mashwani|18/04/2015 04:31|18/04/2015 04:31|

Make sure you’re using the latest version of the Offscrub scripts; https://support.office.com/en-us/article/Uninstall-Office-2013-or-Office-365-from-a-Windows-computer-9dd49b83-264a-477a-8fcc-2fdf5dbf61d8?ui=en-US

They get updated all the time to fix bugs and there is not indication that there has been an update to the script unless you download it and look at the script version number.

Also, I never had success with deploying the Offscrub scripts to my environment. We had a lot of problems with the scripts causing hung installs. We eventually targeted, for removal, the specific versions of Office we knew had been pushed into our environment and that worked out pretty well.

Also, check out some of the command line options for the Offscrub scripts. I remember there were commandline options available that were less aggressive with the removal algorithms and thus less likely to cause possible issues.

I’ve got a mixed bag of Office installations to upgrade to O365, so I’m taking a Scorched Earth approach. I’ve renamed the .vbs scripts. In retrospect, I’m not sure exactly why:

    If (($deploymentType -eq 'Scrub') -or (($deploymentType -eq 'Install') -and ($Force -eq $True))) {
        [string]$installPhase = 'Scrub'

        $Scripts = @(
            @('Office 2010','OffScrub_2010.vbs'),
            @('Office 2013','OffScrub_2013.vbs'),
            @('Office 2016','OffScrub_2016.vbs'),
            @('Office Click-to-Run','OffScrub_C2R.vbs')
        )
        ForEach ($Script in $Scripts) {
            $OffVer = $Script[0]
            $VBScript = $Script[1]
            Write-Log "Executing the $OffVer removal tool."
            $Result = (Execute-Process -Path 'cscript.exe' -Parameters "`"$dirSupportFiles\$VBScript`"" -PassThru -CreateNoWindow -WindowStyle Hidden).ExitCode
            If ($Result -ne 0) {
                Exit-Script -ExitCode 69100
            }
        }
    }

You can also infer that I’ve modified the parameters that Deploy-Application accepts so that I can just remove the existing Office installation, or install either scrubbing first, or not.