英語で読む

次の方法で共有


StorPortMarkDeviceFailedEx 関数 (storport.h)

StorPortMarkDeviceFailedEx ルーチンは、デバイスを失敗状態でマークし、診断に必要なデータを提供します。

構文

C++
ULONG StorPortMarkDeviceFailedEx(
  PVOID         HwDeviceExtension,
  PSTOR_ADDRESS StorAddress,
  ULONG         Flags,
  USHORT        FaultCode,
  PWSTR         FaultDescription,
  USHORT        AdditionalDataSize,
  PUCHAR        AdditionalData,
  USHORT        CriticalDataSize,
  PUCHAR        CriticalData
);

パラメーター

HwDeviceExtension

ホスト バス アダプター (HBA) のハードウェア デバイス拡張機能へのポインター。

StorAddress

ストレージ ユニットのデバイス アドレス。 このパラメーターは、アダプター デバイスの場合は NULL です。

Flags

ミニポートによって要求されている動作を示します。 フラグ は、次のいずれかの値に設定できます。

意味
STORPORT_MARK_DEVICE_FAILED_FLAG_REMOVE_DEVICE 障害が発生したデバイスを削除します。
STORPORT_MARK_DEVICE_FAILED_FLAG_PREDICTED_FAILURE これが予測されたデバイス障害であることを示します。

FaultCode

ミニポート固有のエラー コード。

FaultDescription

エラーを説明する人間が判読できる文字列。

AdditionalDataSize

AdditionalData が指 バッファーのサイズ (バイト単位)。

AdditionalData

エラー状態に関連付けられた追加のデータを含むバッファーへのポインター。

CriticalDataSize

CriticalData が指 バッファーのサイズ (バイト単位)。

CriticalData

エラー状態に関連付けられた重要なデータを含むバッファーへのポインター。

戻り値

StorPortMarkDeviceFailedEx 有効なSTOR_STATUS コードが返されます。

備考

ミニポート ドライバーは、この関数を呼び出して、失敗したデバイスをマークしたり、デバイスが失敗した可能性があることを示したりすることができます。

Flagsでフラグが設定されていない場合、Storport はイベントのみをログに記録します。

PnP マネージャーは、失敗したデバイスの PnP 状態を照会する IRP を送信します。 Flags が STORPORT_MARK_DEVICE_FAILED_FLAG_REMOVE_DEVICE に設定され、STORPORT_MARK_DEVICE_FAILED_FLAG_PREDICTED_FAILUREに設定されていない場合、PnP マネージャーは失敗したデバイスの削除を試みます。

必要条件

要件 価値
サポートされる最小クライアント Windows 10 バージョン 2004
ヘッダー storport.h

関連項目

IoInvalidateDeviceState

StorPortMarkDeviceFailed