Ver Mensaje Individual
  #2 (permalink)  
Antiguo 09/05/2013, 07:58
Avatar de gnzsoloyo
gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 17 años, 1 mes
Puntos: 2658
Respuesta: terminar proceso EXCEL.EXE desde vb.net

No tengo a mano lo que hice en su momento, pero la idea es:
Código vb:
Ver original
  1. 'cerramos el archivo Excel
  2.        If Not excel Is Nothing Then
  3.             ' Hago un bucle de eliminaciones de las referencias de cada objeto
  4.            ' que tiene relacion con el EXCEL
  5.            EiminaReferencias(excel.Sheets)
  6.             excel.Workbooks(1).Close(False)
  7.             EiminaReferencias(excel.Workbooks)
  8.             excel.Quit()
  9.             EiminaReferencias(excel.ActiveSheet)
  10.             EiminaReferencias(excel.ActiveWorkbook)
  11.             EiminaReferencias(excel.ActiveWindow)
  12.         End If
Y el llamado a cerrar:
Código vb:
Ver original
  1. Private Sub EiminaReferencias(ByRef Referencias As Object)
  2.         Try
  3.             'Bucle de eliminacion
  4.            Do Until _
  5.                  System.Runtime.InteropServices.Marshal.ReleaseComObject(Referencias) <= 0
  6.             Loop
  7.         Catch
  8.         Finally
  9.             Referencias = Nothing
  10.         End Try
  11.     End Sub

Cuando llegue a casa, me fijo cómo lo había resuelto exactamente yo.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)