Skip to main content

Worklet - Windows - Migrate Office 32-bit to 64-bit


jack.smith
Forum|alt.badge.img+1

This worklet will help migrate 32-bit version of Microsoft Office to 64-bit version.

Need to download Release history for Office Deployment Tool (ODT) - Office release notes | Microsoft Docs and open to get a copy of setup.exe

Next create an XML file called configuration-Ofice365-x64-MigrateArch.xml

<Configuration>
  <Add OfficeClientEdition="64" MigrateArch="TRUE" Channel="Monthly" AllowcdnFallback="TRUE">
    <Product ID="O365ProPlusRetail">
      <Language ID="en-us" />
    </Product>
  </Add>
   <Display Level="None" AcceptEULA="TRUE" />  
  <Logging Level="Standard" Path="C:\windows\temp" /> 
</Configuration>

Upload both setup.exe and configuration-Ofice365-x64-MigrateArch.xml to the worklet.

Evaluation

$workdir = "C:\ProgramData\Amagent\O365"
IF(Test-Path $workdir){ Remove-Item $workdir -recurse -force | out-null }

$scriptblock = {
    Get-ItemProperty HKLM:\SOFTWARE\Microsoft\Office\ClickToRun\Configuration -Name Platform | Select-Object Platform
}
# Run the scriptblock and store results in the $64bit variable
$platform = & "$env:SystemRoot\sysnative\WindowsPowerShell\v1.0\powershell.exe" -ExecutionPolicy Bypass -WindowStyle Hidden -NoProfile -NonInteractive -Command $scriptblock

IF($platform.platform -eq 'x86'){
    Exit 1
}else{
    Exit 0
}

Remediation

$scriptblock = {
    Get-ItemProperty HKLM:\SOFTWARE\Microsoft\Office\ClickToRun\Configuration -Name Platform | Select-Object Platform
}
# Run the scriptblock and store results in the $64bit variable
$platform = & "$env:SystemRoot\sysnative\WindowsPowerShell\v1.0\powershell.exe" -ExecutionPolicy Bypass -WindowStyle Hidden -NoProfile -NonInteractive -Command $scriptblock

IF($platform.platform -eq 'x86'){
  # Setup Working Directory
  $workdir = "C:\ProgramData\Amagent\O365"
  IF(!(Test-Path $workdir)){mkdir $workdir | Out-Null}
  # Copy setup files
  Write-Host "Setup working directory at $workdir."
  Copy-Item configuration-Office365-x64-MigrateArch.xml $workdir | Out-Null
  Copy-Item setup.exe $workdir | Out-Null
  # Migrate Office from 32-bit to 64-bit
  Write-Host "Running Command $workdir\setup.exe /Configure configuration-Office365-x64-MigrateArch.xml."
  Start-Process "$workdir\setup.exe" -ArgumentList "/Configure configuration-Office365-x64-MigrateArch.xml" -Wait

}else{
    write-output "Detected $($platform.platform) as installed. Not running." 
}

0 replies

Be the first to reply!

Reply


Cookie policy

We use cookies to enhance and personalize your experience. If you accept you agree to our full cookie policy. Learn more about our cookies.

 
Cookie settings