我正在尝试使用Dokan的C#版本制作虚拟文件系统 我现在想要做的是为我的文件系统设置文件的最大限制,例如,文件系统不能有超过2GB的文件。
目前我在Operation SetEndOfFile上执行此操作,但我只能给出DiskFull错误,我想返回类似NTStatus.FileTooLarge的内容,但是当我这样做时,文件系统只是忽略该返回。
有什么选择可以做我想要的吗?
答案 0 :(得分:1)
您可以检查WriteFile
函数的偏移量,如果偏移量大于2GB,则返回NtStatus.FileTooLarge
。
另外,你应该检查buffer.Length,如果你在磁盘上编辑文件 - 它不会将它切成较小的缓冲区块,而是将整个文件放入一个缓冲区。在这种情况下,您应该找到一种不破坏文件的方法,因为CleanUp
将在NtStatus.FileTooLarge
方法返回WriteFile
并且info.DeleteOnClose
设置为true后立即调用new HtmlWebpackPlugin({
"template": "./src/index.html",
"filename": "../templates/main/index.html",
...
})
。