我正试图直接捕捉窗口大小的变化(在发生这种情况之前或之时),以设置其他应用程序以免改变其大小。
如果我使用WinEvent挂钩(感谢pinvoke),则只能在用户手动尝试调整它们的大小时收到EVENT_SYSTEM_MOVESIZESTART。如果程序尝试自行执行操作(可能通过SetWindowPos),则不会触发。
我的希望是加入WM_WINDOWPOSCHANGING并拒绝它。
pwp->flags |= SWP_NOSIZE;
return FORWARD_WM_WINDOWPOSCHANGING(hwnd, pwp, DefWindowProc);
如果可以挂WM_WINDOWPOSCHANGING,这几乎就是我会做的。