GlobalAddAtomA 函数 (winbase.h)

将字符串添加到全局原子表,并返回一个唯一值 (atom) 标识该字符串。

语法

ATOM GlobalAddAtomA(
  [in] LPCSTR lpString
);

参数

[in] lpString

类型: LPCTSTR

要添加的以 null 结尾的字符串。 字符串的最大大小可以为 255 个字节。 仅大小写不同的字符串被视为相同。 此名称添加到表中的第一个字符串大小写由 GlobalGetAtomName 函数保留并返回。

或者,可以使用已使用 MAKEINTATOM 宏转换的整数原子。 有关详细信息,请参阅备注。

返回值

类型: ATOM

如果函数成功,则返回值为新创建的 atom。

如果函数失败,则返回值为零。 要获得更多的错误信息,请调用 GetLastError。

注解

如果字符串已存在于全局原子表中,则返回现有字符串的原子,原子的引用计数递增。

在原子引用计数为零之前,不会从内存中删除与 atom 关联的字符串。 有关详细信息,请参阅 GlobalDeleteAtom 函数。

应用程序终止时,不会自动删除全局原子。 每次调用 GlobalAddAtom 函数时,都必须有对 GlobalDeleteAtom 函数的相应调用。

如果 lpString 参数的格式为“#1234”, 则 GlobalAddAtom 将返回一个整数原子,其值为字符串 (0x04D2 中指定的十进制数的 16 位表示形式,在此示例中) 。 如果指定的十进制值0x0000或大于或等于 0xC000,则返回值为零,表示错误。 如果 lpString 是由 MAKEINTATOM 宏创建的,则低序字必须位于0x0001到0xBFFF的范围内。 如果低序字不在此范围内,则函数将失败。

如果 lpString 具有任何其他形式, GlobalAddAtom 将返回字符串原子。

注意

winbase.h 标头将 GlobalAddAtom 定义为别名,该别名根据 UNICODE 预处理器常量的定义自动选择此函数的 ANSI 或 Unicode 版本。 将非特定编码别名的使用与非非特定编码的代码混合使用可能会导致不匹配,从而导致编译或运行时错误。 有关详细信息,请参阅 函数原型的约定

要求

   
最低受支持的客户端 Windows 2000 Professional [仅限桌面应用]
最低受支持的服务器 Windows 2000 Server [仅限桌面应用]
目标平台 Windows
标头 winbase.h (包括 Windows.h)
Library Kernel32.lib
DLL Kernel32.dll

另请参阅

AddAtom

DeleteAtom

FindAtom

GetAtomName

GlobalDeleteAtom

GlobalFindAtom

GlobalGetAtomName

MAKEINTATOM

引用