WdfObjectAddCustomType-makro

[Gäller för KMDF och UMDF]

Makrot WdfObjectAddCustomType associerar ett ramverksobjekt med en anpassad typ.

Syntax

NTSTATUS WdfObjectAddCustomType(
    _handle,
    _type
);

Parameterar

_handle
Ett handtag till ett ramverksobjekt.

_type
Det drivrutinsdefinierade namnet för den anpassade typen.

Returvärde

WdfObjectAddCustomType returnerar STATUS_SUCCESS om åtgärden lyckas. Annars kan den här metoden returnera något av följande värden:

Returkod Beskrivning
STATUS_OBJECT_PATH_INVALID

Det angivna handtaget kan inte ha en anpassad typ tillagd.

STATUS_OTILLRÄCKLIGA_RESURSER

Det gick inte att allokera den anpassade typen.

STATUS_OBJECT_NAME_EXISTS

Drivrutinen har redan lagt till den angivna anpassade typen.

STATUS_DELETE_PENDING

Objektet som parametern Handle anger tas bort. I den här situationen lägger ramverket inte till den anpassade typen.

Anmärkningar

WdfObjectAddCustomType är en förenklad version av WdfObjectAddCustomTypeWithData.

Mer information om objektdrivrutinstyper finns i Anpassade typer av ramverksobjekt.

Exempel

Den här exempelkoden visar hur du lägger till en anpassad typ i en kö.

NTSTATUS                status;
WDF_IO_QUEUE_CONFIG     queueConfig;
WDFQUEUE                queue;  

WDF_IO_QUEUE_CONFIG_INIT(&queueConfig,   
                         WdfIoQueueDispatchParallel);  

status = WdfIoQueueCreate(device,  
                          &queueConfig,  
                          WDF_NO_OBJECT_ATTRIBUTES,  
                          &queue);  
 
if (!NT_SUCCESS(status)) {  
     TraceEvents(TRACE_LEVEL_ERROR, DBG_INFO,
                 "Failed to create queue, status=0x%x\n", status);
     goto Done;  
}  

status = WdfObjectAddCustomType(queue, TEST_TYPE1);  

if (!NT_SUCCESS(status)) {  
    TraceEvents(TRACE_LEVEL_ERROR, DBG_INFO,  
                "Failed to add TEST_TYPE1 to WDFOBJECT 0x%p, status=0x%x\n",   
    queue, status);  
    goto Done;  
}    

End:  
    return status;    

Krav

Målplattform

Universell

Lägsta KMDF-version

1.11

Lägsta UMDF-version

2.0

Header

Wdfobject.h (inkludera Wdf.h)

Se även

WDF_DECLARE_CUSTOM_TYPE

WdfObjectAddCustomTypeWithData

WdfObjectGetCustomTypeData

WdfObjectIsCustomType