public void update_folder(ref DbDataReader r, int fd_id)
        {
            uc_folder fd;

            if (!this.folders.TryGetValue(fd_id, out fd))
            {
                fd = new uc_folder();
            }
            this.folders.Remove(fd_id);

            FolderInf fdSvr = new FolderInf();

            fdSvr.filesComplete = r.GetInt32(24);
            fdSvr.filesCount    = r.GetInt32(23);
            fdSvr.foldersCount  = r.GetInt32(22);
            fdSvr.idFile        = r.GetInt32(0);
            fdSvr.idSvr         = r.GetInt32(3);
            fdSvr.lenLoc        = r.GetInt64(9);
            fdSvr.lenSvr        = r.GetInt64(12);
            fdSvr.pathLoc       = r.GetString(20);
            fdSvr.pathSvr       = r.GetString(21);
            fdSvr.size          = r.GetString(18);
            fdSvr.nameLoc       = r.GetString(16);
            fdSvr.perSvr        = r.GetString(13);

            fd.m_fdSvr = fdSvr;
            this.folders.Add(fd_id, fd);
        }
        /// <summary>
        /// 添加一个文件夹项
        /// </summary>
        public void add_child(ref DbDataReader r, int pidRoot)
        {
            uc_file_child uf = new uc_file_child();

            uf.read(pidRoot, ref r);

            uc_folder fd;

            if (!this.folders.TryGetValue(pidRoot, out fd))
            {
                fd = new uc_folder();
                this.folders.Add(pidRoot, fd);
            }
            fd.m_files.Add(uf);
        }