如何从.NET创建/删除/读取/写入/ NTFS备用数据流?如果没有本机.NET支持,我将使用哪个Win32 API?另外,由于我认为没有记载,我将如何使用它们?
3 回答
慕标琳琳
TA贡献1830条经验 获得超9个赞
没有对它们的本机.NET支持。您必须使用P / Invoke来调用本地Win32方法。
要创建它们,请使用路径调用CreateFilefilename.txt:streamname。如果您使用返回SafeFileHandle的互操作调用,则可以使用该互操作构造一个FileStream,然后可以对其进行读写。
要列出文件上存在的流,请使用FindFirstStreamW和FindNextStreamW(它们仅在Server 2003和更高版本上存在,而在XP上不存在)。
我不相信您可以删除流,除非复制文件的其余部分并保留其中一个流。将长度设置为0也许也可以,但是我还没有尝试过。
您还可以在目录上具有备用数据流。您访问它们的方式与使用文件-相同C:\some\directory:streamname。
可以对流设置压缩,加密和稀疏性,而与默认流无关。
- 3 回答
- 0 关注
- 591 浏览
添加回答
举报
0/150
提交
取消