IoVerifyVolume 関数 (ntifs.h)

IoVerifyVolume は、デバイス オブジェクトによって識別される、指定されたリムーバブル メディア デバイスにボリューム検証要求を送信します。

構文

NTSTATUS IoVerifyVolume(
  [in] PDEVICE_OBJECT DeviceObject,
  [in] BOOLEAN        AllowRawMount
);

パラメーター

[in] DeviceObject

ボリューム を検証 またはマウントするデバイスのデバイス オブジェクトを識別するDEVICE_OBJECT構造体へのポインター。

[in] AllowRawMount

値 TRUE は、この検証要求が DASD (ダイレクト アクセス ストレージ デバイス) オープン要求に代わって発行されていることを示します。これは、検証要求が失敗した場合に生のマウントを実行する必要があることを示します。

戻り値

IoVerifyVolume は、検証操作から NTSTATUS コードを返します。これは、次のいずれかの値である可能性があります。

リターン コード 説明
STATUS_SUCCESS IoVerifyVolume は、ボリュームが変更されていないか、以前にマウントされていないと判断しました。
STATUS_INSUFFICIENT_RESOURCES 操作を完了するには、システム リソースが不足しています。
STATUS_UNSUCCESSFUL 検証操作が失敗しました。
STATUS_WRONG_VOLUME ボリュームが変更されました。

注釈

IoSetDeviceToVerifyIoVerifyVolume を使用する前に、ドライバー ライターは FASTFAT サンプルでこれらのルーチンを使用する方法を検討する必要があります。

IoVerifyVolume は、最後にアクセスされてからボリュームが変更された可能性がある場合に、指定したデバイスにマウントされたボリュームをチェックするために呼び出されます。 ファイル システム ドライバーは、通常、下位のデバイスがSTATUS_VERIFY_REQUIREDを返すときに IoSetDeviceToVerifyIoVerifyVolume を呼び出します。

DeviceObject にマウントされたボリュームがある場合、IoVerifyVolume はボリュームが変更されたかどうかを確認します。

ボリュームが変更されたか、以前にマウントされていない場合、 IoVerifyVolume はボリューム マウント要求をデバイスに送信します。

リムーバブル メディア デバイスの詳細については、「リムーバブル メディアのサポート」を参照してください。

要件

要件
対象プラットフォーム ユニバーサル
Header ntifs.h (Ntifs.h を含む)
Library NtosKrnl.lib
[DLL] NtosKrnl.exe
IRQL < DISPATCH_LEVEL

こちらもご覧ください

IoGetDeviceToVerify

IoSetDeviceToVerify