DllImportResolver Delegar

Definição

Fornece um delegado usado para resolver bibliotecas nativas por meio de retorno de chamada.

public delegate IntPtr DllImportResolver(System::String ^ libraryName, Assembly ^ assembly, Nullable<DllImportSearchPath> searchPath);
public delegate IntPtr DllImportResolver(string libraryName, Assembly assembly, DllImportSearchPath? searchPath);
type DllImportResolver = delegate of string * Assembly * Nullable<DllImportSearchPath> -> nativeint
Public Delegate Function DllImportResolver(libraryName As String, assembly As Assembly, searchPath As Nullable(Of DllImportSearchPath)) As IntPtr 

Parâmetros

libraryName
String

A biblioteca nativa a ser resolvida.

assembly
Assembly

O assembly que solicita a resolução.

searchPath
Nullable<DllImportSearchPath>

O DefaultDllImportSearchPathsAttribute PInvoke, se houver. Caso contrário, no DefaultDllImportSearchPathsAttribute assembly, se houver. Caso contrário, null.

Valor Retornado

IntPtr

nativeint

O identificador da biblioteca nativa carregada com êxito ou Zero em caso de falha.

Comentários

O runtime não faz nenhum gerenciamento de tempo de vida em torno do identificador retornado por um DllImportResolver. Ele é deixado para a implementação e o código de consumo para manter a biblioteca carregada pelo tempo necessário e liberá-la se/quando desejado.

O resolvedor normalmente é chamado uma vez para cada ponto de entrada PInvoke. Para melhorar o desempenho, a implementação do resolvedor pode armazenar em cache o libraryName mapeamento para lidar, desde que a biblioteca não seja descarregada por meio Free(IntPtr)de .

Métodos de Extensão

Nome Description
GetMethodInfo(Delegate)

Obtém um objeto que representa o método representado pelo delegado especificado.

Aplica-se a