WC_NO_BEST_FIT_CHARS is undefined?

WC_NO_BEST_FIT_CHARS is undefined?

本文关键字:is undefined CHARS FIT NO BEST WC      更新时间:2023-10-16

WC_NO_BEST_FIT_CHARS在内联方法GetAnsiStringSize()对WideCharToMultiByte的调用中被引用。

但是上面的符号是未定义的,我不知道该怎么定义它。谷歌搜索和MSDN没有发现任何线索,除了它是上面函数调用的标准符号。

WC_NO_BEST_FIT_CHARSwinnls.h中定义为

#if(WINVER >= 0x0500)
#define WC_NO_BEST_FIT_CHARS      0x00000400  // do not use best fit chars
#endif /* WINVER >= 0x0500 */

所以你最好在你的应用程序/项目/解决方案中检查WINVER的值

#include <windows.h>就是所需要的全部。

正如Edwin所写。。。事实上,我也遇到了同样的问题,我解决了如下问题:

1) 转到http://msdn.microsoft.com/es-es/library/aa383745.aspx并搜索适用于您的操作系统版本的NTDDI_VERSION的值。例如,对于Windows 8,我有:0x0602

2) 在您的代码类型中:

#define WINVER 0x0602

3) WC_NO_BEST_FIT_CHARS出现错误是因为使用了msclr::interop::marshali_as。。。。所以,最后不要忘记添加你的标题

希望这对你们有帮助!