IdnToNameprepUnicode 関数 (winnls.h)

国際化ドメイン名 (IDN) または別の国際化ラベルを、ネットワーク作業グループ RFC 3491 で指定された NamePrep フォームに変換しますが、Punycode への追加の変換は実行しません。 関連するドラフト標準の詳細とリンクについては、「 国際化ドメイン名 (IDN) の処理」を参照してください。

構文

int IdnToNameprepUnicode(
  [in]            DWORD   dwFlags,
  [in]            LPCWSTR lpUnicodeCharStr,
  [in]            int     cchUnicodeChar,
  [out, optional] LPWSTR  lpNameprepCharStr,
  [in]            int     cchNameprepChar
);

パラメーター

[in] dwFlags

変換オプションを指定するフラグ。 詳細な定義については、IdnToAsciidwFlags パラメーターを参照してください。

[in] lpUnicodeCharStr

IDN または他の国際化されたラベルを表す Unicode 文字列へのポインター。

[in] cchUnicodeChar

lpUnicodeCharStr で示される入力 Unicode 文字列内の Unicode 文字の数。

[out, optional] lpNameprepCharStr

NamePrep 処理によって変換された入力 Unicode 文字列のバージョンを受け取るバッファーへのポインター。 または、cchNameprepChar が 0 に設定されている場合、このパラメーターの NULL を取得することもできます。 この場合、 関数は、このバッファーに必要なサイズを返します。

[in] cchNameprepChar

lpNameprepCharStr で示されるバッファーのサイズ (文字数)。 アプリケーションでは、サイズを 0 に設定して lpNameprepCharStr 内の NULL を取得し、関数から必要なバッファー サイズを返すことができます。

戻り値

成功した場合に lpNameprepCharStr で取得した文字数を返します。 取得した文字列は、入力 Unicode 文字列が null で終わる場合にのみ null で終了します。

関数が成功し、 cchNameprepChar の値が 0 の場合、関数は、入力バッファーの一部である場合は、終端の null 文字を含む文字で、必要なサイズを返します。

成功しなかった場合、関数は 0 を返します。 拡張エラー情報を取得するために、アプリケーションは GetLastError を呼び出すことができます。このエラー コードは、次のいずれかのエラー コードを返すことができます。

  • ERROR_INSUFFICIENT_BUFFER。 指定されたバッファー サイズが十分な大きさではなかったか、 正しく NULL に設定されていません。
  • ERROR_INVALID_FLAGS。 フラグに指定された値が無効です。
  • ERROR_INVALID_NAME。 関数に無効な名前が指定されました。 このエラー コードでは、すべての構文エラーがキャッチされることに注意してください。
  • ERROR_INVALID_PARAMETER。 パラメーター値のいずれかが無効です。
  • ERROR_NO_UNICODE_TRANSLATION。 文字列に無効な Unicode が見つかりました。

解説

「IdnToAscii の解説」を参照してください。

NLS: 国際化ドメイン名 (IDN) 変換サンプル は、この関数の使用を示しています。

要件

   
サポートされている最小のクライアント Windows Vista [デスクトップ アプリのみ | UWP アプリ]
サポートされている最小のサーバー Windows Server 2008 [デスクトップ アプリ | UWP アプリ]
対象プラットフォーム Windows
ヘッダー winnls.h (Windows.h を含む)
Library Normaliz.lib
[DLL] Normaliz.dll
再頒布可能パッケージ Microsoft Internationalized Domain Name (IDN) 軽減 API on Windows XP with SP2 以降、または Windows Server 2003 sp1

関連項目

国際化ドメイン名 (IDN) の処理

IdnToAscii

IdnToUnicode

各国語サポート

各国語サポート関数