![]() |
multiple instances of excel process gets created in the task manager
Hello
I am sharing the code to open an excel workbook, but when i am executing the code after MESSAGE BOX 2, multiple instances of excel process gets created in the task manager and the excel application hangs. kindly help MessageBox.Show("1"); Excel.Application excelApp = new Excel.ApplicationClass (); // Creates a new Excel Application //excelApp.Visible = false; // Makes Excel visible to the user. // The following line adds a new workbook //Excel.Workbook newWorkbook = excelApp.Workbooks.Add (Microsoft.Office.Interop.Excel.XlWBATemplate.xlWB ATWorksheet); // The following code opens an existing workbook MessageBox.Show("2"); Excel.Workbook _book; string workbookPath = @"D:\Window Crawler\GenPatchReport \Test Data\Data.xls"; // Add your own path here _book = OpenExcelWorkbook(workbookPath); //Excel.Workbook excelWorkbook = excelApp.Workbooks.Open (workbookPath, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing); MessageBox.Show("3"); Excel.Sheets excelSheets = _book.Worksheets; string currentSheet = "Sheet1"; Excel.Worksheet excelWorksheet =(Excel.Worksheet) excelSheets.get_Item(currentSheet); MessageBox.Show("4"); Excel.Range excelCell =(Excel.Range) excelWorksheet.get_Range("A1", "A13"); excelCell.Delete(Type.Missing); NAR(excelWorksheet); MessageBox.Show("5"); protected Excel.Workbook OpenExcelWorkbook(string fileName) { try { if (ExcelApp != null) { Excel.Workbook wb; //wb = ExcelApp.Workbooks.Open(fileName, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing); wb = ExcelApp.Workbooks.Open(fileName, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing); if (wb != null) { _sheets = wb.Worksheets; } return wb; } return null; } catch (Exception ex) { MessageBox.Show(ex.Message.ToString()); return null; } } private void NAR(object o) { try { System.Runtime.InteropServices.Marshal.ReleaseComO bject (o); } catch { } finally { o = null; } } Thanks Shantanu |
All times are GMT +1. The time now is 08:34 AM. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
ExcelBanter.com