c#监听剪贴板

5 11月

c#监听剪贴板

初始化:

[DllImport(“user32.dll”)]
public static extern bool AddClipboardFormatListener(IntPtr hwnd);

[DllImport(“user32.dll”)]
public static extern bool RemoveClipboardFormatListener(IntPtr hwnd);

private static int WM_CLIPBOARDUPDATE = 0x031D;

注册监听:

AddClipboardFormatListener(this.Handle);

销毁监听:RemoveClipboardFormatListener(this.Handle);

事件:

protected override void DefWndProc(ref Message m)
{
if (m.Msg == WM_CLIPBOARDUPDATE)
{
if (Clipboard.ContainsText())
{
Console.WriteLine();
}
//显示剪贴板中的图片信息
else if (Clipboard.ContainsImage())
{
Console.WriteLine(“图片”);
//Clipboard.GetImage();
//赋值给imgbox 我这里没有
// pictureBox1.Update();
}
else {

Console.WriteLine(“其他待处理的文件类型”);
}
}
else
{
base.DefWndProc(ref m);
}
}

Bycat

发表评论

电子邮件地址不会被公开。 必填项已用*标注