windows - 创建虚拟文件夹并将它们挂接到文件系统

标签 windows winapi file-io filesystems

我为我正在处理的项目收集了大量文件夹。长期以来,我一直在努力寻找一种更好的方法来对它们进行排序,我想编写一个应用程序,根据我所说的任何标准创建组,例如“2011 年的文件夹”或“包含 x 类型文件的文件夹” "等

这相当简单,不会给在 winForms 或 WPF 或其他东西中使用自己的 UI 的代码带来太大问题。但我认为,如果我能让这些文件夹看起来是文件系统的一部分,那么其他应用程序(如现有的文件浏览器)可以看到它们会好得多。

这可能吗?它会引起我没有考虑过的问题吗?如果可能的话,我该怎么做?

我想到的一种方法是让应用程序监控文件系统并在每次发生更改时创建文件夹快捷方式,但我很好奇是否有可能通过“网关”向浏览器实际呈现一个假文件系统'文件夹

编辑: 好吧,这显然是可能的,因为 http://www.virtualfolder.net/可以做到,现在我想到 TrueCrypt 也可以,尽管如果它不必作为单独的驱动器出现就好了。那么问题就变成了,我该如何实现呢?

最佳答案

您可以创建一个 Shell Namespace Extension它收集您想要的文件信息,并以您希望的任何方式在 Windows 资源管理器中显示它。 You can choose where您的扩展所在的位置,无论是作为其自身的顶级节点、另一个系统虚拟文件夹/扩展的子节点,还是作为文件系统文件夹的子节点。

编写一个 SNE 并不简单,但它比编写一个较低级别的文件系统驱动程序要容易得多,而且它不需要特殊的面向驱动程序的编译器。任何支持开发 COM 对象的编译器都可以工作。

关于windows - 创建虚拟文件夹并将它们挂接到文件系统,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13932953/

相关文章:

c++ - DJGPP 的恐惧错误

python - 警告 - 找不到 Python 库,libdir=None、ldlibrary=None、multiarch=None、masd=None

windows - 添加/删除程序在哪里提取 "Installed On"列的数据?

Python Ctypes 键盘事件

c++ - 为什么我会得到对任何与打印相关的函数 win32 的 undefined reference ?

python - 在 Windows 中的 Python 文件上混合使用 read() 和 write()

windows - 在 XP 上,同步文件和文件夹的最佳方式

java - 小程序所需的库存储在哪里,以避免每次打开小程序时都下载它们

c++ - 对话框控件 - 检测更改

iphone - 存储大笔记内容-objective-c