共用方式為


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

另請參閱