次の方法で共有


StorPortGetSystemAddress 関数 (storport.h)

StorPortGetSystemAddress ルーチンは、指定された SCSI 要求ブロック (SRB) のデータ バッファーのシステム空間で仮想アドレスを返します。

構文

ULONG StorPortGetSystemAddress(
  [in]  PVOID               HwDeviceExtension,
  [in]  PSCSI_REQUEST_BLOCK Srb,
  [out] PVOID               *SystemAddress
);

パラメーター

[in] HwDeviceExtension

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

[in] Srb

SCSI_REQUEST_BLOCK構造体へのポインター。

[out] SystemAddress

データ バッファーの仮想アドレスを受け取るポインター。

戻り値

StorPortGetSystemAddress は、次のいずれかの状態コードを返します。

リターン コード 説明
STOR_STATUS_NOT_IMPLEMENTED
この関数は、アクティブなオペレーティング システムには実装されません。
STOR_STATUS_SUCCESS
システム アドレスが正常に取得されたことを示します。
STOR_STATUS_INVALID_PARAMETER
この状態コードは、次のいずれかの条件によって発生します。

SRB には、関連付けられたデータ バッファーがありません。

仮想アドレスを受け取るポインターは NULL です

STOR_STATUS_INVALID_IRQL
呼び出しが無効な IRQL で行われました。
STOR_STATUS_INSUFFICIENT_RESOURCES
データ・バッファーをシステム・スペースにマップしようとしましたが、失敗しました。

注釈

Windows 8以降、Srb パラメーターは SCSI_REQUEST_BLOCK または STORAGE_REQUEST_BLOCK を指す場合があります。 Srb の Function フィールドの関数識別子がSRB_FUNCTION_STORAGE_REQUEST_BLOCK場合、SRB はSTORAGE_REQUEST_BLOCK要求構造体です。

要件

要件
サポートされている最小のクライアント このルーチンは、Windows Server 2003 SP2 以降で使用できます。
対象プラットフォーム ユニバーサル
Header storport.h (Storport.h を含む)
IRQL <=DISPATCH_LEVEL
DDI コンプライアンス規則 StorPortIrql(storport)

こちらもご覧ください

SCSI_REQUEST_BLOCK

STORAGE_REQUEST_BLOCK