SetParent не работает InvalidOperationException
Я недавно пытался работать над старым проектом, который у меня был, я не могу заставить setparent работать, он продолжает выдавать ошибку "InvalidOperationException", вот код:
private void button1_Click(object sender, EventArgs e)
{
Process proc = Process.Start("calc.exe");
proc.WaitForInputIdle();
Thread.Sleep(500);
SetParent(proc.MainWindowHandle, this.Handle);
}
Он вызывается с помощью кнопки, и когда он пытается установить родителя, он выдает ошибку. Все, что я могу найти в Интернете, говорит о том, что мой код верен.
1 ответ
Этот код ниже работает нормально на моей стороне (пожалуйста, проверьте объявление вашей функции Windows API SetParent
):
[DllImport("user32.dll", SetLastError = true)]
private static extern IntPtr SetParent(IntPtr hWndChild, IntPtr hWndNewParent);
private void button1_Click(object sender, EventArgs e)
{
Process proc = Process.Start("calc.exe");
proc.WaitForInputIdle();
Thread.Sleep(500);
SetParent(proc.MainWindowHandle, this.Handle);
}
Результат:
Надеюсь, это поможет:)