gpt4 book ai didi

c++ - MessageBox 不打印 UNICODE 字符

转载 作者:行者123 更新时间:2023-12-05 02:42:04 24 4
gpt4 key购买 nike

我正在使用以下内容在 Win32 API MessageBox 中打印消息:

MessageBox(hWnd, TEXT("Já existe um controlador em execução"), TEXT("Erro"), 0);

MessageBox 是一个宏,正在扩展为 MessageBoxW。问题是它不打印 Unicode,而调用它的窗口打印 Unicode 没有任何问题,这似乎是 MessageBox 本身的问题。

有人知道怎么解决吗?

仅供引用,我也尝试过:

MessageBoxEx(hWnd, TEXT("Já existe um controlador em execução"), TEXT("Erro"), 0, MAKELANGID(LANG_PORTUGUESE, SUBLANG_PORTUGUESE));

不过还是一样,果然如此。

这是带有扩展的通话图片:

enter image description here

它打印:

enter image description here

请注意,主窗口菜单包含正确打印的 unicode 字符。

最佳答案

为避免将来出现基于源代码编码的问题,您可以对非 ascii 字符使用 \uxxxx 样式的转义字符:

MessageBoxW(nullptr, L"J\u00E1 existe um controlador em execu\u00E7\u00E1o", L"Erro", MB_OK);

关于c++ - MessageBox 不打印 UNICODE 字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67824767/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com