다음을 통해 공유


IOCTL_AVC_BUS_RESET IOCTL(avc.h)

IOCTL_AVC_BUS_RESET I/O 컨트롤 코드를 사용하면 호출자가 이전 IOCTL_AVC_UPDATE_VIRTUAL_SUBUNIT_INFO 완료하고 AVC_SUBUNIT_ADDR_TRIGGERBUSRESET 플래그를 사용하지 않은 제어 요청을 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 호출해야 합니다.

요구 사항

요구 사항
헤더 avc.h

추가 정보

AVC_SUBUNIT_ADDR_SPEC

IOCTL_AVC_CLASS

IOCTL_AVC_REMOVE_VIRTUAL_SUBUNIT_INFO

IOCTL_AVC_UPDATE_VIRTUAL_SUBUNIT_INFO