【发布时间】:2009-04-07 14:28:08
【问题描述】:
我正在尝试实现一个独立于平台的文件/目录树浏览器。基本上,我正在尝试复制 Windows 资源管理器的树控件来浏览计算机。但是,我不知道如何找到“桌面”或“我的电脑”文件夹字符串(它在每台电脑和操作系统类型、版本和语言中都会发生变化)。如果我能找到一种方法来获取最顶层的文件夹字符串,那么我就可以遍历并充满希望地填充树。某处是否有注册表字符串?
最初,我只针对 MS Windows 操作系统(XP、Vista 等),但后来我也计划支持 Linux 和 Mac。我将 wxWidgets 用于我的 GUI,但我愿意接受针对此特定问题的所有建议。哦,我在 VS2008 中使用 C++。
【问题讨论】:
-
你可能会在这里绊倒; “我的电脑”和“桌面”是特定于 Windows 的,不可移植。此外,您不能简单地遍历它们。
-
假设仅限 Windows,您是否要本地化字符串“Desktop”?或者你想要桌面文件夹的路径?
-
MSalters:在使用了您指出的 SH 方法后,我意识到了您所指出的。 crb:我只是想要桌面的路径。但是,最后,我更倾向于在 wxWidgets 中使用 wxGenericDirCtrl,它是可移植的,但只能将我的磁盘作为树提供给我。谢谢。
标签: c++ windows treeview wxwidgets directory