OleViewDotNet.COMRegistryViewer.LoadCLSIDByServer C# (CSharp) Method

LoadCLSIDByServer() private method

private LoadCLSIDByServer ( ServerType serverType ) : void
serverType ServerType
return void
        private void LoadCLSIDByServer(ServerType serverType)
        {            
            int i = 0;
            SortedDictionary<string, List<COMCLSIDEntry>> dict;
            
            
            if(serverType == ServerType.Local)
            {
                Text = "CLSIDs by Local Server";
                dict = m_reg.ClsidsByLocalServer;
            }
            else if (serverType == ServerType.Surrogate)
            {
                Text = "CLSIDs With Surrogate";
                dict = m_reg.ClsidsWithSurrogate;
            }
            else
            {
                Text = "CLSIDs by Server";
                dict = m_reg.ClsidsByServer;
            }            
            
            TreeNode[] serverNodes = new TreeNode[dict.Keys.Count];
            foreach (KeyValuePair<string, List<COMCLSIDEntry>> pair in dict)
            {                                
                serverNodes[i] = new TreeNode(pair.Key);
                serverNodes[i].ToolTipText = pair.Key;
            
                TreeNode[] clsidNodes = new TreeNode[pair.Value.Count];
                string[] nodeNames = new string[pair.Value.Count];
                int j = 0;

                foreach(COMCLSIDEntry ent in pair.Value)
                {                    
                    clsidNodes[j] = CreateClsidNode(ent); ;
                    nodeNames[j] = ent.Name;
                    j++;
                }

                Array.Sort(nodeNames, clsidNodes);
                serverNodes[i].Nodes.AddRange(clsidNodes);
                
                i++;
            }

            treeComRegistry.Nodes.AddRange(serverNodes);
        }