日期:2014-05-17  浏览次数:20936 次

把外部程序作为MDI窗口打开的奇怪问题
C# code


        private void tsbMicroBlog_Click(object sender, EventArgs e)
        {
            const string filePath = @"I:\work\my.exe";//notepad.exe
            Process p = Process.Start(filePath);
            p.WaitForInputIdle();
            SetParent(p.MainWindowHandle, this.Handle); 
        }

        [DllImport("user32.dll")]
        private static extern int SetParent(IntPtr hWndChild, IntPtr hWndNewParent);


以上方法可以打开系统程序为mdi,比如记事本,换成我的程序,就不行了,打开后在外面.

怎么办啊?

------解决方案--------------------
你那主程序是mdi样式的吗?我用上面的代码没有问题
------解决方案--------------------
探讨
引用:
你那主程序是mdi样式的吗?我用上面的代码没有问题


是mdi样式的.郁闷了.