ACX_PROPERTY_ITEM-Struktur (acxrequest.h)
Die ACX_PROPERTY_ITEM-Struktur beschreibt ein Eigenschaftselement, das das Ziel einer ACX-Anforderung ist. Eine Eigenschaft stellt eine Funktion oder eine Einstellung für den Steuerzustand dar, die zu einem ACX-Objekt gehört, z. B. eine Verbindung, ein Element, eine Pin, ein Stream usw. Weitere Informationen finden Sie unter KS-Eigenschaften.
Syntax
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;
Member
Set
Gibt eine GUID an, die einen KS-Eigenschaftssatz (Kernelstreaming) identifiziert. Die KSPROPSETID_Topology Set-ID ist beispielsweise der Satz von Topologieschaltungseigenschaften. Weitere Informationen finden Sie unter KSPROPERTY-Struktur.
Id
Gibt den Member des Eigenschaftensatzes an. Beispielsweise wird KSPROPERTY_TOPOLOGY_NODES des Topologieeigenschaftensatzes verwendet, um die Liste der KS-KNOTEN (ACXELEMENTS) abzurufen.
Flags
Das Feld Flags wird verwendet, um die folgenden flags festzulegen, die im AcxRequest-Header definiert sind.
#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: Ruft den Wert des angegebenen Eigenschaftselements ab.
ACX_PROPERTY_ITEM_FLAG_SET: Legt den Wert des angegebenen Eigenschaftselements fest.
ACX_PROPERTY_ITEM_FLAG_BASICSUPPORT: Fragt die Anforderungstypen ab, die der Treiber für dieses Eigenschaftselement verarbeitet. Gibt KSPROPERTY_TYPE_GET oder KSPROPERTY_TYPE_SET oder beides zurück. Dieses Flag muss von allen Eigenschaftensätzen unterstützt werden. Und einige Objekte geben möglicherweise weitere Informationen zurück, z. B. Volumebereiche usw.
EvtAcxObjectProcessRequest
Der diesem Element zugeordnete EVT_ACX_OBJECT_PROCESS_REQUEST Rückrufeigenschaftenhandler .
Reserved
Dieses Feld ist reserviert.
ControlCb
Die Mindestanzahl in Bytes (Größe) des zusätzlichen Steuerelementpuffers. Legen Sie auf 0 (null) fest, wenn kein Minimalwert vorhanden ist.
ValueCb
Die Mindestanzahl in Bytes (Größe) des Wertpuffers. Legen Sie auf 0 (null) fest, wenn kein Minimalwert vorhanden ist.
ValueType
Der VARENUM-Typ der Eigenschaft. Legen Sie auf 0 fest, d. h. VT_EMPTY, um das Standardverhalten zu verwenden.
Bemerkungen
Beispiel
Das Beispiel für die Verwendung ist unten dargestellt.
#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-Anforderungen
ACX-Mindestversion: 1.0
Weitere Informationen zu ACX-Versionen finden Sie unter ACX-Versionsübersicht.
Anforderungen
Anforderung | Wert |
---|---|
Header | acxrequest.h |
Weitere Informationen
Feedback
https://aka.ms/ContentUserFeedback.
Bald verfügbar: Im Laufe des Jahres 2024 werden wir GitHub-Issues stufenweise als Feedbackmechanismus für Inhalte abbauen und durch ein neues Feedbacksystem ersetzen. Weitere Informationen finden Sie unterFeedback senden und anzeigen für