FindFirstStreamTransactedW 関数 (winbase.h)

[Microsoft では、開発者がアプリケーションのニーズを達成するために代替手段を利用することを強くお勧めします。 TxF が開発された多くのシナリオは、よりシンプルで利用しやすい手法で実現できます。 また、将来のバージョンの Microsoft Windows では TxF を使用できない場合があります。 詳細、および TxF の代替手段については、「トランザクション NTFS の使用の代替手段」を参照してください。]

トランザクション操作として、指定したファイルまたはディレクトリの最初のストリームを列挙します。

構文

HANDLE FindFirstStreamTransactedW(
  [in]  LPCWSTR            lpFileName,
  [in]  STREAM_INFO_LEVELS InfoLevel,
  [out] LPVOID             lpFindStreamData,
        DWORD              dwFlags,
  [in]  HANDLE             hTransaction
);

パラメーター

[in] lpFileName

完全修飾ファイル名。

ファイルはローカル コンピューターに存在する必要があります。それ以外の場合、関数は失敗し、最後のエラー コードは ERROR_TRANSACTIONS_UNSUPPORTED_REMOTE (6805) に設定されます。

[in] InfoLevel

返されるデータの情報レベル。 このパラメーターは、 STREAM_INFO_LEVELS 列挙型の値の 1 つです。

意味
FindStreamInfoStandard
0
データは 、WIN32_FIND_STREAM_DATA 構造体で返されます。

[out] lpFindStreamData

ファイル データを受け取るバッファーへのポインター。 このデータの形式は 、InfoLevel パラメーターの値によって異なります。

dwFlags

将来利用するために予約されています。 このパラメーターは 0 である必要があります。

[in] hTransaction

トランザクションのハンドル。 このハンドルは、 CreateTransaction 関数によって返されます。

戻り値

関数が成功した場合、戻り値は FindNextStreamW 関数の後続の呼び出しで使用できる検索ハンドルです。

失敗した場合の戻り値は、INVALID_HANDLE_VALUE です。 詳細なエラー情報を得るには、GetLastError を呼び出します。

解説

すべてのファイルに既定のデータ ストリームが含まれています。 NTFS では、ファイルに 1 つ以上の名前付きデータ ストリームを含めることもできます。 FAT ファイル システムでは、ファイルに既定のデータ ストリームを含めることはできません。そのため、FAT ファイルシステム ファイルで使用した場合、この関数は有効な結果を返しません。 この関数は、ハード リンクをサポートするすべてのファイル システムで機能します。それ以外の場合、関数は ERROR_STATUS_NOT_IMPLEMENTED (6805) を返します。

FindFirstStreamTransactedW 関数は、検索ハンドルを開き、指定したファイルまたはディレクトリ内の最初のストリームに関する情報を返します。 ファイルの場合、これは常に既定のデータ ストリームである ::$DATAです。 検索ハンドルが確立されたら、 FindNextStreamW 関数でそれを使用して、指定したファイルまたはディレクトリ内の他のストリームを検索します。 検索ハンドルが不要になったら、 FindClose 関数を使用して閉じる必要があります。

Windows 8 と Windows Server 2012 では、この関数は、次のテクノロジによってサポートされています。

テクノロジ サポートされています
サーバー メッセージ ブロック (SMB) 3.0 プロトコル いいえ
SMB 3.0 Transparent Failover (TFO) いいえ
スケールアウト ファイル共有 (SO) を使う SMB 3.0 いいえ
クラスターの共有ボリューム ファイル システム (CsvFS) いいえ
Resilient File System (ReFS) いいえ
 

SMB 3.0 は TxF をサポートしていません。

要件

要件
サポートされている最小のクライアント Windows Vista [デスクトップ アプリのみ]
サポートされている最小のサーバー Windows Server 2008 [デスクトップ アプリのみ]
対象プラットフォーム Windows
ヘッダー winbase.h (Windows.h を含む)
Library Kernel32.lib
[DLL] Kernel32.dll

関連項目

File Management 関数

FindClose

FindNextStreamW

STREAM_INFO_LEVELS

トランザクション NTFS

WIN32_FIND_STREAM_DATA