Właściwy sposób na usunięcie obiektu programu Excel za pomocą VB.NET?
Mam następujący kod (uzyskany z samouczka online). Kod działa, ale podejrzewam, że sposób na usunięcie obiektu programu Excel jest nieconiepoprawny. Czy naprawdę musimy zadzwonić do GC.Collect? Lub jaki jest najlepszy sposób na pozbycie się tego obiektu programu Excel?
<code>Public Sub t1() Dim oExcel As New Excel.Application Dim oBook As Excel.Workbook = oExcel.Workbooks.Open(TextBox2.Text) 'select WorkSheet based on name Dim oWS As Excel.Worksheet = CType(oBook.Sheets("Sheet1"), Excel.Worksheet) Try oExcel.Visible = False 'now showing the cell value MessageBox.Show(oWS.Range(TextBox6.Text).Text) oBook.Close() oExcel.Quit() releaseObject(oExcel) releaseObject(oBook) releaseObject(oWS) Catch ex As Exception MsgBox("Error: " & ex.ToString, MsgBoxStyle.Critical, "Error!") End Try End Sub Private Sub releaseObject(ByVal obj As Object) Try System.Runtime.InteropServices.Marshal.ReleaseComObject(obj) obj = Nothing Catch ex As Exception obj = Nothing Finally GC.Collect() End Try End Sub </code>