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


Функция ReadShortFromUserAcquire (usermode_accessors.h)

The ReadShortFromUserAcquire function safely reads a SHORT value from user-mode memory with acquire semantics.

Syntax

SHORT ReadShortFromUserAcquire(
  const volatile SHORT *Source
);

Parameters

Source

[in] Указатель на расположение памяти в пользовательском режиме, из которого следует считывать значение SHORT.

Return value

ReadShortFromUserAcquire returns the SHORT value read from the specified user-mode memory address.

Remarks

Эта функция обеспечивает безопасный способ чтения значения SHORT из памяти пользовательского режима. Он гарантирует, что указанный адрес является адресом пользовательского режима перед чтением. The acquire semantics ensure that subsequent memory operations can't be reordered before this read operation.

Эта функция не применяет выравнивание.

При сбое доступа к памяти возникает структурированное исключение, например, если исходный адрес не является адресом пользовательского режима или недоступен.

Эта функция никогда не будет оптимизирована компилятором, и компилятор не создаст дополнительные доступы к этому расположению памяти до вызова функции или после возврата функции (если исходный код явно не выполняет эти доступы). The memory access is performed with memory_order_acquire 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

See also

ReadShortFromUser

WriteShortToUserRelease