当我创建我的visual studio项目时,它默认强制我对所有带字符串的函数使用宽字符串.例如,MessageBox()采用LPCWSTR而不是const char *.虽然我知道它对于多语言和便携式应用程序来说非常棒,但对于我简单的小应用程序来说它是完全没必要的.坦率地说,在我的所有字符串周围不断输入TEXT()会更加痛苦.
是否有编译器选项,定义或项目设置,我可以更改以在我的Visual Studio项目中修复此问题?
解决方法
右键单击您的项目 – >然后,属性转到以下树项:
Configuration Properties -> General
对于Unicode选择:
使用Unicode字符串
对于正常的多字节选择:
使用多字节字符集
当您在字符串周围放置TEXT()或_T()时,您将使它与两个字符串选项兼容.如果选择“使用多字节字符集”,则字符串周围不需要任何内容.如果选择“使用unicode字符集”,则字符串前面至少需要L.
通过选择使用Unicode字符串,默认情况下使用以W结尾的所有Win32 API.示例:MessageBox映射到MessageBoxW.
当您选择使用多字节字符集时,默认情况下您还使用以A结尾的所有Win32 API.示例:MessageBox映射到MessageBoxA.