c#在最小化为托盘时,无法监听剪切板(clipboard)复制数据时候的变化

在做C#开发中,有一个需求是写一个托盘程序用于监听剪贴板的数据复制。

我遇到的问题是在正常情况下可以监听clipboard的数据变化,但是当我缩小为托盘程序的时候,托盘程序就无法监听剪贴板的数据变化了,再次双击托盘图标,还是照样的不能

实现监听板的监听功能。

 原因分析:

    在C#开发中,我使用的是 

<code>        [DllImport("user32")]
        private extern static IntPtr SetClipboardViewer(
            IntPtr hWnd);
        [DllImport("user32")]
        private extern static int ChangeClipboardChain(
            IntPtr hWnd,
            IntPtr hWndNext);
        [DllImport("user32", CharSet = CharSet.Auto)]
        private extern static int SendMessage(
            IntPtr hWnd,
            int wMsg,
            IntPtr wParam,
            IntPtr lParam);

</code>这三个方法来实现的剪贴板的复制功能。Form默认正常显示,点击关闭按钮后,缩小为托盘程序,以便于在后台监听

<code>     protected override void WndProc(ref Message e)</code

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值