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


Функция 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)

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

EX_RUNDOWN_REF

ExAcquireRundownProtection

ExInitializeRundownProtection

ExReleaseRundownProtection

ExReleaseRundownProtectionEx