COM error with WaterGEMS for ArcMap restricting functionality

Hi, I am trying to import an existing water supply system model into ArcMap (10.7) and the program appears to load the .wtg file for a minute or two before the window pops up that asks me to select a database to connect to. When I run the "WaterGEMS for ArcMap" program and try both creating a new database and connecting to an existing one, I get the following error:

System.InvalidCastException: Unable to cast COM object of type 'ESRI.ArcGIS.Framework.AppROTClass' to interface type 'ESRI.ArcGIS.Framework.IAppROT'. This operation failed because the QueryInterface call on the COM component for the interface with IID '{FABC30F9-D273-11D2-9F36-00C04F6BC61A}' failed due to the following error: No such interface supported (Exception from HRESULT: 0x80004002 (E_NOINTERFACE)).

I updated to the currently available version of WaterGEMS and tried again, but got the same result. I checked task manager and noticed that approt.exe was not running though I have seen it activate in the past when I've use ArcMap, so I manually navigated to the relevant Program File folder and started the application with administrator privileges. I tried to connect to a database again (via both methods mentioned above) and got a different error:

System.Runtime.InteropServices.COMException (0x80040111): Retrieving the COM class factory for component with CLSID {FABC30FB-D273-11D2-9F36-00C04F6BC61A} failed due to the following error: 80040111 ClassFactory cannot supply requested class (Exception from HRESULT: 0x80040111 (CLASS_E_CLASSNOTAVAILABLE)).

I found a thread with a similar issue online which mentioned changing a value through registry editor; I was not able to find the IID from the first error code in the registry, but the second IID was found under the following keys:

  • 'HKEY_CLASSES_ROOT\esriFramework.esriAppROT' which shows two values of "CLSID = {FABC30FB-D273-11D2-9F36-00C04F6BC61A}" and "CurVer = esriFramework.esriAppROT.1"
  • 'HKEY_CLASSES_ROOT\esriFramework.esriAppROT.1' which shows two values of "(Default) = esriFramework.esriAppROT" and "CLSID = {FABC30FB-D273-11D2-9F36-00C04F6BC61A}"
  • 'HKEY_CLASSES_ROOT\WOW6432Node\CLSID\{FABC30FB-D273-11D2-9F36-00C04F6BC61A}\InprocServer32' which has two values of "(Default) = C:\Program Files (x86)\Common Files\ArcGIS\bin\ArcGISVersion.dll" and "ThreadingModel = Both"

Is there a fix for this? Please note that I am on a work computer but do have administrative privileges under my account.

Parents Reply
  • Hi Larry, I ended up running the "repair" feature under Programs and Services on ArcMap before I saw your reply and then also opened the model in the standalone program to check if all the elements were labeled. There were a few isolation valves that were not labeled so I ran the relabel feature, saved and closed, opened up WaterGEMS for ArcMap, and added the hydraulic model in and it worked!

    Since I also ran the repair feature, I can't say for certain whether your solution fixed it, but that's more than likely the case here. Thank you!

Children