Compartilhar via


Função WdfObjectReferenceActual (wdfobject.h)

[Aplica-se a KMDF e UMDF]

O método WdfObjectReferenceActual incrementa a contagem de referência para um objeto de estrutura especificado e atribui um valor de marca, um número de linha e um nome de arquivo à referência.

Sintaxe

void WdfObjectReferenceActual(
  [in]           WDFOBJECT Handle,
  [in, optional] PVOID     Tag,
  [in]           LONG      Line,
  [in]           PCCH      File
);

Parâmetros

[in] Handle

Um identificador para um objeto de estrutura.

[in, optional] Tag

Um valor definido pelo driver que a estrutura armazena como uma marca de identificação para a referência de objeto.

[in] Line

Um valor numérico que representa um número de linha em um arquivo de origem do driver.

[in] File

Um ponteiro para uma cadeia de caracteres constante terminada em nulo que representa o nome de um arquivo de origem do driver. Esse parâmetro é opcional e pode ser NULL.

Retornar valor

Nenhum

Comentários

Um bug marcar ocorrerá se o driver fornecer um identificador de objeto inválido.

Se o driver chamar WdfObjectReferenceActual para incrementar uma contagem de referência, o driver deverá chamar WdfObjectDereferenceActual para diminuir a contagem.

Chamar WdfObjectReferenceActual ou WdfObjectReferenceWithTag em vez de WdfObjectReference fornece informações adicionais (valor da marca, número de linha e nome do arquivo) aos depuradores da Microsoft. WdfObjectReferenceActual permite que o driver especifique o número da linha e o nome do arquivo, enquanto WdfObjectReferenceWithTag usa o número de linha e o nome do arquivo atuais do driver.

Você pode exibir os valores de marca, número de linha e nome de arquivo usando a extensão do depurador !wdftagtracker . A extensão do depurador exibe o valor da marca como um ponteiro e uma série de caracteres. Para obter mais informações sobre extensões de depurador, consulte Depurando um driver KMDF.

Para obter mais informações sobre contagens de referência de objeto, consulte Ciclo de Vida do Objeto Framework.

Para obter mais informações sobre as regras de limpeza de uma hierarquia de objetos de estrutura, consulte Ciclo de Vida do Objeto framework.

Exemplos

O exemplo de código a seguir incrementa a contagem de referência de um objeto e atribui um valor de marca, um número de linha e um nome de arquivo à referência.

WdfObjectReferenceActual(
                         object,
                         pTag,
                         line,
                         FILE_NAME
                         );

Requisitos

Requisito Valor
Plataforma de Destino Universal
Versão mínima do KMDF 1.0
Versão mínima do UMDF 2,0
Cabeçalho wdfobject.h (inclua Wdf.h)
Biblioteca Wdf01000.sys (KMDF); WUDFx02000.dll (UMDF)
IRQL <=DISPATCH_LEVEL
Regras de conformidade de DDI DriverCreate(kmdf)

Confira também

WdfObjectReference