国際化ドメイン名 (IDN) またはその他の国際化ラベルを、Punycode 転送エンコーディング構文で名前を表現する ASCII 文字列の Unicode (ワイド文字) 表現に変換する。
IdnToAscii dwFlags, lpUnicodeCharStr, cchUnicodeChar, lpASCIICharStr, cchASCIIChar
dwFlags : [int] 変換オプションを指定するフラグ。指定可能な値を次の表に示す。 lpUnicodeCharStr : [wstr] IDN またはその他の国際化ラベルを表す Unicode 文字列へのポインタ。 cchUnicodeChar : [int] lpUnicodeCharStr が示す入力 Unicode 文字列の文字数。 lpASCIICharStr : [wstr] ASCII 文字セットの文字のみで構成される Unicode 文字列を受け取るバッファへのポインタ。この関数から戻った時点で、バッファには lpUnicodeCharStr で渡された文字列を Punycode で表現した ASCII 文字列が格納される。あるいは、cchASCIIChar が 0 に設定されている場合、この関数はこのパラメータに NULL を取得することもできる。その場合、関数はこのバッファに必要なサイズを返す。 cchASCIIChar : [int] lpASCIICharStr が示すバッファのサイズ。アプリケーションがこのパラメータを 0 に設定すると、lpASCIICharStr に NULL を取得できる。
(プラグイン / モジュール : normaliz.dll)
国際化ドメイン名 (IDN) またはその他の国際化ラベルを、Punycode 転送エンコーディング構文で名前を表現する ASCII 文字列の Unicode (ワイド文字) 表現に変換する。 [戻り値] 成功した場合、lpASCIICharStr に取得された文字数を返す。取得された文字列は、入力 Unicode 文字列が NULL 終端されている場合にのみ NULL 終端される。関数が成功し、cchASCIIChar の値が 0 の場合、必要なサイズを文字数で返す。これには入力バッファに含まれていれば終端 NULL 文字も含まれる。失敗した場合は 0 を返す。拡張エラー情報を取得するには、アプリケーションは GetLastError を呼び出す。次のいずれかのエラーコードが返される可能性がある: このドキュメントは省略されている。 [備考] 入力文字列の長さが終端の NULL 文字なしで明示的に指定された場合、この関数は出力文字列を NULL 終端しない。この関数で出力文字列を NULL 終端させるには、アプリケーションは cchUnicodeChar パラメータに -1 を指定するか、入力文字列の終端 NULL 文字を明示的にカウントする必要がある。なお、入力文字列に制御文字 (U+0001 から U+0020) または "delete" 文字 (U+007F) が含まれる場合、この関数は常に失敗する。U+0000 は終端の NULL 文字としてのみ出現できるため、入力文字列の他の位置に U+0000 が出現すると、この関数は常に失敗する。Windows XP, Windows Server 2003: サポートされなくなった。必要なヘッダファイルおよび DLL は Microsoft Internationalized Domain Name (IDN) Mitigation API に含まれており、現在はダウンロードできない。
| プラグイン / モジュール | normaliz.dll |
| バージョン | 1.0 |
| 作成日 | 2026/04/16 |
| 著作者 | IronHSP / CsWin32 bridge |
| URL | https://github.com/inovia/IronHSP |
| 備考 | Win32 API の normaliz.dll 関数群。CsWin32 + win32metadata から自動生成。
hsp3net 専用 (intptr / NSTRUCT / wstr を使用)。 |
| タイプ | 拡張命令 |
| グループ | Win32API |
| 対応環境 |
|
| hs ファイル | hsphelp\win32_normaliz_gen2.hs |