Condividi tramite


Funzione AcxObjectBagOpen (acxmisc.h)

La funzione AcxObjectBagOpen apre un oggetto AcxObjectBag esistente inizializzato.

Sintassi

NTSTATUS AcxObjectBagOpen(
  PWDF_OBJECT_ATTRIBUTES Attributes,
  PACX_OBJECTBAG_CONFIG  Config,
  ACXOBJECTBAG           *ObjectBag
);

Parametri

Attributes

Attributi aggiuntivi definiti usando una struttura WDF_OBJECT_ATTRIBUTES usata per impostare i valori di vari oggetti: pulizia e eliminazione di callback, tipo di contesto e specificare l'oggetto padre.

Config

Puntatore alla struttura di ACX_OBJECTBAG_CONFIG inizializzata.

ObjectBag

Oggetto ObjectBag ACX inizializzato. Per altre informazioni, vedere ACX - Riepilogo degli oggetti ACX.

Valore restituito

Restituisce STATUS_SUCCESS se la chiamata ha avuto esito positivo. In caso contrario, restituisce un codice di errore appropriato. Per altre informazioni, vedere Uso dei valori NTSTATUS.

Commenti

Esempio

In questo esempio viene illustrato l'uso di ACX_OBJECTBAG_CONFIG.

        GUID                    uniqueId = { 0 };
        UNICODE_STRING          uniqueIdStr = { 0 };
        UNICODE_STRING          pnpDeviceId = { 0 };
        ACX_OBJECTBAG_CONFIG    objBagCfg;

        DECLARE_CONST_ACXOBJECTBAG_SYSTEM_PROPERTY_NAME(UniqueID);

        ACX_OBJECTBAG_CONFIG_INIT(&objBagCfg);
        objBagCfg.Handle = CircuitConfig->CompositeProperties;
        objBagCfg.Flags |= AcxObjectBagConfigOpenWithHandle;

        WDF_OBJECT_ATTRIBUTES_INIT(&attributes);
        ACXOBJECTBAG objBag = NULL;

        RETURN_NTSTATUS_IF_FAILED(AcxObjectBagOpen(&attributes, &objBagCfg, &objBag));
        auto objBag_free = scope_exit([&objBag]() {
            WdfObjectDelete(objBag);
            });

        RETURN_NTSTATUS_IF_FAILED(AcxObjectBagRetrieveGuid(objBag, &UniqueID, &uniqueId));

Requisiti ACX

Versione minima DI ACX: 1.0

Per altre informazioni sulle versioni ACX, vedere Panoramica della versione di ACX.

Requisiti

Requisito Valore
Intestazione acxmisc.h
IRQL PASSIVE_LEVEL

Vedi anche