Marshal.ReleaseComObject メソッドとは? わかりやすく解説

Weblio 辞書 > コンピュータ > .NET Framework クラス ライブラリ リファレンス > Marshal.ReleaseComObject メソッドの意味・解説 

Marshal.ReleaseComObject メソッド

提供されランタイム呼び出し可能ラッパー参照カウントデクリメントます。

名前空間: System.Runtime.InteropServices
アセンブリ: mscorlib (mscorlib.dll 内)
構文構文

Public Shared Function ReleaseComObject
 ( _
    o As Object _
) As Integer
Dim o As Object
Dim returnValue As Integer

returnValue = Marshal.ReleaseComObject(o)
public static int ReleaseComObject
 (
    Object o
)
public:
static int ReleaseComObject (
    Object^ o
)
public static int ReleaseComObject
 (
    Object o
)
public static function ReleaseComObject
 (
    o : Object
) : int

パラメータ

o

解放する COM オブジェクト

戻り値
o関連付けられているランタイム呼び出し可能ラッパー参照カウント新しい値。この値は通常 0 となりますランタイム呼び出し可能ラッパーは、ラップされた COM オブジェクトへの参照を、それを呼び出しているマネージ クライアントの数に関係なく、1 つしか保持しないためです。

例外例外
例外種類条件

ArgumentException

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

または

onull 参照 (Visual Basic では Nothing) です。

解説解説

COM インターフェイス ポインタは、共通言語ランタイム入力するたびに、ランタイム呼び出し可能ラッパーラップされます。このラッパー機能の詳細については、「ランタイム呼び出し可能ラッパー」を参照してください

このメソッドは、マネージ コード使用する COM オブジェクト有効期間明示的に制御するために使用しますリソースへの参照保持している、基になる COM オブジェクト適切なタイミング解放する必要がある場合、またはオブジェクト特定の順序解放する必要がある場合は、このメソッド使用します

ランタイム呼び出し可能ラッパーは、COM インターフェイス ポインタ割り当てられるたびにインクリメントされる参照カウント保持してます。ReleaseComObject メソッドは、ランタイム呼び出し可能ラッパー参照カウントデクリメントます。参照カウントゼロ到達すると、ランタイムはアンマネージ COM オブジェクトすべての参照解放しこの後オブジェクト使用しようとすると System.NullReferenceException をスローます。同じ COM インターフェイスアンマネージ コードからマネージ コード複数渡され場合ラッパー参照カウント毎回インクリメントされ、ReleaseComObject呼び出すと、残り参照の数が返されます。

メモメモ

ランタイム呼び出し可能ラッパーと元の COM オブジェクト確実に解放されるようにするには、ループ作成し返される参照カウントが 0 になるまで、ループの中でこのメソッド呼び出します。

メモメモ

このメソッドは SecurityAction.LinkDemand を使用して信頼関係のないコードからの呼び出し防ぎます。SecurityPermissionAttribute.UnmanagedCode アクセス許可は、直前呼び出し元にのみ要求されます。信頼性一部しか確認されていないコードから呼び出すことができるコード場合ユーザー入力検証せずに Marshal クラスに渡すことは避けてくださいLinkDemand メンバ使用に関する重要な制約事項については、「Demand と LinkDemand」を参照してください

.NET Framework のセキュリティ.NET Frameworkセキュリティ
プラットフォームプラットフォーム
バージョン情報バージョン情報
参照参照
関連項目
Marshal クラス
Marshal メンバ
System.Runtime.InteropServices 名前空間
FinalReleaseComObject
NullReferenceException


このページでは「.NET Framework クラス ライブラリ リファレンス」からMarshal.ReleaseComObject メソッドを検索した結果を表示しています。
Weblioに収録されているすべての辞書からMarshal.ReleaseComObject メソッドを検索する場合は、下記のリンクをクリックしてください。
 全ての辞書からMarshal.ReleaseComObject メソッド を検索

英和和英テキスト翻訳>> Weblio翻訳
英語⇒日本語日本語⇒英語
  

辞書ショートカット

すべての辞書の索引

「Marshal.ReleaseComObject メソッド」の関連用語

Marshal.ReleaseComObject メソッドのお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



Marshal.ReleaseComObject メソッドのページの著作権
Weblio 辞書 情報提供元は 参加元一覧 にて確認できます。

   
日本マイクロソフト株式会社日本マイクロソフト株式会社
© 2025 Microsoft.All rights reserved.

©2025 GRAS Group, Inc.RSS