是通過如下方法監控的剪貼板:
[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);
原本可以監控的,可是再通過這樣最小化后:
this.WindowState = FormWindowState.Minimized;
結果就無法監控剪貼板了,
甚至整個 protected override void DefWndProc(ref Message m){ }方法都無效了。
這個是怎么回事啊?
uj5u.com熱心網友回復:
在Form中,我們如果改變它的一些屬性,會導致該Form對應的句柄(Handle)值發生改變。這個時候,如果與之相關的方法沒有進行及時更新Handle就會導致無法接受到復制事件。uj5u.com熱心網友回復:
觀察下handle是否發生了變化轉載請註明出處,本文鏈接:https://www.uj5u.com/net/146916.html
標籤:C#
