Поделиться через


Функция AcxObjectBagAddGuid (acxmisc.h)

Функция AcxObjectBagAddGuid добавляет данные GUID в существующий инициализированный AcxObjectBag.

Синтаксис

NTSTATUS AcxObjectBagAddGuid(
  ACXOBJECTBAG     ObjectBag,
  PCUNICODE_STRING ValueName,
  GUID             Value
);

Параметры

ObjectBag

Инициализированный объект ACX ObjectBag. Дополнительные сведения см. в разделе ACX — сводка по объектам ACX.

ValueName

Имя значения, которое будет использоваться для доступа к значению.

Value

Значение, добавляемое в ObjectBag.

Возвращаемое значение

Возвращает значение STATUS_SUCCESS , если вызов был выполнен успешно. В противном случае возвращается соответствующий код ошибки. Дополнительные сведения см. в разделе Использование значений NTSTATUS.

Remarks

Пример

В приведенном ниже коде показано использование AcxObjectBagAddGuid.

    // Object bag
    //
    // This obj-bag config setting is shared by all composite/circuit templates.
    ACX_OBJECTBAG_CONFIG objBagCfg;
    ACX_OBJECTBAG_CONFIG_INIT(&objBagCfg);

    WDF_OBJECT_ATTRIBUTES attributes;
    WDF_OBJECT_ATTRIBUTES_INIT(&attributes);
    attributes.ParentObject = AcxGetManager(NULL);

    ACXOBJECTBAG objBag = NULL;
    RETURN_NTSTATUS_IF_FAILED(AcxObjectBagCreate(&attributes, &objBagCfg, &objBag));

    // Enable deletion of the object bag when the function completes and goes out of scope
    auto objBag_scope = scope_exit([&objBag]() {
        if (objBag != NULL)
        {
            WdfObjectDelete(objBag);
        }
    });

    //
    // Add a test unsigned int 4 bytes to the object bag
    //
    RETURN_NTSTATUS_IF_FAILED(ObjBagAddTestUI4(objBag, 0));

    //
    // Add unique circuit ID to the object bag
    // This unique Id will be picked up by DSP circuit
    //
    DECLARE_CONST_ACXOBJECTBAG_SYSTEM_PROPERTY_NAME(UniqueID);
    GUID uniqueID = { 0 };
    RETURN_NTSTATUS_IF_FAILED(RtlGUIDFromString(&circuit_IDs[compositeType], &uniqueID));

    RETURN_NTSTATUS_IF_FAILED(AcxObjectBagAddGuid(objBag, &UniqueID, uniqueID));

Требования к ACX

Минимальная версия ACX: 1.0

Дополнительные сведения о версиях ACX см. в статье Обзор версий ACX.

Требования

Требование Значение
Заголовок acxmisc.h
IRQL PASSIVE_LEVEL

См. также раздел