前言:
由于项目需要模仿迅雷,在程序开启时监测粘贴板是否有复制符合条件的下载地址。于是使用C#实现了该功能,下面分享相关经验及代码。
#region 监视粘贴板
/// <summary>
/// 要处理的 WindowsSystem.Windows.Forms.Message。
/// </summary>
/// <param name="m"></param>
protected override void WndProc(ref Message m)
{
// defined in winuser.h
const int WM_DRAWCLIPBOARD = 0x308;
const int WM_CHANGECBCHAIN = 0x030D;
switch (m.Msg)
{
case WM_DRAWCLIPBOARD:
DisplayClipboardData();//原代码
SendMessage(nextClipboardViewer, m.Msg, m.WParam, m.LParam);
break;
case WM_CHANGECBCHAIN:
if (m.WParam == nextClipboardViewer)
nextClipboardViewer = m.LParam;
else
SendMessage(nextClipbo