다음을 통해 공유


IMDSPDevice3::D eviceIoControl 메서드(mswmdm.h)

DeviceIoControl 메서드는 디바이스 I/O 컨트롤을 호출합니다.

구문

HRESULT DeviceIoControl(
  [in]  DWORD   dwIoControlCode,
  [in]  BYTE    *lpInBuffer,
  [in]  DWORD   nInBufferSize,
  [out] BYTE    *lpOutBuffer,
  [in]  LPDWORD pnOutBufferSize
);

매개 변수

[in] dwIoControlCode

디바이스로 전송되는 I/O 제어 코드입니다.

[in] lpInBuffer

호출 애플리케이션에서 제공하는 입력 버퍼입니다. nInBufferSize가 0인 경우 NULL일 수 있습니다.

[in] nInBufferSize

lpInBuffer의 크기(바이트)입니다.

[out] lpOutBuffer

호출 애플리케이션에서 제공하는 출력 버퍼입니다.

[in] pnOutBufferSize

lpOutBuffer의 크기(바이트)입니다.

반환 값

이 메서드는 HRESULT를 반환합니다. Windows Media 장치 관리자 모든 인터페이스 메서드는 다음 오류 코드 클래스 중 어느 것을 반환할 수 있습니다.

  • 표준 COM 오류 코드
  • HRESULT 값으로 변환된 Windows 오류 코드
  • Windows Media 장치 관리자 오류 코드
가능한 오류 코드의 광범위한 목록은 오류 코드를 참조하세요.

설명

이 메서드는 애플리케이션과 서비스 공급자 간의 프라이빗 통신 모드를 제공합니다. 그런 다음 서비스 공급자는 이 IOCTL을 처리하고 필요에 따라 수정한 다음 커널 모드 드라이버에 전달할 수 있습니다.

IMDSPDevice::SendOpaqueCommand에 비해 이 메서드는 호출자가 출력 버퍼를 제공하므로 DeviceIoControl Windows API와 더 잘 맞춥니다. 또한 IMDSPDevice::SendOpaqueCommand와 달리 이 메서드는 MAC 검사 포함하지 않으며 더 효율적입니다.

요구 사항

요구 사항
대상 플랫폼 Windows
헤더 mswmdm.h
라이브러리 Mssachlp.lib

추가 정보

IMDSPDevice3 인터페이스

IMDSPDevice::SendOpaqueCommand

IWMDMDevice3::D eviceIoControl