DllImportResolver Delegar
Definição
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.
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
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. |