OemToCharBuffA 函数 (winuser.h)

将字符串中指定数量的字符从 OEM 定义的字符集中转换为 ANSI 或宽字符字符串。

语法

BOOL OemToCharBuffA(
  [in]  LPCSTR lpszSrc,
  [out] LPSTR  lpszDst,
  [in]  DWORD  cchDstLength
);

参数

[in] lpszSrc

类型: LPCSTR

OEM 定义的字符集中的一个或多个字符。

[out] lpszDst

类型: LPTSTR

接收已翻译字符串的目标缓冲区。 如果 OemToCharBuff 函数用作 ANSI 函数,则可以通过将 lpszDst 参数设置为与 lpszSrc 参数相同的地址来就地转换字符串。 如果将 OemToCharBuff 函数用作宽字符函数,则无法执行此操作。

[in] cchDstLength

类型:DWORD

lpszSrc 参数标识的缓冲区中要翻译的字符数。

返回值

类型: BOOL

返回值始终为非零值,除非在函数的宽字符版本中将相同的地址传递给 lpszSrclpszDst 。 在这种情况下,函数返回零, GetLastError 返回 ERROR_INVALID_ADDRESS

注解

OemToChar 函数不同, OemToCharBuff 函数在 lpszSrc 指向的缓冲区中遇到 null 字符时不会停止转换字符。 OemToCharBuff 函数转换所有 cchDstLength 字符。

注意

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

要求

要求
最低受支持的客户端 Windows 2000 Professional [仅限桌面应用]
最低受支持的服务器 Windows 2000 Server [仅限桌面应用]
目标平台 Windows
标头 winuser.h (包括 Windows.h)
Library User32.lib
DLL User32.dll
API 集 在 Windows 8) 中引入的 ext-ms-win-ntuser-chartranslation-l1-1-0 (

另请参阅

CharToOem

CharToOemBuff

概念性

OemToChar

引用

字符串