private bool LoadHive(string filename, bool onDemand)
        {
            var root = treeRoot[0];

            var hive = new RegistryHive(new FileStream(filename, FileMode.Open));

            var rootKey = hive.Root;

            if (rootKey != null)
            {
                var t_hive = new RegistryHiveTreeView(hive)
                {
                    Name        = Path.GetFileName(filename),
                    FilePath    = filename,
                    ImageSource = folderBitmap
                };

                root.RegistryHiveTreeViews.Add(t_hive);

                if (rootKey.SubKeys != null && rootKey.GetSubKeyNames().Length > 0)
                {
                    t_hive.LoadDummyChild();
                }

                return(true);
            }
            else
            {
                return(false);
            }
        }
        private void LoadSubkeyRoot(RegistryHiveTreeView registryHiveTreeView)
        {
            if (registryHiveTreeView.IsDummy)
            {
                registryHiveTreeView.RemoveDummyChild();
            }

            var regKeyTreeViews = GetRegistryKeyTreeViews(registryHiveTreeView.AttachedHive, "\\");

            for (int i = 0; i < regKeyTreeViews.Length; i++)
            {
                regKeyTreeViews[i].Root = registryHiveTreeView;
                registryHiveTreeView.Children.Add(regKeyTreeViews[i]);
            }
        }