Partilhar via


Visão geral de marshaling personalizado

O empacotador essencialmente fornece uma ponte entre a funcionalidade antigas e novas interfaces.marshaling personalizado permite que clientes projetados para trabalhar com uma interface antiga também trabalhar com servidores que implementam uma nova interface apenas.marshaling personalizado também permite que clientes criados para trabalhar com uma nova interface trabalhar com servidores que expõem a interface antiga.

Em vez de usar interop marshaler, você pode criar um empacotador personalizado para uma interface que apresenta o comportamento de marshaling diferente ou expõe a interface para COM de forma diferente.Usando um empacotador personalizado, você pode minimizar a distinção entre os novos componentes .NET e componentes COM existentes.

Por exemplo, suponha que você está desenvolvendo um gerenciado interface chamada INew.Quando exposto a COM por meio de um COM callable wrapper padrão, a interface tem sistema autônomo mesmos métodos sistema autônomo o gerenciado interface e usa sistema autônomo regras marshaling incorporadas interop marshaler.Suponha ainda mais que uma interface COM bem conhecida chamada IOld já oferece a mesma funcionalidade da interface INew.Introduzindo um empacotador personalizado, você pode fornecer um un gerenciado implementação de IOld simplesmente delega as chamadas para o gerenciado implementação da interface INew.Empacotador personalizado essencialmente atua sistema autônomo uma ponte entre sistema autônomo interfaces gerenciadas e não gerenciadas.

Observe que os empacotadores personalizados não são chamados durante a chamada do lado gerenciado lado não gerenciado em uma interface única despacho.

Consulte também

Conceitos

Definindo o tipo de marshaling

Implementando a interface ICustomMarshaler

Usando um empacotador de substituir