次の方法で共有


FsRtlRemoveDotsFromPath 関数 (ntifs.h)

FsRtlRemoveDotsFromPath ルーチンは、'.' と '..' の不要な出現箇所を削除します。 を指定したパスから取得します。

構文

NTSTATUS FsRtlRemoveDotsFromPath(
  [in, out] PWSTR  OriginalString,
  [in]      USHORT PathLength,
  [out]     USHORT *NewLength
);

パラメーター

[in, out] OriginalString

処理するバッファーへのポインター。

[in] PathLength

バッファーの長さ (バイト単位)。

[out] NewLength

処理後のバッファーの新しい長さを指すポインター。

戻り値

FsRtlRemoveDotsFromPath ルーチンは、成功のSTATUS_SUCCESS値を返すか、操作を完了できなかった場合はSTATUS_IO_REPARSE_DATA_INVALIDを返します。

備考

このルーチンは、次の例のように OriginalString パスを受け取ります。

\dir1\dir2\..\dir3\.\file.txt

このルーチンは、OriginalString 次のように変更します。

\dir1\dir3\file.txt

次のいずれかの文字列が OriginalStringとして渡された場合、ルーチンはSTATUS_IO_REPARSE_DATA_INVALID 失敗します。

\..
..
..\anyOtherContent

必要条件

要件 価値
サポートされる最小クライアント Windows Vista
ターゲット プラットフォーム の 万国
ヘッダー ntifs.h (FltKernel.h、Ntifs.h を含む)
ライブラリ NtosKrnl.lib
DLL NtosKrnl.exe
IRQL PASSIVE_LEVEL
DDI コンプライアンス規則 を する HwStorPortProhibitedDDIs(storport), PowerIrpDDis(wdm)