FSCTL_LOOKUP_STREAM_FROM_CLUSTER IOCTL (winioctl.h)
NTFS ボリュームへのハンドルまたは NTFS ボリューム上のファイルが指定されると、指定されたクラスターを占有するストリームを記述するデータ構造のチェーンを返します。
重要
FSCTL_LOOKUP_STREAM_FROM_CLUSTER はリソースを大量に消費する操作であり、通常は非常に大量のディスク帯域幅、メモリ、時間を使用します。 この情報の多くがキャッシュに残る可能性は低いので、 FSCTL_LOOKUP_STREAM_FROM_CLUSTERの 2 回目の呼び出しでは、最初の呼び出しとほぼ同じ時間がかかります。 複数の検索を行う場合は、 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 Transparent Failover (TFO) | いいえ |
スケールアウト ファイル共有 (SO) を使う SMB 3.0 | いいえ |
クラスターの共有ボリューム ファイル システム (CsvFS) | はい |
要件
サポートされている最小のクライアント | Windows 7 [デスクトップ アプリのみ] |
サポートされている最小のサーバー | Windows Server 2008 R2 [デスクトップ アプリのみ] |
Header | winioctl.h (Windows.h を含む) |