IOCTL_AVC_BUS_RESET IOCTL (avc.h)

IOCTL_AVC_BUS_RESET I/O 制御コードを使用すると、呼び出し元は、AVC_SUBUNIT_ADDR_TRIGGERBUSRESET フラグを使用しなかった以前のIOCTL_AVC_UPDATE_VIRTUAL_SUBUNIT_INFOおよびIOCTL_AVC_REMOVE_VIRTUAL_SUBUNIT_INFO制御要求を完了できます。 IRP_MJ_DEVICE_CONTROL ディスパッチを介して、ユーザー モードとカーネル モード コンポーネントで使用できます。

ドライバー間通信の場合は、METHOD_BUFFERED IOCTL であるため、それに応じて IRP フィールドを設定します (IrpStack-Parameters.DeviceIoControl.InputBufferLength> および Irp-AssociatedIrp.SystemBuffer>)。 この要求には追加のパラメーターは必要ないため、入力バッファーと出力バッファーを NULL に設定する必要があります。

この要求により 、avc.sys によってデバイスの関係が無効になり、その結果、PnP マネージャーは子デバイス オブジェクト (仮想サブユニット) の更新されたリストを要求します。 新規または削除された子デバイス オブジェクトがない場合、アクションは実行されません。 新しい子デバイス オブジェクトまたは削除された子デバイス オブジェクトがある場合、ドライバーは読み込みまたはアンロードされ、各 PDO が開始または削除されると、各 PDO に対して 1394 バスリセットがトリガーされます。

メジャー コード

IRP_MJ_DEVICE_CONTROL

ステータス ブロック

Irp-IoStatus.Status> は、要求が成功した場合にSTATUS_SUCCESSに設定されます。

それ以外の場合は、NTSTATUS コードとして適切なエラー条件に対する状態。

詳細については、「 NTSTATUS 値」を参照してください。

注釈

IRQL = PASSIVE_LEVEL で呼び出す必要があります

要件

要件
Header avc.h

こちらもご覧ください

AVC_SUBUNIT_ADDR_SPEC

IOCTL_AVC_CLASS

IOCTL_AVC_REMOVE_VIRTUAL_SUBUNIT_INFO

IOCTL_AVC_UPDATE_VIRTUAL_SUBUNIT_INFO