Il seguente codice lascia un Microsoft Excel processo in background in esecuzione, fino a dopo il mio programma è uscito:Perché Microsoft.Office.Interop.Excel.Application.Quit() lascia in esecuzione il processo in background?
var excelApplication = new Application();
var workbooks = excelApplication.Workbooks;
var workbook = excelApplication.Workbooks.Open(file.FullName);
workbook.Close();
excelApplication.Workbooks.Close();
excelApplication.Quit();
Marshal.ReleaseComObject(workbook);
Marshal.ReleaseComObject(workbooks);
Marshal.ReleaseComObject(excelApplication);
Perché? Cosa mi manca?
Hai provato con tutto ciò che è stato rimosso da // // stuff? La ragione principale di ciò sono alcuni riferimenti rimanenti, oggetti allocati e così via. – DrKoch
Vedi http://stackoverflow.com/questions/9962157/safely-disposing-excel-interop-objects-in-c –
Nella mia prova non c'era nulla, ma il commento. Il codice che ho postato era il codice completo/esatto. – skinnysoftware