我如何在Windows中编写自己的“文件系统”?

我已经回忆起在使用小“文件系统”之前,基本上提供了一个接口到别的东西。 例如,我相信有一个GMail文件系统在“我的电脑”中创build了一个条目,可以像本地计算机上的任何其他驱动器一样使用。 我怎么能在C ++中执行这样的事情呢? 谢谢!

Solutions Collecting From Web of "我如何在Windows中编写自己的“文件系统”?"

尝试Dokan 。 这就像FUSE,除了Windows。 我认为命名空间扩展有一定的限制,就像不能从命令行访问一样,但是我现在还不确定。

写一个实际的文件系统涉及写一个驱动程序 ; 这意味着内核模式代码(可怕的东西)和 付钱 获得IFS DDK 。 (编辑:看起来像他们不收费了)

你可能想要的是一个“命名空间扩展”。 试试这个: 写入命名空间扩展的完整白痴指南 – CodeProject

这可能是以GMail文件系统用于执行的方式扩展NTFS的一个起点: Windows NT重新分析点 。

GMail文件系统就是给出的名字; 它不是任何文件系统。 它只是Windows资源管理器的一个命名空间扩展名,与您的GMail帐户链接!

我不知道你在做什么,但无论如何,我相信,下面的链接将对你有用:

http://msdn.microsoft.com/en-us/magazine/cc188741.aspx

就像一个参考:虚拟驱动器可以使用我们的回叫文件系统产品,这是一个支持,记录和维护的解决方案。

我也在想这个,也许是一些示例代码? (给我发电子邮件,如果我忘记PLZ;现在就开始SDD)

我正在考虑一个类似的文件系统,它将作为一个驱动程序插入,并允许在大文件上进行动态“软RAID”,主要是将它们放在多个磁盘上,也许有一些压缩选项和“智能”空间利用率低等情况,更加有效,状态控制和指标也作为正常规划

好像我会加载驱动程序工具包,然后我想要文件写入事件,而且大多数情况下自动替换fopen和类似的功能作为一个中间驱动程序与Windows网络驱动程序的一点经验

我也听说过在虚拟机上开发更好的事情,以减少崩溃和更多的调试

对于某些或所有文件,也许还有更多元信息,包括特殊文件夹中带有选项的文件,包括在文件夹,指定,所有,字母等等上可能既快又简单(混淆和/或对称密钥)加密选项,或者较慢的版本,也许集成和可选(也有利可图)在线类CVS风格的差异式备份,主要针对热点文件的变化,以间隔和价格进行在线备份,主要是可能与键盘事件匹配,甚至可能是有用的,只是一个键盘记录在线备份服务也是相当安全的

同时避免常见的文件,如Windows程序文件或“程序”目录中的普通文件,可以用盗版工具轻松复制,不像所有的文件。