| Предыдущий | Следующий |
| STATUS_PREDEFINED_HANDLE | STATUS_SERVICE_NOTIFICATION |
STATUS_WAS_UNLOCKED
Изменение защиты сделало прежнюю блокировку страниц недействительной
Страница, заблокированная через API памяти процесса, должна оставаться доступной согласно предположениям блокировки. Изменение области на no access нарушает эти предположения, поэтому Windows может разблокировать её при завершении изменения защиты. Это предупреждение сообщает о побочном эффекте, а не о сбое операции защиты.
Вызывающий код должен обновить собственный учёт блокировок. Последующий вызов VirtualUnlock, как будто страница всё ещё заблокирована, может вернуть другую ошибку и скрыть исходный переход. Если оборудование или код ядра продолжает использовать буфер, защиту нельзя менять до окончания соответствующего владения вводом-выводом.
Что следует проверить
- Определите изменение защиты и точный заблокированный диапазон, который оно перекрыло.
- Обновите состояние приложения или драйвера, чтобы за автоматической разблокировкой не последовала повторная.
- Убедитесь, что DMA, асинхронный ввод-вывод или рабочий поток больше не зависят от прежней доступности страниц.
Ссылки
- Microsoft: VirtualLock
- Microsoft: VirtualUnlock
- Microsoft: VirtualProtect
- Открытые спецификации Microsoft: значения NTSTATUS
Нужно найти другой код? Найти другой код состояния или ошибки.