是否可以在正常的DLL加载之前运行自定义AssemblyResolve事件处理程序?

时间:2015-12-02 18:13:54

标签: c# .net dll

我有一个实验性的.net项目,它实现了一个自定义DLL加载器,实现为AssemblyResolve事件处理程序。除了......之外它很棒。

如果加载的DLL与EXE位于同一文件夹中,则会绕过我的自定义事件处理程序。

我的自定义DLL加载器是否有优先选择的方法?

事件链可能如下所示:

  1. 正常加载并运行EXE和核心DLL。
  2. 代码将其自定义处理程序设置为主DLL加载程序。
  3. 其他一些代码需要加载DLL。我的自定义代码被调用,并返回一个加载的Assembly对象。
  4. 更多代码需要加载另一个DLL。我的自定义代码被调用但拒绝,返回NULL Assembly对象。然后正常的DLL加载器接管。
  5. 注意:This question要求提供类似的方案,但答案探索的是一种非常不同的策略,并不适用于此。

0 个答案:

没有答案