Função WdfPdoMarkMissing (wdfpdo.h)
[Aplica-se somente ao KMDF]
O método WdfPdoMarkMissing informa à estrutura que um dispositivo não está mais acessível.
Sintaxe
NTSTATUS WdfPdoMarkMissing(
[in] WDFDEVICE Device
);
Parâmetros
[in] Device
Um identificador para um objeto de dispositivo de estrutura que representa o PDO (objeto de dispositivo físico) do dispositivo.
Retornar valor
Se a operação for bem-sucedida, a função retornará STATUS_SUCCESS. Os valores de retorno adicionais incluem:
Código de retorno | Descrição |
---|---|
|
O identificador do dispositivo não representa um PDO. |
|
Não foi possível encontrar o objeto do dispositivo. |
O método também pode retornar outros valores NTSTATUS.
Um bug do sistema marcar ocorrerá se o driver fornecer um identificador de objeto inválido.
Comentários
Para obter mais informações sobre WdfPdoMarkMissing, consulte Enumeração estática.
Exemplos
O exemplo de código a seguir pesquisa uma lista de dispositivos filho para localizar um que corresponda a um número de série especificado. Quando o exemplo encontra o filho correto, ele chama WdfPdoMarkMissing para indicar que o filho não está acessível. Este exemplo foi obtido do driver de barramento de exemplo da Torradeira e simplificado.
WDFDEVICE hChild = NULL;
NTSTATUS status = STATUS_INVALID_PARAMETER;
BOOLEAN found = FALSE;
PPDO_DEVICE_DATA pdoData;
WdfFdoLockStaticChildListForIteration(Device);
while ((hChild = WdfFdoRetrieveNextStaticChild(
Device,
hChild,
WdfRetrieveAddedChildren
)) != NULL) {
pdoData = PdoGetData(hChild); // Device object context space
if (SerialNo == pdoData->SerialNo) {
status = WdfPdoMarkMissing(hChild);
if(!NT_SUCCESS(status)) {
KdPrint(("WdfPdoMarkMissing failed 0x%x\n", status));
break;
}
found = TRUE;
break;
}
}
WdfFdoUnlockStaticChildListFromIteration(Device);
Requisitos
Requisito | Valor |
---|---|
Plataforma de Destino | Universal |
Versão mínima do KMDF | 1.0 |
Cabeçalho | wdfpdo.h (include Wdf.h) |
Biblioteca | Wdf01000.sys (consulte Controle de versão da biblioteca de estrutura.) |
IRQL | <= DISPATCH_LEVEL |
Regras de conformidade da DDI | DriverCreate(kmdf), KmdfIrql(kmdf), KmdfIrql2(kmdf), KmdfIrqlExplicit(kmdf) |