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

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

Marshal.CreateWrapperOfType メソッド

指定した型のオブジェクト内の指定した COM オブジェクトラップます。

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

Public Shared Function CreateWrapperOfType
 ( _
    o As Object, _
    t As Type _
) As Object
Dim o As Object
Dim t As Type
Dim returnValue As Object

returnValue = Marshal.CreateWrapperOfType(o, t)
public static Object CreateWrapperOfType (
    Object o,
    Type t
)
public:
static Object^ CreateWrapperOfType (
    Object^ o, 
    Type^ t
)
public static Object CreateWrapperOfType (
    Object o, 
    Type t
)
public static function CreateWrapperOfType
 (
    o : Object, 
    t : Type
) : Object

パラメータ

o

ラップされるオブジェクト

t

作成するラッパーType

戻り値
指定した型のインスタンスとなる新しくラップされたオブジェクト

例外例外
例外種類条件

ArgumentException

t__ComObject から派生する必要があります

ArgumentNullException

t パラメータnull 参照 (Visual Basic では Nothing) です。

InvalidCastException

必要なすべてのインターフェイスサポートしていないため、o指定された型に変換できません。

解説解説

CreateWrapperOfTypeCOM クラス型 (通常汎用の __ComObject 型) を別の COM クラス型変換しますパラメータ o で表す入力側の COM オブジェクトは、ランタイム呼び出し可能ラッパーです。このラッパー詳細については、「ランタイム呼び出し可能ラッパー」を参照してください

t パラメータo パラメータどちらもシグネチャに System.Runtime.InteropServices.ComImportAttribute が属性付けされたクラスである必要がありますタイプ ライブラリ インポータ (Tlbimp.exe) は、タイプ ライブラリインポートするときこの属性適用します。ランタイム呼び出し可能ラッパーソース コード手作業記述する場合は、元のコクラスを表すマネージ シグネチャにこの属性適用して、元の COM通知してください

Tlbimp.exe は COM のコクラスをマネージ クラスインターフェイスとしてインポートます。コクラスのインターフェイスには元のコクラスと同じ名前が付けられマネージ クラスには元のコクラスの名前の末尾に "Class" が追加された名前が付けられます。たとえば、MyCoclass という名前のコクラスの場合、コクラスのインターフェイスの名前は MyCoclass となり、マネージ クラスの名前は MyCoclassClass となりますtインターフェイスではなくクラスである必要があるので、ここではコクラスのインターフェイスではなくマネージ クラス (MyCoclassClass) を指定してください

メモメモ

新しランタイム呼び出し可能ラッパーインスタンスは、元のランタイム呼び出し可能ラッパー公開していた IUnknown ポインタラップするため、入力側の COM オブジェクトID失われます。

メモメモ

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

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


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

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

辞書ショートカット

すべての辞書の索引

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

   

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



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

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

©2025 GRAS Group, Inc.RSS