c++实现修改剪贴板
答案:2 悬赏:0 手机版
解决时间 2021-12-01 23:43
- 提问者网友:沉默菋噵
- 2021-12-01 17:38
c++实现修改剪贴板
最佳答案
- 五星知识达人网友:我住北渡口
- 2021-12-01 17:55
if (!OpenClipboard(m_hParentWnd))
return;
tstring selStr; // 注意 selStr 是你要复制到剪切板的字符串, 这里只做 声明用
int nCount = selStr.size();
HGLOBAL hGlobalMem = GlobalAlloc(GMEM_MOVEABLE, (nCount+1)*sizeof(TCHAR));
if (!hGlobalMem)
{
CloseClipboard();
return;
}
EmptyClipboard();
LPTSTR lpszStr= (LPTSTR)GlobalLock(hGlobalMem);
memcpy(lpszStr, selStr.c_str(), nCount* sizeof(TCHAR));
lpszStr[nCount] = (TCHAR) 0;
GlobalUnlock(hGlobalMem);
#ifdef UNICODE
SetClipboardData(CF_UNICODETEXT, hGlobalMem);
#else
SetClipboardData(CF_TEXT, hGlobalMem);
#endif
CloseClipboard();
return;
tstring selStr; // 注意 selStr 是你要复制到剪切板的字符串, 这里只做 声明用
int nCount = selStr.size();
HGLOBAL hGlobalMem = GlobalAlloc(GMEM_MOVEABLE, (nCount+1)*sizeof(TCHAR));
if (!hGlobalMem)
{
CloseClipboard();
return;
}
EmptyClipboard();
LPTSTR lpszStr= (LPTSTR)GlobalLock(hGlobalMem);
memcpy(lpszStr, selStr.c_str(), nCount* sizeof(TCHAR));
lpszStr[nCount] = (TCHAR) 0;
GlobalUnlock(hGlobalMem);
#ifdef UNICODE
SetClipboardData(CF_UNICODETEXT, hGlobalMem);
#else
SetClipboardData(CF_TEXT, hGlobalMem);
#endif
CloseClipboard();
全部回答
- 1楼网友:你哪知我潦倒为你
- 2021-12-01 18:52
剪贴板查看器——Clipbrd(C:\\windows\\system32\\Clipbrd.exe) windows剪贴板为剪贴板中的内容可以完全改写,但不能作修改。例如 平时的 Ctrl-C (复制)
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯