0X8011042E

COMADMIN_E_COMP_MOVE_BAD_DEST (0x8011042E): Fix Stale COM+ Moves

Component move failed because the destination COM+ app vanished. Clear stale references and re-register — here's how.
Quick answer: The destination COM+ application was deleted, renamed, or never committed to the catalog — recreate it or move the component to a valid target, then re-register the DLL.

I know this error is infuriating. You're in Component Services, you've got a component selected, you drag it to another application, and Windows throws 0x8011042E at you with a message about the destination application no longer existing. It's a COM+ catalog problem, not a permissions problem, and yes — it happens most often right after someone deletes an application that other components were pointing at.

Here's the context. COM+ tracks every component's parent application in the COM+ catalog (the RegDB, stored under HKLM\SOFTWARE\Classes\CLSID\{guid}\ComPlus plus hidden catalog stores). When you move a component, the admin tool re-parents the CLSID in that catalog and assigns it to the new ApplicationID. If the destination ApplicationID you selected no longer resolves — because the app was uninstalled, renamed, or its catalog entry got purged by a botched regsvr32, an SCCM package rollback, or a system restore — the move fails instantly. The component's own registration is fine. The target isn't.

I've seen this exact error after a SQL Server feature removal, after an IIS application pool cleanup that took a proxy app with it, and after someone ran ComponentServices.msc on a dev box and deleted "anything that looked old." If any of that sounds familiar, you're in the right place.

Step-by-step fix

  1. Confirm the destination app actually exists. Open dcomcnfg.exe → Component Services → Computers → My Computer → COM+ Applications. Click each app and check the Name and ID under Properties. If the app you thought you were moving to isn't listed, that's your problem — skip to step 4 or 5.

  2. Refresh the catalog view. Sometimes the admin MMC is showing a stale snapshot. Close Component Services completely. From an elevated command prompt, restart the COM+ catalog service:

    net stop COMSysApp
    net start COMSysApp

    Reopen dcomcnfg.exe and try the move again. If it works, one of your admins had a race condition with another session. If it still fails, keep reading.

  3. Verify the ApplicationID you're targeting. Right-click the destination application → Properties → look at the Application ID GUID. Then check the source component's registration:

    reg query "HKLM\SOFTWARE\Classes\CLSID\{YOUR-COMPONENT-GUID}\ComPlus"

    You'll see an ApplicationID value. If it points at a GUID that isn't in the list of COM+ apps, the catalog has an orphaned reference — which is exactly what trips 0x8011042E.

  4. Recreate the missing destination application. This is the real fix in 80% of cases. In Component Services, right-click COM+ Applications → New → Application. Create it with the same name your scripts and dependencies expect, set it as a Server application (or Library, matching the original), and assign the same identity. Then retry the component move.

  5. Re-register the component against the correct app. If the move UI refuses, do it from the command line. Unregister and re-register the source DLL so it binds to the right ApplicationID:

    regsvr32 /u /s "C:\Path\To\Your\Component.dll"
    regsvr32 /s "C:\Path\To\Your\Component.dll"

    For .NET components registered via RegAsm, use:

    regasm /unregister "C:\Path\To\Your\Component.dll"
    regasm "C:\Path\To\Your\Component.dll"

    Then reinstall the COM+ application from its MSI or re-import its application proxy if you have one.

  6. Force a catalog rebuild if the store is corrupt. Only do this if steps 1–5 failed. Stop COM+ first (net stop COMSysApp), then delete the stale ComPlus subkey on the offending CLSID:

    reg delete "HKLM\SOFTWARE\Classes\CLSID\{YOUR-COMPONENT-GUID}\ComPlus" /f

    Restart COMSysApp. The component will lose its COM+ association, and you'll re-register it clean (step 5). Yes, it's blunt. It also works when nothing else does.

Alternative fixes if the main path fails

  • Restore the catalog from backup. If you have a system state backup or a RegBack folder, restoring the COM+ catalog is cleaner than hand-editing it. Component Services → right-click My Computer → Restore. Point at the backup file.
  • Export and import the application. If the destination app exists on another server, export it as an MSI from Component Services (right-click app → Export) and install it here. The catalog entries come with it, and the move will succeed.
  • Script the move instead of using the UI. The COMAdmin API is more honest about what's wrong with the target. From PowerShell:
$cat = New-Object -ComObject COMAdmin.COMAdminCatalog
$apps = $cat.GetCollection("Applications")
$apps.Populate()
foreach ($a in $apps) { "$($a.Name) :: $($a.Key)" }

If your target ApplicationID doesn't appear in that list, the catalog genuinely doesn't have it. Rebuild or recreate it. No amount of clicking in the GUI will change that.

Preventing this next time

Two habits kill this error before it starts. First, never delete a COM+ application without exporting it as an MSI first — that export is your restore point, and it takes 30 seconds. Second, when you rename an application in Component Services, remember that the ApplicationID GUID stays the same but any script or installer referencing the old Name will still "see" the app even though the catalog now looks different. Rename with the same care as a database column. And if you're cleaning up dev boxes, leave COM+ alone unless you know exactly which app depends on which component. The catalog doesn't have a recycle bin.

If you've done all six steps and the move still fails, grab the catalog size from %SystemRoot%\Registration and the last write time on the RegDB — a size of zero or a timestamp from a bad restore tells you it's time to rebuild the whole catalog, not just patch one entry.

Related Errors in Windows Errors
0XC00D0068 NS_E_ENACTPLAN_GIVEUP (0xC00D0068): Fix Windows Media Streaming Failure 0XC00D1B6B NS_E_VIDSOURCESIZE (0XC00D1B6B) Quick Fix – Capture Size Mismatch 0X000008B6 Fix 0X000008B6: NERR_ACFTooManyLists Limit Exceeded 0XC000070D STATUS_THREADPOOL_RELEASE_MUTEX_ON_COMPLETION_FAILED Fix

Was this solution helpful?

EP
Erropedia Team
Tech Support Editors
The Erropedia editorial team researches and documents real-world tech errors from across Windows, Linux, macOS, networking, databases, cloud platforms, and more. Every solution is reviewed for accuracy and updated as software and systems evolve.