Функция ExAcquireRundownProtectionEx (wdm.h)
Подпрограмма ExAcquireRundownProtectionEx пытается получить защиту от запуска общего объекта, чтобы вызывающий объект смог безопасно получить доступ к объекту.
Синтаксис
BOOLEAN ExAcquireRundownProtectionEx(
[in, out] PEX_RUNDOWN_REF RunRef,
[in] ULONG Count
);
Параметры
[in, out] RunRef
Указатель на структуру EX_RUNDOWN_REF , которая была инициализирована предыдущим вызовом подпрограммы ExInitializeRundownProtection . Подпрограммы защиты от запуска используют эту структуру для отслеживания состояния запуска связанного общего объекта. Эта структура непрозрачна для драйверов.
[in] Count
Сумма, на которую увеличивается число запущенных экземпляров объекта. Счетчик увеличивается, только если подпрограмма возвращает значение TRUE. Дополнительные сведения см. в разделе Примечания.
Возвращаемое значение
ExAcquireRundownProtectionEx возвращает значение TRUE , если подпрограмма успешно получает защиту от запуска вызывающей стороны. В противном случае возвращается значение FALSE. Возвращаемое значение FALSE указывает, что запущен запуск объекта и что объект должен рассматриваться как недопустимый.
Комментарии
Для безопасного доступа к общему объекту драйвер вызывает ExAcquireRundownProtectionEx , чтобы получить защиту от запуска объекта.
Параметр RunRef указывает на EX_RUNDOWN_REF структуру, которая отслеживает состояние запуска связанного объекта. Эти сведения о состоянии включают количество экземпляров защиты от запуска, которые в настоящее время действуют на объекте . Подпрограммы ExAcquireRundownProtectionEx и ExReleaseRundownProtectionEx увеличивают и уменьшают это число на произвольные суммы. Две связанные подпрограммы , ExAcquireRundownProtection и ExReleaseRundownProtection, увеличивают и уменьшают это число на единицу.
До тех пор, пока блок выполнения не загвоздивается, эту функцию можно вызывать по DISPATCH_LEVEL.
Дополнительные сведения см. в разделе Защита от запуска.
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Доступно начиная с Windows Server 2003. |
Целевая платформа | Универсальное |
Верхняя часть | wdm.h (включая Wdm.h) |
Библиотека | NtosKrnl.lib |
DLL | NtosKrnl.exe |
IRQL | <= DISPATCH_LEVEL (см. примечания) |
Правила соответствия DDI | HwStorPortProhibitedDIs(storport) |