大家好
我用的是RC4,我将TRZShellTree的根结点设为桌面,通过设置它的options属性后,桌面下包含了三个子节点:
我的文档
我的电脑
网上邻居我现在不想显示网上邻居了,有什么办法设置一下吗?或者干脆自己在程序运行时找到‘网上邻居’节点自己把它删除?可我又觉得这样不好。

解决方案 »

  1.   

    在ShellTree的AddItem里面进行过滤,通过windows的Shell外壳获取到网上邻居的mkid,过滤即可。#define ItemListMkidDeskTop 20
    #define ItemListMkidMyComputer 25       
    #define NetWorkId 'X'
    void __fastcall TChoseLocalPath::LocalPathTreeAddItem(TObject *Sender,
          IShellFolder_NRC *ParentIShf, PItemIDList ParentAbsIdList,
          PItemIDList ItemRelIdList, int Attribs, LongBool &AllowAdd)
    {
            if(ItemRelIdList->mkid.cb == ItemListMkidDeskTop && ItemRelIdList->mkid.abID[1] == NetWorkId)
            {
                 AllowAdd = false;
            }
    }