IsTextUnicode

バッファが Unicode テキストの形式を含んでいる可能性があるかを判定する。

IsTextUnicode lpv, iSize, lpiResult

lpv : [intptr] 調査する入力バッファへのポインタ。
iSize : [int] lpv が指す入力バッファのサイズをバイト単位で指定する。
lpiResult : [var] 入力時、入力バッファのテキストに適用するテストへのポインタ。出力時、このパラメータには指定されたテストの結果が格納される。バッファの内容がテストに合格した場合は 1、失敗した場合は 0 となる。関数への入力時に設定されたフラグのみが出力時に意味を持つ。lpiResult が NULL の場合、関数はバッファ内のデータが Unicode テキストである可能性を判定するために利用可能なすべてのテストを使用する。

(プラグイン / モジュール : advapi32.dll)

解説

バッファが Unicode テキストの形式を含んでいる可能性があるかを判定する。

[戻り値]
バッファ内のデータが指定されたテストに合格した場合、0 以外の値を返す。バッファ内のデータが指定されたテストに合格しなかった場合、0
を返す。

[備考]
この関数は lpiResult
パラメータで渡されるフラグの制御下で、様々な統計的・決定論的手法を使用して判定を行う。関数が戻るとき、これらのテスト結果は同じパラメータを使用して報告される。IS_TEXT_UNICODE_STATISTICS
および IS_TEXT_UNICODE_REVERSE_STATISTICS
テストは統計分析を使用する。これらのテストは完全ではない。統計テストは文字列の下位バイトと上位バイトの間にある程度の変動を想定しており、一部の
ASCII 文字列はすり抜けることがある。例えば、lpv が ASCII 文字列 0x41, 0x0A, 0x0D, 0x1D
(A\n\r^Z) を示す場合、この文字列は IS_TEXT_UNICODE_STATISTICS
テストに合格してしまうが、失敗する方が望ましい。

情報

プラグイン / モジュールadvapi32.dll
バージョン1.0
作成日2026/04/16
著作者IronHSP / CsWin32 bridge
URLhttps://github.com/inovia/IronHSP
備考Win32 API の advapi32.dll 関数群。CsWin32 + win32metadata から自動生成。
hsp3net 専用 (intptr / NSTRUCT / wstr を使用)。
タイプ拡張命令
グループWin32API
対応環境
  • Windows 版 HSP
hs ファイルhsphelp\win32_advapi32_gen2.hs