参照アカウント方式では、参照された側が死活管理を行っています。
参照する際に、「参照します」と通知し、参照が終了した際に「参照が終わる」と送ります。参照カウントが0になったときに終了処理を実行します。「オブジェクトを参照する」という通知は、.NETにより自動的に行われます。
参照を減らすという通知がMarshal.ReleaseComObjectです。
Application app = null; try { app = new Application(); app.DisplayAlerts = false; Workbook book = null; try { book = app.Workbooks.Add(); ((Range)(Worksheet)book.Worksheets[1]).Cells[1, 1].Value = book.SaveAs(Filename: @"c:¥temp¥abc.xlsx"); book.Close(SaveChanges: false); app.Quit(); MessageBox.Show("finish"); } finally { if (book != null) Marshal.ReleaseComObject(book); } } finally { if ( app != null )Marshal.ReleaseComObject(app); }