【发布时间】:2016-07-21 14:16:14
【问题描述】:
通过CreateFile打开NTFS文件数据流时,是否可以在路径名中指定流偏移?
如果路径名以\\?\ 开头呢?
例如abcd.txt::$DATA 指定未命名流的偏移量 0*;是否可以在路径名中指定不同的偏移量**?
*从技术上讲,这也意味着偏移量等于流长度,以防 WriteFile 使用 append 调用
**从未使用过SetFilePointer
【问题讨论】:
-
这个的用例是什么?除了作业之外,我还没有见过这样的规范:“不得使用
SetFilePointer”。 -
Blackbox 遗留 I/O API 不得更改,您必须解决这些限制。
-
@IInspectable:如果您希望应用程序能够记录但不损坏或删除日志文件,“附加”情况实际上可能很有用。仅授予应用程序(其用户)对日志文件的附加访问权限应该可以完成这项工作。
-
@MartinDrab:但这已经由CreateFile 处理了。只需通过
FILE_APPEND_DATAfile access right constant,您就可以开始了。无需明确指定偏移量。 -
我知道。我只是想让“附加”的东西更清楚。我不打算为“抵消问题”带来任何新的东西。
标签: winapi path filepath ntfs createfile