我希望我的程序使另一个进程的主要形式具有最小窗口大小。
我有正确的窗口手柄,并尝试设置窗口的大小,如果它小于我想要的大小, 但这种方式完全闪烁。
MoveWindow()让它闪现太多, SetWindowPos()以及
using System;
using System.Diagnostics;
using System.Windows.Forms;
namespace myProgram
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
foreach (var process in Process.GetProcessesByName("myTarget"))
{
var handle = process.MainWindowHandle; // gets all instances of the target game
// Something like SetWindowProperty(handle, MinimumSize, new Size(500, 500)) would be perfect
// or: setting the size with
// MoveWindow() - flashes horribly
// SetWindowPos() - flashes horribly aswell
// something else?
}
}
}
}
我想要一个更顺畅,不会闪现或看起来很糟糕的解决方案。
目标程序是一款具有相当大窗口形式的游戏。
答案 0 :(得分:0)
您正在寻找MoveWindow。看起来像:
[DllImport("user32.dll", SetLastError = true)]
internal static extern bool MoveWindow(IntPtr hWnd, int X, int Y, int nWidth, int nHeight, bool rePaint);
hWnd是您要调整大小的应用程序。