16,548
社区成员




if(this->OpenClipboard()) //如果能打开剪贴板
{
::EmptyClipboard(); //清空剪贴板,使该窗口成为剪贴板的拥有者
CString str;
GetDlgItemTextW(IDC_EDIT_SEND,str); //获取发送框中的文本
//下面打算将文本放置到系统剪贴板中
HGLOBAL hClip;
hClip=::GlobalAlloc(GMEM_MOVEABLE,str.GetLength()*2+2); //如果是文本数据,分配内存时必须多分配一个字符
TCHAR *pBuf;
pBuf=(TCHAR *)::GlobalLock(hClip);
lstrcpy(pBuf,str);
::GlobalUnlock(hClip);
::SetClipboardData(CF_TEXT,hClip);
::CloseClipboard();
}
if(this->OpenClipboard()) //如果能打开剪贴板
{
::EmptyClipboard(); //清空剪贴板,使该窗口成为剪贴板的拥有者
CString str;
GetDlgItemTextW(IDC_EDIT_SEND,str);
HGLOBAL hClip;
hClip=::GlobalAlloc(GMEM_MOVEABLE,(str.GetLength()+1)*2); //如果是文本数据,分配内存时必须多分配一个字符
TCHAR *pBuf;
pBuf=(TCHAR *)::GlobalLock(hClip);
//lstrcpy(pBuf,str);
wcscpy_s(pBuf,str.GetLength()+1,str.GetBuffer()); //改了之后依旧不行呀????
str.ReleaseBuffer();
::GlobalUnlock(hClip);
::SetClipboardData(CF_TEXT,hClip);
::CloseClipboard();
}