DllImportResolver 代理人
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
コールバックを使用してネイティブ ライブラリを解決するために使用されるデリゲートを提供します。
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
パラメーター
- libraryName
- String
解決するネイティブ ライブラリ。
- assembly
- Assembly
解決を要求するアセンブリ。
- searchPath
- Nullable<DllImportSearchPath>
PInvoke の DefaultDllImportSearchPathsAttribute (存在する場合)。 それ以外の場合、アセンブリの DefaultDllImportSearchPathsAttribute (存在する場合)。 それ以外の場合は null。
戻り値
nativeint
成功した場合は読み込まれたネイティブ ライブラリのハンドル、または失敗した場合は Zero 。
注釈
ランタイムは、 DllImportResolverによって返されるハンドルに関する有効期間管理を行いません。 必要な限りライブラリを読み込み、必要に応じて解放するために、実装と使用コードに任されます。
リゾルバーは通常、PInvoke エントリ ポイントごとに 1 回呼び出されます。 パフォーマンスを向上させるために、リゾルバーの実装では、ライブラリがFree(IntPtr)経由でアンロードされない限り、マッピングを処理するlibraryNameをキャッシュできます。
拡張メソッド
| 名前 | 説明 |
|---|---|
| GetMethodInfo(Delegate) |
指定したデリゲートによって表されるメソッドを表すオブジェクトを取得します。 |