OleViewDotNet.ROTViewer.LoadROT C# (CSharp) Method

LoadROT() private method

private LoadROT ( ) : void
return void
        void LoadROT()
        {
            IBindCtx bindCtx;

            listViewROT.Items.Clear();
            try
            {
                bindCtx = COMUtilities.CreateBindCtx(0);
                IRunningObjectTable rot;
                IEnumMoniker enumMoniker;
                IMoniker[] moniker = new IMoniker[1];

                bindCtx.GetRunningObjectTable(out rot);
                rot.EnumRunning(out enumMoniker);
                while (enumMoniker.Next(1, moniker, IntPtr.Zero) == 0)
                {
                    string strDisplayName;
                    Guid clsid;

                    moniker[0].GetDisplayName(bindCtx, null, out strDisplayName);
                    moniker[0].GetClassID(out clsid);
                    ListViewItem item = listViewROT.Items.Add(strDisplayName);
                    item.Tag = new MonikerInfo(strDisplayName, clsid, moniker[0]);

                    if (m_reg.Clsids.ContainsKey(clsid))
                    {
                        item.SubItems.Add(m_reg.Clsids[clsid].Name);
                    }
                    else
                    {
                        item.SubItems.Add(clsid.ToString("B"));
                    }
                }
            }
            catch (Exception e)
            {
                System.Diagnostics.Debug.WriteLine(e.ToString());
            }

            listViewROT.AutoResizeColumns(ColumnHeaderAutoResizeStyle.ColumnContent);
        }