다음을 통해 공유


DRMFORWARD 구조체(drmk.h)

DRMFORWARD 구조에는 DRM 콘텐츠 ID를 보호된 콘텐츠를 처리하는 디바이스로 전달하기 위해 DRMK 시스템 드라이버 에 필요한 정보가 포함되어 있습니다.

구문

typedef struct tagDRMFORWARD {
  DWORD          Flags;
  PDEVICE_OBJECT DeviceObject;
  PFILE_OBJECT   FileObject;
  PVOID          Context;
} DRMFORWARD, *PDRMFORWARD;

멤버

Flags

플래그 비트는 현재 정의되어 있지 않습니다. 이 멤버를 0으로 설정합니다.

DeviceObject

DEVICE_OBJECT 형식의 시스템 구조인 디바이스 개체에 대한 포인터입니다.

FileObject

FILE_OBJECT 형식의 시스템 구조인 파일 개체에 대한 포인터입니다.

Context

컨텍스트 데이터에 대한 포인터입니다. 자세한 내용은 아래 설명 부분을 참조하십시오.

설명

이 구조체는 DrmForwardContentToDeviceObject 함수의 호출 매개 변수 중 하나입니다. 구조체에는 함수가 WDM드라이버에 KSPROPERTY_DRMAUDIOSTREAM_CONTENTID set-property 요청을 보내는 데 필요한 정보가 포함됩니다.

WDM 드라이버는 DeviceObject 멤버가 나타내는 디바이스를 관리합니다. DrmForwardContentToDeviceObject 함수는 속성 요청을 이 디바이스 개체로 보냅니다.

속성 요청이 포함된 IRP를 생성할 때 DrmForwardContentToDeviceObject 함수는 FileObject 멤버를 IRP 의 드라이버 I/O 스택 위치에 있는 FileObject 필드에 복사합니다. WDM 드라이버가 KS 필터의 전부 또는 일부를 구현하는 KS 드라이버인 경우 FileObject 멤버는 보호된 콘텐츠가 포함된 스트림을 수신하는 필터의 핀을 나타냅니다. KS가 아닌 드라이버의 경우 FILE_OBJECT 구조체의 컨텍스트 필드에는 드라이버와 DrmForwardContentToDeviceObject 함수의 호출자 간에 의미가 합의된 모든 값이 포함될 수 있습니다.

Context 멤버에는 DrmForwardContentToDeviceObject 함수가 KSPROPERTY_DRMAUDIOSTREAM_CONTENTID set-property 요청의 속성 설명자(KSP_DRMAUDIOSTREAM_CONTENTID 구조체의 Context 멤버)에 복사하는 컨텍스트 값이 포함됩니다. Context 멤버는 드라이버와 DrmForwardContentToDeviceObject 함수의 호출자 간에 의미가 합의된 값을 포함할 수 있습니다.

규칙에 따라 다운스트림 모듈이 KS 필터인 경우 Context 멤버는 DrmForwardContentToDeviceObject 함수가 속성 요청을 보내는 KS 핀을 지정하는 파일 개체를 가리킵니다. 즉, Context 멤버는 FileObject 멤버와 동일한 파일 개체를 가리킵니다.

DRMFORWARD 구조체는 DrmForwardContentToDeviceObject 함수의 대체 진입점인 PcForwardContentToDeviceObject 함수 및 IDrmPort2::ForwardContentToDeviceObject 메서드에서도 사용됩니다. 자세한 내용은 DRM 함수 및 인터페이스를 참조하세요.

오디오 드라이버가 DRM 콘텐츠를 시스템 제공 USB 드라이버에 전달하는 경우 다음 조건이 적용됩니다.

  • DRMFORWARD. DeviceObject 는 디바이스 스택의 맨 위에 있어야 합니다.
  • DRMFORWARD. USB 스택이 IO_STACK_LOCATION 사용하지 않으므로 FileObject는 NULL 일 수 있습니다. FileObject.
  • DRMFORWARD. 컨텍스트 는 오디오 드라이버에서 사용하는 파이프에 해당하는 USBD_PIPE_HANDLE 값으로 설정해야 합니다.

DRM에 대한 일반적인 내용은 디지털 권한 관리를 참조하세요.

요구 사항

요구 사항
헤더 drmk.h(Drmk.h 포함)

추가 정보

DEVICE_OBJECT

DrmForwardContentToDeviceObject

FILE_OBJECT

IDrmPort2::ForwardContentToDeviceObject

KSPROPERTY_DRMAUDIOSTREAM_CONTENTID

KSP_DRMAUDIOSTREAM_CONTENTID

PcForwardContentToDeviceObject