Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
The ReadULongFromUser function safely reads a ULONG value from user-mode memory.
Syntax
ULONG ReadULongFromUser(
const volatile ULONG *Source
);
Parameters
Source
[in] Указатель на расположение памяти в пользовательском режиме, из которого следует считывать значение ULONG.
Return value
ReadULongFromUser returns the ULONG value read from the specified user-mode memory address.
Remarks
Эта функция обеспечивает безопасный способ чтения значения ULONG из памяти пользовательского режима. Он гарантирует, что указанный адрес является адресом пользовательского режима перед чтением.
Эта функция не применяет выравнивание.
При сбое доступа к памяти возникает структурированное исключение, например, если исходный адрес не является адресом пользовательского режима или недоступен.
Эта функция никогда не будет оптимизирована компилятором, и компилятор не создаст дополнительные доступы к этому расположению памяти до вызова функции или после возврата функции (если исходный код явно не выполняет эти доступы). The memory access is performed with memory_order_relaxed semantics.
Эта функция работает во всех версиях Windows, а не только на последних версиях. You need to consume the latest WDK to get the function declaration from the usermode_accessors.h header. You also need the library (umaccess.lib) from the latest WDK. Однако результирующий драйвер будет работать в более ранних версиях Windows.
Requirements
| Requirement | Value |
|---|---|
| Минимальный поддерживаемый клиент | See Remarks |
| Header | usermode_accessors.h |
| Library | umaccess.lib |
| IRQL | Меньше или равно APC_LEVEL |