2 qkq666 qkq666 于 2016.02.01 17:46 提问

VS2015mfc简单的消息变乱码,无论中英文

作为一个小白,想学习一下,就按照课本事例进行,一个简单的点击鼠标左键的消息响应。但结果一直为乱码,在网上搜过相关问题,就在安装目录里的hfile.h和newc++file中添加了两句代码
#pragma once
#pragma execution_character_set("utf-8")
也在高级保存选项里更改了,但运行之后仍为乱码,经测试只有一个英文字母或标点时不是乱码,一旦上升为两个字母或者一个汉字就出现乱码,求指导!图片说明图片说明图片说明

4个回答

caozhy
caozhy   Ds   Rxr 2016.02.02 08:19
已采纳

AfxMessageBox(_T("aa"));
试试看

qkq666
qkq666 LPCTSTR换成_T就行了,这是什么问题啊?
接近 2 年之前 回复
qkq666
qkq666 LPCTSTR换成_T就行了,这是什么问题啊?
接近 2 年之前 回复
piaobotudou
piaobotudou   2016.02.02 16:07

去掉#pragma execution_character_set("utf-8")
把LPCTSTR换成_T

qkq666
qkq666 LPCTSTR换成_T就行了,没有删除#pragma execution_character_set("utf-8"),这是哪里的问题呢?
接近 2 年之前 回复
oyljerry
oyljerry   Ds   Rxr 2016.02.02 10:59

你的代码文件编码是什么,可能影响了编译器的编码。你可以用unicode等字符集的工程,然后代码文件用unicode格式,然后再用AfxMessageBox试试

91program
91program   Ds   Rxr 2016.02.01 18:11

MFC 程序,建议你使用 ASCII 或 Unicode 编码的字符串,这是 API 接口参数的标准。如果要使用 UTF-8 的字符串,在显示前需要做字符串编码转换。

删除这一行试试:#pragma execution_character_set("utf-8")

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!