Why ActiveX Stops Working in Office 2024/Microsoft 365 and How to Diagnose It

· · ActiveX, COM, Office, Microsoft 365, 32bit, 64bit, Windows, Legacy Asset Reuse

What You Need to Know First

In Office 2024 and Microsoft 365, ActiveX controls are disabled by default. When Excel buttons and forms, or embedded objects in Word / PowerPoint, suddenly appear to “stop working” after an update, the cause is usually not a broken program but a change in security defaults.

The causes fall into three broad categories.

  1. Security setting changes (Trust Center, ActiveX disabled by default)
  2. 32-bit / 64-bit mismatch (loading a 32-bit-only control into 64-bit Office)
  3. Missing COM registration or dependent DLLs / runtimes (regsvr32 never run, missing VC++ runtime)

Field rule of thumb: Working through these from the top, in this order, is the fastest path.

Office 2024 vs Microsoft 365 — What Is Different

Aspect Office 2024 family (perpetual license) Microsoft 365 Apps (subscription)
Update model Security / quality updates only. No new features added Continuous feature updates per channel
ActiveX default Disabled by default Disabled by default (same)
Registry / policy paths Still 16.0 Still 16.0
Supported OS (as of 2026) Windows 11, Server 2025 / 2022, Win10 LTSC Windows 11, Server 2025 / 2022 are the official requirement. Win10 has a migration grace period through October 2028
Installation method Click-to-Run (not MSI) Click-to-Run

Important: The registry path remains 16.0 even in Office 2024. Searching for 24.0 “because it’s 2024” is a classic detour.

A Note on Windows 10

General support for Windows 10 ended on October 14, 2025. However, Microsoft 365 Apps remains in a migration grace period on Windows 10, with security updates provided until October 10, 2028. In other words, the situation is this:

  • It is not the case that “nothing works at all on Windows 10”
  • You are operating under the dual premise of “OS out of support, Apps in a grace period”

Troubleshooting Overview

NoYesYesNoYesNoNoYesNoYesReproduce the symptomCollect Office product name, build, bitness, and OS informationAre the OS / Office support prerequisites OK?Fix prerequisites: review OS / Office edition / channelCheck the Trust CenterProblem with ActiveX settings / Protected View / Trusted Documents?Fix settings, signing, and distribution designDepends on legacy Web / IE?Check IE mode and the site listCheck CLSID / InprocServer32 / TypeLibIs COM registration healthy?regsvr32 / RegAsm / reinstallCheck dependent DLLs / .NET / VC++ runtimesAre the dependencies satisfied?Repair and redistribute the relevant runtimeCollect logs / Procmon / Process ExplorerCheck build deltas and security update deltas

Step 1 — Collect Environment Information

First, always record the following information. The point is to make decisions based on numbers, not gut feeling.

On the Office side

  • Check under [File] → [Account] → [Product Information]
    • Product name (Office 2024 vs Microsoft 365)
    • Version and build number (most important)
    • Installation type (Click-to-Run)
  • Check 32-bit / 64-bit in the product information dialog under [About Excel] / [About Word], etc.

On the Windows side

# Basic OS information
Get-CimInstance Win32_OperatingSystem |
  Select-Object Caption, Version, BuildNumber, OSArchitecture

# Executable paths of Office processes
Get-Process WINWORD, EXCEL, POWERPNT, VISIO -ErrorAction SilentlyContinue |
  Select-Object ProcessName, Path

Common pitfalls

Mistake Correct approach
Settling for “it’s the latest version” Check the build number. Channel deltas in Microsoft 365 are significant
Loading 32-bit-only COM / ActiveX into 64-bit Office Office bitness and COM bitness must match
Assuming it cannot work because it’s Windows 10 It may still work during the grace period, but the foundation is unstable

Step 2 — Check the Trust Center and Security Settings

What you are doing here is determining whether “the file itself is being blocked” or “loading the COM component is failing”.

Checklist (in order, from the top)

# Item Where to check Common cause
1 ActiveX message bar The yellow bar when opening the file Disabled by default. Try [Enable Content] to see if it works temporarily
2 Trust Center > ActiveX Settings [File] > [Options] > [Trust Center] Is it set to “Disable all controls without notification”?
3 Protected View Trust Center > Protected View Files opened from network shares or email attachments get blocked
4 Trusted Documents Trust Center > Trusted Documents Once trusted, the warning never reappears, making reproduction machine-dependent
5 Trusted Publishers Trust Center > Trusted Publishers Even with a signature, it is not allowed unless the certificate has been distributed
6 Macro Settings Trust Center > Macro Settings Macros and ActiveX are separate settings but can interact in combination

What to try first

  1. Copy the problem file to a locally managed folder (e.g., C:\Temp) and save it under a different name
  2. Avoid opening it directly from a network share or email attachment (to rule out Protected View)
  3. Start Office in safe mode to isolate the influence of add-ins
excel /safe
winword /safe
powerpnt /safe

Step 3 — Check Whether It Depends on IE Mode

There are cases where what looked like an “ordinary ActiveX failure” turns out to be caused by Edge’s IE mode not being configured.

  • IE mode is not a browser-wide switch — it applies only to sites registered in the Enterprise Site List
  • If only part of your internal web integration is failing, check whether that site is actually covered by IE mode

Check the following:

  • Edge policies: Administrative Templates > Microsoft Edge
  • Registry: HKLM\SOFTWARE\Policies\Microsoft\Edge
  • Diagnostics page: edge://compat/iediagnostic

Step 4 — Check COM Registration

If the Trust Center is clean, the next thing to verify is whether the COM component itself is correctly registered.

Basic verification commands

:: Check CLSID registration status
reg query "HKLM\SOFTWARE\Classes\CLSID\{YOUR-CLSID-HERE}\InprocServer32" /s

:: Register / unregister a native COM / ActiveX DLL
regsvr32 C:\Path\YourControl.dll
regsvr32 /u C:\Path\YourControl.dll

For COM components built with .NET (important)

regsvr32 cannot be used for .NET assemblies. Use RegAsm.

:: 32bit Office on 64bit Windows -> use the Framework RegAsm
"C:\Windows\Microsoft.NET\Framework\v4.0.30319\RegAsm.exe" "C:\Path\YourControl.dll" /codebase /tlb

:: 64bit Office -> use the Framework64 RegAsm
"C:\Windows\Microsoft.NET\Framework64\v4.0.30319\RegAsm.exe" "C:\Path\YourControl.dll" /codebase /tlb

Typical accident: “The RegAsm bitness does not match the Office bitness” — registration succeeds in the registry, but Office cannot find it.

Step 5 — Check Dependent DLLs / Runtimes

When “the main DLL exists but won’t load,” the most common case is a missing dependency.

Runtimes that are frequently missing in practice

Commonly missing How to check
Visual C++ Redistributable packages (2013, 2015-2022) Check the list under Control Panel > Programs and Features
.NET Framework 4.8.1 reg query "HKLM\SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Full"
Dependent DLLs (vendor-specific) Check with Process Explorer / Procmon

Low-level investigation tools

Tool Purpose
Process Explorer Inspect the list of DLLs loaded into a process
Procmon Track NAME NOT FOUND / PATH NOT FOUND / ACCESS DENIED in real time

Capture a Procmon log while reproducing the issue and filter on NAME NOT FOUND, and it becomes immediately clear which DLL or registry key could not be found.

Step 6 — Capture Logs for Final Confirmation

If the cause has not been identified by this point, enable logging and catch the moment of reproduction.

Enable general Office logging

reg add HKCU\Software\Microsoft\Office\16.0\Common\Logging /v EnableLogging /t REG_DWORD /d 1

Enable detailed Click-to-Run logging

reg add HKLM\SOFTWARE\Microsoft\ClickToRun\OverRide /v LogLevel /t REG_DWORD /d 3
reg add HKLM\SOFTWARE\Microsoft\ClickToRun\OverRide /v PipelineLogging /t REG_DWORD /d 1

Logs are written to %windir%\temp or %temp%.

Use Event Viewer alongside

eventvwr.msc
  • Check Windows Logs > Application
  • .NET Runtime and SideBySide errors are often the decisive clue

Disable logging after verification (don’t forget)

reg delete HKCU\Software\Microsoft\Office\16.0\Common\Logging /v EnableLogging /f
reg delete HKLM\SOFTWARE\Microsoft\ClickToRun\OverRide /v PipelineLogging /f
reg delete HKLM\SOFTWARE\Microsoft\ClickToRun\OverRide /v LogLevel /f

Key Registry / Policy Quick Reference

Four paths worth memorizing

Purpose Path
Root of Office policies HKLM\SOFTWARE\Policies\Microsoft\Office\16.0
Checking ActiveX blanket disable HKCU\Software\Microsoft\Office\Common\Security\DisableAllActiveX (1 = disabled, 0 = lifted)
COM component registration HKLM\SOFTWARE\Classes\CLSID\{CLSID}\InprocServer32
Office COM kill bit HKLM\Software\Microsoft\Office\16.0\Common\COM Compatibility\{CLSID}

With 32-bit Office on 64-bit Windows, also check under Wow6432Node for anything COM-related.

Frequently used test registry entries (verification only)

Windows Registry Editor Version 5.00

; Test only: lift the blanket ActiveX disable
[HKEY_CURRENT_USER\Software\Microsoft\Office\Common\Security]
"DisableAllActiveX"=dword:00000000

Warning: These settings are for verification only. The permanent fix should be “a trusted distribution path plus signing.”

Common Symptoms and Remedies

Symptom Most likely cause First thing to try
Button unresponsive after an update ActiveX disabled by default Message bar → [Enable Content] → check the Trust Center
Fails only on 64-bit Office 32-bit-only COM / ActiveX Ask the vendor whether an x64 build exists. If not, switch to 32-bit Office
Fails only on a specific PC COM not registered / registration corrupted Check the CLSID with reg query → re-register with regsvr32
DLL exists but won’t load Missing dependent DLL / VC++ runtime Track NAME NOT FOUND with Procmon
Fails from network shares or email attachments Protected View / MOTW Copy to a local folder and compare reproduction
Only part of internal web integration fails IE mode not configured Add the target site to the Enterprise Site List
Signed but still not allowed Certificate not distributed / Trusted Publisher not registered Verify code-signing validity and certificate distribution
Behavior changes when reusing MSI-era deployment steps Migration to a Click-to-Run premise Revisit old scripts and designs that assume self-registration

The fundamental principle of a permanent fix is “don’t lower security across the board — allow only what is needed, narrowly”.

Item Recommendation
Update channel (Microsoft 365) For machines with heavy legacy ActiveX dependence, use the Monthly Enterprise Channel (changes are easier to track)
Office bitness Unless the vendor explicitly states x64 support, give priority consideration to 32-bit Office
Trusted Locations Trusted locations on the network are prohibited as a rule. When needed, use an exception-request process
Signing Code-sign internally distributed ActiveX / macros / add-ins, and centrally manage Trusted Publishers
IE mode Register only the required URLs in the Enterprise Site List (avoid making the whole estate legacy)
Pre-deployment validation Before production rollout, build a pilot ring and run fixed-build validation on representative documents / representative machines

Example Microsoft 365 deployment configuration (32-bit + Monthly Enterprise)

<Configuration>
  <Add OfficeClientEdition="32" Channel="MonthlyEnterprise">
    <Product ID="O365ProPlusRetail">
      <Language ID="ja-jp" />
    </Product>
  </Add>
  <Updates Enabled="TRUE" />
  <Display Level="None" AcceptEULA="TRUE" />
</Configuration>

Last Resort — Repair

  • Quick Repair / Online Repair does work for settings and registration corruption
  • However, it does not solve x86 / x64 mismatches or signing / policy problems themselves
  • Repair comes last (doing it first contaminates your investigation logs)

Command Quick Reference

Purpose Command
Start in safe mode excel /safe / winword /safe
Register a COM DLL regsvr32 xxx.dll
Unregister a COM DLL regsvr32 /u xxx.dll
Register a .NET COM component (32-bit Office) Framework\v4.0.30319\RegAsm.exe xxx.dll /codebase /tlb
Register a .NET COM component (64-bit Office) Framework64\v4.0.30319\RegAsm.exe xxx.dll /codebase /tlb
Back up the registry reg export HKCU\... backup.reg /y
Enable general Office logging reg add HKCU\Software\...\Logging /v EnableLogging /t REG_DWORD /d 1
Enable detailed Click-to-Run logging reg add HKLM\SOFTWARE\...\OverRide /v LogLevel /t REG_DWORD /d 3
Launch Event Viewer eventvwr.msc

Conclusion — Don’t Get the Order Wrong

Misconfiguration -> OS / bitness mismatch -> COM component problem -> dependencies -> update deltas

Even when an ActiveX problem looks like “just an Excel issue,” it is in fact a problem where five layers intersect: Office’s default security + Windows support prerequisites + COM component registration + dependent runtimes + the update model. Rather than blindly relaxing settings, isolate the cause from the top down and you will reach a repair that is far less likely to recur.

Recent articles sharing the same tags. Deepen your understanding with closely related topics.

These topic pages place the article in a broader service and decision context.

This article connects naturally to the following service pages.

Author Profile

Profile page for the article author.

Go Komura

Representative of KomuraSoft LLC

Focused on Windows software development, technical consulting, and investigations into failures that are difficult to reproduce.

Back to the Blog