RtlCopyUnicodeString 関数 (wdm.h)

RtlCopyUnicodeString ルーチンは、ソース文字列をコピー先の文字列にコピーします。

構文

NTSYSAPI VOID RtlCopyUnicodeString(
  [in, out]      PUNICODE_STRING  DestinationString,
  [in, optional] PCUNICODE_STRING SourceString
);

パラメーター

[in, out] DestinationString

宛先文字列バッファーへのポインター。 このパラメーターは 、UNICODE_STRING 構造体を指します。

[in, optional] SourceString

ソース文字列バッファーへのポインター。 このパラメーターは 、UNICODE_STRING 構造体を指します。

戻り値

なし

解説

SourceStringNULL の場合、このルーチンは DestinationString が指す構造体の Length フィールドを 0 に設定します。

このルーチンでは、DestinationString が指す構造体の MaximumLength フィールドと Buffer フィールドは変更されません。

ソース文字列からコピーされるバイト数は、ソース文字列の長さ (SourceString が指す構造体の Length メンバーで指定) か、変換先文字列の最大長 (DestinationString によって指される構造体の MaximumLength メンバーによって指定されます) のいずれか小さい方です。

呼び出し元は、RtlCopyUnicodeString を呼び出す前に、DestinationString が指す構造体のすべてのメンバーを適切に初期化する必要があります。 このルーチンを呼び出す前に Length メンバーまたは MaximumLength メンバーを初期化できないと、バッファー オーバーランが発生する可能性があります。

呼び出し元が IRQL >= DISPATCH_LEVELで実行されている場合は、DestinationString バッファーと SourceString バッファーが常駐している必要があります。

要件

要件
サポートされている最小のクライアント Windows 2000 以降で使用できます。
対象プラットフォーム ユニバーサル
Header wdm.h (Wdm.h、Ntddk.h、Ntifs.h、Wudfwdm.h を含む)
Library NtosKrnl.lib
[DLL] NtosKrnl.exe (カーネル モード);Ntdll.dll (ユーザー モード)
IRQL 任意のレベル (「解説」セクションを参照)

こちらもご覧ください

RtlCopyString

UNICODE_STRING