IOCTL_USB_GET_NODE_CONNECTION_DRIVERKEY_NAME IOCTL(usbioctl.h)
IOCTL_USB_GET_NODE_CONNECTION_DRIVERKEY_NAME I/O 제어 요청은 표시된 포트에 연결된 디바이스와 연결된 드라이버 레지스트리 키 이름을 검색합니다.
IOCTL_USB_GET_NODE_CONNECTION_DRIVERKEY_NAME 사용자 모드 I/O 제어 요청입니다. 이 요청은 USB 허브 디바이스(GUID_DEVINTERFACE_USB_HUB)를 대상으로 합니다.
주 코드
입력 버퍼
ASSOCIATedIrp.SystemBuffer 멤버는 사용자가 할당한 USB_NODE_CONNECTION_DRIVERKEY_NAME 구조를 가리킵니다. 입력에서 이 구조체의 ConnectionIndex 멤버에는 디바이스가 연결된 포트 수가 포함됩니다.
입력 버퍼 길이
USB_NODE_CONNECTION_DRIVERKEY_NAME 구조체의 크기입니다.
출력 버퍼
출력 시 AssociatedIrp.SystemBuffer의 USB_NODE_CONNECTION_DRIVERKEY_NAME 구조체의 DriverKeyName 멤버에는 ConnectionIndex로 표시된 포트에 연결된 디바이스와 연결된 드라이버 키 이름이 포함됩니다.
ActualLength 멤버는 드라이버 키 이름의 길이(바이트)를 나타냅니다. Parameters.DeviceIoControl.OutputBufferLength 멤버는 전체 USB_NODE_CONNECTION_DRIVERKEY_NAME 구조체의 크기(바이트)를 나타냅니다.
출력 버퍼 길이
USB_NODE_CONNECTION_DRIVERKEY_NAME 구조체의 크기입니다.
상태 블록
USB 스택은 요청이 성공하면 Irp-IoStatus.Status>를 STATUS_SUCCESS 설정합니다. 그렇지 않으면 USB 스택은 상태를 STATUS_INVALID_PARAMETER 또는 STATUS_INSUFFICIENT_RESOURCES 같은 적절한 오류 조건으로 설정합니다.
호출자가 모든 출력 데이터를 저장할 수 있을 만큼 큰 출력 버퍼를 할당하는 경우 IoStatus.Information 는 ActualLength 값과 같습니다. 출력 버퍼가 모든 출력 데이터를 저장할 수 있을 만큼 큰 경우 IoStatus.Information 는 와 같습니다 sizeof(USB_NODE_CONNECTION_DRIVERKEY_NAME)
.
요구 사항
요구 사항 | 값 |
---|---|
헤더 | usbioctl.h(Usbioctl.h 포함) |