译自:Unsupported

不支持的驱动器功能

  • FSCTL

不支持的操作系统

  • Windows Vista 适用于 <= 0.6.0 的 Dokan 版本
  • Windows XP 适用于 <= 0.6.0 的 Dokan 版本
  • Windows 2000

可选择的方案

如果上面提到的某个点严重影响了你的项目,这里有三个解决方案:

  • 等待 如果你有时间的话,把你需要的功能放到 issue tracker 上,然后等待它被处理

  • 自己造轮子 我们认为这是最好的解决方案,因为这不止解决了你自己的问题,同时能帮助到所有人。然而要采用这个方案,你需要更多的时间和精力,学习更多的知识。如果你完成了对 Dokan 的拓展改造,别忘了新建一个 pull request

  • 寻找替代选择 其实有时你并没有其他的选择,因为 Dokan 是唯一一个免费,开源而且持续更新的 Windows 上的用户态文件系统驱动库。不过我们列出了一些技术上的小技巧和可能相关的产品,供您参考。

Name Comments
MiniFilter File System Driver 你确定你需要一个文件系统设备驱动吗?或许自 Windows XP SP3 就已经推出的 MiniFilter 就能满足你的需求。要让它与 Dokan 适配还要花些功夫,不过它是一个由微软官方推出的方案,不失为值得考虑的选择。
Network Mini-Redirector (此项需要更多考证)Network Mini-Redirector 只能够帮助你为远程文件创建一个网络设备。要使之与 Dokan 适配需要深入内核的知识。
Shell Namespace Extension 它和文件系统没有什么关系,不过等你看完了这些之后,或许会发现你并不需要一个文件系统。它只能在 Windows Explorer 上工作,但能帮助你控制虚拟文件夹的视图和内容。
WebDAV 这真可以被称为奇技淫巧了,但实际上它运行效果不错,尤其是当你想创建一个网络设备的时候。它并不创建一个文件系统驱动,而是创建一个新的 WebDAV 服务器。大多数的操作系统(包括 Windows)为 WebDAV 提供了原生支持。davfuse 项目提供了一个与 FUSE 适配的库来做同样的事情。
Pismo File Mount 一个协同开发中的虚拟文件系统相关软件,它免费(但不开源)提供用户态文件系统的核心功能sdk。开发组和用户并没有太多交流,但这个项目正持续更新
Callback File System Dokan 和 CBFS 常常被相提并论。EldoS 公司与 Dokan 的竞争并不总是正派的(比如误导性的 Dokan 与 CBFS 间的比较,攻击性的市场沟通,抢夺 Dokan 市场等)但这就是在 Dokan 项目并不活跃情况下市场的竞争。他们的产品实际上是相当不错的,同时他们提供了很多基础设备驱动的Api。购买他们产品授权的费用是数千美元(他们曾经打折销售过,有时也会为开源项目提供免费授权)。这里有一些从 CBFS 迁移到 Dokan 的技术资料。
OSR FSDK 使用由 OSR 大佬提供的 Windows 文件系统开发工具包同样是开发用户态文件系统的一种方式。这个工具包不是免费的,但也没有公布价格,你需要和他联系并向他介绍你的项目来取得授权

早在2000年,就有下列几个项目(现在已经停止开发)尝试实现用户态文件系统驱动开发: