【问题标题】:Does Windows have a virtual or temporary filesystem natively?Windows 本身是否具有虚拟或临时文件系统?
【发布时间】:2016-09-29 22:29:46
【问题描述】:

我有一个将输出数据写入文件的闭源第三方 API,但我想读取该数据并进一步处理它。

API 是 DLL 中的一个库,采用常规文件路径,例如“C:\someFolder\someFile”

当前的设置需要我将 api 中的数据保存到磁盘上的临时文件中,然后读取该临时文件以将数据放入内存中进行处理。

在 Windows 中是否有可能在主内存中拥有一个具有常规路径的虚拟文件或文件系统,以便 API 可以写入主内存而不是磁盘,这会使事情变得更快,因为没有磁盘访问。

这是否可以在 Windows 中原生而不使用任何额外的软件或 API 安装?

【问题讨论】:

  • 您应该提供其他信息,例如,API 的形式是什么。它需要路径名吗?一个打开的文件句柄?还有什么?你说 API 是指库吗?网络服务?什么?另外,这是您的标签所指示的 c++ 问题吗?我不明白为什么。也许选择一些更能吸引答案的标签。
  • 是的,这是可能的。如果您使用Dokan 之类的内容,you 甚至有可能完成。
  • 除此之外:库是随机访问文件还是仅作为流访问文件(认为命名管道)?
  • 第三方lib将一些生成的数据保存在文件中不访问它,并且lib需要一个字符串路径名来保存文件
  • @CaptainObvlious - 不确定 Dokan 对 OP 是否有用,但它肯定对我有用 - 我没听说过;谢谢指点!

标签: c++ file ram


【解决方案1】:

您可以创建一个命名管道并以 \\.\pipe\PipeName 的形式将路径提供给您的 DLL。然后在您自己的代码中连接到管道并读取。在此处查看示例:Create Named Pipe C++ Windows

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-05-28
    • 2016-07-19
    • 1970-01-01
    • 2010-09-24
    • 2011-02-24
    • 2013-04-28
    • 2016-09-28
    • 2022-11-11
    相关资源
    最近更新 更多