次の方法で共有


ReadUnicodeStringFromUser 関数 (usermode_accessors.h)

The ReadUnicodeStringFromUser function safely reads a UNICODE_STRING structure from user-mode memory.

Syntax

UNICODE_STRING ReadUnicodeStringFromUser(
  const volatile UNICODE_STRING *Source
);

Parameters

Source

[in] A pointer to the user-mode memory ___location from which to read the UNICODE_STRING structure.

Return value

ReadUnicodeStringFromUser returns the UNICODE_STRING structure read from the specified user-mode memory address.

Remarks

This function provides a safe way to read a UNICODE_STRING structure from user-mode memory. 指定されたアドレスが、読み取る前にユーザー モード のアドレスであることを確認します。

この関数では、配置は適用されません。

ソース アドレスがユーザー モード アドレスではない場合やアクセスできない場合など、メモリ アクセスが失敗した場合は、構造化例外が発生します。

この関数はコンパイラによって最適化されることも、関数が呼び出される前または関数が戻った後に (ソース コードが明示的にこれらのアクセスを実行しない限り) このメモリ位置への追加のアクセスを作成することもありません。 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以下

See also

ReadUnicodeStringFromMode

WriteUnicodeStringToUser