私のプロジェクトは、私のコントロール下にないホスト実行可能ファイルによってロードされるプラグイン(Windows DLL)です。私のDLLはいくつかの追加のライブラリをロードしようとしています。私は私的な集会でこれを行います。これを行う方法についてはhow can a Win32 App plugin load its DLL in its own directoryに大きな回答があります。しかし、メインDLLのリンク行に/delayload dependentlib.dll
を追加すれば、アセンブリをロードするのを避けることができます(私はいろいろな理由でこれを行う必要があります)。Windowsは私のプライベートアセンブリを検索しません - コンパイルしたマニフェストを無視するようです通常の検索パスで遅延読み込みDLLを探します。 (私はこれをチェックするためにsysinternals procmonを使用します)Windowsプライベートアセンブリをどのように遅延ロードできますか?出来ますか?
これは既知のバグですか、あるいはアセンブリを遅延ロードする方法がありますか?ロードライブラリ+ GetProcAddressルートに行くのではなく、依存するlibの気になるシンボルをすべて知っておく必要があります。
ありがとうございます。あなたが正しいのは、hmoduleとリソースID(2)だけです。従属DLLへの最初の呼び出しをラップするだけです。ありがとうございました! – GaryO