【发布时间】:2015-11-17 14:03:15
【问题描述】:
我想打开一个匿名文件,这是在 linux 下打开文件并取消链接或使用 memfd_create 的结果,但这些似乎在 windows 下都不可用(你可以 使删除文件起作用,但在文件关闭之前它的名称似乎不会被删除)。获取不支持文件系统中可见内容的文件描述符。
有没有办法在windows下实现这个?最好我希望它永远不会出现在文件系统中。
我想要这个的原因是因为我需要将 FILE* 作为参数发送给期望它的函数(并且我不希望它破坏文件系统)。更改库看起来不是一个可行的选择(除了这些库还必须在其他操作系统上工作 - 所以它们无论如何都不能依赖于 Windows 特定的抽象)。
【问题讨论】:
-
我不知道为什么这被否决了,所以我不得不猜测如何改进这个问题:(
-
如果 FILE * 仅被读取或写入,没有搜索,您可能可以为此使用命名管道。
-
@anatolyg 这是相关的,但那里的答案要么说它无法完成(接受的答案),要么提供依赖于 unix 行为或 GNU c-library 的解决方案。