void CClipboardDlg::OnBnClickedBtnSend()
{
// TODO: 在此添加控件通知处理程序代码
CString strSource;
if(OpenClipboard()) //打开剪贴板
{
HGLOBAL hGlobal;
LPTSTR pBuffer;
EmptyClipboard(); //清空剪贴板内容
GetDlgItemText(IDC_EDIT_SEND, strSource); //从指定ID文本框获取字符串
hGlobal = GlobalAlloc(GHND, (strSource.GetLength()+1)*sizeof(TCHAR)); //获取内存,长度为字符串长度
pBuffer = (LPTSTR)GlobalLock(hGlobal);
memcpy(pBuffer, strSource, (strSource.GetLength()+1)*sizeof(TCHAR));
GlobalUnlock(hGlobal);
SetClipboardData(CF_UNICODETEXT, hGlobal); // 设置剪贴板内容
CloseClipboard(); // 必须关闭剪贴板
}
}
void CClipboardDlg::OnBnClickedBtnRecv()
{
// TODO: 在此添加控件通知处理程序代码
if(OpenClipboard())
{
if(IsClipboardFormatAvailable(CF_UNICODETEXT))
{
HGLOBAL hGlobal;
LPTSTR pBuffer;
hGlobal = GetClipboardData(CF_UNICODETEXT);
pBuffer = (LPTSTR)GlobalLock(hGlobal);
GlobalUnlock(hGlobal);
CString str(pBuffer);
SetDlgItemText(IDC_EDIT_RECV, pBuffer);
}
CloseClipboard(); // 必须关闭剪贴板
}
}