我创建了一个简单的 WPF 应用程序,我在其中打开 UltraVNC 查看器。UlraVNC 查看器的第一个屏幕在按钮单击时打开,我输入要访问的目标系统的 IP。单击Connect后,控件将退出 WPF 窗口,并且 UltraVNC Viewer 的子窗口将在外部打开。
[DllImport("user32.dll")]
static extern IntPtr SetParent(IntPtr hwc, IntPtr hwp);
private void Button_Click(object sender, RoutedEventArgs e)
{
Process vncProcess = Process.Start(@"C:\Program Files (x86)\UltraVNC\vncviewer.exe");
Thread.Sleep(500);
vncProcess.WaitForInputIdle();
SetParent(vncProcess.MainWindowHandle, new WindowInteropHelper(this).Handle);
}
如何在我的 WPF 应用程序中完全控制 UltraVNC 的所有子窗口?我不希望任何子窗口的句柄离开 WPF 窗口。