用winform导出excel2000 引用了 Microsoft Excel 9.0 Object Library 代码为 : 
Excel.Application excel = new Excel.Application();System.Reflection.Missing miss = System.Reflection.Missing.Value;
excel.Application.Workbooks.Open("f:\\t1.xls", miss, miss, miss, miss, miss, miss, miss, miss, miss, miss, miss, miss);
然后是save  为什么excel 对象没有 hwnd 这个属性 ? 我如何获得这个excel对象的句柄 从而关掉这个进程呢 ?求解 急  多谢

解决方案 »

  1.   

    xls2003的,仅供参考     //解决Excel进程关闭不掉的问题!
            [System.Runtime.InteropServices.DllImport("User32.dll", CharSet = System.Runtime.InteropServices.CharSet.Auto)]
            public static extern int GetWindowThreadProcessId(IntPtr hwnd, out int ID);
            public static void shutExcel(Microsoft.Office.Interop.Excel.Application app) 
            {
                IntPtr t = new IntPtr(app.Hwnd);
                int k = 0;
                GetWindowThreadProcessId(t, out k);
                System.Diagnostics.Process p = System.Diagnostics.Process.GetProcessById(k);
                p.Kill();
            }
      

  2.   

    谢谢xxo1986cxm  你贴出来的代码我试过 只是你这个好像是处理03以上的excel的程序 我现在遇到的情况是excel 2000 在代码 :
    IntPtr t = new IntPtr(app.Hwnd); 
    这里 excel就是没有 Hwnd 这个属性 从而无法得到句柄 所以纳闷