使用了这么一段代码,结果运行的时候如果编辑框中是英文字母,只复制了第一个字母,如果是中文,复制的结果是乱码。求解具体怎么改。谢谢各位
void CMFCApplication2Dlg::OnBnClickedButCpy()
{
// TODO: 在此添加控件通知处理程序代码
CString source;
GetDlgItemText(IDC_EDI_TEXT, source);
if (OpenClipboard())
{
HGLOBAL clipbuffer;
char buffer;
EmptyClipboard();
clipbuffer = GlobalAlloc(GMEM_DDESHARE, source.GetLength() + 1);
buffer = (char)GlobalLock(clipbuffer);
strcpy(buffer, (const char *)source.GetBuffer());
GlobalUnlock(clipbuffer);
SetClipboardData(CF_TEXT, clipbuffer);
CloseClipboard();
}
}