private void InitCallback() { MouseCallback = (code, wparam, lparam) => { if ((int)wparam == MouseUtil.WM_MOUSEMOVE || (int)wparam == MouseUtil.WM_NCMOUSEMOVE) { var mhs = (MouseUtil.MouseHookStruct)Marshal.PtrToStructure(lparam, typeof(MouseUtil.MouseHookStruct)); x = mhs.pt.x; y = mhs.pt.y; MouseUtil.InvalidateMouseWindow(x, y); label1.Text = string.Format("x : {0} y : {1}", mhs.pt.x, mhs.pt.y); } return(IntPtr.Zero); }; IPCCallback = (lpString, dwPid) => { if (dwPid != 0 && dwPid != OutputUtil.GetCurrentProcessId() && dwPid == OutputUtil.GetMouseWindowPid(x, y)) { string str = Marshal.PtrToStringAuto(lpString); syncContext.Post((o) => { this.label2.Text = o.ToString(); }, str); } return(0); }; }
private void InitCallback() { MouseCallback = (code, wparam, lparam) => { if ((int)wparam == MouseUtil.WM_MOUSEMOVE || (int)wparam == MouseUtil.WM_NCMOUSEMOVE) { var mhs = (MouseUtil.MouseHookStruct)Marshal.PtrToStructure(lparam, typeof(MouseUtil.MouseHookStruct)); x = mhs.pt.x; y = mhs.pt.y; MouseUtil.InvalidateMouseWindow(x, y); label1.Text = string.Format("x : {0} y : {1}", mhs.pt.x, mhs.pt.y); } return IntPtr.Zero; }; IPCCallback = (lpString, dwPid) => { if (dwPid != 0 && dwPid != OutputUtil.GetCurrentProcessId() && dwPid == OutputUtil.GetMouseWindowPid(x, y)) { string str = Marshal.PtrToStringAuto(lpString); syncContext.Post((o) => { this.label2.Text = o.ToString(); }, str); } return 0; }; }