FSCTL_LOOKUP_STREAM_FROM_CLUSTER IOCTL (winioctl.h)

在给定 NTFS 卷或 NTFS 卷上文件的句柄的情况下,返回描述占用指定群集的流的数据结构链。

重要

FSCTL_LOOKUP_STREAM_FROM_CLUSTER 是一种资源密集型操作,通常使用大量的磁盘带宽、内存和时间。 大部分此信息不太可能保留在缓存中,因此第二次调用 FSCTL_LOOKUP_STREAM_FROM_CLUSTER 所需的时间几乎与第一次调用的时间相同。 对于执行多个查找,使用 FSCTL_ENUM_USN_DATA 枚举每个 MFT 记录,然后使用 FSCTL_GET_RETRIEVAL_POINTERS 收集数据以在群集和流之间映射会更有效。

若要执行此操作,请使用以下参数调用 DeviceIoControl 函数。

BOOL DeviceIoControl(
  (HANDLE)       hDevice,               // handle to file, directory, or volume
  FSCTL_LOOKUP_STREAM_FROM_CLUSTER,     // dwIoControlCode
  (LPVOID)       lpInBuffer,            // input buffer
  (DWORD)        nInBufferSize,         // size of input buffer
  (LPVOID)       lpOutBuffer,           // output buffer
  (DWORD)        nOutBufferSize,        // size of output buffer
  (LPDWORD)      lpBytesReturned,       // number of bytes returned
  (LPOVERLAPPED) lpOverlapped           // OVERLAPPED structure
);

注解

在 Windows 8 和 Windows Server 2012 中,以下技术支持此代码。

技术 支持
服务器消息块 (SMB) 3.0 协议
SMB 3.0 透明故障转移 (TFO)
具有横向扩展文件共享的 SMB 3.0 (SO)
群集共享卷文件系统 (CSV)

要求

   
最低受支持的客户端 Windows 7 [仅限桌面应用]
最低受支持的服务器 Windows Server 2008 R2 [仅限桌面应用]
标头 winioctl.h (包括 Windows.h)

另请参阅