auto_clipboard
黄山松发表于博客园:http://www.cnblogs.com/tomview/p/6137179.html
#ifndef __HSS_AUTO_CLIPBOARD_HSS__
#define __HSS_AUTO_CLIPBOARD_HSS__
/*********************************************************************************\
* 2012-10-30
自动复制内容到剪贴板
用法:
复制:
auto_clipboard a(hwnd, psz);
粘贴:
CString sz;
auto_clipboard::GetText(sz);
\***************************************************************************/
class auto_clipboard
{
public:
auto_clipboard(HWND hwnd, LPCTSTR pszText)
{
if (::OpenClipboard(hwnd))
{
::EmptyClipboard();
HANDLE hMem = ::GlobalAlloc(GMEM_MOVEABLE | GMEM_DDESHARE , strlen(pszText)+1);
if (hMem)
{
char* pszMem = (char*)(::GlobalLock(hMem));
if (pszMem)
{
strcpy(pszMem, pszText);
::GlobalUnlock(hMem);
SetClipboardData(CF_TEXT, hMem);
}
::GlobalFree(hMem);
}
CloseClipboard();
}
}
~auto_clipboard()
{
}
/*************************************************************************\
* auto_clipboard : 2014年12月2日
* CString sz :
\**************************************************************************/
#ifdef __AFX_H__
static BOOL GetText(CString& sz)
{
if (!OpenClipboard(0))
return FALSE;
HANDLE hClip = GetClipboardData(CF_TEXT);
if (hClip == 0)
{
CloseClipboard();
return FALSE;
}
LPVOID pRes = (LPVOID)GlobalLock(hClip);
if (pRes == 0)
{
CloseClipboard();
return FALSE;
}
sz = (char*)pRes;
GlobalUnlock(hClip);
CloseClipboard();
return TRUE;
}
#endif
};
#endif
auto_clipboard的更多相关文章
随机推荐
- JavaScript权威设计--JavaScript函数(简要学习笔记十)
1.函数命名规范 函数命名通常以动词为前缀的词组.通常第一个字符小写.当包含多个单词时,一种约定是将单词以下划线分割,就像"like_Zqz()". 还有一种就是"lik ...
- 安卓Design包之TabLayout控件的简单使用
Google在2015的IO大会上,给我们带来了更加详细的Material Design设计规范,同时,也给我们带来了全新的Android Design Support Library,在这个supp ...
- spring整合mybatis使用<context:property-placeholder>时的坑
背景 最近项目要上线,需要开发一个数据迁移程序.程序的主要功能就是将一个数据库里的数据,查询出来经过一系列处理后导入另一个数据库.考虑到开发的方便快捷.自然想到用spring和mybatis整合一下. ...
- CSS知识总结(二)
CSS的选择符分成: 1. 通配选择符 2. 元素选择符 3. 群组选择符 4. 关系选择符 5. id及class选择符 6. 伪类选择符 7. 属性选择符 8. 伪对象选择符 1.通配选择符(*) ...
- Monkey Patch/Monkey Testing/Duck Typing/Duck Test
Monkey Patch Monkey Testing Duck Typing Duck Test
- shiro实现session共享
session共享:在多应用系统中,如果使用了负载均衡,用户的请求会被分发到不同的应用中,A应用中的session数据在B应用中是获取不到的,就会带来共享的问题. 假设:用户第一次访问,连接的A服务器 ...
- 利用scp传输文件
在linux下一般用scp这个命令来通过ssh传输文件. 从服务器上下载文件 scp username@servername:/path/filename /var/www/local_dir(本地目 ...
- Linux Cmd Tool 系列之—alias
The alias cmd list your current aliases. For example : alias Use alias to shorten a long cmd in curr ...
- Nginx配置文件nginx.conf中文详解(转)
######Nginx配置文件nginx.conf中文详解##### #定义Nginx运行的用户和用户组 user www www; #nginx进程数,建议设置为等于CPU总核心数. worker_ ...
- Windows消息机制
Windows的消息系统是由3个部分组成的: · 消息队列.Windows能够为所有的应用程序维护一个消息队列.应用程序必须从消息队列中获取消息,然后分派给某个窗口.· 消息循环.通过这个循环机制应用 ...