Função WdfDeviceAddDependentUsageDeviceObject (wdfdevice.h)
[Aplica-se somente ao KMDF]
O método WdfDeviceAddDependentUsageDeviceObject indica que um dispositivo especificado depende de outro dispositivo quando o dispositivo especificado é usado para armazenar arquivos especiais.
Sintaxe
NTSTATUS WdfDeviceAddDependentUsageDeviceObject(
[in] WDFDEVICE Device,
[in] PDEVICE_OBJECT DependentDevice
);
Parâmetros
[in] Device
Um identificador para um objeto de dispositivo de estrutura.
[in] DependentDevice
Um ponteiro para uma estrutura de DEVICE_OBJECT fornecida pelo chamador que identifica um dispositivo do qual de dispositivos depende.
Valor de retorno
Se a operação for bem-sucedida, método WdfDeviceAddDependentUsageDeviceObject retornará STATUS_SUCCESS. Os valores de retorno adicionais incluem:
Código de retorno | Descrição |
---|---|
|
DependentDevice é NULL. |
|
Falha na alocação de memória. |
O método pode retornar outros valores NTSTATUS .
Uma verificação de bug ocorre se o driver fornece um identificador de objeto inválido.
Observações
O driver pode chamar WdfDeviceAddDependentUsageDeviceObject para indicar que o dispositivo identificado por Device depende do dispositivo identificado por DependentDevice, quando Device dá suporte a arquivos especiais. Se o driver chamar WdfDeviceAddDependentUsageDeviceObject, a estrutura chamará a chamada EvtDeviceUsageNotification Funções de retorno em driversDependentDevice antes de chamar as funções de retorno de chamada EvtDeviceUsageNotification nos drivers do Device.
O driver pode chamar WdfDeviceAddDependentUsageDeviceObject várias vezes para identificar vários dispositivos que o dispositivo depende para dar suporte a arquivos especiais.
Depois que um driver tiver chamado WdfDeviceAddDependentUsageDeviceObject, ele pode chamar WdfDeviceRemoveDependentUsageDeviceObject para remover o dispositivo identificado por DependentDevice da lista de dispositivos dos quais dispositivo depende.
Para obter mais informações sobre arquivos especiais, consulte Suporte a arquivos especiais.
Exemplos
O exemplo de código a seguir adiciona um dispositivo (pDeviceObject) à lista de dispositivos dos quais outro dispositivo (Device) depende.
status = WdfDeviceAddDependentUsageDeviceObject(
device,
pDeviceObject
);
Requisitos
Requisito | Valor |
---|---|
da Plataforma de Destino | Universal |
versão mínima do KMDF | 1.0 |
cabeçalho | wdfdevice.h (inclua Wdf.h) |
biblioteca | Wdf01000.sys (consulte o Controle de Versão da Biblioteca da Estrutura.) |
IRQL | <= DISPATCH_LEVEL |
regras de conformidade de DDI | DriverCreate(kmdf), KmdfIrql(kmdf), KmdfIrql2(kmdf), KmdfIrqlExplicit(kmdf) |