代码之家  ›  专栏  ›  技术社区  ›  Lion King

OutputDebugString函数未正确显示所有语言

  •  0
  • Lion King  · 技术社区  · 5 年前

    OutputDebugString() 是本机ASCII,这意味着它在调用ASCII版本之前将输入的Unicode字符串转换为本地字符串 OutputDebugStringA() .

    还有其他选择吗 OutputDebugString() 哪些支持Unicode?

    0 回复  |  直到 5 年前
        1
  •  5
  •   Peter Huene    11 年前

    OutputDebugStringW 内部通话 OutputDebugStringA ,因此无法在系统代码页中表示的Unicode字符将被替换为 ? .

    奇怪的是 OUTPUT_DEBUG_STRING_INFO 调试器从操作系统接收的用于打印消息的结构似乎确实支持让调试器知道字符串是否为Unicode,只是它似乎没有被使用 OutputDebugStringW 完全。

    不幸的是,我不知道有什么机制可以让操作系统提高 OUTPUT_DEBUG_STRING_EVENT 使用Unicode字符串。公共API可能无法实现。