Excel实例未使用Interop发布

时间:2018-02-05 15:16:09

标签: .net excel vb.net interop excel-interop

我已经阅读了所有here (以及其他一些类似的问题)以释放我的COM对象,但我仍有问题。

我在循环中创建,填充和保存Excel文件,如下所示:

Private Sub CloseExcel(ByRef ObjExcel As Object)

    Try       
        Runtime.InteropServices.Marshal.ReleaseComObject(ObjExcel)
        ObjExcel = Nothing
    Catch ex As Exception
        ObjExcel = Nothing
    Finally
        Do
            GC.Collect()
            GC.WaitForPendingFinalizers()
        Loop While Runtime.InteropServices.Marshal.AreComObjectsAvailableForCleanup
    End Try

End Sub

现在的问题是,当我调用CloseExcel时, 第一个 Excel实例永远不会被释放:

{{1}}

所有其他实例都正确关闭,但 第一个 Excel实例只有在整个应用程序关闭时才会关闭。有什么我做错了吗?

0 个答案:

没有答案