有没有.NET Framework类库方法可以得到一个进程的窗口位置、大小等信息呢?解决思路

有没有.NET Framework类库方法可以得到一个进程的窗口位置、大小等信息呢?
我在尝试写一个外挂 = =!
然后,在知道目标进程名称的情况下,.NET有一个Process::GetProcessByName方法可以直接得到目标进程句柄,不过如何通过这个句柄来获得这个进程的窗口的一些具体信息呢?我觉得如果只是获取窗口大小、位置这样的信息应该不会构成非法访问吧,所以应该有什么函数可以用才对啊,不过暂时还没找到,求教。
------解决方案--------------------
可以使用API GetWindowRect GetWindowPos。
------解决方案--------------------
事实上,任何代码,最终都是和api交互的,包括winforms类库本身。