Quebra automática de representantes e ponteiros de função não gerenciada

O .NET estrutura versão 2.0 e posteriores fornece a capacidade de ponteiros de função realizar marshaling entre código gerenciado e usando os seguintes métodos:

  • Use o Marshal.GetDelegateForFunctionPointer método para realizar realizar marshaling um ponteiro de função não gerenciada em um delegado. Esse método usa o System.IntPtr classe que representa um ponteiro de função não gerenciada.

  • Use o Marshal.GetFunctionPointerForDelegate método para realizar realizar marshaling um delegado em um ponteiro de função que pode ser chamado do código não gerenciado. Quando você usa esse método, você deve manter manualmente o delegado do que está sendo coletado pelo coletor de lixo.O coletor de lixo não controla as referências ao código não gerenciado.

Observe que o empacotador do parâmetro pode também realizar realizar marshaling ponteiros de função para representantes no .NET estrutura 2.0 e posterior.

Consulte também

Referência

GetDelegateForFunctionPointer

GetFunctionPointerForDelegate