Ejemplo n.º 1
0
        /// <summary>
        /// 让该目录对象开始生成目录结构
        /// 返回FALSE表示目录不存在,返回TRUE表示生成完毕
        /// </summary>
        public bool findChild()
        {
            string path = WindowsPath + "\\" + getDirPath();


            if (Directory.Exists(path) == false)
            {
                return(false);
            }
            int Files = Directory.GetFiles(path).Length;       //当前目录下的文件数量
            int Dirs  = Directory.GetDirectories(path).Length; //当前目录下的目录数量

            LoadMissionMax = Files + Dirs;
            LoadMissionNow = 0;
            DirectoryInfo Dir = new DirectoryInfo(path);

            foreach (FileInfo i in Dir.GetFiles())
            {
                File.Add(new FileDescription(i.FullName, getDirPath()));
                LoadMissionNow++;
            }
            foreach (DirectoryInfo i in Dir.GetDirectories())
            {
                DirDescription tmp = new DirDescription(i.Name, this);
                Child.Add(tmp);
                tmp.findChild();
                LoadMissionNow++;
            }

            findMissionOK = true;
            return(true);
        }
Ejemplo n.º 2
0
        private void readDir(object obj)
        {
            DirDescription dir = (DirDescription)obj;

            dir.findChild();
        }