English

Error: COM object with CLSID {XXXX} is either not valid or not registered

Error Message

This error may occur when working with the ArcGIS Primary Interop Assemblies (PIA) in .NET. The actual value of the CLSID in the error message may vary.

"COM object with CLSID {XXXX} is either not valid or not registered"

Cause

When selecting to install .NET support in the ArcGIS installation program, PIAs are installed for all of the ArcGIS libraries.

When attempting to use a PIA for which the underlying object library is not installed, this error occurs, as the underlying COM object cannot be instantiated because the library defining it is not present.

For example, if the 3DAnalyst extension was not selected during installation, and later there is a desire to attempt to use objects in the ESRI.ArcGIS.Analyst3D namespace, using code such as this C# code:

Code:
ESRI.ArcGIS.Analyst3D.IAnimationTrack aTrack = new ESRI.ArcGIS.Analyst3D.AnimationTrackClass();

An error occurs:

"Error number -2147221164: COM object with CLSID {4FEDC9CB-A7BE-11D5-B2A0-00508BCDDE28} is either not valid or not registered."

Solution or Workaround

Programming can only occur against libraries that are installed. To develop with a particular library, reinstall the ArcGIS product, verifying that the required extensions are selected, as well as the .NET support option. Additional licenses may also be required to work with extension products.

  1. Identify the objects to work with, and the namespaces those objects belong to.
  2. Identify the parts of the product these namespaces belong to. For example, if to use objects in the ESRI.ArcGIS.Analyst3D namespace, navigate to the Library Overview page for this namespace in the ArcGIS Developer Help system. Notification is provided that this namespace is supported with ArcGIS Engine with the 3D extension, ArcGIS Desktop with 3D Analyst, and ArcGIS Server with the 3D extension.
  3. Reinstall the product, verifying all of the extensions identified in Step 2 install. Verify that the .NET Support option is selected.