ACX_PROPERTY_ITEM結構 (acxrequest.h)

ACX_PROPERTY_ITEM 結構描述 ACX 要求目標的屬性專案。 屬性代表屬於 ACX 物件的功能或控件狀態設定,例如線路、元素、針腳、數據流等。如需詳細資訊,請參閱 KS 屬性

語法

typedef struct _ACX_PROPERTY_ITEM {
  const GUID                     *Set;
  ULONG                          Id;
  ULONG                          Flags;
  PFN_ACX_OBJECT_PROCESS_REQUEST EvtAcxObjectProcessRequest;
  PVOID                          Reserved;
  ULONG                          ControlCb;
  ULONG                          ValueCb;
  ULONG                          ValueType;
} ACX_PROPERTY_ITEM, *PACX_PROPERTY_ITEM;

成員

Set

指定 GUID,識別 KS (核心串流) 屬性專案集。 例如,KSPROPSETID_Topology集標識符是拓撲線路屬性的集合。如需詳細資訊,請參閱 KSPROPERTY 結構

Id

指定屬性集的成員。 例如,拓撲屬性集KSPROPERTY_TOPOLOGY_NODES用來擷取 KS NODES 清單, (ACXELEMENTS) 。

Flags

[旗標] 字段可用來設定 AcxRequest 標頭中定義的下列旗標。


#define ACX_PROPERTY_ITEM_FLAG_NONE             0x00000000
#define ACX_PROPERTY_ITEM_FLAG_GET              0x00000001 // KSPROPERTY_TYPE_GET
#define ACX_PROPERTY_ITEM_FLAG_SET              0x00000002 // KSPROPERTY_TYPE_SET
#define ACX_PROPERTY_ITEM_FLAG_BASICSUPPORT     0x00000200 // KSPROPERTY_TYPE_BASICSUPPORT

ACX_PROPERTY_ITEM_FLAG_GET - 擷取指定之屬性項的值。

ACX_PROPERTY_ITEM_FLAG_SET - 設定指定之屬性項的值。

ACX_PROPERTY_ITEM_FLAG_BASICSUPPORT - 查詢驅動程式針對此屬性項目處理的要求類型。 傳回KSPROPERTY_TYPE_GET或KSPROPERTY_TYPE_SET或兩者。 所有屬性集都必須支援這個旗標。 而某些物件可能會傳回更多資訊,例如磁碟區範圍等。

EvtAcxObjectProcessRequest

與這個項目相關聯的 EVT_ACX_OBJECT_PROCESS_REQUEST回呼 屬性處理程式。

Reserved

保留此欄位。

ControlCb

其他控制緩衝區 (大小) 位元組的最小計數。 如果沒有最小值,請將 設定為零。

ValueCb

值緩衝區的大小) 位元組 (最小計數。 如果沒有最小值,請將 設定為零。

ValueType

屬性的 VARENUM 類型。 設定為 0,也就是VT_EMPTY使用預設行為。

備註

範例

範例使用方式如下所示。


#define ACX_PROPERTY_ITEM_FLAG_NONE             0x00000000
#define ACX_PROPERTY_ITEM_FLAG_GET              0x00000001 // KSPROPERTY_TYPE_GET
#define ACX_PROPERTY_ITEM_FLAG_SET              0x00000002 // KSPROPERTY_TYPE_SET
#define ACX_PROPERTY_ITEM_FLAG_BASICSUPPORT     0x00000200 // KSPROPERTY_TYPE_BASICSUPPORT

// Pin properties.
static ACX_PROPERTY_ITEM PinProperties[] =
{
    {
        &KSPROPSETID_Pin,
        KSPROPERTY_PIN_DATAFLOW,
        ACX_PROPERTY_ITEM_FLAG_GET,
        &AfxPin::EvtPinDataflowCallback,
        NULL,                       // Reserved
        0,                          // ControlCb
        sizeof(KSPIN_DATAFLOW),     // ValueCb
    },
};  

ACX 需求

最小 ACX 版本: 1.0

如需 ACX 版本的詳細資訊,請參閱 ACX 版本概觀

規格需求

需求
標頭 acxrequest.h

另請參閱