4 Replies Latest reply on Jan 14, 2016 2:12 AM by Francesco Giovinazzo

    Installed AutoUpdaters List

    Francesco Giovinazzo

      Hello,

       

      is there a way to discover the list of installed Auto Updaters? I have tried looking into the registry but I am not able to find the link between my AU Class and the AU category

       

      Thank you for any help

       

      Fra

        • Re: Installed AutoUpdaters List
          Doug Beeman

          You can use the ESRI Component Category Manager (C:\Program Files (x86)\ArcGIS\Desktop10.2\bin\Categories.exe) to find the classes registered in each of the component categories. AutoUpdaters are either in M&M Special AutoUpdate Objects, M&M Relationship Autoupdate Objects, or M&M Attribute AutoUpdate Objects.

           

          2016_01_12_10_34_17_Component_Category_Manager.png

           

          In ArcGIS 10.x, Esri changed to using .ecfg files (for ArcMap, they are in C:\Program Files (x86)\Common Files\ArcGIS\Desktop10.2\Configuration\CATID), so you may not see all the registered AUs in the registry.

            • Re: Installed AutoUpdaters List
              Francesco Giovinazzo

              Thank you Doug,

               

              but I need to retrieve the list from the code, that's why I was trying to figure how connections where made in the registry.

               

              Regards

               

              Fra

                • Re: Installed AutoUpdaters List
                  Doug Beeman

                  Sorry, I misunderstood. Is this what you're looking for?

                  ICatInformation::EnumClassesOfCategories method (COM)

                    • Re: Installed AutoUpdaters List
                      Francesco Giovinazzo

                      Hello Doug,

                       

                      I have tried using that in my C# project but with no results, looking around the web in a more general way I discovered an useful piece of ESRI code which solved my issue:

                       

                      //setup the guid for MM Special Auto Updater

                      ESRI.ArcGIS.esriSystem.IUID uid = new ESRI.ArcGIS.esriSystem.UIDClass();

                      uid.Value = "{5CC6FF90-C85F-11D3-80C7-0050DA5BE899}";

                       

                      ESRI.ArcGIS.esriSystem.ICategoryFactory catFactory = new ESRI.ArcGIS.esriSystem.CategoryFactoryClass();

                      catFactory.CategoryID = (ESRI.ArcGIS.esriSystem.UID)uid;

                       

                      // Go through each member of the category, and do something with it as needed

                      object object_Category = catFactory.CreateNext();

                      while (object_Category != null)

                      {

                        if (object_Category is IMMSpecialAUStrategyEx)

                        {

                        IMMSpecialAUStrategyEx au = object_Category as IMMSpecialAUStrategyEx;

                        string nome = au.Name;

                        string guid = object_Category.GetType().GUID.ToString();

                       

                        //...

                        }

                       

                        object_Category = catFactory.CreateNext();

                      }

                       

                      There is only one thing to notice, some AUs 8more than one) returned, like "ArcFM Generic Electric Trace Weight" gave me a guid of "00000000-0000-0000-0000-000000000000" which cannot be used or assigned, i believe.

                       

                      Now I am very close to the final version of my ArcFM Mass Properties Manager

                       

                      Fra