acxEventCreate 函式 (acxevents.h)
AcxEventCreate 函式會建立 ACX 事件。
語法
NTSTATUS AcxEventCreate(
ACXOBJECT Object,
PWDF_OBJECT_ATTRIBUTES Attributes,
PACX_EVENT_CONFIG Config,
ACXEVENT *Event
);
參數
Object
ACX 物件 摘要中所述的 ACXOBJECT。
Attributes
使用用來設定各種物件值 之WDF_OBJECT_ATTRIBUTES 定義的其他屬性:清除和終結回呼、內容類型,以及指定其父物件。
Config
定義 ACX 事件組態 的ACX_EVENT_CONFIG 結構。
Event
新建立的 ACXEVENT 物件 (ACX 物件 摘要) 中所述。
傳回值
如果呼叫成功,則傳 STATUS_SUCCESS
回 。 否則,它會傳回適當的錯誤碼。 如需詳細資訊,請參閱 使用NTSTATUS值。
備註
ACXEVENT 代表可在驅動程式層級取得的異步通知。 事件可以新增至 ACXCIRCUIT、ACXSTREAMs、ACXELEMENT 和 ACXPIN。 在內部,它們會公開為 KS 事件至上層。 如需 KS 事件的詳細資訊,請參閱 KS 事件。
範例
此範例程式代碼剪貼顯示 ACX 如何使用 AcxEventCreate 來建立音訊插孔變更事件。
NTSTATUS status = STATUS_SUCCESS;
PAGED_CODE();
ACX_EVENT_CALLBACKS eventCallbacks;
ACX_EVENT_CONFIG eventCfg;
AFX_PIN_EVENT_CONTEXT *eventCtx;
ACXEVENT jackEvent;
WDF_OBJECT_ATTRIBUTES attributes;
//
// Add jack info change event to this jack object
//
ACX_EVENT_CALLBACKS_INIT(&eventCallbacks);
eventCallbacks.EvtAcxEventEnable = &AfxPin::EvtJackEventEnableCallback;
eventCallbacks.EvtAcxEventDisable = &AfxPin::EvtJackEventDisableCallback;
ACX_EVENT_CONFIG_INIT(&eventCfg);
eventCfg.Set = &KSEVENTSETID_PinCapsChange;
eventCfg.Id = KSEVENT_PINCAPS_JACKINFOCHANGE;
eventCfg.Callbacks = &eventCallbacks;
WDF_OBJECT_ATTRIBUTES_INIT_CONTEXT_TYPE(&attributes, AFX_PIN_EVENT_CONTEXT);
attributes.ParentObject = GetObjectHandle();
status = AcxEventCreate(GetObjectHandle(), &attributes, &eventCfg, &jackEvent);
ACX 需求
最小 ACX 版本: 1.0
如需 ACX 版本的詳細資訊,請參閱 ACX 版本概觀。
規格需求
需求 | 值 |
---|---|
標頭 | acxevents.h |
IRQL | PASSIVE_LEVEL |