次の方法で共有


FltParseFileName 関数 (fltkernel.h)

FltParseFileName ファイル名文字列から拡張子、ストリーム、および最終的なコンポーネントを解析します。

構文

NTSTATUS FLTAPI FltParseFileName(
  [in]      PCUNICODE_STRING FileName,
  [in, out] PUNICODE_STRING  Extension,
  [in, out] PUNICODE_STRING  Stream,
  [in, out] PUNICODE_STRING  FinalComponent
);

パラメーター

[in] FileName

ファイル名として解析する文字列を含む UNICODE_STRING 構造体へのポインター。 このパラメーターは必須であり、NULL することはできません。

[in, out] Extension

FileName 文字列から解析された拡張機能を受け取るUNICODE_STRING構造体へのポインター。 拡張子が見つからない場合、FltParseFileName 、Extension.Buffer NULL し、Extension.Length を 0 に します。 それ以外の場合、extension.Buffer は、FileName.Buffer内の拡張機能の先頭へのポインターを受け取り、Extension.Length 拡張機能の長さをバイト単位で受け取ります。 このパラメーターは省略可能であり、NULL できます。

[in, out] Stream

FileName 文字列から解析されたストリーム名を受け取るUNICODE_STRING構造体へのポインター。 ストリーム名が見つからない場合、FltParseFileName は、Stream.Buffer を NULL し、Stream.Length を 0 に 設定します。 それ以外の場合、Stream.Buffer は、FileName.Buffer内のストリーム名の先頭へのポインターを受け取り、Stream.Length ストリーム名の長さをバイト単位で受け取ります。 このパラメーターは省略可能であり、NULL できます。

[in, out] FinalComponent

FileName 文字列から解析された最終的な名前コンポーネントを受け取るUNICODE_STRING構造体へのポインター。 最終的なコンポーネントが見つからない場合、FltParseFileName FinalComponent.Buffer NULL し、FinalComponent.Length を 0 に します。 それ以外の場合、finalComponent.Buffer は、fileName.Buffer 内の最終的なコンポーネントの先頭へのポインター受け取り、FinalComponent.Length は最終的なコンポーネントの長さをバイト単位で受け取ります。 このパラメーターは省略可能であり、NULL できます。

戻り値

FltParseFileName は、STATUS_SUCCESSまたは適切な NTSTATUS エラー コードを返します。

備考

FltParseFileName は、ファイル名文字列から拡張子、ストリーム名、および最終的なコンポーネントを解析します。 ファイル名を正規化したり、完全なパス名を指定したりする必要はありません。 ファイル名が短いファイル名の場合は、FltParseFileName 拡張子のみを解析します。

ローカル ファイルの正規化された名前の例を次に示します。

\Device\HarddiskVolume1\Documents and Settings\MyUser\My Documents\Test Results.txt:stream1

FltParseFileName は、この正規化された名前を次のように解析します。

拡張機能の: "txt"

Stream: ":stream1"

FinalComponent: "Test Results.txt:stream1"

ファイルの短い名前の例を次に示します。

TestRe~1.txt

FltParseFileName は、次のようにこの短い名前を解析します。

拡張機能の: "txt"

ストリーム: NULL

FinalComponent: "TestRe~1.txt"

ファイル名の正規化とファイル名の解析の詳細については、FLT_FILE_NAME_INFORMATIONを参照してください。

FLT_FILE_NAME_INFORMATION構造体の内容を解析するには、FltParseFileNameInformation 呼び出します。

必要条件

要件 価値
サポートされる最小クライアント Windows XP Service Pack 2 (SP2) 以降のバージョンの Windows オペレーティング システムで使用できます。
ターゲット プラットフォーム 万国
ヘッダー fltkernel.h (Fltkernel.h を含む)
ライブラリ FltMgr.lib
DLL Fltmgr.sys
IRQL <= APC_LEVEL

関連項目

FLT_FILE_NAME_INFORMATION

FltParseFileNameInformation

UNICODE_STRING