在开发应用程序时,我一直在运行“ngen install ...”。但是在覆盖这些程序集之前,还没有在某些版本/场景(调试等)上运行“ngen uninstall ...”。现在我在“C:\Windows\assembly\NativeImages_v4.0.30319_64\AssemblyName\hashkey”形式的文件夹中看到了许多 *.ni.exe 和 *.ni.dll。(dll也是内部开发的。)
我正在使用.Net 4。
反正有卸载这些吗?我已经尝试过“ngen update”,它似乎没有触及这些孤立的原生图像。当然,我可以手动删除这些,但它会扰乱我的程序集所依赖的系统 dll 上的引用计数,或者对 .net 系统产生更严重的后果。
除了占用空间之外,这些旧程序集还会损害启动延迟,因为程序集绑定程序试图将当前 IL 与每个本机程序集匹配。
还有比使用命令行更好的方法来查看本机图像缓存中的内容吗?
谢谢