Marshal.FinalReleaseComObject(Object) メソッド

定義

参照カウントを 0 に設定して、 ランタイム呼び出し可能ラッパー (RCW) へのすべての参照を解放します。

public:
 static int FinalReleaseComObject(System::Object ^ o);
[System.Security.SecurityCritical]
public static int FinalReleaseComObject(object o);
[System.Runtime.Versioning.SupportedOSPlatform("windows")]
public static int FinalReleaseComObject(object o);
public static int FinalReleaseComObject(object o);
[<System.Security.SecurityCritical>]
static member FinalReleaseComObject : obj -> int
[<System.Runtime.Versioning.SupportedOSPlatform("windows")>]
static member FinalReleaseComObject : obj -> int
static member FinalReleaseComObject : obj -> int
Public Shared Function FinalReleaseComObject (o As Object) As Integer

パラメーター

o
Object

リリースされる RCW。

返品

o パラメーターに関連付けられている RCW の参照カウントの新しい値。リリースが成功した場合は 0 (ゼロ)。

属性

例外

o が有効な COM オブジェクトではありません。

onullです。

注釈

FinalReleaseComObject メソッドは、COM オブジェクトへのマネージド参照を解放します。 このメソッドの呼び出しは、0 (ゼロ) を返すまでループで ReleaseComObject メソッドを呼び出すことと同じです。

COM オブジェクトの参照カウントが 0 になると、COM オブジェクトは通常解放されますが、これは COM オブジェクトの実装に依存し、ランタイムの制御を超えています。 ただし、RCW は引き続き存在し、ガベージ コレクションを待機できます。

COM オブジェクトは、基になる RCW から分離された後は使用できません。 参照カウントが 0 になった後に RCW でメソッドを呼び出そうとすると、 InvalidComObjectException がスローされます。

適用対象

こちらもご覧ください