USBCAMD_ControlVendorCommand 함수(usbcamdi.h)

USBCAMD_ControlVendorCommand 함수는 공급업체별 명령을 제어 파이프로 보냅니다.

구문

NTSTATUS USBCAMD_ControlVendorCommand(
  [in]                PVOID                      DeviceContext,
  [in]                UCHAR                      Request,
  [in]                USHORT                     Value,
  [in]                USHORT                     Index,
  [in, out, optional] PVOID                      Buffer,
  [in, out]           PULONG                     BufferLength,
  [in]                BOOLEAN                    GetData,
  [in, optional]      PCOMMAND_COMPLETE_FUNCTION CommandComplete,
  [in, optional]      PVOID                      CommandContext
);

매개 변수

[in] DeviceContext

디바이스별 컨텍스트에 대한 포인터입니다.

[in] Request

공급업체 명령에 대한 요청 필드의 값을 지정합니다.

[in] Value

공급업체 명령에 대한 필드의 값을 지정합니다.

[in] Index

공급업체 명령에 대한 인덱스 필드의 값을 지정합니다.

[in, out, optional] Buffer

명령에 데이터가 있는 경우 데이터 버퍼에 대한 포인터입니다. 명령에 데이터가 없으면 이 값은 NULL입니다.

[in, out] BufferLength

버퍼 길이 값에 대한 포인터입니다. 버퍼 길이는 바이트로 표현됩니다. Buffer 값이 NULL이면 BufferLengthNULL일 수 있습니다.

[in] GetData

GetData 는 데이터가 디바이스에서 호스트로 전송되었음을 나타냅니다.

[in, optional] CommandComplete

대량 읽기 또는 쓰기가 완료되면 호출되는 CommandCompleteFunction을 정의한 카메라 미니 드라이버에 대한 포인터입니다. 이 값은 NULL일 수 있습니다.

[in, optional] CommandContext

카메라 미니 드라이버에서 정의된 CommandCompleteFunction에 인수로 전달되는 메모리 블록에 대한 포인터입니다.

반환 값

USBCAMD_ControlVendorCommand 공급업체 명령에서 NTSTATUS 코드를 반환합니다.

기타 가능한 오류 코드는 다음과 같습니다.

반환 코드 설명
STATUS_PENDING 공급업체 명령이 지연됩니다.
STATUS_INSUFFICIENT_RESOURCES 공급업체 명령을 할당할 리소스가 부족합니다.

설명

이 함수는 IRQL >= PASSIVE_LEVEL 호출할 수 있습니다. IRQL > PASSIVE_LEVEL 함수가 호출되면 명령이 지연됩니다. 완료되면 카메라 미니드라이버에서 정의 한 CommandCompleteFunction 이 호출되고 CommandContext 인수*의 값이 전달됩니다.*

요구 사항

요구 사항
대상 플랫폼 데스크톱
머리글 usbcamdi.h(Usbcamdi.h 포함)
라이브러리 Usbcamd2.lib
IRQL PASSIVE_LEVEL 보다 크거나 같음(주의 섹션 참조)

추가 정보

CommandCompleteFunction