EnumerableToDispatchMarshaler 類別

定義

將 COM IDispatch 介面封送處理 (Marshal) 至 .NET Framework IEnumerable 介面,或是反向操作。

public ref class EnumerableToDispatchMarshaler : System::Runtime::InteropServices::ICustomMarshaler
public class EnumerableToDispatchMarshaler : System.Runtime.InteropServices.ICustomMarshaler
type EnumerableToDispatchMarshaler = class
    interface ICustomMarshaler
Public Class EnumerableToDispatchMarshaler
Implements ICustomMarshaler
繼承
EnumerableToDispatchMarshaler
實作

備註

當 DISPID 為 -4 的成員存在時,這個自訂封送處理器 IDispatchIEnumerable 會封送處理至 和 封送 IEnumerableIDispatch 處理。 當您使用類型庫匯入工具 (Tlbimp.exe) 來建立實作 IEnumerable 的類別時,CLR 會自動使用此自訂封送處理器來橋接 COM 列舉值和 .NET 列舉值。 呼叫 GetEnumerator 會導致 IDispatch.Invoke 使用 -4 的 DISPID 呼叫,反之亦然。

建構函式

EnumerableToDispatchMarshaler()

提供靜態類別建構函式。

方法

CleanUpManagedData(Object)

針對不需要的 Managed 資料執行必要的清除。

CleanUpNativeData(IntPtr)

針對不需要的 Unmanaged 資料執行必要的清除。

Equals(Object)

判斷指定的物件是否等於目前的物件。

(繼承來源 Object)
GetHashCode()

做為預設雜湊函式。

(繼承來源 Object)
GetInstance(String)

傳回自訂封送處理器 (Marshaler) 的執行個體。

GetNativeDataSize()

傳回待封送處理之 Unmanaged 資料的大小,以位元組為單位。

GetType()

取得目前執行個體的 Type

(繼承來源 Object)
MarshalManagedToNative(Object)

封送處理物件,從 Managed 程式碼到 Unmanaged 程式碼。

MarshalNativeToManaged(IntPtr)

封送處理物件,從 Unmanaged 程式碼到 Managed 程式碼。

MemberwiseClone()

建立目前 Object 的淺層複製。

(繼承來源 Object)
ToString()

傳回代表目前物件的字串。

(繼承來源 Object)

適用於