[DISCUSSION] Microsoft Office 2019

Discussion in 'Microsoft Office' started by ratzlefatz, Sep 26, 2017.

  1. kiwig

    kiwig MDL Member

    Apr 2, 2014
    131
    26
    10
    Hi All!
    Is someone able to pinpoint to me where I can find Office 2019 telemetry removal scripts or reg items?
    TIA
     
  2. dante1111

    dante1111 MDL Novice

    Apr 13, 2025
    2
    1
    0
    Thanks for all of the help brilliant info indeed. :rolleyes:
     
  3. HSeber

    HSeber MDL Novice

    Feb 17, 2008
    20
    11
    0
    Yeah, download works. Try to install.
     
  4. venejo

    venejo MDL Senior Member

    Oct 2, 2011
    264
    112
    10
    I don’t have problems on downloading and installing 19, 21 & 24 VL versions. I thought you were having downloading problems only. On installing did you try/use the latest setup tool?
     
  5. patapout

    patapout MDL Member

    Jun 23, 2014
    222
    119
    10
    I also had that issue with O2019VL...download fine but error installing,,,
     
  6. HSeber

    HSeber MDL Novice

    Feb 17, 2008
    20
    11
    0
    Yup my fault.
    Downloading the 2019 Office files via /download switch works.
    but
    installing 2019 either via CDN or from the downloaded repo don't work since some weeks.
    I'm using the latest ODT setup.exe file
    thx @patapout for confirming.
     
  7. patapout

    patapout MDL Member

    Jun 23, 2014
    222
    119
    10
    After few tries , it work again now for 2019VL :)
    I used "Office(R)Tool" with compatible mode (old_setup.exe) download and install ok...
    Same thing but w/o compatible mode (latest_setup.exe) download ok but error installing !!
     
  8. HSeber

    HSeber MDL Novice

    Feb 17, 2008
    20
    11
    0
    I also discovored yesterday that installing Office 2019VL via Office-R-Tool works.
    But what do you mean with compatible mode?
     
  9. Dark Vador

    Dark Vador X Æ A-12

    Feb 2, 2011
    4,832
    7,120
    150
    upload_2025-5-22_11-35-42.png
     
    Stop hovering to collapse... Click to collapse... Hover to expand... Click to expand...
  10. Brad2500

    Brad2500 MDL Novice

    Jul 29, 2023
    7
    2
    0
    My Outlook 2013 stopped connecting to Outlook.com September 2024, on Windows 11. Is there any way to make Outlook 2013 connect again? I have Microsoft Office Professional Plus 2013 activated. Should I install Outlook 2019 or another version? Should I buy Outlook over again?
     
  11. BetaTesta

    BetaTesta MDL Senior Member

    Aug 6, 2022
    304
    102
    10
    Why would I prefer or want a manual removal over automatic removal? TIA
     
  12. abbodi1406

    abbodi1406 MDL KB0000001

    Feb 19, 2011
    17,883
    95,422
    340
    No one should :)
    it's just the old post reference before Scrubber script was created
     
  13. gutentaghallo

    gutentaghallo MDL Novice

    Jan 1, 2022
    34
    19
    0
    #4100 gutentaghallo, Sep 13, 2025
    Last edited by a moderator: Sep 13, 2025
    Regarding the YAOCTRI script, I've installed Office 2024 LTSC and choose to disable telemetry (7. Disable Telemetry: True). I've copied the source code incl my config file to ChatGPT and asked which Telemetry, Cloud services etc it knows which are not included in the YAOCTRI script and would fit my installation.

    Below, I've added the script that ChatGPT has created for me (a post-YAOCTRI script).
    What do you guys think about it? My skills are pretty basic...


    Update: I've worked a bit more on the script and added an host entry and undo feature:

    Code:
    <#
    .SYNOPSIS
    Radical Office-only privacy & telemetry lockdown (post-YAOCTRI) script with optional host blocking.
    .DESCRIPTION
    Applies aggressive privacy, telemetry, cloud, OneDrive, and add-in restrictions
    for MS Office while keeping manual updates possible. Optionally adds/removes host entries.
    #>
    
    # Ensure script runs as admin
    If (-Not ([Security.Principal.WindowsPrincipal] [Security.Principal.WindowsIdentity]::GetCurrent()).IsInRole([Security.Principal.WindowsBuiltInRole] "Administrator")) {
        Write-Error "Please run this script as Administrator."
        Exit 1
    }
    
    # Function to add host entries
    function Add-OfficeHosts {
        param (
            [string]$hostsPath = "$env:windir\System32\drivers\etc\hosts"
        )
    
        $hostsToAdd = @(
            "127.0.0.1 telemetry.office.com       # Blocks Office telemetry",
            "127.0.0.1 oneclient.sfx.ms           # Blocks OneDrive/Cloud integration",
            "127.0.0.1 clientconfig.microsoft.com # Blocks auto configuration updates from Microsoft",
            "127.0.0.1 officecdn.microsoft.com    # Blocks online templates and content downloads",
            "127.0.0.1 insights.office.com        # Disables Office Insights / analysis features",
            "127.0.0.1 help.office.com            # Blocks online help/documentation"
        )
    
        foreach ($entry in $hostsToAdd) {
            $existing = Get-Content $hostsPath -ErrorAction SilentlyContinue
            if (-not ($existing -contains $entry)) {
                Add-Content -Path $hostsPath -Value $entry
            }
        }
    }
    
    # Function to remove host entries added by this script
    function Remove-OfficeHosts {
        param (
            [string]$hostsPath = "$env:windir\System32\drivers\etc\hosts"
        )
    
        $hostsToRemove = @(
            "127.0.0.1 telemetry.office.com       # Blocks Office telemetry",
            "127.0.0.1 oneclient.sfx.ms           # Blocks OneDrive/Cloud integration",
            "127.0.0.1 clientconfig.microsoft.com # Blocks auto configuration updates from Microsoft",
            "127.0.0.1 officecdn.microsoft.com    # Blocks online templates and content downloads",
            "127.0.0.1 insights.office.com        # Disables Office Insights / analysis features",
            "127.0.0.1 help.office.com            # Blocks online help/documentation"
        )
    
        $currentHosts = Get-Content $hostsPath -ErrorAction SilentlyContinue
        $updatedHosts = $currentHosts | Where-Object { $hostsToRemove -notcontains $_ }
        Set-Content -Path $hostsPath -Value $updatedHosts
    }
    
    # -----------------------------
    # Main menu loop
    # -----------------------------
    do {
        Clear-Host
        Write-Host "`nSelect an option:" -ForegroundColor Yellow
        Write-Host "1) Radical Office lockdown + host blocking"
        Write-Host "2) Remove previously added host blocking entries"
        Write-Host "3) Radical Office lockdown only"
        Write-Host "Press any other key to exit"
    
        $userInput = $Host.UI.RawUI.ReadKey("NoEcho,IncludeKeyDown").Character
    
        switch ($userInput) {
            '1' {
                Add-OfficeHosts
                Write-Host "Host entries added successfully." -ForegroundColor Green
                $AddHosts = $true
                break
            }
            '2' {
                Remove-OfficeHosts
                Write-Host "Host entries removed successfully." -ForegroundColor Green
                Write-Host "Press any key to return to main menu." -ForegroundColor Green
                $null = $Host.UI.RawUI.ReadKey("NoEcho,IncludeKeyDown")
                continue  # Zurück zum Hauptmenü
            }
            '3' {
                $AddHosts = $false
                break
            }
            default {
                Write-Host "Operation cancelled by user." -ForegroundColor Red
                exit
            }
        }
    
        # Exit loop only for Option 1 or 3
        if ($userInput -eq '1' -or $userInput -eq '3') { break }
    
    } while ($true)
    
    # ---------------------------------------
    # Begin of Radical Office lockdown script
    # ---------------------------------------
    
    # Office versions to target                          
    $OfficeVersions = @("16.0","15.0","14.0") # 2016, 2013, 2010
    
    # Function to set registry keys idempotently                                          
    function Set-RegistryValue {
        param (
            [string]$Path,
            [string]$Name,
            [Object]$Value,
            [Microsoft.Win32.RegistryValueKind]$Type
        )
        If (-Not (Test-Path $Path)) {
            New-Item -Path $Path -Force | Out-Null
        }
        $current = Get-ItemProperty -Path $Path -Name $Name -ErrorAction SilentlyContinue
        If ($null -eq $current -or $current.$Name -ne $Value) {
            Set-ItemProperty -Path $Path -Name $Name -Value $Value -Type $Type
        }
    }
    
    foreach ($ver in $OfficeVersions) {
    
        # Telemetry / Customer Experience
        Set-RegistryValue -Path "HKLM:\SOFTWARE\Policies\Microsoft\Office\$ver\Common\ExperimentEcs" -Name "Enabled" -Value 0 -Type DWord
        Set-RegistryValue -Path "HKCU:\Software\Policies\Microsoft\Office\$ver\Common\ExperimentEcs" -Name "Enabled" -Value 0 -Type DWord
        Set-RegistryValue -Path "HKCU:\Software\Microsoft\Office\$ver\Common\Customer Feedback" -Name "Enable" -Value 0 -Type DWord
    
        # Online Content / Smart Services
        Set-RegistryValue -Path "HKCU:\Software\Policies\Microsoft\Office\$ver\Common\Internet" -Name "UseOnlineContent" -Value 0 -Type DWord
        Set-RegistryValue -Path "HKCU:\Software\Policies\Microsoft\Office\$ver\Common\Internet" -Name "OnlineContentEnabled" -Value 0 -Type DWord
    
        # OneDrive / Cloud
        Set-RegistryValue -Path "HKCU:\Software\Policies\Microsoft\Office\$ver\Common\CloudStorage" -Name "DisableCloudStorage" -Value 1 -Type DWord
        Set-RegistryValue -Path "HKCU:\Software\Policies\Microsoft\Office\$ver\Common\CloudStorage" -Name "DisablePersonalOneDrive" -Value 1 -Type DWord
        Set-RegistryValue -Path "HKCU:\Software\Policies\Microsoft\Office\$ver\Common\CloudStorage" -Name "DisableSharePointIntegration" -Value 1 -Type DWord
    
        # Office Upload Center
        Set-RegistryValue -Path "HKCU:\Software\Microsoft\Office\$ver\OfficeFileCache" -Name "Enabled" -Value 0 -Type DWord
    
        # Online Add-ins
        Set-RegistryValue -Path "HKCU:\Software\Policies\Microsoft\Office\$ver\Common\OfficeAddins" -Name "BlockAllInternetAddins" -Value 1 -Type DWord
    
        # Connected Experiences
        Set-RegistryValue -Path "HKCU:\Software\Policies\Microsoft\Office\$ver\Common\ConnectedServices" -Name "ServiceEnabled" -Value 0 -Type DWord
    
        # Disable Telemetry Service
        $svcName = "OTELService_$ver"
        If (Get-Service -Name $svcName -ErrorAction SilentlyContinue) {
            Set-Service -Name $svcName -StartupType Disabled
            Stop-Service -Name $svcName -Force -ErrorAction SilentlyContinue
        }
    
        # Updates: allow manual only
        Set-RegistryValue -Path "HKLM:\SOFTWARE\Policies\Microsoft\Office\$ver\Common\OfficeUpdate" -Name "EnableAutomaticUpdates" -Value 0 -Type DWord
    }
    
    # -------------------------------------
    # End of Radical Office lockdown script
    # -------------------------------------
    
    # Notify user based on option
    if ($userInput -eq '1') {
        Write-Host "Radical Office lockdown applied successfully." -ForegroundColor Green
        Write-Host "Press any key to close." -ForegroundColor Green
    } elseif ($userInput -eq '3') {
        Write-Host "Radical Office lockdown only applied successfully." -ForegroundColor Green
        Write-Host "Press any key to close." -ForegroundColor Green
    }
    
    $null = $Host.UI.RawUI.ReadKey("NoEcho,IncludeKeyDown")