Funcion para destruir objetos COM (Excel, Word, etc) usados para interoperativdad entre aplicaciones y Office:
Código vb.net:
Ver originalImports Microsoft.Win32
Module Module1
Friend Function CerrarCOM(ByRef oComObject As Object) As Boolean
Try
If oComObject Is Nothing = False Then
System.Runtime.InteropServices.Marshal.ReleaseComObject(oComObject)
End If
Return True
Catch ex As Exception
Return False
End Try
End Function
End Module
Se pasa el objeto creado como parámetro a la función antes de liberarlo. De esa forma al errar el objeto creado la instancia de la aplicación Office usada desaparece de memoria.