tagCANDY CGI VBレスキュー(花ちゃん) の Visual Basic 2010 用 掲示板(VB.NET 掲示板)
VBレスキュー(花ちゃん) の Visual Basic 2010 用 掲示板(VB.NET 掲示板)
[ツリー表示へ]  [ワード検索]  [Home]

タイトル Re^7: Webbrowser.Documentから...
投稿日: 2005/11/07(Mon) 14:17
投稿者YAS
[OSのVer]:Windows    [VBのVer]:VB.NET  
みなさんこんにちは。
随分前のスレッドをむしかえして申し訳ありません。

COMオブジェクトを利用するときには解放処理に気を遣わなければ
ならないということがわかりました。

VB2005からはUsingが使えるということで,COMオブジェクトをラップ
してみました。問題なく動作しているように見えるのですが,COMが
本当に解放されているのか,リークしていないのか確かめる方法が
よくわかりません。
いかがなものでしょうか?

    Class clsCOMObject
        Implements IDisposable

        Public COMObject As Object

        Sub New(ByVal COMObj As Object)
            COMObject = COMObj
        End Sub

        Private disposed As Boolean = False

        Private Overloads Sub Dispose(ByVal disposing As Boolean)
            If Not Me.disposed Then
                If disposing Then
                End If
                If Not COMObject Is Nothing AndAlso Marshal.IsComObject(COMObject) Then
                    Marshal.ReleaseComObject(COMObject)
                End If
            End If
            Me.disposed = True
        End Sub

        Public Overloads Sub Dispose() Implements IDisposable.Dispose
            Dispose(True)
            GC.SuppressFinalize(Me)
        End Sub

        Protected Overrides Sub Finalize()
            Dispose(False)
            MyBase.Finalize()
        End Sub

    End Class

- 関連一覧ツリー をクリックするとツリー全体を一括表示します)

古いスレッドにレスはつけられません。