0X80110820

COMADMIN_E_CANNOT_ALIAS_EVENTCLASS (0X80110820) Fix

Windows Errors Intermediate 👁 0 views 📅 Jun 9, 2026

This error pops up when you try to alias an event class COM+ component. It means COM+ won't let you create an alias for a component marked as an event class.

When you'll see this error

You're working in the Component Services snap-in (dcomcnfg.exe) on Windows Server 2019 or Windows 10 Pro. Maybe you're setting up a custom event system for an in-house app. You right-click a COM+ component, select Alias, give it a name, and bam — COMADMIN_E_CANNOT_ALIAS_EVENTCLASS (0X80110820). The exact text: "Alas, Event Class components cannot be aliased."

I've hit this when trying to reuse a publisher/subscriber event class across different partitions. The error means COM+ refuses to let you create an alias for any component that's marked as an event class — specifically one that implements IEventClass or has the EventClassComponent attribute set in its COM+ registration.

Root cause

What's actually happening here is that COM+ has a hard rule: event class components are special. They're the backbone of the COM+ loose-coupled events system. When you alias a normal COM+ component, COM+ creates a lightweight reference — it's basically a copy of the component's registration metadata pointing to the same physical DLL. But event classes carry extra configuration: subscription data, publisher filters, internal CLSID mappings. Aliasing them would break the internal lookup tables COM+ uses to route events from publishers to subscribers. Microsoft decided it's safer to just block aliasing outright than risk corrupting the event system.

The trigger is almost always trying to create an alias for a component that has its EventClassComponent attribute set to True. You can check this in the component's properties under the Advanced tab in Component Services. The error code 0x80110820 maps to COMADMIN_E_CANNOT_ALIAS_EVENTCLASS — the COM+ admin library knows this isn't supported and tells you directly.

Fix steps

There's no workaround to force aliasing. Don't try editing the COM+ catalog directly with scripts — it won't stick and might break things. Instead, you have two real paths: either remove the event class flag from the component (if it doesn't actually need it) or create a new non-event class component that wraps the same logic. Here's the practical sequence.

  1. Open Component Services. Press Win+R, type dcomcnfg, hit Enter. Navigate to Component Services > Computers > My Computer > COM+ Applications > [Your App] > Components.
  2. Identify the event class component. Right-click the component that threw the error, select Properties. Go to the Advanced tab. If Event class component is checked, that's why you can't alias it.
  3. Option A: Remove the event class flag. If this component doesn't actually participate in event subscriptions — maybe it's just a config object — uncheck Event class component. Click OK. Now try creating the alias again. This works if the component was mistakenly flagged.
  4. Option B: Create a wrapper component. If the component genuinely needs to be an event class (it's a publisher or subscriber), you can't alias it. Instead, write a new COM+ component that references the original event class via aggregation or delegation. Register it as a normal (non-event) component. Then alias that wrapper. It's more work but keeps the event system intact.
  5. Option C: Register the alias from a script. Some people try COMAdmin.COMAdminCatalog in PowerShell. Don't bother — the same restriction applies at the API level. The IAlias::Create method checks the event class flag and returns 0x80110820 before writing anything.

If it still fails

Check three things. First, verify the component isn't part of a COM+ partition hierarchy — partitioned apps sometimes have hidden event class flags inherited from a parent partition. Go to the component's Partitions tab and remove any inheritance.

Second, make sure you're not looking at the wrong component. I've seen people click the first component in a list of 50 and assume it's the right one. Right-click, Properties, Advanced tab — confirm Event class component is truly unchecked if you're using Option A.

Third, reboot the COM+ system application. Open an admin command prompt and run net stop comsysapp then net start comsysapp. This clears any cached catalog state that might be lying about the flag. Then retry the alias.

If none of that works, your only remaining path is Option B — write a wrapper. It's annoying but it's the correct architectural fix. COM+ event classes aren't meant to be aliased, and fighting the system will only waste your time.

Was this solution helpful?