【问题标题】:Is there a way to list all invocations and hardcoded string parameters of a method from a .Net assembly?有没有办法从 .Net 程序集中列出方法的所有调用和硬编码字符串参数?
【发布时间】:2011-05-15 05:47:45
【问题描述】:

例如,假设在我的程序集中,在命名空间 A、B 类中,有一个具有以下签名的实例方法:

void Test(string someString, int someOtherParm, string someOtherString );

从程序集中的多个位置多次调用此方法。 我希望能够构建此方法的所有调用的列表以及 someString/someOtherString 的值(假设它们是硬编码的)。

换句话说,如果它们发生在某处的程序集中,我喜欢提取如下示例中的调用列表:

Test("some text", 8, "some other text"); 

提前致谢, R.

【问题讨论】:

  • 你解决了吗?想发布解决方案吗?

标签: c# .net vb.net reflection assemblies


【解决方案1】:

您可以使用Cecil 库,这是一个非常强大的 IL 检查和修改 API。您需要创建一个“方法访问者”,它会扫描调用指令并尝试定位加载到堆栈中的常量字符串。

【讨论】:

    猜你喜欢
    • 2011-10-24
    • 1970-01-01
    • 2018-01-24
    • 2011-04-13
    • 1970-01-01
    • 1970-01-01
    • 2014-05-05
    • 2021-12-24
    • 2019-07-11
    相关资源
    最近更新 更多