Função WdfDeviceSetStaticStopRemove (wdfdevice.h)
[Aplica-se a KMDF e UMDF]
O método WdfDeviceSetStaticStopRemove informa à estrutura se um dispositivo pode ser interrompido e removido.
Sintaxe
void WdfDeviceSetStaticStopRemove(
[in] WDFDEVICE Device,
[in] BOOLEAN Stoppable
);
Parâmetros
[in] Device
Um identificador para um objeto de dispositivo de estrutura.
[in] Stoppable
Um valor booliano que indica se o dispositivo especificado pode ser interrompido e removido. Se TRUE, o dispositivo poderá ser interrompido e removido. Se FALSE, o dispositivo não poderá ser interrompido e removido.
Retornar valor
Nenhum
Comentários
Um bug marcar ocorrerá se o driver fornecer um identificador de objeto inválido.
Por padrão, um dispositivo pode ser interrompido e removido. Portanto, um driver normalmente chama WdfDeviceSetStaticStopRemove somente se precisar definir temporariamente o parâmetro Stoppable como FALSE. Por exemplo, um driver que controla um gravador de DVD pode chamar WdfDeviceSetStaticStopRemove com Stoppable definido como FALSE antes de começar a queimar um DVD. Depois que o driver terminar de gravar o DVD, ele chamará WdfDeviceSetStaticStopRemove novamente com Stoppable definido como TRUE.
Se o dispositivo do driver estiver dando suporte a um arquivo especial (consulte WdfDeviceSetSpecialFileSupport), a estrutura não permitirá que o dispositivo seja interrompido ou removido. Nesse caso, o driver não precisa chamar WdfDeviceSetStaticStopRemove .
O driver deve corresponder todas as chamadas a WdfDeviceSetStaticStopRemove com Stoppable definido como FALSE com uma chamada para WdfDeviceSetStaticStopRemove com Stoppable definido como TRUE.
Chamar WdfDeviceSetStaticStopRemove com Stoppable definido como FALSE não impede que a estrutura notifique o driver se o dispositivo for removido inesperadamente (removido surpresa).
Para obter mais informações sobre como impedir que o sistema operacional interrompa um dispositivo, consulte Manipulando solicitações para parar um dispositivo.
Exemplos
O exemplo de código a seguir informa à estrutura que o dispositivo especificado não pode ser interrompido e removido.
WdfDeviceSetStaticStopRemove(
device,
FALSE
);
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 de DDI | DriverCreate(kmdf), KmdfIrql(kmdf), KmdfIrql2(kmdf), KmdfIrqlExplicit(kmdf) |