H
harshu4u
Hello All,
We are generating excel sheets using COM Interop. When the sheet
generation is successful, it removes the EXCEL.EXE from the task
manager. However, if we have any error in the application, the
EXCEL.EXE remains in memory (can see it in task manager). What are we
doing wrong? Any inupt will be highly appreciated.
Here's the cleanup code:
finally
{
if (module != null)
Marshal.ReleaseComObject(module);
if (range != null)
Marshal.ReleaseComObject(range);
if (color != null)
Marshal.ReleaseComObject(color);
if (sheet1 != null)
Marshal.ReleaseComObject(sheet1);
if (sheet2 != null)
Marshal.ReleaseComObject(sheet2);
if (sheet3 != null)
Marshal.ReleaseComObject(sheet3);
if (workbook != null)
Marshal.ReleaseComObject
(workbook);
if (excelApp != null)
Marshal.ReleaseComObject(excelApp);
module = null;
range = null;
color = null;
sheet1 = null;
sheet2 = null;
sheet3 = null;
workbook = null;
excelApp = null;
}
Thanks,
Harshu
We are generating excel sheets using COM Interop. When the sheet
generation is successful, it removes the EXCEL.EXE from the task
manager. However, if we have any error in the application, the
EXCEL.EXE remains in memory (can see it in task manager). What are we
doing wrong? Any inupt will be highly appreciated.
Here's the cleanup code:
finally
{
if (module != null)
Marshal.ReleaseComObject(module);
if (range != null)
Marshal.ReleaseComObject(range);
if (color != null)
Marshal.ReleaseComObject(color);
if (sheet1 != null)
Marshal.ReleaseComObject(sheet1);
if (sheet2 != null)
Marshal.ReleaseComObject(sheet2);
if (sheet3 != null)
Marshal.ReleaseComObject(sheet3);
if (workbook != null)
Marshal.ReleaseComObject
(workbook);
if (excelApp != null)
Marshal.ReleaseComObject(excelApp);
module = null;
range = null;
color = null;
sheet1 = null;
sheet2 = null;
sheet3 = null;
workbook = null;
excelApp = null;
}
Thanks,
Harshu