解决方案 »

  1.   

    Form1 中弹出From2Form2  frm = new Form2();
    frm.Parent = From1;
    frm.Show();
    form2 中,
    Form1 frm1 = this.Parent as Form1;
    frm1.Text;
      

  2.   

    注,Form1与Form2程式是没法变更的,现在要另外开发一个程式去获取Form1的名字
      

  3.   

    http://blog.163.com/zowking@126/blog/static/3626629420105803226140/ 试试
      

  4.   

    Process.MainWindowTitle可以获得进程主窗体的标题,不知道有没有用。
      

  5.   

    假如取得的窗体进程对象为process
    则主窗体句柄为[DllImport("user32.dll")]
    IntPtr GetWindow(IntPtr hWnd, uint uCmd);[DllImport("user32.dll", CharSet = CharSet.Auto)]
    public static extern int GetWindowText(IntPtr hWnd, StringBuilder title, int nMaxCount);/// <summary>
            /// 获取窗口的标题
            /// </summary>
            /// <param name="hWnd">窗口句柄</param>
            /// <returns></returns>
            public static string GetWindowTitle(IntPtr hWnd)
            {
                var title = new StringBuilder(255);
                GetWindowText(hWnd, title, 255);
                return title.ToString();
            }var mainHwnd = process.MainWindowHandle;
    通过API取得主窗体标题 GetWindowTitle(mainHwnd );
    也可以直接用Process.MainWindowTitle属性然后再取其子窗口
    http://msdn.microsoft.com/en-us/library/ms633515(VS.85).aspx
    var childHwnd = GetWindow(mainHwnd, 5);
    if(childHwnd != IntPtr.Zero)
    {
              GetWindowTitle(childHwnd);
    }