GlobalAddAtomW

グローバルアトムテーブルに文字列を追加し、その文字列を識別する一意の値(アトム)を返す。(GlobalAddAtomW)

GlobalAddAtomW lpString

lpString : [wstr] 型: LPCTSTR 追加する null 終端文字列。文字列は最大 255 バイトのサイズを持つことができる。大文字小文字のみが異なる文字列は同一とみなされる。この名前で最初にテーブルに追加された文字列の大文字小文字が保持され、GlobalGetAtomName 関数によって返される。あるいは、MAKEINTATOM マクロを使用して変換した整数アトムを使用することもできる。詳細は備考を参照。

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

解説

グローバルアトムテーブルに文字列を追加し、その文字列を識別する一意の値(アトム)を返す。(GlobalAddAtomW)

[戻り値]
型: ATOM 関数が成功した場合、戻り値は新しく作成されたアトム。関数が失敗した場合、戻り値は 0。拡張エラー情報を取得するには
GetLastError を呼ぶ。

[備考]

文字列が既にグローバルアトムテーブルに存在する場合、既存の文字列のアトムが返され、そのアトムの参照カウントが増分される。アトムに関連付けられた文字列は、参照カウントが
0 になるまでメモリから削除されない。詳細は GlobalDeleteAtom
関数を参照。グローバルアトムはアプリケーション終了時に自動的に削除されない。GlobalAddAtom 関数を呼び出すたびに、対応する
GlobalDeleteAtom 関数の呼び出しが必要である。lpString パラメータが "#1234"
の形式の場合、GlobalAddAtom は文字列で指定された 10 進数の 16 ビット表現の値を持つ整数アトムを返す(この例では
0x04D2)。指定された 10 進値が 0x0000、または 0xC000 以上の場合、戻り値は 0
となり、エラーを示す。lpString が MAKEINTATOM マクロによって作成された場合、下位ワードは 0x0001 から
0xBFFF の範囲内になければならない。下位ワードがこの範囲内にない場合、関数は失敗する。lpString
が他の形式の場合、GlobalAddAtom は文字列アトムを返す。
> [!NOTE] > winbase.h ヘッダは GlobalAddAtom を、UNICODE プリプロセッサ定数の定義に基づいて
ANSI または Unicode
版を自動選択するエイリアスとして定義する。エンコーディング中立なエイリアスとそうでないコードを混在させると、コンパイルや実行時のエラーを引き起こす不一致が生じうる。詳細は
[Conventions for Function
Prototypes](/windows/win32/intl/conventions-for-function-prototypes)
を参照。

情報

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