Функция WdfDeviceSetStaticStopRemove (wdfdevice.h)
[Применимо к KMDF и UMDF]
Метод WdfDeviceSetStaticStopRemove сообщает платформе, можно ли остановить и удалить устройство.
Синтаксис
void WdfDeviceSetStaticStopRemove(
[in] WDFDEVICE Device,
[in] BOOLEAN Stoppable
);
Параметры
[in] Device
Дескриптор объекта устройства платформы.
[in] Stoppable
Логическое значение, указывающее, можно ли остановить и удалить указанное устройство. Если TRUE, устройство можно остановить и удалить. Если false, устройство не может быть остановлено и удалено.
Возвращаемое значение
Нет
Замечания
Ошибка возникает, если драйвер предоставляет недопустимый дескриптор объекта.
По умолчанию устройство можно остановить и удалить. Поэтому драйвер обычно вызывает WdfDeviceSetStaticStopRemove только в том случае, если он должен временно задать параметр stoppable значение FALSE. Например, драйвер, который управляет записью DVD, может вызывать WdfDeviceSetStaticStopRemove с Stoppable установить значение FALSE перед началом сжигания DVD-диска. После того как драйвер закончил горение DVD-диска, он вызовет WdfDeviceSetStaticStopRemove снова с Stoppable установлено значение TRUE.
Если устройство драйвера поддерживает специальный файл (см. WdfDeviceSetSpecialFileSupport), платформа не позволит устройству быть остановлено или удалено. В этом случае драйверу не нужно вызывать WdfDeviceSetStaticStopRemove.
Драйвер должен соответствовать каждому вызову WdfDeviceSetStaticStopRemove с StoppableFALSE с вызовом WdfDeviceSetStaticStopRemov e с stoppable значение TRUE.
Вызов WdfDeviceSetStaticStopRemove с stoppable для false не предотвращает уведомление платформы, если устройство неожиданно удалено (неожиданно удалено).
Дополнительные сведения о том, как предотвратить остановку устройства операционной системы, см. в разделе Обработка запросов на остановкуустройства.
Примеры
Следующий пример кода сообщает платформе, что указанное устройство не может быть остановлено и удалено.
WdfDeviceSetStaticStopRemove(
device,
FALSE
);
Требования
Требование | Ценность |
---|---|
целевая платформа | универсальный |
минимальная версия KMDF | 1.0 |
минимальная версия UMDF | 2.0 |
Заголовок | wdfdevice.h (include Wdf.h) |
Библиотека | Wdf01000.sys (KMDF); WUDFx02000.dll (UMDF) |
IRQL | <=DISPATCH_LEVEL |
правил соответствия DDI | DriverCreate(kmdf), KmdfIrql(kmdf), KmdfIrql2(kmdf), KmdfIrqlExplicit(kmdf) |