Função WdfDeviceInitSetFileObjectConfig (wdfdevice.h)

[Aplica-se a KMDF e UMDF]

O método WdfDeviceInitSetFileObjectConfig registra funções de retorno de chamada de evento e define informações de configuração para os objetos de arquivo de estrutura do driver.

Sintaxe

void WdfDeviceInitSetFileObjectConfig(
  [in]           PWDFDEVICE_INIT        DeviceInit,
  [in]           PWDF_FILEOBJECT_CONFIG FileObjectConfig,
  [in, optional] PWDF_OBJECT_ATTRIBUTES FileObjectAttributes
);

Parâmetros

[in] DeviceInit

Um ponteiro para uma estrutura WDFDEVICE_INIT .

[in] FileObjectConfig

Um ponteiro para uma estrutura de WDF_FILEOBJECT_CONFIG alocada pelo chamador.

[in, optional] FileObjectAttributes

Um ponteiro para uma estrutura de WDF_OBJECT_ATTRIBUTES alocada pelo chamador que contém atributos de objeto fornecidos pelo driver para os objetos de arquivo de estrutura do driver. Esse parâmetro é opcional e pode ser WDF_NO_OBJECT_ATTRIBUTES.

Retornar valor

Nenhum

Comentários

Se um driver chamar WdfDeviceInitSetFileObjectConfig, ele deverá fazer isso antes de chamar WdfDeviceCreate.

Por padrão, cada objeto de arquivo de estrutura herda seu escopo de sincronização e nível de execução de seu objeto de dispositivo pai. Se o escopo de sincronização e o nível de execução do objeto de dispositivo pai não forem WdfSynchronizationScopeNone e WdfExecutionLevelPassive, o driver deverá definir os valores WdfSynchronizationScopeNone e WdfExecutionLevelPassive na estrutura WDF_OBJECT_ATTRIBUTES especificada pelo parâmetro FileObjectAttributes . Caso contrário, WdfDeviceCreate retornará um erro status código. Para obter mais informações sobre o escopo de sincronização e o nível de execução, consulte Usando a sincronização automática.

Para obter mais informações sobre como chamar WdfDeviceCreate, consulte Criando um objeto de dispositivo de estrutura.

Para obter mais informações sobre objetos de arquivo de estrutura, consulte Objetos de arquivo de estrutura

Exemplos

O exemplo de código a seguir inicializa uma estrutura WDF_OBJECT_ATTRIBUTES e uma estrutura WDF_FILEOBJECT_CONFIG e, em seguida, chama WdfDeviceInitSetFileObjectConfig.

WDF_OBJECT_ATTRIBUTES  attributes;

WDF_OBJECT_ATTRIBUTES_INIT(&attributes);
attributes.SynchronizationScope = WdfSynchronizationScopeNone;
WDF_FILEOBJECT_CONFIG_INIT(
                           &deviceConfig,
                           MyEvtDeviceFileCreate,
                           MyEvtFileClose,
                           WDF_NO_EVENT_CALLBACK // No cleanup callback function
                           );
WdfDeviceInitSetFileObjectConfig(
                                 DeviceInit,
                                 &deviceConfig,
                                 &attributes
                                 );

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 wdfdevice.h (inclua Wdf.h)
Biblioteca Wdf01000.sys (KMDF); WUDFx02000.dll (UMDF)
IRQL <= DISPATCH_LEVEL
Regras de conformidade da DDI ChildDeviceInitAPI(kmdf), ControlDeviceInitAPI(kmdf), DeviceInitAPI(kmdf), DriverCreate(kmdf), FileObjectConfigured(kmdf), KmdfIrql(kmdf), KmdfIrql2(kmdf), KmdfIrqlExplicit(kmdf), PdoDeviceInitAPI(kmdf)

Confira também

WDF_FILEOBJECT_CONFIG_INIT

WDF_OBJECT_ATTRIBUTES_INIT

WdfFdoInitSetEventCallbacks

WdfPdoInitSetEventCallbacks