win32剪切板学习笔记

win32 api的剪切板操作很有趣。

①数据准备好后,向剪切板传输数据需要步骤:

HGLOBAL hGlobal;

PTSTR pGlobal;

hGlobal = ::GlobalAlloc(GHND|GMEM_SHARE,iSize);

//其中#define GHND (GMEM_MOVEABLE | GMEM_ZEROINIT)

pGlobal = (PTSTR)::GlobalLock(hGlobal);

//只有锁定时,才返回指针P

锁定之后就准备数据,将数据拷贝到pGlobal,注意拷贝之后就解锁;解锁之后再将其设置到剪切板。

::OpenClipboard(hwnd);
::EmptyClipboard();
::SetClipboardData(iFormat,hGlobal);
::CloseClipboard();

②从剪切板提取数据:

::OpenClipboard(hwnd); 
pText = (PTSTR)malloc(::GlobalSize(hGlobal));
lstrcpy(pText,pGlobal);
//while(pText++ = pGlobal++)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值