Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
[Solo se aplica a KMDF]
El método WdfPdoMarkMissing informa al marco de trabajo al que ya no se puede acceder a un dispositivo.
Sintaxis
NTSTATUS WdfPdoMarkMissing(
[in] WDFDEVICE Device
);
Parámetros
[in] Device
Identificador de un objeto de dispositivo de marco que representa el objeto de dispositivo físico (PDO) del dispositivo.
Valor devuelto
Si la operación se realiza correctamente, la función devuelve STATUS_SUCCESS. Entre los valores devueltos adicionales se incluyen:
| Código de retorno | Descripción |
|---|---|
|
El identificador de dispositivo no representa un PDO. |
|
No se encontró el objeto de dispositivo. |
El método también puede devolver otros valores de NTSTATUS.
Se produce una comprobación de errores del sistema si el controlador proporciona un identificador de objeto no válido.
Observaciones
Para obtener más información sobre WdfPdoMarkMissing, vea enumeración estática.
Ejemplos
En el ejemplo de código siguiente se busca una lista de dispositivos secundarios para buscar uno que coincida con un número de serie especificado. Cuando el ejemplo encuentra el elemento secundario correcto, llama a WdfPdoMarkMissing para indicar que el elemento secundario no es accesible. Este ejemplo se ha tomado del Toaster controlador de bus de ejemplo y 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 |
|---|---|
| de la plataforma de destino de | Universal |
| versión mínima de KMDF | 1.0 |
| encabezado | wdfpdo.h (incluya Wdf.h) |
| Biblioteca | Wdf01000.sys (consulte Control de versiones de la biblioteca de marcos). |
| irQL | <= DISPATCH_LEVEL |
| reglas de cumplimiento de DDI | DriverCreate(kmdf), KmdfIrql(kmdf), KmdfIrql2(kmdf), KmdfIrqlExplicit(kmdf) |