VB.NET实现Windows剪贴板监视器

本文介绍了如何使用VB.NET实现Windows剪贴板的监视功能,重点讲解了SetClipboardViewer API的使用以及如何处理WM_DRAWCLIPBOARD消息,通过重写WndProc函数监听剪贴板内容的变化。
摘要由CSDN通过智能技术生成

Windows剪贴板

剪贴板(ClipBoard)是内存中的一块区域,是Windows内置的一个非常有用的工具,通过小小的剪贴板,架起了一座彩桥,使得在各种应用程序之间,传递和共享信息成为可能。然而美中不足的是,剪贴板只能保留一份数据,每当新的数据传入,旧的便会被覆盖。

相关Windows API

最主要的是SetClipboardViewer,每当剪贴板的内容发生变化时,该函数通过WM_DRAWCLIPBOARD消息将窗口加入被通知的窗口链。
由于剪贴板观察器链中下一个窗口的句柄还没有返回,应用程序不应传递它在SetClipboardViewer
调用过程中接收到的WM_DRAWCLIPBOARD消息。
如果要从剪贴板观察器链中去掉窗口链,则应用程序必须调用ChangeClipboard成员函数。

Declare Auto Function SetClipboardViewer Lib "user32" (ByVal HWnd As IntPtr) As IntPtr
Declare Auto Function ChangeClipboardChain Lib "user32" (ByVal HWnd As IntPtr, ByVal HWndNext As IntPtr) As Boolean
Declare Auto Function SendMessage Lib "User32" (ByVal HWnd As IntPtr, ByVal Msg As Integer, ByVal wParam As IntPtr, ByVal lParam As IntPtr) As Long

wndproc函数

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值