所以,我有一个应用程序,它可以自动与另一个应用程序一起运行 例如:
问题是应用程序B不是我的,我想在那里自动点击按钮。我知道按钮1距离右下角20px,但我不知道应用程序B的窗口的高度和宽度。是否可以在C#中获取该窗口的宽度和高度?
答案 0 :(得分:1)
导入API。
[StructLayout(LayoutKind.Sequential)]
private struct RECT
{
public int Left;
public int Top;
public int Right;
public int Bottom;
}
[DllImport("user32.dll", SetLastError = true)]
public static extern IntPtr FindWindow(string lpClassName, string lpWindowName);
[DllImport("user32.dll")]
public static extern IntPtr GetWindowRect(IntPtr hWnd,ref RECT rect);
然后在你的功能中你可以:
IntPtr hWnd;
hWnd = GetWindows.FindWindow(null, "Application Title");
User32.RECT windowRect = new User32.RECT();
User32.GetWindowRect(hWnd,ref windowRect);
int width = windowRect.right - windowRect.left;
int height = windowRect.bottom - windowRect.top;