C# Winform项目,关于API.SetParent问题,请各位帮忙看看。

在C# Winform项目中,有一个form窗体和一个panel控件,panel控件的大小为:956*536。
如果panel控件的位置为0,0,通过以下代码可以将SKYPE视频通话客户端嵌入到panel控件中显示(SKYPE视频通话客户端充满整个panel控件)。
IntPtr ptrSkypeWnd = API.FindWindow("SKYPE", null); \获取Skype句柄
API.SetWindowPos(ptrSkypeWnd, IntPtr.Zero, this.panel1.Location.X, this.panel1.Location.Y, 956, 536, 0);\设置Skype位置以及Skype大小(956*536,与panel控件大小一样)
API.SetParent(ptrSkypeWnd, this.panel1.Handle);\将Skype嵌入到panel控件中显示,且充满整个panel控件显示

如果panel控件的位置为改为650,0,则通过上面的代码无法将SKYPE视频通话客户端嵌入到panel控件中显示。
请问,各位帮忙看看这么修改下上面的代码,无法panel控件在什么位置,都可以将SKYPE视频通话客户端嵌入到panel控件中显示(且充满整个panel控件显示)

只修改了panel控件的位置,其它都没有变化。为什么就无法将SKYPE视频通话客户端嵌入到panel控件中显示。
这个问题困扰了好长时间,请帮忙看看。谢谢!

用spy++看下,你获得的是不是skype顶层的窗口句柄。

获取是的Skype的主窗口的句柄,但是我只修改了panel控件的Loaction位置(坐标:0,0 改成 650,0),就导致无法将SKYPE视频通话客户端主窗口界面嵌入到panel控件中显示。
是不是与容口的层级有关,应该怎么修改下面的代码呢?请再帮忙看看。

\获取主窗体Skype句柄
IntPtr ptrSkypeWnd = API.FindWindow("SKYPE", null);
\设置Skype位置以及Skype大小(956*536,与panel控件大小一样)
API.SetWindowPos(ptrSkypeWnd, IntPtr.Zero, this.panel1.Location.X, this.panel1.Location.Y, 956, 536, 0);
\将Skype嵌入到panel控件中显示,且充满整个panel控件显示
API.SetParent(ptrSkypeWnd, this.panel1.Handle);