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

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

Marshal.GetIDispatchForObject メソッド

マネージ オブジェクトから IDispatch インターフェイスを返します。

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

Public Shared Function GetIDispatchForObject
 ( _
    o As Object _
) As IntPtr
Dim o As Object
Dim returnValue As IntPtr

returnValue = Marshal.GetIDispatchForObject(o)
public static IntPtr GetIDispatchForObject
 (
    Object o
)
public:
static IntPtr GetIDispatchForObject (
    Object^ o
)
public static IntPtr GetIDispatchForObject
 (
    Object o
)
public static function GetIDispatchForObject
 (
    o : Object
) : IntPtr

パラメータ

o

要求される IDispatch インターフェイスを持つオブジェクト。

戻り値
o パラメータの IDispatch ポインタ。

例外例外
例外の種類条件

InvalidCastException

o が要求されたインターフェイスをサポートしていません。

解説解説

マネージ コードで IDispatch インターフェイスを直接使用することはほとんどありません。ただし、IntPtr 型として、またはカスタム マーシャリングで COM オブジェクトのパラメータを公開するメソッドを呼び出すときは、GetIDispatchForObject を使用します。このメソッドでオブジェクトを呼び出すと、ポインタが返される前に、インターフェイス ポインタで参照カウントがインクリメントされます。ポインタの使用が終わったときは、必ず Marshal.Release を使用して参照カウントをデクリメントしてください。

マネージ オブジェクトでこのメソッドを使用すると、オブジェクトの COM 呼び出し可能ラッパーへのインターフェイス ポインタを取得できます。詳細については、COM 呼び出し可能ラッパー のトピックを参照してください。

メモメモ

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

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



英和和英テキスト翻訳

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

辞書ショートカット

すべての辞書の索引

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

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

   

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



Marshal.GetIDispatchForObject メソッドのページの著作権

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

©2026 GRAS Group, Inc.RSS