Função ObfReferenceObject (wdm.h)
A rotina ObfReferenceObject incrementa a contagem de referência para o objeto fornecido.
Sintaxe
LONG_PTR ObfReferenceObject(
[in] PVOID Object
);
Parâmetros
[in] Object
Ponteiro para o objeto . O chamador obteve esse parâmetro quando criou o objeto ou de uma chamada anterior para ObReferenceObjectByHandle depois que ele abriu o objeto.
Retornar valor
ObfReferenceObject retorna um valor reservado para uso do sistema. Os drivers devem tratar esse valor como VOID.
Comentários
ObfReferenceObject simplesmente incrementa a contagem de referência de ponteiro para um objeto, sem fazer nenhuma verificação de acesso no objeto fornecido, como ObReferenceObjectByHandle e ObReferenceObjectByPointer fazem.
ObfReferenceObject impede a exclusão do objeto pelo menos até que o driver chame posteriormente seu objeto recíproco, ObDereferenceObject, ou feche o objeto fornecido. O chamador deve diminuir a contagem de referência com ObDereferenceObject assim que for feito com o objeto .
Quando a contagem de referência de um objeto atinge zero, um componente do modo kernel pode remover o objeto do sistema. No entanto, um driver pode remover apenas os objetos que ele criou e um driver nunca deve tentar remover nenhum objeto que ele não tenha criado.
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte | Disponível a partir do Windows 2000. |
Plataforma de Destino | Área de Trabalho |
Cabeçalho | wdm.h (include Wdm.h, Ntddk.h, Ntifs.h) |
Biblioteca | NtosKrnl.lib |
DLL | NtosKrnl.exe |
IRQL | <=DISPATCH_LEVEL |
Regras de conformidade de DDI | HwStorPortProhibitedDIs(storport), TargetRelationNeedsRef(wdm) |