just to ease your mind a little bit with win API its really not complicated, the worst part is thinking about how many handles are running in windows which could be millions, dont think like that, as long as you have a handle your good to go.
this is a small app that starts a program inside my own program look how easy it is.
dont forget the declarations
Declare Auto Function SetParent Lib "user32.dll" (ByVal hWndChild As IntPtr, ByVal hWndNewParent As IntPtr) As Integer
Declare Auto Function SendMessage Lib "user32.dll" (ByVal hWnd As IntPtr, ByVal Msg As Integer, ByVal wParam As Integer, ByVal lParam As Integer) As Integer
Private Const WM_SYSCOMMAND As Integer = 274
Private Const SC_MAXIMIZE As Integer = 61488
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
proc = Process.Start("IExplore.exe", "http:\\
www.google.com -new")
System.Threading.Thread.Sleep(1000)
proc.WaitForInputIdle()
SetParent(proc.MainWindowHandle, Me.TableLayoutPanel1..Handle)
SendMessage(proc.MainWindowHandle, WM_SYSCOMMAND, SC_MAXIMIZE, 0)
End Sub
just google sendmessage api to get a list of the commands that you can send