我正在尝试抓取应用程序中特定 x、y 位置的屏幕截图。有什么方法可以在 Process 对象中获取正在运行的应用程序,然后获取它的维度?
类似于:
Process[] processlist = Process.GetProcesses();
foreach (Process proc in processlist)
{
Console.WriteLine("Process: {0} ID: {1}", proc.Width, proc.Height);
}
最佳答案
可能还有其他方法可以做到这一点,但这里有一个快速的高级解决方案:
- 获取主窗口句柄 ( Process.MainWindowHandle )。
- 使用 win32 API 函数获取窗口高度 GetWindowRect
这answer SO 问题显示获取窗口大小然后进行设置。
编辑: 我意识到这个答案假设该过程只有一个窗口。这个所以question/answer(s)描述获取进程的所有窗口。
关于c# - 获取正在运行的进程的维度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8446213/