You can do this by PInvoking SetParent()
:
[DllImport("user32.dll")]
static extern IntPtr SetParent(IntPtr hWndChild, IntPtr hWndNewParent);
First you need to start the third party application within your application:
var clientApplication = Process.Start("PATH_TO_YOUR_EXECUTABLE");
then set its MainWindowHandle
to your main window handle:
SetParent(clientApplication.MainWindowHandle, YourMainWindowOrAContainerControl.Handle);
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…