次の方法で共有


RtlAnsiStringToUnicodeString 関数 (winternl.h)

指定した ANSI ソース文字列を Unicode 文字列に変換します。

構文

NTSTATUS RtlAnsiStringToUnicodeString(
  [in, out] PUNICODE_STRING DestinationString,
  [in]      PCANSI_STRING   SourceString,
  [in]      BOOLEAN         AllocateDestinationString
);

パラメーター

[in, out] DestinationString

変換された Unicode 文字列を保持する UNICODE_STRING 構造体へのポインター。 AllocateDestinationStringTRUE の場合、ルーチンは文字列データを保持する新しいバッファーを割り当て、DestinationStringBuffer メンバーを更新して新しいバッファーを指します。 それ以外の場合、ルーチンは現在指定されているバッファーを使用して文字列を保持します。

[in] SourceString

Unicode に変換する ANSI 文字列を含む ANSI_STRING 構造体へのポインター。

[in] AllocateDestinationString

宛先文字列のバッファー領域の割り当てを制御します。

TRUE

DestinationString にはバッファー領域が割り当てられます。 TRUE に設定した場合は、RtlFreeUnicodeString を使用してバッファーの割り当てを解除する必要があります。

FALSE

DestinationString にはバッファー領域が割り当てられません。

戻り値

NTSTATUS では、さまざまな NTSTATUS 値が定義されています。H。Windows DDK と共に配布されます。

リターン コード 説明
STATUS_SUCCESS
ANSI 文字列が Unicode に変換されました。 失敗した場合、ルーチンはメモリを割り当てません。

注釈

変換は、現在のシステム ロケール情報に関して行われます。

呼び出し元が AllocateDestinationStringTRUE に設定した場合、ルーチンは DestinationStringBuffer メンバーを割り当てるバッファーへのポインターに置き換えます。 ルーチンからエラー状態コードが返された場合でも、古い値を上書きできます。

この関数にはインポート ライブラリがないため、 GetProcAddress を使用する必要があります。

要件

   
サポートされている最小のクライアント Windows 2000 Professional [デスクトップ アプリのみ]
サポートされている最小のサーバー Windows 2000 Server [デスクトップ アプリのみ]
対象プラットフォーム Windows
ヘッダー winternl.h
Library ntdll.lib
[DLL] ntdll.dll