System.Runtime.InteropServices.Marshalling Namespace
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Contém tipos de suporte para interoperabilidade gerada pela origem, como MarshalUsingAttribute.
Classes
AnsiStringMarshaller |
Marshaller para cadeias de caracteres ANSI. |
ArrayMarshaller<T,TUnmanagedElement> |
Representa um marshaller para matrizes. |
BStrStringMarshaller |
Marshaller para cadeias de caracteres BSTR. |
ComExposedClassAttribute<T> |
Indica que as instâncias de um tipo devem ser expostas ao COM. |
ComInterfaceMarshaller<T> |
Faz marshaling de uma interface COM usando uma instância de StrategyBasedComWrappers. |
ComObject |
Classe base para todos os RCWs (wrappers callable) de runtime gerados pela origem COM. |
ComVariantMarshaller |
Faz marshaling de um Object para um ComVariant. |
ContiguousCollectionMarshallerAttribute |
Especifica que esse tipo de ponto de entrada marshaller é um marshaller de coleção contíguo. |
CustomMarshallerAttribute |
Indica um tipo de ponto de entrada para definir um marshaller. |
ExceptionAsDefaultMarshaller<T> |
Converte a exceção no valor padrão do tipo não gerenciado especificado. |
ExceptionAsHResultMarshaller<T> |
Faz marshaling de um objeto de exceção para o valor de seu HResult convertido em |
ExceptionAsNaNMarshaller<T> |
Converte todas as exceções em NaN. |
ExceptionAsVoidMarshaller |
Representa um marshaller que engole exceções. |
GeneratedComClassAttribute |
Especifica que o tipo atribuído será exposto ao COM por meio de COM gerado pela origem e que o gerador de origem deve gerar código para ele. |
GeneratedComInterfaceAttribute |
Especifica que o tipo atribuído é uma interface COM e que o gerador de origem deve gerar código para ele. |
IUnknownDerivedAttribute<T,TImpl> |
Indica que uma interface é uma representação gerenciada de uma interface derivada de IUnknown. |
MarshalUsingAttribute |
Atributo usado para fornecer um tipo de marshaller personalizado ou informações de tamanho para marshalling. |
NativeMarshallingAttribute |
Atributo usado para fornecer um tipo de marshaller personalizado padrão para um determinado tipo gerenciado. |
PointerArrayMarshaller<T,TUnmanagedElement> |
Representa um marshaller para uma matriz de ponteiros. |
ReadOnlySpanMarshaller<T,TUnmanagedElement>.UnmanagedToManagedOut |
Dá suporte ao marshalling de gerenciado para não gerenciado em uma chamada de código não gerenciado para código gerenciado. |
ReadOnlySpanMarshaller<T,TUnmanagedElement> |
Dá suporte ao marshalling de uma ReadOnlySpan<T> de valor gerenciado para uma matriz nativa contígua dos valores não gerenciados dos elementos. |
SafeHandleMarshaller<T> |
Marshals SafeHandletipos derivados seguindo as regras de tempo de vida para objetos SafeHandle. |
SpanMarshaller<T,TUnmanagedElement> |
Dá suporte ao marshalling de uma Span<T> de valor gerenciado para uma matriz nativa contígua dos valores não gerenciados dos elementos. |
StrategyBasedComWrappers |
Um tipo baseado em ComWrappersque usa objetos de estratégia personalizáveis para implementar wrappers de objeto COM e wrappers de objeto gerenciado expostos ao COM. |
UniqueComInterfaceMarshaller<T> |
Marshals COM interfaces usando uma instância StrategyBasedComWrappers que cria apenas RCWs (wrappers de objeto nativo exclusivos). |
Utf16StringMarshaller |
Um marshaller para cadeias de caracteres UTF-16. |
Utf8StringMarshaller |
Um marshaller para cadeias de caracteres UTF-8. |
Estruturas
AnsiStringMarshaller.ManagedToUnmanagedIn |
Marshaller personalizado para realizar marshaling de uma cadeia de caracteres gerenciada como uma cadeia de caracteres não gerenciada ANSI. |
ArrayMarshaller<T,TUnmanagedElement>.ManagedToUnmanagedIn |
Marshaller para marshalling uma matriz de gerenciado para não gerenciado. |
BStrStringMarshaller.ManagedToUnmanagedIn |
Marshaller personalizado para realizar marshaling de uma cadeia de caracteres gerenciada como uma cadeia de caracteres não gerenciada ANSI. |
ComVariant |
Um tipo que representa um OLE VARIANT no código gerenciado. |
ComVariantMarshaller.RefPropagate |
Faz marshaling de um Object para um ComVariant, propagando o valor do Object de volta para o armazenamento de dados existente da variante se a variante tiver VT_BYREF tipo. |
CustomMarshallerAttribute.GenericPlaceholder |
Tipo de espaço reservado para um parâmetro genérico. |
IIUnknownCacheStrategy.TableInfo |
Contém informações sobre uma interface COM e sua tabela de métodos virtuais. |
PointerArrayMarshaller<T,TUnmanagedElement>.ManagedToUnmanagedIn |
Representa um marshaller para o marshalling de uma matriz de gerenciado para não gerenciado. |
ReadOnlySpanMarshaller<T,TUnmanagedElement>.ManagedToUnmanagedIn |
Dá suporte ao marshalling de gerenciado em não gerenciado em uma chamada de código gerenciado para código não gerenciado. |
ReadOnlySpanMarshaller<T,TUnmanagedElement>.ManagedToUnmanagedOut |
Dá suporte ao marshalling de não gerenciado para gerenciado em uma chamada de código gerenciado para código não gerenciado. Por exemplo, valores retornados e parâmetros |
SafeHandleMarshaller<T>.ManagedToUnmanagedIn |
Faz marshaling de um SafeHandle como seu valor de identificador subjacente como um parâmetro |
SafeHandleMarshaller<T>.ManagedToUnmanagedOut |
Empacota um SafeHandle como seu valor de identificador subjacente como um parâmetro |
SafeHandleMarshaller<T>.ManagedToUnmanagedRef |
Faz marshaling de um SafeHandle como seu valor de identificador subjacente como um parâmetro |
SpanMarshaller<T,TUnmanagedElement>.ManagedToUnmanagedIn |
Dá suporte ao marshalling de gerenciado em não gerenciado em uma chamada de código gerenciado para código não gerenciado. |
Utf8StringMarshaller.ManagedToUnmanagedIn |
Marshaller personalizado para realizar marshaling de uma cadeia de caracteres gerenciada como uma cadeia de caracteres não gerenciada UTF-8. |
VirtualMethodTableInfo |
Fornece informações sobre uma tabela de método virtual e o ponteiro de instância não gerenciado. |
Interfaces
IComExposedClass |
Define informações de nível de tipo para tipos de classe gerenciada expostos ao COM. |
IComExposedDetails |
Define detalhes sobre um tipo de classe gerenciada exposto ao COM. |
IIUnknownCacheStrategy |
Define uma estratégia de pesquisa de tabela de método virtual não gerenciada. |
IIUnknownDerivedDetails |
Fornece detalhes para a interface derivada de IUnknown. |
IIUnknownInterfaceDetailsStrategy |
Define uma estratégia para adquirir detalhes da interface. |
IIUnknownInterfaceType |
Define informações de nível de tipo para uma interface derivada de IUnknown. |
IIUnknownStrategy |
Define a estratégia de interação IUnknown. |
IUnmanagedVirtualMethodTableProvider |
Fornece informações sobre uma tabela de métodos virtuais para uma interface gerenciada para habilitar a invocação de métodos na tabela de métodos virtuais. |
Enumerações
ComInterfaceOptions |
Opções de como gerar interoperabilidade de interface COM com o gerador de origem de interoperabilidade COM. |
MarshalMode |
Representa os diferentes modos de marshalling. |