是否可以在Windows上用C++模拟目录/分区

问题描述 投票:0回答:1

我想知道是否可以模拟一个分区,或者最好是一个目录,而不需要开发文件系统驱动程序。此分区对 Windows 和其他应用程序可见,其工作方式类似于常规目录或分区,但 I/O 受我的应用程序的控制 - 我覆盖该特定目录的读/写/打开/关闭/列表功能,以便我可以提供信息向操作系统发送目录内有多少文件和目录、它们的大小、文件名等。

提前谢谢您

c++ c windows winapi filesystems
1个回答
0
投票

主要选项有:

  1. 实时驱动器模拟,所有文件系统请求都发送到您的代码
  2. 使用CfAPI同步数据
  3. shell 命名空间扩展

所有这些选择都有其优点和缺点。当然,基于驱动程序的选项 (1) 是最强大的,除非安装驱动程序是不行的。如果您同意在本地存储数据副本(如果您处理安全和/或数据保护,这可能是不希望的),那么同步可能是一个可行的选择。 shell 命名空间通常是数据的只读视图,这意味着应用程序很难将文件保存到命名空间扩展文件夹中(这实际上是不可能的,除非专门为此选项设计应用程序)。

我们公司Callback Technologies提供多种图书馆产品,可以满足您不同方面(或全部)的需求。大多数产品都包含一个或两个预构建的驱动程序,而 CBFS Shell 用于创建 shell 扩展,是一个纯粹的用户模式解决方案。

© www.soinside.com 2019 - 2024. All rights reserved.