marshaling de dados com invocação de plataforma
Para chamar funções exportadas de uma biblioteca não gerenciada, um aplicativo .NET estrutura requer um protótipo de função no código gerenciado que representa a função não gerenciada.Para criar um protótipo que permite invocação de plataforma para realizar realizar marshaling dados corretamente, você deve fazer o seguinte:
Aplicar o DLLImportAttribute atributo para a função estática ou método no código gerenciado.
Substituir por tipos de dados gerenciado para tipos de dados não gerenciado.
Você pode usar a documentação fornecida com uma função não gerenciada para construir um protótipo equivalente gerenciado aplicando o atributo com seus campos opcionais e substituindo tipos de dados gerenciados para tipos não gerenciados.Para obter instruções sobre como aplicar o DllImportAttribute, see Consumir funções DLL não gerenciada.
Esta seção fornece exemplos que demonstram como criar gerenciado funcionarem protótipos para passar argumentos para e recebendo valores de retorno de funções exportadas pelo un gerenciado bibliotecas.Os exemplos também mostram quando usar o MarshalAsAttribute atributo e o Marshal classe para realizar realizar marshaling dados explicitamente.
Nesta seção
Tipos de dados de invocação de plataforma
Fornece uma lista de tipos de dados gerenciado e seus tipos de dados não gerenciado correspondente.PinvokeLib.dll
Fornece um código que define as funções de biblioteca fornecidas pelo pinvoke.dll.marshaling de strings
Descreve como passar cadeias de caracteres por valor, por referência, nas estruturas, no classes e em matrizes.marshaling de classes, estruturas e uniões
Descreve como classes de passar por valor, como passar várias estruturas e como passar uniões com valor e tipos mistos.marshaling de matrizes de tipos
Descreve como passar matrizes multidimensionais de inteiros por valor e passar matrizes unidimensionais por referência.Diversos exemplos de marshaling
Descreve os aspectos de coleta de lixo e interoperabilidade que afetam o comportamento de marshaling de segmentação.
Seções relacionadas
marshaling de interoperabilidade
Descreve o marshaling para invocação de plataforma e interoperabilidade COM.Comportamento de marshaling padrão
Descreve as regras que o serviço de realizar marshaling de interoperabilidade usa para realizar realizar marshaling dados.Consumir funções DLL não gerenciada
Descreve como telefonar chamar funções DLL não gerenciadas usando a plataforma.