我有一个 PowerShell 二进制模块,它引用了我想要 NGEN 并在运行时使用它的 NI(本机映像)的程序集“X”。
在模块清单中,我在RequiredAssemblies 中添加了“X”程序集。
查看 Fusion Log Viewer 我看到以下内容:
导入模块后,程序集“X”无法加载:
操作失败。绑定结果:hr = 0x80070002。该系统找不到指定的文件。
在调用第一个需要“X”的命令后,FusLogViewer 显示“X”的新记录,包括版本、文化等。现在加载成功,但它位于 LoadFrom 上下文中,这阻止了加载其 NI。
LOG:此绑定在 LoadFrom 加载上下文中开始。
警告:将不会在 LoadFrom 上下文中探测本机图像。本机映像只会在默认加载上下文中进行探测,例如使用 Assembly.Load()。
我的问题是:
1、PowerShell加载依赖程序集的机制是什么?
2. 我可以在加载上下文中加载我的“X”程序集以使用它的 NI 吗?
谢谢你!- 迪米塔