如何在没有程序集清单的情况下加载.net模块

如何在没有程序集清单的情况下加载.net模块,.net,manifest,.net,Manifest,如何在不需要清单的情况下加载.net模块(只是一个普通的程序集,但它不包含程序集清单)?我有一些程序集在尝试运行时抛出此错误: The module was expected to contain an assembly manifest 通常,我可以通过在添加程序集清单后使用ilasm重新编译程序集来解决此问题: .assembly test{ } 但是对于这个问题还有其他解决办法吗?Assembly.LoadModule(…)可以解决我的问题吗?清单是可能由许多文件组成的逻辑程序集的一

如何在不需要清单的情况下加载.net模块(只是一个普通的程序集,但它不包含程序集清单)?我有一些程序集在尝试运行时抛出此错误:

The module was expected to contain an assembly manifest
通常,我可以通过在添加程序集清单后使用ilasm重新编译程序集来解决此问题:

.assembly test{  }

但是对于这个问题还有其他解决办法吗?
Assembly.LoadModule(…)
可以解决我的问题吗?

清单是可能由许多文件组成的逻辑程序集的一部分。其中只有一个包含程序集清单(其中是指向所有其他程序集文件的链接),因此您可以使try-catch块仅成功加载主程序集模块。

我不明白您所说的“try-catch块仅加载主程序集模块”是什么意思,我能够获取这样的程序集的方法是从打包程序集的内存转储中获取。问题是清单丢失。@我以为你有一个包含许多程序集的目录,并试图按文件名加载它们。可以为程序集加载代码创建Try-catch块,因此将加载具有清单的程序集,而不加载没有清单的程序集,但不会停止扫描程序集文件。这是不可能的。netmodule只是一个中间文件,在链接到生成程序集之前,它是不可用的。嗯,“我能够获得这样的程序集的方式是从打包程序集的内存转储中获得的。”。打包器使用LoadModule方法执行主程序集,而不包含程序集清单。是否可以使用LoadModule?