Метод IWDFIoRequest2::IsCanceled (wudfddi.h)
[ предупреждение: UMDF 2 является последней версией UMDF и заменяет UMDF 1. Все новые драйверы UMDF должны быть написаны с помощью UMDF 2. Новые функции не добавляются в UMDF 1, а поддержка UMDF 1 в более новых версиях Windows 10 ограничена. Универсальные драйверы Windows должны использовать UMDF 2. Дополнительные сведения см. в разделе Начало работы с UMDF.]
Метод IsCanceled определяет, пытается ли диспетчер ввода-вывода отменить запрос ввода-вывода.
Синтаксис
BOOL IsCanceled();
Возвращаемое значение
IsCanceled возвращает TRUE, если менеджер ввода-вывода попытался отменить запрос ввода-вывода. Этот метод возвращает FALSE по любым из следующих причин:
- Диспетчер ввода-вывода не пытался отменить запрос.
- Вызывающий драйвер не владеет запросом.
- Вызывающий драйвер вызвал метод IWDFIoRequest::MarkCancelable.
Замечания
Если драйвер не вызвал IWDFIoRequest::MarkCancelable, чтобы зарегистрировать IRequestCallbackCancel::OnCancel функцию обратного вызова, но если вы хотите, чтобы драйвер мог определить, пытается ли диспетчер ввода-вывода отменить запрос ввода-вывода, драйвер может вызвать IsCanceled.
Драйвер может вызывать IsCanceled для запроса, только если драйвер владеет запросом ввода-вывода. Если драйвер вызвал IWDFIoRequest::MarkCancelable, необходимо вызвать IWDFIoRequest::UnmarkCancelable перед вызовом IsCanceled.
Если IsCanceled возвращает TRUE, драйвер должен отменить запрос, вызвав IWDFIoRequest::Complete с параметром CompleteStatus значение HRESULT_FROM_WIN32(ERROR_OPERATION_ABORTED).
Дополнительные сведения о IsCanceledсм. в разделе Отмена запросов ввода-вывода.
Примеры
В следующем примере кода, если IsCanceled возвращает TRUE, драйвер завершает запрос ввода-вывода путем вызова IWDFIoRequest::Complete с состоянием завершения HRESULT_FROM_WIN32(ERROR_OPERATION_ABORTED).
if (fxRequest2->IsCanceled())
{
fxRequest2->Complete(HRESULT_FROM_WIN32(ERROR_OPERATION_ABORTED));
}
...
Требования
Требование | Ценность |
---|---|
завершение поддержки | Недоступно в UMDF 2.0 и более поздних версиях. |
целевая платформа | Настольный |
минимальная версия UMDF | 1.9 |
заголовка | wudfddi.h (include Wudfddi.h) |
DLL | WUDFx.dll |