Функция VhfDelete (vhf.h)
Драйвер устройства HID Source вызывает этот метод для удаления устройства VHF.
Синтаксис
void VhfDelete(
[in] VHFHANDLE VhfHandle,
[in] BOOLEAN Wait
);
Параметры
[in] VhfHandle
Дескриптор виртуального устройства HID, полученного драйвером источника HID в предыдущем вызове VhfCreate.
[in] Wait
Значение TRUE для синхронного возврата после удаления устройства. В этом случае Виртуальная платформа HID Framework (VHF) не возвращается, пока устройство не сообщается, что оно отсутствует в диспетчере PnP и EvtVhfCleanup функция обратного вызова.
Значение FALSE зарезервировано и не должно быть передано. Дополнительные сведения см. в примечаниях.
Возвращаемое значение
Никакой
Замечания
Драйвер источника HID должен перестать инициировать новые запросы виртуальной платформы HID (VHF) перед вызовом VhfDelete.
Чтобы вызвать VhfDelete синхронно, вызовите его по адресу PASSIVE_LEVEL с параметром Wait значение TRUE. В этом случае он возвращается синхронно после завершения удаления. Если драйвер источника HID зарегистрировал функцию обратного вызова EvtVhfCleanup с помощью VHF, он вызывает обратный вызов перед возвратом VhfDelete. Функция может вызываться в одном потоке.
VhfDelete нельзя вызывать асинхронно (параметрwait set to FALSE) или при любом irQL выше PASSIVE_LEVEL. Это может привести к неопределенному поведению.
Нет ограничений на то, когда драйвер KMDF должен вызывать эту функцию. Рекомендуется вызвать его из функции, соответствующей вызову VhfCreate. Например, если VhfCreate вызывается из EvtDriverDeviceAdd, вызовите VhfDelete синхронно из EvtDeviceCleanupCallback. VhfDelete можно вызывать на VHFHANDLE без вызова VhfStart.
Требования
Требование | Ценность |
---|---|
целевая платформа | Виндоус |
заголовка | vhf.h |
библиотеки | VhfKm.lib |
IRQL | Ожидание равно TRUE, PASSIVE_LEVEL |
См. также
Написание исходного драйвера HID с помощью Virtual HID Framework (VHF)