皆さん、こんにちは。
C# で記述されたシェル ツールバー拡張機能があります。Windows Explorer でのみ使用することを意図しているため、DLL が Internet Explorer に読み込まれないようにしたいと考えています。Windows は IE のみで拡張機能をロードする方法を数多く提供していますが、エクスプローラのみを実行する方法はないようです。DLL がロードされた後にさまざまな場所で実行できるさまざまなチェックがあることはわかっていますが、DLL がまったくロードされないようにすることが理想的です。
ここで、C++ で記述されている場合は、 を呼び出しGetModuleFileName
てDllMain
、実行可能ファイルがiexplore.exe
であるかどうかを確認し、そうである場合はアタッチ時に false を返します。しかしDllMain
、C# にはありません。Microsoft は、私たちがローダー ロックをうまく扱うことを信頼していません。C# DLL の読み込みを選択的に防止できる他の方法はありますか?