Windows目录树的创建和SHGetDesktopFolder介绍

转自:

Windows文件夹管理树的实现实质上是对Widows名空间的遍历。名空间的每隔文件夹都提供了一个IShellFolder接口。
遍历名空间的方法是:
    1、调用SHGetDesktopFolder函数获得桌面文件夹的IShellFolder接口,桌面文件夹是文件夹管理树的根节点。
    2、调用所获得的IShellFolder接口的EnumObjects成员函数列举出子文件夹。
    3、调用IShellFolder的BindToObject成员函数获得子文件夹的IShellFolder接口。
    重复2、3步骤,列举出某文件夹下的所有子文件夹。直到所获得的IShellFolder的接口为NULL为止。

其中,SHGetDesktopFolder方法参数的一些解析:

CSIDL_BITBUCKET                       回收站
CSIDL_CONTROLS                       控制面板
CSIDL_DESKTOP                         Windows 桌面Desktop
CSIDL_DESKTOPDIRECTORY         Desktop的目录
CSIDL_DRIVES                            我的电脑
CSIDL_FONTS                              字体目录
CSIDL_NETHOOD                         网上邻居
CSIDL_NETWORK                        网上邻居虚拟目录
CSIDL_PERSONAL                        我的文档
CSIDL_PRINTERS                         打印机
CSIDL_PROGRAMS                       程序组
CSIDL_RECENT                            最近打开的文档
CSIDL_SENDTO                           "发送到"菜单项
CSIDL_STARTMENU                      任务条启动菜单项
CSIDL_STARTUP                           启动目录
CSIDL_TEMPLATES                       文档模板

你可能感兴趣的:(Windows目录树的创建和SHGetDesktopFolder介绍)