-5

如果可能,我想编辑一个 dll 文件或提取内容并修改它们。

我使用 .Net Reflector 反编译和生成文件。

这很好用,除了一些文件有类似CS$4$0001而不是变量的东西。

<>g__initLocal31

有没有办法找到那些是什么?还是我应该替换所有实例并进行测试?

添加:

    [OutputCache(NoStore=true, Location=OutputCacheLocation.Client, Duration=1)]
    public ActionResult _StateTile(string AssetName, string StateName)
    {
        aaReportsEntities dataContext;
        string CS$4$0001 = StateName;
        if (CS$4$0001 != null)
        {
            if (!(CS$4$0001 == "IDLE-UPSTREAM"))
4

2 回答 2

6

这些可以是:

  • 局部变量(在 IL 中没有名称)
  • 自动实现的属性/类字段事件的支持字段
  • 任何编译器生成的字段(捕获上下文相关范围等)
  • 表达式树/委托缓存
  • “动态”缓存
  • 迭代器块/“等待”代码中的状态变量
  • 等(同样,主要是编译器生成的任何东西)

它们很重要。但坦率地说,您可能不应该通过反射器提取代码:通常,如果您有这样做的理由,您已经拥有源代码(或被许可访问它)

于 2012-11-20T18:41:38.593 回答
1

您无法取回变量名。T逆向工程非常难做,推荐这本书-http://www.amazon.co.uk/Reversing-Secrets-Engineering-Eldad-Eilam/dp/0764574817/ref=sr_1_1?ie=UTF8&qid=1353436851&sr= 8- 1

于 2012-11-20T18:41:16.390 回答