Partilhar via


Introdução aos objetos do Framework

As interfaces que o Windows Driver Frameworks (WDF) fornece aos drivers são baseadas em objetos. A estrutura define vários objetos. Esses objetos exportam métodos (funções) e propriedades (dados) que os drivers podem acessar. Os objetos do Framework também iniciam eventos, que os drivers podem suportar fornecendo funções callback de eventos.

Os drivers baseados em estrutura nunca acessam diretamente os objetos da estrutura. Em vez disso, os drivers fazem referência aos objetos por meio de manipuladores , que o driver passa como entrada para métodos de objeto.

Todos os objetos de estrutura têm as seguintes características:

Contagem de referência
A estrutura mantém uma contagem do número de referências a cada objeto. Quando a estrutura cria um objeto, ela define a contagem de referência do objeto como uma. Quando a estrutura termina de usar um objeto, diminui a contagem de referência. A estrutura não pode excluir o objeto até que a contagem de referência seja reduzida a zero, para que os drivers possam impedir a exclusão de um objeto incrementando sua contagem de referência.

Espaço de contexto
Os drivers baseados em estrutura podem criar espaço de contexto específico do objeto para cada objeto de estrutura que o driver recebe ou cria. Os drivers devem armazenar todos os dados específicos do objeto no espaço de contexto de um objeto. Para obter mais informações sobre espaço de contexto, consulte Framework Object Context Space.

Funções de retorno de chamada de exclusão
Os drivers podem registar funções de retorno de chamada que o framework chama quando está a eliminar um objeto. As funções de retorno de chamada podem remover recursos alocados pelo driver, como alocação de memória específica para objetos. Para obter mais informações sobre estas funções de retorno de chamada, consulte Framework Object Life Cycle.

Objeto Pai
Todos os objetos de estrutura podem ter um objeto pai. A estrutura designa um objeto pai padrão para a maioria dos objetos. Quando um driver cria um objeto, ele pode designar um objeto pai que substitui o objeto pai padrão do objeto. Para designar o objeto pai de um objeto, os drivers definem o ParentObject membro da estrutura WDF_OBJECT_ATTRIBUTES do objeto. (Para alguns tipos de objeto, os drivers não podem substituir o objeto pai padrão.) Quando a estrutura ou um driver exclui um objeto pai, a estrutura também exclui os filhos do objeto pai.

Para obter uma visão geral de todos os objetos definidos pelo WDF, consulte Resumo dos objetos do Framework.