다음을 통해 공유


PCPROPERTY_REQUEST 구조체(portcls.h)

PCPROPERTY_REQUEST 구조체는 속성 요청을 지정합니다.

통사론

typedef struct _PCPROPERTY_REQUEST {
  PUNKNOWN              MajorTarget;
  PUNKNOWN              MinorTarget;
  ULONG                 Node;
  const PCPROPERTY_ITEM *PropertyItem;
  ULONG                 Verb;
  ULONG                 InstanceSize;
  PVOID                 Instance;
  ULONG                 ValueSize;
  PVOID                 Value;
  PIRP                  Irp;
} PCPROPERTY_REQUEST, *PPCPROPERTY_REQUEST;

회원

MajorTarget

주 미니포트 개체에 대한 IUnknown 포인터를. 이 멤버는 어댑터 드라이버가 이전에 IPort::Init 메서드에 전달한 UnknownMiniport 매개 변수 값을 포함합니다.

MinorTarget

MajorTarget 미니포트 개체와 연결된 스트림 개체에 대한 IUnknown 포인터를. 속성 요청의 대상이 핀 인스턴스인 경우 이 멤버는 IMiniport Xxx::NewStream 메서드가 이전에 포트 드라이버에 출력하는 스트림 개체 포인터를 포함합니다(예: IMiniportWaveCyclic::NewStream 메서드의 Stream 매개 변수). 그렇지 않으면(속성 요청의 대상이 필터 인스턴스인 경우) 이 멤버는 NULL .

Node

노드 ID를 지정합니다. 이 멤버는 요청에 대한 대상 노드를 식별합니다. 대상이 노드가 아닌 경우 이 멤버는 ULONG(-1)으로 설정됩니다.

PropertyItem

PCPROPERTY_ITEM형식의 구조인 속성 항목에 대한 포인터입니다.

Verb

속성 요청의 형식을 지정합니다. 동사 헤더 파일 ks.h에서 다음 플래그 비트 중 하나 이상의 비트 OR로 설정됩니다.

  • KSPROPERTY_TYPE_GET
  • KSPROPERTY_TYPE_SET
  • KSPROPERTY_TYPE_SETSUPPORT
  • KSPROPERTY_TYPE_BASICSUPPORT
  • KSPROPERTY_TYPE_RELATIONS
  • KSPROPERTY_TYPE_SERIALIZESET
  • KSPROPERTY_TYPE_UNSERIALIZESET
  • KSPROPERTY_TYPE_SERIALIZERAW
  • KSPROPERTY_TYPE_UNSERIALIZERAW
  • KSPROPERTY_TYPE_SERIALIZESIZE
  • KSPROPERTY_TYPE_DEFAULTVALUES
  • KSPROPERTY_TYPE_TOPOLOGY
이러한 플래그는 KSPROPERTY설명되어 있습니다.

InstanceSize

속성 인스턴스 버퍼의 크기(바이트)를 지정합니다.

Instance

속성 인스턴스 버퍼에 대한 포인터

ValueSize

속성-값 버퍼의 크기(바이트)를 지정합니다.

Value

속성-값 버퍼에 대한 포인터

Irp

클라이언트의 원래 속성 요청을 포함하는 IRP 대한 포인터

발언

포트 드라이버가 미니포트 드라이버의 속성 처리기 루틴에 전달하는 구조입니다. PCPROPERTY_ITEM 구조체에는 PCPROPERTY_REQUEST 포인터를 유일한 호출 매개 변수로 사용하는 속성 처리기에 대한 함수 포인터가 포함되어 있습니다. 포트 드라이버는 PCPROPERTY_REQUEST 구조를 할당하고, 원래 속성 요청(Irp 멤버가 가리키는)에서 관련 정보를 추출하고, 처리기를 호출하기 전에 이 구조에 정보를 로드합니다.

WDM 오디오에서 속성 요청의 대상은 필터 인스턴스 또는 핀 인스턴스일 수 있습니다. 대상에는 노드 ID도 포함될 수 있습니다.

클라이언트의 원래 속성 요청에서 속성 인스턴스 데이터는 항상 KSPROPERTY 또는 KSNODEPROPERTY 구조로 시작하지만 추가 정보를 포함할 수 있습니다. 포트 드라이버는 PCPROPERTY_REQUEST 구조체의 인스턴스 멤버가 있는 경우 이 추가 정보를 가리키도록 조정합니다. 자세한 내용은 오디오 속성 처리기 참조하세요.

MajorTargetMinorTarget 멤버는 각각 주 미니포트 개체 및 연결된 스트림 개체에 대한 IUnknown 포인터를. 속성 처리기는 이러한 개체의 미니포트 및 스트림 인터페이스를 쿼리할 수 있습니다. 속성 요청의 대상이 필터 인스턴스인 경우 MajorTarget 해당 필터 인스턴스의 미니포트 개체를 가리키고 MinorTarget NULL . 대상이 핀 인스턴스인 경우 MinorTarget 해당 핀의 스트림 개체를 가리키고 MajorTarget 핀이 연결된 필터의 미니포트 개체를 가리킵니다.

예를 들어 속성 요청의 대상이 WaveCyclic 필터의 핀 인스턴스인 경우:

오디오 속성에 대한 배경 정보는 오디오 엔드포인트, 속성 및 이벤트 참조하세요. 사용 가능한 오디오 관련 속성 목록은 오디오 드라이버 속성 집합참조하세요.

요구 사항

요구
헤더 portcls.h(Portcls.h 포함)

참고 항목

KSNODEPROPERTY

KSNODEPROPERTY_AUDIO_CHANNEL

KSPROPERTY

PCPROPERTY_ITEM