问题:
想要实现将指定的文本放置在剪贴板内,用于粘贴数据。
解决:
void PushTextToClipboard(const CString& sText)
{
if (OpenClipboard()) //!< 打开剪切板
{
EmptyClipboard(); //!< 置空剪切板
HGLOBAL hClip = GlobalAlloc(GMEM_MOVEABLE, (sText.GetLength() * 2) + 2); //!< 申请内存
TCHAR* pBuf;
pBuf = (TCHAR*)GlobalLock(hClip); //!< 锁定内存
lstrcpy(pBuf, strItemText); //!< 复制文本
GlobalUnlock(hClip); //!< 解锁内存
SetClipboardData(CF_UNICODETEXT, hClip); //!< 设置剪切板内容
CloseClipboard(); //!< 关闭剪切板
}
}
PushTextToClipboard(_T("啊哈哈哈");