DllImportResolver Delegar

Definição

Fornece um delegado usado para resolver bibliotecas nativas via callback.

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 para resolver.

assembly
Assembly

A assembleia a solicitar a resolução.

searchPath
Nullable<DllImportSearchPath>

O DefaultDllImportSearchPathsAttribute no Pine, se é que existe. Caso contrário, a DefaultDllImportSearchPathsAttribute montagem, se houver. Caso contrário, null.

Devolver Valor

IntPtr

nativeint

O handle para a biblioteca nativa carregada em caso de sucesso ou Zero de falha.

Observações

O tempo de execução não faz qualquer gestão de vida em torno da alavanca devolvida por um DllImportResolver. Cabe ao código de implementação e consumo manter a biblioteca carregada pelo tempo necessário e libertá-la se/quando desejado.

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

Métodos da Extensão

Name Description
GetMethodInfo(Delegate)

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

Aplica-se a