确定程序集是否引用某些类

本文关键字:引用 是否 程序集 | 更新日期: 2023-09-27 18:27:57

我正在尝试编写一个函数,用于确定程序集是否包含任何使用已知引用的代码。例如,确定给定程序集是否使用Thread类(作为方法、参数等的一部分)。

我正在编写一个使用第三方程序集的程序。我已经在沙箱中运行了程序集,但这并不能阻止代码做其他事情,比如启动线程(我的一个需求不允许)。我的想法是在程序集加载到沙箱中后扫描它,并确定是否使用过Thread类。

我已经做了一些关于使用IL来确定这一点的初步研究,但我想知道是否有比重建GetMethodBody的结果更简单的方法。

确定程序集是否引用某些类

试试Mono.Cecil。您可以在字节码级别检查代码所做的一切。