如何發佈爲我的下面的代碼創建的excel實例?殺死excel實例。發佈excel實例
Excel.Workbook Workbook1 = xCel.Workbooks.Open(ExcelFilePath);
Excel.Workbook Workbook2 = xCel.Workbooks.Add();
foreach (Excel.Worksheet dummysheet in Workbook1.Worksheets)
{
dummysheet.Copy(Workbook2.Worksheets[1],Type.Missing);
}
Workbook2.SaveAs(strFileCopyPath);
//代碼發佈練成實例
if (sourceWorkbook != null)
{
sourceWorkbook = null;
destinationWorkbook = null;
Thread.Sleep(500);
}
if (status.ProcessID > 0)
{
Process p = Process.GetProcessById(status.ProcessID);
p.Kill();
}
GC.Collect();
GC.WaitForPendingFinalizers();
GC.Collect();
GC.WaitForPendingFinalizers();
try { Marshal.FinalReleaseComObject(sourceWorkbook); }
catch { }
try { Marshal.FinalReleaseComObject(destinationWorkbook); }
catch { }
請檢查,如果這是正確的。
我知道這是重複的,所有我叫你們的人是檢查這是否正確。
也許看這裏的答案 - http://stackoverflow.com/q/9581689/2065121 – 2013-04-25 07:09:48
不要使用每行超過一個點時,使用互操作對象。所以像這樣:'ES.oXL.Workbooks.Open(ExcelFilePath)'不幸的是需要分成4行。這在@ TimSchmelter的評論 – Dan 2013-04-25 07:13:32