AcxFactoryCircuitCreate 函式 (acxcircuit.h)
AcxFactoryCircuitCreate 函式是用來建立 ACXFACTORYCIRCUIT。
語法
NTSTATUS AcxFactoryCircuitCreate(
WDFDEVICE Device,
PWDF_OBJECT_ATTRIBUTES Attributes,
PACXFACTORYCIRCUIT_INIT *Config,
ACXFACTORYCIRCUIT *Factory
);
參數
Device
WDFDEVICE 物件(如 Framework 物件的摘要所述),與線路相關聯。
Attributes
使用用來設定各種物件值之 WDF_OBJECT_ATTRIBUTES 定義的其他屬性:清除和終結回呼、內容類型,以及指定其 WDF 父物件。
Config
定義線路處理站初始化的 ACXFACTORYCIRCUIT_INIT 結構。 ACXFACTORYCIRCUIT_INIT是用於線路處理站初始化的不透明物件。 使用 AcxFactoryCircuitInitAllocate 初始化ACXFACTORYCIRCUIT_INIT結構。
Factory
接收新 ACXFACTORYCIRCUIT 物件句柄之位置的指標。 如需 ACX 物件的詳細資訊,請參閱 ACX 物件的 摘要。
傳回值
如果呼叫成功,則傳回 STATUS_SUCCESS
。 否則,它會傳回適當的錯誤碼。 如需詳細資訊,請參閱使用NTSTATUS值 。
言論
ACXFACTORYCIRCUIT 是由 ACX 架構用於「隨選」ACXCIRCUIT。 當端點需要時,ACX 會要求 ACXFACTORYCIRCUIT 建立新的線路。
ACXFACTORYCIRCUIT 用於多重線路端點。 ACXFACTORYCIRCUIT 所建立的線路不能是端點的「核心」線路,也就是提供端點身分識別的線路。
ACXFACTORYCIRCUIT 具有專用的 WDF 佇列。 如需 WDF 佇列的詳細資訊,請參閱 Framework Queue Objects。
例
範例使用方式如下所示。
NTSTATUS status;
WDF_OBJECT_ATTRIBUTES attributes;
ACXFACTORYCIRCUIT factory;
PACXFACTORYCIRCUIT_INIT factoryInit = NULL;
SDCAXU_FACTORYCIRCUIT_CONTEXT * factoryCtx;
ACX_FACTORY_CIRCUIT_OPERATION_CALLBACKS operationCallbacks;
//
// Get a FactoryCircuitInit structure.
//
factoryInit = AcxFactoryCircuitInitAllocate(Device);
//
// Add factory identifiers.
//
AcxFactoryCircuitInitSetComponentId(factoryInit, &SDCAXU_FACTORY_GUID);
AcxFactoryCircuitInitAssignCategories(factoryInit, &SDCAXU_FACTORY_CATEGORY, 1);
AcxFactoryCircuitInitAssignName(factoryInit, &s_FactoryName);
//
// Assign the circuit's operation-callbacks.
//
ACX_FACTORY_CIRCUIT_OPERATION_CALLBACKS_INIT(&operationCallbacks);
operationCallbacks.EvtAcxFactoryCircuitCreateCircuitDevice = SdcaXu_EvtAcxFactoryCircuitCreateCircuitDevice;
operationCallbacks.EvtAcxFactoryCircuitCreateCircuit = SdcaXu_EvtAcxFactoryCircuitCreateCircuit;
AcxFactoryCircuitInitSetOperationCallbacks(factoryInit, &operationCallbacks);
//
// Create the factory circuit.
//
WDF_OBJECT_ATTRIBUTES_INIT_CONTEXT_TYPE(&attributes, SDCAXU_FACTORYCIRCUIT_CONTEXT);
attributes.ParentObject = Device;
status = AcxFactoryCircuitCreate(Device, &attributes, &factoryInit, &factory);
ACX 需求
ACX 最低版本: 1.0
如需 ACX 版本的詳細資訊,請參閱 ACX 版本概觀。
要求
要求 | 價值 |
---|---|
標頭 | acxcircuit.h |
IRQL | PASSIVE_LEVEL |