C#excelclosures过程还剩下
我打开并closures了这样的mC#excel书
Microsoft.Office.Interop.Excel.Application oXL = null; Microsoft.Office.Interop.Excel.Workbook excelWorkbook = null; try { excelWorkbook = oXL.Workbooks.Open(MyFile, 0, false, 5, "", "", false, Microsoft.Office.Interop.Excel.XlPlatform.xlWindows, "", true, false, 0, true, false, false); ..... .... .... excelWorkbook.Save(); excelWorkbook.Close(Microsoft.Office.Interop.Excel.XlSaveAction.xlSaveChanges, Type.Missing, Type.Missing); oXL.Quit(); excelWorkbook = null; oXL = null; } catch { }
但是在任务列表中还有stil lan EXCEL.EXE进程运行,为什么呢? 当我完成后,我怎样“杀”一切有关excel的东西? 用“.Quit()”是不够的,并把引用放在null?
或者有没有被解除引用的C#堆中留下了一些神奇的引用?
/斯特凡
尝试这个..
oXL.quit()
//注意,oXL仍指向excel
System.Runtime.InteropServices.Marshal.ReleaseComObject(oXL) System.Runtime.InteropServices.Marshal.FinalReleaseComObject(oXL) oXL = Nothing