使用.NET(C#)获取所有打开的窗口的位置和大小

有没有办法检测和存储所有打开的窗口的位置和大小,以及它们的状态(最小化,最大化等)

我从来没有开发任何以这种方式从实际操作系统获取信息的东西.是否需要调用Windows API并涉及非托管代码

如果这不清楚请注意,我会尽量详细说明.

解决方法

调用 EnumWindows循环遍历所有窗口,然后调用 GetWindowPlacement获取信息.它将需要PInvoke到Windows API,但并不困难,只需在 PInvoke网站上找到所有信息.

Btw,这是一个codeproject文章,找到一个特定的窗口和获取/设置它的显示状态,可能是一个很好的起点(代码在VB.Net,但你可能只是使用一个在线VB.Net C#转换器,如果你不知道VB.Net)

相关文章

在要实现单例模式的类当中添加如下代码:实例化的时候:frmC...
1、如果制作圆角窗体,窗体先继承DOTNETBAR的:public parti...
根据网上资料,自己很粗略的实现了一个winform搜索提示,但是...
近期在做DSOFramer这个控件,打算自己弄一个自定义控件来封装...
今天玩了一把WMI,查询了一下电脑的硬件信息,感觉很多代码都...
最近在研究WinWordControl这个控件,因为上级要求在系统里,...