共用方式為


自訂封送處理概觀

更新:2007 年 11 月

這個封送處理器實質上提供了新、舊介面功能之間的橋接。自訂封送處理可以讓設計配合舊介面使用的用戶端,也能夠配合只實作新介面的伺服器使用。自訂封送處理也能讓建置來配合新介面使用的用戶端,能夠配合公開舊介面的伺服器使用。

除了使用 Interop 封送處理器之外,您也可以對採用不同封送處理行為或以不同方式向 COM 公開介面的介面,設計自訂封送處理器。藉由使用自訂封送處理器,您可以盡量縮小新的 .NET 元件與現有 COM 元件之間的差異。

例如,假設您要開發一個稱為 INew 的 Managed 介面。當這個介面透過標準 COM 可呼叫包裝函式向 COM 公開的時候,它擁有與 Managed 介面同樣的方法,並且使用內建於 Interop 封送處理器的封送處理規則。我們再假設,有個稱為 IOld 的熟知 COM 介面,已經提供了與 INew 介面同樣的功能。藉由採用自訂封送處理器,您可以提供一個 IOld 的 Unmanaged 實作,它僅僅是將呼叫委派給 INew 介面的 Managed 實作。這個自訂封送處理器實質上就是 Managed 和 Unmanaged 介面之間的橋接。

請注意,在僅限分派的介面上進行從 Managed 端到 Unmanaged 端的呼叫時,並不會叫用自訂封送處理器。

請參閱

概念

定義封送處理型別

實作 ICustomMarshaler 介面

使用替代封送處理器