把一个应用程序里的字符串复制到另一个应用,比如把QQ的聊天记录复制到记事本保存,具体怎么做呢?
复制:
//m_str 是准备好的字符串
//下面代码直接可以用
if (OpenClipboard())
{
HGLOBAL handle;
char *pbuf;
EmptyClipboard();
handle = GlobalAlloc(GMEM_DDESHARE, m_str.GetLength() + 1);
pbuf = (char*)GlobalLock(handle);
strcpy(pbuf, LPCSTR(m_str));
GlobalUnlock(handle);
SetClipboardData(CF_TEXT, handle);
CloseClipboard();
}
粘贴:
//fromClipboard 是事先申请好的字符串,
if ( OpenClipboard() )
{
HANDLE hData = GetClipboardData(CF_TEXT);
char * buffer = (char*)GlobalLock(hData);
fromClipboard = buffer;
GlobalUnlock(hData);
CloseClipboard();
}