环境:VS2012
目的:一个编辑框,一个按钮。按下按钮后,要把编辑框里的内容放到剪切板。
实现:按下按钮,UpdateData(), SetClipboard(m_Text)。
问题:在编辑框内为韩文的时候剪切板就出现了乱码。调试发现UpdateData()后,m_Text为原韩文,放到剪切板里就出错了。
求大神解答啊?
剪切板是系统的吧?所以我猜想是系统的默认编码造成的乱码。m_Text是什么编码?和系统的对照一下看看。
可以使用这个试试:
HANDLE SetClipboardData(UINT uFormat,HANDLE hMem);
把指定数据按照指定格式放入剪切板中,window API函数。
uFormat = CF_UNICODETEXT;
附上链接:SetClipboardData
是系统的,编译器编码是UNICODE。
@Show、: 大多数IDE环境都是Unicode,而系统的却是其他的编码。导致输出的结果会产生乱码。要么你尝试这把系统的编码修改一下。
@Qlover: 可以了,多谢!