Поделиться через


функция обратного вызова PREENUMERATE_SELF (wdm.h)

Подпрограмма ReenumerateSelf запрашивает, чтобы водитель автобуса повторно задал дочернее устройство.

Синтаксис

PREENUMERATE_SELF PreenumerateSelf;

void PreenumerateSelf(
  [in] PVOID Context
)
{...}

Параметры

[in] Context

Указатель на сведения о контексте для конкретного интерфейса. Вызывающий объект передает значение, передаваемое в качестве элемента Contextструктуры REENUMERATE_SELF_INTERFACE_STANDARD .

Возвращаемое значение

None

Remarks

Структура интерфейса REENUMERATE_SELF_INTERFACE_STANDARD предоставляет указатель на подпрограмму ReenumerateSelf .

Если водитель автобуса может обработать запрос во время обычного вызова, водитель автобуса асинхронно сообщает, что устройство отсутствует в последующем запросе IRP_MN_QUERY_DEVICE_RELATIONS BusRelations. Этот отчет приводит к тому, что текущий экземпляр устройства получает запросы IRP_MN_SURPRISE_REMOVAL и IRP_MN_REMOVE_DEVICE . После обработки неожиданного удаления перечисляется новый экземпляр устройства и вызывается подпрограмма AddDevice драйвера для перестроения стека устройств.

Требования

Требование Значение
Минимальная версия клиента Доступно в Windows Vista.
Целевая платформа Персональный компьютер
Верхняя часть wdm.h (включая Wdm.h, Ntddk.h)
IRQL PASSIVE_LEVEL

См. также раздел

IRP_MN_QUERY_DEVICE_RELATIONS

IRP_MN_REMOVE_DEVICE

IRP_MN_SURPRISE_REMOVAL

REENUMERATE_SELF_INTERFACE_STANDARD