微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

SetWindowPlacement不移动某些窗口

我正在编写一个Windows 10 C#程序来保存和恢复打开的窗口的位置和大小(无论是显示还是最小化)。 以下循环几乎可以在所有的窗口上运行,但不能用于资源监视器或计算机pipe理窗口:

foreach (keyvaluePair<HWND,InfoWindow> entry in openWindows) { IntPtr hWnd = entry.Key; Rectangle rect = entry.Value.Rect; WINDOWPLACEMENT wpl = new WINDOWPLACEMENT(); if (!GetwindowPlacement(hWnd,ref wpl)) continue; wpl.rcnormalPosition = rect; SetwindowPlacement(hWnd,ref wpl); }

SetwindowPlacement函数似乎对资源监视器或计算机pipe理窗口的位置或大小没有影响。 我也尝试过使用SetwindowPos ,它对这些窗口也没有任何影响(但在我尝试的所有其他窗口上工作)。

为什么这些特定的窗口行为有所不同? 有什么替代方法来移动这些窗口?

为什么Bitblt不能工作

什么RTOS最适合在Windows上使用同一台PC?

创build一个窗口时在ntdll.dll中的SIGSEGV

Windows Azure存储的访问策略删除

在Windows上更改时钟时是否有API事件?

在IIS中,如何为特定的CGI脚本设置环境variables

LuaJIT相当于wlua.exe

理解C中数据bss段的大小命令

ComboBox中的数值

导致UnsatisfiedLinkError的32位DLL

谢谢,乔纳森和汉斯。 这是问题所在。 如果我运行我的代码提升,它适用于所有的窗口。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐